1,2,3 Saaidal R. Azzuhri, 1,2 Marius Portmann, 2 Wee Lum Tan Email: {Saaidal.Azzuhri, Marius.Portmann, WeeLum.Tan}@nicta.com.au 1 School of ITEE, University of Queensland, 2 ational ICT Australia (ICTA), 3 University of Malaya
AbstractRouting protocols are used to discover, maintain, and repair routes between pairs of nodes in wireless ad-hoc networks. In order to handle dynamic network topologies caused by node mobility, many routing protocols are designed with multiple features and parameters to effectively discover routes and to quickly detect link breaks. In this paper, we compare the performance of four popular routing protocols, AODV, DYMO, OLSR and HWMP, in terms of the Packet Delivery Ratio (PDR) metric, and analyse the various reasons for packet loss in scenarios where nodes are mobile. We also explore key protocol parameters and how their choice impacts the protocol performance. Based on our simulation results, we find that the way in which protocols detect link breaks is critical for overall network performance. We therefore specifically explore how the choice of link break detection parameters can improve protocol performance. We further explore other protocol variations and features and their potential for performance improvements.
I. INTRODUCTION Wireless ad-hoc networks such as wireless mesh networks (WMN) and mobile ad-hoc networks (MANET) have emerged as a key technology for an increasingly wide range of applications, due to their attractive features such as self-configuration and self-healing capabilities. One of the main current research areas in wireless ad-hoc networks is the development of routing protocols that are able to perform well for a wide range of deployment scenarios. The main functionalities of routing protocols are to establish, maintain and repair routes. In recent years, a large number of routing protocols for both WMN and MANET have been developed [1-4]. These protocols can be roughly classified as either reactive, proactive or hybrid (combination of both or proactive and reactive). Out of the large number of proposed protocols, we identify the following four as the most relevant in terms of actual usage and in regards to their significance in the context of relevant standardisation efforts: OLSR (Optimized Link State Routing Protocol) [1], AODV (Ad-hoc On-Demand Distance Vector routing) [2], DYMO 1 (Dynamic MANET On-demand Routing Protocol) [3], and HWMP (Hybrid Wireless Mesh Protocol) [4]. The first three protocols are developed within the IETF MANET
1 In the recently released latest IETF draft, DYMO is renamed to AODVv2, due to the fact that it is seen as an evolution of AODV. For the purpose of consistency with the existing literature and clarity, we use the term DYMO in this paper. working group, while HWMP is proposed in the context of the IEEE 802.11s [4] standard. In this paper, we perform an extensive simulation based performance evaluation of these four key protocols in terms of the Packet Delivery Ratio (PDR) metric, under a range of network scenarios with varying degrees of mobility. We further provide an analysis of the different reasons of packet loss for the various protocols. While there has been a significant amount of research undertaken that has compared the performance of various MANET and WMN routing protocols, e.g. [6-8], there has been no attempt to directly compare the performance of these four protocols. We also investigate the potential performance improvement that can be gained by adapting critical protocol mechanisms and parameters. From our simulation results, we see that the link break detection mechanism employed by the considered protocols is critical for overall protocol performance. We therefore specifically investigated how the choice of key parameters in the link break detection mechanism affects performance. The remainder of the paper is organised as follows. In Section II, we provide a brief overview of each of the four considered protocols, while Section III presents and discusses the results of our protocol performance comparison. We explore the choice of key protocol parameters of the selected protocols in Section IV, and present our conclusions and ideas for future work in Section V. II. OVERVIEW OF ROUTING PROTOCOLS A. Ad-Hoc On-Demand Vector (AODV) Routing AODV [2] is a popular reactive routing protocol used in wireless ad-hoc networks. A route between a source node and a destination node is found via the route discovery process, in which the source node broadcasts a Route Request (RREQ) message. Any node that receives the RREQ message that has a route to the destination node or is itself the destination node, will send back (via unicast) a Route Reply (RREP) message to the source node. If a link of an active route is broken, a Route Error (RERR) message will be generated by the upstream node of the break, and will be sent to all nodes utilizing the broken link, including the source node. As a consequence, the source node will initiate a new route discovery process. Alternatively, the node upstream of the break may choose to locally repair the link by broadcasting a new RREQ message. 978-1-4673-4410-4/12/$31.00 2012 IEEE 978-1-4673-4410-4/12/$31.00 2012 IEEE To detect a link break, AODV by default uses periodic Hello messages to monitor neighbour connectivity. Another method to detect link breaks is to use Link-Layer (LL) feedback [9]. If a packet fails to be transmitted after the maximum number of MAC layer retries, a link broken notification will be sent to the routing layer. In our simulations, we include both versions of the protocols, i.e. AODV-HELLO and AODV-LL for our comparison. For our simulations, we use AODV-UU [10], the widely used implementation of AODV by Uppsala University.
B. Dynamic MAET On-demand Routing (DYMO) DYMO is similar to and a successor to the AODV protocol. DYMO not only retains the core mechanisms of AODV, but also provides some enhancements such as support for Internet gateway scenarios and the path accumulation feature. Instead of creating a routing table entry only for the destination node as in AODV, the path accumulation feature enables DYMO to discover routes to each intermediate node on the path between the source and destination nodes during the route discovery process, as shown in Fig. 1. For link break detection, DYMO can use both the Hello messages and LL feedback mechanisms. However, unlike AODV, DYMO does not support the local link repair mechanism. For our evaluation, we use the DYMO-UM implementation [11], which utilises the LL feedback mechanism. DYMO also uses the term Routing Element (RE) to refer to both the RREQ and RREP messages, as defined in the draft [3].
C. Optimized Link State Routing (OLSR) OLSR is a table driven proactive routing protocol that is widely used in wireless ad-hoc networks. Routing topology information is disseminated via the use of Hello and Topology Control (TC) messages. Hello messages provide
information on link connectivity to one-hop and two-hop neighbours. Based on this information, MultiPoint Relay (MPR) nodes are selected from among the set of one-hop neighbours. These MPR nodes will broadcast TC messages that contain the networks topology information. TC messages can only be forwarded by MPR nodes, thereby significantly reducing OLSRs protocol overhead compared to pure link state routing protocols. Information in the Hello and TC messages are used to update other nodes of topology changes (i.e. due to link breaks), which may trigger a routing table update process. Apart from Hello messages, OLSR can also use the LL feedback mechanism for link break detection purposes [1]. In our evaluation, we use the OLSR-UM [11] implementation.
D. Hybrid Wireless Mesh Protocol (HWMP) HWMP is the proposed routing protocol for WLAN mesh networking, developed within the context of the IEEE 802.11s standard. It is a hybrid routing protocol which has both the reactive (basic) and proactive (extension) components. HWMPs reactive component is based on AODV. For the proactive component, any mesh node or portal can be selected (usually a gateway) to periodically broadcast control messages which are used to form a tree. For routing metric, rather than using the traditional hop- count metric, HWMP uses a more sophisticated routing metric called Airtime Link Metric (ALM) which considers the radio quality of the link. To detect a link break, HWMP relies on the dedicated Peer-link Management Protocol (PMP) [4]. The only publicly available implementation of HWMP in the ns2 simulator is developed by the Institute for Information Transmission Problem (IITP) [12]. However, this implementation of HWMP is very basic and does not contain the PMP link break detection mechanism. The only way to recover from a link break is to wait for the routing entry to timeout. Due to this drawback in the implementation, HWMP is shown to perform badly in our evaluation, as described in the next section. In Table I, we provide a summary of the key properties for each routing protocol that we described above.
Figure 1: Path information in AODV and DYMO
Table I: Routing Protocol Properties Routing Protocol Type Link Break Detection Routing Metric Gateway Support AODV Reactive Hello/LL Hop Count No DYMO Reactive Hello/LL Hop Count Yes OLSR Proactive Hello/LL Hop Count No HWMP Hybrid PMP ALM Yes III. PERFORMANCE EVALUATION We compare the performance of the four routing protocols in various scenarios incorporating different node mobility and traffic load. Using the ns2 simulator, we simulated 50 nodes moving randomly over a rectangular area of size 1500m x 300m. The mobility model used is the random-waypoint mobility model [7], in which nodes randomly choose a destination to move to, with a node speed that is uniformly distributed between [0, MAX_SPEED]. Once the node reaches the destination, it pauses for a while (PAUSE_TIME) before repeating the whole process. Multiple traffic flows are generated between randomly selected pairs of nodes. In our simulations, we measure the performance of the routing protocols in terms of the Packet Delivery Ratio (PDR) metric. PDR is defined as the ratio of the total number of data packets received at the destination node, to the total number of data packets sent from the source node. We also investigate in detail, the statistics and reason for the data packet drops in each protocol. All protocols are evaluated using the ns-2.34 simulator, with the exception of HWMP which is evaluated with the ns-2.33 simulator. Table II shows a summary of the relevant simulation parameters. In our simulations, we perform 50 runs (corresponding to 50 different mobility patterns) for each pause time and the results are averaged over these runs. We also report the 90% confidence interval in our results. In our 900s long simulations, traffic flows and data tracing are only activated after 300s of warm-up time in order to ensure that the simulated network has reached steady state. Fig. 2 shows the PDR performance of the routing protocols for a traffic load of 30 flows, and with a maximum node speed of 20m/s. We have performed simulations for different number of traffic flows and maximum node speeds (as shown in Table II), and the PDR performance results achieved in these scenarios are similar to that shown in Fig. 2. For low pause time (which corresponds to high node mobility), we can see a huge difference between each protocol in terms of their PDR performance. With more than 95% PDR, AODV-LL has the best performance, followed by DYMO and AODV- HELLO. We believe this is due to the AODV-LL and DYMO protocols using the LL feedback mechanism, which provides immediate notification of link breaks as soon as a packet fails to be transmitted. On the other hand, in AODV- HELLO, nodes have to wait for two consecutive Hello messages to be lost (corresponding to two seconds) before it can determine that the link is broken. Table II: Simulation Parameters Number of Flows 10, 20, 30 flows Packet Size 64 bytes Source rate (CBR traffic) 2 Kbits/s (4 packets/s) 802.11 MAC Tx. Rate 11Mbps Transmission Range 250 metres Propagation Model Two Ray Ground MAX_SPEED 1m/s, 20m/s PAUSE_TIME 0, 30, 60, 120, 300, 600, 900 sec
Figure 2: PDR vs. Pause Time
OLSR and HWMP perform poorly especially at higher rates of mobility (corresponding to low pause time). At 0 sec pause time, OLSR and HWMP delivered only 66% and 55% of packets respectively. For OLSR, we believe that its poor performance is due to its slow detection of link breaks. The default OLSR implementation uses the Hello messages mechanism to detect link break, which leads to a high delay in the update of the routing table. For HWMP, as we mentioned before, the ns2 implementation that we used in our evaluations does not have a proper PMP link detection mechanism and hence is unable to detect link breaks at all. As a result, HWMP performs the worst among all the protocols that we evaluated. Fig. 2 also shows that as the pause time increases, the difference in the PDR performance among the four protocols decreases. This is due to the fact that lower node mobility results in a lower number of links being broken, and as such, the packets from the source nodes are able to be successfully delivered to the destination nodes. We next analyse the reasons for packet drop in each routing protocol. We take a detailed look at the traces for the 0 sec pause time scenario for each protocol since this scenario shows the worst PDR performance. Based on the results, we found that packet drop is due to several reasons, namely MAC transmission retries exceeded (RET), no route or invalid route error (NRTE), interface queue buffer exceeded (IFQ), routing loop (LOOP) and Time-To-Live (TTL) field reaching zero. A brief explanation on these reasons of packet drop is given in Table III. Table IV shows the packet drop statistics in detail for each protocol, where the values shown are the average of the 50 simulation runs. We see that AODV-LL has the lowest number of packet drops. This corresponds to its high PDR performance observed in Fig. 2. We also see that the LL feedback mechanism clearly outperforms the Hello messages mechanism in detecting link breaks in the AODV protocols. This is because the number of RET and NRTE packet drops in AODV-HELLO is almost 9 times higher than that of AODV-LL.
0 200 400 600 800 50 60 70 80 90 100 Pause Time (sec) P D R
( % )
AODV-HELLO AODV-LL DYMO OLSR HWMP Table III: Packet Drop Reasons Types of Drop Reason RET After 7 retransmission attempts without getting an ACK reply at the MAC layer, the packet will be dropped and the routing layer notified. NRTE Packet drop due to no route available. IFQ Packet drop due to interface queue buffer already full. LOOP Packet drop due to routing loop. TTL Packet drop due to its time-to-live field reaching zero.
For the DYMO protocol, Table IV shows that it has the highest number of NRTE packet drop compared to others. We believe this is due to the path accumulation feature in DYMO. The path accumulation feature enables routing information of other participating node to be appended to a Routing Element (RE) as it passes through those nodes on their way to the source and destination nodes during a route discovery process. This additional routing information can be used to create entries in the routing tables of nodes that process the RE message, and hence can later reduce the number of route discovery attempts to those participating nodes. However in a highly dynamic network environment, these routing entries can easily become stale or out-dated. This then causes packets to be dropped when the nodes attempt to send packets over these invalid routes. For the OLSR protocol, we see that the highest number of packet drop is due to RET. As mentioned before, OLSR depends on the Hello message mechanism to detect link breaks, whereby if a node does not receive a Hello message from its neighbour within a specific amount of time, then it declares the link to its neighbour is broken and will then invalidate the route entry corresponding to that neighbour. Therefore in OLSR, even after a link break occurs, a node may continue to send packets over the broken link until it finally determines that the link is broken due to the missing Hello message. This is the cause of the high number of RET packet drops in OLSR. It is also interesting to note that OLSR is the only routing protocol that has packet drops due to LOOP and TTL. This is because OLSR (as a proactive routing protocol) is known to be susceptible to create routing loops in a network where nodes are highly mobile [13]. As for the HWMP protocol, we can see that the highest number of packet drop is also due to RET. As explained before, the HWMP implementation used in our simulations does not have a link break detection mechanism and solely depends on its path timeout feature to remove stale routing entries. Hence, nodes will keep on sending packets over an invalid route until the route entry expires, thereby leading to a high number of RET packet drops in the network. IV. PERFORMANCE ENHANCEMENT In this section, we adapt some parameters in the AODV- HELLO and DYMO routing protocols to see the impact it has on the network performance. For the OLSR protocol, a comparison is made between the LL feedback and the Hello messages mechanism to detect link breaks. A. AODV-HELLO For the AODV-HELLO protocol, we identified two important parameters that control the determination of link connectivity based on the periodic Hello messages, i.e. HELLO_INTERVAL and ALLOWED_HELLO_LOSS. HELLO_INTERVAL is defined as the time interval between consecutive transmissions of Hello messages, while ALLOWED_HELLO_LOSS is defined as the number of periods of HELLO_INTERVAL that can lapse without receiving a Hello message before a node decides that the link to its neighbour is broken. In AODV [2], the default value for HELLO_INTERVAL is one second while the default value for ALLOWED_HELLO_LOSS is two. We define the parameter link break detection time (L lb ) as follows: L lb = HELLO_ITERVAL x ALLOWED_HELLO_LOSS Therefore, a node will assume link connectivity to its neighbour is lost if no Hello messages is received within the time period L lb . In the following simulation, we vary the two parameters according to Table V to produce different values of L lb . From Fig. 3, we see that there is a correlation between the PDR metric and the L lb parameter in that the PDR decreases for increasing values of L lb . This is easily explained by the fact that increasing values of L lb means that it would take longer for a node to detect link breaks, and leads to lower PDR. However, for the two cases where L lb = 1s, we see that the scenario with HELLO_INTERVAL = 0.5s performs better than the scenario with ALLOWED_HELLO_LOSS = 1. This may be explained as follows. The scenario where HELLO_INTERVAL = 0.5s requires the loss of two consecutive Hello messages before a link can be declared as broken. On the other hand, in the scenario where ALLOWED_HELLO_LOSS = 1, a loss of a single Hello message will trigger a link break and the invalidation of a route entry. We note that in our simulations, there is a total of 30 traffic flows, and due to the high probability of collisions with data packets in these flows, a Hello message can easily be lost. Therefore, rather than the Hello message being lost due to node mobility, it is lost due to packet collision. As such, in the latter case, even Table V: Varying AODV-HELLO Parameters HELLO_ITERVAL ALLOWED_HELLO_LOSS L lb
0.5s 2 1s 1s 1 1s 1s 2 2s 1s 3 3s 2s 2 4s
Figure 3: PDR vs. Pause Time for variants of AODV- HELLO
though the link is still existent, it is unnecessarily declared broken and causes the route entry to be invalidated, leading to a poorer PDR performance.
B. DYMO For the DYMO protocol, we measure the impact of the Path Accumulation (PA) feature and the RREQ_TRIES parameter on the PDR performance. RREQ_TRIES is the parameter that determines how many times a node will try to discover a path to a destination node. In the ns2- implementation of DYMO, the PA feature is enabled and the RREQ_TRIES parameter is set to one. Therefore, a node will only perform the route discovery process once, and if unsuccessful, it will assume no route is available and drop the data packets in its buffer. We evaluate four scenarios in this simulation: DYMO-PA: Default setting with path accumulation enabled DYMO-noPA: Default setting with path accumulation disabled DYMO-RREQ2-PA: RREQ_TRIES = 2 and with path accumulation enabled DYMO-RREQ2-noPA: RREQ_TRIES = 2 and with path accumulation disabled
Figure 4: PDR vs. Pause Time for variants of DYMO
Table VI: Packet Drop and Routing Element (RE) Statistics for DYMO DYMO Variants RET RTE RE Msgs. % Rise in RE Msgs. % Drop in RTE DYMO-PA 1092 3369 1825410 - - DYMO-noPA 1145 2015 2093690 14.7% 40% DYMO- RREQ2-PA 1097 2971 1827100 0.09% 11.8% DYMO- RREQ2-noPA 1134 1176 2064130 13.1% 65%
From the results in Fig. 4, it is clear that by disabling the PA feature in DYMO, DYMO-noPA achieves a PDR performance that is about 2.5% better compared to DYMO- PA in the case of 0 sec pause time. By increasing the value of RREQ_TRIES to two, the PDR performance of DYMO- RREQ2-noPA improved further by around 4% compared to DYMO-PA. Table VI shows the packet drop and routing overhead statistics, based on traces from the scenario with 0 sec pause time. We see that for the best setting of DYMO- RREQ2-noPA, the number of NRTE packet drops has gone down by 65% compared to the default setting of DYMO- PA. However, there is a small trade-off when the PA feature is disabled. The number of RE control messages increases by around 13-14%. Without the PA feature, the nodes will need to send more RE messages in order to discover the routes to destination node, especially in a highly dynamic network scenario. We believe that this is an acceptable trade-off in order to achieve higher PDR performance. From these results, we conclude that both the path accumulation feature and the optimal RREQ_TRIES parameter setting in the DYMO protocol are crucial to its performance improvement, and must be administratively or adaptively controlled by the protocol. C. OLSR The implementation of OLSR evaluated in Section III (results shown in Fig. 2) uses the Hello messages 0 100 200 300 400 500 600 700 800 900 80 85 90 95 100 Pause Time (sec) P D R
DYMO-PA DYMO-noPA DYMO-RREQ2-PA DYMO-RREQ2-noPA mechanism for link break detection (OLSR-HELLO). In Fig. 5, we compare its performance with OLSR-LL, which uses the LL feedback mechanism to detect link breaks. As we can see, OLSR-LL easily outperforms OLSR-HELLO in the high mobility scenarios. For example, in the 0 sec pause time scenario, OLSR-LL achieves a PDR of 93%, which is significantly higher than the PDR of 66% achieved by OLSR-HELLO. The LL feedback mechanism enables a node to immediately detect a link disconnection to its neighbor node, hence allowing it to quickly update its routing table. It also prevents the node from using the disconnected link to send packets. Table VII shows the statistics for the packet drop reasons in OLSR-HELLO and OLSR-LL. We see that the number of packet drops due to MAC layer callback (RET) decreases drastically for OLSR- LL compared to OLSR-HELLO. This huge reduction in the MAC layer callback packet drop contributes to a higher PDR performance for OLSR-LL.
Figure 5: PDR vs. Pause Time for variants of OLSR
Table VII: Packet Drop Statistics for OLSR OLSR Variants RET RTE IFQ LOOP TTL OLSR- HELLO 19607 968 4 35 156 OLSR-LL 2828 932 0 32 235
V. CONCLUSION In this paper, we have compared the performance of the four most current and popular routing protocols in wireless ad-hoc networks in terms of the PDR metric. Our results show that the mechanism by which each protocol detects link breaks is crucial in determining its overall network performance. In particular, we see that the Link-Layer feedback mechanism outperforms the periodic Hello messages mechanism, especially in the AODV and OLSR routing protocols. We also observe that by varying certain protocol parameters in AODV-HELLO and DYMO, an improved network performance can be obtained. However, there are still more scenarios to investigate (e.g. different node densities, mobility models and others) and more protocol parameters that can be exploited and adapted for performance improvement. This will be the focus of our future work.
ACKNOWLEDGMENTS National ICT of Australia (NICTA) is funded by the Australian Government as represented by the Department of Broadband, Communications and the Digital Economy as well as the Australian Research Council through the ICT Centre of Excellence program.
REFERENCES [1] T. Clausen, and P. Jacquet, Optimized Link State Routing Protocol (OLSR), RFC 3626, 2003. [2] C.E Perkins, E. Belding-Royer and S. Das, Ad Hoc On-Demand Distance Vector (AODV) Routing RFC3561, 2003. [3] I. Chakeres and C. Perkins, Dynamic MANET On Demand (DYMO) Routing, draft-ietf-manet-dymo-17.txt, 2009. [4] IEEE P802.11s/D1.06, draft amendment to standard IEEE 802.11: Mesh Networking. IEEE, May 2007. [5] NS2 manual http://www.isi.edu/nsnam/ns/doc/ns_doc.pdf [6] A. Boukerche, Performance evaluation of routing protocols for Ad Hoc Networks, Mobile etworks and Applications,vol.9, Kluwer Academic Publishers, 2004, pp.333-342 [7] Broch, D.A Maltz, D.B Johnson, Y.C Hu, and J. Jetcheva, A Performance Comparison of Multihop Ad Hoc Network Routing Protocols, ACM MobiCom, 1998. [8] S.R Das, C.E. Perkins, and E.M. Royer, Performance Comparison of Two On-Demand Routing Protocols for Ad-Hoc Networks, IEEE IFOCOM, 2000. [9] I. Chakeres and E. Belding-Royer. "AODV Implementation Design and Performance Evaluation," International Journal of Wireless and Mobile Computing (IJWMC), Issue 2/3, 2005. [10] http://core.it.uu.se/core/index.php/AODV-UU [11] http://masimum.inf.um.es/ [12] https://forge.iitp.ru/ns2/hwmp/ [13] C. R. Aponte and S. Bohacek, OLSR and approximate distance routing: Loops, black holes, and path stretch, 4 th International Conference on Communication Systems and etworks (COMSETS), 2012. 0 100 200 300 400 500 600 700 800 900 60 65 70 75 80 85 90 95 100 Pause Time (sec) P D R