Netem
tc qdisc add dev eth0 root netem delay 100ms
tc qdisc change dev eth0 root netem delay 100ms 10ms
tc qdisc change dev eth0 root netem delay 100ms 10ms 25%
tc qdisc change dev eth0 root netem delay 100ms 20ms distribution normal
tc qdisc change dev eth0 root netem loss 0.1%
tc qdisc change dev eth0 root netem loss 0.3% 25% (prob(n) = .25 * prob(n-1) + .75 * random )
tc qdisc change dev eth0 root netem duplicate 1%
tc qdisc change dev eth0 root netem corrupt 0.1% introduces a single bit error at a random offset in the packet
tc qdisc change dev eth0 root netem gap 5 delay 10ms
tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50%
tc qdisc change dev eth0 root netem delay 100ms 75ms
tc qdisc del dev eth0 root
tc -s qdisc ls dev eth0
tc -s qdisc ls dev eth0
adds a fixed amount of delay to all packets going out of the local Ethernet
tc qdisc add dev eth0 root netem delay 100ms
add random variation(100ms ± 10ms)
tc qdisc change dev eth0 root netem delay 100ms 10ms
delay to be 100ms ± 10ms with the next random element depending 25% on the last one
tc qdisc change dev eth0 root netem delay 100ms 10ms 25%
tc qdisc change dev eth0 root netem delay 100ms 20ms distribution normal
loss(smallest possible non-zero value is 0.0000000232%)
tc qdisc change dev eth0 root netem loss 0.1%
causes the random number generator to be less random and can be used to emulate packet burst losses
tc qdisc change dev eth0 root netem loss 0.3% 25% (prob(n) = .25 * prob(n-1) + .75 * random )
tc qdisc change dev eth0 root netem duplicate 1%
tc qdisc change dev eth0 root netem corrupt 0.1% introduces a single bit error at a random offset in the packet
reorders every Nth packet-every 5th packet to be sent immediately and other packet to be delayed by 10ms
tc qdisc change dev eth0 root netem gap 5 delay 10ms
25% of packets (with a correlation of 50%) will get sent immediately, others will be delayed by 10ms
tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50%
tc qdisc change dev eth0 root netem delay 100ms 75ms
list current rules
tc -s qdisc ls dev eth0
delete all rules
tc qdisc del dev eth0 root
tc -s qdisc ls dev eth0