News and announcements

New website for the ROHC library!

Written for rohc by Didier Barvaux on 2014-02-23

I'm very pleased to announce that a new shiny web site is available for the project!

The URL doesn't change, but the web site looks better and gives much more information than the previous one.

So, have a look at http://rohc-lib.org/ and don't hesitate to send your feedback (broken links, mis-spelling, missing information...) on the project mailing list.

Didier

ROHC monthly report (September)

Written for rohc by Didier Barvaux on 2013-09-29

To keep everybody in touch with what's happening in the dev branch of the ROHC library, a progress report like this one will be written every month.

The format and details of the report is not definitive. It could change in next reports. For the first time, the report will be short (no link to commits, IETF RFC, or project wiki), so ask questions on the mailing list if needed.

And, the first report also contains some information that are older than September 2013.

Library features:
 * Add support for ROHCv1 TCP profile (stability alpha, in progress).
 * Add extension support for UO-1-ID packet.
 * Add support for repair upon CRC failure.
 * Greatly improve the performances of the W-LSB decoding algorithm for
   large windows and lossy streams.
 * Enhanced, cleaner library API (more details to come later on this
   topic).

Miscellaneous library enhancements:
 * Improve doxygen documentation.
 * Generate and install man pages from doxygen comments.
 * Add new examples of library usage in examples/ subdir.
 * Use cmocka unit testing library http://www.cmocka.org/ for some tests
 * Improve code by using function attributes when possible.
 * Various code cleanup.

Application features:
 * Make the compression/decompression performance application run on
   non-x86 Linux systems.
 * Add a new tool named 'rohc_gen_stream' that generates large
   (un)compressed stream for performance testing
 * Sniffer: add --disable option to disable one or more ROHC profiles.
 * Sniffer: update statistics output for the TCP profile.
 * Sniffer: add daemon mode and Gentoo init script.
 * Non-regression tool: robustify the parsing of CLI arguments.

Bug fixes:
 * Bug #809028: Write man pages for public API
 * Bug #896842: Add extension support for UO-1-ID packet
 * Bug #1208900: RTP profile: unscaled TS shall always be encoded with
                 W-LSB in UO* packets
 * Bug #1209260: Wrong W-LSB decoding if interpretation interval
                 straddles the field boundaries
 * Bug #1210498: IP-ID shall be transmitted verbatim in IR and IR-DYN
                 packets
 * Bug #1212769: Fail to unlock/remove feedbacks if ring is full of
                 locked feedbacks

Maintenance versions 1.5.3 and 1.6.1 are available!

Written for rohc by Didier Barvaux on 2013-08-15

The maintenance versions 1.5.3 and 1.6.1 of the ROHC library were released!

== About the ROHC library ==

The ROHC library provides an easy and robust way for applications to reduce their bandwidth usage on network links with limited capacity or expensive costs. Headers of network packets are compressed with the ROHC protocol and algorithms.

The ROHC protocol is very efficient for compressing VoIP streams that use RTP as transport protocol. ROHC is also suitable for compressing IP-only (IPv4 or IPv6) flows, UDP flows and many others.

The library is published as Opensource under the license GNU GPL version 2 or later.

See http://rohc-lib.org/ for more details.

== Release notes & changelogs ==

These versions are maintenance releases with bug fixes only. Some important bugs were corrected. Some bugs were not fixed to keep compatibility with previous 1.5.x or 1.6.x releases.

Because of unfixed bugs, it is strongly recommended not to use any 1.5.x versions with unsafe sources of RTP packets. If you are concerned, please upgrade to the 1.6.0 version.

See the release notes and the changelogs [1, 2] for more details.

[1] https://launchpad.net/rohc/+milestone/1.5.3#release-notes
[2] https://launchpad.net/rohc/+milestone/1.6.1#release-notes

== Compatibility with previous releases ==

The 1.5.3 release is compatible with all previous 1.5.x releases.
The 1.6.1 release is compatible with all previous 1.6.x releases.

== End of life ==

The 1.5.x and 1.6.x branches are still maintained.

== Acknowledgments ==

None.

== Download ==

The source archives and the API documentation are available for download [3, 4]. Traffic captures used for non-regression tests are shipped in separate archives in order to reduce the size of the source archives.

[3] https://launchpad.net/rohc/+milestone/1.5.3#downloads
[4] https://launchpad.net/rohc/+milestone/1.6.1#downloads

== Installation instructions & API documentation ==

The instructions to install the library [5] and use it [6] are available on the wiki. The API documentation too [7].

[5] installation: http://rohc-lib.org/wiki/doku.php?id=library-install
[6] using: http://rohc-lib.org/wiki/doku.php?id=library-first-application
[7] API documentation: http://rohc-lib.org/wiki/doku.php?id=library-api

