Git Product home page Git Product logo

turkelb / rohc Goto Github PK

View Code? Open in Web Editor NEW

This project forked from didier-barvaux/rohc

0.0 2.0 0.0 499.69 MB

A library for the RObust Header Compression (ROHC) protocol. It 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.

Home Page: https://rohc-lib.org/

License: GNU Lesser General Public License v2.1

Makefile 5.45% Groff 0.20% C 87.07% Shell 3.64% M4 1.06% Python 1.63% C++ 0.89% XSLT 0.06%

rohc's Introduction

Introduction
------------

This piece of software is an implementation of RObust Header Compression for
Linux (or other Unix-compatible OS). The library can be used to add ROHC
compression/decompression capabilities to an application.

Official website:      http://rohc-lib.org/
Mailing list:          [email protected]
Mailing list archives: http://lists.launchpad.net/rohc/
Bugtracker:            http://bugs.launchpad.net/rohc


License
-------

The project is licensed under the GNU LGPL version 2.1 or later, see the COPYING
and AUTHORS files for more details.

Some network captures or small scripts used for testing are under the GNU GPL
version 2 or later.


Libraries
---------

The sources are in the src subdirectory. The sources are separated into three
libraries:
 - a library that contains the routines used for both the compression and the
   decompression processes
 - a library that handles the compression process
 - a library that handles the decompression process

See the INSTALL file to learn to build the libraries.


Automated tests
---------------

The test subdirectory contains several test applications. See the INSTALL file
to learn how to use these tools.


Statistics
----------

The statistics subdirectory contains an application that generates some
compression statistics. The generate_statistics.sh script outputs a HTML report
with the statistics results. The Gnuplot tool is required.

See the INSTALL file to learn how to use the statistics application and the
generate_statistics.sh script.


Python binding
--------------

As of version 2.0.0, a Python binding was added. It is not as CPU performant as
the C library, so it is only recommended for testing or rapid prototyping. See
the INSTALL file to learn building and installing the Python binding.

The Python binding supports both Python 2.7 and Python 3.x.


References
----------

RFC 3095      RObust Header Compression (ROHC): Framework and four profiles:
              RTP, UDP, ESP, and uncompressed.
              http://www.ietf.org/rfc/rfc3095.txt

RFC 3096      Requirements for robust IP/UDP/RTP header compression.
              http://www.ietf.org/rfc/rfc3096.txt

RFC 3828      The Lightweight User Datagram Protocol (UDP-Lite).
              http://www.ietf.org/rfc/rfc3828.txt

RFC 3843      RObust Header Compression (ROHC): A Compression Profile for IP.
              http://www.ietf.org/rfc/rfc3843.txt

RFC 4019      RObust Header Compression (ROHC): Profiles for User Datagram
              Protocol (UDP) Lite.
              http://www.ietf.org/rfc/rfc4019.txt

ROHC library  The Open Source ROHC library described by the README file you are
              currently reading.
              http://rohc-lib.org/

ROHC Linux    A GPL-licensed implementation of ROHC over PPP for the 2.4 Linux
              kernel. The ROHC library is mainly based on this software.
              http://rohc.sourceforge.net/

UDP-Lite      An UDP-Lite implementation for the Linux kernel.
              http://www.erg.abdn.ac.uk/users/gerrit/udp-lite/

rohc's People

Contributors

didier-barvaux avatar j-bernard avatar campusgeniuspub avatar audricschiltknecht avatar hitlbs avatar jim-nasa avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.