Interesting,

That means that again that either Table-2 has made contact header
optional because section 12.1 + 12.1.1 is applicable for 101-199 ( not
100 trying ), but the table covers 100-199. 

It would make sense to have contact header in 18x responses where
subsequent method have to be sent out ( except CANCEL method which
follows INVITE)  as  otherwise I was thinking how would the PRACK be
successfully delivered via stateless proxies absent contact header (
based purely on initial routing data available used for sending out
INVITE ).

So this implies that if a method has to be sent out after 18x ( like
PRACK/UPDATE etc ), then the 18x MUST have a contact header for
successfully routing those requests/methods through various proxies..

Section 12.1

   Dialogs are created through the generation of non-failure responses
   to requests with specific methods.  Within this specification, only
   2xx and 101-199 responses with a To tag, where the request was
   INVITE, will establish a dialog.

Section 12.1.1

   When a UAS responds to a request with a response that establishes a
   dialog (such as a 2xx to INVITE), the UAS MUST copy all Record-Route
   header field values from the request into the response (including the
   URIs, URI parameters, and any Record-Route header field parameters,
   whether they are known or unknown to the UAS) and MUST maintain the
   order of those values.  The UAS MUST add a Contact header field to
   the response.  

      Header field          where   proxy ACK BYE CAN INV OPT REG
      ___________________________________________________________
      Contact                1xx           -   -   -   o   -   -
      Contact                2xx           -   -   -   m   o   o
 
             Table 2: Summary of header fields, A--O

Best Regards,

Indresh K Singh

>>-----Original Message-----
>>From: ext Brett Tate [mailto:[email protected]] 
>>Sent: Tuesday, August 18, 2009 10:48 AM
>>To: Singh, Indresh (NSN - US/Boca Raton); ext raikkme rrrrr; 
>>[email protected]
>>Subject: RE: [Sip-implementors] 18X response with no Contact Header
>>
>>> But as Vikram pointed out that contact header is an optional header 
>>> in 1xx responses. 
>>
>>The example indicates that the 18x with To tag (and without 
>>Contact) was the dialog forming response.  Thus the Contact 
>>header is not optional.
>>
>>The following are two rfc3261 snippets which indicate that 
>>the Contact is mandatory for such responses.
>>
>>Section 12.1: "Dialogs are created through the generation of 
>>non-failure responses to requests with specific methods.  
>>Within this specification, only 2xx and 101-199 responses 
>>with a To tag, where the request was INVITE, will establish a dialog."
>>
>>Section 12.1.1: "When a UAS responds to a request with a 
>>response that establishes a dialog (such as a 2xx to INVITE)" 
>>... "The UAS MUST add a Contact header field to the response."
>>
>>

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

Reply via email to