# Design of Energy-Efficient Protocol Stack for Nanocommunication Using Greedy Algorithms

Authors: Iqra Iqbal; Mohsin Nazir; Aneeqa Sabah
Journal: Journal of Computer Networks and Communications
 (2022)

---

## Abstract

With the passage of time, nanotechnology has become a mature discipline. It attracts attention of researchers toward nanocommunication and trying to give comprehensive set of tools to the engineering community. Nanonetwork contains nanosized communication devices that can be used in the field of military, bio medical, environment, ICT, and industry. Its communication abilities make this field powerful enough to make the devices interact with each other in the micro/macro world. The interconnection between nanonodes is not possible with the help of traditional networking techniques. In the upcoming years, nanotechnology is expecting to bring the integration of different nanodevices ranging from one to a few hundred of nanometers. This revolutionary transition is bringing Internet of Things (IoT) to Internet of Nanothings (IoNT). Due to its limited communication and computational capabilities, the energy availability in nanodevices is very scarce, which lead to various research challenges in the field of nanocommunication. The energy constraint narrows down the overall scope of nanocommunication. This research work will provide a step ahead and propose a design of energy-efficient routing protocol. The suggested solution will increase the effectiveness of nanocommunication techniques to achieve the maximum throughput by optimizing energy harvesting procedure. The comparison of devised solution and the state-of-the-art nanocommunication techniques will be established and evaluated through simulation. The results will be displayed and discussed to pave the way for future research in the domain of Internet of Nanothings (IoNT).


---

## Body

## 1. Introduction

In 1965, famous physicist Richard Feynman pointed out the concept of nanotechnology. He believed that in future humans would be able to make more tinnier and powerful devices. In his speech, he gave the concept of miniaturization. In 1974, nanotechnology was defined as a term, which contains a process of separation, consolidation, and deformation of nanomaterial on nanoscale. After 15 years, in 1980s, K. Eric Drexler took the concept of Feynman that nanodevices can be created by using tiny components and gave the new concept. According to him, these components could duplicate themselves without any computer control [1]. Among most of the other research fields, nanotechnology is another area of research in which the devices are manipulated from few nanometers. The main aim of nanotechnology is to enable these small-scale nanodevices to communicate at a nanoscale [2]. As defined by Draxel, “nanomachines are the devices that can perform useful functions by using nanoscale components” [3]. The small size of nanomachines makes it impossible to use the traditional antennas and let the nanoscaled devices communicate with each other. As a result, nanotranceivers [4–6] and nanoantennas [5, 7–9] have been proposed to overcome the said problem. Moreover, these nanoantennas or graphene-based antennas make it possible to transmit the data in terahertz band. Many nanoscale components have been designed to perform simple and easy tasks such as storing, computing, communication, and actuation. Nanoantennas also support electromagnetic communication from terahertz (THz) bands to megahertz (MHz) [10]. These nanonetworks because of its terahertz bands can be used in many applications such as biochemical weapon monitoring, plant monitoring, and health monitoring, which would not be possible except this [11].The lowest bandwidth also ensures the maximum range of transmission. It provides low energy efficiency, which is not acceptable for nanodevices. Due to the constraints of size and energy, the signals having long duration cannot be transmitted at nanoscale [12]. In most of the cases, data storage, processing, minimal power, and communication capabilities are the important features of nanonodes. So, the knowledge about energy harvesting mechanism is highly important. Energy-efficient MAC protocol is a good approach for better WNSNs [13]. Moreover, nanodevices hold nanobatteries that store low amount of energy and it is not feasible to manually change or recharge the batteries [14–16]. The available mechanisms of energy harvesting like wind power and solar energy are not feasible at nanoscale. For providing energy harvesting to nanocommunication, novel methods can be adopted [17]. A model for piezoelectric nanogenerators has already been designed, according to which the energy required for nanomachines is almost equal to 800 pJ and the required time to reach the maximum capacity of energy is equal to 47 s, but it will become 2361 s; in case, the piezoelectric generators are excited by air conditioning [17]. This study also tells us that 8 packets of 200 bits can be send by a nanodevice with maximum amount of energy harvest, which is very scarce availability of energy. It became difficult to reach maximum transmission rate of terahertz band as nanodevice requires much time to recharge its battery [18]. A comparison between IoT and IoNT has been given in Table 1.Table 1
Comparison between IoT and IoNT communications.
Parameter of communicationIoT communicationIoNT communicationCommunication carrierElectromagnetic wavesAcoustic, electromagnetic, molecular, nanomechanicSignal typeOptical and electronicChemicalPropagation speedLightExtremely lowMedium conditionWired/wirelessAffect communicationNoiseElectromagnetic fields and signalsParticles and molecules in mediumEncoded informationVoice, text, and videoPhenomena, chemical states, and processesEnergy efficiencyHigh energy consumptionLow energy consumptionSome other mechanisms for energy harvesting that have already been deployed make use of various factors such as energy consumption rate, energy prediction rate, and routing topology. These factors can affect wastage awareness and recharge ability to increase the performance of network [19]. By using energy harvesting system, the energy of nanodevice not only decreases over time but also fluctuates from positive and negative. Existing protocols of wireless sensor networks (WSNs) for energy harvesting are not suitable for energy harvesting of nanoscale devices because it does not fulfill its peculiarities.Research shows that the nanonetwork is applicable on physical things like human body. However, there are some issues that need to be explored in depth such as mobility, location awareness, energy efficiency, and greedy routing protocols for nanonetworking.The rest of the paper will be composed as follows. Section2 will present the review of the literature on nanonetwork paradigm, and its energy-efficient and energy-inefficient routing protocols have been discussed in Table 2. Section 3 will state the envisaged routing protocol. Section 4 will brief about the performance evaluation and its analysis. Section 5 is the last section that will conclude the overall work and discuss the future work.Table 2
Existing energy management techniques.
Sr No.Research article author(s)Network methodType of applicationFocused issuesEnergy management techniqueSimulation/Real time1[20]RandomEvent basedResidual battery power and radio linksEnergy storageSimulation2[21]NanorectennasPeriodicTotal harvesting efficiencyEnergy harvestingSimulation3[22]NanorectennasEvent drivenOptimizationEnergy harvestingSimulation4[23]DynamicEvent basedTime synchronizationEnergy consumptionSimulation5[24]FixedPeriodicEnergy transfer efficiencyEnergy consumptionSimulation6[25]RandomDistributive and adaptiveEnergy transferEnergy consumptionSimulation7[26]ClusterQuery basedScalabilityEnergy rechargeSimulation8[27]RandomEvent basedEfficient wireless power transferEnergy consumptionSimulation9[13]ClusterQuery basedOptimization of energy harvesting and consumption processEnergy harvestingSimulation10[28]Static and dynamicEvent drivenDelivery rate of data packetsEnergy consumptionSimulation11[29]RandomPeriodicQuantification of MCsEnergy consumptionSimulation12[30]RandomEvent basedOptimization of energy transferEnergy consumptionSimulation13[11]ClusterEvent drivenMaximizing energy utilizationEnergy harvesting and energy consumptionSimulation


## 2. Review of Literature

Most of the researchers have presented different nanocommunication protocols. Some of them are given below:


### 2.1. Routing Protocols in Nanonetwork

High-density, low-processing, energy-inefficiency, and small memories are some of the limitations and constraints of nanonodes. Several studies have been conducted that focus on improving the constraint of energy and reducing the complexity of the nanonetworks. There exist different routing protocols in the literature, and we shall try to explain and categorize them on the basis of energy-efficient and energy-inefficient routing protocols of the network under consideration. As an example, ECR, EEMR, and MHTD are energy aware routing protocols, while TEForward and SLR are energy-inefficient routing protocols of nanonetwork.


#### 2.1.1. Energy-Efficient Routing Protocols

The energy-efficient routing protocols of nanonetwork are all single-path routing protocols. Here, energy consumption is lower than multipath routing protocols. The reason behind is we always try to find an optimized path to share the network information [31]. Single-path routing protocols reduce the overall energy consumption of nanonetwork and make them energy efficient. In the given section, three different energy-efficient routing protocols for nanonetwork will be described.(1) MHTD. A multihop transmission decision protocol (MHTD) was designed by Pierobon et al. [32]. The main purpose of this protocol is to fully utilize the network while ensuring the energy-efficiency and better network throughput. The network architecture of MHTD is hierarchical that means the nanonodes work as nanocontroller may have more control over other nanodevices working as clusters or motes. This protocol deduces that the energy used during multihop transmission is low as compared to the single hop transmission. If it tries to adopt multihop transmission, then the energy of each nanonode will be optimized as for the distance of single hop that automatically maximizes its throughput.Dynamic time division multiplexing is used in this routing framework, and the process is further divided into four time frames, that is, uplink (UL), downlink (DL), random access (RA), and multihop (MH). As MHTD protocol uses time division multiple access (TDMA), the communication process starts when nanonodes start transmitting data. This process of data transmission comprises of following steps as represented in Figure1:(a)
Nanonode (n) that needs to transmit data sends a request to the nanocontroller using random access subframe.(b)
Upon receiving request from nanonode, the probability to save energy is calculated by nanocontroller by using multihop transmission. The probability is shown asPSE(c).(c)
After calculatingPSE(c), the nanocontroller (c) will make a decision between multihop and single-hop transmissions for nanonode (n).(d)
If the decision is to transmit the data using single hop, then the transmission process is performed using uplink (UL), and if the decision is to transmit the data using multihop, then the nanocontroller (c) calculates the neighborhood range of nanonode (n) that termed as NRn. This range is calculated to make the balance between network lifetime and throughput of network. Transmission power TPn of nanonode is calculated according to the neighborhood range NRn and the time slot of variable length is assigned to the nanonode (n) for multihop transmission. The nanocontroller (c) sends the TPn and time slot to nanonode (n) in the downlink (DL) frame.Figure 1
Stages of multihop transmission decision protocol.While following multihop transmission, the next nanonode (n + 1) will be chosen as the next hop if it satisfies the criterion:(a)
Nanonode (n + 1) has enough memory to hold the data that are to be transmitted by nanonode (n).(b)
Nanonode (n + 1) has sufficient energy for the transmission process.(c)
The signal-to-noise ratio (SNR) between nanonode (n) and nanonode (n + 1) should be higher than the threshold value of SNR.(d)
Nanonode (n + 1) should be closer to the nanocontroller than the nanonode (n). The distance is calculated by received signal strength indicator (RSSI). The RSSI is the transmission power received at a specific nanonode.(e)
When the nanonode (n + 1) received the data, it waits for the back-off time, and if it does not hear any acknowledgment message (ACK) in this RA frame, then it sends its ACK message in the RA frame. Following this process, nanonode (n + 1) is chosen to be the next hop.In MHTD, every next hop is elected on the bases of available energy and the load available in multihop transmission. The computational complexity of this protocol is high and the overall cost of energy is low that automatically increases the overall throughput of the network.(2) EEMR. The energy-efficient multihop routing (EEMR) uses nanocontroller same as MHTD, but unlike MHTD, the EEMR uses nanocontroller for calculation purposes, yet it reduces the computational complexity for nanonodes [33]. Single-hop range of nanonode is fixed to minimize the computational overhead. The EEMR divides its transmission region in three subregions. Region R1 is a circular area whose radius is the distance between nanonode and nanocontroller. Regions R2 and R3 exist between the one-hop range of sender nanonode, but R3 is much closer to the nanocontroller than to the nanonode. In EEMR, the sender nanonode sends the data and the nanonode in R3 receives it and become the next sender node. The procedure of EEMR is mentioned here Figure 2 in detail:(a)
Initially, the nanocontroller sends the hello message and records the IDs and locations of nanonodes that send the reply of the hello message.(b)
When the sender nanonode has something to send, it checks whether the nanocontroller is in its one-hop range. If it finds the nanocontroller in its one-hop range, it directly sends its data to the nanocontroller. Otherwise, it broadcasts its query message to the neighboring nanonode.(c)
The nanonodes in R3 region are the candidates to be the next source node. Upon receiving the broadcast query, the nanonodes in R3 calculate their link cost and send the ACK message to the source node.(d)
While receiving the ACK message from source node, the nanocontroller arranges all the link costs in ascending order. Then + 1 node is chosen from the candidate nodes having lower link cost and the forwarding probability is calculated.(e)
The source node randomly sends the data to the chosen nodes according to the calculated forwarding probability. A candidate node becomes the next nanonode upon receiving the data.Figure 2
Process of EEMR protocol.The EEMR protocol limits the forwarding region with the help of subdivision of main transmission region in three subregions that control the direction for multihoping. Comparatively, the energy efficiency of MHTD is higher than that of EEMR and computational complexity of EEMR is lower than MHTD.(3) ECR. Wireless body sensor network (WBSN) is the type of network, which uses energy conserving routing (ECR) for the communication within the human body. This communication among the tissues of the human body is possible only with the frequency of several terahertz (THz) [34]. The communication may face path loss due to the complex and dynamic infrastructure of the human body. This path loss ratio may include absorption attenuation, spreading loss, and shadowing impact. A specific hierarchical strategy has been followed by ECR that includes communication among nanointerface, nanonodes, and nanocontrollers. The routing protocol further divided into two types: one is intercluster and the other one is intracluster routing [11]. The ECR uses multilayers to share its message among several nanonodes as shown in Figure 3.Figure 3
Layering architecture of ECR.In the first round, nanocontroller is chosen, from the available nanonodes depending upon the level of energy they have. The nanocontroller then starts sending messages to the nanonodes to its lower layers. The nanonodes calculate the signal strength with the help of RSSI and send joining request to the nanocontroller having the highest RSSI level. The transmission time is calculated and sorted in ECR, and the transmission time is allocated to the nanocontrollers of each layer. In case of intercluster communication, single-hop or double-hop transmission will fulfill the purpose. In case of intracluster communication, more energy is consumed. This is the reason that ECR has to reselect its nanocontroller every time while sharing the information among several clusters. Nanonodes also consider direct information transmission over double-hop transmission to efficiently use the amount of energy it has. The time allocation of nanonodes and the cross-layer platform helps this protocol to consume less energy and become collision free. The ECR uses nanocontroller in huge quantity for single- and double-hop transmission, which is a major drawback of this routing protocol.(4) MDR-RL. The multihop deflection routing algorithm based on reinforcement learning (MDRRL) is another energy-efficient routing algorithm. MDRRL helps in packet transmission of data to explore the routing paths dynamically [35]. It maintains two tables for the successful routing of data packets. First is the deflection table, which helps to maintain the record in case of invalid entries. Second one is routing table that helps in maintaining the forwarding activities of nanonodes. Two algorithms have been formed to upload the table entries: one is known as on policy for data forwarding and the second is off policy that helps in the feedback updating algorithm as shown in Figure 4. The tables would initially be empty and will be filled upon the start of transmission process. Every nanonode will have its deflection and routing table and will keep checking the next entries while moving to next hop. There is only one route entry of destination node in the routing table. The contents of route entry are as follows: (1) ID of destination node, (2) ID of next hop, (3) route entry update time, (4) route validity flag, (5) Q value for the destination node, (6) lifetime, (7) recovery rate of nanonode, and (8) destination node’s hop count.Figure 4
Nanonetwork with ACK signals.Here, flag demonstrates the validity of route entry, it will be activated upon receiving a data packet or an acknowledgment (ACK) signal; otherwise, it remains disable in case of negative acknowledgment (NACK). Q value is the weight of the routing path, and high weight defines large amount of utilized resources. Lifetime is dealt as the amount of time an entry stays in the route table during the transmission process because the route table keeps updating throughout transmission. Recovery rate is used to check the availability of next nanonode by recovering and harvesting the energy. The entries of route table can become invalid while meeting following conditions:(1)
The available energy level is insufficient in the next-hop nanonode.(2)
The available next-hop nanonode is already in communication process with some other nanonodes, and the remaining buffer and energy level is insufficient for the next data packet to transmit.(3)
Channel congestion and modulation error can also be the reason of invalid entries.In case of data transmission failure, a deflection table is formulated. Deflection table can help the nanonodes to choose some other nanonodes for successfully completing the packet transmission process if the available nanonode is invalid as a next hop. An energy prediction scheme has also been introduced in MDRRL to efficiently predict the amount of energy the next hop has. The nanonodes can share the energy harvesting rate, energy level, and energy consumption rate. MDRRL proved best in terms of energy awareness and packet delivery ratio.(5) EHNT. On the achievable throughput, energy harvesting nanonetwork in the terahertz band (EHNT) is a complete investigation of electromagnetic (EM) nanonetwork by taking into account the molecular absorption loss and its impact on signal propagation [36]. This protocol used two states of MAC protocol to investigate the behavior of energy harvesting nanonodes. EM communication in nanonodes has been enabled due to recent advancements in nanophotonics, nanoelectronics, and nanoplasmonics. The EM communication is ranging from gigahertz to terahertz but with the lag of high path loss. The communication distance will also be compromised for long-range terahertz communication until high directional antennas are placed for the transmission and reception purpose. To calculate the distance of one hop, the nanonodes behave as a single transmission window of almost 10 THz. The main hurdle of nanodevices is the limited amount of energy available in nanobatteries and the scarcity of available energy harvesting systems in nanonetworks. This energy scarcity and peculiarities of physical layer impacts the throughput of nanonetwork and increases the difficulty level to compute the THz capacity.EHNT works with two stages: one is mathematical modulation and the second is analytical investigation on the proposed framework. It uses exponential terms to the path loss that includes coefficient molecular absorption loss (MAL) that is dependent on molecular composition and transmission frequency. Secondly, the two-state MAC protocol has been used to consider the energy harvesting or energy consumption while transmitting or receiving data. The energy consumption and energy harvesting determine the allocation in one of the two states that affect the available energy. Two matrices have been introduced, namely, spectrum efficiency and energy efficiency, to establish the relationship between achievable throughput and abovementioned specificities. With the help of stated relationship, the upper bound of achievable throughput of nanonetwork in terahertz band has been presented. This presentation describes that if the density of nanonodes, its bandwidth, and transmission power increase, then the achievable throughput will also increase. The power reduction in EM waves is the path loss ratio when it propagates in the medium. This molecular path loss contributed in the molecular absorption loss and spreading loss.Energy is another challenge for nanodevices that challenges the performance of nanonetworks in terahertz band. The size of nanobatteries is too limited, and it requires nanodevices to harvest the energy from its environment to operate smoothly. In EHNT, piezoelectric nanogenerators have been used to harvest the energy, converting it into electrical energy, and then to store them in the array of nanocapacitors to power the whole network. It is also considered in the proposed model that there is no need to wait for the nanocapacitors to be fully charged to consume its power. The real-time harvested energy is not enough to use in the data transmission process. The harvest-store-use (HSU) architecture is preferred over harvest-use (HU) architecture. The HSU harvests the energy and stores it into its nanobatteries before using it in any operation, while HU considers that the harvested energy is sufficient to fulfill the needs of the nanodevices working in real time. A MAC two-state model has been proposed in EHNT as shown in Figure5, and its perspective is to have two states for nanonetwork. A nanodevice at a given time can be busy or idle, so the left state is harvest-store state. As the name suggests the nanodevices will only harvest the energy and will store that in its nanobatteries, no data transmission is involved in this state. The right state is harvest transmit or receive (HTR) state, which refers to harvesting, transmitting, or receiving data at a given time. That means the energy that has been harvested will be utilized at the same time, and if the harvested energy is not sufficient, then the energy from the nanobatteries will be used for data communication purpose. If there are no data to transmit, the nanonode will shift to the state of HS and start harvesting and storing the energy. When there will be data to transmit, the nanonode will again switch to the state of HTR. This switching of states depends on the data traffic of nanonetwork and availability of data that needs to be transmitted.Figure 5
Two states model of EHNT.


