wiki:GEC16Agenda/OpenFlow/Instructions/Execute

Version 22 (modified by nriga@bbn.com, 11 years ago) (diff)

--

Configure and Initialize Services: Configure your OpenFlow switch

Although OVS is installed and initialized on the host that is meant to act as a software switch, it has not been configured yet. There are two main things that need to be configured : create your software switch with the interfaces as ports and point the switch to an OpenFlow controller.

In order to configure our switch, we first need to login to the host that will be used as an OpenFlow switch.

Login to OVS host

Login information for a VM
  1. Return to the Slice page. Press the Details button in the row of the slice table for Utah ProtoGENI.
  2. Click on the ssh link. If you have installed FireSSH a new tab will open up.
  3. In the window that will pop up :
    • in the password field type in your passphrase
    • in the private key, browse to the file that has your private key
    • Press OK
  4. If you don't have FireSSH installed, open a new terminal window. Copy the command to the right of Login into that terminal window.
  5. You are now logged in to the OVS host.

1. Create the Software Switch

Now that you are logged in, we need first to initialize OVS:

  • Start the OVS database:
    sudo ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock \
                         --remote=db:Open_vSwitch,manager_options \
                         --private-key=db:SSL,private_key \
                         --certificate=db:SSL,certificate \
                         --bootstrap-ca-cert=db:SSL,ca_cert \
                         --pidfile --detach
    
  • Initialize OVS:
    sudo ovs-vsctl --no-wait init
    
    sudo ovs-vswitchd --pidfile --detach
    

Ignore the warnings you are going to see. Now that OVS is running it is time to create our software switch. The software switch will be a bridge, in which we are going to add all the interfaces we want to be part of the switch.

Login information for a VM
  1. Create the ethernet bridge
    • sudo ovs-vsctl add-br br0
    • sudo ovs-vsctl set bridge br0 datapath_type=netdev
  2. List all the interfaces of the node
    ifconfig.
  3. Be careful not to bring down eth0. This is your control interface, if you bring that interface down you won't be able to login to your host!. For all interfaces other than eth0 and l0, bring the interfaces down: sudo ifconfig ethX down

Execute Experiment

Use a Learning Switch Controller

Run a port deflection Controller

Run a server deflection Controller