This paper proposes an application-aware multipath packet forwarding framework that integrates Machine Learning Techniques (MLT) and Software Defined Networks (SDN). As the Internet provides a variety of services and their performance requirement has become heterogeneous, it is common to come across the scenario of multiple flows competing for a constrained resource such as bandwidth, less jitter or low latency path. Such factors are application specific requirement that is beyond the knowledge of a simple combination of protocol type and port number. Better overall performance could be achieved if the network is able to prioritize the flows and assign resources based on their application specific requirement. Our system prioritizes each of the flows using MLT and routes it through a path according to the flow priority and network state using SDN. The proof of concept implementation has been done on OpenvSwitch and evaluation results involving a large number of flows exhibited a significant improvement over the traditional network setup. We also report that the port number and protocol are not contributing to determine the application in the decision-making process of Machine Learning (ML).
We demonstrate multipath routing and wavelength re-assignment in OpenFlow-enabled packet-circuit network, aware of links' bandwidth utilization, applications' protocol, and quality of transmission. Applications are re-routed under traffic congestion and wavelengths are re-assigned under physical impairments.