OpenFlowコントローラとOpenFlowスイッチ間のやりとり(2)

前回、OpenFlowコントローラとOpenFlowスイッチ間の やりとりをする際に使用されるメッセージタイプについて、 「Controller-to-Switchメッセージ」を解説しました。

今回は残りの2つのメッセージタイプについて解説していきます。

OpenFlowメッセージ

OpenFlowでは、OpenFlowコントローラとOpenFlowスイッチ間で 情報をやり取りする際に利用するメッセージが規定されています。

OpenFlowでは以下の3つのメッセージ・タイプがあります。

Controller-to-Switchメッセージ

OpenFlowコントローラからOpenFlowスイッチに対して発行されるメッセージで、 その要求メッセージに対してOpenFlowスイッチが応答を返すものと 返さないものがあります。

Controller-to-Switchメッセージ

Asynchronousメッセージ

OpenFlowスイッチからOpenFlowコントローラに対して 送信される発行されるメッセージ

Asynchronousメッセージ

Symmetricメッセージ

OpenFlowコントローラとOpenFlowスイッチ間でやり取りするメッセージ

Symmetricメッセージ

今回は、「Asynchronousメッセージ」「Symmetricメッセージ」 について解説していきます。

Asynchronousメッセージ

Asynchronousメッセージには以下のようなものがあります。

Packet-inメッセージ

受信したデータがフローエントリにマッチしなかった場合、 OpenFlowコントローラにデータの処理方法を確認するために、 OpenFlowスイッチが送信するメッセージ。

OpenFlowコントローラはPacket-Inメッセージの内容に基づき パケットの情報を抽出し、制御方法を決定します。 制御方法としては、新たなフローエントリの設定を Modify-Stateメッセージを使ってOpenFlowスイッチに指示したり、 Packe-Outメッセージを使って、指定したポートから転送するように 指示する等があります。 OpenFlowスイッチの実装によっては、フローエントリに マッチしないデータは破棄することも可能です。

Flow-Removedメッセージ

フローエントリの保持時間(Timeouts)が満了した場合に、 その旨をOpenFlowスイッチからOpenFlowコントローラへ 通知する場合に使用するメッセージ。

Port-statusメッセージ

物理ポートのリンクがダウンしたときや、 管理者が明示的にポートをダウンさせたときなど、 物理ポートに状態変化があったとき、 その情報をOpenFlowスイッチからOpenFlowコントローラへ 通知する場合に使用するメッセージ。

Errorメッセージ

エラーが発生した場合に、OpenFlowスイッチから OpenFlowコントローラに通知する場合に使用されるメッセージ

Symmetricメッセージ

Symmetricメッセージには以下のようなものがあります。

Hello

OpenFlowコントローラとOpenFlowスイッチ間で、 接続を開始する場合に使用するメッセージ。 Helloメッセージのパラメータとして、 OpenFlowのバージョン情報などが含まれていて、 お互いにサポートするバージョンを確認し合います。

Hello

Echo request / Echo reply

OpenFlowコントローラとOpenFlowスイッチ間の 死活監視のために、双方からrequestメッセージを送信し、 受信側がreplyメッセージを返信します。 またこのメッセージでOpenFlowコントローラと OpenFlowスイッチ間の遅延や帯域幅の測定も行います。

Experimenter

OpenFlowの将来的な拡張を見込んで用意されているメッセージ。

関連記事

メールマガジン

ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!

「初心者にも理解できるネットワーク技術」

これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。

もちろん無料です!!

↓メールマガジン購読はこちら↓

メールアドレス: