58
Wireless & Mobile Networking CS 752/852 - Spring 2012 Tamer Nadeem Dept. of Computer Science Lec 16: Transport Layer - Wireless TCP

Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Wireless & Mobile Networking

CS 752/852 - Spring 2012

Tamer Nadeem Dept. of Computer Science

Lec 16: Transport Layer - Wireless TCP

Page 2: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 2 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

The OSI Communication Model

Page 3: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 3 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Recall 1: PHY and MAC

MAC MAC

PHY PHY

• Spread Spectrum radios (DS and FH)

• RTS/CTS and Carrier Sensing for Hidden Terminals

• Directional antennas to reduce interference

• Rate control to extract max capacity from available SINR

• Power control for spatial reuse & energy savings – topology control

• TDMA scheduling, multi-channel use, encryption security

… and many more

Page 4: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 4 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Recall 2: Network Layer

Routing

• The first view of the network

• Coping up with (uncontrolled) user mobility

-Flooding the network reactively, or proactive updation

• Mobile IP, coping with handoffs, etc.

• Ad hoc routing – discovery, optimal metric, maintenance, caching

• Secure routing – Routes bypassing malicious nodes

Routing

Routing

Routing

Routing

Page 5: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 5 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Role of Transport Layer

TCP

• Transport packets quickly and reliably over this network

• Network properties often unknown (or difficult to track)

- Where is the congestion ? How much cross traffic ?

- What is the bottleneck bandwidth ?

- How much buffers at intermediate nodes ?

Motivation for end to end TCP

TCP

NETWORK

Page 6: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 6 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Some transmission methods

• Stop & Wait

• Pipelined

• Go Back N

• Selective Repeat

Page 7: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 7 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Stop-and-wait operation

first packet bit transmitted, t = 0

sender receiver

RTT

last packet bit transmitted, t = L / R

first packet bit arrives

last packet bit arrives, send ACK

ACK arrives, send next

packet, t = RTT + L / R

U sender

= .008

30.008 = 0.00027

microsec

onds

L / R

RTT + L / R =

Page 8: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 8 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Pipelined protocols

Pipelining: sender allows multiple, “in-flight”, yet-to-be-

acknowledged pkts

• range of sequence numbers must be increased

• buffering at sender and/or receiver

• Two generic forms of pipelined protocols: go-Back-N, selective

repeat

Page 9: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 9 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Pipelining: increased utilization

first packet bit transmitted, t = 0

sender receiver

RTT

last bit transmitted, t = L / R

first packet bit arrives

last packet bit arrives, send ACK

ACK arrives, send next

packet, t = RTT + L / R

last bit of 2nd packet arrives, send ACK

last bit of 3rd packet arrives, send ACK

U sender

= .024

30.008 = 0.0008

microsecon

ds

3 * L / R

RTT + L / R =

Increase utilization

by a factor of 3!

Page 10: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 10 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Go-Back-N

Sender:

• k-bit seq # in pkt header

• “window” of up to N, consecutive unack’ed pkts allowed

ACK(n): ACKs all pkts up to, including seq # n - “cumulative ACK”

may receive duplicate ACKs

timer for each in-flight pkt

timeout(n): retransmit pkt n and all higher seq # pkts in window

Page 11: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

GBN in action

Page 12: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 12 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Selective Repeat

• receiver individually acknowledges all correctly received

pkts

• buffers pkts, as needed, for eventual in-order delivery to upper layer

• sender only resends pkts for which ACK not received

• sender timer for each unACKed pkt

• sender window

• N consecutive seq #’s

• again limits seq #s of sent, unACKed pkts

Page 13: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Selective repeat: sender, receiver windows

Page 14: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 14 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Selective repeat

data from above :

• if next available seq # in window, send

pkt

timeout(n):

• resend pkt n, restart timer

ACK(n) in [sendbase,sendbase+N]:

• mark pkt n as received

• if n smallest unACKed pkt, advance

window base to next unACKed seq #

sender

pkt n in [rcvbase, rcvbase+N-1]

send ACK(n)

out-of-order: buffer

in-order: deliver (also deliver

buffered, in-order pkts),

advance window to next not-yet-

received pkt

pkt n in [rcvbase-N,rcvbase-1]

ACK(n)

otherwise:

ignore

receiver

Page 15: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Selective repeat in action

Page 16: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 16 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

TCP

Page 17: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 17 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

TCP Congestion Control

• Problem Definition

• How much data should I pump into the network to ensure

• Intermediate router queues not filling up

• Fairness achieved among multiple TCP flows

• Why is this problem difficult?

• TCP cannot have information about the network

• Only TCP receiver can give some feedbacks

Page 18: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 18 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

The Control Problem

• Two main components in TCP

• Flow Control and Congestion Control

• Flow Control

• If receiver’s bucket filling up, pour less water

• Congestion Control

• Don’t pour too much if there are leaks in intermediate pipes

• Regulate your flow based on how much is leaking out

• Aggressive pouring calls for retransmission of lost packets

• Conservative pouring lower e2e capacity

• Challenge: At what rate(t) should you pour ?

Page 19: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 19 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

The TCP Protocol (in a nutshell)

• T transmits few packets, waits for ACK

• Called slow start

• R acknowledges all packet till seq #i by ACK i (optimizations possible)

• ACK sent out only on receiving a packet

• Can be Duplicate ACK if expected packet not received

• ACK reaches T indicator of more capacity

• T transmits larger burst of packets (self clocking) … so on

• Burst size increased until packet drops (i.e., DupACK)

• When T gets DupACK or waits for longer than RTO

• Assumes congestion reduces burst size (congestion window)

Page 20: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 20 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

TCP Timeline

Host A

RT

T

Host B

time

Think of a blind

person trying to

stand up in a low

ceiling room

Objective:

Don’t bang your

head, but stand

up quickly

Page 21: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 21 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

When waited for > RTO

0

5

10

15

20

25

0 3 6 9 12 15 20 22 25

Time (round trips)

Co

ng

esti

on

win

do

w (

seg

men

ts)

ssthresh = 8 ssthresh = 10

cwnd = 20

After RTO timeout

Page 22: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 22 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

The TCP Protocol (in a nutshell)

• DupACK not necessarily indicator of congestion

• Can happen due to out of order (OOO) delivery of packets

• If 3 OOO pkts, then CW need not be cut drastically

• The DupACK packet retransmitted

• Continue with same pace of transmission as before

(fast recovery)

• R advertizes its receiver window in ACKs

• If filling up, T reduces congestion window

Page 23: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 23 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Fast Recovery on 3 OOO DupACKs

0

2

4

6

8

10

0 2 4 6 8 10 12 14

Time (round trips)

Win

do

w s

ize (

seg

men

ts)

Receiver’s advertized window

After fast recovery

Page 24: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 24 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

TCP Round Trip Time and Timeout

EstimatedRTT = (1- )*EstimatedRTT + *SampleRTT

Exponential weighted moving average

influence of past sample decreases exponentially fast

typical value: = 0.125

Page 25: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 25 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Example RTT estimation:

RTT: gaia.cs.umass.edu to fantasia.eurecom.fr

100

150

200

250

300

350

1 8 15 22 29 36 43 50 57 64 71 78 85 92 99 106

time (seconnds)

RT

T (

mil

lise

con

ds)

SampleRTT Estimated RTT

Page 26: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 26 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

TCP Round Trip Time and Timeout

Setting the timeout

• EstimtedRTT plus “safety margin”

• large variation in EstimatedRTT -> larger safety margin

• first estimate of how much SampleRTT deviates from EstimatedRTT:

TimeoutInterval = EstimatedRTT + 4*DevRTT

DevRTT = (1-)*DevRTT +

*|SampleRTT-EstimatedRTT|

(typically, = 0.25)

Then set timeout interval:

Page 27: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 27 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Several flavors of TCP: combines options / optimizations

Reno, Vegas, Eifel, Westwood …

Overall TCP has worked well – proven on the internet

Then why study it again

for wireless networks ?

Page 28: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 28 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Renewed Challenge

• Key assumption in TCP

• A packet loss is indicative of network congestion

• Source needs to regulate flow by reducing CW

• Assumption closely true for wired networks

• BER ~ 10 -6

• With wireless, errors due to fading, fluctuations

• Need not reduce CW in response …

• But, TCP is e2e CANNOT see the network

• Thus, TCP cannot classify the cause of loss CHALLENGE

Page 29: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 29 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

The Problem Model

wireless

physical

link

network

transport

application

physical

link

network

transport

application

physical

link

network

transport

application

rxmt

TCP connection

Wireline

Page 30: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 30 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Impact of Misclassification

0.0E+00

5.0E+05

1.0E+06

1.5E+06

2.0E+06

0 10 20 30 40 50 60

Time (s)

Se

qu

en

ce

nu

mb

er

(byte

s)

TCP Reno

(280 Kbps)

Best possible

TCP with no errors

(1.30 Mbps)

2 MB wide-area TCP transfer over 2 Mbps WaveLAN

Page 31: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 31 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

The Solution Space

• Much research on TCP over wireless

• Difficult to cover complete ground

• We peek into some of the key ideas

• Link layer mechanisms

• Split connection approach

• TCP-Aware link layer

• TCP-Unaware approximation of TCP-aware link layer

• Explicit notification

• Receiver-based discrimination

• Sender-based discrimination

Page 32: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 32 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Link Layer Mechanisms

Page 33: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 33 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Link Layer Mechanisms

• Forward error corrections

• Add redundancy in the packets to correct bit-errors

• TCP retransmissions can be alleviated

• Link layer retransmissions

• MAC layer ACKnowledgments

• Overhead only when errors occur (unlike FEC)

Such mechanisms require no change in TCP

Is that breaking e2e argument ??

Page 34: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 34 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Issues with Link Layer Mechanisms

• Link layer cannot guarantee reliability

• Have to drop packets after some finite limit

• What is the retransmission limit (??)

• Retransmission can take quite long

• Can be significant fraction of RTT

• TCP can timeout and retransmit the same packet again

• Increasing RTO can avoid this

• But that impacts TCP’s recovery from congestion

• Head of the line blocking

• Link layer has to keep retransmitting even if bad channel

• Blocks other streams

Page 35: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 35 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Findings

• Link layer retransmission good

• When channel errors infrequent

• When retransmit time << RTO

• When modifying TCP is not an acceptable solution

Page 36: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 36 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Split Connection Approach

Page 37: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 37 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

1 TCP = ½ TCP + ½ (TCP or XXX)

wireless

physical

link

network

transport

application

physical

link

network

transport

application

physical

link

network

transport

application rxmt

Per-TCP connection state

TCP connection TCP connection

Base

Station

Page 38: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Splitting Approaches

• Indirect TCP [Baker97]

• Fixed host (FH) to base station (BS) uses TCP

• BS to mobile host (MH) uses another TCP connection

• Selective Repeat [Yavatkar94]

• Over FH to BS: Use TCP

• Over BS to MH: Use selective repeat on top of UDP

• No congestion control over wireless [Haas97]

• Also use less headers over wireless

• Header compression

Page 39: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 39 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Issues with Splitting

• E2E totally broken

• 2 separate connections

• BS maintains hard state for each connection

• What if MH disconnected from BS ?

• Huge buffer requirements at BS

• What if BS fails ?

• Handoff between BS requires state transfer

• What if Data and ACK travel on different routes ?

• BS will not see the ACK at all – splitting not feasible

Page 40: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 40 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

TCP-Aware Link Layer

Page 41: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 41 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop

• Link layer at BS buffers un-acknowledged packets

• Now, BS peeks into every returning TCP ACK from MH

• If DupACK

• Retransmits the necessary packet

• Drops the DupACK

• DupACK does not reach sender

• Prevents fast retransmit

Page 42: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 42 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

