首页 理论教育 计算机网络IP数据包格式

计算机网络IP数据包格式

时间:2023-10-18 理论教育 版权反馈
【摘要】:IP数据包又称为IP分组,由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据包必须具有的。图4-11IP数据包的格式首先,IP数据包首部的固定部分各字段的含义。但实际上,每一种网络的数据链路层的帧格式,都有数据字段的最大长度限制,即最大传送单元MTU。生存时间:占8bit,记为TTL,表示数据包在网络中的寿命。表4-4常用的协议字段的值首部检验和:占16bit,字段只检验数据包的首部,不包括数据部分。

计算机网络IP数据包格式

IP数据包又称为IP分组,由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据包必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的(图4-11)。

图4-11 IP数据包的格式

首先,IP数据包首部的固定部分各字段的含义。

(1)版本:占4bit,指IP协议的版本,目前的IP协议版本号为4(即IPv4)。

(2)首部长度:占4bit,可表示的最大数值是15个单位(一个单位为4字节),因此IP的首部长度的最大值是60字节。当IP数据包的首部长度不是4字节的整数倍时,必须在最后的“填充”部分加以填充,使首部长度为4字节的整数倍。

(3)区分服务:占8位,用来获得更好的服务。在旧标准中叫作服务类型,但实际上一直未被使用过。1998年这个字段改名为区分服务。只有在使用区分服务(Diff-Serv)时,这个字段才起作用。分为三个部分:

优先级:0~2bit,0~7级,现在已经不用。

第7位:保留。

TOS:3~6bit,分别表示最小延迟、最大吞吐量、最高可靠性和最小费用,每次仅能置1种服务类型,即仅能置4位中的1位。若全为“0”则表示一般服务要求。

(4)总长度:占16bit,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为65535字节。但实际上,每一种网络的数据链路层的帧格式,都有数据字段的最大长度限制,即最大传送单元MTU。而IP数据包传送到下层——数据链路层后,会作为数据字段封装在数据帧中,因此IP数据包的总长度不能超过最大传送单元MTU。

(5)标识(Identification):占16 bit,它是一个计数器,用来产生数据包的标识。该标识不是数据包的序号,因为IP协议只提供无连接的服务,不需要序号来确认或顺序接收。IP数据包在网络中传输过程中,其长度如果超过了某网络的MTU,会被分片,这时该标识的值被复制到每一个分片中,以便在分片到达目的地址后,可以被重新组装成原来的数据包。

(6)标志位:占3bit,用于指示和控制分片功能的标志。目前只有2bit有意义。(www.xing528.com)

最低位为MF(More Fragment):当MF=1时,表示后面还有分片的数据包。当MF=0时,表示这是最后一个分片。

标志字段中间的一位是DF(Don't Fragment)=1表示不允许分片,只有当DF=0时才允许分片。

(7)片偏移:占13bit,较长的分组在分片后,某片在原分组中的相对位置。片偏移以8个字节为偏移单位。

(8)生存时间:占8bit,记为TTL,表示数据包在网络中的寿命。实际上是IP数据包在计算机网络中可以转发的最大跳数,数据包每经过一个路由器,其值减1,然后再将IP包转发出去。如果在IP包到达目的IP之前,TTL减少为0,路由器将会丢弃收到的TTL=0的IP包,并向IP包的发送者发送ICMP time exceeded消息。

(9)协议:占8 bit,字段指出此数据报携带的数据使用何种协议,以便目的主机的IP层将数据部分上交给哪个处理过程。表4-4给出了常用的协议字段的值。

表4-4 常用的协议字段的值

(10)首部检验和:占16bit,字段只检验数据包的首部,不包括数据部分。由于在传输过程中,数据包的首部可能会发生变化,如生存时间、片偏移等,需要重新计算首部的校验和。这里仅采用简单的求和、再求补码来计算校验码

(11)源地址和目的地址:各占4字节,源IP地址和目的IP地址。

其次,IP数据包首部的可变部分。

IP首部的可变部分就是一个选项字段,用来支持排错、测量以及安全等措施,内容很丰富。选项字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目。增加首部的可变部分是为了增加IP数据包的功能,但这同时也使得IP数据包的首部长度成为可变的。这就增加了每一个路由器处理数据报的开销。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