Neighbor Aware Protocols for IoT Devices in Smart Cities—Overview, Challenges and Solutions

: The principle of Smart Cities is the interconnection of services, based on a network of Internet of Things (IoT) devices. As the number of IoT devices continue to grow, the demand to organize and maintain the IoT applications is increased. Therefore, the solutions for smart city should have the ability to efﬁciently utilize the resources and their associated challenges. Neighbor aware solutions can enhance the capabilities of the smart city. In this article, we brieﬂy overview the neighbor aware solutions and challenges in smart cities. We then categorize the neighbor aware solutions and discuss the possibilities using the collaboration among neighbors to extend the lifetime of IoT devices. We also propose a new duty cycle MAC protocol with assistance from the neighbors to extend the lifetime of the nodes. Simulation results further coagulate the impact of neighbor assistance on the performance of IoT devices in smart cities.

in NA protocols, each node adds and transmits additional information for a neighboring node to a packet, and the neighboring node that overhears the packet utilizes this information to increase network efficiency.
Various issues need to be addressed through NA. In particular, energy efficiency is different from other issues. Components such as CPU (Central Processing Unit) and RAM (Random Access Memory) are sufficient to provide the level of performance required by the network. However, the equipment installed in a Smart City is often used until it is no longer usable due to failure or battery discharge, and hence, the energy efficiency requirement is unlimited. In addition, unlike RAM and CPU, which require only initial equipment cost, a battery involves the cost of replacement and charging. In this article, NA techniques and analyzed and categorized, including a review of the recent research on Smart Cities. The NA techniques and classified into three types based on the performance relating to: (1) Increase Throughput (2) Increase Reliability (3) Resource Saving If the NA approach is applied to protocols which consider energy efficiency, energy constrained nodes can support a variety of applications while consuming less energy. It can improve network life and reduce the maintenance costs of smart cities. In particular, duty-cycle MAC protocol is one of the promising protocol to save energy. Hence, in this paper, a new duty-cycle MAC protocol that uses the NA approach for energy constrained devices is presented. In the common duty-cycle techniques, each node blocks the power provided to non-communicating network interfaces to save energy. The nodes can operate for longer periods of time using the energy saved by this operation. Despite this advantage, the duty-cycle technique still has various problems. Among them, a sender spends energy unnecessary since it should wait until receiver node is ready to communicate. If the NA approach is applied to the duty-cycle technique, the sender will be able to know the wake-up time of the receiver, with the assistance of the neighboring node. This technology has the potential to dramatically improve the energy efficiency of a Smart City using IoT technology.

Challenges Faced in Smart Cities
Various applications and services in smart cites offered in Smart Cities include; smart traffic management and monitoring; smart parking assistance; intelligent public transportation; smart information services (e.g., hospitals, sidewalks, trains, taxis, buses, and planes); smart logistics; and, smart road management and monitoring. The fundamental functions characterizing these systems and information sensing and management, security and privacy, and human interaction. These systems require a tight coupling in order to optimize the performance indicators [6].

Information Sensing in a City and from Its Inhabitants
A city is full of sensors, for example, in electric meters, gas meters, parking sensors, traffic sensors, smart water, GPS sensors, weather devices, and smart buildings. Crowd sensing is an emerging research challenge, where even data from people is sensed. The main challenges faced in information sensing and the cost, quality, usage of the sensed data, security, and privacy.
Low cost sensors can be used in large numbers, but they are of low quality and lead to unreliable data. Multipurpose sensors that perform sensing tasks, which they and not originally designed for, also lead to low quality data. Conversely, good quality sensors with intelligent sensing techniques, work efficiently and accurately; however, due to the large areas to be covered, the associated costs rise dramatically. For example, considering the case of locating mobile phone users using the data generated from cell phone towers, this would require additional analytical tools because the coverage area of cell phone towers is too large, and the resulting positioning is inaccurate [7].

Information Management
There is a need for common information models to perform information management and sharing among the several services offered by the Smart City. To ensure that the infrastructure of the Smart City and its services function properly, it is imperative that the data from diverse services and integrated. This requires consideration of various characteristics relating to the services, such as, communication frequencies, data collection frequencies, and delays. For example, in the case of information regarding the roads, this is required by different services including transportation, emergency services, environmental management, and city planning.
The fusion of different cities and different services requires a high degree of inter-operability. This will allow various systems within the Smart City to share information and interact. The cities have several legacy and heterogeneous systems that need to be combined, in order for the Smart City to operate and develop [8].

