480 likes | 974 Views
Routing Protocols for Ad Hoc Mobile Wireless Network. Mingliu Zhang 3/2/04. Outline. Review of routing algorithm for Internet IP Distance-vector Link-state Ad hoc protocol routing requirements Categorization of ad-hoc routing protocols Ad hoc protocols
E N D
Routing Protocols for Ad Hoc Mobile Wireless Network Mingliu Zhang 3/2/04
Outline • Review of routing algorithm for Internet IP • Distance-vector • Link-state • Ad hoc protocol routing requirements • Categorization of ad-hoc routing protocols • Ad hoc protocols • Destination-sequenced Distance-vector (DSDV) • Ad-hoc On-demand Distance Vector (AODV) • Dynamic Source Routing (DSR)
Distance-Vector Routing Algorithm • Distributed Bellman-Ford • Each node constructs a one-dimensional array (a vector) containing the “distance”(costs) to all other nodes and next hop id • Routers exchange their routing tables with immediate neighbors • Information includes the distance and next hop id • Typical exchange periods (30s-several minutes)
B A C E D G F Distance-vector Routing Example Initial routing table at A Final routing table at A
B A Slow convergence C E D G F • Convergence-The process of getting consistent routing information to all the nodes • A loses contact with E • A doesn’t know if there is another path to E • In a table exchange it finds B has a route to E with distance 2 • A advertises that it has route to E with distance 3 • B advertises that it has route to E with distance 4 to A and C • Cycle repeats-count to infinityproblem • Routing tables do not stabilize-slow convergence
Slow Convergence Solution • Split Horizon-Don’t send those routes it learned from each neighbor back to that neighbor. • Poison Reverse-Advertise routes with infinite distance • Hold down-When a major change occurs advertise the change quickly,but don’t accept the new routes for a period of time
Routing Information Protocol(RIP) • A quite popular routing protocol built on the distance-vector algorithm RIP packet format Table from Larry L. Peterson etc, “Computer Networks”
Link-State Routing Algorithm • Routers broadcast their neighbor connections to all routers in the network • Information mainly connectivity and cost of the link to each neighbor • Every node has a complete map of the network. • Dijkstra's Shortest Path Algorithm can be used to select the best route to the destination. • No slow convergence problems. • Somewhat larger capacity requirement.
Link-State Routing Example B 5 3 A C 10 11 D 2 Link State Database in router D
B 5 3 A C 10 11 2 D D D (0) (11) (2) B C (11) (2) B C (12) B A (5) Dijkstra’s Algorithm as Done by D (0) 2. Place C in path, examine C’s LSP.Better path to B found 1. Place D in path, examine D’s LSPs (Link State Packets)
B 5 3 A C 10 11 2 D D D (0) (2) C (12) C (5) A B (5) B (10) A A Dijkstra’s Algorithm as Done by D(cont.) (0) (2) (10) 3. Place B in path,examine B’s LSP. Better Path to A found 4. Place A in path,examine A’s LSP. No nodes left.Terminate.
Link-State Routing Algorithm Summary Nice properties • Stabilize quickly, generate not much traffic • Loop free routing • Respond rapidly to topology changes or node failures Downsides • Higher memory requirement--the amount of information stored at each node can be quite large • Scalability problem
Open Shortest Path First Protocol(OSPF) Most widely used, based on link-state routing algorithm. Improvements added: • Introduces hierarchy into routing by allowing networks partitioned into areas • Authentication of routing messages • Allows load balancing
Ad Hoc Protocol Routing Requirements • Simple, reliable and efficient • Distributed but lightweight in nature • Quickly adapts to changes in topology • Protocol reaction to topology changes should result in minimal control overhead • Bandwidth efficient • Mobility management involving user location and hand-off management
Categorization of Ad-Hoc Routing Protocols Figure from Elizabeth M. Royer, C-K Toh, “A Review of Current Routing Protocols for Ad-Hoc Mobile Wireless Networks”.
Table Driven Based Routing (Proactive) • Maintain table of all active links in network • Calculate the shortest path from table • Update table whenever nodes move • Immediate tell if node is reachable • Data can be sent immediately • Very high overheads
On-demand Routing(Reactive) • Find routes as needed • Cache information from other nodes’ requests • No static overhead • Slow start before transmitting data • AODV, DSR
Representative Ad Hoc Routing Protocols • Destination-Sequenced Distance-Vector Routing (DSDV)- Proactive(table driven), next-hop routing, distance-vector • Ad hoc On-demand Distance-Vector Routing (AODV)-reactive,next hop routing,distance-vector • Dynamic Source Routing (DSR)-reactive (on demand),source routing,link state
DSDV Routing[Charles Perkins & Pravin Bhagwat] Current in use on the MIT GRID projects • Route advertisements • Route table entry structure • Responding to topology changes • Route selection criteria • Summary
Route Advertisements in DSDV • Each mobile node advertise its own route tables to its current neighbors • Routing tables update periodically to adapt the dynamic change and maintain table consistency.
Route Table Entry Structure in DSDV When advertisement, each mobile node contain its new sequence number and the following information for each new route • The destination’s address • The number of costs (hops) required to reach the destination • The sequence number of the information received,originally stamped by the destination.
Example of Advertised Tablein DSDV • MHi -address for the mobile node,MH4is the node advertising the route table update Table from Charles E.Perkins, “AD HOC Networking”
Responding to Topology Changes in DSDV Two types of packets defined for route updates • full dump packets • Carry all available routing information • Size of multiple network protocol data units (NPDUs) • Transmitted infrequently during period of occasional movement • incremental packets • Carry only information changed since last full dump • Size of a NPDU • Transmitted more frequently • Additional table maintained to store the data from the incremental packets
Route selection criteria • Routes are preferred if the sequence numbers are newer • If the sequence numbers are the same, the one with better metric is preferred • Keep track of the settling time of routes-the weighted average time that routes to a destination will fluctuate before the route with best metric is received (Why?)
A MN collection 1 MN collection 2 C B D Route Settling Time and Solution • Problem • A initiated a route update with a new sequence number • Update from B arrives D 10 s before update from C • Metric of update from C is better (less hops) • Solution • delay the broadcast of a routing by the length of the settling time. • Exception:When broken link is found, broadcast immediately
Summary of DSDV Routing • Essentially a modification to Bellman-Ford routing algorithm • Using sequence number to guarantee loop-free paths • Relies on periodic exchange of routing information. • Inefficient due to periodic update transmissions even no changes in topology • Overhead grows as O(n2) , limiting scalability
AODV Properties • Route discovery as needed and routes maintained as necessary • Guarantee loop free through the use of sequence number • Able to provide unicast, multicast • Currently only use the symmetric links • Nodes maintain only next-hop routing information
Route TableInformationin AODV • The destination address • The next hop IP address • The destination sequence number • A list of precursor nodes to reach the destination(for the purpose of route maintenance if link breaks) • A lifetime for each route(expire the unused route)
Route Discovery in AODV Source Node: • Initiate RREQ, packet contains: • Source node IP address and current sequence # • Destination IP address and last known sequence # • A broadcast ID • Set a timer to wait for reply
Route Discovery in AODV Intermediate nodes • Check the unique identifier (Source IP address&broadcast ID)of the RREQ • If already seen, discards the packet • If not, • Set up a reverse route for the source node, associated with a lifetime • Increase the RREQ’s hop count • Broadcast the RREQ to its neighbors
Route Discovery in AODV Node responds to the RREQ (not necessary destination node) • Must have an unexpired entry for destination • The sequence # associated >= the sequence # indicated in the RREQ • Unicasts a RREP back to the source, using the node from which it received the RREQ as the next hop
B S A E D C Route Discovery in AODV • C responds to the RREQ with RREP, which includes • Its record of the destination’s sequence # • The hop count from C to D • The lifetime of the route from C to D • C unicasts the RREP to source node through A
B S A E D C Forward Path Setup A receives RREP, sets up a forward path entry to D in its route table, includes • IP address of D, IP address of the neighbor this RREP received (C) • Its hop count to D • The associated life time as contained in RREP
Expanding Ring Search in AODV To reduce the impact of flooding • Broadcast a RREQ with low time to live (TTL) • If no response received, re-transmit request with increased TTL • Fixed values for TTL start, increment and threshold • Beyond threshold, the RREQ is broadcast across the entire network up to rreq-retries times
Route Maintenance in AODV • Route maintained as long as needed • Source nodes moves during an active session, reinitiate route discovery • Destination or intermediate node moves, Route Error(RERR) message sent
3’ RERR2 RERR1 1 3 S 2 D 4 Route Maintenance in AODV 3’ 1 3 S 2 D 4
Summary of AODV Routing • On demand, distance-vector routing protocol for highly mobile wireless nodes • Support both unicast and multicast • Good chance to scale to large node population (Reported results for • AODV : node population as great as 10,000 nodes • Others: of 100 to 200 nodes)
Dynamic Source Routing[Dave Johnson] • Internet drafts available on MANET webpage • Reactive (on demand) • Source routing • Based on link-state routing algorithm
Route Discovery in DSR • Sender floods RREQ through the network • Nodes forward RREQs after appending their names • Destination node receives RREQ and unicasts a RREP back to sender node
Y Z S E F B C M L J A G H D K I N Route Discovery in DSR Represents node that has received RREQ originated from S to D RREQ includes: the source IP address, the destination IP, a unique request ID
Route Discovery in DSR Y Broadcast transmission Z [S] S E F B C M L J A G H D K I N Represents transmission of RREQ [X,Y] Represents list of identifiers appended to RREQ
Route Discovery in DSR Y Z S [S,E] E F B C M L J A G [S,C] H D K I N
Route Discovery in DSR Y Z S E F [S,E,F] B C M L J A G H D K [S,C,G] I N • Node C receives RREQ from G and H, but does not forward • it again, because node C has already forwarded RREQ once
Route Discovery in DSR Y Z S E F [S,E,F,J] B C M L J A G H D K I N [S,C,G,K] • Nodes J and K both broadcast RREQ to node D
Target Node Reaction Node D examines its route cache, if a route to S found, use it as source route for RREP.Otherwise, • May perform its own route discovery to S, piggyback the RREP on its own RREQ to S • Simply reverse the sequence of hops in the route record • Preferred by IEEE 802.11 that require a bidirectional frame exchange • Avoids the overhead of a possible second route discovery • Tests the discovered route Advantage : support asymmetric link
Y Z S RREP [S,E,F,J,D] E F B C M L J A G H D K I N Route Reply in DSR Represents RREP control message Route reply with its associated route record back to the source node
AODV vs. DSR DSR • Potentially larger overhead • Intended for moderate speed mobile nodes, source routing, not scalable to large networks • No network topology changes, no overhead • Support asymmetric link • Allow nodes keep multiple routes to one destination in their cache, faster route recovery AODV • Less control overhead • Support multicast • Require symmetric links between nodes • Good chance of scalability
References • Romit Roy Choudhury and Nitin H. Vaidya, “Impact of Directional Antennas on Ad Hoc Routing”. • Elizabeth M. Royer, C-K Toh, “A Review of Current Routing Protocols for Ad-Hoc Mobile Wireless Networks”. • Charles E. Perkins, “AD HOC Networking”