1 Internet Networking Spring 2006 Tutorial 14 Header Compression.

Slides:



Advertisements
Similar presentations
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
Advertisements

© 2006 Cisco Systems, Inc. All rights reserved. Optimizing Converged Cisco Networks (ONT) Module 2: Cisco VoIP Implementations.
Introduction1-1 message segment datagram frame source application transport network link physical HtHt HnHn HlHl M HtHt HnHn M HtHt M M destination application.
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
Chapter 7 – Transport Layer Protocols
IP Protocol - Introduction Dr. Farid Farahmand. Introduction TDM transport networks are not sufficient for data communications Low utilization TDM networks.
Requirements for IP/UDP/RTP header compression To become Editor: Mikael Degermark Input: Charter, 3GPP requirements, contribution from 3G.IP, Editors central.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #2 Header Compression.
© 2006 Cisco Systems, Inc. All rights reserved. 2.3: Encapsulating Voice Packets for Transport.
Internet Networking Spring 2004
1 Enhancements to CRTP draft-koren-avt-crtp-enhance-01.txt T. Koren, S. Casner, P. Ruddy, B. Thompson, A. Tweedly, D. Wing Cisco Systems John Geevarghese.
Header Compression Schemes. Center for TeleInFrastructure 2 Different Header Compression schemes  Compressed TCP – Van Jacobsen RFC 1144  only for TCP/IP.
Transport Layer TCP and UDP IS250 Spring 2010
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Process-to-Process Delivery:
CS 218 F 2003 Nov 3 lecture:  Streaming video/audio  Adaptive encoding (eg, layered encoding)  TCP friendliness References: r J. Padhye, V.Firoiu, D.
CIS679: RTP and RTCP r Review of Last Lecture r Streaming from Web Server r RTP and RTCP.
Page 19/13/2015 Chapter 8 Some conditions that must be met for host to host communication over an internetwork: a default gateway must be properly configured.
1 Extensions to CRTP RTP Multiplexing using Tunnels Bruce Thompson Tmima Koren Cisco Systems Inc.
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
Computer Networks: Multimedia Applications Ivan Marsic Rutgers University Chapter 3 – Multimedia & Real-time Applications.
TCP/IP Header Compression for Satellite Environment Dmitry Batenkov Vladislav Zolotarov Ittay Eyal Itai Ravid Doris Fischer.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.6 UDP Principles (Chapter 24) (User Datagram Protocol)
1 LAN Protocols (Week 3, Wednesday 9/10/2003) © Abdou Illia, Fall 2003.
10/13/20151 TCP/IP Transmission Control Protocol Internet Protocol.
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
UNIT IP Datagram Fragmentation Figure 20.7 IP datagram.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transmission Control Protocol
Chapter 81 Internet Protocol (IP) Our greatest glory is not in never failing, but in rising up every time we fail. - Ralph Waldo Emerson.
Real Time Protocol (RTP) 김 준
1 Internet Control Message Protocol (ICMP) Used to send error and control messages. It is a necessary part of the TCP/IP suite. It is above the IP module.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
S305 – Network Infrastructure Chapter 5 Network and Transport Layers.
THE CLASSIC INTERNET PROTOCOL (RFC 791) Dr. Rocky K. C. Chang 20 September
1 0-Byte Header Reduction Mechanism Fundamentals.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 3 TCP and IP 1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Internet.
IP Fragmentation. Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on rcving side,
@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.
Chapter 9 The Transport Layer The Internet Protocol has three main protocols that run on top of IP: two are for data, one for control.
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
Network Models. 2.1 what is the Protocol? A protocol defines the rules that both the sender and receiver and all intermediate devices need to follow,
Chapter 5 Network and Transport Layers
Introduction To TCP/IP Networking Mr. Zeeshan Ali, Asst. Professor
The Transport Layer Implementation Services Functions Protocols
The Transport Layer Congestion Control & UDP
Chapter 9: Transport Layer
Chapter 3 TCP and IP Chapter 3 TCP and IP.
Introduction to TCP/IP networking
Instructor Materials Chapter 9: Transport Layer
A quick intro to networking
Part III. Data Link Layer
RTP: A Transport Protocol for Real-Time Applications
Chapter 9 ICMP.
Magda El Zarki Professor, ICS UC, Irvine
Byungchul Park ICMP & ICMPv DPNM Lab. Byungchul Park
Net431:advanced net services
Transport Layer Our goals:
Process-to-Process Delivery:
Net 323 D: Networks Protocols
Process-to-Process Delivery: UDP, TCP
Data Communication and Computer Networks
NET 323D: Networks Protocols
Transport Layer 9/22/2019.
Presentation transcript:

1 Internet Networking Spring 2006 Tutorial 14 Header Compression

