详细介绍: 张继福 010-829201376 Q800076768 随着价格的下降,目前万兆以太网正在逐渐进入各个应用领域。万兆以太网的实际性能是人们感兴趣的一个话题。在理想情况下,通过万兆以太网是否能达到10000Mbps的传输速度?许多人对此心存疑虑,而这方面的评测文章目前网上也比较少见。最近有一专家用两块万兆网卡,对此问题进行一番实际测试。
测试采用双机直连的方法,没有经过交换机。使用的网卡是两块intel的x520 万兆网卡,每块网卡拥有2个万兆端口,不过以下的测试只用到了其中的一个端口。
测试环境为Linux操作系统,内核版本是3.1.1。测试软件方面,为了达到最高的传输速率,采用的是直接socket编程的方法,在两台机器间通过tcp/ip协议发送/接收数据。实时流量则通过读取Linux系统的/proc/net/dev设备文件得到。这样得到的流量包含了tcp/ip包的头部数据,比程序中看到的要更准确一些。
测试前先用ethtool工具察看网卡的工作状态,确认都已处于10000Mb/s的状态:
root@pc2:~# ./ethtool eth2
Settings for eth2:
Supported ports: [ TP ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 1000baseT/Full
10000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 10000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: external
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
网卡参数方面,基本上均为系统默认值。所作的唯一优化是把网卡的mtu参数调大了一些,本测试中mtu的值设置为6000。
下面是一些具体的测试结果(这里1MB表示1000000字节):
1. 单向单线程传输测试(从pc1向pc2单线程发送数据)
测试结果:pc1出流量的实测速度约为1036MB/s(涨落<2MB/s)。
这个传输速度相当于约8288Mbps,离万兆网络的理论带宽还有一些差距。
2. 单向双线程传输测试(从pc1向pc2同时用2个线程发送数据)
测试结果:pc1出流量的实测速度约为1245MB/s(涨落<1MB/s)。
|