IP报文头长32位,具体参考(RFC791),由以下几个部分组成。
1.1、版本:长度4位,标识了报文的IP版本号,比如IPV4(IPng),IPV6等,这个4位字段的值通常为二进制表示,比如IPV4=0100。
1.2、报头长度:字段长度为4位,它表示IP报头的长度(即报文头的长度,而不包含具体数据长度),设计报头长度字段的原因是报文的选择项字段大小会发生变化。
1.3、服务类型:字段长度为8位,它用来指定特殊的报文处理方式。服务类型字段又被划分为了2个部分:优先权和TOS。优先权用于设置报文的优先级(一般QOS‘服务质量’会经常使用到这点)。优先权字段长度为3位,分别是以下表示: 000:路由
001:优先级
010:立即
011:火速
100:火速覆盖
101:紧急
110:互联网络控制
111:网络控制 TOS用于选择传输服务,通常被设置为0,字长读为5位。每个位数代表一个服务方式,设置为0禁止,1为启动,分别有以下类型:时延、吞吐量、可靠性、开销、保留位(一直是设置为0)
1.4、总长度:字段长度为16位,它的指整个IP报文的长度,以8bit字节为单位,其中包括IP报头。我们只需要用IP总长度减去IP报头长度就能知道了报文实际数据的大小。16位长度的二进制数用十进制表示最大可以为65535,所以IP报文的最大长度是65535。
1.5、标识符:字段长度为16位,通常与标记字段和分片偏移字段一起用于IP报文的分片。当原始报文大小超过了MTU,那么就必须将原始数据进行分片。每个被分片的报文大小不得超过MTU,而这个字段还将在同一原始文件被分片的报文上打上相同的标记,以便接收设备可以识别出属于同一个报文的分片。 1.6、标记字段:长度为3位,第一位没有被使用,第二位是不分片位(DF),当DF被设置被设置为1时,表示路由器不能对报文进行分片处理。
第三位表示还有后继分片(MF),当路由器对报文进行分片时,除了最后一个分片的MF位设置为0外,其他所有分片的MF位均设置1,以便接收者直到收到MF位为0的分片为止。 1.6、分片偏移:字段长度为13位,给分片的文件进行重新排序,避免混乱。 1.7、生存时间:字段长度为8位,也就是跳数的大小。
1.8、协议 :字段长度位8位,它主要是标识出传输层的地址或协议号,也就是说表示数据要进行什么样的上层服务。
1.9、报头校验和:字段长度16位,针对IP报头进行纠错。
1.10、源地址和目标地址:也就是两端的地址,比如IP地址。
1.11、可选项:主要用于测试。
1.12、填充:该字段通过在选择字段后面添加0来补足32位,保证报文长度是32比特的倍数
IP报文头长32位,具体参考(RFC791),由以下几个部分组成。
1.1、版本:长度4位,标识了报文的IP版本号,比如IPV4(IPng),IPV6等,这个4位字段的值通常为二进制表示,比如IPV4=0100。
1.2、报头长度:字段长度为4位,它表示IP报头的长度(即报文头的长度,而不包含具体数据长度),设计报头长度字段的原因是报文的选择项字段大小会发生变化。
1.3、服务类型:字段长度为8位,它用来指定特殊的报文处理方式。服务类型字段又被划分为了2个部分:优先权和TOS。优先权用于设置报文的优先级(一般QOS‘服务质量’会经常使用到这点)。优先权字段长度为3位,分别是以下表示: 000:路由
001:优先级
010:立即
011:火速
100:火速覆盖
101:紧急
110:互联网络控制
111:网络控制 TOS用于选择传输服务,通常被设置为0,字长读为5位。每个位数代表一个服务方式,设置为0禁止,1为启动,分别有以下类型:时延、吞吐量、可靠性、开销、保留位(一直是设置为0)
1.4、总长度:字段长度为16位,它的指整个IP报文的长度,以8bit字节为单位,其中包括IP报头。我们只需要用IP总长度减去IP报头长度就能知道了报文实际数据的大小。16位长度的二进制数用十进制表示最大可以为65535,所以IP报文的最大长度是65535。
1.5、标识符:字段长度为16位,通常与标记字段和分片偏移字段一起用于IP报文的分片。当原始报文大小超过了MTU,那么就必须将原始数据进行分片。每个被分片的报文大小不得超过MTU,而这个字段还将在同一原始文件被分片的报文上打上相同的标记,以便接收设备可以识别出属于同一个报文的分片。 1.6、标记字段:长度为3位,第一位没有被使用,第二位是不分片位(DF),当DF被设置被设置为1时,表示路由器不能对报文进行分片处理。
第三位表示还有后继分片(MF),当路由器对报文进行分片时,除了最后一个分片的MF位设置为0外,其他所有分片的MF位均设置1,以便接收者直到收到MF位为0的分片为止。 1.6、分片偏移:字段长度为13位,给分片的文件进行重新排序,避免混乱。 1.7、生存时间:字段长度为8位,也就是跳数的大小。
1.8、协议 :字段长度位8位,它主要是标识出传输层的地址或协议号,也就是说表示数据要进行什么样的上层服务。
1.9、报头校验和:字段长度16位,针对IP报头进行纠错。
1.10、源地址和目标地址:也就是两端的地址,比如IP地址。
1.11、可选项:主要用于测试。
1.12、填充:该字段通过在选择字段后面添加0来补足32位,保证报文长度是32比特的倍数