The ROHC library provides an easy and robust way for applications to reduce their bandwidth usage on network links with limited capacity. Headers of network packets are compressed with the ROHC protocol and algorithms. The library is published as opensource under the GPL license (version 2 or later).
RObust Header Compression (ROHC) is a standardized method defined by the IETF to compress the IP, UDP, RTP, and TCP headers of Internet packets. This compression scheme differs from other compression schemes by the fact that it performs well over links where the packet loss rate is high, such as wireless links.
In streaming applications, the overhead of IP, UDP, and RTP is 40 bytes for IPv4, or 60 bytes for IPv6. For VoIP this corresponds to around 60% of the total amount of data sent. Such large overheads may be tolerable in wired links where capacity is often not an issue, but are excessive for wireless systems were bandwidth is scarce. ROHC compresses these 40 bytes or 60 bytes of overhead typically into only 1 or 3 bytes by placing a compressor before the link that has limited capacity, and a decompressor after that link. The compressor converts the large overhead to only a few bytes, while the decompressor does the opposite.
The ROHC library implements the RObust Header Compression (ROHC) protocol as defined by the IETF. Its objective is to provide a free ROHC implementation conform to the ROHC standards (see http://
Please feel free to use or contribute to the ROHC library. The following resources are available to help you:
- Some tutorials on the wiki: http://
- Online documentation: http://
- A mailing list is dedicated to questions and discussions about the library:
- subscription: http://
- archive: http://
- A bug tracker is ready to keep track of bugs you might find:
The library was initially developed in the frame of a project involving the French space agency (CNES), Thales Alenia Space (TAS) and Viveris Technologies (http://
All bugs Latest bugs reported
Bug #1270576: iprohc_client: corrupted double-linked list
Reported on 2014-01-19
Bug #1265304: RTP decompression failure with repeated constant TS
Reported on 2014-01-01
Bug #1263693: uncompressed profile: feedback behavior does not conform to RFC 3095
Reported on 2013-12-23
Bug #1244990: gen_id optional for lists of IPv6 extension headers
Reported on 2013-10-26
Bug #1236404: IP/ROHC: abnormal stop on abrupt TCP disconnection during tunnel negotiation
Reported on 2013-10-07