IP段格式

IP段格式

IP数据报的首部长度和数据长度都是可变长的,但总是4字节的整数倍。对于IPV4,4位版本字段是4.4位首部长度的数值是以4字节为单位,最小值为5,也就是说收部最小是4*5=20字节,也就是不带任何选项的IP首部,4位能表示的最大值是15,也就是说首部长度最大是60字节。8位TOS字段有3个位用来指定IP数据报的优先级(目前已经废弃不用),还有4位可以表示可选的服务类型(最小延迟、最大吞吐量、最大可靠性、最小成本),还有一位总是0.总长度是整个数据报(包括IP首部和IP层payload)的字节数。每传一个IP数据报,16位的标识加1,可用于分片和重新组装数据报。3位标志和13位片偏移用于分片。TTL(time to live)是这样用的,源主机为数据包设定一个生存时间,比如64,每经过一个路由器就将该值减1,如果减到0就表示路由已经太长了仍未找到目的主机网络,就丢弃该包,因此这个生存时间的单位不是秒,而是跳(hop)。协议字段指示上层协议是TCP、UDP、ICMP、还是IGMP。然后校验和,只校验IP首部,数据的校验由更高层协议负责。IPV4的IP地址长度为32位。