You are on page 1of 10

Increasing Packet Delivery Ratio in DSR by Link Prediction

Liang Qin Thomas Kunz Department of Systems and Computer Engineering Carleton University, Ottawa, Ontario, Canada K1S 5B6 {lqin,tkunz}@sce.carleton.ca Abstract
Most existing on-demand mobile ad hoc network routing protocols continue using a route until a link breaks. During the route reconstruction, packets can be dropped, which will cause significant throughput degradation. In this paper, we add a link breakage prediction algorithm to the Dynamic Source Routing (DSR) protocol. The mobile node uses signal power strength from the received packets to predict the link breakage time, and sends a warning to the source node of the packet if the link is soon-to-be-broken. The source node can perform a pro-active route rebuild to avoid disconnection. Experiments demonstrate that adding link breakage prediction to DSR can significantly reduce the total number of dropped data packets (by at least 20%). The tradeoff is an increase in the number of control messages by at most 33.5%. We also found that the proactive route maintenance does not cause significant increase in average packet latency and average route length. Enhanced route cache maintenance based on the link status can further reduce the number of dropped packets. (FORP) [4] is the protocol published then that also uses a mobile nodes position information that is provided by Global Position System (GPS) to predict link state. The destination node can determine the route expiration time based on the link prediction in the route. It will inform the source node when a link is predicted to be broken, then the source can select the most reliable route to send rest packets. The more recent preemptive routing proposed by Goof [5] uses signal power strength similar to our method. It initiates route discovery early by detecting that a link is likely to be broken and builds an alternative route before the link failure. The preemptive ratio is used for defining a preemptive zone that is adjacent to the signal strength threshold. Because is a constant, it implies that for mobile nodes with different relative speeds, the size of the preemptive zone is the same. Their simulation results also show that the increase in overhead could be as high as three times the overhead of the original DSR protocol. The link availability prediction requires two nodes maintain their movement patterns during the prediction time. Several papers proposed probability model for the link availability [6][7][8]. One model proposed by McDonald [6] defines the path availability as the probability of link is active at time t+t0 given that it is active at time t0. The limitation is that the link could be broken during time (t0, t+t0), then a packet will be dropped if there is traffic on this link. Another model proposed by Jiang [7] defines the probability of a link that will be active continuously from current time to the time when link is predicted to be broken. In this model an artificial variable is introduced for calculating the path availability, which depends on node density and radio transmission range, and is obtained from a series of experiments. This paper concentrates on the link state prediction in ad hoc networks to reduce the data packets that would have been dropped because of link failure. In most existing protocols, a mobile host will keep using the route until the link is broken. Instead, the prediction algorithm proposed in this paper will use the power measurement of received packets to predict the topological change in

1. Introduction
In mobile ad hoc networks, wireless media are of limited and variable range, in distinction to existing wired media. Each mobile node moves in an arbitrary manner and routes are subject to frequent breakage. During the period of route reconstruction, packets can be dropped. The loss of packets will cause significant throughput degradation for both real-time and non-real-time data. This effect on TCP is described in [1]. At the time when this research began, few algorithms and protocols tried to improve performance by using link state information. Associativity Based Routing (ABR) proposed by Toh [2] favors routes with longer-lived links according to the associativity of the incident nodes. He proposed a link state prediction model based on the knowledge of mobile nodes position [3]. Flow Oriented Routing Protocol

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

order to perform a route rebuild prior to the link breakage, to avoid the data packets being dropped. In more detail, a link failure happens when two mobile nodes A and B move out of their radio transmission ranges. Node B monitors the packets coming from A, predicts the link breakage time of link A-B, and then sends a warning message to the source node of this active route. The source node can rebuild a new route before the link breaks. We call this pro-active route maintenance. As our simulation results show, pro-active route maintenance reduces the number of dropped packets because of link failure with little adverse effect on other routing protocol evaluation criteria (number of control packets, packet latency, and route optimality). Also, the link status information can be used to avoid using stale routes in a nodes route cache to further reduce the number of dropped packets. We do not propose a new routing protocol; instead, we suggest modifications to one popular on-demand routing protocol, DSR [9]. However the prediction algorithm can also be applied to other mobile ad hoc routing protocols. This paper focuses on the link state prediction, its implementation and evaluation in the DSR protocol. Section 2 is a brief introduction of the DSR protocol. Section 3 proposes the link state prediction algorithm based on the received signal power strength, algorithm parameter settings, the prediction accuracy and its limitations. Section 4 presents the prediction algorithm implementation in DSR. Scenarios of exception are analyzed. We compare the simulation results under different mobility rates of DSR with and without prediction algorithm implemented. This section also shows an enhanced route cache maintenance based on link status to increase packet delivery ratio. Section 5 draws our conclusion and proposes directions for future research.

