Re: [Sip] WGLC for draft-ietf-sip-subnot-etags-01

Dale.Worley@comcast.net Sat, 01 March 2008 03:09 UTC

Return-Path: <sip-bounces@ietf.org>
X-Original-To: ietfarch-sip-archive@core3.amsl.com
Delivered-To: ietfarch-sip-archive@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id F1C1F28C3DF; Fri, 29 Feb 2008 19:09:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.653
X-Spam-Level:
X-Spam-Status: No, score=-0.653 tagged_above=-999 required=5 tests=[AWL=-0.216, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_ORG=0.611, RDNS_NONE=0.1]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nFZ4jJvsr8fd; Fri, 29 Feb 2008 19:09:01 -0800 (PST)
Received: from core3.amsl.com (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 211B23A6907; Fri, 29 Feb 2008 19:09:01 -0800 (PST)
X-Original-To: sip@core3.amsl.com
Delivered-To: sip@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id EC2FE3A6907 for <sip@core3.amsl.com>; Fri, 29 Feb 2008 19:08:59 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lMLWZMjjD6aV for <sip@core3.amsl.com>; Fri, 29 Feb 2008 19:08:54 -0800 (PST)
Received: from QMTA07.emeryville.ca.mail.comcast.net (qmta07.emeryville.ca.mail.comcast.net [76.96.30.64]) by core3.amsl.com (Postfix) with ESMTP id 6C0B93A6859 for <sip@ietf.org>; Fri, 29 Feb 2008 19:08:54 -0800 (PST)
Received: from OMTA06.emeryville.ca.mail.comcast.net ([76.96.30.51]) by QMTA07.emeryville.ca.mail.comcast.net with comcast id veT81Y00516AWCUA701J00; Sat, 01 Mar 2008 03:08:11 +0000
Received: from dragon.ariadne.com ([76.19.174.1]) by OMTA06.emeryville.ca.mail.comcast.net with comcast id vf8j1Y00402AVH08S00000; Sat, 01 Mar 2008 03:08:45 +0000
X-Authority-Analysis: v=1.0 c=1 a=5ZMP7OrXdx3HqsSvWWYA:9 a=AmIZo3c-shltmC2q26oA:7 a=YBxAV1HprOh8Fcq7Zq5v2T9fIE8A:4 a=1pxjJC3EenQA:10 a=gi0PWCVxevcA:10
Received: from dragon.ariadne.com (dragon.ariadne.com [127.0.0.1]) by dragon.ariadne.com (8.12.8/8.12.8) with ESMTP id m2138gMj024973 for <sip@ietf.org>; Fri, 29 Feb 2008 22:08:42 -0500
Received: (from worley@localhost) by dragon.ariadne.com (8.12.8/8.12.8/Submit) id m2138gWu024969; Fri, 29 Feb 2008 22:08:42 -0500
Date: Fri, 29 Feb 2008 22:08:42 -0500
Message-Id: <200803010308.m2138gWu024969@dragon.ariadne.com>
To: sip@ietf.org
From: Dale.Worley@comcast.net
In-reply-to: <1204099738.16881.21.camel@localhost> (aki.niemi@nokia.com)
References: <5D1A7985295922448D5550C94DE2918001636AF1@DEEXC1U01.de.lucent.com> <200709181506.l8IF6Bmp007748@dragon.ariadne.com> <1203976392.6192.88.camel@localhost> <200802262131.m1QLV7Rm008476@dragon.ariadne.com> <1204099738.16881.21.camel@localhost>
Subject: Re: [Sip] WGLC for draft-ietf-sip-subnot-etags-01
X-BeenThere: sip@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Session Initiation Protocol <sip.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/sip>, <mailto:sip-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:sip@ietf.org>
List-Help: <mailto:sip-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sip>, <mailto:sip-request@ietf.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: sip-bounces@ietf.org
Errors-To: sip-bounces@ietf.org

I agree that the point we're discussing is largely a matter of
providing a "beware" statement, except with the exception of a
possible *solution* to the problem which I will mention at the bottom.
But in any case, I don't see the need for agenda time at the metting
to discuss this.

   From: Aki Niemi <aki.niemi@nokia.com>

   > The notifier cannot know what routing is in front of it, because it
   > cannot know what URIs might route to it.

   Then that's bad. How does the notifier then know which PIDF to pick in
   presence subscriptions?

Especially if it's not a presence subscription.  But seriously, is
this proposal confined to presence events?  I see no such text.

In general, a SUBSCRIBE will fork, and the subscriber presumably knows
how it wants to integrate the events it will receive from the various
subscriptions, based on the semantics of its situation.

   I agree this kind of setup presents a problem. But I also think that
   what we're dealing with here is not that different from the web world.
   There are a lot of load balancing schemes that can be used with HTTP,
   which result in a GET ending up in different data centers in different
   parts of the world at different times.

   What's important to note there is that if the service that is accessed
   via this GET needs sessions and gives out cookies, then the backend
   system needs to be synchronized. Otherwise, the servers will be unaware
   of each others cookies, and the service won't work correctly.

   Similarly, the backend to the SIP notifiers needs a synchronized
   backend, otherwise, subnot-etags won't work.  Naturally, the etags just
   like cookies can be constructed in such a way that they contain the
   necessary state.

There's a hidden philosophical problem:  People think of SIP routing
as being like PSTN routing, where the caller sends the call to a
number which designates one destination, or at least, a single device
which has total knowledge of a small number of possible destinations.
The caller knows the globally-recongized *name* of the
destination-group, and every destination knows of and is coordinated
with *every other possible destination*.

Your HTTP model is similar; you assume the request will reach one of a
set of servers that are co-adminstered.

But the reality is that SIP routing can be like sending e-mail to a
mailing list -- the sender doesn't know what the possible destinations
are, and each destination doesn't know what all the destinations are
either, because some of the routing can be done by agents that are not
co-administered with either the sender or the destination.

Now I think the first case is more common, but if we are going to
design a general mechanism, it should not fail badly in practice in
the second case.


Getting back to possible solutions:

Looking at section 6.1, I see '[An entity-tag] can have any value,
except for "*".'  (Let's correct that to 'An entity-tag can be any
token, except for "*".')  We can dodge the problem of uncoordinated
notifiers by demanding that entity-tags have some minimum amount of
randomness.  E.g., if any group of coordinated notifiers picks a
64-bit random value, and the entity-tag is generated by making a
64-bit hash of that value with the event information, the chances of
an etag-value collision in any single instance is 2^-64.

One can easily encode a 64-bit value in 11 token characters using
(modified) base64.  Compare that to the 5-character values used as
examples in the I-D.  Though if we used 6 base64 characters, we would
still have a 36-bit hash, which is probably good enough.

Dale
_______________________________________________
Sip mailing list  https://www.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use sip-implementors@cs.columbia.edu for questions on current sip
Use sipping@ietf.org for new developments on the application of sip