Simulátor špatných síťových podmínek pro testování aplikací
BeanNetworkTester je nástroj pro záměrné zhoršování síťových podmínek a testování chování aplikací na špatném připojení. Provozuje se přes ovladač WinDivert, který zachytává a upravuje síťový provoz, a nabízí grafické rozhraní i příkazový řádek pro CI. Nástroj umožňuje přidávat latenci a jitter, zahazovat, poškozovat nebo duplikovat pakety, omezovat rychlost stahování a odesílání, přerušovat TCP spojení pomocí RST, simulovat výpadky linky, blokovat porty a IP adresy a cílit na konkrétní proces, PID, IP nebo port.
Nástroj obsahuje 16 přednastavených profilů reálných sítí od 56k modemu přes 3G, Wi-Fi v kavárně a satelit až po 5G, s hodnotami odvozenými z publikovaných měření. Podporuje skriptované scénáře v JSON, které mění nastavení v čase, reprodukovatelnost přes seed hodnoty, LAN režim bez internetu, NAT timeout, MTU black hole, plánování propustnosti podle času a ukládání reprodukčních reportů s CLI příkazem pro přesné zopakování. Statistiky zahrnují živé čítače paketů, graf propustnosti, tabulku spojení se 17 sloupci a export do CSV. Každá změna je validována a chybné zadání je nahlášeno místo tichého ignorování.
Hlavní funkcionality
Přidávání latence, jitteru a latenčních špiček s pevnou nebo náhodnou hodnotou
Zahazování, poškozování a duplikování paketů s nastavitelným procentem
Omezování rychlosti stahování a odesílání s nastavitelným bufferem
Přerušování TCP spojení pomocí RST s volitelným procentem a dobou trvání
Simulace periodických výpadků linky s nastavitelnou periodou a délkou výpadku
Blokování portů a IP adres s filtrovací syntaxí včetně CIDR a regulárních výrazů
Cílení na proces, PID, IP nebo port se sjednocenou filtrovací syntaxí
16 přednastavených profilů reálných sítí od 56k modemu po 5G a satelit
Skriptované scénáře v JSON s časovými kroky a smyčkou
Reprodukovatelnost přes seed hodnoty pro opakovatelné testy
LAN režim pro simulaci funkční lokální sítě bez internetu
NAT timeout, MTU black hole a TCP SYN drop pro testování připojení
Plánování propustnosti podle času s nahrazováním pevných limitů
Živé statistiky s čítači, grafem propustnosti a tabulkou spojení
Export statistik a spojení do CSV
Reprodukční reporty s CLI příkazem pro přesné zopakování podmínek
Grafické rozhraní s tooltipy a příkazový řádek pro CI s exit kódy