要約
- RFC 3316は、新しいTCP ACK、RTCP受信報告、SIP応答を、直近の送信パケットが第一ホップのルーターを通過したという肯定的な証拠として使うようセルラーホストに勧めた。
- 推論の範囲は狭い。遠端との前進は近隣ノードが少し前に到達可能だったことを示すが、アプリケーションの完了、将来の接続、任意の受信トラフィックによる順方向の健全性までは証明しない。
初期のセルラーIPv6でコストの高いパケットは、必ずしも利用者のデータではなかった。ホストがすでに別の場所で答えを得ている問いを、もう一度投げるためのパケットであることもあった。
IPv6のNeighbor Unreachability Detection(NUD)は、次のホップが最近到達可能だったかを追跡する。確信の有効時間が切れ、なお送信が続くと、ホストはユニキャストのNeighbor Solicitationを送り、応答としてのNeighbor Advertisementを待てる。Ethernetなら、この交換はアドレス解決と同じ文脈に置きやすい。ところがRFC 3316が扱ったGPRS/UMTS回線は、ほぼポイント・ツー・ポイントだった。セルラーホストの隣接ノードは既知のデフォルトルーター一台で、通常のリンク層アドレスもない。アドレス解決は不要でも、第一ホップの故障を見抜く必要は残る。
そこで仕様は、問いの立て方を変えた。別のプロトコルが、直近の送信パケットが前へ進んだことを、すでに示していないか。
一般のNeighbor Discoveryが、その論理を用意していた。新しいTCP ACKを受け取れば、先に送ったデータが遠端に届いたと分かる。遠端が同一リンク上にないなら、そのデータは送信元の第一ホップルーターを通らずに到達できない。エンド・ツー・エンドの確認は、同時にローカルな事実も含む。パケットが通過した時点で、次のホップは到達可能だった。ホストはこの事実でNeighbor Cacheを更新し、ルーターだけを確かめる追加プローブを省ける。
RFC 3316は、当時のセルラー用途で多かったUDPにも同じ考え方を適用した。UDP自身は配送確認を持たないため、アプリケーションが正しい因果関係を持つ信号を出す必要がある。RTPなら、一部の送信パケットが相手に届いたことを示すRTCPの受信報告ブロックが候補になる。SIPなら、要求への応答が、その要求の到達を示す。セルラーホストがSIPサーバー側の場合、応答を送っただけでは一般に足りないが、その後のACKを受け取れば、先のINVITE応答が相手側まで届いたと推定できる。
これらは交換可能な「通信中」ランプではない。いずれも、最近送信したトラフィックの到達を含意しなければならない。無関係な受信データグラムは該当しない。未要請のRouter Advertisementも同じである。それが示すのは、ルーターからホストへの逆方向が通ったことだけだ。NUDが知りたいのは、ホストから次のホップへ向かう順方向である。単に何かが届いたことと、検査対象の経路を証明することは違う。
得られる状態も永久ではない。上位層の確認により、Neighbor Cacheのエントリーは限られた期間REACHABLEになる。新しい確認が止まればSTALEへ老化し、送信に伴ってDELAY、さらにPROBEへ進み、専用のNeighbor Solicitationが再開する。RFC 3316はNUDを廃止したのではない。稼働中のアプリケーションが有効な答えを出している間、同じ問いを重ねないようにした。
無線シグナリングには費用がある。文書はセルラー帯域が限られ、通信量に応じて課金される場合もあると述べた。不要なメッセージを減らせば、容量と利用者負担の双方を守り得る。ただしRFC 3316は、パケット数、電池、料金の実測削減を報告していない。リンク構造と既存フローの証拠を基に、実装上の方針を提示しただけである。
この仕組みは後継文書にも残った。2013年のRFC 7066はEPSを含むモデルへ更新し、TCP、RTCP、SIPの例を維持しながら、DNS応答も候補に加えた。文章が継承されたことは推論の有用性を示すが、どの端末が実装し、何回プローブを削減したかは示さない。
歴史的な要点は、アプリケーションが経路制御を決めるべきだという話ではない。因果関係が明示できる場合に限り、ある層の証拠を別の層の状態機械が安全に再利用できる、という話である。遠端の報告が第一ホップについて語れるのは、直近の送信パケットがそこを必ず通ったからだ。結論はそこで止めるべきだ。RTCP報告は良好な映像を、SIP応答は通話完了を、到達可能なルーターは利用可能なサービスを証明しない。ひとつのパケットの証拠は、次のパケットの保証書でもない。
出典:RFC 3316、RFC 2461、RFC 4861、RFC 7066、RFC 7849、RFC 8504、RFC 3550、RFC 3261。
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
Strategic Circle 限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加
