Download - CS 268: End-Host Mobility and Ad-Hoc Routing
CS 268: End-Host Mobility and Ad-Hoc Routing
Ion StoicaFeb 18, 2004
2
Overview
Wireless End-host mobility Ad-hoc routing
3
Wireless
Wireless connectivity proliferating- Satellite, line-of-sight microwave, line-of-sight laser,
cellular data (CDMA, GPRS, 3G), wireless LAN (802.11a/b), Bluetooth
- More cell phones than currently allocated IP addresses Wireless non-congestion related loss
- Signal fading: distance, buildings, rain, lightning, microwave ovens, etc.
Non-congestion related loss - Reduced efficiency for transport protocols that depend
on loss as implicit congestion signal (e.g. TCP)
4
Problem
0.0E+00
5.0E+05
1.0E+06
1.5E+06
2.0E+06
0 10 20 30 40 50 60
Time (s)
Seq
uenc
e nu
mbe
r (by
tes)
TCP Reno(280 Kbps)
Best possible TCP with no errors(1.30 Mbps)
2 MB wide-area TCP transfer over 2 Mbps Lucent WaveLAN (from Hari Balakrishnan)
5
Solutions
Modify transport layer Modify link layer protocol Hybrid
6
Modify Transport Protocol
Explicit Loss Signal- Distinguish non-congestion losses- Explicit Loss Notification (ELN) [BK98]- If packet lost due to interference, set header bit- Only needs to be deployed at wireless router- Need to modify end hosts- How to determine loss cause?- What if ELN gets lost?
7
Modify Link Layer
Advantages:- Limited changes: only link-layer affected- Preserve end-to-end (TCP) semantics
Three types of losses- Total packet loss- Partial packet loss- Packet corrupted by bit errors
Three methods to reduce packet loss- Packet retransmission- Forward error correction- Packet shrinking
8
Retransmission
Advantages:- Optimal overhead: only lost packets are retransmitted
Disadvantages: “nasty” interactions between TCP control look and link-level retransmission
- Both TCP and link-layer can retransmit same packets - Can introduce packet reordering - Can introduce highly variable delays
9
FEC
Forward Error Correction (FEC) codes- k data blocks, use code to generate n>k coded blocks- Can recover original k blocks from any k of the n blocks- n-k blocks of overhead- Trade bandwidth for loss- Can recover from loss in time independent of link RTT
• Useful for links that have long RTT (e.g. satellite)- Pay n-k overhead whether loss or not
• Need to adapt n, k depending on current channel conditions
10
FEC & Packet Shrinking
Advantages:- No changes at end hosts or base-stations above link-
layer- Decrease packet loss- Do not introduce variability
Disadvantages:- Overhead can be quite high, e.g., packet
segmentation/reassembly, encoding/decoding
11
Flex [Eckhardt &Steenkiste ’98] Combine the three types of error control seven
policies (three fixed and four adaptive) Most sophisticated : Flex
- When two or more packets in a window of ten are truncated reduces “safe” packet size by 85%
- When three consecutive packets do not experience truncation linearly increase packet size
- When two or more packets in a window of ten cannot be decoded decrease user data by 15% (more conservative coding)
- When three consecutive packets can be decoded increase user data linearly
Note: adaptation exhibits a linear-increase multiplicative-decrease behavior
12
Hybrid: Indirect-TCP [Bakre & Badrinath ’94]
Split TCP connection into 2 TCPs Advantages
- Optimize performance for wireless TCP- No changes to protocol for fixed hosts (transparent to fixed hosts)
Disadvantages- Violate end-to-end TCP semantics (why?)- High overhead, because dual stack at BS- Might introduce high delays because packet buffering
Fixed Host (FH) Base Station (BS) Mobile Host (MH)
wireless TCP
Internetregular TCP
13
Hybrid: Snoop-TCP [Balakrishnan et al. ’95]
Insert a “snoop agent” between fixed host (FH) and mobile host (MH)
- Monitor traffic, retransmit packets and discard acknowledgements
Notes:- Avoid violating end-to-end semantics- What about layering?
Fixed Host (FH)
Base Station (BS)
Mobile Host (MH)
Internet
TCP
packet retransmissions
14
Overview
Wireless End-host mobility Ad-hoc routing
15
Motivation and Problem
Network Layer mobility- Movement = IP address change
Problem:- Location
• I take my cell phone to London• How do people reach me?
- Migration• I walk between base stations while talking on my
cell phone• I download or web surf while riding in car or public
transit• How to maintain flow?
16
Solutions
Mobile IP (v4 and v6) TCP Migrate Multicast
17
Mobile IP
Use indirection to deal with location and migration Point of indirection: Home Agent (HA)
- Resides in Mobile Host’s (MH) home network- Uses MH’s home IP address- As MH moves, it sends its current IP address to HA
Correspondent Host (CH) contacts MH through HA
HA tunnels packets to MH using encapsulation MH sends packets back to CH
- Tunnels packets back to HA (bi-directional tunneling)- Sends directly to CH (triangle routing)
18
Mobile IP Properties
Advantages- Preserves location privacy- CH does not have to be modified
Disadvantages- Triangle routing and especially bidirectional tunneling
increase latency and consume bandwidth- HA is single point of failure
19
Mobile IP Route Optimization
CH uses HA to contact MH initially MH sends its location directly back to CH CH and MH communicate directly Lose location privacy CH must be modified
20
TCP Migrate [SB00]
Location: uses dynamic DNS updates- When MH moves to new IP address, it updates its home DNS server
with new hostname to IP address mapping Migration:
- When MH moves, it sends update to CH Advantage
- No new infrastructure- Incremental deployable- Efficient routing
Disadvantages- Only works for TCP- Both CH and MH need new TCP implementation- No location privacy
21
i3 Based Mobility (Z+03) Receiver R maintains a trigger (id, R) in the i3 infrastructure; sender
sends packets to id Advantages
- Support simultaneous mobility- Efficient routing: receiver can chose id to map on a close i3 server- Ensure privacy
Disadvantage- Require a new infrastructure
SenderReceiver
(R1)
Receiver(R2)
id R1id R2
22
Other solutions
Network specific mobility schemes- Cellular phones, 802.11b - Cannot handle mobility across networks (e.g. move
laptop from cell phone to 802.11b) or between same network type in different domains (e.g. laptop from Soda Hall 802.11b to campus 802.11b)
Other mobility models- Terminal/personal mobility:
• e.g.accessing email through IMAP from different computers
- Session mobility:• e.g. talking on cell phone, transfer call in progress to
office phone
23
Summary
Not that important today- Few portable, wireless IP telephony devices- Cell phones have their own network-specific mobility
schemes- IP-based wireless networks are not ubiquitous enough
to be seamless- PDA (e.g. palm pilot) are too weak to do handle long-
lived flows Future
- Cellular networks will become IP-based, need IP mobility scheme
- PDA are becoming more powerful
24
Overview
Wireless End-host mobility Ad-hoc routing
25
Motivation
Internet goal: decentralized control- Someone still has to deploy routers and set routes
Ad Hoc routing- Every node is a router- Better wireless coverage- Better fault tolerance (e.g. node bombed, stepped on,
exhausted power)- No configuration (e.g. temporary association)- Dedicated router costs money
26
Routing
DSDV: destination-sequenced distance vector TORA: Temporally-Ordered Routing Algorithm DSR: Dynamic Source Routing AODV: Ad hoc On-demand Distance Vector
TORA, DSR, and AODV are all on-demand routing protocols
27
DSDV
Hop-by-hop distance vector Routing table contains entries for every other
reachable node Nodes pass their routing tables to neighbors
periodically Routing tables are updates using standard
distance vector algorithm Old routes are ignored using sequence numbers O(n) routing state / node, O(n*k) communication
size / node / period- k = average node degree
28
TORA
Temporally-Ordered Routing Algorithm Interested in finding multiple routes from SD Find routes on demand Flood query to find destination Flood query response to form multiple routes O(m) routing state / node, O(n*k)
communication / node / route update- m = nodes to communicate with; worst case m=n
29
DSR
Dynamic Source Routing Packet headers contain entire route Flood query to find destination Intermediate nodes don’t have to maintain routing state
- Nodes listen for and cache queries, responses as optimization- Nodes gratuitously sends response packets to shorten paths when
they hear packets with sub-optimal routes O(m) routing state / nodes, O(n*k) communication / node /
route update- Smaller constant than other protocols
O(n1/k) space required in header
30
AODV
Ad Hoc On-Demand Distance Vector Flood query to find destination Reply is sent back to source along the reverse
path Intermediate nodes listen for reply to set up
routing state State is refreshed periodically O(m) routing state / node, O(n*k)
communication / node / route update
31
Results
Avoid synchronization in timers TORA does not scale to 50 node
- Suffers control traffic congestion collapse DSDV fails to deliver packets when movement is frequent
- Only maintains one route/destination AODV has high routing overhead when movement is
frequent- Combination of DSDV maintenance of state + flooding of DSR
DSR does well compared to others- Designed by authors not surprising!- [LJC+00] shows congestion collapse beyond 300 nodes
32
Related Work
Greedy Perimeter Stateless Routing (GPSR) [Karp and Kung, Mobicom 2000]
- Separate addressing from naming- Assume everyone has GPS- Do Cartesian routing- Separate scalable, efficient, fault tolerant service to
map from names to addresses How to deal with selfish users? [MGL+00]
- Listen to neighbors to make sure they are forwarding- Convey black list information back to source- Route around selfish nodes
33
Conclusions
Proliferation of wireless network interfaces provide ready market
Ad hoc provides less configuration, more fault tolerance, better coverage, lower cost
Many interesting and unsolved problems