A Unified Header Compression Framework for Low-Bandwidth Links Jeremy Lilley Jason Yang Hari Balakrishnan Srinivasan Seshan MIT Laboratory for Computer.

Slides:



Advertisements
Similar presentations
Computer Networks20-1 Chapter 20. Network Layer: Internet Protocol 20.1 Internetworking 20.2 IPv IPv6.
Advertisements

20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
IP Header compression in UMTS network Thesis Work Presentation Author: Jukka Raunio Supervisor: Prof. Raimo Kantola Instructor: M. Sc. Antti.
IP Fragmentation. MTU Maximum Transmission Unit (MTU) –Largest IP packet a network will accept –Arriving IP packet may be larger IP Packet MTU.
IS333, Ch. 26: TCP Victor Norman Calvin College 1.
CECS 474 Computer Network Interoperability Notes for Douglas E. Comer, Computer Networks and Internets (5 th Edition) Tracy Bradley Maples, Ph.D. Computer.
Chapter 20 Network Layer: Internet Protocol Stephen Kim 20.1.
Network Layer Packet Forwarding IS250 Spring 2010
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #2 Header Compression.
1 Link Layer & Network Layer Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof. Dina Katabi.
Internet Networking Spring 2004
Internet Networking Spring 2003
Header Compression Schemes. Center for TeleInFrastructure 2 Different Header Compression schemes  Compressed TCP – Van Jacobsen RFC 1144  only for TCP/IP.
1 Internet Networking Spring 2006 Tutorial 14 Header Compression.
1 Internet Networking Spring 2002 Tutorial 2 IP Checksum, Fragmentation.
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
Gursharan Singh Tatla Transport Layer 16-May
Module 10. Internet Protocol (IP) is the routed protocol of the Internet. IP addressing enables packets to be routed from source to destination using.
Internet Protocol (IP)
The Network Layer. Network Projects Must utilize sockets programming –Client and Server –Any platform Please submit one page proposal Can work individually.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Protocol Layering Chapter 10. Looked at: Architectural foundations of internetworking Architectural foundations of internetworking Forwarding of datagrams.
Computer Networks: Multimedia Applications Ivan Marsic Rutgers University Chapter 3 – Multimedia & Real-time Applications.
TCP/IP Essentials A Lab-Based Approach Shivendra Panwar, Shiwen Mao Jeong-dong Ryoo, and Yihan Li Chapter 5 UDP and Its Applications.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
7-1 Last time □ Wireless link-layer ♦ Introduction Wireless hosts, base stations, wireless links ♦ Characteristics of wireless links Signal strength, interference,
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Suez Canal University – Faculty of Computers & Informatics - Cisco Local Academy Network Fundamentals.
TCP/IP Transport and Application (Topic 6)
Dr. John P. Abraham Professor UTPA
Chapter 81 Internet Protocol (IP) Our greatest glory is not in never failing, but in rising up every time we fail. - Ralph Waldo Emerson.
Internet Protocol ECS 152B Ref: slides by J. Kurose and K. Ross.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
CS4550 Computer Networks II IP : internet protocol, part 2 : packet formats, routing, routing tables, ICMP read feit chapter 6.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Multimedia Wireless Networks: Technologies, Standards, and QoS Chapter 3. QoS Mechanisms TTM8100 Slides edited by Steinar Andresen.
Header Compression over Cellular LinksLars-Erik Jonsson, Header Compression for IP-Telephony over Cellular Links Lars-Erik Jonsson (Ericsson.
William Stallings Data and Computer Communications
3.2 Software Fundamentals. A protocol is a formal description of digital message formats and the rules for exchanging those messages in or between computing.
CSC 600 Internetworking with TCP/IP Unit 5: IP, IP Routing, and ICMP (ch. 7, ch. 8, ch. 9, ch. 10) Dr. Cheer-Sun Yang Spring 2001.
TCP/IP Networking (2:1) Joy Kuri, Haresh Dagale, T.V.Prabhakar.
1 Computer Communication & Networks Lecture 19 Network Layer: IP and Address Mapping Waleed Ejaz.
1 Review – The Internet’s Protocol Architecture. Protocols, Internetworking & the Internet 2 Introduction Internet standards Internet standards Layered.
3/10/2016 Subject Name: Computer Networks - II Subject Code: 10CS64 Prepared By: Madhuleena Das Department: Computer Science & Engineering Date :
Congestion Control: UDP. What is Congestion Control? Refers to the management of packet loss and signal degradation Handled by both Network and Transport.
COMPUTER NETWORKS CS610 Lecture-30 Hammad Khalid Khan.
Lecture 13 IP V4 & IP V6. Figure Protocols at network layer.
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Behrouz A. Forouzan TCP/IP Protocol Suite, 3rd Ed.
Internet Networking Spring 2002
Transport Layer Unit 5.
TCP/IP Explored Jun Wu 11/11/2018.
Internet Protocol (IP)
Dr. John P. Abraham Professor UTPA
Chapter 20 Network Layer: Internet Protocol
Network Core and QoS.
Dr. John P. Abraham Professor UTRGV, EDINBURG, TX
Dr. John P. Abraham Professor UTPA
Net 323 D: Networks Protocols
Advanced Computer Networks
OSI Reference Model Unit II
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
NET 323D: Networks Protocols
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Transport Layer 9/22/2019.
Network Core and QoS.
Presentation transcript:

A Unified Header Compression Framework for Low-Bandwidth Links Jeremy Lilley Jason Yang Hari Balakrishnan Srinivasan Seshan MIT Laboratory for Computer Science Networks and Mobile Systems Group

Motivation Low bandwidth on many wireless links Protocol headers are often large Header compression is attractive and beneficial in many cases But… –Many, many protocols in practice- compressing them is where the real gains are –Treating each as a separate problem: tedious! Wanted: A general approach!

The Problem: Painful Implementation Path Standardization (packet format, RFCs) Implementation hassles –Requires detailed knowledge of kernel internals –Needs understanding of link error characteristics Each protocol treated as a new problem Result: Header-compressed protocols lag way behind!

Solution: Unified approach to the problem Source code implementation for different platforms High-level protocol description Protocol designer writes Code Generation Toolkit runs Goal: to make header compression absurdly simple

Previous Work 1984 – Thinwire 1990 – V. Jacobson –TCP/IP 1996 – Degermark –UDP/TCP/IPv – Casner –RTP

Contributions Unified header compression scheme High-level description language Header compression software toolkit Error-tolerance analysis Comparison to conventional header compression

Compression Scheme: An Example Source IP Address Destination IP Address ChecksumProtocolTTL Length Flags HLenVer TOS IDFragment Offset ConstantInferrableDeltaRandom

Unified Compression Scheme Goal: To send original packets with minimal amount of bandwidth Reference packets –Send complete header Compressed packets (common case) –Send only changes Base Station Mobile Host Internet

Reference Packets Fields sent unchanged –Initializes decompressor state –Keeps state synchronized Contexts –Want to allow many packet streams concurrently –Provide different “contexts” for them –Context ID to identify the stream

Compressed Headers Only delta and random fields sent Send only non-zero delta values –Encoded in change bit-vector Field ordering must be consistent Context ID XXXX XXXXX Which Deltas have changed? Delta values Compressed Packet Header Random fields  Payload Delta flagsRandom Delta values Corresponding flag and delta values Context ID

Specification Language Set of header fields –Size in bits –Compression category (CONSTANT, INFERRED, DELTA, RANDOM) –Category-specific parameters: inference formula, encoding method… PField sourceIP, fsize=32, ptype=CONSTANT; PField length, fsize=16, ptype=INFERRED, formula=[framelength];

Rules and Actions Rules can: –Bypass routines altogether PRule SendAsIP, ruletext=[protover]!=4; –Force a reference packet to be sent PRule SendReference, ruletext=[curTime]<{expireTime}; Actions can keep state, write logs {expiretime}=[curTime]+5*[tickspersecond]

Complete Sample Description class IPcompressor { NiceName IP_Compression_Protocol; Compressed_ID 0x0081; UnCompressed_ID 0x0083; PField protover, fsize=4, ptype=NOCHANGE; PField hdrlen, fsize=4, ptype=NOCHANGE; PField tos, fsize=8, ptype=NOCHANGE; PField totlen, fsize=16, ptype=INFERRED, formula=[length]; PField packetid, fsize=16, ptype=DELTA, encoding=VARONETHREE, negatives=DISALLOWED; PField fragments, fsize=16, ptype=NOCHANGE; PField ttl, fsize=8, ptype=NOCHANGE; PField protocol, fsize=8, ptype=NOCHANGE; PField checksum, fsize= 16, ptype=RANDOM; PField sourceIP, fsize=32, ptype=NOCHANGE; PField destIP, fsize=32, ptype=NOCHANGE; PRule SendAsIP, ruletext=[protover]!=4; # want IP version 4 } class IPcompressor { NiceName IP_Compression_Protocol; Compressed_ID 0x0081; UnCompressed_ID 0x0083; PField protover, fsize=4, ptype=NOCHANGE; PField hdrlen, fsize=4, ptype=NOCHANGE; PField tos, fsize=8, ptype=NOCHANGE; PField totlen, fsize=16, ptype=INFERRED, formula=[length]; PField packetid, fsize=16, ptype=DELTA, encoding=VARONETHREE, negatives=DISALLOWED; PField fragments, fsize=16, ptype=NOCHANGE; PField ttl, fsize=8, ptype=NOCHANGE; PField protocol, fsize=8, ptype=NOCHANGE; PField checksum, fsize= 16, ptype=RANDOM; PField sourceIP, fsize=32, ptype=NOCHANGE; PField destIP, fsize=32, ptype=NOCHANGE; PRule SendAsIP, ruletext=[protover]!=4; # want IP version 4 }

Errors Errors desynchronize compressor and decompressor –State changes missing, corrupted –As errors increase, header compression can be a losing proposition Need to keep synchronized, preferably with implicit semantics/in-band signaling CompressorDecompressor Base Station Mobile Host Internet

Impact of Link Errors TCP/IP over a 28.8 kbps link Break-even at 1.0 Errors Decrease Effectiveness

Error handling Subject of ongoing research, we implement basic techniques –Connection-oriented protocols: implicit signaling –Connectionless protocols: periodic refresh TCP effectiveness analysis in paper Flexible framework enables other techniques to be incorporated

Compression Comparisons Generated TCP/IP vs. VJ TCP/IP, based on original packet length

Compression vs. Specificity How much does extra information help?

Low-overhead Implementation CPU time for compressing outgoing packet

Further Directions String protocol compression –E.g., HTTP transfers Advanced error recovery Handling IPSec All<250k<50k<10k 6.3%9.3%11.1%19.3% Fraction of transfer as http header

Conclusion New approach to header compression –Unified header compression scheme –High-level description language –Software toolkit: Performance comparable to hand- optimized algorithms for TCP Eases implementation and deployment of header-compressed protocols