IP报文分析(IPV4)

来源:互联网 发布:数据交换共享 编辑:程序博客网 时间:2024/06/06 21:40

IPV4数据包的整体结构如下图1:
IPV4  whole struct
图1

IP报文结构如下图2:
IPV4 struct
图2

报文详细介绍如下:
1. 4位版本号,对ipv4来说,版本号为4。
2. 4位首部长度,首部长度单位是32位,即4字节,首部长度标识IP头部有多少个4字节,所以IP头部长度的范围是0-15*4字节。
3. 8位的区分服务,包括一个三位的优先权字段(现在已经被忽略),4位的服务类型(TOS)字段和一个保留字段(必须置0)。4位TOS字段分别表示:最小时延,最大吞吐量,最高可靠性和最小费用。其中最多只有一个能置一,应用程序应该根据实际需要来设置它。
4. 16位的IP数据报总长度,以字节为单位,因此IP数据报的最大长度为65535字节。
5. 16位的标识位,唯一的标识主机发送的每一个数据报。
6. 3位标志位:三位标志位的第一位保留;第二位表示禁止分片(DF),如果这一位为一,那么这个IP数据报不会被分片。此时如果IP数据报长度超过MTU限制,IP模块将丢弃该报文并返回一个ICMP差错报文。第三位表示更多分片(MF),除了数据报的最后一个分片外,其他分片都要把它置一。
7. 13位片偏移:是分片相对原始IP数据报开始处的偏移。
8. 8位生存时间:是数据报到达目的地之前允许经过的路由器跳数。
9. 8位协议:用来区分上层协议。
10. 16位头部校验和:用来检验IP数据报头部在传输过程中是否损坏。
11. 32位源端IP地址和目的端IP地址用来标识数据报的发送端和接收端,他们是不变的。
12. 最后一个字段是可选字段,里面包含了记录路由、时间戳、松散源路由选择和严格源路由选择。

原创粉丝点击