06-mobile-TCP.ppt

259 views 57 slides Nov 04, 2022
Slide 1
Slide 1 of 57
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57

About This Presentation

PPT for TCP


Slide Content

Session: 15 Prof. Sridhar Iyer 15.1
IT 601: Mobile Computing
TCP over wireless
TCP and mobility
Slides from Prof. Sridhar Iyer’s lecture
IIT Bombay

Session: 15 Prof. Sridhar Iyer 15.2
Effect of Mobility on Protocol Stack
•Application: new applications and adaptations
•Transport: congestion and flow control
•Network: addressing and routing
•Link: media access and handoff
•Physical: transmission errors and interference

Session: 15 Prof. Sridhar Iyer 15.3
TCP basics
•Reliable, ordered delivery
–uses sequence numbers, acknowledgements,
timeouts and retransmissions
–End-to-end semantics (ACK afterdata recd)
•Provides flow and congestion control
–uses sliding window based buffers and feedback
from receiver/network to adjust transmission rate

Session: 15 Prof. Sridhar Iyer 15.4
Window based flow control
•Window size minimum of
–receiver’s advertised window -determined by
available buffer space at the receiver
–congestion window -determined by sender, based on
network feedback
234567891011131 12
Sender’s window
Acks received Not transmitted

Session: 15 Prof. Sridhar Iyer 15.5
Timeouts and retransmission
•TCP manages four different timers for each
connection
–retransmission timer: when awaiting ACK
–persist timer: keeps window size information flowing
–keepalive timer: when other end crashes or reboots
–2MSL timer: for the TIME_WAIT state

Session: 15 Prof. Sridhar Iyer 15.6
TCP: retransmission scenarios
Host A
loss
timeout
lost ACK scenario
Host B
X
Host A
Seq=92 timeout
premature timeout,
cumulative ACKs
Host B
Seq=100 timeout

Session: 15 Prof. Sridhar Iyer 15.7
RTT estimation
Exponential Averaging Filter:
•Measure SampleRTT for segment/ACK pair
•Compute weighted average of RTT
•EstimatedRTT = αPrevEstimatedRTT + (1 –α)
SampleRTT
–RTO = β* EstimatedRTT
•Typically α= 0.9; β = 2

Session: 15 Prof. Sridhar Iyer 15.8
Ideal window size
•Ideal size = delay * bandwidth
–delay-bandwidth product
•If window size < delay*bw
–Inefficiency (wasted bandwidth)
•If window size > delay*bw
–Queuing at intermediate routers (increased RTT)
–Potentially, packet loss

Session: 15 Prof. Sridhar Iyer 15.9
Congestion control
•On detecting a packet loss, TCP sender assumes
that network congestion has occurred
•On detecting packet loss, TCP sender drastically
reduces the congestion window
•Reducing congestion window reduces amount of
data that can be sent per RTT

Session: 15 Prof. Sridhar Iyer 15.10
Typical TCP behaviour0
5
10
15
20
25
0 3 6 9 12 15 20 22 25
Time (round trips)
Congestion window (segments)
ssthresh = 8
ssthresh = 10
cwnd = 20
After timeout

Session: 15 Prof. Sridhar Iyer 15.110
2
4
6
8
10
02468101214
Time (round trips)
Window size (segments)
advertised window
After fast recovery
Fast retransmit and Fast recovery

Session: 15 Prof. Sridhar Iyer 15.12
Typical mobile wireless scenario
•FH: Fixed Host
•MH: Mobile Host
•BS: Base Station (gateway)

Session: 15 Prof. Sridhar Iyer 15.13
Burst errors may cause Timeouts
•If wireless link remains unavailable for extended
duration, a window worth of data may be lost
–driving through a tunnel; passing a truck
•Timeout results in slow start
–Slow start reduces congestion window to 1 MSS,
reducing throughput
•Reduction in window in response to errors
unnecessary

Session: 15 Prof. Sridhar Iyer 15.14
Random errors may cause
Fast Retransmit or Timeout
•If a packet is lost due to transient link conditions
–Channel noise leading to CRC error
•Fast retransmit results in fast recovery
–Fast recovery reduces congestion window to 1/2
•If multiple packets losses happen in a window,
–Results in timeout
•Reduction in window in response to errors
unnecessary

