ソフトウェア定義ネットワーク
今日の「ビッグデータ」またはメガデータセットを処理するには、何千ものサーバー上で大規模な並列処理が必要であり、それらすべてが相互に直接接続する必要がある。 巨大なデータセットの台頭により、データセンターでのネットワーク容量の追加が常に求められている。 ハイパースケールデータセンターネットワークのオペレーターは、ネットワークを以前には想像もできなかったサイズにスケーリングし、破損することなく多対多の接続を維持するという困難な作業に直面している。
ソフトウェア定義モバイルネットワーキング (SDMN) は、すべてのプロトコル固有の機能がソフトウェアで実装されるモバイルネットワークの設計へのアプローチであり、 コアネットワークと無線アクセスネットワーク 。 これは、 モバイルネットワーク固有の機能を組み込むSDNパラダイムの拡張として提案されている。 3GPP Rel.14以降、 PFCPプロトコルを使用するモバイルコアネットワークアーキテクチャにコントロールユーザープレーン分離が導入された。
OpenFlowはTCAMテーブルを使用してパケットシーケンス(フロー)をルーティングする。 フローがスイッチに到着すると、フローテーブルのルックアップが実行される。 フローテーブルの実装に応じて、 vSwitchが使用されている場合はソフトウェアフローテーブルで、ハードウェアに実装されている場合はASICでこれが行われる。 一致するフローが見つからない場合は、コントローラーに追加の指示を求める要求が送信される。 これは、3つの異なるモードのいずれかで処理される。 リアクティブモードでは、コントローラーはこれらの要求の後に動作し、必要に応じて、対応するパケットのフローテーブルにルールを作成してインストールする。 プロアクティブモードでは、コントローラは、このスイッチで可能なすべての可能なトラフィック一致のフローテーブルエントリを事前に入力する。 このモードは、すべての静的エントリが事前にインストールされている今日の一般的なルーティングテーブルエントリと比較できる。 これに続いて、すべての着信フローが一致するエントリを見つけるため、リクエストはコントローラに送信されない。 プロアクティブモードの主な利点は、すべてのパケットがラインレートで転送され(TCAMのすべてのフローテーブルエントリを考慮)、遅延が追加されないことである。 3番目のモードであるハイブリッドモードは、一連のトラフィックに対するリアクティブモードと、残りのトラフィックに対する低遅延転送(プロアクティブモード)の柔軟性に従う。
SDNの原理の歴史は、このアーキテクチャがデータネットワークで使用されるようになる前に、プロビジョニングと管理を簡素化する方法として、公衆交換電話網で最初に使用された制御プレーンとデータプレーンの分離に遡ることができる。
インターネット技術特別調査委員会(IETF)は、2004年に公開された "Forwarding and Control Element Separation"(ForCES)という適切なインターフェイス標準の制御機能と転送機能を分離するさまざまな方法を検討し始めた。 ForCESワーキンググループは、コンパニオンSoftRouterアーキテクチャも提案した。 データから制御を分離することを追求したIETFの初期の追加標準には、IPサービスプロトコルとしてのLinux Netlink とパス計算要素(PCE)ベースのアーキテクチャが含まれる。
これらの初期の試みは、2つの理由で牽引力を得られなかった。 1つは、インターネットコミュニティの多くが、特に制御プレーンで障害が発生する可能性があるため、データからコントロールを分離することはリスクがあると考えていたことである。 2つ目は、制御プレーンとデータプレーンの間に標準のアプリケーションプログラミングインターフェイス(API)を作成すると競争が激化することをベンダーが懸念していたことである。
分割制御/データプレーンアーキテクチャでのオープンソースソフトウェアの使用は、スタンフォード大学のコンピューターサイエンス部門のエタンプロジェクトにそのルーツをたどる。