disadvantages of each category. Then, in Section 3,we
discuss the main wireless issues and analyze methods that
are used by some routing algorithms to solve these issues.
Section 4 concludes the paper with a summary of our
contributions.
2. Categories of routing algorithms
The early routing algorithms (RA) for wireless networks
are classified, similar to those for wired networks, accord-
ing to centralized/distributed and proactive/reactive cate-
gories. However, in recent years, the wireless routing
algorithms in the literature have evolved to encompass
the unique challenges posed by wireless networks, which,
in turn, introduce several novel routing categories, as
shown in Fig. 3 (and accompanying Table 1). In this survey
we focus on Geographical, Geo-casting, Hierarchical, Multi-
path, Power-aware, and Hybrid routing algorithms.
In this section, we discuss the characteristics, advanta-
ges, and disadvantages of each routing-algorithm category.
The routing-algorithm examples under each category are
shown in Fig. 3. We start with the traditional or classical
dimensions of categorizing the routing algorithms which
includes the Proactive RA and the Reactive RA. Then, we
demonstrate new dimensions of categorizing the routing
algorithms which match the wireless network characteris-
tics. The new dimension categories include Geographical
RA, Geo-casting RA, Hierarchical RA, Multi-path RA,
Power-aware RA, and Hybrid RA.
2.1. Proactive RA [51,80]
Proactive (or table-driven) routing is an approach
where each router can build its own routing table based
on the information that each router (or node) can learn
by exchanging information among the network’s routers.
This is achieved by exchanging update messages between
routers on a regular basis to keep the routing table at each
router up-to-date. Then, each router consults its own
routing table to route a packet from its source to its desti-
nation. When a source node (or an intermediate node)
consults the routing table, the path information, which is
up-to-date, is immediately available and can be used by
the node. This is because each router (or node) in the net-
work periodically updates routes to all reachable nodes via
broadcasting messages that the node received from the
other nodes in the network.
In a Proactive RA, although getting the path information
is fast, the maintenance of the up-to-date network infor-
mation requires high overhead traffic and needs some
significant amount of bandwidth. In addition, the process
of maintaining the routes to the reachable nodes is contin-
uous even if there is no data traffic flowing on these routes.
2.2. Reactive RA [51,80]
Reactive (or on-demand) routing is an approach where
the routing process needs to discover a route whenever a
packet arrives from a source and needs to be delivered to
a destination. Here, each node has no pre-built routing
table (or global information) to be consulted. Due to the
node’s mobility in a wireless network, maintaining the
existing route is an important process.
In a Reactive RA, the route discovery process happens
more often, but this process requires low control overhead
traffic compared to the Proactive RA. Therefore, the Reac-
tive RA is considered to be more scalable than the Proactive
RA [80]. In addition, using a Reactive RA, the node has to
wait for the discovery process each time the node attempts
to send a message; this increases the overall delay.
2.3. Geographical RA [2,3,38,45,106]
A major evolution in communication technology has
been the introduction of the Global Positioning System
(GPS) which provides the location information and univer-
sal timing of a node. The idea of Geographical routing is
Table 1 (continued)
MOLSR [70] Multi-cast Optimized Link State Routing
MP-DSR [75] Multi-Path Dynamic Source Routing
MPRDV [6] Multi-point Relay Distance Vector protocol
MPR-E [100] Multi-Path Routing with EAPAR
OLSR [55] Optimized Link State Routing Protocol
OMR [61] On-demand Multi-path Routing
OORP [126] Order-One Routing Protocol
PAMAS [102] Power-Aware Multi-Access Protocol with Signaling
PARO [46] Power-Aware Routing Optimization Protocol
PLBR [104] Preferred link based routing
QuaSAR [115] QoS aware source initiated Ad-Hoc routing
RDMAR [4] Relative-Distance Micro-discovery Ad hoc Routing protocol
ROAM [96] Routing On-demand Acyclic Multi-path
SiFT [20] Simple Forwarding over Trajectory
SLURP [118] Scalable Location Update-Based Routing Protocol
SMR [72] Split Multi-path Routing
SrcRR [5] Source Routing for Roofnet
SSR [32] Signal Stability Routing protocol
TBRPF [10] Topology Dissemination based on Reverse-Path Forwarding routing protocol
TORA [90] Temporally-Ordered Routing Algorithm routing protocol
WAR [8] Witness Aided Routing
WRP [85] Wireless Routing Protocol
ZHLS [62] Zone-based Hierarchical Link State routing
ZRP [48] Zone Routing Protocol
E. Alotaibi, B. Mukherjee / Computer Networks 56 (2012) 940–965
945