HACK: HIERARCHICAL ACKS FOR EFFICIENT WIRELESS MEDIUM UTILIZATION

Similar documents
Robust Header Compression for Multimedia Services

MILCOM October 2002 (Anaheim, California) Subject

Solutions to Performance Problems in VoIP Over a Wireless LAN

WiFi Networks: IEEE b Wireless LANs. Carey Williamson Department of Computer Science University of Calgary Winter 2018

Getting Connected (Chapter 2 Part 4) Networking CS 3470, Section 1 Sarah Diesburg

Protocol Layers & Wireshark TDTS11:COMPUTER NETWORKS AND INTERNET PROTOCOLS

Towards a Robust Protocol Stack for Diverse Wireless Networks Arun Venkataramani

Investigating the Use of Synchronized Clocks in TCP Congestion Control

ECE4110 Internetwork Programming. Introduction and Overview

Transport Layer TCP / UDP

ECE 650 Systems Programming & Engineering. Spring 2018

Transport: How Applications Communicate

Lesson 3. IPv4 and IPv6 Protocols. Chapter-4 L03: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

CSCI-GA Operating Systems. Networking. Hubertus Franke

Sample Solution to Problem Set 3

Block-switched Networks: A New Paradigm for Wireless Transport

Congestion / Flow Control in TCP

Sample solution to Midterm

Introduction to TCP/IP networking

Telematics. 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology

Introduction to Internet. Ass. Prof. J.Y. Tigli University of Nice Sophia Antipolis

CHAPTER 7 SIMULATION OBSERVATIONS

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

cs144 Midterm Review Fall 2010

CIS-331 Exam 2 Spring 2016 Total of 110 Points Version 1

TinyOS meets IP -- finally

Computer Networks. Wireless LANs

CC-SCTP: Chunk Checksum of SCTP for Enhancement of Throughput in Wireless Network Environments

Written Exam in Information Networks TSIN01

Lecture Outline. Lecture 2. OSI model and networking. The OSI model and networking. The OSI model and networking. The OSI model and networking

Wireless MACs: MACAW/802.11

B. Bellalta Mobile Communication Networks

STEVEN R. BAGLEY PACKETS

Link Layer II: MACA and MACAW

CIS-331 Exam 2 Fall 2014 Total of 105 Points. Version 1

Computer Networks (Fall 2011) Homework 2

EE 610 Part 2: Encapsulation and network utilities

The Link Layer II: Ethernet

UNIT V. Computer Networks [10MCA32] 1

OSI Network Layer. Network Fundamentals Chapter 5. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

Introduction to Internetworking

Robust Header Compression (ROHC)

Efficient Transmission of H.264 Video over WLANs

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades

Lecture 4: Congestion Control

standard. Acknowledgement: Slides borrowed from Richard Y. Yale

A Modified Medium Access Control Algorithm for Systems with Iterative Decoding

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Wireless Protocols. Training materials for wireless trainers

Process-to-Process Delivery:

Ethernet Switches Bridges on Steroids. Ethernet Switches. IEEE Wireless LAN. Ad Hoc Networks

Adap%ng to the Wireless Channel II: SampleWidth

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

CIS-331 Exam 2 Fall 2015 Total of 105 Points Version 1

Network Research and Linux at the Hamilton Institute, NUIM.

Networking Link Layer

3.1. Introduction to WLAN IEEE

Fast, Efficient, and Robust Multicast in Wireless Mesh Networks

CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 8

Lecture 16: QoS and "

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005

Adaptors Communicating. Link Layer: Introduction. Parity Checking. Error Detection. Multiple Access Links and Protocols

Computer Networks. Today. Principles of datalink layer services Multiple access links Adresavimas, ARP LANs Wireless LANs VU MIF CS 1/48 2/48

Sirindhorn International Institute of Technology Thammasat University

Chapter 4 Network Layer: The Data Plane. Part A. Computer Networking: A Top Down Approach

ZigBee/ David Sanchez Sanchez.

CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 7

Internet II. CS10 : Beauty and Joy of Computing. cs10.berkeley.edu. !!Senior Lecturer SOE Dan Garcia!!! Garcia UCB!

