SlideShare une entreprise Scribd logo
1  sur  92
TCP over Wireless Networks
(VTC2000-Fall Tutorial)
Farooq Khan and Sanjiv Nanda
Bell Labs - Lucent Technologies
Holmdel, NJ 07733, USA
September 25, 2000
Why TCP?
• Explosive growth of internet.
• Web browsing (HTTP) contribute to more than 70%
of the traffic in the internet.
• HTTP and some other internet applications use TCP
as the transport mechanism.
• TCP is tuned to fixed networks (low delay, low error
rate).
• Scalability of the internet is enabled by TCP flow
control mechanisms.
Why TCP over Wireless?
• Wireless networks that enable high-speed data
transfer (3G) are now being introduced.
• Web browsing (using TCP) is expected to be the
dominant application in wireless data networks.
• Wireless networks exhibit high delays and high error
rates.
• This causes some internet protocols, especially TCP,
to perform poorly.
How data is different from voice?
When and how much
Air Interface (RLP,
MAC, PHY)
HTTP/TCP
Loss, Delay Variation
Simplified Protocol Stack
Internet protocols
Radio network protocols
HTTP/TCP
RLP/MAC/PHY
HTTP/TCP HTTP/TCP
RLP/MAC/PHY RLP/MAC/PHY
Host
MSBSC/RNC
internet
HTTP Request to Radio Frames
www.yahoo.com
www.yahoo.comHTTP
www.yahoo.comHTTPTCP
www.yahoo.comHTTPTCPIP
RLP RLP
Segmentation
Radio frames
Coding and interleaving etc.
HTTP GET request
http://www.yahoo.com
SenderReceiver
Tutorial Outline
Introduction
RLP TCP HTTP
TCP over Wireless
Performance Issues
TCP Performance
Radio Link Protocol
Radio Link Protocol Provides:
• Segmentation and Re-assembly
• In sequence delivery of data
• Automatic Ratransmission reQuest (ARQ)
Examples:
• Radio Link Control (RLC) in UMTS and GPRS/EDGE.
• Radio Link Protocol (RLP) in cdma2000 (IS-2000).
IS-2000 RLP
• NAK-Based
• RLP Type 3 supports 2 rounds of NAKs.
• Two NAKs in the first round and three NAKs in the second
round.
• In RLP Type 3 enhanced, the number of rounds and
NAKs/retransmissions sent in each round are configurable.
• The configuration parameters are determined during RLP
set up process through negotiation between the mobile
terminal and the network.
RLP Type 3
TX
RX
RTX Timer Abort Timer
1 2 3
2 2
2 2 2
At the expiry of abort timer, the RLP receiver will deliver
frames 1 and 3 to higher layer.
NAKs NAKs
Transmission Control Protocol (TCP)
TCP is a connection oriented transport layer protocol that
provides:
• Reliable byte stream transport
• In sequence delivery of data
– reorders out-of-order data
– discards duplicate data
• End to end flow control
• Calculates and verifies a mandatory checksum
• Interface to the applications (e.g., HTTP, FTP, Email and
Telnet etc.)
TCP Header
16-bit source port number 16-bit destination port
32-bit sequence number
32-bit acknowledgment number
4-bit
HLEN
Reserved 16-bit window size
16-bit urgent pointer16-bit TCP checksum
ACKPSHRSTSYN FINURG
20 bytes
TCP Connection Management
TX
RX
SYN(K)
SYN(J)
ACK(K+1)
ACK(J+1) FIN(M)
ACK(M+1) FIN(N)
ACK(N+1)
Data flow
J
K+1
ACK PSH RST SYN FINURG
20 bytes
[SYN(J), ACK(K+1)]
Loss Detection
• TCP Data and ACKs can get lost due to congestion
or transmission errors.
• Two different ways to detect loss:
– Retransmission timeout
– Duplicate ACKs
TCP Timeout
• TCP sets a timeout, when it sends data.
• If the data is NOT acknowledged when the timeout
expires
• TCP retransmits the data.
Exponential Back-off
RTO=T RTO=2T RTO=4T
TX
RX
RTO = mean RTT+ 4(mean deviation of RTT)
Duplicate ACKs
• After receiving three duplicate ACK,
• TCP sender assumes that the segment is lost and,
• Perform a retransmission
RTX on Duplicate ACKs
K
K+1
K+2
K+3
K+1
K+2
K+2
K+2
K+2
K+2
K+2
K+7
K+4
K+5
K+6
3 dupacks
K+2
K+8
TX RX
TCP flow Control
• The congestion window (cwnd) is flow control
imposed by the sender.
• While the advertised window is flow control imposed
by the receiver.
• The former is based on the sender's assessment of
perceived network congestion; the latter is related to
the amount of available buffer space at the receiver
for this connection.
• Current window = min(cwnd, advertised win).
Window Based Flow Control
1 2 3 4 5 6 7 8 9 10
ACKs received
Window size
Can't send until
window moves
Sent, not ACKed
Can send ASAP
TCP Slow Start
• Initially, cwnd=MSS;
• Each time an ACK is received, cwnd ← cwnd+MSS;
• This provides an exponential growth, although it is
not exactly exponential because the receiver may
delay its ACKs, typically sending one ACK for every
two segments that it receives.
Maximum Segment Size (MSS) is the largest “chunk” of data that TCP
will send to the other end. When a connection is established, each end
can announce its MSS.
Congestion Avoidance
• Congestion avoidance and slow start require that two
variables be maintained for each connection: a
congestion window, cwnd, and a slow start threshold
size, ssthresh.
• Initially, cwnd ← MSS, ssthresh=65KB.
• Current win ← min (cwnd, advertised window)
Congestion Avoidance
• When congestion occurs (indicated by a timeout or
the reception of duplicate ACKs), ssthresh ← max
[2*MSS, 1/2(current window size)]
• Additionally, if the congestion is indicated by a
timeout, cwnd ← MSS (i.e., slow start).
• When new data is acknowledged by the other end,
increase cwnd, but the way it increases depends on
whether TCP is performing slow start (cwnd ≤
ssthresh) or congestion avoidance (cwnd > ssthresh).
Congestion Avoidance Example
Current
Window
Advertised
window
cwnd ssthresh
t 1.5KB 65KB 1.50KB 65KB
t+∆ 65KB 65KB 75.0KB 65KB
RTX due to
dupacks
65KB 65KB 75.0KB 32.5KB
RTX due to
timeout
1.50KB 65KB 1.50KB 32.5KB
Congestion Avoidance
• In congestion avoidance, each time an ACK is received,
cwnd ← MSS*MSS/cwnd. For example, MSS=1500 bytes,
current cwnd=6000 bytes, the new cwnd = 6375 bytes
• This is a linear growth of cwnd, compared to slow start's
exponential growth.
• The increase in cwnd should be at most one MSS each
RTT (regardless how many ACKs are received in that
RTT), whereas slow start increments cwnd by the number
of ACKs received in an RTT.
SS and Congestion Avoidance
0
5
10
15
20
25
0 1 2 3 4 5 6 7 8
RTT
cwnd(segments)
ssthresh
HyperText Transfer Protocol (HTTP)
• HTTP is a simple protocol that forms the basis for the
Web.
• The HTTP client (web browser) establishes a TCP
connection to the HTTP server
• Issues a request, and reads back the server’s
response
• The server closes the TCP connection at the end of its
response.
Web Browsing (HTTP/1.0)
TCP TCP
Web browser Web server
Internet
The biggest performance problem associated with HTTP is its
use of one TCP connection per web object (file).
HTTP/1.0 (Continued)
• HTTP/1.0 opens and closes a new TCP connection
for each web object transfer.
• Most Web objects are small (1-5KB).
• High fraction of packets are simply TCP control
packets used to open and close a connection.
HTTP/1.0 (Continued)
• Due to TCP slow start, most objects are transferred
before their TCP connection completes the slow start
algorithm.
• Most HTTP/1.0 operations use TCP at its least
efficient.
• Major problems due to resulting congestion and
unnecessary overhead.
HTTP/1.0 (Continued)
A
B
C
D
E
Web page transfer time
Web object (A) transfer time
4 parallel TCP connections
Completion of index.html
Completion of E and start of F
F
Packet Bursts
HTTP/1.0 (Continued)
• First TCP connection (A) is for the home page
(GET /).
• This HTML document refers to 5 GIF images (B
through F).
• As soon as this home page is received by the client,
four TCP connections are opened in parallel for the
first four images (B through E).
• As soon as one of these connections terminates,
another connection is immediately established to
fetch the next and last image F.
HTTP/1.1
• HTTP/1.1 leaves the TCP connection open between
consecutive operations.
• This technique is called "persistent connections,"
which both avoids the costs of multiple opens and
closes and reduces the impact of slow start.
• Persistent connections are more efficient than the
current practice of running multiple short TCP
connections in parallel.
HTTP/1.1 (Continued)
• By leaving the TCP connection open between
requests, many packets can be avoided
• While avoiding multiple RTTs due to TCP slow start.
Related IETF Working Groups
• IETF HTTP (HyperText Transfer Protocol) Working
Group
– http://www.ietf.org/html.charters/http-charter.html
• IETF Transport Area (TCP) Working Group
– http://www.ietf.org/html.charters/tsvwg-charter.html
• IETF PILC (Performance Implications of Link
Characteristics) Working Group
– http://www.ietf.org/html.charters/pilc-charter.html
Air Interface (AI) Characteristics
Wireless networks are characterized by:
• High Latency (over-the-air and in the access network)
• Variable Delays (e.g., due to link layer retransmissions)
• High Error Rate (e.g., due to fading etc.)
• Variable Data Rate (due to varying channel conditions)
• Handoffs (due to mobility)
High Latency (1)
Wireless System Delay (RTT)
(ms)
Bandwidth
(Kb/s)
Delay*Bandwidth Product
(Bytes)
W-LAN 3 1500 563
GSM, IS-95 500 9.6 600
Richochet 500 128.0 8KB
3G Wireless 200 384 9600 > 8KB
The delay bandwidth product for 3G wireless is larger
than the default 8KB buffer space used by many TCP
implementations.
High Latency (2)
576B
Delay=100ms, Rate=384Kb/s
12ms
TCP
sender
Max
buffer
space
=8KB
TCP
receiver
40ms
Maximum number of outstanding segments = Floor(8KB/576B)=13
Delay=100ms, Rate=384Kb/s
ACKs
Data
12ms
Wasted BW
High Latency (3)
• A buffer space (window size) smaller than the delay
bandwidth product result in wasted bandwidth due to
inefficient pipe filling.
• The maximum achievable throughput is limited to
(window size)/RTT.
Variable Delays
TCP RTO = mean RTT+4 (mean deviation of RTT)
HTTP/TCP HTTP/TCP
RLP/MAC/PHY RLP/MAC/PHY
Host
MSBSC/RNC
internet
Large variations in the RTT (due to RLP retransmissions) increase the RTO
RLP Retransmissions
Errors
High Error Rate
Host RNC MSErrors
Loss due to buffer over-flow
in the internet routers
Loss due to RLP residual errors
(after max number of RTX attempts)
• TCP congestion control is tuned to networks that lose
traffic primarily because of congestion and buffer
exhaustion.
• Interact badly with connections that lose data due to
transmission errors.
Router
Variable Data Rate
• Variable data rates introduce transmission time
variations, leading to RTT variations.
• Large variations in the RTT increase the RTO.
• Increased RTO increases the overall data transfer
times (e.g., web page transfer times) due to slow
response to recover from lost data.
• Data rate variations (high data rate to low data rate)
in the start of a connection can lead to duplicate
transmissions from TCP.
Handoffs
• Variations in RTT due to delay associated with
Handoffs.
• TCP timeouts (and duplicate transmissions) due to
sudden increase in delays seen by TCP (RTO cannot
be adjusted so fast).
Potential Enhancements to TCP
Fast Rtx. and Fast Recovery
Slow Start Proposals
Delayed Duplicate Acks
Split TCP and PEPs
Selective Acks
For a complete list of enhancements, see:
draft-montenegro-pilc-ltn-01.txt.
Fast Retransmit and Recovery
• When the third duplicate ACK in a row is received, ssthresh
← max (2*MSS, cwnd/2)
• Retransmit the missing segment, cwnd ← ssthresh +
3*MSS.
• This inflates the congestion window by the number of
segments that have left the network and which the other
end has cached.
Fast Retransmit and Recovery
• Each time another duplicate ACK arrives, cwnd ←
cwnd +MSS.
• This inflates the congestion window for the additional
segment that has left the network.
• Transmit a packet, if allowed by the new value of
cwnd.
Fast Retransmit and Recovery
• When the next ACK arrives that acknowledges new data,
cwnd ← ssthresh.
• This ACK should be the acknowledgment of the missing
retransmission, one round-trip time after the retransmission.
• Additionally, this ACK should acknowledge all the
intermediate segments sent between the lost packet and
the receipt of the first duplicate ACK.
• This step is congestion avoidance, since TCP is down to
one-half the rate it was at when the packet was lost.
Fast Retransmit and Recovery
• The fast retransmit algorithm first appeared in the
4.3BSD Tahoe release, and it was followed by slow
start. The fast recovery algorithm appeared in the
4.3BSD Reno release.
Fast RTX and Fast Recovery
K
K+1
K+2
K+3
K+1
K+2
K+2
K+2
K+2
K+2
K+2
K+7
K+4
K+5
K+6
3 dupacks
K+2Fast RTX
K+8K+8
K+9
K+10
Fast Recovery K+9
TX RX
Slow Start Proposals
• Slow start dominates the network response seen by
interactive users at the beginning of a TCP
connection.
• Wireless links present long delays
• Stability of the internet is important.
• The slow start proposals should not adversely affect
internet congestion levels.
Slow Start Proposals
Slow Start Proposals
Larger Initial window Handling ACKs Terminating Slow
Start
Ack counting Ack-every-segment
Larger Initial Window
• Initial win = min (4*MSS, max (2*MSS, 4380 bytes))
Equivalently,
• If (MSS <= 1095 bytes) then win <= 4 * MSS
• If (1095 bytes < MSS < 2190 bytes) then win <=4380 bytes
• If (2190 bytes <= MSS) then win <= 2 * MSS
Larger Initial Window
0
5
10
15
20
25
0 1 2 3 4 5 6 7 8
RTT
cwnd(segments)
IW=1
IW=4
ssthresh
Beneficial for short-lived TCP connections or links with long RTT
ACK Counting
• Make each ACK count to its fullest by growing the
window based on the data being acknowledged (byte
counting).
• May cause bursts that lead to congestion.
• Limit the window growth to 2 segments.
ACK-every-segment
• Keep a constant stream of ACKs coming back by turning off
delayed ACKs during slow start.
• Should be limited to slow start only in order to avoid penalizing
asymmetric-bandwidth configurations
200-500ms
K
K+1
K+1
K+2
0
5
10
15
20
25
0 1 2 3 4 5 6 7 8
RTT
cwnd(segments)
ssthresh
Terminating Slow Start
• cwnd=ssthresh (instead of cwnd=MSS).
• Theoretically, an optimum value for slow-start threshold
(ssthresh) allows connection bandwidth utilization to ramp
up as aggressively as possible without “overshoot”.
• No reliable way to measure ssthresh!
Delayed Duplicate ACKs
• The delayed duplicate acknowledgement scheme
selectively delays duplicate acknowledgments at the
receiver.
• Not so beneficial when link layer guarantees in
sequence delivery (link layer residual errors are very
small).
Delayed Duplicate ACKs
K
K+1
K+2
K+3
K+1
K+2
K+2K+2
K+7
K+8K+8
K+4
K+5
K+6 Delay
Fast RTX
K+9
K+10
Fast Recovery K+9
Selective Acknowledgments (SACK)
• Limited information available from cumulative
acknowledgments.TCP sender can only learn about a single
lost packet per round trip time
• With SACK, the receiving TCP sends back SACK packets to
the sender informing the sender of data that has been
received. The sender can then retransmit only the missing
data segments
• Useful in cases with considerable probability of multiple
segment losses per window.
Selective Acknowledgments
K
K+1
K+2
K+3
K
K+1
(K+3, K+4, K+6)
K+8
K+7
K+2
K+4
K+5
K+6
K+5
K+9
Split TCP
Host BSC/RNC BS MS
TCP1 TCP2
• Replace an end-to-end TCP connection with two distinct
connections: one across the wireless link, the other across
the wireline network
Split TCP: Advantages
• Each of the connections can be optimized
independently.
• For example, packet losses due to congestion and
transmission error can be distinguished.
• Allows earlier deployment of enhancements to TCP
over wireless.
• Allows exploitation of various application level
enhancements.
Split TCP: Drawbacks
• Breaks TCP end-to-end semantics e.g., disables end-to-
end usage of IP layer security mechanisms.
• Crashes of the intermediate node (containing TCP state
machine in the radio access network) become
unrecoverable.
• Extra overhead in moving TCP states in case of handoff
between the intermediate nodes.
• Extra processing overhead at the intermediate node.
Snoop Protocol
• Locally (on the wireless link) retransmit lost packets.
• Suppress the duplicate ACKs on their way from the
receiver back to the sender.
• Not beneficial when radio link protocol provides in
sequence delivery of frames.
• Problem with IPSEC.
Wireless Link
Host BSC/RNC BS MS
Internet
Application Level Proxies
• Employing an application level proxy practically
results in a “split TCP” connection.
• The proxy function as the intermediary.
• Avoids overhead on the wireless link e.g., round trips,
headers and inefficient coding associated with
application protocols.
• Examples: Web proxy caches, relay MTAs (Mail
Transfer Agents) and SOCKS etc.
Performance Enhancing Proxy
• Wireless links suffer from periods of disconnection due to
handoffs and unavailability of resources etc.
• TCP retransmits data on retransmission timeout (RTO).
• This causes TCP to close its congestion window.
Performance Enhancing Proxy
• Introduce a supervisor host (SH-TCP) at the edge of
the wireless link (e.g., at GGSN in GPRS).
• Retain the last ACK coming from the receiver.
• During periods of disconnection, the SH-TCP can
shut down the sender’s window by sending the last
ACK with a window set to zero.
• This make the sender go to persist mode.
HTTP/TCP/RLP Results
• ns (network simulator) tool.
• Web browsing traffic model [Bruce Mah].
• HTTP/1.0.
• TCP Reno.
• IP/PPP overhead taken into account.
• IS-2000 forward and reverse link data rates.
• One-way Internet delay is fixed at 80ms.
• Correlated and i.i.d radio link errors.
HTTP Traffic Model
Web objectsMouse click Mouse click
Web Browsing Session
Web Page Web PageWeb Page
Think Time
HTTP Traffic Model Parameters
HTTP Request Size One large peak around
250 bytes and a small
peak around 1KB
Number of
connections per web
page
Mean = 3,
Median=1
Web object size Mean = 6.75KB
Think Time between
pages
30* seconds
[Exponential distribution]
TCP Parameters
TCP version Reno
TCP maximum
segment size (MSS)
576 or 1500 bytes
TCP receiver window
size
32KB
Radio Link Parameters
RLP NAK scheme Configurable
One-way radio link
delay
100ms
RLP guard time 60ms
Radio link data rates 9.6, 19.2, 38.4, 76.8 and
153.6 Kb/s.
HTTP Performance Measures
• Web Object Transfer Time [secs]
• Normalized Web Object Delay [secs/KB]
• Web Page Transfer Time [secs]
• Normalized Web Page Delay [secs/KB]
Web Object Transfer Time
Object Size: 1-10KB, Data Rate = 38.4 Kb/s
C: Maximum number of parallel TCP connections in HTTP/1.0
0
1
2
3
4
5
0.01(I.I.d)0.05(I.I.d)
0.10(I.I.d)0.01(corr)0.05(corr)0.10(corr)
FER
Delay[secs]
C=1
C=4
Normalized Object Delay
0
0.5
1
1.5
2
2.5
3
3.5
4
<1KB 1K -10K 10K -
20K
20K -
30K
30K -
40K
Object S ize
Delay[secs/Kbyte]
0.01(I.I.d)
0.05(I.I.d)
0.10(I.I.d)
Radio link data rate = 38.4 Kb/s, C=1
Object Throughput
0
10
20
30
40
50
60
0.01(I.I.d)0.05(I.I.d)0.10(I.I.d)
0.01(corr)0.05(corr)0.10(corr)
FER
ObjectThroughput[Kb/s]
38.4 Kb/s
153.6 Kb/s
Object Size: 20-30KB, C=1
Web Page Throughput
0
20
40
60
80
100
120
140
0.01(I.I.d)
0.05(I.I.d)
0.10(I.I.d)
0.01(corr)
0.05(corr)
0.10(corr)
FER
PageThroughput[Kb/s]
C=1
C=4
Radio link data rate = 153.6 Kb/s
Normalized Web Page Delay
0
1
2
3
4
5
6
7
8
<1KB 1K-10K 10-100 100-500 500-1M
Object Size
Delay[secs/Kbytes]
0.01(corr)
0.05(corr)
0.10(corr)
Radio link data rate =153.6 Kb/s
HTTP Performance Summary
• Allowing multiple simultaneous TCP connections for a
web page transfer reduce the page transfer times while
increasing the individual object transfer times.
• Increasing the air link bandwidth will reduce the transfer
times for large objects/pages (>1KB) only.
• For smaller objects the transfer delay is lower bounded
by HTTP request/response delay involving multiple
RTTs.
System Capacity with HTTP Traffic
0
20
40
60
80
100
120
140
160
180
0 10 20 30 40 50
Number of HTTP users
SectorThroughput[Kb/s]
0.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
0 10 20 30 40 50
Number of HTTP users
NormalizedDelay[secs/KB]
0.82 s/KB
26 users
120 Kb/s
RLP NAK Schemes
• The Schemes vary in the total number of
retransmission rounds and the number of rounds in
each round.
• Notation (n1, n2,…, nk) denotes k rounds of
retransmissions with n1, n2 and nk NAKs in round 1,2
and k respectively.
• The total number of retransmission attempts is
limited to n1+n2 +,.., +nk
Effect of FER on HTTP Performance
OS=10-20KB, i.i.d. errors
0
0.2
0.4
0.6
0.8
1
1.2
1.4
FER=0%
FER
=5%
FER=10%
FER=20%
FER=30%
NormalizedDelay[secs/KB]
(1,1,1,1,1)
(2,3)
(1,1,2)
(1,1,3)
(1,2,2)
(1,2,3)
Effect of FER on HTTP Performance
OS=10-20KB, Correlated errors
0
0.2
0.4
0.6
0.8
1
1.2
1.4
FER=0%
FER=5%
FER=10%
FER=20%
FER=30%
NormalizedDelay[secs/KB]
(1,1,1,1,1)
(2,3)
(1,1,2)
(1,1,3)
(1,2,2)
(1,2,3)
RLP Buffers
V(S) -V(N)peer
RTX buffer
New Transmission
buffer
V(R) -V(N)
RESEQ Buffer
BSC/RNCMS
TCP Segments
TCP Segments
RLP new TX Buffer Size C.D.F.
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0
0.86
1.73
2.59
3.46
4.32
5.18
6.05
6.91
7.78
Buffer Size [KB]
C.D.F.
FER=0%
FER=10%
Over-the-air Packet Multiplexing
• With a single TCP connection for an HTTP page transfer,
the RLP new transmission buffer is empty for 58% and
63% of the time for the case of no errors and FER of 10%
respectively.
• This explains the need for packet multiplexing over the air.
• A circuit switched dedicated channel will make inefficient
use of the scarce radio bandwidth.
TCP over W-CDMA
draft-inamura-docomo-00.txt
• Choice of MTU size in link layer
• Appropriate receive window size
• Increased initial congestion window
• Use of Selective ACK
Effect of TCP Receive Window
Throughput [Kb/s]
BLER 32KB 64KB 128KB
1% 340 369 369
5% 275 340 340
10% 230 320 320
TCP over W-CDMA
Feature Recomm
endation
Comments
MTU size 1500B Larger MTU helps TCP
window grow faster.
Small MTU is better for
high BLERs.
TCP Receive
Window size
64KB Going from 64KB to
128KB does not
improve performance
TCP Initial
Window
2MSS
(up to
4380B)
Effective for small data
transfers
Use of SACK Yes Useful when multiple
TCP segments are lost
in a single window
Summary
• Packet Multiplexing over the air is crucial for efficient support
of TCP/IP traffic.
• A radio link layer MUST perform in sequence delivery of radio
frames to avoid TCP retransmissions due to duplicate ACKs.
• Multiple instances of link layer protocol per user (e.g., for
different TCP flows) will improve the overall system
performance (assuming low overhead to setup a radio link
connection)
Summary (Continued)
• Minimizing the radio link round trip time (RTT) by
eliminating the delays associated with the access network,
coding and interleaving etc. will improve the performance
of TCP/IP traffic.
• Limit the radio link errors to =< 10%
• Use less aggressive NAK schemes.
Thank you !!!
For more information, please send e-mail to
Farooq Khan at
fkhan1@lucent.com

