Reliable Data Transport over Heterogeneous Wireless Networks Hari Balakrishnan MIT Lab for Computer Science.

Slides:



Advertisements
Similar presentations
A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Published In IEEE/ACM TRANSACTIONS ON NETWORKING, VOL.5 NO.6,DECEMBER 1997.
Advertisements

1 Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Presented by Sampoorani.
1 Improving TCP Performance over Mobile Networks HALA ELAARAG Stetson University Speaker : Aron ACM Computing Surveys 2002.
Improving TCP over Wireless by Selectively Protecting Packet Transmissions Carla F. Chiasserini Michele Garetto Michela Meo Dipartimento di Elettronica.
Hui Zhang, Fall Computer Networking TCP Enhancements.
TCP for wireless networks CS 444N, Spring 2002 Instructor: Mary Baker Computer Science Department Stanford University.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
Performance Improvement of TCP in Wireless Cellular Network Based on Acknowledgement Control Osaka University Masahiro Miyoshi, Masashi Sugano, Masayuki.
Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.
Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 10 TCP/IP Performance over Asymmetric Networks.
CMPE 257: Wireless and Mobile Networking
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #07 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Internet Networking Spring 2003 Tutorial 12 Limited Transmit RFC 3042 Long Thin Networks RFC 2757.
Three Challenges to Reliable Data Transport over Heterogeneous Wireless Networks Hari Balakrishnan Daedalus Group Department of Electrical Engineering.
CS 268: Wireless Transport Protocols Kevin Lai Feb 13, 2002.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
Transport Protocols for Wireless Networks CMPE Spring 2001 Marcelo M. de Carvalho.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
1 A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Course : CS898T Instructor : Dr.Chang - Swapna Sunkara.
Wireless TCP February 22, 2002 © 2002 Yongguang Zhang CS 395T - Mobile Computing and Wireless Networks Department of Computer SciencesTHE UNIVERSITY OF.
How to get good TCP performance over asymmetric networks Hari Balakrishnan MIT Lab for Computer Science With:
CIS 725 Wireless networks. Low bandwidth High error rates.
CS640: Introduction to Computer Networks Aditya Akella Lecture 22 - Wireless Networking.
Spring 2000Nitin BahadurAdvanced Computer Networks A Comparison of Mechanisms for Improving TCP Performance over Wireless Links By: Hari B., Venkata P.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Qian Zhang Department of Computer Science HKUST Advanced Topics in Next- Generation Wireless Networks Transport Protocols in Ad hoc Networks.
Adaptive Transmission Protocols for the Future Internet Hari Balakrishnan MIT Lab for Computer Science
CS640: Introduction to Computer Networks Aditya Akella Lecture 22 - Wireless Networking.
Mobile Communications: Mobile Transport Layer Mobile Communications Chapter 10: Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping.
Asstt. Professor Adeel Akram.  Motivation  TCP mechanisms  Indirect TCP  Snooping TCP  Mobile TCP  Fast retransmit/recovery  Transmission freezing.
Improving TCP Performance over Mobile Networks Zahra Imanimehr Rahele Salari.
Prof. Dr.-Ing. Jochen Schiller, SS029.1 Mobile Communications Chapter 9: Mobile Transport Layer  Motivation  TCP-mechanisms.
Lecture 11 Mobile Networks: TCP in Wireless Networks Wireless and Mobile Systems Design.
TCP PERFORMANCE OVER AD HOC NETWORKS Presented by Vishwanee Raghoonundun Assisted by Maheshwarnath Behary MSc Computer Networks Middlesex University.
Wireless TCP Prasun Dewan Department of Computer Science University of North Carolina
1 Impact of transmission errors on TCP performance (Nitin Vaidya)
Obile etworking M-TCP : TCP for Mobile Cellular Networks Kevin Brown and Suresh Singh Department of Computer Science Univ. of South Carolina.
Transport over Wireless Networks Myungchul Kim
9.1 Mobile Computing Chapter 9: Mobile Transport Layer  Motivation  TCP-mechanisms  Classical approaches  Indirect TCP  Snooping TCP  Mobile TCP.
The Future of Transport Hari Balakrishnan LCS and EECS Massachusetts Institute of Technology
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
Lecture 9 – More TCP & Congestion Control
15-441: Computer Networking Lecture 23: Mobile and Wireless Networking.
Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 6 TCP/IP Performance over Wireless Networks.
Improving TCP Performance over Wireless Networks
Challenges to Reliable Data Transport Over Heterogeneous Wireless Networks.
15-744: Computer Networking L-18 Mobile Transport and Applications.
Computer Networking Lecture 18 – More TCP & Congestion Control.
TCP: Transmission Control Protocol Part II : Protocol Mechanisms Computer Network System Sirak Kaewjamnong Semester 1st, 2004.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
MOBILE TCP.
Ασύρματες και Κινητές Επικοινωνίες Ενότητα # 11: Mobile Transport Layer Διδάσκων: Βασίλειος Σύρης Τμήμα: Πληροφορικής.
Cross-Layer Design -Kalpana Uppalapati -Kalpana Uppalapati.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
1 Ad-hoc Transport Layer Protocol (ATCP) EECS 4215.
Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping TCP  Mobile TCP  Fast retransmit/recovery  Transmission freezing  Selective.
Mobile Communications Chapter 9: Mobile Transport Layer  Motivation  TCP-mechanisms  Classical approaches  Indirect TCP  Snooping TCP  Mobile TCP.
TCP over Wireless PROF. MICHAEL TSAI 2016/6/3. TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum.
Chapter 3 outline 3.1 transport-layer services
Wireless Transport.
Hari Balakrishnan Daedalus Group
The Future of Transport
IT351: Mobile & Wireless Computing
Jiyong Park Seoul National University, Korea
TCP for Wireless Networks
Transport Layer: Congestion Control
Impact of transmission errors on TCP performance
Presentation transcript:

