Dan Pascu schrieb: > 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
No. If i got it right, if the proxy receives a CANCEL, but does not have got a response from the UAS, it still must retransmit the and it must not send 487 back to the client. The proxy has to: - if UAS does not responses at all -> after timer B it will send 487 (or 408?)to the UAC - if the UAS sends a provisional response -> send CANCEL to UAS and forward 487 to UAC - if the UAS sends 200 OK --> forward 200 ok to UAC regards klaus > 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: >>>> [EMAIL PROTECTED] >>>> [mailto:[EMAIL PROTECTED] On Behalf >>>> Of Klaus Darilion Sent: Friday, March 07, 2008 4:11 AM To: >>>> [EMAIL PROTECTED] 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@lists.openser.org >> http://lists.openser.org/cgi-bin/mailman/listinfo/devel > > > _______________________________________________ Devel mailing list Devel@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/devel