Using Open vSwitch as a Simple OpenFlow Switch
==============================================
-Open vSwitch uses OpenFlow as its preferred method of remote flow table
-configuration. This is the simplest method of using it with an OpenFlow
-controller. All that is required is to follow the instructions in
-INSTALL.Linux and add the bridge.<name>.controller set of parameters to the
-ovs-vswitchd(8) configuration file as described in ovs-vswitchd.conf(5).
-We recommend using OpenFlow in this manner. However, it is also possible to
-use Open vSwitch as a simple OpenFlow switch like that provided by the
-OpenFlow reference implementation [1]. The remainder of this file describes
-how to user it in that manner.
+Open vSwitch uses OpenFlow as its preferred method of remote flow
+table configuration. This is the simplest method of using it with an
+OpenFlow controller. The ovs-vsctl "set-controller" command can also
+be used in conjunction with ovs-vswitchd to set the controller for one
+or more bridges. We recommend using OpenFlow in this manner and in this
+case you should not run ovs-openflowd. Directions for setting up
+ovs-vswitchd can be found in INSTALL.Linux.
+
+However, it is also possible to use Open vSwitch as a simple OpenFlow
+switch like that provided by the OpenFlow reference implementation
+[1]. The remainder of this file describes how to use it in that
+manner.
What is OpenFlow?
-----------------
% insmod datapath/linux-2.6/openvswitch_mod.ko
- This kernel module cannot be loaded if the Linux bridge module is
- already loaded. Thus, you may need to remove any existing bridges
- and unload the bridge module with "rmmod bridge" before you can do
- this.
+ If your Linux kernel is earlier than 2.6.36, this kernel module
+ cannot be loaded if the Linux bridge module is already loaded.
+ Thus, you may need to remove any existing bridges and unload the
+ bridge module with "rmmod bridge" before you can do this.
3. Create a datapath instance. The command below creates a datapath
identified as dp0 (see ovs-dpctl(8) for more detailed usage
contact the DHCP server until the secure channel has
started. The address will be obtained in step 7.
- - If you are using in-band control with controller discovery, no
- configuration is required at this point. You may proceed to
- the next step.
-
6. Run ovs-openflowd to start the secure channel connecting the datapath to
a remote controller. If the controller is running on host
192.168.1.2 port 6633 (the default port), the ovs-openflowd invocation
# ovs-openflowd dp0 tcp:192.168.1.2
- - If you are using in-band control with controller discovery, omit
- the second argument to the ovs-openflowd command.
-
- If you are using out-of-band control, add --out-of-band to the
command line.
in an insecure manner. Please see INSTALL.SSL for a description of
how to connect securely using SSL.
-7. If you are using in-band control with manual configuration, and the
- switch obtains its IP address dynamically, then you may now obtain
- the switch's IP address, e.g. by invoking a DHCP client. The
- secure channel will only be able to connect to the controller after
- an IP address has been obtained.
+7. If you are using in-band control, and the switch obtains its IP address
+ dynamically, then you may now obtain the switch's IP address, e.g. by
+ invoking a DHCP client. The secure channel will only be able to connect
+ to the controller after an IP address has been obtained.
8. The secure channel should connect to the controller within a few
- seconds. It may take a little longer if controller discovery is in
- use, because the switch must then also obtain its own IP address
- and the controller's location via DHCP.
+ seconds.
References
----------