Software defined fog platform

ABSTRACT


INTRODUCTION
Today, the growth of technologies such as the internet of things (IoT) has made it possible for many devices to be connected to the internet at any time and place.These devices and traditional network architecture are not designed to patronage this rate of scalability, traffic, and mobility [1].In new years, efforts have been built to improve intelligent communication between network components, and the idea of personalization and flexibility in network behavior has been proposed.In cloud computing, all requests must be sent to a centralized cloud, and bandwidth is a major bottleneck for this [2].This processing pattern can lead to communication delays.In addition, some decisions that are made in the cloud space can be calculated and implemented locally without the need to exchange information with the cloud space.Finally, all of the aforementioned issues have arisen with the significant growth of IoT technology and its ubiquity, and they all indicate that cloud computing may not be the most suitable option to address these problems better [3].Therefore, a novel processing model called fog computing has been introduced.Fog computing is a distributed computing architecture that places a large number of different network-connected devices at the edge of the network to provide services such as processing, network communications, and storage in a pervasive manner.Fog computing can respond to delay-sensitive and real-time applications effectively and efficiently, as well as greatly reduce network bandwidth bottlenecks [4].Sood et al. [5], we suggest the use of software defined networking (SDN) to reduce resource allocation contrast in the IoT devices in edge of network and improve the overall performance of the IoT.SDN is a new model for relation networks that decouples data and control functions.Network decision making unit is logically transferred to a centralized SDN controller that retains an overview of the network, interacts with infrastructure layer device, and provides a programmable interface to network management applications [6].The structure of this architecture makes the behavior of the network flexible and adaptable to operational needs.
To present applications that need to support dynamism and minimum delay, the suggested IoT platform uses the integration of software defined network and fog architecture.The advantages of both technologies are widely recognized in the research community, but some challenges prevent their widespread adoption.Therefore, the efficient combination of SDN and fog computing can be used to offset for the defects.

INTERNET OF THINGS: CURRENT STATE AND CHALLENGES
According to Figure 1, the IoT refers to connected objects at the global level, each of which is identified by an individual identifier and communicates with each other using standard protocols.This definition includes a very large number of heterogeneous connected nodes.Herrera et al. [7], Ashton states: "If we have computers that can collect data without any help from us, and in other words know everything about everything, I can reject everything.By doing this, we can know what, when it needs to be repaired, replaced, or started".The purpose of creating such a network can be known from the state of everything at any time.According to [8], objects that are active in information, business, and social processes are said to be related to the environment and their surroundings.Objects exchange the data they sense from the environment and at the same time independently react to events happening in the environment.
The IoT has a very wide range of applications.These applications can be divided by different criteria such as size, scalability, extent, degree of heterogeneity, and accessibility.There are many challenges in creating a reliable and secure platform for the IoT.Some of these challenges are directly related to the IoT, for example addressing and communication networks, architecture, privacy, data analysis, cloud computing, and collaborative sensors.Some other challenges are related to the components and technologies used in the IoT, such as architecture, sensor networks, quality of service, and optimal energy consumption [9].

CLOUD COMPUTING
Cloud computing offers scalable and cost-effective solutions for handling the data generated by the IoT.Available cloud services are basically modeled for classic web tasks, which are not significantly impacted by the spacing between IoT devices and data centers.However, many appearing IoT applications require support for real-time interplay and dynamism (such as smart traffic lights and smart exploring systems), making network delay a significant limiting agent.The delay introduced in the network is not only the result of a long space between edge devices and the data center but is also caused by queuing delay, which cannot be ignored in dense links.If the traffic load is evenly dived over the network, then the effect of queuing delay can be decreased.Unfortunately, dynamic routing is more risky than useful to be used in the existing Internet architecture due to the level of distributed control in this architecture [10].Furthermore, the easy shortest way routing model is still dominantly used and there are no dedicated connection control methods.This needs to be resolved to totally extract the opportunities presented by disparate access to networks in IoT place [11].

