RFC 3243
RObust Header Compression (ROHC): Requirements and Assumptions for 0-byte IP/UDP/RTP Compression
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 Notice ๐
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
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 ๐. Thank you, and I'm obsessed with this document ๐ฆโจ
๐ฆ where this page comes from
- ietf: rfc3243 2002-04
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms