RFC 3243

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

๐Ÿ“… published April 2002, from ietf

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

Okay bestie, here's the vibe check on this one ๐Ÿ’…

Author: L-E. Jonsson (Lars-Erik Jonsson), Ericsson ๐ŸŽ€ Category: Informational ๐ŸŒธ Date: April 2002 ๐Ÿ“… Obsoletes / Updates: The title block doesn't list anything this RFC obsoletes or updates ๐Ÿฆ‹ RFC number: 3243 ๐Ÿ’–


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 (C) The Internet Society (2002).  All Rights Reserved.

Abstract ๐ŸŒˆ

Okay so this doc is the wishlist of requirements for a 0-byte IP/UDP/RTP (Internet Protocol/User Datagram Protocol/Real-Time Transport Protocol) header compression scheme. The Robust Header Compression (ROHC) Working Group is the one building it ๐Ÿงš. It also covers the basic assumptions about the typical link layers where 0-byte compression may be implemented, plus some assumptions about how it gets used in general ๐Ÿ’œ.

1. Introduction ๐ŸŒธ

So the whole goal of the Robust Header Compression (ROHC) Working Group is to make header compression schemes that perform well over links with high error rates and long link roundtrip times ๐Ÿ˜ญ. These schemes must perform well for cellular links, like WCDMA, EDGE, and CDMA-2000 ๐Ÿ“ฑ. The schemes should also be applicable to other future link technologies with high loss and long roundtrip times โœจ.

ROHC RTP is already super efficient, robust, and capable ๐Ÿ”ฅ. It can squish the IP/UDP/RTP headers all the way down to a total size of only one octet ๐Ÿ’…. That makes ROHC RTP an excellent solution for future cellular environments with new air interfaces, like WCDMA, and it can make even speech services work over IP with an insignificantly lower spectrum efficiency compared to existing circuit switched solutions ๐ŸŽงโœจ.

Now, the tea โ˜•: all-IP cellular networks will also be built on air interfaces that already exist, like GSM and IS-95, and those are less flexible ๐Ÿ™ˆ. They use radio bearers optimized for specific frame sizes that match the speech codecs. So not a single octet of header can be added without jumping up to the next higher fixed packet size the link supports, which is obviously very costly ๐Ÿ˜ฉ. Long term, that drawback should of course be eliminated with new, more flexible air interfaces ๐Ÿฆ‹. But short term, it would be desirable to get an efficiency comparable to the circuit switched case for speech codecs that are already deployed over the existing air interfaces ๐Ÿ’–.

To make that happen, it must be possible to completely eliminate the headers for a majority of the packets during normal operation, and that's exactly what 0-byte header compression is for ๐ŸŽ€. All the functionality normally provided by the 1-octet header must then be provided some other way, typically by using functionality from the lower layer ๐Ÿง . Important reminder: the purpose of 0-byte header compression is to give optimal efficiency for applications that match the link layer characteristics, not efficiency in general ๐Ÿ‘‘.

As a starting point, the well-established requirements base the ROHC WG developed has been used ๐Ÿ’œ. From there, the requirements 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 give optimal usage of certain links when the traffic pattern of a packet stream completely matches that link's characteristics โœจ. There are no assumptions that only packet streams following that pattern will ever show up. But optimal efficiency obviously can't be provided when they don't ๐Ÿ™ˆ.

To make 0-byte header compression feasible, it's assumed that lower layers can provide the 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 written as deltas to the ones in the regular RTP requirements [RTP-REQ] ๐ŸŽ€. To keep things simple, this section is split into the same three subsections as [RTP-REQ]: the first covers the impact on the rest of the Internet infrastructure, the second covers the headers to be compressed, and the third covers efficiency and link technology issues ๐Ÿงš.

3.1. Impact on Internet Infrastructure ๐ŸŒ

The meaning of header compression doesn't change at all just because 0-byte header compression exists ๐Ÿ’–. So no additional impact on the Internet infrastructure is allowed ๐Ÿšซ. The "Transparency" and "Ubiquity" requirements of [RTP-REQ, section 2.1] therefore also apply to 0-byte RTP compression, with no modifications ๐Ÿซถ.

3.2. Supported Headers and Kinds of RTP Streams ๐ŸŒˆ

0-byte RTP compression in general has the same requirements on supported headers and RTP streams as regular ROHC RTP [RTP-REQ, section 2.2] โœจ. But there are a few aspects about the "Genericity" and IPSEC requirements that are worth noting ๐Ÿ‘€.

The "Genericity" requirement of [RTP-REQ] says that compressing the headers of arbitrary RTP streams must be supported, and that's true for 0-byte compression too, as long as it doesn't assume certain RTP behavior ๐Ÿ’…. As [RTP-REQ] also says, this doesn't rule out optimizations for certain media types where the traffic pattern is known ๐ŸŽง. For 0-byte RTP, that means the scheme must be able to handle arbitrary RTP streams so it can meet the requirements of section 3.1 ๐Ÿ’œ. But because of how 0-byte compression works, which requires a traffic pattern that suits the link it runs over in order to compress down to 0-byte headers, it ends up optimized for applications with link-suited traffic patterns ๐Ÿ”ฅ. For traffic that doesn't match the link properties, the scheme must automatically and immediately fall back to non-0-byte RTP compression, and it must not have any impact on the packet stream ๐Ÿ›Ÿ.

Now IPSEC ๐Ÿ”. 0-byte compression can't be achieved if parts of the original headers are encrypted or carry randomly changing fields ๐Ÿ˜ญ. So IPSEC and 0-byte RTP header compression don't 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 the present header fields ๐Ÿซ . And this doesn't only apply to IPSEC: it applies to every case where headers can't 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 the 0-byte header compression runs over, 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 can cause a significant drop in spectrum efficiency compared to existing circuit switched solutions ๐Ÿ˜ฉ.

  • Header Compression Coexistence: The scheme must fit into the ROHC framework alongside other ROHC profiles ๐Ÿงฉ.

Justification: Implementation simplicity is an important issue, so the 0-byte RTP compression scheme should have as much as possible in common with the regular IP/UDP/RTP profile ๐Ÿซถ.

  • Unidirectional links: It's of less importance that the 0-byte header compression scheme also be able to work over unidirectional links ๐Ÿ™ƒ.

Justification: 0-byte header compression targets links that are typically bi-directional ๐Ÿ’œ.

4. IANA Considerations ๐Ÿงพ

A protocol that meets these requirements, e.g., [LLA], will require IANA to assign various numbers ๐Ÿ”ข. This document by itself, however, doesn't require any IANA involvement ๐Ÿ™Œ.

5. Security Considerations ๐Ÿ”

Okay, serious moment ๐Ÿ˜ค. 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, doesn't 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
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 ๐Ÿ’œ. Thank you, and I'm obsessed with this document ๐Ÿฆ‹โœจ

๐Ÿ“ฆ where this page comes from