Routing in Mobile Ad Hoc Networks (from Ad Hoc Networking by Charles Perkins)

Download Routing in Mobile Ad Hoc Networks (from Ad Hoc Networking by Charles Perkins)

Post on 11-Jan-2016




2 download


Routing in Mobile Ad Hoc Networks (from Ad Hoc Networking by Charles Perkins) Thanks to Prof. Yu at Cleveland State Univ. Contents. Network layer solutions in infrastructure-less networks What is MANET: Mobile ad hoc (multihop) networks? Routing algorithms for MANETs Flooding - PowerPoint PPT Presentation


<ul><li><p>Routing in Mobile Ad Hoc Networks(from Ad Hoc Networking by Charles Perkins) </p><p>Thanks to Prof. Yu at Cleveland State Univ.</p><p>*</p><p>ContentsNetwork layer solutions in infrastructure-less networks</p><p>What is MANET: Mobile ad hoc (multihop) networks?</p><p>Routing algorithms for MANETsFloodingDynamic Source Routing (DSR)Ad-hoc On-Demand Distance Vector (AODV)</p><p>*</p><p>Mobile Ad Hoc Networks (MANETs)A collection of mobile hosts may form a temporary network without the aid of any established infrastructure or centralized administration (base station)</p><p>Routes between nodes may potentially contain multiple hops, thus also called multihop networks</p><p>Better space utilization than direct communicationRequires a longer latency as for a single communication pair due to more number of hopsBut the overall performance improves because simultaneous transmissions are allowed as long as they are separated in spaceBetter energy utilization than direct communication</p><p>*</p><p>Mobile Ad Hoc NetworksACBEECBAMultihop communicationMay need to traverse multiple links to reach a destinationC is not reachable from A but can communicate via B</p><p>Major difficultyMobility causes route changesA graph can be used to model a MANET</p><p>*</p><p>Why Ad Hoc Networks ?AdvantagesEase of deploymentSpeed of deploymentDecreased dependence on infrastructureApplicationsPersonal area networkingcell phone, laptop, ear phone, wrist watchMilitary environmentssoldiers, tanks, planesCivilian environmentstaxi cab networkmeeting roomssports stadiumsboats, small aircraftEmergency operationssearch-and-rescuepolicing and fire fighting</p><p>*</p><p>Characteristics of MANETCharacteristicsDynamic topologyBroadcast transmission: overhearing is possibleBidirectional connectionLimited resources: bandwidth, CPU, batteryHigher link error rate</p><p>AssumptionsModerate movement with respect to packet transmission latencyPromiscuous receive modeEnough number of mobile hosts: no network partitioning</p><p>*</p><p>Hierarchical architectureInternetAPAPAPAPRouterRouterRouterRouter/GatewayRouter/GatewayMobile PathHandoffRouterRouterAP/RouterRouterRouterWireless Mesh BackhaulNew RouteOld Route802.11b/g(2.4GHz)802.11a(5GHz)</p><p>*</p><p>ContentsNetwork layer solutions in infrastructure-less networks</p><p>What is MANET: Mobile ad hoc (multihop) networks?</p><p>Routing algorithms for MANETsFloodingDynamic Source Routing (DSR)Ad-hoc On-Demand Distance Vector (AODV)</p><p>*</p><p>Flooding of Control PacketsHow to reduce the scope of the route request flood ?LAR (Localized Area Routing)Query localization </p><p>How to reduce redundant broadcasts ?The Broadcast Storm Problem</p><p>*</p><p>Flooding for Data DeliverySender S broadcasts data packet P to all its neighbors</p><p>Each node receiving P forwards P to its neighbors</p><p>Sequence numbers used to avoid the possibility of forwarding the same packet more than once</p><p>Packet P reaches destination D provided that D is reachable from sender S</p><p>Node D does not forward the packet</p><p>*</p><p>Flooding for Data DeliveryBASEFHJDCGIKRepresents transmission of packet PZYBroadcast transmissionMNL</p><p>*</p><p>Flooding for Data DeliveryBASEFHJDCGIK Node H receives packet P from two neighbors: potential for collisionZYMNL</p><p>*</p><p>Flooding for Data DeliveryBASEFHJDCGIK Node C receives packet P from G and H, but does not forward it again, because node C has already forwarded packet P onceZYMNL</p><p>*</p><p>Flooding for Data DeliveryBASEFHJDCGIKZYM Nodes J and K both broadcast packet P to node D Since nodes J and K are hidden from each other, their transmissions may collide =&gt; Packet P may not be delivered to node D at all, despite the use of floodingNL</p><p>*</p><p>Flooding for Data DeliveryBASEFHJDCGIKZY Node D does not forward packet P, because node D is the intended destination of packet PMNL</p><p>*</p><p>Flooding for Data DeliveryBASEFHJDCGIK Flooding completed Nodes unreachable from S do not receive packet P (e.g., node Z) Nodes for which all paths from S go through the destination D also do not receive packet P (example: node N)ZYMNL</p><p>*</p><p>Flooding for Data DeliveryBASEFHJDCGIK Flooding may deliver packets to too many nodes (in the worst case, all nodes reachable from sender may receive the packet)ZYMNL</p><p>*</p><p>Flooding for Data Delivery: Advantages &amp; DisadvantagesAdvantages</p><p>Simplicity</p><p>May be more efficient than other protocols when rate of information transmission is low enough</p><p>Potentially higher reliability of data deliveryBecause packets may be delivered to the destination on multiple paths</p><p>*</p><p>Flooding for Data Delivery: Advantages &amp; DisadvantagesDisadvantagesPotentially, very high overheadData packets may be delivered to too many nodes who do not need to receive themPotentially lower reliability of data deliveryFlooding uses broadcasting -- hard to implement reliable broadcast delivery without significantly increasing overheadBroadcasting in IEEE 802.11 MAC is unreliable (no ACK)In our example, nodes J and K may transmit to node D simultaneously, resulting in loss of the packet in this case, destination would not receive the packet at all </p><p>*</p><p>Dynamic Source Routing (DSR)Source determines the entire path to the destination when it has data packet to sendOn-demand or reactive protocolsNo periodic advertisements</p><p>Three control packets: RREQ, RREP, RERR</p><p>Procedures(1) Route discovery procedure (2) Route maintenance procedure(3) DSR Optimizations (Route cache)</p><p>*</p><p>Assumption:</p><p> Cooperative nodes Moderate speed of node Relatively small network diameter (5-10 hops) Detectable packet error Unidirectional or bidirectional link A single IP address Promiscuous mode (optional) </p><p>*</p><p>ABCEDGHFRoute DiscoveryRoute Request (RREQ)Route Reply (RREP)Initiator IDInitiator seq#Target IDPartial routeRREQ FORMAT Each node appends own identifier when forwarding RREQ RREQ is broadcast, while RREP is unicast</p><p>*</p><p>Route Discovery: at source AA needs to send to Gwait</p><p>*</p><p>Route Discovery: At an intermediate node in recently seen requests list?yes</p><p>*</p><p>Route Reply in DSRRoute Reply can be sent by reversing the route in Route Request (RREQ) only if links are guaranteed to be bi-directionalTo ensure this, RREQ should be forwarded only if it received on a link that is known to be bi-directional</p><p>If unidirectional (asymmetric) links are allowed, then RREP may need a route discovery for A from node G Unless node G already knows a route to node AIf a route discovery is initiated by G for a route to A, then the Route Reply is piggybacked on the Route Request from G.</p><p>If IEEE 802.11 MAC is used to send data, then links have to be bi-directional (since Ack is used)</p><p>*</p><p>Now, Route is DiscoveredNode A on receiving RREP, caches the route included in the RREP</p><p>When node A sends a data packet to G, the entire route is included in the packet headerhence the name source routing</p><p>Intermediate nodes use the source route included in a packet to determine to whom a packet should be forwarded</p><p>*</p><p>ABCEDGHFRoute MaintenanceGRoute Cache (A) G: A, B, D, G G: A, C, E, H, G F: C, E, F </p><p>*</p><p>Additional feature #1: Caching Overheard RoutesABCDENode A Cache E: A, B, C, D, ENode C Cache E: C, D, E</p><p>E: C, D, E A: C, B, AE: C, D, E A: C, B, A Z: C, X, Y, Z V: C, X, W, V</p><p>*</p><p>Route Caching: Beware!When sending a RREQSend first with TTL=1 hoping that nearby hosts have an entry: non-propagating route requestIf no reply for some time, send RREQ with maximum TTLThis is called Expand Ring Search</p><p>BewareStale caches can adversely affect performanceWith passage of time and host mobility, cached routes may become invalidA sender host may try several stale routes (obtained from local cache, or replied from cache by other nodes), before finding a good routeAdverse impact on TCP</p><p>*</p><p>Additional feature #2: RREP with Cached RoutesABCEDHFGRoute Cache (A) G: A, B, D, G F: C, E, F </p><p>Route Cache (C) G: C, E, H, G Route Cache (C) G: C, E, D, G </p><p>*</p><p>ABCEDGHFAdditional feature #3: Packet SalvageGRoute Cache (D) G: D, E, H, G Caution: No double salvage allowed !!!</p><p>*</p><p>A Summary of DSREntirely on-demand, potentially zero control message overheadTrivially loop-free with source routingConceptually supports unidirectional links as well as bidirectional links </p><p>High packet delays/jitters associated with on-demand routingSpace overhead in packets and route cachesPromiscuous mode operations consume excessive amount of powerNetwork partition problem - Message explosion problem (large number of route request packets)Use exponential backoff to limit the rate at which new route discoveries may be initiated for the same target</p><p>*</p><p>ContentsNetwork layer solutions in infrastructure-less networks</p><p>What is MANET: Mobile ad hoc (multihop) networks?</p><p>Routing algorithms for MANETsFloodingDynamic Source Routing (DSR)Ad-hoc On-Demand Distance Vector (AODV)</p><p>*</p><p>Ad Hoc On-Demand Distance Vector Routing (AODV)DSR vs DSDVDSR typically outperforms DSDV because periodic control messages are not neededA main drawback of DSR is the large packet header (entire route information)</p><p>AODV = DSR + DSDVRoutes are discovered only when there are packets (on-demand) as in DSRNodes main distance and next node vectors as in DSDV to reduce the header size* Explained very well in C.E.Perkins Ad Hoc Networking book</p><p>*</p><p>ABCEDGHFRoute Discovery in DSRRoute Request (RREQ)Route Reply (RREP)Initiator IDInitiator seq#Target IDPartial routeRREQ FORMAT Each node appends own identifier when forwarding RREQ</p><p>*</p><p>ABCEDGHFRoute Discovery in AODVRoute Request (RREQ)Route Reply (RREP)Initiator IDTarget IDHop countRREQ FORMAT Each node remembers where the packet came from (reverse path) during RREQ. It set up forward path during RREP.</p><p>*</p><p>Reverse Path Setup in AODVBASEFHJDCGIKZYMNL</p><p>*</p><p>Forward Path Setup in AODVBASEFHJDCGIKZYMNLForward links are setup when RREP travels alongthe reverse pathThose paths are not included in the header of each data packetbut stored in each node as a routing table or DV</p><p>*</p><p>Link State RoutingLSREach node periodically floods status of its linksEach node re-broadcasts link state information received from its neighborEach node keeps track of link state information received from other nodesEach node uses above information to determine next hop to each destination</p><p>Direct application of LSR in a MANET is difficult due to a large control overheadDue to mobility, broadcast period cannot be reduced as in wired network</p><p>*</p><p>Routing in MANET (Unicast)Many protocols have been proposedSome have been invented specifically for MANETOthers are adapted from previously proposed protocols for wired networksNo single protocol works well in all environmentssome attempts made to develop adaptive protocols</p><p>Proactive protocols (or called Table-based)Determine routes independent of traffic patternTraditional LS and DV routing protocols are proactiveReactive protocols (or called On-demand)Maintain routes only if needed (DSR)Hybrid protocols</p><p>*</p><p>Reactive Routing ProtocolsFloodingData packets are flooded to the destinationBut also to all other nodes =&gt; much overhead but more reliableDSR (Dynamic Source Routing)First, small control packet is flooded to discover a routeThen, unicast data packets along the discovered routeBut each data packet includes the information on the entire path in its packet header =&gt; larger packet sizeAODV (Ad-hoc On-demand Distance Vector)Route discovery as in DSR but each node keeps a routing table as in proactive algorithm to reduce the packet sizeReactive + Proactive</p><p>*</p><p>Trade-Off between Proactive and Reactive ProtocolsLatency of route discoveryProactive protocols may have lower latency since routes are maintained at all timesReactive protocols may have higher latency because a route from X to Y will be found only when X attempts to send to Y</p><p>Overhead of route discovery/maintenanceReactive protocols may have lower overhead since routes are determined only if neededProactive protocols can (but not necessarily) result in higher overhead due to continuous route updating</p><p>Which approach achieves a better trade-off depends on the traffic and mobility patterns</p></li></ul>