#### 2.1.2. Energy-Inefficient Routing Protocols

Energy-inefficient routing protocols in nanonetwork use flood-based or multipath routing protocols [37]. The TTL-based efficient forwarding (TEForward) is the only routing protocol that uses single path for routing purposes. The multipath routing protocols consume a lot of energy and create redundant information because it allows data to be transmitted on multiple paths at a given amount of time. These protocols are further divided into two data forwarding schemes. First routing scheme is limit flood area-based routing that forwards the data in a partial area between sender and receiver nanonode. That is the reason the limit flood area-based routing uses less amount of energy. The dynamic infrastructure-based routing categorizes the nanonodes into user-based or infrastructure-based nanonodes. This division is dependent on the quality of data packet that has been received by a nanonode and increases the computation complexity at each nanonode.(1) TEForward. Unlike ECR, the TEForward routing protocol needs less nanocontrollers for successful transmission. The aim is to reduce the nanocontrollers that receive the packet under dynamic channel states [38]. TEForward developed for polling-based multihop electromagnetic WNSNs in IoT [38]. The nanocontrollers in EM-WNSNs backhaul the data from the nanonodes to the IoT gateways using backhaul tier. The routing protocol of TEForward periodically transmits beacons with the help of IoT gateway [39]. The latest information of routing protocol is beacon duplication count. The TTL value of nanonode is used for selecting the next nanonode to forward the data packet. The process repeats every time to select next hop, forward the data to that hop, and diffuse the data to the targeted hop as shown in Figure 6.Figure 6
Data dissemination of TEForward.Nanocontrollers have two variables: one is used as number of neighboring nanocontrollers of every nanocontroller denoted as NS and the second one is accumulated number of nanocontrollers in the transmission path denoted as NF. Both NS and NF are set to zero by the nanocontrollers while flooding the beacons. Following are the steps taken by nanocontroller that receives the beacon:(a)
In the first step, the nanocontroller takes the TTL value of beacon packet (TTLp) and sets its TTL value obtained from the beacon packet (TTLs).(b)
The nanocontroller initializes the value of NF to NP and resets the value of NS.(c)
After resetting, the nanocontroller records the MAC ID of beacon sender and sets it as beacon forwarder.(d)
Then, nanocontroller aggregates the values of NS and NF, resets the value of NP, and broadcasts the beacon.In case, a duplicate of beacon, which is received the nanocontroller, performs the following steps:(a)
If duplicate of a beacon is received, the nanocontroller updates the value of NS. It perceives the duplicate number of beacons that increase the number of neighbors of nanocontroller.(b)
Secondly, the nanocontroller checks the value of TTLp and TTLs either the duplicate beacon comes from the nanocontroller closer to the IoT gateway or not.(c)
The value of NF and NP is then compared by the nanocontroller to check the level of energy of nanocontroller from where the duplicated beacon comes from with the last forwarding nanocontroller, and then drop the duplicated beacon.Finally, selected nanocontroller directs the packet to the IoT gateway with maximum energy. All message packets will be forwarded effectively with minimum computational complexity, but it does not consider energy consumption of nanonodes. When a nanocontroller sends a data packets, all the nanonodes surrounded by that specific nanocontroller will receive that packet unnecessarily, which consumes extra energy.(2) RADAR Routing. In RADAR routing, the nanonodes are divided into a circular area and an entity is placed at the center of the circle. The entity constantly releases the radiations at a specific angle, and all the nanonodes within that specific radiation range become the active nanonodes. The same has been described through Figure 7.Figure 7
An example of RADAR routing protocol.While sending the data packet, the radiation area is filled with active radiations that minimize the number of data packets that needs to be transmitted. Packet loss is the major drawback of this routing protocol because at the receiving side, the receiver nanonode should be in the radiation angle for successful reception of data packet. This issue needs to be sorted out to increase the success ratio of this routing protocol. Another issue of RADAR routing protocol can be the amount of energy of a nanonode to be in the active state and to successfully receive the data packet [40]. The data packets can also collide while moving outward from the central entity as it increases the amount of active nanonodes. RADAR routing cannot work well for large-scale networks.(3) CORONA. A coordinate system is used in coordinate and routing system for network (CORONA). The addresses of the coordinate system are designed with the help of software-defined metamaterials (SDM). Metamaterials are used with the anodes and are artificial materials that cannot be found in natural environment. SDM is helpful in providing energy resources that enhance the usability of the network in industrial and engineering domain. Renewable energy-efficient resources can also be created for nanonodes. It helps in minimizing the number of data packets and reduces the redundancy and collision among them [41]. All the nanonodes are assumingly equally distant in a rectangular area and dynamically driving coordinates [42]. In the setup phase, four nodes are placed in each corner of the rectangle as shown in the Figure 8(a). The nanonodes set the coordinate by using hop count from its anchor nanonode and start sending the data packets in a specific sequence Figure 8(b).Figure 8
(a) Coordination system setup in CORONA protocol. (b) The doted area is the area in which coordinates are between node 1 and node 2. (c) Facing anchor points may not complete the transmission.
(a)(b)(c)If a node A wishes to send data to the node B, then all the nanonodes between A and B retransmit the data packets by using flooding mechanism. This flooding is possible only in an arc shape. Two facing anchor nanonodes cannot be selected at a time for the successful completion of data transmission as shown in Figure8(c). The coordinates of nanonodes are basically the hop count of each nanonode to its anchor nanonode.(4) SLR. Extended form of CORONA is stateless linear routing (SLR), which uses SMDs for coordinate-based routing in 3D nanonetworks and the data are routed in linear path [43] as shown in Figure 9. The transmission space is cubic, and there are eight anchor nodes placed at the vertexes. In the setup phase of coordinates, the anchor nodes send data packets in a sequence and the hop count from sender to receiver node would be stated as distance. Three anchor nodes will make a zone. The nanonodes in the same space set the coordinates from the distances of three anchor nodes.Figure 9
3D Space of nanonetwork.When the coordinates and distances have been set, the calculation phase started. SLR first checks the nodes to be in a straight line, and then, it retransmits the data. Distances of three anchor nodes will make a viewport. Selection of optimized viewport is mandatory to choose the best viewport. As SLR yields for linear routing path, so it increases the parallel transmission within the nanonetwork [44]. The drawback of SLR is to store the hop counts of eight anchor nodes that automatically increase the amount of storage for each nanonode.(5) LSDD. This routing protocol uses a simple network architecture and hence achieves high scalability and energy efficiency. In LSDD, flood-based communication technique has been adopted and scalable communication is offered. Thus, it provides simple and low-cost architecture for nanonodes [45]. Just like SLR, a centric entity is placed to sense the data and to transmit it to any external entity. Upon receiving the data packets, nanonodes will calculate their packet statistics as parity error (PE), duplication error (DE), and reception success (RS). Then, they will be classified as passive auditors or retransmitters [46]. PE will be set if the received packet has failed its integrity. DE will be set if the packet has been received successfully and passed its integrity check but have been received more than once. Finally, RS will be set if the packet received successfully, passed the integrity check, and received for the first time. The sequence of statistics of the received packets is formalized by Misra–Gries algorithm [47]. This algorithm is the combination of two algorithms further comprises of more than one passes and helps to find out the values that occur more than n/k times in an array. To check the ability of a nanonode work as retransmitter, it is assessed by its most frequent items in the sequence. If the nanonode classified as retransmitter, then it will flood the data in all coming packets. If it is classified as auditor, it will not take part in the retransmission process. The LSDD does not limits the data transmission area and hence leads to the overhead of increased area.(6) DEROUS. The deployable routing system (DEROUS) has been proposed for the applications in SDM [48]. It assumes all nanonodes to be identical and set a central node as a beaconing node. After that, the beacon node sets the 2D addresses of every nanonode available in nanonetwork. The central node keeps sending setup packets and the other nanonodes keep updating its distance by the hop counts. Like LSDD, DEROUS also records the packet status during setup phase and mark it as success or failure [45]. The nanonodes classify themselves as infrastructure or user by checking the packet quality at its reception. Meanwhile, the hop count is considered as the radius of the circle assuming the central node as a beacon node. This transmission process considered to be instant and lightweight because of its completion with three beacon packets.The simulation results of DEROUS exhibit that the infrastructure node behavior can be predicted with the help of transmission radius of the nanonode. The diffusion direction can be divided into two categories: one is angular diffusion and the other one is radial diffusion. If there would be a large transmission radius, then the retransmitter nodes will form a circle centered by the beacon node. If the transmission radius is low, then a radial line will be formulated as shown in Figure10. The diffusion direction depends upon the transmission radius of nanonodes that can also be changed while changing the transmission power.Figure 10
The basic principle of DEROUS-based systems.When the nanonode sends a packet, there will be two possible scenarios to retransmit that packet. The nanonode will retransmit the packet in radial direction with low power if the radius of a nanonode is in between the sender and the receiver nanonode. The nanonode will retransmit the packet in angular direction with normal power if the radius of a nanonode is same as of the sender and the receiver nanonode [49]. DEROUS dynamically sets the radial paths for packet transmission that increases the affectivity of peer-to-peer communication, limits redundant data transmission, and increases the level of transmission path multiplicity. It also limits the transmission in a circular area that eventually limits the number of nanonodes taking path in a transmission process. A drawback of DEROUS is that it cannot form a shortest path retransmission that may increase the transmission delay.(7) OR-DMC. A protocol for opportunistic routing in diffusion-based molecular communication (OR-DMC) has been proposed in nanonetworks based on concentration gradient and distance information [50]. A simple diffusion-based molecular nanonetwork has been considered comprising of several nanonodes that will communicate to a nanogateway using multihop communication technique. A pulse-based modulation scheme is used for information exchange. If a nanonode wants to send the information, it generates pulse of molecules that will create a spike in transmission medium. There are two techniques for pulse-based modulation that have been used in OR-DMC. First is energy detection, which will be measured by receiver nanonode. The detected energy will be measured as integral of molecular concentration or a specific amount of time. The received pulse energy will be compared with the threshold value. The second technique is amplitude detection. The receiver nanonode measures the variation of local molecular concentration over a specific amount of time. The received signal is then decoded and compared to maximum concentration to a threshold value. This maximum concentration is known as pulse amplitude [51].Unlike other single-hop routing protocols, OR-DMC chooses the highest priority forwarder by comparing all available candidate forwarders by using different types of information exchange. It also uses coordination scheme to ensure the unique forwarder. The OR-DMC comprises of two phases and exploits concentration gratitude and distance information. The first phase is training phase in which every nanonode calculates its distance from its neighboring nanonode available in its communication range. The next phase is routing phase in which nanonodes transmit the messages. It has been assumed in OR-DMC that all the nanonodes within the communication range are part of forwarder set. That makes the creation of forwarder set easy and hurdle free. A two-hop scenario is considered to share the information form sender to gateway, which is out of its communication range as shown in Figure11. To select the next forwarder, it is always assumed that the nanonode closer to the sender node is the best node as a next hop. However, it is clear that only distance-based routing will not guarantee the delivery of message to the gateway. To ensure this, another parameter has been exploited, that is, concentration gradient. OR-DMC assumes another type of nanonode named as beacon node that is considered to be more advanced than traditional nanonodes. The beacon node is a gateway node that emits beacons in the environment periodically with high concentration during the beaconing period that would be able to reach to every nanonode within the nanonetwork. This beaconing period is decided depending upon the size of nanonetwork and followed by transmission slots having time duration. Each nanonode keeps measuring the concentration of beacons and records it. Every message has a concentration signal. This is transmitted from a sender node. Here, the concentration signal will decide the nanonodes closer to the gateway node within the communication range and takes part in the message forwarding. To verify that the message has been forwarded a simple acknowledgment-based coordination scheme has been used. If highest priority node successfully transmits the message packet, it generates an ACK, and if it fails to transmit the message packet over a specific period of time, then no ACK will be generated. The nanonode having next higher priority will forward the message. In proposed OR-DMC, the intermediate nanonodes have to determine the following:(a)
Eligibility to take part in the forwarding process or not. This eligibility depends upon the concentration signal.(b)
Priority to take part in forwarding process. This priority will be dependent on time slots to wait.Figure 11
Proposed model of OR-DMC, ACK, timing sequence, and different types of messages are shown.To check the priority of eligible nanonodes, OR-DMC enhances the training phase. Rather measuring distance, the concentration gradient information is also taken. For the said purpose, the nanonode sends a concentration signal before sending the molecular spike for measuring distance. This extended method will provide distance information as well as orientation information. By the end of this, the nanonode will not only know the distance information but will also know the number of nanonodes in its forwarder set, which are located closer to the gateway.


