【浅羽としやのICT徒然】第13回 オーバレイアーキテクチャについて考える | RBB TODAY

【浅羽としやのICT徒然】第13回 オーバレイアーキテクチャについて考える

エンタープライズ ソフトウェア・サービス

ホップバイホップとオーバーレイ
  • ホップバイホップとオーバーレイ
  • オーバーレイプロトコルのフレームフォーマット
■オーバレイとは

 前回は、OpenFlowの概要と標準化の現状について簡単にご紹介しました。OpenFlowでは、全てのネットワーク機器に、「フロー」毎にパケットの処理ルールを設定することで、従来のデスティネーションアドレスベースの配送方式とは異なる独自の方式でのパケット転送を実現することができます。このやり方はパケットが経由するスイッチの一つ一つを設定するので、ホップバイホップ(Hop-by-Hop)方式ということもあります。ホップバイホップ方式ではパケットの転送をきめ細かに制御することができる反面、全てのスイッチで一貫性を持ったルール設定を行う必要があるため、設定管理が複雑になり、全体を制御するコントローラソフトウェアも大きくなります。さらに、全てのスイッチをOpenFlow対応のものに置き換えなければならないので、運用から設備構成まで全てを刷新する必要があります。

 一方、全てを置き換える代わりに、OpenFlow対応スイッチの導入は、仮想ネットワークを利用するサーバや端末の周辺のみにするなど、必要最小限にとどめ、別途それらを相互に接続するためのトンネルリンクを設定する方法もあります。この方法では、トンネルリンク上でやり取りされるイーサネットフレームは、IPパケットに丸ごとカプセル化されて通常のIPパケットとして転送されるので、カプセル化とカプセル化解除を行うゲートウェイ間を繋ぐルータやスイッチ等は既存のものをそのまま活用することができます。この方式では、通信の両端を繋ぐ仮想ネットワークを既存IPネットワーク上にオーバレイさせるので、エッジオーバレイ方式とか、エンドポイント方式とも呼ばれています。

 エッジオーバレイ方式では、IPにカプセル化される区間では、通常のIPパケットとして転送されますので、ホップバイホップ方式のようなきめ細かな制御はできませんが、その部分には既存の機器をそのまま活用できるので、導入のハードルが低い方式といえます。さらに、OpenFlowスイッチを全く導入せずに、VLANで仮想化されたネットワーク同士をオーバレイで繋ぐというシンプルな構成からスタートすることも可能です。

■主なオーバレイプロトコル

 オーバレイ方式は、IP層よりも上位のレイヤに仮想的なリンク(トンネル)を設定します。つまり、広くインターネットで利用可能なプロトコルですので、IETF(Internet Engineering TaskForth)という、インターネットで用いられる各種標準化を行う組織で標準化が進められています。

 現在、VXLAN(Virtualized eXtensible LAN)NVGRE(Network Virtualization using Generic Routing Encapsulation)STT(A Stateless Transport Tunneling Protocol for Network Virtualization)という主に3つのオーバレイプロトコルが提案され、標準化に向けた議論が進行中です。

 VXLANとNVGREは、イーサネットフレームに仮想ネットワーク識別子等の制御情報を持つヘッダを付加して、IPにカプセル化している点で互いに類似したプロトコルです。それぞれ仮想ネットワークを識別する24ビットのIDを用いている点も似ています。イーサネットを仮想化するプロトコルであるVLANでは、仮想ネットワークを識別するために12ビットのIDを用いていましたが、これらのオーバレイプロトコルでは、扱える仮想ネットワークの数を大幅に拡張し、さらにVLANでは不可能だった、L3ネットワークをまたいだ仮想イーサネット接続を実現しています。異なる点は、VXLANはUDP(protocol番号:17)のアプリケーションとしてオーバレイレイヤを定義しているのに対して、NVGREはGRE(protocol 番号:47)というトンネリング用プロトコルを拡張している点です。標準化の主体は、VXLANはCiscoやVMWareなどで、NVGREはMicrosoftなどです。しかし、実現可能なことは基本的にはあまり変わりません。目的が同じで仕組みも良く似ているので、一つにするべきだという議論もあります。

 一方、STTは、VMWareに買収されたNicira社が推進していたオーバレイプロトコルで、オーバレイで大規模なデータ転送を行う際のパフォーマンスの最適化を狙っており、主にデータセンタ内での利用を想定したプロトコルです。大きなTCPセグメントを細分化して転送する処理をNIC(Network Interface Card)にオフロードするTSO(TCP Segmentation Offload)という機能を活用するために、STTヘッダに加えて、擬似TCPヘッダを付加してTSOをうまく活用しようとしているのがユニークなところです。

■オーバレイアーキテクチャの標準化について

 個々のオーバレイプロトコルの提案や標準化が先行して進んでいますが、それに追従する形で、オーバレイによるネットワーク仮想化のアーキテクチャの標準化も並行して進められています。こちらもIETFの配下にNetwork Virtualization Overlays(NVO3)というWGが設立され、全体フレームワークの定義や、データプレーンやコントロールプレーンへの要求事項、異なるテナント間でトラフィックやアドレススペースを分離するなどのマルチテナンシーに関する要求事項などを洗い出し、標準化しようとしています。

■オーバーレイの利点と欠点

 このように、オーバレイ方式による仮想ネットワーク構築もさまざまな新技術が登場し、アーキテクチャも含めて標準化が進行しています。VXLANやNVGREを実装したスイッチ製品も市場に出始めています。上述のようにオーバレイ方式は、ホップバイホップに比べると導入のハードルが低いという利点があります。反面、オーバレイでは物理ネットワークの管理とその上を通過する仮想ネットワークの管理が分離されてしまいますので、例えば、スイッチや回線に障害が発生した時にどの仮想ネットワークに影響が出るかを把握するのが難しいなどの課題もあります。

 SDNを実際に導入する際には、OpenFlowによるホップバイホップ制御と、VXLANなどによるオーバレイ制御とを必要に応じて使い分けながら、組み合わせて用いる必要があると思います。
《浅羽としや》

関連ニュース

特集

page top