1 / 35

Ubiquitous Networks Mobile Ad Hoc Networks

Ubiquitous Networks Mobile Ad Hoc Networks. Lynn Choi Korea University. Mobile Ad hoc Network. Ad hoc network consisting of mobile nodes Ad hoc network No infrastructure such as base stations or access points Self-organizing networks Mobile nodes Any node can be mobile anytime

yachi
Download Presentation

Ubiquitous Networks Mobile Ad Hoc Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ubiquitous NetworksMobile Ad Hoc Networks Lynn Choi Korea University

  2. Mobile Ad hoc Network • Ad hoc network consisting of mobile nodes • Ad hoc network • No infrastructure such as base stations or access points • Self-organizing networks • Mobile nodes • Any node can be mobile anytime • Each node is assumed to be more powerful compared to sensor nodesin terms of computation power, memory, and energy source • Examples – automobile networks, mobile user networks • Peer-to-peer communication patterns • Any node can send data packet to any other node • Neither sources nor sinks • Networking issues • Not easy to use topology-based routing since the mobility of nodes may change the topology anytime. Node mobility may lead to frequent routing failures.

  3. Two main groups of routing protocols Proactive protocols (Table driven) Destination-Sequenced Distance Vector (DSDV) Optimized Link State Protocol (OLSR) [RFC 3626] Topology Broadcast Based on Reverse-Path Forwarding (TBRPF) [RFC 3684] Reactive protocols (On-demand) Dynamic Source Routing (DSR) Ad-hoc On-demand Distance Vector (AODV) [RFC 3561] Hybrid Protocols Zone Routing Protocols (ZRP) Routing Protocols for MANET

  4. Classification of MANET Routing Protocols Unicast-Routing Protocol for MANET (Topology-based) Table-Driven/ Proactive Hybrid On-Demand-driven/Reactive Clusterbased/ Hierarchical Distance- Vector Link- State ZRP DSR AODV TORA LANMAR CEDAR DSDV OLSR TBRPF FSR STAR MANET: Mobile Ad hoc Network (IETF working group)

  5. Routing Protocols for Ad-hoc Networks • Proactive protocols • Create and maintain routes to all hosts proactively • Conventional approach to routing protocols • Table-driven • Distance vector and link state protocols send periodicrouting advertisement • (+) Lower latency – since routes are maintained at all times • (-) Higher overhead – due to continuous route updates • (-) Convergence problems • Reactive Protocols • Obtain a route only when needed • Source-driven (on-demand) • Eliminate periodic updates – saves power and bandwidth • Potentially increased latency while routes found or repaired • (+) Low overhead – routes are determined on demand • Skipping periodic updates saves energy • (+) Quicker response to topology changes • (-) Higher latency – need route discovery • Which approach achieves a better trade-off depends on the traffic and mobility patterns • In general, reactive protocols are more popular in MANET

  6. Distance-Vector Routing • Two classes of proactive routing algorithms • Link state routing • Each node maintains a global view of the network topology with a cost for each link • Shortest-path computation • Each node periodically broadcastslink costs to its outgoing links • Distance vector routing • Every node maintains the distance and the direction to each destination • No global view of the topology • Each node periodically sends routing table to all neighbors • Distance vector routing • Each node maintains a routing table containing • List of all available destinations • Distance to each each destination • Next hop to reach a destination • The succession of next hops leads to a destination • Each node periodically broadcasts its current estimate of the shortest distance to each available destination to all of its neighbors • Typical representative • Distributed Bellman-Ford (DBF) • Computes single-source shortest paths in a weighted directed graph

  7. Bellman-Ford Algorithm Initialize Single Source (G,s) for each vertex v V[G] do d[v]  [v]  NIL d[s]  0 Bellmann-Ford (G,w,s) Initialize-Single-Source (G,s) for i  1 to |V[G]|-1 do for each edge (u,v) E[G] do Relax (u,v,w) for each edge (u,v) E[G] do if d[v] > d[u]+w(u,v) then return FALSE return TRUE Relax (u,v,w) if d[v] > d[u] + w(u,v) then d[v]  d[u] + w(u,v) [v]  u d[v]: distance [v]: next hop Check for negative weight cycles

  8. Bellman-Ford Algorithm

  9. Bellman-Ford Routing • Advantages • Computationally efficient • Easy to implement • Routing loop problem • Can cause loops • At time t0, B detects link cost changes (4 to 60) and computes its new minimum distance to A • DB(A) = min { 60, 1 + DC(A)} = min{60, 1+5} = 6 • Without the gloval view of the network, node B concludes that it can reach A in 6 hops! • So, in order to get to A, B would route through C and C routes through B, causing a routing loop • Count-to-infintiy problem • At time t1, B informs C of its new distance vector • At time t2, C receives B‘s new distance vector and computes its new minimum distance to A • DC(A) = min { 50, 1 + DB(A)} = min{60, 1+6} = 7 • At time t3, C informs B of its new distance vector • At time t4, B receives C‘s new distance vector and computes its new minimum distance to A, which is 8 • This continues 60 B 4 1 C A 50

  10. DSDV • Design goals: • Keep the simplicity of Bellman-Ford • Address the routing loop and count-to-infinity problems • Approach: • Guarantee loop freeness • New table entry for Destination Sequence Number • Allow fast reaction to topology changes • Make immediate route advertisement on significant changes in routing table • But wait for advertising unstable routes (damping fluctuations)

  11. DSDV Routing Table • Sequence number • Originated from destination. • Ensures loop freeness. • Install Time • When entry was made (used to delete stale entries from table) • Stable Data • Pointer to a table holding information on how stable a route is. Used to damp fluctuations in network.

  12. Route Advertisements & Updates • Route advertisements • Advertise to each neighbor its own routing information • Destination Address • Metric = Number of Hops to Destination • Destination Sequence Number • Rules to set sequence number information • On each advertisement increase own destination sequence number (use only even numbers) • If a node is no more reachable (timeout) increase sequence number of this node by 1 (odd sequence number) and set metric =  • Immediate versus periodic updates • Immediate advertisements • Information on new Routes, broken Links, metric change is immediately propagated to neighbors. • Otherwise, periodic updates • Full/Incremental Update: • Full Update: Send all routing information from its own table. • Incremental Update: Send only entries that has changed. (Make it fit into one single packet)

  13. Route Selection • Route selection • Update information is compared to its own routing table • Select route with higher destination sequence number. • This ensure to use always newest information from destination) • Select the route with better metric when sequence numbers are equal. • Stale entries • Defined to be entries that have not been updated the last few update periods • Stale entries are deleted at the same time when routing updates are applied to the routing table • Any route using that host as a next hop is deleted, including the route indicating that host as the actual destination

  14. Receiving Fluctuating Routes • What might happen: • MH9 broadcasts update information to MH Collections I and II • MH2 transmits new routing information to MH4 • MH4: new sequence number  routing table update  broadcast update • MH6 transmits new routing information to MH4, same sequence number, better metric • MH4: same seq.no., better metric  update routing table  broadcast update MH9 Mobile Host Collection I Mobile Host Collection II MH2 MH6 MH4

  15. Damping Fluctuation • Causes for Fluctuation: • Many hosts with irregular updates • Different propagation speed • Different transmission intervals • Broadcasts are asynchronous events • Solution • Keep a route settling time table in each node with a time to wait for a route with a better metric before advertising the update message. • Settling time • Calculated by maintaining a running weighted average over the most recent updates of the routes for each destination.

  16. Example of DSDV in operation MH3 MH4 MH5 MH2 MH8 MH6 MH7 MH1 MH4 advertised table:

  17. Example of DSDV in operation MH3 MH4 MH5 MH2 MH8 MH6 MH7 MH1 MH1 • Update triggered by MH1 , broadcasted to MH7 and MH8 • On detection of broken link: Immediate incremental update triggered by MH2 with odd sequence number and infinite metric • Updates are propagated through the network

  18. Example of DSDV in operation MH3 MH4 MH5 MH2 MH8 MH6 MH7 MH1 MH4 advertised table (updated):

  19. Simulation results • Simulation by Broch, Maltz, Johnson, Hu, Jetcheva • DSDV fails to converge if nodes don‘t pause for at least 300 seconds • Packet delivery ratio is in the range of 70%-92% at higher rate of mobility • Packet loss is mainly caused by stale routing entries • Routing overhead is approximately constant, regardless of movement rate or traffic load • Nearly optimal path can be selected in routing procedure

  20. Stability and Scalability • Stability and Scalability • DSDV requires a full dump update periodically  DSDV is not efficient in route updates • DSDV limits the number of nodes that can join the network • Whenever topology of a network changes, DSDV is unstable until update packets propagate through the network • Conclusion • DSDV is effective for creating ad-hoc networks for small populations of mobile nodes • DSDV is a fairly brute force approach, because connectivity information needs periodical update througout the entire network • Current Status • DSDV is a well-known routing algorithm for ad hoc network routing • No standard specifications or commercial implementations available • Many improved protocols based on DSDV have been developed • Example: AODV: Ad-hoc On-Demand Distance Vector Routing

  21. Optimized Link State Routing (OLSR) Protocol • [RFC 3626] • The overhead of flooding link state information is reduced by requiring fewer nodes to forward the information • Conventional link-state routing • For each node, disseminate its links to all other nodes • Use SPF algorithm to generate routing table • Optimized variant of conventional link state routing • A broadcast from node X is only forwarded by some of its links (multipoint relays) • Modified Shortest Path First routing

  22. Topology Broadcast Based on Reverse Path Forwarding • [RFC 3626] • A variation of link state algorithm • Idea • The communication cost can be reduced if the updates are sent along spanning trees despite the additional cost for maintaining these trees. • Most link state algorithms are based on flooding. • Transmits only the differences between the previous network state and the current network state • Reference • B. Bellur, and R.G. Ogier. 1999. "A Reliable, Efficient Topology Broadcast Protocol for Dynamic Networks," Proc. IEEE INFOCOMM ’99, pp. 178–186.

  23. Dynamic Source Routing (DSR) -Route Discovery • When node S wants to send a packet to node D, but does not know a route to D, node S initiates aroute discovery • Source node S floodsRoute Request (RREQ) • RREQ contains initiator, target, and unique request ID determined by RREQ initiator • RREQ also contains a record listing address of each intermediate node through which RREQ has been forwarded • When a node receives RREQ, if it is the target, it sends a Route Reply (RREP)message • Otherwise, if the node receiving RREQ recently saw another RREQ from the initiator having the same request ID, or if it finds that its own address is already listed in the route record, it discard the RREQ • If not, the node appends its own address to the route record in the RREQ and forward it

  24. Route Discovery in DSR • Building of the route record during route discovery N2 N1-N2 Destination N1-N2-N5 N8 N5 N1 Source N1-N3-N4 N1-N3-N4-N7 N1 N7 N1-N3-N4 N4 N1-N3 N1 N1-N3-N4-N6 N3 N1-N3-N4 N6

  25. Route Reply in DSR • Propagation of the route reply with the route record N2 N1-N2-N5-N8 Destination N1-N2-N5-N8 N8 N5 N1-N2-N5-N8 Source N1 N7 N4 N3 N6

  26. Dynamic Source Routing (DSR) -Data Delivery • RREP can be sent by reversing the route in RREQ • Assume that links are bi-directional • If unidirectional links are allowed, then RREP may need a route discovery for S from node D, unless D already knows a route to S (in its route cache) • RREP includes the route from S to D • The entire route is included in the packet header (hence source routing) • Intermediate nodes use the source route included in the packet to determine to whom a packet should be forwarded • On receiving RREP, intermediate nodes cache the route included in RREP • Route Maintenance - Route Error packet • A node generates Route Error packet, when the data link layer encounters a fatal transmission problem • Receiving node removes • The hop in error from the node’s route cache • All routes containing the hop

  27. Data Delivery in DSR • Packet header size grows with route length DATA N1-N2-N5 N2 Destination DATA N1-N2-N5-N8 DATA N1-N2 N8 N5 Source N1 N7 N4 N3 N6

  28. Ad Hoc On-Demand Distance Vector Routing (AODV) • <RFC3561> • DSR includes source routes in packet headers • Resulting large headers can sometimes degrade performance • Particularly when the data content of a packet is small • Also, packet header size grows with route length • AODV attempts to improve on DSR by maintaining routing tables at the nodes, • So that data packets do not have to contain routes • When node S want to send a packet to node D, it checks its route table to determine whether it has a route to D • If S has a route to D, S forwards packets to the next hop toward D • If S does not have route to D, S initiates route discovery

  29. AODV -Route Discovery • Source node S floods Route Request (RREQ), which contains • Source IP address • Destination IP address • Source node’s current sequence number • Last known sequence number from the destination • Broadcast ID • Hop count • After sending RREQ, S sets a timer to wait for a reply • When a node receives RREQ • It checks whether it has already seen the RREQ by noting source address/broadcast ID pair. If so, it discard it • Otherwise, it setup a reverse path pointing towards the source • AODV assumes bi-directional links • Sets up reverse route entry which contains source address, sequence #, # of hops to S, neighbor address from which the RREQ was received • If route entry is not used within specified lifetime, the route entry is deleted to prevent stale routing • Timeout should be long enough to allow RREP to come back

  30. AODV -Route Discovery • A node can send a RREP if • 1) it has an unexpired entry for the destination in its route table, and • 2)it knows a more recent path than the one previously known to sender S • To determine whether the path known to an intermediate node is more recent, destination sequence number is used • A node which knows a route, but with a smaller sequence number, cannot send RREP • If the node cannot send RREP • It increments RREQ’s hopcount and then broadcast the RREQ to its neighbors

  31. Route Requests in AODV Broadcast transmission S E F B C J A G H D K I Represents transmission of RREQ Represents links on Reverse Path

  32. AODV -Forward Path Setup • When the destination receives a RREQ, • It replies by sending a RREP, where it places the current sequence #, initializes hop count to 0, and places the length of time the route is valid in lifetime field • When an intermediate node receives RREP, • It sets up a forward path entry to destination in its route table, which contains destination address, neighbor address from which the RREP arrived, hop-count (distance) to the destination, and lifetime • To obtain the distance to destination, each node increments the value in hop-count by one • Lifetime in route table is set to the lifetime contained in the RREP • Each time the route is used, its lifetime is updated • If the route is not used within the specified lifetime, it is deleted • A node may receive RREP for a given destination from more than one neighbor • It forwards first RREP and forward a later RREP only if the RREP contains a larger destination sequence number or a smaller hop-count • RREP travels along the reverse path setup when RREQ is forwarded • S can begin data transmission as soon as the first RREP is received and later updates its routing info if it discovers a better route

  33. Route Reply in AODV RREP S RREP E F RREP B C J RREP A G H D K I Represents links on path taken by RREP

  34. Data Delivery in AODV DATA DATA S DATA E F B C DATA J A G H D K I Routing table entries used to forward data packet. Route is not included in packet header. At most one next-hop per destination maintained at each node

  35. Zone Routing Protocol (ZRP) s s s s s s s s s • All nodes have their own Zone, based on Zone Radius. • Intra Zone : Proactive • Inter Zone : Reactive L K M C B s G D E A H F I Intra Zone Inter Zone

More Related