## 2.1. Routing Protocols in Nanonetwork

High-density, low-processing, energy-inefficiency, and small memories are some of the limitations and constraints of nanonodes. Several studies have been conducted that focus on improving the constraint of energy and reducing the complexity of the nanonetworks. There exist different routing protocols in the literature, and we shall try to explain and categorize them on the basis of energy-efficient and energy-inefficient routing protocols of the network under consideration. As an example, ECR, EEMR, and MHTD are energy aware routing protocols, while TEForward and SLR are energy-inefficient routing protocols of nanonetwork.


### 2.1.1. Energy-Efficient Routing Protocols

The energy-efficient routing protocols of nanonetwork are all single-path routing protocols. Here, energy consumption is lower than multipath routing protocols. The reason behind is we always try to find an optimized path to share the network information [31]. Single-path routing protocols reduce the overall energy consumption of nanonetwork and make them energy efficient. In the given section, three different energy-efficient routing protocols for nanonetwork will be described.(1) MHTD. A multihop transmission decision protocol (MHTD) was designed by Pierobon et al. [32]. The main purpose of this protocol is to fully utilize the network while ensuring the energy-efficiency and better network throughput. The network architecture of MHTD is hierarchical that means the nanonodes work as nanocontroller may have more control over other nanodevices working as clusters or motes. This protocol deduces that the energy used during multihop transmission is low as compared to the single hop transmission. If it tries to adopt multihop transmission, then the energy of each nanonode will be optimized as for the distance of single hop that automatically maximizes its throughput.Dynamic time division multiplexing is used in this routing framework, and the process is further divided into four time frames, that is, uplink (UL), downlink (DL), random access (RA), and multihop (MH). As MHTD protocol uses time division multiple access (TDMA), the communication process starts when nanonodes start transmitting data. This process of data transmission comprises of following steps as represented in Figure1:(a)
Nanonode (n) that needs to transmit data sends a request to the nanocontroller using random access subframe.(b)
Upon receiving request from nanonode, the probability to save energy is calculated by nanocontroller by using multihop transmission. The probability is shown asPSE(c).(c)
After calculatingPSE(c), the nanocontroller (c) will make a decision between multihop and single-hop transmissions for nanonode (n).(d)
If the decision is to transmit the data using single hop, then the transmission process is performed using uplink (UL), and if the decision is to transmit the data using multihop, then the nanocontroller (c) calculates the neighborhood range of nanonode (n) that termed as NRn. This range is calculated to make the balance between network lifetime and throughput of network. Transmission power TPn of nanonode is calculated according to the neighborhood range NRn and the time slot of variable length is assigned to the nanonode (n) for multihop transmission. The nanocontroller (c) sends the TPn and time slot to nanonode (n) in the downlink (DL) frame.Figure 1
Stages of multihop transmission decision protocol.While following multihop transmission, the next nanonode (n + 1) will be chosen as the next hop if it satisfies the criterion:(a)
Nanonode (n + 1) has enough memory to hold the data that are to be transmitted by nanonode (n).(b)
Nanonode (n + 1) has sufficient energy for the transmission process.(c)
The signal-to-noise ratio (SNR) between nanonode (n) and nanonode (n + 1) should be higher than the threshold value of SNR.(d)
Nanonode (n + 1) should be closer to the nanocontroller than the nanonode (n). The distance is calculated by received signal strength indicator (RSSI). The RSSI is the transmission power received at a specific nanonode.(e)
When the nanonode (n + 1) received the data, it waits for the back-off time, and if it does not hear any acknowledgment message (ACK) in this RA frame, then it sends its ACK message in the RA frame. Following this process, nanonode (n + 1) is chosen to be the next hop.In MHTD, every next hop is elected on the bases of available energy and the load available in multihop transmission. The computational complexity of this protocol is high and the overall cost of energy is low that automatically increases the overall throughput of the network.(2) EEMR. The energy-efficient multihop routing (EEMR) uses nanocontroller same as MHTD, but unlike MHTD, the EEMR uses nanocontroller for calculation purposes, yet it reduces the computational complexity for nanonodes [33]. Single-hop range of nanonode is fixed to minimize the computational overhead. The EEMR divides its transmission region in three subregions. Region R1 is a circular area whose radius is the distance between nanonode and nanocontroller. Regions R2 and R3 exist between the one-hop range of sender nanonode, but R3 is much closer to the nanocontroller than to the nanonode. In EEMR, the sender nanonode sends the data and the nanonode in R3 receives it and become the next sender node. The procedure of EEMR is mentioned here Figure 2 in detail:(a)
Initially, the nanocontroller sends the hello message and records the IDs and locations of nanonodes that send the reply of the hello message.(b)
When the sender nanonode has something to send, it checks whether the nanocontroller is in its one-hop range. If it finds the nanocontroller in its one-hop range, it directly sends its data to the nanocontroller. Otherwise, it broadcasts its query message to the neighboring nanonode.(c)
The nanonodes in R3 region are the candidates to be the next source node. Upon receiving the broadcast query, the nanonodes in R3 calculate their link cost and send the ACK message to the source node.(d)
While receiving the ACK message from source node, the nanocontroller arranges all the link costs in ascending order. Then + 1 node is chosen from the candidate nodes having lower link cost and the forwarding probability is calculated.(e)
The source node randomly sends the data to the chosen nodes according to the calculated forwarding probability. A candidate node becomes the next nanonode upon receiving the data.Figure 2
Process of EEMR protocol.The EEMR protocol limits the forwarding region with the help of subdivision of main transmission region in three subregions that control the direction for multihoping. Comparatively, the energy efficiency of MHTD is higher than that of EEMR and computational complexity of EEMR is lower than MHTD.(3) ECR. Wireless body sensor network (WBSN) is the type of network, which uses energy conserving routing (ECR) for the communication within the human body. This communication among the tissues of the human body is possible only with the frequency of several terahertz (THz) [34]. The communication may face path loss due to the complex and dynamic infrastructure of the human body. This path loss ratio may include absorption attenuation, spreading loss, and shadowing impact. A specific hierarchical strategy has been followed by ECR that includes communication among nanointerface, nanonodes, and nanocontrollers. The routing protocol further divided into two types: one is intercluster and the other one is intracluster routing [11]. The ECR uses multilayers to share its message among several nanonodes as shown in Figure 3.Figure 3
Layering architecture of ECR.In the first round, nanocontroller is chosen, from the available nanonodes depending upon the level of energy they have. The nanocontroller then starts sending messages to the nanonodes to its lower layers. The nanonodes calculate the signal strength with the help of RSSI and send joining request to the nanocontroller having the highest RSSI level. The transmission time is calculated and sorted in ECR, and the transmission time is allocated to the nanocontrollers of each layer. In case of intercluster communication, single-hop or double-hop transmission will fulfill the purpose. In case of intracluster communication, more energy is consumed. This is the reason that ECR has to reselect its nanocontroller every time while sharing the information among several clusters. Nanonodes also consider direct information transmission over double-hop transmission to efficiently use the amount of energy it has. The time allocation of nanonodes and the cross-layer platform helps this protocol to consume less energy and become collision free. The ECR uses nanocontroller in huge quantity for single- and double-hop transmission, which is a major drawback of this routing protocol.(4) MDR-RL. The multihop deflection routing algorithm based on reinforcement learning (MDRRL) is another energy-efficient routing algorithm. MDRRL helps in packet transmission of data to explore the routing paths dynamically [35]. It maintains two tables for the successful routing of data packets. First is the deflection table, which helps to maintain the record in case of invalid entries. Second one is routing table that helps in maintaining the forwarding activities of nanonodes. Two algorithms have been formed to upload the table entries: one is known as on policy for data forwarding and the second is off policy that helps in the feedback updating algorithm as shown in Figure 4. The tables would initially be empty and will be filled upon the start of transmission process. Every nanonode will have its deflection and routing table and will keep checking the next entries while moving to next hop. There is only one route entry of destination node in the routing table. The contents of route entry are as follows: (1) ID of destination node, (2) ID of next hop, (3) route entry update time, (4) route validity flag, (5) Q value for the destination node, (6) lifetime, (7) recovery rate of nanonode, and (8) destination node’s hop count.Figure 4
Nanonetwork with ACK signals.Here, flag demonstrates the validity of route entry, it will be activated upon receiving a data packet or an acknowledgment (ACK) signal; otherwise, it remains disable in case of negative acknowledgment (NACK). Q value is the weight of the routing path, and high weight defines large amount of utilized resources. Lifetime is dealt as the amount of time an entry stays in the route table during the transmission process because the route table keeps updating throughout transmission. Recovery rate is used to check the availability of next nanonode by recovering and harvesting the energy. The entries of route table can become invalid while meeting following conditions:(1)
The available energy level is insufficient in the next-hop nanonode.(2)
The available next-hop nanonode is already in communication process with some other nanonodes, and the remaining buffer and energy level is insufficient for the next data packet to transmit.(3)
Channel congestion and modulation error can also be the reason of invalid entries.In case of data transmission failure, a deflection table is formulated. Deflection table can help the nanonodes to choose some other nanonodes for successfully completing the packet transmission process if the available nanonode is invalid as a next hop. An energy prediction scheme has also been introduced in MDRRL to efficiently predict the amount of energy the next hop has. The nanonodes can share the energy harvesting rate, energy level, and energy consumption rate. MDRRL proved best in terms of energy awareness and packet delivery ratio.(5) EHNT. On the achievable throughput, energy harvesting nanonetwork in the terahertz band (EHNT) is a complete investigation of electromagnetic (EM) nanonetwork by taking into account the molecular absorption loss and its impact on signal propagation [36]. This protocol used two states of MAC protocol to investigate the behavior of energy harvesting nanonodes. EM communication in nanonodes has been enabled due to recent advancements in nanophotonics, nanoelectronics, and nanoplasmonics. The EM communication is ranging from gigahertz to terahertz but with the lag of high path loss. The communication distance will also be compromised for long-range terahertz communication until high directional antennas are placed for the transmission and reception purpose. To calculate the distance of one hop, the nanonodes behave as a single transmission window of almost 10 THz. The main hurdle of nanodevices is the limited amount of energy available in nanobatteries and the scarcity of available energy harvesting systems in nanonetworks. This energy scarcity and peculiarities of physical layer impacts the throughput of nanonetwork and increases the difficulty level to compute the THz capacity.EHNT works with two stages: one is mathematical modulation and the second is analytical investigation on the proposed framework. It uses exponential terms to the path loss that includes coefficient molecular absorption loss (MAL) that is dependent on molecular composition and transmission frequency. Secondly, the two-state MAC protocol has been used to consider the energy harvesting or energy consumption while transmitting or receiving data. The energy consumption and energy harvesting determine the allocation in one of the two states that affect the available energy. Two matrices have been introduced, namely, spectrum efficiency and energy efficiency, to establish the relationship between achievable throughput and abovementioned specificities. With the help of stated relationship, the upper bound of achievable throughput of nanonetwork in terahertz band has been presented. This presentation describes that if the density of nanonodes, its bandwidth, and transmission power increase, then the achievable throughput will also increase. The power reduction in EM waves is the path loss ratio when it propagates in the medium. This molecular path loss contributed in the molecular absorption loss and spreading loss.Energy is another challenge for nanodevices that challenges the performance of nanonetworks in terahertz band. The size of nanobatteries is too limited, and it requires nanodevices to harvest the energy from its environment to operate smoothly. In EHNT, piezoelectric nanogenerators have been used to harvest the energy, converting it into electrical energy, and then to store them in the array of nanocapacitors to power the whole network. It is also considered in the proposed model that there is no need to wait for the nanocapacitors to be fully charged to consume its power. The real-time harvested energy is not enough to use in the data transmission process. The harvest-store-use (HSU) architecture is preferred over harvest-use (HU) architecture. The HSU harvests the energy and stores it into its nanobatteries before using it in any operation, while HU considers that the harvested energy is sufficient to fulfill the needs of the nanodevices working in real time. A MAC two-state model has been proposed in EHNT as shown in Figure5, and its perspective is to have two states for nanonetwork. A nanodevice at a given time can be busy or idle, so the left state is harvest-store state. As the name suggests the nanodevices will only harvest the energy and will store that in its nanobatteries, no data transmission is involved in this state. The right state is harvest transmit or receive (HTR) state, which refers to harvesting, transmitting, or receiving data at a given time. That means the energy that has been harvested will be utilized at the same time, and if the harvested energy is not sufficient, then the energy from the nanobatteries will be used for data communication purpose. If there are no data to transmit, the nanonode will shift to the state of HS and start harvesting and storing the energy. When there will be data to transmit, the nanonode will again switch to the state of HTR. This switching of states depends on the data traffic of nanonetwork and availability of data that needs to be transmitted.Figure 5
Two states model of EHNT.


