RFC 3243 INFORMATIONAL HEADER COMPRESSION · ROHC · CELLULAR

RObust Header Compression (ROHC): Requirements and Assumptions for 0-byte IP/UDP/RTP Compression

The requirements and link assumptions for squeezing IP/UDP/RTP headers down to zero bytes.

On rfc-editor.org ↗
PUBLISHED
April 2002
AUTHORS
L-E. Jonsson
STREAM
IETF
TARGET HEADER SIZE
0 bytes
REGULAR ROHC RTP HEADER
1 octet
DOI
10.17487/RFC3243

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                       L-E. Jonsson
Request for Comments: 3243                                      Ericsson
Category: Informational                                       April 2002


                   RObust Header Compression (ROHC):
    Requirements and Assumptions for 0-byte IP/UDP/RTP Compression

Status of this Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

Abstract

   This document contains requirements for the 0-byte IP/UDP/RTP
   (Internet Protocol/User Datagram Protocol/Real-Time Transport
   Protocol) header compression scheme to be developed by the Robust
   Header Compression (ROHC) Working Group.  It also includes the basic
   assumptions for the typical link layers over which 0-byte compression
   may be implemented, and assumptions about its usage in general.

1.  Introduction

   The goal of the Robust Header Compression (ROHC) Working Group is to
   develop header compression schemes that perform well over links with
   high error rates and long link roundtrip times.  The schemes must
   perform well for cellular links, using technologies such as WCDMA,
   EDGE, and CDMA-2000.  However, the schemes should also be applicable
   to other future link technologies with high loss and long roundtrip
   times.

   ROHC RTP has become a very efficient, robust and capable compression
   scheme, able to compress the IP/UDP/RTP headers down to a total size
   of only one octet.  This makes ROHC RTP an excellent solution for
   future cellular environments with new air interfaces, such as WCDMA,
   making even speech services possible over IP with an insignificantly
   lower spectrum efficiency compared to existing circuit switched
   solutions.

   However, all-IP cellular networks will also be built with already
   existing air interfaces such as GSM and IS-95, which are less
   flexible using radio bearers optimized for specific frame sizes
   matching the speech codecs used.  This means that not a single octet
   of header can be added without switching to the next higher fixed
   packet size supported by the link, something which is obviously very
   costly.  In the long term, this drawback should of course be
   eliminated with new, more flexible air interfaces, but in the short
   term it would be desirable if an efficiency comparable to the circuit
   switched case could also be achieved for already deployed speech
   codecs when used over the existing air interfaces.  To achieve that,
   it must be possible to completely eliminate the headers for a
   majority of the packets during normal operation, and this is the
   purpose of 0-byte header compression.  All functionality normally
   provided by the 1-octet header must then be provided by some other
   means, typically by utilizing functionality from the lower layer.  It
   is important to remember that the purpose of 0-byte header
   compression is to provide optimal efficiency for applications
   matching the link layer characteristics, not efficiency in general.

   As a starting point for these requirements, the well-established
   requirements base developed in the ROHC WG has been used.  From that,
   the requirements have evolved through input from the 3GPP2 community
   and from discussions within the WG.

2.  Assumptions for the Applicability of 0-byte RTP Header Compression

   The purpose of 0-byte header compression is to provide optimal usage
   of certain links when the traffic pattern of a packet stream
   completely matches the characteristics of that link.  There are no
   assumptions that only packet streams complying with that pattern will
   occur, but optimal efficiency cannot of course be provided when this
   is not the case.

   To make 0-byte header compression feasible, it is assumed that lower
   layers can provide the necessary functionality needed to replace the
   1-octet headers and fulfill the requirements defined in section 3.
   An example is the synchronized nature of most cellular links, which
   can provide sequencing and timing information and make packet loss
   detection possible.

3.  Requirements on 0-byte RTP Header Compression

   Since 0-byte header compression for ROHC IP/UDP/RTP is a variant of
   regular ROHC RTP compression [ROHC], these requirements are described
   as deltas to those defined in the regular RTP requirements [RTP-REQ].
   For simplicity, this section is also separated into the same three
   subsections as the requirements in [RTP-REQ], where the first deals
   with the impact of header compression on the rest of the Internet
   infrastructure, the second concerns the headers to be compressed, and
   the third covers efficiency and link technology related issues.

