X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=README;h=8972aec09a2570d78a7a93ad942a67a4e4e3137c;hb=refs%2Fheads%2Fbranch-1.1;hp=8991e4c81276b1a769731fffe4a6de650f57225d;hpb=064af42167bf4fc9aaea2702d80ce08074b889c0;p=sliver-openvswitch.git diff --git a/README b/README index 8991e4c81..8972aec09 100644 --- a/README +++ b/README @@ -3,72 +3,117 @@ What is Open vSwitch? --------------------- -Open vSwitch is an Ethernet switch for virtual servers with the -following features: +Open vSwitch is a multilayer software switch licensed under the open +source Apache 2 license. Our goal is to implement a production +quality switch platform that supports standard management interfaces +and opens the forwarding functions to programmatic extension and +control. + +Open vSwitch is well suited to function as a virtual switch in VM +environments. In addition to exposing standard control and visibility +interfaces to the virtual networking layer, it was designed to support +distribution across multiple physical servers. Open vSwitch supports +multiple Linux-based virtualization technologies including +Xen/XenServer, KVM, and VirtualBox. + +The bulk of the code is written in platform-independent C and is +easily ported to other environments. The current release of Open +vSwitch supports the following features: + + * Standard 802.1Q VLAN model with trunk and access ports + * NIC bonding with or without LACP on upstream switch + * NetFlow, sFlow(R), SPAN, RSPAN, and ERSPAN for increased visibility + * QoS (Quality of Service) configuration, plus policing + * GRE, GRE over IPSEC, and CAPWAP tunneling + * 802.1ag connectivity fault management + * OpenFlow 1.0 plus numerous extensions + * Transactional configuration database with C and Python bindings + * Compatibility layer for Linux bridging code + * High-performance forwarding using a Linux kernel module + +The included Linux kernel module supports Linux 2.6.18 and up, with +testing focused on 2.6.32 with Centos and Xen patches. Open vSwitch +also has special support for Citrix XenServer hosts. + +Open vSwitch can also operate, at a cost in performance, entirely in +userspace, without assistance from a kernel module. This userspace +implementation should be easier to port than the kernel-based switch. +It is considered experimental. - * NIC bonding with automatic fail-over and source MAC-based TX - load balancing ("SLB"). +What's here? +------------ - * 802.1Q VLAN support. +The main components of this distribution are: - * Port mirroring, with optional VLAN tagging. + * ovs-vswitchd, a daemon that implements the switch, along with + a companion Linux kernel module for flow-based switching. - * NetFlow v5 flow logging. + * ovsdb-server, a lightweight database server that ovs-vswitchd + queries to obtain its configuration. - * Connectivity to an external OpenFlow controller, such as - NOX. + * ovs-brcompatd, a daemon that allows ovs-vswitchd to act as a + drop-in replacement for the Linux bridge in many environments, + along with a companion Linux kernel module to intercept bridge + ioctls. -What's here? ------------- + * ovs-dpctl, a tool for configuring the switch kernel module. + + * Scripts and specs for building RPMs that allow Open vSwitch + to be installed on a Citrix XenServer host as a drop-in + replacement for its switch, with additional functionality. + + * ovs-vsctl, a utility for querying and updating the configuration + of ovs-vswitchd. -The most important components of this distribution are: + * ovs-appctl, a utility that sends commands to running Open + vSwitch daemons. - - A Linux kernel module for flow-based switching, in the - datapath directory. + * ovsdbmonitor, a GUI tool for remotely viewing OVS databases and + OpenFlow flow tables. - - ovs-vswitchd, a daemon that implements the virtual switch. +Open vSwitch also provides an OpenFlow implementation and tools for +those interested in OpenFlow but not additional Open vSwitch features: - - ovs-dpctl, a tool for configuring the kernel module and - controlling OpenFlow switches. + * ovs-openflowd, an alternative to ovs-vswitchd that implements a + simple OpenFlow switch, without the special features provided by + ovs-vswitchd. -This distribution includes some additional software as well: + * ovs-controller, a simple OpenFlow controller. - - secchan, a program that implements a simple OpenFlow switch - (without the special features provided by ovs-vswitchd) using - the same kernel module as ovs-vswitchd. + * ovs-ofctl, a utility for querying and controlling OpenFlow + switches and controllers. - - ovs-controller, a simple OpenFlow switch + * ovs-pki, a utility for creating and managing the public-key + infrastructure for OpenFlow switches. - - ovs-ofctl, a utility for querying and controlling OpenFlow - switches and controllers. + * A patch to tcpdump that enables it to parse OpenFlow messages. - - vlog-appctl, a utility that can control Open vSwitch daemons, - adjusting their logging levels among other uses. +What other documentation is available? +-------------------------------------- - - ovs-pki, a utility for creating and managing the public-key - infrastructure for OpenFlow switches. +To install Open vSwitch on a regular Linux machine, read INSTALL.Linux. - - A patch to tcpdump that enables it to parse OpenFlow - messages. +To use Open vSwitch as a drop-in replacement for the Linux bridge, +read INSTALL.bridge. -For installation instructions, read INSTALL. Each userspace program -is also accompanied by a manpage. +To build RPMs for installing Open vSwitch on a Citrix XenServer host +or resource pool, read INSTALL.XenServer. -Platform support ----------------- +To use Open vSwitch with KVM on Linux, read INSTALL.Linux, then +INSTALL.KVM. -Our primary test environment is Debian GNU/Linux. Ports to other -platforms are welcome. Please contact us with portability-related bug -reports or patches. +To install Open vSwitch without using a kernel module, read +INSTALL.userspace. -The testing of the kernel module has focused on version 2.6.18 from -Xen and version 2.6.26 from kernel.org. Linux 2.6 releases from -2.6.15 onward should also work. +To learn how to set up SSL support for Open vSwitch, read INSTALL.SSL. -GCC is the expected compiler. +Each Open vSwitch userspace program is accompanied by a manpage. Many +of the manpages are customized to your configuration as part of the +build process, so we recommend building Open vSwitch before reading +the manpages. Contact ------- -ovs-bugs@openvswitch.org +bugs@openvswitch.org http://openvswitch.org/