www.mdpi.com/journal/jsan Adaptive Communication Techniques for the Internet of Things

The vision for the Internet of Things (IoT) demands that material objects acquire communications and computation capabilities and become able to automatically identify themselves through standard protocols and open systems, using the Internet as their foundation. Yet, several challenges still must be addressed for this vision to become a reality. A core ingredient in such development is the ability of heterogeneous devices to communicate adaptively so as to make the best of limited spectrum availability and cope with competition which is inevitable as more and more objects connect to the system. This survey provides an overview of current developments in this area, placing emphasis on wireless sensor networks that can provide IoT capabilities for material objects and techniques that can be used in the context of systems employing low-power versions of the Internet Protocol (IP) stack. The survey introduces a conceptual model that facilitates the identification of opportunities for adaptation in each layer of the network stack. After a detailed discussion of specific approaches applicable to particular layers, we consider how sharing information across layers can facilitate further adaptation. We conclude with a discussion of future research directions.


Introduction
The Internet of Things (IoT) is a vision of the future Internet that provides "anytime, any place ... connectivity for anything" [1].In such a context, a thing refers to an identifiable entity that exists in either a physical or virtual domain and has intelligent interfaces (communication and computation capabilities) [2].The IoT is expected to seamlessly incorporate a diversity of things into a holistic cohesive network via Internet-inspired protocols in a way that interaction among things is facilitated.
The evolutionary paradigm of the IoT exhibits several distinct characteristics.First, it relies upon wireless as its main mode of communication.Indeed, the vast majority of things in the IoT interconnect with each other and access the Internet infrastructure and services through the use of low-power wireless which is critical for their operation.Second, communication devices participating in the IoT systems are clustered in geographically proximal groups.Specifically, things typically concentrate at specific locations, for example where end-users reside or work, such as intelligent house or smart office environments.Third, the IoT systems are highly heterogeneous.IoT incorporates a wide variety of intelligent devices such as WSNs, embedded devices, and smartphones.With constantly evolving technologies, the range of object types is likely to keep widening.Finally, instead of demanding explicit or manual intervention to make responses, IoT objects are able to react autonomously to stimuli, including environment events or user instructions.
These attributes greatly contribute to the transformative potential of the IoT, as well as the intrinsic challenges facing this approach.First and foremost, IoT systems must address localized competition for wireless medium.Whilst the proliferation of wireless communication has been paving the way for the emergence of IoT, the growing quantities of things sharing the limited spectral space place unique doubts for limited resources.As a result, devices with relatively low transmission power may suffer from reduced chance of communication and increased risk of interference, particularly at sites where objects are co-located with high density [3].
The adverse influence of competition for spectrum contest not only disturbs medium access of individual nodes, but also give rise to additional challenges affecting a broader scope.Specifically, ordinary routing algorithms unaware of underlying spectrum conditions can yield a seemingly good path which is, in fact, exposed to undesirable interference.Likewise, end-to-end flow control schemes failing to take into account spectrum-related events such as a frequency switch could result in suboptimal performance.
A significant challenge is also caused by the heterogeneity of things since it makes their interconnection complex.One-to-one translation gateways are historically deployed to bridge the gap between different standards and protocols used by various objects.However, the deployment process can be time consuming and error prone and, moreover, the scheme becomes increasingly unscalable as both the size and diversity keep developing.Alternative solutions are needed for the seamless integration of the intelligent objects and pervasive user experience [4].
Given the above challenges and the autonomous nature of IoT, we believe self-adaptive communication methodologies are key to the prospect of IoT.This paper takes into account strategies for adapting the communication behaviors of IoT-connected objects and related infrastructural components at all levels of the protocol stack, rather than only the layers directly dealing with medium at the lower end.Specifically, the survey in Sections 3 to 7 is carried out from the physical up to the application layer.Cross-layer issues are also taken into account in Section 8, before conclusions are drawn in Section 9 with some general observations about the state of the art and possible directions for future work.
Discussions hereafter are mainly dedicated to adaptive communication strategies with wireless sensor networks (WSNs) as the main focus of typical IoT applications.The rationale for the choice is twofold.First, WSNs supplement IoT with their versatile sensing capability at low-power consumption and are recognized as an integral part by the community [5][6][7].Second, an equally, if not more, important reason is that WSNs are representative of all the peculiarities of IoT discussed above.More than a decade of research in distributed sensing systems such as WSNs has focused on concepts of system uniformity, seamlessness, ubiquity and autonomous intelligence, which are essential aspects of the outlook of IoT.

A Conceptual Model for Adaptive IoT Communications
This section briefly summarizes the adaptation opportunities for tackling the challenges in IoT.Identified opportunities are attributed to certain layers with respect to the the OSI reference model [8,9] and illustrated in the Component Stack of Figure 1.The term "component" is used in a sense that adaptive communications are considered a composition of these opportunities.It should be noted that Figure 1 does not intend to reflect the actual implementation; the purpose of the figure (component stack, in particular) is to summarize points of interest and illustrate the organization of discussions in later sections.An opportunity for adaptation may be realized by one or more techniques.
Techniques at different layers may or may not have intra-layer or inter-layer dependency and some of them are not expected to work together at present.Furthermore, the differences between node types are purely to illustrate the diversity of their roles and do not imply any hardware or software variety.In fact, it is common that network nodes have identical physical constructions with the same software implemented.For example, a Router Node is merely a node that happens to sit between the End Node and the destination, and in the meantime can certainly be an end node itself.
The physical layer (PHY) provides the most fundamental infrastructure for adapting to all spectrum-related events due to its direct contact with the wireless medium.The importance of PHY is twofold.First, it enables the acquisition of spectral conditions via a group of techniques known as "spectrum sensing", which is essential for any well-informed adaptation that is to be made.Second, a great part of spectrum-related adaptations are achieved by altering PHY parameters, including operating frequency and signal strength.Hence the reconfigurability of PHY is an indispensable component of adaptive communication.
The medium access control (MAC) layer directly controls the PHY layer adaptation.On one hand, it regulates and coordinates spectrum-sensing activities to ensure that spectral information is efficiently collected whilst considering a number of tradeoffs.On the other, it makes certain adaptation decisions based on obtained knowledge, such as switching operating frequency, which are, in turn, put into practice by the reconfigurable PHY.
Two adaptation opportunities are identified at the network layer.The first one is the incorporation of spectrum information in routing processes.Routing protocols for wireless networks usually measure the desirability of paths based on distance or number of hops.However, as recognized earlier, the spectral condition has a major influence on the quality of transmission, especially for low-power IoT devices.Consequently, spectrum-aware routing protocols that take into account spectrum-related events as depicted in Figure 1 can be adopted to reduce the probability of routing decisions that are in conflict with the actual conditions of wireless medium.The other opportunity for adaptation at this layer concerns the formation of an integrated network of heterogeneous things.The singular predominance of Internet Protocol (IP) at this layer gives it the potentiality to be established as the "standard language" universally supported by virtually incalculable types of IoT products [10], eliminating the dependence on numerous one-to-one translators between individual pairs of incompatible technologies and standards.This approach not only means things are able to natively communicate with each other using the comprehensively studied IP, but also greatly simplifies the integration with the existing IP-based Internet [11].
The transport layer has the opportunity to exert end-to-end adaptations in the paradigm.Spectral knowledge such as interference levels can be employed by processes such as flow control for more refined operations.This information can also provide congestion control schemes with precaution against imminent disruptions.Accordingly, adaptation can be exploited at this layer to improve communication reliability.
The application layer, though not typically concerned with underlying details such as the spectrum, has the potential to employ high-level adaptation techniques to improve the robustness against disruptions in the context of IoT.Delay-and disruption-tolerant networking (DTN) is one of the approaches dedicated to addressing reliability issues common for communication among low-power devices, such as transmission delay and disruption due to shadowing or fading [12,13].Since it is designed to work atop existing Internet infrastructure, DTN can be adopted as an overlaying adaptation facility to meet the application requirements.Adaptation at the application layer can also be realized through middleware that facilitate service-level interoperability, detection, and so forth.

