# Routing in Wireless Multimedia Sensor Networks: A Survey of Existing Protocols and Open Research Issues

Authors: Vikas Bhandary; Amita Malik; Sanjay Kumar
Journal: Journal of Engineering
 (2016)

---

## Abstract

With the advancement of wireless sensor networks (WSNs) and technology, applicability of WSNs as a system is touching new heights. The development of multimedia nodes has led to the creation of another intelligent distributed system, which can transfer real-time multimedia traffic, ubiquitously. Wireless multimedia sensor networks (WMSNs) are applicable in a wide range of areas including area monitoring and video surveillance. But due to unreliable error-prone communication medium and application specific quality of service (QoS) requirements, routing of real-time multimedia traffic in WMSNs poses a serious problem. The paper discusses various existing routing strategies in WMSNs, with their properties and limitations which lead to open research issues. Further, detailed classification and analytical comparison of discussed protocols are also presented.


---

## Body

## 1. Introduction

A wireless sensor network (WSN) comprises a substantial number of interconnected sensor nodes (SNs) that have the capability to sense the physical environment attributes such as temperature, pressure, humidity, light, and sound and simultaneously interact with each other over the wireless medium. The advancements in various technologies have led to the creation of tiny and low-cost multimedia devices like video cameras and microphones, which can easily be integrated to form a sensor node. These devices are used in special types of wireless sensor networks, called wireless multimedia sensor networks (WMSNs). WMSN is a special type of WSN which can sense and transfer scalar data as well as multimedia data, that is, image, audio, and video streams, in real-time as well as nonreal-time. Usually these networks are more powerful distributed systems [1]. Akyildiz et al. [2] have stated various applications of WMSNs: multimedia surveillance networks, traffic avoidance, enforcement and control systems, industrial process control, environment monitoring, and so forth. Many applications still require intense efforts in various research areas to implement WMSNs more efficiently.Figure1 shows the architecture of WMSNs based on the type of node used. WMSN can be classified into various classes: (a) single-tier flat and homogeneous, (b) single-tier clustered and heterogeneous, and (c) multitier heterogeneous. In single-tier flat and homogeneous architecture, sensors with similar physical capabilities are used [2]. A subset of nodes having data processing capability, called multimedia processing hubs, is used. Data processing is done in a distributed fashion. In single-tier clustered and heterogeneous architecture, there are nodes with different physical capabilities, for example, multimedia node and scalar node [2]. Nodes having more capability, processing power, batteries, and so forth are called cluster heads (CHs). The rest of the nodes communicate with CHs, which then process and transfer the information to sink node. The data is stored in the central storage hub. In multitier clustered and heterogeneous architecture, there are multiple layers of nodes with different type and processing tasks at each layer. Data is processed and stored in a distributed fashion.Figure 1
Architecture of WMSNs.Routing is the most challenging problem in wireless communication system. Only a few survey papers have been published on WMSN routing protocols. A survey presented by Al-Karaki and Kamal [3] included routing protocols for WSN. The authors presented surveyed protocols in taxonomy and a detailed tabular comparison of all the protocols was also included at the end. Akyildiz et al. [2] gave layerwise description of WMSN protocols and summarized the open issues of WMSNs. In [4], Förster has summarized various machine learning (ML) techniques which can be used in routing in ad hoc networks. He also discussed the importance of ML techniques and summarized their properties in a table. Misra et al. [5] described layerwise requirements, mechanism, and issues of multimedia streaming in WSN. The paper included QoS based and reliability constrained routing protocols. Saleem et al. [6] presented a paper, which included swarm intelligence (SI) based routing protocols for WSN. The authors briefly explained various SI based energy efficient and QoS based routing protocols. Zungeru et al. [7] did an exhaustive survey of classical and SI based routing protocols for WSN. Detailed analytical and experimental comparison of various QoS based energy efficient and reliable routing protocols was done by the authors. Jayashree et al. [8] classified multipath routing protocols and summarized few QoS based routing protocols. Whereas the authors Ehsan and Hamdaoui [1] performed extensive survey of WMSN, which included detailed classification and analytical comparison based on different criteria and protocol’s summary and drawbacks. Guo and Zhang [9] described state-of-the-art SI based routing protocols in WSN. The authors have summed up the performance analysis in a tabular format and have given short description of analysis of network lifetime based on different definitions. Abazeed et al. [10] surveyed different routing protocols for WMSNs. The authors performed the analytical comparison of protocols and also considered simulation scenarios and results of surveyed protocols. Masdari et al. [11] surveyed multipath routing protocols. The protocols were analytically compared and classified based on different criteria. Alanazi and Elleithy [12] have studied real-time QoS routing protocols. The authors classified protocols into probabilistic and deterministic protocols. They performed simulation to analyse various metrics and finally summarized the simulation results. Aswale and Ghorpade [13] surveyed state-of-the-art QoS routing protocols and summarized their analysis in table, including each protocol’s strengths and weaknesses, and finally summarized various issues in routing in WMSNs.At the end, previous works related to ours are condensed in Table1. The paper presents summarized description and key features of routing protocols, which are classified into different categories based on different characteristics. Further, classification-wise analytical comparison of protocols is done at the end of each class (Tables 2, 3, 4, 5, and 6), in which attributes like characteristics features, suitability for WMSNs, performance metrics, type of network, energy efficiency, and performance results are stated. And in the end, surveyed protocol’s characteristics are condensed in Table 7.Table 1
Previous surveys.
Year of survey
Authors
Characteristics
Time period
2004
Al-Karaki and Kamal [3]
WSN routing
1988–2004
2006
Akyildiz et al. [2]
WMSN survey
1993–2006
2007
Förster [4]
Machine learning based routing
1989–2006
2008
Misra et al. [5]
Multimedia streaming survey
1973–2008
2010
Saleem et al. [6]
SI based routing
1989–2010
2011
Zungeru et al. [7]
Classical and SI based routing
1988–2011
2012
Jayashree et al. [8]
Multipath routing
1993–2011
2012
Ehsan and Hamdaoui [1]
QoS routing
1990–2012
2013
Guo  and  Zhang [9]
SI based routing
1959–2012
2013
Abazeed et al. [10]
WMSN routing
1998–2011
2013
Masdari et al. [11]
Multipath routing
2003–2012
2015
Alanazi and Elleithy  [12]
Real-time QoS routing
2000–2015
2015
Aswale and Ghorpade [13]
QoS routing
1988–2015Table 2
Latency based routing protocols.
Author [paper]
Year
Characteristics features
Suitability for WMSN
Performance metrics
Type of network
Energy efficiency
Network lifetime
Performance results
Zhou and Wang [20]
2010
HRT
Medium
Delay, Lifetime
Homogeneous
Medium
High
Suitable for small WMSNs
Sohrabi et al. [21]
2000
SRT
Low
Delay
Homogeneous
No
Low
Meets SRT
Akkaya and Younis [23]
2003
SRT
Medium
Delay, RE
Homogeneous
Medium
High
Low throughput
Lu et al. [25]
2002
SRT
Medium
Delay
Homogeneous
No
Low
Outperforms DSR [26] and GF [27]
Karp and Kung [27]
2000
SRT
High
Delay, RE
Homogeneous
Medium
Medium
Outperforms DSR [26] and GF [27]
Chipara et al. [29]
2006
SRT
High
Delay, RE
Homogeneous
Medium
Medium
Outperforms SPEED [28] and  EEGR [33]
Ratnaraj et al. [34]
2006
SRT
High
Delay, RE
Homogeneous
Medium
Medium
Outperforms AODV [36] and  DSR [26]
Medjiah et al. [38]
2010
SRT
High
RE
Homogeneous
High
Medium
Outperforms GPSR [27]
Xue et al. [37]
2011
SRT
High
Delay, RE
Homogeneous
High
Medium
Outperforms MMSPEED [31] and RAP [25]
Ben-Othman and Yahya [39]
2010
SRT
High
Delay
Homogeneous
High
Medium
Outperforms MCMP [40] and RAP [25]
Li and Kim [15]
2014
(m,k) FRT
High
Delay, RE
Homogeneous
High
Medium
Outperforms SPEED [28]
HRT: hard-real-time, SRT: soft-real-time, FRT: firm-real-time, SD: service differentiation, and RE: residual energy.Table 3
Multiconstrained routing protocols.
Author [paper]
Year
Characteristics  features
Suitability for WMSN
Performance metrics
Type of network
Energy efficiency
Network lifetime
Performance results
Felemban et al. [31]
2006
Multiconstrained
High
Delay and reliability
Homogeneous
High
Low
Outperforms SPEED [28]
Razzaque et al. [41]
2008
Multiconstrained
High
Delay and reliability
Homogeneous
High
High
Outperforms MMSPEED [31] and MCMP [40]
Ahmed and Fisal [42]
2008
Multiconstrained
High
Delay and LQ
Homogeneous
High
Medium
Outperforms MMSPEED [31] and RTPC [43]
Yan et al. [48]
2009
Multiconstrained
High
Delay, PLR
Homogeneous
Medium
Medium
Outperforms SPEED [28] and DD [49]
Shen et al. [44]
2014
Multiconstrained
High
Delay and reliability
Homogeneous
High
High
Outperforms CAQR [45]
Rao et al. [46]
2013
Multiconstrained
High
Delay and reliability
Homogeneous
Medium
Medium
Outperforms VIBE [47]
LR: packet loss ratio; LQ: link quality.Table 4
SI based routing protocols.
Author [paper]
Year
Characteristics  features
Suitability for WMSN
Performance metrics
Type of network
Energy efficiency
Network lifetime
Performance results
Di Caro and Dorigo [14]
1998
Multipath (ACO)
No
Delay
Homogeneous
No
Medium
Slow convergence, high overhead
Rahman et al. [51]
2008
Flat (ACO)
Low
Delay and jitter
Homogeneous
Low
Low
Limited-scalability, high overhead
Sun et al. [53]
2008
Hierarchical (ACO)
Medium
Delay, PLR
Homogeneous
Medium
High
Outperforms Dijkstra and DD [49]
Bi et al. [54]
2010
Hierarchical (ACO)
Medium
Delay
Homogeneous
Medium
High
Outperforms AGRA [55] and M-IAR [51]
Cobo et al. [57]
2010
Hierarchical (ACO)
High
RE, delay, and PDR
Homogeneous
High
High
Outperforms T-ANT [58]
Yu et al. [56]
2011
QoS based (ACO)
High
Delay, PLR, and RBW
Homogeneous
High
High
Limited-scalability
Nayyar et al. [60]
2011
Energy aware (ACO)
High
RE, LB
Homogeneous
Medium
Medium
Outperforms Tiny AODV [36]
Kumar et al. [61]
2014
QoS based (ACO)
High
RBW, RE
Heterogeneous
Medium
Medium
Outperforms  EEABR [62]
Liu et al. [63]
2012
QoS based (PSO)
High
Delay, RBW, and jitter
Homogeneous
Medium
Low
Outperforms  EEABR [62] and AODV [36]
Huang et al. [64]
2014
Hierarchical (ACO)
Medium
RE, delay, and HC
Homogeneous
Medium
High
Outperforms Dijkstra and IPACR [64]
Förster  and Murphys [65]
2007
RL based
Medium
Lifetime, percentage gain over DD
Homogeneous
Medium
High
Outperforms DD [49]
Kotecha and Popat [66]
2007
GA based
Medium
Delay
Homogeneous
Medium
Medium
Outperforms AODV [36] and QoS AODV [67]
Saleem et al. [69]
2012
HBO based
Medium
Routing overhead,  PLR, and latency
Homogeneous
Medium
Medium
Outperforms FP-Ant [70],  EEABR [62], and AODV [36]
Cai et al. [72]
2015
Hierarchical (HBO)
High
PDR, ESD, and latency
Homogeneous
High
High
Outperforms IEEABR [73], FF-Ant [70], and BeeSensor [69]
Jafarzadeh and Moghaddam [74]
2014
RL
Medium
Delay, PDR, and traffic load
Homogeneous
High
High
Outperforms QoS-AODV [67], RL-QRP [75], and RSSI [76]
Kiani et al. [77]
2015
Hierarchical (RL)
High
Lifetime,  PLR
Homogeneous
High
High
Outperforms LEACH [79], HEED-NPF [80], and EECS [81]
ACO: ant colony optimization, PSO: particle swarm optimization, PLR: packet loss ratio, RBW: residual bandwidth, RE: residual energy, HC: hop-count, RL: reinforcement learning, GA: genetic algorithm, HBO: honey bee optimization, PDR: packet delivery ratio, and ESD: energy standard deviation.Table 5
Flat routing protocols.
Author [paper]
Year
Characteristics  features
Suitability for WMSN
Performance metrics
Type of network
Energy efficiency
Network lifetime
Performance results
Lan et al. [82]
2008
Flat
Medium
Delay, RE
Homogeneous
Medium
Low
Outperforms SAR [21]
Nayyar et al. [83]
2011
Flat (Multipath)
Medium
Delay, RE, and RBW
Homogeneous
High
Low
Outperforms AODV [36]
RE: residual energy; RBW: residual bandwidth.Table 6
Hierarchical routing protocols.
Author [paper]
Year
Characteristics  features
Suitability for WMSN
Performance metrics
Type of network
Energy efficiency
Network lifetime
Performance results
Kandris et al. [85]
2011
Hierarchical
Low
RE
Homogeneous
Medium
High
Outperforms TEEN [87]
Lin et al. [88]
2011
Hierarchical
Medium
Delay, LQ
Homogeneous
Medium
High
Outperforms ARCH [89]
RE: residual energy; LQ: link quality.Table 7
Location based routing protocols.
Author [paper]
Year
Characteristics features
Suitability for WMSN
Performance metrics
Type of network
Energy efficiency
Network lifetime
Performance results
Karp and Kung [27]
2000
Location based
No
Shortest path
Homogeneous
No
Low
Outperforms DSR [26]
Chen et al. [93]
2007
Location based
High
Delay, RE, and RBW
Homogeneous
Medium
Medium
Outperforms GPSR [27]
Shu and Hauswirth [59]
2008
Location based
Low
Shortest path
Homogeneous
Low
Medium
Outperforms GPSR [27] and less throughput
Medjiah et al. [94]
2009
Location based
Low
Shortest path, RE
Homogeneous
Medium
Medium
Outperforms GPSR [27]
Bennis et al. [95]
2013
Location based
High
Shortest path, RE
Homogeneous
High
Medium
Outperforms TPGF [59]
Wang et al. [96]
2015
Location based
High
Delay, RE, and AHC
Homogeneous
High
Medium
Outperforms DGR [93]
RE: residual energy, RBW: residual bandwidth, and AHC: average hop-count.The remainder of the paper is organized as follows. Section2 discusses various requirements for WMSN routing protocols. Section 3 discusses various routing techniques, which are classified into various categories. Section 4 summarizes open research issues and Section 5 concludes the paper.


## 2. Design Requirements for WMSN Routing

Routing governs the performance of WMSNs in terms of quality of service and energy efficiency. Routing policies accommodate multiple conflicting objectives and constraints, imposed by technologies and user requirements [14]. Real-time multimedia traffic in WMSNs raises many design challenges for routing protocols:(i)
QoS Requirements. WMSNs are used in different types of applications. These applications need different requirements. For example, real-time multimedia applications require strictly less end-to-end delay and jitter but high bandwidth and reliability. Various QoS requirements are given below:
Latency. End-to-end delay requirements can be classified into soft latency bounded systems, hard delay bounded systems, and firm delay bounded systems. In soft latency bounded systems, the system needs to maintain probabilistic delay guarantee; that is, some delay in packet delivery can be tolerated. But in hard latency bounded system, the system needs to maintain deterministic end-to-end delay, which is also denoted as deadline [15, 16]. The entire system is said to fail, if the system is not able to provide service in the deadline guarantee period.Reliability. It is defined as ability to deliver the data to sink node with minimum packet loss [1, 2]. The unreliability of a system is due to congestion and interference. So it is also regarded as reciprocal of packet loss [1, 2].Bandwidth. Multimedia traffic requires huge bandwidth. In order to fulfill bandwidth requirements and utilize the resources to its maximum available capacity, routing protocols must employ multipath, multichannel, or stream division method.Jitter. It is defined as the accepted variability of delay between received packets [1]. If the requirement is not met, then it may result in error in audio or video data stream, glitches, and discontinuity.Lifetime. The lifetime of a system is an important factor for deciding the performance of system.(ii)
Energy Efficiency [1, 2]. Multimedia sensor nodes are battery constrained devices just like scalar sensor nodes. So energy is one of the major concerns in WMSNs too. Due to network congestion, packet interference, retransmission, and too much concentration on QoS requirements, battery of sensor nodes drains quickly.(iii)
Hole Detection [1, 2]. Real-time applications require high bandwidth and low end-to-end delay. As a result, the energy of the routes that are used repeatedly exhausts quickly. This leads to the creation of special scenarios called dynamic holes. An efficient routing protocol must facilitate balanced energy usage in the whole network.(iv)
Traffic Classes [1, 2]. Admission control in WMSNs must be based on QoS requirements of the requested service or application as there is a need to provide differentiated service between different applications. Various traffic classes that are defined in [2] are as follows:
Real-Time, Loss-Tolerant Multimedia Streams. Usually, this traffic class requires high bandwidth and strict delay bounds. This class includes audio, video stream, multilevel stream, scalar data, and their metadata.Delay-Tolerant, Loss-Tolerant Multimedia Streams. This class includes traffic that is intended for offline storing or processing. This traffic must be transmitted in almost real-time to avoid packet loss.Delay-Tolerant, Loss-Intolerant, Scalar Data. This class includes data from monitoring process and data which are intended for offline storing or processing. The bandwidth requirement is low.Delay-Tolerant, Loss-Tolerant, Scalar Data. This may include any scalar sensor data, non-time critical multimedia snapshot whose bandwidth requirement is low.Real-Time, Loss-Tolerant Scalar Data. This class includes data from monitoring process or loss-tolerant snapshot multimedia. Bandwidth demand is moderate to low.Real-Time, Loss-Intolerant Scalar Data. This class includes data from time critical monitoring process and bandwidth requirement is moderate to low.


## 3. WMSN Routing Techniques

Many WMSN routing protocols have been proposed in previous literature. There are many ways to classify routing protocols depending on different parameters. The classes and subclasses are not mutually exclusive as many protocols belong to more than one class or subclass. According to current research trend, categorization of routing protocols is based on number and type of QoS constraints [1]. Hence, QoS based routing protocols are mainly divided into latency constrained and multiconstrained routing protocols [1]. Again, based on deadline delays, latency constrained routing protocols are further classified into protocols providing hard-real-time (HRT), soft-real-time (SRT), and firm-real-time (FRT) QoS guarantees [15, 16]. Another category called “swarm intelligence (SI) based” routing protocol is included in classification. Finally, based on the network structure, routing protocols are further classified into flat routing, hierarchical routing, and location based routing. Classification of different routing protocols for WMSNs is shown in Figure 2.Figure 2
Classification of routing protocols in WMSNs.


### 3.1. QoS Based Routing

In order to guarantee qualitative or quantitative performance parameters, the notion of QoS has been proposed [17]. QoS requirement for WMSNs is a set of constraints like reliability, latency, bandwidth, and jitter. Based on number and type of constraints, QoS based routing protocols are classified into latency constrained and multiconstrained routing protocols.


#### 3.1.1. Latency Based Constrained Routing

