Subject: RE: [Sip] "the scope of the Contact is global"

From: [email-masked]
Date: Wed, 20 Aug 2003 23:51:31 +0300

So, the answer to my question is pending the outcome of the gruu discussion? mmmmhh.

In the mean time, should I store that contact for ever or not (for the purpose of accepting requests outside that dialog after that dialog terminates)?

/Hisham

> -----Original Message-----
> From: ext Rohan Mahy [mailto:[email-masked]]
> Sent: Wednesday, August 20, 2003 9:20 PM
> To: Khartabil Hisham (NMP/Helsinki)
> Cc: [email-masked]
> Subject: Re: [Sip] "the scope of the Contact is global"
> 
> 
> Hi Hisham,
> 
> This is exactly why I feel that the Contact header should contain a 
> GRUU.
> 
> thanks,
> -rohan
> 
> 
> On Tuesday, August 19, 2003, at 03:52 PM, [email-masked] 
> wrote:
> 
> > The following text appears in RFC3261 section 8.1.1.8
> >
> > "The Contact header field MUST be present and contain 
> exactly one SIP
> >    or SIPS URI in any request that can result in the 
> establishment of a
> >    dialog.  For the methods defined in this specification, that 
> > includes
> >    only the INVITE request.  For these requests, the scope of the
> >    Contact is global.  That is, the Contact header field 
> value contains
> >    the URI at which the UA would like to receive requests, 
> and this URI
> >    MUST be valid even if used in subsequent requests outside of any
> >    dialogs."
> >
> > So, the scenario is:
> >
> > - I send an INVITE with contact: sip:[email-masked]:54321 (note the 
> > port)
> > - the session is now finished and I terminate the dialog
> >
> > The port that was used in contact was specified for that 
> dialog only. 
> > So the question is: must the URI in the contact header be valid for 
> > subsequent requests even after the dialog is terminated? Which 
> > consequently means that my SIP stack needs to accept 
> requests on port 
> > 54321 for ever?
> >
> > Thanks,
> > Hisham
> >
> > _______________________________________________
> > 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
> 
> 

_______________________________________________
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: Robert Sparks <[email-masked]>
Date: 21 Aug 2003 17:00:58 -0400

Not.

The text in 3261 was motivated by what the flow for attended
transfer looked like at the time. What was intended was that the
contact be valid for INVITEs coming in that might establish a new
dialog ->while the original dialog still existed<-.

It has never been the intent (at least it has never been _my_
intent) to force the remote-targets of dialogs to have permanence.
An application should be free to create something ephemeral, destroying
it as the state it is associated with is removed.

GRUUs don't make this different. Being a GRUU makes no statement about
being valid forever. A GRUU need be valid only as long as the 
application creating it needs it to be valid. One possible use of
a GRUU might be to create what is effectively an AOR for a device,
and such a GRUU can be arbitrarily long lived. But that does not
imply _all_ GRUUs will live forever.

So, to address your original question, you can delete the contact
if you've created an ephemeral one for the dialog. Just be sure
you are keeping the dialog state around long enough after you
have sent your BYE (or other terminating message) to capture any
requests the peer might have sent before it believed the dialog
was terminated.

RjS