Bug #2654

osmo-mgw silently ignores unsuppoerted packetization interval

Added by laforge 5 months ago. Updated 3 months ago.

Target version:
Start date:
Due date:
% Done:



When the call agent specifies an unsupported packetization interval, the MGW must reject it with error code 535. osmo-mgw however seems to completely ignore it and go ahead.

TC_crcx_unsupp_packet_intv has been created for it and so far fails.


#1 Updated by dexter 3 months ago

The local connection options are parsed in mgcp_protocol.c in:

static void set_local_cx_options(void *ctx, struct mgcp_lco *lco,
const char *options)

This function could get a return code which causes CRCX/MDCX to fail when invalid options are passed. The packetization interval is defined by a fixed value L: p=X or as a range L: p=X-Y. I wonder what is valid here.

By the unittest I can see 20 or 20-40 is common here, but I am not sure if this are the only range/values that is valid here. Is there some table where I can find valid ranges. For GSM uses it will be 20ms for most of the time, but maybe there are other valid uses that have different packetization intervals?

#2 Updated by dexter 3 months ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 100

We now check if the packetization interval is a multiple of 20ms. This is what is commonly used in practice. I suppose in theory someone could use an interval of 111ms, but that would be fanciful. The TTCN3 test passes now. The patch is up for review in gerrit:

#3 Updated by dexter 3 months ago

  • Status changed from In Progress to Resolved

#4 Updated by laforge 3 months ago

FYI, I found that 3GPP TS 48.103 states explicitly that the RTP packetization time in GSM is 20ms
for all codecs.

Also available in: Atom PDF