[Home]

Summary:ASTERISK-25270: chan_sip: rtptimeout doesn't work at all when using JitterBuffers of any kind
Reporter:Florian Loyau (Florian Loyau ASK)Labels:
Date Opened:2015-07-21 07:26:01Date Closed:
Priority:MajorRegression?No
Status:Open/NewComponents:Core/Jitterbuffer Core/RTP
Versions:13.4.0 13.5.0 Frequency of
Occurrence
Constant
Related
Issues:
is related toASTERISK-25282 rtptimeout does not kick in because of zero sized frames (lost packets)
Environment:Debian 7 VMAttachments:
Description:Setting rtptimeout in SIP Conf is supposed to terminate the call when no RTP Information was received after a certain time.

However this doesn't seem to be the case when using any kind of JitterBuffers (either through jbenable and jbimpl in sip.conf as i tested, or according to an old forum post, when using the JITTERBUFFER() DialPlan application).

Test Procedure:
- Enable JitterBuffers in sip.conf
- Setup an extension throwing into a StasisApp
- Have the StasisApp make the channel join a bridge
- Abruptly cut the SIP/RTP client through a SIGKILL or network connectivity loss

Expected Result:
Asterisk detects the lack of RTP traffic and terminates the call after the set timeout, notifying in Console, and the ARI Application via StasisEnd/ChannelLeftBridge/ChannelDestroyed

Actual Result:
Nothing happens, call goes on despite receiving no data

Exact same setup with jbenable=no works as expected.
Apparently this bug has been around for a couple years, since I noticed a few issues on the bugtrackers and around forums from 11.0.x that could be linked to this one..
Comments:By: Asterisk Team (asteriskteam) 2015-07-21 07:26:03.187-0500

Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution.

A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report.

Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process].

By: Rusty Newton (rnewton) 2015-08-26 17:22:44.024-0500

{quote}
Test Procedure:

   Enable JitterBuffers in sip.conf
   Setup an extension throwing into a StasisApp
   Have the StasisApp make the channel join a bridge
   Abruptly cut the SIP/RTP client through a SIGKILL or network connectivity loss
{quote}

To reproduce this you don't need to involve stasis.

Enable a jitter buffer via configuration in sip.conf or via the JITTERBUFFER function (with chan_sip or chan_pjsip).

Make a call from any peer or endpoint to another with a jitterbuffer enabled and rtptimeout will cease to work.

By: Kevin Harwell (kharwell) 2016-11-04 11:55:22.481-0500

A previous attempt (https://gerrit.asterisk.org/#/c/3032/) to partially fix this problem (on the chan_sip side) had to be reverted due to causing a regression (ASTERISK-26523).

By: Friendly Automation (friendly-automation) 2016-11-04 13:04:46.121-0500

Change 4303 merged by zuul:
Revert "chan_sip: Fix lastrtprx always updated"

[https://gerrit.asterisk.org/4303|https://gerrit.asterisk.org/4303]

By: Friendly Automation (friendly-automation) 2016-11-04 13:32:05.214-0500

Change 4302 merged by zuul:
Revert "chan_sip: Fix lastrtprx always updated"

[https://gerrit.asterisk.org/4302|https://gerrit.asterisk.org/4302]

By: Friendly Automation (friendly-automation) 2016-11-04 13:32:26.286-0500

Change 4301 merged by zuul:
Revert "chan_sip: Fix lastrtprx always updated"

[https://gerrit.asterisk.org/4301|https://gerrit.asterisk.org/4301]

By: Friendly Automation (friendly-automation) 2016-11-08 04:59:57.266-0600

Change 4338 merged by Joshua Colp:
Revert "chan_sip: Fix lastrtprx always updated"

[https://gerrit.asterisk.org/4338|https://gerrit.asterisk.org/4338]

By: Friendly Automation (friendly-automation) 2016-11-08 05:00:06.955-0600

Change 4339 merged by Joshua Colp:
Revert "chan_sip: Fix lastrtprx always updated"

[https://gerrit.asterisk.org/4339|https://gerrit.asterisk.org/4339]