CMPE 257: Wireless and Mobile Networking

Links, clocks, optics and radios

CS 43: Computer Networks Switches and LANs. Kevin Webb Swarthmore College December 5, 2017

Performance Analysis of Header Compression Schemes in Heterogeneous Wireless Multi Hop Networks

Multiple Network Coded TCP Sessions in Disruptive Wireless Scenarios

Internet Protocol (IP)

Computer Communication Networks Midterm Review

Wireless Network and Mobility

ECSE 414 Fall 2014 Final Exam Solutions

CMPE 257: Wireless and Mobile Networking

Wireless Local Area Part 2

CSCI-1680 Link Layer I Rodrigo Fonseca

Packet Header Formats

Networks. an overview. dr. C. P. J. Koymans. Informatics Institute University of Amsterdam. February 4, 2008

A New Full Duplex MAC Protocol to Solve the Asymmetric Transmission Time

Introduction to computer networking

November 1998 doc.: IEEE /378 IEEE P Wireless LANs Extension of Bluetooth and Direct Sequence Interference Model.

An SCTP-Protocol Data Unit with several chunks

Telematics. 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Announcements Computer Networking. What was hard. Midterm. Lecture 16 Transport Protocols. Avg: 62 Med: 67 STD: 13.

CS268: Beyond TCP Congestion Control

Today. Last Time. Motivation. CAN Bus. More about CAN. What is CAN?

CSCI-1680 Wireless Chen Avin

Links. Error Detection. Link Layer. Multiple access protocols. Nodes Links Frame. Shared channel Problem: collisions How nodes share a channel

Review. Error Detection: CRC Multiple access protocols. LAN addresses and ARP Ethernet. Slotted ALOHA CSMA/CD

Robust Header Compression (RoHC) over Multiprotocol Label Switching (MPLS) Networks

Part 5: Link Layer Technologies. CSE 3461: Introduction to Computer Networking Reading: Chapter 5, Kurose and Ross

The Effects of Asymmetry on TCP Performance

Transcription:

HACK: HIERARCHICAL ACKS FOR EFFICIENT WIRELESS MEDIUM UTILIZATION LYNNE SALAMEH, ASTRIT ZHUSHI, MARK HANDLEY, KYLE JAMIESON, BRAD KARP.! UNIVERSITY COLLEGE LONDON

WIFI MOSTLY USED FOR TCP DOWNLOADS Server Access Point (AP) Client TCP Download

WIFI MOSTLY USED FOR TCP DOWNLOADS Server Access Point (AP) Client TCP ACKs

WIFI MOSTLY USED FOR TCP DOWNLOADS Link Layer ACKs Server Access Point (AP) Client

WIFI MEDIUM ACQUISITION INCURS OVERHEAD Backoff Preamble 1500 bytes Preamble SIFS Data DIFS 800 μs Rate =15 Mbps Link-Layer ACK * Diagram to Scale

WIFI MEDIUM ACQUISITION INCURS OVERHEAD Data ACK Rate =15 Mbps ~80% Utilization

WIFI MEDIUM ACQUISITION INCURS HIGH OVERHEAD ACK Rate = 60 Mbps ~51% Utilization

WIFI MEDIUM ACQUISITION INCURS HIGH OVERHEAD ACK Rate = 150 Mbps ~29% Utilization

WIFI MEDIUM ACQUISITION INCURS HIGH OVERHEAD ACK Rate = 600 Mbps ~9% Utilization

AGGREGATION INCREASES UTILIZATION AT HIGH RATES Aggregate Block ACK Rate = 600 Mbps ~80% Utilization

TCP DOUBLES MEDIUM ACQUISITIONS AP Client Acquire TCP Data Aggregate Block ACK TCP ACKs Aggregate Acquire * Not to Scale Time Block ACK

TCP DOUBLES MEDIUM ACQUISITIONS AP Client TCP Data Aggregate At 600 Mbps, ~61% utilization. Block ACK TCP ACKs Aggregate Time Block ACK