Contenu connexe

Tendances

wireless network IEEE 802.11
 wireless network IEEE 802.11 wireless network IEEE 802.11
wireless network IEEE 802.11Shreejan Acharya
 
Address resolution protocol (ARP)
Address resolution protocol (ARP)Address resolution protocol (ARP)
Address resolution protocol (ARP)NetProtocol Xpert
 
TCP congestion control
TCP congestion controlTCP congestion control
TCP congestion controlShubham Jain
 
The constrained application protocol (CoAP)
The constrained application protocol (CoAP)The constrained application protocol (CoAP)
The constrained application protocol (CoAP)Hamdamboy (함담보이)
 
Dc ch11 : routing in switched networks
Dc ch11 : routing in switched networksDc ch11 : routing in switched networks
Dc ch11 : routing in switched networksSyaiful Ahdan
 
IEEE STANDARDS 802.3,802.4,802.5
IEEE STANDARDS 802.3,802.4,802.5IEEE STANDARDS 802.3,802.4,802.5
IEEE STANDARDS 802.3,802.4,802.5Vicky Kumar
 
web connectivity in IoT
web connectivity in IoTweb connectivity in IoT
web connectivity in IoTFabMinds
 
Mobile Computing (Part-2)
Mobile Computing (Part-2)Mobile Computing (Part-2)
Mobile Computing (Part-2)Ankur Kumar
 
