OpenFlowコントローラとOpenFlowスイッチ間のやり取りは、 やり取りの開始や終了など、その目的や送受信の状況などの シーケンスが決められています。
やり取りされるメッセージも、情報の追加や削除、 変更などの種類によって規定されています。
このときにOpenFlowコントローラとOpenFlowスイッチ間で やり取りされるメッセージの通信経路を「OpenFlowチャネル」と呼ばれています。
OpenFlowチャネルは、不正アクセスや情報の盗聴、 改ざんなどセキュリティの確保がとても重要になります。
OpenFlowでは、OpenFlowコントローラとOpenFlowスイッチ間で 情報をやり取りする際に利用するメッセージが規定されています。
OpenFlowでは以下の3つのメッセージ・タイプがあります。
OpenFlowコントローラからOpenFlowスイッチに対して発行されるメッセージで、 その要求メッセージに対してOpenFlowスイッチが応答を返すものと 返さないものがあります。
OpenFlowスイッチからOpenFlowコントローラに対して 送信される発行されるメッセージ
OpenFlowコントローラとOpenFlowスイッチ間でやり取りするメッセージ
今回の3つのメッセージのうち、「Controller-to-Switchメッセージ」について 解説していきます。
Controller-to-Switchメッセージには以下のようなメッセージがあります。
OpenFlowスイッチの機能や特徴の問い合わせに使用するメッセージ。 各ポートやポートに接続された装置、スイッチがサポートする機能などを パラメータとして指定します。 OpenFlowコントローラから、Features Requestメッセージを送信し、 受信したOpenFlowスイッチは、ポート情報やOpenFlowスイッチの 機能情報などをFeatures Replyメッセージで返信します。
OpenFlowスイッチの設定情報の取得や設定を行う場合に使用するメッセージ
OpenFlowスイッチのフローテーブルのフローエントリへの追加、変更、 削除(Modify flow entry)や、物理ポートの状態変更(Modify port)、 メーター情報(QoS機能)の変更(Modify meter)などを 実行するためのメッセージ。
操作の種類(追加、変更、削除)や条件、動作指示などを パラメータとして指定します。 このメッセージを受信したOpenFlowスイッチは、 指示に従ってフローエントリを更新します。
フローエントリのCountersで蓄積している統計情報や フローエントリに関する情報を収集するためのメッセージ。 このメッセージを受信したOpenFlowスイッチは、 フローエントリに蓄積した統計情報をRead-State Replyメッセージとして、 OpenFlowコントローラに返信します。
OpenFlowスイッチの指定したポートからパケットを 送信させるために使用するメッセージ
コントローラ側の要求に対する処理完了の 確認に用いられるメッセージ OpenFlowコントローラから、OpenFlowスイッチ上で これまで受信したメッセージ処理が完了したか確認するために、 Barrier Requestメッセージを送信します。 メッセージを受信したOpenFlowスイッチは、 これまで受信したメッセージ処理が完了したことを伝えるために、 Barrier Replyメッセージを送信します。
OpenFlowコントローラが複数存在する場合に、 マスターとスレーブの入れ替え等の変更を行うときに使用するメッセージ
OpenFlowコントローラが複数存在する場合に、 どのタイプの非同期メッセージがOpenFlow チャンネル上で 送信されるかを制御したい場合に使用するメッセージ。
この機能を使うことで、コントローラごとに それぞれ異なるメッセージを受け取ることができます。
ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!
これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。
もちろん無料です!!
↓メールマガジン購読はこちら↓