我有一个VPS,它可以以2 2gbps的速度从Server下载一个文件。我有一个家庭互联网连接,可以下载一个文件从VPS以1 1gbps,但从服务器X只有100 1gbps。
如果我使用SOCKS代理并通过VPS从Server下载,我将获得预期的1 1gbps速度。
如果我在家里设置了GRE隧道或Wireguard连接到服务器X,并通过Server路由下载该文件,我仍然只能得到100 only。
奇怪的是,如果我使用‘大VPN提供商A’和他们的有线VPN,我也得到1 1gbps。但如果我使用“大VPN提供商B”和他们的有线VPN (据我所知,该公司使用的是同一家数据中心公司),我只能得到10 10mbps的服务器X。
无论如何,我希望有人能解释一下可能是这样的任何原因,因为我当时假设,使用VPN或GRE隧道通过VPS可以提供类似于socks或http代理使用它的性能。
VPS和家庭连接之间的速度在隧道或VPN上是很好的,到其他服务器的连接可能比Server有更好的性能,所以并不是整个连接都很慢。
发布于 2023-02-06 08:58:53
这可能有很多原因,为您的观察,但没有包括具体的技术,是重定向的流量。在这种情况下,代理出现得更快只是巧合,问题标题极具误导性。我建议将标题更改为不假定它的代理总是比VPN更快的东西,因为它不是。像“为什么不同的路径显示不同的带宽”这样的东西会更合适。
你所观察到的是,交通的某些路径比另一条更好。为什么会这样呢?那么,它可以通过更广泛的链接路由;ISP可以对不同的目的地应用不同阈值的选择性整形,等等。一些ISP还可以检测和下调VPN。
VPN提供商也可以人为地限制,或者只是对每个连接段都有有限的带宽。假设VPN服务是一个由多核处理器组成的服务器群,这样每个核心只能处理100 Mbps,但是由于它们平衡到不同核心和服务器的不同连接,它们可以实现几乎无限的聚合服务带宽。
一般的原因是,流量几乎从来没有被转发到“最快可能”的链路,但通常是“最便宜的可能”,如果您考虑Internet并试图在A点和B点之间找到最宽的管道,那么几个“最便宜的可能”链接的连接不太可能是最好的,有时,您可以使用VPN、代理等手工构建更好的路径,如果找到了,您使用哪种技术并不重要,它们都将显示大致相同的带宽。
有一个特殊的条件可以使代理显示更好的带宽,这就是当代理系统将延迟划分为近似相等的部分时,高延迟链路的情况。它连接到TCP吞吐量规范。在最大TCP窗口大小为65536 (字节)和往返时间为1秒的情况下,单个连接的最大吞吐量将为65536字节/秒,但如果将代理服务器放置在中间,并将其RTT设置为每腿0.5秒,则每个TCP路径的吞吐量将提高一倍,平均整个感知带宽也是如此。代替代理的VPN不会减少端到端的RTT,带宽不会增加一倍。
但是,要以这种方式将带宽提高十倍,您将需要链接9个精心放置的代理,因此在您的特定情况下,这不太可能是原因。
https://unix.stackexchange.com/questions/734479
复制相似问题