Question #266708 on rohc changed:
https://answers.launchpad.net/rohc/+question/266708
Status: Answered => Open
Mohammad Abyan Abdullah is still having a problem:
Ok. Like one change ..
At Outer IP-ID patch you told me that it's not fixable at the first error
packet. It has to fixed 3 packet to get a valid packet. So I did modified the
code a bit to get the packet valid at first CRC error. What I saw at the log I
provided to you is whenever the packet comes late the IP-ID value mismatch at
that time. So at
d_generic.c
At
static bool decode_values_from_bits(struct rohc_decomp_ctxt *const context,
const struct rohc_extr_bits bits,
struct rohc_decoded_values *const decoded)
{
struct d_generic_context *g_context;
bool decode_ok;
bool packet_late = false;
.....
...
else if(decoded->sn < expected_next_sn)
{
/* smaller SN: order was changed on the network channel
*/
rohc_info(context->decompressor, ROHC_TRACE_DECOMP,
context->profile->id,
"packet seems to come late (SN jumped back
from 0x%x "
"to 0x%x)", sn_context, decoded->sn);
context->nr_lost_packets = 0;
context->nr_misordered_packets = expected_next_sn -
decoded->sn;
context->is_duplicated = false;
packet_late = true;
}
......
...
if(packet_late)
{
decode_ok = decode_ip_values_from_bits(context,
g_context->outer_ip_changes,
g_context->outer_ip_id_offset_ctxt,
decoded->sn,
ROHC_LSB_REF_MINUS_1, bits.outer_ip,
"outer", &decoded->outer_ip);
rohc_decomp_debug(context, "Using Late Packet Reference");
}
else
{
/* decode fields related to the outer IP header */
decode_ok = decode_ip_values_from_bits(context,
g_context->outer_ip_changes,
g_context->outer_ip_id_offset_ctxt,
decoded->sn, bits.sn_ref_type,
bits.outer_ip,
"outer", &decoded->outer_ip);
}
So whenever I see a packet comes late from the sn difference I can use
ROHC_LSB_REF_MINUS_1 to determine the outer-ip-id for that late packet. So I
don't get anymore CRC error packets for that scenario. I don't if that feasible
or not. :)
Regards
Abyan
--
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 protected]
Unsubscribe : https://launchpad.net/~rohc
More help : https://help.launchpad.net/ListHelp