Privacy and Security
An important aspect of information management is the securing of data from the sensed urban environment. The data centers used to collect the sensed data and vulnerable to potential risks, thus requiring effective security. Security policies and vital in ensuring that the authorities have the ability to protect data from unauthorized use. The security for the plethora of sensed data requires an efficient and real-time security model [9].
Accurate data obtained by high-quality sensors enables effective modeling, but are limited as these and the most intrusive. The privacy of the sensed data hinders the modeling of the smart sensing services. Significant research is therefore required, to ensure that security is maintained during information acquisition, storage, and transmission. The effects of tampering or hacking the sensed data could lead to undesirable scenarios. Hackers could utilize the information to; aid in robberies, falsify information, and tamper with Smart Cities resources. Therefore, the implementation of sensors on such a large scale requires efficient security mechanisms.

Human Interaction
The purpose of a Smart City, is to optimally control the services offered to its citizens, providing multiple services with real-time feedback, to aid them in their daily tasks. Ideally, Smart Cities can be modeled as a collection of interdependent closed loop systems/services that and regulated using real-time feedback. The collaboration and optimization of the resources among inter-and intra-systems is a challenging problem.
Smart services have had an impact on the human psychology and behavior. Human interaction with the smart systems is an important aspect in the gathering of data and transforming the Smart City into a smarter city. The smart solutions provided for millions of individuals, and their communities, should not be made compulsory. Instead, a trustful approach is required, where the individuals and part of the process of identifying the problems. The individuals then have ownership of the required solutions, which will lead to more optimized services.
New dynamic participatory systems and required, which make use of the factors which influence human behavior for example, psychology, user experience, location aware services, and social computing. By understanding and observing the interactions of multiple systems and citizens, the operations of the Smart Cities services can be made more efficient [10].

Neighbor Aware/Assistance Challenges in Smart Cities
Due to increased energy consumption, the need to manage the energy demand of IoT devices has become increasingly important. By 2020, the number of IoT devices connected to the Internet will increase to over 50 billion. It is imperative that techniques and employed to manage the energy consumption, so that the concept of Smart Cities may become a reality. The avoidance of energy wastage in resources improves the power management consumption, on both the static and mobile nodes. Additionally, the correct neighbor information allows the adaptation of resources, per the application requirement. Knowledge of the node mobility pattern improves the scheduling of neighbor discovery and data communication [11]. To aid the energy efficient NA techniques in the IoT scenarios, several challenges must be dealt with, and are discussed below.
(1) Neighbor Recognition: Neighbor Recognition is one of the most important challenges. A node needs to correctly recognize the presence of the neighbor nodes that lie within communication range. Moreover, the knowledge that the neighbor nodes and no longer within communication range, is also required to conserve resources. The discovery time for neighbor nodes needs also to be bounded, to enable the node to fully utilize the connection time for the communication tasks. (2) Mobility Models: The recognition of the mobility pattern of a node is a broad area of research.
The current mobility models aim to capture the temporal and spatial movement characteristics. Additional metrics may be useful to predict the accuracy of the mobility models such as, popularity (the number of visits to a certain location), ranking locations, neighbor memberships, friendships, and location tagging of places (e.g., bus stops, schools, hotels, railway stations). By utilizing the geographical locations, these metrics can be used as features defining the mobility patterns. (3) Knowledge Acquisition: The final challenge is the knowledge of the neighboring nodes future mobility (i.e., when will the neighbor node return in the future?). This has the capacity of reducing energy consumption. The information acquisition allows the node to understand, and learn about the neighbor nodes' recurrence. This creates the possibility of predicting a future nodes arrival, and helps in scheduling, both the discovery and communication, based on the mobility patterns (i.e., future location, arrival time, and link duration). The IoT devices and usually battery operated, with limited storage. These fundamental limitations of the IoT devices, creates difficulties for planning a network with an extended lifetime. Thus, the need to optimally utilize the resources of IoT devices in an energy-efficient manner is extremely important. NA techniques and better in employing these resources, maintaining the requirements of the application of a particular node, while reducing the energy consumption.

Neighbor Aware/Assistance Solutions
In this section, the NA based solutions and categorized. The criteria and based upon the performance of a targeted solution. Figure 1 shows various neighbor aware/assistance solutions classified by target performances.