Module1 Mobile Computing Architecture
Module1 Mobile Computing ArchitectureModule1 Mobile Computing Architecture
Module1 Mobile Computing Architectureraksharao
 
TCP-IP Reference Model
TCP-IP Reference ModelTCP-IP Reference Model
TCP-IP Reference ModelMukesh Tekwani
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed systemSunita Sahu
 
Architecture of Mobile Computing
Architecture of Mobile ComputingArchitecture of Mobile Computing
Architecture of Mobile ComputingJAINIK PATEL
 
Wireless LANs(IEEE802.11) Architecture
Wireless LANs(IEEE802.11) Architecture Wireless LANs(IEEE802.11) Architecture
Wireless LANs(IEEE802.11) Architecture Raj vardhan
 
IEEE 802 Standard for Computer Networks
IEEE 802 Standard for Computer NetworksIEEE 802 Standard for Computer Networks
IEEE 802 Standard for Computer NetworksPradeep Kumar TS
 

Tendances (20)

wireless network IEEE 802.11
 wireless network IEEE 802.11 wireless network IEEE 802.11
wireless network IEEE 802.11
 
Address resolution protocol (ARP)
Address resolution protocol (ARP)Address resolution protocol (ARP)
Address resolution protocol (ARP)
 
TCP congestion control
TCP congestion controlTCP congestion control
TCP congestion control
 
