網絡模擬工具Netem

網絡模擬工具Netem可以模擬時延,丟包,重複包,亂序等功能。 Netem是用過命令行‘tc’來設置規則的,tc命令是IProute2命令中的一部分!

    1. 設置固定delay 100ms (所有經過eth0的包都被延時了100ms):

    # tc qdisc add dev eth0 root netem delay 100ms

    2. 設置delay 100ms Jitter 10ms:

    # tc qdisc change dev eth0 root netem delay 100ms 10ms

    3. Jitter其實是有相關性的,如果要設置Jitter的相關性25%:

    # tc qdisc change dev eth0 root netem delay 100ms 10ms 25%

    4. 設置Jitter爲正態分佈。

    # tc qdisc change dev eth0 root netem delay 100ms 20ms distribution normal

    5. 設置丟包率10%

     # tc qdisc change dev eth0 root netem loss 10%

     6. 丟包率也有相關性。 如設置10%的丟包率,但是丟包率之間的相關性爲25%

     # tc qdisc change dev eth0 root netem loss 0.3% 25%

     7. 包的duplication。

     # tc qdisc change dev eth0 root netem duplicate 3%

     8. 包的corruption。

     # tc qdisc change dev eth0 root netem corrupt 0.1%

     9. 亂序, 每第5個包馬上發送,其他的包間隔10ms發送。

     # tc qdisc change dev eth0 root netem gap 5 delay 10ms

     10. 亂序, 10%的包(相關性爲25%)馬上發送,其他的包間隔10ms發送。

     # tc qdisc change dev eth0 root netem delay 10ms reorder 10% 25%

 

     還有一些其他的功能,請自己參考: http://www.linuxfoundation.org/collaborate/workgroups/networking /netem#Delay_distribution。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章