特別企画

ハードウェアオフロード技術を活用したWindows Server 2012 R2の新しい仮想化ソリューション【後編】

仮想化基盤に効果的なオーバーレイ型ネットワーク仮想化とNICによるオフロード技術

ハードウェアオフロードが不可欠なオーバーレイネットワーク処理

 オーバーレイネットワーク技術は、Microsoftが中心となって規格化が行われたNVGRE(Network Virtualization using Generic Routing Encapsulation)、VMware、Cisco、Citrixなどが規格化に携わるVXLAN(Virtual eXtensible Local Area Network)の2つが特に注目されている。いずれの技術も、レイヤ2のネットワークフレームをレイヤ3ヘッダでカプセル化することにより、論理的なネットワークの重畳を実現している。

 オーバーレイネットワークは、既存の物理ネットワーク資産を最大限に流用できるのが大きな強みである。また、特にNVGREは、Windows Server 2012で標準的にサポートされているため、Hyper-Vベースの仮想化基盤では特別なソフトウェアを別途用意しなくてもすぐに使い始められる。すなわち、ネットワーク仮想化を導入する際のハードルが低いことを意味している。

 高添氏は、NVGREの設計思想を「NVGREは、もともとMicrosoft Azureのために開発されたネットワーク仮想化のための基礎技術です。そして、ネットワーク自体を変えようという視点(筆者注:ネットワークベンダーの視点)ではなく、新しいクラウドサービスを実現しようという視点(筆者注:Microsoft Azureを提供するMicrosoft自身の視点)で設計されています。だからこそ、特別なネットワーク機器がなくても動作する仕様になっています。また、仮想マシンを運用するための技術という意識のもとで設計されていますので、ハイパーバイザ(Hyper-V)に実装することも当然の成り行きでした。NVGREは新しい技術ですので、本格的な普及はもう少し先になると見込んでいます。現時点では、Windows Serverを利用されているお客さまに対して、オーバーレイネットワークのメリットやその基礎技術であるNVGREの魅力をお伝えしているところです」と説明する。

 Hyper-Vは、ハードウェアへの依存を極力減らす代わりに、ソフトウェア側の最適化によってパフォーマンスの低下を最小限に抑える設計がとられている。とはいえ、NVGREの処理を物理サーバーのホストCPUで実行しようとするとかなり負担が大きい。NVGREの検証を手がけた松本協立病院の白川氏も「Windows Serverベースの仮想化基盤でNVGREの実機検証を行いましたが、完全なソフトウェアベースで実装するとホストCPUの負荷率が大きく上昇しました。やはり、NVGREを利用する際には、ハードウェアでオフロードする仕組みが不可欠だと感じました」と述べている。

 最近では、このような課題に応えるソリューションも登場しており、例えばMellanoxの新しいネットワークアダプタ(ConnectX-3 Pro)は、NVGREのパケット処理をカード上のハードウェアで実行するオフロード機能を搭載している。同社の検証結果によれば、10Gbit Ethernetで接続された環境において、ハードウェアオフロード機能を有効にすると、スループットが65%向上し、ホストCPUのオーバーヘッド(1バイトあたりのCPUサイクル数)も80%削減されることが確認されている。

 友永氏は、「Mellanoxは、自社のネットワークアダプタに搭載されているコントローラそのものの開発を手がけています。当社のコントローラは、プログラミングによってパケット処理の機能を柔軟に変えられる特徴を備えています。このようなコア技術があるからこそ、InfiniBandとEthernetの同時サポートを可能にしています。そして、最新のConnectX-3 Proでは、さらにNVGREのヘッドを付け外しする処理などもハードウェアで行えるようになりました。ここでは、カプセル化された内部のパケット(インナーパケット)のチェックサム処理など、他社のネットワークコントローラでは不可能だったオフロード処理にも対応します。プログラミング次第で柔軟にコントローラの機能を進化させられますので、将来的に登場するさまざまなネットワーク技術に対応していけるでしょう。現時点ではオーバーレイネットワークのハードウェアオフロードを実現していますが、将来的にはOpenFlowなどへの対応も視野に入ってくるのではないでしょうか」と説明する。

NVGREのハードウェアオフロードに対応したMellanoxのConnectX-3 Proを利用することで、ソフトウェアベースの環境と比べるとスループットは65%向上し、ホストCPUのオーバーヘッド(1バイトあたりのCPUサイクル数)も80%削減される。この検証環境では10Gbit Ethernetが採用されているが、ハードウェアオフロードを有効にすることでライン速度に近い9Gbpsのスループットが得られているのも特筆すべき点だ

(伊勢 雅英)