]> git.proxmox.com Git - mirror_ovs.git/blame - README.md
datapath-windows: Add WMI to set Hyper-V port "friendly name" from NOVA.
[mirror_ovs.git] / README.md
CommitLineData
d25e2f57
PK
1# Open vSwitch
2
3Build Status:
4-------------
5
6[![Build Status](https://travis-ci.org/openvswitch/ovs.png)](https://travis-ci.org/openvswitch/ovs)
064af421
BP
7
8What is Open vSwitch?
9---------------------
10
e5660bae
KA
11Open vSwitch is a multilayer software switch licensed under the open
12source Apache 2 license. Our goal is to implement a production
13quality switch platform that supports standard management interfaces
c9d3af4e
BP
14and opens the forwarding functions to programmatic extension and
15control.
e5660bae
KA
16
17Open vSwitch is well suited to function as a virtual switch in VM
18environments. In addition to exposing standard control and visibility
19interfaces to the virtual networking layer, it was designed to support
20distribution across multiple physical servers. Open vSwitch supports
21multiple Linux-based virtualization technologies including
22Xen/XenServer, KVM, and VirtualBox.
23
24The bulk of the code is written in platform-independent C and is
25easily ported to other environments. The current release of Open
26vSwitch supports the following features:
27
d25e2f57
PK
28* Standard 802.1Q VLAN model with trunk and access ports
29* NIC bonding with or without LACP on upstream switch
30* NetFlow, sFlow(R), and mirroring for increased visibility
31* QoS (Quality of Service) configuration, plus policing
32* Geneve, GRE, GRE over IPSEC, VXLAN, and LISP tunneling
33* 802.1ag connectivity fault management
34* OpenFlow 1.0 plus numerous extensions
35* Transactional configuration database with C and Python bindings
36* High-performance forwarding using a Linux kernel module
064af421 37
37418c86 38The included Linux kernel module supports Linux 2.6.32 and up, with
c9d3af4e 39testing focused on 2.6.32 with Centos and Xen patches. Open vSwitch
c434706a
BP
40also has special support for Citrix XenServer and Red Hat Enterprise
41Linux hosts.
d377243b
BP
42
43Open vSwitch can also operate, at a cost in performance, entirely in
44userspace, without assistance from a kernel module. This userspace
45implementation should be easier to port than the kernel-based switch.
46It is considered experimental.
4b11d5e8 47
064af421
BP
48What's here?
49------------
50
4b11d5e8
BP
51The main components of this distribution are:
52
d25e2f57
PK
53* ovs-vswitchd, a daemon that implements the switch, along with
54 a companion Linux kernel module for flow-based switching.
55* ovsdb-server, a lightweight database server that ovs-vswitchd
56 queries to obtain its configuration.
57* ovs-dpctl, a tool for configuring the switch kernel module.
58* Scripts and specs for building RPMs for Citrix XenServer and Red
59 Hat Enterprise Linux. The XenServer RPMs allow Open vSwitch to
60 be installed on a Citrix XenServer host as a drop-in replacement
61 for its switch, with additional functionality.
62* ovs-vsctl, a utility for querying and updating the configuration
63 of ovs-vswitchd.
64* ovs-appctl, a utility that sends commands to running Open
3b135da3 65 vSwitch daemons.
064af421 66
045b2e5c 67Open vSwitch also provides some tools:
064af421 68
d25e2f57
PK
69* ovs-ofctl, a utility for querying and controlling OpenFlow
70 switches and controllers.
71* ovs-pki, a utility for creating and managing the public-key
72 infrastructure for OpenFlow switches.
73* ovs-testcontroller, a simple OpenFlow controller that may be useful
74 for testing (though not for production).
75* A patch to tcpdump that enables it to parse OpenFlow messages.
064af421 76
4b11d5e8
BP
77What other documentation is available?
78--------------------------------------
064af421 79
6494ea4c 80To install Open vSwitch on a regular Linux or FreeBSD host, please
9feb1017 81read [INSTALL.md]. For specifics around installation on a specific
6494ea4c 82platform, please see one of these files:
064af421 83
9feb1017
TG
84- [INSTALL.Debian.md]
85- [INSTALL.Fedora.md]
86- [INSTALL.RHEL.md]
87- [INSTALL.XenServer.md]
c483d489 88
6494ea4c 89To use Open vSwitch...
5fca1acd 90
9feb1017 91- ...with Docker on Linux, read [INSTALL.Docker.md]
ec8f0f0c 92
9feb1017 93- ...with KVM on Linux, read [INSTALL.md], read [INSTALL.KVM.md]
064af421 94
9feb1017 95- ...with Libvirt, read [INSTALL.Libvirt.md].
c434706a 96
9feb1017 97- ...without using a kernel module, read [INSTALL.userspace.md].
8a984481 98
9feb1017 99For answers to common questions, read [FAQ.md].
d377243b 100
9feb1017 101To learn how to set up SSL support for Open vSwitch, read [INSTALL.SSL.md].
064af421 102
eeecce05 103To learn about some advanced features of the Open vSwitch software
9feb1017 104switch, read the [tutorial/Tutorial.md].
eeecce05 105
4b11d5e8
BP
106Each Open vSwitch userspace program is accompanied by a manpage. Many
107of the manpages are customized to your configuration as part of the
108build process, so we recommend building Open vSwitch before reading
109the manpages.
064af421 110
d25e2f57 111Contact
064af421
BP
112-------
113
37ea6436 114bugs@openvswitch.org
9feb1017
TG
115
116[INSTALL.md]:INSTALL.md
117[INSTALL.Debian.md]:INSTALL.Debian.md
118[INSTALL.Docker.md]:INSTALL.Docker.md
119[INSTALL.Fedora.md]:INSTALL.Fedora.md
120[INSTALL.KVM.md]:INSTALL.KVM.md
121[INSTALL.Libvirt.md]:INSTALL.Libvirt.md
122[INSTALL.RHEL.md]:INSTALL.RHEL.md
123[INSTALL.SSL.md]:INSTALL.SSL.md
124[INSTALL.userspace.md]:INSTALL.userspace.md
125[INSTALL.XenServer.md]:INSTALL.XenServer.md
126[FAQ.md]:FAQ.md
127[tutorial/Tutorial.md]:tutorial/Tutorial.md