3.1.  Impact on Internet Infrastructure

   The meaning of header compression is in no way changed by the
   introduction of 0-byte header compression.  No additional impact on
   the Internet infrastructure is thus allowed.  The "Transparency" and
   "Ubiquity" requirements of [RTP-REQ, section 2.1] therefore also
   apply to 0-byte RTP compression without any modifications.

3.2.  Supported Headers and Kinds of RTP Streams

   The 0-byte RTP compression scheme in general imposes the same
   requirements on supported headers and RTP streams as regular ROHC RTP
   [RTP-REQ, section 2.2].  However, there are some aspects regarding
   the "Genericity" and IPSEC requirements that should be noted.

   The "Genericity" requirement of [RTP-REQ] states that compression of
   headers of arbitrary RTP streams must be supported, and this is also
   true for the 0-byte compression scheme to the extent that it is not
   allowed to assume certain RTP behavior.  However, as also stated in
   [RTP-REQ], this does not preclude optimizations for certain media
   types where the traffic pattern is known.  For 0-byte RTP, this means
   that the scheme must be able to handle arbitrary RTP streams in order
   to fulfill the requirements of section 3.1.  However, due to the
   typical characteristics of 0-byte compression, by requiring a traffic
   pattern that suits the link over which it is implemented to be able
   to compress down to 0-byte headers, it becomes optimized for
   applications with link-suited traffic patterns.  For traffic that
   does not comply with the link properties, the scheme must
   automatically and immediately fall back to non-0-byte RTP compression
   and must not have any impact on the packet stream.

   Regarding IPSEC, it should be noted that 0-byte compression cannot be
   achieved if parts of the original headers are encrypted or carry
   randomly changing fields.  IPSEC and 0-byte RTP header compression
   therefore do not go well together.  If IPSEC is used and prevents 0-
   byte compression, the scheme must fall back to a less efficient
   compression that can handle all present header fields.  Of course,
   this applies not only to IPSEC but to all cases where headers cannot
   be compressed down to 0-byte.

3.3.  Performance Issues

   All the performance requirements of [RTP-REQ] also apply to 0-byte
   RTP header compression, with the following additions and exceptions:

   -  Performance/Spectral Efficiency: For packet streams with traffic
      patterns that match the characteristics of the link over which 0-
      byte header compression is implemented, the performance should be
      such that 0-byte header packets are generated during normal
      operation, most of the time.  0-byte headers would then replace
      most of the 1-octet headers used by regular ROHC RTP [ROHC].

      Justification: Spectrum efficiency is a primary goal.  Studies
      have shown that for certain applications and link technologies,
      even a single octet of header may result in a significant decrease
      in spectrum efficiency, compared to existing circuit switched
      solutions.

   -  Header Compression Coexistence: The scheme must fit into the ROHC
      framework together with other ROHC profiles.

      Justification: Implementation simplicity is an important issue and
      the 0-byte RTP compression scheme should therefore have as much as
      possible in common with the regular IP/UDP/RTP profile.

   -  Unidirectional links: It is of less importance that the 0-byte
      header compression scheme be able to also work over unidirectional
      links.

      Justification: 0-byte header compression targets links that
      typically are bi-directional.

4.  IANA Considerations

   A protocol which meets these requirements, e.g., [LLA], will require
   the IANA to assign various numbers.  This document by itself,
   however, does not require any IANA involvement.

5.  Security Considerations

   A protocol specified to meet these requirements, e.g., [LLA], may
   have a number of security aspects that need to be considered.  This
   document by itself, however, does not add any security risks.

6.  References

   [RTP-REQ] Degermark, M., "Requirements for robust IP/UDP/RTP header
             compression", RFC 3096, July 2001.

   [ROHC]    Bormann, C., Burmeister, C., Degermark, M., Fukushima, H.,
             Hannu, H., Jonsson, L-E., Hakenberg, R., Koren, T., Le, K.,
             Liu, Z., Martensson, A., Miyazaki, A., Svanbro, K., Wiebke,
             T., Yoshimura, T. and H. Zheng, "Robust Header Compression
             (ROHC)", RFC 3095, July 2001.

   [LLA]     Jonsson, L-E. and G. Pelletier, "RObust Header Compression
             (ROHC): A Link-Layer Assisted Profile for IP/UDP/RTP", RFC
             3242, April 2002.