Session: 15 Prof. Sridhar Iyer 15.15
Example: Random errors
40 39 3738
3734
42 41 3940
3737
41
3737
4244 43
37

Session: 15 Prof. Sridhar Iyer 15.16
TCP and wireless/mobility
TCP assumes congestion if packets dropped
•typically wrong in wireless networks
–often packet loss due to transmission errors
•mobilityitself can cause packet loss
–nodes roam from one access point or foreign agent
to another with packets in transit

Session: 15 Prof. Sridhar Iyer 15.17
Motivation for TCP adaptation
Performance of an unchanged TCP degrades severely
for wireless/mobile environments
•TCP cannot be changed fundamentally
–Widely deployed in the fixed network
–Internet interoperability requirement
•TCP for wireless/mobility has to be compatible with
“standard” TCP

Session: 15 Prof. Sridhar Iyer 15.18
Adaptation for TCP over wireless
Several proposals to adapt TCP to wireless
environments
•Modifications to TCP implementation at
–Fixed Host
–Base Station
–Mobile Host
•Approaches
–Hide error losses from the sender
–Let sender know the cause of packet loss

Session: 15 Prof. Sridhar Iyer 15.19
Ideal behavior
•Ideal TCP behavior: TCP sender should simply retransmit a
packet lost due to transmission errors, without taking any
congestion control actions
–Ideal TCP typically notrealizable
•Ideal network behavior: Transmission errors should be
hidden from the sender
–Errors should be recoveredtransparentlyand efficiently
•Proposed schemes attempt to approximate one of the
above two ideals

Session: 15 Prof. Sridhar Iyer 15.20
Link Layer mechanisms
•Forward Error Correction (FEC)
–Can be use to correct small number of errors
–Incurs overhead even when errors do not occur
•Link Level Retransmissions
–Retransmit a packet at the link layer, if errors are
detected
–Retransmission overhead incurred only if errors occur

Session: 15 Prof. Sridhar Iyer 15.21
Link Level Retransmissions
wireless
physical
link
network
transport
application
physical
link
network
transport
application
physical
link
network
transport
application
rxmt
TCP connection
Link layer state

Session: 15 Prof. Sridhar Iyer 15.22
Issues
•How many times to retransmit at the link level
before giving up?
•What triggers link level retransmissions?
•How much time is required for a link layer
retransmission?
•Should the link layer deliver packets as they arrive,
or deliver them in-order?

Session: 15 Prof. Sridhar Iyer 15.23
Split connection approach
•End-to-end TCP connection is broken into one
connection on the wired part of route and one over
wireless part of the route
•FH-MH= FH-BS+ BS-MH
FH MHBS
Base Station Mobile HostFixed Host

Session: 15 Prof. Sridhar Iyer 15.24
I-TCP: Split connection
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
Source: Vaidya

Session: 15 Prof. Sridhar Iyer 15.25
I-TCP advantages
•No changes to TCP for FH
•BS-MH connection can be optimizedindependent of
FH-BS connection
–Different flow / error control on the two connections
–Fasterrecovery due to relatively shorter RTT on
wireless link

Session: 15 Prof. Sridhar Iyer 15.26
I-TCP disadvantages
•End-to-end semanticsviolated
–ack may be delivered to sender, before data
delivered to the receiver
•BS retains hard state
–Buffer space required at BS on a per-TCP-
connection basis
–BS failure can result in permanent loss of data
(unreliability)
–Hand-off latency increases

Session: 15 Prof. Sridhar Iyer 15.27
Hand-off in I-TCP
•Data that has been ack’d to sender, must be moved to new
base station
FH MHBS
40
39
3738
3741
MH
New base station
Hand-off
40
39

Session: 15 Prof. Sridhar Iyer 15.28
Snoop Protocol
•Retains local recovery of Split Connection approach
and uses link level retransmission
•Improves on split connection
–end-to-end semantics retained
–soft state at base station, instead of hard state

Session: 15 Prof. Sridhar Iyer 15.29
Snoop Protocol
•Buffers data packets at the base station BS
–to allow link layer retransmission
•When duplicate ACK received by BS from MH
–retransmit on wireless link, if packet present in buffer
–drop duplicate ACK
•Prevents fast retransmit at TCP sender FH
FH MHBS

