# Fog Computing: Enabling the Management and Orchestration of Smart City Applications in 5G Networks
## 3 A Fog-Based Management and Orchestration Framework for 5G Smart Cities
### System Architecture Overview
#### 3.2.2 Fog Node System Architecture  
Figure 7 presents the detailed architecture of the FN autonomous management system. Some FN architectural components share concepts with the ETSI NFV MANO architecture; however, the nature and behavior of the FNs in the infrastructure lead us to a different approach, since ETSI NFV MANO has been conceived to be applied in data centers, and our proposal is aligned with fog computing architectures. The FN must setup and manage its infrastructure and associated devices in an autonomous manner. Therefore, each FN is managing a set of computational resources by using a virtualization layer residing over a physical layer, offering virtualization of the main network functionalities. The VIM performs the life-cycle management of the multiple network functions deployed on the network. The next upper software module, is the Fog Manager (FM) component, which is responsible for managing the attached IoT devices through a Fog Agent (FA). The FM addresses the device management and M2M security guidelines defined by ETSI oneM2M. The FM module is mainly responsible for:  
* Device discovery operations;
* Updating the devices' configurations through the FA;
* Keeping track of the devices' mobility;
* The security in M2M communications;  
Figure 6: Overview of the proposed fog-based MANO framework for 5G-enabled smart cities. Furthermore, each FN has its own instance of a Fog Orchestrator (FO) component. The FO module is mainly responsible for the following operations:  
* Life-cycle management of micro-services (including instantiation, scale-out/in, termination);
* Interface with the monitoring and data analysis system;
* Interface with the Fog Decision (FD) module;
* Responsible for the registration of new VNFs and NSs;  
On the one hand, a monitor and data analysis component is responsible for gathering information about the current state of the computational resources, such as CPU, memory and storage and collecting data samples from the different IoT sensors through the M2M handler. This module is composed of databases of measurements, events, warnings and notifications, which will help to identify network failures, policy violations and security threats on the network in a timely manner. In fact, this component keeps an updated status of the overall FN system alongside the connected IoT devices. On the other hand, our FN system architecture foresees a fog decision module, which is the component housing the intelligence, mainly responsible for:  
* Life-cycle control and management decisions;
* Self-configuration functionalities;
* Applying the network behavior desired by network administrators;
* Providing autonomous responses to unknown situations detected by the monitoring and data analysis module;  
The FD module will use different sets of machine learning algorithms to provide self-management responses to unusual events or malfunctions that can be detected in the network. The FD module will apply network strategies indicated in the policy catalog. Moreover, application and service migration  
Figure 7: Detailed overview of the FN architecture. requests will be handled by the FD module. The main outcome of the FD module is a set of actions that need to be deployed in the network, which will be done by the FO. Each FN is composed by a northbound Application Programming Interface (API) defining a standardized entry point to the FN autonomous system. This interface defines the interaction between network administrators and FNs. This API will provide access to all configuration, management and reporting capabilities provided by FNs. Finally, each FN also provides a Fog Graphical User Interface (GUI), where network administrators can interact and configure each FN. Furthermore, network administrators can obtain a broader view of the behavior of the network, in terms of resource usage, application service deployments, etc., and present this status in a command and control center.