2009 IEEE 34th Conference on Local Computer Networks (LCN 2009) Zürich, Switzerland; 20-23 October 2009
P-OLSR: Position-based Optimized Link State Routing for Mobile Ad Hoc Networks Sachin Sharma Tejas Networks India Limited, Bangalore, India Permanent Address: Village Nihal (Near I.T.I.) Bilaspur, Himachal Pradesh Email: sharon
[email protected]
Abstract—Optimized Link State Routing (OLSR) protocol is a table-driven proactive routing protocol for wireless mobile ad hoc networks. The key idea behind this protocol is to reduce the control message overheads by marking subset of neighbors as Multi-Point Relays (MPRs). In this paper, we discuss problems of OLSR or other routing protocols that are due to mobility of nodes. We integrate our solutions to OLSR protocol and call it as Position-based OLSR (P-OLSR). Performance evaluation of OLSR and P-OLSR is done through NS simulation. Simulation results show that P-OLSR outperforms OLSR with respect to packet delivery, throughput, latency and normalized overheads.
I. I NTRODUCTION Nodes in mobile ad hoc networks (MANET) are selforganizing and self-administering. This allows communication without any preexisting infrastructure. Moreover, each node can move with different speed and direction. Speed and direction may not be constant. These may change rapidly and unpredictably over time. Thus routing a packet in MANET is a challenging task. Several routing protocols like proactive [1], reactive and geographical [2] have been proposed for ad hoc networks. The performance of all these protocols decreases with frequent topology changes. This paper takes the example of Optimized Link State routing (OLSR) [1] in describing the problems of these protocols in mobile ad hoc networks. We apply our solutions to OLSR protocol when current position of neighbor node is out of radio range. Current neighbor position prediction scheme is introduced in [2]. In this scheme, velocity of node is calculated by dividing difference of position with difference of HELLO reception time. Thus velocity may not be accurate when HELLO interval is more. Furthermore, in this scheme neighbor position can only be predicted for old neighbors. If the neighbor is new then neighbor position remains same till it receives next HELLO packet. This paper overcomes above drawbacks of neighbor prediction scheme and modifies OLSR protocol. We call this modified OLSR as Position-based OLSR (P-OLSR). Simulation shows that the performance of OLSR by adding our solutions increases significantly in terms of data packet delivery, throughput, latency and normalized overheads. The rest of paper is organized as follows: Section 2 presents overview of previous work. Section 3 gives problem description. Section 4 presents methodology of P-OLSR protocol.
978-1-4244-4487-8/09/$25.00 ©2009 IEEE
Section 5 evaluates the performance of P-OLSR and OLSR, and finally concludes. II. BACKGROUND This section gives introduction to OLSR and its enhanced version OLSR MOvement Prediction based Routing (OLSRMOPR). OLSR [1] is a table-driven proactive protocol and its operations mainly consist of updating and maintaining information in 1-hop, 2-hop neighbor table and routing table. OLSR decreases topology control (TC) message overheads of link state routing by flooding these messages through subset of neighbors, called Multi-Point Relays (MPRs). It defines three types of control messages. These are described as follows: 1) HELLO Messages: These messages are used for neighbor sensing and MPR calculations. These are transmitted periodically to all its 1-hop neighbors. HELLO message includes link type, willingness of node to become MPR, information about its neighbors etc. Link type in these messages indicates that link is symmetric, asymmetric or simply lost. 2) Topology Control (TC) Messages: These messages are used to construct routing table. These are link state messages, broadcasted periodically in entire networks. 3) Multiple Interface Declaration (MID) Messages: These messages are transmitted by nodes running OLSR on more than one interface.
Furthermore, OLSR maintains one shortest path entry in routing table for every node in networks. When node has a data packet to forward, it reads the entry from its routing table and forwards the packet to the next hop, defined in routing table. Modification to OLSR for vehicular ad hoc networks, termed as OLSR-MOPR, is suggested in [3]. OLSR-MOPR utilizes position, velocity and range for the calculation of life of the node. It uses this life of node in the selection of MPR and in routing table construction. Results of OLSR-MOPR [3] show that it improves routing performance mainly in terms of packet delivery. This paper also uses the concept of position, velocity and range, and increases the performance in terms of packet delivery, throughput, latency and normalized overheads. As described in [2], this paper utilizes current neighbor position as a mobility prediction parameter. However, because of drawbacks of this current neighbor prediction scheme (described in introduction), we modify this scheme and apply our solutions to OLSR when node moves out of radio range. III. P ROBLEM D ESCRIPTION 1) Some of nodes in MPR list may lie out of radio range: OLSR assumes that information of neighbors remain same for
237
HELLO interval. So, nodes send their information after a time, less than or equal to this interval. Now, if the packet does not reach 1 hop neighbor until neighbor hold time, it declares the link as lost. Value of neighbor hold time is always greater than HELLO interval [4]. Thus, neighbors that have crossed the radio range, also take part in MPR selection algorithm till neighbor hold time occurs. MPRs are computed in OLSR when a node receives HELLO packet and also when the link is declared as lost. Thus, there is only one fresh neighbor entry when nodes do MPRs selection. Entry of the neighbor from where HELLO packet is received, is the only fresh entry and all other entries are old in the table. Secondly, if MPRs are computed when link is declared as lost then all the neighbors information are old. So, nodes may be selected as MPRs that are in the radio range at its HELLO reception time but not in radio range at that time. Thus there is a more probability that some of the node which are selected as a MPR, are out of radio range. Even if MPR is in radio range at the time of its selection, there is also a chance that this node crosses radio range in its MPR period. Henceforth, if MPR is out of radio range, nodes that depend only on this MPR, will not receive TC messages. Hence, it affects the routing table computation and leads to entries in routing table with longer path or no path to some of the nodes in networks. 2) Route may be computed whose next hop node is out of radio range: It is explained in first problem that entry in neighbor table depends on neighbor hold time. OLSR uses 1-hop neighbor table and TC messages for the calculation of routing table. Since entries of nodes in neighbor table may be older, there is a chance that the next hop node corresponding to routing table entries is out of radio range. 3) Data packet may be forwarded to the node which is out of radio range: This may occur due to second problem described above or when the next hop node which was in radio range at the time of route calculation, has crossed the radio range. Thus at this situation, packet is dropped in OLSR. Therefore, to address above problems, we propose improvement over OLSR. Here, our aim is to discover a path with more reliability, less delay, more throughput and less normalized overheads.
Distance between point A and B is calculated by Eq. 2. (2) AB = (XB − XA )2 + (YB − YA )2 + (ZB − ZA )2 As point B lies on line AB, it satisfies Eq. 1. Thus now putting the value of XB , YB and ZB obtained by replacing x, y, z of Eq. 1 with these values in Eq. 2. AB = k × (dx )2 + (dy )2 + (dz )2 (3) As node i moves with same speed till t1 , distance between A and B can be calculated as follows: AB = speedi × (t1 − t0 )
(4)
Thus value of k obtained from Eq. 3 and Eq. 4 is given as: speedi k = (t1 − t0 ) × d2x + d2y + d2z
(5)
Value of (XB , YB , ZB ) can be obtained from eq. 1 by putting the value of k. Thus value of XB is equal to: speedi × dx XB = XA + × (t1 − t0 ) d2x + d2y + d2z
(6)
Now velocity components in x, y, z direction can be taken as: speedi × dx/y/z (7) vx/y/z = d2x + d2y + d2z Thus value of (XB , YB , ZB ) at time t1 can be calculated as XB = XA + (t1 − t0 ) × vx
(8)
YB = YA + (t1 − t0 ) × vy
(9)
ZB = ZA + (t1 − t0 ) × vz
(10)
This section describes neighbor prediction scheme, and POLSR algorithmic approach.
Now the question arises that how position, speed and direction ratio can be known in wireless ad hoc networks. Position of the nodes can be inferred from positioning techniques like Global Positioning System (GPS). Similarly, speed (speedi ) and direction ratio (dx , dy , dz ) can be inferred either from GPS or nodes own instruments and sensors e.g. campus, odometer, speed sensors etc. Instead, P-OLSR also uses radio range of node in its algorithmic approach. This radio range can be determined from transmission power and radio propagation properties.
A. Neighbor Prediction Scheme
B. Discussion
IV. P-OLSR M ETHODOLOGY
Say position of node i at time t0 is (XA , YA , ZA ) (point A) and we want to calculate position of node at time t1 , where (t1 > t0 ) (point B). Now if difference of t1 and t0 is not much then it can be assumed that node i moves with same speed (speedi ) and direction till t1 time. Let the direction ratio of node i are (dx , dy , dz ). Then equation of line AB can be given by Eq. 1. y − YA z − ZA x − XA = = =k dx dy dz
(1)
Neighbor prediction scheme described above assumes that nodes move with same speed and direction for a very small interval. For P-OLSR, this interval is taken as HELLO interval. Moreover if any node moves with variable speed, direction and area, it is most likely that for a very small interval, it will move with same speed and direction i.e. with same velocity. P-OLSR assumes that velocity obtained from HELLO packet remains same till it receives next HELLO packet. This may not be true for all the cases. The cases where
238
C. P-OLSR HELLO packet information Like OLSR, nodes in P-OLSR forward HELLO packets periodically. The HELLO packet contains the additional information about position and velocity components (vx , vy , vz ) of node. When a node receives a HELLO packet, it adds or updates information in 1-hop and 2-hop neighbor table. Thus, each node adds additional information of position, velocity components, and time of HELLO packet received in 1-hop neighbor table. D. P-OLSR Algorithmic Approach As position of neighbor can be predicted at any time, each node can find that its neighbor is in radio range or not. So, in MPRs calculation, nodes in P-OLSR consider only those neighbors which are in radio range at that time. Furthermore, for the solution of second problem, nodes consider the shortest path in routing table construction, whose next hop node is in radio range according to current position of that node. For third problem, if the entry from routing table is selected whose next hop node is in out of range, node recomputes its routing table and then forwards the packet according to entry, defined in table. But if newly recomputed table does not contain any entry for that destination, nodes in P-OLSR simply drop the packet. Now to lessen the problem that MPR can also move out of range in its MPR period, P-OLSR recompute MPRs at following situation. If the next hop node from routing table is in out of range, first node forwards the packet to the next hop according to the solution for third problem described above, then it recomputes the MPR list if out of range next hop node is a MPR for that node. V. P ERFORMANCE E VALUATION AND C ONCLUSIONS We used NS-2 network simulator to compare the performance results between P-OLSR and OLSR. We simulated OLSR by using UM-OLSR code, provided in [5]. We modified UM-OLSR code for the implementation of our P-OLSR algorithm. Simulation environment is taken as follows. We simulate randomly distributed 60 node networks in the square region of 1000 × 1000 m2 . IEEE 802.11 is used as a media access control layer protocol. The maximum radio range is fixed to 250 meters. Simulation of constant bit rate (CBR) traffic lasts from 0 to 100 seconds. Total of 10 CBR connections are taken where source and destination nodes are taken randomly from 60 nodes. Packet length is 128-byte. HELLO interval is taken as 2 seconds and neighbor hold time is taken three time more than HELLO interval. We use random way point (RWP) model where pause time in all the simulations is taken as 0 seconds. The performance of P-OLSR and OLSR are evaluated with respect to maximum speed of nodes in network. As P-OLSR
solutions are only applicable to the mobile networks, the results of both protocols are same for static ad hoc networks. Fig. 1 shows percentage of packet delivery in P-OLSR and OLSR. The average packet delivery with P-OLSR scheme is 0.58 times more than OLSR from 0 m/s to 50 m/s.
100 P-OLSR OLSR 90 80
Percentage of Packet Delivered
node changes its speed and/or direction during HELLO interval, does not fit well with this assumption. But significant difference in results of P-OLSR and OLSR prove that this assumption fits well in mobile ad hoc networks scenario.
70 60 50 40 30 20 10 0 0
10
Fig. 1.
20
30 Maximum Speed in m/s
40
50
60
Comparison of Percentage of Packet Delivered
P-OLSR gives more packet delivery because probability of electing MPRs which are out of radio range is less for P-OLSR. Moreover, P-OLSR also takes precautions if MPR moves out of radio range in its MPR period. For the routing of data packet, P-OLSR follows strict rule that next hop node should be in radio range. It might forward the packet to the node or elect the MPR node which is out of range, only when neighbor position prediction scheme gives wrong position due to change in speed and/or direction. As P-OLSR packet delivery results do not show much variation with increase in maximum speed of node, chances of wrong prediction of position is less for P-OLSR. In other words, the impact of faster node movement has greatly reduced after applying POLSR solutions. However, there is a much effect on faster node movement in OLSR protocol. Fig. 2 presents average delay of one packet to reach the destination. The average delay with P-OLSR solutions is 1.34 times less than OLSR protocol. It is discussed that probability of selection of nodes as MPRs which are out of radio range is more for OLSR. MPRs which are out of radio range does not transmit TC messages. This in turn gives rise to routing table construction with smaller number of nodes. Hence, longer path is computed for forwarding the data packet. Moreover, broken link causes delay in address resolution protocol (ARP) process (indicated by ARP in NS trace file). It is shown in Fig. 1 that percentage of broken links are more for OLSR than P-OLSR. Thus, packet takes more time to reach destination in OLSR protocol. In contrast, MPRs list or routing table in P-OLSR is constructed with more number of reliable nodes. Thus, POLSR gives less delay as compared with OLSR protocol. Fig. 3 gives average throughput comparison in bytes per second. Fig. 1 shows that packet delivery of P-OLSR is always more than OLSR. Fig. 2 shows that latency of one packet is
239
40000
400
Routing Overheads: Control as well as Data Packets Transmitted
P-OLSR OLSR 360
Average Latency of One Packet in ms
320 280 240 200 160 120 80 40
P-OLSR OLSR 38000 36000 34000 32000 30000 28000 26000 24000 22000 20000
0
10
Fig. 2.
20
30 Maximum Speed in m/s
40
50
0
60
20
30
40
50
60
Maximum Speed in m/s
Comparison of Average Latency of One Packet
Fig. 4.
less in P-OLSR. Thus as expected, bytes received per second is more for P-OLSR protocol.
Comparison of Routing Overheads
Normalized Overheads: Routing Overheads/Received Packets
15
1000 P-OLSR OLSR 900
Average Througput in Bytes per Seconds
10
800
700
600
500
P-OLSR OLSR
14 13 12 11 10 9 8 7 6 5 4 3 0
400
10
20
30
40
50
60
Maximum Speed in m/s
Fig. 5.
300
Comparison of Normalized Routing Overheads
200
100 0
10
20
30
40
50
60
Maximum Speed in m/s
Fig. 3.
Comparison of Average througput in Bytes per Second
Fig. 4 shows routing overheads of P-OLSR and OLSR. P-OLSR increases the size of HELLO packets. But as the HELLO packets are only transmitted to direct neighbors, we do not consider size of HELLO packet in calculation of routing overheads. Instead size, we consider number of control (HELLO and TC) as well as data packets transmitted in networks. The probability of MPR lying in radio range is more for POLSR. Thus more TC packets are transmitted in networks. In contrast, as more number of MPRs in OLSR are out of radio range and more data packets drop in OLSR, more TC or data packets are not forwarded in OLSR protocol. This gives rise to less routing overheads in OLSR. Finally, Fig. 5 presents routing overheads per received packets, called as normalized routing overheads. It may happen that while moving to destination, data packet drops at some point. So, data packet overheads from source to that point is wasted. It is explained that data packet delivery of P-OLSR is always more than OLSR (Fig. 1). Thus, wastage of these overheads is less in P-OLSR. This gives rise to less
normalized overheads in P-OLSR than OLSR. To summarize, in comparison with OLSR, P-OLSR delivers more bytes of data with less delay and less normalized routing overheads. Its routing overheads are more but normalized routing overheads are still better than OLSR protocol. ACKNOWLEDGMENT Author wishes to thank his parents Sh. Shyam Lal Sharma and Smt. Kesari Devi for their love and blessings. R EFERENCES [1] T. Clausen and P. Jacquet, Optimized Link State Routing Protocol (OLSR) RFC 3262. IETF, Network Working Group, 2003. [2] D. Son, A. Helmy, and B. Krishnamachari, The Effect of MobilityInduced Location Errors on Geographic Routing in Mobile Ad hoc and Sensor Networks: Analysis and Improvement Using Mobility Prediction. IEEE Transactions on Mobile Computing, 3 (3), 233–245, 2004. [3] H. Menouar, M. Lenardi and F. Filali, Improving Proactive Routing in VANETs with the MOPR Movement Prediction Framework. 7th International Conference on Telecommunications Systems, 1–6, 2007. [4] Sachin Sharma, HELLO Expired Time Based Greedy Routing for Mobile Ad hoc Networks. International Conference on Computer and Network Technology, 45–49, 2009. [5] http://masimum.dif.um.es/?Software:UM-OLSR.
240