1 Introduction

New healthcare technologies seamlessly integrated with the lives of citizens can provide unprecedented insights into the treatment of chronic diseases, rehabilitation, and surveillance as these systems can monitor physiological as well as psychological behavior objectively and non-invasively. Indeed, the internet of medical things (IoMT) (Sodhro et al. 2018) combines both the precision of traditional medical devices along with the scalability of the Internet of Things (IoT).

Fig. 1
figure 1

Three-tier architecture of WBAN

It is a driving force in solving the problem of aging and chronic diseases. It is able to manage numerous sensors deployed on numerous patients forming several WBANs per patient where a single WBAN reports the heterogeneous sensed data (Movassaghi et al. 2014; Qadri et al. 2020) to the healthcare provider over the Internet following three-tier architecture as shown in Fig. 1. Tier 1 focuses on network formation of the wearable and/or implantable sensor nodes that send the sensed data to the sink (that could be a smart handheld or a personal digital assistant). The sink then sends the collected data to a gateway device where data from multiple WBANs can be collected in Tier 2. This gateway device is further connected to a remote medical server over the Internet where the data are stored and analyzed. The healthcare personnel can access the data remotely from the medical server. The main constraint in this paradigm is that the non-homogeneous battery-powered sensor nodes with bounded lifetime require an energy-efficient approach (Elias 2014; Arora et al. 2020) in order to prolong the durability of WBAN applications (Cavallari et al. 2014). Energy efficiency is even more important for implanted nodes where the nodes are supposed to operate over many years (Cavallari et al. 2014) although battery recharge or replacement may not always be feasible. Besides, the use of ultra-low-power transceiver as well as power-efficient MAC protocol (Liu et al. 2016; Movassaghi et al. 2014), energy efficiency (Roy et al. 2020; Khanna et al. 2018; Chen and Peng 2013) is a pre-requisite for network layer communication. Mostly, intra WBAN communication follows star topology where body sensor nodes communicate with the sink (Arora et al. 2020) using Bluetooth (IEEE 802.15.1 standard), ZigBee (IEEE 802.15.4 standard) or IEEE 802.15.6 standard (Movassaghi et al. 2014). However, the connection depends on the link quality that may degrade due to relative node movement with a change of posture. Although data transmission with high transmission power may enhance the performance to some extent, it may lead to absorption of the excessive electromagnetic radiation by human tissue that could cause severe thermal damage (Movassaghi et al. 2014) leading to life-threatening conditions. Thus, multi-hop communication (Roy et al. 2020; Khanna et al. 2018) with low transmission power is often preferred in a WBAN where a source node forwards its data to the sink via some relay node. Relay selection is another important issue to be handled such that data may be routed through the optimal path at the same time a relay should not get exhausted with forwarding traffic. However, the decision between single-hop and multi-hop should be taken dynamically depending on the system parameters. Furthermore, the energy depletion rate is primarily governed by the transmission power (Roy et al. 2017). Hence, finding optimal transmission power for both single and multi-hop communication is an important research challenge.

In earlier days, protocols (Tang et al. 2005; Bag and Bassiouni 2007) were designed focusing on a single issue, such as restricting temperature rise. These protocols may not result in an optimal route to the destination. Later, a few cost-based protocols (Roy et al. 2017; Khan et al. 2021; Qureshi et al. 2020) were designed that address multiple contradictory issues while exploiting the least cost route for data delivery. A few works in literature (Zhang and Zhang 2017; Liang et al. 2014; Quwaider et al. 2010) are found that focus on adaptively adjusting the transmission power to support time-varying channel conditions. However, the problem of relay selection and load distribution among the relays remains mostly unexplored. In fact, it should be viewed as a dynamic problem that depends on both the node and link conditions jointly addressing (i) minimal transmission power and (ii) reliable data delivery.

Herewith, the contribution of the paper is to design a cost-based multi-hop routing protocol for WBAN which is suitable for a network of wearable as well as implantable sensor nodes. The novel features of the protocol are as follows.

  • The protocol takes dynamic decisions in relay selection at minimum transmission power based on the reliability of the forwarder and the link quality.

  • Major routing issues (that is, response time, temperature rise, energy efficiency as well as link quality) are addressed while evaluating the cost for each neighbor.

  • Zipf’s law (Ramasubramanian et al. 2003) is applied for relay selection so that the distribution of forwarding load among potential relays is ensured. This, in turn, balances the energy depletion rate of the forwarders.

The rest of the paper is organized as follows. A study on the state-of-the-art WBAN routing protocols is presented in the next section (Sect. 2). Section 3 details the system model followed by the description of the proposed routing protocol. The experimental setup followed by simulation results is elaborated in the next section (Sect. 4). Finally, Sect. 5 concludes.

