要約

  • BIRDの経路はLinux FIBからカーネル通知、LAN969xドライバーを経てASICに届く。Banelliによると、追加した256経路は正常に投入・撤回できた。
  • 完全な経路表、銅線ポートのL3転送、ECMPの実分散、BFD、ACL、ケーブル断は未試験。Novarqの公開リポジトリは「mainline support」と記す一方、RIPEでBanelliが説明した試験機は自社カーネルで動いていた。

256経路の投入と撤回が成功した。Bruno BanelliがRIPE 93で示した実験の確かな成果だ。運用側が知りたいもう一つの数字、完全な経路表をどこまでハードウェアに載せられるかは、まだ測られていない。

Novarqの共同創業者兼CEOであるBanelliは、BIRDをスイッチに直接載せる経路を紹介した。BIRDがLinuxの転送情報ベース(FIB)へ経路を登録し、カーネル通知がLAN969xドライバーへ届き、ドライバーがASICを設定する。Banelliの説明では、間にSAI、FPM、独立したベンダー製ルーティングエージェントはない。Linuxカーネルのswitchdevは、スイッチの転送処理をハードウェアへオフロードするためのドライバーモデルだ。

試験にはVLAN対応ブリッジ上の二つのルーティングVLANを使った。IPv4とIPv6のeBGPセッションが4本成立し、フィルターはテスト経路に限定。デフォルト経路と管理経路はBGPに入れなかった。Banelliは、対向からの経路広告・撤回がLinux FIBへ反映されるまで0.5秒未満だったと報告した。パケットキャプチャとカウンターではIPv4・IPv6の通過通信がASICを通り、この構成でCPU使用率は10%未満だった。

未試験項目は製品の守備範囲を決める。完全な経路表も全ポートも試していない。L3転送を確認したのはSFPポートで、銅線ポートは対象外。ECMPは有効にしたが、実際の分散は測らず、next-hopオブジェクトもオフロードしていない。BFD、ACL、ケーブル断も未試験だ。対向を管理操作で停止した際、相手側NICは光リンクを維持したため、スイッチは物理断を検知しなかった。経路は9秒のhold timerが切れるまで残った。分かったのはタイマーの動きであり、断線からの復旧ではない。

IPv6には60秒ごとの近隣探索用マルチキャスト項目の更新が必要だった。Banelliはドライバーの問題として報告したという。Linuxの経路表に経路があることと、ASICが継続してその経路を転送することは、別々に確認しなければならない。

カーネルの状態も版で示す必要がある。Novarqの公開リポジトリは「mainline support」と完全なカーネル統合を掲げる。RIPE 93でBanelliは、試験ビルドは自社カーネルのままで、L3パッチを上流へ取り込む作業中、完全なL3対応は2027年第2四半期が目標だと説明した。公開資料は「mainline対応」が対象にするカーネル版とL3機能を特定していない。版ごとの機能表があれば範囲は明確になる。

Banelliの実演は、BIRDからLinuxを経てASICへ至る経路を実際に動かした。次に必要なのは、カーネル、ドライバー、BIRDの版、FIB登録数とASICオフロード数、ポート種別、近隣項目の寿命、ECMP分散、復旧記録をまとめた再現可能な表だ。256経路の成功は実験結果であり、実運用の収容能力ではない。

出典