### 2.1.2. Energy-Inefficient Routing Protocols

Energy-inefficient routing protocols in nanonetwork use flood-based or multipath routing protocols [37]. The TTL-based efficient forwarding (TEForward) is the only routing protocol that uses single path for routing purposes. The multipath routing protocols consume a lot of energy and create redundant information because it allows data to be transmitted on multiple paths at a given amount of time. These protocols are further divided into two data forwarding schemes. First routing scheme is limit flood area-based routing that forwards the data in a partial area between sender and receiver nanonode. That is the reason the limit flood area-based routing uses less amount of energy. The dynamic infrastructure-based routing categorizes the nanonodes into user-based or infrastructure-based nanonodes. This division is dependent on the quality of data packet that has been received by a nanonode and increases the computation complexity at each nanonode.(1) TEForward. Unlike ECR, the TEForward routing protocol needs less nanocontrollers for successful transmission. The aim is to reduce the nanocontrollers that receive the packet under dynamic channel states [38]. TEForward developed for polling-based multihop electromagnetic WNSNs in IoT [38]. The nanocontrollers in EM-WNSNs backhaul the data from the nanonodes to the IoT gateways using backhaul tier. The routing protocol of TEForward periodically transmits beacons with the help of IoT gateway [39]. The latest information of routing protocol is beacon duplication count. The TTL value of nanonode is used for selecting the next nanonode to forward the data packet. The process repeats every time to select next hop, forward the data to that hop, and diffuse the data to the targeted hop as shown in Figure 6.Figure 6
Data dissemination of TEForward.Nanocontrollers have two variables: one is used as number of neighboring nanocontrollers of every nanocontroller denoted as NS and the second one is accumulated number of nanocontrollers in the transmission path denoted as NF. Both NS and NF are set to zero by the nanocontrollers while flooding the beacons. Following are the steps taken by nanocontroller that receives the beacon:(a)
In the first step, the nanocontroller takes the TTL value of beacon packet (TTLp) and sets its TTL value obtained from the beacon packet (TTLs).(b)
The nanocontroller initializes the value of NF to NP and resets the value of NS.(c)
After resetting, the nanocontroller records the MAC ID of beacon sender and sets it as beacon forwarder.(d)
Then, nanocontroller aggregates the values of NS and NF, resets the value of NP, and broadcasts the beacon.In case, a duplicate of beacon, which is received the nanocontroller, performs the following steps:(a)
If duplicate of a beacon is received, the nanocontroller updates the value of NS. It perceives the duplicate number of beacons that increase the number of neighbors of nanocontroller.(b)
Secondly, the nanocontroller checks the value of TTLp and TTLs either the duplicate beacon comes from the nanocontroller closer to the IoT gateway or not.(c)
The value of NF and NP is then compared by the nanocontroller to check the level of energy of nanocontroller from where the duplicated beacon comes from with the last forwarding nanocontroller, and then drop the duplicated beacon.Finally, selected nanocontroller directs the packet to the IoT gateway with maximum energy. All message packets will be forwarded effectively with minimum computational complexity, but it does not consider energy consumption of nanonodes. When a nanocontroller sends a data packets, all the nanonodes surrounded by that specific nanocontroller will receive that packet unnecessarily, which consumes extra energy.(2) RADAR Routing. In RADAR routing, the nanonodes are divided into a circular area and an entity is placed at the center of the circle. The entity constantly releases the radiations at a specific angle, and all the nanonodes within that specific radiation range become the active nanonodes. The same has been described through Figure 7.Figure 7
An example of RADAR routing protocol.While sending the data packet, the radiation area is filled with active radiations that minimize the number of data packets that needs to be transmitted. Packet loss is the major drawback of this routing protocol because at the receiving side, the receiver nanonode should be in the radiation angle for successful reception of data packet. This issue needs to be sorted out to increase the success ratio of this routing protocol. Another issue of RADAR routing protocol can be the amount of energy of a nanonode to be in the active state and to successfully receive the data packet [40]. The data packets can also collide while moving outward from the central entity as it increases the amount of active nanonodes. RADAR routing cannot work well for large-scale networks.(3) CORONA. A coordinate system is used in coordinate and routing system for network (CORONA). The addresses of the coordinate system are designed with the help of software-defined metamaterials (SDM). Metamaterials are used with the anodes and are artificial materials that cannot be found in natural environment. SDM is helpful in providing energy resources that enhance the usability of the network in industrial and engineering domain. Renewable energy-efficient resources can also be created for nanonodes. It helps in minimizing the number of data packets and reduces the redundancy and collision among them [41]. All the nanonodes are assumingly equally distant in a rectangular area and dynamically driving coordinates [42]. In the setup phase, four nodes are placed in each corner of the rectangle as shown in the Figure 8(a). The nanonodes set the coordinate by using hop count from its anchor nanonode and start sending the data packets in a specific sequence Figure 8(b).Figure 8
(a) Coordination system setup in CORONA protocol. (b) The doted area is the area in which coordinates are between node 1 and node 2. (c) Facing anchor points may not complete the transmission.
(a)(b)(c)If a node A wishes to send data to the node B, then all the nanonodes between A and B retransmit the data packets by using flooding mechanism. This flooding is possible only in an arc shape. Two facing anchor nanonodes cannot be selected at a time for the successful completion of data transmission as shown in Figure8(c). The coordinates of nanonodes are basically the hop count of each nanonode to its anchor nanonode.(4) SLR. Extended form of CORONA is stateless linear routing (SLR), which uses SMDs for coordinate-based routing in 3D nanonetworks and the data are routed in linear path [43] as shown in Figure 9. The transmission space is cubic, and there are eight anchor nodes placed at the vertexes. In the setup phase of coordinates, the anchor nodes send data packets in a sequence and the hop count from sender to receiver node would be stated as distance. Three anchor nodes will make a zone. The nanonodes in the same space set the coordinates from the distances of three anchor nodes.Figure 9
3D Space of nanonetwork.When the coordinates and distances have been set, the calculation phase started. SLR first checks the nodes to be in a straight line, and then, it retransmits the data. Distances of three anchor nodes will make a viewport. Selection of optimized viewport is mandatory to choose the best viewport. As SLR yields for linear routing path, so it increases the parallel transmission within the nanonetwork [44]. The drawback of SLR is to store the hop counts of eight anchor nodes that automatically increase the amount of storage for each nanonode.(5) LSDD. This routing protocol uses a simple network architecture and hence achieves high scalability and energy efficiency. In LSDD, flood-based communication technique has been adopted and scalable communication is offered. Thus, it provides simple and low-cost architecture for nanonodes [45]. Just like SLR, a centric entity is placed to sense the data and to transmit it to any external entity. Upon receiving the data packets, nanonodes will calculate their packet statistics as parity error (PE), duplication error (DE), and reception success (RS). Then, they will be classified as passive auditors or retransmitters [46]. PE will be set if the received packet has failed its integrity. DE will be set if the packet has been received successfully and passed its integrity check but have been received more than once. Finally, RS will be set if the packet received successfully, passed the integrity check, and received for the first time. The sequence of statistics of the received packets is formalized by Misra–Gries algorithm [47]. This algorithm is the combination of two algorithms further comprises of more than one passes and helps to find out the values that occur more than n/k times in an array. To check the ability of a nanonode work as retransmitter, it is assessed by its most frequent items in the sequence. If the nanonode classified as retransmitter, then it will flood the data in all coming packets. If it is classified as auditor, it will not take part in the retransmission process. The LSDD does not limits the data transmission area and hence leads to the overhead of increased area.(6) DEROUS. The deployable routing system (DEROUS) has been proposed for the applications in SDM [48]. It assumes all nanonodes to be identical and set a central node as a beaconing node. After that, the beacon node sets the 2D addresses of every nanonode available in nanonetwork. The central node keeps sending setup packets and the other nanonodes keep updating its distance by the hop counts. Like LSDD, DEROUS also records the packet status during setup phase and mark it as success or failure [45]. The nanonodes classify themselves as infrastructure or user by checking the packet quality at its reception. Meanwhile, the hop count is considered as the radius of the circle assuming the central node as a beacon node. This transmission process considered to be instant and lightweight because of its completion with three beacon packets.The simulation results of DEROUS exhibit that the infrastructure node behavior can be predicted with the help of transmission radius of the nanonode. The diffusion direction can be divided into two categories: one is angular diffusion and the other one is radial diffusion. If there would be a large transmission radius, then the retransmitter nodes will form a circle centered by the beacon node. If the transmission radius is low, then a radial line will be formulated as shown in Figure10. The diffusion direction depends upon the transmission radius of nanonodes that can also be changed while changing the transmission power.Figure 10
The basic principle of DEROUS-based systems.When the nanonode sends a packet, there will be two possible scenarios to retransmit that packet. The nanonode will retransmit the packet in radial direction with low power if the radius of a nanonode is in between the sender and the receiver nanonode. The nanonode will retransmit the packet in angular direction with normal power if the radius of a nanonode is same as of the sender and the receiver nanonode [49]. DEROUS dynamically sets the radial paths for packet transmission that increases the affectivity of peer-to-peer communication, limits redundant data transmission, and increases the level of transmission path multiplicity. It also limits the transmission in a circular area that eventually limits the number of nanonodes taking path in a transmission process. A drawback of DEROUS is that it cannot form a shortest path retransmission that may increase the transmission delay.(7) OR-DMC. A protocol for opportunistic routing in diffusion-based molecular communication (OR-DMC) has been proposed in nanonetworks based on concentration gradient and distance information [50]. A simple diffusion-based molecular nanonetwork has been considered comprising of several nanonodes that will communicate to a nanogateway using multihop communication technique. A pulse-based modulation scheme is used for information exchange. If a nanonode wants to send the information, it generates pulse of molecules that will create a spike in transmission medium. There are two techniques for pulse-based modulation that have been used in OR-DMC. First is energy detection, which will be measured by receiver nanonode. The detected energy will be measured as integral of molecular concentration or a specific amount of time. The received pulse energy will be compared with the threshold value. The second technique is amplitude detection. The receiver nanonode measures the variation of local molecular concentration over a specific amount of time. The received signal is then decoded and compared to maximum concentration to a threshold value. This maximum concentration is known as pulse amplitude [51].Unlike other single-hop routing protocols, OR-DMC chooses the highest priority forwarder by comparing all available candidate forwarders by using different types of information exchange. It also uses coordination scheme to ensure the unique forwarder. The OR-DMC comprises of two phases and exploits concentration gratitude and distance information. The first phase is training phase in which every nanonode calculates its distance from its neighboring nanonode available in its communication range. The next phase is routing phase in which nanonodes transmit the messages. It has been assumed in OR-DMC that all the nanonodes within the communication range are part of forwarder set. That makes the creation of forwarder set easy and hurdle free. A two-hop scenario is considered to share the information form sender to gateway, which is out of its communication range as shown in Figure11. To select the next forwarder, it is always assumed that the nanonode closer to the sender node is the best node as a next hop. However, it is clear that only distance-based routing will not guarantee the delivery of message to the gateway. To ensure this, another parameter has been exploited, that is, concentration gradient. OR-DMC assumes another type of nanonode named as beacon node that is considered to be more advanced than traditional nanonodes. The beacon node is a gateway node that emits beacons in the environment periodically with high concentration during the beaconing period that would be able to reach to every nanonode within the nanonetwork. This beaconing period is decided depending upon the size of nanonetwork and followed by transmission slots having time duration. Each nanonode keeps measuring the concentration of beacons and records it. Every message has a concentration signal. This is transmitted from a sender node. Here, the concentration signal will decide the nanonodes closer to the gateway node within the communication range and takes part in the message forwarding. To verify that the message has been forwarded a simple acknowledgment-based coordination scheme has been used. If highest priority node successfully transmits the message packet, it generates an ACK, and if it fails to transmit the message packet over a specific period of time, then no ACK will be generated. The nanonode having next higher priority will forward the message. In proposed OR-DMC, the intermediate nanonodes have to determine the following:(a)
Eligibility to take part in the forwarding process or not. This eligibility depends upon the concentration signal.(b)
Priority to take part in forwarding process. This priority will be dependent on time slots to wait.Figure 11
Proposed model of OR-DMC, ACK, timing sequence, and different types of messages are shown.To check the priority of eligible nanonodes, OR-DMC enhances the training phase. Rather measuring distance, the concentration gradient information is also taken. For the said purpose, the nanonode sends a concentration signal before sending the molecular spike for measuring distance. This extended method will provide distance information as well as orientation information. By the end of this, the nanonode will not only know the distance information but will also know the number of nanonodes in its forwarder set, which are located closer to the gateway.