2 Related work

Table 1 Brief timeline of representative WBAN routing protocols

Existing research in WBAN routing protocols is organized according to the timeline as shown in Table 1. Routing protocols in WBAN can be broadly categorized as shown in Fig. 2.

Fig. 2
figure 2

Categorization of WBAN routing protocols

Earlier routing solutions were developed focusing on a single issue, such as temperature control, or clustering. Only a few of them focus on implantable nodes though. In Tang et al. (2005), Bag and Bassiouni (2006) each node estimates the temperature change of its neighbor and avoids heated neighbors from forwarding data to keep thermal balance while in Bag and Bassiouni (2007) formation of a hot spot is prevented by appropriate routing decision. However, these protocols may not always select the optimal route in terms of delay. Besides, each instance of data communication between source and sink via several hops may lead to a substantial energy expenditure of the entire network. Hence, a few recent temperature-aware protocols such as TAEO proposed by Javed et al. (2019) pay attention to energy efficiency as well along with the thermal aspects and hot spot problem.

On the other hand, cluster-based protocols as in Culpepper et al. (2004), Moh et al. (2005), Watteyne et al. (2007), and Murthy and Rao (2013) group the nodes in the network into clusters, and each cluster is assigned a cluster head. The data communication between source and sink is regulated via cluster head. However, the cluster formation and cluster head selection bring significant overhead for a small network like WBAN where the network size is limited to 15–20 (Movassaghi et al. 2014). Since focusing on a single issue may not result in an optimal solution most of the time, the trend moves towards addressing multiple issues to find a balanced solution.

One research direction to handle multiple issues is noted in literature through designing cross-layer protocols as in Braem et al. (2006), and Ruzzelli et al. (2007) in which MAC layer issues along with that of the network layer are addressed together. In the work proposed by Braem et al. (2006), time is slotted and a multi-hop approach is presented to gain access to the MAC layer and route data in the network. Collision-free data transfer is enhanced by the researchers in Braem et al. (2006), and Ruzzelli et al. (2007) leading to an increase in throughput. Besides, nodes turn off their transceiver when not required which further reduces energy expenditure. However, these protocols are not well suited subject to frequent changes in link quality due to body movement.

The next category according to the timeline focuses on enhancing the quality of service (QoS) requirements in intra-WBAN routing. The researchers in Liang and Balasingham (2007), Liang et al. (2008), and Razzaque et al. (2011) designed separate modules to address each QoS requirement. Data traffic is divided into multiple categories to provide prioritized routing service and user-specific QoS support. However, designing a modular approach to satisfy each QoS requirement increases system overhead.

Herewith, the research trend moves toward finding cost-effective solutions as in Nadeem et al. (2013) where multiple routing issues are modeled in terms of cost. Quwaider and Biswas (2009) and Quwaider and Biswas (2010) authors defined a cost function that estimates the cost of routing from a source to the sink via relay. Cost evaluation considers multiple network layer issues, such as temperature control, energy efficiency, link quality, and mobility, and a trade-off is made. Data delivery is made through the least cost route. The authors of Qureshi et al. (2020) designed an energy-aware routing (EAR) protocol to minimize energy utilization and select preferable next hop by evaluating the link quality of sensor nodes. The cost evaluation process presented by the authors in Nadeem et al. (2013), and Javaid et al. (2015) is centralized whereas, in Liang et al. (2012), Movassaghi et al. (2012), each node evaluates the cost for its neighbors and thus, a distributed approach is followed.

A list of the existing works that address multiple issues in WBAN routing is presented in Table 2. The protocols are mostly designed to be applied for a network of wearable sensors and the multi-hop approach is commonly preferred.

An energy-efficient routing protocol was presented by Khan et al. (2021) where forwarder nodes are utilized for multi-hop communication. In Roy et al. (2019), a data delivery scheme is designed that finds a reliable route to sink by considering energy resources and channel conditions. Another relay-aided method was proposed by Zhang and Zhang (2017) that switches between direct and relay-aided transmission based on channel conditions and adjusts transmission power adaptively. However, only a few routing protocols designed by the researchers in Quwaider et al. (2010), Maskooki et al. (2011), Javaid et al. (2015), and Roy et al. (2019) are found to address relative node movement due to posture change and even fewer (Quwaider et al. 2010; Kim and Eom 2014; Roy et al. 2019) could be found to exhibit adaptive behavior for obtaining the effective transmission power. Consequently, in this paper, a multi-hop cost-based routing protocol has been designed that can be applied to both on-body and in-body sensor nodes to find a route to the destination. The architecture is shown in Fig. 1. Besides addressing primary network layer issues, the proposed protocol employs an intelligent power switching approach to cope with the time-varying channel.