DO WE NEED TO ACQUIRE THE MEDIUM FOR FEEDBACK? AP Client TCP ACKs cumulative: no need for Block ACK. Encapsulate TCP ACK in Link-Layer ACK. Time TCP Data Aggregate Block ACK TCP ACKs Aggregate Block ACK

DO WE NEED TO ACQUIRE THE MEDIUM FOR FEEDBACK? AP Client TCP Data Aggregate TCP ACKs cumulative: robust to packet loss. Encapsulate TCP ACK in Link-Layer ACK. Block ACK + Encapsulated TCP ACKs Time

HACK: HIERARCHICAL ACKNOWLEDGEMENTS

GOALS Coexistence with stock 802.11. Simple NIC changes. No TCP changes. Robustness to loss.

BLOCK ACKS MUST MEET HARD DEADLINE AP Client Need to send Block ACK within SIFS. TCP ACKs not ready in time. Can t wait longer: other senders might jump in. Time TCP Data Aggregate Block ACK SIFS (16μs) TCP ACKs

TCP ACKS DON T HAVE A HARD DEADLINE AP Client TCP Data 1, 2 TCP ACKs can afford to wait. Append them to the next Link-Layer ACK. Block ACK TCP Data 3, 4 TCP ACKs 1 & 2 Time Block ACK + TCP ACK 1, 2

CONSECUTIVE TCP ACKS ARE REDUNDANT Urgent Ptr Checksum 1 Offset + Flags Window Size ACK Number Sequence Number Dest. Port Source Port TCP ACK Header (20 Bytes)

CONSECUTIVE TCP ACKS ARE REDUNDANT Urgent Ptr Checksum 1 Offset + Flags Window Size ACK Number Sequence Number Dest. Port Source Port TCP ACK 1

CONSECUTIVE TCP ACKS ARE REDUNDANT Urgent Ptr Check- sum 1 2 Offset + Flags Window Size Size + K ACK Number Number + N Sequence Number Dest. Port Source Port TCP ACK 1 Urgent Ptr Offset + Flags Sequence Number Dest. Port Source Port TCP ACK 2

CONSECUTIVE TCP ACKS ARE REDUNDANT Urgent Ptr Checksum 1 Offset + Flags Window Size ACK Number Sequence Number Dest. Port Source Port TCP ACK 1 K N TCP ACK 2

HACK USES ROHC FOR EFFICIENT COMPRESSION Urgent Ptr Checksum 1 Offset + Flags Window Size ACK Number Sequence Number Dest. Port Source Port TCP ACK 1 HACK uses Robust Header Compression (ROHC, RFC 6846) K N ROHC shrinks a TCP ACK to about 5 bytes TCP ACK 2

TO HACK OR NOT TO HACK? AP Client 4 3 2 1 Tx Queue TCP Data 1 & 2 Block ACK? TCP ACKs 1 & 2 From Network Stack

TO HACK OR NOT TO HACK? AP Client More Data 4 3 Tx Queue 4 Tx Queue 3 TCP Data 1 & 2 Block ACK TCP Data 3 & 4 TCP ACKs 1 & 2 From Network Stack Block ACK + TCP ACKs 1, 2

NIC NEEDS NO TCP KNOWLEDGE AP Client TCP ACKs NETWORK STACK NETWORK STACK Compress More Data? DRIVER Opaque Blob DRIVER NIC NIC

NIC NEEDS NO TCP KNOWLEDGE AP Client TCP ACKs NETWORK STACK NETWORK STACK Compress More Data? DRIVER DRIVER NIC NIC Block ACK

NIC NEEDS NO TCP KNOWLEDGE AP Client TCP ACKs NETWORK STACK NETWORK STACK Decompress DRIVER NIC DRIVER NIC

WHAT ABOUT LOSS OF BLOCK ACKS? AP Client TCP can tolerate loss of ACKs. ROHC cannot: endpoints should remain in sync. HACK should be robust against loss. Details in paper. TCP Data Aggregate Block ACK + Encapsulated TCP ACKs Time

EVALUATION Microsoft s Software Radio (SoRa): 802.11a (no aggregation). ns-3 simulator 802.11n (aggregation).