a route to the destination. If it has one, it will use this route to send the packet. Otherwise, it will initiate route discovery by broadcasting a route request packet. When receiving a request packet, a node appends its own address to the route record in the route request packet if it did not receive this request message before, and rebroadcasts the query to its neighbors. Alternatively, it will send a reply packet to the source without propagating the query packet further if it can complete the query from its route cache. Furthermore, any node participating in route discovery can learn routes from passing packets and gather this routing information into its route cache. Each node along the route, when transmitting the packet to the next hop, is responsible for detecting if its link to the next hop has broken. When the retransmission and acknowledgement mechanism detects that the link is broken, the detecting node returns a Route Error message to the source of the packet. Then it will search its route cache to find if there is an alternative route to the destination of this packet. If there is one, the node will change the source route in the packet header and sends it using this new route (this is called salvaging a packet). When a Route Error packet is received or overheard, the link in error is removed from the local route cache and all routes, which contain this hop, must be truncated at that point. The source can then attempt to use any other route to the destination that is already in its route cache, or can invoke Route Discovery again to find a new route.

3. Link prediction algorithm


The GPS and signal strength methods both use physically measured parameters to predict the link status. The node with GPS can know the position of itself directly. But GPS currently is not a standard component of mobile devices, and in the metropolitan area and indoor, the signal can be too weak to be received. The signal strength method only consumes receiving nodes computing power, and does not depend on any add-on device. It will be used in this paper. First, we propose a link prediction algorithm that can predict the link breakage time between two mobile nodes on an active route. The concept that uses received signal strength to predict link failure has been proposed in cellular networks to perform handover [13]. At first we assume that the sender power level is constant. Received signal power samples are measured from packets received from the sender. From this information it is possible to compute the rate of change for a particular neighbors signal power level. Because the signal power threshold for the wireless network interface is fixed, the time when the power level drops below the acceptable value can be computed.

2. Dynamic source routing (DSR) protocol


The ad hoc routing protocols may be generally categorized as table-driven and source-initiated on-demand driven. The simulation results reported in several papers [10][11][12] show that normally ondemand routing protocols have higher packet delivery ratio and need less routing messages than table-driven routing protocols. DSR is one on-demand routing protocol. It is based on the concept of source routing, The sender explicitly lists the route in the packets header, identifying each forwarding hop by the address of the next node to which to transmit the packet on its way to the destination host. The DSR protocol consists of two mechanisms: Route Discovery and Route Maintenance. When a mobile node wants to send a packet to some destination, it first checks its route cache to determine whether it already has

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

3.1. Link prediction algorithm


In our prediction algorithm, an optimistic radio transmission model is used. Assume node A has a transmission range with radius R. If node B is located within this circle, it is assumed to correctly receive node As transmission. So the link availability of two mobile nodes can be simply determined by the distance between them. 3.1.1. Radio propagation and mobile node movement models. Two Ray Ground Reflection Approximation is used as radio propagation model [11]. At near distances, Friss free-space attenuation (1/r2) is used, at far distance we employ an approximation to Two Ray Ground (1/r4). The approximation assumes specula reflection off a flat ground plane. Because we are only concerned about the situation that two mobile nodes move out of their radio transmission range, only the Two Ray Ground model is used. The signal power strength at the receiver is:
P= Pt * Gt * Gr * (ht 2 * hr 2 ) d4

Vay

Va

Vax node A

node B Vbx

Vb Vby

Figure 1. Mobile nodes moving at random speeds and directions According to equation (3), we can assume that relative to node B, node A is still, node B is moving and at relative speed and direction . 3.1.2. Predicting link breakage. The prediction time is defined as the time when two nodes are moving out of the radio transmission rage. Because the signal power threshold for a wireless network interface is fixed, the prediction time is a constant if two nodes keep their moving speeds and directions during this period of time.
node A

(1)

P: signal power at the receiver. Pt: signal power at the transmitter. Gt: gain for a signal to a node from the transmitter. Gr: gain for a signal to a node from the receiver. ht: height of transmitter antenna. hr: height of receiver antenna. d is the distance between transmitter and receiver. We assume that Pt is a constant (as in IEEE 802.11 radios). Also, in our wireless ad hoc network simulation, an omnidirectional antenna is used. Further, we assume the ground is flat, and that hr and ht are constants. So we can simplify equation 1) under the conditions of ad hoc wireless network simulation: P (2) P=k t
d
4

d0

node B t2

t3

