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

    Status: Open => Answered

Didier Barvaux proposed the following answer:
Hello,

The ROHC compression states still have some impact: the compression state 
changes with ACK/NACK/STATIC-NACK feedbacks or with periodic refreshes. For 
example, whenever a context refresh occurs or a NACK is received, the 
compressor transits from the SO state to the FO state.
* In FO state, the c_rtp_decide_FO_packet() function may choose a packet type 
among IR-DYN, UOR-2, UOR-2-ID and UOR-2-TS. The packet types UO-1, UO-1-ID, 
UO-1-TS and UO-0 are forbidden because they cannot transmit enough information 
to refresh the context.
* In SO state, the c_rtp_decide_SO_packet() function may choose a packet type 
among IR-DYN, UOR-2, UOR-2-ID, UOR-2-TS, UO-1, UO-1-ID, UO-1-TS and UO-0. The 
decision is taken depending on the information that strictly need to be 
transmitted.

The TTL, TOS, DF, NBO and RND information cannot be transmitted by the
UO-1, UO-1-ID, UO-1-TS and UO-0 packet types, so the function
c_rtp_decide_SO_packet() shall check them, but not the funcion
c_rtp_decide_FO_packet().

The SID information can be transmitted only by packet types IR and IR-
DYN, so both the functions c_rtp_decide_FO_packet() and
c_rtp_decide_SO_packet() shall check for it. The behavior is not exactly
the same as in old code version. In the old code, a SID change caused a
transition to FO state, and the FO state handled it by choosing a IR-DYN
packet type. In the new code, a SID change does not cause a transition
to FO state, but both FO and SO states handle it by choosing a IR-DYN
packet type.

Regards,
Didier

-- 
You received this question notification because your team ROHC Team is
an answer contact for rohc.

_______________________________________________
Mailing list: https://launchpad.net/~rohc
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~rohc
More help   : https://help.launchpad.net/ListHelp

Reply via email to