Reliable Data Transport over Heterogeneous Wireless Networks Hari Balakrishnan MIT Lab for Computer Science

But wireless data is floundering... o Enormous heterogeneity o Poor performance Motivation Goal: To make wireless devices first-class Internet citizens Year # of units/hosts (millions) Sources: Ericsson, Inc. Matthew Gray, MIT Cellular phones Internet hosts Rapid growth

Wireless Heterogeneity In-Building Campus-Area Packet Radio Metro-Area Regional-Area Cellular Digital Packet Data (CDPD) Metricom RicochetLucent WaveLAN IBM Infrared

Wireless Performance Goal: To bridge the gap between perceived and rated performance

0 TCP Overview o Window-based algorithm to determine sustainable rate o Upon congestion, reduce window o “ACK clocking” sends data smoothly lost 1 5 Timeouts based on mean round-trip time (RTT) and deviation Fast retransmissions based on duplicate ACKs 1. Loss recovery 2. Congestion control

TCP Dynamics Data ACKs Window Fast retransmission Duplicate ACKs Sequence number (bytes) Time (s) RTT

Wireless Transport: The Three Challenges Preponderance of wireless bit-errors o Corruption vs. congestion losses o Solution: Snoop protocol Asymmetric effects o Bandwidth asymmetry & latency variability o Solution: TCP mods + link-layer optimizations Low channel bandwidths o Small windows o Solution: Limited Transmit, an optimization to TCP’s loss recovery

Challenge #1: Wireless Bit-Errors Internet Router Loss  Congestion Loss ==> Congestion Burst losses lead to coarse-grained timeouts Result: Low throughput

Performance Degradation Time (s) Sequence number (bytes) TCP Reno (280 Kbps) Best possible TCP with no errors (1.30 Mbps) 2 MB wide-area TCP transfer over 2 Mbps Lucent WaveLAN

Conventional Approaches Link-layer protocols End-to-end ARQ/FEC Adverse interactions with transport layer o Timer interactions o Interactions with fast retransmissions o Large round-trip time variation Wired connectionWireless connection Split connections o Wireless connection need not be TCP Hard state at base station o Complicates mobility o Vulnerable to failures Violates end-to-end semantics Base Station

