CS 268: End-Host Mobility and Ad-Hoc Routing

33
CS 268: End-Host Mobility and Ad-Hoc Routing Ion Stoica Feb 18, 2004

description

CS 268: End-Host Mobility and Ad-Hoc Routing. Ion Stoica Feb 18, 2004. Overview. Wireless End-host mobility Ad-hoc routing. Wireless. Wireless connectivity proliferating - PowerPoint PPT Presentation

Transcript of CS 268: End-Host Mobility and Ad-Hoc Routing

Page 1: CS 268: End-Host Mobility and Ad-Hoc Routing

CS 268: End-Host Mobility and Ad-Hoc Routing

Ion StoicaFeb 18, 2004

Page 2: CS 268: End-Host Mobility and Ad-Hoc Routing

2

Overview

Wireless End-host mobility Ad-hoc routing

Page 3: CS 268: End-Host Mobility and 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)

Page 4: CS 268: End-Host Mobility and Ad-Hoc Routing

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)

Page 5: CS 268: End-Host Mobility and Ad-Hoc Routing

5

Solutions

Modify transport layer Modify link layer protocol Hybrid

Page 6: CS 268: End-Host Mobility and Ad-Hoc Routing

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?

Page 7: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 8: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 9: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 10: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 11: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 12: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 13: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 14: CS 268: End-Host Mobility and Ad-Hoc Routing

14

Overview

Wireless End-host mobility Ad-hoc routing

Page 15: CS 268: End-Host Mobility and 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?

Page 16: CS 268: End-Host Mobility and Ad-Hoc Routing

16

Solutions

Mobile IP (v4 and v6) TCP Migrate Multicast

Page 17: CS 268: End-Host Mobility and Ad-Hoc Routing

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)

Page 18: CS 268: End-Host Mobility and Ad-Hoc 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

Page 19: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 20: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 21: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 22: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 23: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 24: CS 268: End-Host Mobility and Ad-Hoc Routing

24

Overview

Wireless End-host mobility Ad-hoc routing

Page 25: CS 268: End-Host Mobility and 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

Page 26: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 27: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 28: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 29: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 30: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 31: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 32: CS 268: End-Host Mobility and Ad-Hoc Routing

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

Page 33: CS 268: End-Host Mobility and Ad-Hoc Routing

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