150 likes | 175 Views
Understand the dynamic AODV protocol for efficient routing in mobile networks, discover route maintenance, and implement demand-driven protocols.
E N D
Internet Networkingrecitation #4 Mobile Ad-Hoc Networks AODV Routing Spring Semester 2007, Dept. of Computer Science, Technion
Mobile Ad-Hoc Networks (MANET) • Wireless networks become an important part of the computers communication both globally and locally. • Ad-hoc networks are useful for providing communication support where no fixed infrastructure exists or the deployment of a fixed infrastructure is not economically profitable. • Ad-hoc networks consists of: • Mobile hosts • Non fixed communication infrastructure • No base station or any central entity which can follow the locations of the nodes. Internet Networking
Mobile Ad-Hoc Networks (Cont.) • Mobile nodes are using multi-hop wireless links • They form topology changing network without the aid of any central management. • Allthe nodes are free to move around • Each nodeis a router • The network is characterized by multi-hop connectivity. • A broadcast of routing messages may block other participants. • Such networks have been studied in the past in relation to defense research. • Recently there has been a renewed interest in this field due to common availability of low-cost laptops and palmtops with radio interfaces. • The challenge: • development of dynamic routing protocols that can efficiently find routes between two communicating nodes • the routing protocols must keep up with the high degree of node mobility that often changes the network topology drastically and unpredictably. Internet Networking
Demand-driven Routing Protocols • Creation of routes only when desired by the source node • Done by Route Discovery Process • Route Discovery Process is completed when: • a route is found • all possible routes have been examined • Maintenance of a Route • Until the destination becomes inaccessible along every path from the source • Until the route is no longer desired Internet Networking
Ad hoc On Demand Vector Routing (AODV) RFC 3561 • On demand – Only nodes on an active paths maintain routing information and exchange routing tables. • A node needs to discover and maintain a route to another node only if : • the two nodes need to communicate • it’s an intermediate forwarding station that maintains connectivity between two other nodes. • AODV makes use of sequence numbers created by the destination in order to maintain the most recent information between nodes. • It is also used in order to prevent routing loops. • All routing packets carry these sequence numbers. • AODV maintain timer-based states in each node regarding utilization of individual routing table entries • a routing table entry is “expired” if not used recently. Internet Networking
The protocol - “Route Request” (RREQ) • A source that needs a path to some destination broadcasts “Route Request” (RREQ) message enclosed by a monotonically increasing “broadcast ID” , a new “sequence number” of the sender and a last known “sequence number” of the destination. • The RREQ is broadcast until it reaches a node that has a route to the destination with a destination sequence number higher than that enclosed in the request (and still “fresh enough” information). • A RREQ propagating through the network establishes the next-hop information for the reverse route back to the source. Internet Networking
The protocol - “Route Response” (RREP) • A “Route Response” (RREP) is generated by the destination and propagates along the reverse route in order to establishes forward route information at the intermediate nodes. • Each node keeps the next hop for the destination. • Routing table information is restricted to the active nodes. A neighbor is considered active if it originates or relays at least one packet for the destination within the most recent active timeout period. Internet Networking
Maintenance • Failure of a link can be detected via hello messages or link layer detection. • When link goes down, the upstream nodes are notified of the failure • the destination is marked as unreachable in the routing tables of these nodes. • Timers: • Route request expiration timer • Route caching timeout • Active timeout period Internet Networking
Route Discovery Example B RREQ Node S needs a route in order to send data packet to D 1. It creates a Route Request (RREQ) along with: • D’s IP addr, last known D’s seq#. • S’s IP addr, new S’s seq#. • hopcount (=0). 2. It broadcasts RREQ to its neighbors 3. Node A receives RREQ • Makes reverse route entry for Sdest = S, nexthop = S, hopcnt = 1 • It has no route to D, so it continue to broadcast the RREQ S A C D Internet Networking
Route Discovery Example (Cont.) • The RREQ is broadcast to nodes B and C • Node C receives RREQ • Makes reverse route entry for Sdest = S, nexthop = A, hopcnt = 2 • It has a route to D whereas the seq# of this route is >= seq# in the RREQ, and it’s life-time counter > 0 • Thus – it’s internal table holds a newer information B RREQ S A C D Internet Networking
Route Discovery Example (Cont.) • Node C creates a Route Reply (RREP) with: • D’s IP addr • D’s Sequence # • C’s Sequence # • S’s IP addr • hopcount to D (=1) • Lifetime • Send the RREP to A • Node A receives the RREP • Makes forward route entry to Ddest = D, nexthop = C, hopcount = 2, Lifetime • Unicasts RREP to S • Node S receives RREP • Makes forward route entry to Ddest = D, nexthop = A, hopcount = 3, Lifetime B RREP S A RREP C D Internet Networking
Route Discovery with Multiple Routes Loop preventing • Node C receives replies from D and from B. • The reply from D was received before and was sent to A. • The reply from B will be ignored (it has the same sequence number). RREP- Seq# = x RREP- Seq# = x F E B RREP- Seq# = x RREP- Seq# = x RREP- Seq# = x RREP- Seq# = x G S A RREP- Seq# = x RREP- Seq# = x C D Internet Networking
Route Discovery Using Fresh Data • Sequence numbers are used as time stamps • Each message initiated by a node has its own Sequence number • The node that initiate the message increase the Sequence Number • A higher Sequence number means a newer route and allow nodes to compare how “fresh” is the information • RREQ with D-Seq#2 from S1 or S2 will cause route info to be sent till D. RREQ D-Seq# =1 S2 B RREQ D-Seq# =2 RREQ D-Seq# =1 D S1 A RREP D-Seq# =2 Internet Networking
Maintenance • If a link breaks down the intermediate node tries to perform a local repair to the needed destinations. • If it fails, a Route Error message is sent to upstream neighbors. • It lists all the destinations which are now unreachable. • A “DestCount” field is used to indicates the number of unreachable destinations. • A Node that receives an RERR: • Checks whether the sender is its next hop towards the destination. • Deletes or invalidates the route towards the destination if needed. • Forwards the RERR upstream if needed • Rediscovers route if still needed Internet Networking
Advantages of AODV Protocol • Highly Scalable • Need for broadcast is minimized • Quick response to link breakage in active routes • Loop free routes • Prevents network flooding during discovery • Repairs breaks in active routes locally instead of notifying source. Internet Networking