インタビュー:OpenFlowによってネットワーク業界に何が起きるか? (後編)
プログラミングによってネットワークの構成や機能をコントロールする「Software-Defined Network」がネットワーク業界の大きなテーマとなり、それを実現する技術であるOpenFlowに注目が集まっています。
Software-Defined NetworkやOpenFlowによって、ネットワーク業界はどのように変わっていくのでしょうか。2011年10月にスタンフォード大学で開催されたOpen Networking Summit 2011で、同大学教授でNicira Networks Co-FounderのNick McKeown(ニック・マキューン)氏の講演「How SDN will Shape Networking」(SDNはネットワーキングをどう変えていくか)を記事で紹介しましたが、そのマキューン氏にインタビューする機会を得ました。
インタビューには同社Co-Founder&CTOのMartin Casado(マーチン・カサード)氏も同席、一部のコメントを補足していただきました。
(本記事は「インタビュー:OpenFlowによってネットワーク業界に何が起きるか? (前編)」の続きです)
Software-Defined Network用のプログラミング言語は登場するか?
──── Software-Defined Networkでは、プログラミングによってネットワークをコントロールすることができるようになります。このときのプログラミング言語とはどのようなものになるのでしょうか? 新しいネットワーク用のプログラミング言語は登場しますか?
マキューン氏 たしかにプログラミングのための抽象化レイヤは必要でしょう。ただ、プログラミング言語はいろんなアプローチがあっていいと思います。
例えば一般のプログラミング言語を考えてみても、JavaやPythonなどの高レベルのプログラミング言語もあれば、システムレベルのプログレミング言語としてC/C++などがあり、状況によってさまざまなアプローチがあります。
1つはっきり言えるとすれば、OpenFlowがハードウェアとのインターフェイスになるとすれば、これ以外に2つの抽象化レイヤが考えられます。
1つは、ネットワークのステートをグローバルビューとして見ることができるレイヤ。これをコントロールプレーンと呼んでいます。コントロールプレーンによって、低次元の詳細情報を隠蔽することができます。
もう1つは、ネットワークを論理ビューと物理ビューに分けて見ることができるレイヤです。
──── NiciraはSoftware-Defined Networkのプログラミングに対してどのようなアプローチをしているのでしょうか?
カサード氏 必ずしも新しいプログラミングが必要かというと、そうではなく既存の言語で十分だと思います。私たちの製品についてはまだ詳細を明らかにしていませんが、プログラミングによってサービスプロバイダが新しいサービスをネットワークに追加できるようになっています。
そのときの課題は、ネットワークのトラフィックに応じてサービスがスケールアウトするかどうか、といったことです。私たちはそのための汎用のプラットフォームを提供します。
──── 一般にOSはAPIのセットをアプリケーションに対して提供しています。OpenFlowの上にネットワークOS的なレイヤができあがるとすると、そのネットワークOSではどのようなAPIを提供することになるのでしょうか? ネットワークOSの標準的なAPIセットとはどのようなものになりますか?
マキューン氏 いい質問ですね。いろんな考え方があると思いますが、いずれにせよ、まだそうしたことを決めるのはまだ早いと思います。標準を定義する前には、十分な実装の経験がなくてはなりませんが、まだ私たちはそうしたものに対して十分な経験を積んでいません。
──── 先ほど、あらゆるネットワークでSoftware-Defined Networkが利用されるだろうというお話がありました。とすると、すべてのネットワーク機器がOpenFlowに対応すると考えていらっしゃいますか?
マキューン氏 すべてのネットワーク機器がOpenFlowに対応するようになるかどうか、というのは、いまはまだ答えられない質問です。ただ、よく使われるネットワーク機器では一般的な機能になると思っています。
また、OpenFlowが唯一の選択肢になるかどうかはこれから市場が決めることで、それにはまだ少し時間がかかるでしょう。
しかしソフトウェアでネットワークを定義するというのがイノベーションであり、OpenFlowはそのカギを握っていると思います。
カサード氏 少し付け加えると、ネットワークの中ではOpenFlowを使っても意味がないと思うところがあります。その1つがファブリックです。タイトなファブリックネットワークを作るには、スケーリングやハードウェアテーブルの制限などから考えて、IGPやOSPFを使った方がいいでしょう。
OpenFlowはエッジでセキュリティポリシーやネットワーク仮想化などのステータスをコントロールする用途に向いています。
データセンター内では、分散プロトコルでファブリックを構成し、OpenFlowはエッジでネットワーク仮想化のために使われる、という形態になるでしょう。
──── Software-Defined Networkによってネットワークの使われ方はどう変わっていくのでしょう?
マキューン氏 ソフトウェアでネットワークを定義できるようになると、たぶん想像もつかないようなネットワークの使い方が登場することになるでしょう。
というのも、たぶんこれは「20年後にアプリケーションがどうなるでしょう?」という質問と同じになるからです。想像もつかないようなエキサイティングな形で使われるようになり、ネットワーク業界もいまとはずいぶん違った形になっていると思います。
Software-Defined Networkはそうした想像をかき立てるチャンスを提供しているのです。
あわせて読みたい
グーグル、Paxosを採用したApp Engineのデータストア「High Replication Datastore」が1年間ゼロダウンタイムだったと報告
≪前の記事
インタビュー:OpenFlowによってネットワーク業界に何が起きるか? (前編)