MTU大家都知道,是链路层中的网络对数据帧的一个限制,依然以以太网为例,MTU为1500个字节。一个IP数据报在以太网中传输,如果它的长度大于该MTU值,就要进行分片传输,使得每片数据报的长度小于MTU。分片传输的IP数据报不一定按序到达,但IP首部中的信息能让这些数据报片按序组装。IP数据报的分片与重组是在网络层进完成的。
UDP数据报,由于UDP数据报不会自己进行分片,当UDP数据长度超过了MTU时,会在网络层进行IP分片。
对于TCP来说,它是尽量避免分片的,为什么?因为如果在IP层进行分片了话,如果其中的某片的数据丢失了,对于保证可靠性的TCP协议来说,会增大重传数据包的机率,而且只能重传整个TCP分组。因此当TCP数据大于MTU时,会在传输层进行分段,然后再进入网络层。!
如上图,TCP数据提前做好TCP分段,使得TCP数据小于MTU,然后再封装IP首部,成为IP数据。
TCP和UDP报文分片的区别
最新推荐文章于 2024-04-22 08:00:00 发布