【技術動向】OpenFlowに対する4つの誤解を検証する:OpenFlow/SDN、誤解の構造【第2回】
さまざまに誤解されているOpenFlow。今回は主な誤解の中身を紹介するとともに、この技術のより適切な位置付けを考える。
本連載の第1回「【技術動向】OpenFlowはなぜ誤解されるのか」では、誤解が生じる背景について説明した。第2回はこれを受けて、OpenFlowをめぐる誤解について具体的に解説し、等身大の位置付けを考える。
「OpenFlowには『ホップ・バイ・ホップ型』と『エッジ・オーバーレイ型』がある」?
誤解というわけではないが、まず指摘しておきたい点だ。OpenFlowの説明を、この2つに分類することから始める人は、親切心でやっているのだと思う。しかし、実際にはこのことが混乱を招く恐れがある。
エッジ・オーバーレイは「ネットワーク仮想化」(これも曖昧な言葉だ)とも呼ばれ、「分散トンネリング」と表現することもできる。どんな表現をするにしても、分散トンネリングの制御にOpenFlowを使わなくてはならない理由はない。VMware vSphere/vCloud Directorのように、クラウド運用基盤から直接制御してもいい。OpenFlowに何ができるかをこれから知ろうとする人に対し、OpenFlowを副次的に利用している例を最初に説明しても、混乱するだけだと考える。OpenFlowのメリットやデメリットを語るなら、話をホップ・バイ・ホップ型のみに集中した方がいい。
OpenFlowについての記事
- [PR]ブロケードが語る、OpenFlowの使いどころとは
- 【技術動向】OpenFlowはなぜ誤解されるのか
- 【技術解説】OpenFlow/SDNの自在な経路制御を実現する技術
- OpenFlowによる「サービスとしてのネットワーク」の可能性
- 次世代データセンターネットワークを実現、OpenFlowとは何か?
- 【事例】金沢大学附属病院が前例のないOpenFlowを選んだ理由
例えば、米Nicira(現VMware)を「OpenFlowベンダー」と呼ぶのは適切ではない。同社のCTOであり、OpenFlowの開発者でもあるマーティン・カサド氏に筆者がインタビューした際(「OpenFlowの父」が語る、OpenFlowとSDNの真実(@IT))、同氏はNiciraについて、OpenFlowではなく、ネットワーク仮想化の企業だと強調していた。「(同社が注力している)ネットワーク仮想化はOpenFlowとは全く異なるものだ」とまで表現していた。すなわち、Niciraの分散トンネリング製品「NVP」はトンネル制御にOpenFlowを使ってはいるものの、そのことは技術的にはさして重要ではなく、ネットワーク仮想化を実現することが同社の目的だという意味だ。実際、NiciraはOpenFlowベンダーと呼ばれることを嫌ってきた。
それでは具体的に、OpenFlowに関する代表的な誤解について説明する。
「OpenFlowはネットワークをプログラマブルにする」?
これは、OpenFlowに対する最大の誤解だ。OpenFlow関連ベンダーは、確かに上記のような表現をしてきた。魅力的な響きを持つ表現でもある。だが、これを真に受けて、ユーザー組織の一般的なプログラマーがOpenFlowプロトコルでプログラミングし、ネットワークを自由自在にあやつるのだと思ってしまっている人が非常に多い。
上記のインタビューに戻ると、カサド氏は次のように言っていた。「混乱の原因の1つは、顧客がOpenFlowプロトコルを使って何ができるのかと考えてしまうことだ。これに対する答えは『恐らく何もありません』だ。非常に優れたプログラマーが労力をかけてやることであり、OpenFlowが実現するのは、顧客がわれわれのようなベンダーを使って、より良いネットワークを手に入れられるようにすることだ」
OpenFlowを、アセンブリ言語に例える人がいるくらい、このプロトコルは抽象度が低い。OpenFlowプロトコルを使ってネットワークをプログラミングするということは、ネットワーク製品を開発するのに似た作業だ。一般的なユーザー組織の人々がこれを使ってプログラミングすることはほとんどあり得ない。
そして、OpenFlowコントローラーの役割はここにある。OpenFlowコントローラーは、OpenFlowでネットワーク機器を制御する一方、サーバやアプリケーションに対しては抽象化して見せる作業を行う。何を目的として、どのレベルまでどのように抽象化するかで、OpenFlowコントローラー間の違いが生まれる。
ユーザー組織の人は、OpenFlowコントローラーが提供する「Northbound API」、つまり外部アプリケーションへのインタフェースを利用するか、Northbound APIあるいは非公開APIを使って書かれたアプリケーションを利用することになる。
さらにいえば、もし「ネットワークが適度にプログラマブル」になったとして、何をやりたいかを考えることなく、言葉の響きだけで喜んでいるのだとしたら、それは自己満足でしかない。
「OpenFlowはオープン、従来のネットワーク技術はクローズド」?
Copyright © ITmedia, Inc. All Rights Reserved.