The constrained application protocol (CoAP)
The constrained application protocol (CoAP)The constrained application protocol (CoAP)
The constrained application protocol (CoAP)
 
Dc ch11 : routing in switched networks
Dc ch11 : routing in switched networksDc ch11 : routing in switched networks
Dc ch11 : routing in switched networks
 
Ieee 802.11 wireless lan
Ieee 802.11 wireless lanIeee 802.11 wireless lan
Ieee 802.11 wireless lan
 
IEEE STANDARDS 802.3,802.4,802.5
IEEE STANDARDS 802.3,802.4,802.5IEEE STANDARDS 802.3,802.4,802.5
IEEE STANDARDS 802.3,802.4,802.5
 
web connectivity in IoT
web connectivity in IoTweb connectivity in IoT
web connectivity in IoT
 
Mobile Computing (Part-2)
Mobile Computing (Part-2)Mobile Computing (Part-2)
Mobile Computing (Part-2)
 
802 15-4 tutorial
802 15-4 tutorial802 15-4 tutorial
802 15-4 tutorial
 
Mobile Transport layer
Mobile Transport layerMobile Transport layer
Mobile Transport layer
 
Module1 Mobile Computing Architecture
Module1 Mobile Computing ArchitectureModule1 Mobile Computing Architecture
Module1 Mobile Computing Architecture
 
TCP-IP Reference Model
TCP-IP Reference ModelTCP-IP Reference Model
TCP-IP Reference Model
 
Ipv6
Ipv6Ipv6
Ipv6
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed system
 
Architecture of Mobile Computing
Architecture of Mobile ComputingArchitecture of Mobile Computing
Architecture of Mobile Computing
 
Framing in data link layer
Framing in data link layerFraming in data link layer
Framing in data link layer
 
Wireless LANs(IEEE802.11) Architecture
Wireless LANs(IEEE802.11) Architecture Wireless LANs(IEEE802.11) Architecture
Wireless LANs(IEEE802.11) Architecture
 
5. icmp
5. icmp5. icmp
5. icmp
 
IEEE 802 Standard for Computer Networks
IEEE 802 Standard for Computer NetworksIEEE 802 Standard for Computer Networks
IEEE 802 Standard for Computer Networks
 

En vedette

Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCPVishal Tandel
 
TCP Theory
TCP TheoryTCP Theory
TCP Theorysoohyunc
 
Wireless technology - Wi-Fi
Wireless technology - Wi-FiWireless technology - Wi-Fi
Wireless technology - Wi-FiBhushan Jadhav
 
Channel assignment strategies
Channel assignment strategiesChannel assignment strategies
Channel assignment strategiesAJAL A J
 
Mobile Transpot Layer
Mobile Transpot LayerMobile Transpot Layer
Mobile Transpot LayerMaulik Patel
 
Analysis of 1G, 2G, 3G & 4G
Analysis of 1G, 2G, 3G & 4GAnalysis of 1G, 2G, 3G & 4G
Analysis of 1G, 2G, 3G & 4GPrateek Aloni
 
Data management issues
Data management issuesData management issues
Data management issuesNeha Bansal
 
Presentation on 1G/2G/3G/4G/5G/Cellular & Wireless Technologies
Presentation on 1G/2G/3G/4G/5G/Cellular & Wireless TechnologiesPresentation on 1G/2G/3G/4G/5G/Cellular & Wireless Technologies
Presentation on 1G/2G/3G/4G/5G/Cellular & Wireless TechnologiesKaushal Kaith
 

En vedette (13)

Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCP
 
TCP Theory
TCP TheoryTCP Theory
TCP Theory
 
Lect9
Lect9Lect9
Lect9
 
TCP/ IP
TCP/ IP TCP/ IP
TCP/ IP
 
