[[PageOutline]] = Open vSwitch (OVS) Switch = This page captures how to: 1. Setup an OVS openvswitch as a service, 2. Or use an OVS Switch from a fully configured Custom Image 3. Configure the OVS switch from either set up to add !OpenFlow. The sections below capture ho == 1. Set up an OVS openvswitch as a service == To set up the OVS openvswitch as a service on Ubuntu 16, execute the following: 1. Request your topology via omni or GENI Portal. Current default image version is Ubuntu 16, which will change over time. 2. On the node you plan to use as the switch run the following: {{{ sudo apt-get install openvswitch-switch -y }}} 3. Once OVS is installed, a service script is available on your node, {{{/etc/systemd/system/multi-user.target.wants/openvswitch-switch.service}}}. This systemd script allows you to stop and start the openvswitch as a service. Note that the openvswitch service is automatically started for you when installing the software, to check its status: {{{ sudo systemctl status openvswitch-switch }}} 4. A script [https://raw.githubusercontent.com/GENI-NSF/geni-support/master/Utilities/geniovs.sh geniovs.sh] is available to create an oVS bridge and add the dataplane interfaces: {{{ wget https://raw.githubusercontent.com/GENI-NSF/geni-support/master/Utilities/geniovs.sh sh ./geniovs.sh }}} Your OVS switch is now ready to use! == 2. Use OVS Switch from Custom Image == If you would like to skip the 4 steps above, and simply load a custom image that has the OVS service running with all dataplane interface on its bridge, then you can use the custom image below: {{{ }}} == 3. Enable OpenFlow for OVS switch == If you have the openvswitch service running and would like to add !OpenFlow to the mix, simply execute the following: {{{ sudo ovs-vsctl set-fail-mode br0 secure sudo ovs-vsctl set-controller br0 tcp::6633 }}}