ipv4头基本是20个字节,最多60个个(IHL域限定4bit 15*4=60【最多15个4字节,即60个字节】)并且
以太网帧 最小的长度 是60字节!还有个最大的长度级MTU
IP数据报的格式:
下层的协议可能不知道自己封装的数据有多大【举个栗子:以太网帧最小是64字节,最小的有效载荷是46字节,但是一个最小的以太网帧是20字节,那么获取到一个以太网帧就不知道这里面到底是有多少数据是合法的】
MTU:最大传输单元。【限制在某一个层】
路由器和主机不包含任何目的地的完整转发路径
分片偏移字段给出了该分片负载在原始数据中的偏移(以8字节为单位)
所以IP协议中的MF/标志/偏移共同实现了IP的分片功能;
如果分片丢失,整个报文就都丢失了
在以太网中,帧的数据最大的大小是1500字节,假设ipv4的头部是20字节,udp的头部是8字节,那么最大1472自己的应用程序数据就可以避免分片;
sock -u -i -n1 -w1472 X.X.X.X discard
当一个数据报的任何一个分片首先到达时,IP层就得启动一个计时器。
TCP头的长度经常是20字节长(不带TCP选项)。如果带选项,TCP头部可达到60字节的长度,常见的选项包括最大段大小、时间戳、窗口缩放等。
每一个TCP的链接是由《源端口号,源IP地址,目的端口号,目的IP地址》