Snooping TCP
Snooping TCPSnooping TCP
Snooping TCP
 
Wireless technology - Wi-Fi
Wireless technology - Wi-FiWireless technology - Wi-Fi
Wireless technology - Wi-Fi
 
Channel assignment strategies
Channel assignment strategiesChannel assignment strategies
Channel assignment strategies
 
Mobile Transpot Layer
Mobile Transpot LayerMobile Transpot Layer
Mobile Transpot Layer
 
Analysis of 1G, 2G, 3G & 4G
Analysis of 1G, 2G, 3G & 4GAnalysis of 1G, 2G, 3G & 4G
Analysis of 1G, 2G, 3G & 4G
 
Data management issues
Data management issuesData management issues
Data management issues
 
Gprs architecture ppt
Gprs architecture pptGprs architecture ppt
Gprs architecture ppt
 
Unit 4
Unit 4Unit 4
Unit 4
 
Presentation on 1G/2G/3G/4G/5G/Cellular & Wireless Technologies
Presentation on 1G/2G/3G/4G/5G/Cellular & Wireless TechnologiesPresentation on 1G/2G/3G/4G/5G/Cellular & Wireless Technologies
Presentation on 1G/2G/3G/4G/5G/Cellular & Wireless Technologies
 

Similaire à TCP over Wireless Networks: A Tutorial on Transport Layer Issues

Primer to Browser Netwroking
Primer to Browser NetwrokingPrimer to Browser Netwroking
Primer to Browser NetwrokingShuya Osaki
 
Iaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incastIaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incastIaetsd Iaetsd
 
tcp-ippresentation-150614172243-lva1-app6892.pptx
tcp-ippresentation-150614172243-lva1-app6892.pptxtcp-ippresentation-150614172243-lva1-app6892.pptx
tcp-ippresentation-150614172243-lva1-app6892.pptxAlphaKoiSylvester
 
Network protocols
Network protocolsNetwork protocols
Network protocolsAbiud Orina
 
Xtc Pdiscussionv2
Xtc Pdiscussionv2Xtc Pdiscussionv2
Xtc Pdiscussionv2Tarik KUCUK
 
UAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time CommunicationsUAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time CommunicationsGerardo Pardo-Castellote
 
Transmission control protocol ...............................
Transmission control protocol ...............................Transmission control protocol ...............................
Transmission control protocol ...............................SwatiHans10
 
TCP - IP Presentation
TCP - IP PresentationTCP - IP Presentation
TCP - IP PresentationHarish Chand
 
Jaimin chp-6 - transport layer- 2011 batch
Jaimin   chp-6 - transport layer- 2011 batchJaimin   chp-6 - transport layer- 2011 batch
Jaimin chp-6 - transport layer- 2011 batchJaimin Jani
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internatKritika Purohit
 
Unit-4 (1).pptx
Unit-4 (1).pptxUnit-4 (1).pptx
Unit-4 (1).pptxpoonamsngr
 
Impact of Satellite Networks on Transport Layer Protocols
Impact of Satellite Networks on Transport Layer ProtocolsImpact of Satellite Networks on Transport Layer Protocols
Impact of Satellite Networks on Transport Layer ProtocolsReza Gh
 

Similaire à TCP over Wireless Networks: A Tutorial on Transport Layer Issues (20)

Primer to Browser Netwroking
Primer to Browser NetwrokingPrimer to Browser Netwroking
Primer to Browser Netwroking
 
Module 1 slides
Module 1 slidesModule 1 slides
Module 1 slides
 
Iaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incastIaetsd an effective approach to eliminate tcp incast
Iaetsd an effective approach to eliminate tcp incast
 
Transport layer.pptx
Transport layer.pptxTransport layer.pptx
Transport layer.pptx
 
tcp-ippresentation-150614172243-lva1-app6892.pptx
tcp-ippresentation-150614172243-lva1-app6892.pptxtcp-ippresentation-150614172243-lva1-app6892.pptx
tcp-ippresentation-150614172243-lva1-app6892.pptx
 
Computer Networks Unit 5
Computer Networks Unit 5Computer Networks Unit 5
Computer Networks Unit 5
 
Network protocols
Network protocolsNetwork protocols
Network protocols
 
Xtc Pdiscussionv2
Xtc Pdiscussionv2Xtc Pdiscussionv2
Xtc Pdiscussionv2
 
Transaction TCP
Transaction TCPTransaction TCP
Transaction TCP
 
Sky x technology
Sky x technologySky x technology
Sky x technology
 
UAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time CommunicationsUAV Data Link Design for Dependable Real-Time Communications
UAV Data Link Design for Dependable Real-Time Communications
 
Transmission control protocol ...............................
Transmission control protocol ...............................Transmission control protocol ...............................
Transmission control protocol ...............................
 
TCP - IP Presentation
TCP - IP PresentationTCP - IP Presentation
TCP - IP Presentation
 
Tcp ip presentation
Tcp ip presentationTcp ip presentation
Tcp ip presentation
 
TCP/IP & UDP
TCP/IP & UDPTCP/IP & UDP
TCP/IP & UDP
 
Jaimin chp-6 - transport layer- 2011 batch
Jaimin   chp-6 - transport layer- 2011 batchJaimin   chp-6 - transport layer- 2011 batch
Jaimin chp-6 - transport layer- 2011 batch
 
計概
計概計概
計概
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internat
 
Unit-4 (1).pptx
Unit-4 (1).pptxUnit-4 (1).pptx
Unit-4 (1).pptx
 
Impact of Satellite Networks on Transport Layer Protocols
Impact of Satellite Networks on Transport Layer ProtocolsImpact of Satellite Networks on Transport Layer Protocols
Impact of Satellite Networks on Transport Layer Protocols
 

