
次世代ネットワーク標準をNECが世界で初めて製品化
クラウド時代に求められるネットワーク
サーバのようにネットワークも仮想化できる
2011/8/31
OpenFlowを実装したNECのネットワーク製品「UNIVERGE PFシリーズ」(プログラマブルフロー)が大きな注目を集めている。サーバやストレージは仮想化によって柔軟に追加や変更ができるようになってきたのに、ネットワークだけは運用中に物理的な構成を変えることが難しく、柔軟なITインフラ実現の足かせになっている。この問題を解消できる先駆的な製品だからだ。ITmedia オルタナティブ・ブログのブロガーである小俣光之氏と中寛之氏、そして@IT担当編集長の三木泉がNECに、このスイッチの可能性について聞いた。
OpenFlowはどういう課題を解決するか
従来のネットワークは、自律分散型、部分最適で通信を行っている。A地点からB地点への通信パケットは、途中にある各ネットワーク機器で通信経路の認知や判断が行われ、バケツリレー方式で送られていく。いわば、目的地に向かうために道路標識を見ながら車を運転するようなものだ。これに対してNECのプログラマブルフローでは、カーナビで目的地までの最適ルートをあらかじめ調べておき、これに従って運転するようなイメージで、ネットワークを集中制御のポリシーに基づき運用できる。
プログラマブルフローでは、こうしたネットワークサービスを実現するための基盤技術として、標準化の進む、注目のネットワーク制御技術「OpenFlow」を採用している。これを実装し製品化されたのは、現在のところNECのプログラマブルフローしかない。
OpenFlowとは、コントローラーとスイッチ間の通信プロトコルである。スタンフォード大学のNick McKeown教授が提唱し、OpenFlowスイッチコンソーシアムでプロトコル標準スペックの策定が行われており、2009年12月にVer.1.0が仕様化された。
2011年3月には、標準化団体として新たにオープンネットワーキングファウンデーション(ONF)が設立され、プロバイダや機器ベンタ、仮想化ソフトウェアベンダなどが参画している。
OpenFlowでは、ネットワークの制御役ともいうべきコントローラーが、ネットワークの構成情報および運用情報を一手に管理する。この情報を、コントローラーがその配下のスイッチすべてに対して自動的に転送する仕組みだ。例えば新しいスイッチがネットワークに参加すると、自らの存在をコントローラーに通知する。コントローラーはこの新しいスイッチを含んだ構成情報を更新することで、ネットワークの運用を止めることなく構成を変更できるのだ。また、特定の種類のデータについて転送経路を指定したい場合、これもコントローラーに対して設定すれば、コントローラーからネットワーク上の関係するすべてのスイッチに経路情報が適用される。
![]() |
NEC UNIVERGEサポートセンター 主任 宮崎倫明氏 |
OpenFlowの大きな特徴は、通信トラフィックをフローという概念で扱う点だ。従来のネットワークでは、レイヤ2スイッチングの場合MACアドレス、レイヤ3スイッチング/ルーティングの場合IPアドレス、レイヤ4の通信制御の場合ポート番号といったように、各機器がそれぞれのレイヤの情報を見て個別にトラフィックを制御する。これに対して、レイヤ1(物理ポート等)、レイヤ2(MAC)、レイヤ3(IP)、レイヤ4(ポート)各レイヤの任意のアドレス、VLAN情報などの識別子の組み合わせでフローを定義し、このフローによって通信トラフィックを識別・制御するのがフロースイッチングである。
フロースイッチングによる経路制御で、どのようなことが可能になるのか、3つほど例を挙げよう。まず1つは、アプリケーションによって異なる経路を通すというケースだ。「例えば、社内ネットワークに、開発部門のCADデータなどと一般の事務系データを分けて通したいというニーズは実際によく聞く」(NEC UNIVERGEサポートセンター 宮崎倫明氏)という。フロースイッチングでは、通信の始点と終点が同じでも、フローによってネットワーク内の別経路を通すことが容易に実現できる。
![]() |
図1 フローの種類に基づいて転送経路を変更できる(クリックで拡大します) |
2つめはフローの片寄せだ。それまで、あるスイッチを通っていた通信を、このスイッチを通らない別の経路に簡単に振り替えることができる。これにより、障害時の迂回やスイッチのメンテナンスが容易になる。
![]() |
図2 メンテナンスなどに便利なトラフィックの片寄せ(クリックで拡大します) |
3つめは、立ち寄りポイントの活用である。ファイアウォールやロードバランサといったネットワーク機器をスイッチに接続して、特定のフローだけは、これらを経由させるといったことが設定できる。これにより、ネットワーク機器のプール化ができ、機器の有効利用が可能になる。
![]() |
図3 特定のフローにだけ、特定のネットワークサービスを適用(クリックで拡大します) |
NECのプログラマブルフローにできること
NECは、2007年当初からスタンフォード大学と共同でOpenFlowの研究開発を行ってきている。そして今年4月に、Ver1.0の仕様を元にした商用製品をリリースした。OpenFlowを実装した商用製品は世界初である。製品は「UNIVERGE PFシリーズ」として、プログラマブルフロー・コントローラとプログラマブルフロー・スイッチを提供している。
製品化に当たって、NECでは「プロトコルであるOpenFlowに、シンプル化・ネットワーク仮想化・ネットワーク可視化という3つのキーワードを付加した」(宮崎氏)。
おもに想定しているのはデータセンターでの利用だ。まず、コントローラーから複数のスイッチをシンプルに集中管理するための工夫を盛り込んだ。次に「ネットワーク仮想化」というキーワードでは、物理ネットワークと論理ネットワークの2つの管理画面を用意し、論理ネットワーク上の設定と物理ネットワーク構成を容易に連携できるようにした。さらに、フロー単位のトラフィック量などを可視化し、ネットワーク仮想化によるパフォーマンス管理などの複雑さを軽減した。NECの狙うところは、物理設計と論理設計を切り離し、いかに簡単にネットワークを構築するかであり、そのための機能が加わっている。
プログラマブルフローによるネットワークでは、例えばスイッチをメッシュ型に結線したとしても、スパニングツリープロトコル(STP)を使用する必要はなく、ループ回避のためのポートブロックなども考慮しなくてよい。スイッチ群はただの帯域リソースプールとなるからだ。また、スイッチを結線しただけでは通信はまったく流れない。論理ネットワークとして経路を設計することではじめて、これらのスイッチ群にトラフィックが流れるようになる。
![]() |
図4 プログラマブルフローは管理ツールが充実。右が物理ネットワークの構成画面で、左が論理ネットワークの構成画面(クリックで拡大します) |
上の画面はコントローラーのGUIで、右側が物理ネットワーク、左側が論理ネットワークを表示している。よく見ると論理側のウインドウは重なっていることが分かると思うが、論理ネットワークは複数設定することができる。設定した経路を「適用」すると、コントローラーがそれを解釈して各スイッチにそのルールを自動的に設定していく。サーバやスイッチなど、ハードウェアの構成が変化しても、設定はコントローラー上で行うため、VLANなどの設定を個別のスイッチにしていく必要はない。
従来のコア/ディストリビューション/アクセスという3階層型ネットワークでは、サーバがスケールアウトした場合に、ネットワークはそれに迅速についていきにくい。場合によってはコアスイッチの設定にまで手を加えなければならなくなることもあり、そのためには各部門と調整が必要になるなど、思いがけない手間がかかってしまうものだ。その点、プログラマブルフローでは、帯域が足りなくなりそうならばスイッチを追加するだけでいい。あとはコントローラーが自動的に最適なルートを定義してくれる。また、ブロッキングポートが不要なため、スイッチの帯域をフルに活用できるという利点もある。
スイッチのハードウェアは、ギガビットイーサネット×48ポートとアップリンク用10ギガビットイーサネット×4ポートを備えたボックス型で、まずはスモールスタートしてスケールアウトできるタイプのものをリリースしたという。
プログラマブルフローを実際に使うとしたら
ここからは、取材時にブロガー諸氏から出た質問と答えの一部を通じ、プログラマブルフローに対するイメージを深めていただこう。
三木 新しいスイッチが追加された時の動作はどのようなものか。
NEC スイッチは自動検出され、物理画面にアイコンが現れる。結線されれば線が表示される。同時に、論理側の画面でその新しいスイッチを通るフローを描けるようになる。フローは何も設定していなければ最短距離を流れることになっているので、そのスイッチを通るのが最短であれば自動的にフローが流れ始めるといったこともできる。
![]() |
オルタナティブブログ ブロガー 小俣 光之氏 |
小俣 ある種類のトラフィックにはこういう処理を加えたあとにこういう処理をしたい、といった細かいトラフィック処理ニーズを持つユーザーは確実に存在する。
NEC プログラマブルフローでは、特定のフローについて、プロトコル処理の実行装置あるいは実行マシンを必ず通るようにすることができるという点で、そうしたニーズへの対応を支援できると思う。
中 既存システムをリプレイスする場合、どの程度のものを集約できるかという指標はあるか。
NEC まずは、サーバ台数にして数百台という環境なら問題ないソリューションとしてリリースした。キャパシティについては今後拡大する予定である。
![]() |
オルタナティブブログ ブロガー 中 寛之氏 |
中 ある物理スイッチにどのような論理ネットワークが乗っているかを逆引きできるか。例えばスイッチをメンテナンスしたいという場合、どこに影響があるか調べる必要がある。
NEC そういうコマンドは今のところないが、メンテナンスのためにはそのスイッチを迂回するというコマンドを使えばいい。そのスイッチを使っているフローすべてが、迂回した経路での通信に振り替えられる。中継スイッチであれば迂回コマンドだけですべて自動で経路変更されるが、サーバに接続しているスイッチの場合はサーバに影響してしまうので、まずライブマイグレーションで別の物理サーバに待避させてから迂回コマンドを使うことなる。メンテナンスなどで意図して切り替えた場合も障害などで自動的に切り替わる場合も、パケットロスのないレベルで瞬時に切り替わる。
物理設計と論理設計を切り離して簡単にネットワーク構築するというコンセプトなので、物理構成は帯域や冗長経路だけを考えて帯域が逼迫して通信があふれそうになったら機器を追加し、論理構成はフレキシブルに設定できるというのが特長となる。例えば、このサーバは実はこちらの経路に入れたかったということであれば、もともとケーブルはすでに繋がっているので、物理構成を触ることなく論理マップを書き換えるだけでそれが物理構成に適用される。
中 異なるロケーションのデータセンター間で連携できるか。
NEC 今年のINTEROP TOKYOでアワードを受賞した理由の1つは、データセンター間連携のデモンストレーションを実証実験として実施したことだ。INTEROPでは仮想東京データセンターとパブリッククラウドをイメージした仮想大阪データセンターを、広域イーサネットに見立てたShowNetでNECのブースと接続し、将来のユースケースとしてご覧いただいた。
中 導入の際、運用の習熟にはどのくらい時間がかかるか。
NEC アーキテクチャとしては新しいが、中身の技術としてはSNMPやpingが使えるなど、レガシーなものを使っている。ゼロから勉強していただく必要はないので、1週間程度でできると思う。
クラウド時代になり、サーバの変化にネットワークを追随させることが難しくなってきている。サーバやストレージが柔軟になったとしても、ネットワークが硬直化していたのではクラウドのメリットは半減だ。ネットワーク運用をより簡単にし、自動化を進めることができる技術として、プログラマブルフローに期待したい。
|
|
関連リンク
関連記事
●特集INDEX● |
|
![]() |
【第1回】 クラウド基盤を支えるハードウェア設計へのこだわり |
![]() |
【第2回】 NECがWebSAMに込めたクラウド運用管理へのこだわりとは? |
![]() |
【第3回】 クラウド時代に求められるネットワーク サーバのようにネットワークも仮想化できる |