限制已启动应用程序的Internet带宽


11

这个问题与此类似:如何限制互联网带宽?。但是wondershapertrickle不能限制已经启动的应用程序的Internet带宽。因此,如何限制已经启动的应用程序的Internet带宽(但仅限制一个应用程序,而不限制整个系统)?:)


1
您正在寻找的是一个过程带宽限制器,坦率地说,我已经花费了大约2个小时来寻找和测试一个带宽限制器。没运气。因此,我将在这里悬赏,因为我发现这个问题非常有趣。
Luis Alvarado

好了,开始奖励的选项在此帖子中使用了Firefox和chrome。Oo
Luis Alvarado

我很难相信,在Linux中找不到控制特定进程已运行或未运行的带宽的选项。有几种工具,大多数是监视工具,但是成型工具可以做到这一点。仅更改界面上载/下载的工作方式,而不更改特定于过程的界面。考虑到Linux在网络世界中非常强大,我觉得这很难理解。必须有一个选择。
Luis Alvarado

Answers:


5

对于一般情况,理论上可以在内核中使用netfilter的所有者扩展。我可以看到选项--pid-owner的man页面iptables上die.net,但它说,它与SMP打破:(

在我自己的系统10.04中,手册上没有这样的选项:(。因此,我相信这次我们不走运;(。也许--pid-owner将来某个时候会有该选项的另一种形式。最重要的不是火箭科学。

第一步必须在Linux本身和iptables上进行。

至于更具体的流量类型,例如HTTP。应该有一些方法可以使用代理进行调整,但是它可能需要一些技巧,因为这种用例并不经常出现。


因此,我想我们还不能限制已经启动的程序的互联网带宽。
kv1dr

1

它并不是特别有用,但真正有效限制带宽的唯一方法(我知道)是使用数据包整形或排队技术。我知道的唯一经过深思熟虑的方法是Bluecoat现在拥有PacketShaper系列设备

我已经有好几年没有用过它们了,但是我每天都使用Bluecoat代理,所以我跟上了PacketShaper系列产品的发展。

它们很昂贵,但是在工作上确实很棒。他们根本不使用队列,而是动态地控制TCP窗口的大小,以限制TCP对对话中的带宽。在最新版本中,它们也支持应用程序,因此您可以说“限制iPlayer和Youtube,但让其他所有内容通过”。

我确实在摸索这些设备功能的表面,但是由于它们与Ubuntu不相关,所以我会停下来,因此恐怕此答案并不完全相关。


1
我不认为,当您可以使用软件来购买时,为这种东西付费是明智的。
kv1dr 2011年

马匹的课程。在拥有成千上万用户的企业环境中,可靠的企业产品是您唯一的选择。假设您想保留自己的工作。基于队列的QoS通常是非常差的实现,因此我的回答重点介绍了一种替代方法。如上所述,如上所述,我们无法获得软件来执行此操作。
Scaine 2011年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.