In HRT based systems, if packets arrive after the predefined delay deadline, then this is considered as a system failure [15, 16]. But due to lossy links and error-prone medium, it is almost impossible to guarantee HRT in WMSNs. In SRT based systems, some packet missing the delay deadline is tolerable, but a probabilistic delay guarantee is required in order to prevent the system from crashing. There are various protocols that can provide required delay deadline guarantees and deliver the data packets in SRT. In FRT based systems, (m,k)-firm concept is introduced, which demands at least m out of any k consecutive messages must deliver before their delay deadline; otherwise, it is considered as a system failure. Therefore, it is necessary to implement priority based scheduling of stream packets. In [18], distance based Priority (DBP) policy is used to choose between streams. The system maintains DBP state for each stream. DBP is usually calculated at the sink and is used to evaluate the stream not for priority assignment. Recent work in [19] tires to implement cross layer solutions to improve routing.(1) HRT Based Protocols.The paper [20] proposed delay-constrained routing protocol. The main goal of the protocol is to provide hard real-time delay guarantees and minimize the energy consumption within WMSNs. The proposed algorithm uses global link-state routing algorithm, which needs complete knowledge of network topology in order to compute best possible paths. Global link-state routing algorithms can provide hard real-time delay guarantees. The proposed algorithm is divided into three parts. The first part removes the node with less residual energy from the graph G(V,E), in order to avoid hole problem. The second part uses Dijkstra algorithm in order to find energy efficient routes. Then, the third part ensures that all the paths meet delay upper bound. If a path does not meet delay constraints, then a new path is computed using Dijkstra algorithm and delay as a performance metric.Key features are as follows:(i)
It uses a global state routing algorithm.(ii)
It focuses on energy efficiency and QoS.(iii)
It computes delay-constrained least energy consumption tree using the Dijkstra algorithm.The proposed protocol guarantees hard-real-time delay bounds. However, the state information exchanged between nodes consumes a huge amount of memory and bandwidth. It is difficult to store and maintain state information in large WMSNs. Therefore, it is only suitable for small WMSNs.(2) SRT Based Protocols. Sequential assignment routing (SAR) [21] considers both QoS and energy efficiency in route selection process. SAR assigns a priority level to each packet. The main objective of SAR algorithm is to minimize the average weighted QoS metric throughout the lifetime of the network. Weighted QoS metric is computed as the product of additive QoS metric and weight coefficient associated with a priority level. SAR algorithm elects special node called the central node (CN) to perform more sophisticated information processing. It uses Single Winner Election (SWE) algorithm and spanning tree (ST) algorithm. ST algorithm computes a minimum hop spanning tree rooted at CN. Failure recovery in SAR uses a handshaking procedure which enforces table consistency among neighbors. If there is a path failure, then a recomputation procedure is triggered automatically. SNR uses two cooperative signal processing techniques: noncoherent and coherent. Extensive simulation done in [22] shows that SAR has better performance than the minimum metric algorithm.Key features are as follows:(i)
It is a table driven routing protocol.(ii)
It is both a QoS based and an energy efficient protocol.(iii)
It is a multipath and fault-tolerant routing protocol.The major drawback of SAR is that it is a table driven protocol and hence it is nonscalable. If the number of nodes increases, then the overhead of maintaining the routing table and status information increases drastically [1].Energy-aware QoS (EAQoS) [23] finds the optimal path to the destination in terms of energy consumption and error rate while meeting the end-to-end delay requirements. EAQoS specifies a queuing model which can handle both nonreal-time and real-time traffic. The implemented queuing model is inspired from class based queuing model [24]. A cost function is associated for each link. This cost function is defined to capture various parameters such as residual energy, transmission energy, and end-to-end delay. EAQoS finds K least cost paths using an extended version of Dijkstra’s algorithm. Then, only those paths are chosen that meet the required QoS requirement and maximize network throughput. The cost of each path between nodes is stored. For every discovered path, a tree-like structure is created and total cost of the path between the nodes is recorded. The algorithm terminates when K shortest paths are discovered. If a new path is searched for a particular destination, then only node-disjoint paths are considered. This helps in reducing the congestion over newly found path due to former path.Key features are as follows:(i)
It is a cluster based energy efficient and delay-constrained routing protocol.(ii)
It facilitates both real-time and nonreal-time best effort traffic simultaneously.(iii)
It ensures guaranteed bandwidth and most energy efficient paths.(iv)
The use of node-disjoint paths helps in reducing congestion over the newly found path.EAQoS meets various QoS and energy efficiency requirements. However, EAQoS does not consider MAC and other delays while calculating end-to-end delay and it requires knowledge of the whole network. EAQoS does not treat different real-time traffic separately; therefore, it cannot be used for applications that coexist with other multimedia traffic.Real-Time Communication Architecture for Large-Scale WSN (RAP) [25] is a priority based, localized routing protocol, which provides soft-real-time delay bounds. RAP introduced a novel packet scheduling policy, Velocity Monotonic Scheduling (VMS) [25]. VMS schedules packets according to their requested velocity. VMS improves deadline miss ratio by giving priority to packets based on requested velocity. VMS is capable of reducing deadline miss ratio by as much as 72.1% [25]. RAP assumes that each node knows its own location, making it location dependent protocol. The combination of VMS and geographic forwarding (GF) makes RAP more scalable and more suitable for multimedia traffic. RAP supports both query oriented and event oriented services. Extensive simulation shows that RAP outperforms DSR [26] and GF [27].Key features are as follows:(i)
It is a location dependent routing protocol, which implements both VMS and GF.(ii)
It provides soft-real-time delay bound guarantees.(iii)
It provides both query and event based service APIs.(iv)
It is a scalable protocol for multimedia applications.There is no need to maintain neighbor database and hence the routing overhead is very little as compared to other classical routing algorithms. RAP uses GF, which can deplete the bandwidth quickly. Also, it does not consider hop-count as routing metric and there is no direct metric to show energy conservation [1].Stateless Protocol for Real-Time Communication (SPEED) [28] is a stateless, localized, soft-real-time delay bounded protocol, which requires minimum MAC layer support for QoS based routing. Stateless Nondeterministic Geographic Forwarding (SNGF) method is used for routing in SPEED. SNGF maintains desired delivery speed and traffic balance, to reduce the network congestion. MAC layer adaptation of SNGF drops packets in case of congestion. If congestion remains for a long time, then traffic is redirected to a less congested area. SNGF uses four modules.Beacon Exchange. SNGF uses two extra beacons. One beacon is for delay estimation and the other is for back pressure.Delay Estimation. Round trip single hop delay for each packet is calculated at the sender’s site after receiving ACK.Neighborhood Feedback Loop (NFL). NFL maintains system performance by maintaining single hop relay speed above a fixed value.Back Pressure Rerouting. This module is used to reduce congestion in the network.Key features are as follows:(i)
It is an energy efficient and localized routing protocol.(ii)
It handles congestion and provides soft-real-time delay bounds.(iii)
It avoids the void problem.(iv)
It also supports load balancing.SPEED uses nondeterministic geographic forwarding and it maintains only localized database. As a result, the routing overhead is minimized. But SPEED is nonscalable as it uses the idea of per-flow reservation [1], and its performance degrades when it encounters a large hole and sudden congestion.Real-time Power-Aware Routing (RPAR) [29] protocol can achieve application specific delay requirements by dynamically adjusting transmission power and other routing metrics. RPAR looks into various serious issues such as network scalability and memory and bandwidth constraints. RPAR have four components: neighborhood manager, delay estimator, forwarding policy, and velocity assignment policy. The neighborhood manager finds eligible forwarding choices that meet both end-to-end delay and energy efficiency requirements. The delay estimator supports real-time multimedia traffic. It further supports two mechanisms: (1) Power Adaptation and (2) neighbor discovery. The delay estimator uses Jacobson’s algorithm [30] to estimate contention delay and transmission counts. Jacobson’s algorithm computes the retransmission timeout by considering both the average and the estimated variable. RPAR is very good at handling congestion and Holes. RPAR is related to SPEED [28], MMSPED [31], and LAPC [32]. But it is different from these because it integrates power efficiency and supports real-time communication, it handles lossy links, and it employs novel neighborhood management mechanism. Simulation results show that RPAR outperforms SPEED [27] and EEGR [33].Key features are as follows:(i)
It is a power-aware, location dependent, and query based routing protocol.(ii)
It can handle holes and congestion.(iii)
It is a scalable routing protocol, which can deliver data within delay bounds.(iv)
It looks into bandwidth and memory constraints.Neighborhood management and forwarding policy further reduce power consumption. But RPAR’s performance degrades when it encounter large holes and sudden congestion.Optimized energy-delay subnetwork routing (OEDSR) [34] protocol is cluster based and event driven routing protocol where the information from CHs to the base station (BS) is routed in a multihop fashion. OEDSR protocol borrows the idea of an energy-delay metric from OEDR [35]. Routing decision is based on factors such as: available energy, end-to-end delay and distance from BS. The proposed protocol ensures that routes are loop-free. In OEDSR, total numbers of active nodes are reduced by forming a subnetwork with nodes having significant information regarding the event. A temporary header (TH) is selected based on maximum available energy, which calculates and selects required number of CHs. After the selection of CHs, TH broadcasts all the information about CHs and then it becomes a regular node. It does not consider hop-count as one of routing metrics. Simulation results show that OEDSR outperforms AODV [36] and DSR [26].Key features are as follows:(i)
It is a proactive cluster based routing algorithm.(ii)
It supports event driven services.(iii)
It is multipath and energy efficient and delivers data within delay deadlines.OEDSR minimizes the product of available energy and average end-to-end delay, and it also minimizes the total number of collisions by restricting the number of nodes accessing the channel. OEDSR does not consider hop-count for making routing decisions and average delay is increased if the packets are transmitted between sensor node, THs, and CHs.Service differentiated real-time communication scheme (SDRCS) [37] is an event driven routing scheme, which implements cross layer functionality in order to route real-time traffic. SDRCS functionally integrates both dynamic forwarding technique and CSMA/CA based prioritization technique [37]. SDRCS uses a novel polling contention period based prioritized MAC. The advantage of the proposed design is that it improves bandwidth utilization even when the total numbers of categories are greater than four. SDRCS also proposes light-weight packet schedulability estimation mechanism, which uses polling contention period and received signal strength based grouping technique. The protocol operation can be categorized in five components: (0) RSS based grouping, (1) admission control, (2) prioritized queuing, (3) real-time MAC, and (4) dynamic forwarding. The grouping mechanism uses RSS to strip the sensor field to layers. Accuracy of distance is maintained using factor called grouping granularity (GRA).The queuing policy in SDRCS uses per-hop deadline based queues. Every node uses FIFO priority queues for packet scheduling. As shown in Figure3, per-hop deadline requirements are mapped into N priority levels. Polling contention period based MAC can only provide a limited number of traffic classes. Early deadline miss (EDM) policy is employed in order to drop any unscheduled packets. Simulation results show that SDRCS outperforms MMSPEED [31] and RAP [25], in terms of throughput, on-time delivery ratio, and energy efficiency.Figure 3
Traffic classification using priority queues.Key features are as follows:(i)
It is an event driven routing protocol.(ii)
It requires no extra hardware for localization.(iii)
It can adapt to network dynamics (such as channel, void, and channel quality).(iv)
It uses cross-layer packet forwarding design for routing multimedia traffic.(v)
It can avoid voids very efficiently.SDRCS can avoid false packet drops due to EDM, because it adapts better to change in a network environment.Adaptive Greedy-Compass Energy-Aware Multipath (AGEM) [38] routing protocol is location based routing protocol for WMSNs which can be considered as an enhanced version of GPSR [27] protocol. AGEM has load-balancing feature to increase the lifetime of the network and to reduce queue size of nodes. It uses adaptive greedy compass policy. Adaptive compass policy selects only a subset of neighbors. Its forwarding policy uses four parameters: remaining energy, hop-count, distance between the current node and its neighbors, and previous history of forwarded packets of the same stream. AGEM protocol has two modes: (1) smart greedy forwarding and (2) walking back forwarding. It is assumed that nodes gather information regarding their position using GPS or by using distributed localization techniques. Each node maintains database containing information regarding one-hop neighbors. Simulation results show that AGEM performs better than GPSR [27], in terms of packet-loss, transmission delay, and energy efficiency.Key features are as follows:(i)
It is a location based, multipath routing protocol, which focuses on load balancing.(ii)
It uses adaptive greedy compass policy.(iii)
It can be used for both static and mobile sensor networks.(iv)
It uses the shortest path which has minimum end-to-end delay.Unlike GPSR [27], data streams in AGEM are routed by different paths; hence, mostly used nodes do not die rapidly because of energy depletion. If network size is low, then mean energy consumption is greater for AGEM as compared to GPSR [27].Energy efficient and QoS aware multipath routing (EQSR) [39] protocol tries to minimize energy consumption rate to increase the network lifetime. EQSR uses residual energy, available buffer size, and signal-to-noise ratio (SNR) as routing metrics. EQSR increases reliability factor by using XOR-based FEC (forward error correction) technique. As shown in Figure 4, EQSR implements a queuing model, which enables EQSR to handle both real-time and nonreal-time traffic. EQSR discovers node-disjoint paths, which helps in utilizing maximum available network resources. Path discovery phase of EQSR is divided into initialization phase, primary path setup phase, and alternate path setup phase. Each node finds preferred next hop by using the link cost function as defined in [39]. Path discovery phase finds primary and alternate paths. Updated values of metrics are appended on data packets to update previously established paths. This eliminates refreshment overhead.Figure 4
Functional diagram of EQSR.The segmentation of data packets is done before data transmission, in order to split the data packets into equal sized segments. Then, these segments are scheduled for transmission. Before scheduling process, traffic allocation scheme adds error correction code, which helps in recovering from node failures. Efficient data distribution among the available paths is done using weighted traffic allocation strategy. Simulation results show that EQSR outperforms MCMP [40] and RAP [25].Key features are as follows:(i)
It is an energy efficient multipath routing protocol.(ii)
It can handle both real-time and nonreal-time traffic.(iii)
It uses FEC codes to increase reliability.EQSR avoids network-wide flooding of route discovery in case of node failures. It also reduces overhead due to route update messages. EQSR uses FEC codes for increasing reliability, but it increases data redundancy.(3) FRT Based Protocols. The paper [15] defines a real-time fault-tolerant mechanism, which tries to achieve application QoS requirement by utilizing Local Status Indicator (LSI). LSI oversees and assesses the local condition of the nodes and is used to detect network faults. The proposed mechanism enables each node to dynamically adjust its capabilities in order to attenuate performance degradation. As shown in Figure 5, the working of the proposed mechanism is further divided into four submechanisms: (1) neighbor beacon exchange, (2) single hop delay estimation, (3) LSI calculation, and (4) fault recovery mechanisms.Figure 5
Components of scheme proposed in [11].In order to share location information among neighbors and to prolong the lifetime of overloaded nodes and of the whole network, periodic beaconing is used. Therefore, the beacon messages contain location information and residual energy of nodes. Three on-demand beacons, single hop delay estimation beacon, stream DBP beacon, and orphan node removal beacon, are used by the proposed mechanism in order to implement different functionalities. At a regular interval, stream DBP beacons are sent by the sink node to source node as a feedback. The value of stream DBP is propagated to the intermediate nodes, which help them in the fault recovery mechanism. The proposed mechanism calculates DBP at the sink node, by using past packet deadline misses. The factor “distance to failure” of a particular node is known after calculating LSI by usingm,  k, congestion, and link failure level. After calculating LSI, a node can locally decide to implement recovery mechanisms. The paper [15] proposes a routing protocol, which makes optimal forwarding decisions based on LSI, packet deadline, and remaining power. The proposed protocol implements the mechanism defined in [16]. The protocol has five components: routing mechanism, beacon exchange, orphan node back pressure, delay estimation, and calculation of LSI. Each node maintains a neighbor table, which stores neighbor ID, energy level, estimated delay, expiration time, (m,k), deadline, and DBP. The expiration time field is set to standard round trip time (RTT). Simulation results show that the proposed routing protocol outperforms SPEED [28].Key features are as follows:(i)
It is a robust routing protocol, which can fulfill required latency and reliability requirements.(ii)
It uses local system evaluation that reduces routing overhead.(iii)
It ensures timeliness of the stream transfer by choosing a node with qualified LSI.(iv)
It uses fault recovery mechanisms to handle problems like congestion, link failure, and void.(v)
Orphan node back pressure prevents void occurrence.The proposed routing protocol efficiently routes stream packets within delay constraints and provides better fault recovery mechanism.In Table2, latency constrained routing protocols are compared with each other, where suitability for WMSN for each protocol is based on delay, energy efficiency, network lifetime, and performance of routing protocol.


#### 3.1.2. Multiple QoS-Constrained Routing

Multiple QoS-constrained routing protocols focus not only on latency constraint, but also on other constraints like load balancing, reliability, congestion, bandwidth, and so forth. Many protocols were proposed by researchers in previous literature.Multipath Multi-SPEED (MMSPEED) [31] is a location based routing protocol, which improves the timeliness and reliability of sensor networks communicating over wireless channels. Reliability requirements are met by using probabilistic multipath forwarding mechanism. The main goals of MMSPEED are as follows: (1) localized packet routing decision making and (2) providing QoS in timeliness and reliability domains. MMSPEED assumes that each node is aware of its location, which makes it more scalable and self-adaptive and removes setup and recovery latency. The virtual isolation of speed layers helps in providing service differentiation. Virtual isolation is maintained by classifying packets according to their speed classes and placing them in priority queues. Probabilistic multipath forwarding mechanism differentiates packets with different requirements. MMSPEED makes proper use of paths without much energy consumption. The back pressure mechanism is employed to remove the void area problem and reduce the incoming traffic. MMSPEED greatly relies on MAC protocol for priority based access to medium depending on speed layer, reliable multicast delivery of packets, and calculation of loss rate and average delay to individual neighbors. MMSPEED relies on EDCF mode of IEEE 802.11e standard.Key features are as follows:(i)
It is a location based and query driven routing protocol.(ii)
It focuses on both timeliness and reliability.(iii)
It is a multipath routing protocol.(iv)
It can solve the void area problem.MMSPEED uses redundant path selection techniques and prevents unnecessary flooding to improve reliability, network lifetime, and load balancing. But MMSPEED does not consider hop-count as one of the routing metrics and it does not consider energy consumption directly. Moreover, the multicast capability of EDCF results in an increment in total size of packets, which in turn increases power consumption.Distributed aggregate routing algorithm (DARA) [41] is a multisink, multipath, and location aware protocol, which implements the model for achieving multiconstrained QoS (MCQoS). The main goal of [41] is to improve path reliability and delay guarantee while preserving the battery power. MCQoS is a location aware routing scheme which defines three metrics: (1) residual energy, (2) expected sojourn time of packet at the receiving node, and (3) geographic progress towards the destination. It proposes selective greedy forwarding (SGF) to reduce energy consumption and interference [41]. Delay-differentiated packet scheduling (DDPS) reduces packet drop due to deadline failure [36]. DDPS separates queues for time-constrained and non-time-constrained packets in the MAC layer. Further MAC protocol is modified to give higher priority to time-constrained data packets in two levels: (1) internode and (2) intranode. This modification also allows us to control transmission power and save battery and reduce interference. Nodes in DARA algorithm dynamically decide when to broadcast BEACON messages. Simulation results show that DARA outperforms MMSPEED [31] and MCMP [40].Key features are as follows:(i)
It is a fully localized algorithm which means there is no need to maintain any global state information.(ii)
It supports both static and dynamic network topologies.(iii)
It increases reliability by sending duplicate packets from the source node.(iv)
It modifies MAC to give more priority to real-time traffic.DARA reduces energy by using the power control transmission scheme and reducing retransmissions; it also optimizes the trade-off between reliability and delay. But DARA does not provide efficient solution to void problem and it increases routing overhead due to duplicate packet transmission.Real-time routing protocol with load distribution (RTLD) [42] ensures high packet throughput with minimal packet overhead and prolongs the network lifetime. A novel communication method called “geodirection-cast forwarding” is proposed in [38], which is a combination of both geocast and directional forwarding. It also introduced a mechanism to compute optimal forwarding based on packet reception rate (PRR), remaining power of sensor nodes, and packet velocity over one hop. This optimal forwarding helps in balancing the load of real-time traffic. There are four modules in RTLD: (1) location management, (2) routing management, (3) power management, and (4) neighborhood management. Location management module calculates the location of nodes using the location of predetermined neighbor nodes. The power management module determines the state of the transceiver and the transmission power of sensor nodes. Neighborhood management module discovers a subset of forwarding candidate nodes and maintains a neighbor table of forwarding candidate nodes. Routing management module computes optimal forwarding choices and makes all routing decisions. It further contains submodules: forwarding metrics calculation, forwarding mechanism, and routing problem handler. RTLD outperforms SPEED [28] and RTPC [43].Key features are as follows:(i)
It is a location based routing protocol, which combines geocast forwarding with link quality.(ii)
It maximizes the velocity and remaining energy to achieve delay bounds.(iii)
It uses neighborhood and power management policies.(iv)
It can efficiently detect and bypass holes.(v)
It supports query based services and focuses on load balancing.RTLD can deliver data within delay bounds and minimize miss ratio and energy consumption. The only drawback of RTLD is its high cost of deployment.QoS aware multisink opportunistic routing (QMOR) [44] is an efficient routing protocol, especially designed for delivering real-time multimedia streams on time. The main objective of QMOR is to minimize the energy consumption and meeting the delay and reliability requirements [44]. The use of opportunistic routing scheme enhances the performance of communication by utilizing the broadcast nature of wireless communication. The nodes maintain a forwarder list, which contains a list of nodes that are allowed to forward the broadcasted packets. QMOR focuses on selection and prioritization of the forwarder list to meet application specific QoS requirements.High level of correlation between video information received from adjacent multimedia sensor nodes results in redundant traffic. QMOR uses a correlation-aware differential coding scheme to reduce redundancy. For reducing redundancy and maximizing energy gains, it is very much important to determine source node and its destination node in the same correlation group. This problem is solved using differential coding-based source and intermediate selection (DCISIS) protocol. Simulation results show that QMOR outperforms CAQR [45].Key features are as follows:(i)
It is a QoS based multisink routing protocol, which implements an opportunistic routing scheme to reduce energy consumption.(ii)
It implements priority based forwarding.(iii)
It can evaluate expected communication cost.(iv)
It meets the reliability and delay requirements.QMOR greatly improves video transmission quality and energy efficiency. But QMOR does not provide service differentiation in heterogeneous networks.Latency and Reliability-Aware Geographic Routing (LRGR) [46] is a hierarchical routing protocol, which focuses on mobility prediction and energy-aware cluster formation. Each node stores information about two-hop neighbor nodes and adjacency table. Working of LRGR protocol is divided into several rounds. Each round consists of two phases: clustering phase and routing and data transmission phase. Clustering phase is further divided into energy exchange, CH setup, and cluster formation. Cluster maintenance is implemented as required during routing and transmission phase. Energy efficient neighbor discovery protocol (ENDP) is used at MAC layer because it is a low duty beacon-enabled MAC protocol.In clustering phase, each node broadcasts its residual energy. After energy exchange, sensor nodes calculate average residual energy of their neighbors. The node with a maximum ratio of residual energy/average residual energy becomes CH. For mobility prediction, link expiration time (LET) is calculated, which is computationally less complex. Another factor called linear quality estimation (LQE) is calculated at each sensor node, which is based on previous receptions and transmissions. Both LET and LQE are used by nodes to choose between the CHs. In order to use the most stable path, the main focus is on factors like balanced energy usage, connectivity, position, and congestion. LRGR uses connection reliability metric, forwarding progress metric, and aggregated path metric. Simulation results show that LRGR outperforms VIBE [47].Key features are as follows:(i)
It is a location based hierarchical routing protocol.(ii)
It uses energy-aware cluster setup phase.(iii)
It uses mobility prediction based clustering, which estimates link quality and improves reliability.(iv)
It defines forwarding progress metric to evaluate end-to-end delay and packet loss.LRGR guarantees low latency and maintains a balance between energy efficiency and reliability. But in case of highly mobile environments, LRGR suffers because of limited bandwidth, error-prone wireless channel.Multiconstrained routing algorithm (MCRA) [48] is based on query-flooding and query driven data delivery models. In MCRA, special messages called “interest” are used to query an event. The MCRA borrows the idea of the logical coordinate system. Logical Coordinate System is a localized approach which calculates the coordinates of nodes using hop-count information. This approach drastically reduces message overhead. Both geographic information based routing and virtual coordinate system based routing algorithms sometimes result in route failure due to inaccurate node coordinate information. MCRA implements message suppression techniques to reduce redundant transmission and retransmission of messages caused by collisions. In MCRA message suppression is done using restraining forwarding and deferring forwarding. Both try to reduce the amount of interests by restraining and deferring forwarding node. Extensive simulation performed in [48] shows that MCRA outperforms agent based DD [49] and SPEED [28].Key features are as follows:(i)
It is a logical location based multiconstrained routing protocol which supports query based services.(ii)
It focuses on reliability and energy efficiency.(iii)
It implements message suppression techniques to reduce redundant packets.By using the logical location based technique, MCRA reduces routing overhead and it also minimizes redundant messages. But MCRA does not consider reliability and bandwidth.Multiconstrained routing protocols are analytically compared in Table3, which contains characteristics features, suitability for WMSNs, performance metrics, type of network, energy efficiency, network lifetime, and performance results of routing protocols.


### 3.2. SI Based Routing Protocols

