Open vSwitch
ウィキペディアから
Open vSwitch(OVS)は、分散仮想マルチレイヤスイッチのオープンソース実装である。 Open vSwitch の主な目的は、 ハードウェア仮想化環境にスイッチングスタックを提供すると同時に、 コンピューターネットワークで使用される複数のプロトコルと標準をサポートすることである[3]。
![]() | |
開発元 | OvS Technical Steering Committee 及び Linux Foundation |
---|---|
初版 | 2009年7月29日[1] |
最新版 |
3.4.1, 3.3.3, 3.2.4 and 3.1.6[2]
/ 2024年11月15日 |
リポジトリ | |
プログラミング 言語 | C言語,Python |
対応OS | Linux, Hyper-V, FreeBSD, NetBSD |
規格 | IEEE 802.1AX-2008, IEEE 802.1D-1998, IEEE 802.1D-2004 他多数 |
サポート状況 | 開発中 |
種別 | 仮想レイヤ3スイッチ |
ライセンス | Apache License 2.0 |
公式サイト |
openvswitch |
このプロジェクトのソースコードは、 Apache License 2.0ライセンスに基づいて配布されている。
概要

Open vSwitch は、 仮想多層ネットワークスイッチのソフトウェア実装であり、プログラムによる拡張を通じて効果的なネットワーク自動化を可能にするように設計されており、標準の管理インタフェースや、NetFlow、sFlow、SPAN、RSPAN、CLI、LACP、802.1ag 等のプロトコルをサポートしている。さらに、Open vSwitch は、VMware vNetwork 分散vswitch またはCisco Nexus 1000Vと同様に、基盤となるサーバアーキテクチャを抽象化する方法でクロスサーバスイッチを作成できるようにすることで、複数の物理サーバ間で透過的な分散をサポートするように設計されている[4][5][6]。
Open vSwitch は、仮想マシン(VM)ハイパーバイザ内で実行されるソフトウェアベースのネットワークスイッチおよび専用スイッチングハードウェアの制御スタックとして動作できる。そのため、複数の仮想化プラットフォーム、スイッチングチップセット、およびネットワークハードウェアアクセラレータに移植された[7]。バージョン6.0以降のCitrix XenServer仮想化プラットフォーム[8]と、XAPI 管理ツールスタックを介したXen クラウドプラットフォームのデフォルトのネットワークスイッチである[9]。また、Xen、Linux KVM、Proxmox VE、VirtualBoxハイパーバイザをサポートし、Hyper-Vへのポートも利用できる[10]。また、OpenStack、openQRM、OpenNebulaとoVirt 等の様々な統合されたクラウドコンピューティングを含むソフトウェアプラットフォームおよび仮想化管理システムを持つ[4][5]。
Open vSwitch のLinuxカーネル実装は、2012年3月18日にリリースされたカーネルバージョン3.3のカーネルメインラインにマージされた[11][12]。Debian、Fedora、openSUSE、Ubuntuの公式Linuxディストリビューションで利用可能である[4]。2014年1月、FreeBSDとNetBSDの実装も利用でき、NetBSDの実装は完全なユーザ空間で動作する[13][14][15]。
Open vSwitch のソースコードの大部分は、プラットフォームに依存しないC言語で記述されているため、さまざまな環境への移植が容易である。ソースコードは、Apache License 2.0の下でライセンスされている[4]。
機能
要約
視点
2015年9月現在[update]、Open vSwitch によって提供される機能を次に示す[16][17]:
- NetFlow、sFlow、 IPフロー情報エクスポート(IPFIX)、スイッチドポートアナライザ(SPAN)、リモートスイッチドポートアナライザ(RSPAN)、およびGeneric Routing Encapsulation(GRE)を使用してトンネルされたポートミラーを介した、仮想マシン間の公開された通信
- リンクアグリゲーションによるリンクアグリゲーション管理プロトコル(LACP、IEEE 802.1AX-2008)
- ネットワークパーティショニング用の標準の802.1Q仮想LAN(VLAN)モデルによるトランキングをサポート
- インターネットグループ管理プロトコル(IGMP)のバージョン1、2、3を使用したマルチキャストスヌーピングのサポート
- Shortest Path Bridging Media Access Control(SPBM)のサポート、およびLink Layer Discovery Protocol(LLDP)関連の基本サポート
- Bidirectional Forwarding Detection(BFD)および802.1agリンクモニタリングのサポート
- スパニングツリープロトコル(STP、IEEE 802.1D-1998)および高速スパニングツリープロトコル(RSTP、IEEE 802.1D-2004)のサポート
- さまざまなアプリケーション、ユーザ、またはデータトラフィックフローに対するきめ細かなQoS制御
- 階層的フェアサービスカーブ (HFSC)キューイング規則(qdisc)のサポート
- 仮想マシン(VM)インタフェースレベルでのトラフィックポリシング
- ネットワークインターフェイスコントローラ(NIC)ボンディング、MACソースアドレス、アクティブバックアップ、およびレイヤー4ハッシュによるサーバロードバランシング
- さまざまな仮想化関連の拡張機能を含む、OpenFlowプロトコルのサポート
- 完全なIPv6サポート
- Generic Routing Encapsulation(GRE)、Virtual Extensible LAN(VXLAN)、ステートレストランスポートトンネリング(STT)、Geneve 等の複数のトンネリングプロトコルのサポート、およびインターネットプロトコルセキュリティ(IPsec)レイヤの追加サポート
- C言語およびPythonプログラミング言語用の既存のバインディングを備えたリモート構成プロトコル
- カーネル空間またはユーザ空間にパケット転送エンジンを実装し、カーネル空間を離れることなく転送されたパケットの大部分を処理し、マルチスレッドカーネル空間とユーザ空間コンポーネントを使用することにより、柔軟性を向上させ、パフォーマンスを向上させる[18][19]
- フローキャッシュエンジンを備えたマルチテーブル転送パイプライン
- 転送レイヤーの抽象化により、Open vSwitch を新しいソフトウェアおよびハードウェアプラットフォームに簡単に移植できる
参考
- 分散オーバーレイ仮想イーサネット(DOVE)
- LANスイッチング
- ネットワーク機能仮想化(NFV)
- オーバーレイトランスポート仮想化(OTV)
- ソフトウェア定義ネットワーク(SDN)
脚注
外部リンク
Wikiwand - on
Seamless Wikipedia browsing. On steroids.