Regarding SO state of ROHC

Asked by Bins on 2011-09-13

Hi,
1. According to RFC 3095 it says that,the compressor enters the SO state when the header to be compressed is completely
   predictable given the SN (RTP Sequence Number) and the compressor is sufficiently confident that the decompressor has
   acquired all parameters of the functions from SN to other fields.

  I just wanted to clarify that , after IR and FO states (once the context is established) , when the compressor enters the SO
  state, then can the header be reconstructed just from the SN (RTP) ?

Regards,
Bins

Question information

Language:
English Edit question
Status:
Answered
For:
rohc Edit question
Assignee:
No assignee Edit question
Last query:
2011-09-15
Last reply:
2012-03-11

Hello,

In SO state, any change to at least one static or dynamic field causes a downward transition to the FO state. IR and IR-DYN packets that transmit changes to static/dynamic fields are never used in SO state.

In SO state, there are 3 types of packets that may be transmitted:
 - UO-0 : only SN changes
 - UO-1 and UOR-2: minor changes not conforming to the pattern defined for some other fields are accepted.

I hope I answered your question :)

Regards,
Didier

Bins (bindhia-komath) said : #2

Thanks for the reply Didier,

As a part of the school project I am doing IP header compression and I was looking through the code of the test application tunnel.c .
I am planning to intercept the IP packets through netfilter and then pass the buffer to ROHC , compress the IP header and then issue an ACCEPT verdict and send the packet back to the kernel. On the receiving end take the decompressed packet from the kernel , send it to ROHC to decompress the packet , send it back to kernel and issue a ACCEPT verdict.

I was able to run the tunnel.c application successfully between two machines connected wirelessly.
I am not very clear with one concept ie how is the routing handled? The router cannot keep any context right ?
Since the source and destination address fall under static fields and they are sent only in IR packets in the initial state. But how does the router figure out where to send the packets while the FO and SO packets are sent ? In that state we are not sending any source and dest info.

Any help will be really appreciated.
Thanks in advance
Bins

nninan (nikhil-erg) said : #3

First of all rohc is point to point, secondly the packets (ROHC compressed) are encapsulated into unicast packets (tunnel) and then sent from one machine to another, the router will not see the compressed packets.
At least this is my take on it.
Nikhil

On 15 Sep 2011, at 20:35, Bins wrote:

> Question #171022 on rohc changed:
> https://answers.launchpad.net/rohc/+question/171022
>
> Status: Answered => Open
>
> Bins is still having a problem:
> Thanks for the reply Didier,
>
> As a part of the school project I am doing IP header compression and I was looking through the code of the test application tunnel.c .
> I am planning to intercept the IP packets through netfilter and then pass the buffer to ROHC , compress the IP header and then issue an ACCEPT verdict and send the packet back to the kernel. On the receiving end take the decompressed packet from the kernel , send it to ROHC to decompress the packet , send it back to kernel and issue a ACCEPT verdict.
>
> I was able to run the tunnel.c application successfully between two machines connected wirelessly.
> I am not very clear with one concept ie how is the routing handled? The router cannot keep any context right ?
> Since the source and destination address fall under static fields and they are sent only in IR packets in the initial state. But how does the router figure out where to send the packets while the FO and SO packets are sent ? In that state we are not sending any source and dest info.
>
> Any help will be really appreciated.
> Thanks in advance
> Bins
>
> --
> You received this question notification because you are a member of ROHC
> Team, which is an answer contact for rohc.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~rohc
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~rohc
> More help : https://help.launchpad.net/ListHelp
>

Nikhil Ninan
Research Student
Electronics Research Group
School of Engineering
Fraser Noble Building
Aberdeen
AB24 3UE
Email: <email address hidden>
Tel: +44 1224 272813

Bins (bindhia-komath) said : #4

Thanks a lot Nikhil.
Actually we are asked to implement IP header compression on a cloud environment.
Could you please let me know what you think about it. Any input will be appreciated.

Can I encapsulate ROHC packet into unicast packet and sent between 2 machines which are on cloud ?

Thanks ,
Bins.

Launchpad Janitor (janitor) said : #5

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

> Can I encapsulate ROHC packet into unicast packet and sent between 2 machines which are on cloud ?

Yes, you can. The rohctunnel tool (provided in the apps/tunnel/ directory of the library sources) encapsulates ROHC packets in unicast IPv4/UDP datagrams between 2 different hosts on any network.

Regards,
Didier

Can you help with this problem?

Provide an answer of your own, or ask Bins for more information if necessary.

To post a message you must log in.