Re: [BLISS] [Fwd: I-D Action:draft-roach-sip-http-subscribe-00.txt]

Mark Nottingham <mnot@mnot.net> Thu, 11 December 2008 06:54 UTC

Return-Path: <bliss-bounces@ietf.org>
X-Original-To: bliss-archive@optimus.ietf.org
Delivered-To: ietfarch-bliss-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id BC7C83A6A38; Wed, 10 Dec 2008 22:54:54 -0800 (PST)
X-Original-To: bliss@core3.amsl.com
Delivered-To: bliss@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 536F83A6C29 for <bliss@core3.amsl.com>; Wed, 10 Dec 2008 21:49:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.002
X-Spam-Level:
X-Spam-Status: No, score=-6.002 tagged_above=-999 required=5 tests=[AWL=-2.403, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-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 S8QoaM6tZ9uP for <bliss@core3.amsl.com>; Wed, 10 Dec 2008 21:49:01 -0800 (PST)
Received: from mxout-03.mxes.net (mxout-03.mxes.net [216.86.168.178]) by core3.amsl.com (Postfix) with ESMTP id ABF893A693A for <bliss@ietf.org>; Wed, 10 Dec 2008 21:49:01 -0800 (PST)
Received: from [192.168.1.4] (unknown [209.131.62.115]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by smtp.mxes.net (Postfix) with ESMTPSA id E64E323E403; Thu, 11 Dec 2008 00:48:50 -0500 (EST)
Message-Id: <4D3036ED-3CDC-4FEE-ABB1-AE2D341AA3FC@mnot.net>
From: Mark Nottingham <mnot@mnot.net>
To: Adam Roach <adam@nostrum.com>
In-Reply-To: <4926D995.2010508@nostrum.com>
Mime-Version: 1.0 (Apple Message framework v929.2)
Date: Thu, 11 Dec 2008 16:48:48 +1100
References: <4925F054.5020205@nostrum.com> <167dfb9b0811201703i3162dbbbpabfc085ccef6754b@mail.gmail.com> <4926351B.6000907@nostrum.com> <167dfb9b0811210007q46e938b3y9d1f9589b271bed6@mail.gmail.com> <4926D995.2010508@nostrum.com>
X-Mailer: Apple Mail (2.929.2)
X-Mailman-Approved-At: Wed, 10 Dec 2008 22:54:53 -0800
Cc: bliss@ietf.org, Theo Zourzouvillys <theo@voip.co.uk>
Subject: Re: [BLISS] [Fwd: I-D Action:draft-roach-sip-http-subscribe-00.txt]
X-BeenThere: bliss@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "Basic Level of Interoperability for SIP Services \(BLISS\) BoF" <bliss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/bliss>, <mailto:bliss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/bliss>
List-Post: <mailto:bliss@ietf.org>
List-Help: <mailto:bliss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bliss>, <mailto:bliss-request@ietf.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"; DelSp="yes"
Sender: bliss-bounces@ietf.org
Errors-To: bliss-bounces@ietf.org

Sorry for the delay, finally off the road and had a chance to read.

Overall I like this document a lot, and I think it should be easy to  
align its use of the 'monitor' link relation with the Atom-over-HTTP  
protocol described in draft-nottingham-http-cache-channels.

A couple of comments / concerns:

* "...it MUST return a Link: header..." seems like it's too strong;  
servers may want to be selective about when they offer monitoring, and  
there may be other ways to advertise it that are more appropriate.

* Following on that thought, the idea behind the most recent Link  
draft is to talk about link relations generically, and make Link  
headers one use of them. Another use of them is in draft-nottingham- 
site-meta (which is still under pretty active revision); this would  
allow you to advertise a monitoring endpoint for your whole site, for  
example.

* "It MAY return both." is ambiguous; think you mean SIP + SIPS.

* 3.4 Subscription Duration -- just a thought, is it worth tying the  
default subscription duration to the freshness lifetime of the HTTP  
response (as defined by HTTP)?

* 3.5.1 message/httpfrag -- did you consider using application/http  
(defined in RFC2616)? I mention this because HTTP already defines how  
to update a cache entry's headers based upon a HEAD or 304 response;  
it would be nice to reuse that if possible. Also, what does making the  
status-line optional bring? The semantics of the message would be  
clearer if it were required...

* 3.5.2 - Why require an ETag or Content-MD5? Why recommend a Last- 
Modified?

* 3.10 - limiting notifications to one a second makes sense also  
because this is the granularity of time in HTTP.

Specific responses below;


On 22/11/2008, at 2:53 AM, Adam Roach wrote:
> On 11/21/08 2:07 AM, Theo Zourzouvillys wrote:
>> On Fri, Nov 21, 2008 at 4:12 AM, Adam Roach <adam@nostrum.com> wrote:
>>
>>> Very interesting proposals. Admittedly, for the use cases SIP is  
>>> most
>>> interested in, the results are not typically HTML, but the idea of
>>> communicating these in the body may have merit. I'm curious about  
>>> which use
>>> cases you have in mind -- do you imagine that there will be  
>>> circumstances
>>> under which the HTTP server will have the ability to notify other  
>>> nodes of
>>> changes, but not have the ability to include a Link: header?
>>>
>>
>> absolutely - perhaps a resource hosted on a CDN, where you commonly
>> can not send custom headers.

You certainly can, in a cache-driven CDN (e.g., Akamai); the cases  
where you can't aren't really CDNs as the industry understands them,  
they're Web hosting farms (because they use replication; e.g.,  
Amazon's new service, if I read it correctly). In that case, providing  
a channel without coordination with them can be harmful, because you  
can get into race conditions where you send the notification before  
the content is fully replicated.

More to the point, if you're using a CDN (of either type), the most  
likely value-add scenarios are using a monitoring channel to notify  
the CDN itself of changes, and also the CDN providing a monitoring  
server as a service.


>> or a blog, which may be hosted on some other platform (for example,
>> blogger.com) where you can edit the HTML but not the headers.

I'm getting somewhat exasperated at how often this argument comes up  
in specification discussions; to date mostly at the W3C. If we follow  
it to its conclusion, the only Internet protocols that we can develop  
are those that work with free hosting sites that only provide FTP  
access. Surely the Internet and the Web shouldn't be held hostage to  
them.

That said, I agree that the draft shouldn't preclude other discovery  
mechanisms, as mentioned above.

>> the Link header as defined in draft-notthingham-http-link-header
>> itself is only a way of representing the <link> header in HTML and
>> <atom:link/> header in atom entries outside of the content where it  
>> is
>> not possible because the content-type does not have support.  So it
>> already "just works" by creating a link registry entry, however would
>> be good to explicitly point out that it could be anywhere a link
>> relation is allowed.
>
> That's interesting -- Mark, do you have any input on the topic?

I'm having trouble parsing the above -- is the concern that some  
people might believe that any link in the headers *has* to be mirrored  
in the content? If so, that's the first time I've heard this brought  
up, and it certainly isn't the intent. We can clarify if necessary.

Cheers,


--
Mark Nottingham     http://www.mnot.net/

_______________________________________________
BLISS mailing list
BLISS@ietf.org
https://www.ietf.org/mailman/listinfo/bliss