Our Solution: Snoop Protocol Shield TCP sender from wireless vagaries o Eliminate adverse interactions between protocol layers o Congestion control only when congestion occurs Preserve current TCP/IP service model o Maintain end-to-end semantics o Is connection splitting fundamentally important? Eliminate non-TCP protocol messages o Is link-layer messaging fundamentally important? Fixed to mobile: transport-aware link protocol Mobile to fixed: link-aware transport protocol

Snoop Protocol: FH to MH FH Sender Mobile Host Base Station Snoop agent: active interposition agent o Snoops on TCP segments and ACKs o Detects losses by duplicate ACKs and timers o Suppresses duplicate ACKs from FH sender Cross-layer protocol design: Snoop agent state is soft Snoop agent

Snoop Protocol: FH to MH Mobile Host 1 Base Station Snoop Agent FH Sender

Snoop Protocol: FH to MH Mobile Host 1234 Base Station 5 FH Sender

Snoop Protocol: FH to MH Mobile Host Base Station FH Sender

Snoop Protocol: FH to MH Mobile Host Base Station Sender

Snoop Protocol: FH to MH Mobile Host Base Station ack 0 Sender Duplicate ACK

Snoop Protocol: FH to MH Mobile Host Base Station Sender Retransmit from cache at higher priority ack 0 65

Snoop Protocol: FH to MH Mobile Host Base Station 1 1 Suppress Duplicate Acks Sender 5 ack 0 ack 4

Snoop Protocol: FH to MH Base Station Sender ack 4 ack 5 Clean cache on new ACK

Snoop Protocol: FH to MH Mobile Host Base Station Sender ack 4 6 ack 6 ack 5

Snoop Protocol: FH to MH Mobile Host Base Station Active soft state agent at base station Transport-aware reliable link protocol Preserves end-to-end semantics 6 Sender ack 5 ack

Handling Mobility: Use Local Multicast Home Agent Sender Base Station (Snoop agent) Base Station (Snoop agent)

Handling Mobility Home Agent Sender Base Station (Snoop agent) Base Station (Snoop agent)

Snoop Protocol: MH to FH Receiver Base Station Sender Solution #1: Negative ACKs (NACKs) o NACK from BS to MH on wireless loss Caching and retransmission will not work o Losses occur before packet reaches BS o Congestion losses should not be hidden Solution #2: Explicit Loss Notifications (ELN) o In-band message to TCP sender o General solution framework

Snoop Protocol: MH to FH Base Station 1 Sender 0 Receiver

Snoop Protocol: MH to FH Base Station Sender Receiver 0

Snoop Protocol: MH to FH Base Station 1 2 Sender ack 0 Receiver 0 Add 1 to list of holes after checking for congestion

Snoop Protocol: MH to FH Base Station 1 ack Sender 1 ack 0 56 Receiver 20 Duplicate ACKs

Snoop Protocol: MH to FH Base Station 1 6 Sender 1 ack 0 ELN information on duplicate ACKs 3 Receiver 2054 ELN marking

Snoop Protocol: MH to FH Base Station 1 Sender 1 ack 0 ELN information on duplicate ACKs 1 Retransmit on dup ACK + ELN No congestion control now ack 0 3 Receiver 20546

Snoop Protocol: MH to FH Base Station Sender Link-aware transport decouples congestion control from loss recovery Technique generalizes nicely to wireless transit links 3 Receiver ack 6 1 Clean holes on new ACK

End-to-End Enhancements Decouple congestion control from loss recovery o Explicit Loss Notification (ELN) Burst losses o Selective ACKs (SACKs) [FF96,KM96,MMFR96,B96] Snoop protocol: no changes to fixed hosts on the Internet ack 0 [sack 2]ack 0 [sack 2,4] Selective ACKs 024

Best possible TCP (1.30 Mbps) Snoop Performance Improvement Time (s) Sequence number (bytes) Snoop (1.11 Mbps) TCP Reno (280 Kbps) 2 MB wide-area TCP transfer over 2 Mbps Lucent WaveLAN

Performance: FH to MH TCP Reno SPLIT TCP SACK SPLIT-SACK Snoop Snoop+SACK 1/Bit-error Rate (1 error every x Kbits) Throughput (Mbps) Snoop+SACK and Snoop perform best Connection splitting not essential TCP SACK performance disappointing Typical error rates 2 MB local-area TCP transfer over 2 Mbps Lucent WaveLAN

