SDNでよく話題となるアイデアの一つに、コントロールプレーンとデータプレーンの分離がある。多くの目がコントロールプレーンに注がれる中、データプレーンの研究開発に取り組む中尾准教授に、自ら開発したプログラマブルスイッチ「FLARE」やそのうえで生み出される新たなプロトコルなどについて聞いた。

SDN(Software Difined Networking)のような新しいネットワークアーキテクチャーを目指す動きが活発だ。
確かにONF(Open Networking Foundation)やOpenDaylightといった業界団体などでSDNへの取り組みが盛んになっている。ただし、これらはコントロールプレーン(ネットワーク制御機能)をプログラマブルにするもの。重要なのはむしろ、パケットの転送を担うデータプレーンのほうだ。ここを変えない限り、既存のIP技術を超える新しいプロトコルやネットワーク技術を生み出すことができない。実際、米国ではIPを使わない、いわゆる「ノンIP」の研究開発プロジェクトがいくつも始まっている。IPだけの時代はいつか変わる。
ただ、データプレーンはこれまであまり注目されていなかった。パケットの転送はチップベンダーによる出来合いのASICを使うため、改変ができないからだ。そこで私が取り組んでいるのは、ASICの代わりに超並列CPU(メニーコアプロセッサ)を使って、パケットの処理をプログラマブルにしようというもの。それを具体化したのがプログラマブルスイッチの「FLARE」(フレア)だ。
FLAREの特徴は何か。
まず、パケット処理の自由度が極めて高い。OpenFlowにしてもIPの延長線上にある技術だから、OpenFlowスイッチはIPヘッダーだけを見てパケットを処理するしかない。
これに比べてFLAREはパケットのデータ部分を見て処理することができる。ノンIPの全く新しいプロトコルを扱うことも可能だ。
さらに、スライスと呼ぶ仮想領域を複数立ち上げ、各スライスで自由にプログラミングすることができる。例えばOpenFlowバージョン1.0と同1.3を1台のFLAREで同時に動かせる。このように新しいテクノロジーと古いテクノロジーを同時に入れておいて、ユーザーが瞬時に切り替えることが可能だ。しかもスライスはそれぞれが独立した環境(サンドボックス)だから、万が一、あるスライスで不具合が生じても他のスライスには何ら影響を及ぼさない。
FLAREの性能はどのくらいか。
これまで、10Gイーサネットを4ポート備えるタイプと、10Gイーサを2ポートと1Gイーサを8ポート備えるタイプを開発済み。加えて、10Gイーサを8ポート備えるタイプと、よりハイエンドの10Gイーサを32ポート備えるタイプを開発中だ。
このほか、学生が手軽に使える小型のタイプも開発を進めている。自宅に持って帰ってプログラミングしてもらうためのものだ。