数据报 IPv4数据包首部的最小长度为多少?怎么算?

IPv4数据包首部的最小长度为多少?怎么算?在TCP/IP标准中,各种数据格式通常用32位(4字节)来描述。图6显示了IP数据报的格式。IP数据报由标头和数据组成。头的第一部分的长度固定为20字节,最

IPv4数据包首部的最小长度为多少?怎么算?

在TCP/IP标准中,各种数据格式通常用32位(4字节)来描述。图6显示了IP数据报的格式。

IP数据报由标头和数据组成。头的第一部分的长度固定为20字节,最后一部分的长度是可变的。下面介绍第一个字段的含义。

1. IP数据报头的固定部分

版本字段站4位,表示IP协议的版本。通信双方使用的IP协议版本必须一致。IP协议的当前版本是4。

标头长度标头长度字段占4位。可以表示的最大值是15个单位(一个单位是4字节),因此IP头长度的最大值是60字节。当IP数据包的第一个长度不是4字节的整数倍时,它必须用最后一个填充字段填充。

service type service type字段总共有8位长,用于获得更好的服务。其含义如图6的上面部分所示。

服务类型字段的前三位表示优先级,这使数据报具有八个优先级中的一个。

第四位是D位,表示最小延迟。

第五位是T位,表示最大吞吐量。

第六位是代表最高可靠性的R位。

第七位是C位,表示最小成本。

最后一位当前未使用。

为什么捕抓到的IP数据包的总长度为40字节,包括了IP头和IP数据。可是以太帧要求的最小数据包长度为64字节?

事实上,以太网帧的最小长度是64字节。显示40字节的原因是ethereal不计算数据链路层中封装的字节数。物理数据链路层封装了18个字节。另外六个字节封装在逻辑数据链路层中。

怎么计算tcp包的数据长度?

数据长度可根据IP数据包长度计算。IP包头有一个总长度字段。

数据长度=总长度-IP头长度-TCP头长度