Dernier

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Dernier (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

TCP over Wireless Networks: A Tutorial on Transport Layer Issues

  • 1. TCP over Wireless Networks (VTC2000-Fall Tutorial) Farooq Khan and Sanjiv Nanda Bell Labs - Lucent Technologies Holmdel, NJ 07733, USA September 25, 2000
  • 2. Why TCP? • Explosive growth of internet. • Web browsing (HTTP) contribute to more than 70% of the traffic in the internet. • HTTP and some other internet applications use TCP as the transport mechanism. • TCP is tuned to fixed networks (low delay, low error rate). • Scalability of the internet is enabled by TCP flow control mechanisms.
  • 3. Why TCP over Wireless? • Wireless networks that enable high-speed data transfer (3G) are now being introduced. • Web browsing (using TCP) is expected to be the dominant application in wireless data networks. • Wireless networks exhibit high delays and high error rates. • This causes some internet protocols, especially TCP, to perform poorly.
  • 4. How data is different from voice? When and how much Air Interface (RLP, MAC, PHY) HTTP/TCP Loss, Delay Variation
  • 5. Simplified Protocol Stack Internet protocols Radio network protocols HTTP/TCP RLP/MAC/PHY HTTP/TCP HTTP/TCP RLP/MAC/PHY RLP/MAC/PHY Host MSBSC/RNC internet
  • 6. HTTP Request to Radio Frames www.yahoo.com www.yahoo.comHTTP www.yahoo.comHTTPTCP www.yahoo.comHTTPTCPIP RLP RLP Segmentation Radio frames Coding and interleaving etc. HTTP GET request http://www.yahoo.com SenderReceiver
  • 7. Tutorial Outline Introduction RLP TCP HTTP TCP over Wireless Performance Issues TCP Performance
  • 8. Radio Link Protocol Radio Link Protocol Provides: • Segmentation and Re-assembly • In sequence delivery of data • Automatic Ratransmission reQuest (ARQ) Examples: • Radio Link Control (RLC) in UMTS and GPRS/EDGE. • Radio Link Protocol (RLP) in cdma2000 (IS-2000).
  • 9. IS-2000 RLP • NAK-Based • RLP Type 3 supports 2 rounds of NAKs. • Two NAKs in the first round and three NAKs in the second round. • In RLP Type 3 enhanced, the number of rounds and NAKs/retransmissions sent in each round are configurable. • The configuration parameters are determined during RLP set up process through negotiation between the mobile terminal and the network.
  • 10. RLP Type 3 TX RX RTX Timer Abort Timer 1 2 3 2 2 2 2 2 At the expiry of abort timer, the RLP receiver will deliver frames 1 and 3 to higher layer. NAKs NAKs
  • 11. Transmission Control Protocol (TCP) TCP is a connection oriented transport layer protocol that provides: • Reliable byte stream transport • In sequence delivery of data – reorders out-of-order data – discards duplicate data • End to end flow control • Calculates and verifies a mandatory checksum • Interface to the applications (e.g., HTTP, FTP, Email and Telnet etc.)
  • 12. TCP Header 16-bit source port number 16-bit destination port 32-bit sequence number 32-bit acknowledgment number 4-bit HLEN Reserved 16-bit window size 16-bit urgent pointer16-bit TCP checksum ACKPSHRSTSYN FINURG 20 bytes
  • 13. TCP Connection Management TX RX SYN(K) SYN(J) ACK(K+1) ACK(J+1) FIN(M) ACK(M+1) FIN(N) ACK(N+1) Data flow J K+1 ACK PSH RST SYN FINURG 20 bytes [SYN(J), ACK(K+1)]
  • 14. Loss Detection • TCP Data and ACKs can get lost due to congestion or transmission errors. • Two different ways to detect loss: – Retransmission timeout – Duplicate ACKs
  • 15. TCP Timeout • TCP sets a timeout, when it sends data. • If the data is NOT acknowledged when the timeout expires • TCP retransmits the data.
  • 16. Exponential Back-off RTO=T RTO=2T RTO=4T TX RX RTO = mean RTT+ 4(mean deviation of RTT)
  • 17. Duplicate ACKs • After receiving three duplicate ACK, • TCP sender assumes that the segment is lost and, • Perform a retransmission
  • 18. RTX on Duplicate ACKs K K+1 K+2 K+3 K+1 K+2 K+2 K+2 K+2 K+2 K+2 K+7 K+4 K+5 K+6 3 dupacks K+2 K+8 TX RX
  • 19. TCP flow Control • The congestion window (cwnd) is flow control imposed by the sender. • While the advertised window is flow control imposed by the receiver. • The former is based on the sender's assessment of perceived network congestion; the latter is related to the amount of available buffer space at the receiver for this connection. • Current window = min(cwnd, advertised win).
  • 20. Window Based Flow Control 1 2 3 4 5 6 7 8 9 10 ACKs received Window size Can't send until window moves Sent, not ACKed Can send ASAP
  • 21. TCP Slow Start • Initially, cwnd=MSS; • Each time an ACK is received, cwnd ← cwnd+MSS; • This provides an exponential growth, although it is not exactly exponential because the receiver may delay its ACKs, typically sending one ACK for every two segments that it receives. Maximum Segment Size (MSS) is the largest “chunk” of data that TCP will send to the other end. When a connection is established, each end can announce its MSS.
  • 22. Congestion Avoidance • Congestion avoidance and slow start require that two variables be maintained for each connection: a congestion window, cwnd, and a slow start threshold size, ssthresh. • Initially, cwnd ← MSS, ssthresh=65KB. • Current win ← min (cwnd, advertised window)
  • 23. Congestion Avoidance • When congestion occurs (indicated by a timeout or the reception of duplicate ACKs), ssthresh ← max [2*MSS, 1/2(current window size)] • Additionally, if the congestion is indicated by a timeout, cwnd ← MSS (i.e., slow start). • When new data is acknowledged by the other end, increase cwnd, but the way it increases depends on whether TCP is performing slow start (cwnd ≤ ssthresh) or congestion avoidance (cwnd > ssthresh).
  • 24. Congestion Avoidance Example Current Window Advertised window cwnd ssthresh t 1.5KB 65KB 1.50KB 65KB t+∆ 65KB 65KB 75.0KB 65KB RTX due to dupacks 65KB 65KB 75.0KB 32.5KB RTX due to timeout 1.50KB 65KB 1.50KB 32.5KB
  • 25. Congestion Avoidance • In congestion avoidance, each time an ACK is received, cwnd ← MSS*MSS/cwnd. For example, MSS=1500 bytes, current cwnd=6000 bytes, the new cwnd = 6375 bytes • This is a linear growth of cwnd, compared to slow start's exponential growth. • The increase in cwnd should be at most one MSS each RTT (regardless how many ACKs are received in that RTT), whereas slow start increments cwnd by the number of ACKs received in an RTT.
  • 26. SS and Congestion Avoidance 0 5 10 15 20 25 0 1 2 3 4 5 6 7 8 RTT cwnd(segments) ssthresh
  • 27. HyperText Transfer Protocol (HTTP) • HTTP is a simple protocol that forms the basis for the Web. • The HTTP client (web browser) establishes a TCP connection to the HTTP server • Issues a request, and reads back the server’s response • The server closes the TCP connection at the end of its response.
  • 28. Web Browsing (HTTP/1.0) TCP TCP Web browser Web server Internet The biggest performance problem associated with HTTP is its use of one TCP connection per web object (file).
  • 29. HTTP/1.0 (Continued) • HTTP/1.0 opens and closes a new TCP connection for each web object transfer. • Most Web objects are small (1-5KB). • High fraction of packets are simply TCP control packets used to open and close a connection.
  • 30. HTTP/1.0 (Continued) • Due to TCP slow start, most objects are transferred before their TCP connection completes the slow start algorithm. • Most HTTP/1.0 operations use TCP at its least efficient. • Major problems due to resulting congestion and unnecessary overhead.
  • 31. HTTP/1.0 (Continued) A B C D E Web page transfer time Web object (A) transfer time 4 parallel TCP connections Completion of index.html Completion of E and start of F F Packet Bursts
  • 32. HTTP/1.0 (Continued) • First TCP connection (A) is for the home page (GET /). • This HTML document refers to 5 GIF images (B through F). • As soon as this home page is received by the client, four TCP connections are opened in parallel for the first four images (B through E). • As soon as one of these connections terminates, another connection is immediately established to fetch the next and last image F.
  • 33. HTTP/1.1 • HTTP/1.1 leaves the TCP connection open between consecutive operations. • This technique is called "persistent connections," which both avoids the costs of multiple opens and closes and reduces the impact of slow start. • Persistent connections are more efficient than the current practice of running multiple short TCP connections in parallel.
  • 34. HTTP/1.1 (Continued) • By leaving the TCP connection open between requests, many packets can be avoided • While avoiding multiple RTTs due to TCP slow start.
  • 35. Related IETF Working Groups • IETF HTTP (HyperText Transfer Protocol) Working Group – http://www.ietf.org/html.charters/http-charter.html • IETF Transport Area (TCP) Working Group – http://www.ietf.org/html.charters/tsvwg-charter.html • IETF PILC (Performance Implications of Link Characteristics) Working Group – http://www.ietf.org/html.charters/pilc-charter.html
  • 36. Air Interface (AI) Characteristics Wireless networks are characterized by: • High Latency (over-the-air and in the access network) • Variable Delays (e.g., due to link layer retransmissions) • High Error Rate (e.g., due to fading etc.) • Variable Data Rate (due to varying channel conditions) • Handoffs (due to mobility)
  • 37. High Latency (1) Wireless System Delay (RTT) (ms) Bandwidth (Kb/s) Delay*Bandwidth Product (Bytes) W-LAN 3 1500 563 GSM, IS-95 500 9.6 600 Richochet 500 128.0 8KB 3G Wireless 200 384 9600 > 8KB The delay bandwidth product for 3G wireless is larger than the default 8KB buffer space used by many TCP implementations.
  • 38. High Latency (2) 576B Delay=100ms, Rate=384Kb/s 12ms TCP sender Max buffer space =8KB TCP receiver 40ms Maximum number of outstanding segments = Floor(8KB/576B)=13 Delay=100ms, Rate=384Kb/s ACKs Data 12ms Wasted BW
  • 39. High Latency (3) • A buffer space (window size) smaller than the delay bandwidth product result in wasted bandwidth due to inefficient pipe filling. • The maximum achievable throughput is limited to (window size)/RTT.
  • 40. Variable Delays TCP RTO = mean RTT+4 (mean deviation of RTT) HTTP/TCP HTTP/TCP RLP/MAC/PHY RLP/MAC/PHY Host MSBSC/RNC internet Large variations in the RTT (due to RLP retransmissions) increase the RTO RLP Retransmissions Errors
  • 41. High Error Rate Host RNC MSErrors Loss due to buffer over-flow in the internet routers Loss due to RLP residual errors (after max number of RTX attempts) • TCP congestion control is tuned to networks that lose traffic primarily because of congestion and buffer exhaustion. • Interact badly with connections that lose data due to transmission errors. Router
  • 42. Variable Data Rate • Variable data rates introduce transmission time variations, leading to RTT variations. • Large variations in the RTT increase the RTO. • Increased RTO increases the overall data transfer times (e.g., web page transfer times) due to slow response to recover from lost data. • Data rate variations (high data rate to low data rate) in the start of a connection can lead to duplicate transmissions from TCP.
  • 43. Handoffs • Variations in RTT due to delay associated with Handoffs. • TCP timeouts (and duplicate transmissions) due to sudden increase in delays seen by TCP (RTO cannot be adjusted so fast).
  • 44. Potential Enhancements to TCP Fast Rtx. and Fast Recovery Slow Start Proposals Delayed Duplicate Acks Split TCP and PEPs Selective Acks For a complete list of enhancements, see: draft-montenegro-pilc-ltn-01.txt.
  • 45. Fast Retransmit and Recovery • When the third duplicate ACK in a row is received, ssthresh ← max (2*MSS, cwnd/2) • Retransmit the missing segment, cwnd ← ssthresh + 3*MSS. • This inflates the congestion window by the number of segments that have left the network and which the other end has cached.
  • 46. Fast Retransmit and Recovery • Each time another duplicate ACK arrives, cwnd ← cwnd +MSS. • This inflates the congestion window for the additional segment that has left the network. • Transmit a packet, if allowed by the new value of cwnd.
  • 47. Fast Retransmit and Recovery • When the next ACK arrives that acknowledges new data, cwnd ← ssthresh. • This ACK should be the acknowledgment of the missing retransmission, one round-trip time after the retransmission. • Additionally, this ACK should acknowledge all the intermediate segments sent between the lost packet and the receipt of the first duplicate ACK. • This step is congestion avoidance, since TCP is down to one-half the rate it was at when the packet was lost.
  • 48. Fast Retransmit and Recovery • The fast retransmit algorithm first appeared in the 4.3BSD Tahoe release, and it was followed by slow start. The fast recovery algorithm appeared in the 4.3BSD Reno release.
  • 49. Fast RTX and Fast Recovery K K+1 K+2 K+3 K+1 K+2 K+2 K+2 K+2 K+2 K+2 K+7 K+4 K+5 K+6 3 dupacks K+2Fast RTX K+8K+8 K+9 K+10 Fast Recovery K+9 TX RX
  • 50. Slow Start Proposals • Slow start dominates the network response seen by interactive users at the beginning of a TCP connection. • Wireless links present long delays • Stability of the internet is important. • The slow start proposals should not adversely affect internet congestion levels.
  • 51. Slow Start Proposals Slow Start Proposals Larger Initial window Handling ACKs Terminating Slow Start Ack counting Ack-every-segment
  • 52. Larger Initial Window • Initial win = min (4*MSS, max (2*MSS, 4380 bytes)) Equivalently, • If (MSS <= 1095 bytes) then win <= 4 * MSS • If (1095 bytes < MSS < 2190 bytes) then win <=4380 bytes • If (2190 bytes <= MSS) then win <= 2 * MSS
  • 53. Larger Initial Window 0 5 10 15 20 25 0 1 2 3 4 5 6 7 8 RTT cwnd(segments) IW=1 IW=4 ssthresh Beneficial for short-lived TCP connections or links with long RTT
  • 54. ACK Counting • Make each ACK count to its fullest by growing the window based on the data being acknowledged (byte counting). • May cause bursts that lead to congestion. • Limit the window growth to 2 segments.
  • 55. ACK-every-segment • Keep a constant stream of ACKs coming back by turning off delayed ACKs during slow start. • Should be limited to slow start only in order to avoid penalizing asymmetric-bandwidth configurations 200-500ms K K+1 K+1 K+2
  • 56. 0 5 10 15 20 25 0 1 2 3 4 5 6 7 8 RTT cwnd(segments) ssthresh Terminating Slow Start • cwnd=ssthresh (instead of cwnd=MSS). • Theoretically, an optimum value for slow-start threshold (ssthresh) allows connection bandwidth utilization to ramp up as aggressively as possible without “overshoot”. • No reliable way to measure ssthresh!
  • 57. Delayed Duplicate ACKs • The delayed duplicate acknowledgement scheme selectively delays duplicate acknowledgments at the receiver. • Not so beneficial when link layer guarantees in sequence delivery (link layer residual errors are very small).
  • 59. Selective Acknowledgments (SACK) • Limited information available from cumulative acknowledgments.TCP sender can only learn about a single lost packet per round trip time • With SACK, the receiving TCP sends back SACK packets to the sender informing the sender of data that has been received. The sender can then retransmit only the missing data segments • Useful in cases with considerable probability of multiple segment losses per window.
  • 60. Selective Acknowledgments K K+1 K+2 K+3 K K+1 (K+3, K+4, K+6) K+8 K+7 K+2 K+4 K+5 K+6 K+5 K+9
  • 61. Split TCP Host BSC/RNC BS MS TCP1 TCP2 • Replace an end-to-end TCP connection with two distinct connections: one across the wireless link, the other across the wireline network
  • 62. Split TCP: Advantages • Each of the connections can be optimized independently. • For example, packet losses due to congestion and transmission error can be distinguished. • Allows earlier deployment of enhancements to TCP over wireless. • Allows exploitation of various application level enhancements.
  • 63. Split TCP: Drawbacks • Breaks TCP end-to-end semantics e.g., disables end-to- end usage of IP layer security mechanisms. • Crashes of the intermediate node (containing TCP state machine in the radio access network) become unrecoverable. • Extra overhead in moving TCP states in case of handoff between the intermediate nodes. • Extra processing overhead at the intermediate node.
  • 64. Snoop Protocol • Locally (on the wireless link) retransmit lost packets. • Suppress the duplicate ACKs on their way from the receiver back to the sender. • Not beneficial when radio link protocol provides in sequence delivery of frames. • Problem with IPSEC. Wireless Link Host BSC/RNC BS MS Internet
  • 65. Application Level Proxies • Employing an application level proxy practically results in a “split TCP” connection. • The proxy function as the intermediary. • Avoids overhead on the wireless link e.g., round trips, headers and inefficient coding associated with application protocols. • Examples: Web proxy caches, relay MTAs (Mail Transfer Agents) and SOCKS etc.
  • 66. Performance Enhancing Proxy • Wireless links suffer from periods of disconnection due to handoffs and unavailability of resources etc. • TCP retransmits data on retransmission timeout (RTO). • This causes TCP to close its congestion window.
  • 67. Performance Enhancing Proxy • Introduce a supervisor host (SH-TCP) at the edge of the wireless link (e.g., at GGSN in GPRS). • Retain the last ACK coming from the receiver. • During periods of disconnection, the SH-TCP can shut down the sender’s window by sending the last ACK with a window set to zero. • This make the sender go to persist mode.
  • 68. HTTP/TCP/RLP Results • ns (network simulator) tool. • Web browsing traffic model [Bruce Mah]. • HTTP/1.0. • TCP Reno. • IP/PPP overhead taken into account. • IS-2000 forward and reverse link data rates. • One-way Internet delay is fixed at 80ms. • Correlated and i.i.d radio link errors.
  • 69. HTTP Traffic Model Web objectsMouse click Mouse click Web Browsing Session Web Page Web PageWeb Page Think Time
  • 70. HTTP Traffic Model Parameters HTTP Request Size One large peak around 250 bytes and a small peak around 1KB Number of connections per web page Mean = 3, Median=1 Web object size Mean = 6.75KB Think Time between pages 30* seconds [Exponential distribution]
  • 71. TCP Parameters TCP version Reno TCP maximum segment size (MSS) 576 or 1500 bytes TCP receiver window size 32KB
  • 72. Radio Link Parameters RLP NAK scheme Configurable One-way radio link delay 100ms RLP guard time 60ms Radio link data rates 9.6, 19.2, 38.4, 76.8 and 153.6 Kb/s.
  • 73. HTTP Performance Measures • Web Object Transfer Time [secs] • Normalized Web Object Delay [secs/KB] • Web Page Transfer Time [secs] • Normalized Web Page Delay [secs/KB]
  • 74. Web Object Transfer Time Object Size: 1-10KB, Data Rate = 38.4 Kb/s C: Maximum number of parallel TCP connections in HTTP/1.0 0 1 2 3 4 5 0.01(I.I.d)0.05(I.I.d) 0.10(I.I.d)0.01(corr)0.05(corr)0.10(corr) FER Delay[secs] C=1 C=4
  • 75. Normalized Object Delay 0 0.5 1 1.5 2 2.5 3 3.5 4 <1KB 1K -10K 10K - 20K 20K - 30K 30K - 40K Object S ize Delay[secs/Kbyte] 0.01(I.I.d) 0.05(I.I.d) 0.10(I.I.d) Radio link data rate = 38.4 Kb/s, C=1
  • 78. Normalized Web Page Delay 0 1 2 3 4 5 6 7 8 <1KB 1K-10K 10-100 100-500 500-1M Object Size Delay[secs/Kbytes] 0.01(corr) 0.05(corr) 0.10(corr) Radio link data rate =153.6 Kb/s
  • 79. HTTP Performance Summary • Allowing multiple simultaneous TCP connections for a web page transfer reduce the page transfer times while increasing the individual object transfer times. • Increasing the air link bandwidth will reduce the transfer times for large objects/pages (>1KB) only. • For smaller objects the transfer delay is lower bounded by HTTP request/response delay involving multiple RTTs.
  • 80. System Capacity with HTTP Traffic 0 20 40 60 80 100 120 140 160 180 0 10 20 30 40 50 Number of HTTP users SectorThroughput[Kb/s] 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1 0 10 20 30 40 50 Number of HTTP users NormalizedDelay[secs/KB] 0.82 s/KB 26 users 120 Kb/s
  • 81. RLP NAK Schemes • The Schemes vary in the total number of retransmission rounds and the number of rounds in each round. • Notation (n1, n2,…, nk) denotes k rounds of retransmissions with n1, n2 and nk NAKs in round 1,2 and k respectively. • The total number of retransmission attempts is limited to n1+n2 +,.., +nk
  • 82. Effect of FER on HTTP Performance OS=10-20KB, i.i.d. errors 0 0.2 0.4 0.6 0.8 1 1.2 1.4 FER=0% FER =5% FER=10% FER=20% FER=30% NormalizedDelay[secs/KB] (1,1,1,1,1) (2,3) (1,1,2) (1,1,3) (1,2,2) (1,2,3)
  • 83. Effect of FER on HTTP Performance OS=10-20KB, Correlated errors 0 0.2 0.4 0.6 0.8 1 1.2 1.4 FER=0% FER=5% FER=10% FER=20% FER=30% NormalizedDelay[secs/KB] (1,1,1,1,1) (2,3) (1,1,2) (1,1,3) (1,2,2) (1,2,3)
  • 84. RLP Buffers V(S) -V(N)peer RTX buffer New Transmission buffer V(R) -V(N) RESEQ Buffer BSC/RNCMS TCP Segments TCP Segments
  • 85. RLP new TX Buffer Size C.D.F. 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.86 1.73 2.59 3.46 4.32 5.18 6.05 6.91 7.78 Buffer Size [KB] C.D.F. FER=0% FER=10%
  • 86. Over-the-air Packet Multiplexing • With a single TCP connection for an HTTP page transfer, the RLP new transmission buffer is empty for 58% and 63% of the time for the case of no errors and FER of 10% respectively. • This explains the need for packet multiplexing over the air. • A circuit switched dedicated channel will make inefficient use of the scarce radio bandwidth.
  • 87. TCP over W-CDMA draft-inamura-docomo-00.txt • Choice of MTU size in link layer • Appropriate receive window size • Increased initial congestion window • Use of Selective ACK
  • 88. Effect of TCP Receive Window Throughput [Kb/s] BLER 32KB 64KB 128KB 1% 340 369 369 5% 275 340 340 10% 230 320 320
  • 89. TCP over W-CDMA Feature Recomm endation Comments MTU size 1500B Larger MTU helps TCP window grow faster. Small MTU is better for high BLERs. TCP Receive Window size 64KB Going from 64KB to 128KB does not improve performance TCP Initial Window 2MSS (up to 4380B) Effective for small data transfers Use of SACK Yes Useful when multiple TCP segments are lost in a single window
  • 90. Summary • Packet Multiplexing over the air is crucial for efficient support of TCP/IP traffic. • A radio link layer MUST perform in sequence delivery of radio frames to avoid TCP retransmissions due to duplicate ACKs. • Multiple instances of link layer protocol per user (e.g., for different TCP flows) will improve the overall system performance (assuming low overhead to setup a radio link connection)
  • 91. Summary (Continued) • Minimizing the radio link round trip time (RTT) by eliminating the delays associated with the access network, coding and interleaving etc. will improve the performance of TCP/IP traffic. • Limit the radio link errors to =< 10% • Use less aggressive NAK schemes.
  • 92. Thank you !!! For more information, please send e-mail to Farooq Khan at fkhan1@lucent.com

Notes de l'éditeur

  1. 9.6KB is larger than the default 8KB buffer space used by many TCP implementations.
  2. since we don’t know if a segment is lost due to loss or reordering, we wait for a small number of duplicate acks duplicate acks indicate that there is still data flowing between the two ends. Recommendation: Implement Fast Retransmit and Fast Recovery
  3. Why slow start is undesirable?
  4. Implement this on devices now choose between 2,3, and 4 For now, use 2, which allows clients running query-response applications to get an initial ACK without waiting for a delayed ACK timeout of 200-500 ms
  5. Theoretically, an optimum value for slow-start threshold allows connection bandwidth utilization to ramp up as aggressively as possible without “overshoot” Not recommended, (tcp-impl) there is no reliable method to probe during TCP startup and estimate the bandwidth available
  6. Prevent interaction between between link layer retransmission and TCP retransmission give the link layer a chance to recover performance improvement is a function of packet loss rates due to congestion and and transmission errors.,
  7. Prevent interaction between between link layer retransmission and TCP retransmission give the link layer a chance to recover performance improvement is a function of packet loss rates due to congestion and and transmission errors.,
  8. SACK is more useful if large windows are being used Implement SACK now
  9. SACK is more useful if large windows are being used Implement SACK now
  10. For the wireless part, we may know that the link provides reliable delivery, packets are not delivered out-of-order, or the link is not subject to congestion allows much earlier deployment of various recent proposals disadvantages: breaks TCP end-to-end semantics, disable end-to-end usage of IP layer security mechanisms, crashes of the intermediate node become unrecoverable, handoff -&amp;gt; the state of both TCP end points on the previous intermediate node must be transferred to the new intermediate node to ensure continued operation, extra overhead protocol stack processing.
  11. Improvement over split TCP approach in that end-to-end semantics are retained when the wireless delay-bandwidth product is large enough, snoop can provide significant performance improvement