要約

  • RFC 3988 の LSP MTU は、一台の装置が所有する事実ではなく、実際に選ばれた下流経路の制約を逐次合成した上限だった。
  • 小さくなった値の遅延は過大なパケットを通してしまうが、大きくなった値の遅延は主に容量を余らせるため、更新の緊急度は非対称だった。

2005 年 2 月の RFC 3988 は、LDP に MTU を知らせる実験的拡張を定めた。情報ページ、正誤表、Datatracker が示す問題は明確だった。ラベルは入口まで届いても、LSP 全体が運べる大きさは届かない。静的設定が大き過ぎれば、中間 LSR はパケットを黙って捨て得る。

MTU TLV は FEC の Label Mapping に載る。しかし、LDP の隣接関係すべてを計算対象にはしない。RFC は、Mapping を送る peer LSR と、その FEC を実際に転送する downstream LSR を分けた。制御通信が成立した隣人でも、経路選択から外れていれば最小値には入らない。隣接の証拠と転送責任の証拠は別だった。

さらに Link MTU、Hop MTU、LSP MTU の範囲も違う。リンクには物理回線だけでなく GRE、IPsec、別の LSP も含まれる。Hop MTU は上下流一組の間で実際に使うリンクの最小値、LSP MTU は現在地から出口までの全有効転送経路の上限である。下位層ヘッダーは除くが、IP ヘッダー、ペイロード、ラベルスタックは含む。

RFC 3032 の情報、正誤表、履歴 を合わせると、4 オクテットのラベルが帳簿に現れる理由が分かる。1500 のリンクでもラベル一枚で 1496 になり、さらにトンネルへ入れば 1492 になり得る。物理ポートの MTU だけでは、現在の封入状態を表せない。

出口は 65535 を起点にする。各 LSR は、選択した下流ごとにローカル Hop MTU と受信した LSP MTU の小さい方を取り、その結果を全下流でさらに最小化する。下流 Mapping に TLV がなければ 65535 として扱い、既知のローカル制約に計算を任せる。この値は巨大パケットが通った測定結果ではない。

広告には片方向の制約があった。計算値より小さくすることはできても、大きくしてはならない。過小評価は利用率を落とす。過大評価は存在しない余裕を入口へ約束し、途中廃棄を生む。したがって、この数値は安全な包絡線であって性能保証ではない。

下流値または下流集合が変われば再計算する。結果が下がったときは直ちに再広告し、上がったときは hold down してよい。旧い小さな値は新しい広い経路でも安全だが、旧い大きな値は狭くなった経路で危険である。RFC は鮮度を秒数だけでなく、変化の向きで定義した。

未知 TLV の通過規則も重要だった。理解しない LSR は TLV をローカルでは無視しつつ上流へ転送する。RFC 自身が、これにより MTU 計算が誤る場合を認めている。それでも情報を残す価値を選んだ。運搬した装置は、その主張を理解した装置でも検証した装置でもない。

この処理の土台は RFC 3036 の LDP であり、その情報、正誤表、履歴 が当時の規則を保存する。後継の RFC 5036 と情報、正誤表、履歴 は基礎仕様を更新したが、RFC 3988 の配備を証明しない。

入口で初めて、値は RFC 1191 の IPv4 動作へ渡る。その情報、正誤表、履歴 に従い、分割可能なら分割し、DF 付きなら破棄して ICMP を返す。それは制御面上限に対する入口の判断であり、適合サイズのパケットが配送された証拠ではない。

RFC 3209 の情報、正誤表、履歴 が示す RSVP-TE トンネルも、RFC 3988 では一つのリンクとして扱える。経路の上限が別経路の上限とラベル深度に依存する以上、運用記録は値だけでなく、下流集合、由来、年齢、封入状態、理解したノードを保存しなければならない。

この実験仕様が残したのは、悪い知らせを優先する設計原理だった。制約が増えたときの遅れは偽の可能性を作る。制約が減ったときの遅れは一時的な慎重さにとどまる。そして、正しく計算された上限でさえ、転送、到達、アプリケーション受理とは別の受領証である。

出典