For the last couple of months i am delving into SDN and trying to implement the application aware routing through SDN .

Application aware routing:

SDN controller will route each application data based on the application preferences, for instance FTP traffic will forwarded through the path having higher bandwidth, while the SSH traffic which perform better in low latency will be forwarded through the path having low latency, in summary each application have their own best path from source to destination based on the nature of the traffic generated per application.

To implement this, I am using the tool called mininet for the network simulation, but I am stuck on programming the controller. Up to now, based on my experience working with the mininet tool, mininet doesn't support the controller programming.

I would like to ask about using the SDN Opendaylight Project controller for the implementation of application based routing. Has anyone implemented the application aware routing in SDN, and what was your experience on it? I would like to know which SDN tools I can use to implement the SDN based application aware routing per application preferences.

  • Did any answer help you? if so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you could provide and accept your own answer.
    – Ron Maupin
    Commented Aug 12, 2017 at 20:41

1 Answer 1


This is a nice idea. We are using Floodlight for our SDN experiments. At the point in time we started, it was much more mature than the OpenDaylight software. As this has been more than a year ago, it might not be true anymore.

SDN offers you the following features that should be helpful to your use case:

  • Link parameter measurements to find such paths:
    • Delay by using customly crafted probe packets and correlate timestamps
    • Loss can be done by sampling the port statistics
    • Bandwidth is still something we are working on
  • As you are implementing reactive routing, you are most likely going to react on the packet_in event. In this case, you have two options:
    • Simple: use the transport protocol and port to deduce the app
    • Difficult: do some kind of deep-packet inspection to deduce the traffic type
  • The idea is good, The major difficulties is in the deep packet inspection, as port based application recognition is not applicable, because some application can run on standard port as well, for instance sometimes voip based application run on port 80 rather that http, I think we should implement some type of machine learning capability in controller, I need to look at to the [floodlight ](projectfloodlight.org). and do some experimenting with floodlight and I will let you know.
    – psycho3
    Commented Nov 4, 2015 at 2:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.