## 2.1.1. Energy-Efficient Routing Protocols

The energy-efficient routing protocols of nanonetwork are all single-path routing protocols. Here, energy consumption is lower than multipath routing protocols. The reason behind is we always try to find an optimized path to share the network information [31]. Single-path routing protocols reduce the overall energy consumption of nanonetwork and make them energy efficient. In the given section, three different energy-efficient routing protocols for nanonetwork will be described.(1) MHTD. A multihop transmission decision protocol (MHTD) was designed by Pierobon et al. [32]. The main purpose of this protocol is to fully utilize the network while ensuring the energy-efficiency and better network throughput. The network architecture of MHTD is hierarchical that means the nanonodes work as nanocontroller may have more control over other nanodevices working as clusters or motes. This protocol deduces that the energy used during multihop transmission is low as compared to the single hop transmission. If it tries to adopt multihop transmission, then the energy of each nanonode will be optimized as for the distance of single hop that automatically maximizes its throughput.Dynamic time division multiplexing is used in this routing framework, and the process is further divided into four time frames, that is, uplink (UL), downlink (DL), random access (RA), and multihop (MH). As MHTD protocol uses time division multiple access (TDMA), the communication process starts when nanonodes start transmitting data. This process of data transmission comprises of following steps as represented in Figure1:(a)
Nanonode (n) that needs to transmit data sends a request to the nanocontroller using random access subframe.(b)
Upon receiving request from nanonode, the probability to save energy is calculated by nanocontroller by using multihop transmission. The probability is shown asPSE(c).(c)
After calculatingPSE(c), the nanocontroller (c) will make a decision between multihop and single-hop transmissions for nanonode (n).(d)
If the decision is to transmit the data using single hop, then the transmission process is performed using uplink (UL), and if the decision is to transmit the data using multihop, then the nanocontroller (c) calculates the neighborhood range of nanonode (n) that termed as NRn. This range is calculated to make the balance between network lifetime and throughput of network. Transmission power TPn of nanonode is calculated according to the neighborhood range NRn and the time slot of variable length is assigned to the nanonode (n) for multihop transmission. The nanocontroller (c) sends the TPn and time slot to nanonode (n) in the downlink (DL) frame.Figure 1
Stages of multihop transmission decision protocol.While following multihop transmission, the next nanonode (n + 1) will be chosen as the next hop if it satisfies the criterion:(a)
Nanonode (n + 1) has enough memory to hold the data that are to be transmitted by nanonode (n).(b)
Nanonode (n + 1) has sufficient energy for the transmission process.(c)
The signal-to-noise ratio (SNR) between nanonode (n) and nanonode (n + 1) should be higher than the threshold value of SNR.(d)
Nanonode (n + 1) should be closer to the nanocontroller than the nanonode (n). The distance is calculated by received signal strength indicator (RSSI). The RSSI is the transmission power received at a specific nanonode.(e)
When the nanonode (n + 1) received the data, it waits for the back-off time, and if it does not hear any acknowledgment message (ACK) in this RA frame, then it sends its ACK message in the RA frame. Following this process, nanonode (n + 1) is chosen to be the next hop.In MHTD, every next hop is elected on the bases of available energy and the load available in multihop transmission. The computational complexity of this protocol is high and the overall cost of energy is low that automatically increases the overall throughput of the network.(2) EEMR. The energy-efficient multihop routing (EEMR) uses nanocontroller same as MHTD, but unlike MHTD, the EEMR uses nanocontroller for calculation purposes, yet it reduces the computational complexity for nanonodes [33]. Single-hop range of nanonode is fixed to minimize the computational overhead. The EEMR divides its transmission region in three subregions. Region R1 is a circular area whose radius is the distance between nanonode and nanocontroller. Regions R2 and R3 exist between the one-hop range of sender nanonode, but R3 is much closer to the nanocontroller than to the nanonode. In EEMR, the sender nanonode sends the data and the nanonode in R3 receives it and become the next sender node. The procedure of EEMR is mentioned here Figure 2 in detail:(a)
Initially, the nanocontroller sends the hello message and records the IDs and locations of nanonodes that send the reply of the hello message.(b)
When the sender nanonode has something to send, it checks whether the nanocontroller is in its one-hop range. If it finds the nanocontroller in its one-hop range, it directly sends its data to the nanocontroller. Otherwise, it broadcasts its query message to the neighboring nanonode.(c)
The nanonodes in R3 region are the candidates to be the next source node. Upon receiving the broadcast query, the nanonodes in R3 calculate their link cost and send the ACK message to the source node.(d)
While receiving the ACK message from source node, the nanocontroller arranges all the link costs in ascending order. Then + 1 node is chosen from the candidate nodes having lower link cost and the forwarding probability is calculated.(e)
The source node randomly sends the data to the chosen nodes according to the calculated forwarding probability. A candidate node becomes the next nanonode upon receiving the data.Figure 2
Process of EEMR protocol.The EEMR protocol limits the forwarding region with the help of subdivision of main transmission region in three subregions that control the direction for multihoping. Comparatively, the energy efficiency of MHTD is higher than that of EEMR and computational complexity of EEMR is lower than MHTD.(3) ECR. Wireless body sensor network (WBSN) is the type of network, which uses energy conserving routing (ECR) for the communication within the human body. This communication among the tissues of the human body is possible only with the frequency of several terahertz (THz) [34]. The communication may face path loss due to the complex and dynamic infrastructure of the human body. This path loss ratio may include absorption attenuation, spreading loss, and shadowing impact. A specific hierarchical strategy has been followed by ECR that includes communication among nanointerface, nanonodes, and nanocontrollers. The routing protocol further divided into two types: one is intercluster and the other one is intracluster routing [11]. The ECR uses multilayers to share its message among several nanonodes as shown in Figure 3.Figure 3
Layering architecture of ECR.In the first round, nanocontroller is chosen, from the available nanonodes depending upon the level of energy they have. The nanocontroller then starts sending messages to the nanonodes to its lower layers. The nanonodes calculate the signal strength with the help of RSSI and send joining request to the nanocontroller having the highest RSSI level. The transmission time is calculated and sorted in ECR, and the transmission time is allocated to the nanocontrollers of each layer. In case of intercluster communication, single-hop or double-hop transmission will fulfill the purpose. In case of intracluster communication, more energy is consumed. This is the reason that ECR has to reselect its nanocontroller every time while sharing the information among several clusters. Nanonodes also consider direct information transmission over double-hop transmission to efficiently use the amount of energy it has. The time allocation of nanonodes and the cross-layer platform helps this protocol to consume less energy and become collision free. The ECR uses nanocontroller in huge quantity for single- and double-hop transmission, which is a major drawback of this routing protocol.(4) MDR-RL. The multihop deflection routing algorithm based on reinforcement learning (MDRRL) is another energy-efficient routing algorithm. MDRRL helps in packet transmission of data to explore the routing paths dynamically [35]. It maintains two tables for the successful routing of data packets. First is the deflection table, which helps to maintain the record in case of invalid entries. Second one is routing table that helps in maintaining the forwarding activities of nanonodes. Two algorithms have been formed to upload the table entries: one is known as on policy for data forwarding and the second is off policy that helps in the feedback updating algorithm as shown in Figure 4. The tables would initially be empty and will be filled upon the start of transmission process. Every nanonode will have its deflection and routing table and will keep checking the next entries while moving to next hop. There is only one route entry of destination node in the routing table. The contents of route entry are as follows: (1) ID of destination node, (2) ID of next hop, (3) route entry update time, (4) route validity flag, (5) Q value for the destination node, (6) lifetime, (7) recovery rate of nanonode, and (8) destination node’s hop count.Figure 4
Nanonetwork with ACK signals.Here, flag demonstrates the validity of route entry, it will be activated upon receiving a data packet or an acknowledgment (ACK) signal; otherwise, it remains disable in case of negative acknowledgment (NACK). Q value is the weight of the routing path, and high weight defines large amount of utilized resources. Lifetime is dealt as the amount of time an entry stays in the route table during the transmission process because the route table keeps updating throughout transmission. Recovery rate is used to check the availability of next nanonode by recovering and harvesting the energy. The entries of route table can become invalid while meeting following conditions:(1)
The available energy level is insufficient in the next-hop nanonode.(2)
The available next-hop nanonode is already in communication process with some other nanonodes, and the remaining buffer and energy level is insufficient for the next data packet to transmit.(3)
Channel congestion and modulation error can also be the reason of invalid entries.In case of data transmission failure, a deflection table is formulated. Deflection table can help the nanonodes to choose some other nanonodes for successfully completing the packet transmission process if the available nanonode is invalid as a next hop. An energy prediction scheme has also been introduced in MDRRL to efficiently predict the amount of energy the next hop has. The nanonodes can share the energy harvesting rate, energy level, and energy consumption rate. MDRRL proved best in terms of energy awareness and packet delivery ratio.(5) EHNT. On the achievable throughput, energy harvesting nanonetwork in the terahertz band (EHNT) is a complete investigation of electromagnetic (EM) nanonetwork by taking into account the molecular absorption loss and its impact on signal propagation [36]. This protocol used two states of MAC protocol to investigate the behavior of energy harvesting nanonodes. EM communication in nanonodes has been enabled due to recent advancements in nanophotonics, nanoelectronics, and nanoplasmonics. The EM communication is ranging from gigahertz to terahertz but with the lag of high path loss. The communication distance will also be compromised for long-range terahertz communication until high directional antennas are placed for the transmission and reception purpose. To calculate the distance of one hop, the nanonodes behave as a single transmission window of almost 10 THz. The main hurdle of nanodevices is the limited amount of energy available in nanobatteries and the scarcity of available energy harvesting systems in nanonetworks. This energy scarcity and peculiarities of physical layer impacts the throughput of nanonetwork and increases the difficulty level to compute the THz capacity.EHNT works with two stages: one is mathematical modulation and the second is analytical investigation on the proposed framework. It uses exponential terms to the path loss that includes coefficient molecular absorption loss (MAL) that is dependent on molecular composition and transmission frequency. Secondly, the two-state MAC protocol has been used to consider the energy harvesting or energy consumption while transmitting or receiving data. The energy consumption and energy harvesting determine the allocation in one of the two states that affect the available energy. Two matrices have been introduced, namely, spectrum efficiency and energy efficiency, to establish the relationship between achievable throughput and abovementioned specificities. With the help of stated relationship, the upper bound of achievable throughput of nanonetwork in terahertz band has been presented. This presentation describes that if the density of nanonodes, its bandwidth, and transmission power increase, then the achievable throughput will also increase. The power reduction in EM waves is the path loss ratio when it propagates in the medium. This molecular path loss contributed in the molecular absorption loss and spreading loss.Energy is another challenge for nanodevices that challenges the performance of nanonetworks in terahertz band. The size of nanobatteries is too limited, and it requires nanodevices to harvest the energy from its environment to operate smoothly. In EHNT, piezoelectric nanogenerators have been used to harvest the energy, converting it into electrical energy, and then to store them in the array of nanocapacitors to power the whole network. It is also considered in the proposed model that there is no need to wait for the nanocapacitors to be fully charged to consume its power. The real-time harvested energy is not enough to use in the data transmission process. The harvest-store-use (HSU) architecture is preferred over harvest-use (HU) architecture. The HSU harvests the energy and stores it into its nanobatteries before using it in any operation, while HU considers that the harvested energy is sufficient to fulfill the needs of the nanodevices working in real time. A MAC two-state model has been proposed in EHNT as shown in Figure5, and its perspective is to have two states for nanonetwork. A nanodevice at a given time can be busy or idle, so the left state is harvest-store state. As the name suggests the nanodevices will only harvest the energy and will store that in its nanobatteries, no data transmission is involved in this state. The right state is harvest transmit or receive (HTR) state, which refers to harvesting, transmitting, or receiving data at a given time. That means the energy that has been harvested will be utilized at the same time, and if the harvested energy is not sufficient, then the energy from the nanobatteries will be used for data communication purpose. If there are no data to transmit, the nanonode will shift to the state of HS and start harvesting and storing the energy. When there will be data to transmit, the nanonode will again switch to the state of HTR. This switching of states depends on the data traffic of nanonetwork and availability of data that needs to be transmitted.Figure 5
Two states model of EHNT.


## 2.1.2. Energy-Inefficient Routing Protocols

