ソフトウェア定義ネットワーク
SDNアプリケーションは、 ノースバウンドインターフェース (NBI)を介して、ネットワーク要件と望ましいネットワーク動作を明示的、直接的、およびプログラム的にSDNコントローラーに伝達するプログラムである。 さらに、内部の意思決定のために、ネットワークの抽象化されたビューを使用する場合がある。 SDNアプリケーションは、1つのSDNアプリケーションロジックと1つ以上のNBIドライバーで構成される。 SDNアプリケーション自体が、抽象化されたネットワーク制御の別のレイヤーを公開し、それぞれのNBIエージェントを通じて1つ以上の高レベルのNBIを提供する場合がある。SDNアプリケーションレイヤーは、コントロールレイヤーサービス要求を特定のコマンドとディレクティブにデータプレーンスイッチにマップし、アプリケーションにデータプレーンのトポロジとアクティビティに関する情報を提供する。抽象化、オーケストレーション、およびアプリケーションのサポートは、SDNコントロールレイヤーのサブレイヤーである。 アプリケーションプレーンには、ネットワークリソースと動作を定義、監視、制御するアプリケーションとサービスが含まれている。
ネットワークは、アプリケーションのニーズ、ビジネスポリシー、およびネットワークの状態に基づいて、動的に調整および対応しなければならない。
新機能の導入(ソフトウェアのアップグレードやパッチ)は、業務の中断を最小限に抑えながらシームレスに行われなければならない。
Open Data Center Alliance (ODCA) は、以下のような便利で簡潔な要件を提供している[ODCA14]: