[asterisk-users] IAX jitterbufer oddity

Steve Davies davies147 at gmail.com
Mon Oct 26 08:07:32 CDT 2009


Hi,

First a confession - The box in question is a 1.2.35 box, so this may
be solved in a newer version as I know the JB code is all hugely
changed, but... It may be worth checking into.

Scenario:

- IAX outbound call from Asterisk, which rings okay.
- Remote end sends ANSWER, which we immediately ACK.
- The ANSWER control packet gets put into the JB (that's how I read the code)
- The remote end is clustered, and we receive a TXREQ within 1ms of our ACK
- chan_iax2 starts to process the TXREQ correctly.

What I think happens at this point is that the ANSWER control frame
now leaves the JB in order, but is not processed because the channel
state has moved into the new transferring state, so ANSWER has no
meaning, app_dial never forwards the ANSWER control event to the
calling channel, and the bridge is never fully completed, so it all
eventually times out.

Disabling the JB in IAX does resolve the issue, but is not ideal.

I have tried to follow the code in the various versions 1.2, 1.4 and
1.6, but it is just too complicated. Does anyone know if this was
addressed since 1.2, or can it still happen in 1.4 or 1.6?

Thanks,
Steve



More information about the asterisk-users mailing list