Hello,

According to RFC if Timer C fires at proxy, it should generate CANCEL
(provided 1xx was received). Now if the CANCEL gets 200 OK but the original
INVITE does not receive any final response, what should the proxy do? Won't
the INVITE client transaction continue to hang forever? Won't this beat the
purpose of Timer C, which is there...

"In order to handle the case where an INVITE request *never* generates a
final response,..."


         INV              INV
UAC ------------> P1 --------------> UAS
         100              100
    <------------    <--------------

           [Timer C Fires]
                          CANCEL
                     --------------->
                          200(CANCEL)
                     <---------------

     [No final for INVITE yet.]


Thanks,
Sachin
                    
16.8 Processing Timer C

"   If timer C should fire, the proxy MUST either reset the timer with
   any value it chooses, or terminate the client transaction.  If the
   client transaction has received a provisional response, the proxy
   MUST generate a CANCEL request matching that transaction.  If the
   client transaction has not received a provisional response, the proxy
   MUST behave as if the transaction received a 408 (Request Timeout)
   response."

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

Reply via email to