Where: k = Gt * Gr * (ht 2 * hr 2 ) is a constant. This equation shows that the signal power at the receiver node has relation (1/d4) with the distance between the sender node and receiver node. A random waypoint model [9] is used to simulate the mobile movement of nodes. A mobile node will move at a constant speed randomly selected up to a given maximum value to a random destination, then stops for a predefined pause time and moves again. Let node B be the receiver node, node A be a sender, and also one of node Bs neighbors. Node A is moving at speed a , node B is moving at speed b . a can be decomposed to ax and

Figure 2. Relative movements of two mobile nodes As illustrated in Figure 2, at time T1, node B receives a signal from node A, assumes the distance between them is d 0 , then: P (4) P =k t
1

d0

ay , same for b , see Figure 1. Then the speed of


(3)

node B relative to node A is:


= (bx ax ) + (by ay )

If node B knew its speed and direction, relative to node A, based on equation (4), it could calculate the current distance and the predicated link breakage time. However, in our model, we assume that this relative movement information is not known, so we need to collect further samples to account for these unknown parameters. At time T2, node B receives the second signal from node A, let t2=T2-T1,

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

P2 = k

Pt (d 0 + (vt 2 ) 2 2d 0 vt 2 cos ) 2
2

(5)

At time T3, node B receives the third signal from node A, let t3=T3-T1, and t3 is not necessarily a multiple of t2 (i.e., the spacing in time is arbitrary). Pt (6) P =k
3

With more sophisticated radios, power management may be applied to both sender and receiver so that the power will be controlled with the distance between them. We can modify the original equations and still obtain link breakage predictions in this case, if the source node attaches its transmission power value with the packet. 3.1.3. Implementing the prediction algorithm. In our implementation, a node only monitors unicast packets from its neighbors and it is the next hop of the packets, because in DSR, only active routes are maintained. Most of these unicast packets are data packets, the rest are Route Reply and Route Error messages. Also, a node runs the prediction algorithm only when the distance between two nodes is bigger than the crossover point (i.e., the distance at which the physical layer uses Two Ray Ground approximation) to save computing power. From the prediction algorithm, at least three packets are needed to correctly predict future disconnection to the neighboring node. In the implementation, each mobile node will keep a table (called signalInfo Table). Each entry of the table holds information such as signal power strength and reception time, of three packets from the same neighboring node. When node B receives packets from node A, it updates its signalInfo array according to: P3P2P1 and T3>T2>T1 (18) When two mobile nodes are moving closer, the latest signal power strength will be greater than the previous one. In this case, we set P1 to the latest signal power value and set P2 and P3 to zero, no prediction is necessary. The prediction algorithm assumes that during T1 and prediction time T two nodes maintain their speeds and directions. In reality, two nodes may change their speed or/and their direction during this time. According to the algorithm, the prediction based on the first one or two packets just after the changes may not be correct and cause a false prediction. Our algorithm also assumes there is no noise during the packet transmission. This is a simplistic assumption. Some experiments that add randomly produced noise (5% to 10% of signal power strength) to the signal have been conducted. The simulation results show that the prediction accuracy, as is to be expected, suffers. We also conducted some experiments to improve the prediction by applying regression method on the received signal power strength. This example shows one of effective ways to improve the accuracy in real application environment. More research and experiments are currently being done on this topic. The purpose of our research was to explore whether pro-active route maintenance has the potential to reduce dropped packets by making using of link status information. So we assume in the following the case of a

(d 0 + (vt 3 ) 2 2d 0 vt 3 cos ) 2

At time T, the node B will receive a signal which power equivalent to the threshold Ps, let t = T - T1, also assume during time T1 to T that nodes A and B maintain their speeds and directions: Pt (7) P =k
s

( d 0 + (vt ) 2 2d 0 vt cos ) 2

From equation (4), we obtain:


P1d 0 = kPt
4

(8)

Substituting (8) into equations (5), (6) and (7): 2 P1 d 0 (9) P =


2

d 0 + (vt 2 ) 2 2d 0 vt 2 cos P1 d 0
2 2

P3 =

(10) (11)

d 0 + (vt 3 ) 2 2d 0 vt 3 cos

Ps =

P1 d 0
2

d 0 + (vt ) 2 2d 0 vt cos
2

From (9) and (10) we obtain:


v 2 = d 0

(12) is a
(t 2 t 3 t 3 t 2 ) P2 P3
2 2

Where:

( P1 P2 t 2 + P2 P3 t 3 P1 P3 t 3 P2 P3 t 2 )

constant. From (9) and (11) we obtain:


Ps = P1 P2 d 0 t 2 (t 2 P2 t P2 + t P1 ) d 0 + (t 2 P2 t 2 t 2 P1 P2 t 2 (t 2 P2 P2 t + P1 t ) + ( P2 t 2 t 2 P2 t 2 t )
2 2 2 2

(13)
P2 t )v 2

