我正在使用大学互联网。它是整个大学共享的。我的问题是,有时我甚至无法浏览,因为网络太忙了。但我注意到,如果我在 Ubuntu 中用 IDM 或 axel 下载某些内容,它就可以正常工作。当我下载时,我也可以浏览。感觉就像当我开始下载时,其他应用程序可以通过繁忙的网络进行通信。有没有办法保持连接速度恒定。无需下载。
答案1
顺便说一下,标准网络通信的工作原理是,如果没有 QOS 或类似技术,就无法保证任何事情,只能尽最大努力。
至于为什么您会看到所看到的内容,没有单一的规则,这取决于您使用的网络设备,但基本上,在负载下,大多数网络设备仅传输应传输的总流量的几个百分点 - 而 UDP 连接(语音/Skype/其他)会受到影响,通过 TCP 的魔力,它将继续重新发送,最终您将获得数据 - 您只会看到很多滞后。
通过强化连接,你的机器将发送更多的数据包,并将得到更多的返回 - 例如,1,000,000 个数据包的 2% 远远大于 500 个数据包的 2%...(只是非技术/随机示例)....这就是为什么像 IDM 这样的专门打开多个连接的下载管理器可以为你提供更高的速度。
此外,至于为什么其他东西看起来更快 - 我能想到的是,他们使用的设备根据最多连接的位置对流量进行优先排序。
答案2
我有时在无线网络中看到这种情况,离开ping
或arping
运行可以帮助保持连接稳定。它也很有用,因为你可以切换到它并查看是否存在问题 - 高延迟或丢包。这可能是一种不那么滥用的方式来获得与运行下载相同的效果。
您是通过无线还是有线连接?
如果你还没有,你可以向技术支持人员提及此事。他们不会一定了解自动发生的所有事情。尤其是当它只在非常繁忙的时候才会出现问题时。
如果您有 ssh 服务,其影响应该比网页浏览更严重。(一些大学向所有学生提供 ssh shell 访问作为可选服务)。这可能是值得指出的,或者可以用作问题的演示。
答案3
我建议你读一下Linux 高级路由和流量控制。它确实解决了你的问题。
您看到的问题是由于某些应用程序(特别是 P2P 软件)上传量很大造成的。所有互联网流量(如 HTTP)都会将某些内容发送到您的内部网络之外。至少,必须发送 ACK 数据包以确认您的计算机已经收到远程服务器发送的数据包。这些应用程序会阻止您的上传链接并延迟您发送到外部网络的数据包。
另外,下载软件会产生大量的ACK数据包,这也会阻塞你的上传链路。
因此,有两种方法可以解决您的问题:
- 要求网络中的其他人降低其应用程序的上传速度
- 使用一些防火墙来重新安排网络中的上传流量并优先处理小数据包
LARTC 已经发布了一些脚本来实现这一点。您可以尝试将它们安装在网关上。
顺便说一句:也许你需要买一个运行Linux操作系统的路由器。如果你能访问一些中国购物网站,试着买一个DB-120。非常便宜和高效。