SI based routing protocols are inspired by the collective behavior of intelligent biological species (e.g., ant colonies). SI based routing protocols simulate the behavior of these species by using mobile software agents. These agents intelligently perform problem solving tasks, in coordination with other agents. Stigmergy plays an important role by supporting communication between the agents, through the environment. SI based routing protocols are scalable, fault tolerant, adaptive, fast, and autonomous. In addition to this, these protocol’s operations are modular in nature and they can be executed in parallel. Due to these reasons, SI based routing protocols have become a better alternative to the routing problem. For more than two decades, ant colonies have motivated the design of various novel algorithms [6].Distributed Stigmergic Control for Communication Networks (AntNet) [14] is an adaptive, distributed, and mobile agent based Monte Carlo system which is used for routing of multimedia traffic. AntNet implements adaptive learning of routing tables using agents called forward ants and backward ants. At fixed intervals forward ants are sent from any network nodes towards a destination to discover feasible, low-cost path. Routing decisions are based on pheromone trails left by ants. QoS Parameters such as residual energy, delay, and bandwidth are used to calculate forwarding probability, which makes the process of exploration adaptable according to traffic distribution. When a forward ant reaches the destination, backward ants are generated. Backward ants update routing tables.Key features are as follows:(i)
It is an adaptive and hybrid routing protocol.(ii)
It uses ACO algorithm and reinforcement learning to solve routing problem.(iii)
It is a multipath, multiobjective, and multiconstrained routing algorithm.(iv)
It is stochastic in nature.(v)
It delivers the data in real-time latency constraints.AntNet algorithm provides better throughput as compared to classical routing protocols. But AntNet is very slow as it requires ant agents to reach at the destination without updating routing tables [50] and its routing overhead is very high.Multimedia-Enabled Improved Adaptive Routing (M-IAR) [51] is an extension of Improved Adaptive Routing (IAR) algorithm [52]. M-IAR is an ant-based flat multihop routing protocol which incorporates some extra multimedia QoS parameters (end-to-end delay and jitter) as compared with IAR. It also supports fault tolerance and self-organization without any need for global route information. Novelty of M-IAR protocol is that it considers the closeness of next-hop neighbors towards the sink but also takes into account the distance of the neighbor from the sender node [46]. This protocol gives a reliable solution as it piggybacks end-to-end acknowledgement packets. M-IAR assumes that each node in the network knows its own position and all other nodes through GPS. In 98% of test cases, M-IAR successfully found the shortest path within the first three route discovery attempts by forward ants [51].Key features are as follows:(i)
It is a localized and ant-based routing protocol.(ii)
It is an improved version of IAR algorithm.(iii)
It focuses on energy efficiency and end-to-end delay, jitter.(iv)
It is self-organized, adaptive, and fault tolerant in nature.M-IAR provides reliable solution and it can be configured for both acknowledgement-based and non-acknowledgement based approach. But M-IAR needs high cost of deployment and it does not concentrate on load balancing between nodes and scalability. Moreover, M-IAR’s performance degrades due to hole creation and exponential increase in overhead, in case of high network load.Ant-based service-aware routing (ASAR) [53] is an ant-based service-aware hierarchical routing protocol for wireless multimedia sensor networks. It facilitates three types of basic services (query driven, data driven, and stream driven). This protocol uses the concept of “pheromone quantization” to improve ant-based optimization algorithm. This quickens the convergence of ASAR. The proposed algorithm is made to run in all CHs. It finds three different routes for each type of services by positive feedback mechanism used in ACO and the results are stored on CHs, respectively. QoS parameters such as delay, packet loss rate, network bandwidth, energy consumption, and network lifetime are used as routing metric. Extensive simulation verified that ASAR performs better than Dijkstra and DD [49]. This algorithm is often used for optimized routing and load balancing in telecommunications and networks.Key features are as follows:(i)
It is a clustered, ant colony optimization based routing protocol.(ii)
It supports both query and data driven services.(iii)
It uses pheromone quantization to accelerate the convergence of the algorithm and optimize the network resources.(iv)
It supports three kinds of services in WMSNs and meets QoS requirements and improves network performance.ASAR converges more quickly and it supports three types of services and meets diverse QoS requirements. But ASAR’s performance degrades due to bottleneck problem and repetitive usage of optimal paths [10].Ant Colony Optimization-based Load-Balancing Routing Algorithm (ACOLBR) [54] is a biologically inspired hierarchical routing algorithm. ACOLBR is further divided into intercluster routing and intracluster routing. Intracluster routing uses minimal spanning tree (MST) algorithm to construct MST with CHs as the root. Intercluster routing finds a path with minimal cost from source node to the destination node and some suboptimal paths using ACO algorithm. ACOLBR enhances the exploring ability of ants by introducing maximum and minimum value of pheromone density values. It also improves transmission efficiency by splitting the stream, when data amount is greater than the path’s maximum flow. Simulation results and analysis show that ACOLBR has better adaptability, can achieve load balancing, reduces the end-to-end delay, and prolongs the network lifetime as compared to AGRA [55] and M-IAR [51].Key features are as follows:(i)
It is a swarm-based, hierarchical, and multipath routing protocol.(ii)
It focuses on congestion control.(iii)
It uses the minimum spanning tree algorithm to create MST.(iv)
It has enhanced the exploring ability as compared to other ACO techniques.ACOLBR can recover from path failure by setting pheromone value to zero and then sending an error message to sender. But ACOLBR requires more complex calculations to find optimal route and heavy load results in a bottleneck situation over CHs.Ant Colony Optimization-Based QoS Routing Algorithm (ACOWMSN) [56] is a reactive routing protocol, which focuses on four QoS metrics. ACOWMSN finds routes which meet application specific QoS requirements. Artificial ants wander around the network in order to find paths which meet the requirements. ACOWMSN uses two types of artificial ants: forward ants and reverse ants. Forwarding ants store information fields like minimum residual energy and cumulative queue delay and packet loss and memory of node visited, in order to evaluate the route in terms of QoS. ACOWMSN protocol finds minimum cost route using heuristics. At each node, next forwarding node is found by calculating the probability. Routing in ACOWMSN is divided into two stages: route discovery and routing confirm. In route discovery stage, forward ants are sent towards the destination node using broadcast or unicast approach. Broadcast approach is used only when current node does not know about the destination node. In routing confirm stage, forward ants are converted into backward ants. Backward ants travel from the destination node to source node. Backward ants update the pheromone table of every intermediate node.Key features are as follows:(i)
It is an ant colony based routing protocol.(ii)
It is reactive in nature; therefore, it finds route only when it is needed.(iii)
It is adaptable to any change in network conditions.(iv)
It is an energy-aware and QoS based routing protocol.ACOWMSN can satisfy bandwidth, delay, and packet loss rate requirements and increase the network lifetime. But in large-scale WMSNs, it is very much difficult to determine the protocol parameters and therefore algorithm converges very slowly.AntSensNet [57] combines features of both hierarchical network structure and Ant colony optimization based routing. It is specifically designed for WMSNs and hence it meets application specific requirements. It is based on T-ANT [58]. Just like T-ANT [58] algorithm, its operation is split into rounds. Each round is further divided into t cluster setup phase and steady phase. It uses special types of agents for cluster setup called cluster ants (CANTS). The node with CANT becomes CH. HELLO packets broadcasted by each node constantly contain information regarding its ID, clustering pheromone value, and its state. The clustering pheromone value decides if the current node is suitable to become CH. A tunable factor called “cluster radius” determines minimum distance between two CH nodes.Routing tables in AntSensNet are updated in three phases: forward ant phase, backward ant phase, and route maintenance phase. Forward ants are generated if there is no satisfactory route to the sink node. Forward ants carry information regarding routes they travel. The routes are evaluated when they reach the sink node. If the evaluated route does not meet application specific requirements, then forward ants are discarded; otherwise, backward ants are generated in order to update the pheromone values. Backward ants travel the reverse path. Maintenance phase handles the congestion and lost link problems. Figure6 shows diagram of traffic classifier used by AntSensNet to handle and schedule four different types of traffic classes.Figure 6
Traffic classification process used in AntSensNet.Key features are as follows:(i)
It is a hybrid routing protocol, and hence it comprises reactive as well as proactive components.(ii)
It implements both ACO based routing and clustering.(iii)
It supports a power efficient multipath video packet scheduling in order to minimize the distortion in video transmission.(iv)
It uses completely distributed clustering algorithm.(v)
It can handle different types of traffic classes.AntSensNet can handle congestion problem. It is scalable and multipath and it provides better video quality in terms of distortion as compared to ASAR [53] and TPGF [59].Hop and load based energy-aware routing protocol (HLEAR) [60] is a swarm-based, reactive, self-organizing routing protocol, which avoids hole and increases network lifetime. HLEAR’s main aim is to find completely or partially disjoint path with relative minimum distance. It uses hop-count, rate of forwarding nodes, and residual energy as metric, to find an efficient path for routing multimedia streams. Based on these values, another routing metric β is calculated. Path with the lowest value of β is considered as best path. The protocol operation is further divided into route discovery and path establishment phases. In route discovery phase, RREQ is broadcasted in a controlled manner. When RREQ reaches the sink node, it does not need to analyse path selection, as the path has been already scanned by intermediate nodes. In path establishment phase, destination node sends a route reply message RREP via reverse path. Simulation results show that HLEAR performs better than Tiny AODV in terms of energy efficiency and throughput [60].Key features are as follows:(i)
It is a reactive, swarm-based, and energy efficient routing protocol.(ii)
It avoids holes by stopping nodes from taking part in route discovery phase, if their energy is less than 0.5 J.(iii)
It finds the minimum distance to destination by finding disjoint paths.(iv)
Unlike LEAR, it considers hop-count as routing metric.HLEAR provides better throughput and energy efficiency than Tiny AODV [60], but it cannot handle congestion efficiently due to which its throughput is very low when frame rate is high.AntHQSeN [61] is a reactive ant-based QoS enabled routing protocol, which works in two phases: (1) route discovery phase and (2) route maintenance phase. The agents called forward ants are created by the source node to find multiple paths to the destination node. They also carry network information in order to evaluate various QoS parameters. AntHQSeN forwards the data packets stochastically. Each forwarding node decides next node based on pheromone values, which makes the protocol adaptable to any change in the network. The route setup phase is completed when destination nodes generate backward ants to update the pheromone tables. Route maintenance phase is activated whenever a node failure occurs. For pheromone calculation, various factors like residual bandwidth, residual energy, and route cost are considered. In AntQHSeN protocol hello ants play a major role in immediate neighbor discovery, exchanging information about the bandwidth, timestamp, energy, and pheromone concentration. Extensive simulation results show that AntQHSeN performs better than AODV [36] and EEABR [62].Key features are as follows:(i)
It is a reactive ant-based routing protocol for heterogeneous sensor network.(ii)
It can work fine in both static and dynamic topologies.(iii)
It treats multimedia and scalar traffic differently.(iv)
It uses a special flag to give an option to use the admission control scheme or not.AntQHSeN provides a more consistent solution due to its reactive route discovery mechanism as compared to EEABR. But AntQHSeN lacks sufficient information at the beginning to find routes. Its setup time is directly proportional to the time needed for convergence of the algorithm. But still the discovered routes are better in terms of quality than those found by AODV [36].An agent-assisted QoS-based routing (QoS-PSO) [63] is an agent based routing protocol, which focuses on delivering application based QoS services by using practical swarm optimization (PSO) technique. The synthetic QoS parameters are used as parameters of the objective function of PSO. QoS-PSO uses two different types of agents called forward agent and reverse agent in order to find out the optimized route. The synthetic QoS metrics are stored in agents. Forward agent’s aim is to find a new route to the destination nodes. If the new route can provide required QoS, then reverse agents are created. All the information stored in forward agents is copied to reverse agents. Reverse agents travel in the reverse direction and update routing tables of all the nodes lying on the newly found path. The algorithm firstly selects the source and destination nodes and uses forward agent and reverse agent to establish a new path to destination. The QoS of each path is evaluated to obtain local best values. Iteration formulae are used to find a new routing path and its QoS is evaluated. If the QoS of a particular path is better, then it is made global best solution. This process is iterated until required values are achieved. After this, global best solution is used to determine the path and update routing table.Key features are as follows:(i)
It is an agent based routing protocol, which uses PSO for optimizing synthetic QoS.(ii)
It uses agents which participate in the routing path establishment and maintenance.(iii)
It focuses on improving QoS metrics like delay, bandwidth, packet loss, and energy.QoS-PSO shows improvement in QoS metrics by more than 60% and 20%, if compared with AODV [31] and EEABR [57], respectively.A QoS-aware routing algorithm based on ant-cluster (ICACR) [64] is a hierarchical routing protocol for WMSNs, which integrates clustering and IPACR [64]. IPACR is a flat routing protocol, which outperforms standard ant colony routing algorithm (SACR). The principle disservice of SACR is that it considers the performance of every link between nodes and their neighbors as equivalent and sets the same initial pheromone value. IPACR protocol maintains a neighbor-list, which stores information regarding adjacent nodes. IPACR ensures that there is at least one feasible path. Based on the assumption “if a hello packet arrives earlier at a node, then it can be implied that the path is optimal,” the optimality of paths depends on log SEQ. Therefore, IPACR sets more initial pheromone value of nodes with smaller log SEQ. The overall performance of routing protocol depends on the pheromone update procedure followed by forward ants and backward ants.ICACR uses “divide and conquer” methodology to improve the scalability of the network. The network is divided into a number of clusters. The total number of subnetworks in the original network is one more than the total number of clusters. The additional subnetwork consists of sink node and all the CHs. IPACR protocol finds local optimal paths in each cluster.Key features are as follows:(i)
It is an ant-based hierarchical routing protocol.(ii)
It uses IPACR routing in order to find local optimal paths.(iii)
It is a multipath routing protocol.(iv)
It is a scalable protocol, which can meet QoS requirements for WMSNs.IPACR converges faster than SACR. ICACR is more scalable, energy efficient routing algorithm as compared to IPACR, SACR, and Dijkstra. But if the source node is placed near the sink node, then the performance of ICACR goes down.Feedback-Enhanced Learning Approach (FROMS) [65] is an in-network protocol which learns by using local information about network topology and tries to converge to optimal routing paths. It assumes that each sensor has to route sensed data to multiple number of sink nodes.Key features are as follows:(i)
It is an intelligent routing algorithm based on reinforcement learning.(ii)
It uses local information and optimizes route using feedback mechanism.(iii)
It considers equal cost paths to minimize energy consumption.The technique uses three main phases, namely, sink announcement, exploration, and stable data gathering.In Phase I, each sink broadcasts request message to entire network which contains time to live (TTL), sink ID, and number of hops. When a node receives this message, it verifies if the message has been already received. If entry is already there in routing table and it has less hop-count, received message is not processed. If there is no routing table entry or the entry has more hop-count, routing table is updated and message is broadcasted with decreased TTL and increased hop-count.In Phase II, all best possible paths are discovered. This phase initiated, when a data packet is received. Fitness function gives the route cost based on single or multiple variables for a set of sinks. The proposed algorithm uses Route Length Estimate (RLE) as metric to decide the fitness of a path, which is equal to total number of hops. Each node organizes the available options for next hop and makes selection task manageable using Path Sharing Tree (PST). Nodes can manage the complex task of data delivery to multiple sinks by using PST. Using PST gives an extra advantage of escaping the path with loops. Updated RLE are shared in form of feedback when the package is rebroadcasted by upstream node. This feedback mechanism results in better decision-making over time. According to selected exploration strategy, Phase II ends and stable data gathering phase starts where sender node starts transmission to set of sinks. Whenever the PST changes Phase II is reinitiated.FROMS minimizes the energy consumption by considering equal cost paths and switching between them to increase the lifetime of overall network. FORMS is compared with implementation version of directed diffusion [49]. Simulation results show FORMS performs better.Strength Pareto Evolutionary algorithm (SPEA) [66] uses genetic algorithm (GA) and tries to optimize various QoS parameters such as bandwidth, delay, traffic, and hop-count. GA is best for multiobjective problems where the values to be optimized are more than one. There is no ideal “optimal” solution for such problems. There are sets of solutions, in which improvement in one objective leads to degradation in other objectives. The main objectives of SPEA are to optimize the QoS parameters and provide adaptive route with optimized delay.Key features are as follows:(i)
It is an intelligent routing algorithm based on GA.(ii)
It tries to optimize four QoS parameters.(iii)
It quickly adapts to changes in network topology.Route discovery in SPEA is carried out at MAC layer of TCP/IP model; therefore, the MAC is redesigned to support the algorithm. To make the process clear, it is designed into two modules: QoS routing module and GA module. Data exchange between the modules is bidirectional. GA generates new routes by combining the existing routes with common node and destination.QoS routing module on receiving a data transfer request checks for a route to the destination. If route to the destination is not available, then it initiates route discovery procedure by transmitting smart agents. When source node receives RREP, it follows the reverse path and updates the table. When RERR message is received by source node, it uses GA module. Available entries in buffer are used as initial population and fitness function is applied and optimally finds the destination node with desired QoS requirements. If there is no RERR then the buffer is used to find route to destination. The buffer is evaluated periodically to maintain the efficiency of system.The proposed protocol is compared with AODV [36] and QoS-AODV [67] routing and simulation results show it outperforms both.Further work done in [68] has proved that using implementation of SPEA and changing the objective functions has increased the performance of system 15 times [68]. The paper has used similar approach and used expected transmission count and delay as objective functions. The expected transmission count (ETX) metric is the expected total number of transmissions. It is calculated using link quality and neighbor link quality. Link quality can be seen as probability that packet originated at node successfully arrives at a subsequent node and neighbor link quality is a measure of quality in opposite direction.Beesensor [69] is an on-demand SI based reactive, event driven, energy efficient, and scalable routing protocol, which is inspired from behavior of honey bees.Key features are as follows:(i)
It is an intelligent routing algorithm based on Honey bee optimization.(ii)
It minimizes the communication and processing cost.(iii)
It is energy-aware, scalable, and efficient.Honey bee optimization uses recruitment and agent communication energy efficient foraging and multiflower-site foraging mechanism found in bee colony [69]. There are four types of agents: packers, scouts, foragers, and swarms. Packers are like food storer bees in hive. They receive packets from upper layer and find appropriate forager for them. Scouts explore the network in search of a potential sink node. Foragers play an important role in carrying packets to the sink using predetermined path. They also evaluate the quality of the path and give updates to other foragers. Foragers are piggy-backed in the link layer acknowledgement packets to source node. Foragers wait for certain amount of time at sink node and build a swarm of waiting foragers, which is transported back to source node. The algorithm is divided into four phases: scouting, foraging, swarming and routing loops, and path maintenance.Scouting is further divided into forward scouting and backward scouting. Packers look for the appropriate forager to transfer an event at a sensor node. If a packer fails to find forager it launches forward scout with source ID, scout ID minimum remaining energy, and number of hops fields in header. This scout is then broadcasted to neighbor. Interested sink converts the forward scout into backward stable. The algorithm maintains three tables: routing table, probability-distribution table, and a forwarding table. Source node maintains routing table and probability-distribution table. Forwarding table is maintained by sink and forwarding nodes. Sink node creates forwarding table entry from the received scout header information and replies with backward scout with same information fields. After discovering the route, foragers transport events to sink node. Packer selects a forager stochastically based on probability-distribution table. Intermediate node does not make routing decisions; next hop is found using path ID.Swarming encapsulate foragers with identical path ID at sink node. The swarm is routed towards the source node using forward table entries. Swarming also helps in path maintenance. The path becomes invalid when the dance number becomes zero for a particular entry in routing table, which is deleted after some waiting period. Simulation results show that BeeSensor outperforms FP-Ant [70], EEABR [71], and AODV [36].Bee-Sensor-C [72] is an on-demand event driven multipath routing algorithm based on dynamic clustering scheme and BeeSensor [69]. Bee-Sensor-C reduces the routing overhead and scalability as compared to BeeSensor. It follows multipath construction methodology to increase the overall lifetime of network.Bee-Sensor-C is divided into three phases: cluster formation, multipath construction, and data transmission. In the second phase, various improvements are made to BeeSensor for finding multipath between CH and relative sink and the path is selected stochastically for data transmission.BeeSensor is poor in overall performance, when all the nodes near the event need to send data to sink node. Bee-Sensor-C adds a new agent called HiveHeader to bee hive for each sensor. Its major responsibility is to claim the node wants to be cluster head node.Nodes having information about the cluster join the cluster and the clustering region is called event-subnetwork. Any node can decide to join a cluster based on received signal strength. If a node receives multiple HiveHeader from different node it chooses the node with higher residual energy. The node, which sends the HiveHeader first, becomes the CH node. The node with higher residual energy and closer to event sends HiveHeader earlier and is more likely to become CH node. Each cluster has its TTL; if remaining energy of CH gets lower than 60%, CH selection starts again.Like BeeSensor [69], Bee-Sensor-C utilizes forward scouts to explore the network. CH broadcasts a forward scout to its neighbors. The scouts are self-destructed when the hop-count is more than H_max, to avoid the communication overhead. Backward scout travels back to CH node using previous hop information in cache. Bee-Sensor-C also modifies the reward mechanism to include the average residual energy factor. When the backward scout arrives at CH with new path, it recruits foragers using “waggle dance” [72]. The simulation results show that Bee-Sensor-C outperforms FF-Ant [70], BeeSensor [69], and IEEABR [73].EQR-RL [74] is energy-aware QoS routing which uses reinforcement learning. EQR-RL uses control flooding algorithm for updating the latest changes to the network. Each node uses header of its neighbor data packet to maintain up-to-date information about the routes.Key features are as follows:(i)
It is an intelligent dynamic routing algorithm based on reinforcement learning.(ii)
It focuses on various QoS requirements like latency hop-count and so forth.(iii)
It utilizes data packets to get latest information of neighbors.If a node does not hear any packet from a neighbor, it removes it from its routing table. The routing packet contains neighbor ID, timestamp, number of packets sent, end-to-end delay, and minimum residual energy in route.When a node sends a packet to its neighbor, it starts the timer to calculate the round trip time. The receiver node finds the next node and updates the receiver address in data packet. After that, it updates minimum residual energy field. The feedback information is piggybacked in the header of data packets.Exploration strategy provides the trade-off between exploring the low-cost routes and all possible routes. So it usesε-greedy method for random selection of next hop for exploration [74].When a node receives a data packet, it accesses various parameters from the packet and compares those parameters with the routing table entries. If it does not find any route, it sends the packet with best effort; otherwise, it selects next hop using roulette wheel. Simulation results show that ERQ-RL outperforms QoS-AODV [36], RL-QRP [75], and RSSI [76].FTIEE [77] is an intelligent clustering based routing protocol, which aims to reduce energy consumption and make the system more reliable. It focuses on three parameters, namely, network lifetime, packet delay, and delivery. In this routing algorithm, learning and routing phase are realized at the same time, which reduces overall energy and overhead of the system.Key features are as follows:(i)
It is an intelligent cluster based routing algorithm based on reinforcement learning.(ii)
It makes system more reliable and reduces packet delay.(iii)
It increases the lifetime of system.In this algorithm, any node can act as CH and CH is chosen by election done by means of learning machine. Number of clusters is constant and clusters closer to sink are smaller as compared to the other clusters, size of cluster increases with increase in distance between the clusters and sink. CH nodes have multihop communication to the sink, and sensor nodes do not need to know about the CH.FTIEE uses Q-learning technique [78] to select the optimal CH node and reduce the cost of CH-sink data transmission to minimum. Each sensor node is independent learning agent and therefore chooses to forward data to neighbor or select itself as CH node. The reward system in protocol is calculated using distance between node and sink and residual energy of node. In simulation, results show that it outperforms LEACH [79], HEED-NPF [80], and EECS [81].SI based routing protocols are analytically compared in Table4, which contains characteristics features, suitability for WMSNs, performance metrics, type of network, energy efficiency, network lifetime, and performance results of routing protocols.


### 3.3. Based on Network Structure

Based on network structure, routing protocols are classified into three different categories: (1) flat routing; (2) hierarchical routing; and (3) location based routing.


#### 3.3.1. Flat Routing Protocols

In flat network architecture, all the nodes have the same responsibilities. Flat routing protocols are also called data-centric routing protocol. A BS is responsible for sending requests and queries. However, the sensor nodes can sense the physical environment and transfer the data to BS. Flat routing protocols use data aggregation to reduce redundant data, which ultimately reduces energy consumption. But flat routing protocols are not able to fulfill application specific latency requirements. These protocols suffer due to high routing overhead, delay, congestion, and low versatility.Real-Time and Energy-Aware Routing (REAR) [82] protocol is a multipath routing algorithm which also reduces energy consumption of links and trades off the relationship of energy and delay. In REAR, metadata is used to find routing paths. Use of metadata stops repeated retransmission of exactly same packets; thus, huge bandwidth is saved. Metadata is used for routing discovery processes. REAR uses Optimized Dijkstra Algorithm which is used to select a link with lowest weight among marked nodes. For QoS determination factors like time delay, bandwidth, and remaining energy are included. In order to guarantee real-time transmission and reduce queue delay, a “classified queue model” is introduced to each node. For link cost evaluation, estimated distance, remaining energy, and queuing delay are used.Key features are as follows:(i)
It is a metadata based routing protocol, which supports query based services.(ii)
It focuses on energy efficiency and end-to-end delay.(iii)
It uses modified Dijkstra algorithm.(iv)
It implements “classified queue model” to reduce queuing delay.REAR reduces repeated retransmissions and energy consumption by using meta-data for route setup. But REAR does not consider reliability and bandwidth requirements. The concept of metadata in streaming applications consumes a lot of energy and bandwidths.Load Based Energy-Aware Multimedia Routing (LEAR) [83] protocol is a reactive, self-organizing, and energy efficient protocol. LEAR is AODV [49] based protocol. Here active routes refer to the number of routes for different sources in which a node is participating. For route selection, a special factor (“route selection factor β”) is calculated by forwarding nodes. If node’s power reaches 25% of its total power, then it is labeled as “Swap Node.” Swap Nodes do not take part in routing; they transmit packets only in certain critical conditions. So LEAR also has the ability of hole avoidance. LEAR finds disjoint path, if it is available. If disjoint path is not available, then it finds a partial disjoint path. Creating a partial disjoint path increases the hop distance, but it ensures high throughput, reduces congestion, and lowers the latency. This makes LEAR perfectly suitable for routing of multimedia traffic. Simulation results show that “the number of paths selected increases with the increase in the number of multimedia nodes within the event region” [61].Key features are as follows:(i)
It is a reactive, multipath, self-organizing, and event driven routing protocol.(ii)
It focuses on energy efficiency, reliability, and load balancing.(iii)
It can avoid holes efficiently.(iv)
It finds disjoint paths in order to reduce congestion and meet delay bounds.LEAR can find disjoint path while maintaining load balance between the nodes and increase network lifetime. The main drawback of LEAR is that it does not consider delay, reliability, network lifetime, and bandwidth requirements. Table 5 shows comparison of flat routing protocols.


#### 3.3.2. Routing Protocols

Initially, hierarchical protocols were proposed for routing in wired networks [84]. However, they are also suitable for WMSNs. In hierarchical routing protocols, the entire network is divided into different levels. Nodes at different levels have different responsibilities. Generally, the protocol consists of two routing layers only, and data flows from a low level layer to a higher level layer. The nodes with the higher capabilities and responsibilities are known as CHs. Each CH can directly communicate with the BS. The rest of the nodes are called child nodes or cluster members, which associate with CHs to form clusters. Child nodes can only communicate with their CH. The advantages of these protocols over flat routing protocols are as follows: they are more scalable, energy efficient, and reliable. Overall performance of protocol depends on the process of formation of clusters.Energy efficient and perceived QoS aware video routing (PEMuR) [85] is a novel energy-aware hierarchical routing protocol for WMSNs, which uses intelligent video packet scheduling scheme and predicts the video distortion. It is based on scalable power efficient routing (SHPER) protocol [86]. CHs are further categorized into upper level CHs and lower level CHs. Upper level CHs are near BS and can transmit data directly to the BS. Whereas lower level CHs are far from the BS, distant nodes route their messages to the BS by multihop routing. PEMuR is divided into two phases: (1) initialization phase and (2) steady state phase. The initialization phase starts with the creation of TDMA schedules for all nodes to advertise themselves and calculate relative distances between them. Random numbers of upper and lower CHs are elected by the BS. Non-CH nodes associate with CH having maximum signal strength. In steady state phase, BS elects a node with maximum residual energy in each cluster as CH.In case of nonavailability of sufficient bandwidth, each sensor node drops video packets to reduce the retransmission rate. The packets to be dropped are chosen wisely in order to minimize overall video distortion using video distortion model [85]. The video distortion is measured in terms of Mean Square Error (MSE). The model also takes into account the random behavior of wireless medium; hence, it can predict video distortion accurately. Simulation result shows PEMuR outperforms TEEN [87].Key features are as follows:(i)
It is an energy-aware hierarchical routing protocol.(ii)
It uses an intelligent video scheduling scheme.(iii)
It is based on SHPER protocol.(iv)
It intelligently handles low bandwidth situation.PEMuR ensures that minimum power is consumed and required QoS is maintained for the transmission of video streams. Also, it can maintain a high level of perceived video quality (PSNR) for uniform and nonuniform energy distributions. But PEMuR is fully dependent on BSs for carrying out the routing process; hence, it is not fully distributed.Energy efficiency QoS assurance routing (EEQAR) [88] protocol is a hierarchical routing protocol, which implements cellular topology to form clusters. EEQAR uses a QoS trust estimation model, which is based on social network analysis. On a social network, the relationship between two individuals is determined by the trust relationship between them. The concept of social network analysis is used by EEQAR in order to ensure energy efficiency and determine trust relationship. For building trust relationships, distributed metrics are introduced in EEQAR. Direct behavior monitoring and indirect information gathering are used in order to calculate trust value.Trust value is calculated by calculating various other factors like transmission delay, frame rate, image quality, and audio quality. On the basis of the geographical position of agents and multimedia sensor nodes, the cellular topology is formed. Agent nodes are always deployed in the center of the hexagon. Agents send advertisement messages with their ID, after deployment. Multimedia nodes join agent node with maximum signal strength. If multimedia nodes have no task, then they can go into sleeping mode. But agent nodes must remain awake.Each node maintains optimization factor table, which stores trust value, energy level, and correlation for each neighbor. The correlation factor estimates correlation between two nodes, which directly affects the fusion process. Each node finds a next forwarding node using optimization factor table. EEQAR operation is divided into various rounds. Where each round is divided into three phases: cluster building, routing probe, and steady state. Cellular clusters are formed in cluster building phase. Intracluster and intercluster routes are built in routing probe phase. Data is collected in steady phase. Simulation results in [88] show that EEQAR outperforms ARCH [89], in terms of delay, energy efficiency, and reliability.Key features are as follows:(i)
It is an energy efficient hierarchical routing protocol.(ii)
It uses “data fusion” process in order to reduce unnecessary data transmission.(iii)
It uses trust analysis to fulfill application specific QoS requirement.(iv)
It uses TDMA at MAC layer to make efficient use of energy resources.EEQAR efficiently improves performance by decreasing delay and energy utilization. But trust relationship is slowly varying and it is not error-free. Direct monitoring increases the energy consumption rate. Table 6 shows comparison of hierarchical routing protocols.


