960 likes | 1.23k Views
UNIT-7. Mobile Ad hoc Networks. Contents. Syllabus from chapter 15, 17 in handbook of wireless networks and mobile computing. By Ivan Stojmenovic. MANET overview Properties of MANET MANET applications Routing and various routing algorithms Unicast routing protocols for MANET
E N D
UNIT-7 Mobile Ad hoc Networks
Contents Syllabus from chapter 15, 17 in handbook of wireless networks and mobile computing. By Ivan Stojmenovic • MANET overview • Properties of MANET • MANET applications • Routing and various routing algorithms • Unicast routing protocols for MANET • Broadcasting protocols for MANET • Multicasting Protocols for MANET • QOS Routing • Security in MANETS.
Mobile Ad Hoc Networks • Formed by wireless autonomous hosts • Without (necessarily) using a pre-existing infrastructure • Routes between hosts may potentially contain multiple hops • Host mobility cause route changes • Shared wireless channel
Why Ad Hoc Networks ? • Ease of deployment • Speed of deployment • Decreased dependence on infrastructure • User flexibility
Application areas • Military environments • Battle field: sensors, soldiers, vehicles • Emergency operations • search-and-rescue • policing and fire fighting • Civilian environments • conference halls • sports stadiums, Library, etc. • Personal area networking • laptop, PDA, cell phone, ear phone, wrist watch
Challenges • Lack of centralized entity • Shared unreliable wireless medium • Low bandwidth • Hidden/exposure node effect • Ease of snooping on wireless transmissions • Mobility-induced route changes/packet losses • Battery constraints • Asymmetric Capabilities • transmission ranges • battery life • processing capacity • Speed/pattern of movement
Why is Routing in MANET Different? • Host mobility • link failure/repair due to mobility • different characteristics than those due to other causes • Rate of link failure/repair may be high when nodes move fast • Distributed Environment • New performance criteria may be used • Route stability despite mobility • Packet delivery ratio • Routing Overhead
Routing Routing protocols in ad hoc networks need to deal with the mobility of nodes and constraints in power and bandwidth Current transport protocols (e.g. TCP) are not designed for wireless ad hoc networks
The properties of the ad-hoc network routing protocol • Simple • Less storage space • Loop free • Short control message (Low overhead) • Less power consumption • Multiple disjoint routes • Fast rerouting mechanism
Unicast Routing Protocols for Ad Hoc Networks • Many protocols have been proposed • Some specifically invented for MANET • Others adapted from protocols for wired networks • No single protocol works well in all environments • some attempts made to develop adaptive/hybrid protocols • Standardization efforts in IETF • MANET, MobileIP working groups • http://www.ietf.org
FLAT ROUTING ON-DEMAND-DRIVEN REACTIVE DSDV WRP AD-HOC MOBILE ROUTING PROTOCOLS HYBRID TABLE DRIVEN/ PROACTIVE DSR AODV TORA ZRP ZRP
Ad Hoc Unicast Routing Protocols • Proactive protocols • Traditional distributed shortest-path protocols • Maintain routes between every host pair at all times • Based on periodic updates; High routing overhead • Example: DSDV (destination sequenced distance vector) • Reactive protocols • Determine route if and when needed • Source initiates route discovery • Example: DSR (dynamic source routing) • Hybrid protocols • Adaptive; Combination of proactive and reactive • Example : ZRP (zone routing protocol)
Proactive unicast routing protocols Continuously makes routing decisions so routes are available when packets need to be transmitted Traditional distributed shortest-path protocols Maintain routes between every host pair at all times They consume a great deal of radio resources to exchange routing information Based on periodic updates High routing overhead However, pre-determined routes may rapidly lose their validity in an ad hoc network because its topology changes rapidly These attempt to maintain the network topology always updated by periodically exchanging control packets Every node has a complete forwarding table i.e. for any destination it knows the right next-hop, and optimal routing (e.g. shortest path) is possible Their problem is that the amount of control traffic is huge and often disproportionate In highly dynamic networks, it is likely to happen that most of the bandwidth is wasted in vain because nodes’ reaction to topological changes is slower than the topological changes themselves Examples: DSDV (destination sequenced distance vector).
Introduction • Routing Algorithm • Link-State algorithm: • Each node maintains a view of the network topology • Distance-Vector algorithm: • Every node maintains the distance of each destination
Link-State • Like the shortest-path computation method • Each node maintains a view of the network topology with a cost for each link • Periodically broadcastlink costs to its outgoing links to allother nodes such as flooding
Link-State A link costs F H B E C G D
Distance-Vector • known also as Distributed Bellman-Ford or RIP (Routing Information Protocol) • Every node maintains a routing table • all available destinations • the next node to reach to destination • the number of hops to reach the destination • Periodically send table to all neighbors to maintain topology
Distance Vector (Tables) 1 2 A B C
Distance Vector (Update) B broadcasts the new routing information to his neighbors Routing table is updated (A, 1) (B, 0) (C, 1) (A, 1) (B, 0) (C, 1) 1 1 A B C
Distance Vector (New Node) broadcasts to update tables of C, B, A with new entry for D (A, 1) (B, 0) (C, 1) (D, 2) (A, 2) (B, 1) (C, 0) (D, 1) (D, 0) 1 1 1 A B C D
Distance Vector (Broken Link) 1 1 1 D A B C
Distance Vector (Loops) (D, 2) (D, 2) 1 1 1 D A B C
Distance Vector (Count to Infinity) (D,5) (D,4) (D,4) (D,3) (D,2) (D,2) 1 1 1 D A B C
Distance Vector • DV not suited for ad-hoc networks! • Loops • Count to Infinity • New Solution -> DSDV Protocol
DSDV Protocol • DSDV is Destination Based • No global view of topology
DSDV Protocol • DSDV is Proactive (Table Driven) • Each node maintains routing information for all known destinations • Routing information must be updated periodically • Traffic overhead even if there is no change in network topology • Maintains routes which are never used
DSDV Protocol • Keep the simplicity of Distance Vector • 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 with advertising of unstable routes(damping fluctuations)
DSDV(Table Entries) • Sequence number originated from destination. Ensuresloop 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.
DSDV (Route Advertisements) • Advertise to each neighbor 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 =
DSDV (Route Selection) • Update information is compared to own routing table • 1. Select route with higher destination sequence number (This ensure to use always newest information from destination) • 2. Select the route with better metric when sequence numbers are equal.
DSDV (Tables) 1 2 A B C
DSDV (Route Advertisement) B increases Seq.Nr from 100 -> 102 B broadcasts routing information to Neighbors A, C including destination sequence numbers (A, 1, A-550) (B, 0, B-102) (C, 1, C-588) (A, 1, A-550) (B, 0, B-102) (C, 1, C-588) 1 1 A B C
DSDV (Respond to Topology Changes) • Immediate advertisements • Information on new Routes, broken Links, metric change is immediately propagated to neighbors. • Full/Incremental Update: • Full Update: Send all routing information from own table. • Incremental Update: Send only entries that has changed. (Make it fit into one single packet)
DSDV (New Node) 2. Insert entry for D with sequence number D-000Then immediately broadcast own table 1. D broadcast for first timeSend Sequence number D-000 (D, 0, D-000) A B C D
DSDV (New Node cont.) 3. C increases its sequence number to C-592 then broadcasts its new table. 4. B gets this new information and updates its table……. (A, 2, A-550) (B, 1, B-102) (C, 0, C-592) (D, 1, D-000) (A, 2, A-550) (B, 1, B-102) (C, 0, C-592) (D, 1, D-000) ……… ……… A B C D
DSDV (no loops, no count to infinity) 2. B does its broadcast-> no affect on C (C knows that B has stale information because C has higher seq. number for destination D) -> no loop -> no count to infinity 1. Node C detects broken Link:-> Increase Seq. Nr. by 1(only case where not the destination sets the sequence number -> odd number) (D, 2, D-100) (D, 2, D-100) D A B C
DSDV (Immediate Advertisement) 3. Immediate propagation B to A:(update information has higher Seq. Nr. -> replace table entry) 2. Immediate propagationC to B:(update information has higher Seq. Nr. -> replace table entry) 1. Node C detects broken Link:-> Increase Seq. Nr. by 1(only case where not the destination sets the sequence number -> odd number) (D, , D-101) (D, , D-101) D A B C
DSDV(Problem of Fluctuations) What are Fluctuations • Entry for D in A: [D, Q, 14, D-100] • D makes Broadcast with Seq. Nr. D-102 • A receives from P Update (D, 15, D-102)-> Entry for D in A: [D, P, 15, D-102] A must propagate this route immediately. • A receives from Q Update (D, 14, D-102)-> Entry for D in A: [D, Q, 14, D-102]A must propagate this route immediately. This can happen every time D or any other node does its broadcast and lead to unnecessary route advertisements in the network, so called fluctuations. A P Q 11 Hops 10 Hops (D,0,D-102) D
DSDV(Damping Fluctuations) How to damp fluctuations • Record last and avg. Settling Time of every Route in a separate table. (Stable Data)Settling Time = Time between arrival of first route and the best route with a given seq. nr. • A still must update his routing table on the first arrival of a route with a newer seq. nr., but he can wait to advertising it. Time to wait is proposed to be 2*(avg. Settling Time). • Like this fluctuations in larger networks can be damped to avoid unececarry adverdisment, thus saving bandwith. A P Q 11 Hops 10 Hops 10 Hops D
Summery of DSDV • Advantages • Simple (almost like Distance Vector) • Loop free through destination seq. numbers • No latency caused by route discovery • Disadvantages • No sleeping nodes • Overhead: most routing information never used
Reactive unicast routing protocols Determine routes on an as-needed basis: when a node has a packet to transmit, it queries the network for a route Source initiates route discovery They performed better than proactive protocols Reactive protocols are on-demand protocols: routes are discovered only if needed i.e. when the source does not know a route to the destination. Nodes do not make any effort to keep routing table updated Most of the routing protocols are reactive Examples: AODV DSR (dynamic source routing) TORA etc…
Dynamic Source Routing (DSR) [Johnson-96]
When node S wants to send a packet to node D, but does not know a route to D, node S initiates a route discovery • Source node S floods Route Request (RREQ) • Each node appends own identifier when forwarding RREQ
Route Discovery in DSR Y Z S E F B C M L J A G H D K I N Represents a node that has received RREQ for D from S
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 • Node H receives packet RREQ from two neighbors: • potential for collision
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 M C L J A G D H K I N [S,C,G,K] • Nodes J and K both broadcast RREQ to node D • Since nodes J and K are hidden from each other, their • transmissions may collide