Substituting (12) into (13):


Ps =

(14)

We can reformulate this into the equation: Where: a = t 2 P2 Ps


b = Ps (( P1 P2 ) t 2 c = t 2 P2 Ps t 2 P1 P2
2

at 2 + bt + c = 0

(15)
P2 )

Finally the prediction time is:


t= b b 2 4ac 2a

(16)

Because t is not negative (we are only interested in future predictions): b 2 4ac b (17) t=
2a

In the rest of the paper, we call the calculation of link prediction time based on equation (17), using three received packets signal power strength, our prediction algorithm.

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

noise-free environment, recognizing that this will result in optimistic results. All the modification and simulation we did in this paper is based on The Network Simulator (NS2). NS2 is a discrete event simulator developed by the University of California at Berkeley and the VINT project [15]. The Monarch research group at Carnegie-Mellon University developed support for simulation of multihop wireless networks in NS2 [10]. It provides tools for generating data traffic and mobile node mobility scenario patterns for the simulation. DSR is one of the ad hoc routing protocols that have been implemented. In NS2, the Distributed Coordination Function (DCF) of IEEE 802.11 for wireless LANs is used as the MAC layer protocol. The radio model uses characteristics similar to a commercial radio interface, Lucents WaveLAN [16], which is modeled as a shared-media radio with nominal bit rate of 2Mb/s and a nominal radio range of 250 meters with omnidirectional antenna. Because any on-demand ad hoc network protocol needs a period of time to set up a new route, a time parameter critical time ts is introduced. ts should be big enough for node B to send a route error message to the source of the packet and the source to find a new route. When node B receives a unicast packet from node A at time Tr, it calculates the prediction that the link between node A and node B will be lost at time Td. If Td - Tr ts, we say the link enters the critical state. We implemented the prediction algorithm in DSR, and added prediction time to the packet trace format. When two nodes, which are on a link of an active route, are moving away, the link breakage time will be printed in the tracefile when the receiver receives a packet. Then we compare the predicted value with the time a packet really dropped because of a broken link. Based on these experiments, we found that active links (defined as links with packet transmissions during the last second), more than 90% of the dropped packets are predicted accurately, no matter what the mobility patterns are, unlike the preemptive ratio in [5], which is derived empirically. Because nodes move randomly, two nodes may be moving closer though they were moving apart when the prediction is made, then a false prediction will be made. Choosing smaller critical time ts can reduce the possibility of false predictions. Though the most appropriate value will be different for different network configurations, in the remainder of the paper, ts is set to 1 second.

received. Applying the prediction algorithm to the DSR protocol, if a node predicts that the link with its neighbor that it received a packet from will break, it can inform the source node of the packet. Then the source node can find a new route to send other packets to avoid packets being dropped over a broken link.

4.1. Prediction of link status


As described in Section 3, every node maintains a table that contains the information of received packets (previous hop node address, packet signal power and reception time) from its active neighbors. Every time a node receives a unicast packet, it puts updated packet information in its table and updates the prediction time (obviously, if two nodes maintain their movement patterns, the prediction time will be the same). At the beginning, every prediction time for the link with an active neighboring node is set to infinity, indicating that the link will be valid all the time. The prediction algorithm uses a sliding window with a window size of three. Every time node B receives a packet from node A, it moves the window one forward to compute the prediction time by using the latest three packets with decreasing signal power strength according to condition (18). When nodes are moving closer, the received packets signal power value will increase. Then the prediction algorithm will set the window size to one and prediction time to the default value. When it receives the next packet with a received signal power value lower than the last packets, no prediction is possible yet (two packets are not enough for getting an accurate prediction). In this case, the prediction time will also be set to a default value, but we re-open the window to three again. If two nodes are moving apart but suddenly slow down or speed up, the prediction algorithm will yield inaccurate results until a total of three new packets transmitted after the change are received.

4.2. Initiating route error messages


Every mobile node maintains a table called Link Table. Each entry of the Link Table has the source node address, previous hop node address, and the packet reception time. Because different routes may share a common link, there may be entries that have the same previous hop nodes but with different source nodes in the Link Table. Maintaining the source nodes in the Link Table can prevent node B from repeatedly sending Route Error messages to the same source node in case it receives more than one packet from node A after the link A-B enters critical state. When mobile node B receives a unicast packet from its previous hop node A, it will monitors its link status with

4. Prediction algorithm application


After verifying the accuracy of the prediction algorithm, we implemented the pro-active route maintenance in DSR. In the original DSR protocol, the source node will keep using one route until the link is broken or Route Reply and Route Error messages are

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

