我有两台通过千兆以太网连接的Windows PC。
当我使用iperf来测量吞吐量时,它最高可达100MBit / s。
当我使用两个或三个并行连接运行iperf时,每个都将获得完整的100MBit / s。
如果我添加所有的并行连接,那么最大速度应该是将近400MBit / s,所以我认为每个连接100MBit / s是一种节stream。
我需要这两台计算机之间的最大速度,是否有任何方法来禁用此限制,以便完整的吞吐量可以使用一个单一的连接,而不是在他们之间被共享?
默认情况下,iperf使用TCP连接。 由于TCP拥塞控制或窗口大小问题,可能会降低速率; 尝试一个UDPtesting( -u )。
此外,请检查CPU使用情况 – 当有一个进程时,其数据生成可能会使内核饱和,而有4个进程可以使用4个内核。
千兆以太网不会以你猜测的方式进行任何调节。 有很多因素可能会限制您能够运行iPerf的速度,包括您正在运行的testingtypes(TCP或UDP,窗口大小,数据包大小等,请参阅iPerf手册了解详细信息),可用的资源testing主机(例如,如果受到CPU的限制,单个testing可能会消耗一个内核,而并行testing使用额外的内核)以及您所连接的交换机的types。 此外,可能有一些中间设备以某种方式限制您,但这是一个策略configuration,而不是千兆以太网的function(例如,两个通过单个交换机直接连接的被测主机,或者是防火墙,路由器,或者他们之间的其他设备?)。
如果我添加所有的并行连接,那么应该有一个近400MBit / s的最大速度,
你还没有提到你如何将这些连接添加到一起,但我假设你正在谈论通道绑定或链接聚合 。 如果这是您计划使用的,那么请理解带宽不是累积的。 你实际得到的更多的是负载平衡,一些连接通过一个接口,一些通过其他接口。
绑定通常会根据目标的硬件地址或使用的networking协议的某些方面的一些细节来select接口。 重点是单个连接将被限制在一个单一的接口,它不会使用所有接口的组合带宽。