Answers:
启用巨型帧意味着通常可以通过将MTU设置为9000来允许更大的最大传输单位(MTU)。
要验证此方法是否有效,您可以在Windows中使用ping命令 -l标志来设置数据包大小,并在-f标志中设置数据包中的“不分段”标志。
ping my.test.host -f -l 8972
如果数据包碎片化,您将看到
Packet needs to be fragmented by DF set
代替您通常看到的内容。
对于Linux,ping命令使用不同的标志。-s
设置数据包大小,并-M do
设置“不分段”。因此,上面的命令将是:
ping my.test.host -M do -s 8972
通过调整数据包大小,您可以确定链接的mtu是多少。这将代表路径中任何设备所允许的最低mtu,该设备可能是您的交换机,计算机,目标或两者之间的任何其他内容。
这本身并不能告诉您最低的MTU在哪里-您可以通过在路径中的不同设备上运行测试来解决这个问题,但是总会有透明的路由器限制MTU但不会显示为traceroute
。
请注意,ICMP标头的开销为28个字节,因此MTU比通过上述方法建立的数字大28个字节。因此,要检查9000的MTU,实际上需要将ping数据包大小设置为9000-28 = 8972。
更新后,我发现了一些资源,这些资源将专门找出主机和目标之间路径上的MTU:
vmkping -d -s 8972 10.1.1.101
,其中-s设置数据包大小,而-d设置“不分段”标志。
在ESXi中,您需要指定要使用的接口,否则ping是通过mgmt接口路由的,再加上-d来设置DF(请勿分段):
vmkping -I vmkX -s 8972 -d xxxx
您还可以通过SSH从ESXi控制台中检查它:打开“安全”->“防火墙”->“远程技术支持(SSH)”,并在ssh登录后执行“ vmkping -s 8000”或类似的操作(不记得它的选项了)