Keywords

1 Introduction

Wireless NanoSensor Networks (WNSNs) are novel networks which consists of large numbers of nanosensors. These nanonodes ranging from nano to micro meters in size can perform very specific tasks, such as sensing, computing and transmitting. Compared to nodes in classical wireless sensor networks, nanonodes can detect new types of events at nanoscale. As a consequence, WNSNs will enable a wide range of applications in biomedical, environmental, industrial and military fields, such as health monitoring, drug delivery systems, biological and chemical attack prevention [1].

Graphene-based nano-transceivers and nano-antennas are envisioned to communicate in Terahertz band (0.1–10 THz) which provides very large transmission rates, up to Gb/s or even higher [2]. Furthermore, nano-devices take advantage of the peculiarities of Terahertz band, such as the narrow beam and good directivity which can be used to detect and precisely position smaller targets. Therefore, electromagnetic communication in Terahertz band is a promising approach to develop simple but efficient modulation scheme in the physical layer of WNSNs.

Previous work on energy efficient routing in WSNs is not directly applicable to WNSNs, due to the peculiarities of Terahertz Band communication, in particular the very unique distance-dependent behavior of the available bandwidth and the very high propagation losses. To the best of our knowledge, researches on WNSNs are mainly focused on physical layer [3, 4] while study of routing protocols in this field is still in an initial stage. A Selective Flooding Routing (SFR) is proposed in [5], which limits the direction of flooding to prevent bandwidth waste when concurrent transmissions happen among nanonodes. However, it doesn’t capture the peculiarities of Terahertz channel. In [6], a multi-hop and energy harvesting-aware routing protocol for WNSNs is described, which guarantees throughput and enables network lifetime infinite. However, simulation results can only verify a two-hop routing due to complexity, thus limiting its application in practical networks.

This paper proposes an Energy Efficient Multi-hop Routing protocol (EEMR) for Terahertz WNSNs, taking the following two unique aspects of WNSNs into account. On one hand, the peculiarities of Terahertz channel are considered. More specifically, channel capacity is closely related to transmission distances and composition of the medium. Furthermore, Absorption from several molecules in the medium introduces very high molecular absorption loss. On the other hand, routing protocols should not be too complicated due to very limited computational capabilities of nanonodes.

2 System Model

2.1 Network Model

WNSNs are usually designed as cluster-based hierarchical structures including a nanocontroller with more advanced capabilities in each cluster. The nanocontroller is responsible for coordination among nanonodes. All traffic generated by nanonodes will be transmitted to the nanocontroller in a one-hop or multi-hop way. In our protocol, the network topology can be represented as \( G = (V,E) \), where \( V = \{ v_{1} ,v_{2} , \ldots ,v_{n} \} \) denotes the set of all nanonodes and \( E = \{ e_{12} ,e_{13} , \ldots ,e_{ij} \} ,\,\,i,j = 1,2, \ldots ,n \) denotes the set of all possible one-hop links between nanonodes.

2.2 Terahertz Channel Capacity

The whole Terahertz band is divided into different transmission windows due to molecular absorption loss [7], so the total channel capacity can be obtained by computing the capacity within the available bandwidth of each sub-band. According to Shannon formula, Terahertz channel capacity can be written as

$$ C_{s} (d) = \sum\limits_{{}}^{M} {\Delta f_{w} } \log_{2} \left[ {1 + \frac{S(f)}{{N_{a} (d,f) \cdot PL(d,f)}}} \right] $$
(1)

where \( M \) is the number of all sub-bands, \( \Delta f_{w} \) stands for the available bandwidth of different sub-bands, \( S(f) \) is the power spectral density of transmitted signals, \( N_{a} (d,f) \) is the noise p.s.d and \( PL(d,f) \) is the channel path-loss.

Noise power spectral density \( N_{a} (d,f) \) is shown in [3],

$$ N_{a} (d,f) = K_{B} T_{0} (1 - e^{ - k(f)d} ) $$
(2)

where \( K_{B} \) stands for Boltzmann constant, \( T_{0} \) is the reference temperature, \( k(f) \) stands for the molecular absorption coefficient and \( d \) is the total path length.

The total path loss includes spreading loss introduced by a wave’s propagation through the medium and molecular absorption attenuation. And the spreading loss can be written as,

$$ PL(d,f) = \left( {\frac{{4\pi f_{c} d}}{c}} \right)^{2} e^{k(f)d} $$
(3)

