网络MTU与VS. 最大TCP数据包大小

低TCP数据包大小会对性能产生不利影响

最大传输单元(MTU)是可以通过网络传输的数字通信的单个数据单元的最大尺寸。 MTU大小是物理网络接口的固有属性,通常以字节为单位 。 例如, 以太网的MTU为1500字节。 某些类型的网络(如令牌环 )具有较大的MTU,而某些网络具有较小的MTU,但该值对于每种物理技术都是固定的。

MTU与最大TCP数据包大小

TCP / IP这样的更高级别的网络协议可以配置最大数据包大小,这是一个独立于运行TCP / IP的物理层MTU的参数。 不幸的是,许多网络设备可互换地使用这些术语。 例如,在家庭宽带路由器和支持Xbox Live的游戏控制台上,称为MTU的参数实际上是最大的TCP数据包大小,而不是物理MTU。

在Microsoft Windows中,可以在注册表中设置协议(如TCP)的最大数据包大小。 如果此值设置得太低,则网络流量会被分解为相对较大数量的小数据包,这会对性能产生不利影响。 例如,Xbox Live要求数据包大小的值至少为1365字节。 如果最大TCP数据包大小设置得过高,则它会超出网络的物理MTU,并会因要求将每个数据包细分为更小的数据包而降低性能 - 这一过程称为分段。 对于宽带连接,Microsoft Windows计算机的默认最大数据包大小为1500字节, 拨号连接数为576字节。

MTU相关问题

理论上,TCP数据包大小的限制是64K(65,525字节)。 这个限制比你使用的要大得多,因为传输层的尺寸要小得多。 以太网的1500字节的MTU限制了通过它的数据包的大小。 发送大于以太网最大传输窗口的数据包称为Jabbering。 Jabber可以被识别和预防。 如果没有被解决,叽叽喳喳可能会破坏网络。 通常情况下,jabber会被中继器集线器或网络交换机检测到,这些交换机可以这样做。 防止jabber最简单的方法是将TCP数据包的最大大小设置为不超过1500字节。

如果家庭宽带路由器上的TCP最大传输设置与连接到它的各个设备上的设置不同,也可能出现性能问题。