要約

  • RFC 9870は、SAFEまたはUNSAFEのUDPオプションKindがフロー内で一度以上観測されたことを表すIPFIX情報要素を登録する。
  • 立っているビットは観測範囲内の存在を示すだけで、順序、回数、値、処理成功、アプリケーション配送、普及状況は示さない。

ビットマップは明快に見える。ある位置が1なら、エクスポーターがそのKindを見たという答えは得られる。しかしRFC 9870は、どのデータグラムに入っていたか、何回現れたか、どんな値だったか、受信側が利用したかまでは答えない。

UDPオプションはUDPパケットの後ろにある余剰領域に置かれ、1オクテットのKindで識別される。RFC 9870はオプションの動作を再定義せず、運用上の使い方も決めない。定めるのはIPFIXエクスポーターが観測結果を表現する方法である。

二つの範囲を二つのフィールドで保つ

Kind 0〜191はSAFE、192〜255はUNSAFEである。情報要素525のudpSafeOptionsは256ビットの符号なしフィールドを使い、上位64ビットはゼロでなければならない。情報要素526のudpUnsafeOptionsはUNSAFE Kind用の64ビットである。

どちらも、対応するKindがフロー内で一度以上見えたことだけを表す。出現回数も順番も値も異なる二つのフローが、同じビットマップになり得る。高位ビットが不要なら縮小サイズ符号化で短くできるが、通信量の節約によって証拠の意味が広がるわけではない。

実験用オプションには識別子が要る

情報要素527〜529は16ビットの実験識別子と、観測されたSAFEまたはUNSAFE実験識別子のリストを扱う。リストがある場合は対応するEXPまたはUEXPの汎用ビットより優先され、エクスポーターはそのビットを立ててはならない。リストは実験番号を区別するが、実験の成功を証明しない。

収集側はビットマップを、詳しく調べるフローの選別や観測点の比較に使える。順序、回数、内容、端点動作が判断に必要なら、それらを直接記録する別の証拠が必要である。

中心となる仕様はRFC 9870である。UDPオプションの背景はRFC 9868、IPFIXはRFC 7011RFC 7012に基づく。登録内容はIANA IPFIXレジストリで確認できる。これらは形式を示す資料であり、現在の導入率や性能の証拠ではない。