THE DEFINED PLATFORM
In order to discuss the challenges of delay-sensitive applications considered earlier, in this section, we propose a new IoT paradigm model based on two emerging technologies: SDN and fog computing.Due to the location of fog computing servers near the IoT devices and their dynamic nature, the use of software-defined networks facilitates network management by separating the control panel and data plane of the network.We

Software-defined network
According to Figure 2, a network with a central controller that facilitates traditional network management through the control layer is SDN.The central controller, with its general view of the network, can manage network resources in a more efficient manner than traditional networks [12].Most studies in the scope of SDN focus on the concept of network programmability.It is expected that these networks will significantly ease network management and create the facility of implementing new ideas in the network that were not possible in traditional networks [13].
The idea behind software-defined networks is to increase the intelligence of networks by transferring the data control layer from the hardware switch and router to the virtual software layers of the network and the use of a centralized software controller.This allows for capabilities such as planning, scalability, flexibility, automation, and intelligence.Administrator's network in SDN allows configuring and optimizing network resources dynamically through automated programs [14].
These networks were first proposed in 2005 and gained significant attention in 2010.Salman et al. [15], the formation of the open network foundation (ONF) and the participation of over eighty major network industries in its development, along with the creation of the OpenFlow standard, marked a new phase in the evolution of SDN.The connection between the SDN controller and the infrastructure layer devices is usually achieved through the Open Flow protocol [16].

Fog computing
Cloud computing is a bridge that fills the split among cloud data centers and devices in data layer (IoT nodes), enabling computation, storage, networking, and data handling on network nodes in close proximity to IoT devices.As a result, computation, storage, networking, decision-making, and data management happen not only in the cloud but also along the IoT-Cloud path, as data is moved to the fog (preferably near the IoT equipment), as shown in Figure 3.The open fog consortium describes fog computing as a horizontal, system-level architecture that performs distributed computing, storage, control, and network performance close to the user along a cloud platform.In addition to comforting a horizontal architecture, fog computing can provide a flexible platform to meet the real-time, data-driven needs of operators and users.It is specifically designed to support the IoT. Figure 3 display the situation of fog paradigm in IoT architecture [17].

Design of the proposed platform
We defined a cloud-defined platform based on a software-defined architecture, as shown in Figure 4.This platform include of a collection of base stations, a set of IoT equipment as clients, fog systems that use a communication protocol with base stations, a set of fog nodes with a standard structure [18], and a set of cloud nodes in the core of the network.The requests of each IoT device are sent to the cloud network through base stations in the form of a multi-node weighted directed task graph [19].
Each fog domain is composed of several distributed fog servers, ideally located close to data sources (IoT devices) [20].The requests submitted by the IoT devices were refined and processed by these fog servers.The fog layer may also reduce the value of data that needs to be transmitted to the cloud data center by performing some form of pre-processing on the data.The base stations and fog domains are SDN-enabled and can be monitored and managed by the SDN controller through its southbound APIs.The SDN controller operates in a centralized manner, based on the global situation of the network.It can collect global information of the IoT-based fog computing network, including the processing load, network traffic, available processing and communication resources, and delay of each fog node and link.The SDN controller makes optimal decisions about where to forward each task assignment demand and accordingly places suitable flow principles in SDN-enabled base stations and fog servers.The logic for handling task offloading requests is implemented as an application in the SDN controller, referred to as the task offloading module in Figure 5.This module aims to reduce task execution latency by forwarding tasks to the appropriate base stations and fog domains.
As previously stated, it is assumed that some IoT devices may submit tasks with a non-reducible multi-node graph structure.To handle such tasks, it is necessary for several fog nodes to act collaboratively.These fog servers may be clustered into logical or physical fog domains, which are accessible through one or more base stations.IoT devices that wish to offload their tasks submit their requests to the nearest base station.Then, the SDN controller decides to send the request to the appropriate fog server based on the features and priority of the submitted request and the global state of the network.The details of the task offloading workflow are illustrated in Figure 5.  6 illustrates the sequence diagram of the task offloading process in the proposed platform [21].In this diagram, an IoT device first submits a task to a base station.The base station then forwards the submitted task to the SDN controller.The task offloading module determines the suitable fog nodes, the paths between them, and the paths connecting the fog domain to the Cloud data center to host the task in order to reduce the task execution latency.There may be situations in which, based on the processing requirements of the task graph nodes, it is necessary to partition the task graph and host some of its nodes in a cloud data center while other nodes of the task graph are handled by the fog servers.Ultimately, the results of executing the task graph nodes are aggregated in the fog domain, and finally, the computation results are forwarded to the IoT device.