Empirical Error Modeling Duration (ln ms) Error-free duration Error duration Data collected from Reinas Env. Monitoring Network Santa Cruz, CA CDF

Real-World Web Performance # of downloads in 1000 s Empirical Web workload model from real traces Empirical wireless error model from real traces of Reinas wireless network, UC Santa Cruz Snoop performance improvement: 3X-6X over Reno & SACK

Benefits of TCP-Awareness 30-35% improvement for Snoop: LL congestion window is small (but no coarse timeouts occur) Connection bandwidth-delay product = 25 KB Time (sec) Congestion Window (bytes) LL (no duplicate ack suppression) Snoop Suppressing duplicate acknowledgments and TCP-awareness leads to better utilization of link bandwidth and performance

Split-Connection Congestion Window Wired connection does not shrink congestion window but wireless connection times out often, causing sender to stall Wired connection Wireless connection

Summary: Wireless Bit-Errors Problem: Wireless corruption mistaken for congestion Solution: Snoop Protocol General lessons o Lightweight soft-state agent in network infrastructure Fully conforms to the IP service model Automatic instantiation and cleanup o Cross-layer protocol design & optimizations Transport Network Link Physical Link-aware transport (ELN) Transport-aware link (Snoop agent at BS)

Challenge #2: Asymmetric Effects Asymmetric access technologies o ADSL, (wireless) cable modems, DBS, etc. o Low-bandwidth ACK channel [LM97, KVR98] Packet radio networks o Metricom’s Ricochet, CDPD, etc. o Adverse interactions between data and ACK flow Problem: Imperfect ACK feedback degrades TCP performance

The Character of Asymmetry Bandwidth: times more in the forward direction Latency: Variability due to MAC protocol interactions Packet loss: Higher loss- or error-rate in one direction The network and traffic characteristics in one direction significantly affect performance in the other Server Client Forward ACK Router

Bandwidth Asymmetry Problems Server Client Forward ACK Router Bottleneck Router 0 Data 8 Data 11 Data 10 Data Acks arrive slowly (large buffer) Acks are dropped (small buffer) 1 Data 3. Acks are queued behind data packets Ack flow

Hybrid Wireless Cable Measurements TCP Throughput (Mbps) 10 Mbps Ethernet 28.8 C-SLIP 28.8 SLIP 9.6 C-SLIP 9.6 SLIP Socket Buffer Size (KB) Return channel speed and latency affects performance

Latency Asymmetry: Packet Radio Networks Internet PT ER FH GW MH Modem PR ER PT Fixed Host Ethernet Radios Poletop Radios Mobile Host RTS CTS Half-duplex radios Synchronization before communication

Data Packet Radio Networks Internet PT ER FH GW MH Modem PR ER PT Fixed Host Ethernet Radios Poletop Radios Mobile Host Data Ack RTS No response Exponential backoff Problem: Large and variable communication latency

Problem: Large Round-Trip Time Variations Example: Metricom Ricochet Wireless Network Mean rtt = 2.45s, std deviation = 1.5s  long timeout! Long idle periods after multiple losses (~ 20 Kbps) In contrast, UDP throughput = Kbps ACK flow affects data latency Fast retransmissions Timeouts

Solutions Problems arise because of imperfections in the ACK feedback Reduce frequency of acks o ACK Filtering (AF) o ACK Congestion Control (ACC) Handle infrequent acks o Sender Adaptation (SA) o ACK Reconstruction (AR) General solution approach for asymmetric situations

ACK Filtering (AF) Forward Router 1 Server Client Router Purge all redundant, cumulative ACKs from constrained reverse queue Used in conjunction with sender adaptation or ACK reconstruction

Server Client Router 8 Data 21 Data 22 Data Data Delack factor = 2 Adaptive extension of TCP delayed ACKs based on congestion feedback from router or sender Forward ACK Congestion Control (ACC)

Server Router Data 22 Data 12 Data RED [FJ93] marking of ECN bit [F94] (Explicit Congestion Notification) Delack factor = 2 Client Forward

