A. Related Works
Examples of such papers include a survey of IETF standards in , security protocols in , and application, or transport, layer standards in . Other papers discuss a specific layer of standardizations such as communication protocols or routing. Most importantly, summarizes the most important standards that are offered by different standards organizations up to 2015. It also provides a discussion of different IoT challenges such as mobility and scalability. In this paper, we aim to provide a comprehensive survey of newly rising standards, drafts, and protocols that extend the work done in . This allows us to discuss more standards, add some of the recent standard drafts offered in the IETF, and discuss the state of the art protocols that are expected to go for standardization in the near future.
B. IoT Ecosystem
The second layer consists of sensors and smart devices that can be considered as the application core. Sensors type and distribution varies depending on the desired applications. Examples of such sensors are temperature sensors, humidity sensors, electric utility meters, or cameras. The third layer consists of the interconnection layer that facilitates the communication of sensor data to a data center or a cloud. There the data is combined with other known data sets such as geographical data, population data, or economic data. Furthermore, the combined data are scrutinized using machine learning and data mining techniques. New application level collaboration and communication software are needed to enable such large distributed applications. Such paradigms include software defined networking (SDN), services oriented architecture (SOA), etc. Finally, the top layer consists of services that result, such as energy management, health management, education, transportation, etc. Security and management are required for each of these 7-layers that are built on top of each other, hence, they are shown on the side.
Fig. 1: IoT ecosystem
This paper focuses on the interconnection layer. This layer itself integrates multiple layers as shown in Fig. 2. These include the data link, network, and transport/session layers. The data link layer connects two IoT elements which could be two sensors or a sensor and gateway device that connects a set of sensors to the Internet. Often there is a need for multiple sensors to communicate and aggregate information before getting to the Internet. Specialized protocols have been designed for routing among sensors and are part of the network layer. The session layer protocols enable messaging among various elements of the IoT communication subsystem. In addition, several security and management protocols have also been developed for IoT as shown in the figure.
Fig. 2: Protocols for IoT
Standards to cover all those five layers were proposed by several standardization organizations. Prominent among them are IEEE, IETF, and ITU. Generally speaking, IEEE mostly works on data link, IETF work on networks and several organizations work on the session, security and managements. These protocols and many others are listed in Fig. 2. Although Fig. 2 was made as current as possible, new standards are continuously admitted and hence may appear in the future. This paper aims briefly discuss each of the ones presented in Fig. 2, however, we empathize more on protocols shown in bold face. We consider these as most commonly recommended and/or designed especially for IoT.
II. IoT Data Link Protocols
In this section, we discuss the data link layer protocol standards. The discussion includes physical (PHY) and MAC layer protocols which are combined by most standards.
A. IEEE 802.15.4e
The traditional frame formats used in networking are not suitable for power constrained IoT devices. In 2008, IEEE 802.15.4e was created to extend IEEE 802.15.4 and support low power communication. It uses time synchronization and channel hopping to enable high reliability, low cost communication in IoT data links. Its specific MAC features can be summarized as follows :
Slotframe Structure: Scheduling and assigning nodes’ state at a specific time is defined by IEEE 802.15.4e frame structure. A node can be in sleep, transmit, or receive state. When transmitting, it sends its data and waits for an acknowledgment. When receiving, the node turns on its radio before the scheduled receiving time, receives the data, sends an acknowledgement, turn off its radio, delivers the data to the upper layers and goes back to sleep. In the sleep mode, the node turns off its radio to save power and stores all messages that it needs to send at the next transmission opportunity.
Scheduling: The scheduling algorithm can be defined by the designer based on application needs, however, scheduling should meet mobility and handover requirements to be accepted by the standards. Scheduling can be centralized by a manager node which is responsible for building the schedule, informing others about the schedule and other nodes will just follow the schedule.
Synchronization: Nodes’ synchronization is needed to maintain node connectivity to its neighbors and to the gateway. It can be done through acknowledgment-based or frame-based synchronization. In acknowledgement-based mode, the nodes that were already in communication send acknowledgments for reliability guarantees which can be used to maintain connectivity as well. In frame-based mode, the nodes are not communicating and hence, they send an empty frame at pre-specified intervals, about 30 second typically.
Channel Hopping: Channel hopping was introduced in IEEE802.15.4e to allow time slotted access to the wireless medium using time slotted channel hopping (TSCH). It requires changing frequency using a pre-determined random sequence that is arbitrary in length, can go up to 511 elements, and cover all or a subset of channels that are available to the physical layer. Subsequent packets are send on different channels following the specified sequence and thus in a pseudo random hopping pattern. This introduces frequency diversity and reduces the effects of interference and multi-path fading. Furthermore, it increases security as such hoping can be a defense against selective jamming attacks.
Network Formation: Advertising the network and requests to join are two important requirements for any MAC protocol. In 802.15.4e, nodes listen to advertisement commands and upon receiving at least one such command, it can send a join request to the advertising device. In a centralized system, the join request is routed to the manger node and processed there while in distributed systems, they are processed locally. Once a device joins the network and it is fully functional, the formation is disabled and will be activated again if it receives another join request.