← Back to team overview

rohc team mailing list archive

Re: [Question #228479]: questions diverses

 

Question #228479 on rohc changed:
https://answers.launchpad.net/rohc/+question/228479

    Status: Open => Answered

Didier Barvaux proposed the following answer:
Hello,

> quelques questions (je suis nouveau sur ce projet) :

Even if I'm French, I prefer using English on the mailing list, so that
everyone can understand what we are saying.


> - est ce que ce protocole permet de compresser de maniere significative
>    un appel voip ? quels sont les gains en terme de bande passante? avez vous
>    eu des statisiques ?

The ROHC protocol (and the ROHC library) compresses only the IP, UDP and
RTP headers of network packets. So, the bandwidth gain mainly depends on
your VoIP streams.

The more the payload part (ie. the codec data) is small with respect to
the header part (ie. the metadata required to transport the codec data),
the more the gain is important.

For VoIP, the ratio header/payload is important in general, so header
compression will be useful. It is less useful for large data transfers
such as HTTP or FTP (header/payload ratio is small).

It is difficult to give you exact numbers because it depends of the
codec you choose, the bitrate you choose, the sampling you choose.

However I can give an example. If you choose a codec that put 20 bytes of data per RTP packet, you will have per packet:
 - 20 bytes of IPv4 header,
 - 8 bytes of UDP header,
 - 12 bytes of RTP header,
 - 20 bytes of payload/codec.
You have twice more headers than payload. The ROHC protocol can at best compress the 20+8+12=40 bytes of headers to 1 single byte, saving you 39 bytes. So, you transport 1+20=21 bytes instead of 20+8+12+20=60 bytes. You saved 65% of your bandwidth!


> - quel codec est recommande? fonctionne-t-il avec g.729, gsm, g.711?

The ROHC protocol (and the ROHC library) don't work on the payload, so
they work with any codec you want, be it CBR or VBR.


> - supporte-t-il uniquement SIP ou egalement IAX2?

I think that you're confusing protocols. SIP is a signalisation
protocol, it does not transport the VoIP data itself. SIP is often used
to establish 2 undirectional RTP streams that transport the VoIP data.
IAX2 is a different protocol: it gathers the features of both SIP and
RTP in one single protocol.

The ROHC protocol is able to compress SIP and IAX2 as UDP streams (ie.
it compresses only the IP and UDP headers, nothing more). The ROHC
protocol is more efficient for the compression of RTP streams (ie. it
compresses the IP, UDP and RTP headers).

SIP may be further compressed with the SIGComp protocol. It is a
protocol defined by the same working group as ROHC.


> - avez vous le projet de developper une appliance (materielle ou vm) ? ou d'integrer sur des appliance existantes?

There is an software tunnel application that already exists. It allows
you to create a compressed VPN between several clients and one server.
See http://rohc-lib.org/wiki/doku.php?id=iprohc-overview for a general
presentation. It is production-ready.

There is also the plan to put similar features in a SIP softphone.
Nothing was done yet.

Regards,
Didier

-- 
You received this question notification because you are a member of ROHC
Team, which is an answer contact for rohc.