要約

  • RFC 9972 は、pre-policy / post-policy Adj-RIB-In、特定の Adj-RIB-Out、そして一部の Loc-RIB における現在の経路数を、64 ビット BMP Gauge として定義する。どの段階かは数値に不可欠である。
  • Gauge が示すのは限定された件数であり、特定プレフィックス、属性、ポリシー判断、UPDATE の到着、FIB の投入、パケット配送を示すものではない。

「何本あるか」の前に「どこにあるか」

ルーターに経路が何本あるか、という説明だけでは BGP の仕事を消してしまう。Adj-RIB-In にはピアから受け取った未処理の情報が入る。pre-policy は受信ポリシー前、post-policy はそのポリシー後だが Loc-RIB を作る選択の前である。Loc-RIB はローカルの Decision Process が選んだ経路を持ち、IGP や静的設定から来た経路もあり得る。Adj-RIB-Out は、個別のピアへ広告するための見え方である。

同じ経路に関する情報でも、これらの場所では意味が異なる。ある段階の数を別の段階の事実として読むと、監視値を根拠のない運用結論に広げることになる。

RFC 9972 は RFC 7854 の BMP Statistics Report 形式を保ったまま、新しい 64 ビット Gauge を追加した。Mukul Srivastava と Changwang Lin は編集者で、Yisong Liu と Jinming Li が共同著者である。目的は保守とトラブルシューティングのための、より細かい BGP 監視である。一つの数が経路の運命をすべて語る、という約束ではない。

Type 18 と 19 は pre-policy Adj-RIB-In の現在数を全体または AFI/SAFI ごとに示し、20 と 21 は post-policy を示す。Type 22 は、ポリシー設定が変化している間に受信ポリシーで拒否された現在の経路数を AFI/SAFI ごとに示す Gauge である。これは累積イベント数とは別物だ。Type 23 は post-policy で受理された現在数を示す。どの値も「今、この視野で、いくつ」という問いにだけ正確である。

集計値から一経路の物語は生まれない

post-policy の数が増えても、どのプレフィックスが増えたのか、どのピアから来たのか、AS_PATH や community が何だったのか、どの版のポリシーが受け入れたのかは分からない。その経路が Loc-RIB に選ばれたか、出力ポリシーを通ったか、UPDATE が相手に届いたか、FIB に入ったか、パケットが使ったかも別の事実である。

拒否数についても同じである。Gauge はポリシー変更が集団に影響している兆候にはなる。しかし個別拒否を説明するには、プレフィックス、属性、ピア、ルール、時刻、結果を保存しなければならない。経路を広告した、FIB に投入した、利用者トラフィックが通った、という主張には、その層を観測した別の記録が必要になる。

したがって、全体値、AFI/SAFI 分割、個別経路トレースを同じ色の「健全性」に畳み込んではならない。それらを結びつける運用は価値がある。互いを代用品にする運用は、障害の場所を隠す。

合計が一致しないことにも意味がある

RFC 9972 は全体統計と対応する AFI/SAFI 統計を同時に送ることを許す。一方で、両者が常に厳密に一致すると仮定してはならない、と明記する。競合や部分的障害があれば、分割値の和と全体値が違うことがある。実装は整合性確認をしてよいが、この差は警告として扱い、プロトコルを止めてはならない。

差は見栄えの悪いノイズではない。採取時刻、更新順、部分報告、実装状態を確かめる入口である。そこから直ちに経路表破損、攻撃、サービス断を断言することはできない。

また Gauge は手動クリアやオーバーフローでリセットされ得る。RFC 9972 は producer と collector に不連続の追跡と記録を求める。これを落としたグラフでは、単なるリセットが大規模な経路撤回や復旧に見えてしまう。

共通仕様の外側に運用判断を残す

共通部分は小さい。全体値は 64 ビット Gauge、分割値は AFI、SAFI と 64 ビット Gauge であり、未知 Type は無視する。GR、LLGR、RPKI などに関係する統計は、その機能が有効な場合にだけ生成すべきものだ。Type が規格にあることは、観測した装置でその機能が動いている証拠にはならない。

報告頻度、レート制限、収集する種類、しきい値、差の調査方法はローカルな判断として残る。RFC 9972 も制御プレーンへの負担を減らすため必要な統計だけを有効にし、更新を制限するよう勧めている。

Heng Lu の Running-Code Primacy で言えば、標準は観測語彙を共有可能にする。実際のコードと運用は、誰がいつどの設定で値を出したか、リセットがあったか、さらに大きな主張をどの記録で支えるかを示す。Gauge の境界を守ることが、利用価値を守る。

Sources