This software has the role of establishing flows in a Mininet emulated network, with the help of the Floodlight controller. In order to get a working example follow these steps: 1 - Download and install VirtualBox from https://www.virtualbox.org/wiki/Downloads 2 - Download the VirtualBox appliance from http://webdav.upm.ro/OptimalFlowDemo.ova File size is 2GB. 3 - Open VirtualBox, File -> Import Appliance..., browse to the downloaded appliance, click Next, then Import. 4 - Once importing is done in VirtualBox, click the imported appliance, then Settings -> Network, check Enable Network Adapter, on the right of "Attached to:" select Bridget Adapter, click ok, start the virtual machine. Credentials are the same for both username and password: optimalflow 5 - connect to the machine with SSH, in case of windows use PuTTY, download link for PuTTY: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 6 - After opening an SSH connection, type: sudo su password is optimalflow change directory to OptimalFlowSingleDomaingExperiment execute the file:run_floodlight.sh do not close the SSH connection 7 - Open a second SSH connection, type: sudo su password is optimalflow change directory to OptimalFlowSingleDomaingExperiment execute the file:oned_controllers.py do not close the SSH connection 8 - Run the setup for this application located in NetworkConfigurator Setup folder. You need the .NET framework, probably the newest version. 9 - Start the application, either by shortcut created on the desktop, or from the folder where you installed it. Click Open -> XML, browse to the Sample files folder and select the SingleDomainConfiguration.xml file. 10 -Click View -> All Flows, to view all the configured flows. If you want to, remove them all. 11 -In the application, to establish a flow between two hosts, hold down CTRL, all hosts should have a thicker border, if not, click once anywhere near a host, so that the area receives focus. While holding CTRL, click on two hosts, a window pops up where you can set the protocol, whether or not the flow is bidirectional and throughput. For your information, all links have a bandwidth of 100MB/s, you can change this by right clicking a link, then Edit. 12 -After setting the desired flows, get the IP address of your VM, it's the one used for SSH. In the Network Configurator application menu, click Flows and there type http://192.168.0.102:8080 Replace the IP address with the one of your VM. 13 -Click Push Flows, a dialog box will pop up to notify you about the result of the operation. 14 -Go into the second SSH connection and test if the configured flows are working by typing for example: h1 ping h2 assuming you have set the flow between these hosts. To find out more about the application's functionalities, press F1 or click Help in the application menu.