os-vif/doc/source/user/plugins/ovs.rst

1.9 KiB

Open vSwitch

The Open vSwitch plugin, vif_plug_ovs, is an os-vif VIF plugin for the Open vSwitch network backend. It is one of three plugins provided as part of os-vif itself, the others being linux-bridge and noop.

Supported VIF Types

The Open vSwitch plugin provides support for the following VIF types:

~os_vif.objects.VIFOpenVSwitch

Configuration where a guest is directly connected an Open vSwitch bridge.

~os_vif.objects.VIFBridge

Configuration where a guest is connected to a Linux bridge via a TAP device, and that bridge is connected to the Open vSwitch bridge. This allows for the use of iptables rules for filtering traffic.

~os_vif.objects.VIFVHostUser

Configuration where a guest exposes a UNIX socket for its control plane. This configuration is used with the DPDK datapath of Open vSwitch__.

__ http://docs.openvswitch.org/en/latest/howto/dpdk/

~os_vif.objects.VIFHostDevice

Configuration where an SR-IOV PCI device VF is passed through to a guest. The hw-tc-offload feature should be enabled on the SR-IOV PF using ethtool:

ethtool -K <PF> hw-tc-offload

This will create a VF representor per VF. The VF representor plays the same role as TAP devices in Para-Virtual (PV) setup. In this case the plug() method connects the VF representor to the OpenVSwitch bridge.

Important

Support for this feature requires Linux Kernel >= 4.8 and Open vSwitch 2.8. These add support for tc-based hardware offloads for SR-IOV VFs and offloading of OVS datapath rules using tc, respectively.

1.5.0

For information on the VIF type objects, refer to /user/vif-types. Note that only the above VIF types are supported by this plugin.