Effnet ROHC-IP™

Effnet provides a highly portable, efficient and fully compliant software implementation of RObust Header Compression (ROHC): A Compression profile for IP technology which is based on IETF standard RFC 3843 published in 2004. The RFC 3843 defines compression of IP headers within the framework of ROHC as defined in RFC 3095.

Effnet ROHC-IP™ header chain support

ROHC-IP header chains

Both IPv4 and IPv6 are supported, with extension headers.

Support for AH, GRE, MINE and ESP-NULL headers.

Effnet ROHC-IP™ applications

Effnet ROHC-IP™ is used together with Effnet ROHC™ to add support for compression of IP packets. These IP packets carry more than 2 IP headers or other headers except UDP and ESP. An Effnet Classification and Context Management (EFFRCCM™) module is provided which can classify packets according to the header chain present and profiles supported in the compression and decompression library. It also provides context management facility which is important for efficient functioning of compression and decompression of a packet flow.

Highlights of the latest version, 2.4

  • Performance improvements.
    • Code refactoring of the IP profile compressor.
  • This will aid compilers in generating better object code and result in a notably improved system performance.
  • Updated to support recent CRs to the 3GPP TS 36.323 specifications.

General features

  • Fully compliant with IETF standards RFC3843 & RFC4815
  • Lightweight implementation suitable for low-end devices
  • Highly portable ANSI C code with no operating system dependencies
  • Platform, endianness and byte-order independent
  • Highly configurable with compile and run-time options
  • Highly modular with external memory management
  • Multi-threading support

Standards based functions:

  • Profile: IP (0x0004)
  • Compression of IPv4 and IPv6 with extension headers
  • All the compressor and decompressor states
  • Modes: Unidirectional and Bi-directional Optimistic with mode transition logic
  • Support for static chain termination
  • Handling of multiple levels of IP headers
  • All encoding mechanisms: LSB, W-LSB, Offset-IPID encoding, Self-describing variable-length values
  • Parsing and handling of ROHC packet types, including all extensions: 0, 1, 2, and 3
  • Parsing and handling of feedback and feedback options
  • Dealing with changes in semi-static fields e.g. TTL, TOS and DF-bit
  • Detection of IP-ID behaviour and changes in behaviour
  • Support for constant IP-ID
  • Support for extension header lists (only type 0 in compressor and all types in decompressor)


Effnet provides support and maintenance services covering problem reporting, bug fixes, updates, training, consulting and integration. A sample application code together with detailed documentation covering well defined and easy to use API is provided to speed up the process of integration.