TCP over Wireless Networks
description
Transcript of TCP over Wireless Networks
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP over Wireless Networks
CS 653, Fall 2010
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Outline
TCP over Wireless: ProblemsTCP over Wireless: Solutions
Link-layer basedSplit TCPTCP-aware link layerExplicit notificationNetwork-assisted congestion control
SummaryHop: a Reliable Hop-by-hop Block Transfer Protocol
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP over Wireless: Problems
Disambiguating wireless bit-errors from congestionFrequent window reduction due to errorsFrequent timeout due to burst losses
High variabilityContention + channel errors high lossContention + link-layer retransmission high RTT variance
Need end-to-end connection all the timeWireless links have intermittent connectivity
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Outline
TCP over Wireless: ProblemsTCP over Wireless: Solutions
Link-layer basedSplit TCPTCP-aware link layerExplicit notificationNetwork-assisted congestion control
SummaryHop: a Reliable Hop-by-hop Block Transfer Protocol
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Link-layer based Schemes: ARQ
Automatic Repeat reQuest (ARQ)Widely used in wireless link-layer protocolsUses retransmissions and acks to cover wireless errors
Packet 1Link-Ack 1
Packet 2Link-Ack 2
Packet 3
Packet 3
Timeout
Link-Ack 3
Internet Internet
FH BS MH
Link-Layer ARQ
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Link-layer based Schemes: ARQPros
No modification to upper layers
ConsFast retransmission due to message lost and out-of-order delivery
—redundant retransmission and window reduction
Interacts with TCP retransmissions —redundant retransmission
H. Balakrishnan, et al. A comparison of mechanisms for improving TCP performance over wireless links, Sigcomm96
Large RTT variance —long timeout
Head-of-line blocking due to large #retransmission —slow link blocks fast link
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Outline
TCP over Wireless: ProblemsTCP over Wireless: Solutions
Link-layer basedSplit TCPTCP-aware link layerExplicit notificationNetwork-assisted congestion control
SummaryHop: a Reliable Hop-by-hop Block Transfer Protocol
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Split TCP: Indirect TCP
I-TCP splits end-to-end TCP connection into two connectionsFixed host to BSBS to mobile host
Two TCP connections with independent flow/congestion control contextsPackets buffered at BS
Internet Internet
FH BS MH
TCP TCPBuffer
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Split TCP: Indirect TCP
ProsSeparates flow and congestion control of wireless and wired
--higher throughput at sender
ConsBreaks TCP end-to-end semantics
Ack at FH does not mean MH has received the packet
BS failure causes loss of dataNeither FH nor MH can recover the data
On path change, data has to be forwarded to new BS
Wireless part is the bottleneck
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Split TCP: Selective Repeat Protocol
Similar to I-TCP but uses SRP/UDP over wireless linkRaj Yavatkar, Namrata Bhagawat, Improving End-to-End Performance of TCP over Mobile Internetworks, 1994
ProsBetter performance over wireless links
ConsAll cons of I-TCP except last one
Internet Internet
FH BS MH
TCP SRP/UDPBuffer
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Split-TCP: Mobile TCP
Similar to I-TCP but tries to keep TCP end-to-end semanticsBS only acks the last packet after it is received by MH
Kevin Brown and Suresh Singh. A network architecture for mobile computing. In Proc. IEEE INFOCOM'96, March 1996
ProsData will be recovered eventually after BS failureBS buffer does not overflow
ConsWorse performanceStill not exactly the TCP semantics
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Outline
TCP over Wireless: ProblemsTCP over Wireless: Solutions
Link-layer basedSplit TCPTCP-aware link layerExplicit notificationNetwork-assisted congestion control
SummaryHop: a Reliable Hop-by-hop Block Transfer Protocol
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP-aware Link Layers: Snoop
Link layer is aware of TCP trafficBS caches data and monitors acks. Retransmits on duplicate acks and drops duplicate acks
H. Balakrishnan, et al. Improving TCP/IP Performance over Wireless Networks, 1995
Internet Internet
FH BS MH
Packet 1Ack 1Packet 2
Ack 2
Packet 3
Packet 4Ack 2
Packet 1
Ack 1
Packet 2
Ack 2Packet 3
Packet 4
Packet 3Blocks Dup-Ack
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP-aware Link Layers: Snoop
ProsNo modification to FH and MHBS only keeps soft state—BS failure does not break TCP
ConsDoes not work with encrypted packetsDoes not work if data packets and acks traverse different pathsIncreases RTT—high timeout
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP-aware Link Layers: WTCP
Similar to SnoopWTCP corrects RTT by modifying the timestamp in return acks
K. Ratnam and I. Matta ,WTCP: An Efficient Transmission Control Protocol for Networks with Wireless Links, 1998
Internet Internet
FH BS MH
Packet 3Packet 4
Ack 2
Packet 3
Ack’ 3
Packet 4
Packet 3
Ack 3
Log Arrival Time
Arrival Time+=Delay
Delay
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP-aware Link Layers: Delayed DupAcks Protocol
Similar to Snoop, BS does link-layer retrans but does not drop dup-acksMH delays the third duplicate ack—will not trigger fast retransmissions on FH
Miten N. Mehta, Nitin H. Vaidva, Delayed Duplicate-Acknowledgements: A proposal to Improve Performance of TCP on Wireless Links, 1997
Pros:Works with encrypted TCP
Cons:Unnecessary delay during congestion loss
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Outline
TCP over Wireless: ProblemsTCP over Wireless: Solutions
Link-layer based Split TCP TCP-aware link layer Explicit notification Backpressure-based approaches
Summary Hop: a Reliable Hop-by-hop Block Transfer Protocol
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Outline TCP over Wireless: Problems TCP over Wireless: Solutions
Link-layer based Split TCP TCP-aware link layer Explicit notification Network-assisted congestion control
Summary Hop: a Reliable Hop-by-hop Block Transfer Protocol
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Explicit Notification: Explicit Loss Notification
ELN works with MH is the sender BS monitors TCP segments from MH and logs down holes BS tags a dup-ack’s ELN bit if corresponds to a logged hole No congestion control on MH if an ELN-ack is received
Hari Balakrishnan and Randy H. Katz, Explicit Loss Notification and Wireless Web Performance, 1998
Internet Internet
FH BS MH
Packet 1
Ack 1
Packet 2Packet 3Packet 4
Packet 1
Packet 3Packet 4
Ack 1Ack 1
Log Hole(Pkt 2)
Ack 1(ELN)Ack 1(ELN)
Ack 1
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Explicit Notification: ELN2 Similar to ELN but works when FH is the sender BS monitors TCP segments from FH and logs down holes BS tags a dup-ack’s ELN bit if not corresponds to any hole No congestion control on FH if an ELN-ack is received
S. Biaz and N. Vaidya, Discriminating Congestion Losses from Wireless Losses using Inter-Arrival Times at the Receiver, 1998
Internet Internet
FH BS MH
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Outline TCP over Wireless: Problems TCP over Wireless: Solutions
Link-layer based Split TCP TCP-aware link layer Explicit notification Network-assisted congestion control
Summary Hop: a Reliable Hop-by-hop Block Transfer Protocol
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Backpressure Approaches: RAIN RAIN—Reliable Wireless Network Architecture
Small buffer and Adaptive FrEeze(SAFE) link layer Congestion control: backpressure w/ small buffer size Contention control: off-the-shelf CSMA/CA, link-layer ARQ
Simple transport layer Pros:
Pushes congestion and contention control in-network—prompt and accurate info
Cons: Link-layer ARQ does not completely solve link-layer contention Small buffer does not utilize the bursty-sending feature of wireless links
Chaegwon Lim, et.al, RAIN: A Reliable Wireless Network Architecture, 2006
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Summary Most above protocols focus on “the last mile” problem—
single wireless hop Multi-hop wireless mesh networks are blooming, e.g.,
Roofnet, Wildnet, …
None of above protocols works during network partitions
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
Review slides
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP Review: Flow Control Sliding Window
Keeps the sender from sending too fast Receiver specifies window size Sender only sends a window before waiting for acks
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP Review: Flow Control Cumulative Ack
Receiver acks back expecting sequence number Sends duplicate acks when “holes” are detected
Sender ReceiverPacket 1
Ack 1Packet 2
Packet 3 Ack 2
Ack 3Packet 4
Packet 5
Packet 6
Ack 4
Ack 4
Ack 4Packet 7
Packet 8
Ack 4
Packet 5
Packet 6
Timeout
Duplicate Acks
Window=4
Window=2
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP Review: Flow Control Selective Ack
Receiver can indicate missing segments Handles “holes” efficiently Co-exists with cumulative acks
0-99 100-199 200-299 300-399 400-499
TCP SACK
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP Review: Congestion Control Slow Start
Actually grows exponentially Starts from small window size(2KB) Multiplicatively increases window until threshold reached or
lossCongestionWindow
Slow Start
Time
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP Review: Congestion Control Congestion Avoidance
Incrementally increases window after threshold reached
CongestionWindow
Slow Start
CongestionAvoidance
Time
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP Review: Congestion Control Timeout
Decreases window size to 1 Halves threshold Timeout value = f(Mean_RTT, Dev_RTT)
CongestionWindow
Slow Start
CongestionAvoidance
Timeout
Slow Start
CongestionAvoidance
Time
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS, A, AMHERST • MHERST • Department of Computer Science Department of Computer Science
TCP Review: Congestion Control Fast Retransmits (TCP-Reno)
Don’t timeout or reduce window to one on single loss On three duplicate acks
Retransmits the lost segment right away Reduces window size to 0.5xWindow+#dup-acks Enters congestion avoidance phase
Cons: Can’t handle bursty (3+) acks; Dup-acks are also sent if pkts out of order.
CongestionWindow
Slow Start
CongestionAvoidance
Three Dup-Acks
Time
CongestionAvoidance