X-Git-Url: http://git.onelab.eu/?p=sliver-openvswitch.git;a=blobdiff_plain;f=README;h=f6d1a19d16494873bf7e2e7f8b02376ff5274e99;hp=8991e4c81276b1a769731fffe4a6de650f57225d;hb=HEAD;hpb=064af42167bf4fc9aaea2702d80ce08074b889c0 diff --git a/README b/README index 8991e4c81..f6d1a19d1 100644 --- a/README +++ b/README @@ -3,72 +3,111 @@ 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, VXLAN, and LISP 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.32 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. -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. +Open vSwitch also provides some tools: - - ovs-vswitchd, a daemon that implements the virtual switch. + * ovs-ofctl, a utility for querying and controlling OpenFlow + switches and controllers. - - ovs-dpctl, a tool for configuring the kernel module and - controlling OpenFlow switches. + * ovs-pki, a utility for creating and managing the public-key + infrastructure for OpenFlow switches. -This distribution includes some additional software as well: + * A patch to tcpdump that enables it to parse OpenFlow messages. - - 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. +What other documentation is available? +-------------------------------------- - - ovs-controller, a simple OpenFlow switch +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: - - ovs-ofctl, a utility for querying and controlling OpenFlow - switches and controllers. + - INSTALL.Debian + - INSTALL.Fedora + - INSTALL.RHEL + - INSTALL.XenServer - - vlog-appctl, a utility that can control Open vSwitch daemons, - adjusting their logging levels among other uses. +To use Open vSwitch... - - ovs-pki, a utility for creating and managing the public-key - infrastructure for OpenFlow switches. + - ...with KVM on Linux, read INSTALL, read INSTALL.KVM. - - A patch to tcpdump that enables it to parse OpenFlow - messages. + - ...with Libvirt, read INSTALL.Libvirt. -For installation instructions, read INSTALL. Each userspace program -is also accompanied by a manpage. + - ...without using a kernel module, read INSTALL.userspace. -Platform support ----------------- +For answers to common questions, read FAQ. -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 learn how to set up SSL support for Open vSwitch, read INSTALL.SSL. -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 about some advanced features of the Open vSwitch software +switch, read the tutorial in tutorial/Tutorial. -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/