OpenFlow
概要
OpenFlowとは、通信ネットワークを構成する通信機器を一つの制御装置で集中管理し、複雑な転送制御を行なったり柔軟にネットワーク構成を変更できる技術。業界団体のOpen Networking Foundation(ONF)によって標準仕様の策定が行われている。OpenFlowではこれまで一つのネットワーク機器の内部に同居していた経路制御の機能とデータ転送の機能をそれぞれ別に機器に分離し、制御装置(OpenFlowコントローラ)が複数の中継・転送装置(OpenFlowスイッチ)の設定や振る舞いを一括して管理する。
ネットワーク管理者は各スイッチの振る舞いを記述した「フローテーブル」(flow table)を作成し、OpenFlowコントローラがこれをOpenFlowプロトコルによって配送、各スイッチはこれに基づいてデータの転送や破棄、宛先の書き換えなどを実行する。
フローテーブルに記述する条件として利用できる情報には、スイッチの物理ポートの番号や送信元/宛先MACアドレス、VLAN ID、MPLSラベル、送信元/宛先IPアドレス、TCP/UDPのポート番号などがあり、レイヤ1(物理層)からレイヤ4(トランスポート層)まで幅広く対応している。各レイヤの情報を組み合わせて条件を記述するといった高度な制御も可能となっている。
OpenFlowプロトコルはTCP(Transmission Control Protocol)上で通信するため、コントローラと各スイッチの間はIPネットワークで接続されている必要がある。通常はTLS(Transport Layer Security)を併用してセキュリティを確保する。
OpenFlowによって機器や回線の物理的な配置や構成とは独立に、ネットワーク構成や転送経路の設定や変更を行うことができる。このようにソフトウェア上から論理的なネットワーク構成を集中的に制御する技術を「SDN」(Software-Defined Networking)と呼び、OpenFlowはその有力な一方式として利用されている。
(2019.9.1更新)