#### 3.3.3. Location Based Routing Protocol

The central idea of location based routing protocols is to exploit the knowledge of location of nodes in order to route data packets. The location of the node can be determined using global positioning system (GPS) or other localization techniques like DVHop [90], Amorphous [91], and so forth.Few advantages of location based routing protocols over other routing techniques are as follows:(i)
Minimized routing overhead.(ii)
Efficient bandwidth utilization.(iii)
Fully distributed and stateless nature.(iv)
Scalable and tolerant to route faults.(v)
Less memory and maintenance requirement.However, these routing protocols suffer from “energy hole” problem. Greedy nature of these protocols results in repetitive usage of the same path, if the destination lies in the same region. The batteries of nodes lying on that path drain quickly, resulting in the creation of energy hole. An efficient location based routing protocol must handle and avoid hole problem efficiently.Greedy Perimeter Stateless Routing (GPSR) [27] is a novel routing protocol, which uses the positions of the router and the destination node to make packet forwarding decisions. GPSR uses two modes: (1) greedy forwarding and (2) perimeter forwarding. GPSR packet headers include a flag to indicate the current forwarding mode of the packet. If a packet reaches a region where greedy forwarding is not possible, GPSR recovers by routing the packet around the perimeter of the region. In perimeter mode GPSR forwards packets using planar graph traversal. Further, a packet can again reenter the greedy forwarding mode if any neighbor is closer to the destination node.Key features are as follows:(i)
It is a location based routing algorithm.(ii)
It can detect and avoid the hole problem.(iii)
It supports MAC-layer failure feedback.(iv)
It uses promiscuous mode.(v)
It supports queue traversal.(vi)
It implements planarization of graphs.GPSR has a good packet delivery ratio even when the network density is too high. It requires less memory because there is no need to store full knowledge of the network at each node. There is no need for periodic updating of the table. It is an energy efficient routing protocol. End-to-end delay increases when mobility is high, which in turn makes it unsuitable for handling multimedia traffic [92].Directional Geographic Routing (DGR) [93] protocol is a location based routing protocol, which gives better video transmission quality and prolongs the network lifetime. DGR assumes that any node can send video packets to sink at any instance. It forms multiple application specific disjoint paths to transmit real-time traffic over low bandwidth and unreliable network. Forward error correction (FEC) coding is used in order to make data delivery more reliable. A single real-time video stream is divided into multiple substreams. These substreams are transferred in parallel through disjoint paths, in order to make full utilization of resources. DGR follows the right hand rule to recover from the void problem [27].Key features are as follows:(i)
It is a location based routing protocol.(ii)
It uses disjoint paths to optimize bandwidth and energy and reduce delays.(iii)
It is a fault-tolerant routing protocol.(iv)
It supports various features such as load balancing, fast packet delivery, and good peak signal-to-noise ratio (PSNR).DGR utilizes resources very efficiently, increases the delivery ratio, and reduces end-to-end delay requirements. But DGR is not suitable for WMSNs because it requires additional overhead and hence results in transmission delay in case of fault, and it is impractical to implement for large networks.Two-phase geographic greedy forwarding (TPGF) [59] routing algorithm overcomes various shortcomings of flat routing protocols. TGPF can be efficiently used in multimedia applications. TGPF avoids “Local Minimum Problem” by adopting face routing (right hand rule) as adopted in GPSR. The Label Based Optimization method is adopted to eliminate path circles and optimize the routing path found by TPGF. It is different from existing geographic routing algorithms as it does not adopt face routing to bypass holes. For hole-bypassing, it follows two approaches: (1) hole-bypassing by computing the planar graph in advance without knowing holes or boundary nodes; (2) hole-bypassing by identifying the holes or boundary node information in advance.Key features are as follows:(i)
It is a location based routing protocol which supports event driven services.(ii)
It is a multipath routing protocol.(iii)
It implements GF algorithm.(iv)
It can bypass holes using two different methods.TPGF provides paths with minimum number of hop-counts, but it requires full knowledge of the network; therefore, it is not a scalable protocol.Geographic Energy-Aware Multipath Stream-based (GEAMS) [94] routing protocol focuses on load-balancing and minimizing energy consumption. In GEAMS routing protocol, routing decisions are made without global topology knowledge and there is no need for maintenance of topology changes. Here each node stores information about its one-hop neighbors, which is updated by beacon messages. The information includes estimated distance to its neighbors, the distance of neighbor to the sink, data rate of link, and remaining energy. GEAMS uses two policies: (1) Smart Greedy Forwarding and (2) Walking Back Forwarding. Walking Back Forwarding policy is used when there are no neighbors closer to sink. Otherwise, GEAMS uses the Smart Greedy Forwarding policy.Key features are as follows:(i)
It is a geographical multipath routing protocol.(ii)
It enforces uniform energy consumption and meets delay requirement.(iii)
It works on two policies, Smart Greedy Forwarding and Walking Back Forwarding.(iv)
It can detect and avoid hole problems.GEAMS does not require global topology information and its maintenance and it maximizes network lifetime and guarantees QoS requirements. But in sparse network, GEAMS can cause congestion and packet loss.Energy-Aware TPGF (EA-TPGF) [95] is a routing protocol which is an enhanced version of TPGF [45]. TPGF is a routing protocol, which implements greedy forwarding and step back and mark methods. The first phase in TPGF consists of two methods, greedy forwarding and step back and mark. The greedy forwarding algorithm selects a neighbor closest to the BS as the next node for routing. Step back and mark method is used to handle the situations, when there is not even a single node in the neighborhood that is closer to BS. The second phase of TPGF deals with label based optimizations of path. EA-TPGF defines distance-energy formula, which is used to calculate the score of neighbors; node with minimum value is selected. EA-TPGF also defines the energy cost transmission formula to calculate the cost of energy consumed by the transmitter.Key features are as follows:(i)
It is an enhanced version of TPGF.(ii)
It focuses on energy efficiency.(iii)
It uses distance-energy formula and energy cost transmission formula to evaluate the path.(iv)
It also uses GF algorithm to route the data packets.EA-TPGF routing protocol greatly reduces the energy consumption rate in WMSNs as compared to TPGF. But EA-TPGF increases the average delay of nodes and it always uses the same discovered paths again and again.Pairwise directional geographical routing (PWDGR) [96] is a multipath routing protocol, which solves the energy bottleneck problem. PWDGR is proposed based on DGR [93]. It makes full use of nodes around the sink. PWDGR finds pairwise nodes around the sink for data transmission. After the data is transferred to pairwise nodes, pairwise node sends data to sink.Routing in PWDGR is divided into three stages:(I)
In first stage video data is collected and packed, and then the data is broadcasted. Broadcasting saves energy and reduces delay.(II)
After receiving neighbor nodes check if they are in the cooperative node list. If yes, then they calculate coordinates of the next neighbor node.(III)
In the third stage, source cooperative node is selected. Two rules are used to select a source cooperative node: (i) based on cumulative numbers to be selected for cooperative node and (ii) based on distance between ideal point and neighbor node.Key features are as follows:(i)
It is a multipath, location based routing algorithm.(ii)
It uses the concept of pairwise nodes to fully utilize the nodes around the sink.(iii)
It increases the network lifetime by nearly 70%.(iv)
It is reliable and fault tolerant and improves network bandwidth.Use of pairwise nodes in PWDGR around the sink makes full use of nodes within 360° so the energy of nodes around the sink is utilized, to increase the network lifetime. DGR scheme suffers due to energy hole around the sink. If the sink is at the edge of the network, then PWDGR degenerates into DGR algorithm. Also, it increases the delay by 8% as compared to similar protocol DGR.In Table7, location based routing protocols are compared with each other, where suitability for WMSN for each protocol is based on delay, energy efficiency, network lifetime, and performance of routing protocol.In Table8, aforementioned routing protocols are analytically compared, based on architecture, location awareness, multipath, energy efficiency, real-time nature, congestion control, load balancing, reliability, hole detection/bypassing, and data delivery model as attributes.Table 8
Comparison of protocols.
Protocol
Architecture
Location aware
Multipath
Energy efficiency
Real-time
Congestion control
Load balancing
Reliability
Hole detection/bypassing
Flat
Clustered
Zhou and Wang  [20]
✓
✓
✓
SAR  [21]
✓
✓
✓
EAQoS  [23]
✓
✓
✓
RAP  [25]
✓
✓
SPEED  [28]
✓
✓
✓
✓
✓
✓
RPAR  [29]
✓
✓
✓
✓
✓
OEDSR  [34]
✓
✓
✓
✓
SDRC  [37]
✓
✓
AGEM  [38]
✓
✓
✓
✓
EQSR  [39]
✓
✓
✓
Li and Kim  [16]
✓
✓
✓
MMSPEED  [31]
✓
✓
✓
✓
DARA  [41]
✓
✓
✓
✓
✓
RLTD  [42]
✓
✓
✓
✓
✓
✓
LRGR  [46]
✓
✓
✓
✓
QMOR  [44]
✓
✓
✓
ASAR  [53]
✓
✓
✓
✓
✓
M-IAR  [51]
✓
✓
ACOLBR [54]
✓
✓
✓
✓
✓
AntNet  [14]
✓
✓
ACOWMSN  [56]
✓
✓
AntSensNet  [57]
✓
✓
✓
✓
✓
✓
HLEAR  [60]
✓
✓
AntHQSeN  [61]
✓
✓
✓
QOSPSO  [63]
✓
✓
ICACR  [64]
✓
✓
✓
FROMS  [65]
✓
SPEA  [66]
✓
✓
BeeSensor  [69]
✓
Bee-Sensor-C  [72]
✓
✓
✓
✓
✓
EQR-RL  [74]
✓
FTIEE  [77]
✓
✓
✓
✓
✓
REAR [82]
✓
✓
✓
✓
LEAR [83]
✓
✓
✓
✓
✓
✓
PEMuR  [85]
✓
✓
✓
EEQAR [88]
✓
✓
✓
MCRA [48]
✓
✓
✓
TPGF [59]
✓
✓
✓
GEAMS  [94]
✓
✓
✓
✓
GPSR  [27]
✓
✓
DGR [93]
✓
✓
✓
✓
EA-TPGF  [95]
✓
✓
✓
✓
PWDGR  [96]
✓
✓
✓
✓


## 3.1. QoS Based Routing

In order to guarantee qualitative or quantitative performance parameters, the notion of QoS has been proposed [17]. QoS requirement for WMSNs is a set of constraints like reliability, latency, bandwidth, and jitter. Based on number and type of constraints, QoS based routing protocols are classified into latency constrained and multiconstrained routing protocols.


### 3.1.1. Latency Based Constrained Routing

In HRT based systems, if packets arrive after the predefined delay deadline, then this is considered as a system failure [15, 16]. But due to lossy links and error-prone medium, it is almost impossible to guarantee HRT in WMSNs. In SRT based systems, some packet missing the delay deadline is tolerable, but a probabilistic delay guarantee is required in order to prevent the system from crashing. There are various protocols that can provide required delay deadline guarantees and deliver the data packets in SRT. In FRT based systems, (m,k)-firm concept is introduced, which demands at least m out of any k consecutive messages must deliver before their delay deadline; otherwise, it is considered as a system failure. Therefore, it is necessary to implement priority based scheduling of stream packets. In [18], distance based Priority (DBP) policy is used to choose between streams. The system maintains DBP state for each stream. DBP is usually calculated at the sink and is used to evaluate the stream not for priority assignment. Recent work in [19] tires to implement cross layer solutions to improve routing.(1) HRT Based Protocols.The paper [20] proposed delay-constrained routing protocol. The main goal of the protocol is to provide hard real-time delay guarantees and minimize the energy consumption within WMSNs. The proposed algorithm uses global link-state routing algorithm, which needs complete knowledge of network topology in order to compute best possible paths. Global link-state routing algorithms can provide hard real-time delay guarantees. The proposed algorithm is divided into three parts. The first part removes the node with less residual energy from the graph G(V,E), in order to avoid hole problem. The second part uses Dijkstra algorithm in order to find energy efficient routes. Then, the third part ensures that all the paths meet delay upper bound. If a path does not meet delay constraints, then a new path is computed using Dijkstra algorithm and delay as a performance metric.Key features are as follows:(i)
It uses a global state routing algorithm.(ii)
It focuses on energy efficiency and QoS.(iii)
It computes delay-constrained least energy consumption tree using the Dijkstra algorithm.The proposed protocol guarantees hard-real-time delay bounds. However, the state information exchanged between nodes consumes a huge amount of memory and bandwidth. It is difficult to store and maintain state information in large WMSNs. Therefore, it is only suitable for small WMSNs.(2) SRT Based Protocols. Sequential assignment routing (SAR) [21] considers both QoS and energy efficiency in route selection process. SAR assigns a priority level to each packet. The main objective of SAR algorithm is to minimize the average weighted QoS metric throughout the lifetime of the network. Weighted QoS metric is computed as the product of additive QoS metric and weight coefficient associated with a priority level. SAR algorithm elects special node called the central node (CN) to perform more sophisticated information processing. It uses Single Winner Election (SWE) algorithm and spanning tree (ST) algorithm. ST algorithm computes a minimum hop spanning tree rooted at CN. Failure recovery in SAR uses a handshaking procedure which enforces table consistency among neighbors. If there is a path failure, then a recomputation procedure is triggered automatically. SNR uses two cooperative signal processing techniques: noncoherent and coherent. Extensive simulation done in [22] shows that SAR has better performance than the minimum metric algorithm.Key features are as follows:(i)
It is a table driven routing protocol.(ii)
It is both a QoS based and an energy efficient protocol.(iii)
It is a multipath and fault-tolerant routing protocol.The major drawback of SAR is that it is a table driven protocol and hence it is nonscalable. If the number of nodes increases, then the overhead of maintaining the routing table and status information increases drastically [1].Energy-aware QoS (EAQoS) [23] finds the optimal path to the destination in terms of energy consumption and error rate while meeting the end-to-end delay requirements. EAQoS specifies a queuing model which can handle both nonreal-time and real-time traffic. The implemented queuing model is inspired from class based queuing model [24]. A cost function is associated for each link. This cost function is defined to capture various parameters such as residual energy, transmission energy, and end-to-end delay. EAQoS finds K least cost paths using an extended version of Dijkstra’s algorithm. Then, only those paths are chosen that meet the required QoS requirement and maximize network throughput. The cost of each path between nodes is stored. For every discovered path, a tree-like structure is created and total cost of the path between the nodes is recorded. The algorithm terminates when K shortest paths are discovered. If a new path is searched for a particular destination, then only node-disjoint paths are considered. This helps in reducing the congestion over newly found path due to former path.Key features are as follows:(i)
It is a cluster based energy efficient and delay-constrained routing protocol.(ii)
It facilitates both real-time and nonreal-time best effort traffic simultaneously.(iii)
It ensures guaranteed bandwidth and most energy efficient paths.(iv)
The use of node-disjoint paths helps in reducing congestion over the newly found path.EAQoS meets various QoS and energy efficiency requirements. However, EAQoS does not consider MAC and other delays while calculating end-to-end delay and it requires knowledge of the whole network. EAQoS does not treat different real-time traffic separately; therefore, it cannot be used for applications that coexist with other multimedia traffic.Real-Time Communication Architecture for Large-Scale WSN (RAP) [25] is a priority based, localized routing protocol, which provides soft-real-time delay bounds. RAP introduced a novel packet scheduling policy, Velocity Monotonic Scheduling (VMS) [25]. VMS schedules packets according to their requested velocity. VMS improves deadline miss ratio by giving priority to packets based on requested velocity. VMS is capable of reducing deadline miss ratio by as much as 72.1% [25]. RAP assumes that each node knows its own location, making it location dependent protocol. The combination of VMS and geographic forwarding (GF) makes RAP more scalable and more suitable for multimedia traffic. RAP supports both query oriented and event oriented services. Extensive simulation shows that RAP outperforms DSR [26] and GF [27].Key features are as follows:(i)
It is a location dependent routing protocol, which implements both VMS and GF.(ii)
It provides soft-real-time delay bound guarantees.(iii)
It provides both query and event based service APIs.(iv)
It is a scalable protocol for multimedia applications.There is no need to maintain neighbor database and hence the routing overhead is very little as compared to other classical routing algorithms. RAP uses GF, which can deplete the bandwidth quickly. Also, it does not consider hop-count as routing metric and there is no direct metric to show energy conservation [1].Stateless Protocol for Real-Time Communication (SPEED) [28] is a stateless, localized, soft-real-time delay bounded protocol, which requires minimum MAC layer support for QoS based routing. Stateless Nondeterministic Geographic Forwarding (SNGF) method is used for routing in SPEED. SNGF maintains desired delivery speed and traffic balance, to reduce the network congestion. MAC layer adaptation of SNGF drops packets in case of congestion. If congestion remains for a long time, then traffic is redirected to a less congested area. SNGF uses four modules.Beacon Exchange. SNGF uses two extra beacons. One beacon is for delay estimation and the other is for back pressure.Delay Estimation. Round trip single hop delay for each packet is calculated at the sender’s site after receiving ACK.Neighborhood Feedback Loop (NFL). NFL maintains system performance by maintaining single hop relay speed above a fixed value.Back Pressure Rerouting. This module is used to reduce congestion in the network.Key features are as follows:(i)
It is an energy efficient and localized routing protocol.(ii)
It handles congestion and provides soft-real-time delay bounds.(iii)
It avoids the void problem.(iv)
It also supports load balancing.SPEED uses nondeterministic geographic forwarding and it maintains only localized database. As a result, the routing overhead is minimized. But SPEED is nonscalable as it uses the idea of per-flow reservation [1], and its performance degrades when it encounters a large hole and sudden congestion.Real-time Power-Aware Routing (RPAR) [29] protocol can achieve application specific delay requirements by dynamically adjusting transmission power and other routing metrics. RPAR looks into various serious issues such as network scalability and memory and bandwidth constraints. RPAR have four components: neighborhood manager, delay estimator, forwarding policy, and velocity assignment policy. The neighborhood manager finds eligible forwarding choices that meet both end-to-end delay and energy efficiency requirements. The delay estimator supports real-time multimedia traffic. It further supports two mechanisms: (1) Power Adaptation and (2) neighbor discovery. The delay estimator uses Jacobson’s algorithm [30] to estimate contention delay and transmission counts. Jacobson’s algorithm computes the retransmission timeout by considering both the average and the estimated variable. RPAR is very good at handling congestion and Holes. RPAR is related to SPEED [28], MMSPED [31], and LAPC [32]. But it is different from these because it integrates power efficiency and supports real-time communication, it handles lossy links, and it employs novel neighborhood management mechanism. Simulation results show that RPAR outperforms SPEED [27] and EEGR [33].Key features are as follows:(i)
It is a power-aware, location dependent, and query based routing protocol.(ii)
It can handle holes and congestion.(iii)
It is a scalable routing protocol, which can deliver data within delay bounds.(iv)
It looks into bandwidth and memory constraints.Neighborhood management and forwarding policy further reduce power consumption. But RPAR’s performance degrades when it encounter large holes and sudden congestion.Optimized energy-delay subnetwork routing (OEDSR) [34] protocol is cluster based and event driven routing protocol where the information from CHs to the base station (BS) is routed in a multihop fashion. OEDSR protocol borrows the idea of an energy-delay metric from OEDR [35]. Routing decision is based on factors such as: available energy, end-to-end delay and distance from BS. The proposed protocol ensures that routes are loop-free. In OEDSR, total numbers of active nodes are reduced by forming a subnetwork with nodes having significant information regarding the event. A temporary header (TH) is selected based on maximum available energy, which calculates and selects required number of CHs. After the selection of CHs, TH broadcasts all the information about CHs and then it becomes a regular node. It does not consider hop-count as one of routing metrics. Simulation results show that OEDSR outperforms AODV [36] and DSR [26].Key features are as follows:(i)
It is a proactive cluster based routing algorithm.(ii)
It supports event driven services.(iii)
It is multipath and energy efficient and delivers data within delay deadlines.OEDSR minimizes the product of available energy and average end-to-end delay, and it also minimizes the total number of collisions by restricting the number of nodes accessing the channel. OEDSR does not consider hop-count for making routing decisions and average delay is increased if the packets are transmitted between sensor node, THs, and CHs.Service differentiated real-time communication scheme (SDRCS) [37] is an event driven routing scheme, which implements cross layer functionality in order to route real-time traffic. SDRCS functionally integrates both dynamic forwarding technique and CSMA/CA based prioritization technique [37]. SDRCS uses a novel polling contention period based prioritized MAC. The advantage of the proposed design is that it improves bandwidth utilization even when the total numbers of categories are greater than four. SDRCS also proposes light-weight packet schedulability estimation mechanism, which uses polling contention period and received signal strength based grouping technique. The protocol operation can be categorized in five components: (0) RSS based grouping, (1) admission control, (2) prioritized queuing, (3) real-time MAC, and (4) dynamic forwarding. The grouping mechanism uses RSS to strip the sensor field to layers. Accuracy of distance is maintained using factor called grouping granularity (GRA).The queuing policy in SDRCS uses per-hop deadline based queues. Every node uses FIFO priority queues for packet scheduling. As shown in Figure3, per-hop deadline requirements are mapped into N priority levels. Polling contention period based MAC can only provide a limited number of traffic classes. Early deadline miss (EDM) policy is employed in order to drop any unscheduled packets. Simulation results show that SDRCS outperforms MMSPEED [31] and RAP [25], in terms of throughput, on-time delivery ratio, and energy efficiency.Figure 3
Traffic classification using priority queues.Key features are as follows:(i)
It is an event driven routing protocol.(ii)
It requires no extra hardware for localization.(iii)
It can adapt to network dynamics (such as channel, void, and channel quality).(iv)
It uses cross-layer packet forwarding design for routing multimedia traffic.(v)
It can avoid voids very efficiently.SDRCS can avoid false packet drops due to EDM, because it adapts better to change in a network environment.Adaptive Greedy-Compass Energy-Aware Multipath (AGEM) [38] routing protocol is location based routing protocol for WMSNs which can be considered as an enhanced version of GPSR [27] protocol. AGEM has load-balancing feature to increase the lifetime of the network and to reduce queue size of nodes. It uses adaptive greedy compass policy. Adaptive compass policy selects only a subset of neighbors. Its forwarding policy uses four parameters: remaining energy, hop-count, distance between the current node and its neighbors, and previous history of forwarded packets of the same stream. AGEM protocol has two modes: (1) smart greedy forwarding and (2) walking back forwarding. It is assumed that nodes gather information regarding their position using GPS or by using distributed localization techniques. Each node maintains database containing information regarding one-hop neighbors. Simulation results show that AGEM performs better than GPSR [27], in terms of packet-loss, transmission delay, and energy efficiency.Key features are as follows:(i)
It is a location based, multipath routing protocol, which focuses on load balancing.(ii)
It uses adaptive greedy compass policy.(iii)
It can be used for both static and mobile sensor networks.(iv)
It uses the shortest path which has minimum end-to-end delay.Unlike GPSR [27], data streams in AGEM are routed by different paths; hence, mostly used nodes do not die rapidly because of energy depletion. If network size is low, then mean energy consumption is greater for AGEM as compared to GPSR [27].Energy efficient and QoS aware multipath routing (EQSR) [39] protocol tries to minimize energy consumption rate to increase the network lifetime. EQSR uses residual energy, available buffer size, and signal-to-noise ratio (SNR) as routing metrics. EQSR increases reliability factor by using XOR-based FEC (forward error correction) technique. As shown in Figure 4, EQSR implements a queuing model, which enables EQSR to handle both real-time and nonreal-time traffic. EQSR discovers node-disjoint paths, which helps in utilizing maximum available network resources. Path discovery phase of EQSR is divided into initialization phase, primary path setup phase, and alternate path setup phase. Each node finds preferred next hop by using the link cost function as defined in [39]. Path discovery phase finds primary and alternate paths. Updated values of metrics are appended on data packets to update previously established paths. This eliminates refreshment overhead.Figure 4
Functional diagram of EQSR.The segmentation of data packets is done before data transmission, in order to split the data packets into equal sized segments. Then, these segments are scheduled for transmission. Before scheduling process, traffic allocation scheme adds error correction code, which helps in recovering from node failures. Efficient data distribution among the available paths is done using weighted traffic allocation strategy. Simulation results show that EQSR outperforms MCMP [40] and RAP [25].Key features are as follows:(i)
It is an energy efficient multipath routing protocol.(ii)
It can handle both real-time and nonreal-time traffic.(iii)
It uses FEC codes to increase reliability.EQSR avoids network-wide flooding of route discovery in case of node failures. It also reduces overhead due to route update messages. EQSR uses FEC codes for increasing reliability, but it increases data redundancy.(3) FRT Based Protocols. The paper [15] defines a real-time fault-tolerant mechanism, which tries to achieve application QoS requirement by utilizing Local Status Indicator (LSI). LSI oversees and assesses the local condition of the nodes and is used to detect network faults. The proposed mechanism enables each node to dynamically adjust its capabilities in order to attenuate performance degradation. As shown in Figure 5, the working of the proposed mechanism is further divided into four submechanisms: (1) neighbor beacon exchange, (2) single hop delay estimation, (3) LSI calculation, and (4) fault recovery mechanisms.Figure 5
Components of scheme proposed in [11].In order to share location information among neighbors and to prolong the lifetime of overloaded nodes and of the whole network, periodic beaconing is used. Therefore, the beacon messages contain location information and residual energy of nodes. Three on-demand beacons, single hop delay estimation beacon, stream DBP beacon, and orphan node removal beacon, are used by the proposed mechanism in order to implement different functionalities. At a regular interval, stream DBP beacons are sent by the sink node to source node as a feedback. The value of stream DBP is propagated to the intermediate nodes, which help them in the fault recovery mechanism. The proposed mechanism calculates DBP at the sink node, by using past packet deadline misses. The factor “distance to failure” of a particular node is known after calculating LSI by usingm,  k, congestion, and link failure level. After calculating LSI, a node can locally decide to implement recovery mechanisms. The paper [15] proposes a routing protocol, which makes optimal forwarding decisions based on LSI, packet deadline, and remaining power. The proposed protocol implements the mechanism defined in [16]. The protocol has five components: routing mechanism, beacon exchange, orphan node back pressure, delay estimation, and calculation of LSI. Each node maintains a neighbor table, which stores neighbor ID, energy level, estimated delay, expiration time, (m,k), deadline, and DBP. The expiration time field is set to standard round trip time (RTT). Simulation results show that the proposed routing protocol outperforms SPEED [28].Key features are as follows:(i)
It is a robust routing protocol, which can fulfill required latency and reliability requirements.(ii)
It uses local system evaluation that reduces routing overhead.(iii)
It ensures timeliness of the stream transfer by choosing a node with qualified LSI.(iv)
It uses fault recovery mechanisms to handle problems like congestion, link failure, and void.(v)
Orphan node back pressure prevents void occurrence.The proposed routing protocol efficiently routes stream packets within delay constraints and provides better fault recovery mechanism.In Table2, latency constrained routing protocols are compared with each other, where suitability for WMSN for each protocol is based on delay, energy efficiency, network lifetime, and performance of routing protocol.