Physical Layer
The physical layer (PHY) represents the boundary between the computational domain and the physical medium.Its role in adaptive communications is twofold.First, it is able to capture medium information necessary for adaptation processes.In the specific case of addressing spectrum scarcity in IoT, the technique to probe the spectrum utilization is termed spectrum sensing, which is one of the foundations of adaptive communication strategies.Second, it plays an important part in putting adaptation decisions into practice, since a major aspect of adaptations involve modifying the PHY layer parameters like operating frequency and transmission power.

Spectrum Sensing Techniques
A number of techniques have been proposed to deliver such fundamental functionality [14][15][16][17][18][19][20].Table 1 provides a summary of the most common spectrum-sensing techniques and their characteristics, including prerequisites and limitations that should be considered when choosing the most suitable methods for specific use cases.Matched filter, cyclostationary and eigenvalue-based detection tend to be most suitable where there is a need to distinguish the source of particular target signals.When this is not required for typical IoT scenarios, the energy detection, which has the least prerequisites and incurs the lowest computational overhead, is particularly appropriate for things with limited power budget and computational ability.

Matched Filter
For the detection of known signals, the matched filter technique provides arguably the most efficient and accurate option of spectrum sensing [21][22][23].By identifying and demodulating the target signal, spectrum sensing based on matched filter is able to deliver maximized received signal-to-noise ratio [14] whilst minimizing the effect of other noises.However, the matched filter entirely relies on the availability of a priori knowledge of the target signal, which cannot always be guaranteed.Moreover, the complexity of this approach can be considerable, both logically and physically: on one hand, maintaining the coherency with the target signal required for the demodulation introduces computational overhead, i.e., equipment cost [14]; on the other hand, it also tends to rise if multiple target signals are to be dealt with since individual signals have distinct characteristics and therefore require dedicated receivers [15].

Cyclostationary Feature Detection
Another sensing method is cyclostationary feature detection [24].Similar to the matched filter, a priori information about the target signal is required.Since modulated communication signals can be interpreted as multiplexed sinusoidal waves with periodicity, they are classified as cyclostationary [14].Features of different signals can therefore be identified via spectral correlation analysis [15,17].An important advantage of this approach over matched filter is that various target waves can be distinguished based on their spectral correlation functions, eliminating the need for multiple antennas where more than one signal is to be monitored [14,20].Another favorable outcome of this attribute is that regular data transmissions can remain active as signal detections take place since they do not affect one another [20].However, this method has its limitations.Apart from the reliance on prior signal knowledge, the computational complexity, for example, may be an issue depending on the processing power of the device.Furthermore, identifying signal features could take a relatively long time, consequently adding to the power consumption.

Energy Detection
Both of the previously outline methods focus on the accurate and efficient sensing of certain predetermined target signals, built upon the assumption that related a priori knowledge is in place.The energy detection is an alternative sensing technique which does not depend on such a precondition.
The concept of energy detection is straightforward: the receiver monitors the power level present in the frequency and the result is compared with a preset threshold to determine whether the channel is idle or busy [27].Although energy detection might not be able to match the performance of the other two methods in terms of detecting specific signals [32], it provides a cost-effective option well suited to a much wider range of user scenarios for IoT.The growing number of wireless applications using the ISM band including WiFi and Bluetooth makes the part of spectral space increasingly crowded, thus resulting in a greater chance of interference.In this case, the focus of spectrum sensing shifts from target detection to channel quality estimation for determining the desirable frequencies to use.It is therefore no longer of great significance to distinguish particular sources of transmission power.The study in [26] demonstrates that energy detection is able to deliver satisfactory results with cooperative sensing and sometimes even outperforms feature detection-based approaches.Accordingly, energy detection can serve as an inexpensive yet effective spectrum-sensing technique that is the most commonly adopted approach for spectrum sensing [20,25,26,33,34].

Eigenvalue-Based Detection
A relatively recent alternative spectrum-sensing method is the eigenvalue-based detection proposed by Zeng and Liang in [28].The algorithm first calculates the covariance matrix of the signal samples.The ratio of the maximum to minimum eigenvalue is then computed as the main metrics and its relationship with the detection threshold yields the sensing results [29].The detection threshold is key to the performance of this sensing method.The probability of false alarms were employed to deduce the appropriate threshold in a way that its relationship with signal and noise property is eliminated [31].
The eigenvalue-based detection has several advantages over matched filter and cyclostationary feature detection [30].Similar to energy detection, it does not require prior signal knowledge or noise patterns.On the other hand, since the metrics and detection threshold is designed to be irrelevant to noise circumstances, the eigenvalue-based measure is not affected by the noise uncertainty unlike the energy detection, which results in superior performances [30].The enhancement is, however, gained at the expense of computational overhead.According to [29], the complexity of this method is M * L times that of energy detection, where M is the oversampling factor or the number of receivers in an multi-antenna scenario and L denotes the sample size.

Reconfigurability
As shown in Figure 1, spectrum-sensing data are passed upwards to establish environmental awareness [32].The upper layer processes (to be detailed in later sections) analyze the data obtained at PHY, formulates spectrum decision and adapts PHY parameters on the fly (red arrow 1 in Figure 1).This reconfigurability serves as one of the fundamental infrastructures for adaptive communications because adaptations must have a means to be reflected through hardware behaviors in order to be meaningful [35,36].
Conventional radio systems were built of hardware with fixed functions, which was a necessity in an era of limited hardware capability.But advances in processor manufacturing makes reconfigurable radios possible [37], allowing for relatively easy customization as programming micro-controllers are widely understood with a large number of tools available [37].For example, most modern wireless sensors have their communication routines implemented in program code which can be modified at users' discretion.Moreover, GNU radio, an open-source toolkit, allows users to customize the signal processing, including demodulation, encoding, and filtering.However, its targeting hardware is considered too complex and expensive for typical IoT applications [38].
The most pertinent PHY parameters in this paper are operating frequency and signal strength, which are important factors in adapting to spectrum utilization and radio interference circumstances in the context of IoT.Accordingly, our system model illustrated in Figure 1 reflects adaptive radios with tunable operating channel and transmission powers.

