Saturday, May 21, 2016

Mininet dashboard

Mininet Dashboard has been released on GitHub, Follow the steps in Mininet flow analytics to install sFlow-RT and configure sFlow instrumentation in Mininet.

The following steps install the dashboard and start sFlow-RT:
cd sflow-rt
./ sflow-rt mininet-dashboard
The dashboard web interface shown in the screen shot should now be accessible. Run a test to see data in the dashboard. The following test created the results shown:
sudo mn --custom extras/ --link tc,bw=10 --topo tree,depth=2,fanout=2 --test iperf
The dashboard has three time series charts that update every second and show five minutes worth of data. From top to bottom, the charts are:
  1. Top Flows - Click on a peak in the chart to see the flows that were active at that time.
  2. Top Ports - Click on a peak in the chart to see the ingress ports that were active at that time.
  3. Topology Diameter - The diameter of the topology.
The dashboard application is easily modified to add additional metrics, generate events, or implement controls. For example, adding the following code to the end of the sflow-rt/app/mininet-dashboard/scripts/metrics.js file implements equivalent functionality to the large flow detection Python script described in Mininet flow analytics:


setEventHandler(function(evt) {
Restart sFlow-RT and repeat the iperf test and the following events should be logged:
$ ./ 
2016-05-21T18:00:03-0700 INFO: Listening, sFlow port 6343
2016-05-21T18:00:03-0700 INFO: Starting the Jetty [HTTP/1.1] server on port 8008
2016-05-21T18:00:03-0700 INFO: Starting application
2016-05-21T18:00:03-0700 INFO: Listening, http://localhost:8008
2016-05-21T18:00:03-0700 INFO: app/mininet-dashboard/scripts/metrics.js started
2016-05-21T18:00:12-0700 INFO: s1-s2,,
2016-05-21T18:00:12-0700 INFO: s1-s3,,
See Writing Application for more information.


  1. cd sflow-rt
    ./get-app<.sh> sflow-rt mininet-dashboard

    Thank you for the article!

    1. Thank you for the correction. I have updated the instructions in the article.

  2. what if i have my own topology, in example and i want to run in ??

    Thank you

    1. I believe that the latest versions of Mininet allow multiple comma separated entries in the --custom argument, i.e. --custom extras/,

      You might also be interested in the Mininet dashboard application for sFlow-RT.

    2. Thanks Peter.
      I have same question with it.
      Now it works :)

  3. Replies
    1. In this example sFlow-RT is running on the command line, so just type CNTRL+C to stop it and then run ./ again.

      If you are installed sFlow-RT as a package then type:
      sudo systemctl restart sflow-rt.service