TCP GOODPUT EXPERIMENT SoRa NS-3 802.11a 802.11n 54 Mbps 150 Mbps High Quality Link 1, 2 Clients Up to 10 Clients Measure steady state aggregate goodput

HACK IMPROVES TCP GOODPUT SoRa (802.11a) ns-3 (802.11n) 1 client 2 clients # clients 1 2 4 10 0 5 10 15 20 25 30 Mean Aggregate Goodput (Mbps) TCP/Wifi 0 20 40 60 80 100 120 140 Mean Aggregate Goodput (Mbps) TCP/HACK 29-32 % Improvement 15-22 % Improvement

HACK IMPROVES GOODPUT ACROSS 140 FULL RANGE OF LINK RATES 120 Average Goodput (Mbps) 100 80 60 40 20 0 0 5 10 15 20 25 30 SNR (db) 15 Mbps

HACK IMPROVES GOODPUT ACROSS 140 FULL RANGE OF LINK RATES 120 Average Goodput (Mbps) 100 80 60 40 20 30 Mbps 15 Mbps 0 0 5 10 15 20 25 30 SNR (db)

HACK IMPROVES GOODPUT ACROSS 140 FULL RANGE OF LINK RATES 120 Average Goodput (Mbps) 100 80 60 40 20 45 Mbps 30 Mbps 15 Mbps 0 0 5 10 15 20 25 30 SNR (db)

HACK IMPROVES GOODPUT ACROSS 140 FULL RANGE OF LINK RATES 120 Average Goodput (Mbps) 100 80 60 40 20 60 Mbps 45 Mbps 30 Mbps 15 Mbps 0 0 5 10 15 20 25 30 SNR (db)

HACK IMPROVES GOODPUT ACROSS 140 FULL RANGE OF LINK RATES 120 Average Goodput (Mbps) 100 80 60 40 20 90 Mbps 60 Mbps 45 Mbps 30 Mbps 15 Mbps 0 0 5 10 15 20 25 30 SNR (db)

HACK IMPROVES GOODPUT ACROSS 140 FULL RANGE OF LINK RATES 120 Average Goodput (Mbps) 100 80 60 40 20 120 Mbps 90 Mbps 60 Mbps 45 Mbps 30 Mbps 15 Mbps 0 0 5 10 15 20 25 30 SNR (db)

HACK IMPROVES GOODPUT ACROSS 140 FULL RANGE OF LINK RATES Average Goodput (Mbps) 120 100 80 60 40 20 135 Mbps 120 Mbps 90 Mbps 60 Mbps 45 Mbps 30 Mbps 15 Mbps 0 0 5 10 15 20 25 30 SNR (db)

HACK IMPROVES GOODPUT ACROSS FULL RANGE OF LINK RATES Average Goodput (Mbps) 140 120 100 80 60 40 20 0 0 5 10 15 20 25 30 150 Mbps 135 Mbps 120 Mbps 90 Mbps 60 Mbps 45 Mbps 30 Mbps 15 Mbps SNR (db)

HACK IMPROVES GOODPUT ACROSS FULL RANGE OF LINK RATES Average Goodput (Mbps) 140 120 100 80 60 40 20 0 0 5 10 15 20 25 30 150 Mbps 135 Mbps 120 Mbps 90 Mbps 60 Mbps 45 Mbps 30 Mbps 15 Mbps SNR (db)

HACK IMPROVES GOODPUT ACROSS FULL RANGE OF LINK RATES 140 120 TCP/HACK TCP/802.11n Average Goodput (Mbps) 100 80 60 40 20 0 0 5 10 15 20 25 30 SNR (db)

HACK IMPROVES GOODPUT ACROSS FULL RANGE OF LINK RATES 140 120 TCP/HACK TCP/802.11n Average Goodput (Mbps) 100 80 60 40 TCP/HACK outperforms TCP/802.11n, even in lossy environments 20 0 0 5 10 15 20 25 30 SNR (db)

CONCLUSIONS TCP/HACK reduces medium acquisitions. Increases goodput by: ~29-32% with no aggregation ~11-20% with aggregation Practical to deploy on real NICs. http://www0.cs.ucl.ac.uk/staff/a.zhushi/hack/index.html