News and announcements

Maintenance versions 1.3.5, 1.4.3, and 1.5.2 are available!

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

The maintenance versions 1.3.5, 1.4.3, and 1.5.2 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.3.x, 1.4.x, or 1.5.x releases, or because
fixing the problem required invasive code changes.

Because of unfixed bugs, it is strongly recommended not to use any
1.3.x and 1.4.x versions with unsafe sources of IP or ROHC packets.
It is also 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, 3] for more details.

[1] https://launchpad.net/rohc/+milestone/1.3.5#release-notes
[2] https://launchpad.net/rohc/+milestone/1.4.3#release-notes
[3] https://launchpad.net/rohc/+milestone/1.5.2#release-notes

== Compatibility with previous releases ==

The 1.3.5 release is compatible with all previous 1.3.x releases.
The 1.4.3 release is compatible with all previous 1.4.x releases.
The 1.5.2 release is compatible with all previous 1.5.x releases.

== End of life ==

The 1.3.x branch reaches end of life, the 1.3.5 release is the last
maintenance version of the 1.3.x branch. The 1.3.0 version was released
3 years ago.

The 1.4.x branch reaches end of life, the 1.4.3 release is the last
maintenance version of the 1.4.x branch. The 1.4.0 version was released
1 year ago.

== Acknowledgments ==

Many thanks to people for bug reports and/or bug fixes, especially
Yura, Elisabeth, and Viveris Technologies.

== Download ==

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

[4] https://launchpad.net/rohc/+milestone/1.3.5#downloads
[5] https://launchpad.net/rohc/+milestone/1.4.3#downloads
[6] https://launchpad.net/rohc/+milestone/1.5.2#downloads

== Installation instructions & API documentation ==

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

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

== Feedback ==

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

[10] mailing list: https://launchpad.net/~rohc
[11] bug tracker: https://bugs.launchpad.net/rohc/

New IP/ROHC application!

Written for rohc by Didier Barvaux on 2013-04-02

We are proud to announce a new application. It's a tunnel application similar the ROHC/UDP tunnel of the ROHC library, but designed for production!

=== Origins ===

The tunnel application was designed and developed by Viveris Technologies [2].

Viveris Technologies is a French company working in the IT field. The company provides to the ROHC project the skills of its engineering teams in the telecommunications, network and Linux fields.

Viveris Technologies proposes the knowledge and expertise gained on the ROHC library to companies and people that are interested in network header compression, but do not have the skills or the time to integrate the ROHC mechanisms in their application or infrastructure.

Kudos to Alexandre Chataignon [3] that wrote the code at Viveris, and to Viveris Technologies for publishing the code under the GPLv2+ license!

=== Features ===

The application is based on ROHC, of course. It encapsulates the ROHC packets in IP packets (to avoid the UDP overhead). Because of that it is named IP/ROHC (iprohc in code).

In addition, we implemented frame packing: several ROHC packets are put together in one single IP header to reduce the tunnel overhead even more [4].

=== Software architecture ===

The IP/ROHC application is divided into two parts: the server and the client. The server part handles sessions with several clients simultaneously.

The client and the server establish two communication channels between them: the control channel that uses TCP for reliability, and the data channel that uses UDP for efficiency.

The client establishes and closes a session on the control channel. The client transmits compressed data on the data channel. The control channel is authenticated and encrypted with TLS.

Both the client and the server uses TUN interfaces to fake network interfaces.

=== Supported platforms ===

The application was tested under Linux, and more especially Debian Squeeze, CentOS 5, Arch, and Gentoo. It should however work on every Linux distributions. If not, report a bug and/or send a patch.

The application requires libyaml, gnutls, and ROHC. A RPM spec and a Debian package are available in the source tree.

=== Code / development ===

The IP/ROHC application is hosted on the same project as the ROHC library. The website, the wiki, the bugtracker, and the mailing list will shared among the two code bases.

