[asterisk-bugs] [Asterisk 0010479]: Registration/Un-Registration Problem with chan_skinny

noreply at bugs.digium.com noreply at bugs.digium.com
Fri Nov 16 20:00:47 CST 2007


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=10479 
====================================================================== 
Reported By:                sbisker
Assigned To:                qwell
====================================================================== 
Project:                    Asterisk
Issue ID:                   10479
Category:                   Channels/chan_skinny
Reproducibility:            random
Severity:                   minor
Priority:                   normal
Status:                     assigned
Asterisk Version:            1.4.10  
SVN Branch (only for SVN checkouts, not tarball releases): N/A  
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             08-17-2007 06:54 CDT
Last Modified:              11-16-2007 20:00 CST
====================================================================== 
Summary:                    Registration/Un-Registration Problem with
chan_skinny
Description: 
Having a problem with channels becoming partially unregistered.  This is
happening with 7920 and 7921 phones.  At some point during the day,
asterisk thinks that the  device becomes unregistered.  If you do a "skinny
show devices"  the device appears that it is registered, and the phone
screen indicates that it is registered.  However when making a call, the
following is in the log.


[Aug 16 09:46:14] VERBOSE[13870] logger.c:     -- Starting simple switch
on '5264 at 5264'
[Aug 16 09:46:15] DEBUG[12158] chan_skinny.c: Current sub
[Skinny/5264 at 5264-148] already has owner
[Aug 16 09:46:15] WARNING[13870] chan_skinny.c: Asked to transmit to a
non-existant session!
[Aug 16 09:46:15] NOTICE[13870] chan_skinny.c: Asked to indicate 'Stop
tone' condition on channel Skinny/5264 at 5264-148, but sessio
n does not exist.
[Aug 16 09:46:15] WARNING[13870] chan_skinny.c: Asked to transmit to a
non-existant session!
[Aug 16 09:46:15] NOTICE[13870] chan_skinny.c: Asked to indicate 'Stop
tone' condition on channel Skinny/5264 at 5264-148, but sessio
n does not exist.
[Aug 16 09:46:15] WARNING[13870] chan_skinny.c: Asked to transmit to a
non-existant session!
[Aug 16 09:46:15] NOTICE[13870] chan_skinny.c: Asked to indicate 'Stop
tone' condition on channel Skinny/5264 at 5264-148, but sessio
n does not exist.
[Aug 16 09:46:16] WARNING[13870] chan_skinny.c: Asked to transmit to a
non-existant session!
[Aug 16 09:46:16] VERBOSE[13870] logger.c:     -- Executing
[7848 at longdistance:1] Dial("Skinny/5264 at 5264-148",
"IAX2/isdpbx:password at isdpbx/7848||r") in new stack



If I do a "core show channels" no skinny sessions are shown, and no
channels are active for that device.  On a side note  can't do a "skinny
set debug" because asterisk crashes because the session doesn't exist, and
the debug code references session and not device.  I'll submit another bug
for this one too, if you want.
====================================================================== 

---------------------------------------------------------------------- 
 wedhorn - 11-16-07 20:00  
---------------------------------------------------------------------- 
I've had a bit of a play and can't force this issue. With 30VIPs and
communicator, if I break the network connection, once a keepalive is
missed, when I reconnect the devices reset of their own accord and issue a
CM-aborted-TCP information message to asterisk.

On this basis, there doesn't seem to be any reason to issue a reset.
However, other devices may behave differently.

I think this problem may be more insiduous then just a network issue. From
memory, I vaguely recall a similar issue a while ago and the asterisk box
was actually receiving the keepalive (tcpdump) but it was not being passed
on to chan_skinny (not sure if asterisk was receiving it). The patch
suggested will only mask the issue and set the session state to down when
it should actually still be connected (for a short time anyway).

sbisker, could you try this. Set skinny debug and physically disconnect
the phone. When you receive a message "NOTICE[31739]: chan_skinny.c:5284
skinny_session: Skinny Session returned: Success", reconnect the phone. Do
you then get a message like "Received Alarm Message: Name=SEPxx
Load=3.1(0.3)     Parms=Status/IPaddr Last=CM-aborted-TCP"?

If you do, the TCP connection is being maintained when asterisk is
unregistering your phone and the keepalive is probably being lost somewhere
between the kernel and chan_skinny. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
11-16-07 20:00  wedhorn        Note Added: 0073836                          
======================================================================




More information about the asterisk-bugs mailing list