### 3.1.2. Multiple QoS-Constrained Routing

Multiple QoS-constrained routing protocols focus not only on latency constraint, but also on other constraints like load balancing, reliability, congestion, bandwidth, and so forth. Many protocols were proposed by researchers in previous literature.Multipath Multi-SPEED (MMSPEED) [31] is a location based routing protocol, which improves the timeliness and reliability of sensor networks communicating over wireless channels. Reliability requirements are met by using probabilistic multipath forwarding mechanism. The main goals of MMSPEED are as follows: (1) localized packet routing decision making and (2) providing QoS in timeliness and reliability domains. MMSPEED assumes that each node is aware of its location, which makes it more scalable and self-adaptive and removes setup and recovery latency. The virtual isolation of speed layers helps in providing service differentiation. Virtual isolation is maintained by classifying packets according to their speed classes and placing them in priority queues. Probabilistic multipath forwarding mechanism differentiates packets with different requirements. MMSPEED makes proper use of paths without much energy consumption. The back pressure mechanism is employed to remove the void area problem and reduce the incoming traffic. MMSPEED greatly relies on MAC protocol for priority based access to medium depending on speed layer, reliable multicast delivery of packets, and calculation of loss rate and average delay to individual neighbors. MMSPEED relies on EDCF mode of IEEE 802.11e standard.Key features are as follows:(i)
It is a location based and query driven routing protocol.(ii)
It focuses on both timeliness and reliability.(iii)
It is a multipath routing protocol.(iv)
It can solve the void area problem.MMSPEED uses redundant path selection techniques and prevents unnecessary flooding to improve reliability, network lifetime, and load balancing. But MMSPEED does not consider hop-count as one of the routing metrics and it does not consider energy consumption directly. Moreover, the multicast capability of EDCF results in an increment in total size of packets, which in turn increases power consumption.Distributed aggregate routing algorithm (DARA) [41] is a multisink, multipath, and location aware protocol, which implements the model for achieving multiconstrained QoS (MCQoS). The main goal of [41] is to improve path reliability and delay guarantee while preserving the battery power. MCQoS is a location aware routing scheme which defines three metrics: (1) residual energy, (2) expected sojourn time of packet at the receiving node, and (3) geographic progress towards the destination. It proposes selective greedy forwarding (SGF) to reduce energy consumption and interference [41]. Delay-differentiated packet scheduling (DDPS) reduces packet drop due to deadline failure [36]. DDPS separates queues for time-constrained and non-time-constrained packets in the MAC layer. Further MAC protocol is modified to give higher priority to time-constrained data packets in two levels: (1) internode and (2) intranode. This modification also allows us to control transmission power and save battery and reduce interference. Nodes in DARA algorithm dynamically decide when to broadcast BEACON messages. Simulation results show that DARA outperforms MMSPEED [31] and MCMP [40].Key features are as follows:(i)
It is a fully localized algorithm which means there is no need to maintain any global state information.(ii)
It supports both static and dynamic network topologies.(iii)
It increases reliability by sending duplicate packets from the source node.(iv)
It modifies MAC to give more priority to real-time traffic.DARA reduces energy by using the power control transmission scheme and reducing retransmissions; it also optimizes the trade-off between reliability and delay. But DARA does not provide efficient solution to void problem and it increases routing overhead due to duplicate packet transmission.Real-time routing protocol with load distribution (RTLD) [42] ensures high packet throughput with minimal packet overhead and prolongs the network lifetime. A novel communication method called “geodirection-cast forwarding” is proposed in [38], which is a combination of both geocast and directional forwarding. It also introduced a mechanism to compute optimal forwarding based on packet reception rate (PRR), remaining power of sensor nodes, and packet velocity over one hop. This optimal forwarding helps in balancing the load of real-time traffic. There are four modules in RTLD: (1) location management, (2) routing management, (3) power management, and (4) neighborhood management. Location management module calculates the location of nodes using the location of predetermined neighbor nodes. The power management module determines the state of the transceiver and the transmission power of sensor nodes. Neighborhood management module discovers a subset of forwarding candidate nodes and maintains a neighbor table of forwarding candidate nodes. Routing management module computes optimal forwarding choices and makes all routing decisions. It further contains submodules: forwarding metrics calculation, forwarding mechanism, and routing problem handler. RTLD outperforms SPEED [28] and RTPC [43].Key features are as follows:(i)
It is a location based routing protocol, which combines geocast forwarding with link quality.(ii)
It maximizes the velocity and remaining energy to achieve delay bounds.(iii)
It uses neighborhood and power management policies.(iv)
It can efficiently detect and bypass holes.(v)
It supports query based services and focuses on load balancing.RTLD can deliver data within delay bounds and minimize miss ratio and energy consumption. The only drawback of RTLD is its high cost of deployment.QoS aware multisink opportunistic routing (QMOR) [44] is an efficient routing protocol, especially designed for delivering real-time multimedia streams on time. The main objective of QMOR is to minimize the energy consumption and meeting the delay and reliability requirements [44]. The use of opportunistic routing scheme enhances the performance of communication by utilizing the broadcast nature of wireless communication. The nodes maintain a forwarder list, which contains a list of nodes that are allowed to forward the broadcasted packets. QMOR focuses on selection and prioritization of the forwarder list to meet application specific QoS requirements.High level of correlation between video information received from adjacent multimedia sensor nodes results in redundant traffic. QMOR uses a correlation-aware differential coding scheme to reduce redundancy. For reducing redundancy and maximizing energy gains, it is very much important to determine source node and its destination node in the same correlation group. This problem is solved using differential coding-based source and intermediate selection (DCISIS) protocol. Simulation results show that QMOR outperforms CAQR [45].Key features are as follows:(i)
It is a QoS based multisink routing protocol, which implements an opportunistic routing scheme to reduce energy consumption.(ii)
It implements priority based forwarding.(iii)
It can evaluate expected communication cost.(iv)
It meets the reliability and delay requirements.QMOR greatly improves video transmission quality and energy efficiency. But QMOR does not provide service differentiation in heterogeneous networks.Latency and Reliability-Aware Geographic Routing (LRGR) [46] is a hierarchical routing protocol, which focuses on mobility prediction and energy-aware cluster formation. Each node stores information about two-hop neighbor nodes and adjacency table. Working of LRGR protocol is divided into several rounds. Each round consists of two phases: clustering phase and routing and data transmission phase. Clustering phase is further divided into energy exchange, CH setup, and cluster formation. Cluster maintenance is implemented as required during routing and transmission phase. Energy efficient neighbor discovery protocol (ENDP) is used at MAC layer because it is a low duty beacon-enabled MAC protocol.In clustering phase, each node broadcasts its residual energy. After energy exchange, sensor nodes calculate average residual energy of their neighbors. The node with a maximum ratio of residual energy/average residual energy becomes CH. For mobility prediction, link expiration time (LET) is calculated, which is computationally less complex. Another factor called linear quality estimation (LQE) is calculated at each sensor node, which is based on previous receptions and transmissions. Both LET and LQE are used by nodes to choose between the CHs. In order to use the most stable path, the main focus is on factors like balanced energy usage, connectivity, position, and congestion. LRGR uses connection reliability metric, forwarding progress metric, and aggregated path metric. Simulation results show that LRGR outperforms VIBE [47].Key features are as follows:(i)
It is a location based hierarchical routing protocol.(ii)
It uses energy-aware cluster setup phase.(iii)
It uses mobility prediction based clustering, which estimates link quality and improves reliability.(iv)
It defines forwarding progress metric to evaluate end-to-end delay and packet loss.LRGR guarantees low latency and maintains a balance between energy efficiency and reliability. But in case of highly mobile environments, LRGR suffers because of limited bandwidth, error-prone wireless channel.Multiconstrained routing algorithm (MCRA) [48] is based on query-flooding and query driven data delivery models. In MCRA, special messages called “interest” are used to query an event. The MCRA borrows the idea of the logical coordinate system. Logical Coordinate System is a localized approach which calculates the coordinates of nodes using hop-count information. This approach drastically reduces message overhead. Both geographic information based routing and virtual coordinate system based routing algorithms sometimes result in route failure due to inaccurate node coordinate information. MCRA implements message suppression techniques to reduce redundant transmission and retransmission of messages caused by collisions. In MCRA message suppression is done using restraining forwarding and deferring forwarding. Both try to reduce the amount of interests by restraining and deferring forwarding node. Extensive simulation performed in [48] shows that MCRA outperforms agent based DD [49] and SPEED [28].Key features are as follows:(i)
It is a logical location based multiconstrained routing protocol which supports query based services.(ii)
It focuses on reliability and energy efficiency.(iii)
It implements message suppression techniques to reduce redundant packets.By using the logical location based technique, MCRA reduces routing overhead and it also minimizes redundant messages. But MCRA does not consider reliability and bandwidth.Multiconstrained routing protocols are analytically compared in Table3, which contains characteristics features, suitability for WMSNs, performance metrics, type of network, energy efficiency, network lifetime, and performance results of routing protocols.


## 3.1.1. Latency Based Constrained Routing

In HRT based systems, if packets arrive after the predefined delay deadline, then this is considered as a system failure [15, 16]. But due to lossy links and error-prone medium, it is almost impossible to guarantee HRT in WMSNs. In SRT based systems, some packet missing the delay deadline is tolerable, but a probabilistic delay guarantee is required in order to prevent the system from crashing. There are various protocols that can provide required delay deadline guarantees and deliver the data packets in SRT. In FRT based systems, (m,k)-firm concept is introduced, which demands at least m out of any k consecutive messages must deliver before their delay deadline; otherwise, it is considered as a system failure. Therefore, it is necessary to implement priority based scheduling of stream packets. In [18], distance based Priority (DBP) policy is used to choose between streams. The system maintains DBP state for each stream. DBP is usually calculated at the sink and is used to evaluate the stream not for priority assignment. Recent work in [19] tires to implement cross layer solutions to improve routing.(1) HRT Based Protocols.The paper [20] proposed delay-constrained routing protocol. The main goal of the protocol is to provide hard real-time delay guarantees and minimize the energy consumption within WMSNs. The proposed algorithm uses global link-state routing algorithm, which needs complete knowledge of network topology in order to compute best possible paths. Global link-state routing algorithms can provide hard real-time delay guarantees. The proposed algorithm is divided into three parts. The first part removes the node with less residual energy from the graph G(V,E), in order to avoid hole problem. The second part uses Dijkstra algorithm in order to find energy efficient routes. Then, the third part ensures that all the paths meet delay upper bound. If a path does not meet delay constraints, then a new path is computed using Dijkstra algorithm and delay as a performance metric.Key features are as follows:(i)
It uses a global state routing algorithm.(ii)
It focuses on energy efficiency and QoS.(iii)
It computes delay-constrained least energy consumption tree using the Dijkstra algorithm.The proposed protocol guarantees hard-real-time delay bounds. However, the state information exchanged between nodes consumes a huge amount of memory and bandwidth. It is difficult to store and maintain state information in large WMSNs. Therefore, it is only suitable for small WMSNs.(2) SRT Based Protocols. Sequential assignment routing (SAR) [21] considers both QoS and energy efficiency in route selection process. SAR assigns a priority level to each packet. The main objective of SAR algorithm is to minimize the average weighted QoS metric throughout the lifetime of the network. Weighted QoS metric is computed as the product of additive QoS metric and weight coefficient associated with a priority level. SAR algorithm elects special node called the central node (CN) to perform more sophisticated information processing. It uses Single Winner Election (SWE) algorithm and spanning tree (ST) algorithm. ST algorithm computes a minimum hop spanning tree rooted at CN. Failure recovery in SAR uses a handshaking procedure which enforces table consistency among neighbors. If there is a path failure, then a recomputation procedure is triggered automatically. SNR uses two cooperative signal processing techniques: noncoherent and coherent. Extensive simulation done in [22] shows that SAR has better performance than the minimum metric algorithm.Key features are as follows:(i)
It is a table driven routing protocol.(ii)
It is both a QoS based and an energy efficient protocol.(iii)
It is a multipath and fault-tolerant routing protocol.The major drawback of SAR is that it is a table driven protocol and hence it is nonscalable. If the number of nodes increases, then the overhead of maintaining the routing table and status information increases drastically [1].Energy-aware QoS (EAQoS) [23] finds the optimal path to the destination in terms of energy consumption and error rate while meeting the end-to-end delay requirements. EAQoS specifies a queuing model which can handle both nonreal-time and real-time traffic. The implemented queuing model is inspired from class based queuing model [24]. A cost function is associated for each link. This cost function is defined to capture various parameters such as residual energy, transmission energy, and end-to-end delay. EAQoS finds K least cost paths using an extended version of Dijkstra’s algorithm. Then, only those paths are chosen that meet the required QoS requirement and maximize network throughput. The cost of each path between nodes is stored. For every discovered path, a tree-like structure is created and total cost of the path between the nodes is recorded. The algorithm terminates when K shortest paths are discovered. If a new path is searched for a particular destination, then only node-disjoint paths are considered. This helps in reducing the congestion over newly found path due to former path.Key features are as follows:(i)
It is a cluster based energy efficient and delay-constrained routing protocol.(ii)
It facilitates both real-time and nonreal-time best effort traffic simultaneously.(iii)
It ensures guaranteed bandwidth and most energy efficient paths.(iv)
The use of node-disjoint paths helps in reducing congestion over the newly found path.EAQoS meets various QoS and energy efficiency requirements. However, EAQoS does not consider MAC and other delays while calculating end-to-end delay and it requires knowledge of the whole network. EAQoS does not treat different real-time traffic separately; therefore, it cannot be used for applications that coexist with other multimedia traffic.Real-Time Communication Architecture for Large-Scale WSN (RAP) [25] is a priority based, localized routing protocol, which provides soft-real-time delay bounds. RAP introduced a novel packet scheduling policy, Velocity Monotonic Scheduling (VMS) [25]. VMS schedules packets according to their requested velocity. VMS improves deadline miss ratio by giving priority to packets based on requested velocity. VMS is capable of reducing deadline miss ratio by as much as 72.1% [25]. RAP assumes that each node knows its own location, making it location dependent protocol. The combination of VMS and geographic forwarding (GF) makes RAP more scalable and more suitable for multimedia traffic. RAP supports both query oriented and event oriented services. Extensive simulation shows that RAP outperforms DSR [26] and GF [27].Key features are as follows:(i)
It is a location dependent routing protocol, which implements both VMS and GF.(ii)
It provides soft-real-time delay bound guarantees.(iii)
It provides both query and event based service APIs.(iv)
It is a scalable protocol for multimedia applications.There is no need to maintain neighbor database and hence the routing overhead is very little as compared to other classical routing algorithms. RAP uses GF, which can deplete the bandwidth quickly. Also, it does not consider hop-count as routing metric and there is no direct metric to show energy conservation [1].Stateless Protocol for Real-Time Communication (SPEED) [28] is a stateless, localized, soft-real-time delay bounded protocol, which requires minimum MAC layer support for QoS based routing. Stateless Nondeterministic Geographic Forwarding (SNGF) method is used for routing in SPEED. SNGF maintains desired delivery speed and traffic balance, to reduce the network congestion. MAC layer adaptation of SNGF drops packets in case of congestion. If congestion remains for a long time, then traffic is redirected to a less congested area. SNGF uses four modules.Beacon Exchange. SNGF uses two extra beacons. One beacon is for delay estimation and the other is for back pressure.Delay Estimation. Round trip single hop delay for each packet is calculated at the sender’s site after receiving ACK.Neighborhood Feedback Loop (NFL). NFL maintains system performance by maintaining single hop relay speed above a fixed value.Back Pressure Rerouting. This module is used to reduce congestion in the network.Key features are as follows:(i)
It is an energy efficient and localized routing protocol.(ii)
It handles congestion and provides soft-real-time delay bounds.(iii)
It avoids the void problem.(iv)
It also supports load balancing.SPEED uses nondeterministic geographic forwarding and it maintains only localized database. As a result, the routing overhead is minimized. But SPEED is nonscalable as it uses the idea of per-flow reservation [1], and its performance degrades when it encounters a large hole and sudden congestion.Real-time Power-Aware Routing (RPAR) [29] protocol can achieve application specific delay requirements by dynamically adjusting transmission power and other routing metrics. RPAR looks into various serious issues such as network scalability and memory and bandwidth constraints. RPAR have four components: neighborhood manager, delay estimator, forwarding policy, and velocity assignment policy. The neighborhood manager finds eligible forwarding choices that meet both end-to-end delay and energy efficiency requirements. The delay estimator supports real-time multimedia traffic. It further supports two mechanisms: (1) Power Adaptation and (2) neighbor discovery. The delay estimator uses Jacobson’s algorithm [30] to estimate contention delay and transmission counts. Jacobson’s algorithm computes the retransmission timeout by considering both the average and the estimated variable. RPAR is very good at handling congestion and Holes. RPAR is related to SPEED [28], MMSPED [31], and LAPC [32]. But it is different from these because it integrates power efficiency and supports real-time communication, it handles lossy links, and it employs novel neighborhood management mechanism. Simulation results show that RPAR outperforms SPEED [27] and EEGR [33].Key features are as follows:(i)
It is a power-aware, location dependent, and query based routing protocol.(ii)
It can handle holes and congestion.(iii)
It is a scalable routing protocol, which can deliver data within delay bounds.(iv)
It looks into bandwidth and memory constraints.Neighborhood management and forwarding policy further reduce power consumption. But RPAR’s performance degrades when it encounter large holes and sudden congestion.Optimized energy-delay subnetwork routing (OEDSR) [34] protocol is cluster based and event driven routing protocol where the information from CHs to the base station (BS) is routed in a multihop fashion. OEDSR protocol borrows the idea of an energy-delay metric from OEDR [35]. Routing decision is based on factors such as: available energy, end-to-end delay and distance from BS. The proposed protocol ensures that routes are loop-free. In OEDSR, total numbers of active nodes are reduced by forming a subnetwork with nodes having significant information regarding the event. A temporary header (TH) is selected based on maximum available energy, which calculates and selects required number of CHs. After the selection of CHs, TH broadcasts all the information about CHs and then it becomes a regular node. It does not consider hop-count as one of routing metrics. Simulation results show that OEDSR outperforms AODV [36] and DSR [26].Key features are as follows:(i)
It is a proactive cluster based routing algorithm.(ii)
It supports event driven services.(iii)
It is multipath and energy efficient and delivers data within delay deadlines.OEDSR minimizes the product of available energy and average end-to-end delay, and it also minimizes the total number of collisions by restricting the number of nodes accessing the channel. OEDSR does not consider hop-count for making routing decisions and average delay is increased if the packets are transmitted between sensor node, THs, and CHs.Service differentiated real-time communication scheme (SDRCS) [37] is an event driven routing scheme, which implements cross layer functionality in order to route real-time traffic. SDRCS functionally integrates both dynamic forwarding technique and CSMA/CA based prioritization technique [37]. SDRCS uses a novel polling contention period based prioritized MAC. The advantage of the proposed design is that it improves bandwidth utilization even when the total numbers of categories are greater than four. SDRCS also proposes light-weight packet schedulability estimation mechanism, which uses polling contention period and received signal strength based grouping technique. The protocol operation can be categorized in five components: (0) RSS based grouping, (1) admission control, (2) prioritized queuing, (3) real-time MAC, and (4) dynamic forwarding. The grouping mechanism uses RSS to strip the sensor field to layers. Accuracy of distance is maintained using factor called grouping granularity (GRA).The queuing policy in SDRCS uses per-hop deadline based queues. Every node uses FIFO priority queues for packet scheduling. As shown in Figure3, per-hop deadline requirements are mapped into N priority levels. Polling contention period based MAC can only provide a limited number of traffic classes. Early deadline miss (EDM) policy is employed in order to drop any unscheduled packets. Simulation results show that SDRCS outperforms MMSPEED [31] and RAP [25], in terms of throughput, on-time delivery ratio, and energy efficiency.Figure 3
Traffic classification using priority queues.Key features are as follows:(i)
It is an event driven routing protocol.(ii)
It requires no extra hardware for localization.(iii)
It can adapt to network dynamics (such as channel, void, and channel quality).(iv)
It uses cross-layer packet forwarding design for routing multimedia traffic.(v)
It can avoid voids very efficiently.SDRCS can avoid false packet drops due to EDM, because it adapts better to change in a network environment.Adaptive Greedy-Compass Energy-Aware Multipath (AGEM) [38] routing protocol is location based routing protocol for WMSNs which can be considered as an enhanced version of GPSR [27] protocol. AGEM has load-balancing feature to increase the lifetime of the network and to reduce queue size of nodes. It uses adaptive greedy compass policy. Adaptive compass policy selects only a subset of neighbors. Its forwarding policy uses four parameters: remaining energy, hop-count, distance between the current node and its neighbors, and previous history of forwarded packets of the same stream. AGEM protocol has two modes: (1) smart greedy forwarding and (2) walking back forwarding. It is assumed that nodes gather information regarding their position using GPS or by using distributed localization techniques. Each node maintains database containing information regarding one-hop neighbors. Simulation results show that AGEM performs better than GPSR [27], in terms of packet-loss, transmission delay, and energy efficiency.Key features are as follows:(i)
It is a location based, multipath routing protocol, which focuses on load balancing.(ii)
It uses adaptive greedy compass policy.(iii)
It can be used for both static and mobile sensor networks.(iv)
It uses the shortest path which has minimum end-to-end delay.Unlike GPSR [27], data streams in AGEM are routed by different paths; hence, mostly used nodes do not die rapidly because of energy depletion. If network size is low, then mean energy consumption is greater for AGEM as compared to GPSR [27].Energy efficient and QoS aware multipath routing (EQSR) [39] protocol tries to minimize energy consumption rate to increase the network lifetime. EQSR uses residual energy, available buffer size, and signal-to-noise ratio (SNR) as routing metrics. EQSR increases reliability factor by using XOR-based FEC (forward error correction) technique. As shown in Figure 4, EQSR implements a queuing model, which enables EQSR to handle both real-time and nonreal-time traffic. EQSR discovers node-disjoint paths, which helps in utilizing maximum available network resources. Path discovery phase of EQSR is divided into initialization phase, primary path setup phase, and alternate path setup phase. Each node finds preferred next hop by using the link cost function as defined in [39]. Path discovery phase finds primary and alternate paths. Updated values of metrics are appended on data packets to update previously established paths. This eliminates refreshment overhead.Figure 4
Functional diagram of EQSR.The segmentation of data packets is done before data transmission, in order to split the data packets into equal sized segments. Then, these segments are scheduled for transmission. Before scheduling process, traffic allocation scheme adds error correction code, which helps in recovering from node failures. Efficient data distribution among the available paths is done using weighted traffic allocation strategy. Simulation results show that EQSR outperforms MCMP [40] and RAP [25].Key features are as follows:(i)
It is an energy efficient multipath routing protocol.(ii)
It can handle both real-time and nonreal-time traffic.(iii)
It uses FEC codes to increase reliability.EQSR avoids network-wide flooding of route discovery in case of node failures. It also reduces overhead due to route update messages. EQSR uses FEC codes for increasing reliability, but it increases data redundancy.(3) FRT Based Protocols. The paper [15] defines a real-time fault-tolerant mechanism, which tries to achieve application QoS requirement by utilizing Local Status Indicator (LSI). LSI oversees and assesses the local condition of the nodes and is used to detect network faults. The proposed mechanism enables each node to dynamically adjust its capabilities in order to attenuate performance degradation. As shown in Figure 5, the working of the proposed mechanism is further divided into four submechanisms: (1) neighbor beacon exchange, (2) single hop delay estimation, (3) LSI calculation, and (4) fault recovery mechanisms.Figure 5
Components of scheme proposed in [11].In order to share location information among neighbors and to prolong the lifetime of overloaded nodes and of the whole network, periodic beaconing is used. Therefore, the beacon messages contain location information and residual energy of nodes. Three on-demand beacons, single hop delay estimation beacon, stream DBP beacon, and orphan node removal beacon, are used by the proposed mechanism in order to implement different functionalities. At a regular interval, stream DBP beacons are sent by the sink node to source node as a feedback. The value of stream DBP is propagated to the intermediate nodes, which help them in the fault recovery mechanism. The proposed mechanism calculates DBP at the sink node, by using past packet deadline misses. The factor “distance to failure” of a particular node is known after calculating LSI by usingm,  k, congestion, and link failure level. After calculating LSI, a node can locally decide to implement recovery mechanisms. The paper [15] proposes a routing protocol, which makes optimal forwarding decisions based on LSI, packet deadline, and remaining power. The proposed protocol implements the mechanism defined in [16]. The protocol has five components: routing mechanism, beacon exchange, orphan node back pressure, delay estimation, and calculation of LSI. Each node maintains a neighbor table, which stores neighbor ID, energy level, estimated delay, expiration time, (m,k), deadline, and DBP. The expiration time field is set to standard round trip time (RTT). Simulation results show that the proposed routing protocol outperforms SPEED [28].Key features are as follows:(i)
It is a robust routing protocol, which can fulfill required latency and reliability requirements.(ii)
It uses local system evaluation that reduces routing overhead.(iii)
It ensures timeliness of the stream transfer by choosing a node with qualified LSI.(iv)
It uses fault recovery mechanisms to handle problems like congestion, link failure, and void.(v)
Orphan node back pressure prevents void occurrence.The proposed routing protocol efficiently routes stream packets within delay constraints and provides better fault recovery mechanism.In Table2, latency constrained routing protocols are compared with each other, where suitability for WMSN for each protocol is based on delay, energy efficiency, network lifetime, and performance of routing protocol.


