[asterisk-bugs] [JIRA] (ASTERISK-27251) chan_sip doesn't honour rtptimeout setting

Ian Gilmour (JIRA) noreply at issues.asterisk.org
Mon Sep 11 06:57:09 CDT 2017


     [ https://issues.asterisk.org/jira/browse/ASTERISK-27251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ian Gilmour updated ASTERISK-27251:
-----------------------------------

    Attachment: cli.tgz

[^cli.tgz] contains a cli.txt file. 

This shows the CLI output of a chan_sip Jitsi client joining a conf call with the following debug enabled:

{noformat}
sip set debug on
core set verbose 4
core set debug 4
{noformat}

As it's the only user in the conf call, MOH is played to the user.

Around cli.txt:1206 the sip client (Jitsi) is removed from the network. Asterisk CLI "sip show channelstats" shows no media pkts being received from the client beyond this point. Yet Asterisk continues to send MOH media to it for the next 5mins i.e. well beyond the rtptimeout period (60 secs), with no SIP or RTP pkts being received.

"sip show channelstats" output:

{noformat}
grep -nH -e "10.10.0.19       539ab9d4d04" cli.txt
cli.txt:1154:10.10.0.19       539ab9d4d04  00:01:11 0000003350  0000000000 ( 0.00%) 0.0000 0000002569  0000000000 ( 0.00%) 0.0060
cli.txt:1158:10.10.0.19       539ab9d4d04  00:01:13 0000003457  0000000000 ( 0.00%) 0.0000 0000002677  0000000000 ( 0.00%) 0.0061
cli.txt:1168:10.10.0.19       539ab9d4d04  00:01:15 0000003539  0000000000 ( 0.00%) 0.0000 0000002759  0000000000 ( 0.00%) 0.0057
cli.txt:1206:10.10.0.19       539ab9d4d04  00:01:32 0000004052  0000000000 ( 0.00%) 0.0000 0000003625  0000000000 ( 0.00%) 0.0063
cli.txt:1214:10.10.0.19       539ab9d4d04  00:01:35 0000004052  0000000000 ( 0.00%) 0.0000 0000003733  0000000000 ( 0.00%) 0.0063
cli.txt:1218:10.10.0.19       539ab9d4d04  00:01:36 0000004052  0000000000 ( 0.00%) 0.0000 0000003802  0000000000 ( 0.00%) 0.0063
cli.txt:1233:10.10.0.19       539ab9d4d04  00:01:38 0000004052  0000000000 ( 0.00%) 0.0000 0000003910  0000000000 ( 0.00%) 0.0063
cli.txt:1240:10.10.0.19       539ab9d4d04  00:01:53 0000004052  0000000000 ( 0.00%) 0.0000 0000004626  0000000000 ( 0.00%) 0.0063
cli.txt:1244:10.10.0.19       539ab9d4d04  00:01:54 0000004052  0000000000 ( 0.00%) 0.0000 0000004720  0000000000 ( 0.00%) 0.0063
cli.txt:1256:10.10.0.19       539ab9d4d04  00:02:32 0000004052  0000000000 ( 0.00%) 0.0000 0000006588  0000000000 ( 0.00%) 0.0063
cli.txt:1260:10.10.0.19       539ab9d4d04  00:02:34 0000004052  0000000000 ( 0.00%) 0.0000 0000006714  0000000000 ( 0.00%) 0.0063
cli.txt:1272:10.10.0.19       539ab9d4d04  00:03:29 0000004052  0000000000 ( 0.00%) 0.0000 0000009439  0000000000 ( 0.00%) 0.0063
cli.txt:1353:10.10.0.19       539ab9d4d04  00:05:31 0000004052  0000000000 ( 0.00%) 0.0000 0000015508  0000000000 ( 0.00%) 0.0063
cli.txt:1357:10.10.0.19       539ab9d4d04  00:05:34 0000004052  0000000000 ( 0.00%) 0.0000 0000015675  0000000000 ( 0.00%) 0.0063
cli.txt:1361:10.10.0.19       539ab9d4d04  00:05:36 0000004052  0000000000 ( 0.00%) 0.0000 0000015759  0000000000 ( 0.00%) 0.0063
cli.txt:1365:10.10.0.19       539ab9d4d04  00:05:37 0000004052  0000000000 ( 0.00%) 0.0000 0000015822  0000000000 ( 0.00%) 0.0063
cli.txt:1369:10.10.0.19       539ab9d4d04  00:05:39 0000004052  0000000000 ( 0.00%) 0.0000 0000015892  0000000000 ( 0.00%) 0.0063
{noformat}

The cli.txt output also confirms that:

{noformat}
  RTP Keepalive:         20 
  RTP Timeout:            60 
  RTP Hold Timeout:    300 
{noformat}

> chan_sip doesn't honour rtptimeout setting
> ------------------------------------------
>
>                 Key: ASTERISK-27251
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-27251
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Channels/chan_sip/General
>    Affects Versions: 13.17.1
>         Environment: Ubuntu 16.04 (64-bit)
>            Reporter: Ian Gilmour
>            Assignee: Ian Gilmour
>         Attachments: cli.tgz
>
>
> I have Asterisk running in the cloud with sip.conf configured with:
> {noformat}
> rtptimeout=60
> rtpholdtimeout=300
> rtpkeepalive=20
> {noformat}
> I have a confbridge managed conference room, configured to play MOH if there is only 1 participant.
> I have a SIP client (Jitsi) configured to use TLS+SRTP. It registers with Asterisk on a chan_sip managed IP address + port.
> The SIP client is behind a NAT.
> If the SIP client enters the conference room MOH plays as expected. If I then disconnect the SIP client from the network (so it doesn't deregister, or issue a SIP BYE) I see Asterisk sending media (MOH) to the SIP client's orginal IP address and port indefinitely (>24hours+) and the CLI shows the user as present in the conf call. Media output only terminates if I kick the user manually out of the conf call via the CLI.
> Once the SIP client is disconnected from the network wireshark shows ICMP Destination unreachable messages being returned in response to each Asterisk (MOH) outgoing media packet.
> n.b. I see similar behaviour if I run both Asterisk and client locally. i.e. no NAT.
> The bug seems to be related to ASTERISK-26523.
> Reverting the ASTERISK-26523 change so that it only updates the lastrtprx if the frame isn't AST_FRAME_NULL gives me a chan_sip that honours the sip.conf rtptimeout.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list