Table 2 Summary of cost-based routing protocols that handle multiple issues

3 Description of the routing mechanism

The data structures and system models used by the proposed mechanism are described first. The algorithm for ZITA is detailed subsequently.

3.1 Preliminaries

3.1.1 Energy model

  1. 1.

    Transmitter model: Data transmission is the key source of energy expenditure in WBAN. Energy is consumed to run the voltage-controlled oscillator (VCO), frequency synthesizer (FS), modulator, and power amplifier (PA). Hence, the transmission power (\(P_{Tx}\)) to carry out transmission for \(t_{Tx}\) time duration is quantified as follows (Ahmed and Khan 2017).

    $$\begin{aligned} P_{Tx}=(E_{VCO}+E_{FS}+E_{PA})t_{Tx}. \end{aligned}$$
    (1)

    Further, the energy consumed by the power amplifier (\(E_{PA}\)) is measured in terms of the radio frequency (RF) output power (\(P_{Out}\)).

    $$\begin{aligned} E_{PA}=\frac{1}{\xi _{P}}P_{Out}, \end{aligned}$$
    (2)

    where \(\xi _{P}\) represents the power efficiency of the power amplifier. Furthermore, \(P_{Out}\) can be evaluated as follows.

    $$\begin{aligned} P_{Out}=\beta _{PA}.\gamma {'}.d^{n{'}} \end{aligned}$$
    (3)

    where \(\gamma {'}\) denotes the data rate, \(n{'}\) represents the path loss exponent. \(\beta _{PA}\) is a factor that depends on several parameters such as antenna gain, wavelength, thermal noise power spectral density, and the desired signal to noise ratio (SNR) at distance d. However, if the transmitter is switched on \(N_{Tx}\) number of times and transmits for \(t_{Tx,i}\) duration in \(i^{th}\) transmit interval, the overall transmission power (\(P_{Tx}\)) is quantified with the following equation.

    $$\begin{aligned} P_{Tx}= & {} \sum _{i=1}^{N_{Tx}}[(E_{VCO}+E_{FS})(t_{Tx,i}+t_{startup})\nonumber \\&+E_{PA,i}(t_{Tx,i})] \end{aligned}$$
    (4)

    where \(t_{startup}\) gives the constant start-up time for the local oscillator to get prepared for transmission. \(E_{PA,i}\) is the energy consumed by the power amplifier for the ith transmit interval transmitting at a specific power level \(P_{Out}\).

  2. 2.

    Receiver model: A radio receiver consists of several elements like an antenna, amplifier, modulator, FS, VCO, and power supply. The energy consumption by the receiver is given by the following expression (Akyildiz and Vuran 2010).

    $$\begin{aligned} E_{Rx}=(P_{VCO}+P_{FS}+P_{Rx})t_{Rx} \end{aligned}$$
    (5)

    \(P_{Rx}\) is the power dissipated by receiving elements (that is, antenna, amplifier, modulator), and \(t_{Rx}\) is the duration of data reception. The total energy depletion for receiving data depends on the data reception rate. Accordingly, the total energy consumption by the receiving module is given as follows (Akyildiz and Vuran 2010).

    $$\begin{aligned} E_{con-Rx}=\sum _{i=1}^{N_{Rx}}[(P_{LO}+P_{Rx})(t_{Rx,i}+t_{startup})], \end{aligned}$$
    (6)

    where \(t_{Rx,i}\) denotes the \(i^{th}\) receiving duration, \(t_{startup}\) is the constant startup time for the receiver and \(N_{Rx}\) is the total number of times the receiver is turned on.

3.1.2 Specific absorption rate

The heat generated by a node due to transmission and reception of electromagnetic radiations is absorbed by human tissues. The amount of heat absorbed can be measured through Specific Absorption Rate (SAR) as follows (Prakash et al. 2003):

$$\begin{aligned} SAR=\frac{\sigma |{EF}|^2}{\rho } \end{aligned}$$
(7)

SAR is quantified in Watts per Kilogram (W/kg). EF is the induced electric field, \(\rho\) is the density of the tissue, and \(\sigma\) is the electrical conductivity of the tissue. Each sensor node i has a dipole antenna with length dl and is perpendicular to the body plane. The SAR due to radiation from a sensor node’s antenna located in the near field region is estimated as follows (Prakash et al. 2003).

