What is ROCCO?

ROCCO stands for RObust Checksum-based header COmpression and is a header compression scheme developed especially to efficiently compress real-time packet flows over bandwidth-expensive and error-prone links.

The ROCCO work started in December 1998 with a detailed study of the existing header compression schemes. CRTP [CRTP], which is the solution today provided for real-time data carried by RTP, was implemented and its performance over cellular links evaluated. That evaluation showed that CRTP is not a good candidate for header compression over such links. The evaluation work was summarized in the Internet-Draft draft-degermark-crtp-cellular.

In parallel with the CRTP evaluation, work with a new header compression scheme was initiated. This work resulted in the first ROCCO Internet-Draft which was submitted in June -99. In that draft, the main principles and something you can call a working protocol were described, but it should still be seen as a very first proposal. At this time, ROCCO was only implemented in a simulator.

In July, the header compression work was presented at the Oslo IETF meeting. Questions about IPR's regarding ROCCO were raised and led to a statement from Ericsson concerning that matter.

Since July, ROCCO has been implemented and tested in a testbed environment. As a result of the implementation feedback, an updated version of the ROCCO draft with error corrections and clarifications was submitted in the beginning of September.

In October, next version (02) of the ROCCO draft was submitted which presented a scheme that was much more mature than the June version. It described how the concept with header compression profiles should be used by introducing various compression profiles for conversational voice in different environments.

At the 46th IETF meeting in Washington DC, a BOF about robust header compression was held as a result of the ROCCO attempts. Several presentations were held including the problems with CRTP, ROCCO,  characteristics of cellular links and work in other standardization bodies. Nokia also proposed a mechanism with decompressor acknowledgements that possibly could be used in some header compression schemes to achieve robustness.

The next ROCCO version was published in January 2000. A large number of improvements had now been applied and the compression efficiency significantly increased. The main reason for that was the new encoding introduced and a new specialized compression profile with a minimal header size of one octet only.

Prior to the 47th IETF in Adelaide, Australia (March 27-31, 2000), a fifth ROCCO version 05 was published. The update included several important parts. Firstly, the structure of the profile specification chapter was changed, mostly due to feedback from implementers. Secondly, there were several generalizations made especially with the introduction of FEEDBACK messages, of which the pervious CONTEXT_REQUEST messages now is a subset. The FEEDBACK concept also opened up for more implementation freedom. New simulation results were also included, showing the performance of the 1-octet ROCCO profile. Finally, there were new chapters included, discussing implementation issues and possible future issues to work with.

In May 2000, the ROHC WG had an interimmeeting in Stockholm. Prior to this meeting, all drafts related to robust header compression were submitted as ROHC WG documents. ROCCO was thereby released in a sixth version with significant improvements. At the interimmeeting, it was decided that ROHC will start to produce a new robust header compression scheme and the documentation of that scheme should be based on the ROCCO specification.

Since the ROHC group decided to define a new scheme (even if it would be based on the ROCCO scheme with modifications), ROCCO had fulfilled its purposes and the development was therefore terminated. However, a final version was submitted on the 15th of June to put a last and hopefully correct version of the scheme in the Internet Draft archives. This version had the ROHC WG name but should just be referred to as ROCCO 06.

The work then continued in the ROHC WG, a group created because of the ROCCO work and the initiatives made by its authors.