wireless & mobile networking cs 752/852 - spring 2011 tamer nadeem dept. of computer science...
DESCRIPTION
Page 3 Spring 2011 CS 752/852 - Wireless and Mobile Networking Recall 1: PHY and MAC MAC 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 moreTRANSCRIPT
![Page 1: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/1.jpg)
Wireless & Mobile Networking
CS 752/852 - Spring 2011
Tamer NadeemDept. of Computer Science
Wireless TCP
![Page 2: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/2.jpg)
Page 2 Spring 2011 CS 752/852 - Wireless and Mobile Networking
The OSI Communication Model
![Page 3: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/3.jpg)
Page 3 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/4.jpg)
Page 4 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/5.jpg)
Page 5 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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
Data
Data
Data
![Page 6: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/6.jpg)
Page 6 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Some transmission methods
• Stop & Wait
• Pipelined• Go Back N
• Selective Repeat
![Page 7: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/7.jpg)
Page 7 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Stop-and-wait operation
first packet bit transmitted, t = 0
sender receiver
RTT
last packet bit transmitted, t = L / R
first packet bit arriveslast packet bit arrives, send ACK
ACK arrives, send next packet, t = RTT + L / R
U sender = .008
30.008 = 0.00027
microseconds
L / R RTT + L / R
=
![Page 8: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/8.jpg)
Page 8 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/9.jpg)
Page 9 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Pipelining: increased utilization
first packet bit transmitted, t = 0
sender receiver
RTT
last bit transmitted, t = L / R
first packet bit arriveslast packet bit arrives, send ACK
ACK arrives, send next packet, t = RTT + L / R
last bit of 2nd packet arrives, send ACKlast bit of 3rd packet arrives, send ACK
U sender = .024
30.008 = 0.0008
microseconds
3 * L / R RTT + L / R
=
Increase utilizationby a factor of 3!
![Page 10: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/10.jpg)
Page 10 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/11.jpg)
GBN inaction
![Page 12: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/12.jpg)
Page 12 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/13.jpg)
Selective repeat: sender, receiver windows
![Page 14: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/14.jpg)
Page 14 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/15.jpg)
Selective repeat in action
![Page 16: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/16.jpg)
Page 16 Spring 2011 CS 752/852 - Wireless and Mobile Networking
TCP
![Page 17: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/17.jpg)
Page 17 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/18.jpg)
Page 18 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/19.jpg)
Page 19 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/20.jpg)
Page 20 Spring 2011 CS 752/852 - Wireless and Mobile Networking
TCP Timeline
Host A
one segment
RTT
Host B
time
two segments
four segments
Think of a blindperson trying tostand up in a lowceiling room
Objective:Don’t bang yourhead, but standup quickly
![Page 21: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/21.jpg)
Page 21 Spring 2011 CS 752/852 - Wireless and Mobile Networking
When waited for > RTO
0
5
10
15
20
25
Time (round trips)
Con
gest
ion
win
dow
(seg
men
ts)
ssthresh = 8 ssthresh = 10
cwnd = 20
After RTO timeout
![Page 22: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/22.jpg)
Page 22 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/23.jpg)
Page 23 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Fast Recovery on 3 OOO DupACKs
0
2
4
6
8
10
Time (round trips)
Win
dow
size
(seg
men
ts)
Receiver’s advertized window
After fast recovery
![Page 24: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/24.jpg)
Page 24 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/25.jpg)
Page 25 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 106time (seconnds)
RTT
(mill
isec
onds
)
SampleRTT Estimated RTT
![Page 26: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/26.jpg)
Page 26 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/27.jpg)
Page 27 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/28.jpg)
Page 28 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/29.jpg)
Page 29 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/30.jpg)
Page 30 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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)
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 WaveLAN
![Page 31: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/31.jpg)
Page 31 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/32.jpg)
Page 32 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Link Layer Mechanisms
![Page 33: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/33.jpg)
Page 33 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/34.jpg)
Page 34 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/35.jpg)
Page 35 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/36.jpg)
Page 36 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Split Connection Approach
![Page 37: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/37.jpg)
Page 37 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/38.jpg)
Page 38 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/39.jpg)
Page 39 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/40.jpg)
Page 40 Spring 2011 CS 752/852 - Wireless and Mobile Networking
TCP-Aware Link Layer
![Page 41: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/41.jpg)
Page 41 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/42.jpg)
Page 42 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
FH MHBS40 39 3738
3634
Example assumes delayed ack - every other packet ack’d
363738
35 TCP statemaintained at
link layer
![Page 43: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/43.jpg)
Page 43 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
41 40 3839
3634
363738
35 39
![Page 44: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/44.jpg)
Page 44 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
42 41 3940
36
Duplicate acks are not delayed
36
dupack
373839
40
![Page 45: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/45.jpg)
Page 45 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
40
363636
Duplicate acks
4143 42
373839
4041
![Page 46: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/46.jpg)
Page 46 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
FH MHBS41
3636
3744 43
36
373839
404142
Discarddupack
Dupack triggers retransmissionof packet 37 from base station
BS needs to be TCP-aware to
be able to interpret TCP headers
![Page 47: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/47.jpg)
Page 47 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
37
36
36
4245 44
36
373839
404142
43
36
![Page 48: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/48.jpg)
Page 48 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
42
36
36
4346 45
36
373839
404142
43
41
36
44
TCP sender does notfast retransmit
![Page 49: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/49.jpg)
Page 49 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
43
3636
4447 46
36
373839
404142
43
41
36
44
TCP sender does notfast retransmit
45
![Page 50: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/50.jpg)
Page 50 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop : Example
FH MHBS44
3636
4548 47
36
4243
41
36
44
45
43
46
![Page 51: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/51.jpg)
Page 51 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Snoop [Balakrishnan95acm]
0400000800000
120000016000002000000
16K
32K
64K
128K
256K
no error
1/error rate (in bytes)
bits
/sec base TCP
Snoop
2 Mbps Wireless link
![Page 52: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/52.jpg)
Page 52 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/53.jpg)
Page 53 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/54.jpg)
Page 54 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Quick look at other schemes
TCP-unaware schemes
Explicit notification
Receiver-based
![Page 55: Wireless & Mobile Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/55.jpg)
Page 55 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/56.jpg)
Page 56 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/57.jpg)
Page 57 Spring 2011 CS 752/852 - Wireless and Mobile Networking
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 Networking CS 752/852 - Spring 2011 Tamer Nadeem Dept. of Computer Science Wireless TCP](https://reader036.vdocuments.us/reader036/viewer/2022070605/5a4d1aff7f8b9ab059986042/html5/thumbnails/58.jpg)
Page 58 Spring 2011 CS 752/852 - Wireless and Mobile Networking
Questions ?