SDN コントローラはスイッチのコントロール プレーンの OpenFlow をサポートしますが、一部のコントローラはスイッチの管理プレーンのプロトコルをサポートする場合があります。これはすべて、SDN コントローラーとその下にあるネットワーク要素 (スイッチ/ルーター) の間でサポートされているプロトコルに依存します。
コントロール プレーンは、パケットがネットワーク要素を通過する方法を定義します。管理プレーンは、ネットワーク要素を監視および構成します。
OpenDaylight コントローラーは、OpenFlow、NETCONF をサポートしており、SNMP プロジェクトもあるようです ( https://wiki.opendaylight.org/view/Project_Proposals:SNMP_Plugin ) 。ONOS SDN コントローラーは、OpenFlow と NETCONF もサポートしています。
SDxCentral は最近、2015 SDN コントローラー調査をリリースしました。これは、さまざまなコントローラーとその機能についてうまく議論しています: https://www.sdxcentral.com/articles/announcements/sdn-controllers-report-2015-download-available/2015/08 /
NETCONF を使用すると、SDN コントローラを介して基盤となるネットワーク要素を取得および設定できます。具体的には、これを行うために RESTful のような API を利用するコントローラーの上にアプリケーションを作成できます。SDN コントローラーが CLI と異なるのは、アプリケーションを作成するこの機能です。
NETCONF は YANG データ モデルに基づいています(SNMP が MIB に基づいているように)。いくつかの標準的な YANG モデルが定義されており、今後さらに追加される予定ですが、SNMP と同様に、ベンダー固有のモデルと拡張機能があることを指摘します。
以下のビデオ ブログでは、NETCONF を使用して OpenDaylight SDN コントローラーを介してネットワーク要素をプログラムする方法について説明しています: http://brcdcomm.github.io/BVC/jekyll/update/devops/netdev/appdev/2015/03 /01/restconf-app-2.html
高レベルで YANG を説明するビデオもあります: http://brcdcomm.github.io/BVC/jekyll/update/devops/netdev/appdev/2015/04/11/Yang-For-BVC-RESTCONF-Dev. html