# Enabling Heterogeneous IoT Networks over 5G Networks with Ultra-Dense Deployment--Using MEC/SDN
###### 1 Introduction  
The Internet of things (IoT) is a recent communication paradigm considered to be the third evolution of the traditional Internet [1]. IoT is the communication system that considers connecting heterogeneous wireless devices and provides the communication medium for the interaction between machines [2]. As well as human-to-human (H2H) communication, IoT enables machine-to-machine (M2M) communication. M2M is the communication paradigm that has been introduced to enable the communications and interactions between machines, e.g., sensors and actuators [3]. Many market sectors consider developing IoT systems and applications, have been launched, and massive IoT applications in many fields have been developed [4]. However, there are many designchallenges associated with IoT networks and the integration of such networks with the existing and future cellular networks, e.g., fourth-generation (4G) and fifth-generation (5G) [5]. IoT represents a main use case of the 5G cellular system as announced by the third-generation partner project (3 GPP) and the international telecommunication union (ITU) [6]. Thus, integrating existing IoT networks and platforms with the 5G systems is a great demand. However, this integration and, moreover, the design of IoT with the announced 5G specifications represent great challenges. In the era of 5G, IoT networks should achieve ultra-high availability and reliability [7]. Furthermore, IoT networks are expected to support ultra-low latency applications and achieve high system scalability. With the release of 5G, it is expected that the number of connected devices will be of the order of billions, which puts high constraints on the communication systems that provide the coverage for such a massive number [8]. The design of IoT networks, in the era of 5G, should provide a high level of scalability to be able to support the expected massive number of devices. To achieve high-level system scalability and the other introduced requirements, IoT networks should deploy new technologies, such as mobile edge computing (MEC), device-to-device communication (D2D) and software-defined networking (SDN) [9; 10; 11]. Furthermore, these technologies are used to enable the integration of IoT with the 5G systems. MEC is a recent communication paradigm that has been introduced to move the computing capabilities and energy resources to the edge of the radio access network (RAN). This enables the paradigm shift from the centralized computing paradigm to the distributed computing paradigm [9]. Each cellular base station, i.e., and, is connected to a MEC server to provide the computing resources, e.g., processing and storage, one communication hop away from cellular users. The introduction of MEC servers at the edge of RAN unloads the core network by providing a way for traffic offloading and thus, increases the system scalability. Furthermore, since MEC servers can access network parameters, new services can be developed based on the extracted data [10]. SDN is another communication paradigm that is recently introduced for the core networks. SDN breaks the control and data planes and provides a way for managing the whole networks via a software-based control scheme [12]. The core networks deploy either single or multiple SDN controllers to manage and control the data plane and the RAN. The other network devices, e.g., switches and middleboxes, act as packet forwarding devices. Deploying SDN for cellular networks turns them into programmable networks and, thus, makes network evolution and innovation much easier [13]. D2D is a recent communication technology that has been introduced for enabling direct communication between devices [14]. The introduction of D2D communication to cellular networks unloads the RAN and also the core networks since a part of traffic can be handled without the involvement of the base station. Furthermore, the deployment of D2D communication achieves higher performance in terms of energy consumption, system scalability, and spectrum utilization [15].