$$\begin{aligned} SAR= & {} \frac{\sigma \mu \omega }{\rho \sqrt{\sigma ^{2}+\epsilon ^{2}\omega ^{2}}} (\frac{\text {Idl}\sin \theta \exp ^{-\alpha \Re }}{4\pi } (\frac{1}{\Re ^{2}}\nonumber \\&+\frac{|\gamma |}{\Re }))^{2} \end{aligned}$$
(8)

Here, \(\mu\), \(\omega\), \(\epsilon\) represent permeability, frequency, and permittivity respectively. I denotes the current drawn at a particular power level of radio. \(\Re\) is the distance from the source to the observation point. \(\gamma\) indicates the propagation constant and \(\theta\) exhibits the angle between the observation point and the xy plane. The antenna is assumed to be perpendicular to the xy plane; hence, the value \(\sin \theta =0\) has been taken into account for evaluation. The attenuation constant \(\alpha\) (measured in Neper/m) is given as follows (Prakash et al. 2003).

$$\begin{aligned} \alpha = \omega \sqrt{\frac{\mu \epsilon }{2}}\left[ \sqrt{1+\left( \frac{\sigma }{\omega \epsilon }\right) ^{2}}-1\right] ^{\frac{1}{2}} \end{aligned}$$
(9)

The standard values (Prakash et al. 2003) for the parameters used in Eq. 8 are listed in Table 3.

Table 3 Standard values for the parameters to compute SAR

3.2 System model

A network of n body sensor nodes is considered to be deployed over the human body covering the vital positions to be monitored. Few nodes are implanted inside the body and the rest are considered wearable. The body sensor nodes measure the essential parameters and send the data to the sink either directly (single hop) or via relay nodes (multi-hop). Each node \(i \in n\) routes its data to the sink S following the routing protocol described as follows.

3.2.1 Cost model

As discussed earlier, the relay nodes are placed between the body sensor node (acting as the source) and the sink. In order to find the best possible route from a source to the sink, a cost model is followed where the cost can be defined in terms of hop count, queue length, power consumption, and delay which are discussed separately in the following subsections.

  1. 1.

    Temporal cost (\(C_{Time,i\rightarrow S}\)): Time is an important factor in selecting a routing path for health-care applications. Temporal cost deals with this factor. Temporal cost for routing each packet from source i to destination S (that is, for the path \(i \rightarrow i+1 \rightarrow i+2 \rightarrow \cdots \rightarrow S-1 \rightarrow S\)) is evaluated as follows:

    $$\begin{aligned} C_{Time,i \rightarrow S}= & {} \sum _{i}^{S-1} (\Omega _{Trans}C_{Trans,i\rightarrow i+1}\nonumber \\&+\Omega _{Prop}C_{Prop,i\rightarrow i+1} + \Omega _{Queue}C_{Queue,i\rightarrow i+1}) \end{aligned}$$
    (10)

    \(C_{Trans,i\rightarrow i+1},\ C_{\text {Prop,}i\rightarrow i+1},\ C_{Queue,i\rightarrow i+1}\) denote the cost associated with transmission delay, propagation delay, and queuing delay among the peer nodes respectively. \(\Omega _{Trans}\), \(\Omega _{Prop}\), and \(\Omega _{Queue}\) are the weights associated with the transmission, propagation, and queuing delay respectively. Little’s theorem can be used to find out the Queuing delay (Mir 2014). Processing delay is negligible as compared to others and hence is not considered here.

  2. 2.

    Energy cost (\(C_{E,i}\)): Energy is the most critical resource in a WBAN. Energy cost (\(C_{E,i}\)) of each node i is quantified as follows:

    $$\begin{aligned} C_{E,i}=\frac{E_{t_0}}{E_r}. \end{aligned}$$
    (11)

    Here, \(E_{t_0}\) represents initial battery power (at time \(t_0\)) and \(E_r\) is the remaining battery power.

  3. 3.

    Link cost (\(C_{L,i\rightarrow j})\): Link cost (\(C_{L,i\rightarrow j}\)) between transmitting node i and receiving node j is estimated as the ratio between transmission power and receiving power.

    $$\begin{aligned} C_{L,i\rightarrow j}=\frac{P_{Tx}^i}{P_{Rx}^j}, \end{aligned}$$
    (12)

    where \(P_{Tx}^i\) denotes the transmission power of node i and \(P_{Rx}^j\) represents the receiving power of the node j.

  4. 4.

    Thermal cost (\(C_{T,i}\)): The thermal cost (\(C_{T,i}\)) of node i is calculated from Eqs. 89 and is based upon a node’s transmission and reception activities. This dependency is given by the relationship: \(C_{T,i} \propto SAR\). Hence,

    $$\begin{aligned} C_{T,i}= & {} k.SAR, \end{aligned}$$
    (13)

    where k is a constant.

  5. 5.

    Route cost (\(C_{i\rightarrow S}\)): Finally, the route cost (\(C_{i\rightarrow S}\)) for the path (\(i \rightarrow i+1 \rightarrow i+2 \rightarrow \cdots \rightarrow S-1 \rightarrow S\)) between the source node i and the sink node S is quantified as follows:

    $$\begin{aligned} C_{i \rightarrow S} = \sum _{i}^{S-1} (\Omega _E C_{E,i}+\Omega _L C_{L,i\rightarrow i+1}+\Omega _T C_{T,i}), \end{aligned}$$
    (14)

    where \(\Omega _E\), \(\Omega _L\), and \(\Omega _T\) associated with energy cost, link cost, and thermal cost represent their respective weights in estimating route cost.

