メモ: ONOS P4Runtimeリポジトリを覗いてみる


これは何?

https://github.com/opennetworkinglab/onos/tree/master/protocols/p4runtime
- このあたりの構成をちょっと覗いていく感じのなにかです
- とりあえずP4Runtime越しにパケットインされた情報がどう上位に伝わっていくのか見てみた
- コンパイルや動作確認は実施していません

P4Runtimeって何? ONOSって何?

  • 割愛

リポジトリ構成

onos/protocols/p4runtime/
  + api/ ・・・Javaのinterfaceが記述されたコードを格納
  + ctl/ ・・・テストとP4Runtimeの外部連携APIのコードが格納
  + model/ ・・・P4Runtimeの内部動作コードが格納
  + proto/ ・・・本フォルダ内BUCK/POMのなかで、P4.orgのPIリポジトリの.protoを引いてきてコンパイルしている
  + BUCK ・・・Buck用ファイル
  + pom.xml ・・・Maven用ファイル

CTL(外部連携API)の中身

まとめ

  • p4lang/PIの.protoを引いてきてjavaに変換して使っている。
  • ODLの実装とも見比べたい。