尝试在我的网络(Ubuntu 服务器)上获得千兆速度时遇到问题

尝试在我的网络(Ubuntu 服务器)上获得千兆速度时遇到问题

我刚刚开始研究办公室的网络速度,整个网络都设置为“千兆”。这包括千兆交换机、千兆网卡和 Cat 5e 电缆。

我并不期望达到最高速度,我只想要超过~90 Mb/s。

我一直在进行一些测试防火墙Linux 工具并检查硬件ethtool。我有 3 台服务器,在进行检查/测试时,我发现这两台备份服务器可以以大约 450 Mb/s 的速度相互访问,但当使用其中任何一个服务器进行连接和测试时主要的服务器,尽管如此,我只能得到 90Mb/sethtool显示网卡以 1000/Full 运行。

所有服务器/网卡之间的唯一区别是“港口”哪个ethtool节目。在两个备份服务器上的“端口”显示为 MII,而另一台服务器上的“端口”则显示为“双绞线”。

使用时ethtool -s手动将“端口”设置为 MII主要的服务器,它会失去所有连接并且不会显示“速度”或“双工”。

无论如何,我做错了什么吗?我的主要的当看起来没有区别时,服务器无法使用 Gb除了港口”?

答案1

正如@Luis 指出的那样,“b”= 位,而“B”= 字节。 iperf通过以 Mbits/sec 为单位报告时间来帮助我们:

[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.01 GBytes   865 Mbits/sec

两台主机上是否ifconfig eth0显示任何错误?从您的报告来看,似乎两台 iperf 机器中的一台 CPU 过载,或者它们之间的交换机(请告诉我不是多个交换机)过载,或者您的主机之间某处有 100Mbit 限制。我发现人们多次从小型 100Mbit 交换机级联,因此最好知道您的电缆从哪里开始和结束。您使用的是智能交换机吗?它是否显示您的端口以千兆位速度处于活动状态?

一旦您解决了问题,您可能需要在主机上启用巨型帧,以便在进行批量数据传输时获得更好的吞吐量,前提是您有一个相当现代的交换机。

答案2

让我们从最简单的测试开始 - 将连接慢速服务器的跳线换成连接快速服务器的跳线。

如果它能解决问题,那么可能是你的电缆有问题了?

接下来我要检查的是交换机端口的配置。确保慢速服务器端口上的配置与快速服务器端口上的配置相同。我还会将慢速服务器切换到快速服务器端口并进行测试,因为这可能是一个坏端口。

接下来我会查看这些卡 - 它们的品牌和型号是否相同?它们的配置是否相同?尝试将一张卡从快速服务器换到慢速服务器。您可能有一张坏卡,或者其中一张卡的驱动程序已过时/质量较差。

答案3

我的运行方式为Port: Twisted Pair,速度约为 110MB/s。这是针对 SAN 测量的,使用 4 根电缆,速度约为 450MB/s。您的 450Mb/s 让我有点困惑 :)

我怀疑主服务器交换机端口和网卡的 MTU 有问题。你能看看是否有错误吗?

以下可能会有帮助:

ip link | grep mtu
ethtool -S eth0

答案4

测试速度的方向有什么不同吗?如果有区别,例如,如果服务器接收速度比发送速度慢,也请检查接收主机的缓冲区。此页面可以为您提供一些提示,帮助您正确调整 TCP 堆栈

http://fasterdata.es.net/host-tuning/linux/

相关内容