What are the supported versions and configuration requirements for OpenFlow and MiniNet in an SDN Controller environment?
The following will describe OpenFlow connectivity between mininet (running on Ubuntu) and the HP SDN Controller.
Versions can be checked as follows:
ovs-vsctl (Open vSwitch) 2.0.1
Compiled Feb 23 2014 14:42:32
If the mininet version being used is before 1.10, it should be removed and the latest should be installed.
In order to remove all versions of mininet and OVS, do the following:
$sudo rm -rf /usr/local/bin/mn /usr/local/bin/mnexec /usr/local/lib/python*/*/*mininet*
$sudo rm –rf /usr/local/bin/ovs-* /usr/local/sbin/ovs-*
Then install Mininet by entering only one of the following commands:
Mininet 2.1.0 on Ubuntu 13.10: $sudo apt-get install mininet
Mininet 2.0.0 on Ubuntu 13.04: $sudo apt-get install mininet
Mininet 2.0.0 on Ubuntu 12.10: $sudo apt-get install mininet/quantal-backports
Mininet 2.0.0 on Ubuntu 12.04: $sudo apt-get install mininet/precise-backports
[This will also install the latest OVS (2.0.1) ]
mininet supports the following format (as an example):
$sudo mn --controller remote,ip=22.214.171.124 --switch ovsk,protocols=OpenFlow13
This is misleading because mininet will perform ovsk (Open Virtual Switch Kernel) by default.
And: the “protocols=OpenFlow13” will not have any effect.
Immediately after the mininet command is entered, another cli session can list details about the switch:
$sudo ovs-vsctl list bridge s1 | grep protocols
(you can also enter in a different switch name if you started mininet with multiple switches)
The following should appear:
protocols : 
This shows that the protocols can be modified, and since there are no protocols listed, it is using Open Flow 1.0.
The switch will appear in the SDN Controller OpenFlow Monitor as OpenFlow version 1.0.
Open Flow 1.3 must be added to the list of protocols.
The following are examples of what can be entered to achieve this:
The protocols parameter is case-sensitive. It does not matter if the double quotes surround the list or not.
It is easiest to simply enter the following:
sudo ovs-vsctl set bridge s1 protocols=OpenFlow13
Once the ovs-vsctl command is entered, check again:
sudo ovs-vsctl list bridge s1 | grep protocols
protocols : ["OpenFlow13"]
By entering the ovs-vsctl command to set the switch to OpenFlow13, it causes the switch to close its connection with the Controller and establish a new one.
Now the switch should appear in the SDN Controller OpenFlow Monitor as OpenFlow version 1.3.