Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

5.10. OVS-DPDK

Open vSwitch は、OpenFlow プロトコルと OVSDB インターフェイスを使用してスイッチを制御するマルチレイヤー仮想スイッチです。

ネイティブ Open vSwitch はカーネル領域を使用してデータをアプリケーションに提供します。カーネルは、渡されたパケットを転送するルールを保持する source-called フローテーブルを作成します。どのルールにも一致しないパケットは、さらに処理するためにユーザー空間のアプリケーションに送信されます。アプリケーション(デーモン)がパケットを処理すると、フローテーブルのレコードが作成され、次のパケットが高速なパスを使用できます。したがって、OVS は、カーネルとアプリケーション間の切り替えの所要時間を渡すことで、妥当な時間を節約できます。このアプローチには、Linux ネットワークスタックの帯域幅に制限があります。これは、通信など、高いパケット処理を必要とするユースケースには適していません。

DPDK は、ユーザーがデータをより迅速に処理できるアプリケーションを構築できるようにするユーザー空間ライブラリーのセットです。複数の Poll Mode Drivers (PMD)を提供します。これにより、パケットがカーネルスタックをバイパスし、ユーザー空間に直接移動できます。このような動作は、カーネル領域外のトラフィックを完全に処理するため、通信を高速化します。

OpenDaylight は、director を使用して Open vSwitch Data Plane Development Kit (DPDK) アクセラレーションに対応するようにデプロイすることができます。このデプロイメントでは、カーネル空間ではなくユーザー空間でパケットが処理されるために、データプレーンパフォーマンスが向上します。