node A using the prediction algorithm. If the link is in the critical state (link breakage predicted in less than ts seconds), node B first will check if this packet is a Route Error message. If it is, node B will not send another Route Error message to prevent Route Error messages neig sent back and forth between them (node A may also have enough information and predict this link will be broken). Next node B will check if the source node and previous hop node pair is in its Link Table. If it is, node B has already sent a Route Error message to the source about the imminent link A-B breakage recently. If it cannot find an entry, node B will insert the source node and previous hop node pair with the current time into the Link Table. Then node B sends a Route Error message to the source node of this packet using the source route in the packet header. To differentiate from the original Route Error message, we call the latter Prediction Route Error message. As the DSR protocol specifies, when a Route Error message is sent to the source node, the nodes on its route will remove the routes with link A-B from their route caches.

4.4. Experimental results


We implemented the proactive route maintenance in DSR and ran simulations. Exploring the results, we gained additional insights into the interaction between DSR and pro-active route maintenance. For example, because of the salvage mechanism used in DSR, once the node salvages the packet, the source route in the packet header will be changed to the new route found in its route cache. If a Prediction Route Error message is initiated by one of the nodes on the new route, this message will reach the node that salvages the packet, instead of the source node. So the source node is still not aware of the soon-to-be-broken link, if a new route contains this link, a packet will be dropped. A more complicated example is illustrated in Figure 3; the dashed line indicates that there may be more than one hop between two nodes. Suppose that node B already sent a Prediction Route Error message to source node S via node D, and S received it. Because node S had an alternative route, which does not contain the bad link A-B, to the destination via nodes X and Y, it uses it to send packets. Sometime later, link X-Y breaks, and node X happens to have a route in its route cache via Z and containing link A-B. Because node X is not aware of this bad link. It will use this route to salvage the packet. At this time the link A-B might have broken, then the packet will be dropped.
S X

4.3. Handling route reply messages


When a source node receives the Prediction Route Error message, similar to the original DSR protocol, if it cannot find an alternative route that does not contain the flagged link A-B, it will initiate a Route Request message and broadcast it. We piggyback the information about link A-B predicted to break soon onto the Route Request to allow other nodes in the network to clear their route cache as well. When the source node sends a Route Request message, the A-B link is still alive, so there are still Route Request messages that are sent over this link. Consequently, some Route Reply messages may have routes that contain the A-B link. When a source node receives this kind of Route Reply messages, it may use this soon-to-be-broken link again, and a packet still will be dropped. We use the Link Table in every mobile node to solve this problem. When node B receives a Route Request message, it first checks if the previous hop node is in the link table. If it is, it stops propagating this Route Request message further and does not reply from its route cache. The new routes will not contain the A-B link anymore. Because of the random characteristics of the mobile node mobility, two nodes move closer again sometime later. A time-out mechanism is applied to the Link Table entries. Entries will be removed when they time out. As long as the two nodes are moving away from each other, one node cannot be the next hop of the other. If at a later point they are moving closer, they may become neighbors in a new route again. Because we already set the critical time to 1 second, we set the Link Table timeout to 2 seconds.

Z D

Figure 3. Exceptional scenario of pro-active route maintenance in DSR Timing-related complications can also occur, to some extent these (or similar) issues exist in the original DSR protocol as well. For example, source node S receives a Prediction Route Error message, shortly after it received a delayed Route Reply message which replies to a previous Route Request issued by S. Node S might use this route to send packets. If this route contains a bad link that was reported in the Prediction Route Error message, the packet will be dropped on this link. Based on these and other observations, we set the

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

number of Prediction Route Error messages a node can send to the same source node to 3 times, which also increases the probability for the source to receive this message in case of transmission error. Table 1 compares the packet loss rates when sending the Prediction Route Error message once and at most 3 times. The pause time is 0 s, maximum speed is 20 m/s. The entries in the table are explained below. Table 1 shows that sending multiple Prediction Route Error messages can further reduce dropped packets, but also increases the number of control messages. The total number of packets dropped on the active link is reduced almost by half. We ran simulations with different mobility patterns in NS2 to verify the pro-active maintenance in DSR. The ad hoc networks used in our simulation consist of 50 wireless nodes, moving in a rectangular (1500m x 300m) flat space. We choose the traffic sources to be constant bit rate (CBR) sources. The transmission rate is 4 packets per second. Each packet is 64 bytes big. In Tables 2 and 3, the format of scenarios is: number of source nodes-pause time-maximum speed (the first row in the table). The

