Answers:
您可以使用tc
位于http://linux.die.net/man/8/tc的名为手册页的命令来限制接口上的网络带宽。
对于简单的脚本,请尝试wondershaper。
使用tc的示例:
tc qdisc add dev eth0 root tbf rate 1024kbit latency 50ms burst 1540
tc
命令,你可以在这里看看马克的帖子mark.koli.ch/... 的OpenVZ的wiki有更多的例子openvz.org/Traffic_shaping_with_tc
如先前的回答所述,Wondershaper可以轻松完成这项工作。我包括Jwalanta Shrestha的上述链接中的信息
apt-get install wondershaper
wondershaper-限制特定接口带宽的简便工具。
$ sudo wondershaper {interface} {down} {up}
{down}和{up}是带宽,单位为kpbs
因此,例如,如果您要将接口eth1的带宽限制为下行256kbps和上行128kbps,
$ sudo wondershaper eth1 256 128
为了清除限制,
$ sudo wondershaper clear eth1
基于某些标准限制网络资源是QoS的主题。有几种不同的方法可以控制Linux系统上的用户流量。
Bert Hubert撰写了有关Linux上高级路由技术和流量控制的很好的方法指南。
如果您已经在某个地方安装了Apache设置,则可以使用mod_bw
,它也可以用于代理连接(即Apache只是将所有内容转发到适当的服务器,但会降低响应速度。)
Dummynet可以满足您的需求,甚至可以控制延迟,随机数据包丢失等等。
您也可以使用iptables hashlimit模块。这是一个简单的示例:
iptables -A FORWARD -m hashlimit --hashlimit-512kb / sec以上--hashlimit-burst 1mb --hashlimit-mode srcip,dstip --hashlimit-name bwlimit -j DROP
该规则将通过FORWARD链的流量限制为512kb / sec,每个源和目标对的突发流量为1mb。
有关更多信息,请参见iptables手册的hashlimit部分。