## 3.1.2. Multiple QoS-Constrained Routing

Multiple QoS-constrained routing protocols focus not only on latency constraint, but also on other constraints like load balancing, reliability, congestion, bandwidth, and so forth. Many protocols were proposed by researchers in previous literature.Multipath Multi-SPEED (MMSPEED) [31] is a location based routing protocol, which improves the timeliness and reliability of sensor networks communicating over wireless channels. Reliability requirements are met by using probabilistic multipath forwarding mechanism. The main goals of MMSPEED are as follows: (1) localized packet routing decision making and (2) providing QoS in timeliness and reliability domains. MMSPEED assumes that each node is aware of its location, which makes it more scalable and self-adaptive and removes setup and recovery latency. The virtual isolation of speed layers helps in providing service differentiation. Virtual isolation is maintained by classifying packets according to their speed classes and placing them in priority queues. Probabilistic multipath forwarding mechanism differentiates packets with different requirements. MMSPEED makes proper use of paths without much energy consumption. The back pressure mechanism is employed to remove the void area problem and reduce the incoming traffic. MMSPEED greatly relies on MAC protocol for priority based access to medium depending on speed layer, reliable multicast delivery of packets, and calculation of loss rate and average delay to individual neighbors. MMSPEED relies on EDCF mode of IEEE 802.11e standard.Key features are as follows:(i)
It is a location based and query driven routing protocol.(ii)
It focuses on both timeliness and reliability.(iii)
It is a multipath routing protocol.(iv)
It can solve the void area problem.MMSPEED uses redundant path selection techniques and prevents unnecessary flooding to improve reliability, network lifetime, and load balancing. But MMSPEED does not consider hop-count as one of the routing metrics and it does not consider energy consumption directly. Moreover, the multicast capability of EDCF results in an increment in total size of packets, which in turn increases power consumption.Distributed aggregate routing algorithm (DARA) [41] is a multisink, multipath, and location aware protocol, which implements the model for achieving multiconstrained QoS (MCQoS). The main goal of [41] is to improve path reliability and delay guarantee while preserving the battery power. MCQoS is a location aware routing scheme which defines three metrics: (1) residual energy, (2) expected sojourn time of packet at the receiving node, and (3) geographic progress towards the destination. It proposes selective greedy forwarding (SGF) to reduce energy consumption and interference [41]. Delay-differentiated packet scheduling (DDPS) reduces packet drop due to deadline failure [36]. DDPS separates queues for time-constrained and non-time-constrained packets in the MAC layer. Further MAC protocol is modified to give higher priority to time-constrained data packets in two levels: (1) internode and (2) intranode. This modification also allows us to control transmission power and save battery and reduce interference. Nodes in DARA algorithm dynamically decide when to broadcast BEACON messages. Simulation results show that DARA outperforms MMSPEED [31] and MCMP [40].Key features are as follows:(i)
It is a fully localized algorithm which means there is no need to maintain any global state information.(ii)
It supports both static and dynamic network topologies.(iii)
It increases reliability by sending duplicate packets from the source node.(iv)
It modifies MAC to give more priority to real-time traffic.DARA reduces energy by using the power control transmission scheme and reducing retransmissions; it also optimizes the trade-off between reliability and delay. But DARA does not provide efficient solution to void problem and it increases routing overhead due to duplicate packet transmission.Real-time routing protocol with load distribution (RTLD) [42] ensures high packet throughput with minimal packet overhead and prolongs the network lifetime. A novel communication method called “geodirection-cast forwarding” is proposed in [38], which is a combination of both geocast and directional forwarding. It also introduced a mechanism to compute optimal forwarding based on packet reception rate (PRR), remaining power of sensor nodes, and packet velocity over one hop. This optimal forwarding helps in balancing the load of real-time traffic. There are four modules in RTLD: (1) location management, (2) routing management, (3) power management, and (4) neighborhood management. Location management module calculates the location of nodes using the location of predetermined neighbor nodes. The power management module determines the state of the transceiver and the transmission power of sensor nodes. Neighborhood management module discovers a subset of forwarding candidate nodes and maintains a neighbor table of forwarding candidate nodes. Routing management module computes optimal forwarding choices and makes all routing decisions. It further contains submodules: forwarding metrics calculation, forwarding mechanism, and routing problem handler. RTLD outperforms SPEED [28] and RTPC [43].Key features are as follows:(i)
It is a location based routing protocol, which combines geocast forwarding with link quality.(ii)
It maximizes the velocity and remaining energy to achieve delay bounds.(iii)
It uses neighborhood and power management policies.(iv)
It can efficiently detect and bypass holes.(v)
It supports query based services and focuses on load balancing.RTLD can deliver data within delay bounds and minimize miss ratio and energy consumption. The only drawback of RTLD is its high cost of deployment.QoS aware multisink opportunistic routing (QMOR) [44] is an efficient routing protocol, especially designed for delivering real-time multimedia streams on time. The main objective of QMOR is to minimize the energy consumption and meeting the delay and reliability requirements [44]. The use of opportunistic routing scheme enhances the performance of communication by utilizing the broadcast nature of wireless communication. The nodes maintain a forwarder list, which contains a list of nodes that are allowed to forward the broadcasted packets. QMOR focuses on selection and prioritization of the forwarder list to meet application specific QoS requirements.High level of correlation between video information received from adjacent multimedia sensor nodes results in redundant traffic. QMOR uses a correlation-aware differential coding scheme to reduce redundancy. For reducing redundancy and maximizing energy gains, it is very much important to determine source node and its destination node in the same correlation group. This problem is solved using differential coding-based source and intermediate selection (DCISIS) protocol. Simulation results show that QMOR outperforms CAQR [45].Key features are as follows:(i)
It is a QoS based multisink routing protocol, which implements an opportunistic routing scheme to reduce energy consumption.(ii)
It implements priority based forwarding.(iii)
It can evaluate expected communication cost.(iv)
It meets the reliability and delay requirements.QMOR greatly improves video transmission quality and energy efficiency. But QMOR does not provide service differentiation in heterogeneous networks.Latency and Reliability-Aware Geographic Routing (LRGR) [46] is a hierarchical routing protocol, which focuses on mobility prediction and energy-aware cluster formation. Each node stores information about two-hop neighbor nodes and adjacency table. Working of LRGR protocol is divided into several rounds. Each round consists of two phases: clustering phase and routing and data transmission phase. Clustering phase is further divided into energy exchange, CH setup, and cluster formation. Cluster maintenance is implemented as required during routing and transmission phase. Energy efficient neighbor discovery protocol (ENDP) is used at MAC layer because it is a low duty beacon-enabled MAC protocol.In clustering phase, each node broadcasts its residual energy. After energy exchange, sensor nodes calculate average residual energy of their neighbors. The node with a maximum ratio of residual energy/average residual energy becomes CH. For mobility prediction, link expiration time (LET) is calculated, which is computationally less complex. Another factor called linear quality estimation (LQE) is calculated at each sensor node, which is based on previous receptions and transmissions. Both LET and LQE are used by nodes to choose between the CHs. In order to use the most stable path, the main focus is on factors like balanced energy usage, connectivity, position, and congestion. LRGR uses connection reliability metric, forwarding progress metric, and aggregated path metric. Simulation results show that LRGR outperforms VIBE [47].Key features are as follows:(i)
It is a location based hierarchical routing protocol.(ii)
It uses energy-aware cluster setup phase.(iii)
It uses mobility prediction based clustering, which estimates link quality and improves reliability.(iv)
It defines forwarding progress metric to evaluate end-to-end delay and packet loss.LRGR guarantees low latency and maintains a balance between energy efficiency and reliability. But in case of highly mobile environments, LRGR suffers because of limited bandwidth, error-prone wireless channel.Multiconstrained routing algorithm (MCRA) [48] is based on query-flooding and query driven data delivery models. In MCRA, special messages called “interest” are used to query an event. The MCRA borrows the idea of the logical coordinate system. Logical Coordinate System is a localized approach which calculates the coordinates of nodes using hop-count information. This approach drastically reduces message overhead. Both geographic information based routing and virtual coordinate system based routing algorithms sometimes result in route failure due to inaccurate node coordinate information. MCRA implements message suppression techniques to reduce redundant transmission and retransmission of messages caused by collisions. In MCRA message suppression is done using restraining forwarding and deferring forwarding. Both try to reduce the amount of interests by restraining and deferring forwarding node. Extensive simulation performed in [48] shows that MCRA outperforms agent based DD [49] and SPEED [28].Key features are as follows:(i)
It is a logical location based multiconstrained routing protocol which supports query based services.(ii)
It focuses on reliability and energy efficiency.(iii)
It implements message suppression techniques to reduce redundant packets.By using the logical location based technique, MCRA reduces routing overhead and it also minimizes redundant messages. But MCRA does not consider reliability and bandwidth.Multiconstrained routing protocols are analytically compared in Table3, which contains characteristics features, suitability for WMSNs, performance metrics, type of network, energy efficiency, network lifetime, and performance results of routing protocols.


## 3.2. SI Based Routing Protocols