2 Motivation The size of network and transport layers headers may be a significant overhead for small packets. A problem in slow links. Examples: VoIP traffic over wireless or cellular medium. 16kb/s data rate with a 20ms sampling rate produces packets with 40 bytes of data. Using Telnet over slow modem connection. In many cases the data size is one byte. Solution: Compress the headers RTP/UDP/IP headers compression is defined in RFC TCP/IP headers compression is defined in RFC 1144.

3 Header Compression This is not an end to end compression. Compression is done in the ingress point of the (slow) serial link. Decompression is done in the egress point of the serial link. Compression is done between the network and the link layers. Transparent to the network and transport layers.

4 Header Compression UDP IP H.C. Link Layer IP H.C. Link RTP UDP IP Link Layer RTP

5 Basic Idea The sender and receiver keep track of active connections. The receiver keeps a copy of the header from the last packet from each connection. Differential coding: The delta between the current and the previous packet is sent. A connection number is sent with the compressed packet.

6 TCP/IP Headers

7 Constant Fields In a TCP connection many fields are likely to remain constant. A connection is defined by: source IP and port, destination IP and port.

8 Unnecessary and Changeable Fields Some fields are unnecessary Total length (redundancy with layer II protocols). IP checksum (only Packet ID is left in the IP header). The other fields may be changed. However, they do not all change at the same time. E.g. in an ACK packet the sequence number may remain constant. The sender sends only the fields that are changed. It uses the copy of the last packet that was sent for each connection. A bit mask that indicates which fields were sent precedes these fields.

9 Changeable Fields How the fields change? The difference between current and previous Packet ID is small (usually 1). The difference between current and previous sequence number is less than 2 16 (i.e. 2 bytes). The differences in the changing fields are sent rather than the fields themselves.

10 Compressed Packet Format

11 Compressed Packet Format The first byte is a bit mask that identifies which of the fields are actually changed. TCP Checksum of the original packet is located in the compressed header. An end-to-end integrity check is still valid. Used for error detection and resynchronization. Connection Number may be omitted if is identical to the Connection Number of the previous packet sent.

12 Packet Types The sender can send 3 types of packets. The packet type is stored in the header of the link layer protocol. TYPE_IP - regular uncompressed IP packets. UNCOMPRESSED_TCP - identical to the original packets except the IP protocol field is replaced with a connection number. Use to (re-)synchronizes the receiver. Use to send a TCP packet of new connection. COMPRESSED_TCP

13 The Compression System IP packets goes through the compressor. TYPE_IP is selected if Non-TCP packets. IP fragments. UNCOMPRESSED_TCP is selected if The connection is new. One of the constant fields has changed. The delta in one of the changeable fields is large or negative. Otherwise, COMPRESSED_TCP is selected. If COMPRESSED_TCP or UNCOMPRESSED_TCP is chosen, then the packet header is copied into the array.

14 The Compression System The decompressor checks the type of incoming packets. TYPE_IP packets are simply pass through. UNCOMPRESSED_TCP packets The connection number is extracted and used as an index into the an array of saved headers. The header is copied into the array. The TCP protocol number is restored to the protocol field in the IP header. COMPRESSED_TCP packets The last packet from that connection is extracted from the array of saved header using the connection number. The compressed header is used to restore a new TCP/IP header and construct a new TCP/IP packet. The new header is stored in the array.

15 Error detection Error detection should be provided by layer- II. Transmission errors are detected by the egress point of the line. In such a case all following packets without a connection number is discarded. Problem: a missed packet cannot be detected by the egress node of the line. This can corrupt all the packets that follow. TCP checksum is not compressed, hence end- to-end reliability is provided.

16 IP/UDP/RTP Headers Compression Real-time Transport Protocol provides network transport functions for real-time applications such as audio and video. IP, UDP and RTP are typically used in conjunction when delivering real-time traffic. The three headers contain 40 bytes. When the payload is small (e.g. VoIP) it is desirable to compress the three headers.

17 IP/UDP/RTP Headers | Source Port | Destination Port | | Length | Checksum | |V |P|X| CC |M| PT | Sequence Number | Time Stamp | Synchronization Source Identifier UDPUDP RTPRTP

18 IP/UDP/RTP Headers Headers compression is done in the same way as IP/TCP compression. Constant fields are removed. Differential coding of the changeable fields. However, Constant first order differences are not sent (Packet ID, Time Stamp). A connection is identified by: source IP and port, destination IP and port, synchronization source of the RTP.

19 Changeable fields M = RTP marker bit S = RTP sequence number T = RTP timestamp I = IPv4 packet ID L = RTP CSRC count and list | msb of session context ID | | lsb of session context ID | | M | S | T | I | link sequence | | + UDP checksum + | | M'| S'| T'| I'| CC | | delta IPv4 ID | | delta RTP sequence | | delta RTP timestamp | | | CSRC list | | / RTP data /

20 Error Detection and Recovery Relies on a layer II error detection. A 4-bit sequence number is added to every compressed packet. Used to detect a missing packet. In case the receiver detects a corrupted or missing packet, it requests the sender to retransmit the packet.