Throughput
The memory space of an IoT devices' communication interface is only several hundreds of a KB(Kilobytes). Therefore, lightweight applications, that do not require high throughput, can be used in Smart Cities. For these applications, there are no high requirements for throughput for each flow. However, the packets need to be delivered quickly, without waiting in queue, since the RAM size is limited. Therefore, improving throughput is one of the major issues in NA.
(1) Collision Avoidance and Transmission Scheduling: In a Smart City network, due to the high density of IoT devices, contention frequently occurs when too many IoT devices attempt to simultaneously transmit packets. During the contention period, packets cannot be transmitted, and this needs to be resolved quickly. The use of random backoff based collision avoidance mechanisms is not appropriate, because many nodes could select the same random backoff value. Therefore, each IoT devices should be aware of the transmission schedule of neighboring nodes, and be able to determine its own transmission schedule. The Neighbor Aware Multiple Access (NAMA) is an example of an NA based Collision avoidance solution [12]. In NAMA, all IoT devices initially transmit packets through a random backoff mechanism. During the contention period, devices that have not yet won the contention, count the number of ACK(acknowledgement) messages transmitted from different neighbors. When this node wins contention and transmits its data packet successfully, the number of ACKs is determined and used as its transmission slot sequence. In other words, the nodes will be aware of the neighbors' transmission schedule sequence, using overheard ACK messages, and are then able to determine their own transmission schedule [12]. (2) Network Parameter Tuning: Although the network parameters may have a significant impact on performance, the optimal values of the network parameters differ, according to the network environments. Hence, if the NA based parameter tuning methods and defined, an IoT device can determine the network parameter value that maximizes the network performance, for example, the throughput. In particular, IEEE 802.11, which is a key technology of Smart Cities, defines the distributed coordination function (DCF) that performs the collision avoidance through random backoff [13]. In order to minimize any unnecessary transmission retries, each device selects a different random backoff value. Since the random off-value is selected between CWinit (initial CW) and CWmax (maximum CW), where CW is the contention window, it is important to define the optimal CW-related parameters. Therefore, NA solution based network parameter tuning protocols, such as the Neighbor and Interference Aware MAC (NIAMAC), which determines the optimal CW-related parameters are needed. In these protocols, IoT devices determine the CWinit value, according to the number of active neighbors. Moreover, the network parameters that can increase the variation of CWmax, and determined, since the distance between a sender device and its neighbor is closer. These protocols can improve throughput by reducing packet collisions and unnecessary transmission retries [14].

Reliability
In Smart Cities, the communication of IoT devices suffers difficulties related to limited communication power, mobility, obstacles, and interference. These hindrances increase the packet loss rate, which can reduce the reliability of the Smart City applications. Therefore, NA-based transmission protocols that allow low-reliability terminals to be supported by high reliability terminals are required.
(1) Amplify and Forward Method: In common networks, both the link quality and transmission range and proportional to the transmit power of the transmitter [5]. Therefore, as the transmission power is increased, the receiver can receive the transmitted signal from the transmitter without error, resulting in improved reliability. However, IoT devices in Smart cities have limited transmission power, due to characteristics of their communication interfaces.
The Amplify and Forward Method is a NA-based transmission method that utilizes the neighbors to increase the signal strength. In this method, the sender selects a neighbor and sends its packet to the selected neighbor. Then, the sender and the selected neighbor transmit the same signal with a time difference, which results in amplification of the signal at the receiver. This signal amplification phenomenon not only improves the transmission range, but also improves the transmission reliability [15]. As shown in Figure 2, a receiver device receives the attenuated signal from the transmitter device. Because of the signal attenuation, the receiver may not be able to decode the original signal. However, if the assist neighbor transmits the same signal, the signal could be decoded at the receiver device by the signal amplify phenomenon. (2) Cooperative Retransmission: Cooperative retransmission is an NA based transmission protocol.
It improves reliability by transmitting a packet, transmitted from a node with low reliability, to a neighbor device, after receiving it. In this protocol, even if the receiver does not receive the packet correctly from the sender, there is the additional chance that it will still receive the packet transmitted from the neighbors [16].