Energy-inefficient routing protocols in nanonetwork use flood-based or multipath routing protocols [37]. The TTL-based efficient forwarding (TEForward) is the only routing protocol that uses single path for routing purposes. The multipath routing protocols consume a lot of energy and create redundant information because it allows data to be transmitted on multiple paths at a given amount of time. These protocols are further divided into two data forwarding schemes. First routing scheme is limit flood area-based routing that forwards the data in a partial area between sender and receiver nanonode. That is the reason the limit flood area-based routing uses less amount of energy. The dynamic infrastructure-based routing categorizes the nanonodes into user-based or infrastructure-based nanonodes. This division is dependent on the quality of data packet that has been received by a nanonode and increases the computation complexity at each nanonode.(1) TEForward. Unlike ECR, the TEForward routing protocol needs less nanocontrollers for successful transmission. The aim is to reduce the nanocontrollers that receive the packet under dynamic channel states [38]. TEForward developed for polling-based multihop electromagnetic WNSNs in IoT [38]. The nanocontrollers in EM-WNSNs backhaul the data from the nanonodes to the IoT gateways using backhaul tier. The routing protocol of TEForward periodically transmits beacons with the help of IoT gateway [39]. The latest information of routing protocol is beacon duplication count. The TTL value of nanonode is used for selecting the next nanonode to forward the data packet. The process repeats every time to select next hop, forward the data to that hop, and diffuse the data to the targeted hop as shown in Figure 6.Figure 6
Data dissemination of TEForward.Nanocontrollers have two variables: one is used as number of neighboring nanocontrollers of every nanocontroller denoted as NS and the second one is accumulated number of nanocontrollers in the transmission path denoted as NF. Both NS and NF are set to zero by the nanocontrollers while flooding the beacons. Following are the steps taken by nanocontroller that receives the beacon:(a)
In the first step, the nanocontroller takes the TTL value of beacon packet (TTLp) and sets its TTL value obtained from the beacon packet (TTLs).(b)
The nanocontroller initializes the value of NF to NP and resets the value of NS.(c)
After resetting, the nanocontroller records the MAC ID of beacon sender and sets it as beacon forwarder.(d)
Then, nanocontroller aggregates the values of NS and NF, resets the value of NP, and broadcasts the beacon.In case, a duplicate of beacon, which is received the nanocontroller, performs the following steps:(a)
If duplicate of a beacon is received, the nanocontroller updates the value of NS. It perceives the duplicate number of beacons that increase the number of neighbors of nanocontroller.(b)
Secondly, the nanocontroller checks the value of TTLp and TTLs either the duplicate beacon comes from the nanocontroller closer to the IoT gateway or not.(c)
The value of NF and NP is then compared by the nanocontroller to check the level of energy of nanocontroller from where the duplicated beacon comes from with the last forwarding nanocontroller, and then drop the duplicated beacon.Finally, selected nanocontroller directs the packet to the IoT gateway with maximum energy. All message packets will be forwarded effectively with minimum computational complexity, but it does not consider energy consumption of nanonodes. When a nanocontroller sends a data packets, all the nanonodes surrounded by that specific nanocontroller will receive that packet unnecessarily, which consumes extra energy.(2) RADAR Routing. In RADAR routing, the nanonodes are divided into a circular area and an entity is placed at the center of the circle. The entity constantly releases the radiations at a specific angle, and all the nanonodes within that specific radiation range become the active nanonodes. The same has been described through Figure 7.Figure 7
An example of RADAR routing protocol.While sending the data packet, the radiation area is filled with active radiations that minimize the number of data packets that needs to be transmitted. Packet loss is the major drawback of this routing protocol because at the receiving side, the receiver nanonode should be in the radiation angle for successful reception of data packet. This issue needs to be sorted out to increase the success ratio of this routing protocol. Another issue of RADAR routing protocol can be the amount of energy of a nanonode to be in the active state and to successfully receive the data packet [40]. The data packets can also collide while moving outward from the central entity as it increases the amount of active nanonodes. RADAR routing cannot work well for large-scale networks.(3) CORONA. A coordinate system is used in coordinate and routing system for network (CORONA). The addresses of the coordinate system are designed with the help of software-defined metamaterials (SDM). Metamaterials are used with the anodes and are artificial materials that cannot be found in natural environment. SDM is helpful in providing energy resources that enhance the usability of the network in industrial and engineering domain. Renewable energy-efficient resources can also be created for nanonodes. It helps in minimizing the number of data packets and reduces the redundancy and collision among them [41]. All the nanonodes are assumingly equally distant in a rectangular area and dynamically driving coordinates [42]. In the setup phase, four nodes are placed in each corner of the rectangle as shown in the Figure 8(a). The nanonodes set the coordinate by using hop count from its anchor nanonode and start sending the data packets in a specific sequence Figure 8(b).Figure 8
(a) Coordination system setup in CORONA protocol. (b) The doted area is the area in which coordinates are between node 1 and node 2. (c) Facing anchor points may not complete the transmission.
(a)(b)(c)If a node A wishes to send data to the node B, then all the nanonodes between A and B retransmit the data packets by using flooding mechanism. This flooding is possible only in an arc shape. Two facing anchor nanonodes cannot be selected at a time for the successful completion of data transmission as shown in Figure8(c). The coordinates of nanonodes are basically the hop count of each nanonode to its anchor nanonode.(4) SLR. Extended form of CORONA is stateless linear routing (SLR), which uses SMDs for coordinate-based routing in 3D nanonetworks and the data are routed in linear path [43] as shown in Figure 9. The transmission space is cubic, and there are eight anchor nodes placed at the vertexes. In the setup phase of coordinates, the anchor nodes send data packets in a sequence and the hop count from sender to receiver node would be stated as distance. Three anchor nodes will make a zone. The nanonodes in the same space set the coordinates from the distances of three anchor nodes.Figure 9
3D Space of nanonetwork.When the coordinates and distances have been set, the calculation phase started. SLR first checks the nodes to be in a straight line, and then, it retransmits the data. Distances of three anchor nodes will make a viewport. Selection of optimized viewport is mandatory to choose the best viewport. As SLR yields for linear routing path, so it increases the parallel transmission within the nanonetwork [44]. The drawback of SLR is to store the hop counts of eight anchor nodes that automatically increase the amount of storage for each nanonode.(5) LSDD. This routing protocol uses a simple network architecture and hence achieves high scalability and energy efficiency. In LSDD, flood-based communication technique has been adopted and scalable communication is offered. Thus, it provides simple and low-cost architecture for nanonodes [45]. Just like SLR, a centric entity is placed to sense the data and to transmit it to any external entity. Upon receiving the data packets, nanonodes will calculate their packet statistics as parity error (PE), duplication error (DE), and reception success (RS). Then, they will be classified as passive auditors or retransmitters [46]. PE will be set if the received packet has failed its integrity. DE will be set if the packet has been received successfully and passed its integrity check but have been received more than once. Finally, RS will be set if the packet received successfully, passed the integrity check, and received for the first time. The sequence of statistics of the received packets is formalized by Misra–Gries algorithm [47]. This algorithm is the combination of two algorithms further comprises of more than one passes and helps to find out the values that occur more than n/k times in an array. To check the ability of a nanonode work as retransmitter, it is assessed by its most frequent items in the sequence. If the nanonode classified as retransmitter, then it will flood the data in all coming packets. If it is classified as auditor, it will not take part in the retransmission process. The LSDD does not limits the data transmission area and hence leads to the overhead of increased area.(6) DEROUS. The deployable routing system (DEROUS) has been proposed for the applications in SDM [48]. It assumes all nanonodes to be identical and set a central node as a beaconing node. After that, the beacon node sets the 2D addresses of every nanonode available in nanonetwork. The central node keeps sending setup packets and the other nanonodes keep updating its distance by the hop counts. Like LSDD, DEROUS also records the packet status during setup phase and mark it as success or failure [45]. The nanonodes classify themselves as infrastructure or user by checking the packet quality at its reception. Meanwhile, the hop count is considered as the radius of the circle assuming the central node as a beacon node. This transmission process considered to be instant and lightweight because of its completion with three beacon packets.The simulation results of DEROUS exhibit that the infrastructure node behavior can be predicted with the help of transmission radius of the nanonode. The diffusion direction can be divided into two categories: one is angular diffusion and the other one is radial diffusion. If there would be a large transmission radius, then the retransmitter nodes will form a circle centered by the beacon node. If the transmission radius is low, then a radial line will be formulated as shown in Figure10. The diffusion direction depends upon the transmission radius of nanonodes that can also be changed while changing the transmission power.Figure 10
The basic principle of DEROUS-based systems.When the nanonode sends a packet, there will be two possible scenarios to retransmit that packet. The nanonode will retransmit the packet in radial direction with low power if the radius of a nanonode is in between the sender and the receiver nanonode. The nanonode will retransmit the packet in angular direction with normal power if the radius of a nanonode is same as of the sender and the receiver nanonode [49]. DEROUS dynamically sets the radial paths for packet transmission that increases the affectivity of peer-to-peer communication, limits redundant data transmission, and increases the level of transmission path multiplicity. It also limits the transmission in a circular area that eventually limits the number of nanonodes taking path in a transmission process. A drawback of DEROUS is that it cannot form a shortest path retransmission that may increase the transmission delay.(7) OR-DMC. A protocol for opportunistic routing in diffusion-based molecular communication (OR-DMC) has been proposed in nanonetworks based on concentration gradient and distance information [50]. A simple diffusion-based molecular nanonetwork has been considered comprising of several nanonodes that will communicate to a nanogateway using multihop communication technique. A pulse-based modulation scheme is used for information exchange. If a nanonode wants to send the information, it generates pulse of molecules that will create a spike in transmission medium. There are two techniques for pulse-based modulation that have been used in OR-DMC. First is energy detection, which will be measured by receiver nanonode. The detected energy will be measured as integral of molecular concentration or a specific amount of time. The received pulse energy will be compared with the threshold value. The second technique is amplitude detection. The receiver nanonode measures the variation of local molecular concentration over a specific amount of time. The received signal is then decoded and compared to maximum concentration to a threshold value. This maximum concentration is known as pulse amplitude [51].Unlike other single-hop routing protocols, OR-DMC chooses the highest priority forwarder by comparing all available candidate forwarders by using different types of information exchange. It also uses coordination scheme to ensure the unique forwarder. The OR-DMC comprises of two phases and exploits concentration gratitude and distance information. The first phase is training phase in which every nanonode calculates its distance from its neighboring nanonode available in its communication range. The next phase is routing phase in which nanonodes transmit the messages. It has been assumed in OR-DMC that all the nanonodes within the communication range are part of forwarder set. That makes the creation of forwarder set easy and hurdle free. A two-hop scenario is considered to share the information form sender to gateway, which is out of its communication range as shown in Figure11. To select the next forwarder, it is always assumed that the nanonode closer to the sender node is the best node as a next hop. However, it is clear that only distance-based routing will not guarantee the delivery of message to the gateway. To ensure this, another parameter has been exploited, that is, concentration gradient. OR-DMC assumes another type of nanonode named as beacon node that is considered to be more advanced than traditional nanonodes. The beacon node is a gateway node that emits beacons in the environment periodically with high concentration during the beaconing period that would be able to reach to every nanonode within the nanonetwork. This beaconing period is decided depending upon the size of nanonetwork and followed by transmission slots having time duration. Each nanonode keeps measuring the concentration of beacons and records it. Every message has a concentration signal. This is transmitted from a sender node. Here, the concentration signal will decide the nanonodes closer to the gateway node within the communication range and takes part in the message forwarding. To verify that the message has been forwarded a simple acknowledgment-based coordination scheme has been used. If highest priority node successfully transmits the message packet, it generates an ACK, and if it fails to transmit the message packet over a specific period of time, then no ACK will be generated. The nanonode having next higher priority will forward the message. In proposed OR-DMC, the intermediate nanonodes have to determine the following:(a)
Eligibility to take part in the forwarding process or not. This eligibility depends upon the concentration signal.(b)
Priority to take part in forwarding process. This priority will be dependent on time slots to wait.Figure 11
Proposed model of OR-DMC, ACK, timing sequence, and different types of messages are shown.To check the priority of eligible nanonodes, OR-DMC enhances the training phase. Rather measuring distance, the concentration gradient information is also taken. For the said purpose, the nanonode sends a concentration signal before sending the molecular spike for measuring distance. This extended method will provide distance information as well as orientation information. By the end of this, the nanonode will not only know the distance information but will also know the number of nanonodes in its forwarder set, which are located closer to the gateway.


## 3. Proposed Network Modeling and Assumptions

In this research work, a scenario has been considered where remote server, nanomembers, nanorouters, nanoclusters, and nanointerface have been considered as shown in Figure12. The assumption is that the nanonodes are moving at a certain velocity, but the nanointerface and nanorouters are fixed. Reclustering has been forbidden to avoid the overhead. In the proposed work, a remote server has been introduced that sends the details to the nanointerface that needs to be shared with the nanonetwork. To keep the method simple and understandable, a simple request/response method has been considered here at the first stage of communication between IoT and IoNT. Upon receiving message from server, the nanointerface will forward the message to the nanorouters. The nanorouter then shares the transmission message to the relevant nanoclusters, and the similar hierarchy will be followed for the response purposes as shown in Figure 13. The number of requests generating from the remote server and the pace at which the requests are arriving should also be considered. The nanonodes cannot be available at every given time for the request/response purposes. The messages are further divided into four categories for better understanding.(a)
NeighborDiscovery message: this message is used by the nanorouter to find the active nanonodes of specific nanocluster. The message will contain certain number of bits and is represented by NND.(b)
EnergyFeedback message: this message is a response message of NeighborDiscovery message. This message will present the amount of energy stored in relevant nanonodes. NEF will be used to represent the number of bits of this message.(c)
Request message: this is a query or a request message. This message will be generated by remote server and shared to the nanointerface. The nanointerface then forwards this message to the nanorouters; thus, it will be shared to the selected nanocluster controller. The size of Request message is in bits and will be expressed by NR.(d)
Answer message: it is an Answer message of the Request message. This message will be generated by relevant nanocluster controller as a feedback message of the request forwarded by remote server. This message in bits will be expressed by NA.Figure 12
Message request process.Figure 13
Routing Architecture envisioned in the current work.


### 3.1. Nanocluster Formation

