]>
Commit | Line | Data |
---|---|---|
064af421 BP |
1 | Open vSwitch <http://openvswitch.org> |
2 | ||
3 | What is Open vSwitch? | |
4 | --------------------- | |
5 | ||
e5660bae KA |
6 | Open vSwitch is a multilayer software switch licensed under the open |
7 | source Apache 2 license. Our goal is to implement a production | |
8 | quality switch platform that supports standard management interfaces | |
9 | (e.g. NetFlow, RSPAN, ERSPAN, IOS-like CLI), and opens the forwarding | |
10 | functions to programmatic extension and control. | |
11 | ||
12 | Open vSwitch is well suited to function as a virtual switch in VM | |
13 | environments. In addition to exposing standard control and visibility | |
14 | interfaces to the virtual networking layer, it was designed to support | |
15 | distribution across multiple physical servers. Open vSwitch supports | |
16 | multiple Linux-based virtualization technologies including | |
17 | Xen/XenServer, KVM, and VirtualBox. | |
18 | ||
19 | The bulk of the code is written in platform-independent C and is | |
20 | easily ported to other environments. The current release of Open | |
21 | vSwitch supports the following features: | |
22 | ||
23 | * Visibility into inter-VM communication via NetFlow, SPAN, and RSPAN | |
24 | * Standard 802.1Q VLAN model with trunking | |
25 | * Per VM policing | |
26 | * NIC bonding with source-MAC load balancing | |
27 | * Kernel-based forwarding | |
28 | * Support for OpenFlow | |
29 | * Compatibility layer for the Linux bridging code | |
064af421 | 30 | |
d377243b BP |
31 | The included Linux kernel module supports Linux 2.6.15 and up, with |
32 | testing focused on 2.6.18 with Centos and Xen patches and version | |
33 | 2.6.26 from kernel.org. Open vSwitch also has special support for | |
34 | Citrix XenServer hosts. | |
35 | ||
36 | Open vSwitch can also operate, at a cost in performance, entirely in | |
37 | userspace, without assistance from a kernel module. This userspace | |
38 | implementation should be easier to port than the kernel-based switch. | |
39 | It is considered experimental. | |
4b11d5e8 | 40 | |
064af421 BP |
41 | What's here? |
42 | ------------ | |
43 | ||
4b11d5e8 BP |
44 | The main components of this distribution are: |
45 | ||
f30f26be JP |
46 | * ovs-vswitchd, a daemon that implements the switch, along with |
47 | a companion Linux kernel module for flow-based switching. | |
064af421 | 48 | |
f30f26be JP |
49 | * ovs-brcompatd, a daemon that allows ovs-vswitchd to act as a |
50 | drop-in replacement for the Linux bridge in many environments, | |
51 | along with a companion Linux kernel module to intercept bridge | |
52 | ioctls. | |
064af421 | 53 | |
f30f26be | 54 | * ovs-dpctl, a tool for configuring the switch kernel module. |
064af421 | 55 | |
f30f26be JP |
56 | * Scripts and specs for building RPMs that allow Open vSwitch |
57 | to be installed on a Citrix XenServer host as a drop-in | |
58 | replacement for its switch, with additional functionality. | |
4b11d5e8 | 59 | |
3b135da3 BP |
60 | * ovs-vsctl, a utility for querying and updating the configuration |
61 | of ovs-vswitchd. | |
62 | ||
63 | * ovs-appctl, a utility that sends commands to running Open | |
64 | vSwitch daemons. | |
064af421 | 65 | |
4b11d5e8 BP |
66 | Open vSwitch also provides an OpenFlow implementation and tools for |
67 | those interested in OpenFlow but not additional Open vSwitch features: | |
064af421 | 68 | |
8cd4882f BP |
69 | * ovs-openflowd, a program that implements a simple OpenFlow |
70 | switch (without the special features provided by ovs-vswitchd) | |
71 | using the same kernel module as ovs-vswitchd. | |
064af421 | 72 | |
f30f26be | 73 | * ovs-controller, a simple OpenFlow controller. |
064af421 | 74 | |
f30f26be JP |
75 | * ovs-ofctl, a utility for querying and controlling OpenFlow |
76 | switches and controllers. | |
064af421 | 77 | |
f30f26be JP |
78 | * ovs-pki, a utility for creating and managing the public-key |
79 | infrastructure for OpenFlow switches. | |
064af421 | 80 | |
f30f26be | 81 | * A patch to tcpdump that enables it to parse OpenFlow messages. |
064af421 | 82 | |
4b11d5e8 BP |
83 | What other documentation is available? |
84 | -------------------------------------- | |
064af421 | 85 | |
4b11d5e8 | 86 | To install Open vSwitch on a regular Linux machine, read INSTALL.Linux. |
064af421 | 87 | |
5fca1acd BP |
88 | To use Open vSwitch as a drop-in replacement for the Linux bridge, |
89 | read INSTALL.bridge. | |
90 | ||
4b11d5e8 BP |
91 | To build RPMs for installing Open vSwitch on a Citrix XenServer host |
92 | or resource pool, read INSTALL.XenServer. | |
064af421 | 93 | |
d377243b BP |
94 | To install Open vSwitch without using a kernel module, read |
95 | INSTALL.userspace. | |
96 | ||
4b11d5e8 | 97 | To learn set up SSL support for Open vSwitch, read INSTALL.SSL. |
064af421 | 98 | |
4b11d5e8 BP |
99 | Each Open vSwitch userspace program is accompanied by a manpage. Many |
100 | of the manpages are customized to your configuration as part of the | |
101 | build process, so we recommend building Open vSwitch before reading | |
102 | the manpages. | |
064af421 BP |
103 | |
104 | Contact | |
105 | ------- | |
106 | ||
37ea6436 | 107 | bugs@openvswitch.org |
064af421 | 108 | http://openvswitch.org/ |