3.3 Proposed routing protocol: ZITA

A cost-based routing protocol ZITA has been designed here that addresses the network layer issues while finding the next hop for data packets.

3.3.1 General assumptions

The following assumptions are taken into account while designing ZITA.

  • The initial battery level of all nodes is equal. This assumption is justified as most of the wearable and implantable devices have similar battery sizes.

  • The initial transmission power of all nodes is set to maximum. In general, every node tries to ensure its proximity to the sink. Thus, initially setting the transmission power level to a maximum is a realistic assumption.

  • Other than the sink, any node can be a source node. This is usually the case in health applications as the body sensors are the source of data while the sink aggregates and sends the data to a remote server.

3.3.2 Basic routing and power control scheme of ZITA

The proposed routing strategy, ZITA, is a gradient cost-based routing protocol that sends data to the sink directly if the sink is in its vicinity; otherwise, it chooses the best forwarder node according to Zipf’s law. The proposed approach consists of two phases: the Setup phase and the Data Communication phase. These phases are illustrated in detail in the following subsections.

  1. 1.

    Setup Phase: In the setup phase, a cost value is propagated through the network. The workflow of the cost propagation is presented in Algorithm 1.

    The cost value represents the cost to reach the sink and it starts its journey from the sink node S. The sink broadcasts a cost value of zero (as the cost to reach the sink from itself is zero) to its neighbor nodes. Other than the sink node, the cost value is initialized to be infinite \(\infty\), at each node (Step 2 of Algorithm 1). Whenever a node i receives a cost value from its neighbor j, the value is stored in the memory. After a certain time interval, the node finds the minimum cost value out of the stored values and broadcasts this minimum cost to its neighbor nodes.

    During the cost value propagation, the method for finding the least cost neighbor is based on three costs as defined in the Cost Model: temporal, link quality plus thermal, and energy. By taking into account the primary issues of WBAN in finding the least cost neighbor result in a real-time, reliable, thermal, and energy-aware routing. Three filters are applied to the control packets in the setup phase to obtain the minimum cost corresponding to the above-mentioned issues (that is, response time, link quality plus thermal, and energy).

    1. (a)

      Filter 1: At the beginning, control packets from neighbors are passed through a filter that screens the packets with respect to time. This is due to the fact that delivery of health data after the deadline is of no use. The purpose of this filter is to get a subset of neighbor nodes that can deliver data within the specified deadline (as shown in Step 12 of Algorithm 1). This is done by adding corresponding propagation and transmission delays to the temporal costs received from each neighbor node. Accordingly, the filter returns the subset of neighbor nodes \(n'\) for the next screening.

      figure a
    2. (b)

      Filter 2: Next filter is applied to screen the neighbors with respect to link quality and thermal cost (summarized in Algorithm 2). The purpose of this filter is to get a subset of neighbor nodes \(n''\) that can deliver the data reliably while minimizing heating effects on human tissue. Link thermal cost \(C_{lt}^i\) of each neighbor node i from the list of neighbor nodes \(n'\) obtained from filter 1 is compared to the predefined threshold values \(C_{lt\_Th1}\), \(C_{lt\_Th2}\) and \(C_{lt\_Th3}\) respectively (such that, \(C_{lt\_Th1}>C_{lt\_Th2}>C_{lt\_Th3}\)). Accordingly, the neighbors \(n'\) are grouped into four categories as presented in Algorithm 2. At the end of this process, the list of neighbors having the lowest link thermal cost is returned.

      figure b
    3. (c)

      Filter 3: Finally, the list of neighbors \(n''\) obtained through previous screening are filtered with respect to energy resources (summarized in Algorithm 3). It selects a neighbor by applying Zipf’s law (Ramasubramanian et al. 2003; Sarra et al. 2014). Zipf’s law states that given some corpus of natural language utterances, the frequency of any word is inversely proportional to its rank in the frequency table. In many general-purpose applications, including messaging, and wireless audio, the popularity of nodes is found to follow a Zipf distribution (Ramasubramanian et al. 2003), thus making some nodes more popular than others. Even internet traffic has Zipf-like properties at multiple aggregation levels (Sarra et al. 2014). In this work, the filtered neighbor list (from Algorithm 2) is sorted in increasing order according to their energy cost. Then, Zipf’s law has been applied to the sorted list to find out the minimum cost forwarder. Hence, the potential forwarder with substantial energy resources gets the lowest rank and accordingly, becomes the popular choice to act as the relay. After significant energy draining over a certain period of time, the remaining energy of the current relay node decreases, and the energy cost increases. Hence, it obtains a higher rank in the sorted energy cost list and becomes a less popular candidate in the next round. This approach prevents repetitive use of any particular relay and thus load balancing is achieved in selecting a relay node. Thus, at the end of the setup phase each node i obtains a minimum cost neighbor to reach the destination and broadcasts this least-cost value to its neighborhood.

      figure c
  2. 2.

    Data Communication Phase: The minimum cost neighbor in the setup phase is selected as the data forwarder in the Data Communication phase presented in Algorithm 4. Moreover, upon receiving the cost values of neighbor nodes, a node also adjusts a suitable power level with each of its neighbor nodes. This adjustment is based on the RSSI as reflected in steps 10-25 in Algorithm 4. If RSSI falls below the lower threshold, transmission power TP is increased to the next available high transmission power level. Similarly, if the RSSI becomes higher than the upper threshold then TP is reduced to the previous available low power level.

figure d

3.3.3 Complexity analysis

In the routing protocol, a node may perform local computation, evaluate a condition or perform table lookup consuming battery power \(E_{compute}\), \(E_{condition}\) and \(E_{lookup}\) respectively. In the setup phase, a node initializes variables (steps 2 to 5 of Algorithm 1) consuming \(4E_{compute}\) computation power and then evaluates a condition in step 8 of Algorithm 1. If the condition stated in step 8 becomes true, it consumes at most \(4E_{compute}+E_{condition}\) computation power (steps 9 to 12). Along with this, two procedures (namely, Algorithm 2 and 3) are called as well. Algorithm 2 performs two decision-making steps (steps 2 to 14) which are repeated for \(n'\) times; thus, \(2n'E_{condition}+2n'E_{compute}\) units of computation power is consumed for Algorithm 2 to find out appropriate candidate nodes. Next, Algorithm 3 is invoked to find out least cost neighbor by performing local computations (steps 2 to 10) and decision making (step 11) that consumes a maximum (that is, in worst case) (\(5E_{compute}\ +\ n{''}\ (3\ E_{compute}\ +\ E_{decision})\)) computation power where \(n{''}< n' < n\). Finally, Algorithm 4 which is invoked at the end of the setup phase involves local computation (steps 2 to 5) and a table lookup (step 7) that requires \((4E_{compute}+E_{lookup})\) units of computation power followed by a decision making (for transmission power adjustment) in step 8. If power adjustment is required, it consumes maximum (2 \(E_{compute}+4(E_{decision}+E_{compute}))\). Steps 6 to 26 of Algorithm 4 are repeated for every single packet sent as long as the node is connected to the network. However, when destination information is cached and transmission power switching is not required only \(E_{lookup}\) computation power (that is, to obtain the minimum cost neighbor) is consumed during the data communication phase. Thus, in other words, to send a packet from the source node to sink, the computational complexity of the proposed algorithm during setup plus data communication is O(n) in the worst case.

However, the proposed protocol works with minimal control message exchange as compared to the total data packet transmissions. Since the sink initiates the process of cost estimation, a node that does not receive any information from the sink contributes no control message at all during the setup phase when 2 hops are taken into account. Even for the multi-hop scenario, each node evaluates the minimum cost neighbor and performs a broadcast only once during the setup phase. Thus, the message complexity of the network becomes O(n) for n nodes. Later, when data packets are transferred without executing the setup phase, the message complexity becomes constant.

4 Experimental results

The proposed protocol is simulated for a WBAN configuration with implantable and wearable nodes. The details of the experimental setup and default values of parameters are discussed in the following subsection. Results of our experiments and comparison with state-of-the-art protocols are detailed in subsequent subsections.

4.1 Experimental setup

The proposed protocol is simulated using the Castalia-3.2Footnote 1 simulator based on the OMNeT++ platform which provides an environment for Wireless Sensor Networks (WSN), WBAN, and networks of low-power embedded devices. Distributed algorithms and/or protocols can be implemented in the simulation with advanced wireless channel and radio models. For instance, IEEE 802.15.4 functionality can be exploited to prototype intra WBAN communications. Different simulation parameters relating to ZITA implementation are listed in Table 4 along with their default values. Any changes to it are mentioned explicitly. 13 nodes are deployed at various significant locations in and on the human body as shown in Fig. 3 and the sink is located at the waist. All nodes except the sink send data at the rate of 14 packets/sec to the sink.

Table 4 Simulation parameters and their default values

Radio parameters are governed by BANRadio (see Footnote 1) which describes the narrow-band radio proposed by the IEEE 802.15 Task Group 6.

Fig. 3
figure 3

Different node locations on the human body along with sink

The values of the weight factors in Eq. 10 are set as \(\Omega _{\text {Queue}} = 0.5\), \(\Omega _{\text {Trans}} = 0.25\) and \(\Omega _{\text {Prop}} = 0.25\). Due to the time-variant nature of the queueing delay, its weight factor is higher than the weight factors of propagation and transmission delays. The values of weight factors in Eq. 14 are set empirically as \(\Omega _{\text {E}} = 0.6\), \(\Omega _{\text {L}} = 0.2\) and \(\Omega _{\text {T}} = 0.2\). Since the values of \(\Omega _E\), \(\Omega _L\), and \(\Omega _T\) depend on battery quality, channel conditions, and how frequently nodes are emitting electromagnetic radiations respectively, these factors can thus be measured or estimated specifically for the environment, nodes to be used and application area where these nodes are to be used.

The proposed protocol is validated through a series of experiments by regulating one or more parameters. Performance is analyzed with respect to the main aspects of the protocol; forwarding behavior, adapting transmission power level, and node heating.

4.2 Performance evaluation of the proposed routing protocol

This subsection presents the performance of the protocol subject to time, no of relays, and data rate. Received data traffic, forwarding traffic, and consumed energy are considered the performance metric.

In Fig. 4a data packets received by the sink have been plotted in increasing time frames and the corresponding energy consumption of the network is presented in Fig. 4b. Two existing WBAN routing protocols namely power-aware reliable lightweight (PARL) routing protocol (Roy et al. 2019) and link-state estimation-based transmission power control (LSE-TPC) (Kim and Eom 2014) are simulated for a similar experimental setup to compare with the proposed protocol. It is found that more data is received by the sink with similar energy expenditure when ZITA is in use as compared to the state-of-the-art protocols.

Fig. 4
figure 4

Behavior of the protocols with time

Following experiments evaluate protocol performance with respect to data sending rate. As stated beforehand, every node except the sink sends its data to the sink at a specific rate (default, 14 pkts/sec). However, in this experiment, the data sending rate is varied to investigate its effect on protocol performance. Data received by the sink and corresponding energy consumption of the network at each data rate (measured in packets per second) are plotted in Fig. 5a, b respectively. The outcome shows that data reception at the sink does not rise significantly with the growing data rate as the channel saturates. However, ZITA performs better than state-of-the-art protocols PARL (Roy et al. 2019) and LSE-TPC (Kim and Eom 2014) simulated for a similar experimental setup. In addition, when the corresponding energy consumption of the network is studied, it is found that the energy consumption of the protocols is comparable.

Fig. 5
figure 5

Performance of the protocols with varying data rate

The next set of experiments are conducted with a two-hop data routing approach following IEEE WBAN standards (Movassaghi et al. 2014) where the source node routes data either directly to the sink or via relay (that is, source to relay plus relay to sink). However, the performance of the proposed protocol ZITA (measured in terms of data packets received with time) is studied for the multi-hop approach, where data is routed through at most four hops. Performance comparison between two-hop and multi-hop approaches are presented in Fig. 6. It is found that performance following the two-hop strategy is much better although, both approaches exhibit similar performance patterns with time. Hence, ZITA can be applied to a multi-hop scenario with no additional overhead.

Fig. 6
figure 6

Comparative study of the reception of data packets through two hop and multi-hop communication with time

The next experiment is meant for analyzing the effect of relay nodes on protocol performance. To carry out this experiment, four nodes out of 13 nodes are chosen randomly to act as forwarders. The experiment was conducted in a mobile environment with a default simulation time. Initially, there were no relay nodes in the network and each node delivered its traffic towards the sink subject to channel conditions and direct connectivity with the sink. Relay nodes are gradually included in the network and the variation in data delivery is observed. As depicted in Fig. 7a, data reception increases as the number of relay nodes increases because source nodes are likely to get a suitable forwarder for the data in case direct connectivity with the sink is lost. Thus, the necessity of multi-hop routing for intra-WBAN communication is justified. Next, how forwarding traffic is distributed with the inclusion of relay nodes is presented in Fig. 7b. When only one relay node is available, the relay traffic is routed through it. But, as more relays come into play, the task of data forwarding is found to be distributed among the relays following the proposed strategy depending on network conditions.

Fig. 7
figure 7

Effect of relay nodes on protocol performance

4.3 Behavioral analysis of ZITA

The behavior of the protocol under different experimental conditions is analyzed. These conditions include (i) some nodes having low remaining energy, (ii) the channels are noisy, and (iii) the nodes transmit only at the highest transmission power. The heated ratio (defined in Eq. 15) has been considered as a performance metric.

This experiment has been conducted to investigate the protocol behavior when the nodes have low remaining energy. Performance (measured in terms of data received by the sink) is plotted in Fig. 8a and the corresponding situation when nodes die out with time is depicted in Fig. 8b. It is found that ZITA exhibits relatively better performance than LSE-TPC (Kim and Eom 2014) and gives comparable output with respect to PARL (Roy et al. 2019) in a similar experimental setup.

Fig. 8
figure 8

Behavior of the protocols in increasing time frame at the low energy situation

The subsequent experiment studies the nature of data forwarding in increasing time frames. Six nodes (chosen randomly) are provided with data relaying capability apart from their task and Node 5 has been chosen as the source node for this experiment. How the distribution of relay traffic following the proposed approach takes place is depicted in Fig. 9. The graph demonstrates that any particular node is not overburdened with relay traffic throughout the execution time as the load is shared among all the forwarder nodes. According to the proposed approach, Zipf’s law is applied to the list of candidate nodes ordered by energy cost (from low to high) that is, the outcome of filter 3. Accordingly, the plot shows that any particular node served as the relay is not continuously repeated. For instance, Node 10 forwards data during time interval 4000–5000 s (recorded in Fig. 9 as forwarding traffic at 5000 s) and hereafter, it got selected again to act as a potential forwarder after some time (the time interval 9000–10,000 s). This establishes the balance in the overall energy depletion of the nodes.

Fig. 9
figure 9

Data forwarding with time

The next experiment is carried out to establish whether the proposed protocol ZITA can achieve one of its prime objectives- thermal awareness. To estimate the temperature rise of each node, a metric heated ratio (\(Heated\ ratio_i\)) is introduced. This measures the proportion of time a node remains heated that is, SAR of the concerning node exceeds the threshold (\(SAR_{th}\)). The heated ratio for different nodes is depicted in Fig. 10.

$$\begin{aligned} Heated\ ratio_i\ = \frac{\sum _{i\in n, SAR_i>SAR_{th}}Time}{\sum Time}. \end{aligned}$$
(15)

The experiment is conducted for two conditions-static nodes and relative node movement due to posture change. Interestingly, in both cases, the heated ratio is found to be much less than its maximum limit (that is, 1) which ensures the temperature control capability of the proposed protocol. Furthermore, it is found that the heated ratio gets slightly reduced when node mobility in introduced. Nodes often get closer to each other due to posture change which increases the probability of short-length low power communication and even direct communication to the sink as compared to the static scenario. Accordingly, it is found that the power level often switches from the default power level (\(-15\) dBm) to the minimum power level (\(-25\) dBm) gradually, following Algorithm 4 and most of the communications are performed with the minimum transmission power.

Fig. 10
figure 10

Heated ratio of each node during experiments

5 Conclusion

This paper proposes a routing protocol, ZITA for WBAN having implanted and wearable nodes. The protocol ensures a low-cost multi-hop route to the destination when the direct link between source and sink is unavailable. Cost calculation incorporates prime issues of WBAN such as real-time data delivery, channel conditions, thermal effect, and energy consumption. Zipf’s law is applied in the forwarder selection process. The nodes show adaptive nature in selecting transmission power depending on channel conditions which enables short-length low-power communication within WBAN. The protocol is implemented using Castalia-3.2 and is validated through extensive simulations. Performance is also compared with state-of-the-art protocols simulated in a similar experimental setup. ZITA is executed for static as well as mobile nodes and is found to provide significant and consistent output with respect to time and data rate as compared to existing protocols with similar energy expenditure. In addition, ZITA can give better performance even when a few nodes drain out of battery. Besides, the protocol meets one of its prime objectives of avoiding temperature rise of nodes which enhances its applicability in intra-WBAN communication. In the future, we plan to analyze the placement of relays for reliable network topology and its effect on the performance of routing protocols.