目前万兆以太网正在逐渐进入各个应用领域。万兆以太网的实际性能是人们感兴趣的一个话题。在理想情况下,通过万兆以太网是否能达到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)。
这个传输速度(9960Mbps)很不错了,已经达到了万兆理论带宽的99%以上。
[11.12.05补充:经过一些优化后,最终实测稳定的极限速度为1248MB/s(9984Mbps)]
3. 单向多线程传输测试(从pc1向pc2同时用多个线程发送数据)
测试结果:传输速率基本没有什么提升,但涨落幅度变小,从1MB/s降低到0.1MB/s的量级。
4. 双向单线程传输测试(从pc1向pc2单线程发送数据,同时pc2向pc1单线程发送数据)
测试结果:pc1上出流量和入流量之和实测速度约为1700MB/s,涨落比较大,有100MB/s的量级。
5. 双向双线程传输测试(从pc1向pc2双线程发送数据,同时pc2向pc1双线程发送数据)
测试结果:pc1上出流量和入流量之和实测速度约为2330MB/s,涨落变小,只有10MB/s左右。
6. 双向多线程传输测试(从pc1向pc2多线程发送数据,同时pc2向pc1多线程发送数据)
测试结果:与前面单向多线程时不同,继续增加线程数传输速度会进一步缓慢提升。在双向10线程时传输速度之和达到2476MB/s(19808Mbps),同样超过了理论带宽的99%,而涨落则下降到1MB/s左右。
从这些测试结果可以看到,不论是单向传输还是双向传输,万兆以太网的实际带宽都可以很容易地达到理论峰值99%以上。这个结果有点出乎事先的预料。测试结果证实了万兆以太网的理论带宽并非虚标,在实际程序应用中经过一些优化是完全可以达到的。
英特尔Intel 最新的82599ES万兆以太网控制器采用的是:Intel® 82599ES芯片
英特尔® 以太网X520 DA2是双端口10千兆位服务器适配器,能够在虚拟和统一存储环境中提供终极灵活性和可扩展性。
SFP+ 万兆的3种连接方式:1,SFP+多模 2,SFP+单模 3,SFP+铜线直连。
英特尔连接虚拟化技术(Intel Virtualization Technology for Connectivity)是一套可以优化I/O性能的技术。
原生操作系统iSCSI加速功能能够提高性能,是最实惠的服务器和iSCSI SAN连接方式。
英特尔以太网X520服务器适配器产品系列能够设置LAN和SAN流量的路由,使其通过单一结构(具备FCoE能力),从而降低数据中心总拥有成本(TCO)。
Intel万兆网卡产品信息:
• Intel® Ethernet Server Adapter X520-DA2 E10G42BTDA
• Intel® Ethernet Server Adapter X520-SR1 E10G41BFSR
• Intel® Ethernet Server Adapter X520-SR2 E10G42BFSR
• Intel® Ethernet Server Adapter X520- LR1 E10G41BFLR
• Intel® Ethernet Server Adapter X520-T2
• Intel® Ethernet SFP+ SR Optics E10GSFPSR
• Intel® Ethernet SFP+ LR Optics E10GSFPLR