IPv4包头详解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IPv4包头详解
IPv4包头详解
1,版本号(Version ):长度4比特。
标识目前采用的IP 协议的版本号。
一般的值为0100(IPv4),IPv6的值(0110)2,IP 包头长度(Header Length ):长度4比特。
这个字段的作用是为了描述IP 包头的长度,因为在IP 包头中有变长的可选部分。
IP 包头最小长度为20字节,由于变长的可选部分,最大长度可能会变成60字节。
3,服务类型(Type of Service ):长度8比特。
这个子段可以拆分成两个部分:Precedence 和TOS 。
Precedence 用来设置数据包的优先级,TOS 允许按照吞吐量、时延、可靠性和费用方式选择传输服务,目前基本已不使用,现在TOS 已经作为区分服务架构的一部分被重新定义了,被称为CoS ,使用6个位构成了区分代码点DSCP ,最多可以定义64个不同的服务类别。
4,IP 包总长(Total Length ):长度16比特。
IP 包最大长度65535字节(16位长的二进制最大表示)。
5,标识符(Identifier ):长度16比特。
该字段和Flags 和Fragment Offest 字段联合使用,对大的上层数据包进行分段(fragment )操作。
6,标记(Flags ):长度3比特。
该字段第一位不使用。
第二位是DF 位,DF 位设为1时表明路由器不能对该上层数据包分段。
如果一个上层数据包无法在不分段的情况下进行转发,则路由器会丢弃该上层数据包并返回一个错误信息。
第三位是更多分段(MF )位,当路由器对一个上层数据包分段,除了最后一个分段的MF 为0外,其它所有分段的MF 位均为1,直到接受到MF 位为0的分段说明数据结束。
苏州小
牛
7,分段偏移(Fragment Offset ):长度13比特。
该字段对包含分段的上层数据包的IP 包赋予序号。
由于IP 包在网络上传送的时候不一定能按顺序到达,这个字段保证了目标路由器在接受到IP 包之后
能够还原分段的上层数据包。
到某个包含分段的上层数据包的IP 包在传送是丢失,则整个一系列包含分段的上层数据包的IP 包都会被要求重传。
因此,容易发生故障的数据链路会造成时延不成比例。
另外,如果由于网络拥塞造成分段丢失,那么重传整段分组会进一步加重网络拥塞。
8,生存时间(TTL ):长度8比特。
当IP 包进行传送时,先会对该字段赋予某个特定的值。
当IP 包经过每一个沿途的路由器的时候,每个沿途的路由器会将IP 包的TTL 值减少1。
如果TTL 减少为0,则该IP 包会被丢弃。
这个字段可以防止由于故障而导致IP 包在网络中不停被转发。
TTL 常用的值是15和32,但是建议缺省值是64.
9,协议(Protocol ):长度8比特。
标识了上层所使用的协议。
比如:TCP/6、UDP/17、EIGRP/88、OSPF/89。
10,头部校验(Header Checksum ):长度16位,由于IP 包头是变长的,所以提供一个头部校验来保证IP 包头中信息的正确性。
如果数据包没有发送错误,那么结果应该16位全部为1,由于每一台路由器都会降低TTL 的值,所以每台路由器都必须重新计算校验和。
11,源和目标地址(Source and Destination Addresses ):这两个地段都是32比特。
标识了这个IP 包的起源和目标地址。
12,可选项(Options ):这是一个可变长的字段。
该字段由起源设备根据需要改写。
可选项目包含以下内容:
(1)松散源路由(Loose source routing ):给出一连串路由器接口的IP 地址。
IP 包必须沿着这些IP 地址传送,但是允许在相继的两个IP 地址之间跳过多个路由器。
(2)严格源路由(Strict source routing ):给出一连串路由器接口的IP 地址。
IP 包必须沿着这些IP 地址传送,如果下一跳不在IP 地址表中则表示发生错误。
(3)路由记录(Record route ):当IP 包离开每个路由器的时候记录路由器的出站接口的IP 地址。
(4)时间戳(Timestamps ):当IP 包离开每个路由器的时候记录时间。
13,填充项(Padding ):通过在可选字段后面添加0来补足32位,这样保证报头长度是32位的倍数。
苏州小牛。