Over the past decade, the Internet of Things (IoT) has undergone a paradigm shift away from centralized cloud computing to edge computing. Hundreds of billions of things are estimated to be deployed in the rapidly advancing IoT paradigm, resulting in an enormous amount of data. Transmitting all this data to the cloud has recently proven to be a performance bottleneck as it causes many network issues, including latency, power consumption, security, privacy, etc. However, the existing paradigms do not use edge devices for decision-making. Distributed intelligence could strengthen the IoT in several ways by distributing decision-making tasks to edge devices within the network instead of sending all data to a central server. All computational tasks and data are shared among edge devices. To efficiently distribute IoT intelligence and utilize network resources, it is necessary to integrate transport network control with distributed edge and cloud resources to provide dynamic and efficient IoT services. This challenge can be overcome by equipping an edge IoT controller with the intelligence required to extract information from raw data and decide whether to actuate itself or outsource complex tasks to the cloud. Distributed intelligence refers to the collaboration between the cloud and the edge. In this context, we first introduce a distributed SDN-based architecture for IoT that enables IoT gateways to perform IoT processing dynamically at the edge of the network based on the current state of network resources. Next, we propose an algorithm for selecting the clients for the training process in federated learning based on the context information of the network. As last step, we deploy Federated Learning into the distributed SDN-based architecture through the gateways to provide distributed intelligence at the edge of the network and conduct a comprehensive and detailed evaluation of the system from different aspects.
Edge-based distributed intelligence techniques, such as federated learning (FL), have recently been used in many research fields thanks, in part, to their decentralized model training process and privacy-preserving features. However, because of the absence of effective deployment models for the radio access network (RAN), only a tiny number of FL apps have been created for the latest generation of public mobile networks (e.g., 5G and 6G). There is an attempt, in new RAN paradigms, to move toward disaggregation, hierarchical, and distributed network function processing designs. Open RAN (O-RAN), as a cutting-edge RAN technology, claims to meet 5G services with high quality. It includes integrated, intelligent controllers to provide RAN with the power to make smart decisions. This paper proposes a methodology for deploying and optimizing FL tasks in O-RAN to deliver distributed intelligence for 5G applications. To accomplish model training in each round, we first present reinforcement learning (RL) for client selection for each FL task and resource allocation using RAN intelligence controllers (RIC). Then, a slice is allotted for training depending on the clients chosen for the task. Our simulation results show that the proposed method outperforms state-of-art FL methods, such as the federated averaging algorithm (FedAvg), in terms of convergence and number of communication rounds.