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.


cheers,
(-:bob




-----Original Message-----
From: [email protected] 
[mailto:[email protected]] On Behalf Of Iñaki Baz 
Castillo
Sent: Wednesday, May 11, 2011 9:56 AM
To: [email protected]
Subject: [Sip-implementors] About CANCEL in a proxy (no changes to 
server/client transaction)

Hi, when a stateful proxy receives a CANCEL and generates a CANCEL for
the pending client transactions (those in Proceeding state so have
replied at least a 1XX response), the state of the server transaction
and clients transaction is not modified in the proxy itself.

So, after processing the CANCEL it could occur that a UAS replies 200
to the INVITE. The proxy would then set the corresponding client
transaction into Accepted state (RFC 6026) and pass the response to
the Proxy layer which would pass it to the associated server
transaction. The server transaction would transition to Accepted state
and deliver the response upstream.

This is, basically the CANCEL processing in the proxy changes nothing
in the proxy itself. Do I miss something? (however I've re-checked it
and found nothing else).

Thanks a lot.

-- 
Iñaki Baz Castillo
<[email protected]>

_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to