Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
1
1
Minseok Kwon
Department of Computer Science Rochester Institute of Technology
http://www.cs.rit.edu/~jmk
2
Dynamic Source Routing (DSR) • Route discovery
• Source floods Route Request (RREQ) -- potential collision. • Each node appends own identifier when forwarding RREQ. • A node does not forward a RREQ if it is a duplicate. • Destination D replies a Route Reply (RREP) following the reverse of
the route in RREQ.
B
A
S E F
H
J
D
C
G
I K
M
N
L
[S,C,G,K]
[S,E,F,J]
RREP [S,E,F,J,D]
3
Other Issues • Actual data transmission
• After route discovery, source sends actual data to destination over the discovered route.
• Each packet includes the entire route in its header (source routing).
• What if the links are not bi-directional? • RREQ is forwarded only if a link is bi-directional. • If unidirectional links exist, destination also needs to issue a route
discovery to source. • In this case, the Route Reply can be piggybacked on the RREQ from
D. • 802.11 guarantees bi-directional links (ACK).
• Route Error (RERR) • If the link J-D fails, J sends a RERR to S along a discovered route. • If a node hears RERR, remove link J-D from their route cache.
4
DSR: Route Caching • Each node caches learned routes.
• If S receives RREP [S,E,F,J,D], it also learns route [S,E,F,J] to J. • If K receives RREQ [S,C,G], it also learns route [K,G,C,S] to S. • If F receives RREP [S,E,F,J,D], it also learns route [F,J,D] to D. • A node also learns routes by overhearing data packets. • An intermediate node can also respond RREP if it knows a path to
destination. • Route caching 1) reduces RREQ flooding and 2) speeds up route discovery.
B
A
S E F
H
J
D
C
G
I K
M
N
L
[S,E,F,J,D] [E,F,J,D]
[F,J,D] [F,E,S]
[J,F,E,S]
[C,S]
[G,C,S]
5
DSR: Pros and Cons • Advantages
• Routes only for communicating nodes • Route caching reduces route discovery overhead • A single route discovery may find multiple routes.
• Disadvantages • Packet header size grows with route length. • Flooding adds complexity. • Collisions may occur. • RREP storm problem may be possible. • Cache inconsistency or invalidation.
6
DSR: Reduce Flooding? • Location-Aided Routing
• Limit the scope of RREQ flooding to only the zone that is expected to have a target node.
• Physical information is required.
• Query localization • RREQs are propagated only along paths that are close to the
previously known route. • A new path can have at most k nodes not present in the
previous path.
• Reduce broadcast storm problem • Use probability, counts, and distance to reduce redundant
RREQ packet flooding.
2
7
AODV
B
A
S E F
H
J
D
C
G
I K
M
N
L
• Problem of DSR: potentially large header • AODV addresses this problem by maintaining routing tables at
the nodes • Reverse path setup
8
AODV • What if a routing table entry becomes old when not used?
• A routing table entry is purged if not used for a timeout interval.
• What if a network link fails? • A RERR message is propagated for a broken link.
• Can an intermediate node respond to RREQ? • Only if the node knows a more recent path to destination. • How do we know the current path is more recent? • We need destination sequence number for this. • So the node with higher sequence number only responds.
9
What is a Sensor Network?
Sensors
Base Stations Sensor Networks
10
Challenges • Sensor Nodes
• Very limited energy resources • Limited processing power and storage • Low bandwidth radio
• Unreliable communication channels • Battery depletion • Harsh environment
• Data aggregation opportunities • Remove duplicate or redundant data
• Can we build a scalable, energy-efficient, robust, and efficient-routing sensor network?
11
Directed Diffusion: Routing
1
9
6
8
5
3 2
4
7
(0,100)
(25,75) (0,75)
(25,100)
Reinforced Path Established Gradient
Interest: type = 4 legged animal interval = 1 s rect = [0, 75, 25, 100] timestamp = 1:20:40 expires = 1:30:40
Base Station Sensors
Directed Diffusion
12
Directed Diffusion • Base station (sink) broadcasts exploratory interest I in order to
discover routes between source and sink. • Neighbors update interest-cache and forward I. • Gradient is established for I.
• When event E occurs and is matched to I, interest reply is diffused down gradient (exploratory gradient) for low-rate data.
• For high-rate data download, reinforce optimal path from exploratory gradients, and use only the reinforced path.
• If there is a link failure, choose the next best link. • Reinforce negatively lossy links and long-latency path.
3
13
Results
0 0.002 0.004 0.006 0.008 0.01
0.012 0.014 0.016 0.018
0 50 100 150 200 250 300
Aver
age
Diss
ipat
ed E
nerg
y
(Jou
les/
Node
/Rec
eive
d Ev
ent)
Network Size
14
Contributions and Critiques • Contributions
• Data-centric addressing • Application-awareness: data aggregation for energy
efficiency and efficient bandwidth utilization • Use gradient (exploratory and reinforced)
• Critiques • Optimal path does not maximize aggregation. • Exploratory paths create overhead. • What if nodes have different resource capacity?
15
Improving Wireless TCP • What are the differences in wireless TCP?
• Wireless transmission errors • Multi-hop routes on shared wireless medium (interference) • Route failures due to mobility
• These errors may cause fast retransmit, which results in congestion window reduction.
• Worse, burst errors may cause timeouts! • However, reducing congestion window in this case is unnecessary!
This will only reduce throughput! • Sadly TCP cannot distinguish between packet losses due to
congestion and transmission errors. • Question: How can we improve TCP throughput?
16
TCP with SACK
• In this protocol, the sender cannot distinguish packet losses due to transmission errors from network congestion.
1 2 3 4 5
0 3 0 4 0 5
2 1
congestion window = 5
SACKs are generated by receiver. Sender responds to SACKs or fast-retransmits.
Router does nothing for TCP congestion control
17
TCP-Aware Link Layer
1 2 3 4 5
0
0 3 0 4
0 5
2
1 congestion window = 5
Local SACK-based retransmit from router. Sender sees no duplicate ACKs and performs no fast-retransmit.
Router strips SACK info and suppresses any duplicate ACKs.
• High throughput from faster error recovery due to shorter RTT. • End-to-End semantics are retained, and no fast-retransmit at sender. • However, link-layer at router needs to be TCP-aware. • May not be possible if data and Acks go through different paths.
18
Split Connection
1 2 3 4 5
0 3
0 4
0 5
2
1 congestion window = 5
Local SACK-based retransmit from router. Sender frees packets from TCP stack.
Router stores packets and generates cumulative ACKs.
1 2 3 4 5
1 2 3 4 5
• Faster error recovery due to shorter RTT. • Different flow and congestion controls on the two connections. • However, the e2e semantics are violated. • Extra copy and storage are required at routers.
4
19
Acknowledgments • Some of the figures and results were taken or modified from the
following sources: • Original papers • Nitin Vaidya • Deborah Estrin