WiFi TCP iperf 吞吐量:上游与下游

网络工程 无线的 ipv4 通讯协议 测试 iperf
2021-08-02 18:29:58

在 WLAN iperf3 TCP 吞吐量测试中,我有以下结果:

使用完全相同的设置,在 802.11ac (3x3) (DFS channel) (TCP Cubic) 中运行

30 nodes as server receiving iperf -> around 17Mbits avg per node.

30 nodes as iperf clients to a server -> around 4Mbits avg per node.

上下游之间存在如此大的差异有什么原因吗?

它们是点对点连接。客户端/服务器或上游/下游概念是应用层概念。

TCP 层中是否还有其他东西阻止使用完整的链路容量?

这就是为什么我不明白802.11,IP和TCP层是否“相同”,为什么传输速率会有如此大的差异。

是否有更多的碰撞?CSMA/CA 没有解决这个问题吗?

更新:

ARF呢?本文讨论上行性能问题:

https://link.springer.com/chapter/10.1007/978-3-642-20798-3_28

2个回答

在将下行链路流量(从接入点 (AP))传递到客户端节点时,AP 以适当的方式调度来自数据包队列的数据包,并且也不会面临介质上的任何争用。

然而,在上行链路上(从客户端节点到 AP),客户端节点竞争介质以发送数据包。这会造成延迟。该延迟反过来又与触发 TCP 窗口机制的 TCP 超时机制发生反应,以减少 TCP 窗口。这导致较低的吞吐量。

如果您真的想比较上行链路和下行链路的吞吐量,请使用 UDP 运行相同的测试。

除了@gpat 指出的访问/争用问题之外,无线链接几乎总是不对称的。

每一侧的位置都是独一无二的,而且通常是硬件(传输信号的“清洁度”、接收灵敏度)和天线。这会在速度和错误率方面在上行链路与下载方面产生或多或少明显的差异。

当使用 MIMO 或 MU-MIMO 时,这甚至会变得极端,并且 WAP 可以形成一个很好的波束,而客户端则不能,另外还会受到其位置寄生偏转的影响。