ソフトウェア定義ネットワークパート4
サウスバウンドインターフェイスプロトコル
サウスバウンドインターフェイスプロトコルの概要
サウスバウンドインターフェイスプロトコルとは何ですか?
- コントロールプレーンのコントローラとデータプレーンのスイッチ間の情報交換用に設計されたプロトコル。
サウスバウンドインターフェイスプロトコルの設計目標(主な役割)は何ですか?
1.データプレーンとコントロールプレーン間の情報の相互作用を実現します
- データプレーン情報を上向きに収集します。
- 転送動作をガイドするために制御ポリシーを送信します。
2.ネットワーク構成と管理を実現します。3。
リンク属性(帯域幅とオーバーヘッド)、リンクステータス、トポロジ情報などを含むパス計算を実現します。
サウスバウンドインターフェイスプロトコルとは何ですか?
OpenFlowプロトコル
- ONFによって定義されたサウスバウンドインターフェイス規格。これは、コントローラーとスイッチ間の通信のためのオープンスタンダードの方法を提供します。
OF-Configプロトコル
- OpenFlow管理および構成プロトコル(OpenFlow管理および構成プロトコル、OF-Config):OpenFlowスイッチ構成プロトコル。これは、OpenFlow契約のコンパニオン契約として理解できます。
OVSDBプロトコル
- オープンソースのデータベース管理スイッチプロトコル(オープンvSwitchのデータベース管理プロトコル、OVSDB):オープンソースの管理を担当するソフトウェアスイッチ(OpenvSwitch達成するOVS、オープン仮想スイッチデータベース)を、仮想スイッチがあり、プログラム可能なアクセスおよび構成管理。
NETCONFプロトコル
- NETCONFプロトコルはクライアント/サーバー構造を採用しています。NETCONFを介して、SDNコントローラーはネットワークデバイスを構成および管理します。
サーバーとしてのSDNコントローラー
クライアントとしてのSDNスイッチ
XMPP
- Extensible Messaging and Presence Protocol(eXtensible Messaging and Presence Protocol、XMPP):インスタントメッセージング、ステータス、マルチパーティチャット、音声およびビデオコール、コラボレーション、軽量ミドルウェア、コンテンツフェデレーション、および一般的なXMLデータルーティングテクノロジに対応しています。
PCEP
- パス計算要素プロトコル(PCEP):MPLSネットワークドメイン間トラフィックエンジニアリング(トラフィックエンジニアリング、TE)およびその他のアプリケーションに対して、集中パス計算をサポートするために提案されています。
Baidu MPLSスタンプはこちら:MPLS
MPLS
多协议标签交换(英语:Multi-Protocol Label Switching,缩写为MPLS):
是一种在开放的通信网上利用标签引导数据高速、高效传输的新技术。
多协议的含义:
是指MPLS不但可以支持多种网络层层面上的协议,还可以兼容第二层的多种数据链路层技术。
MPLS是利用标记(label)进行数据转发的。当分组进入网络时,要为其分配固定长度的短的标记,
并将标记与分组封装在一起,在整个转发过程中,交换节点仅根据标记进行转发。
I2RS
- ルーティングシステムインターフェイス(ルーティングシステムへのインターフェイス、I2RS):IETFによって促進されるSDNサウスバウンドインターフェイスプロトコル。
- コアアイデア:従来のネットワーク機器のルーティングおよび転送システムでオープンインターフェイスを定義して、外部アプリケーションまたは制御エンティティがルーター内の情報を読み取り、トポロジの変更、トラフィック統計、およびその他の情報、ネットワークのプログラム可能性をサポートするため。
OpFlex
- OpFlexは、シスコが提案したサウスバウンドインターフェイスプロトコルです。
- OpFlexは、ACI内のポリシー制御プロトコルです。
オープンフロープロトコル
Openflowメッセージタイプ
- Controller-to-Switchメッセージ
- 非同期メッセージ[eɪˈsɪŋkrənəs]
- 対称メッセージ
コントローラからスイッチへのメッセージ
- コントローラによって開始されると、スイッチは対応するメッセージに応答する必要がある場合があります。
非同期メッセージリスト
- 新しいデータパケットの到着とスイッチステータスの変更をコントローラに通知するために、スイッチによってアクティブに開始されます
対称メッセージリスト
- いずれかの当事者が相手方の許可または要求なしに送信する
Openflowメッセージ形式
- Openflowプロトコルデータパッケージ:OpenflowヘッダーとOpenflowメッセージ
Openflowヘッダー形式:
Openflowヘッダーのデータ構造
/* Header on all OpenFlow packets. */
struct ofp_header {
uint8_t version; /* OpenFlow的协议版本号*/
uint8_t type; /*消息类型,是个常数*/
uint16_t length; /*数据包字节数*/
uint32_t xid; /*数据包的标识id*/
};
p_typeのopenflowパケットデータ型は列挙型であり、各メッセージ型は定数として定義されています。
Openflowに基づくSDN通信プロセス
左の図は、hello情報を介して接続を確立するプロセスを示しています。
◆コントローラーはTCPポート6633を開き
、
スイッチの接続を待ちます◆スイッチが起動したら
、指定されたコントローラーポートに接続してみます;
◆セキュアチャネルはTLS(Transport
Layer Security)接続暗号化を使用します;
◆両者は証明書を交換することによって認証されます。
フォローアッププロセスについては、上記の情報を参照してください。
右の図は、パケットキャプチャソフトウェアでのさまざまな種類のデータパケットを示しています
。2つのPC端末間の情報相互作用プロセス:
①ホストはデータパケットをネットワークに送信します
②OFスイッチのフローテーブルには一致する項目がなく、
データパケットはコントローラに報告される介しPacketlnイベント。
③Theコントローラ送るフローテーブル(又はPacketOut)④Data
パケット転送⑤Same
②として⑥Same
③として⑦Data
パケットフォワーディング
OF-Configの概要
OF-Configプロトコル
- OF-Configプロトコルは、OpenFlowスイッチ管理構成プロトコル(OpenFlow管理および構成プロトコル)です。
- OpenFlowのコンパニオンプロトコル(補完的なプロトコルと見なされます)。
OF-ConfigプロトコルとOpenFlowプロトコルバージョンの対応
プロトコル設計要件(要件)
- 仕様要件
- 運用要件(運用要件)
- 管理プロトコルの要件
仕様要件
1.コントローラー接続設定
- コントローラのIPアドレス、コントローラのポート番号、および伝送プロトコル(TLSまたはTCP)。
2.複数のコントローラー
- マルチコントローラー接続のパラメーター構成
3.OpenFlow論理スイッチ
- ポートやキューなどのさまざまなリソースの構成。
4.接続の中断
- 接続が失敗した後に入るモードを構成します
。2つのモード:フェイルセーフモードとフェイル独立モード
5.暗号化
- 本人認証方式
6.キュー
- 最小レート(最小レート)、最大レート(最大レート)、カスタムレート(実験者)
7.ポート
- 受信の禁止(受信なし)、転送の禁止(転送なし)、パケットインメッセージの禁止(パケットなし)、管理状態(管理状態)
8.機能の発見
- 発見可能性の特徴
9.データパスID
運用要件
-
OFスイッチのサポートは、複数のOpenFlow構成ポイントによって構成されます
-
1つのOpenFlow構成ポイントをサポートして、複数のOF交換を管理します
- 複数のコントローラーによって制御される1つのOpenFlow論理スイッチをサポートします
- OpenFlowスイッチのポートとキューの構成をサポートします。
- OpenFlow論理スイッチの機能検出をサポートします。
- IPinGRE、VXLAN、NVGREなどの構成トンネルをサポートします
管理プロトコルの要件
- セキュリティを確保し、スイッチと構成ポイントの双方向認証をサポートします
- 構成要求と応答の信頼性の高い送信をサポートします
- 構成ポイントまたはスイッチによる接続設定をサポート
- ローカルスイッチ構成と幅広いスイッチ構成を実行できる
- スイッチのパラメータを設定し、スイッチから設定パラメータを受信するための設定ポイントをサポートします
- スイッチの構成情報の作成、変更、削除のサポート、および構成結果のレポートのサポート
- スイッチから構成ポイントへの構成要求と非同期通知の独立した送信をサポートします
- 記憶能力、拡張性をサポートし、独自の属性と能力を報告します
OF-CONFIGデータモデル
- OF-CONFIGはXMLを使用してデータ構造を記述します
- データモデルは、クラスとクラス属性で構成されます
各openflowスイッチには、複数のopenflow論理スイッチインスタンスが含まれています
OF-CONFIGデータモデルの複数の識別子
- OpenFlow対応スイッチ
- OpenFlow構成ポイント
- OpenFlow論理スイッチ
- 論理スイッチ機能
- OpenFlowコントローラー
- OpenFlowリソース(スーパークラス)
- OpenFlowポート
- OpenFlowポート機能
- OpenFlowキュー
- 外部証明書
- 所有証明書
- OpenFlowフローテーブル
例として、OpenFlowスイッチのデータモデルを取り上げます。
OF-CONFIG送信プロトコル
•NETCONFプロトコル(RFC6241)を介してコンテンツを送信する
NETCONFIGプロトコル
NETCONFプロトコルとは何ですか
•新世代のネットワーク管理プロトコル。
•ネットワーク構成プロトコルNETCONF(ネットワーク構成プロトコル)は、ネットワークデバイスを管理するためのメカニズムを提供します。
•NETCONFワーキンググループは2003年に設立され、RFC6241の更新バージョンは2011年にリリースされました。
NETCONFプロトコルの利点(SNMPと比較して)
NETCONFプロトコルの他の機能
•構成データとステータスデータを区別し、データを追加、削除、変更、およびチェックするためのさまざまな操作を提供します。
- 構成データ(構成データ):ネットワーク機器を構成するためのデータ。
- 状態データ:デバイスの状態を反映するデータ
- 複数の構成データベースがあります
NETCONFプロトコルフレームワーク
NETCONFトランスポート層
•NETCONF接続に信頼性の高いシリアル番号送信メカニズムを
提供します。•認証、データ整合性、およびセキュリティ保証を提供します。
•ベアラプロトコルとしてSSHを提供します。
NETCONFRPC層
•RPCベースの通信メカニズムの使用;
•:要求
•:応答
NETCONF操作レイヤー
•データベース情報の取得、構成、コピー、削除の機能
NETCONFコンテンツレイヤー
•ネットワーク管理に関連する構成データについて説明します。
•モデリングにYANG言語を使用する場合、YANGには次の特徴があります。
- 階層ツリー構造
- XMLに直接マッピングできます
- 読みやすく、習得しやすい
- 再利用可能で拡張可能
操作例-<get-config`>
操作例-<edit-config`>
操作例-<copy-config`>
•構成データベース全体を作成または置換します
。•ターゲットが存在する場合は上書きします。存在しない場合は、新しいデータベースを作成します。
操作例-<delete-config`>
•構成データベースは削除できません。
参照:中国の大学のMOCCSDNネットワークコース