Nanoclusters have been composed for high energy efficiency and stability of nanonetwork. A nanocluster contains nanomembers/nanonodes. Initially, to start the communication energy levels will be compared and a nanonode will be selected on the basis of higher energy to start composing a nanocluster. After that, the chosen nanonode will help to aggregate the data and sends that data to the nanorouter. The intercluster communication is possible with higher power transmission range, and intracluster communication is possible with lower power transmission range, respectively [29]. The round Robin technique is used to choose the nanonode for the next round. The selection of nanonode depends on its residual energy, that is, Energyresiduali from the relevant nanocluster, that is, Energymax(1)WNC=EnergyresidualiEnergymax.If the chosen nanonode does not find another nanomember having large WNC, then the same nanonode will perform the next round. The newly selected nanonodes send the message to the nearby nonmember nanonodes and the join request is sent to the respective nanonode of the specific nanocluster with high RSSI level. Then, the nanonode marks itself as a member of that nanocluster. The procedure continues until all the nanonodes have been assigned to the newly chosen nanonode. An algorithm has been designed for formation of nanocluster has been given below in Algorithm 1.Table 3
Message packet from nanorouter.
NCMIDNCIDEnergyResiduali


### 3.2. Energy Harvesting Aware Routing Protocol

In the communication method, the nanonode may be in active or idle state depends on the energy available. If the level of energy is higher than the threshold value, that is,Energythreshold, the nanonode will be in active state; otherwise, it would be idle. The energy threshold value can be computed as follows:(2)Energythreshold=αEnergyrxNND+EnergytxNEF+EnergyrxNR+EnergytxNA.Due to the limited amount of energy and uncertain behavior of nanonetwork, it is impossible to guarantee time synchronization. So, no specific time structure is implemented in the proposed work. Acknowledgment strategies in the MAC layer will help to deal with the said problem. Upon receiving a message from upper layer, the nanonode will transmit it to the physical interface if it is in active state. The collision probability is zero despite of the absence of channel sensing mechanism. The reason is that the time to transmit a packet is much smaller than the time interval between two consecutive transmissions and propagation delay. The acknowledgment depends on the handshake mechanism, which deals with energy feedback message and exchange of neighbor discovery. The nanorouter is used to broadcast neighbor discovery message and collects the time interval message from all the corresponding nanonodes within the time interval(3)T=TNNDtx+TNEFtx+TT,where TNNDtx is the transmission time of neighbor discovery message, TNEFtx is the transmission time of the energy feedback message, and TT is the propagation delay of the specific nanocluster. Here, energy feedback message is the last calculated energy level by the nanocapacitor. To save the energy of other nanonodes by the reception process and to avoid unwanted reception of messages, every nanonode will deactivate its physical interface for the time interval of(4)TNEFtx+TT.After completing the handshake mechanism, the nanorouter starts exploring the nanonode to which it has to forward the request coming from external monitoring device. It forwards the message request comprising of nanocluster member ID, nanocluster ID, and residual energy of nanonode as mentioned in Table3.Algorithm 1: Formation of nanocluster.
(1)
Notations(2)
i = no. of deployed nanoNodes(3)
WNC = residual energy of nanoNodei(4)
GNN = General nanonode(5)
imax(Energy) = nanoNode with maximum energy(6)
Data(7)
Energymax, Energyresiduali(8)
Result(9)
NanoCluster(10)
foreachido(11)
Calculate Energyresidual using WNC=Energyresiduali/Energymax(12)
Multicast WNC within nanoCluster(13)
ifimax(Energy) then(14)
status ← nanoClusterNode(15)
Else(16)
status ← GNN(17)
End(18)
Elected nanoClusterNode multicast message to all GNN(19)
foreach GNN do(20)
Check RSSI from nanoClusterNode within range(21)
Send join request to nanoClusterNode having maximum RSSI(22)
Register GNN to that nanoCluster(23)
End


### 3.3. Tailored MAC and Routing Protocol for Energy Efficiency in THz Band

The energy harvesting aware protocols aim to minimize the level of energy used in nanoclusters. Let RR,TRI, and ΔT are aggregate rates of request from monitoring device to nanorouters, time to receive a request from nanointerface to the nanorouter, and the time interval between two consecutive message requests, where(5)ΔT=1RR.At the end of handshake mechanism, the nanorouter checks the amount of energy available in nanocluster, that is,(6)EClusterTRI=∑ResidualEnergyResidualTRI.Then, it evaluates the amount of energy left upon the reception of new request, that is,(7)EnergyResidualTRI+1RR.This quantity can be obtained with the help of energy provided by the nanonode in the past. The energy consumed to transmitM bit data from nanorouter Energy (NR) and the energy consumed for sending NA bits will be Energy (NA). Let Energyptx, Energyprx, Energytxx, and Energyrxx are required energy for pulse transmission, required energy for pulse reception, required energy to transmit any x bits, and required energy to receive x bits, respectively. Here, the amount of energy for pulse reception would be 0.1 pJ and amount of energy for pulse transmission is 1 pJ.(8)Energyprx=Energyptx10.Ifx bits are considered as a packet to receive and transmit, then the energy required to handle will be(9)Energytxx=Energyptxxω,Energyrxx=Energyprx10x.Here,ω is the probability of 1 to occur within the stream of x bits. Generally, ω is considered as 0.5 because all the symbols have equal probability to occur. The harvested energy during ΔT will be HEnergyResidual(TRI), that is,(10)EnergyResidualTRI+1RR=EnergyResidualTRI−EnergyrxnanoR−βiEnergytxnanoA+HEnergyResidualTRI.Here,βi is set to 1 if the ith node is the destination node; otherwise, it will be 0.(11)EnergyResidualTRI+1RR=EnergyResidualTRI−EnergyrxnanoR10−βiωEnergyptxnanoA+HEnergyResidualTRI.The calculation of HEnergyi(TRI) is complex because energy harvesting models are nonlinear. The energy harvesting mechanisms of traditional networking are solar energy, water turbulences, and wind power [20, 31].The nanonetwork does not use classical sensor antennas; rather, it uses hundreds of nanoantennas having the size of few hundred nanometers with high-frequency range usually several hundred of THz band. The terahertz band communication is the latest explored domain of frequency range in EM spectrum and it suites to the nanocapabilities, having larger bandwidth [24, 40]. The communication options for nanonodes and nanonetworks are very limited. Novel approaches like piezoelectric nanogenerators have been proven helpful and most advantageous in this regard. These are made up of tiny ZnO wires, nanocapacitor, and a nanocircuit. Nanowires work on compressed release cycle, and they start charging when they bend and store that charge upon release. Mechanical vibration like heartbeat or air conditioning is used for this compressed and release cycle [22]. There exists a model in the literature for energy harvesting in nanogenerators [8], which states that the voltage of nanocapacitor can be calculated when we have i no of compress release cycles, that is, Volc(icr),(12)Volcicr=Volh1−e−icrΔQ/VolhCapc.Here, Capc, ΔQ, and Volh are capacitance of nanocapacitors, voltage of generator, and the harvested voltage per cycle, respectively. Now because the nanotechnology has certain constraints, the typical values will be used here and these are Volh = 0.42 V, Capc = 9 nF, and ΔQ = 6Pc. The accumulated energy will then be expressed as follows:(13)Energycicr=12CapcVolc2icr.The time required for nanocapacitor to recharge is dependent on the number of compressed release cycles by the mechanical vibration. As an example, if vibration is due to heartbeat, then frecap = 1 Hz, and if air conditioning would be the energy source, then frecap = 50 Hz. The nanodevice induced in the human body has less energy available; for example, it merely ends up sending 8 packets of data having the size of 200 bits. In addition to this, the time required to recharge the nanodevices is too high that it becomes difficult to reach to the higher data transmission rate, that is, terahertz. So, energy harvesting mechanism is needed for the nanodevices specially injected within the human body or at the places where energy issue is evident.(14)HEnergyResidualTRI=Energycicap,cr+frecapRR−EnergyResidualTRI−EnergyptxnanoR10+βiωnanoA,that is,(15)HEnergyResidualTRI=12CapcVolc2icap,cr+frecapRR−EnergyResidualTRI−EnergyptxnanoR10+βiωnanoA.The aim of proposed model is to achieve the maximum level of energy available by choosing theith nanonode after freCap/RR time interval. For this, the following condition should be satisfied:(16)maxiEClusterTRI+1RR.If we put in the values ofEnergyResidualTRI+1/RR and HEnergyResidual(TRI) in the above equation, then(17)maxi12Capc∑iVolc2icap,cr+freCapRR.


### 3.4. Geographic Routing Protocol Based on Greedy Algorithm

The nanonetwork has limited resources for the successful communication. The greedy algorithm has been used to perform with minimum number of resources such as energy limitation, less memory/storage consumption, and low computational power. The flooding routing technique is an inefficient way of communication in nanonetworks. That is why, a smart method has been proposed that uses limited amount of resources to forward the data packets from its source to its destination. IoT and WSN use geographical routing protocol, and the authors took the inspiration and proposed a forwarding scheme that reduces the number of nanonodes taking part in the message forwarding process. In the underlying protocol, all the nanorouters will start broadcasting messages in the early stage and the nanonodes will choose the relevant nanorouter by broadcasting the transmission message. The nearest nanorouter will forward the data packet through nanocluster. The protocol is divided into following steps to make it more understandable.(1)
Nanorouter selection(2)
Next-hop nanonode selection(3)
Data transmission phaseFollowing is the detailed description of abovementioned process:(a)
Selection of nanorouter: the purpose of this step is to connect every nanonode to the nanorouter. All the nanonodes will calculate their current distances from the nanorouters available in their networking domain. Based on the smaller distance available from the set of distances, the nanonode will pick its nanorouter and broadcast its ID to which it is associated (Figure14).(b)
Selection of nanonode from the nanocluster: after the completion of first phase, every nanonode will have its nearest nanorouter. There are two ways to reach to its closest nanorouter as given: (1) if the chosen nanorouter is within the transmission range of nanonode, then the next hop will be the chosen nanorouter. (2) If the chosen nanorouter is multihop away from the sender nanonode, then every nanonode has to choose the nearest nanonode as next hop that will be a forwarding node until the data packet reaches to its destination Figure15. The criterion to choose the next hop nanonode is as follows:(1)
The neighboring should have the same nanorouter ID as the sender nanonode has.(2)
The neighbor selected should be the nearest nanonode to the nearest nanorouter.(c)
Transmission phase: there will be the addition of two new fields in header of each data packet, that is, nearest nanorouter ID and next nanonode hop ID to carry the information needed to make forwarding decisions. As we know that all the data are destined to the nanointerface, there exist three cases to transmit a data packet. The cases are given as follows:(1)
If the nanointerface is within the transmission range of nanonode, then nearest nanorouter ID and next nanonode hop ID will be the same, that is, nanointerface ID. This will overall reduce the number of nanonodes to participate in the transmission process (Figure16).(2)
If the nearest nanorouter is within the range of nearest nanonode, then nearest nanorouter ID and next nanonode hop ID will be same and will become the ID of nearest nanorouter (Figure17).(3)
If the nanointerface and the nanorouter both are not in the transmission range of sending nanonode, then next nanonode hop ID will be the ID of nearest nanonode. The data packet will be forwarded to that nanonode and will keep moving to the next-hop nanonodes until it reaches to the nearest nanorouter. The data packet will then be forwarded by the nanorouter itself (Figure18).Figure 14
Selection of nanorouter.Figure 15
Selection of nanohop from the nanocluster.Figure 16
Nanointerface within the transmission range.Figure 17
Nearest nanorouter within the range of nearest nanonode.Figure 18
Nearest nanorouter and nanointerface both are not in the transmission range.


## 3.1. Nanocluster Formation

Nanoclusters have been composed for high energy efficiency and stability of nanonetwork. A nanocluster contains nanomembers/nanonodes. Initially, to start the communication energy levels will be compared and a nanonode will be selected on the basis of higher energy to start composing a nanocluster. After that, the chosen nanonode will help to aggregate the data and sends that data to the nanorouter. The intercluster communication is possible with higher power transmission range, and intracluster communication is possible with lower power transmission range, respectively [29]. The round Robin technique is used to choose the nanonode for the next round. The selection of nanonode depends on its residual energy, that is, Energyresiduali from the relevant nanocluster, that is, Energymax(1)WNC=EnergyresidualiEnergymax.If the chosen nanonode does not find another nanomember having large WNC, then the same nanonode will perform the next round. The newly selected nanonodes send the message to the nearby nonmember nanonodes and the join request is sent to the respective nanonode of the specific nanocluster with high RSSI level. Then, the nanonode marks itself as a member of that nanocluster. The procedure continues until all the nanonodes have been assigned to the newly chosen nanonode. An algorithm has been designed for formation of nanocluster has been given below in Algorithm 1.Table 3
Message packet from nanorouter.
NCMIDNCIDEnergyResiduali


## 3.2. Energy Harvesting Aware Routing Protocol

In the communication method, the nanonode may be in active or idle state depends on the energy available. If the level of energy is higher than the threshold value, that is,Energythreshold, the nanonode will be in active state; otherwise, it would be idle. The energy threshold value can be computed as follows:(2)Energythreshold=αEnergyrxNND+EnergytxNEF+EnergyrxNR+EnergytxNA.Due to the limited amount of energy and uncertain behavior of nanonetwork, it is impossible to guarantee time synchronization. So, no specific time structure is implemented in the proposed work. Acknowledgment strategies in the MAC layer will help to deal with the said problem. Upon receiving a message from upper layer, the nanonode will transmit it to the physical interface if it is in active state. The collision probability is zero despite of the absence of channel sensing mechanism. The reason is that the time to transmit a packet is much smaller than the time interval between two consecutive transmissions and propagation delay. The acknowledgment depends on the handshake mechanism, which deals with energy feedback message and exchange of neighbor discovery. The nanorouter is used to broadcast neighbor discovery message and collects the time interval message from all the corresponding nanonodes within the time interval(3)T=TNNDtx+TNEFtx+TT,where TNNDtx is the transmission time of neighbor discovery message, TNEFtx is the transmission time of the energy feedback message, and TT is the propagation delay of the specific nanocluster. Here, energy feedback message is the last calculated energy level by the nanocapacitor. To save the energy of other nanonodes by the reception process and to avoid unwanted reception of messages, every nanonode will deactivate its physical interface for the time interval of(4)TNEFtx+TT.After completing the handshake mechanism, the nanorouter starts exploring the nanonode to which it has to forward the request coming from external monitoring device. It forwards the message request comprising of nanocluster member ID, nanocluster ID, and residual energy of nanonode as mentioned in Table3.Algorithm 1: Formation of nanocluster.
(1)
Notations(2)
i = no. of deployed nanoNodes(3)
WNC = residual energy of nanoNodei(4)
GNN = General nanonode(5)
imax(Energy) = nanoNode with maximum energy(6)
Data(7)
Energymax, Energyresiduali(8)
Result(9)
NanoCluster(10)
foreachido(11)
Calculate Energyresidual using WNC=Energyresiduali/Energymax(12)
Multicast WNC within nanoCluster(13)
ifimax(Energy) then(14)
status ← nanoClusterNode(15)
Else(16)
status ← GNN(17)
End(18)
Elected nanoClusterNode multicast message to all GNN(19)
foreach GNN do(20)
Check RSSI from nanoClusterNode within range(21)
Send join request to nanoClusterNode having maximum RSSI(22)
Register GNN to that nanoCluster(23)
End


