|
The principal specification for ROHC is RFC 3095. The ROHC family
of header compression protocols is intended for wireless links which have
moderate to high error rates and/or packet loss rates. The prime application of
ROHC will probably be to 3G wireless mobile telephony to facilitate the
efficient integration of voice (and other real-time traffic) with data.
ROHC compresses only packet headers, not packet payloads. For example, the RTP compression protocol compresses the IP/UDP/RTP headers of voice and video RTP traffic typically from 40 bytes down to 4 bytes. The ROHC family also includes IP/UDP, IP/TCP and IP-only header compression. (The RoHC literature writes protocol layers in reverse order to the Internet community. This is because they write layers according to the order of packet headers. E.g. IP/UDP instead of UDP/IP.)
The word robustmeans that ROHC compression is not less robust than the corresponding uncompressed traffic. The word robustin ROHC does not mean that ROHC traffic is more robust than uncompressed traffic. The word robustdistinguishes ROHC from other header compression protocols which are not robust for links with moderate to high error rates. It should be noted, however, that smaller packets offer a smaller target for bit errors. So the packet loss rate for any compression method should be lower than for uncompressed packets. So if RoHC has only a very small probability of loss of sync between compressor/decompressor state machines, there should be a small reduction in overall packet loss rate between applications. This is a minor effect. The main purpose of RoHC is just to not increase the packet loss rate between applications. |
RFCs related to ROHC and ROHC/PPP | |
|---|---|
| RFC 768 | UDP: User Datagram Protocol. |
| RFC 791 | IP: Internet Protocol. |
| RFC 792 | ICMP: Internet Control Message Protocol. |
| RFC 793 | TCP: Transmission Control Protocol. There is no TCP profile in ROHC currently, but there will be one soon. |
| RFC 1144 | Compressing TCP/IP headers for low-speed serial links. This Van Jacobson compression must co-exist with ROHC on PPP links. (Unfortunately this ASCII text file does not contain the diagrams, and I do not know where the PostScript version is.) |
| RFC 1305 | NTP: Network Time Protocol Version 3. ROHC and RTP use NTP timestamps. |
| RFC 1332 | IPCP: The PPP Internet Protocol Control Protocol. |
| RFC 1570 | PPP LCP Extensions. |
| RFC 1661 | PPP: The Point-to-Point Protocol. |
| RFC 1662 | PPP in HDLC-like Framing. (This is used for PPP/serial.) |
| RFC 1700 | Assigned Numbers. Obsoleted by RFC 3232; see instead IANA protocol number assignments. |
| RFC 1889 | RTP: A Transport Protocol for Real-Time Applications. |
| RFC 1890 | RTP Profile for Audio and Video Conferences with Minimal Control. |
| RFC 1979 | PPP Deflate Protocol. (Compresses the whole PPP frame.) |
| RFC 1994 | CHAP: PPP Challenge Handshake Authentication Protocol. |
| RFC 2394 | IP Payload Compression Using DEFLATE. (Compresses the IP payload whereas RFC 1979 compresses an entire PPP frame.) |
| RFC 2460 | IPv6: Internet Protocol, Version 6 (IPv6) Specification. |
| RFC 2472 | IPv6/PPP: IP Version 6 over PPP. |
| RFC 2508 | Compressing IP/UDP/RTP Headers. This is non-ROHC, an early non-robust header compression. |
| RFC 2686 | The Multi-Class Extension to Multi-Link PPP. |
| RFC 3047 | RTP Payload Format for ITU-T Recommendation G.722.1. |
| RFC 3095 | ROHC: RObust Header Compression (ROHC): Framework and four profiles: RTP, UDP, ESP, and uncompressed. This is the main ROHC spec. |
| RFC 3096 | Requirements for robust IP/UDP/RTP header compression. (ROHC requirements.) |
| RFC 3153 | PPP Multiplexing. |
| RFC 3190 | RTP Payload Format for 12-bit DAT Audio and 20- and 24-bit Linear Sampled Audio. |
| RFC 3241 | ROHC/PPP: Robust Header Compression (ROHC) over PPP. |
| RFC 3242 | RObust Header Compression (ROHC): A Link-Layer Assisted Profile for IP/UDP/RTP. (LLA profile for ROHC) |
| RFC 3243 | RObust Header Compression (ROHC): Requirements and Assumptions for 0-byte IP/UDP/RTP Compression. |
| RFC 3320 | SigComp protocol (Signalling Compression). This is often mentioned in the ROHC mailing list, but it's not obvious what it's got to do with ROHC. |
| RFC 3321 | Signaling Compression (SigComp) - Extended Operations. |
| RFC 3322 | Signaling Compression (SigComp) Requirements & Assumptions. |
| RFC 3408 | Zero-byte Support for Bidirectional Reliable Mode (R-mode) in Extended Link-Layer Assisted RObust Header Compression (ROHC) Profile. |
| RFC 3409 | Lower Layer Guidelines for Robust RTP/UDP/IP Header Compression. |
| RFC 3759 | RObust Header Compression (ROHC): Terminology and Channel Mapping Examples. |
| RFC 3816 | Definitions of Managed Objects for RObust Header Compression (ROHC). |
| RFC 3843 | RObust Header Compression (ROHC): A Compression Profile for IP. |
Internet drafts related to ROHC | |
|---|---|
| Note: Since Internet Drafts expire after 6 months, some of these links may be out-of-date. | |
| Internet-Drafts | List of all current Internet drafts. |
| implementer's guide | The RFC 3095 Implementer's Guide. |
| TCP/IP profile | RObust Header Compression (ROHC):A Profile for TCP/IP (ROHC-TCP). |
| reordering support | RObust Header Compression (ROHC): Support for Reordering and Constant IP-ID. |
| IP/TCP requirements | Requirements for ROHC IP/TCP Header Compression. |
| TCP/IP field behaviour | TCP/IP Field Behavior. |
| interoperability | Interoperability of RFC 3095. |
| formal notation | Formal Notation for Robust Header Compression (ROHC-FN). |
| SigComp imp guide | Implementer's Guide for SigComp. |
| SigComp user guide | SigComp Users' Guide. |
| context replication | RObust Header Compression (ROHC):Context Replication for ROHC Profiles. |
| LLA imp guide | ROHC LLA Implementer's Guide. |
| channels that can reorder | RObust Header Compression (ROHC): ROHC over Channels that can Reorder Packets. |
| torture tests | SigComp Torture Tests. |
| L2 assisted profile | RObust Header Compression (ROHC): A Link-Layer Assisted Profile for IP/UDP/RTP. |
| improvements | Improvements for the ROHC Profile Set Update. |
| avt-dsr-05 | RTP Payload Format for ETSI ES 201 108 Distributed Speech Recognition Encoding. |
| rohc over 802 | Robust Header Compression (ROHC) over 802 networks. |
| rohc in NEMO | ROHC (Robust Header Compression) in NEMO network. |
RFCs related to IP-in-IP and various extension headers | |
|---|---|
| RFC 1241 | A Scheme for an Internet Encapsulation Protocol: Version 1. (Experimental in 1991.) |
| RFC 1701 | Generic Routing Encapsulation (GRE). |
| RFC 1702 | GRE: Generic Routing Encapsulation over IPv4 networks. |
| RFC 1853 | IP in IP Tunneling. (informational) |
| RFC 2003 | IP Encapsulation within IP. |
| RFC 2004 | Minimal Encapsulation within IP. |
| RFC 2401 | IPsec: Security Architecture for the Internet Protocol. |
| RFC 2402 | AH: IP Authentication Header. |
| RFC 2406 | ESP: IP Encapsulating Security Payload (ESP). |
| RFC 2410 | The NULL Encryption Algorithm and Its Use With IPsec. |
| RFC 2784 | Generic Routing Encapsulation. |
| RFC 2890 | Key and Sequence Number Extensions to GRE. |
IPR issues -- patents on ROHC | |
|---|---|
| Note: I have heard that there are about 100 patents on RoHC. This is just a sample. | |
| RFC 2026 | The Internet Standards Process -- Revision 3. (See section 10 for info on IP rights claims procedures.) |
| IETF IPR notices | IETF Page of Intellectual Property Rights Notices.Includes NTT DoCoMo's patent licensing statement on ROHC, Ericsson's patent statement pertaining to RFC 3095 (also Ericsson's Patent Claim pertaining to the I-D draft-jonsson-robust-hc), Nokia's statement on RFC 3095, and Matsushita Electronic's statement about IPR claimed in RFC3095. |
| WO0079763 | Robust header compression in packet communications. The invention introduces in the header compressor a checksum that covers the uncompressed header. This checksum can be sent as the compressed header and used for verification of reconstructed header data at the decompressor.A patent on verifying decompression with a CRC. |
| US2002026620 | Re-use of static checksum information in header compression/decompression applications.A patent on caching incremental CRC calculations. This inventionactually makes the calculations slower because you have to rearrange the header fields to do the CRC in the right order, and less reliable because it introduces the possibility of the static CRC cache getting stale. |
| WO0167709 | A technique for compressing a header field in a data packet.Timer-based compression. |
| CA2388006 | Variable length encoding of compressed data. |
| US6542931 | Using sparse feedback to increase bandwidth efficiency in high delay, low bandwidth environment.Patent on feedback referencing the SN field. |
| CN1355984T | Requested patent on Estimation of time stamps in real-time packet communications. |
| US6535925 | Packet header compression using division remainders.Patent on using low order bits for compression. This is like using 03as an abbreviation for 2003to save space. |
| WO03041424 | Wireless communication arrangements with header compression.Melpignano Diego, Philips. |
| US6608841 | System and method for achieving robust IP/UDP/RTP header compression in the presence of unreliable networks. |
| WO02080485 | Robust and efficient compression of list of items.Nokia. |
other locations related to ROHC | |
| ROHC charter | ROHC working group. See also ROHC mailing list info, the current ROHC mailing list archive at IETF, and the old ROHC mailing list (moved on about 2002-2-15 to a new location due to spam). |
| ROHC profiles | IANA number assignments for ROHC profiles. (Not very up-to-date on 2003-9-10. The list is up-to-date for the formally accepted profile numbers, but does not include several numbers which are in the drafts already.) |
| PPP numbers | IANA number assignments for PPP. |
| IETF drafts and RFCs | A list of IETF RFC and draft documents at iptel.org related to IP telephony and SIP and such things. |
| ROHC TCP compression | Some draft files relevant to ROHC TCP compression. |
| TZI ROHC web page | Lists various contributions to ROHC standardisation. |
publications about ROHC | |
| Fitzek publications | Frank Fitzek's publications (with others), including Video Quality Evaluation for Wireless Transmission with Robust Header Compression, Voice Quality Evaluation for Wireless Transmission with ROHCand Voice Quality Evaluation for Wireless Transmission with ROHC (extended version)(all PDF files). |
ROHC software | |
| ROHC at sourceforge | See also the ROHC source download. Has GPL software licence for linux ROHC/PPP/ethernet implementation by Martin Juhlin. Implements UDP, UDP-Lite, IP-only and Uncompressed profiles. |
| EFFNET | Company which sells ROHC software in ANSI C for mobile network infrastructure and handsets, and also other kinds of header compression intended for wireless and satellite. |
| acticom | Company selling software for VoIP/ROHC/IP over mobile networks and PPP. Includes ROHC web page, feature list including ROHC/PPP (RFC 3241) and a PDF document about their ROHC product. |
| EPIC | Siemens/Roke software for compression. Apparently applicable to ROHC IP compression protocol. |