Re: [Sip] Open Issue #7: CANCEL for non-INVITE
Suheel Hussain <ssh@cisco.com> Mon, 10 September 2001 19:16 UTC
Received: from optimus.ietf.org (ietf.org [132.151.1.19] (may be forged)) by ietf.org (8.9.1a/8.9.1a) with ESMTP id PAA27725 for <sip-archive@odin.ietf.org>; Mon, 10 Sep 2001 15:16:48 -0400 (EDT)
Received: from optimus.ietf.org (localhost [127.0.0.1]) by optimus.ietf.org (8.9.1a/8.9.1) with ESMTP id OAA14687; Mon, 10 Sep 2001 14:49:14 -0400 (EDT)
Received: from ietf.org (odin [132.151.1.176]) by optimus.ietf.org (8.9.1a/8.9.1) with ESMTP id OAA14616 for <sip@optimus.ietf.org>; Mon, 10 Sep 2001 14:49:09 -0400 (EDT)
Received: from rtp-msg-core-1.cisco.com (rtp-msg-core-1.cisco.com [161.44.11.97]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id OAA26816 for <sip@ietf.org>; Mon, 10 Sep 2001 14:47:40 -0400 (EDT)
Received: from dingdong.cisco.com (dingdong.cisco.com [64.102.17.16]) by rtp-msg-core-1.cisco.com (8.11.3/8.9.1) with ESMTP id f8AIlje18585; Mon, 10 Sep 2001 14:47:45 -0400 (EDT)
Received: from cisco.com (dhcp-64-102-97-140.cisco.com [64.102.97.140]) by dingdong.cisco.com (Mirapoint) with ESMTP id ACF11880 (AUTH ssh); Mon, 10 Sep 2001 14:48:10 -0400 (EDT)
Message-ID: <3B9D0BFB.6050602@cisco.com>
Date: Mon, 10 Sep 2001 14:52:43 -0400
From: Suheel Hussain <ssh@cisco.com>
Organization: Cisco Systems
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.2) Gecko/20010726 Netscape6/6.1
X-Accept-Language: en-us
MIME-Version: 1.0
To: Christer Holmberg <christer.holmberg@lmf.ericsson.se>
CC: Jonathan Rosenberg <jdrosen@dynamicsoft.com>, "'Henning G. Schulzrinne'" <hgs@cs.columbia.edu>, sip@ietf.org
Subject: Re: [Sip] Open Issue #7: CANCEL for non-INVITE
References: <B65B4F8437968F488A01A940B21982BF020D6806@DYN-EXCH-001.dynamicsoft.com> <3B9C5895.AB292BD@lmf.ericsson.se>
Content-Type: multipart/alternative; boundary="------------080009030006000504030001"
Sender: sip-admin@ietf.org
Errors-To: sip-admin@ietf.org
X-Mailman-Version: 1.0
Precedence: bulk
List-Id: Session Initiation Protocol <sip.ietf.org>
X-BeenThere: sip@ietf.org
Christer, By sending an error code for a CANCEL, does it mean that error-code should be sent only if I (UA) do not want to process non-INVITE CANCEL? If yes, then this could lead to backward compatibility problem -- i.e., an UA running a new version of SIP sending a non-INVITE CANCEL to and older version UA. For example: UA new UA old -------- REFER -----------> start processing REFER wait..wait I want to cancel REFER --------- CANCEL ----------> sorry I do not know why this cancel Discard and keep processing REFER Whew... I got REFER cancelled -------- REFER processing complete call transferred In this case absence of an error-code signifies that CANCEL was successful; whereas UA-old does not cancels REFER. How do we handle such conditions? Christer Holmberg wrote: >Hi, > >My personal opinion is that we, like Henning said, simply should have a >error code telling "sorry, I can't cancel the specific request". Of >course we can, if needed, also have different error codes for request >that can't be cancelled because a final response has been sent, and >another code for requests that the UAS simply doesn't allow - for any >reason - the UAC to CANCEL. > >For example, even if we most likely always will accept a CANCEL for the >initial INVITE, there are many cases where we may not accept a CANCEL >for a re-INVITE. > >Eg, if I receive a re-INVITE to change some codecs, I may not accept a >CANCEL. EVEN if I would be smart enough to remember the previous codecs >it is not even sure that I have resources to change them back. In that >case we would need a code saying "well, I did CANCEL your re-INVITE, but >now I am not able to put the old codecs back, so it would probably be a >good idea to release the whole call". No, I don't think we want that... >Another thinkg would be for the UAS to send a BYE, since it can't put >the codecs back, but I don't think we want that either, so... > >Regards, > >Christer Holmberg >Ericsson Finland > > > > >Jonathan Rosenberg wrote: > >> >> >>>-----Original Message----- >>>From: Henning G. Schulzrinne [mailto:hgs@cs.columbia.edu] >>>Sent: Sunday, September 02, 2001 5:24 PM >>>To: sip@ietf.org >>>Subject: [Sip] Open Issue #7: CANCEL for non-INVITE >>> >>> >>>(Due to travel, I probably missed some of the discussion, so excuse me >>>for re-raising old issues.) >>> >>>A few notes: >>> >>>- I think the complexity of CANCEL for non-INVITE on the >>>server side is >>>essentially zero. If you don't implement it, you can either return 481 >>>(i.e., the request has already been completed) or 405 (but see below). >>> >>Well, the proposal was pretty much that. It does nothing. Just respond to >>it. The point is that a client MUSTNOT send it anymore (i.e., its deprecated >>as it doesn't do anything useful). >> >>>- If we don't allow CANCEL for non-INVITE, we have to extend the >>>definition of 405 (or define a new status code), since the method *is* >>>supported for an INVITE for the same URL. To wit, the current >>>text says: >>> >>>"The method specified in the \header{Request-Line} is not allowed for >>>the >>>address identified by the \header{Request-URI}. The response {\MUST} >>>include an \header{Allow} header field containing a list of valid >>>methods for the indicated address." >>> >>>Note that this defines the granularity of requests at the URI >>>level, not >>>at the method level. >>> >>Right. It wasn't the proposal to respond with a 405. Just a 200 OK, in fact. >> >>>- Does anything else get simpler if we disallow CANCEL for non-INVITE? >>> >>The thing we want to get rid of is the usage in the client, and the >>processing that, in theory, would need to happen in the server if this was >>more than a no-op. For example, cancelling a SUBSCRIBE or something would >>cause the subscription state to be destroyed, and a 487 to the SUBSCRIBE to >>be sent. With the proposal, the server just 200 OKs the CANCEL, and >>otherwise ignores it. No deletion of state. No generating of a special >>response to SUBSCRIBE. >> >>>- Under the current model, non-INVITE transactions can have non-zero >>>duration, if you return a 1xx response. Thus, it is at least >>>conceivable >>>that there are methods where the CANCEL could actually accomplish >>>something. >>> >>Well, except that you still need to cotninue retransmitting the request at >>5s intervals to trigger a response. This is wasteful, and results in slow >>transactions. I had thought that we had agreed as a group that non-INVITE >>requests really needed to be responded to immediately to be effective. >> >>-Jonathan R. >> >>--- >>Jonathan D. Rosenberg, Ph.D. 72 Eagle Rock Ave. >>Chief Scientist First Floor >>dynamicsoft East Hanover, NJ 07936 >>jdrosen@dynamicsoft.com FAX: (973) 952-5050 >>http://www.jdrosen.net PHONE: (973) 952-5000 >>http://www.dynamicsoft.com >> >>_______________________________________________ >>Sip mailing list http://www1.ietf.org/mailman/listinfo/sip >>This list is for NEW development of the core SIP Protocol >>Use sip-implementors@cs.columbia.edu for questions on current sip >>Use sipping@ietf.org for new developments on the application of sip >> >> -- Suheel Hussain ssh@cisco.com Cisco Work # (919) 392-2312
- [Sip] Open Issue #7: CANCEL for non-INVITE Jonathan Rosenberg
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Rosen, Brian
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Vijay Gurbani
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Kim Liu
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Shail Bhatnagar
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Kim Liu
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Jonathan Rosenberg
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Brett Tate
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Drage, Keith (Keith)
- [Sip] Open Issue #7: CANCEL for non-INVITE Henning G. Schulzrinne
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Jonathan Rosenberg
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Christer Holmberg
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Henning Schulzrinne
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Rohan Mahy
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Suheel Hussain
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Bob Penfield
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Drage, Keith (Keith)
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Robert Sparks
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Drage, Keith (Keith)
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Robert Sparks
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Jonathan Rosenberg
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Christer Holmberg
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Henning G. Schulzrinne
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Henning G. Schulzrinne
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Gonzalo Camarillo
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Anders Kristensen
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE James Undery
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Henning G. Schulzrinne
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Bob Penfield
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Drage, Keith (Keith)
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Christer Holmberg
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Jonathan Rosenberg
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Bob Penfield
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE James Undery
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Jo Hornsby
- Re: [Sip] Open Issue #7: CANCEL for non-INVITE Henning Schulzrinne
- RE: [Sip] Open Issue #7: CANCEL for non-INVITE Drage, Keith (Keith)