ACK Congestion Control (ACC) Router Data Data 40 Data 22 Echo ECN marking to receiver Delack factor = 2 Forward Server Client

ACK Congestion Control (ACC) Router Data 42 Data 43 Data Data 40 Delack factor = 4 Forward Server Client

Sender Adaptation (SA) Infrequent ACKs cause slow window growth Sender tends to be bursty Server cwnd += 8 cwnd += 8/cwnd Increment window by amount of data ack’d Regulation: pace packets out at rate estimated by cwnd/srtt This reduces burstiness Router Forward Client

ACK Reconstruction (AR) ACK filterACK reconstructor Server Forward Client Regenerates ACKs at other end of reverse channel Shields sender from large gaps in ack sequence AR rate determined by o input ACK rate o target ACK spacing 1

Bandwidth Asymmetry Performance o TCP transfers in the forward direction alone o Maximum window size 100 KB; no losses on forward path –Header compression helps –Large reverse channel buffer hurts for Reno and ACC –Fairness greatly improves using AF and ACC for multiple transfers

Multihop Wireless Simulations o 1 to 3 wireless hops on path o Radio turnaround time = 3-12 ms o Radio queue size = 10 packets o Exponential backoff in multiples of 20 ms slots ER PT Client Server 100 Kbps, 10 ms 10 Mbps 1 ms PT

Performance: Single Transfer AF reduces chances that peer radio is busy o MAC backoffs less frequent Round-trip std deviation reduces from 1.5 s to 0.6 s Throughput (Kbps) AF: 20-35% throughput improvement compared to Reno

Performance: Concurrent Transfers Metrics: utilization and fairness Simultaneous connections over 2-hop network o Performance more predictable and consistent with AF Unpredictable performance caused by long timeouts AF: 25% improvement in fairness over Reno

Combining Technologies Internet server Internet Hybrid PoP Client 10 Mbps, 2 ms Wireless transmitter PT ER Requests & acks Web data Wireless cable forward channel with packet radio reverse channel Workload: Multiple concurrent Web-like transfers Issues: both bandwidth and latency asymmetries Main result: Ack filtering tremendously improves scaling behavior (average completion time vs. # of concurrent transactions)

Summary: Asymmetric Effects General definition of asymmetry o Problem: ACK channel impacts TCP performance Classification of types of asymmetry o Bandwidth asymmetry due to technologies o Latency asymmetry due to MAC interactions General solutions: Two-pronged approach o Reduce frequency of ACKs (AF, ACC) o Handle infrequent ACKs (SA, AR) Status o BSD/OS 3.0 implementation o Soon-to-be Internet RFC

Challenge #3: Low Bandwidth Sender Receiver Small transmission window size o Timeouts for most losses Result: Unacceptably low throughput Low channel bandwidths Burst packet losses Short Web transfers

Enhanced TCP Loss Recovery Sender Receiver 1 Goal: Better data-driven loss recovery Web trace analysis: 25% of all timeouts after at least 1 packet was successfully received

Enhanced TCP Loss Recovery Limited Transmit Sender Receiver 32 ack 0 1st dup ack Early “fast recovery”: send new packet on dup ACK Need to guard against packet reordering 5

Performance: Enhanced Recovery Timeouts occur only on persistent congestion o Entire window is lost o Retransmission is lost Time (s) Packet sequence # Enhanced Recovery TCP SACK

TCP Loss Recovery: Status SACK implementation in BSD/OS o Released March 1996 (IETF presentation); patches June 1996 Enhanced loss recovery o BSD/OS implementation o Experiments over Internet paths and Ricochet network o Now documented as RFC 3042

Summary Three fundamental challenges to efficient reliable data transport over wireless networks o Wireless bit-errors: Berkeley Snoop protocol (local recovery + ELN) o Asymmetric effects: Two-pronged approach with end-to-end and link schemes (AF, ACC, SA, AR) o Low channel bandwidths: Enhanced TCP loss recovery Lessons for protocol design o Cross-layer protocol optimizations: Snoop, ELN, AF o Soft-state network agents: Snoop, AR o Data-driven loss recovery: Snoop, Limited Transmit protocol