simulation time is 900 seconds using NS2 version 2.1b6. We mainly choose the high mobility scenarios, because they cause more link breakages. We added a higher data traffic scenario with 30 source nodes. In total 5 scenarios are simulated, each with seven randomly generated scenario files. To compare the performance with the original DSR protocol, the following four metrics are used: Total number of data packets dropped, and the number of data packets dropped because of no route. Total control message: total number of control packets transmitted. Each hop-wise transmission of a control packet is counted as one transmission. Hop count ratio: The ratio between the total number of hops all packets travel to reach their destinations and the total length of the shortest path that physically existed through the network when the packets are originated. NS2 will provide the length of the shortest possible path between all nodes in the network. Average packet latency: average data packet latency.

Table 1. Comparison of sending prediction route error message times Total Data Packets Dropped Total Data Packets Dropped (No Route) Total Control Messages Hop Count Ratio Active Link (less than 1 second) Original 1315 1153 26723 1.088 470 Once 952 831 32465 1.086 75 Three Times 827 702 33710 1.085 41 Percentage % -13.13 -15.52 3.83 -0.01 - 47.89

Table 2. Simulation results of DSR protocol with prediction algorithm: part 1 Total Data Packets Dropped Original DSR Protocol Improvement (%)3 95% Confidence Interval Total Data Packets Dropped (No Route) Original DSR Protocol Improvement (%) 95% Confidence Interval Total Control Messages Original DSR Protocol Increase (%) 95% Confidence Interval Hop Count Ratio Original DSR Protocol Increase (%) Average Packet Latency Increase (%) 20-30-1 658 751 12.344 (-10.258, 34.947) 229 416 43.863 (27.940, 59.786) 19247 16674 18.696 (3.909, 33.483) 1.061 1.062 -0.159 7.48 20-300-20 1800 2371 24.208 (5.723, 42.694) 1214 1947 37.207 (27.300, 47.114) 57785 47915 20.244 (10.680, 29.807) 1.077 1.080 -0.270 -16.48 20-30-20 6507 8907 26.979 (20.776, 33.181) 5155 7490 31.008 (23.217, 38.798) 212485 168482 25.359 (17.767, 32.951) 1.086 1.086 -0.026 -16.47

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

From Table 2 and Table 3, we draw the following conclusions: Every scenario shows an improvement for the total number of no route dropped packets. The improvement is at least 20%, and reaches up to 44.95%. These improvements are statistically significant at a 95% confidence level. Similarly, the control messages increase up to 33.5%. The improvement ratio for the total number of dropped packets is less than the ratio for the no route dropped packets. There are three cases in the low mobility scenarios (two in 20-30-1, the other in 20300-20) where the total number of dropped packets increased because of packets dropped in the network interface queue of a few nodes. The two exceptions also result in a negative overall average for the 2030-1 scenario. However, as shown by the 95% confidence interval, this result is not statistically significant. The variation of hop count ratio is below 1%. Similarly, the average packet latency does never increase significantly, but is reduced substantially in a number of scenarios, despite the increased overall traffic in the network. For the same mobility scenario (0 second pause time and up to 20 m/s speed), a scenario with more sources benefits more from pro-active route maintenance than one with fewer sources. Scenario 30-0-20, compared to 20-0-20, is one such example. For 30 sources (i.e., 30 active flows), nodes have more recent information about links to make good predictions. According to the simulation results, the prediction algorithm implemented in the DSR routing protocol successfully reduces no route dropped packets by at least 20%, with a cost of increasing route message by at most 33.5%. For the scenarios studied, this increase in messages (and therefore network traffic) does not cause additional packet losses or packet latency increases.

4.5. Enhanced route cache maintenance based on link status


In DSR, the route cache plays an important role. If there is a route to the request destination in the route cache, a source node can use it to send packets without starting Route Discovery; intermediates nodes can use it to reply to Route Request messages, which will reduce latency and overhead. Also, a mobile node can salvage a packet by using its route cache if the next hop in the source route is broken. On the other hand, because of mobility, the routes in the route cache may be stale. If the mobiles use these routes, packets may be dropped on the

