TCP 接続パケットはネットワーク待ち時間を無視し、ping は待ち時間を示します。

TCP 接続パケットはネットワーク待ち時間を無視し、ping は待ち時間を示します。

openwrtを使用して、すべてのネットワークパケットに2000msの遅延を導入しました。ネテム基準寸法。

# This is run on the terminal of the OpenWRT router
tc qdisc add dev wlan1 root netem delay 2000ms

ネットワーク上のデバイスにpingを送信すると、これがどのように影響するかを明確に確認できます。

# ping 192.168.10.164
PING 192.168.10.164 (192.168.10.164): 56 data bytes
64 bytes from 192.168.10.164: seq=0 ttl=64 time=2001.956 ms
64 bytes from 192.168.10.164: seq=1 ttl=64 time=2010.677 ms
64 bytes from 192.168.10.164: seq=2 ttl=64 time=2004.216 ms
64 bytes from 192.168.10.164: seq=3 ttl=64 time=2001.451 ms
64 bytes from 192.168.10.164: seq=4 ttl=64 time=2005.981 ms

しかし、交換を介してメッセージを配信するときにこれらの遅延に気づきようとすると無視されるncようです。

|---------------------|--------------------------------|
|    Terminal 1       |   Terminal 2                   |     
|   (192.168.10.164)  |   192.168.10.186               |
|---------------------|--------------------------------|
|  # nc -l 2389       |                                |
|                     | # nc 192.168.10.164 2389       |
|                     |      Hello                     |
|  # NO 2s DELAY      |                                |
|  # ALMOST INSTANT   |                                |
|    Hello            |                                |
|---------------------|--------------------------------|

私の質問は次のとおりです

  • これがモジュールが正しく設定されていない場合、netemすべてのIPパケットに遅延を適用する正しいモジュールは何ですか?

修正する これはnetemモジュールのバグが原因であるようです。ルータが再起動し、コマンドに応答した後に予想される遅延が発生しました。

ベストアンサー1

ICMPとTCPは異なるプロトコルであり、コマンドがICMPパケットに影響を与える場合、TCPパケットには影響しません。

おすすめ記事