ToS, DSCP と NetFlow…. DiffServって何? Part 5
これはToSフィールド(例:IPフレームのDifferentiated Servicesフィールド)の4パートからなるシリーズのパート5です。4パートのブログにパート5をつけるなんて冗談です。
パート1から4を読んでおいてください。
もう一度、わたしの最初のブログからWireShark キャプチャを書きます。
※ 図
上の図のDifferentiated Servicesフィールドの一部である2つのECN (Explicit Congestion Notification) ビットに注意してください。それらはブログ3で1998年に書かれたRFC2474からの“現在は使われていない”ビットです。“現在は使われていない”(普通は:) 二つのビットはRFC3168で1998年に定義されました。
二つのECNビットは混雑状態を示すためにホストかルータに使われています。
ECN-Capable Transport (ECT) = 10 or 01
Not-ECN-Capable Transport (Not-ECT) = 00
Congestion Experienced (CE) = 11NOTE: Routers treat the ECT(0) and ECT(1) codepoints as equivalent. Senders are free to use either the ECT(0) or the ECT(1) codepoint to indicate ECT, on a packet-by-packet basis.
TCPとECNの操作
Wikipediaには書いてないのでいくつかの文を貼り付けておきます。
<貼り付け開始>
IPヘッダーのECNビットによると、TCPはTCPヘッダーで送信者が送る情報を減らすために送信者に信号を送るTCPヘッダーで二つのフラッグを使用します。これはECNエコーと下記で説明するCongestion Window Reduced (CWR)です。
TCPコネクションでのECNの使用はオプションです。ECNが使われるにはSYNとSYN-ACKセグメントの最適なオプションを取り入れることにより作られるコネクションで交する必要がある。ECNがTCPコネクションに関して取り決められると送信者はECN-capableコードポイントで全てのデータセグメントに印を付けます。これから起こる混在状態を検出するルータはECN-capableパケットに完全に落とすというよりもCongestion Experienced [...]
