qdisc netem が待ち時間を追加しすぎます。

qdisc netem が待ち時間を追加しすぎます。

vethペア(Mininet)で待機時間+ジッタをシミュレートするために、次のコマンドを実行しています。

sudo tc qdisc add dev h1-eth0 root netem delay 100ms 5ms

100msの遅延(例では5msではない)を指定すると、すべてが期待どおりに機能します。インターフェイス間のpingを実行すると、実際に100msの遅延があることがわかるからです。

64 bytes from 10.0.0.2: icmp_seq=17 ttl=64 time=100 ms
64 bytes from 10.0.0.2: icmp_seq=18 ttl=64 time=100 ms
64 bytes from 10.0.0.2: icmp_seq=19 ttl=64 time=100 ms
64 bytes from 10.0.0.2: icmp_seq=20 ttl=64 time=100 ms
64 bytes from 10.0.0.2: icmp_seq=21 ttl=64 time=100 ms
64 bytes from 10.0.0.2: icmp_seq=22 ttl=64 time=100 ms
64 bytes from 10.0.0.2: icmp_seq=23 ttl=64 time=100 ms

ただし、ジッタパラメータを追加すると、実際にはほとんどの場合100ミリ秒から5ミリ秒の変動がありますが、約4000ミリ秒という膨大な遅延も発生します。

64 bytes from 10.0.0.2: icmp_seq=64 ttl=64 time=104 ms
64 bytes from 10.0.0.2: icmp_seq=65 ttl=64 time=104 ms
64 bytes from 10.0.0.2: icmp_seq=63 ttl=64 time=4391 ms
64 bytes from 10.0.0.2: icmp_seq=68 ttl=64 time=101 ms
64 bytes from 10.0.0.2: icmp_seq=70 ttl=64 time=101 ms
64 bytes from 10.0.0.2: icmp_seq=66 ttl=64 time=4393 ms
64 bytes from 10.0.0.2: icmp_seq=71 ttl=64 time=105 ms
64 bytes from 10.0.0.2: icmp_seq=67 ttl=64 time=4393 ms
64 bytes from 10.0.0.2: icmp_seq=72 ttl=64 time=103 ms
64 bytes from 10.0.0.2: icmp_seq=73 ttl=64 time=100 ms
64 bytes from 10.0.0.2: icmp_seq=69 ttl=64 time=4390 ms
64 bytes from 10.0.0.2: icmp_seq=78 ttl=64 time=102 ms
64 bytes from 10.0.0.2: icmp_seq=74 ttl=64 time=4392 ms
64 bytes from 10.0.0.2: icmp_seq=75 ttl=64 time=4393 ms
64 bytes from 10.0.0.2: icmp_seq=80 ttl=64 time=102 ms
64 bytes from 10.0.0.2: icmp_seq=76 ttl=64 time=4393 ms
64 bytes from 10.0.0.2: icmp_seq=77 ttl=64 time=4390 ms

編集:この問題が実際のインターフェイスでも発生していることを確認したところ、実際に発生します。

私が何かを逃したのでしょうか、それとも実際の問題がありますか?

ベストアンサー1

おすすめ記事