Summary of Adaptive PHY
The context for this discussion is set by the recognition that radio frequency is an essentially scarce natural resource historically regulated in a static and inflexible manner.As a result, whilst some parts of the spectrum are sparsely utilized, others such as the industrial, scientific and medical (ISM) bands are under increasing pressure from numerous devices and associated protocols operating in the relatively narrow space.This situation will only become more challenging with the popularity of wireless communication and upcoming new technologies.
The knowledge of spectrum condition provides vital information for any potential measures aiming to mitigate the problem described above.A number of spectrum-sensing techniques have accordingly been proposed.The matched filter and cyclostationary feature detector can be used to capture the presence of target signals whose parameters such as waveform and cyclic patterns are known in advance.Although both provide accurate detection results, the prior availability of information may not be satisfied in every case, hence they are better suited under certain limited circumstances.In contrast, energy-based and eigenvalue-based spectrum sensing do not rely on such assumptions and are classified as "blind" detection [29].Energy detection uses purely the received signal strength to determine the channel condition.Despite the simplicity, its detection accuracy is prone to noise uncertainty.Eigenvalue-based detection, on the other hand, examines the eigenvalue of received signal covariance and does not share the drawback of energy detection [31].Although energy detection is, in many cases, outperformed by the eigenvalue-based approach [30], its remarkably low computational complexity and flexibility makes it one of the most popular measures, especially when spectrum sensing is purely used for probing the interference level rather than the detection of particular signal sources.
By exploiting the newly available information obtained via one of more of the above techniques, processes further up the protocol stack come up with educated decisions on how adaptations should be made to maximize the performance and minimize the adverse effects.Possible adaptive measures include the switching of operating frequencies, adjustments of transmission powers, suspension of communications, and so forth.In summation, PHY techniques discussed in this section are crucial for communication schemes in maintaining the capability to communicate amid growing competition for resources [35].

Media Access Control
Whilst the PHY provides the tools that makes spectrum-related adaptations possible, it is the media access control (MAC) layer which directly regulates the manner in which the spectrum-related functionalities are exerted to fulfill adaptive missions in IoT [8].This responsibility of regulation can be associated with either local sensing behaviors at individual nodes or the cooperation between network entities.Technologies for both categories, along with related tradeoffs, are reviewed in this section.

Local Sensing Configuration
There are mainly two aspects concerning how PHY layer sensing capability is locally controlled by MAC: the mode and duration of sensing.

Sensing Mode
The mode of spectrum sensing controls the acquisition of knowledge about spectral condition.Because the spectral area exhibits more changeable characteristics than conventional wired transmission media, spectrum sensing can either take place on demand of transmissions or be scheduled to repeat periodically [23,27,39]; these are known as reactive and proactive (or periodic) modes, respectively.
As described in [40], nodes in the reactive mode only sense the spectrum once they need to transmit data.If an available channel is located, the medium is accessed based on either carrier sense multiple access with collision avoidance (CSMA/CA) or synchronous mechanism.The reactive mode is power friendly as it minimizes power consumption by performing the least possible number of sensing [23].Also, as relatively little time is taken up by spectrum sensing, more time can be dedicated to data transmission, thereby helping to maintain the overall throughput.
Proactive sensing, on the other hand, is conducted periodically in addition to, or in place of, the on-demand sensing [39].This model, in contrast, pays extra overhead to gain an historical record of sensing data, which can further help formulate information about the spectrum characteristics.Such a practice can lead to accelerated processes of finding a white space [23] and more accurate detection, which could contribute to 30% less disruptions [41].However, although applications that are sensitive to delays incurred by channel switching would benefit from the feature, the system in energy-stringent circumstances could suffer from a shortened lifetime.The choice between these two mechanisms thus depends on the constraints of specific applications.