USES CASE
The quick growth of the IoT and the growth of service-requesting devices in this technology have brought many interesting use cases that can advantage from the ideas of SDN and fog computing.The use of fog computing in the IoT architecture provides real-time response to the needs of service requesters and reduces delay.SDN also facilitates network management by providing an overview of the network and separating the network control layer from the network data layer.In this part, we have selected some examples to demonstrate the potential of the suggested system platform.

Intelligent traffic management system
In recent years, intelligent transportation systems have been of great importance in IoT studies.However, due to the lack of intelligence, flexibility, scalability, and real-time service provision in the current architecture of these systems, management and the establishment of real-time, delay-free services face many challenges.On the other hand, traffic management systems help reduce travel time and enable intelligent routing of vehicles by monitoring traffic performance and road conditions.The proposed platform, with its programmable, scalable, and flexible SDN controller and an overview of the network, along with fog nodes, can perform resource management and coordination of delay-sensitive vehicles in real-time [22].

Health networks
The goal of creating a safe healthcare ecosystem and making final decisions for the health and quick recovery of patients can be achieved with the proposed platform.This platform utilizes the proximity of fog servers in the network layer to resources available in the network, acting as an interactive layer between the cloud and network edge equipment.The SDN controller serves as a management module with an overview of the network, enabling efficient resource allocation, low delay, and optimal service management [23].

The field of development of industrial robots and augmented reality
In the field of industrial robot development, scanning the workspace is crucial for understanding the task at hand.The data is presented in real-time in the 3D form on a virtual machine located at the edge of the network and transmitted through location technologies.One of the challenges in this field is the interaction between humans and machines in the development of industrial robots.By using augmented reality technologies, users can meet their needs dynamically in real time from remote environments.Therefore, according to the discussion of low delay in order to respond to qualitative and real-time requirements in the programming of industrial robots' algorithms, the need for SDN for network control and management is crucial [24].

Smart cameras
Smart cameras and surveillance through them are crucial for providing high security in smart cities.The proposed platform routes the video stream produced by each camera in an automatic, intelligent, flexible, and comparable manner, based on service quality requirements.Resource allocation is also taken into consideration in this process [25]- [27].

Agricultural precision
The proposed SDN-based platform with fog computing can be used in the field of intelligent agricultural management systems to optimize the use of resources and reduce costs.Sensor networks are used to collect data on various parameters in order to make control decisions.The data is processed by the fog servers at the edge of the network and used to improve the efficiency of agricultural products and implement smart control measures for optimal use of water, pesticides, and fertilizers.The SDN controller acts as a management module with an overview of the network and facilitates real-time command issuance, measurement process control, and stability and behavioral fluctuation monitoring.

CONCLUSION
In this paper, we have introduced a platform for the IoT, which is based on two new paradigms: SDN and fog computing.The offered model is configured to support a high level of scalability, real-time data transfer, and dynamism.In the IoT architecture, the cloud computing platform is due to its high ability to solve latency issues for tasks that require analysis, and They are considered to have quick decision making.On the other hand, implementing complex methods for traffic control and resource management becomes possible using SDN, which logically introduces a centralized control layer.Such a network design can be of vital importance to address the demand for increased capacity in IoT environments.


ISSN: 2088-8708 Int J Elec & Comp Eng, Vol. 13, No. 5, October 2023: 5454-5461 5456 briefly show the main opinion of this network paradigm and then describe how these two technologies work which other and implemented in the suggested system platform.