Subject: [Sip] About register expiration

From: "Rachel Danor" <[email-masked]>
Date: Tue, 22 Mar 2005 19:03:49 +0200

Hi,

	I have a question the SIP standard definitions for "expires"
handling in the registration.

	This is what I see in paragraph 10.3:
	The registrar returns a 200 (OK) response.  The response MUST
contain Contact header field values enumerating all current bindings.
Each Contact value MUST feature an "expires" parameter indicating its
expiration interval chosen by the registrar.  

	From this I understand that the 200OK must include expires
parameter in the contact header.
	On the other hand when I look at message examples in paragraph
24.1, I see the following:

	   F1 REGISTER Bob -> Registrar

	       REGISTER sip:registrar.biloxi.com SIP/2.0
	       Via: SIP/2.0/UDP
bobspc.biloxi.com:5060;branch=z9hG4bKnashds7
	       Max-Forwards: 70
	       To: Bob <sip:[email-masked]>
	       From: Bob <sip:[email-masked]>;tag=456248
	       Call-ID: 843817637684230@998sdasdh09
	       CSeq: 1826 REGISTER
	       Contact: <sip:[email-masked]>
	       Expires: 7200
	       Content-Length: 0

	   F2 200 OK Registrar -> Bob

	        SIP/2.0 200 OK
	        Via: SIP/2.0/UDP
bobspc.biloxi.com:5060;branch=z9hG4bKnashds7
	         ;received=192.0.2.4
	        To: Bob <sip:[email-masked]>;tag=2493k59kd
	        From: Bob <sip:[email-masked]>;tag=456248
	        Call-ID: 843817637684230@998sdasdh09
	        CSeq: 1826 REGISTER
	        Contact: <sip:[email-masked]>
	        Expires: 7200
	        Content-Length: 0

	Where the registrar does not set the expires parameter in the
contact header, but leaves it in the Expires header.

	Which is correct? Is it allowed to have both Expires header and
expires parameter for Contact headers in the 200OK?

Regards,
Rachel Danor

_______________________________________________
Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip

---

From: [email-masked]
Date: Tue, 22 Mar 2005 12:35:51 -0500

Hi Rachel,

Expiration information can be present in Expires header or expires 
paramter.
However, Contact header "expires" paramter has preference over Expires 
header,
if expires parameter is present, it will be used
otherwise expiration value present in Expires header will be used.

-Udit

Sent by:        [email-masked] 
To:     <[email-masked]>
cc:      
Subject:        [Sip] About register expiration

Hi,

I have a question the SIP standard definitions for "expires" handling in 
the registration.

The registrar returns a 200 (OK) response.  The response MUST contain 
Contact header field values enumerating all current bindings.  Each 
Contact value MUST feature an "expires" parameter indicating its 
expiration interval chosen by the registrar.  

>From this I understand that the 200OK must include expires parameter in 
the contact header.

On the other hand when I look at message examples in paragraph 24.1, I see 
the following:

       Via: SIP/2.0/UDP bobspc.biloxi.com:5060;branch=z9hG4bKnashds7

      Max-Forwards: 70

       CSeq: 1826 REGISTER

       Expires: 7200

       Content-Length: 0

        SIP/2.0 200 OK

        Via: SIP/2.0/UDP bobspc.biloxi.com:5060;branch=z9hG4bKnashds7

        ;received=192.0.2.4

        CSeq: 1826 REGISTER

        Expires: 7200

        Content-Length: 0

Where the registrar does not set the expires parameter in the contact 
header, but leaves it in the Expires header.

Which is correct? Is it allowed to have both Expires header and expires 
parameter for Contact headers in the 200OK?

Regards,

Rachel Danor

---

From: "Brett Tate" <[email-masked]>
Date: Tue, 22 Mar 2005 13:27:22 -0500

I agree with Udit's response about how the response should be processed.
However if I understand Jonathan's posting correctly, the registrar still
must send the expires parameter.  This is likely a situation to be strict
sending and leninent receiving.
 
http://www.sipwg.org/show_bug.cgi?id=682

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On Behalf Of
[email-masked]
Sent: Tuesday, March 22, 2005 12:36 PM
To: Rachel Danor
Cc: [email-masked]
Subject: Re: [Sip] About register expiration

Hi Rachel, 

Expiration information can be present in Expires header or expires paramter.

-Udit 

To:        <[email-masked]> 
cc:         

Hi, 

I have a question the SIP standard definitions for "expires" handling in the
registration. 

The registrar returns a 200 (OK) response.  The response MUST contain
Contact header field values enumerating all current bindings.  Each Contact
value MUST feature an "expires" parameter indicating its expiration interval
chosen by the registrar.  

>From this I understand that the 200OK must include expires parameter in the
contact header. 

      Max-Forwards: 70 

       CSeq: 1826 REGISTER 

       Expires: 7200 

       Content-Length: 0 

        SIP/2.0 200 OK 

        ;received=192.0.2.4 

        CSeq: 1826 REGISTER 

        Expires: 7200 

        Content-Length: 0 

Regards, 

Rachel Danor

---

From: Juha Heinanen <[email-masked]>
Date: Tue, 22 Mar 2005 21:01:14 +0200

rachel's message reminds me about what i considered another bug in
request uri of rfc3261 register example:

elsewhere in rfc3261:

10.2 Constructing the REGISTER Request

Request-URI: The Request-URI names the domain of the location service
for which the registration is meant (for example, sip:chicago.com).

and

10.3 Processing REGISTER Requests

1. The registrar inspects the Request-URI to determine whether it has
   access to bindings for the domain identified in the Request-URI.

my interpretation of the above quotes is that request uri in the above
register request should be:

      REGISTER sip:biloxi.com SIP/2.0 

perhaps this could also be mentioned in the bug register of both rfc3261
and the call flow rfc.

-- juha