where \( f_{c} \) is the central frequency of travelling waves.

The available bandwidth \( \Delta f_{w} \) is defined to meet the following frequency range [8]

$$ N_{a} (d,f)PL(d,f) \le 2N_{a} (d,f_{c} (d))PL(d,f_{c} (d)) $$
(4)

where \( f_{c} (d) \) is the central frequency of different sub-bands. Noticed that if a sub-band is sufficiently narrow, molecular absorption is lower than 10 dB/km [9], which is negligible. Each sub-band and noises inside can be considered flat, whereby we can compute the total channel capacity.

2.3 Energy Model

For nanonodes, the energy stored in their nano-batteries is mainly for communications. The energy consumed in forwarding a packet of \( N_{bit} \) can be defined as

$$ E_{c} = N_{bit} (E_{tx} + E_{rx} ) $$
(5)

where \( E_{tx} \) and \( E_{rx} \) stands for the energy consumption when nanonodes transmit and receive per bit of data, respectively. \( E_{rx} \) is usually set as one-tenth of \( E_{tx} \) in Terahertz communication systems based on TS-OOK modulation scheme [10]. And \( E_{tx} \) can be written as a function of transmission distance \( d \),

$$ E_{tx} (d) = \frac{{P_{tx} (d)}}{{C_{s} (d)}} $$
(6)

where \( P_{tx} (d) \) denotes transmission power, \( C_{s} (d) \) is channel capacity in (1).

To make sure the signal to noise ratio by the receiver reaches \( SNR_{m} \), the transmission power \( P_{tx} (d) \) is defined as

$$ P_{tx} (d) = \int_{B(d)}^{{}} {(SNR_{m} } \cdot N_{a} (d,f) \cdot PL(d,f))df $$
(7)

where \( B(d) \) is the available bandwidth of the Terahertz channel.

3 EEMR Protocol

According to the analysis above, an EEMR protocol is proposed based on network conditions. In our protocol, the computational complexity can be reduced by narrowing the areas of candidate nanonodes. In order to trade off energy consumption, channel capacity and distances, a link cost function for each candidate path is established as a standard of selecting a next hop. In addition, several nodes with low link cost have the probability to be selected as a next hop, which prolongs the network lifetime.

3.1 Area of Candidate Nodes

As shown in Fig. 1, the distance between nanocontroller \( v_{c} \) and source node \( v_{s} \) is \( d(v_{c} ,v_{s} ) \) and there is a circular area \( A_{1} (v_{c} ,d(v_{c} ,v_{s} )) \) with \( v_{c} \) as the center, \( d(v_{c} ,v_{s} ) \) as the radius. Similarly, the area where neighbor nodes of \( v_{s} \) are located can be approximated as a circular area \( A_{2} (v_{s} ,d_{s} ) \) with \( v_{s} \) as the center, \( d_{s} \) as the radius. The area of candidate nodes \( A_{3} \) can be defined as the intersection of \( A_{1} (v_{c} ,d(v_{c} ,v_{s} )) \) and \( A_{2} (v_{s} ,d_{s} ) \),

$$ A_{3} = A_{1} (v_{c} ,d(v_{c} ,v_{s} ))\bigcap {A_{2} (v_{s} ,d_{s} )} $$
(8)
Fig. 1.
figure 1

Area of candidate nodes

If the candidate nanonode \( v_{i} \) is inside \( A_{3} \), its position coordinates will meet the following conditions,

