Respostas:
Você pode limitar a largura de banda da rede na interface usando o comando chamado tc
Man page, disponível em http://linux.die.net/man/8/tc
Para um script simples, tente o maravilha .
Um exemplo do uso de tc:
tc qdisc add dev eth0 root tbf rate 1024kbit latency 50ms burst 1540
tc
comando, você pode conferir o post de marca aqui mark.koli.ch/... o wiki openvz tem mais exemplos openvz.org/Traffic_shaping_with_tc
Como observado na resposta anterior, o wondershaper faz o trabalho facilmente. Eu incluo as informações do link acima por Jwalanta Shrestha
apt-get install wondershaper
wondershaper - Uma ferramenta fácil para limitar a largura de banda de uma interface específica.
$ sudo wondershaper {interface} {down} {up}
o {down} e o {up} são largura de banda em kpbs
Por exemplo, se você deseja limitar a largura de banda da interface eth1 para o downlink de 256kbps e o uplink de 128kbps,
$ sudo wondershaper eth1 256 128
Para limpar o limite,
$ sudo wondershaper clear eth1
A limitação de recursos de rede com base em alguns critérios é o assunto da QoS . Existem várias maneiras diferentes de controlar o tráfego do usuário nos sistemas Linux.
Há um bom tutorial sobre técnicas avançadas de roteamento e controle de tráfego no Linux, por Bert Hubert.
Se você já possui uma configuração do Apache em algum lugar, pode usá-lo mod_bw
, o que também funciona em conexões com proxy (por exemplo, o Apache apenas encaminha tudo para o servidor apropriado, mas reduz as respostas).
A Dummynet faz o que você quer e muito mais, você pode até controlar a latência, perda aleatória de pacotes e muito mais.
Você também pode usar o módulo iptables hashlimit. Aqui está um exemplo simples:
iptables -A FORWARD -m hashlimit - acima de 512kb / seg --hashlimit-burst 1mb --hashlimit-mode srcip, dstip --hashlimit-name bwlimit -j DROP
Essa regra limita o tráfego que passa pela cadeia FORWARD como 512kb / s, com 1mb burst para cada par de origem e destino.
Consulte a seção hashlimit do manual do iptables para obter mais informações.