2012-05-22 9 views
7

Czy istnieje sposób w Linuksie do symulacji powolnego ruchu przychodzącego do mojego serwera w określonym porcie? Spojrzałem na NETEM, ale wydaje się, że WAN jest szeroki.W systemie Linux symuluj powolny ruch przychodzący do portu, np. 54000

+0

Chciałem to rozgryźć przez chwilę; jest to bardziej skomplikowane niż myślisz, ale [jest to możliwe] (http://luxik.cdi.cz/~devik/qos/htb/manual/userg.htm). Na kolację. – sarnold

+1

nie można ** użyć portu telnet-host **? – tuxuday

+0

@sarnold, nie powinieneś dodawać kolejki htb, patrz poniżej: –

Odpowiedz

0

Spójrz na JMeter. W zależności od tego, jakiego rodzaju ruchu potrzebujesz, może on już zapewniać funkcjonalność.

4

Przykładem ograniczając wszystkie pasujące ruch TCP (Protokół 6) Port docelowy 54000 w 256Kbits przychodzących do eth0 korzystając tc ...

Jako root ...

tc qdisc add dev eth0 handle ffff: ingress 
tc filter add dev eth0 parent ffff: protocol ip prio 50 u32 \ 
    match ip protocol 6 0xff \ 
    match ip dport 54000 0xffff police rate 256kbit burst 10k drop \ 
    flowid :1 

Można monitorować to tak ... zauważyć liczbę dropped dla ffff poniżej

[[email protected] ~]$ sudo tc -s qdisc show 
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1 
Sent 17796311917 bytes 5850423 pkt (dropped 0, overlimits 0 requeues 0) 
rate 0bit 0pps backlog 0b 0p requeues 0 
qdisc ingress ffff: dev eth0 parent ffff:fff1 ---------------- 
Sent 140590 bytes 1613 pkt (dropped 214, overlimits 0 requeues 0) 
rate 0bit 0pps backlog 0b 0p requeues 0 
qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1 
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0) 
rate 0bit 0pps backlog 0b 0p requeues 0 
[[email protected] ~]$ 

Aby usunąć cały ruch ingresu filtry:

tc qdisc del dev eth0 ingress 
+0

tks za odpowiedź, jutro spróbuję! – delita

+0

Czy mogę zastąpić "wskaźnik policyjny 256kbit burst 10k drop" z "delay 100ms", a to opóźniłoby ruch przychodzący o 100ms? – delita

+0

To brzmi dobrze, przetestuję to i dam znać –