broken links. DSR does not have an explicit mechanism to remove stale routes from the route cache. To evaluate the effect of stale routes on the packet delivery ratio, we analyze the tracefiles of NS2 simulation. We do not count the percentage of stale routes in each route cache, because there is no guarantee that a node actually uses a stale route from the route cache. We explored how many stale routes actually are used and also caused packet losses. Figure 4 shows the dropped packet ratio caused by stale routes. Packet loss occurs when the source node uses the stale route to send packets, or intermediate nodes use stale route to send Route Replies and/or salvage a packet along a stale route. We ran simulations for different pause times with maximum speed of 1m/s and 20m/s respectively, for each scenario we ran two simulations, and then compared the results with the total number of dropped packets because of no route. The result shows that for high mobility, packet loss due to stale routes accounts for between 30% to 40% of all packet losses; for low mobility, links will be more stable, the ratio becomes lower. We can use the link status based on the prediction algorithm to avoid using these stale routes in the route cache. We have modified the route cache so that a node only uses a valid route. In the route cache, every route associates with a route expiration time. When the destination node sends a Route Reply message to the source node, it will set the route expiration time (RET) to a big value. When an intermediate node receives this message, it also probably can get the link breakage prediction time based on the packets it received from this sender, if they are moving apart and the prediction algorithm has enough packets to make a prediction. The node compares the value with RET in the Route Reply message, if this value is smaller, the node will replaced RET with it, and this link is the weakest link in the route so far. Finally the source node gets a route with RET characterizing the shortest-lived link on that route. When a source node sends packets, or intermediate nodes reply to a Route Request message, they will not use stale routes by checking RET. In our implementation, we only use routes that will be valid for at least 3 more seconds. If a node replies to a Route Request from its route cache, it will send the routes RET with the Route Reply message. Figure 5 shows our simulation results. Three mobility scenarios are simulated. The format shown in Figure 5 is pause time-max speed. We ran two simulations for each scenario, and the total number of dropped packets is the sum of both runs. For all three scenarios, selecting valid routes from the route cache can reduce by on average 8% the total number of packets being dropped, compared to only using the pro-active route maintenance.

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

Table 3. Simulation results of DSR protocol with prediction algorithm: part 2 Total Data Packets Dropped Original DSR Protocol Improvement (%) 95% Confidence Interval Total Data Packets Dropped (No Route) Original DSR Protocol Improvement (%) 95% Confidence Interval Total Control Messages Original DSR Protocol Increase (%) 95% Confidence Interval Hop Count Ratio Original DSR Protocol Increase (%) Average Packet Latency Increase (%)
50

20-0-20 5577 7481 24.67 (17.500, 31.840) 4680 6582 27.805 (20.063, 35.546) 181547 146714 23.926 (17.187, 30.664) 1.079 1.081 -0.199 -5.28

30-0-20 9494 14476 34.295 (30.217, 38.372) 8072 12934 37.466 (33.354, 41.579) 276265 228191 21.720 (17.210, 26.231) 1.080 1.076 0.372

40 30 20 10 0

max 20m/s max 1m/s

30

90

300

Pause Time (s)

-0.53 strength. It predicts the link status after receiving three packets. When the link enters critical state, the node will send a Prediction Route Error message to the source node of the packet. After receiving a Route Error message, the source node will initiate a Route Request message and broadcast it if it cannot find an alternative route to the destination and also has packets to deliver. When a node receives a Route Request, it will check if it comes from an upstream node of a soon-to-be-broken link. If it is, the Route Request is discarded.
2500 2000 1500 1000 500 0 0-20 30-20 90-20

Figure 5 shows our first stage of implementing enhanced route cache maintenance based on link status information. Further work will be on (1) updating RET values based on new link status, (2) removing stale routes from the route cache, (3) using probe message to validate routes before they expire. We expect further improvement to be achieved.

original with prediction

Number of Packets Dropped

Figure 4. Dropped packet ratio because of stale routes

Dropped Ratio %

Mobility Pattern

5. Conclusions and future work


In most mobile ad hoc network routing protocols, sources will use a route until a link is broken or a shorter route is found. A link failure will cause packets to be dropped and results in transmission delays while a new route is found. In this paper, a link status prediction algorithm is developed and added to DSR. Every mobile node monitors the received unicast packets signal power

valid cache

Figure 5. The total number of dropped of packets because of no route for original DSR (original), DSR with prediction algorithm (with prediction) and DSR with prediction algorithm and selecting valid route in the route cache Simulations have been done for low and high mobility scenarios. The results show that the total no route packets dropped are reduced by at least 20%, and up to 44.95%.

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

At the same time, the total number of control messages increased up to 33.5%, and the hop count ratio stayed at the same level. The increased control messages do not cause network congestion, significantly increased average packet latency and packets loss. So pro-active route maintenance can significantly improve overall routing performance. We also enhanced the route cache management based on the link status information. The first stage implementation further reduces by on average 8% the total number of dropped packets because of no route. Because the prediction algorithm is general, it can be applied to other mobile ad hoc network routing protocols. We are currently implementing the pro-active route maintenance in the Ad Hoc On-demand Distance Vector (AODV) protocol [17]. We are exploring how to deal with noise. One avenue is to use curve-fitting techniques, based on a window of recent (noisy) packet reception power levels. We can then base the link prediction on the fitted curve, assuming that the fit is reasonably good (as expressed by the SSR value). We are also working on (1) soft-handover: when a source node receives a Prediction Route Error message, it will continue use the existing route until a new route is found to further reduce packet latency, (2) using the prediction algorithm to remove stale routes in route caches by piggy-backing predicted route error message with control massages even if the to-bebroken link is not on the active route, (3) more simulations and analysis on the value of critical time to increase prediction accuracy, and (4) how the reduction of packet loss impacts the performance of TCP in ad hoc environments.