Resource Saving
Due to the limited size, IoT devices suffers from limited battery problem. To increase network lifetime with the limited battery problem, a protocol is required to enable the devices to save energy.
(1) Reducing Routing Overhead: Neighbor-Assisted Route Discovery (NARD) is a route discovery protocol. It reduces routing overhead for a mobile Ad-hoc network (MANET) architecture, which is defined by IETF(Internet Engineering Task Force). In the common routing protocols proposed for MANET, the source node floods its routing message using a blind-flooding technique, which enables it to find a route toward the corresponding destination node [13].
To reduce routing overhead using the NARD flooding technique, all nodes collect their neighbor's information by the overhearing of packets (in the form of a data packet or hello message) during the neighbor discovery phase. After this phase, the source node, which requires a route toward the corresponding destination, floods a RREQ (Route REQuest) message, limited by the hop count n, and hops away from the source node. The limited hop count n, is increased when the route discovery fails. If the RREQ message is received at, not only the destination node, but also the nodes which have a route towards the destination nodes (e.g., neighbors of the destination node), these nodes reply with RREP (Route Reply) messages towards the source node. After receiving the RREP message, the source node can transmit its data packet [12]. Furthermore, whenever a new RREQ message towards the same destination node is received at the source node, the source node can reply with a RREP message, since it has a route towards the destination. Therefore, routing overhead can be reduced, as many routes and found due to the neighbor assistance in the route discovery. (2) Duty-cycle MAC protocol: Among the various energy efficient protocols, a duty-cycle MAC protocol is one of the most promising solutions in increasing the network lifetime. We introduce an NA solution based on the duty-cycle MAC protocol in Section 4.

Duty-Cycle MAC Protocol and Power Saving
As mentioned above, energy efficient protocols and needed in IoT devices due to their limited batteries. In the duty-cycle MAC protocol, IoT devices operate in either a sleep or wake-up state. IoT devices that operate in a sleep state can save energy, because they do not provide power to the communication device. A packet can be sent, only when both the sender and the receiver and in a wake-up state.
A sender device can transmit its data packet to its receiver device, only if the receiver is in a wake-up state. The sender node waits until the receiving node wakes up, and then transmits the packet. The sender device waits until the receiver device wakes up, and consumes energy in the meantime. Several methods have been proposed to reduce the unnecessary energy consumption.
In particular, the sender and receiver pair, exchange information about the next wake-up time during the data and ACK message transmission process. This information is useful if the sender retransmits a packet to the same receiver, or vice versa. The sender that knows the wake-up time of the receiver, can wake up only at that time, and send the packet, reducing energy consumption. In other words, this energy saving scheme can only be applied between devices that have transmitted packets. If the devices can exchange wake-up time information in different ways, they and more energy efficient.

Neighbor Assisted Power Saving Method
We propose a method that allows the sender device to know the wake-up time of the receiver device, based on the NA technique. In this method, the sender obtains the receiver's wake-up schedule from its neighbor nodes, and saves its power over RI-MAC Receiver-initiated MAC protocol [17]. The wake-up schedule consists of the next wake-up time, wake-up interval, and the validity of this information. The detailed operations of the proposed method and discussed below.
In the proposed scheme, each device periodically transmits a beacon message, including its wake-up schedule, whenever it wakes up. It is same procedure of the original RIMAC. If the neighbor nodes that and in the wake-up state to wait receiver's beacon, it could know the wake-up schedule of the beacon transmitter based on this beacon message. Moreover, during data transmission between the two devices, the sender transmits its data packet which includes the sender's wake-up time. Based on this data packet, the receiver knows the wake-up schedule of the beacon sender. This wake-up schedule exchange process is repeatedly performed. In other words, whenever data packets or beacons and exchanged, the wake-up schedules and also transmitted. This process is called the wake-up schedule exchange process. During the wake-up schedule exchange process, a node that knows the wake-up schedule of one or more neighbors performs the wake-up schedule notification process.
After the wake-up schedule exchange process, the node starts the wake-up process. In the wake-up schedule notification process, each device periodically transmits an S-beacon, which includes the wake-up schedules exchanged through the wake-up exchange process. If a sender (S_packet) is waiting for a beacon message transmitted from the receiver (R_packet), it can receive the S-beacon broadcast from its neighbor (NS-beacon). If the wake-up schedule of the R_packet is recorded in the S-beacon, the S_packet starts a temporary sleep until the R_packet wakes up. Since the NS-beacon is a modification of the beacon defined in RI-MAC, the proposed solution does not consume additional overhead to provide information of neighbor nodes. In other words, an NS-beacon transmitter of the proposed solution can provide its neighbors' information to another neighbors without any request/receive process.
As a result, the S_packet can know the wake-up time of the R_packet with the assistance of the neighbor node, thus saving energy. Figure 3 represents an example of the proposed duty cycle protocol. In this example, the device A sends a beacon when according to its wake-up interval. Because the device B waits a beacon transmitted from the device C, it receives the device A's beacon. Next, the device B and the device C exchange data packet and ACK messages. During this procedure, the device C knows a wake up schedule of the device B. Next, the device A wakes up to receive a beacon transmitted from the device B. In this time, the device A receives a S-beacon transmitted from neighbor node C. Since the S-beacon includes the wake up schedule of the device B, the device A can save its energy until the device B wakes up.

