The requirement for having received a 1xx response does apply to transaction 
stateful proxies. If the proxy does not wait, you have the same issue as you 
have with the UA in that the CANCEL could potentially arrive at a downstream 
proxy or the UAS before the INVITE.


cheers,
(-:bob


-----Original Message-----
From: Iñaki Baz Castillo [mailto:i...@aliax.net] 
Sent: Thursday, June 09, 2011 5:33 PM
To: Bob Penfield
Cc: sip-implementors@lists.cs.columbia.edu
Subject: Re: [Sip-implementors] About CANCEL in a proxy (no changes to 
server/client transaction)

2011/5/11 Bob Penfield <bpenfi...@acmepacket.com>:
> You have it correct. The proxy's job is to pass the CANCEL on each branch of 
> the matching transaction. The basic rule of SIP is that all transactions 
> complete independently. The state of the transactions is dependant only on 
> the response(s) for the request and the timers on the transactions. The 
> CANCEL does not affect that state at the proxy. It is up to the UAS to 
> actually do something with the CANCEL and even then, the UAS must generate a 
> 487 response to the original request so that its transaction completes 
> independently.

Hi, let me re-open this topic for a specific case:


RFC 3261 - 16.10 CANCEL Processing

   A stateful proxy MAY generate a CANCEL to any other request it has
   generated at any time (subject to receiving a provisional response to
   that request as described in section 9.1).


RFC 3261 - 9.1 Client Behavior (CANCEL)

   If no provisional response has been received, the CANCEL request MUST
   NOT be sent; rather, the client MUST wait for the arrival of a
   provisional response before sending the request.


My question is: must a proxy also behave as section 9.1 describes? This is:

- Alice calls Bob.
- Proxy sends the INVITE to Bob.
- Proxy gets no provisional response.
- Alice sends CANCEL after a while.
- Proxy replies 200 for CANCEL.
- Proxy doesn't send CANCEL to Bob as there is not 1xx response.
- Later Bob replies 1xx.
- Should then the proxy send a CANCEL to Bob?

I think section 9.1 is just for UA's rather than proxies, but since
section 16.10 references section 9.1....

Thanks a lot.


-- 
Iñaki Baz Castillo
<i...@aliax.net>

_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to