$$ \left\{ \begin{aligned} \sqrt {(x_{i} - x_{c} )^{2} + (y_{i} - y_{c} )^{2} } \le d(v_{c} ,v_{s} ) \hfill \\ \sqrt {(x_{i} - x_{s} )^{2} + (y_{i} - y_{s} )^{2} } \le d_{s} \hfill \\ \end{aligned} \right. $$
(9)

where \( (x_{c} ,y_{c} ) \), \( (x_{i} ,y_{i} ) \) and \( (x_{s} ,y_{s} ) \) stands for the position coordinates of \( v_{c} \), \( v_{i} \) and \( v_{s} \), respectively. The direction of multi-hop forwarding can be controlled towards the destination node by narrowing the candidate area from \( A_{2} (v_{s} ,d_{s} ) \) to \( A_{3} \) and computational complexity can be reduced as there’s no need to select a next hop among all neighbors.

3.2 Link Cost Function

In our EEMR protocol, a link cost function is established as the basis for selecting a next hop and can be calculated as

$$ c(v_{i} ,v_{j} ) = \alpha \tilde{f}(E_{c} (v_{i} ,v_{j} )) + \beta \tilde{f}(1/C_{s} (v_{i} ,v_{j} )) + (1 - \alpha - \beta )\tilde{f}(d(v_{j} ,v_{c} )) $$
(10)

where \( d(v_{j} ,v_{c} ) \) is the distance between candidate node \( v_{j} \) and nanocontroller \( v_{c} \), \( E_{c} (v_{i} ,v_{j} ) \) and \( C_{s} (v_{i} ,v_{j} ) \) respectively stands for the energy consumption and channel capacity of candidate path between nanonode \( v_{i} \) and its candidate node \( v_{j} \), \( \alpha \) and \( \beta \) are cost coefficients and range from 0 to 1, \( \tilde{f}( \, ) \) stands for normalized expression of these three parameters.

Routing strategies usually select a node with the lowest link cost as a next hop, and then establish the optimal transmission path. However, this will result in rapid energy depletion of nodes at the optimal path due to being selected for many times. In order to prolong network lifetime, several nodes with low link cost have the probability to be selected as a next hop, and then forward data to one of those nodes with a certain probability. In other words, after obtaining the link cost of \( n_{h} \) candidate nodes, we can sort them and select the first \( m \) nodes with the lowest link cost. The probability of being selected as a next hop among these \( m \) nodes can be written as

$$ p_{{v_{j} }} = \frac{{\frac{1}{{c(v_{i} ,\,v_{j} )}}}}{{\sum\limits_{k = 1}^{m} {\frac{1}{{c(v_{i} ,\,v_{k} )}}} }},\,\,j \in 1,2, \ldots ,m $$
(11)

where \( c(v_{i} ,v_{j} ) \) and \( c(v_{i} ,v_{k} ) \) are the link cost of two candidate paths. And the value of \( m \) can be expressed as

$$ m = \left\{ {\begin{array}{*{20}c} {n_{h} } & {m \le \delta } \\ {\left\lfloor {n_{h} /\delta } \right\rfloor } & {m > \delta } \\ \end{array} } \right. $$
(12)

where \( \delta \) is a system parameter. The calculation needed for generating a forwarding list can be further reduced by selecting \( m \) in (12). Actually, probability obtained in (11) equals the forwarding probability with which nanonodes forward data and determine a next hop.

Routing Establishment Process. The algorithm of establishing EEMR protocol is shown in Algorithm 1, detailed steps are as follows,

  1. (1)

    Initialization. Firstly, nanocontroller \( v_{c} \) broadcasts hello messages including its own location within the cluster. Then nanonodes send back their node IDs and locations after receiving the hello message. At last, \( v_{c} \) records the node ID and corresponding location of every node.

  2. (2)

    When needing to send data to \( v_{c} \), a nanonode \( v_{i} \) firstly determines whether \( v_{c} \) is in its one-hop range. If it is, \( v_{i} \) directly forwards data to \( v_{c} \). Otherwise, \( v_{i} \) broadcasts query messages containing its own location to neighbor nodes within the communication range.

  3. (3)

    On receiving the query message, neighbor node determines whether it is within candidate area \( A_{3} \) according to (9). If not, the neighbor node makes no reply to the query message; otherwise, it’s a candidate node and denoted as \( v_{j} \). Then \( v_{j} \) calculates the value of its link cost \( c(v_{i} ,v_{j} ) \) and returns an ACK message including the node ID and \( c(v_{i} ,v_{j} ) \) to \( v_{i} \).

  4. (4)

    \( v_{i} \) sorts all the values of link cost in an ascending order after receiving ACK, selects the first \( m \) nodes and calculates the forwarding probability according to (11), then adds the forwarding probability and corresponding node ID into the forwarding list.

  5. (5)

    \( v_{i} \) forwards data to one of nodes according to the forwarding list. And the one-hop forwarding process is finished after the selected next hop \( v_{l} \) successfully receiving the data. Then \( v_{l} \) will be a new source node and go back to step (2) to establish a routing.

4 Simulation and Performance Analysis

4.1 Statistics Definition

  1. 1.

    Energy efficiency. Energy efficiency is defined as the energy consumption when the destination node successfully receives per bit of data, and can be calculated as

    $$ e_{con} = \frac{{\sum\limits_{i \in V} {(E_{ibefore} - E_{iafter} )} }}{{N_{bit} }} $$
    (13)

    where \( N_{bit} \) is the number of bits of a packet, \( E_{{_{ibefore} }} \) and \( E_{{_{iafter} }} \) stands for the energy before and after forwarding a packet of node \( i \), respectively.

  2. 2.

    End-to-end delay. End-to-end delay refers to the time during which a packet are transmitted from the source node and successfully received by the nanocontroller. For a path with \( m \) hops, the end-to-end delay can be written as

    $$ T_{d} = \sum\limits_{i = 1}^{M} {\left( {N_{bit} T_{p} + N_{bit} T_{q} + \frac{{d_{i} }}{v} + \frac{{N_{bit} }}{{C_{i} }}} \right)} $$
    (14)

    where \( T_{p} \) and \( T_{q} \) respectively stands for average processing and queue delay of per bit, \( d_{i} \) and \( C_{i} \) is the path length and channel capacity of the \( ith \) hop, respectively, \( v \) is propagation speed of the signal.

  3. 3.

    Network lifetime. We define network lifetime as the time length which lasts from the beginning of network operation to the first death of a node in the network,

    $$ LT = \hbox{min} \left\{ {t|E_{v} (t) \le \eta } \right\},\,\,v \in V $$
    (15)

    where \( E_{v} (t) \) stands for the energy of node \( v \) and \( \eta \) is the threshold of residual energy. A node is considered dead when its energy is below the threshold.

4.2 Parameter Settings

We run some simulations to evaluate the performance of EEMR based on NS-3. As shown in Fig. 2, the simulation scenario is set as a two-dimensional square with \( 0.1\, \times \,0.1\,{\text{m}}^{ 2} \) in size, where two hundred nanonodes are independently, randomly distributed. The only one nanocontroller is located in the center of the square. Nanonodes are considered to be operating in an environment with 10 % water vapor and the simplified noise power spectral density equals \( 1.42\, \times \,10^{ - 21} \). \( SNR_{m} \) in (7), \( \alpha \) and \( \beta \) in (10) is respectively set as 10, 0.5 and 0.3.\( \delta \) in (12) and \( \eta \) in (15) is respectively set as 2 and 1.4 \( 1.4\, \times \,10^{ - 15} \,{\text{J}} \). The packet size and interval time is set as 128 Byte and 0.1 s, respectively.

Fig. 2.
figure 2

Topology of WNSNs

And the node density is considered constant. Then we study the performance change as a function of the distance between one nanonode and the nanocontroller.

4.3 Results

  1. 1.

    Energy efficiency. As shown in Fig. 3, EEMR does better in energy efficiency than SFR. This is because an energy model for Terahertz channel is established in EEMR and energy consumption is taken into account when establishing the link cost function, thus building a transmission path with higher energy efficiency.

    Fig. 3.
    figure 3

    Energy consumption

  2. 2.

    End-to-end delay. As shown in Fig. 4(a), when the nanocontroller is very close to the source node, the end-to-end delay of these two protocols are almost the same. However, EEMR shows obvious advantage when the distance is above 0.02 m. This is due to the higher achievable information rate in Terahertz channel and the reduction of unnecessary routing hops by limiting the candidate areas.

    Fig. 4.
    figure 4

    Comparison of end-to-end delay and network lifetime between EEMR and SFR (Colour figure online)

  3. 3.

    Network lifetime. As shown in Fig. 4(b), network lifetime of both EEMR and SFR are prolonged as initial energy of nanonodes increases. And the former is always longer than the latter. This is because several nodes with low link cost have the probability to be selected as a next hop, which prevents the energy of the same node at the optimal path from rapidly running out due to being selected many times.

5 Conclusion

In this paper, we propose a multi-hop protocol which limits the area of candidate nodes and controls the direction of multi-hop forwarding to reduce the computational complexity for Terahertz wireless nanosensor networks. Our routing protocol establish a link cost function, taking energy consumption, channel capacity and transmission distance into account, and then select several nodes with low link cost as the next hop with a certain probability to prolong network lifetime. Simulation results show that EEMR gain advantages in energy efficiency, network lifetime and end-to-end delay, thus it prove to be suitable for WNSNs. Considering the value of \( m \) involves network lifetime and protocol complexity, a system parameter \( \delta \) is introduced to reduce the calculation of the forwarding list. We are planning to optimize the value of \( m \) to further improve the routing performance. In addition, constructing more simulation scenarios and implementing one more routing scheme as comparison will be included in our future work.