Sensing Duration
One of the most critical practical limitations facing the regulation of spectrum sensing is that a single antenna cannot undertake sensing and data transmission at the same time, and sensing can only take place in one of the channels [42].As a consequence, it is often only possible to obtain partial spectral knowledge by periodically making the antenna alternate between sensing and tranceiving activities.Moreover, the length of sensing time poses a scheduling tradeoff between sensing accuracy and transmission throughput [43], as summarized in Table 2.
A number of studies have been carried out to explore the tuning of sensing duration for the detection of certain predefined spectral events [26,[44][45][46][47][48].The approach presented in [44] establishes an analytical model of the relationship between sensing time and detection accuracy by employing a maximum a posteriori (MAP) energy detector.Based on the model, the optimal sensing and transmission time is derived.The work is subject to two main limitations: first, it assumes the prior knowledge of the characteristics of the target spectral event; second, it does not specifically address the tradeoff of network throughput in the context of periodic spectrum sensing.The iterative algorithm proposed in [47] finds the sensing period that maximizes the throughput.However it does not optimize the detection performance but rather requires the sensing accuracy as a constraint for the algorithm.Such a limitation is also found with the algorithm proposed in [26].By associating the probability mass function (PMF) of detection accuracy with sensing period and related overhead, the algorithm is able to find the sensing time that meets the detection requirement with minimized overhead.

Tradeoffs of Local Sensing Operation Configurations
Table 2 briefly summarizes the advantages and disadvantages associated with choices of spectrum-sensing mode and duration discussed above.
Spectrum sensing in the reactive mode is triggered only when nodes need to access the medium.Such an on-demand manner allows for higher throughput compared with the proactive approach.However, the reduced sensing operation potentially limits the volume of spectral knowledge, which could affect the accuracy of spectrum decisions.Similarly, the length of sensing periods poses a tradeoff between throughput and accuracy, as well.The longer devices spend in spectrum sensing, the more information can be collected; yet the less time there is left for data transmission.However, the optimization mechanisms discussed earlier aim at the detection of certain spectral events, whilst in many cases of IoT applications the purpose of spectrum sensing is to discover the channel desirability via observing the level of interference.As a result, this still remains an open challenge that needs to be addressed for individual scenarios.For instance, applications requiring high data rates cannot endure long sensing periods and are more inclined to adopt the reactive mode.

Cooperative Sensing
Due to the nature of wireless transmissions, signals are subject to various influences, such as fading and interference [49], and hence, the result of spectrum sensing may not accurately reflect the medium condition.Moreover, the spatial variation of wireless interference could lead to biased channel estimation.Consequently, individual nodes cannot make a reliable judgment of the spectrum utilization solely based on their own local sensing results [20].
The answer to the problem is to form MAC layer cooperation among IoT devices [20] by incorporating spatially distributed entities in a cycle of sensing, sharing, and decision-making procedures [35].Thanks to the collective robustness introduced by the diversity of their physical surroundings and spectral conditions, the chance of getting defective or compromised sensing results is reduced, leading to improved reliability compared with non-cooperative schemes [50,51].
In the following, some primary aspects of cooperative spectrum sensing are visited.First, the topological organization of the cooperation is discussed.Then, mechanisms for temporal coordination of sensing activities are reviewed.Afterward, two types of method for adaptive decision formulation are described and compared.Finally, a summary of cooperative sensing is provided.

Cooperation Architectures
The objective of cooperative spectrum sensing is to combat individual uncertainty or inaccuracy with collective knowledge [52].Therefore, how the spectrum sensing results of individual devices are shared bears considerable implication on the performance.
There are generally two types of architecture for cooperation: centralized and clustered [20].The centralized model is built around a singular network-wide authoritative entity called the fusion center (FC) [47,[53][54][55][56][57][58][59][60].Nodes under this paradigm carry out spectrum-sensing routines independently and send their individual local results to the FC through a common report channel.Global decisions are formulated via certain decision-making algorithms at FC, which subsequently instructs participating nodes on further actions.Despite the simplicity of this scheme, it suffers from a range of potential shortcomings, including scalability issues and controlling overhead and excessive energy consumption of the FC, particularly for large-scale wireless networks.
The clustered approach is considered a more sustainable option [20] and has already been widely adopted for the organization of WSNs because of its advantages over non-clustered, centralized schemes in terms of reliability, robustness, scalability, network lifetime, and so forth [61][62][63][64][65][66].With clustering, the network is segregated into several clusters that consist of subsets of nodes, establishing a hierarchical structure.In each of the clusters, one of the nodes is elected as the cluster-head (CH).Although the technique was introduced to mainly improve the routing of data, it can be easily extended to facilitate sensing cooperation by making the CHs collect sensing data from other members of their cluster and generate local channel decisions in a similar manner to the FC of the centralized model.In the next section, a number of common clustering algorithms are reviewed.
Two basic criteria can be employed for network division and CH election, namely node identifiers (IDs) and locations.The ID-based clustering is arguably the most straightforward approach.It simply determines the role of nodes according to their unique identifiers [67], which, in practice, can be extracted from MAC address or regulated manually by administrators.Based on specific settings, the node with the greatest ID value within the communication range is elected the cluster-head.Despite the notable simplicity, the method has some apparent drawbacks in that it does not take into account of the prospective CH's location in the cluster.For example, the node with the highest ID may reside at the edge of the cluster and does not have very good connectivity with nodes at the other end of the area.In that case, the ideal CH would have been those in the center of the cluster.Another potential issue is that the scheme tends to overload a particular set of nodes, since the system is inclined to select those with IDs favored by the election mechanism.Although such a problem can be mitigated by ID rotation, the associated overhead can be an issue [68].
The location-based clustering algorithms, in contrast, elect the nodes with the most neighbors to be CHs [69,70].Although the selected CHs are arguably the best connected in the cluster, this approach can still cause premature power drainage if some clusters have considerably more members as an imbalanced network load could quickly exhaust the power of busy CHs and affect the network lifetime.This approach is also vulnerable to the possible scenario of highly mobile network devices, where frequent updates on cluster-head election are necessary since distances between devices are constantly changing.
A number of more sophisticated tactics have been designed to address the power consumption problem.The approach in [71] constantly updates the optimal transmission radius of CHs, i.e., cluster sizes, using the Ad Hoc network design algorithm (ANDA).The non-CH nodes accordingly choose their preferred CHs and the resulting cluster arrangement first ensures network uptime before the first power depletion of the CHs is maximized.However, the study has multiple limitations, such as depending on prior knowledge, including the locations and quantity of nodes, as well as adjustable transmission powers.The most important challenge is that all CHs are fixed in advance and it is only the allocation of cluster members that the algorithm is able to update.
The weight-based distributed clustering algorithm proposed in [68] takes into account multiple parameters to improve the battery life of nodes.For example, the sum of the distances with all neighbors is considered since communication with distant entities consumes more power.The update of clustering is only triggered when changes of the distances are detected.The mobility of nodes is also considered and less mobile nodes are more likely to be made CHs.Furthermore, to address the problem of unbalanced workload, the cumulative time that nodes have acted as CHs is also computed as one of the metrics to gauge the extra power consumed for being CHs.
The above algorithm infers the power consumption via the measurement of time.However, it does not consider the fact that nodes may have different energy levels at the commencement of the clustering algorithm.The algorithm proposed in [65] determines CHs based on not only the uptime of CHs but also their transmission activities.By calculating the remaining power level of the node by taking into account the number of sent and received packets, a metrics of remaining power and capability of acting as CHs is generated.The algorithm then selects the nodes with the highest metrics value to be the CHs.
A similar scheme is presented in [62] as the energy efficient cluster header selection (ECS) algorithm.Although it also elects the CH based on power level, the algorithm is designed to use only local information of each node to curb controlling overhead.Consequently, power information of neighbors are not explicitly exchanged but inferred based on the presumption that the initial power levels of all nodes are known in advance.
An adaptive topology formation algorithm based on spectral environment is devised in [72].A given node starts listening in to all usable channels one by one and: (a) becomes a CH if it hears nothing, or (b) joins an existing cluster as a regular member if it receives a beacon from the CH of that cluster, or (c) goes on to listen in the next available channel if it is more than one hop to the existing CH.

Sensing Scheduling
MAC does not only coordinate the medium access for regular data transmission, but also for spectrum sensing when cooperation is involved [73].Akin to medium access which can be either random or synchronous, the spectrum sensing can also be scheduled to take place following either of the two approaches [74].Because of the limitations of the random access approach in typical applications, such as dedicated antennas, PHY layer techniques and the size of cooperation, many adaptive sensing networks adopt synchronous spectrum sensing, which is essential for those employing energy detection at PHY [20].
The synchronization for cooperative sensing introduces additional complexities, and one of the most notable solutions is the adoption of time-division multiplexing (TDMA), which divides time-space into indefinite series of consecutive timeslots.Inspired by the TDMA-based channel-hopping technique described in [49,75,76], the work in [3,77] were able to conveniently coordinate the cooperative activity by assigning timeslots to tasks, such as suspending normal communication, in order to create quiet periods during which the channel noise floor can be sensed without interference among fellow motes.

Decision Formulation
Since the concept of cooperative spectrum sensing is ultimately reflected by the fact that adaptive decisions regarding spectrum are made by considering information of all cooperative peers, formulating final decisions upon the acquisition of collective knowledge is another critical aspect of MAC cooperative adaptation.
Decision-making schemes can be broadly classified as soft fusion or hard combination according to the type of data involved [20].In networks using soft fusion, cooperative nodes report their raw spectrum-sensing data to the decision-making entities such as cluster-heads (CHs), where adaptive decisions are formulated.The exchange of complete raw data, however, incurs overhead in terms of bandwidth, as well as computation.Thus, briefly processed data is often exchanged instead [20], which can be seen as a semi-soft approach.For example, [78] deploys a model where local sensing results are converted into integer values.In [59], quantized probability density function (PDF), rather than raw sensing data, are reported to the CHs.
With a hard combination [52,57,[79][80][81], contrary to soft fusion, only 1-bit binary information is utilized.Specifically, individual nodes generate tentative local values in the form of 0 or 1 to indicate decisions such as the detection of a major interference source or the need to change operating frequency.Similar to soft fusion, these local decisions are then reported to the CHs or fusion center, where they are analyzed to yield the final judgments [82].
A hard combination scheme is sometimes described as decision counting and generalized as n-out-of-M rules, where M is the total number of local decisions and n denotes the final decision-making threshold [83].From this model derive the two most straightforward and commonly adopted strategies, namely the OR-rule and the AND-rule.The OR-rule [57,79,84] arbitrates the final decision of 1 if any of the received local sensing decisions indicate that value.Hence, the OR-rule corresponds to the situation where n = 1 in n-out-of-M .As a contrast to the OR-rule, the AND-rule produces 1 only if all M out of M local decisions agree on such a discovery [85].It is argued in [86] that the choice between the two rules depends on the threshold used by individual nodes.According to the findings, the OR-rule provides good performance if the threshold is considerably high, whilst the AND-rule tends to be optimal in the case of a sufficiently low threshold.There are also a multitude of alternative combination techniques.For instance, analysis presented in [83,86] suggests that for most of the cases, the combination criterion of (M/2)-out-of-M provides the optimal outcome.For either of the two approaches, the decision-making entities are able to apply weights to individual local results rather than giving them uniform significance to make refined decisions [54].A number of criteria for determining weights were reported in the literature.Device locations [87] and signal-to-noise ratio (SNR) observed by the users [88] are among the basic attributes that can be associated with the weights.Additionally, more complex statistics such as the historical consistency between local sensing results and final decisions [58,89] can help determine the reliability of certain nodes.Based on these records, local decisions from reputable users are granted greater weight, whilst users that tend to produce inconsistent results are assigned less significance.
Both soft fusion and hard combination have their advantages and disadvantages.With soft fusion, the most comprehensive spectral information at each node is exposed to the fusion process.This inherent richness of information associated with the raw data enables more sophisticated analysis to be accomplished and thus may lead to a greater chance of more accurate detection and advantageous performance over hard combination [52,85].Compared with soft fusion, hard combination incurs less transmission and computation overhead, though the lack of detail may result in suboptimal performance [20].It is argued in [52] that hard fusion is able to perform nearly as well as soft combination since simulations carried out in [90] show that hard combination based on energy detection provides comparable performances when the number of cooperative peers is about 1.6 times that of soft fusion.
Some mechanisms incorporate both the soft and hard mechanisms for optimized outcome.The scheme proposed in [91] demonstrates one of the examples which uses dual-mode in order to improve signal detection.Hard combination is adopted by default with predefined upper and lower thresholds which are shared among all users, similar to [92].The final decision is 1 if the result is below the lower threshold and 0 if above the higher one.Decisions are then reported to CHs or FC.However, nodes cannot make local decisions if the detected energy level falls between the two thresholds; alternatively, they handle the "unknown state" by switching to soft fusion and send local sensing value to cluster-heads or the FC instead.Accordingly, the entity responsible for the fusion process would need to make higher level soft fusion on behalf of those indecisive nodes and then combine all decisions to generate the final judgment [91].A two-stage hybrid data fusion is proposed in [93].Nodes firstly make local decisions and report them for fusion.If the result is 1, the system perform corresponding adaptations; otherwise, the second stage is invoked where soft data is requested from the adaptive nodes to make more careful decisions [93].The rationale behind this algorithm is that a double-check mechanism using soft data is launched if no consensus is reached using hard combination.

Summary of Cooperative Sensing
At the end of this section, some summarizing discussions are provided for the three important aspects of cooperative sensing discussed so far.
First, key facts of the two main topological models for cooperation are presented in Table 3, revealing a number of advantages of clustered architecture over its centralized counterpart.The most important benefit of clustering is that the decentralization of decision making to smaller clusters improves the system flexibility and reliability.Despite different techniques involved, clusters are commonly formed by nodes that are geographically close to each other.Therefore, decisions made locally within clusters better reflect the specific situations of their physical environments.It is worth noting that, according to findings in [94], the probability of path failure tends to increase significantly under influences of the potential problem of correlated shadowing, which is the fading experienced in multiple paths caused by the same large obstacle such as concrete pillars indoors or outdoor trees [94,95].As a consequence, this problem can negatively affect the cooperation among clusters and hence their overall performance.As a result, careful thoughts on node placement are recommended in environments that are prone to correlated shadowing [95].The clustered structure also reduces the communication overhead.Since reports from cluster members are confined to their groups, the frequency of sending and forwarding operation is restricted.Distant transmissions are also minimized as cluster members are usually only one or a reasonably small number of hops away from their CHs.These factors together enhance the efficiency and power consumptions, extending the network lifetime.Moreover, the necessity of global communication and report channels is eliminated with clustered sensing network [96].Instead of using a single controlling frequency throughout the entire network, each cluster is granted the autonomy to individually choose their own channels for exchanging control information and reports [72,97].This distributed decision-making mechanism can better accommodate the local spectral situation and greatly improves the network flexibility and robustness.The centralized model treats the entire network as a unitary area.This simplicity means it can be easily configured but is not efficient for larger networks.The clustered model, on the other hand, divides the network into multiple manageable segments (clusters) where many adaptive operations are conducted autonomously, reducing various overheads.
Second, Table 4 generalizes the pros and cons associated with both random and synchronous sensing scheduling.The scheduling for cooperative sensing is not entirely independent from techniques used at PHY.For example, energy detection is only capable of sampling the strength of signals without distinguishing their characteristics or sources.As a result, network-wide quiet sensing periods are required for the sensing result to be meaningful.Synchronous scheduling such as TDMA greatly helps ensure the validity at the expense of synchronization maintenance.Randomly arranged sensing does not entail such overhead, but options at PHY layer are limited to relatively more complicated techniques such as cyclostationary feature detection.The choice of the scheduling mechanism also influences the effectiveness of adaptation and ultimately depends on specific applications.For example, devices such as wireless sensors usually conduct synchronous spectrum sensing because their limited computational power can only afford energy detection at PHY.
Finally, facts of soft fusion and hard combination are summed up in Table 5. Soft fusion centralizes the power of decision making to CHs by requiring raw or slightly processed (e.g., quantized) sensing data from cooperative nodes.The resultant comprehensiveness of information contributes to the possibility of a finer granularity of control.But the overhead in terms of transmission, storage and computation is inevitably high.Hard combination distributes the workload of formulating spectrum decision to all cooperation participants.Nodes individually compute their local yes-or-no decisions and report them to CHs where an overall judgment is reached.Compared with soft fusion, the exchange of 1-bit binary decisions allows for minimal pressure on the links and the more evenly distributed computational complexity among CHs and ordinary members.

Network Layer
The network layer is mainly responsible for routing and addressing, which deals with determining the hop-by-hop data paths and ensuring network-wide connectivity, respectively.The network layer in the context of IoT is, to some extent, comparable to the notion of opportunistic networking [100] as they face similar challenges: communication is among heterogeneous nodes and no preset links among them are assumed [101].With the problem of spectrum contention described in previous sections, adaptations need to be made at this layer to protect systems from performance degradation.

Spectrum Awareness and Routing
Since links in IoT and especially wireless sensor networks are often unreliable, routing is usually done in an opportunistic way [102,103], i.e., decisions on next hops are made at each node by discovering forwarding opportunities [102].Because the spectrum condition is one of the main defining factors of wireless transmission opportunities, the availability of spectral knowledge provides the routing protocols with additional information and opens up chances for adaptation and optimization in Internet of Things [104].
Talay and Altilar in [105] propose a link-state routing algorithm aided by spectrum awareness.Each node implementing the scheme maintains its own database of the link cost as with regular link-state algorithms.However, the primary metric for link cost evaluation is channel availability.The spectrum condition is updated periodically and if a link is disconnected because the channel is unavailable, its associated cost grows.In the case that the problem persists, its cost will become so high that it is no longer chosen for packet forwarding.Spectrum Aware Mesh Routing (SAMER) [106] adopts a similar strategy with the difference that the metric used is not just the channel availability but also the quality in terms of bandwidth and error rate.A spectrum utility function is formulated in [107], based on the principle of dynamic back-pressure.Corresponding spectrum utilities are calculated for the set of possible nodes for the next hop and the one with the maximum result is chosen.
The preceding examples achieve the optimization in a hop-wise manner, that is, the paths to the next hop are determined solely based on information at the current one.There has been a number of studies aiming at further enhancement by making per-route rather than per-hop decisions.A relatively straightforward example is presented in [108].No common control channel is assumed and every node from the source to the one before the destination has to broadcast discovery messages on all channels to determine the next hops.Nodes also put local channel availability information in the discovery messages so that the destination node learns which channels are usable at every hop and can assign one of them to be used by this particular data flow throughout the route.Despite its simplicity, this algorithm has two main drawbacks.First, the all-channel broadcasting incurs considerable overhead.Although the problem is argued to be alleviated by limiting the number of available channels [108], this would, in turn, increase the vulnerability of the network.Secondly, using a single channel for the entire route means lack of flexibility since it is possible that "good" channels may end up unused simply because they are unavailable between two hops of a lengthy route.Such a problem would add to rather than mitigate inefficient spectrum utilizations, which lead to the need for adaptive communication techniques in the first place.
The mechanism in [109] consists of two phases of operation.Nodes can have more than one entry to the same next hop on different channels and traffic is randomly distributed among them at every hop.Once adverse spectral events are detected in certain frequency, routing entries based on that channel are disabled.Although this algorithm improves the forwarding reliability by incorporating the spectral diversity, and the usage of a common control channel mitigates the broadcasting overhead as in [108], there are still efficiency concerns, i.e., the lack of granularity could lead to wasted channel opportunity and overcrowded frequencies in some parts of the network.
The SPEAR routing protocol developed by Sampath et al. [110] is based on a similar discovery mechanism as [109] to build a database of channel availability at every node.However, each node broadcasts its local information so eventually the whole map of availability is synchronized within the network.More than one path towards destination can be established by nodes sharing commonly available channels and used for different data flows.
The notion of Route Robustness is introduced in the algorithm devised in [111].Based on spectral data collected at lower layers, each link between two nodes has a set of probabilities associated with all channels, thus indicating the likelihood of uninterrupted transmissions in corresponding frequencies.The degree of robustness of a route is then determined by the product of the maximum achievable values of associated probabilities of each link along the way, which is essentially controlled by the most robust available channel.Routes are extended from the source towards the destination via nodes that could form links meeting a certain threshold of robustness [111].After the elimination of those resulting in loops or leading to a dead-end, the destination node is eventually reached by a set of one of more possible routes.Using an Integer Linear Programming (ILP) model, the final route and channel used in each links are decided.The authors of [111] argue that routes chosen with this method improve the throughput as it exhibits the lowest probability of encountering spectral disruptive events.Simulation results also demonstrate the advantage of adopting this criterion over transmission-rate based route selection strategies [111].
The scheme proposed in [112], demonstrates a different way of thinking by introducing bi-directional activity between the MAC and the network layers.No longer passively accepting the channel assignments, the network layer actively casts effects on the spectrum decision making in a way that optimizes the performance whilst still satisfying lower layer constraints.The work employs the concepts of flow-segment (FS) and maximum flow-segment (MFS) to facilitate channel selection.An FS is defined as a route consisting of consecutive nodes that can communicate using the same frequency.Sometimes there exist multiple FSes from a node towards the destination and the one incorporating maximum number of nodes is the MFS.Transmissions in [112] take place in an on-demand manner.A source node with data to send initiates the dissemination of spectrum information.Starting from the sender, every node captures the local channel availability and forwards a summary of FSes leading to itself in all channels upstream towards the destination node.If at some node X the channel used by MFS from downstream is unavailable, for instance due to interference from other secondary users, node X is then said to be a "decision node" which is responsible for choosing the MFS and assigning the channel for its downstream route.The process is repeated until the destination is reached and the entire route is established, consisting of the smallest possible number of MFSes, which reduces frequency-switchings and therefore achieves lower end-to-end delay and higher throughput.The authors claim the algorithm minimizes the amount of channel hopping.It is noted, however, that minimum channel switching is, in fact, only guaranteed for sub-routes between adjacent decision nodes.The resultant channel choice for the entire path is therefore composed of best decisions of sub-routes.However, this scheme does not necessarily yield the optimal overall performance in terms of the amount of channel switching when taking into account the whole map.For example, it is possible that a combination of second-best sub-route decisions may together lead to a better overall frequency hopping reduction.

Network Integration
Another opportunity at the network layer is the integration of numerous things based on heterogeneous hardware and standards [10] into unified IoT, inspired by the singular predominance of IP.
The problem of interoperability was historically addressed by implementing translation mechanisms in the gateway node sitting on the border between the wireless network and the Internet.Gateway nodes are usually connected to a workstation or a wireless access point so as to communicate beyond their local network.By equipping the gateway with translation capability, packets going through the border are examined and reconstructed according to the protocol used by its destined network.A potential problem with this approach is that the wireless network is essentially hidden behind a multi-protocol representative-the gateway, rather than truly integrated into the entire Internet.As a result, it is difficult for a user at the other side of the globe to, for example, access the data of a particular node as if it were a computer, because the header of protocol used may have no field to hold such information.The overlay architecture proposed for opportunistic networks partly mitigates the implementation overhead [101], but the introduction of a new abstraction layer which incorporates various link-level technologies could offset the benefit.
The advent and developments of IPv6 over Low power Wireless Personal Area Networks (6LoWPAN) [11,113] have provided a more feasible solution to this problem.Unlike lower layers such as PHY, MAC and upper layers, including the transport layer and upwards, where various standards and technologies are deployed, the network layer is dominated by Internet Protocol (IP).Such a characteristic renders the network layer an ideal point in interfacing layers and a fundamental component in the integration process [10,114].The rationale behind 6LoWPAN is to utilize the well-established and well-understood IP standard, instead of carrying out a time-consuming and error-prone process to conceive of different schemes [113] and later being forced to deal with incompatibility issues.Because 6LoWPAN is a compact version of IPv6 optimized for low power wireless transmission, relatively simple adaptation procedures are used to switch between the ordinary IPv6 protocol and 6LoWPAN.Unlike the previous approach, the IP nature of 6LoWPAN ensures the entire network is a seamless integration of things and the Internet, and this practice has been employed in studies such as [3,115] to form IP-based wireless sensor networks.Although 6LoWPAN was designed for wireless sensor networks (WSNs), the idea is not exclusive to specific applications and can be extended to any power-constrained IoT devices.

Summary
The adaptations at the network layer extend the performance improvement from local clusters to a network scope.Spectrum-aware routing protocols can exploit the availability of spectral information at lower layers to determine more appropriate paths across the network to avoid packet loss or optimize frequency utilization.This layer is also marked with the notable opportunity for network integration.The predominance of the Internet Protocol (IP) makes it a suitable universal language for miscellaneous IoT product.Although IP is historically considered too heavyweight for devices such as wireless sensors, IPv6 over Low power Wireless Personal Area Networks (6LoWPAN), a compact version of IPv6, provides a viable solution which fosters rapid implementation in WSNs.Since 6LoWPAN is intrinsically compatible with IP, various low-power IoT devices not only communicate in a way that is far more efficient than numerous one-to-one translations, but also connect seamlessly with the vast existing IP-based Internet.Technologies, including how the routing discussed is able to function normally since only minimal, if any, adjustments are needed, e.g., the type of identifier.

Transport Layer
Traditional transport layer protocols such as transmission control protocol (TCP) manage end-to-end delivery.The key ingredients of such functionality include flow and congestion control and error recovery [8], which, in the face of the changeable wireless medium and particularly the adaptive operations at lower layers discussed in preceding sections, are exposed to unique challenges.For example, TCP attributes unacknowledged datagrams to congestion; however, such an assumption is no longer valid when considering IoT devices that switch to different frequencies when strong interference is detected in the current channel.Such adaptation could lead to momentary disruption of communication even if the path from the source to the destination is in fact congestion-free.Therefore, traffic control measures may prove futile or wasteful as this type of transmission failure cannot be remedied without understanding the underlying factors.This section reviews some of the studies aiming to solve this problem.
A series of transport layer protocols is designed in [116].These enhanced versions of TCP take into account the behavior of the fluctuation associated with spectrum-sensing activities.More specifically, the return time (RTT) and bandwidth are tracked to infer the state of a system including spectrum-sensing operations.Based on such inference, a set of rules is formulated to determine the window size of TCP.Simulation results then suggest that protocols with or without advanced rules universally outperforms traditional TCP and that the throughput is further improved with the implemented advanced features [116].
TP-CRAHN, TCP adapted for ad hoc network nodes with spectrum-sensing capability, is proposed in [117] in order to deal with disruptions caused by spectral availability variation and node mobility, together with two additional challenges, namely the route suspension caused by spectrum sensing and tradeoff between throughput and sensing accuracy [43,117].The strategy of [117] is to make spectrum-related events and parameters explicitly known to the TCP protocol.In contrast to [116], configuration details such as sensing duration and commencement times are exchanged during connection establishment.As a result, the source can control the data rate and congestion window based on spectrum-sensing arrangements to avoid packet loss and retransmission buffer overflow.Upon transmission suspension due to disruptive spectral events, nodes record the current operational state, which is used for calculating new transmission parameters once the frequency switch is completed.Hence, the resumed transmission is tuned based on previous settings, instead of starting with a clean slate, thus helping preserve performance.As a step further than [116], each node during normal communication collects the received signal strength (RSS) of acknowledgment packets from its next hop and compares the values with minimum device reception power.By applying such information to an estimation framework based on the Kalman filter [117], the mobility of nodes is predicted and the congestion window is limited as a precaution of probable disconnections [43].
The mechanism described in [118] aims at performance optimization utilizing ongoing or historical connection records.It is assumed that characteristics of TCP connections can be stored by entities such as database servers or access points, and the information is available at the time of future connection establishment.Whenever a source attempts to build a connection, it first checks the database.If records matching the requested destinations are found, the corresponding configurations can be used so that the source does not need to go through the phase of a slow start.When the spectral utilization and node mobility patterns are relatively steady or self-repeating, such a scheme can improve the efficiency of the TCP.

Summary
The transport layer manages end-to-end communication, which should take into account underlying medium conditions in the context of IoT.A number of adaptive transport layer protocols have been reviewed in this section.By incorporating spectrum knowledge from PHY/MAC layer, the data flow can be more accurately regulated and congestions can be better curbed.However, not a great many studies have been dedicated to this area and a considerable number of challenges are yet to be addressed.First, it is pointed out in [43] that a reliable control channel to disseminate spectrum-related parameters has a vital effect and calls for investigation.Also, the issue of security vulnerability at the transport layer is raised in [119].For instance, malicious parties could pose themselves as sources of monitored spectral events by generating signals bearing certain features.Unguarded nodes would accordingly vacate the channel and look for a new frequency, during which the transmission is interrupted and the loss of ACK packets reduces the congestion window.Persistent attacks on multiple channels sometimes can even cut off the connection permanently [119].Furthermore, existing literature has largely focused on TCP.Though TCP is arguably most commonly used, other transport protocols such as UDP and ATP [120] are potential candidates for low-power wireless networks and yet remain undiscovered.

Application Layer
Techniques discussed so far constitute an adaptive infrastructure which physically delivers data around IoT and hides underlying matters such as spectrum utilization and congestion control from the application layer.Accordingly, this layer is typically only concerned with the Internet services.

Delay-and Disruption-Tolerant Networking (DTN)
As identified in Section 2, one of the roles of application layer in the adaptive framework is to improve the protection of services against uncertainties of wireless communication.One of the main challenges facing IoT applications is the common risks of delay and disruptions due to the unpredictable nature of wireless medium.There are many possible sources for communication delay and disruption.For example, a very sparsely deployed sensor network application based on TCP may suffer from the long round trip time.Also, shadowing and fading effects may also result in disruptions [13].Different from with cabled Internet, the end-to-end connectivity can no longer be taken for granted in the context of IoT [13].
Delay-and disruption-tolerant Networking (DTN) [12,13,121] aims to provide an adaptive and robust communication mechanism that is overlaying all lower layers.The distinctive feature of DTN is its philosophy of eventual connectivity [12].Specifically, DTN does not assume stable end-to-end paths or the ability of retransmission.Instead, it embraces the store-and-forward approach, with which data transmission is conducted on the basis of bundles, rather than individual packets [121].The bundle protocol operates at the application layer, and does not require certain lower layer technologies.Bundles are stored at each hop and only forwarded when there is an opportunity; they are addressed using endpoint identifiers (EIDs).
The DTN technology has already been adopted by sensor networks in areas such as underwater acoustics, habitat monitoring and astronomical object tracking [121], where delay-and disruptions are to be expected.Two examples are presented in [122], designed for lake water quality and motorway noise monitoring, respectively.

Application Layer Interoperability
Another opportunity for the application layer is to provide service-level adaptations via middleware [123][124][125].
One aspect of the application layer adaptation is the service-level interoperability.Different from the network-level interoperability discussed in Section 5, which is concerned with the physical connectivity, interoperations at the service-level are context-oriented, i.e., it takes into account the content of information and attributes of services [124].Middleware implemented at the application layer can discover, manage and exchange application program interface (API) information, focusing on the interoperability between diverse services instead of devices.The awareness of context is another important part of IoT middleware [125].Information regarding the context can be collected by devices such as wireless sensors.Middleware, in turn, manages these data and converts them into context knowledge meta-data.Various things can obtain context awareness via the middleware and adjust their behaviors accordingly.
An example of IoT middleware that facilitates interoperability can be found in [123].Specifically, after the detection of devices, semantics of available services are generated.By invoking service through APIs, operation details are hidden from users and the tasks are conducted using necessary services with no restrictions on the locality of service providers.
A semantic architecture for highly heterogeneous smart homes is prsented in [126].Making use of the Java-based Open Services Gateway Initiative (OSGI) framework, it provides the interoperation and contextual knowledge retrieval among various devices.Additionally, the abstraction of APIs not only facilitates the integration, but also development of future services.
The UbiRoad [127] is a middleware devised for smart road environments.Due to the nature of the application, the awareness of context poses a vital requirement.Through the middleware, the traffic context is collected using wireless sensors.Additionally.artificial intelligence (AI) is employed to deduce contextual knowledge about driver behaviors.Utilizing this context information, the system can act accordingly to exert traffic safeguarding measures.

Summary
The application layer is open to adaptation opportunities at the service level.Through the deployment of adaptive middleware, the interoperability requirement of IoT is met in the form of service integration.The behavior of applications can also adapt to the specific context with the help of contextual knowledge deduction and retrieval of the middleware.Although many studies have been dedicated to this area, no one has yet provided an ideal solution that completely satisfies IoT requirements [124].As a result, IoT middleware will remain an open and active research domain.

Cross-Layer Optimization
Cross-layer approaches typically entail additional interfaces between layers, parameters jointly affected by multiple layers, as well as protocol design coupled with specifications of other layers [128].It is evident from Figure 1 and discussion throughout preceding sections that this type of inter-relationship beyond conventional layer boundaries is vital for spectrum-based adaptations.This is hardly unexpected as [128] points out the deviation from reference layered architecture is an inevitable practice for the design of intelligent wireless networks.It should be noted that this concept is by no means exclusive to spectrum-related optimization, and this section thus reviews several adaptive approaches that exploit general cross-layer synergy.
A cross-layer measure incorporating PHY, MAC and network layer to maximize network lifetime is described in [129].It first forms a convex optimization problem to deduce the sets of optimal data rates and transmission powers.Then an iterative process is carried out to find the optimum medium access schedule that satisfies the feasibility of rate and power identified previously.One potential drawback of the algorithm is the computational complexity, since at each iteration, links are adapted and the convex problem is resolved to ensure most advantageous transmission parameters.
The protocol proposed in [130] couples non-conterminous layers in order to exploit the interdependency between local events and end-to-end congestion.An intelligent congestion detection (ICD) mechanism is introduced so that the interval time between two consecutive receipts of packets are measured at MAC.The ratio of average packet service time over average packet inter-arrival time is calculated and kept as the indicator of congestion degree.Such an index is propagated from receiver to the senders.The transport layer upon receptions of the congestion degree then adapts its transmission rate accordingly.The similar cross-layer collaboration is presented in [131].In this work, scheduling at MAC is coupled with congestion control at transport layer in a way that they become mutually dependent, achieving joint optimization of the pair of significant factors of network performance.
The schemes mentioned earlier share a design ideology that retains the existing network structure whilst optimization is achieved by adapted cross-layer interactions as depicted in Figure 1.Thus, they can be perceived as an evolution rather than an elimination of layered architectures [128], necessitated by the demand of more adaptive communication paradigms in the era of IoT.
There are more radical approaches in exploiting cross-layer adaptation opportunities.Unlike the previously described "moderate" way of optimization, the layered architecture is made implicit or even redesigned in these works [132].One of the examples is the single unified cross-layer module (XLM) proposed in [133], which aims to replace the entire conventional protocol hierarchy for wireless sensor networks.The novel concept of "initiative" is the cornerstone of the module.The function of "initiative determination" is invoked by the receipts of ready-to-send packets broadcast from nodes willing to transmit, generating a binary variable indicating whether or not to participate in transmissions.Criteria used for this purpose involve information that traditionally resides at multiple network layers.For instance, the received signal-to-noise ratio (SNR) of RTS packets (PHY) must meet certain thresholds; the packet relay rate (network layer) and generation rate (application layer) also need to satisfy certain constraints.Accordingly, such a mechanism merges congestion control, hop-by-hop reliability and so on into the singular XLM entity and is hence implicitly cross-layer.
The research topic of content-centric networking (CCN) may inspire some even more revolutionary measures [134].Communication under traditional network architecture is based on the address of the information provider and the conversations between places of data origin and destination.This location-oriented method was a necessity in the early days of Internet where computers and conductivities were not as ubiquitous as nowadays.Content-centric networking proposes to replace the emphasis of "where" with "what," as it is what service users are actually interested in [134].Under the new architecture, resource identifiers are abstracted content rather than IP address and users only receive information for which they have explicitly solicited, as implemented in [135].This ideology is similar to, but less conservative than, WoT and it facilitates fundamentally different ways of optimization.For example, congestion control is no longer performance in a end-to-end basis since, in a content-centric network, the location/identity of the sender has little significance, and the receiver is only concerned with links between neighbors.CCN also comes with a built-in security mechanism, whereby protection is associated with individual pieces of content via digital authorization and encryption [134].

Summary
There are generally two categories of cross-layer optimization [132].The first one retains the overall existing architecture and extends interactions among layers, as illustrated in the conceptual model of this paper.There is already a multitude of works dedicated to exploitation of such opportunities to adapt to various requirements in the context of IoT.The inefficiency of traditional protocol architectures also gives rise to the second type of optimization, which takes more radical approaches [128].Both cross-layer module (XLM) [133] and content-centric networking (CCN) propose novel architectures.XLM incorporates all network layers into one singular entity, and conventional cross-layer communication is made intrinsic.Content-centric networking (CCN), on other hand, is built upon the core abstraction which is shifted from the location identifiers such as the IP address to the content name.Compared with the first type where optimization is selectively done within the existing framework, CCN provides a holistic revolution which can potentially be the infrastructure of future Internet of Things.

Conclusion
In this paper, we surveyed a multitude of techniques that can be incorporated to achieve adaptive communications in order to meet the challenges of the Internet of Things (IoT) [2].For the problem of spectrum scarcity and competition, the spectrum-sensing techniques at the physical layer (PHY) and the cooperative mechanisms at the media access control (MAC) layer play arguably the most important role.The resultant adaptive channel access allows things to exploit the under-utilized frequencies and avoid interference.Routing and flow control can also take advantage of the spectral knowledge to improve the rate of successful packet delivery.
The challenge of interoperability in IoT is addressed at both the network and application layers.Whilst 6LoWPAN enables the seamless integration of various intelligent artifacts and the existing Internet at a connectivity level, the service abstraction and context awareness provided by IoT middleware facilitate the interoperation from a user-oriented angle.The delay-and disruption-tolerant overlay at the application layer is also reviewed.Such technology is particularly important in case of highly unstable connectivity and distant transmissions.
Despite the conventional structure of the review, it becomes clear that a cross-layer ideology is either implicitly or explicitly employed, as the stringent distinction between layers has already lagged behind the advanced requirement of IoT.Such a trend is inevitable for designing adaptive communications for IoT [128] and more forthcoming studies in this area are anticipated.

Figure 1 .
Figure 1.Adaptation Opportunities and Techniques: The Component Stack to the left highlights the adaptive opportunities identified at different layers of a typical low-power IoT product such as wireless sensors.The rest of the figure demonstrates an exemplar scenario of interactions between traditional Internet hosts and adaptive wireless networks.The integration is achieved via the adoption of a compact version of IPv6 called 6LoWPAN in the power constrained wireless devices.A lightweight adaptation between the 6LoWPAN and standard IPv6 is performed at the gateway.

Table 1 .
A summary of main spectrum sensing techniques.

Table 3 .
Summary of cooperation models.