netem a Network Link Conditioner ve Windows
V Linuxu je tc netem a na Macu Network Link Conditioner. Windows nemá nic vestavěného, co přidává zpoždění a ztráty. Tato stránka převádí to, co už znáte, na Bean Network Tester a ukazuje, kde se čísla nepřenášejí.
Volby netem, jedna po druhé
Ke každému příkazu zde přidejte --target a --duration, jinak zasáhne celý počítač.
| netem | Nastavení v okně | Přepínač |
|---|---|---|
delay 100ms | Latency | --latency 100 |
delay 100ms 20ms | Latency, Jitter | --latency 100 --jitter 20 |
loss 5% | Loss | --loss 5 |
loss 5% 25% | Loss, Losses in a row (burst) | --loss 5 --loss-burst 4 |
duplicate 1% | Duplication | --dup 1 |
corrupt 0.1% | Corruption | --corrupt 0.1 |
reorder 25% | Spike chance, Spike size | --spike-prob 5 --spike-ms 200 |
rate 1mbit | Download, Upload | --down 122 --up 122 |
limit 1000 | Buffer | --buffer 1000 |
- Ztráty v dávkách. Hodnota korelace v netem není délka dávky. Losses in a row (burst) je průměrný počet paketů ztracených za sebou, tedy nejbližší ekvivalent.
- Přeuspořádání. Procento přeuspořádání neexistuje. Špička zpozdí jediný paket, takže ho ty odeslané později předběhnou, a počítadlo přeuspořádaných paketů na stránce Statistics ukáže, jestli se to opravdu stalo.
- Velikost fronty. Limit v netem počítá pakety. Buffer je čas v milisekundách.
Tři rozdíly, které je dobré znát
Směr. netem zpožďuje to, co opouští rozhraní, a odpověď se vrací nedotčená. Tento nástroj zachytává oba směry, takže --latency 100 přidá k pingu asi 200 ms: 100 tam a 100 zpět. Chcete-li dosáhnout toho, co dělá netem, zachytávejte jen odchozí provoz:
BeanNetworkTester.exe --filter out --latency 100 --jitter 20 --target myapp.exe --duration 120
Jednotky. Rychlost v netem je v bitech za sekundu. Pole omezení rychlosti jsou v KB/s, kde K = 1024. Převod megabitů:
| rychlost v netem | Pole omezení rychlosti, v KB/s |
|---|---|
1mbit | 122 |
5mbit | 610 |
10mbit | 1221 |
50mbit | 6104 |
100mbit | 12207 |
Rozsah. tc tvaruje celé síťové rozhraní a vyžaduje root. Tento nástroj míří na jediný program přes --target a vyžaduje práva správce.
Pokud znáte Network Link Conditioner
Nástroj od Applu pracuje s pojmenovanými profily. Nejbližší zde:
| Network Link Conditioner | Nejbližší zde |
|---|---|
| 100% Loss | Loss nastavené na 100 |
| 3G | 3G network |
| DSL | Home DSL (VDSL) |
| LTE | LTE / 4G |
| WiFi | Good WiFi |
| Very Bad Network | Terrible network |
| Edge | Odpovídající profil neexistuje. Zadejte omezení rychlosti a latenci sami a uložte je jako vlastní profil tlačítkem Save.... |
Čísla nejsou od Applu, berte proto profil jako výchozí bod. Každá hodnota, kterou profil nastavuje, je uvedena na referenční stránce.
Co získáte ve Windows
- Jeden program, ne celý počítač. Zaměřte zhoršení na jedinou aplikaci, zatímco zbytek počítače zůstane v normálu.
- Časová osa místo shellového skriptu. Časované scénáře mění nastavení v zadaných sekundách, což v Linuxu dělá skript z
tcasleep. - Spustí ho i pipeline. Stejný spustitelný soubor běží v CI a hlásí výsledek přes návratové kódy.
V Linuxu nebo macOS používejte originály. Tento nástroj běží jen ve Windows.