Routing protocols in ad hoc networks: A survey

Azzedine Boukerche, Begumhan Turgut, Nevin Aydin, Mohammad Z. Ahmad, Ladislau Bölöni, Damla Turgut
2011 Computer Networks  
Ad hoc wireless networks perform the difficult task of multi-hop communication in an environment without a dedicated infrastructure, with mobile nodes and changing network topology. Different deployments exhibit various constraints, such as energy limitations, opportunities, such as the knowledge of the physical location of the nodes in certain scenarios, and requirements, such as real-time or multi-cast communication. In the last 15 years, the wireless networking community designed hundreds of
more » ... new routing protocols targeting the various scenarios of this design space. The objective of this paper is to create a taxonomy of the ad hoc routing protocols, and to survey and compare representative examples for each class of protocols. We strive to uncover the requirements considered by the different protocols, the resource limitations under which they operate, and the design decisions made by the authors. Network extension: In this application area, the networking infrastructure exists, but it has insufficient coverage. The goal of the participants of the network is internet access, that is, their main communication partners are outside the ad hoc network. The goal of the ad hoc network is to extend the internet connectivity beyond the reach of the access points. Most routes of the ad hoc network will connect the access points to the nodes. Local interconnection networks: In this application area, no infrastructure is available (or the nodes choose not to use it). For instance, when networking in remote areas (such as in a scenario involving a camp of archaeologists in the Central American forest), the infrastructure might not have been there to begin with. In other applications, such as disaster response, the previously existing infrastructure has collapsed due to a natural disaster. In these applications, the communication partners of most nodes are within the network. Example applications include point-to-point messaging and audio and video conferencing. Ubiquitous computing: This area covers networking between devices embedded in the environment. Communication patterns in ubiquitous computing are strongly influenced by the physical location and proximity -devices which are close to each other are more likely to communicate then remote devices. In contrast, on the wired internet, physical location is almost irrelevant. Ad hoc networks are a particularly good match for proximity based communication. Note, however, that in areas where a pervasive infrastructure is available, ad hoc networks compete with solutions which rely on the convenience of the default infrastructure, even when technologically suboptimal. A recent example involves solutions where a TV set-top box is controlled from a smartphone, through an internet connection traversing dozens of routers, even when the two devices are several feet from each other. Urban sensing: This application area exploits the sensing and computation capabilities of smartphones, together with the wide range of their deployment in urban areas. Urban sensing is characterized by distributed sensing or data collection, and, in many cases, by distributed data customers. Smartphones can use both infrastructure based access and as well as ad hoc connections. Ad hoc approaches have the 2 advantage of lower energy consumption, lower overall bandwidth consumption and improved privacybut they inevitably involve more complex interaction patterns. Vehicular networking: This area covers applications where one of the communication partners is a vehicle. This definition covers a very wide range of technologies. One type of vehicular networking involves the short range communication between the vehicle and personal devices carried by the passengers. The most widely deployed systems rely on Bluetooth, but other technologies, such as WiFi have also been suggested and implemented. Note that many devices, while connected to the local network of the vehicle, can also maintain long range wireless connections, for instance through 3G cellular telephony, and, increasingly, WiMAX and LTE. Another area of vehicular networking is vehicle to vehicle (V2V) communication. Due to the high relative speed of the participants, the short duration of the encounters and the peer-to-peer nature of the communication, V2V technologies are a good match for ad hoc networking. V2V has applications in convoy driving, accident pre-emption, and lane changes with pre-negotiated lane clearance. One significant obstacle of the deployment of V2V technologies relate to achieving a critical mass of deployment -a single V2V-capable surrounded with vehicles which cannot understand it cannot achieve any of the benefits of the technology. A final area of vehicular networking is vehicle-to-infrastructure (V2I) communication. Calling a V2I system an "ad hoc network" appears to be self-contradictory -as we defined the lack of infrastructure the defining characteristic of ad hoc networks. Yet, vehicles have a high relative speed with respect to any specific access point in the infrastructure -the communication needs to be either very brief, or the system needs to handle very fast connection hand-offs, or it needs to be able to communicate through intermittent connections. Thus, the infrastructure in V2I communications has more in common with the typical mobile interaction partner in ad hoc networks, than the highly reliable, quasi-permanent connections characterizing infrastructure in traditional networking. The most popular applications of V2I are currently toll collection systems. However, these systems will also offer significant support for the emerging intelligent transportation systems. Personal area networks: This application area refers to networking among the portable devices carried by a single user. As long as these devices move with the user, this system can be considered as a local area network with the individual components being in a fixed relative position. The most popular current PAN technology is based on the Bluetooth standards. Quite often, one or more of these devices has its own internet connectivity through long range communication. Very similarly with the vehicular networks, aspects of ad hoc networking come into play when the personal networks of different users will need to interact, or when devices of one users' PAN needs to establish a short range communication with infrastructure elements (such as when performing payment processing through near-field communication). Ad hoc routing protocols and comparisons Mirroring the diversity of applications areas, researchers have proposed a wide range of routing protocols for ad hoc networks. The basic goals of these protocols are the same: maximize throughput while minimizing packet loss, control overhead and energy usage. However, the relative priorities of these criteria differ among application areas. In addition, in some applications, ad hoc networking is really the only feasible solution, while in other applications, ad hoc networking competes with other technologies. Thus, the performance expectations of the ad hoc networks differ from application to application and the architecture of the ad hoc network, thus each application area and ad hoc network type must be evaluated against a different set of metrics (although some metrics can be applied across several protocol categories). In the reminder of this paper, we organize the discussed routing protocols into nine categories based on their underlying architectural framework as follows (also shown in Figure 1 ). • Source-initiated (Reactive or on-demand) (Section 3.1) • Table-driven (Pro-active) (Section 3.2) • Hybrid (Section 3.3) • Location-aware (Geographical) (Section 3.4) • Multipath (Section 3.5) Dynamic Source Routing (DSR) [57]: Johnson et al. propose one of the most widely known routing algorithms, called Dynamic Source Routing which is an "on-demand" algorithm and it has route discovery and route maintenance phases. Route discovery contains both route request and route reply messages. In the route discovery phase, when a node wishes to send a message, it first broadcasts a route request packet to its neighbors. Every node within a broadcast range adds their node id to the route request packet and rebroadcasts. Eventually, one of the broadcast messages will reach either the destination or a node which has a recent route to the destination. Since each node maintains a route cache, it first checks its cache for a route that matches the requested destination. Maintaining a route cache in every node reduces the overhead generated by a route discovery phase. If a route is found in the route cache, the node will return a route reply message to the source node rather than forwarding the route request message further. The first packet that reaches the destination node will have a complete route. DSR assumes that the path obtained is the shortest since it takes into consideration the first packet to arrive at the destination node. A route reply packet is sent to the source which contains the complete route from the source to the destination. Thus, the source node knows its route to the destination node and can initiate the routing of the data packets. The source caches this route in its route cache. In the route maintenance phase, route error and acknowledgements packets are used. DSR ensures the validity of the existing routes based on the acknowledgements received from the neighboring nodes that data packets have been transmitted to the next hop. Acknowledgement packets also include passive acknowledgements as the node overhears the next hop neighbor is forwarding the packet along the route to the destination. A route error packet is generated when a node encounters a transmission problem which means that a node has failed to receive an acknowledgement. This route error packet is sent to the source in order to initiate a new route discovery phase. Upon receiving the route error message, nodes remove from their route caches the route entry using the broken link. Ad hoc On-Demand Distance Vector (AODV) [94]: The AODV routing protocol was developed by Perkins and Royer as an improvement to the Destination-Sequenced Distance-Vector (DSDV) routing algorithm [93] . AODV aims to reduce the number of broadcast messages forwarded throughout the network by discovering routes on-demand instead of keeping a complete up-to-date route information. A source node seeking to send a data packet to a destination node checks its route table to see if it has a valid route to the destination node. If a route exists, it simply forwards the packets to the next hop along the way to the destination. On the other hand, if there is no route in the table, the source node begins a route discovery process. It broadcasts a route request (RREQ) packet to its immediate neighbors and those nodes broadcast further to their neighbors until the request either reaches an intermediate node with a route to the destination or the destination node itself. The route request packet contains the IP address of the source node, current sequence number, the IP address of the destination node and the last known sequence number. Figure 2 illustrates the forward and reverse path formation in the AODV protocol. An intermediate node can reply to the route request packet only if it has a destination sequence number that is greater than or equal to the number contained in the route request packet header. When the intermediate nodes forward route request packets to their neighbors, they record in their route tables the address of the neighbor from which the first copy of the packet has arrived. This recorded information is later used to construct the reverse path for the route reply (RREP) packet. If the same RREQ packets arrive later on, they are discarded. When the RREP packet arrives from the destination or the intermediate node, the nodes forward it along the established reverse path and store the forward route entry in their route table by the use of symmetric links. Route maintenance is required if either the destination or the intermediate node moves away and it is performed by sending a link failure notification message to each of its upstream neighbors to ensure the deletion of that particular part of the route. Once the message reaches to source node, it then re-initiates the route discovery process. Temporally Ordered Routing Algorithm (TORA) [89, 139]: Park and Corson proposed TORA, an adaptive and scalable routing algorithm based on the concept of link reversal. It finds multiple routes from a source to a destination in a highly dynamic mobile networking environment. In TORA control messages are localized to a small set of nodes nearby the topological change. Nodes maintain routing information about their immediate one-hop neighbors. The three basic functions of the protocol are route creation, route maintenance, and route erasure. Ad hoc QoS on-demand routing (AQOR) [132] : Xue and Ganz propose AQOR, an on-demand routing protocol enabling QoS support in terms of bandwidth and end-to-end delay. The AQOR mechanism estimates the bandwidth and end-to-end delay requirements and use these metrics to make admission and resource reservation decisions. The AQOR integrates on-demand route discovery, signaling functions for resource reservations, and hop-by-hop routing to provide QoS support in ad hoc networks. Since most QoS violations are detected at the destination node, the routing overhead generated can be reduced by initiating the route recovery process at the destination node. Route maintenance is accomplished by sending periodic HELLO messages. Routes are discovered on-demand by a limited flooding mechanism. The requested bandwidth and end-to-end delay values are specified within the route request packet. The bandwidth requirements are calculated based on the available link capacity and the bandwidth used by the flow. If this request is accepted, the node updates its routing table with an explored status and broadcasts it to all its neighbors. However, if no reply is received in a specified time, the route entry is removed from the node's table and late-arriving replies are simply ignored. Route caching is not used since the route request packets are forwarded from the node to the destination to determine the bandwidth and end-to-end delay requirements. To further reduce control overhead, the packets have a time-to-live (TTL) parameter which stops the packets from traveling unnecessarily throughout the network. ARA-The Ant-colony based Routing Algorithms [50] : Gunes et al. present a novel technique for ad hoc routing by using concepts of swarm intelligence and the ant colony meta-heuristic. This class of algorithms aims to solve the complex optimization and collaboration problems without direct communication among the participants. Indirect communication is achieved by stigmergy, the process of leaving traces in the environment, similar to the behavior of ants leaving pheromone signals. The route discovery phase uses two types of control packets: the forward ant (FANT) and the backward ant (BANT). The FANT establishes the pheromone track to the source node while the BANT establishes the pheromone track to the destination. When the route is required, the source broadcasts FANT packets to all its neighbors. A node which receives a FANT for the first time creates a routing table record which contains the destination address, next hop, pheromone value. The source address of the FANT is taken as the destination address, the previous node address as the next hop, and the pheromone value is calculated based on the total number of hops required by the FANT to reach a particular node. When the FANT reaches the destination, the node updates its own information and sends the BANT back. Once, the BANT reaches the source, the path can be used. Figure 5 and Figure 6 show the forward and backward ants' route discovery phases. The ARA algorithm doesn't need special route maintenance packets since it uses the transmitted data packets to maintain the route. The pheromone value of the path is increased by δ ϕ each time a data packet is forwarded along the path, but decreases in time when no packets are transmitted. Routing On-demand Acyclic Multipath (ROAM) [98] : ROAM algorithm by Raju and Garcia-Luna-Aceves coordinates among nodes in directed acyclic subgraphs. It is an extension of the DUAL [41] routing algorithm. The ROAM algorithm guarantees that route search query will fail to return a destination path only is all the routers agree that the destination is unreachable. Each router in ROAM maintains distance, routing, and link cost tables. While the distance table maintains the distances of nodes for each destination and neighbors from the respective node, the routing table contains the distance to each destination, the feasible distance and the reported distance. The link cost table provides the link costs to each of the adjacent neighbors of the router. A router updates its routing table for a destination when it needs to: (i) add an entry for a particular destination; (ii) modify its distance to the destination; and (iii) erase the entry for the destination.
doi:10.1016/j.comnet.2011.05.010 fatcat:w26gumgminh4lmzsufqm4warsm