SI based routing protocols are inspired by the collective behavior of intelligent biological species (e.g., ant colonies). SI based routing protocols simulate the behavior of these species by using mobile software agents. These agents intelligently perform problem solving tasks, in coordination with other agents. Stigmergy plays an important role by supporting communication between the agents, through the environment. SI based routing protocols are scalable, fault tolerant, adaptive, fast, and autonomous. In addition to this, these protocol’s operations are modular in nature and they can be executed in parallel. Due to these reasons, SI based routing protocols have become a better alternative to the routing problem. For more than two decades, ant colonies have motivated the design of various novel algorithms [6].Distributed Stigmergic Control for Communication Networks (AntNet) [14] is an adaptive, distributed, and mobile agent based Monte Carlo system which is used for routing of multimedia traffic. AntNet implements adaptive learning of routing tables using agents called forward ants and backward ants. At fixed intervals forward ants are sent from any network nodes towards a destination to discover feasible, low-cost path. Routing decisions are based on pheromone trails left by ants. QoS Parameters such as residual energy, delay, and bandwidth are used to calculate forwarding probability, which makes the process of exploration adaptable according to traffic distribution. When a forward ant reaches the destination, backward ants are generated. Backward ants update routing tables.Key features are as follows:(i)
It is an adaptive and hybrid routing protocol.(ii)
It uses ACO algorithm and reinforcement learning to solve routing problem.(iii)
It is a multipath, multiobjective, and multiconstrained routing algorithm.(iv)
It is stochastic in nature.(v)
It delivers the data in real-time latency constraints.AntNet algorithm provides better throughput as compared to classical routing protocols. But AntNet is very slow as it requires ant agents to reach at the destination without updating routing tables [50] and its routing overhead is very high.Multimedia-Enabled Improved Adaptive Routing (M-IAR) [51] is an extension of Improved Adaptive Routing (IAR) algorithm [52]. M-IAR is an ant-based flat multihop routing protocol which incorporates some extra multimedia QoS parameters (end-to-end delay and jitter) as compared with IAR. It also supports fault tolerance and self-organization without any need for global route information. Novelty of M-IAR protocol is that it considers the closeness of next-hop neighbors towards the sink but also takes into account the distance of the neighbor from the sender node [46]. This protocol gives a reliable solution as it piggybacks end-to-end acknowledgement packets. M-IAR assumes that each node in the network knows its own position and all other nodes through GPS. In 98% of test cases, M-IAR successfully found the shortest path within the first three route discovery attempts by forward ants [51].Key features are as follows:(i)
It is a localized and ant-based routing protocol.(ii)
It is an improved version of IAR algorithm.(iii)
It focuses on energy efficiency and end-to-end delay, jitter.(iv)
It is self-organized, adaptive, and fault tolerant in nature.M-IAR provides reliable solution and it can be configured for both acknowledgement-based and non-acknowledgement based approach. But M-IAR needs high cost of deployment and it does not concentrate on load balancing between nodes and scalability. Moreover, M-IAR’s performance degrades due to hole creation and exponential increase in overhead, in case of high network load.Ant-based service-aware routing (ASAR) [53] is an ant-based service-aware hierarchical routing protocol for wireless multimedia sensor networks. It facilitates three types of basic services (query driven, data driven, and stream driven). This protocol uses the concept of “pheromone quantization” to improve ant-based optimization algorithm. This quickens the convergence of ASAR. The proposed algorithm is made to run in all CHs. It finds three different routes for each type of services by positive feedback mechanism used in ACO and the results are stored on CHs, respectively. QoS parameters such as delay, packet loss rate, network bandwidth, energy consumption, and network lifetime are used as routing metric. Extensive simulation verified that ASAR performs better than Dijkstra and DD [49]. This algorithm is often used for optimized routing and load balancing in telecommunications and networks.Key features are as follows:(i)
It is a clustered, ant colony optimization based routing protocol.(ii)
It supports both query and data driven services.(iii)
It uses pheromone quantization to accelerate the convergence of the algorithm and optimize the network resources.(iv)
It supports three kinds of services in WMSNs and meets QoS requirements and improves network performance.ASAR converges more quickly and it supports three types of services and meets diverse QoS requirements. But ASAR’s performance degrades due to bottleneck problem and repetitive usage of optimal paths [10].Ant Colony Optimization-based Load-Balancing Routing Algorithm (ACOLBR) [54] is a biologically inspired hierarchical routing algorithm. ACOLBR is further divided into intercluster routing and intracluster routing. Intracluster routing uses minimal spanning tree (MST) algorithm to construct MST with CHs as the root. Intercluster routing finds a path with minimal cost from source node to the destination node and some suboptimal paths using ACO algorithm. ACOLBR enhances the exploring ability of ants by introducing maximum and minimum value of pheromone density values. It also improves transmission efficiency by splitting the stream, when data amount is greater than the path’s maximum flow. Simulation results and analysis show that ACOLBR has better adaptability, can achieve load balancing, reduces the end-to-end delay, and prolongs the network lifetime as compared to AGRA [55] and M-IAR [51].Key features are as follows:(i)
It is a swarm-based, hierarchical, and multipath routing protocol.(ii)
It focuses on congestion control.(iii)
It uses the minimum spanning tree algorithm to create MST.(iv)
It has enhanced the exploring ability as compared to other ACO techniques.ACOLBR can recover from path failure by setting pheromone value to zero and then sending an error message to sender. But ACOLBR requires more complex calculations to find optimal route and heavy load results in a bottleneck situation over CHs.Ant Colony Optimization-Based QoS Routing Algorithm (ACOWMSN) [56] is a reactive routing protocol, which focuses on four QoS metrics. ACOWMSN finds routes which meet application specific QoS requirements. Artificial ants wander around the network in order to find paths which meet the requirements. ACOWMSN uses two types of artificial ants: forward ants and reverse ants. Forwarding ants store information fields like minimum residual energy and cumulative queue delay and packet loss and memory of node visited, in order to evaluate the route in terms of QoS. ACOWMSN protocol finds minimum cost route using heuristics. At each node, next forwarding node is found by calculating the probability. Routing in ACOWMSN is divided into two stages: route discovery and routing confirm. In route discovery stage, forward ants are sent towards the destination node using broadcast or unicast approach. Broadcast approach is used only when current node does not know about the destination node. In routing confirm stage, forward ants are converted into backward ants. Backward ants travel from the destination node to source node. Backward ants update the pheromone table of every intermediate node.Key features are as follows:(i)
It is an ant colony based routing protocol.(ii)
It is reactive in nature; therefore, it finds route only when it is needed.(iii)
It is adaptable to any change in network conditions.(iv)
It is an energy-aware and QoS based routing protocol.ACOWMSN can satisfy bandwidth, delay, and packet loss rate requirements and increase the network lifetime. But in large-scale WMSNs, it is very much difficult to determine the protocol parameters and therefore algorithm converges very slowly.AntSensNet [57] combines features of both hierarchical network structure and Ant colony optimization based routing. It is specifically designed for WMSNs and hence it meets application specific requirements. It is based on T-ANT [58]. Just like T-ANT [58] algorithm, its operation is split into rounds. Each round is further divided into t cluster setup phase and steady phase. It uses special types of agents for cluster setup called cluster ants (CANTS). The node with CANT becomes CH. HELLO packets broadcasted by each node constantly contain information regarding its ID, clustering pheromone value, and its state. The clustering pheromone value decides if the current node is suitable to become CH. A tunable factor called “cluster radius” determines minimum distance between two CH nodes.Routing tables in AntSensNet are updated in three phases: forward ant phase, backward ant phase, and route maintenance phase. Forward ants are generated if there is no satisfactory route to the sink node. Forward ants carry information regarding routes they travel. The routes are evaluated when they reach the sink node. If the evaluated route does not meet application specific requirements, then forward ants are discarded; otherwise, backward ants are generated in order to update the pheromone values. Backward ants travel the reverse path. Maintenance phase handles the congestion and lost link problems. Figure6 shows diagram of traffic classifier used by AntSensNet to handle and schedule four different types of traffic classes.Figure 6
Traffic classification process used in AntSensNet.Key features are as follows:(i)
It is a hybrid routing protocol, and hence it comprises reactive as well as proactive components.(ii)
It implements both ACO based routing and clustering.(iii)
It supports a power efficient multipath video packet scheduling in order to minimize the distortion in video transmission.(iv)
It uses completely distributed clustering algorithm.(v)
It can handle different types of traffic classes.AntSensNet can handle congestion problem. It is scalable and multipath and it provides better video quality in terms of distortion as compared to ASAR [53] and TPGF [59].Hop and load based energy-aware routing protocol (HLEAR) [60] is a swarm-based, reactive, self-organizing routing protocol, which avoids hole and increases network lifetime. HLEAR’s main aim is to find completely or partially disjoint path with relative minimum distance. It uses hop-count, rate of forwarding nodes, and residual energy as metric, to find an efficient path for routing multimedia streams. Based on these values, another routing metric β is calculated. Path with the lowest value of β is considered as best path. The protocol operation is further divided into route discovery and path establishment phases. In route discovery phase, RREQ is broadcasted in a controlled manner. When RREQ reaches the sink node, it does not need to analyse path selection, as the path has been already scanned by intermediate nodes. In path establishment phase, destination node sends a route reply message RREP via reverse path. Simulation results show that HLEAR performs better than Tiny AODV in terms of energy efficiency and throughput [60].Key features are as follows:(i)
It is a reactive, swarm-based, and energy efficient routing protocol.(ii)
It avoids holes by stopping nodes from taking part in route discovery phase, if their energy is less than 0.5 J.(iii)
It finds the minimum distance to destination by finding disjoint paths.(iv)
Unlike LEAR, it considers hop-count as routing metric.HLEAR provides better throughput and energy efficiency than Tiny AODV [60], but it cannot handle congestion efficiently due to which its throughput is very low when frame rate is high.AntHQSeN [61] is a reactive ant-based QoS enabled routing protocol, which works in two phases: (1) route discovery phase and (2) route maintenance phase. The agents called forward ants are created by the source node to find multiple paths to the destination node. They also carry network information in order to evaluate various QoS parameters. AntHQSeN forwards the data packets stochastically. Each forwarding node decides next node based on pheromone values, which makes the protocol adaptable to any change in the network. The route setup phase is completed when destination nodes generate backward ants to update the pheromone tables. Route maintenance phase is activated whenever a node failure occurs. For pheromone calculation, various factors like residual bandwidth, residual energy, and route cost are considered. In AntQHSeN protocol hello ants play a major role in immediate neighbor discovery, exchanging information about the bandwidth, timestamp, energy, and pheromone concentration. Extensive simulation results show that AntQHSeN performs better than AODV [36] and EEABR [62].Key features are as follows:(i)
It is a reactive ant-based routing protocol for heterogeneous sensor network.(ii)
It can work fine in both static and dynamic topologies.(iii)
It treats multimedia and scalar traffic differently.(iv)
It uses a special flag to give an option to use the admission control scheme or not.AntQHSeN provides a more consistent solution due to its reactive route discovery mechanism as compared to EEABR. But AntQHSeN lacks sufficient information at the beginning to find routes. Its setup time is directly proportional to the time needed for convergence of the algorithm. But still the discovered routes are better in terms of quality than those found by AODV [36].An agent-assisted QoS-based routing (QoS-PSO) [63] is an agent based routing protocol, which focuses on delivering application based QoS services by using practical swarm optimization (PSO) technique. The synthetic QoS parameters are used as parameters of the objective function of PSO. QoS-PSO uses two different types of agents called forward agent and reverse agent in order to find out the optimized route. The synthetic QoS metrics are stored in agents. Forward agent’s aim is to find a new route to the destination nodes. If the new route can provide required QoS, then reverse agents are created. All the information stored in forward agents is copied to reverse agents. Reverse agents travel in the reverse direction and update routing tables of all the nodes lying on the newly found path. The algorithm firstly selects the source and destination nodes and uses forward agent and reverse agent to establish a new path to destination. The QoS of each path is evaluated to obtain local best values. Iteration formulae are used to find a new routing path and its QoS is evaluated. If the QoS of a particular path is better, then it is made global best solution. This process is iterated until required values are achieved. After this, global best solution is used to determine the path and update routing table.Key features are as follows:(i)
It is an agent based routing protocol, which uses PSO for optimizing synthetic QoS.(ii)
It uses agents which participate in the routing path establishment and maintenance.(iii)
It focuses on improving QoS metrics like delay, bandwidth, packet loss, and energy.QoS-PSO shows improvement in QoS metrics by more than 60% and 20%, if compared with AODV [31] and EEABR [57], respectively.A QoS-aware routing algorithm based on ant-cluster (ICACR) [64] is a hierarchical routing protocol for WMSNs, which integrates clustering and IPACR [64]. IPACR is a flat routing protocol, which outperforms standard ant colony routing algorithm (SACR). The principle disservice of SACR is that it considers the performance of every link between nodes and their neighbors as equivalent and sets the same initial pheromone value. IPACR protocol maintains a neighbor-list, which stores information regarding adjacent nodes. IPACR ensures that there is at least one feasible path. Based on the assumption “if a hello packet arrives earlier at a node, then it can be implied that the path is optimal,” the optimality of paths depends on log SEQ. Therefore, IPACR sets more initial pheromone value of nodes with smaller log SEQ. The overall performance of routing protocol depends on the pheromone update procedure followed by forward ants and backward ants.ICACR uses “divide and conquer” methodology to improve the scalability of the network. The network is divided into a number of clusters. The total number of subnetworks in the original network is one more than the total number of clusters. The additional subnetwork consists of sink node and all the CHs. IPACR protocol finds local optimal paths in each cluster.Key features are as follows:(i)
It is an ant-based hierarchical routing protocol.(ii)
It uses IPACR routing in order to find local optimal paths.(iii)
It is a multipath routing protocol.(iv)
It is a scalable protocol, which can meet QoS requirements for WMSNs.IPACR converges faster than SACR. ICACR is more scalable, energy efficient routing algorithm as compared to IPACR, SACR, and Dijkstra. But if the source node is placed near the sink node, then the performance of ICACR goes down.Feedback-Enhanced Learning Approach (FROMS) [65] is an in-network protocol which learns by using local information about network topology and tries to converge to optimal routing paths. It assumes that each sensor has to route sensed data to multiple number of sink nodes.Key features are as follows:(i)
It is an intelligent routing algorithm based on reinforcement learning.(ii)
It uses local information and optimizes route using feedback mechanism.(iii)
It considers equal cost paths to minimize energy consumption.The technique uses three main phases, namely, sink announcement, exploration, and stable data gathering.In Phase I, each sink broadcasts request message to entire network which contains time to live (TTL), sink ID, and number of hops. When a node receives this message, it verifies if the message has been already received. If entry is already there in routing table and it has less hop-count, received message is not processed. If there is no routing table entry or the entry has more hop-count, routing table is updated and message is broadcasted with decreased TTL and increased hop-count.In Phase II, all best possible paths are discovered. This phase initiated, when a data packet is received. Fitness function gives the route cost based on single or multiple variables for a set of sinks. The proposed algorithm uses Route Length Estimate (RLE) as metric to decide the fitness of a path, which is equal to total number of hops. Each node organizes the available options for next hop and makes selection task manageable using Path Sharing Tree (PST). Nodes can manage the complex task of data delivery to multiple sinks by using PST. Using PST gives an extra advantage of escaping the path with loops. Updated RLE are shared in form of feedback when the package is rebroadcasted by upstream node. This feedback mechanism results in better decision-making over time. According to selected exploration strategy, Phase II ends and stable data gathering phase starts where sender node starts transmission to set of sinks. Whenever the PST changes Phase II is reinitiated.FROMS minimizes the energy consumption by considering equal cost paths and switching between them to increase the lifetime of overall network. FORMS is compared with implementation version of directed diffusion [49]. Simulation results show FORMS performs better.Strength Pareto Evolutionary algorithm (SPEA) [66] uses genetic algorithm (GA) and tries to optimize various QoS parameters such as bandwidth, delay, traffic, and hop-count. GA is best for multiobjective problems where the values to be optimized are more than one. There is no ideal “optimal” solution for such problems. There are sets of solutions, in which improvement in one objective leads to degradation in other objectives. The main objectives of SPEA are to optimize the QoS parameters and provide adaptive route with optimized delay.Key features are as follows:(i)
It is an intelligent routing algorithm based on GA.(ii)
It tries to optimize four QoS parameters.(iii)
It quickly adapts to changes in network topology.Route discovery in SPEA is carried out at MAC layer of TCP/IP model; therefore, the MAC is redesigned to support the algorithm. To make the process clear, it is designed into two modules: QoS routing module and GA module. Data exchange between the modules is bidirectional. GA generates new routes by combining the existing routes with common node and destination.QoS routing module on receiving a data transfer request checks for a route to the destination. If route to the destination is not available, then it initiates route discovery procedure by transmitting smart agents. When source node receives RREP, it follows the reverse path and updates the table. When RERR message is received by source node, it uses GA module. Available entries in buffer are used as initial population and fitness function is applied and optimally finds the destination node with desired QoS requirements. If there is no RERR then the buffer is used to find route to destination. The buffer is evaluated periodically to maintain the efficiency of system.The proposed protocol is compared with AODV [36] and QoS-AODV [67] routing and simulation results show it outperforms both.Further work done in [68] has proved that using implementation of SPEA and changing the objective functions has increased the performance of system 15 times [68]. The paper has used similar approach and used expected transmission count and delay as objective functions. The expected transmission count (ETX) metric is the expected total number of transmissions. It is calculated using link quality and neighbor link quality. Link quality can be seen as probability that packet originated at node successfully arrives at a subsequent node and neighbor link quality is a measure of quality in opposite direction.Beesensor [69] is an on-demand SI based reactive, event driven, energy efficient, and scalable routing protocol, which is inspired from behavior of honey bees.Key features are as follows:(i)
It is an intelligent routing algorithm based on Honey bee optimization.(ii)
It minimizes the communication and processing cost.(iii)
It is energy-aware, scalable, and efficient.Honey bee optimization uses recruitment and agent communication energy efficient foraging and multiflower-site foraging mechanism found in bee colony [69]. There are four types of agents: packers, scouts, foragers, and swarms. Packers are like food storer bees in hive. They receive packets from upper layer and find appropriate forager for them. Scouts explore the network in search of a potential sink node. Foragers play an important role in carrying packets to the sink using predetermined path. They also evaluate the quality of the path and give updates to other foragers. Foragers are piggy-backed in the link layer acknowledgement packets to source node. Foragers wait for certain amount of time at sink node and build a swarm of waiting foragers, which is transported back to source node. The algorithm is divided into four phases: scouting, foraging, swarming and routing loops, and path maintenance.Scouting is further divided into forward scouting and backward scouting. Packers look for the appropriate forager to transfer an event at a sensor node. If a packer fails to find forager it launches forward scout with source ID, scout ID minimum remaining energy, and number of hops fields in header. This scout is then broadcasted to neighbor. Interested sink converts the forward scout into backward stable. The algorithm maintains three tables: routing table, probability-distribution table, and a forwarding table. Source node maintains routing table and probability-distribution table. Forwarding table is maintained by sink and forwarding nodes. Sink node creates forwarding table entry from the received scout header information and replies with backward scout with same information fields. After discovering the route, foragers transport events to sink node. Packer selects a forager stochastically based on probability-distribution table. Intermediate node does not make routing decisions; next hop is found using path ID.Swarming encapsulate foragers with identical path ID at sink node. The swarm is routed towards the source node using forward table entries. Swarming also helps in path maintenance. The path becomes invalid when the dance number becomes zero for a particular entry in routing table, which is deleted after some waiting period. Simulation results show that BeeSensor outperforms FP-Ant [70], EEABR [71], and AODV [36].Bee-Sensor-C [72] is an on-demand event driven multipath routing algorithm based on dynamic clustering scheme and BeeSensor [69]. Bee-Sensor-C reduces the routing overhead and scalability as compared to BeeSensor. It follows multipath construction methodology to increase the overall lifetime of network.Bee-Sensor-C is divided into three phases: cluster formation, multipath construction, and data transmission. In the second phase, various improvements are made to BeeSensor for finding multipath between CH and relative sink and the path is selected stochastically for data transmission.BeeSensor is poor in overall performance, when all the nodes near the event need to send data to sink node. Bee-Sensor-C adds a new agent called HiveHeader to bee hive for each sensor. Its major responsibility is to claim the node wants to be cluster head node.Nodes having information about the cluster join the cluster and the clustering region is called event-subnetwork. Any node can decide to join a cluster based on received signal strength. If a node receives multiple HiveHeader from different node it chooses the node with higher residual energy. The node, which sends the HiveHeader first, becomes the CH node. The node with higher residual energy and closer to event sends HiveHeader earlier and is more likely to become CH node. Each cluster has its TTL; if remaining energy of CH gets lower than 60%, CH selection starts again.Like BeeSensor [69], Bee-Sensor-C utilizes forward scouts to explore the network. CH broadcasts a forward scout to its neighbors. The scouts are self-destructed when the hop-count is more than H_max, to avoid the communication overhead. Backward scout travels back to CH node using previous hop information in cache. Bee-Sensor-C also modifies the reward mechanism to include the average residual energy factor. When the backward scout arrives at CH with new path, it recruits foragers using “waggle dance” [72]. The simulation results show that Bee-Sensor-C outperforms FF-Ant [70], BeeSensor [69], and IEEABR [73].EQR-RL [74] is energy-aware QoS routing which uses reinforcement learning. EQR-RL uses control flooding algorithm for updating the latest changes to the network. Each node uses header of its neighbor data packet to maintain up-to-date information about the routes.Key features are as follows:(i)
It is an intelligent dynamic routing algorithm based on reinforcement learning.(ii)
It focuses on various QoS requirements like latency hop-count and so forth.(iii)
It utilizes data packets to get latest information of neighbors.If a node does not hear any packet from a neighbor, it removes it from its routing table. The routing packet contains neighbor ID, timestamp, number of packets sent, end-to-end delay, and minimum residual energy in route.When a node sends a packet to its neighbor, it starts the timer to calculate the round trip time. The receiver node finds the next node and updates the receiver address in data packet. After that, it updates minimum residual energy field. The feedback information is piggybacked in the header of data packets.Exploration strategy provides the trade-off between exploring the low-cost routes and all possible routes. So it usesε-greedy method for random selection of next hop for exploration [74].When a node receives a data packet, it accesses various parameters from the packet and compares those parameters with the routing table entries. If it does not find any route, it sends the packet with best effort; otherwise, it selects next hop using roulette wheel. Simulation results show that ERQ-RL outperforms QoS-AODV [36], RL-QRP [75], and RSSI [76].FTIEE [77] is an intelligent clustering based routing protocol, which aims to reduce energy consumption and make the system more reliable. It focuses on three parameters, namely, network lifetime, packet delay, and delivery. In this routing algorithm, learning and routing phase are realized at the same time, which reduces overall energy and overhead of the system.Key features are as follows:(i)
It is an intelligent cluster based routing algorithm based on reinforcement learning.(ii)
It makes system more reliable and reduces packet delay.(iii)
It increases the lifetime of system.In this algorithm, any node can act as CH and CH is chosen by election done by means of learning machine. Number of clusters is constant and clusters closer to sink are smaller as compared to the other clusters, size of cluster increases with increase in distance between the clusters and sink. CH nodes have multihop communication to the sink, and sensor nodes do not need to know about the CH.FTIEE uses Q-learning technique [78] to select the optimal CH node and reduce the cost of CH-sink data transmission to minimum. Each sensor node is independent learning agent and therefore chooses to forward data to neighbor or select itself as CH node. The reward system in protocol is calculated using distance between node and sink and residual energy of node. In simulation, results show that it outperforms LEACH [79], HEED-NPF [80], and EECS [81].SI based routing protocols are analytically compared in Table4, which contains characteristics features, suitability for WMSNs, performance metrics, type of network, energy efficiency, network lifetime, and performance results of routing protocols.


## 3.3. Based on Network Structure

Based on network structure, routing protocols are classified into three different categories: (1) flat routing; (2) hierarchical routing; and (3) location based routing.


### 3.3.1. Flat Routing Protocols

In flat network architecture, all the nodes have the same responsibilities. Flat routing protocols are also called data-centric routing protocol. A BS is responsible for sending requests and queries. However, the sensor nodes can sense the physical environment and transfer the data to BS. Flat routing protocols use data aggregation to reduce redundant data, which ultimately reduces energy consumption. But flat routing protocols are not able to fulfill application specific latency requirements. These protocols suffer due to high routing overhead, delay, congestion, and low versatility.Real-Time and Energy-Aware Routing (REAR) [82] protocol is a multipath routing algorithm which also reduces energy consumption of links and trades off the relationship of energy and delay. In REAR, metadata is used to find routing paths. Use of metadata stops repeated retransmission of exactly same packets; thus, huge bandwidth is saved. Metadata is used for routing discovery processes. REAR uses Optimized Dijkstra Algorithm which is used to select a link with lowest weight among marked nodes. For QoS determination factors like time delay, bandwidth, and remaining energy are included. In order to guarantee real-time transmission and reduce queue delay, a “classified queue model” is introduced to each node. For link cost evaluation, estimated distance, remaining energy, and queuing delay are used.Key features are as follows:(i)
It is a metadata based routing protocol, which supports query based services.(ii)
It focuses on energy efficiency and end-to-end delay.(iii)
It uses modified Dijkstra algorithm.(iv)
It implements “classified queue model” to reduce queuing delay.REAR reduces repeated retransmissions and energy consumption by using meta-data for route setup. But REAR does not consider reliability and bandwidth requirements. The concept of metadata in streaming applications consumes a lot of energy and bandwidths.Load Based Energy-Aware Multimedia Routing (LEAR) [83] protocol is a reactive, self-organizing, and energy efficient protocol. LEAR is AODV [49] based protocol. Here active routes refer to the number of routes for different sources in which a node is participating. For route selection, a special factor (“route selection factor β”) is calculated by forwarding nodes. If node’s power reaches 25% of its total power, then it is labeled as “Swap Node.” Swap Nodes do not take part in routing; they transmit packets only in certain critical conditions. So LEAR also has the ability of hole avoidance. LEAR finds disjoint path, if it is available. If disjoint path is not available, then it finds a partial disjoint path. Creating a partial disjoint path increases the hop distance, but it ensures high throughput, reduces congestion, and lowers the latency. This makes LEAR perfectly suitable for routing of multimedia traffic. Simulation results show that “the number of paths selected increases with the increase in the number of multimedia nodes within the event region” [61].Key features are as follows:(i)
It is a reactive, multipath, self-organizing, and event driven routing protocol.(ii)
It focuses on energy efficiency, reliability, and load balancing.(iii)
It can avoid holes efficiently.(iv)
It finds disjoint paths in order to reduce congestion and meet delay bounds.LEAR can find disjoint path while maintaining load balance between the nodes and increase network lifetime. The main drawback of LEAR is that it does not consider delay, reliability, network lifetime, and bandwidth requirements. Table 5 shows comparison of flat routing protocols.


### 3.3.2. Routing Protocols

Initially, hierarchical protocols were proposed for routing in wired networks [84]. However, they are also suitable for WMSNs. In hierarchical routing protocols, the entire network is divided into different levels. Nodes at different levels have different responsibilities. Generally, the protocol consists of two routing layers only, and data flows from a low level layer to a higher level layer. The nodes with the higher capabilities and responsibilities are known as CHs. Each CH can directly communicate with the BS. The rest of the nodes are called child nodes or cluster members, which associate with CHs to form clusters. Child nodes can only communicate with their CH. The advantages of these protocols over flat routing protocols are as follows: they are more scalable, energy efficient, and reliable. Overall performance of protocol depends on the process of formation of clusters.Energy efficient and perceived QoS aware video routing (PEMuR) [85] is a novel energy-aware hierarchical routing protocol for WMSNs, which uses intelligent video packet scheduling scheme and predicts the video distortion. It is based on scalable power efficient routing (SHPER) protocol [86]. CHs are further categorized into upper level CHs and lower level CHs. Upper level CHs are near BS and can transmit data directly to the BS. Whereas lower level CHs are far from the BS, distant nodes route their messages to the BS by multihop routing. PEMuR is divided into two phases: (1) initialization phase and (2) steady state phase. The initialization phase starts with the creation of TDMA schedules for all nodes to advertise themselves and calculate relative distances between them. Random numbers of upper and lower CHs are elected by the BS. Non-CH nodes associate with CH having maximum signal strength. In steady state phase, BS elects a node with maximum residual energy in each cluster as CH.In case of nonavailability of sufficient bandwidth, each sensor node drops video packets to reduce the retransmission rate. The packets to be dropped are chosen wisely in order to minimize overall video distortion using video distortion model [85]. The video distortion is measured in terms of Mean Square Error (MSE). The model also takes into account the random behavior of wireless medium; hence, it can predict video distortion accurately. Simulation result shows PEMuR outperforms TEEN [87].Key features are as follows:(i)
It is an energy-aware hierarchical routing protocol.(ii)
It uses an intelligent video scheduling scheme.(iii)
It is based on SHPER protocol.(iv)
It intelligently handles low bandwidth situation.PEMuR ensures that minimum power is consumed and required QoS is maintained for the transmission of video streams. Also, it can maintain a high level of perceived video quality (PSNR) for uniform and nonuniform energy distributions. But PEMuR is fully dependent on BSs for carrying out the routing process; hence, it is not fully distributed.Energy efficiency QoS assurance routing (EEQAR) [88] protocol is a hierarchical routing protocol, which implements cellular topology to form clusters. EEQAR uses a QoS trust estimation model, which is based on social network analysis. On a social network, the relationship between two individuals is determined by the trust relationship between them. The concept of social network analysis is used by EEQAR in order to ensure energy efficiency and determine trust relationship. For building trust relationships, distributed metrics are introduced in EEQAR. Direct behavior monitoring and indirect information gathering are used in order to calculate trust value.Trust value is calculated by calculating various other factors like transmission delay, frame rate, image quality, and audio quality. On the basis of the geographical position of agents and multimedia sensor nodes, the cellular topology is formed. Agent nodes are always deployed in the center of the hexagon. Agents send advertisement messages with their ID, after deployment. Multimedia nodes join agent node with maximum signal strength. If multimedia nodes have no task, then they can go into sleeping mode. But agent nodes must remain awake.Each node maintains optimization factor table, which stores trust value, energy level, and correlation for each neighbor. The correlation factor estimates correlation between two nodes, which directly affects the fusion process. Each node finds a next forwarding node using optimization factor table. EEQAR operation is divided into various rounds. Where each round is divided into three phases: cluster building, routing probe, and steady state. Cellular clusters are formed in cluster building phase. Intracluster and intercluster routes are built in routing probe phase. Data is collected in steady phase. Simulation results in [88] show that EEQAR outperforms ARCH [89], in terms of delay, energy efficiency, and reliability.Key features are as follows:(i)
It is an energy efficient hierarchical routing protocol.(ii)
It uses “data fusion” process in order to reduce unnecessary data transmission.(iii)
It uses trust analysis to fulfill application specific QoS requirement.(iv)
It uses TDMA at MAC layer to make efficient use of energy resources.EEQAR efficiently improves performance by decreasing delay and energy utilization. But trust relationship is slowly varying and it is not error-free. Direct monitoring increases the energy consumption rate. Table 6 shows comparison of hierarchical routing protocols.


### 3.3.3. Location Based Routing Protocol

The central idea of location based routing protocols is to exploit the knowledge of location of nodes in order to route data packets. The location of the node can be determined using global positioning system (GPS) or other localization techniques like DVHop [90], Amorphous [91], and so forth.Few advantages of location based routing protocols over other routing techniques are as follows:(i)
Minimized routing overhead.(ii)
Efficient bandwidth utilization.(iii)
Fully distributed and stateless nature.(iv)
Scalable and tolerant to route faults.(v)
Less memory and maintenance requirement.However, these routing protocols suffer from “energy hole” problem. Greedy nature of these protocols results in repetitive usage of the same path, if the destination lies in the same region. The batteries of nodes lying on that path drain quickly, resulting in the creation of energy hole. An efficient location based routing protocol must handle and avoid hole problem efficiently.Greedy Perimeter Stateless Routing (GPSR) [27] is a novel routing protocol, which uses the positions of the router and the destination node to make packet forwarding decisions. GPSR uses two modes: (1) greedy forwarding and (2) perimeter forwarding. GPSR packet headers include a flag to indicate the current forwarding mode of the packet. If a packet reaches a region where greedy forwarding is not possible, GPSR recovers by routing the packet around the perimeter of the region. In perimeter mode GPSR forwards packets using planar graph traversal. Further, a packet can again reenter the greedy forwarding mode if any neighbor is closer to the destination node.Key features are as follows:(i)
It is a location based routing algorithm.(ii)
It can detect and avoid the hole problem.(iii)
It supports MAC-layer failure feedback.(iv)
It uses promiscuous mode.(v)
It supports queue traversal.(vi)
It implements planarization of graphs.GPSR has a good packet delivery ratio even when the network density is too high. It requires less memory because there is no need to store full knowledge of the network at each node. There is no need for periodic updating of the table. It is an energy efficient routing protocol. End-to-end delay increases when mobility is high, which in turn makes it unsuitable for handling multimedia traffic [92].Directional Geographic Routing (DGR) [93] protocol is a location based routing protocol, which gives better video transmission quality and prolongs the network lifetime. DGR assumes that any node can send video packets to sink at any instance. It forms multiple application specific disjoint paths to transmit real-time traffic over low bandwidth and unreliable network. Forward error correction (FEC) coding is used in order to make data delivery more reliable. A single real-time video stream is divided into multiple substreams. These substreams are transferred in parallel through disjoint paths, in order to make full utilization of resources. DGR follows the right hand rule to recover from the void problem [27].Key features are as follows:(i)
It is a location based routing protocol.(ii)
It uses disjoint paths to optimize bandwidth and energy and reduce delays.(iii)
It is a fault-tolerant routing protocol.(iv)
It supports various features such as load balancing, fast packet delivery, and good peak signal-to-noise ratio (PSNR).DGR utilizes resources very efficiently, increases the delivery ratio, and reduces end-to-end delay requirements. But DGR is not suitable for WMSNs because it requires additional overhead and hence results in transmission delay in case of fault, and it is impractical to implement for large networks.Two-phase geographic greedy forwarding (TPGF) [59] routing algorithm overcomes various shortcomings of flat routing protocols. TGPF can be efficiently used in multimedia applications. TGPF avoids “Local Minimum Problem” by adopting face routing (right hand rule) as adopted in GPSR. The Label Based Optimization method is adopted to eliminate path circles and optimize the routing path found by TPGF. It is different from existing geographic routing algorithms as it does not adopt face routing to bypass holes. For hole-bypassing, it follows two approaches: (1) hole-bypassing by computing the planar graph in advance without knowing holes or boundary nodes; (2) hole-bypassing by identifying the holes or boundary node information in advance.Key features are as follows:(i)
It is a location based routing protocol which supports event driven services.(ii)
It is a multipath routing protocol.(iii)
It implements GF algorithm.(iv)
It can bypass holes using two different methods.TPGF provides paths with minimum number of hop-counts, but it requires full knowledge of the network; therefore, it is not a scalable protocol.Geographic Energy-Aware Multipath Stream-based (GEAMS) [94] routing protocol focuses on load-balancing and minimizing energy consumption. In GEAMS routing protocol, routing decisions are made without global topology knowledge and there is no need for maintenance of topology changes. Here each node stores information about its one-hop neighbors, which is updated by beacon messages. The information includes estimated distance to its neighbors, the distance of neighbor to the sink, data rate of link, and remaining energy. GEAMS uses two policies: (1) Smart Greedy Forwarding and (2) Walking Back Forwarding. Walking Back Forwarding policy is used when there are no neighbors closer to sink. Otherwise, GEAMS uses the Smart Greedy Forwarding policy.Key features are as follows:(i)
It is a geographical multipath routing protocol.(ii)
It enforces uniform energy consumption and meets delay requirement.(iii)
It works on two policies, Smart Greedy Forwarding and Walking Back Forwarding.(iv)
It can detect and avoid hole problems.GEAMS does not require global topology information and its maintenance and it maximizes network lifetime and guarantees QoS requirements. But in sparse network, GEAMS can cause congestion and packet loss.Energy-Aware TPGF (EA-TPGF) [95] is a routing protocol which is an enhanced version of TPGF [45]. TPGF is a routing protocol, which implements greedy forwarding and step back and mark methods. The first phase in TPGF consists of two methods, greedy forwarding and step back and mark. The greedy forwarding algorithm selects a neighbor closest to the BS as the next node for routing. Step back and mark method is used to handle the situations, when there is not even a single node in the neighborhood that is closer to BS. The second phase of TPGF deals with label based optimizations of path. EA-TPGF defines distance-energy formula, which is used to calculate the score of neighbors; node with minimum value is selected. EA-TPGF also defines the energy cost transmission formula to calculate the cost of energy consumed by the transmitter.Key features are as follows:(i)
It is an enhanced version of TPGF.(ii)
It focuses on energy efficiency.(iii)
It uses distance-energy formula and energy cost transmission formula to evaluate the path.(iv)
It also uses GF algorithm to route the data packets.EA-TPGF routing protocol greatly reduces the energy consumption rate in WMSNs as compared to TPGF. But EA-TPGF increases the average delay of nodes and it always uses the same discovered paths again and again.Pairwise directional geographical routing (PWDGR) [96] is a multipath routing protocol, which solves the energy bottleneck problem. PWDGR is proposed based on DGR [93]. It makes full use of nodes around the sink. PWDGR finds pairwise nodes around the sink for data transmission. After the data is transferred to pairwise nodes, pairwise node sends data to sink.Routing in PWDGR is divided into three stages:(I)
In first stage video data is collected and packed, and then the data is broadcasted. Broadcasting saves energy and reduces delay.(II)
After receiving neighbor nodes check if they are in the cooperative node list. If yes, then they calculate coordinates of the next neighbor node.(III)
In the third stage, source cooperative node is selected. Two rules are used to select a source cooperative node: (i) based on cumulative numbers to be selected for cooperative node and (ii) based on distance between ideal point and neighbor node.Key features are as follows:(i)
It is a multipath, location based routing algorithm.(ii)
It uses the concept of pairwise nodes to fully utilize the nodes around the sink.(iii)
It increases the network lifetime by nearly 70%.(iv)
It is reliable and fault tolerant and improves network bandwidth.Use of pairwise nodes in PWDGR around the sink makes full use of nodes within 360° so the energy of nodes around the sink is utilized, to increase the network lifetime. DGR scheme suffers due to energy hole around the sink. If the sink is at the edge of the network, then PWDGR degenerates into DGR algorithm. Also, it increases the delay by 8% as compared to similar protocol DGR.In Table7, location based routing protocols are compared with each other, where suitability for WMSN for each protocol is based on delay, energy efficiency, network lifetime, and performance of routing protocol.In Table8, aforementioned routing protocols are analytically compared, based on architecture, location awareness, multipath, energy efficiency, real-time nature, congestion control, load balancing, reliability, hole detection/bypassing, and data delivery model as attributes.Table 8
Comparison of protocols.
Protocol
Architecture
Location aware
Multipath
Energy efficiency
Real-time
Congestion control
Load balancing
Reliability
Hole detection/bypassing
Flat
Clustered
Zhou and Wang  [20]
✓
✓
✓
SAR  [21]
✓
✓
✓
EAQoS  [23]
✓
✓
✓
RAP  [25]
✓
✓
SPEED  [28]
✓
✓
✓
✓
✓
✓
RPAR  [29]
✓
✓
✓
✓
✓
OEDSR  [34]
✓
✓
✓
✓
SDRC  [37]
✓
✓
AGEM  [38]
✓
✓
✓
✓
EQSR  [39]
✓
✓
✓
Li and Kim  [16]
✓
✓
✓
MMSPEED  [31]
✓
✓
✓
✓
DARA  [41]
✓
✓
✓
✓
✓
RLTD  [42]
✓
✓
✓
✓
✓
✓
LRGR  [46]
✓
✓
✓
✓
QMOR  [44]
✓
✓
✓
ASAR  [53]
✓
✓
✓
✓
✓
M-IAR  [51]
✓
✓
ACOLBR [54]
✓
✓
✓
✓
✓
AntNet  [14]
✓
✓
ACOWMSN  [56]
✓
✓
AntSensNet  [57]
✓
✓
✓
✓
✓
✓
HLEAR  [60]
✓
✓
AntHQSeN  [61]
✓
✓
✓
QOSPSO  [63]
✓
✓
ICACR  [64]
✓
✓
✓
FROMS  [65]
✓
SPEA  [66]
✓
✓
BeeSensor  [69]
✓
Bee-Sensor-C  [72]
✓
✓
✓
✓
✓
EQR-RL  [74]
✓
FTIEE  [77]
✓
✓
✓
✓
✓
REAR [82]
✓
✓
✓
✓
LEAR [83]
✓
✓
✓
✓
✓
✓
PEMuR  [85]
✓
✓
✓
EEQAR [88]
✓
✓
✓
MCRA [48]
✓
✓
✓
TPGF [59]
✓
✓
✓
GEAMS  [94]
✓
✓
✓
✓
GPSR  [27]
✓
✓
DGR [93]
✓
✓
✓
✓
EA-TPGF  [95]
✓
✓
✓
✓
PWDGR  [96]
✓
✓
✓
✓