== Feedback ==

Any feedback on these 2 releases will be appreciated. You may use the mailing list to ask questions [8] and the bug tracker to report problems [9].

[8] mailing list: https://launchpad.net/~rohc
[9] bug tracker: https://bugs.launchpad.net/rohc/

TCP profile in mainline

Written for rohc by Didier Barvaux on 2013-07-07

The ROHCv1 TCP profile is now merged in the main development branch.

The merge was performed to ease testing and debugging the TCP profile in preparation of the upcoming 1.7.0 release.

The TCP profile was contributed by FWX. Since then, Viveris Technologies and Didier Barvaux cleaned a little bit the code up, but some work remains:
 - there are probably inconsistencies with ROHC standards,
 - there is duplicate code with other IP-based profiles,
 - the TCP profile crashes in less than 5 minutes with the sniffer tool
   on a small LAN while browsing the web.

As you see, the TCP profile is still in beta quality, so DO NOT USE IT IN PRODUCTION ENVIRONMENTS for the moment.

Bug reports are welcome if there are easily reproducible: provide a PCAP capture that makes the non-regression tool crash or report a (de)compression failure.

Major version 1.6.0 published

Written for rohc by Didier Barvaux on 2013-06-09

The major version 1.6.0 of the ROHC library was just released after 7 months of work.

== About the ROHC library ==

The ROHC library provides an easy and robust way for applications to reduce their bandwidth usage on network links with limited capacity or expensive costs. Headers of network packets are compressed with the ROHC protocol and algorithms.

The ROHC protocol is very efficient for compressing VoIP streams that use RTP as transport protocol. ROHC is also suitable for compressing IP-only (IPv4 or IPv6) flows, UDP flows and many others.

The library is published as Opensource under the license GNU GPL version 2 or later.

See http://rohc-lib.org/ for more details.

== Release notes & changelogs ==

The 1.6.0 release adds support for:
 - ROHC constant IP-ID,
 - ROHC segment,
 - improved handling of TS, TS_STRIDE, TS_OFFSET and TS_SCALED values,
 - improved RTP stream detection,
 - new trace framework,
 - Linux kernel,
 - OpenBSD,
 - Mingw64,
 - CYGWIN,
 - build with GCC 4.8, Clang 3.2, and TCC,
 - two new tools: a fuzzer and a sniffer.

There are also 33 bugs fixed. See the release notes and the changelog [1] for more details.

[1] https://launchpad.net/rohc/+milestone/1.6.0#release-notes

== Compatibility with previous releases ==

The 1.5.0 release might not be compatible with previous 1.3.x, 1.4.x and 1.5.x releases for the ROHC protocol: mixing major versions for compressor and decompressor is not recommended.

The library API is however compatible with older versions 1.3.x, 1.4.x and 1.5.x. Any program building with an older version should build fine with the 1.6.0 version. Except if the program was using some library definitions that were made public by mistake but were not part of the official API. If you find yourself in such a case, ask for help on the mailing list.

== Acknowledgements ==

Many thanks to people that contributed new features:
 - Mikhail Gruzdev, Thales Communications, and Viveris Technologies
   for Linux kernel support.
 - Audric Schiltknecht and Julien Bernard from Viveris Technologies
   for constant IP-ID support, the new RTP profile detection mechanism,
   and the new trace framework.
 - Yura for the ROHC fuzzer.
 - Raman Gupta for ROHC-over-Ethernet tunnel support.

Many thanks also people that reported/fixed bugs:
 - Audric Schiltknecht (Viveris Technologies),
 - FWX,
 - Elisabeth,
 - Julien Bernard (Viveris Technologies),
 - Raman Gupta,
 - Yura.

== Download ==

The source archives and the API documentation are available for download [2]. Traffic captures used for non-regression tests are shipped in separate archives in order to reduce the size of the source archives.

[2] https://launchpad.net/rohc/+milestone/1.6.0#downloads

== Installation instructions & API documentation ==

The instructions to install the library [3] and use it [4] are available on the wiki. The API documentation too [5].

[3] installation: http://rohc-lib.org/wiki/doku.php?id=library-install
[4] using: http://rohc-lib.org/wiki/doku.php?id=library-first-application
[5] API documentation: http://rohc-lib.org/wiki/doku.php?id=library-api

== Feedback ==

Any feedback on the 1.6.0 release will be appreciated. You may use the mailing list to ask questions [6] and the bug tracker to report problems [7].

[6] mailing list: https://launchpad.net/~rohc
[7] bug tracker: https://bugs.launchpad.net/rohc/

610 of 27 results