## 3.3. Tailored MAC and Routing Protocol for Energy Efficiency in THz Band

The energy harvesting aware protocols aim to minimize the level of energy used in nanoclusters. Let RR,TRI, and ΔT are aggregate rates of request from monitoring device to nanorouters, time to receive a request from nanointerface to the nanorouter, and the time interval between two consecutive message requests, where(5)ΔT=1RR.At the end of handshake mechanism, the nanorouter checks the amount of energy available in nanocluster, that is,(6)EClusterTRI=∑ResidualEnergyResidualTRI.Then, it evaluates the amount of energy left upon the reception of new request, that is,(7)EnergyResidualTRI+1RR.This quantity can be obtained with the help of energy provided by the nanonode in the past. The energy consumed to transmitM bit data from nanorouter Energy (NR) and the energy consumed for sending NA bits will be Energy (NA). Let Energyptx, Energyprx, Energytxx, and Energyrxx are required energy for pulse transmission, required energy for pulse reception, required energy to transmit any x bits, and required energy to receive x bits, respectively. Here, the amount of energy for pulse reception would be 0.1 pJ and amount of energy for pulse transmission is 1 pJ.(8)Energyprx=Energyptx10.Ifx bits are considered as a packet to receive and transmit, then the energy required to handle will be(9)Energytxx=Energyptxxω,Energyrxx=Energyprx10x.Here,ω is the probability of 1 to occur within the stream of x bits. Generally, ω is considered as 0.5 because all the symbols have equal probability to occur. The harvested energy during ΔT will be HEnergyResidual(TRI), that is,(10)EnergyResidualTRI+1RR=EnergyResidualTRI−EnergyrxnanoR−βiEnergytxnanoA+HEnergyResidualTRI.Here,βi is set to 1 if the ith node is the destination node; otherwise, it will be 0.(11)EnergyResidualTRI+1RR=EnergyResidualTRI−EnergyrxnanoR10−βiωEnergyptxnanoA+HEnergyResidualTRI.The calculation of HEnergyi(TRI) is complex because energy harvesting models are nonlinear. The energy harvesting mechanisms of traditional networking are solar energy, water turbulences, and wind power [20, 31].The nanonetwork does not use classical sensor antennas; rather, it uses hundreds of nanoantennas having the size of few hundred nanometers with high-frequency range usually several hundred of THz band. The terahertz band communication is the latest explored domain of frequency range in EM spectrum and it suites to the nanocapabilities, having larger bandwidth [24, 40]. The communication options for nanonodes and nanonetworks are very limited. Novel approaches like piezoelectric nanogenerators have been proven helpful and most advantageous in this regard. These are made up of tiny ZnO wires, nanocapacitor, and a nanocircuit. Nanowires work on compressed release cycle, and they start charging when they bend and store that charge upon release. Mechanical vibration like heartbeat or air conditioning is used for this compressed and release cycle [22]. There exists a model in the literature for energy harvesting in nanogenerators [8], which states that the voltage of nanocapacitor can be calculated when we have i no of compress release cycles, that is, Volc(icr),(12)Volcicr=Volh1−e−icrΔQ/VolhCapc.Here, Capc, ΔQ, and Volh are capacitance of nanocapacitors, voltage of generator, and the harvested voltage per cycle, respectively. Now because the nanotechnology has certain constraints, the typical values will be used here and these are Volh = 0.42 V, Capc = 9 nF, and ΔQ = 6Pc. The accumulated energy will then be expressed as follows:(13)Energycicr=12CapcVolc2icr.The time required for nanocapacitor to recharge is dependent on the number of compressed release cycles by the mechanical vibration. As an example, if vibration is due to heartbeat, then frecap = 1 Hz, and if air conditioning would be the energy source, then frecap = 50 Hz. The nanodevice induced in the human body has less energy available; for example, it merely ends up sending 8 packets of data having the size of 200 bits. In addition to this, the time required to recharge the nanodevices is too high that it becomes difficult to reach to the higher data transmission rate, that is, terahertz. So, energy harvesting mechanism is needed for the nanodevices specially injected within the human body or at the places where energy issue is evident.(14)HEnergyResidualTRI=Energycicap,cr+frecapRR−EnergyResidualTRI−EnergyptxnanoR10+βiωnanoA,that is,(15)HEnergyResidualTRI=12CapcVolc2icap,cr+frecapRR−EnergyResidualTRI−EnergyptxnanoR10+βiωnanoA.The aim of proposed model is to achieve the maximum level of energy available by choosing theith nanonode after freCap/RR time interval. For this, the following condition should be satisfied:(16)maxiEClusterTRI+1RR.If we put in the values ofEnergyResidualTRI+1/RR and HEnergyResidual(TRI) in the above equation, then(17)maxi12Capc∑iVolc2icap,cr+freCapRR.


## 3.4. Geographic Routing Protocol Based on Greedy Algorithm

The nanonetwork has limited resources for the successful communication. The greedy algorithm has been used to perform with minimum number of resources such as energy limitation, less memory/storage consumption, and low computational power. The flooding routing technique is an inefficient way of communication in nanonetworks. That is why, a smart method has been proposed that uses limited amount of resources to forward the data packets from its source to its destination. IoT and WSN use geographical routing protocol, and the authors took the inspiration and proposed a forwarding scheme that reduces the number of nanonodes taking part in the message forwarding process. In the underlying protocol, all the nanorouters will start broadcasting messages in the early stage and the nanonodes will choose the relevant nanorouter by broadcasting the transmission message. The nearest nanorouter will forward the data packet through nanocluster. The protocol is divided into following steps to make it more understandable.(1)
Nanorouter selection(2)
Next-hop nanonode selection(3)
Data transmission phaseFollowing is the detailed description of abovementioned process:(a)
Selection of nanorouter: the purpose of this step is to connect every nanonode to the nanorouter. All the nanonodes will calculate their current distances from the nanorouters available in their networking domain. Based on the smaller distance available from the set of distances, the nanonode will pick its nanorouter and broadcast its ID to which it is associated (Figure14).(b)
Selection of nanonode from the nanocluster: after the completion of first phase, every nanonode will have its nearest nanorouter. There are two ways to reach to its closest nanorouter as given: (1) if the chosen nanorouter is within the transmission range of nanonode, then the next hop will be the chosen nanorouter. (2) If the chosen nanorouter is multihop away from the sender nanonode, then every nanonode has to choose the nearest nanonode as next hop that will be a forwarding node until the data packet reaches to its destination Figure15. The criterion to choose the next hop nanonode is as follows:(1)
The neighboring should have the same nanorouter ID as the sender nanonode has.(2)
The neighbor selected should be the nearest nanonode to the nearest nanorouter.(c)
Transmission phase: there will be the addition of two new fields in header of each data packet, that is, nearest nanorouter ID and next nanonode hop ID to carry the information needed to make forwarding decisions. As we know that all the data are destined to the nanointerface, there exist three cases to transmit a data packet. The cases are given as follows:(1)
If the nanointerface is within the transmission range of nanonode, then nearest nanorouter ID and next nanonode hop ID will be the same, that is, nanointerface ID. This will overall reduce the number of nanonodes to participate in the transmission process (Figure16).(2)
If the nearest nanorouter is within the range of nearest nanonode, then nearest nanorouter ID and next nanonode hop ID will be same and will become the ID of nearest nanorouter (Figure17).(3)
If the nanointerface and the nanorouter both are not in the transmission range of sending nanonode, then next nanonode hop ID will be the ID of nearest nanonode. The data packet will be forwarded to that nanonode and will keep moving to the next-hop nanonodes until it reaches to the nearest nanorouter. The data packet will then be forwarded by the nanorouter itself (Figure18).Figure 14
Selection of nanorouter.Figure 15
Selection of nanohop from the nanocluster.Figure 16
Nanointerface within the transmission range.Figure 17
Nearest nanorouter within the range of nearest nanonode.Figure 18
Nearest nanorouter and nanointerface both are not in the transmission range.


## 4. Performance Analysis

The performance of the conceived protocol has been evaluated through computer simulation using different networking conditions. The comparison between general flooding-based routing mechanism and the proposed solution has been made. The comparison scheme has been considered in different contexts of nanonetwork [18]. The results have been shown in the form of graphs and are derived to study the system behavior. To avoid statistical fluctuation, these simulation results are averaged over 60 runs. The simulation parameters are mentioned in Table 4.Table 4
Parameter values.
ParameterValueSimulation duration5 sNo. of nanonodes50–150/nanoclusterNo. of nanorouters10No. of nanointerface01Distance between nanorouters30 mmTransmission range10 mmPulse duration100 fsPulse interarrival time100 psLength of messages nanoND and nanoEF48 bitsLength of messages nanoR and nanoA176 bitsRate of requestλ on monitoring system0.05–3 sSimulation iteration60From Figures19(a)–19(c), it is clear that the available energy and request rates are inversely proportional. With the increment in the amount of one parameter, the amount of second parameter decreases automatically. The reason being is that nanonodes use high energy to achieve the increased amount of requests. Moreover, the increase in the number of nanonodes per nanocluster minimizes the amount of energy stored in them.Figure 19
(a) Average request rate per cluster when the number of nanonodes per nanocluster is 50. (b) Average request rate per cluster when the amount of nanonodes in each nanocluster is 100. (c) Average request rate per cluster when the amount of nanonodes per nanocluster is 150.
(a)(b)(c)The charge stored in nanocapacitors indicates the number of nanonodes available in a nanocluster. The quantity of available nanonodes in each nanocluster also shows the same results as shown in Figure19. The results show that the energy level decreases in nanonodes as the request rate per nanocluster increases or if the network size increases.Here, Figures20(a)–20(c) depict the packet loss ratio of the nanonetwork. The packet loss ratio can be fluctuated by the rate of requests coming from the external monitoring device or by the active number of nanonodes available in the nanocluster. One can easily observe from the simulation results that the packet loss ratio increases within the nanonetwork, if the rate of request increases over time. This increment is due to the consumption of energy by nanonodes as compared to the harvested energy to fulfill the rate of requests. The increase in the number of nanonodes also helps to satisfy more and more requests coming from external monitoring devices. The high number of nanonodes also makes sure high number of active nanonodes at a time that can work to satisfy the needs of the network. The proposed model also makes sure the less amount of packet loss ratio at the application layer and improves the overall behavior of external monitoring system.Figure 20
(a) Packet loss ratio in each nanocluster when an average number of nanonodes per nanoclusters are 50. (b) Packet loss ratio in each nanocluster when an average number of nanonodes per nanoclusters are 100. (c) Packet loss ratio in each nanocluster when an average number of nanonodes per nanoclusters are 150.
(a)(b)(c)The results shown in Figures21(a)–21(c) elaborate the rate of transmission at the physical layer of every nanocluster in nanonetwork. The simulation results depict that the transmission rate increases when a number of transmitted packets increase. The rate of transmission expected from the nanonetwork is 40 bits per second to 60 bits per second that is quite different from traditional network operating in terahertz channel. The results also describe that how proposed model works well as compared to the flooding technique in all the scenarios that have been considered here.Figure 21
(a) Available nanonodes in each nanocluster when an average number of nanonodes per nanoclusters are 50. (b) Available nanonodes in each nanocluster when an average number of nanonodes per nanoclusters are 100. (c) Available nanonodes in each nanocluster when an average number of nanonodes per nanoclusters are 150.
(a)(b)(c)The results in Figures22(a) and 22(b) elaborate the mean hop count (distance) [27] by comparing geographical greedy routing with the flooding technique. The results depict that the mean distance is way greater when comparing it to the greedy algorithm. In Figure 22(a), when the range of transmission is equal to 0.01 m, the mean distance in flooding scheme exceeds to 115 hops. In Figure 22(b), the mean hop count in simple flooding exceeds to 71 hops when the transmission range is equal to 0.005 m. While using greedy strategy, the nanonode chose the next hop or next nanorouter closer to the next nanorouter or nanointerface. This overall reduces the energy consumption and distance comparative to flooding scheme.Figure 22
(a) Mean hop count when transmitted packet range is 0.01 m. (b) Mean hop count when transmitted packet range is 0.005 m.
(a)(b)


## 5. Conclusion

In this work, the interaction between IoNT and monitoring devices of IoT has been described. Energy harvesting protocol has been designed, and a simulation has been run to check the competency of energy-efficient system. The proposed process checks the energy efficiency, and it also picks the greedy moves to choose the best route. From the behavior of proposed model, it has been observed that if the number of nanonodes increases in the nanocluster, the transmission rate increased gradually with low amount of energy consumed. It also shows the low amount of energy harvested limits the overall performance of IoNT. This work is implemented on a descriptive example that elaborated the working. A total number of requests coming from monitoring devices and the size of the network impact the behavior of the system. The output is shown in the form of graphs with different parameter values. The results show the change of behavior in the entire network by using proposed solution as compared to the flooding-based traditional routing mechanism. In the future, the obtained results will be used for the optimization of underlying solution. The behavior of conceived solution will further be investigated in more realistic, complex, and specific scenarios.



---

*Source: 3150865-2022-05-09.xml*