## 3.3.1. Flat Routing Protocols

In flat network architecture, all the nodes have the same responsibilities. Flat routing protocols are also called data-centric routing protocol. A BS is responsible for sending requests and queries. However, the sensor nodes can sense the physical environment and transfer the data to BS. Flat routing protocols use data aggregation to reduce redundant data, which ultimately reduces energy consumption. But flat routing protocols are not able to fulfill application specific latency requirements. These protocols suffer due to high routing overhead, delay, congestion, and low versatility.Real-Time and Energy-Aware Routing (REAR) [82] protocol is a multipath routing algorithm which also reduces energy consumption of links and trades off the relationship of energy and delay. In REAR, metadata is used to find routing paths. Use of metadata stops repeated retransmission of exactly same packets; thus, huge bandwidth is saved. Metadata is used for routing discovery processes. REAR uses Optimized Dijkstra Algorithm which is used to select a link with lowest weight among marked nodes. For QoS determination factors like time delay, bandwidth, and remaining energy are included. In order to guarantee real-time transmission and reduce queue delay, a “classified queue model” is introduced to each node. For link cost evaluation, estimated distance, remaining energy, and queuing delay are used.Key features are as follows:(i)
It is a metadata based routing protocol, which supports query based services.(ii)
It focuses on energy efficiency and end-to-end delay.(iii)
It uses modified Dijkstra algorithm.(iv)
It implements “classified queue model” to reduce queuing delay.REAR reduces repeated retransmissions and energy consumption by using meta-data for route setup. But REAR does not consider reliability and bandwidth requirements. The concept of metadata in streaming applications consumes a lot of energy and bandwidths.Load Based Energy-Aware Multimedia Routing (LEAR) [83] protocol is a reactive, self-organizing, and energy efficient protocol. LEAR is AODV [49] based protocol. Here active routes refer to the number of routes for different sources in which a node is participating. For route selection, a special factor (“route selection factor β”) is calculated by forwarding nodes. If node’s power reaches 25% of its total power, then it is labeled as “Swap Node.” Swap Nodes do not take part in routing; they transmit packets only in certain critical conditions. So LEAR also has the ability of hole avoidance. LEAR finds disjoint path, if it is available. If disjoint path is not available, then it finds a partial disjoint path. Creating a partial disjoint path increases the hop distance, but it ensures high throughput, reduces congestion, and lowers the latency. This makes LEAR perfectly suitable for routing of multimedia traffic. Simulation results show that “the number of paths selected increases with the increase in the number of multimedia nodes within the event region” [61].Key features are as follows:(i)
It is a reactive, multipath, self-organizing, and event driven routing protocol.(ii)
It focuses on energy efficiency, reliability, and load balancing.(iii)
It can avoid holes efficiently.(iv)
It finds disjoint paths in order to reduce congestion and meet delay bounds.LEAR can find disjoint path while maintaining load balance between the nodes and increase network lifetime. The main drawback of LEAR is that it does not consider delay, reliability, network lifetime, and bandwidth requirements. Table 5 shows comparison of flat routing protocols.


## 3.3.2. Routing Protocols

Initially, hierarchical protocols were proposed for routing in wired networks [84]. However, they are also suitable for WMSNs. In hierarchical routing protocols, the entire network is divided into different levels. Nodes at different levels have different responsibilities. Generally, the protocol consists of two routing layers only, and data flows from a low level layer to a higher level layer. The nodes with the higher capabilities and responsibilities are known as CHs. Each CH can directly communicate with the BS. The rest of the nodes are called child nodes or cluster members, which associate with CHs to form clusters. Child nodes can only communicate with their CH. The advantages of these protocols over flat routing protocols are as follows: they are more scalable, energy efficient, and reliable. Overall performance of protocol depends on the process of formation of clusters.Energy efficient and perceived QoS aware video routing (PEMuR) [85] is a novel energy-aware hierarchical routing protocol for WMSNs, which uses intelligent video packet scheduling scheme and predicts the video distortion. It is based on scalable power efficient routing (SHPER) protocol [86]. CHs are further categorized into upper level CHs and lower level CHs. Upper level CHs are near BS and can transmit data directly to the BS. Whereas lower level CHs are far from the BS, distant nodes route their messages to the BS by multihop routing. PEMuR is divided into two phases: (1) initialization phase and (2) steady state phase. The initialization phase starts with the creation of TDMA schedules for all nodes to advertise themselves and calculate relative distances between them. Random numbers of upper and lower CHs are elected by the BS. Non-CH nodes associate with CH having maximum signal strength. In steady state phase, BS elects a node with maximum residual energy in each cluster as CH.In case of nonavailability of sufficient bandwidth, each sensor node drops video packets to reduce the retransmission rate. The packets to be dropped are chosen wisely in order to minimize overall video distortion using video distortion model [85]. The video distortion is measured in terms of Mean Square Error (MSE). The model also takes into account the random behavior of wireless medium; hence, it can predict video distortion accurately. Simulation result shows PEMuR outperforms TEEN [87].Key features are as follows:(i)
It is an energy-aware hierarchical routing protocol.(ii)
It uses an intelligent video scheduling scheme.(iii)
It is based on SHPER protocol.(iv)
It intelligently handles low bandwidth situation.PEMuR ensures that minimum power is consumed and required QoS is maintained for the transmission of video streams. Also, it can maintain a high level of perceived video quality (PSNR) for uniform and nonuniform energy distributions. But PEMuR is fully dependent on BSs for carrying out the routing process; hence, it is not fully distributed.Energy efficiency QoS assurance routing (EEQAR) [88] protocol is a hierarchical routing protocol, which implements cellular topology to form clusters. EEQAR uses a QoS trust estimation model, which is based on social network analysis. On a social network, the relationship between two individuals is determined by the trust relationship between them. The concept of social network analysis is used by EEQAR in order to ensure energy efficiency and determine trust relationship. For building trust relationships, distributed metrics are introduced in EEQAR. Direct behavior monitoring and indirect information gathering are used in order to calculate trust value.Trust value is calculated by calculating various other factors like transmission delay, frame rate, image quality, and audio quality. On the basis of the geographical position of agents and multimedia sensor nodes, the cellular topology is formed. Agent nodes are always deployed in the center of the hexagon. Agents send advertisement messages with their ID, after deployment. Multimedia nodes join agent node with maximum signal strength. If multimedia nodes have no task, then they can go into sleeping mode. But agent nodes must remain awake.Each node maintains optimization factor table, which stores trust value, energy level, and correlation for each neighbor. The correlation factor estimates correlation between two nodes, which directly affects the fusion process. Each node finds a next forwarding node using optimization factor table. EEQAR operation is divided into various rounds. Where each round is divided into three phases: cluster building, routing probe, and steady state. Cellular clusters are formed in cluster building phase. Intracluster and intercluster routes are built in routing probe phase. Data is collected in steady phase. Simulation results in [88] show that EEQAR outperforms ARCH [89], in terms of delay, energy efficiency, and reliability.Key features are as follows:(i)
It is an energy efficient hierarchical routing protocol.(ii)
It uses “data fusion” process in order to reduce unnecessary data transmission.(iii)
It uses trust analysis to fulfill application specific QoS requirement.(iv)
It uses TDMA at MAC layer to make efficient use of energy resources.EEQAR efficiently improves performance by decreasing delay and energy utilization. But trust relationship is slowly varying and it is not error-free. Direct monitoring increases the energy consumption rate. Table 6 shows comparison of hierarchical routing protocols.


## 3.3.3. Location Based Routing Protocol

The central idea of location based routing protocols is to exploit the knowledge of location of nodes in order to route data packets. The location of the node can be determined using global positioning system (GPS) or other localization techniques like DVHop [90], Amorphous [91], and so forth.Few advantages of location based routing protocols over other routing techniques are as follows:(i)
Minimized routing overhead.(ii)
Efficient bandwidth utilization.(iii)
Fully distributed and stateless nature.(iv)
Scalable and tolerant to route faults.(v)
Less memory and maintenance requirement.However, these routing protocols suffer from “energy hole” problem. Greedy nature of these protocols results in repetitive usage of the same path, if the destination lies in the same region. The batteries of nodes lying on that path drain quickly, resulting in the creation of energy hole. An efficient location based routing protocol must handle and avoid hole problem efficiently.Greedy Perimeter Stateless Routing (GPSR) [27] is a novel routing protocol, which uses the positions of the router and the destination node to make packet forwarding decisions. GPSR uses two modes: (1) greedy forwarding and (2) perimeter forwarding. GPSR packet headers include a flag to indicate the current forwarding mode of the packet. If a packet reaches a region where greedy forwarding is not possible, GPSR recovers by routing the packet around the perimeter of the region. In perimeter mode GPSR forwards packets using planar graph traversal. Further, a packet can again reenter the greedy forwarding mode if any neighbor is closer to the destination node.Key features are as follows:(i)
It is a location based routing algorithm.(ii)
It can detect and avoid the hole problem.(iii)
It supports MAC-layer failure feedback.(iv)
It uses promiscuous mode.(v)
It supports queue traversal.(vi)
It implements planarization of graphs.GPSR has a good packet delivery ratio even when the network density is too high. It requires less memory because there is no need to store full knowledge of the network at each node. There is no need for periodic updating of the table. It is an energy efficient routing protocol. End-to-end delay increases when mobility is high, which in turn makes it unsuitable for handling multimedia traffic [92].Directional Geographic Routing (DGR) [93] protocol is a location based routing protocol, which gives better video transmission quality and prolongs the network lifetime. DGR assumes that any node can send video packets to sink at any instance. It forms multiple application specific disjoint paths to transmit real-time traffic over low bandwidth and unreliable network. Forward error correction (FEC) coding is used in order to make data delivery more reliable. A single real-time video stream is divided into multiple substreams. These substreams are transferred in parallel through disjoint paths, in order to make full utilization of resources. DGR follows the right hand rule to recover from the void problem [27].Key features are as follows:(i)
It is a location based routing protocol.(ii)
It uses disjoint paths to optimize bandwidth and energy and reduce delays.(iii)
It is a fault-tolerant routing protocol.(iv)
It supports various features such as load balancing, fast packet delivery, and good peak signal-to-noise ratio (PSNR).DGR utilizes resources very efficiently, increases the delivery ratio, and reduces end-to-end delay requirements. But DGR is not suitable for WMSNs because it requires additional overhead and hence results in transmission delay in case of fault, and it is impractical to implement for large networks.Two-phase geographic greedy forwarding (TPGF) [59] routing algorithm overcomes various shortcomings of flat routing protocols. TGPF can be efficiently used in multimedia applications. TGPF avoids “Local Minimum Problem” by adopting face routing (right hand rule) as adopted in GPSR. The Label Based Optimization method is adopted to eliminate path circles and optimize the routing path found by TPGF. It is different from existing geographic routing algorithms as it does not adopt face routing to bypass holes. For hole-bypassing, it follows two approaches: (1) hole-bypassing by computing the planar graph in advance without knowing holes or boundary nodes; (2) hole-bypassing by identifying the holes or boundary node information in advance.Key features are as follows:(i)
It is a location based routing protocol which supports event driven services.(ii)
It is a multipath routing protocol.(iii)
It implements GF algorithm.(iv)
It can bypass holes using two different methods.TPGF provides paths with minimum number of hop-counts, but it requires full knowledge of the network; therefore, it is not a scalable protocol.Geographic Energy-Aware Multipath Stream-based (GEAMS) [94] routing protocol focuses on load-balancing and minimizing energy consumption. In GEAMS routing protocol, routing decisions are made without global topology knowledge and there is no need for maintenance of topology changes. Here each node stores information about its one-hop neighbors, which is updated by beacon messages. The information includes estimated distance to its neighbors, the distance of neighbor to the sink, data rate of link, and remaining energy. GEAMS uses two policies: (1) Smart Greedy Forwarding and (2) Walking Back Forwarding. Walking Back Forwarding policy is used when there are no neighbors closer to sink. Otherwise, GEAMS uses the Smart Greedy Forwarding policy.Key features are as follows:(i)
It is a geographical multipath routing protocol.(ii)
It enforces uniform energy consumption and meets delay requirement.(iii)
It works on two policies, Smart Greedy Forwarding and Walking Back Forwarding.(iv)
It can detect and avoid hole problems.GEAMS does not require global topology information and its maintenance and it maximizes network lifetime and guarantees QoS requirements. But in sparse network, GEAMS can cause congestion and packet loss.Energy-Aware TPGF (EA-TPGF) [95] is a routing protocol which is an enhanced version of TPGF [45]. TPGF is a routing protocol, which implements greedy forwarding and step back and mark methods. The first phase in TPGF consists of two methods, greedy forwarding and step back and mark. The greedy forwarding algorithm selects a neighbor closest to the BS as the next node for routing. Step back and mark method is used to handle the situations, when there is not even a single node in the neighborhood that is closer to BS. The second phase of TPGF deals with label based optimizations of path. EA-TPGF defines distance-energy formula, which is used to calculate the score of neighbors; node with minimum value is selected. EA-TPGF also defines the energy cost transmission formula to calculate the cost of energy consumed by the transmitter.Key features are as follows:(i)
It is an enhanced version of TPGF.(ii)
It focuses on energy efficiency.(iii)
It uses distance-energy formula and energy cost transmission formula to evaluate the path.(iv)
It also uses GF algorithm to route the data packets.EA-TPGF routing protocol greatly reduces the energy consumption rate in WMSNs as compared to TPGF. But EA-TPGF increases the average delay of nodes and it always uses the same discovered paths again and again.Pairwise directional geographical routing (PWDGR) [96] is a multipath routing protocol, which solves the energy bottleneck problem. PWDGR is proposed based on DGR [93]. It makes full use of nodes around the sink. PWDGR finds pairwise nodes around the sink for data transmission. After the data is transferred to pairwise nodes, pairwise node sends data to sink.Routing in PWDGR is divided into three stages:(I)
In first stage video data is collected and packed, and then the data is broadcasted. Broadcasting saves energy and reduces delay.(II)
After receiving neighbor nodes check if they are in the cooperative node list. If yes, then they calculate coordinates of the next neighbor node.(III)
In the third stage, source cooperative node is selected. Two rules are used to select a source cooperative node: (i) based on cumulative numbers to be selected for cooperative node and (ii) based on distance between ideal point and neighbor node.Key features are as follows:(i)
It is a multipath, location based routing algorithm.(ii)
It uses the concept of pairwise nodes to fully utilize the nodes around the sink.(iii)
It increases the network lifetime by nearly 70%.(iv)
It is reliable and fault tolerant and improves network bandwidth.Use of pairwise nodes in PWDGR around the sink makes full use of nodes within 360° so the energy of nodes around the sink is utilized, to increase the network lifetime. DGR scheme suffers due to energy hole around the sink. If the sink is at the edge of the network, then PWDGR degenerates into DGR algorithm. Also, it increases the delay by 8% as compared to similar protocol DGR.In Table7, location based routing protocols are compared with each other, where suitability for WMSN for each protocol is based on delay, energy efficiency, network lifetime, and performance of routing protocol.In Table8, aforementioned routing protocols are analytically compared, based on architecture, location awareness, multipath, energy efficiency, real-time nature, congestion control, load balancing, reliability, hole detection/bypassing, and data delivery model as attributes.Table 8
Comparison of protocols.
Protocol
Architecture
Location aware
Multipath
Energy efficiency
Real-time
Congestion control
Load balancing
Reliability
Hole detection/bypassing
Flat
Clustered
Zhou and Wang  [20]
✓
✓
✓
SAR  [21]
✓
✓
✓
EAQoS  [23]
✓
✓
✓
RAP  [25]
✓
✓
SPEED  [28]
✓
✓
✓
✓
✓
✓
RPAR  [29]
✓
✓
✓
✓
✓
OEDSR  [34]
✓
✓
✓
✓
SDRC  [37]
✓
✓
AGEM  [38]
✓
✓
✓
✓
EQSR  [39]
✓
✓
✓
Li and Kim  [16]
✓
✓
✓
MMSPEED  [31]
✓
✓
✓
✓
DARA  [41]
✓
✓
✓
✓
✓
RLTD  [42]
✓
✓
✓
✓
✓
✓
LRGR  [46]
✓
✓
✓
✓
QMOR  [44]
✓
✓
✓
ASAR  [53]
✓
✓
✓
✓
✓
M-IAR  [51]
✓
✓
ACOLBR [54]
✓
✓
✓
✓
✓
AntNet  [14]
✓
✓
ACOWMSN  [56]
✓
✓
AntSensNet  [57]
✓
✓
✓
✓
✓
✓
HLEAR  [60]
✓
✓
AntHQSeN  [61]
✓
✓
✓
QOSPSO  [63]
✓
✓
ICACR  [64]
✓
✓
✓
FROMS  [65]
✓
SPEA  [66]
✓
✓
BeeSensor  [69]
✓
Bee-Sensor-C  [72]
✓
✓
✓
✓
✓
EQR-RL  [74]
✓
FTIEE  [77]
✓
✓
✓
✓
✓
REAR [82]
✓
✓
✓
✓
LEAR [83]
✓
✓
✓
✓
✓
✓
PEMuR  [85]
✓
✓
✓
EEQAR [88]
✓
✓
✓
MCRA [48]
✓
✓
✓
TPGF [59]
✓
✓
✓
GEAMS  [94]
✓
✓
✓
✓
GPSR  [27]
✓
✓
DGR [93]
✓
✓
✓
✓
EA-TPGF  [95]
✓
✓
✓
✓
PWDGR  [96]
✓
✓
✓
✓


## 4. Open Research Issues

WMSN has got huge attention in the past few years, but still it is in evolving stage [13]. Research papers [1, 2, 13] have summed up current issues in QoS and energy efficient routing for WSNs and WMSNs. This paper has already mentioned various design requirements. This section is outlining common problems for future exploration.Selection of Optimal Metrics. QoS routing being the multiobjective problem, it is very difficult to decide between the metrics, because the optimization of one metric leads to degradation of another. So there is need of designing and developing routing protocols which can focus more and more on multiple metrics. The protocols following SI based methodologies like ACO, PSO, RL, and GA are becoming prevalent as they are adaptive and multiobjective in nature.Cross Layer Functionality. In typical networks, each layer is assigned its functionality and service. One layer can only interact with adjacent layers only. Various factors in wireless communication make layered approach worse, resulting in degradation of overall system performance. For optimal performance, routing protocols in WMSNs share QoS parameters among the layers. Papers [19, 97] propose cross layer solutions for efficient routing.Multiple Sources and Multiple Sink. In large scale WMSNs, if a single sink is placed there are the chances that the performance of system depletes because of the presence of multiple sources and single sink. Moreover, sink’s neighbor nodes get drained much faster and the sink gets isolated. Therefore in real practice, multiple sinks are used, there are some protocols which support multiple source and multiple sinks, but still there is need to make system more efficient.Duty Cycle Based Routing. Sensors can be in active or in sleep mode; these modes are called duty cycle. Most of the energy is utilized in communication with neighboring nodes. Switching between the states and making the node least idle saves a considerable amount of energy. But to achieve duty cycling in WMSNs is a very complex problem due to volatility of video traffic.Integration with Other Networks. Sensors sense the environment and transmit the observed data to sink. As shown in Figure 1, sink communicates the data to internet or other network in order to make it useful to the end users. There is need to develop new architecture in order to provide guarantee of QoS, energy efficiency, and other requirements.Security. Due to various features of WMSNs and unreliable wireless communication channel. WMSNs are always vulnerable to various attacks such as wormhole, sinkhole, and Sybil. Low computation power makes it difficult to implement strong security protocols.


## 5. Conclusions

This paper presents survey of various existing routing protocols for WMSNs, with summarized description and properties of each algorithm. Also, categorywise analytical comparison of protocols is done. QoS routing algorithms can be classified using different metrics but that could make classification more complex so to maintain simplicity, protocols are classified into only main three categories. Tables2–7 give summarized comparison of protocols based on intrinsic characteristics. Finally, Table 8 gives the overall comparison of all the protocols.Owing to the increase in applicability of WMSNs, researchers are more inclined to persuade research on WMSN routing protocols, in order to solve various problems in routing in WMSNs. The paper aims to give the introduction to current WMSN routing protocols and improve the understanding of basic concepts. We hope it will encourage them to design an efficient routing protocol.



---

*Source: 9608757-2016-04-18.xml*