F5 GLOSSARY

OpenFlow

OpenFlowとは、ソフトウェアによってネットワーク構成する「SDN(Software Defined Network)」を実現するための技術の1つです。

これまでネットワーク機器は、経路制御機能を提供するコントロール プレーンと、データ転送機能を提供するデータ プレーンがセットになって実現されていました。OpenFlowの最大の特徴は、これらを分離している点にあります。コントロール プレーンを担当するものを「OpenFlowコントローラ」、データ プレーンを担当するものを「OpenFlowスイッチ」と言います。OpenFlowコントローラは、一般にソフトウェアで実現されます。一方OpenFlowスイッチはハードウェアで提供されることが一般的ですが、ソフトウェアに実装することも可能です。ソフトウェアで実現されたOpenFlowスイッチとしては、Open vSwitchがあります。

データ転送の方法を「フロー テーブル(Flow Table)」として定義していることも、従来のネットワーク機器と異なる重要な特徴だと言えます。フロー テーブルには、処理対象となるパケットの条件ごとに、対応するアクションを規定したルール群が定義されています。パケットの条件には、イーサネットのMACアドレスやIPアドレス、ポート番号、VLAN ID、MPLSラベル等、幅広い情報が利用できます。またアクションとしては、特定のポートからパケットを送り出す、特定のフィールドを書き換える、パケットをドロップする、等を定義できます。

フローテーブルの記述によって、L2スイッチのような機能を実現したり、ルータやL3スイッチの処理も行わせることも可能です。またファイアウォールやロードバランサのような機能を定義することが可能です。障害の対処として、複数経路を用意し、スイッチが故障した時に自動的に別経路を選択するフェイルオーバが実装できます。また従来のVLAN技術をも一途にネットワークを論理的に複数に分割することも可能です。複数のOpenFlowスイッチで構成されるネットワークの振る舞いはOpenFlowコントローラによって集中的に制御できます。

このようにOpenFlowは、専用の装置で実現していた従来のネットワークの構成を柔軟に規定できる可能性を持つ技術だと言えます。


< Return to the glossary