Network Layer: Mobile, Wireless Routing Y. Richard Yang 11/29/2012.

Slides:



Advertisements
Similar presentations
Network Layer Routing Issues (I). Infrastructure vs. multi-hop Infrastructure networks: Infrastructure networks: ◦ One or several Access-Points (AP) connected.
Advertisements

MANETs Routing Dr. Raad S. Al-Qassas Department of Computer Science PSUT
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols By Josh Broch, David A. Maltz, David B. Johnson, Yih- Chun Hu, Jorjeta.
Routing - I Important concepts: link state based routing, distance vector based routing.
Mobile Ad-Hoc Networks (MANET)
1 Routing in Mobile Ad Hoc Networks most slides taken with permission from presentation of Nitin H. Vaidya University of Illinois at Urbana-Champaign.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Mobile Ad Hoc Networks Routing 9th Week Christian.
MOBILITY SUPPORT IN IPv6
Routing in Mobile Ad Hoc Networks Marc Heissenbüttel University of Berne Bern,
ITIS 6010/8010 Wireless Network Security Dr. Weichao Wang.
CS541 Advanced Networking 1 Mobile Ad Hoc Networks (MANETs) Neil Tang 02/02/2009.
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
Comparison of Routing Metrics for Static Multi-Hop Wireless Networks Richard Draves, Jitendra Padhye and Brian Zill Microsoft Research Presented by Hoang.
Mobile IP.
Eric Rozner - ETX.ppt1 A High-Throughput Path Metric for Multi-Hop Wireless Routing Douglas S.J. Couto Daniel Aguayo John Bicket Robert Morris Presented.
EE 122: Intra-domain routing Ion Stoica September 30, 2002 (* this presentation is based on the on-line slides of J. Kurose & K. Rose)
Ad Hoc Wireless Routing COS 461: Computer Networks
Mobile Ad Hoc Networks: Routing, MAC and Transport Issues Material in this slide set are from a tutorial by Prof. Nitin Vaidya 1.
Mobile IP Performance Issues in Practice. Introduction What is Mobile IP? –Mobile IP is a technology that allows a "mobile node" (MN) to change its point.
CIS 725 Wireless networks. Low bandwidth High error rates.
Itrat Rasool Quadri ST ID COE-543 Wireless and Mobile Networks
Routing in mobile ad-hoc networks (MANETs). 1. WHAT IS A MANET ? A MANET can be defined as a system of autonomous mobile nodes A MANET can be defined.
1 Pertemuan 20 Teknik Routing Matakuliah: H0174/Jaringan Komputer Tahun: 2006 Versi: 1/0.
Mobile Routing protocols MANET
Mobile Adhoc Network: Routing Protocol:AODV
Ad-hoc On-Demand Distance Vector Routing (AODV) and simulation in network simulator.
Mobile IP Most of the slides borrowed from Prof. Sridhar Iyer
Ad-Hoc Networks. References r Elizabeth Royer and Chai-Keong Toh, " A Review of Current Routing Protocols for Ad Hoc Wireless Mobile Networks, " IEE Personal.
Network: Location Management Y. Richard Yang 3/21/2011.
1 Network Routing 11/2/2009. Admin. r Exam 1 Monday Nov. 9 m Covers architecture, application and transport layers (lectures 1-16, and resource allocation.
Routing Protocols of On- Demand Dynamic Source Routing (DSR) Ad-Hoc On-Demand Distance Vector (AODV)
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Routing Protocols for Mobile Ad-Hoc Networks By : Neha Durwas For: Professor U.T. Nguyen COSC 6590.
1 Dynamic Source Routing in Ad Hoc Wireless Networks David B. Johnson and David A. Maltz published in the book “Mobile Computing” 1996.
The Destination Sequenced Distance Vector (DSDV) protocol
Fault-Tolerant Papers Broadband Network & Mobile Communication Lab Course: Computer Fault-Tolerant Speaker: 邱朝螢 Date: 2004/4/20.
Asstt. Professor Adeel Akram. Infrastructure vs. multi-hop Infrastructure networks: One or several Access-Points (AP) connected to the wired network.
1 Ad Hoc On-Demand Distance Vector Routing (AODV) Dr. R. B. Patel.
#1 EETS 8316/NTU CC725-N/TC/ Routing - Circuit Switching  Telephone switching was hierarchical with only one route possible —Added redundant routes.
Mobile IP Outline Intro to mobile IP Operation Problems with mobility.
SRL: A Bidirectional Abstraction for Unidirectional Ad Hoc Networks. Venugopalan Ramasubramanian Ranveer Chandra Daniel Mosse.
Traditional Routing A routing protocol sets up a routing table in routers A node makes a local choice depending on global topology.
Routing and Routing Protocols
a/b/g Networks Routing Herbert Rubens Slides taken from UIUC Wireless Networking Group.
Dynamic Source Routing in Ad Hoc Wireless Networks
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
Ad Hoc On-Demand Distance Vector Routing (AODV) ietf
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
Fundamentals of Computer Networks ECE 478/578
CS 6401 Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm.
Performance Comparison of Ad Hoc Network Routing Protocols Presented by Venkata Suresh Tamminiedi Computer Science Department Georgia State University.
Mobile IP THE 12 TH MEETING. Mobile IP  Incorporation of mobile users in the network.  Cellular system (e.g., GSM) started with mobility in mind. 
Asstt. Professor Adeel Akram. Other Novel Routing Approaches Link reversal Aimed for highly dynamic networks Goal: to identify some path, as opposed.
1 Network Layer: Routing Distance Vector Protocols with Revisions and Link State Protocols Y. Richard Yang 4/13/2016.
Mobile Ad Hoc Networks. What is a MANET (Mobile Ad Hoc Networks)? Formed by wireless hosts which may be mobile No pre-existing infrastructure Routes between.
Sensor Network Routing
任課教授:陳朝鈞 教授 學生:王志嘉、馬敏修
Network: Traditional Routing
Mobile and Wireless Networking
Mobile Computing CSE 40814/60814 Spring 2018.
by Saltanat Mashirova & Afshin Mahini
Network: Routing Y. Richard Yang 3/30/2011.
Folien aus: Mobile Ad Hoc Networks: Routing, MAC and Transport Issues
Overview: Chapter 3 Networking sensors
Routing.
Vinay Singh Graduate school of Software Dongseo University
DSDV Destination-Sequenced Distance-Vector Routing Protocol
Routing in Mobile Wireless Networks Neil Tang 11/14/2008
A Talk on Mobile Ad hoc Networks (Manets)
Presentation transcript:

Network Layer: Mobile, Wireless Routing Y. Richard Yang 11/29/2012

2 Outline r Admin. and recap r Network layer m Intro m Location/service discovery m Routing

Admin. r Please use Sign Up on classesv2 for project meetings r Remaining topics to cover m Non-traditional routing m Localization m Controlled mobility m Applications such as signalguru, foursquare, … 3

Recap: Basic Network Layer 4 A E D C B F Each node is a network attachment point (e.g., router, base station), to which hosts/user device attaches User device identified by addressing scheme locator: identifies attachment point identifier: independent of location r Key problems m Location/service discovery Find attached point for id-based naming m Routing Find path from src to dst attach point

5 Recap: Service/Location Discovery r Basic DNS r Problem: fixed/static DNS record m Potential solution: Linda tuple space like store r Problem: Needs server infrastructure m Potential solution: mDNS/DNS-SD r Problem: Mapping from ID to locator can change as a device moves m Potential solution primitives: device update vs sys paging m Example: location area (LA) as a hybrid approach in cellnet Issue of LA based approach: Users roaming in LA borders may generate a lot of updates

6 Other Potential Hybrid Design r Timer based A MS sends an update after some given time T r Movement based A MS sends an update after it has visited N different cells r Distance based A MS sends an update after it has moved away for D distance (need ability to measure distance) r Profile based A MS predicts its mobility model and updates the network when necessary

7 Timer-based Location Management  A MS sends an update after some given timer T r The network pages the MS upon a call request at all cells which the MS can potentially arrive during T m cells reachable from last update cell, e.g., within distance v max * T, where v max is the maximum speed r Question: how to determine T?

8 Timer-based Location Management r Assume time between call arrivals is T call r Cell radius is d cell r Total bandwidth cost: Take derivative and set it to 0 to derive the optimal value:

9 Summary: Location Discovery r Two primitives of location discovery in cellular networks m update (a proactive approach) m paging (a reactive approach) r Hybrid update/paging tradeoff m location area (LA) based m timer based m movement based m distance based m profile based

Remaining Issue: Handoff r A MS may be in a call during mobility m the signal to/from the current serving base station (e.g., Node B in 3G) may gradually degrade as the MS moves away, and the signal to/from the next base station may become better r Issue: m signal strength of next base station is hard to know, if the MS is not actively communicating w/ the next base station 10

WCDMA Soft Handoff r An MS communicates with multiple Node Bs m Downlink: multiple base stations send to the MS and the MS combines the received signals m Uplink: multiple base stations receive data from the MS and forward to a RNC to combine The combing RNC is called the serving RNC 11

Serving RNC and Drift RNC 12 RNC1: Serving RNC RNC1: Serving RNC RNC2: Drift RNC Serving RNC handoff

UMTS Serving RNC Handoff r Serving RNC r Drift RNC 13

Outline r Admin. r Location management m cellular networks m IP networks 14

15 Mobile IP: Architecture r The current architecture to handle mobility in Internet is Mobile IP m Assume the current Internet model Mobile Node (MN): the node under consideration with a given IP address Correspondent Node (CN): communication partner Communication from CN to MN should not break as MN moves to a new attachment point A E D C B F CN MN (ip1)

16 Mobile IP: Basic Idea r Introduce Home Agent (HA) at home network to forward data to MN r Introduce Foreign Agent (FA) in the foreign network r Use foreign agent’s address as Care-of Address (COA)  MN always updates HA its current COA  HA tunnels data to MN using COA

17 Internet router FA HA home network foreign network (physical home network for the MN) (current physical network for the MN) routerend-system CN mobile node MN Illustration

18 Internet receiver FA HA MN home network foreign network sender 1 1. Sender sends to the IP address of the receiver as usual, FA works as default router CN Data Transfer from the Mobile Node

19 Internet sender FA HA MN home network foreign network receiver Sender sends to the IP address of MN, HA intercepts packet 2. HA tunnels packet to COA, here FA, by encapsulation 3. FA forwards the packet to the MN CN Data Transfer to the Mobile Node

20 r Triangular Routing m CN sends all packets via HA to MN m higher latency and network load r “Solution” m CN learns the current location of MN m direct tunneling to this location m HA or MN informs a CN about the location of MN r Problem of the solution m big security problems ! Problem of Mobile IP

21 Recap: Key Problems  Location/service management  Routing in wireless/mobile networks A E D CB F

Routing Overview r The objective of routing is to find a good path for each source destination pair r Issues m How to define a path to be good? m How do we compute the path? 22 A E D CB F

23 Link Metric r A typical measure for a good path is that it is the shortest path according to some metric r One possibility is to assign each link a metric of 1 (hop-count based routing) A E D CB F

24 Performance of Shortest Hop Count A E D CB F

25 Problems of Shortest Hop Count r maximizes the distance traveled by each hop m low signal strength -> high loss ratio m uses a higher TxPower -> interference A E D CB F

26 Metric: ETX r ETX of a link: The predicted number of data transmissions required to successfully transmit a packet over a link r ETX of a path: the sum of the ETX values of the links over that path r Examples: m ETX of a 3-hop route with perfect links: m ETX of a 1-hop route with 50% loss: “A High-Throughput Path Metric for Multi-Hop Wireless Routing” by D. De Couto, D. Aguayo, J. Bicket, R. Morris. Mibicom

27 Acquiring ETX r Measured by broadcasting dedicated link probe packets with an average period τ (jittered by ±0.1τ) r Delivery ratio: – count(t-w,t) is the # of probes received during window w – w/τ is the # of probes that should have been received

28 ETX: Example

29 ETX Performance

30 ETX: Advantages and Problem r Advantage m Tends to minimize spectrum use, which can maximize overall system capacity (reduce power too): node spends less time retransmitting data r Problem m ETX does not handle multirate networks

31 Extending ETX for Multirate r In a single rate environment, each transmission (of same pkt size) takes the same unit of time r For multirate, computes: m packet size = S, Link bandwidth = B r Interpretation: pick a path with the lowest total network occupation time “Routing in Multi-radio, Multi-hop Wireless Mesh Network,” Richard Draves, Jitendra Padhye, and Brian Zill. Mobicom 2004.

Outline r Admin and recap r Routing m Overview m Routing metric m Computing shortest path routing 32 A E D CB F

Design Dimensions r Proactive vs reactive (on-demand) r Complete information (optimal) vs partial information 33 A E D CB F

Outline r Admin and recap r Routing m Overview m Routing metric m Computing shortest path routing proactive/complete-info: link state 34 A E D CB F

35 Link-State Routing Algorithms r Separation of topology distribution from route computation r Used in OSPF, the dominant intradomain routing protocol used in the Internet r Net topology, link costs are distributed to all nodes r Link state distribution accomplished via “link state broadcast” r Each node (locally) computes its paths to all destinations

36 represents link represents a node that has received update B A S E F H J D C G I K M N L Link State Broadcast

37 B A S E F H J D C G I K M N L Link State Broadcast

38 Link State Broadcast B A S E F H J D C G I K M N L To avoid forwarding the same update multiple times, each update has a sequence number. If an arrived update does not have a higher seq, discard! - The packet received by E from C is discarded - The packet received by C from E is discarded as well - Node H receives packet from two neighbors, and will discard one of them

39 Summary of Link State Routing r Separation of topology distribution from route computation r Whenever a link metric changes, the node broadcasts new value r Q: What is the scope of updates when a link changes status? r Q: Does link state routing work well in a network with dynamic link status?

Outline r Admin and recap r Routing m Overview m Routing metric m Computing shortest path routing proactive/complete-info: link state proactive/partial-info: link reversal 40 A E D CB F

41 Link Reversal: Basic Idea r maintain a mesh r (hopefully) local adaptation to dynamic links

42 Links and DAG AFB CEG D Maintain a directed acyclic graph (DAG) for each destination, with the destination being the only sink This DAG is for destination node D Links are bi-directional But algorithm imposes logical directions on them CE up stream down stream

43 Link Reversal Algorithm: Illustration of Idea Link (G,D) broke AFB CEG D Any node, other than the destination, that has no outgoing links reverses some incoming links. Node G has no outgoing links

44 Link Reversal Algorithm: Illustration AFB CEG D Now nodes E and F have no outgoing links, the process continues. Represents a link that was reversed recently

45 Link Reversal Algorithm: Illustration AFB CEG D Now nodes B and G have no outgoing links Represents a link that was reversed recently

46 Link Reversal Algorithm: Illustration AFB CEG D Now nodes A and F have no outgoing links Represents a link that was reversed recently

47 Link Reversal Algorithm: Illustration AFB CEG D Now all nodes (other than destination D) have an outgoing link Represents a link that was reversed recently

48 Link Reversal Algorithm: Illustration AFB CEG D DAG has been restored with only the destination as a sink

Summary: Link Reversal r Motivations m maintain a mesh m (hopefully) local adaptation r Remaining questions: m how to implement it? m will reversal stop? r Next we will look into the questions using partial reversal (not full reversal, as the preceding example) 49

50 Link Direction Through Heights r A node i contains a triple (  i,  i, i) m  i : an integer (the major integer) m  i : another integer (the minor integer) m i : node index (to impose a total order) r The triple of a node is called the height of the node r Suppose there is a link from node i to node j, the direction is determined by their heights m i -> j: if (  i,  i, i) > (  j,  j, j) r For destination D, the height is (0, 0, D)

51 Illustration of Heights

52 Partial Reversal Algorithm r If the height of node i is lower than all of its neighbors, i.e., (  i,  i, i) < (  j,  j, j) for all j in N i, Increases  i to where N i is the set of neighbors of i. If there exists a neighbor j with the same  value after i has increased its , set  i to otherwise  i not changed

53 Illustration min  of all neighbors with new  min  of all neighbors

54 Example (0,4,1) (0,3,2) (0,2,3) (0,5,4) (0,2,5) (0,1,6) Destination: (0,0,0)

55 Example: Link from 6 to 0 is down (0,4,1) (0,3,2) (0,2,3) (0,5,4) (0,2,5) (0,1,6) Destination: (0,0,0)

56 Example: After Node 6 Reverses (0,4,1) (0,3,2) (0,2,3) (0,5,4) (0,2,5) (1,1,6) Destination: (0,0,0) 1 = min{0,0}+1

57 Example: After Nodes 3 and 5 Reverse (0,4,1) (0,3,2) (1,0,3) (0,5,4) (1,0,5) (1,1,6) Destination: (0,0,0) 1 = min{0,1}+1; 0 = min{1}-1

58 Example: After Nodes 2 Reverses (0,4,1) (1,-1,2) (1,0,3) (0,5,4) (1,0,5) (1,1,6) Destination: (0,0,0)

59 Example: After Nodes 1 Reverses (1,-2,1) (1,-1,2) (1,0,3) (0,5,4) (1,0,5) (1,1,6) Destination: (0,0,0)

60 Analysis: Convergence r Q: Does the partial reversal algorithm converge? r What is convergence? m a protocol converges if it stops after a finite number of steps after the last link Up/Down event

Analysis by Invariants r Invariants are statements defined over the states of the distributed nodes r A very effective method in understanding distributed asynchronous systems is invariants 61

62 Analysis r The state of a node m its height as well as its neighbors’ (potentially obsolete) heights r An invariant over the state of a node m  is non-decreasing

63 Convergence if Not Partitioned r Partial reversal always converges after a finite number of steps, if not partitioned m proof by contradiction: assume not converge, i.e., the protocol runs forever after the last change. Since each node will increase its  value by at least one after each step, then there should exist a subset of nodes whose  values go to infinite dest infinite

64 Partition D A B D A B Node A and node B will increase their heights repeatedly forever.

65 Analysis: Loop of Link Reversal r Does the partial reversal algorithm form loops? m the algorithm does not have any loops after convergence because the heights form a total order m before convergence, temporary loops may form due to inconsistent views

66 Temporally-Ordered Routing Algorithm (TORA) r TORA modifies the partial link reversal algorithm to be able to detect partitions r When a partition is detected, all nodes in the partition are informed, and link reversals in that partition cease r For details, see the backup slides at the end

67 Summary: Link Reversal Algorithms r Advantages m the DAG provides many hosts the ability to send packets to a given destination m beneficial when many hosts want to communicate with a single destination r Disadvantages m paths may not be the best m loops before convergence hurt performance

Design Dimensions r What does each node know? m Whole network topology and per link cost (link state) m Set of neighbors that can reach dest Link reversal  Neighbors’ costs to destination (distance vector) 68

69 Distance Vector Routing Algorithm r Based on the Bellman-Ford algorithm m at node X, the distance (or any additive link quality metric) to Y is updated by where d X (Y) is the current distance at node X from X to Y, N(X) is the set of the neighbors of X, and d(X, Z) is the distance of the direct link from X to Z r Implemented in the RIP routing protocol and some wireless mesh networks

70 Distance Table: Example A E D CB d () A B C D A 0 7  1 d(E,A) B  8 d(E,B) D  d(E,D) E distance tables from neighbors destinations A18A18 B  D42D42 computation E’s distance, forwarding table 1, A 8, B 4, D 2, D distance table E sends to its neighbors A: 1 B: 8 C: 4 D: 2 E: 0 Below is just one step! The algorithm repeats for ever!

71 Distance Vector in the Presence of Topology Dynamics r Good news propagate fast Link AB is up

72 Distance Vector in the Presence of Topology Dynamics r Bad news propagate slowly: referred to as the count-to-infinity problem Link AB is down or cost increases substantially

Why Count-to-Infinity r Routing loop: a loop is a global state (consisting of the nodes’ local states) at a global moment (observed by an oracle) such that there exist nodes A 1, A 2, …, A n such that A 1 (locally) thinks A 2 as down stream, A 2 thinks A 3 as down stream, A n thinks A 1 as down stream 73

74 Destination-sequenced distance vector protocol (DSDV) r There are optimizations but we present the base protocol m Only handle the case when link is broken r Let’s assume the destination node is D r Basic idea: m DSDV tags each route with a sequence number m Each destination node D periodically advertises monotonically increasing even sequence numbers m When a node realizes that the link that it uses to reach destination D is broken, the node increases the sequence number for D to be one greater than the previous one (odd number).

75 DSDV: Details r Periodical and triggered updates m periodically D increases its seq# S D by 2 and broadcasts with (S D, 0) m if A is using B as next hop to reach D and A discovers that the link AB is broken A increases its sequence number S A by 1 (odd) sets d A to , and sends (S A, d A ) to all neighbors

76 DSDV: Details r Update after receiving a message m Assume B sends to A the information (S B, d B ), where S B is the sequence number at B for destination D and d B is the distance from B to D; when A receives (S B, d B ) if S B > S A and A uses B as next hop then // higher seq#, always update –S A = S B –if (d B ==  ) d A =  ; else d A = d B + d(A,B) else if S A == S B, then // conditional update –if d A > d B + d(A,B) d A = d B + d(A,B) and uses B as next hop A B route update (S B, d B )

DSDV: Example 77 D D H G F C E B A

78 Question r Does DSDV solve the count-to-infinity problem (i.e., no routing loop is formed)?

79 Technique r Again use the invariant method to understand the distributed asynchronous protocol r Consider any node A r What is the state of node A? m (S A, d A )

80 Consider a Single Node A r What properties do you observe about the state of node A, i.e. (S A, d A )? m S A is non-decreasing m d A is non-increasing for the same sequence number time

81 Invariants r For any node m sequence number is non-decreasing m for the same sequence number, distance is non-increasing r For a pair of nodes, if A (according to local state) considers B as next hop to destination D: m either S B > S A (B updates seq# after sends update) m or S B == S A implies d B < d A if link cost is not zero A B time

82 Claim: DSDV Does Not Form Loop r Proof by induction and contradiction m assume initially no loop (no one has next hop so no loop) m derive contradiction by assuming that we have a loop when we add a new link, e.g., when A decides to use B as next hop A B update

83 Loop Freedom of DSDV r Consider a critical moment m A considers B as next hop and forms a loop  If any link in the loop (X considers Y as next hop) satisfies S Y > S X by transition along the loop S B > S B r If all nodes along the loop have the same sequence number by transition along the loop d B > d B A B X Y update

84 Discussion of DSDV r Q: what is the scope of updates when a link changes status?

85 Summary: Routing Algorithms Complete information: r Nodes maintain complete topology, link cost info r “link state” algorithm Partial connectivity information: r Nodes maintain reachability topology (mesh) for each dest. r “link reversal” algorithm Distributed next hop distance: r Nodes maintain distance to each dest. r Iterative process of computation, exchange of info with direct neighbors r “distance vector” algorithm, e.g., DSDV A E D CB F

Outline r Admin and recap r Routing m Overview m Routing metric m Computing shortest path routing proactive/complete-info: link state proactive/partial-info: link reversal reactive/partial-info: dynamic source routing 86 A E D CB F

87 Dynamic Source Routing r On-demand route discovery m link state, link reversal, DSDV protocols are proactive: they continuously maintain routes/topology m DSR is a reactive protocol, maintaining active routes only r Source routing m no need to maintain information at intermediate nodes

88 Dynamic Source Routing (DSR) r 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 r Source node S floods Route Request (RREQ) r Each node appends its own identifier when forwarding RREQ

89 Route Discovery: RREQ B A S E F H J D C G I K Z Y Represents a node that has received RREQ for D from S M N L

90 Route Discovery: RREQ B A S E F H J D C G I K Represents transmission of RREQ Z Y Broadcast transmission M N L [S] [X,Y] Represents list of identifiers appended to RREQ

91 Forwarding RREQ r A request is forwarded by a node if m the node is not destination m the node has not seen RREQ with the same sequence number (from the same source) r When forwarding RREQ, use a random delay to avoid collision

92 Route Discovery: RREQ B A S E F H J D C G I K Node H receives RREQ from two neighbors B and C Node C and E send RREQ to each other Z Y M N L [S,E] [S,C] [S,B]

93 Route Discovery: RREQ B A S E F H J D C G I K Node C receives RREQ from G and H, but does not forward it again, because node C has already forwarded RREQ once Z Y M N L [S,C,G] [S,E,F]

94 Route Discovery: RREQ B A S E F H J D C G I K Z Y M N L [S,C,G,K] [S,E,F,J]

95 Route Discovery: RREQ B A S E F H J D C G I K Z Y Node D does not forward RREQ, because node D is the intended target of the route discovery M N L [S,E,F,J,M]

96 Route Reply (RREP) r Destination D on receiving the first RREQ, sends a Route Reply (RREP) m why first? r RREP includes the route from S to D on which RREQ was received by node D r Question: how to send RREP from D back to S?

97 Route Reply in DSR r Route Reply is sent by reversing the route in Route Request (RREQ) m this requires bi-directional link m to ensure this, RREQ should be forwarded only if it received on a link that is known to be bi- directional this also necessary for IEEE MAC is used to send data, then links have to be bi-directional (since Ack is used) r If unidirectional (asymmetric) links are allowed, then RREP may need a route discovery from D back to S

98 Route Reply B A S E F H J D C G I K Z Y M N L RREP [S,E,F,J,D] Represents RREP control message

99 Data Delivery in DSR B A S E F H J D C G I K Z Y M N L DATA [S,E,F,J,D] When node S sends a data packet to D, the entire route is included in the packet header hence the name source routing

100 DSR Optimization: Route Caching r Each node caches a new route it learns by any means, e.g., m when node S finds route [S,E,F,J,D] to node D, node S also learns route [S,E,F] to node F m when node K receives Route Request [S,C,G], node K learns route [K,G,C,S] to node S m when node F forwards Route Reply RREP [S,E,F,J,D], node F learns route [F,J,D] to node D m a node may also learn a route when it overhears data packets

101 DSR: Summary r Advantages m reactive: routes maintained only between nodes who need to communicate m route caching can further reduce route discovery overhead r Disadvantages m packet header size grows with route length due to source routing m flood of route requests may potentially reach all nodes in the network

102 Ad Hoc On-Demand Distance Vector r Combination of ideas in DSR and DSDV m on-demand mechanism of route discovery and route-maintenance from DSR m plus the hop-by-hop routing (not source routing), sequence numbers and periodic beacons from DSDV

Comparison of Routing Algorithms in the Presence of Topology Dynamics

104 Comparisons of The Protocols r Some key parameters affecting the performance of a routing protocol m number of nodes m mobility model, e.g., the way-point model, where each node picks a random target, moves to the target at a random speed picked uniformly in a range, pauses for some time after arrival m traffic model, e.g., Constant Bit Rate (CBR) r Performance metrics m packet delivery ratio m routing overhead m path optimality

105 Path Optimality: Difference from Optimal 50 nodes; 20 sources; 20 m/s

106 Comparison: Packet Delivery Ratio 50 nodes; 20 sources; 20 m/s

Comparison: Packet Delivery Ratio nodes; 20 sources; 1 m/s

108 Summary: Routing r So far, all routing protocols are in the framework of traditional wireline routing m a graph representation of underlying network point-to-point graph, edges with costs m select a lowest-cost route for a src-dest pair m commit to a specific route before forwarding m each node forwards a received packet as it is to next hop r Problems: don’t fully exploit path (spatial) diversity and wireless broadcast opportunities