Barefoot Tofino™ ASIC 向けプログラムが公開可能に!

(本文中では Barefoot Networks an Intel Company を Barefoot と記載しています)

これまで Open Source な P4 プログラムといえば CPU で動作するリファレンス実装である Behavior Model v2 (BMv2) 向けのものが多く、Barefoot TofinoTM ASIC 向けのものは公開されていませんでした。これはP4(データプレーン)やそれと連動するコントロールプレーンのプログラムには、パイプラインやメタデータといったASIC内部構造と関連したNDAを必要とする情報が含まれていたためです。

しかし、2020年5月22日(米国時間)【P4-Announce】メーリングリストに「P4プログラムの公開許可をインテルが与えた」というアナウンスがありました。また、その詳細や同時に発表された “Barefoot FASTERTM Program” との関連について質問したところ早速回答がありましたので、その内容をご紹介します。

詳細は以下リンク先のメール本文を参照頂くとして、

抜粋すると以下のようなメッセージとなります。

  • “誰でも”(Tofino ASIC向けに書かれた)P4 Source Code、及び Control Plane Source Code を公開可能
    • 例えばGitHubのレポジトリで公開したり、論文などに記載する事も許可されます。
    • 公開するためにFASTERTMプログラムに参加する必要はありません。
  • 公開可能なのは貴方が書いた Source Code であり、Barefootから提供されたSDKやツール、コンパイル後の生成物などは引き続き「公開禁止」となります。(補足:Barefootから許可を得れば公開可能となる可能性もあります)

また、返信メールの最後には以下のような嬉しいコメントもありました。

Q: What are Intel’s longer-term plans and vision for being more open about Tofino?
A: Intel intends to open Tofino in the long term. As it is the case with general purpose CPUs, we believe that people should be able to learn about the architecture and interfaces, teach about them and write the code openly. This announcement is just the first step. Stay tuned!

要約すると「長期的にはTofinoTM ASICを “general purpose CPU” のようにオープンにする計画・ビジョンがある」ということです。現在CPUに関してはアーキテクチャや詳細仕様を含む開発者向けの文書 “Intel® 64 and IA-32 Architectures Software Developer Manuals” が公開されていますが、同様のものが将来TofinoTMでも公開される可能性が期待できます。

TofinoTMプロセッサの詳細やコンパイラなどが公開され、TbpsクラスのASICで動作するネットワーク・アプリケーションをサーバーのアプリ開発のように自由に開発できるようになる未来が楽しみですね!

Barefoot FASTERプログラム

アナウンスに記載されていた “Barefoot FASTERTM プログラム” ですが、Source Code 公開に参加は不要ということでした。では、これは何で、どうすれば参加できて、どんなメリットがあるのでしょうか?

簡単に言うと「TofinoTMを利用し研究開発を進める人達のコミュニティ」となり、”Software License and Confidentiality Agreement (SLACA)” 契約をBarefootと締結したメンバー間で自由に意見交換、質問回答、相談が可能となるグループのようです。

メンバーとなるにはSLACA契約のほかにトレーニングの受講や実機を持っている事などの条件があるようですので、詳細は Barefoot FASTER ページに記載の詳細説明を確認お願いします。

TofinoTMといえば3月に Silicon Photonics を用いた新しい Tofino2TM の実機が展示されたように、ハードウェアの進化も続いています。TofinoTMで動作するP4プログラムのオープンソース開発が可能となった今、データプレーンプログラマビリティを活用しどんな新しいアイディアが産まれるのか、今後が楽しみですね!

コメントを残す