Subject: [SIP] Re: isomorphic clarification

From: "Garret Wilson" <[email-masked]>
Date: Thu, 10 Aug 2000 12:30:36 -0700

I just realized that the latest spec explains how to compare URIs. The
question remains that, if two URI's are equal yet not identical in string
format, are two From headers (for example) which contain these two URIs
considered to have the "same value" as per the definition of isomorphic?

Garret

----- Original Message -----
From: "Garret Wilson" <[email-masked]>
To: "SIP List" <[email-masked]>
Sent: Thursday, August 10, 2000 12:23 PM
Subject: isomorphic clarification

> The SIP specification states that, "Two requests or responses are defined
to
> be isomorphic for the purposes
> of this document if they have the same values for the Call-ID, To, From
and
> CSeq header fields."
>
> The phrase, "same values" seems to be undefined, which means that what it
> means for two header fields to be equal is unspecified. For example, if
two
> "From" strings are identical except that the second one specifies a port
of
> ":5060", do these two value have the "same value?"
>
> sip:[email-masked]
> sip:[email-masked]:5060
>
> (After all, since 5060 is the default SIP port, the first SIP-URI really
has
> the same port as the second.)
>
> Cheers,
>
> Garret
>

_______________________________________________
SIP mailing list
[email-masked]
http://lists.bell-labs.com/mailman/listinfo/sip

---

From: Itamar Gilad <[email-masked]>
Date: Wed, 16 Aug 2000 19:48:30 +0300

> -----Original Message-----
> From: Henning Schulzrinne [mailto:[email-masked]]
> Sent: Sat, August 12, 2000 12:53 AM
> To: Jonathan Rosenberg
> Cc: Garret Wilson; SIP List
> Subject: Re: [SIP] isomorphic clarification
> 
> 
> Jonathan Rosenberg wrote:
> > 
> > Garret Wilson wrote:
> > >
> > > The SIP specification states that, "Two requests or 
> responses are defined to
> > > of this document if they have the same values for the 
> Call-ID, To, From and
> > > CSeq header fields."
> > 
> > The -01 draft also mentions that the Request URIs must be 
> identical, to
> > support spirals.
> > 
> > As an additional thing, the *top* Vias must be the same, in order to
> > detect merged requests. We should add this here and elsewhere in the
> > document as needed.
> 
> Might be good to have an example for this.
> 
> > 
> > You later write:
> > Yes. Two FRoms are equal if (1) their URIs match under URI 
> comparison,
> > (2) their From parameters match, based on standard matching 
> rules for
> > header parameters (case sensitive equality of both name and value).
> 
> Presumably parameters missing in one of the From/To are ignored in the
> comparison. 

Not necessarily. I think 'tag' is a special case. In a UAC when checking if
a 200 response matches an existing call leg you need to be able to compare
its To: header which has a tag to the To: header of the original INVITE,
which usually doesn't have a tag, and get the result that the two are the
same.  I think that this is the reason for the To/From comparison rules that
disregard a missing tag.  With other (generic-param) parameters this may not
be the case.  For example:
	From: sip:[email-masked];extparam=1
and 
	From: sip:[email-masked]

may not necessarily be the same.

  Itamar

> This seems to work for 'tag'.
> Note that according to RFC 2616 and the BNF definition, 
> 
> "literal"
>       Quotation marks surround literal text. Unless stated otherwise,
>       the text is case-*in*sensitive.
> 
> Added to URI section (not sure what you mean by "this section").
> 
> 
> -- 
> Henning Schulzrinne   http://www.cs.columbia.edu/~hgs
> 
> 
>

---

From: [email-masked]
Date: Thu, 17 Aug 2000 11:27:10 -0500

One possible source of confusion is that the definition of "isomorphic"
includes both requests and responses, but the RFCbis never uses the word
"isomorphic" in relation to responses.

I'm not sure that there is any particular significance to isomorphic
responses. For example, if the UAS sends a 183 to start an early media
session, and then sends a second 183 to modify that session, the two 183's
are isomorphic, but they are not identical and both need to be processed.

On the other hand, the draft on reliable provisional responses doesn't use
the word "isomorphic". Perhaps isomorphic reliable provisional responses
should be defined there, and the definition would need to include matching
RSeqs.

> From: EXT Jonathan Rosenberg [mailto:[email-masked]]
> Sent: Friday, August 11, 2000 1:23 PM
> To: Garret Wilson
> Cc: SIP List
> Yes. Two FRoms are equal if (1) their URIs match under URI comparison,
> (2) their From parameters match, based on standard matching rules for
> It might be a good idea to formally define "identical" in 
> this section.
> Its a constant source of confusion and problems at the bakeoffs.
> 
> -Jonathan R.
> 
> 
> -- 
> Jonathan D. Rosenberg                       72 Eagle Rock Ave.
> Chief Scientist                             First Floor
> dynamicsoft                                 East Hanover, NJ 07936
> [email-masked]                     FAX:   (973) 952-5050
> http://www.cs.columbia.edu/~jdrosen         PHONE: (732) 741-7244
> http://www.dynamicsoft.com
> 
>