「ユーザーが必要とする処理能力に見合うCPUリソースをオンデマンドで提供する」,「コストを下げられるよう,未使用のCPUリソースは解放する」,「使用中のサーバー・マシンに障害が発生しても,即座にハードウエアを切り替えてサービスを継続させる」──。

 クラウド型サービスには,こうした機能が期待される。ユーザーが最も気にしているのは,サーバーやネットワークの導入・運用コストや運用負荷を抑えながら,安定して稼働するシステムを実現することである。

 こうしたニーズに応えられる仕組みを実現するうえで,中心となるのが仮想化技術である。“仮想化”と言った場合,一般にはサーバー仮想化を指す。これは,サーバー・マシンを仮想的にソフトウエアで実現するものだ。さらに,仮想サーバー同士を接続するため,仮想的なスイッチを用意する必要がある。これを「仮想スイッチ」,そのための技術を「スイッチの仮想化」あるいは「ネットワークの仮想化」と呼ぶ。

従来の課題を克服した仮想スイッチの新技術

図1●仮想マシンをサーバー上でつなぐ仮想スイッチ
図1●仮想マシンをサーバー上でつなぐ仮想スイッチ
仮想マシン同士がイーサネット・フレームをやり取りする場合,ハイパーバイザーの仮想的なスイッチ機能である「仮想スイッチ」が処理を受け持つ。

 1台のマシン上で複数の仮想マシン(VM)同士が通信する場合,何らかのスイッチ機能が必要になる。従来は,単純にハイパーバイザー内に仮想的なスイッチ機能(仮想スイッチ)を設け,そこでVM間でやり取りするイーサネット・フレームを中継していた(図1)。

 ただ,この方式はいろいろな課題を持っている。特に大きいのは,CPUでスイッチ処理を実行することによるオーバーヘッドと,サーバーごとに仮想スイッチを設けることによる運用・管理の煩雑さである。こうした従来型の課題を克服するため,仮想スイッチの新しい技術が開発されている。

 その一例が,米インテルが開発した「Intel Virtualization Technology」(Intel VT)の一つ,「Intel VT-c」(VT for Connectivity)。従来はハイパーバイザーで実行していた仮想スイッチの処理をLANアダプタ側にオフロードする機能で,VMの負荷軽減とスループット向上を狙ったものだ(図2)。

図2●仮想スイッチ機能を強化するLANアダプタ機能<br>米インテルのネットワーク仮想化技術「VT-c」の一つ「VMDq」と,VMwareの支援機能を組み合わせることで,仮想スイッチの処理をLANアダプタにオフロードして,大幅な性能向上を実現できる。
図2●仮想スイッチ機能を強化するLANアダプタ機能
米インテルのネットワーク仮想化技術「VT-c」の一つ「VMDq」と,VMwareの支援機能を組み合わせることで,仮想スイッチの処理をLANアダプタにオフロードして,大幅な性能向上を実現できる。
[画像のクリックで拡大表示]

 具体的には,「VMDq」と呼ばれる技術で,外部のLANから受信したフレームを各VMに振り分ける処理をLANアダプタが肩代わりする。この機能は,VMwareとHyper-Vがサポートする。

 インテルがIDF 2009で発表した資料によると,同社の10GbE対応LANアダプタ(Intel 82598)とVMwareを使ってVMでのスループットを実測したところ,VMDqをオフにした場合は4.0Gビット/秒だった速度が,VMDqをオンにした場合は9.2Gビット/秒まで向上したという。