Jsme hostitelem aplikace na vzdáleném serveru. Musíme jej otestovat s omezenou šířkou pásma sítě (pro uživatele se špatným přístupem k internetu).
Mohu omezit svou internetovou šířku pásma? Například: 128 KB za sekundu.
Tato otázka se zaměřuje na systémová nebo kontejnerová řešení v systému Linux. Viz Omezení využití specifické šířky pásma internetového připojení Shell pro řešení specifická pro proces nebo relaci.
Můžete omezit šířku pásma sítě na rozhraní pomocí příkazu nazvaného tc
Man stránka dostupná na http://linux.die.net/man/8/tc
Pro jednoduchý skript zkuste wondershaper .
Příklad použití tc: tc qdisc add dev eth0 root tbf rate 1024kbit latency 50ms burst 1540
Jak bylo uvedeno v předchozí odpovědi, zázraková práce to dělá snadno. Informace z výše uvedeného odkazu zahrnuji Jwalanta Shrestha
apt-get install wondershaper
wondershaper - Snadný nástroj k omezení šířky pásma konkrétního rozhraní.
$ Sudo wondershaper {interface} {down} {up}
{down} a {up} jsou šířka pásma v kpbs
Pokud například chcete omezit šířku pásma rozhraní eth1 na downlink 256 kb/s a uplink na 128 kb/s,
$ Sudo wondershaper eth1 256 128
Chcete-li limit zrušit,
$ Sudo wondershaper clear eth1
Omezení síťových zdrojů na základě některých kritérií je předmětem QoS . Existuje několik různých způsobů řízení provozu uživatelů v systémech Linux.
Na Linuxu od Bert Huberta existuje dobrý návod pokročilé směrovací techniky a řízení provoz .
Pokud již někde máte nastavení Apache, můžete použít mod_bw
, které funguje také na proxy serverech (tj. Apache předává vše správnému serveru, ale zpomaluje odpovědi).
Můžete také použít modul iptables hashlimit. Zde je jednoduchý příklad:
iptables -A FORWARD -m hashlimit - hashlimit-nad 512kb/sec - hashlimit-burst 1mb - hashlimit-mode srcip, dstip - hashlimit-jméno bwlimit -j DROP
Toto pravidlo omezuje přenos, který prochází řetězcem FORWARD, na 512 kb/s s 1mb dávkou pro každý zdrojový a cílový pár.
Další informace naleznete v části hashimit v příručce iptables.
Dummynet dělá to, co chcete a ještě víc, můžete dokonce ovládat latenci, náhodnou ztrátu paketů a mnoho dalšího.