[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[rohc] ROHC context reuse & mode



Hi all!

I think I have found an ambiguity in RFC3095 that I would like to have clarified. I will explain the situation with examples.

Example 1:
A ROHC compressor is running in O-mode on context #1 (say for example IPv4/UDP/RTP, profile 1), when it decides to reuse this this context for a completely different flow (say IPv6/UDP/RTP, profile 1).
The compressor will of course have to send an IR packet to the decompressor, but what mode must it set in the IR packet? Do I inherit the mode of the old flow or do I go back to U-mode?

RFC3095 Section 4.4.1. "Unidirectional mode -- U-mode" says:
Compression with ROHC MUST start in the Unidirectional mode.

Does this mean that the compressor starts in U-mode "when the channel is set-up" or "whenever the compressor re-initializes a context"?
If I interpret it as the latter, then the decompressor will see an IR with U-mode while being in O-mode, i.e. a mode change occurs without the 3-way handshake.

Example 2:
The compressor has received the CONTEXT_REINITIALIZATION signal (section 6.3.1), but the channel is kept up and running. Then it seems most likely that compression must start in U-mode since you are supposed to re-establish everything (true?). The decompressor is in O-mode in this example as well. So it seems we cannot completely avoid a situation where the compressor could be forced to send U-mode IRs to an O-mode decompressor.

"Bonus questions":
* How does this work in profiles 2 & 3 where there is no mode parameter to send in the IR packets? Do I inherit "current mode" or do I inherit "initial mode"?
* If I reuse a profile 1 context in R-mode and make it a profile 0 or TCP profile context (these do not have R-mode), what does my compressor send? I cannot inherit "current mode" (R-mode), since it does not exist, and it seems like inheriting "initial mode" for the selected profile would be the only choice here.


So, this might seem like a pure implementation choice at first, but I think this needs to be clarified, since the questions posed above seem pretty unclear to me.

Regards,
Kristofer Sandlund, Effnet AB


_______________________________________________
Rohc mailing list
Rohc@ietf.org
https://www1.ietf.org/mailman/listinfo/rohc