Session: 15 Prof. Sridhar Iyer 15.30
Snoop Protocol
FH MHBS
wireless
physical
link
network
transport
application
physical
link
network
transport
application
physical
link
network
transport
application
rxmt
Per TCP-connection state
TCP connection
Source: Vaidya

Session: 15 Prof. Sridhar Iyer 15.31
Snoop : Example
FH MHBS
40 39 3738
3735
36
37
38
35
TCP state
maintained at
link layer

Session: 15 Prof. Sridhar Iyer 15.32
Snoop : Example
FH MHBS
41
3737
3744 43
37
37
38
39
40
41
42
Discard
dupack

Session: 15 Prof. Sridhar Iyer 15.33
Snoop advantages
•Local recovery from wireless losses
•Fast retransmit not triggered at sender despite out-of-
order link layer delivery
•High throughput can be achieved
•End-to-end semantics retained
•Soft state at base station
–loss of the soft state affects performance, but not
correctness

Session: 15 Prof. Sridhar Iyer 15.34
Snoop disadvantages
•Link layer at base station needs to be TCP-aware
•Not useful if TCP headers are encrypted (IPsec)

Session: 15 Prof. Sridhar Iyer 15.35
Delayed Dupacks
•Attempts to imitate Snoop, withoutmaking the base
station TCP-aware
•Delayed Dupacks implements the same two
features
–at BS : link layer retransmission
–at MH : reducing interference between TCP and link
layer retransmissions (by delaying dupacks)

Session: 15 Prof. Sridhar Iyer 15.36
Delayed Dupacks
•TCP receiver delays dupacksfor interval D, when
out-of-order packets received
–Dupack delay intended to give link level retransmit
time to succeed
•Benefit:can result in recovery from a transmission
loss without triggering a response from the TCP
sender

Session: 15 Prof. Sridhar Iyer 15.37
Delayed dupacks advantages
•Link layer need not be TCP-aware
•Can be used even if TCP headers are encrypted
•Works well for relatively small wireless RTT
(compared to end-to-end RTT)
–relatively small delay Dsufficient in such cases

Session: 15 Prof. Sridhar Iyer 15.38
Delayed dupacks disadvantages
•Right value of dupackdelay Ddependent on the
wireless link properties
•Mechanisms to automatically choose D needed
•Delays dupacks for congestion losses too, delaying
congestion loss recovery

Session: 15 Prof. Sridhar Iyer 15.39
Mobility and handoff
•Hand-offs may result in temporary loss of routeto MH
–with non-overlapping cells, it may be a while before the
mobile host receives a beacon from the new BS
•While routes are being reestablished during handoff,
MH and old BS may attempt to send packets to each
other, resulting in loss of packets

Session: 15 Prof. Sridhar Iyer 15.40
Impact of handoff
•Split connection approach
–hard state at base station must be moved to new
base station
•Snoop protocol
–soft state need not be moved
–while the new base station builds new state, packet
losses may not be recovered locally

Session: 15 Prof. Sridhar Iyer 15.41
Handoff issues
•During the long delay for a handoff to complete
–a whole window worth of data may be lost
•After handoff is complete
–acks are not received by the TCP sender
•Sender eventually times out, and retransmits
–If handoff still not complete, another timeout will occur
•Performance penalty
–Time wasted until timeout occurs
–Window shrunk after timeout

Session: 15 Prof. Sridhar Iyer 15.42
Using Fast Retransmit
•When MH is the TCP receiver:
–after handoff is complete, it sends 3 dupacks to the
sender
–this triggers fast retransmit at the sender
•When MH is the TCP sender:
–invoke fast retransmit after completion of handoff

Session: 15 Prof. Sridhar Iyer 15.43
Mobile TCP (M-TCP)
•Handling of lengthy or frequent disconnections
•M-TCP splits as I-TCP does
–unmodified TCP for FH to BS
–optimized TCP for BS to MH
•BS (Foreign Agent)
–monitors all packets, if disconnection detected
•set advertised window size to 0
•sender automatically goes into persistent mode
–no caching, no retransmission at the BS
•If a packet is lost on the wireless link, it has to be
retransmitted by the original sender

Session: 15 Prof. Sridhar Iyer 15.44
M-TCP
•BS does not send an ack to FH, unless BS has received
an ack from MH
–maintains end-to-end semantics
•BS withholds ackfor the last byteack’d by MH
•When BS does not receive ACK for sometime, it chokes
sender by setting advertise window to 0
FH MHBS
Ack 1000Ack 999

