Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5082049
  • 博文数量: 553
  • 博客积分: 13864
  • 博客等级: 上将
  • 技术积分: 11041
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-28 21:25
个人简介

个人Blog: hhktony.com

文章分类

全部博文(553)

文章存档

2015年(1)

2014年(2)

2013年(12)

2012年(384)

2011年(154)

分类: LINUX

2012-07-19 22:42:36


IP数据报的首部长度和数据长度都是可变长的,但总是4字节的整数倍。

对于IPv4,4位版本字段是4。

4位首部长度的数值是以4字节为单位的,最小值为5,也就是说首部长度最小是4x5=20字节,也就是不带任何选项的IP首部,4位能表示的最大值是15,也就是说首部长度最大是60字节。

8位TOS字段有3个位用来指定IP数据报的优先级(目前已经废弃不用),还有4个位表示可选的服务类型(最小延迟、最大呑吐量、最大可靠性、最小成本),还有一个位总是0。

总长度是整个数据报(包括IP首部和IP层payload)的字节数。

16位的标识:每传一个IP数据报,16位的标识加1,可用于分片和重新组装数据报。

3位标志和13位片偏移用于分片。

TTL(Time to live)是这样用的:源主机为数据包设定一个生存时间,比如64,每过一个路由器就把该值减1,如果减到0就表示路由已经太长了仍然找不到目的主机的网络,就丢弃该包,因此这个生存时间的单位不是秒,而是跳(hop)。

协议字段:指示上层协议是TCP、UDP、ICMP还是IGMP。然后是校验和,只校验IP首部,数据的校验由更高层协议负责。IPv4的IP地址长度为32位。选项字段的解释从略。
阅读(1911) | 评论(0) | 转发(0) |
0

上一篇:ARP数据报格式

下一篇:uniq---详解

给主人留下些什么吧!~~