Odpowiedzi:
Możesz ograniczyć przepustowość sieci na interfejsie za pomocą polecenia o nazwie tc
Strona man dostępnego pod adresem http://linux.die.net/man/8/tc
W przypadku prostego skryptu wypróbuj Wondershaper .
Przykład użycia tc:
tc qdisc add dev eth0 root tbf rate 1024kbit latency 50ms burst 1540
tc
polecenie, możesz sprawdzić post Marka tutaj mark.koli.ch/ ... wiki openvz ma więcej przykładów openvz.org/Traffic_shaping_with_tc
Jak zauważono w poprzedniej odpowiedzi, Wondershaper wykonuje tę pracę z łatwością. Podaję informacje z powyższego linku autorstwa Jwalanty Shrestha
apt-get install wondershaper
wondershaper - Proste narzędzie do ograniczenia przepustowości określonego interfejsu.
$ sudo wondershaper {interface} {down} {up}
{down} i {up} są przepustowością w kpbs
Na przykład jeśli chcesz ograniczyć przepustowość interfejsu eth1 do łącza downlink 256 kb / s i łącza w górę 128 kb / s,
$ sudo wondershaper eth1 256 128
Aby usunąć limit,
$ sudo wondershaper clear eth1
Ograniczanie zasobów sieciowych w oparciu o niektóre kryteria jest przedmiotem QoS . Istnieje kilka różnych sposobów kontrolowania ruchu użytkowników w systemach Linux.
Bert Hubert ma dobre instrukcje na temat zaawansowanych technik routingu i kontroli ruchu w systemie Linux.
Jeśli masz już gdzieś konfigurację Apache, możesz jej użyć mod_bw
, która działa również na połączeniach proxy (tzn. Apache po prostu przekazuje wszystko do właściwego serwera, ale spowalnia odpowiedzi).
Dummynet robi to, co chcesz, a nawet więcej, możesz nawet kontrolować opóźnienie, losową utratę pakietów i wiele więcej.
Możesz także użyć modułu hashlimit iptables. Oto prosty przykład:
iptables -A DO PRZODU -m hashlimit - hashlimit powyżej 512 kb / s - hashlimit-burst 1mb - tryb hashlimit srcip, dstip - hashlimit-name bwlimit -j DROP
Ta reguła ogranicza ruch przechodzący przez łańcuch FORWARD jako 512 kb / s z serią 1 Mb dla każdej pary źródłowej i docelowej.
Aby uzyskać więcej informacji, zobacz sekcję hashlimit w instrukcji iptables.