The code of the tunnel application is however not located within ROHC library. There is a dedicated Bazaar repository for it [1]. This way, the 2 applications will evolve at their own rate.

[1] IP/ROHC code: https://code.launchpad.net/~didier-barvaux/rohc/iprohc
[2] Viveris Technologies: http://www.viveris.fr/ (sorry, in French only)
[3] Alexandre Chataignon: https://launchpad.net/~xouillet
[4] IP encapsulation means less overhead, but it also means that NAT
    gateways won't handle it well in many cases.

Linux kernel support available

Written for rohc by Didier Barvaux on 2013-04-02

We are proud to announce that the ROHC library has now support for the Linux kernel!

=== Features ===

The Linux kernel [1] support comes with 2 kernel modules:
 1/ one module to export the ROHC library to the Linux kernel,
 2/ one module to use the ROHC library and test it in the Linux kernel.

The first module is named rohc.ko. It does nothing except exporting the API of the ROHC library in kernel land. The hard work was not on this module itself, but in the library source code to make it builds fine for the Linux kernel.

The second module is a test module. It is therefore named rohc_test.ko. The 2nd module depends on the first one for ROHC features. This module can run all the non-regression tests of the ROHC library in the Linux kernel.

=== Software architecture ===

The test module creates 2 ROHC compressor/decompressor couples. It also provides 4 entry points per couple in /proc to communicate between the kernel and the user space.

Writing one IP packet on the /proc/rohc_comp1_in file makes the kernel compress the packet with compressor #1 and write the resulting compressed packet on the /proc/rohc_comp1_out file. Writing one ROHC packet on the /proc/rohc_decomp2_in file makes the kernel decompress the packet with decompressor #2 and write the resulting decompressed packet on the /proc/rohc_decomp2_out file.

A userspace application is provided to run all the non-regression tests of the ROHC library in the Linux kernel. The userspace application reads packets from the PCAP captures, sends them to the kernel module through the /proc/xxx file, then waits for the result on the associated /proc/xxx file.

The 2 kernel modules are located in the 'linux' subdir:
  ./linux/kmod.c
  ./linux/kmod_test.c

The userspace application is located in:
  ./test/non_regression/test_non_regression_kernel.c

=== Supported platforms ===

The Linux module was tested with Fedora 18 (kernel 3.6.x), and Gentoo (kernel 3.5.x). It should however work on every Linux distributions. If not, report a bug and/or send a patch.

As one might expect, the Linux module does not work for the OSes of the BSD family and Windows ;-)

=== Code location ===

The Linux kernel support is not part of any ROHC release yet. It will be shipped with the close 1.6.0 release. In the meantime, you may get it from the Bazaar repository [2].

=== License ===

The code is published under the GPL version 2 or later (GPLv2+).

=== Credits ===

The first module was written by Mikhail Gruzdev, Thales Communications [3], and Viveris Technologies [4]. The second module was written only by Thales Communications and Viveris Technologies.

The code property on the first module is shared among several people/entities, because the work was done twice. This work was done by Viveris Technologies for Thales Communications in a private fork several months ago (along with the 2nd module for testing). The first module was written again later as a separate work by Mikhail Gruzdev. Mikhail kindly published his work on the ROHC mailing list. Thales Communications and Viveris Technologies agreed to publish their private work, so the result is a merge of everything.

Kudos to Mikhail Gruzdev for his work and patch!

Thales Communications [3] is part of Thales, a global technology leader for the Defense & Security and the Aerospace & Transport markets.

Viveris Technologies [4] is a French company working in the IT field. The company provides to the ROHC project the skills of its engineering teams in the telecommunications, network and Linux fields. Viveris Technologies proposes the knowledge and expertise gained on the ROHC library to companies and people that are interested in network header compression, but do not have the skills or the time to integrate the ROHC mechanisms in their application or infrastructure.

[1] Linux kernel: http://kernel.org/
[2] ROHC main branch:
    https://code.launchpad.net/~didier-barvaux/rohc/main