7.  Author's Address

   Lars-Erik Jonsson
   Ericsson AB
   Box 920
   SE-971 28 Lulea
   Sweden

   Phone: +46 (920) 20 21 07
   Fax: +46 (920) 20 20 99
   EMail: lars-erik.jonsson@ericsson.com

8.  Full Copyright Statement

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.

AI ELI5

On this page
PROBLEMEven the one-octet header of ROHC RTP is costly on cellular links such as GSM and IS-95, where adding a single octet forces a jump to the next fixed packet size.
MECHANISMThe RFC sets requirements for a 0-byte IP/UDP/RTP compression scheme as differences from regular ROHC RTP, and assumes the lower layer supplies the sequencing and timing the header used to carry.
WHY IT MATTERSIt guided the ROHC Working Group's work on such a scheme. The memo is informational and defines no protocol itself.

§1Why Zero Bytes

The ROHC Working Group develops header compression that performs well over links with high error rates and long round-trip times, such as cellular links using WCDMA, EDGE and CDMA-2000. ROHC RTP can already compress IP/UDP/RTP headers down to a total of only one octet.

Existing air interfaces such as GSM and IS-95 use radio bearers tuned to specific frame sizes that match the speech codecs. On them, not a single octet of header can be added without switching to the next higher fixed packet size, which is very costly. 0-byte header compression aims to remove the header completely for most packets during normal operation, with the lost functions supplied by the lower layer.

If a box only comes in fixed sizes, even one extra sticker can force you to use the next bigger box. Getting rid of the sticker completely avoids that.

§2Assumptions About Use

0-byte compression is meant to make optimal use of certain links when the traffic pattern of a packet stream completely matches the characteristics of the link. The RFC does not assume that only matching streams will occur, but efficiency cannot be optimal otherwise.

It is assumed that lower layers can supply the functions that replace the 1-octet header. The example given is the synchronized nature of most cellular links, which can provide sequencing and timing information and make packet loss detection possible.

The road itself keeps count and keeps time, so the packets do not need to carry their own numbers and clocks.

§3Requirements as Deltas

The requirements are written as changes to those for regular ROHC RTP in RFC 3096. Compression has no new impact on Internet infrastructure, so the Transparency and Ubiquity requirements apply unchanged.

For supported headers, arbitrary RTP streams must still be handled, so the scheme may not assume particular RTP behavior. Traffic that does not suit the link must make the scheme automatically and immediately fall back to non-0-byte RTP compression with no effect on the packet stream.

IPSEC is a special case. 0-byte compression cannot work if parts of the original headers are encrypted or carry randomly changing fields, so the scheme must fall back to a less efficient mode that handles every header field present.

If a packet does not fit the shortcut, the system must instantly switch to the normal way without anyone noticing.

REGULAR ROHC RTP VERSUS 0-BYTE COMPRESSION
AspectRegular ROHC RTP0-byte scheme
Header sizeAs small as one octetZero bytes most of the time
Unmatched traffic THIS RFCCompressed as usualFalls back to non-0-byte compression
Unidirectional linksRequirement appliesOf less importance

§4Performance Requirements

All performance requirements of RFC 3096 still apply, with three changes.

  • Efficiency: for streams that match the link, 0-byte headers should be produced most of the time during normal operation, replacing most 1-octet headers. Spectrum efficiency is a primary goal.
  • Coexistence: the scheme must fit into the ROHC framework alongside other profiles and share as much as possible with the regular IP/UDP/RTP profile, to keep implementation simple.
  • Unidirectional links: working over them is of less importance, since 0-byte compression targets links that are typically bi-directional.

The shortcut should be used almost all the time, should look like the normal method so it is easy to build, and is made for two-way roads.

§5IANA and Security

A protocol that meets these requirements, for example the link-layer assisted profile in RFC 3242, will need the IANA to assign various numbers and may have its own security aspects. This document by itself needs no IANA involvement and adds no security risks.

This note is only a list of wishes, so it does not open any new doors for trouble. The actual tool built from it has to think about that.

§6References