Network Statistics Sample SDN Application With OpenDaylight

I have been working on SDN applications for quite some time now and wanted to create a demo/sample app that could be reference or bootstrap app for people willing to explore more.

So I took some time out to come up with a idea of doing a very basic (some might call it no-brainer) SDN app for learning.

This application helps demonstrate following:
  • Demonstrate how REST API’s of a SDN Controller (in my case OpenDaylight) can be used to build a app.
  • I did not want to use any server-side programming/code to do this. This really shows the power of REST & SDN architecture.
  • Simple app that is easy to understand and replicate for someone learning this stuff.
  • Help you understand some concepts of SDN NBI that people talk about.
What is Network Statistics SDN Application ?

Bundled into a beautiful GUI, Network Statistics SDN Application runs on-top of a OpenDaylight SDN Controller and tracks port & table statistics of devices/nodes managed via OpenDaylight SDN Controller. Pure jQuery/Bootstrap and HTML based application without any server-side code.

Complete set of UI Screens developed for the application.

Things you can do in this application:

  1. Supply the URL/Username/Password of your OpenDaylight SDN Controller. Start tracking Nodes!
  2. View all the nodes managed by OpenDaylight in Network Devices section.
  3. View Port and Table statistics of each node found.

This is kind of no-brainier, but you can come up with more use cases around it etc, what this app if for? Its just for the kick-start.

If you are interested in running it:
  1. You can get the complete code from my git or if that’s too much work and you don’t intend to change code & just want to see it in action, download the file of this application from here (do “Save Link As“, this is .png, rename it to .war).
  2. Run the application either from code or by dropping the .war into tomcat/jetty/jboss (some web server)
  3. Supply your pre-installed OpenDaylight credentials and see it in action at http://localhost:8080/NetworkStatsApplication/
  • I assume that you have a mininet and OpenDaylight setup working already as that is a per-requisite to building any application.
  • I prefer you read Brent’s blog on this which I refer whenever I’m stuck at things he has written about.

How I built this application and the code walk thru I have explained it in part-2 of this post as this blog was getting too long for everything.


7 thoughts on “Network Statistics Sample SDN Application With OpenDaylight

  1. hiba says:

    Hi saurabh,
    I want to add a host dynamically when traffc exceeds a particular threshold. Is it possible by enhancing the above application? If yes, the can you tell me how to do it??
    I appreciate any help you can provide.


  2. Mona says:


    I would like to do an application statistics for twitter using the SDN. for example simply counting the user sessions targeted to twitter website per day. Can you help how technically this can be done? I mean how can I identify the packets that belong to a certain user session of twitter based on the matching rules of the openflow?



    • Saurabh Agarwal says:

      Mona, I think all that traffic would be http and port 80.. you can confirm.. if that is the case I cannot think of any mechanisam NOT involving DPI to do that..


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s