## 6 Challenges and Solutions for Next Generation of SDN
This allows to apply ML and artificial intelligence techniques to improve the efficiency and reliability of SDN through the available real-time information extracted from the data and control plane. One example is through intelligent knowledge extractors [85]. Another example is through knowledge-defined networking (KDN) [86], which is an architectural framework to evaluate network performance in real time through different types of ML techniques. * Integration with other technologies for cloud-fog systems: The SDN-based cloud-fog deployment model can involve other technologies, such as blockchain [87] and multi-agent systems [88]. Blockchain can be used in the connection of controllers in the fog layer, which improves security issues. In addition, benefiting from the distributed nature of blockchain and multi-agent system, data integrity is ensured. The combination of these technologies with SDN needs to be studied and tested from different aspects. * Consistency of the control channel: Some of the above-mentioned challenges are given for special type of controller design. Therefore, depending on the type of the controller design that is used, the challenges are different. Having a single administrator for enterprises and data centers, a centralized controller suits them, while having a heterogeneous environment, distributed and, of course, for now, hybrid controllers/T-model work better for cloud-fog systems [89]. Maintaining the control channel consistency in a distributed control model (i.e., DSF [69], HECSDN [90]) is more challenging. Specifically, in a hierarchical control model, edge and domain controllers have to deal with security, mobility, and computation offloading. These local edge control policies are continually in transition and have unrest configurations in forwarding devices connected with fog nodes. Additionally, local edge policies and configuration should be inclined with global controller (residing at a cloud node or the fog top layer) forwarding policies. In the case of global policies change, the edge and domain controller suffer more delay because they have to reconfigure the fog layer forwarding device, according to global policies. Network reconfigurations, in the case of policy change, majorly include the flow forwarding rule addition, deletion, modification, barrier requests, and capabilities investigation to test the switches interoperability with fresh global policies and various other symmetric communications. In parallel, the policy change implementation can have the further challenge of forwarding rule overlapping, which invites policy violation at edge interfaces. [PERSON] et al. in [91] addressed the policy conflict challenge, using a graph matching algorithm in the centralized SDN controller. Another overhead is flow rule debugging; whenever a policy composer or a semantic translator application has uncertainties, a single global control layer can initiate the application debugging mechanism in edge and fog controllers. Therefore, distributed controllers in fog require the intelligent mechanism for fault-free policy installation or abrogation in underlying fog layers to meet the stringent QoS constraints. * Optical/Wireless networks and SDN in cloud-fog systems: So far, the benefits of SDN are mostly limited to wired networks [15]. Software defined wireless networking (SDWN) is an attempt to adapt SDN to wireless networks. Additionally, the software-defined optical network (SDON) emerged to enhance OpenFlow to support forwarding planes that are not capable of packet switching. SDWN and SDON need more attention to prepare cloud-fog systems for 5G and beyond.