Reg ROHC implementation in Linux , Android

Asked by indra

Hi All,

I am trying to reduce the bandwidth for ethernet packets. I am very new for this and identified that ROHC is techique for the same purpose. I am not geting where to start ? I have some basic questions reg this.

1) Generally ubuntu kernel adds the udp, IP, ethernet headers to the packet ? like we will use sendto(), receivefrom() APIs the the reamining things like udp , IP Ethenet headers are added and parsed by the linux kernel ? Hence where we will get the control to compress these headers ? Is there any way we can specify to kernel don't add any these kind of headers ?

2) If we suppose used this and compressed , how to send these IP compressed packets to the remote machine (which is having static IP remotely)?

Can you please suggest any good reference document for these details to getting started with this ?

Thanks in advance.

regards,
Indra..

Question information

Language:
English Edit question
Status:
Expired
For:
rohc Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Didier Barvaux (didier-barvaux) said :
#1

Hello,

> 1) Generally ubuntu kernel adds the udp, IP, ethernet headers to the
> packet ? like we will use sendto(), receivefrom() APIs the the reamining
> things like udp , IP Ethenet headers are added and parsed by the linux
> kernel ? Hence where we will get the control to compress these
> headers ? Is there any way we can specify to kernel don't add any these
> kind of headers ?

Yes, the Linux kernel (Ubuntu uses the Linux kernel) is in charge of adding (resp. removing) the protocol headers when sending (resp. receiving) data over Ethernet/IP/UDP or Ethernet/IP/TCP.

You may bypass this by using RAW sockets to send or receive packets without adding/removing headers: see 'man 7 raw' or http://man.cx/raw%287%29

> 2) If we suppose used this and compressed , how to send these IP compressed
> packets to the remote machine (which is having static IP remotely)?

This is entirely up to your application. The ROHC protocol does not define how ROHC packets are transmitted to the remove node. For example, the IP/ROHC tunnel application transmits the ROHC packets encapsulated in IPv4 packets, see http://rohc-lib.org/wiki/doku.php?id=iprohc-overview

Regards,
Didier

Revision history for this message
indra (indra-gopireddy) said :
#2

Hi Didier,

Thank you very much for your response and explanation.

If we are going to send these compressed ROHC packets through tunnel(vpn) application. Do these tunnel applications doesn't add ip/udp headers for these packets ?
Generally How tunnel applications send the packets to the remote static ip machines ? Any good document for this ?

Thanks in Advance.

Regards,
Indra.

> To: <email address hidden>
> From: <email address hidden>
> Subject: Re: [Question #253104]: Reg ROHC implementation in Linux , Android
> Date: Wed, 27 Aug 2014 10:21:59 +0000
>
> Your question #253104 on rohc changed:
> https://answers.launchpad.net/rohc/+question/253104
>
> Status: Open => Answered
>
> Didier Barvaux proposed the following answer:
> Hello,
>
> > 1) Generally ubuntu kernel adds the udp, IP, ethernet headers to the
> > packet ? like we will use sendto(), receivefrom() APIs the the reamining
> > things like udp , IP Ethenet headers are added and parsed by the linux
> > kernel ? Hence where we will get the control to compress these
> > headers ? Is there any way we can specify to kernel don't add any these
> > kind of headers ?
>
> Yes, the Linux kernel (Ubuntu uses the Linux kernel) is in charge of
> adding (resp. removing) the protocol headers when sending (resp.
> receiving) data over Ethernet/IP/UDP or Ethernet/IP/TCP.
>
> You may bypass this by using RAW sockets to send or receive packets
> without adding/removing headers: see 'man 7 raw' or
> http://man.cx/raw%287%29
>
>
> > 2) If we suppose used this and compressed , how to send these IP compressed
> > packets to the remote machine (which is having static IP remotely)?
>
> This is entirely up to your application. The ROHC protocol does not
> define how ROHC packets are transmitted to the remove node. For example,
> the IP/ROHC tunnel application transmits the ROHC packets encapsulated
> in IPv4 packets, see http://rohc-lib.org/wiki/doku.php?id=iprohc-
> overview
>
>
> Regards,
> Didier
>
> --
> If this answers your question, please go to the following page to let us
> know that it is solved:
> https://answers.launchpad.net/rohc/+question/253104/+confirm?answer_id=0
>
> If you still need help, you can reply to this email or go to the
> following page to enter your feedback:
> https://answers.launchpad.net/rohc/+question/253104
>
> You received this question notification because you asked the question.

Revision history for this message
Didier Barvaux (didier-barvaux) said :
#3

It entirely depends on the tunnel/VPN. What program do you use?

Revision history for this message
Launchpad Janitor (janitor) said :
#4

This question was expired because it remained in the 'Needs information' state without activity for the last 15 days.