要約
- RFC 791のIdentificationは、元のデータグラムに属する断片を再構成するための値だった。
- RFC 6864は原子データグラムからその意味を取り除き、再構成が必要になり得る場合だけ役割を残した。
同じ値でも、同じ身元ではない
DF=1、MF=0、Fragment Offset=0のIPv4データグラムは原子的である。この状態では、2つのデータグラムが同じIdentification値を持ってもよい。後から断片化されることはなく、値の繰り返しは重複送信やカウンターの枯渇を示さない。
RFC 791が想定したIDの仕事は、断片の再構成を助けることだった。送信元・宛先アドレスとプロトコルを合わせ、再構成期間中に別のデータグラムの断片を区別するために使われる。
問題は、16ビットの空間が65,536通りしかないことだ。最大データグラム寿命の間、すべてのデータグラムで重複を避けようとすれば、高い送信速度で負担が増す。しかも、断片を生まないトラフィックには、その一意性は必要ない。
RFC 6864は既存のフィールドで状態を判定する。DF=0、MF=1、または非ゼロのオフセットなら、断片化が許されるか、すでに断片化されており、IDは再構成に意味を持つ。原子データグラムでは送信元は任意の値を設定でき、検査する機器はIDを無視しなければならない。ゼロも特別な値ではない。
つまり、フィールドを廃止したのではなく、約束の範囲を狭めたのである。IDは普遍的なパケット番号、重複検出器、相関キーではない。観測ツールが連続値を見ても、それは実装の特徴かもしれないが、標準が保証する識別ではない。
参考資料
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
Strategic Circle 限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加
