日経NETWORKは2013年5月号の特集でSDN(Software-Defined Networking)を扱った。SDNの関連製品の中には、「ネットワーク仮想化」をうたったものが多いのだが、ここに一つ素朴な疑問がある。そもそも「ネットワークの仮想化」とは何で、SDNとはどこが違うのだろうか。詳しい方には“今さら”な話だが、特集のこぼれ話としてまとめてご紹介したい。

 仮想化には様々な定義がある。例えばある取材先では、仮想化は「コンピュータなどITのリソースを抽象化すること」だと説明された。また別の取材先では、「物理的なものを抽象化して、その抽象化したものを、ユーザーにとって都合のいいインタフェースで扱える技術と考えればよい」との意見もあった。技術書などでは、「物理的に一つのものを論理的に複数に見せたり、逆に物理的に複数に分かれているものを論理的に一つに見せたりする」としているケースも多い。

 サーバーの仮想化を考えてみよう。物理サーバーの中に論理的に複数の仮想サーバーを設置することが可能だ。また、多数の物理サーバーの上で動作する仮想サーバーがあったとしよう。この仮想サーバー群の上で、同じアプリケーションを動かし、論理的に一つのアプリケーションのように扱うケースもある。この場合は、実際には物理的に複数のものを、論理的に一つに扱っていることになる。

 「ネットワークの仮想化」の実現をうたう製品を見ると、やはり物理的に一つのネットワーク機器を複数に見せたり、逆に複数のネットワーク機器を一つのネットワークリソースプールとして扱えることを指している。また、リソースプール化したネットワークを、物理構成に関わらず、論理的に分割する機能を「ネットワーク仮想化」と呼ぶケースも多い。

 一方で、SDNの定義は明確でなく、指し示す範囲は「ネットワーク仮想化」よりもずっと広い。様々な企業がそれぞれの立場から、微妙に異なる説明をしているのが現状で、ユーザーにとっては非常に分かりにくい。