Conference on Mobile Computing and Networking, Rome, Italy, July 2001, pp. 43-52. [6] A. B. McDonald and T. Znati, A Path Availability Model for Wireless Ad-Hoc Networks, Proc. of IEEE Wireless Communications and Networking Conference, New Orleans, LA, September 1999, pp. 35-40. [7] S.M. Jiang, D.J. He and J.Q. Rao, A Prediction-Based Link Availability Estimation for Mobile Ad-Hoc Networks, Proc. of IEEE Infocom, Anchorage, AK, April 2001, pp. 1745-1752. [8] A. B. McDonald and T. F. Znabi, A Mobility-Based Framework for Adaptive Clustering in Wireless Ad hoc Networks, IEEE Selected Areas in Communications (JSAC), vol. 17, no. 8, August 1999, pp.1466-1487. [9] D. B. Johnson and D. A. Maltz, Dynamic Source Routing in Ad Hoc Wireless Networks, in Mobile Computing, edited by Tomas Imielinski and Hank Korth, Kluwer Academic Publishers, Chapter 5, pp.153-181, ISBN: 0792396979, 1996. [10] J. Broch, D. A. Maltz, D. B. Johnson, Y.-C. Hu and J. Jetcheva, A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols, Proc. of the Fourth Annual ACM/IEEE International Conference on Mobile Computing and Networking, Dallas, TX, Oct. 1998, pp. 85-97. [11] S. R. Das, C. E. Perkins and E. M. Royer, Performance Comparison of Two On-demand Routing Protocols for Ad Hoc Networks, Proc. of the IEEE Conference on Computer Communications, Tel Aviv, Israel, March 2000, pp. 3-12. [12] E. M. Royer and C.-K. Toh, A Review of Current Routing Protocols for Ad-Hoc Mobile Wireless Networks, IEEE Personal Communications Magazine, April 1999, pp. 46-55. [13] B. Narendran, P. Agrawal and D. K. Anvekar, Minimizing cellular handover failures without channel utilization loss, Proc. of IEEE Global Communications Conference, San Francisco, CA, December 1994, pp. 1679-1685. [14] T. S. Rappaport. Wireless Communications: Principle and Practice. Prentice Hall, New Jersey, 1996. [15] K. Fall and K. Varahan, editors. NS Notes and Documentation. The VINT Project, UC Berkeley, LBL, USC/ISI, and Xerox PARC, November 1997, see http://www.isi.edu/nsnam/ns/. [16] B. Tuch, Development of WaveLAN, an ISM Band Wireless LAN, AT&T Technical Journal, vol. 72, no. 4, July/August 1993, pp. 27-33. [17] C. E. Perkins and E. M. Royer, Ad-hoc On-Demand Distance Vector Routing, Proc. of the 2nd IEEE Workshop on Mobile Computing Systems and Applications, New Orleans, LA, February 1999, pp. 90-100.

6. References
[1] G. Holland and N. Vaidya, Analysis of TCP Performance over Mobile Ad Hoc Networks, Proc. of the Fifth Annual ACM/IEEE International Conference on Mobile Computing and Networking, Seattle, Washington, August 1999, pp. 219-230. [2] C.-K Toh. Associativity-Based Routing for Ad-Hoc Networks, Wireless Personal Communications Journal, Special Issue on Mobile Networking and Computing Systems, vol. 4, no. 2, March 1997, pp. 103-139. [3] H. Dajing, J. Shengming and R. Jianqiang, A Link Availability Prediction Model for Wireless Ad Hoc Networks, Proc. of the International Workshop on Wireless Networks and Mobile Computing, Taipei, Taiwan, April 2000, D7-D11. [4] W. Su and M. Gerla, IPV6 Flow Handoff in Ad-Hoc Wireless Networks Using Mobility Prediction, Proc. of IEEE Global Communications Conference, Rio de Janeiro, Brazil, December 1999, pp. 271-275. [5] T. Goff and N. B. Abu-Ghazaleh etc., Preemptive Routing in Ad Hoc Networks, Proc. of the Seventh Annual International

Proceedings of the 36th Hawaii International Conference on System Sciences (HICSS03)

0-7695-1874-5/03 $17.00 2002 IEEE


Authorized licensed use limited to: HARCOURT BUTLER TECHNOLOGICAL INSTITUTE. Downloaded on August 7, 2009 at 02:50 from IEEE Xplore. Restrictions apply.

You might also like