[3] Thales Communications: http://www.thalescomminc.com/
[4] Viveris Technologies: http://www.viveris.fr/ (sorry, in French only)

Bugfix versions 1.3.4, 1.4.2, and 1.5.1 are available

Written for rohc by Didier Barvaux on 2012-12-08

The maintenance versions 1.3.4, 1.4.2, and 1.5.1 of the ROHC library were just 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 [1] as Opensource under the GNU GPL2+ license [2].

[1] http://rohc-lib.org/
[2] http://www.gnu.org/licenses/old-licenses/gpl-2.0.html

== Release notes & changelogs ==

These versions are maintenance releases with bug fixes only. Some important bugs were corrected. Some were not fixed to keep compatibility with previous 1.3.x, 1.4.x, or 1.5.x releases. See the release notes and the changelogs [3] [4] [5] for the complete list.

[3] https://launchpad.net/rohc/+milestone/1.3.4#release-notes
[4] https://launchpad.net/rohc/+milestone/1.4.2#release-notes
[5] https://launchpad.net/rohc/+milestone/1.5.1#release-notes

== Compatibility with previous releases ==

The 1.3.4 release is compatible with all previous 1.3.x releases.
The 1.4.2 release is compatible with all previous 1.4.x releases.
The 1.5.1 release is compatible with all previous 1.5.x releases.

== Download ==

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

[6] https://launchpad.net/rohc/+milestone/1.3.4#downloads
[7] https://launchpad.net/rohc/+milestone/1.4.2#downloads
[8] https://launchpad.net/rohc/+milestone/1.5.1#downloads

== Installation instructions & API documentation ==

The instructions to install the library [9] and use it [10] are available on the wiki. The API documentation too [11].

[9] installation: http://rohc-lib.org/wiki/doku.php?id=library-install
[10] using: http://rohc-lib.org/wiki/doku.php?id=library-first-application
[11] API documentation: http://rohc-lib.org/

== Feedback ==

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

[12] mailing list: https://launchpad.net/~rohc
[13] bug tracker: https://bugs.launchpad.net/rohc/

Updated .

Major release 1.5.0 of the ROHC library

Written for rohc by Didier Barvaux on 2012-10-21

The major version 1.5.0 of the ROHC library is available for download!

== 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 GNU GPL2+ license. See http://rohc-lib.org/ for more details.

== Release notes & changelogs ==

The 1.5.0 version adds support for the ROHC ESP profile, and greatly improves the portability of the library [1].

Important changes include:
 - Support for ESP profile (provided by FWX).
 - Support for FreeBSD.
 - Support Microsoft Windows (through MinGW) systems.
 - Better support for ARM and PowerPC platforms.
 - Support Clang and PCC compilers.

See the release notes and the changelogs [2] for the complete list.

[1] Supported systems: http://rohc-lib.org/wiki/doku.php?id=supported-systems
[2] Release notes: https://launchpad.net/rohc/+milestone/1.5.0#release-notes

== Compatibility with other releases ==

The 1.5.0 release is NOT compatible with all previous 1.3.x or 1.4.x releases. The format of ROHC packets was changed to be closer to ROHC standards. The user API is however compatible.

The 1.5.0 release will be compatible with future 1.5.x releases. There is however no guaranty for the future 1.6.0 release (it will depend on bugs that are discovered).

== Acknowledgments ==

Many thanks to people for bug reports and/or bug fixes, and more especially: Ahmed Fathy, Arne, Audric Schiltknecht, FWX, Keith Harry, Mikhail Gruzdev, Olivier Bonhomme, qingbaibai, Viveris Technologies.

== Download ==

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

[3] https://launchpad.net/rohc/+milestone/1.5.0#downloads

== Installation instructions & API documentation ==

The instructions to install the library [4], test it [5] and use it [6] are available online. The API documentation too [7].

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

== Feedback ==

Any feedback on this release 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/

Updated .

1115 of 27 results