在Linux中,单个下载可以使用所有可用的带宽,因此任何其他连接都不能启动。 (例如,如果我正在下载更新,我不能同时上网)
有没有办法在不同的连接之间设置某种公平的排队,以便共享?
我使用sfq qdisc检查了tc,但似乎必须将其调整到当前的可用带宽,这在xDSL上可能会很困难,因为根据提供商的不同,最大下行带宽无法完全提供。
查看Wondershaper: http : //lartc.org/wondershaper/ – 它为此而构build。
Ubuntu的线程: http : //ubuntuforums.org/showthread.php?t=25911
Freshmeat概述: http ://freshmeat.net/projects/wshaper/:
许多有线电视和ADSL用户在上传或下载时遇到惊人的延迟。 他们也注意到上传阻碍了下载。 奇迹般的整洁地解决了这些问题,允许有奇迹般的路由器的用户继续愉快地使用SSH通过一个加载的链接。
这也可以使用涓stream
一个更快的临时修复可能会带来一些好处,就是为输出数据包编写几个iptables规则,为SYN数据包提供不同的服务types(例如,发送新连接请求的内容 – 要加载的新网页)和传入的SYN-ACK。
你也许可以扩展这个来testing端口号等,也许可以使用iptables保存连接会话的状态表。
我个人从来没有尝试过任何带宽限制的应用程序,但是如果您想要一个适合Linux的应用程序,请查看带宽限制维基百科条目的“外部链接”部分。
在所提到的解决scheme中,我听说过基于涓stream和Squid的实现(如带宽限制HOWTO )。