Software-Defined Networking(SDN)を、わかりやすく解説する本特集。第2回の今回は、SDNを構成する主な技術を整理した。本記事を公開した2013年5月から、いくつかのプレーヤーは新たな展開に乗り出しているが、技術とプロトコルの基本はこの機会にしっかり理解しておきたい。
Part2では、現時点でのSDNの姿を説明する。Part1の図1-1で紹介した「理想のSDN」には至らなくても、現在のネットワークの課題を一部でも解決できるSDNはすでに存在している。その全体像と構成技術を見ていこう。
Part1の図1-6でSDNの全体的な構成を簡単に説明した。それを詳しくしたのが、図2-1だ。現在SDNと名の付く製品はデータセンター向けが多いので、図2-1ではデータセンターを中心に据えた。
SDNの構成要素は、大きく3種類ある。図2-1で下に位置するものから順に見ていくと、まず一つは物理スイッチとソフトウエアのスイッチ(仮想スイッチ)だ。これらはレイヤー2/レイヤー3のパケット転送を担う。仮想スイッチはサーバー仮想化ソフトの中に含まれていることが多く、ソフトウエアのサーバー(仮想マシン)を集約するなどの役割を果たす。
二つめの要素は、こうしたスイッチ群がパケットをどのように処理するかを制御する、ネットワークの制御・管理ソフトウエア「SDNコントローラー」だ(図2-1中央の黄緑色の部分)。呼び方は開発元によって様々だが、SDNの中心となるソフトウエアなので、今回はこのように呼ぶ。SDNコントローラーはベンチャー企業のほか、大手のサーバー仮想化ソフトの開発元や機器ベンダー、通信事業者などが開発を進めている(図2-1の表)。
三つめの要素は、SDNコントローラーの上で動き、「経路計算」「ネットワークの論理分割」「ネットワーク監視」などの機能を実現するためのアプリケーションだ。
SDNコントローラーからスイッチ群を制御するためのAPIは、「サウスバウンドAPI」などと呼ばれ、OpenFlowやベンダーの独自APIなどが使われている。APIを使ってスイッチに経路情報を書き込んだり、設定を変更したり、制御に必要な情報を集めたりするのだ。