升级到千兆网络-启用巨型帧


21

我想开始将SOHO网络升级到千兆(从10/100),并听到一些有关巨型帧的信息。

在网络上实现巨型帧的最佳方法是什么?据我所知,为了使其正常工作,网络上的所有网络设备都必须支持巨型帧。这是真的?

如果我有无法更新为GB以太网的特定设备(例如网络打印机),这会阻止我启用巨型帧吗?

启用巨型帧有哪些陷阱?

Answers:


20

首先,最好解释一下巨型帧以太网。以太网是第二层网络技术,其协议数据单元(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,然后在其vlan定义中添加了“ mtu 9000”。交换机上将要使用此网络的每个接口都使用“ switchport access vlan 11”之类的东西放置在此vlan中。在linux机器(eth0连接到标准网络,eth1连接到巨型帧网络)上,我们在/ etc / sysconfig / network-scripts / ifcfg-eth1中添加了“ MTU = 9000”。因为我们从不路由这些数据包(没有直接连接到巨型帧VLAN的任何设备都无法与巨型帧VLAN上的NIC通讯),我们不必担心路由器配置。

据我所知,为了使其正常工作,网络上的所有网络设备都必须支持巨型帧。这是真的?

是的,差不多。所有网络“客户端”(我的意思是服务器/台式机/ IPKVM / IP环境监视器等)也必须讲话,或者如上所述,您将拥有许多半可达的机器(它们会ping,并且任何小于1500字节的L3或L4PDU将成功执行,这意味着,例如,您的邮件服务器将ping,并且您将能够传递可能是一条很小的测试消息的消息。邮件(带有excel附件的邮件被推送到帧大小> 1500字节)会神秘地失败。

如果我有无法更新为GB以太网的特定设备(例如网络打印机),这会阻止我启用巨型帧吗?

如果是这种情况,这就是我要做的(假设网络设备可以处理此问题):

  • 构建两个VLAN,一个带有巨型帧,另一个不带有
  • 将所有网络设备分配给一个VLAN或另一个VLAN
  • 在路由器和交换机中,实现巨型帧VLAN并更改任何网络客户端上的帧大小。

这意味着您的网络将不再具有平坦的L2拓扑。例如,如果您要从启用了巨型帧的服务器上打印到非巨型帧打印机,则必须将数据包路由(通过路由器,将这些帧重写为更常规的大小,然后发送到打印机在另一个VLAN上)。这意味着巨型帧计算机和非巨型帧计算机之间的通信将比以前稍微差一些,但是巨型帧VLAN上所有设备之间的数据传输速率会更好。这实际上只是一个判断电话。

启用巨型帧有哪些陷阱?

希望涵盖以上。祝好运!


真的那么糟糕吗?在Internet上,路径MTU发现将确定路径上的某些路由器是否只能传递500个字节并进行相应调整。那不应该在局域网上工作吗?
joeforker,2009年

1
如果两个端点都在同一冲突域内,则将无法正常工作。这是因为发送方无法确定接收方是否启用了巨型帧。如果接收系统尚未启用巨型帧,则该数据包将被静默丢弃。由于它们之间没有路由器,因此路径MTU发现也不起作用。我相信,如果最后一个路由器的传出接口启用了巨型帧,而接收端点接口没有启用,则路径MTU发现也会失败。
流量

11

您可能会发现Jeff Atwood在Jumbo Frames上的帖子内容丰富。

帖子重点:

  • 性能提升20%
  • 为了使大框架保持完整,它通过的每个设备都必须支持该框架大小
  • 不支持巨型帧的开关会将其丢弃

5

您可以使用ping.exe来检查数据包的最大大小,并将其与“巨型帧”设置进行比较。

ping -l 4096 -f server

调整-l使用的包大小,并使用-f设置DO_ NOT_FRAGMENT标志。当达到最大数据包大小时,您将得到“数据包需要分片,但必须设置DF”。

这将为您指示巨型帧是否起作用。


3

是的,所有内容都必须支持巨型帧-像在令牌环和以太网之间切换一样对待它。唯一的区别是,有些设备可能出现仍然工作的时间很短或间歇-这也可以是一个非常头疼的事情,如果你不跟踪设备你在大型网络重新配置(即2周后你会得到一个某用户的故障单,该打印机在小隔间的后面塞满了打印机,“刚刚”停止工作。对于任何新东西,情况也是如此-您需要设置一个过程来重新配置带有巨型框架的任何新设备和计算机,以避免在初次启动后无法使用时进行支持呼叫。


1

在Linux上,我发现以下方法可以正常工作:如果您使用的是带标签的VLAN,请将基本设备(例如eth1)的mtu设置为巨型帧大小。所有支持巨型帧的VLAN都具有相同的MTU,这些VLAN不与原始帧保持一致,通常是1500。

实际上,即使该vlan上的mtu小于基本接口之一,启用了巨型讲话者和切换功能的vlan仍能够发送到本地vlan接口。

同样在linux上,要测试的命令是:ping -s 4096 -M do

-s是大小,-M会说“不要分段”。如果超出本地mtu,则会出现错误。如果您超出了远程MTU,您将一无所获。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.