Diagnosing Wireless TCP Performance Problems: A Case Study Tianbo Kuang, Fang Xiao, and Carey Williamson University of Calgary.

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

A feedback–based scheme for improving TCP performance in Ad Hoc Wireless Networks Group : Manish Mehta Aditya Barve.
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.
Guide to TCP/IP, Third Edition
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
TCP Congestion Control Dina Katabi & Sam Madden nms.csail.mit.edu/~dina 6.033, Spring 2014.
November 26, 2002TeleSim Research Group1 Performance and Robustness Testing of Wireless Web Servers Guangwei Bai Kehinde Oladosu Carey Williamson.
IEEE b Wireless LANs Carey Williamson Department of Computer Science University of Calgary.
1 Network Measurements of a Wireless Classroom Network Carey Williamson Nuha Kamaluddeen Department of Computer Science University of Calgary.
RainDrop: A Multi-Rate Multi-Channel Wireless LAN Tianbo Kuang Qian Wu Carey Williamson Department of Computer Science University of Calgary.
6/3/ Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross-Layer Information Awareness CS495 – Spring 2005 Northwestern University.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #07 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
CS 268: Wireless Transport Protocols Kevin Lai Feb 13, 2002.
CPSC Tutorial: TCP 101 r The Transmission Control Protocol (TCP) is the protocol that sends your data reliably r Used for , Web, ftp, telnet,
Fair Sharing of MAC under TCP in Wireless Ad Hoc Networks Mario Gerla Computer Science Department University of California, Los Angeles Los Angeles, CA.
MULTIMEDIA TRAFFIC MANAGEMENT ON TCP/IP OVER ATM-UBR By Dr. ISHTIAQ AHMED CH.
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.
5-1 Data Link Layer r Today, we will study the data link layer… r This is the last layer in the network protocol stack we will study in this class…
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
IEEE b Wireless LANs Carey Williamson Department of Computer Science University of Calgary.
1 A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Course : CS898T Instructor : Dr.Chang - Swapna Sunkara.
Copyright © 2005 Department of Computer Science CPSC 641 Winter Tutorial: TCP 101 The Transmission Control Protocol (TCP) is the protocol that sends.
TCP Behavior across Multihop Wireless Networks and the Wired Internet Kaixin Xu, Sang Bae, Mario Gerla, Sungwook Lee Computer Science Department University.
1 Computer Networks Course: CIS 3003 Fundamental of Information Technology.
1 Transport Layer Computer Networks. 2 Where are we?
CIS 725 Wireless networks. Low bandwidth High error rates.
1 Improving Wireless LAN Performance via Adaptive Local Error Control Presented by Yuanfang Cai.
CS640: Introduction to Computer Networks Aditya Akella Lecture 22 - Wireless Networking.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer3-1 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles.
Introduction1-1 Data Communications and Computer Networks Chapter 5 CS 3830 Lecture 27 Omar Meqdadi Department of Computer Science and Software Engineering.
Qian Zhang Department of Computer Science HKUST Advanced Topics in Next- Generation Wireless Networks Transport Protocols in Ad hoc Networks.
TCP Throughput Collapse in Cluster-based Storage Systems
Mobile Communications: Mobile Transport Layer Mobile Communications Chapter 10: Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping.
TCP PERFORMANCE OVER AD HOC NETWORKS Presented by Vishwanee Raghoonundun Assisted by Maheshwarnath Behary MSc Computer Networks Middlesex University.
LAN technologies and network topology LANs and shared media Locality of reference Star, bus and ring topologies Medium access control protocols.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
CA-RTO: A Contention- Adaptive Retransmission Timeout I. Psaras, V. Tsaoussidis, L. Mamatas Demokritos University of Thrace, Xanthi, Greece This study.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Data Link Layer Part I – Designing Issues and Elementary.
Transport over Wireless Networks Myungchul Kim
Data Transmission Over Wireless Links Fan Yang
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 15.
HighSpeed TCP for High Bandwidth-Delay Product Networks Raj Kettimuthu.
Network Diagnostic Tool (NDT) Duplex-Mismatch detection update Fall Member Meeting Sept 21, 2005 Rich Carlson
Vertical Optimization Of Data Transmission For Mobile Wireless Terminals MICHAEL METHFESSEL, KAI F. DOMBROWSKI, PETER LANGENDORFER, HORST FRANKENFELDT,
TCP with Variance Control for Multihop IEEE Wireless Networks Jiwei Chen, Mario Gerla, Yeng-zhong Lee.
Networking Basics CCNA 1 Chapter 11.
1/26 Module C - Part 2 DOMINO Detection Of greedy behavior in MAC layer of IEEE public NetwOrks Prof. JP Hubaux Mobile Networks
Challenges to Reliable Data Transport Over Heterogeneous Wireless Networks.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Review of key networking techniques: –Reliable communication over unreliable channels –Error detection and correction –Medium access control –routing –Congestion.
Janey C. Hoe Laboratory for Computer Science at MIT 노상훈, Pllab.
Guide to TCP/IP Fourth Edition
CPSC TCP Plots r Slides originally from Williamson at Calgary r Minor modifications are made.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
Wireless LAN Requirements (1) Same as any LAN – High capacity, short distances, full connectivity, broadcast capability Throughput: – efficient use wireless.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
Ch 3. Transport Layer Myungchul Kim
1 Ad-hoc Transport Layer Protocol (ATCP) EECS 4215.
A Bidirectional Multi-channel MAC Protocol for Improving TCP Performance on Multihop Wireless Ad Hoc Networks Tianbo Kuang and Carey Williamson Department.
TCP over Wireless PROF. MICHAEL TSAI 2016/6/3. TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum.
Media Access Methods MAC Functionality CSMA/CA with ACK
UNIT-V Transport Layer protocols for Ad Hoc Wireless Networks
Chapter 3 outline 3.1 Transport-layer services
Ad-hoc Transport Layer Protocol (ATCP)
TCP Congestion Control
Chapter 3 outline 3.1 Transport-layer services
Presentation transcript:

Diagnosing Wireless TCP Performance Problems: A Case Study Tianbo Kuang, Fang Xiao, and Carey Williamson University of Calgary

Agenda Motivation Background TCP IEEE b Wireless LAN (WLAN) Universal Serial Bus (USB) Experimental Methodology Results

Motivation TCP performance often degrades over wireless networks; reasons “well-known” Solutions to improve TCP performance over wireless links exist, but how well do they work in a real wireless LAN environment? How do link-layer mechanisms interact with TCP and affect the overall performance? Where is the bottleneck in the network protocol processing path, and why?

Background - TCP Widely used on the Internet (e.g. Web) Connection-oriented, reliable byte stream Window-based flow control Slow start and congestion avoidance Fast retransmission, fast recovery Other extensions, including TCP SACK Many different versions in use

Background – IEEE b An “Ethernet-like” LAN standard (11 Mbps) Infrastructure mode and ad hoc mode Carrier-sense multiple access with collision avoidance (CSMA/CA) to reduce collisions MAC-layer: positive acknowledgment and retransmissions (to recover from channel errors) Dynamic rate adaptation: can choose data transmission rate of 1, 2, 5.5, or 11 Mbps

Background – USB Widely used industry standard for connecting a computer to its peripherals (bus topology) Lots of USB-based (wireless) network cards Data transfers managed by Host Controller (HC) Synchronous bus: 1 msec slots for transfers Transfer requests are handled using vertical and horizontal linked-list data structures Two processing modes for HC: Breadth-First or Depth-First High Speed Bandwidth Reclamation (HSBR)

Background – USB (cont’d) Queued mode (keep HC busy) Transfer size: 64 – 1023 bytes each DF BF

Background – USB (cont’d) Queued mode (keep HC busy) Transfer size: 64 – 1023 bytes each FSBR

Experimental Methodology Experimental Setup (HW/SW) Laptop – Compaq Evo 719c with multiport USB wireless card (Linux 2.4) Access point – Lucent RG-1000 Stationary host on Ethernet LAN – SunOS 5.8 Run netperf on laptop and netserver on wired host SnifferPro 4.6 wireless “sniffer” and tcpdump Experimental Factors USB mode, driver settings Wireless channel (distance) between laptop and AP netserver Ethernet AP netperf Sniffer data acks laptops tcpdump

Initial Result Windows 2000 implementation of TCP is more than 3 times faster than Linux TCP! Reason: Linux driver bug (2 Mbps vs 11 Mbps) OS Linux Windows Mbps 5.11 Mbps Throughput

Results – USB Experiments

With FSBR disabled, USB is the bottleneck With FSBR enabled (the default in Linux), the wireless network is the bottleneck Queued mode makes no difference with FSBR on, but helps when FSBR is turned off Queued mode (even with FSBR turned on) may be very important when higher speed wireless link is used (e.g. IEEE a)

Results – TCP Problems The “ack holding” problem A bug in the NIC firmware or interrupt driver of Linux OS causes excessive delays (> 100 ms) This leads to a spurious TCP timeout The retransmission of previously acked data! Actually just an artifact of tcpdump observation The lack of a TCP “fast retransmit” after receiving three duplicate Acks A deliberate (but not well-known) feature of TCP

Results – TCP “ack holding”

(laptop)(wired) (sniffer)(kernel)

Results – TCP “repeated data” The spurious TCP timeout was not properly detected Caused by initialization bug in Linux TCP implementation The “repeated data” problem is an artifact induced by presence of link layer buffer

Results – TCP “suppressed FR” This is a deliberate feature to prevent a false fast retransmit after a timeout This situation is quite likely to occur in a wireless environment It’s not a bug, but a feature! (correct)

Results – Wireless Problems We observed unusually high collision rates on the wireless channel for TCP transfers, which we call the TCP data/ACK collision problem Scenario: laptop and AP are 1 m apart For TCP, MAC-layer retransmit rate: % For UDP, MAC-layer retransmit rate: % In general, a retransmission rate of 1.75%-7.2% has been seen for other vendor HW/SW (N = 1) For TCP, disabling MAC-layer retransmission degrades throughput by 23%

Results – Wireless Problems (TCP data/ACK collisions)

Results – Wireless Problems The MAC-layer rate adaptation problem Scenario: laptop and AP are 100 m apart Lousy TCP throughput, lots of retransmits Reason: the multiplicative increase and multiplicative decrease (MIMD) bandwidth probing mechanism causes network thrashing and wastes battery power The small congestion window causes temporary deadlock if the TCP receiver uses delayed Ack

Results – Wireless Problems (MAC-layer rate adaptation)

Conclusions TCP performance on WLAN can be wacky! (at least for Compaq Multiport b USB wireless card under Linux 2.4) Several factors can affect overall performance Poorly configured USB bus could be the bottleneck Linux TCP implementation bug makes TCP unable to recognize the first spurious timeout Poor MAC-layer rate adaptation algorithm can cause a “network thrashing” problem TCP’s data/ACK structure may induce excessive collisions at the MAC layer on wireless LANs

Questions?