2 个绑定 VPN 通道的绑定性能较差

2 个绑定 VPN 通道的绑定性能较差

我有两台 Linux 机器,希望通过绑定链路将它们连接起来。

一台机器有两个UMTS调制解调器(DN:5mbit UL:1.2mbit)作为网关,另一台机器以光纤(DL:100Mbit UL:20mbit)作为网关。

我可以成功创建 2 个 OpenVPN 通道(每个 UMTS 调制解调器一个,使用 iptables 规则),并将 Linux 绑定驱动程序(模式 0,循环分布)应用于这些通道。

到目前为止一切顺利。绑定接口通过两个聚合 VPN 通道连接两台 Linux 机器,我可以在其中 ping 每台机器、传输文件等。

我的问题是绑定的带宽。理论上带宽应该加倍,但实际上是一样的,与绑定内的 VPN 连接数无关。

在具有两个 UMTS 调制解调器的机器中,当我仅使用一个 VPN 时,我可以使用接近 DN:5mbit UL:1.2mbit 的带宽访问另一台机器。在绑定接口内使用 2 个 VPN 时,每个通道的带宽接近 DN:2.5mbit UL:0.6mbit,因此无论我使用一个还是两个 VPN 通道,总带宽都是相同的。

当我使用 TCP 或 UDP 传输数据时会发生这种情况,因此这不是协议问题。

还有其他人也经历过这样的事情吗?

提前致谢。

答案1

最后我找到了问题的(明显的)原因。

“如果您的网络链接带宽较低,那么将几条链接并联起来形成一个带宽更高的组合链接是件很容易的事情,但是如果您的网络链接延迟性很差,那么无论花多少钱都无法将任何数量的链接变成延迟性良好的链接。”@ 这是延迟,愚蠢的,Stuart Cheshire,1996 年 5 月。

由于 VPN 延迟约为 110 毫秒,因此链路的最大带宽约为 4.8mbps(根据http://bradhedlund.com/2008/12/19/how-to-calculate-tcp-throughput-for-long-distance-links/

为了检查这一点,我进行了实践测试,我将每个 UMTS 调制解调器的带宽降低到 2mbps DL 和 1.2mbps UL(使用 wondershaper 塑造流量),从而产生了 3.65mbps DL 和 2mbps UL 的聚合带宽。

总结一下,如果聚合带宽不超过延迟规定的最大带宽,我可以使用 VPN 绑定,否则将会浪费资源。

答案2

我怀疑带有数据的返回流量是否在链路之间平衡,因此建议首先在绑定接口上测试上行链路速度。

答案3

为什么不像链接中说的那样增加 TCP 窗口大小?如果将大小增加一倍,应该就能达到所需的带宽。

相关内容