FH MH BS

40 39 37 38

36 34

Example assumes delayed ack - every other packet ack’d

36

37

38

35 TCP state

maintained at

link layer

Page 43: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 43 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

41 40 38 39

36 34

36

37

38

35 39

Page 44: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 44 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

42 41 39 40

36

Duplicate acks are not delayed

36

dupack

37

38

39

40

Page 45: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 45 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

40

36 36 36

Duplicate acks

41 43 42

37

38

39

40

41

Page 46: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 46 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

FH MH BS

41

36 36

37 44 43

36

37

38

39

40

41

42

Discard

dupack

Dupack triggers retransmission

of packet 37 from base station

BS needs to be TCP-aware to

be able to interpret TCP headers

Page 47: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 47 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

37

36

36

42 45 44

36

37

38

39

40

41

42

43

36

Page 48: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 48 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

42

36

36

43 46 45

36

37

38

39

40

41

42

43

41

36

44

TCP sender does not

fast retransmit

Page 49: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 49 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

43

36 36

44 47 46

36

37

38

39

40

41

42

43

41

36

44

TCP sender does not

fast retransmit

45

Page 50: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 50 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop : Example

FH MH BS

44

36 36

45 48 47

36

42

43

41

36

44

45

43

46

Page 51: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 51 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Snoop [Balakrishnan95acm]

0

400000

800000

1200000

1600000

2000000

16

K

32

K

64

K

12

8K

25

6K

no

erro

r

1/error rate (in bytes)

bit

s/s

ec

base TCP

Snoop

2 Mbps Wireless link

Page 52: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 52 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Issues with Snoop

• Link layer needs to be TCP aware

• Smelling cross layer

• Link layer needs to buffer and perform sliding window

• Not useful when TCP headers encrypted

• Not feasible when Data and ACK travel different routes

• RTT estimates can still go up due to link layer retransmission

• Affects performance of Snoop

Page 53: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 53 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Wireless TCP

• WTCP attempts to nullify RTT estimation problem

• When data packets are lost due to errors

• Link layer includes own time stamp in ACK packet

• ACK packets that have BS time stamps indicate a wireless loss

• RTT of these packets not considered for RTO calculation

• But then, what if wireless hop is also congested !!!!!!

• Time stamping cannot take care of that

Page 54: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 54 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Quick look at other schemes

TCP-unaware schemes

Explicit notification

Receiver-based

Page 55: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 55 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

TCP-Unaware, ELN

• Delayed DupACKs

• Receiver waits for sometime before sending DupACK

• If link retransmission solves problem

• Then TCP sender does not send redundant packet

• Explicit Loss Notification (ELN)

• BS remembers only packet’s sequence numbers

• When DupACKs return through them, they check

• If packet was received by BS, then colors the DupACK

• Sender realizes that packet lost on wireless link

• Does not cut down CW, just retransmits that packet

Page 56: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 56 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Closing Thoughts

• Reliable and in-order packet delivery important

• TCP aims to support these features

• Implements congestion control and flow control

• TCP widely tuned for wireline networks

• Proven to be efficient on the internet

• When network periphery has wireless “last mile”

• TCP exhibits myriad problems

• Mainly because of

“misclassification between congestion and channel errors”

• Several solution approaches but many open problems

Page 57: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 57 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

What’s Hot Now ??

• TCP over wireless multihop (mesh)

• Each hop has contention-based MAC

• Unpredictable delays and congestion

• Fairness between TCP e2e flows a very challenging problem

• Mobility can significantly affect TCP

(Very difficult set of open problems)

• More fundamental: Is TCP the way to go for wireless

• Strong ongoing debate in community

• Useful queuing solutions in ad hoc networks

• Neighborhood RED solution

… and many many more …

Page 58: Wireless & Mobile NetworkingPage 38 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing Splitting Approaches • Indirect TCP [Baker97] • Fixed host (FH) to base station

Page 58 Spring 2012 CS 752/852 - Wireless Networking and Mobile Computing

Questions ?