我想开始将我的 SOHO 网络升级到千兆位(从 10/100 开始),并在 Jumbo Frames 上有所了解。
在网络上实施巨型帧的最佳方式是什么?据我所知,为了使其正常工作,网络上的所有网络设备都必须支持巨型帧。这是真的?
如果我有无法更新到 GB 以太网的特定设备(例如网络打印机),这会阻止我启用巨型帧吗?
启用巨型帧有哪些注意事项?
我想开始将我的 SOHO 网络升级到千兆位(从 10/100 开始),并在 Jumbo Frames 上有所了解。
在网络上实施巨型帧的最佳方式是什么?据我所知,为了使其正常工作,网络上的所有网络设备都必须支持巨型帧。这是真的?
如果我有无法更新到 GB 以太网的特定设备(例如网络打印机),这会阻止我启用巨型帧吗?
启用巨型帧有哪些注意事项?
首先,最好解释一下巨型帧以太网是什么。以太网是第 2 层网络技术,其协议数据单元 (PDU) 是一个帧。作为参考,一个 L3PDU(IP 层)是一个数据包,一个 L4PDU(tcp/udp)是一个段。
一个以太网帧(有几种类型的以太网,但我们可以在这里概括)由一个标头(其中包含源 MAC、目标 MAC、802.1q VLAN 标签等)组成帧,以及用于验证帧成功传输的 CRC 校验和。
原始以太网将帧大小(整个帧中的数据值,包括标头和校验和)指定为 1500 字节(或者可能是 1518,必须查找)。这个数字在一次发送的数据量与传输失败或冲突以及必须重新传输的可能性之间取得了平衡。随着快速全双工 LAN 的出现,人们意识到可以通过增加以太网帧大小来提高性能。巨型帧的传统大小是每帧 9000 字节,尽管这主要是约定俗成的。
在所有元素都期望接收巨型帧以太网的坚如磐石的全双工 LAN(或 VLAN)上,它实际上确实提高了性能。这种情况的问题是,如果您引入了不期望的网络元素或终端设备。在最好的情况下,它会导致性能下降,因为数据包丢失,因为接收设备在一帧中只期望 1518 字节。
现在回答您的具体问题:
这是一个主观问题。在我的营业地点,我们选择仅在我们知道我们可以控制所有变量并且我们知道它会有所帮助的情况下实施它。为此,我们在一个特殊的“私有”vlan 中实现了它,只有特定设备才能通过它们的第二个 NIC 进行访问。具体来说,我们将文件服务器和应用程序服务器的第二个 NIC 放入这个新 VLAN,然后将所有引用更改为该 VLAN 中使用的 IP 方案。这使我们能够将目标(没有人将台式机插入此 VLAN)我们知道最能受益的特定区域(我们的基础设施中利用率最高的数据链路)。这样可以最大限度地提高收益,同时最大限度地降低风险。
更具体地说,在网络端(使用 IOS),我们构建了专用于巨型帧设备的 VLAN,然后将“mtu 9000”添加到它们的 vlan 定义中。将使用此网络的交换机上的每个接口都使用“switchport access vlan 11”之类的内容放入此 vlan。在 linux 机器上(eth0 连接到标准网络,eth1 连接到巨型帧网络),我们将“MTU=9000”添加到 /etc/sysconfig/network-scripts/ifcfg-eth1。因为我们从不路由这些数据包(不直接连接到巨型帧 VLAN 的任何东西都不可能与巨型帧 VLAN 上的 NIC 通信),我们不必担心路由器配置。
是的,差不多。所有网络“客户端”(我的意思是服务器/台式机/IPKVM/IP 环境监视器等)也必须使用它,或者,如上所述,您将拥有许多半可达机器(它们会 ping,以及任何小于 1500 字节的 L3 或 L4PDU 将成功,这意味着,例如,您的邮件服务器将 ping,您将能够手动发送可能是小的测试消息。但是当您尝试发送真正的邮件(带有 excel 附件的邮件,其帧大小 > 1500 字节)它会神秘地失败)。
如果是这样的话,这就是我要做的(假设网络设备可以处理这个问题):
这意味着您的网络上将不再有扁平的 L2 拓扑。例如,如果您想从启用巨型帧的服务器打印到非巨型帧打印机,则必须路由数据包(通过您的路由器,将帧重写为更常规的大小,然后发送到另一个 VLAN 上的打印机)。这意味着您的巨型帧和非巨型帧机器之间的通信将比以前稍差,但巨型帧 VLAN 上所有设备之间的数据传输速率会更好。这实际上只是一个判断电话。
希望上面有介绍。祝你好运!
您可能会发现Jeff Atwood在 Jumbo Frames 上的帖子内容丰富。
帖子亮点:
您可以使用 ping.exe 检查数据包的最大大小并将其与您的巨型帧设置进行比较。
调整 -l 使用的数据包大小,并使用 -f 设置 DO_NOT_FRAGMENT 标志。当您达到最大数据包大小时,您将收到“数据包需要分段但 DF 设置”。
这将告诉您 Jumbo Frames 是否有效。
是的,一切都必须支持巨型帧 - 将其视为在令牌环和以太网之间切换。唯一的区别是某些设备可能会在短时间内或间歇性地工作 - 如果您不跟踪在大型网络上重新配置了哪些设备(即 2 周后您会得到一个一些用户的故障单,他们的隔间后面塞满了“刚刚”停止工作的打印机)。这同样适用于任何新的东西 - 您需要设置一个程序来重新配置任何带有巨型帧的新设备和计算机,以避免在初始启动后无法工作时的支持呼叫。
在 Linux 上,我发现以下方法可以工作: 如果您使用标记的 vlan,请将基本设备(例如 eth1)的 mtu 设置为巨型帧大小。所有支持巨型帧的 vlan 都获得相同的 mtu,不保留原来的 vlan,通常是 1500。
实际上,启用了 jumbo talkers 和切换的 vlan 将能够发送到本地 vlan 接口,即使该 vlan 上的 mtu 小于基本接口之一。
同样在 linux 上,要测试的命令是: ping -s 4096 -M do
-s 是大小,-M do 表示“不要分段”。如果超过本地 mtu,则会出现错误。如果超过远程 mtu,您将一无所获。