]>
Commit | Line | Data |
---|---|---|
11e02906 SF |
1 | .. |
2 | Licensed under the Apache License, Version 2.0 (the "License"); you may | |
3 | not use this file except in compliance with the License. You may obtain | |
4 | a copy of the License at | |
5 | ||
6 | http://www.apache.org/licenses/LICENSE-2.0 | |
7 | ||
8 | Unless required by applicable law or agreed to in writing, software | |
9 | distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |
10 | WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |
11 | License for the specific language governing permissions and limitations | |
12 | under the License. | |
13 | ||
14 | Convention for heading levels in Open vSwitch documentation: | |
15 | ||
16 | ======= Heading 0 (reserved for the title in a document) | |
17 | ------- Heading 1 | |
18 | ~~~~~~~ Heading 2 | |
19 | +++++++ Heading 3 | |
20 | ''''''' Heading 4 | |
21 | ||
22 | Avoid deeper levels because they do not render well. | |
23 | ||
24 | ======= | |
25 | General | |
26 | ======= | |
27 | ||
28 | Q: What is Open vSwitch? | |
29 | ||
30 | A: Open vSwitch is a production quality open source software switch | |
31 | designed to be used as a vswitch in virtualized server environments. A | |
32 | vswitch forwards traffic between different VMs on the same physical host | |
33 | and also forwards traffic between VMs and the physical network. Open | |
34 | vSwitch supports standard management interfaces (e.g. sFlow, NetFlow, | |
35 | IPFIX, RSPAN, CLI), and is open to programmatic extension and control using | |
36 | OpenFlow and the OVSDB management protocol. | |
37 | ||
38 | Open vSwitch as designed to be compatible with modern switching chipsets. | |
39 | This means that it can be ported to existing high-fanout switches allowing | |
40 | the same flexible control of the physical infrastructure as the virtual | |
41 | infrastructure. It also means that Open vSwitch will be able to take | |
42 | advantage of on-NIC switching chipsets as their functionality matures. | |
43 | ||
44 | Q: What virtualization platforms can use Open vSwitch? | |
45 | ||
46 | A: Open vSwitch can currently run on any Linux-based virtualization | |
47 | platform (kernel 3.10 and newer), including: KVM, VirtualBox, Xen, Xen | |
48 | Cloud Platform, XenServer. As of Linux 3.3 it is part of the mainline | |
49 | kernel. The bulk of the code is written in platform- independent C and is | |
50 | easily ported to other environments. We welcome inquires about integrating | |
51 | Open vSwitch with other virtualization platforms. | |
52 | ||
53 | Q: How can I try Open vSwitch? | |
54 | ||
55 | A: The Open vSwitch source code can be built on a Linux system. You can | |
56 | build and experiment with Open vSwitch on any Linux machine. Packages for | |
57 | various Linux distributions are available on many platforms, including: | |
58 | Debian, Ubuntu, Fedora. | |
59 | ||
60 | You may also download and run a virtualization platform that already has | |
61 | Open vSwitch integrated. For example, download a recent ISO for XenServer | |
62 | or Xen Cloud Platform. Be aware that the version integrated with a | |
63 | particular platform may not be the most recent Open vSwitch release. | |
64 | ||
65 | Q: Does Open vSwitch only work on Linux? | |
66 | ||
67 | A: No, Open vSwitch has been ported to a number of different operating | |
68 | systems and hardware platforms. Most of the development work occurs on | |
69 | Linux, but the code should be portable to any POSIX system. We've seen | |
70 | Open vSwitch ported to a number of different platforms, including FreeBSD, | |
71 | Windows, and even non-POSIX embedded systems. | |
72 | ||
73 | By definition, the Open vSwitch Linux kernel module only works on Linux and | |
74 | will provide the highest performance. However, a userspace datapath is | |
75 | available that should be very portable. | |
76 | ||
77 | Q: What's involved with porting Open vSwitch to a new platform or switching ASIC? | |
78 | ||
5813d810 SF |
79 | A: :doc:`/topics/porting` describes how one would go about porting Open |
80 | vSwitch to a new operating system or hardware platform. | |
11e02906 SF |
81 | |
82 | Q: Why would I use Open vSwitch instead of the Linux bridge? | |
83 | ||
84 | A: Open vSwitch is specially designed to make it easier to manage VM | |
85 | network configuration and monitor state spread across many physical hosts | |
5813d810 SF |
86 | in dynamic virtualized environments. Refer to :doc:`/intro/why-ovs` for a |
87 | more detailed description of how Open vSwitch relates to the Linux Bridge. | |
11e02906 SF |
88 | |
89 | Q: How is Open vSwitch related to distributed virtual switches like the VMware | |
90 | vNetwork distributed switch or the Cisco Nexus 1000V? | |
91 | ||
92 | A: Distributed vswitch applications (e.g., VMware vNetwork distributed | |
93 | switch, Cisco Nexus 1000V) provide a centralized way to configure and | |
94 | monitor the network state of VMs that are spread across many physical | |
95 | hosts. Open vSwitch is not a distributed vswitch itself, rather it runs on | |
96 | each physical host and supports remote management in a way that makes it | |
97 | easier for developers of virtualization/cloud management platforms to offer | |
98 | distributed vswitch capabilities. | |
99 | ||
100 | To aid in distribution, Open vSwitch provides two open protocols that are | |
101 | specially designed for remote management in virtualized network | |
102 | environments: OpenFlow, which exposes flow-based forwarding state, and the | |
103 | OVSDB management protocol, which exposes switch port state. In addition to | |
104 | the switch implementation itself, Open vSwitch includes tools (ovs-ofctl, | |
105 | ovs-vsctl) that developers can script and extend to provide distributed | |
106 | vswitch capabilities that are closely integrated with their virtualization | |
107 | management platform. | |
108 | ||
109 | Q: Why doesn't Open vSwitch support distribution? | |
110 | ||
111 | A: Open vSwitch is intended to be a useful component for building flexible | |
112 | network infrastructure. There are many different approaches to distribution | |
113 | which balance trade-offs between simplicity, scalability, hardware | |
114 | compatibility, convergence times, logical forwarding model, etc. The goal | |
115 | of Open vSwitch is to be able to support all as a primitive building block | |
116 | rather than choose a particular point in the distributed design space. | |
117 | ||
118 | Q: How can I contribute to the Open vSwitch Community? | |
119 | ||
120 | A: You can start by joining the mailing lists and helping to answer | |
121 | questions. You can also suggest improvements to documentation. If you | |
5813d810 SF |
122 | have a feature or bug you would like to work on, send a mail to one of the |
123 | :doc:`mailing lists </internals/mailing-lists>`. | |
11e02906 SF |
124 | |
125 | Q: Why can I no longer connect to my OpenFlow controller or OVSDB manager? | |
126 | ||
127 | A: Starting in OVS 2.4, we switched the default ports to the IANA-specified | |
128 | port numbers for OpenFlow (6633->6653) and OVSDB (6632->6640). We | |
129 | recommend using these port numbers, but if you cannot, all the programs | |
130 | allow overriding the default port. See the appropriate man page. |