tcpdumpの「SEW」フラグについて

tcpdumpでパケットを見ていると、ときどき Flags [SEW] のようなフラグを見ます。
これはECN-setupのパケットになります。

■ECNとは
Explicit Congestion Notification (ECN、輻輳通知)。
ECNとは中継ルータが明示的に輻輳の発生を通知する仕組みのこと。通常、輻輳の制御は端末側(パソコン側)で行うが、ECN対応ルータならば、ルータが輻輳の発生を端末側に教えてくれる。

[ECNフラグのタイプ]
00 Non ECN-Capable Transport, Non-ECT
10 ECN Capable Transport, ECT(0)
01 ECN Capable Transport, ECT(1)
11 Congestion Encountered, CE.

おおまかな流れは以下の通り。

[輻輳発生時]
1.中継ルータが輻輳を検知した場合、ECNフラグを11にセットして、受信ホストに輻輳の発生を通知する。
2.ECNフラグ付きのパケットを受け取った受信ホストはECE(ECN-Echo)フラグをセットしてデータの送信量を抑えるよう送信ホストにお願いする。
3.ECEフラグ付きのパケットを受け取った送信ホストは、データの送信量を減らし、その旨をCWR( Congestion Window Reduced )フラグをセットして受信側に知らせる。

以上。

参考URL
http://en.wikipedia.org/wiki/Explicit_Congestion_Notification
http://monkey.org/openbsd/archive/misc/0210/msg01684.html
https://www.nic.ad.jp/ja/materials/iw/1999/proceedings/C03.PDF
http://itpro.nikkeibp.co.jp/article/COLUMN/20070314/264966/
https://technet.microsoft.com/ja-jp/library/bb878122.aspx

Leave a Reply

Your email address will not be published. Required fields are marked *