X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=README;h=dc5f05e2ca682613e248048ce274c9fc64f20d59;hb=0f5293d8a5cadcc2111e38fd79f3d39f5c83cebc;hp=8991e4c81276b1a769731fffe4a6de650f57225d;hpb=064af42167bf4fc9aaea2702d80ce08074b889c0;p=sliver-openvswitch.git diff --git a/README b/README index 8991e4c81..dc5f05e2c 100644 --- a/README +++ b/README @@ -3,72 +3,113 @@ 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), and mirroring for increased visibility + * QoS (Quality of Service) configuration, plus policing + * GRE, GRE over IPSEC, CAPWAP, and VXLAN tunneling + * 802.1ag connectivity fault management + * OpenFlow 1.0 plus numerous extensions + * Transactional configuration database with C and Python bindings + * 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 and Red Hat Enterprise +Linux 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-dpctl, a tool for configuring the switch kernel module. -What's here? ------------- + * Scripts and specs for building RPMs for Citrix XenServer and Red + Hat Enterprise Linux. The XenServer RPMs 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. + + * ovs-appctl, a utility that sends commands to running Open + vSwitch daemons. -The most important components of this distribution are: + * ovsdbmonitor, a GUI tool for remotely viewing OVS databases and + OpenFlow flow tables. - - A Linux kernel module for flow-based switching, in the - datapath directory. +Open vSwitch also provides some tools: - - ovs-vswitchd, a daemon that implements the virtual switch. + * ovs-controller, a simple OpenFlow controller. - - ovs-dpctl, a tool for configuring the kernel module and - controlling OpenFlow switches. + * ovs-ofctl, a utility for querying and controlling OpenFlow + switches and controllers. -This distribution includes some additional software as well: + * ovs-pki, a utility for creating and managing the public-key + infrastructure for OpenFlow switches. - - 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. + * A patch to tcpdump that enables it to parse OpenFlow messages. - - ovs-controller, a simple OpenFlow switch +What other documentation is available? +-------------------------------------- - - ovs-ofctl, a utility for querying and controlling OpenFlow - switches and controllers. +To install Open vSwitch on a regular Linux or FreeBSD host, please +read INSTALL. For specifics around installation on a specific +platform, please see one of these files: - - vlog-appctl, a utility that can control Open vSwitch daemons, - adjusting their logging levels among other uses. + - INSTALL.Debian + - INSTALL.Fedora + - INSTALL.RHEL + - INSTALL.XenServer - - ovs-pki, a utility for creating and managing the public-key - infrastructure for OpenFlow switches. +To use Open vSwitch... - - A patch to tcpdump that enables it to parse OpenFlow - messages. + - ...with KVM on Linux, read INSTALL, read INSTALL.KVM. -For installation instructions, read INSTALL. Each userspace program -is also accompanied by a manpage. + - ...with Libvirt, read INSTALL.Libvirt. -Platform support ----------------- + - ...without using a kernel module, read INSTALL.userspace. -Our primary test environment is Debian GNU/Linux. Ports to other -platforms are welcome. Please contact us with portability-related bug -reports or patches. +For answers to common questions, read FAQ. -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/