Session: 15 Prof. Sridhar Iyer 15.45
M-TCP
•When a newack is received with receiver’s advertised
window = 0, the sender enters persist mode
•Sender does not send any data in persist mode
–except when persist timer goes off
•When a positive window advertisement is received, sender
exits persist mode
•On exiting persist mode, RTOand cwndare same as
before the persist mode

Session: 15 Prof. Sridhar Iyer 15.46
M-TCP
•Avoids reduction of congestion window due to
handoff, unlike the fast retransmit scheme
•Is notreducing the window a good idea?
–When host moves, route changes, and new route
may be more congested
–It is not obvious that starting full window after handoff
is right

Session: 15 Prof. Sridhar Iyer 15.47
FreezeTCP
•M-TCP needs help from base station (BS)
–BS withholds ack for one byte
–BS uses this ack to send a zero window advertisement
when MH moves to another cell
•FreezeTCP
–Receiver sends zero window advertisement (ZWA),
upon impending disconnection
–Receiver sends full window advertisement (FWA),
upon reconnection

Session: 15 Prof. Sridhar Iyer 15.48
FreezeTCP
•TCP receiver determines if a handoff is about to
happen
–determination may be based on signal strength
•Receiver should attempt to send ZWA 1 RTT before
handoff
•Receiver sends 3 dupacks when route is
reestablished
•No help needed from the base station

Session: 15 Prof. Sridhar Iyer 15.49
Multi-hop Wireless (MANET)
•Mobility causes route changes

Session: 15 Prof. Sridhar Iyer 15.50
TCP Issues
•Route changes due to mobility
•Wireless transmission errors
–problem compounded with multiple hops
•Out-of-order packet delivery
–frequent route changes may cause out-of-order
delivery
•Multiple access protocol
–choice of MAC protocol can impact TCP
performance significantly

Session: 15 Prof. Sridhar Iyer 15.51
TCP over multi hop wireless
•When contention-based MAC protocol is used,
connections over multiple hops are at a
disadvantagecompared to shorter connections
–because they have to contend for wireless access at
each hop
–extent of packet delay or drop increases with number
of hops

Session: 15 Prof. Sridhar Iyer 15.52
Impact of Multi-Hop Wireless Paths0
200
400
600
800
1000
1200
1400
1600
12345678910
Number of hops
TCP Throughtput
(Kbps)
TCP Throughput using 2 Mbps 802.11 MAC

Session: 15 Prof. Sridhar Iyer 15.53
mobility causes
link breakage,
resulting in route
failure
TCP data and acks
en route discarded
Impact of mobility
TCP sender times out.
Starts sending packets again
Route is
repaired
No throughput
No throughput
despite route repair

Session: 15 Prof. Sridhar Iyer 15.54
Positive impact of mobility
C
B
D
A
C
B
D
A
C
B
D
A
1.5 second route failure
Route from A to D is broken for ~1.5 second.
When TCP sender times out after 1 second, route still broken.
TCP times out after another 2 seconds, and only then resumes.
Throughput improves because number of hops reduced.

Session: 15 Prof. Sridhar Iyer 15.55
Improving throughput
•Network feedback
•Inform TCP of route failure by explicit message
•Let TCP know when route is repaired
–Probing
–Explicit notification
•Reduces repeated TCP timeouts and backoff

Session: 15 Prof. Sridhar Iyer 15.56
Network Feedback
•Network feedback beneficial
•Need to modify transport & network layer to
receive/send feedback
•Need mechanisms for information exchange
between layers

Session: 15 Prof. Sridhar Iyer 15.57
References
•Bakre, A., Badrinath, B., “I-TCP: Indirect TCP for mobile hosts”-IEEE ICDCS 1995.
•Balakrishnan, H., Srinivasan, S., Amir, E., and Katz, R., “Improving TCP/IP
Performance over Wireless Networks” –ACM Mobicom 1995.
•Brown, K., Singh, S., “M-TCP: TCP for mobile cellular networks” –ACM Computer
Communication Review, 27 (5), 1997.
•Goff, T.Moronski, J.Phatak, D.S.Gupta, V.“Freeze-TCP: a true end-to-end TCP
enhancement mechanism for mobile environments” –IEEE Infocom 2000.