Simulation Environment
In this paper, network simulator 2.34 (NS-2.34) is used for performance evaluation. Network topology of our simulation forms 1500 m × 1500 m grid topology. The destination node was placed at the center of the topology. Moreover, four nodes that and more than 1200 m away from the destination nodes were selected to the source nodes. The validity of the wake-up schedule information was set to 10 min, and the wake-up interval of each device was set to a random value between 1 and M sec. In order to analyze the impact of the NA approach on performance, simulation was performed using RI-MAC which does not include additional duty-cycling function. Of course, the NA approach could be applied to the other protocols to increase network lifetime. Other simulation environments and as follows (refer in Table 1.).

Results and Discussions
First, we investigated the average residual energy of the two protocols: RI-MAC with the proposed method and the original RI-MAC (refer Figure 4). As the maximum wake-up interval increases, the amount of residual energy of the RI-MAC with NA and the original RI-MAC protocol increases because the node sleep time increases. Moreover, the proposed RI-MAC protocol always has higher energy efficiency than the conventional scheme regardless of the maximum wake-up interval. As the sleep time of the receiver nodes increases, the sender node should wait for a longer period of time in the original RI-MAC protocol. However, in the RI-MAC protocol which include the proposed NA approach, sender node can save its energy when it receives the wake-up time information of the receiver node from its neighbor nodes. In other words, the proposed scheme allows that a sender node which waits receiver's beacon to save energy. Next, we also evaluated the average residual energy according to the number of IoT devices (as shown in Figure 5). Regardless of the number of nodes, the original RI-MAC protocol has almost constant residual energy since the sender nodes always consume their energy until the receiver nodes wake up. The sender node consumes its energy for idle listening until the beacon of the receiver is heard. On the other hands, as the number of devices increase, the energy consumption of the RI-MAC with the proposed method is decreased. The sender node only consumes energy for idle listening until it hears the beacons transmitted from neighboring nodes, not from the receiver. This is because as the number of neighboring nodes increases, the sender node receives beacons from its neighbors and quickly goes into a sleep state. Finally, we measured the average residual energy according to the average loss rate as shown in Figure 6. Of course, the proposed RI-MAC with NA protocol has higher residual energy than the original RI-MAC protocol even if the average loss rate increases. However, as the average loss rate increases, the difference in the residual energy between the two protocols decreases. This is because not only the DATA/ACK packets but also the beacon messages and lost. In the proposed RIMAC protocol, if the beacon messages transmitted from the neighbor nodes and lost, the sender node cannot save. The loss of beacons causes the proposed technique to lose the opportunity to save energy.

Conclusions
In order to enhance Smart City applications, communication is required between IoT devices that and installed on people, buildings, and vehicles. In this article, we introduced the Smart City network, and analyzed the related information sensing, management, privacy, and security, as well as the effects on human interactions and neighbor management challenges. We also introduced Neighbor Aware and Assisted (NA) protocols that utilize features of IoT terminals installed at high density. The NA solutions were categorized according to their objectives; throughput, reliability, and resource saving; and the representative protocols were analyzed. We also proposed a new duty cycle MAC protocol with a NA technique. In the proposed MAC protocol, each device transmits a beacon or data packet, which includes its wake-up schedule. Each device records the received wake-up schedule, obtained from the neighbors beacon. Based on the beacon, the sender can save its' energy, without providing power to the communication interface, until the receiver is ready to communicate. Simulation results show that the proposed NA based duty-cycle MAC protocol saves energy as the wake-up period and device density increase.
To the best of knowledge, this technique is our first attempt of the NA approach for duty-cycling. In the future, we will develop new duty-cycling protocols that uses the NA approach and verify performance improvement using a real testbed.
Author Contributions: S.L. designed the solution and performed the experiments; D.K. analyzed the solution and helped to revise this paper; S.L. and M.A.Y wrote this paper. All authors have read and agreed to the published version of the manuscript.