Software defined networking (SDN) uses software — instead of more traditional hardware-based methods — to define both networking architecture and network control. While this has major, favorable implications for the scalability of networks, the promise of maintaining global awareness by abstracting control away from the data plane is revolutionary for the networking space. The possibilities of interacting with networks programmatically have opened new venues of research using artificial intelligence (AI), with new research papers showing tangible, positive impacts. While promising, most results today remain limited to the academic and research space with few business solutions leveraging the full extent of the mixed SDN-AI model potential.
Artificial intelligence as it applies to SDN can be divided into three major categories: machine learning (including supervised, unsupervised and reinforcement learning), meta-heuristics and fuzzy inference. Each of these three major categories are discussed below along with current technique examples.
Supervised machine learning has been used primarily to create intrusion detection/prevention systems, and perform load balancing, application identification, optimal virtual machine placement and packet/traffic classification. Example models of supervised machine learning include neural networks, decision trees and supervised deep learning.
Unsupervised machine learning is used primarily for denial-of-service (DDoS) detection but has also been used to optimize WiFi infrastructure using clustering. Increased download times and lower packet error rates are two benefits of clustering. Unsupervised learning has been successfully utilized to detect advanced persistent threats (APT) and perform security assessments on a network. Common algorithms are k-means, self-organizing maps, restricted Boltzmann machines, hidden Markov models and unsupervised deep learning.
Reinforcement learning has been very successful in the SDN space. It has been used for a wide range of applications including routing, adaptive streaming, intelligent architecture systems, network management and traffic engineering.
Meta-heuristics are sets of algorithms including ant colony optimization, evolutionary algorithms, simulated annealing and genetic algorithms. These systems have been extremely successful in maximizing network utilization, load balancing, routing, virtual network planning and security (including new network defense techniques to prevent DDoS attacks or eavesdropping). Ant colony optimization in particular has been shown to outperform Dijkstra’s algorithm for routing and load balancing.
Fuzzy inference has been used successfully by researchers. Fuzzy inference techniques have been used to introduce new protocols, perform intrusion detection and create optimal network deployments.
AI applied to the SDN domain is an active area of research with new techniques still being discovered. The implications of its application to network optimization, allocation and security are significant. As models become more reliable and continue to excel at networking tasks, it is only a matter of time before businesses begin to adopt these techniques as powerful new tools in their infrastructure toolkit!
Latah, Madj. Levent, Toker. “Artificial Intelligence Enabled Software Defined Networking: A Comprehensive Overview”. IET Networks. Nov 6th 2018.