Summary:ASTERISK-01689: ANSWER not recognized with trunking (possibly seqno issue)
Reporter:fossil (fossil)Labels:
Date Opened:2004-05-24 17:35:51Date Closed:2008-01-15 14:56:12.000-0600
Versions:Frequency of
Environment:Attachments:( 0) chan_iax2.patch.txt
( 1) iax-trunk-bug.txt
Description:With the following call flow:
(7960) --[SIP]--> (*1) --[IAX2-trunk]--> (*2) --[IAX2-trunk|IAX2]--> (*3) --[PRI]--> (PSTN)
the calling SIP device never stops ringing after the callee picks up. It appears that *1 never recognizes the ANSWER control packet. Trunking or not between *2 and *3 makes no difference.


The debug logs are attached. I noticed that with trunking enabled, *1 receives LAGRQ from *2 but never sends LAGRP in response. So could the subsequent ANSWER packet be queued/ignored due to screwed up sequence numbers?
Comments:By: Mark Spencer (markster) 2004-05-24 17:46:59

Just find me on IRC (irc.freenode.net, kram).  trunk mode does not affect handling of non audio packets in any way whatsoever.

By: Mark Spencer (markster) 2004-05-24 22:38:27

This only happens when the jitter buffer is enabled.

By: fossil (fossil) 2004-05-25 04:46:34

The sender (*2 in this case) is at fault here. The sending side generates bad meta trunk frame timestamps and that messes up the jitter buffer. A patch will follow shortly.

By: fossil (fossil) 2004-05-25 04:52:52

See the attached patch. Not sure if this is the absolutely correct way to do it, but it does resolve the issue.

By: Mark Spencer (markster) 2004-05-25 09:43:46

The conversion to unsigned is likely the main part of the fix.  The rest should not have an effect but is technically correct so I'll put it in anyway, thanks!

By: Digium Subversion (svnbot) 2008-01-15 14:56:12.000-0600

Repository: asterisk
Revision: 3068

U   trunk/channels/chan_iax2.c

r3068 | markster | 2008-01-15 14:56:12 -0600 (Tue, 15 Jan 2008) | 2 lines

Make sure transmitted timestamps are solid on trunks (bug ASTERISK-1689)