为什么在使用Linux时,我的MPIO与SAN的上限是1 Gbps?

我正在将RHEL5盒连接到Dell EqualLogic PS5000X,即使在使用带有三个千兆网卡的MPIO时,也可以看到最高1 Gbps的速度。

我在PS5000X上有三个接口,服务器上有三个专用iSCSI接口连接到同一交换机。 当使用多个接口连接到SAN时,我只能获得1 / n的stream量。 我遵循戴尔安装指南 ,除了吞吐量数据之外,一切似乎都完美无缺。

[root@testbox ~]# multipath -ll linuxvol (36090a02840c3bd2f5ec324010000707f) dm-5 EQLOGIC,100E-00 [size=50G][features=1 queue_if_no_path][hwhandler=0][rw] \_ round-robin 0 [prio=3][enabled] \_ 6:0:0:0 sdf 8:80 [active][ready] \_ 14:0:0:0 sde 8:64 [active][ready] \_ 15:0:0:0 sdi 8:128 [active][ready] 

 [root@testbox ~]# dd if=/dev/zero of=/mnt/linuxvol/testfile obs=64k count=16M 16777216+0 records in 131072+0 records out 8589934592 bytes (8.6 GB) copied, 76.4894 seconds, 112 MB/s 

我甚至可以在传输过程中closuresiSCSI会话,并观察其余连接的接口利用率从33%跳到50%到100%,因为我从三个跳到两个跳到一个会话。 我已经尝试调整各种队列深度和循环赛设置,这只是一个小小的差异。

PS5000Xconfiguration了14个数据加上2个热备份10k RPM SAS驱动器。 我的testing卷被设置为启用多个启动器的RAID-10。 SAN上没有精简configuration,没有快照,没有其他stream量。

我错过了什么? 在操作系统上需要调整一些MPIO设置吗?

更新:交换机是HP ProCurve 4104GL。 它不支持巨型帧。 所有SAN端口都启用stream量控制。 生成树被禁用。 连接到交换机的唯一设备是PS5000,testing服务器和一个上行链路端口。 我知道stream量没有通过上行链路,因为我可以在运行testing时观察交换机上的端口利用率。 我也在观看PS5000上的networking接口图,它与交换机利用率完全对应,每个接口的吞吐量大约为33%。

事实certificate,这个问题与交换机有关。 当我们最终用一台新的戴尔交换机取代了惠普时,一旦插入任何设备,我们就能够获得数千兆的速度。

只是一种思考…我们有一个HP ProCurve交换机上的软件多pathIO的Server 2003盒到戴尔PS5000 SAN工作正常…我会说,我们必须争取戴尔EqualLogic方面的很多设置和Windows中的软件iSCSI端让一切顺利运行。

在Windows上,让事情起作用的一个关键步骤是将负载均衡从“最less队列”切换到“循环赛”(这是从内存开始的,所以如果我不记得完全正确的话,那就减less一些闲置)。 一旦我们这样做了,我们就可以看到跨三个专用iSCSI网卡的EqualLogic平均带宽。

确保您的iSCSI工作场景在重启之后仍然存在! 我们必须调整服务在Windows上启动的顺序(通过更改服务依赖关系),使iSCSI和MPIO在重新启动后“恰到好处”工作

你的网卡是什么? 集成还是卡? 他们连接的总线限制是什么? 所以基本上是内置在主板上的networking接口,或者他们是某种forms的PCI卡? 什么是PCI总线,PCI-X还是什么? 什么是巴士速度。 系统不能超过接口系统总线的速度