TCP、UDP数据包大小的确定
UDP和TCP协议利用端口号实现多项应用同时发送和接收数据。数据通过源端口发送出去,通过目标端口接收。有的网络应用只能使用预留或注册的静态端口;而另外一些网络应用则可以使用未被注册的动态端口。因为UDP和TCP报头使用两个字节存放端口号,所以端口号的有效范围是从0到65535。动态端口的范围是从1024到65535。
MTU最大传输单元,这个最大传输单元实际上和链路层协议有着密切的关系,EthernetII帧的结构DMAC+SMAC+Type+Data+CRC由于以太网传输电气方面的限制,每个以太网帧都有最小的大小64bytes最大不能超过1518bytes,对于小于或者大于这个限制的以太网帧我们都可以视之为错误的数据帧,一般的以太网转发设备会丢弃这些数据帧。
由于以太网EthernetII最大的数据帧是1518Bytes这样,刨去以太网帧的帧头(DMAC目的MAC地址48bit=6Bytes+SMAC源MAC地址48bit=6Bytes+Type域2bytes)14Bytes和帧尾CRC校验部分4Bytes那么剩下承载上层协议的地方也就是Data域最大就只能有1500Bytes这个值我们就把它称之为MTU。

本文介绍了TCP和UDP数据包大小的确定,指出UDP包的最大理论长度为65535字节,但实际互联网环境中推荐不超过548字节。TCP作为数据流协议,没有明确的包大小限制,但会根据MTU进行分段。最大传输单元(MTU)在以太网中通常为1500字节,扣除协议头后,UDP的有效负载为1472字节,TCP为1460字节。考虑到PPPoE等因素,实际MTU可能更小,影响数据包的传输和分片。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



