PR

 2011年5月、OpenFlowというネットワーク技術を実装した、世界初の商用製品が出荷された。NECが開発した専用スイッチと制御装置だ。

 OpenFlowは2008年にスタンフォード大学などが設立した「OpenFlowコンソーシアム」が提唱した技術である。現行のレイヤー2/レイヤー3スイッチと違い、経路制御などの計算処理をスイッチから分離。それらを制御装置のソフトウエアで実行する。スイッチは、制御装置から指示された通りにフレームを転送するだけだ。スイッチには経路制御の設定をする必要がないため、運用コストが削減できる。特に、トラフィックの種類によって動的に経路を変えるといった、従来の機器では難しかった運用をしたいときに有効だ。

 これまでのOpenFlowに関する活動は、実証実験など学術的なものが中心だった。そのなかで製品化が現実的となり、2011年3月21日に設立された標準化団体「Open Networking Foundation(ONF)」で本格的な規格策定を始めた。ONFには日本からNECやNTTが参加しているほか、欧米のルーターやスイッチベンダー、通信事業者が名を連ね、米グーグル、米マイクロソフトなどクラウド関連事業者も参加している。

コントローラーが設定を一元管理

 では、実際にOpenFlowはどのように動作するのだろうか。

 現状のネットワークは、レイヤー2ではイーサネット、レイヤー3ではIPなど、複数の異なるレイヤーのプロトコルを組み合わせて構成する。管理者は一つひとつの機器に対して、レイヤーごとにVLANやルーティング、冗長化プロトコルなどの設定を保存する。新しい機器を既存ネットワークに接続すると、近接の機器と情報をやりとりして通信が可能な状態になる(図1の上)。

図1●OpenFlowコントローラー/スイッチの基本的な動き
図1●OpenFlowコントローラー/スイッチの基本的な動き
OpenFlowコントローラーで設定を一元管理するため、従来のネットワークと比べて運用が簡単になる。また、フレームの流れはレイヤー1~4までの任意の情報を指定して決めることができる。
[画像のクリックで拡大表示]

 これがOpenFlowでは、制御装置であるOpenFlowコントローラーに「フローテーブル」という情報を設定しておくだけでよい。フローテーブルには、「どの種類のフレーム」を「どのように処理するか」を定義する。フレームの種類として指定できるのは、レイヤー1~4までの任意の情報だ(同下)。処理方法としては、ユニキャスト、マルチキャストのほか、廃棄、IPアドレスの変更、VLAN IDの変更などを指定できる。OpenFlowスイッチは、今まで受け取ったことがないタイプのフレームを受信した際に、OpenFlowコントローラーに問い合わせてフローテーブルの情報を配信してもらう。

 OpenFlowコントローラー/スイッチを使うと、これまでレイヤーごとに設定していた冗長化プロトコルも不要になる。従来スパニング・ツリー・プロトコルなどを使った場合は、冗長化のため普段は使わないリンクがネットワーク上に残ってしまっていた。OpenFlowコントローラー/スイッチで構成したネットワークでは、全リンクをアクティブな状態で使える(図2)。

図2●OpenFlowネットワークの活用例
図2●OpenFlowネットワークの活用例
NECのOpenFlow対応製品を使って、データセンターネットワークを構築した場合の例。同社によるとこれまでのネットワークではユーザーごとに物理的にネットワークを分ける「サイロ型」と呼ばれる形を構成し、そこにレイヤー別の冗長化プロトコルを導入するケースが多かったという。OpenFlow対応製品では冗長化プロトコルを設定しなくても、OpenFlowコントローラーが最適な経路を一元管理して指示する。ファイアウォールやサーバーは、1カ所にまとめて設置できる。
[画像のクリックで拡大表示]

データセンターでの活用を見込む

 こうした「フローテーブルを配信して一元管理する」というOpenFlowの基本機能に加え、NECのコントローラー「UNIVERGE PF6800」(価格は1000万円~)とスイッチ「UNIVERGE PF5240」(250万円~)には、同社が開発した設定を容易にするための管理ツールを組み込んでいる。想定するのは、データセンターでの利用だ。

 「仮想化技術の発展で、データセンター内のサーバーやストレージの拡張・移行は容易になってきた。一方、ネットワークでは設定やリソースの割り当てを動的に変更するのは難しい。OpenFlowでそれが容易になると考えている」(NEC ネットワークプラットフォーム開発本部長の渡辺 裕之氏)

 例えばファイアウォールでいえば、「現在のデータセンターではユーザーのネットワークごとに設置することが多い」(渡辺氏)。OpenFlowコントローラー/スイッチを導入すれば、複数のユーザーでファイアウォールを効率的に共有できるという。フローテーブルに「A社のトラフィックはファイアウォールを通す」「B社のトラフィックは通さない」などと設定しておけばいい。利用ユーザー数に応じた機器の追加・変更も容易だ。

 NECは将来的に、サーバーで稼働するソフトウエアとしてOpenFlowコントローラーを提供することを検討している。また、NTTデータはオープンソースの管理ソフトウエア「Hinemos」をOpenFlowに対応させるべく開発を始めた。こうしたコントローラーのソフトウエア実装、管理ツールやインテグレーターによるOpenFlow向けソリューションがどのくらい充実するかが、今後のOpenFlow普及を決める鍵となりそうだ。