IP数据报首部解析
一、IP数据报首部的格式,普通20字节。
- 4位版本号:当前4--IPv4。
- 4首部长度:首部长度
- 8位服务类型TOS: 3bits(优先权)+ 4bits(类型--最小延迟+最大吞吐量+最高可靠性+最小费用)+ 1bits(未用,置0)。大多数实现都不支持TOS设置。
二、不同应用建议的TOS值如下:
-
16位总长度:总长度-首部长度=》IP数据报数据起始位置及长度。16bits=2byte,最大数据报长度65535。当数据分片时,此字段变化。
-
16位标识字段:唯一的标识每一份主机发送的数据报,每发送一份,值就会加1。
-
8位生存时间(TTL):设置了数据包可以经过的最多路由数。数据包的生存时间,初始值由源主机设置(通常32或64),没经过一个处理的路由器减1,当值为0时丢弃,并发送ICMP报文回主机。
-
8位协议:表明数据属于哪一层,1--ICMP,2--IGMP,6--TCP,17--UDP等。
-
16为首部检验和:根据IP首部计算的检验和码。检验和置0,然后每16bits进行二进制反码求和。结果存于检验和中。接收方同样进行二进制反码求和。结果为1则正确。
-
32位源IP地址。
-
32位目的IP地址。