[asterisk-bugs] [Asterisk 0011231]: [patch] Many retransmits when chan_sip generates multiple outstanding requests

noreply at bugs.digium.com noreply at bugs.digium.com
Mon Dec 17 06:29:12 CST 2007


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=11231 
====================================================================== 
Reported By:                flefoll
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   11231
Category:                   Channels/chan_sip/General
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:            SVN 
SVN Branch (only for SVN checkouts, not tarball releases):  1.4  
SVN Revision (number only!): 89184 
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             11-13-2007 08:08 CST
Last Modified:              12-17-2007 06:29 CST
====================================================================== 
Summary:                    [patch] Many retransmits when chan_sip generates
multiple outstanding requests
Description: 
I opened issue 10946 in october http://bugs.digium.com/view.php?id=10946 on
the same subject, but it was closed last week, together with issue 9567 and
issue 10915 (sorry, I was away last week).

All 3 issues were closed when chan_skip rev 89097 was committed. This
revision adds support for one outgoing transaction with the new
"lastnoninvite" field.

So, I have given a try to modification brought by chan_skip rev 89097. But
it does not solve the retransmit problem for me.

Typically, try with a series of SendText(ABC) in your extensions.conf :
the SIP peer will never respond quickly enough, and all (except last)
MESSAGE messages will be retransmitted. Silly test, but easy to reproduce
!
The problem also most probably still occurs when REFER handling provokes
too many and too quick NOTIFY messages (not re-tried yet, but new
"lastnoninvite" can handle one NOTIFY only).

Consequently, I propose another patch : this one won't remove code :-) but
it will add a few more lines instead, in order to cancel retransmits when
chan_sip receives a "late" response.

I know, it does not respond to file's dream of "a chan_sip with real
transaction support" :-)

====================================================================== 

---------------------------------------------------------------------- 
 flefoll - 12-17-07 06:29  
---------------------------------------------------------------------- 
Olle, I agree with the need to solve the issue. So, first : what needs to
be done when receiving a response, including a late-but-correctly-ordered
response after a burst of requests sent within a SIP dialog ?

I did not (could not) find much information about this topic.

- At the very least, I think that retransmit mechanism must be canceled
(this is the only thing that is done in the the patch I proposed here).
- As far as the response is in-sequence, it seems reasonable to handle it
(this is what the patch I initially proposed for issue 10946 was doing) ...
unless the dialog has entered a new phase since the request (closing the
dialog, ...) ?
Not to mention implementation difficulties, this problem is not
Asterisk-specific, so we could expect to find some kind of
specification/recommendation on this subject ? Any reference (RFC,
discussion thread, ...) ? 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
12-17-07 06:29  flefoll        Note Added: 0075541                          
======================================================================




More information about the asterisk-bugs mailing list