SDNとはSoftware Defined Networkの略で、米国スタンフォード大学の Clean-Slate Research Group によって提案された新しい革新的なネットワークアーキテクチャであり、ネットワーク仮想化の実装です。ではSDNについて、徹底的に解説していきます。
1 「SDN」とは?
SDNとは、米国スタンフォード大学の Clean–Slate 研究グループによって提案された新しい革新的なネットワークアーキテクチャであり、ソフトウェア プログラミングによってネットワークを定義および制御できます。新しいインターネットアーキテクチャの研究に新しい実験的アプローチを提供し、次世代インターネットの開発を大きく促進します。
1.1 SDNの発展
1990年代半ばには、「ネットワークの革新を推進するには、単純なハードウェアデータパスでのプログラミングが必要」であると考えられていて、1990 年代後半には、「ネットワーキングの革新を推進するには、基盤となるデータ チャネルをプログラム可能にする必要がある」と考えられていました。SDNは、2006年にスタンフォード大学で行われた Clean Slate 研究プロジェクトから生まれ、2009年、McKeown教授は正式にSDNの概念を提案しました。
1.2 デザインの発想
レイヤーの考え方を使用して、SDNはデータとコントロールを分離します。SDNの本質的な機能は、コントロールプレーンとデータプレーンを分離し、通信プロトコルをオープンにすることで、SDNは従来のネットワーク機器の閉鎖的な性質を打破します。さらに、南北方向と東西方向のオープンインターフェイスとプログラマビリティにより、ネットワーク管理がよりシンプルで動的かつ柔軟になります
2 SDNの仕組み
SDNの全体的なアーキテクチャは、データプレーン、コントロールプレーン、およびアプリケーションプレーンに下から上 (南から北) に分割されます。
2.1 データプレーン
データプレーンは、スイッチなどの一般的なネットワークハードウェアで構成され、各ネットワークデバイスは、異なるルールで形成されたSDNデータパスを介して接続されます。この部分のAPIはSouthbound API(サウスバウンドAPI)と呼びます。
2.2 コントロールプレーン
コントロールプレーンには、グローバルネットワーク情報を保持し、さまざまな転送ルールの制御を担当する、論理的に中心的なSDNコントローラーが含まれます。この部分のAPIはNorthbound API(ノースバウンドAPI)を呼びます。
2.3 アプリケーションプレーン
アプリケーションプレーンには、さまざまなSDNベースのネットワークアプリケーションが含まれており、ユーザーは基礎となる詳細を気にすることなく、新しいアプリケーションをプログラムして展開できます。
3 SDNのインターフェイス
SDNのインターフェイスはオープンであり、コントローラを論理的な中心としており、サウスバウンドインターフェイスはデータプレーンとの通信を担当し、ノースバウンドインターフェイスはアプリケーションプレーンとの通信を担当し、イーストとウェストインターフェイスは複数のコントローラ間の通信を担当します。最も主流のサウスバウンドインターフェイスである CDPI は、OpenFlowプロトコルを使用します。
3.1 SDNを支えるOpenFlow
OpenFlowの最も基本的な機能は、フローの概念に基づいて転送ルールを一致させることです。各スイッチはフローテーブル (Flow Table) を保持し、フローテーブル内の転送ルールに従って転送します。フローテーブルの構築、維持、配布はすべてコントローラが行います。
3.2 OpenFlowの作用機制
ノースバウンドインターフェースの場合、アプリケーションプログラムはノースバウンドインターフェースプログラミングを通じて必要なさまざまなネットワークリソースを呼び出し、ネットワークの迅速な構成と展開を実現します。 East-Westインターフェースにより、コントローラはスケーラブルになり、ロードバランシングとパフォーマンス向上のためのテクニカルサポートが提供されます。
4 SDNのメリット
l データ制御の分離により、アプリケーションのアップグレードと機器のアップグレードが互いに独立し、新しいアプリケーションの迅速な展開が加速されます。
l ネットワークの抽象化によってネットワーク モデルが簡素化され、オペレーターは複雑なネットワーク管理から解放され、ネットワークをより柔軟に制御できるようになります。
l 制御を論理的に集中化することで、ユーザーとオペレーターはコントローラーを介してグローバル ネットワーク情報を取得できるため、ネットワークが最適化され、ネットワーク パフォーマンスが向上します。
SDNは、手動操作を解放し、構成エラーを減らし、統合と迅速な展開を容易にします。現在のネットワーク分野で最も注目され、最も有望なテクノロジの1つです。SDNの大きな発展の可能性を考慮して、学界はデータ層と制御層の主要な技術を深く研究し、エンタープライズ ネットワークやデータセンターなどのさまざまな分野に SDN を適用することに成功しています。