[OpenSER-Devel] [Serdev] Possible bug in the tm module in the presence of packet loss/branches

Dan Pascu dan at ag-projects.com
Wed Mar 12 07:46:53 CET 2008


What it is not clear to me in this case, is what does the proxy do if 
there is no 1xx reply but the 200 OK comes in directly (after the CANCEL 
was received and the INVITE continued to be retransmitted). In this case 
it cannot send a CANCEL, or can it? Can a CANCEL be sent after a 200 OK 
but before confirming it with the ACK, or after a 200 OK it must send an 
ACK followed by a BYE? What about accounting in the later case, because 
the call will appear as one that was successfully setup and with 0 second 
duration while in reality it was canceled. The later case also implies 
that the proxy is no longer a proxy but a b2bua since it initiates 
dialogs on its own, dialogs that differ from what the call originator has 
sent to the proxy.

On Monday 10 March 2008, Klaus Darilion wrote:
>  From the "sip-implementors" list - looks like Maxim is right.
>
> regards
> klaus
>
> Robert Sparks schrieb:
> > Part of why it does this is to deal with the case that the first
> > INVITE the proxy sent actually got somewhere, but its response was
> > lost. The retransmission will stimulate a retransmission of the
> > response, letting you move forward to sending the CANCEL from the
> > proxy.
> >
> > RjS
> >
> > On Mar 7, 2008, at 7:06 AM, Bob Penfield wrote:
> >> The INVITE transaction must still complete independent of the
> >> CANCEL. So the proxy would continue to re-transmit the INVITE. If
> >> the proxy does receive a provisional response, it would then stop
> >> retransmissions and send the CANCEL down stream. If timer B fired,
> >> it would send a 408 response to the INVITE.
> >>
> >> Note that the proxy should respond to the CANCEL with 200 OK when
> >> it receives it since the INVITE transaction is in progress.
> >>
> >> cheers, (-:bob
> >>
> >> -----Original Message----- From:
> >> sip-implementors-bounces at lists.cs.columbia.edu
> >> [mailto:sip-implementors-bounces at lists.cs.columbia.edu] On Behalf
> >> Of Klaus Darilion Sent: Friday, March 07, 2008 4:11 AM To:
> >> Sip-implementors at lists.cs.columbia.edu Subject: [Sip-implementors]
> >> CANCEL retransmisson question of no provisional response!
> >>
> >> Hi!
> >>
> >> Could someone help me please with this question.
> >>
> >> Scenario: A transaction-stateful proxy forwards the INVITE request.
> >> The proxy does not receive a provisional response, thus starts
> >> retransmissions. Now, the caller CANCELs the call. How is the proxy
> >>  supposed to handle this? Does the proxy still have to retransmit
> >> the INVITE or can it stop retransmitting the INVITE?
> >>
> >> From logical point of view I would think that the proxy should stop
> >> the retransmissions, but from Figure 5 in RFC 3261 it looks like
> >> the only way to come from "Calling" state to "Terminated" state is
> >> waiting for Timer B fires (as there is no provisional response
> >> yet).
> >>
> >> thanks klaus
>
> _______________________________________________
> Devel mailing list
> Devel at lists.openser.org
> http://lists.openser.org/cgi-bin/mailman/listinfo/devel



-- 
Dan



More information about the Devel mailing list