ip协议

IP 数据报

丶灬走出姿态 提交于 2020-01-23 16:18:28
IP 数据报 1.IP 数据报的格式 一个 IP 数据报由首部和数据两部分组成。(数据报也可以说是数据包) 首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的。 在首部的固定部分的后面是一些可选字段,其长度是可变的。 2.IP 数据报首部的固定部分中的各字段 从图中可看到,数据报首部可分为固定部分和可变部分,固定部分为了五行,每行32位即4个字节。 版本 ——占 4 位(第一行四个字节中0~3位),指 IP 协议的版本该 IP 协议的版本号为 4 (即 IPv4); 首部长度 ——占 4 位(第一行四个字节中4~7位),表示首部总的长度(固定+可变部分);可表示的最大数值是 15 个单位(一个单位为 4 字节)因此 IP 的首部长度的最大值是 60 字节。 区分服务 ——占 8 位(第一行四个字节中8~15位),区分服务。即该段设置了数据报的优先程度,若要想实现数据报优先传输还需要在路由器端配置相应的区分服务设置。只有在使用区分服务(DiffServ)时,这个字段才起作用。在一般的情况下都不使用这个字段 。 总长度 ——占 16 位(第一行四个字节中16~31位),指首部和数据之和的长度,单位为字节,因此数据报的最大长度为 65535 字节。总长度必须不超过最大传送单元 MTU。 标识 (identification)——占 16 位(第二行四个字节中1

简单理解Socket

女生的网名这么多〃 提交于 2020-01-23 13:22:58
感谢:http://www.cnblogs.com/dolphinX/p/3460545.html 转自百度经验:http://jingyan.baidu.com/article/08b6a591e07ecc14a80922f1.html 网络由下往上分为   物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。   通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,   三者从本质上来说没有可比性,   socket则是对TCP/IP协议的封装和应用(程序员层面上)。   也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,   而HTTP是应用层协议,主要解决如何包装数据。   关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:   “我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容。   如果想要使传输的数据有意义,则必须使用到应用层协议。   应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。   WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”   而我们平时说的最多的socket是什么呢,实际上socket是对TCP/IP协议的封装

TCP/IP详解,卷1:协议--第8章 Traceroute程序

可紊 提交于 2020-01-22 22:09:51
引言 由Van Jacobson编写的Tr a c e r o u t e程序是一个能更深入探索T C P / I P协议的方便可用的工具。 尽管不能保证从源端发往目的端的两份连续的 I P数据报具有相同的路由,但是大多数情况下 是这样的。Tr a c e r o u t e程序可以让我们看到I P数据报从一台主机传到另一台主机所经过的路由。 Tr a c e r o u t e程序还可以让我们使用I P源路由选项。 使用手册上说:“程序由Steve Deering提议,由Van Jacobson实现,并由许多其他人 根据C. Philip Wood, Tim Seaver 及Ken Adelman等人提出的令人信服的建议或补充意见 进行调试。 Traceroute程序的操作 在7 . 3节中,我们描述了 I P记录路由选项(R R)。为什么不使用这个选项而另外开发一个 新的应用程序?有三个方面的原因。首先,原先并不是所有的路由器都支持记录路由选项, 因此该选项在某些路径上不能使用( Tr a c e r o u t e程序不需要中间路由器具备任何特殊的或可选 的功能)。 其次,记录路由一般是单向的选项。发送端设置了该选项,那么接收端不得不从收到的 I P 首部中提取出所有的信息,然后全部返回给发送端。在 7 . 3节中,我们看到大多数P i n g服务器的 实现(内核中的I C

了解HTTP协议

给你一囗甜甜゛ 提交于 2020-01-22 18:22:57
目录 一、什么是HTTP协议 WEB与HTTP HTTP发展历史 二、TCP/IP协议 TCP/IP协议分层简介 应用层——HTTP、FTP、SMTP 传输层——TCP/UDP 网络层——IP协议、ARP协议、路由协议 数据链路层——网卡 三、HTTP数据包的封装过程 四、HTTP数据传输过程 五、DNS域名解析 一、什么是HTTP协议 HTTP(Hyper Text Transfer Protocol)<超文本传输协议>的缩写,是用于 从WEB服务器传输超文本到客户端浏览器 的传输协议。HTTP是一个应用层协议,由请求和响应构成,是一个标准的个客户端和服务器模型。 WEB与HTTP WEB是一种 基于超文本(HTML)和HTTP的 ,全球性的,动态交互的,跨平台的分布式 图形信息系统 。 WEB浏览器的访问操作图示: HTTP发展历史 二、TCP/IP协议 TCP/IP(Transmission Control Protocol/Internet Protocol, 传输控制协议/网际协议 )是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是 TCP 和 IP 两个协议,而是指一个由 FTP 、 SMTP 、TCP、 UDP 、IP 等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。——百度百科

深入浅出理解 TCP/IP 协议 (一)

﹥>﹥吖頭↗ 提交于 2020-01-22 16:00:33
  TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP 协议采用4层结构,分别是 应用层、传输层、网络层和链路层 ,每一层都呼叫它的下一层所提供的协议来完成自己的需求。由于我们大部分时间都工作在应用层,下层的事情不用我们操心;其次网络协议体系本身就很复杂庞大,入门门槛高,因此很难搞清楚TCP/IP的工作原理,通俗一点讲就是, 一个主机的数据要经过哪些过程才能发送到对方的主机上 。 那我们就来探索一下这个过程: 0、物理介质   物理介质就是把电脑连接起来的物理手段,常见的有光纤、双绞线,以及无线电波,它决定了电信号(0和1)的传输方式,物理介质的不同决定了电信号的传输带宽、速率、传输距离以及抗干扰性等等。   TCP/IP协议栈分为四层,每一层都由特定的协议与对方进行通信,而 协议之间的通信最终都要转化为 0 和 1 的电信号,通过物理介质进行传输才能到达对方的电脑 ,因此物理介质是网络通信的基石。   网络通信就像送快递一样,用户买的商品被一层层包裹就是各种协议,协议描述了商品的大小、收件人、联系方式以及配送地址,而实际的配送交通工具就是物理介质。其次对于一些偏远的地方,快递是不能直达的,需要中途转发,这时候快递上的各种协议就起作用了,它记录了要转发的地址、揽件人信息等,这就是TCP

TCP/IP协议

拈花ヽ惹草 提交于 2020-01-21 18:48:57
TCP/IP协议 TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。 TCP/IP协议,或称为TCP/IP协议栈,或互联网协议系列。 TCP/IP协议栈 (按 TCP/IP参考模型 划分),TCP/IP分为4层,不同于OSI,他将OSI中的会话层、表示层规划到应用层。 应用层(Application Layer) 应用层对应于OSI参考模型的应用层、表示层、会话层三个层次,为用户提供所需要的各种服务 主要协议有 Telnet 、 FTP 、 SMTP 等,是用来接收来自传输层的数据或者按不同应用要求与方式将数据传输至传输层; 传输层(transport layer) 传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。 该层定义了两个主要的协议: 传输控制协议(TCP) 和 用户数据报协议(UDP) 网际互联层(network layer) 网际互联层对应于OSI参考模型的网络层

TCP/IP详解,卷1:协议--第7章 Ping程序

五迷三道 提交于 2020-01-20 20:24:45
引言 “p i n g”这个名字源于声纳定位操作。 P i n g程序由Mike Muuss编写,目的是为了测试另一 台主机是否可达。该程序发送一份 I C M P回显请求报文给主机,并等待返回 I C M P回显应答 (图6 - 3列出了所有的I C M P报文类型)。 一般来说,如果不能 P i n g到某台主机,那么就不能 Te l n e t或者F T P到那台主机。反过来, 如果不能Te l n e t到某台主机,那么通常可以用 P i n g程序来确定问题出在哪里。 P i n g程序还能测 出到这台主机的往返时间,以表明该主机离我们有“多远”。 在本章中,我们将使用 P i n g程序作为诊断工具来深入剖析 I C M P。P i n g还给我们提供了检 测I P记录路由和时间戳选项的机会 几年前我们还可以作出这样没有限定的断言,如果不能 P i n g到某台主机,那么就 不能Te l n e t或F T P到那台主机。随着I n t e r n e t安全意识的增强,出现了提供访问控制清单 的路由器和防火墙,那么像这样没有限定的断言就不再成立了。一台主机的可达性可 能不只取决于I P层是否可达,还取决于使用何种协议以及端口号。P i n g程序的运行结果 可能显示某台主机不可达,但我们可以用Te l n e t远程登录到该台主机的2 5号端口(邮件 服务器)

IP协议校验和计算(发送方)

最后都变了- 提交于 2020-01-20 18:55:22
IP协议校验和计算(发送方) using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Text.RegularExpressions; using System.IO; using System.Xml; using System.Net.Sockets; using System.Net; using System.Threading; namespace WindowsFormsApplication1 { public partial class Form1 : Form { string[] ipHead = new string[10]; string allSum; Dictionary<string, int> tlp; public Form1() { InitializeComponent(); } private void Form1_Load(object sender

实现Arp报文发送和接收

落爺英雄遲暮 提交于 2020-01-20 12:49:07
继上次实现了 Ping 之后,尝试进入更底层的网络接口层实现局域网的 ARP 报文收发 ARP 协议概述 ARP(Address Resolution Protocol) 地址解析协议是用来通过网络层地址(IP地址)去寻找数据链路层地址(MAC地址)的网络传输协议. 在以太网(Ethernet)协议中规定, 同一局域网中 的一台主机要和另一台主机进行直接通信,必须要知道目标主机的 MAC 地址。而在 TCP/IP 协议中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用 IP 协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是 ARP 协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。另外,当发送主机和目的主机 不在同一个局域网中时 ,即便知道对方的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为委托ARP或ARP代理(ARP Proxy)。—— 地址解析协议 报文格式 以太网首部:

网络 TCP/IP

你说的曾经没有我的故事 提交于 2020-01-19 01:50:27
TCP/IP 基础知识 分组技术 可以让多个用户共享一条线路 tcp/ip 代表什么 利用 IP 进行通信时所必须用到的协议群的统称 RFC 协议的说明,STD 管理 RFC 互联网结构 互联网由很多较小范围的网络组成,每个小网由 骨干网 和 末端网 组成 TCP/IP 协议分层模型 物理层 将二进制的0和1和电压高低,光的闪灭和电波的强弱信号进行转换 链路层 代表驱动 网络层 使用 IP 协议,IP 协议基于 IP 转发分包数据 IP 协议是个不可靠协议,不会重发 IP 协议发送失败会使用ICMP 协议通知失败 ARP 解析 IP 中的 MAC 地址,MAC 地址由网卡出厂提供 IP 还隐含链路层的功能,不管双方底层的链路层是啥,都能通信 传输层 通用的 TCP 和 UDP 协议 TCP 协议面向有连接,能正确处理丢包,传输顺序错乱的问题,但是为了建立与断开连接,需要至少7次的发包收包,资源浪费 UDP 面向无连接,不管对方有没有收到,如果要得到通知,需要通过应用层 会话层 以上分层 TCP/IP 分层中,会话层,表示层,应用层集中在一起 网络管理通过 SNMP 协议 TCP/IP 分层模型与通信示例 发包过程 表示层转码,会话层决定何时建立连接,传输层负责建立连接,断开连接和发送数据,保证数据能顺利发送至对端。TCP 协议(传输层)在数据前附加一个首部