IP数据报格式及如何判断报文类型

时间:2024-04-04 18:12:35

1. IP数据报

TCP/IP协议定义了一个在因特网上传输的包,称为IP数据包。IP数据报(IP Datagram) 由首部和数据两部分组成,首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。

IP数据报格式及如何判断报文类型
版本—4bit,IP协议的版本(如IPv4,IPv6)。
首部长度—4bit,占4位。即从0000~~~~1111,可表示的最大十进制数字是15,首部单位长度为4个字节。当“首部长度”表示为0001时,首部的长度是1(4字节)。首部最大长度为60字节。
服务类型(区分服务)—8bit,旧标准中叫做服务类型。
总长度—16bit,总长度指首部和数据之和的长度,单位为字节。
标识—16bit,它是一个计数器,用来产生数据报的标识。
标志—3bit,最低位为MF(More Fragment) ,当MF=1,表示后面还在传输数据报的分片。 MF=0,最后一个报文段。中间位DF(Don’t Fragment),DF=0,表示能分片。
片偏移—12bit,分片后,某片在原来分组中的相对位置。片偏移以8个字节为偏移单位。这就是说,除了最后一个分片,每个分片的长度一定是8字节(64位)的整数倍。
生存时间(TTL)—8bit,(Time To Live),表明是数据报在网络中的寿命,单位为秒。
协议—8bit,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。网络层以上的高层协议有TCP,UDP,OSPF,EGP,IGMP,ICMP等。
首部校验和—18bit,校验数据报的首部。
源地址—4bit,源主机的IP地址。
目的地址—4bit,目的IP地址。

2. 协议字段对应关系

如何判断报文类型?

ICMP(Internet Control Message Protocol)——网际控制报文协议——– 1
IGMP(Internet Group Management Protocol)——网际组管理协议——-2
TCP(Transmission Control Protocol )————–传输控制协议———- 6
UDP(User Datagram Protocol)———————用户数据报协议——- 17
OSPF(Open Shortest Path First)————-开放式最短路径优先——— 89


其他协议对应请参考该链接:
http://blog.chinaunix.net/uid-21556133-id-118207.html