[sip-http-events] pre-submission check for draft-roach-sip-http-subscribe
"Scott Lawrence" <scott.lawrence@nortel.com> Thu, 17 December 2009 17:55 UTC
Return-Path: <scott.lawrence@nortel.com>
X-Original-To: sip-http-events@core3.amsl.com
Delivered-To: sip-http-events@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 8C6523A6811 for <sip-http-events@core3.amsl.com>; Thu, 17 Dec 2009 09:55:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.171
X-Spam-Level:
X-Spam-Status: No, score=-6.171 tagged_above=-999 required=5 tests=[AWL=0.428, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
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 Lhe4TjTnsqjm for <sip-http-events@core3.amsl.com>; Thu, 17 Dec 2009 09:55:13 -0800 (PST)
Received: from zrtps0kp.nortel.com (zrtps0kp.nortel.com [47.140.192.56]) by core3.amsl.com (Postfix) with ESMTP id 44B723A69B2 for <sip-http-events@ietf.org>; Thu, 17 Dec 2009 09:55:13 -0800 (PST)
Received: from zrtphxs1.corp.nortel.com (zrtphxs1.corp.nortel.com [47.140.202.46]) by zrtps0kp.nortel.com (Switch-2.2.6/Switch-2.2.0) with ESMTP id nBHHsqn29818 for <sip-http-events@ietf.org>; Thu, 17 Dec 2009 17:54:53 GMT
Received: from [127.0.0.1] ([47.17.25.99]) by zrtphxs1.corp.nortel.com with Microsoft SMTPSVC(6.0.3790.3959); Thu, 17 Dec 2009 12:54:37 -0500
From: Scott Lawrence <scott.lawrence@nortel.com>
To: SIP HTTP Subscription Package <sip-http-events@ietf.org>
Content-Type: text/plain
Organization: Nortel Networks
Date: Thu, 17 Dec 2009 12:54:36 -0500
Message-Id: <1261072476.30342.435.camel@scott>
Mime-Version: 1.0
X-Mailer: Evolution 2.24.5 (2.24.5-2.fc10)
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 17 Dec 2009 17:54:37.0704 (UTC) FILETIME=[FFF09880:01CA7F41]
Subject: [sip-http-events] pre-submission check for draft-roach-sip-http-subscribe
X-BeenThere: sip-http-events@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: SIP HTTP Events <sip-http-events.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/sip-http-events>, <mailto:sip-http-events-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sip-http-events>
List-Post: <mailto:sip-http-events@ietf.org>
List-Help: <mailto:sip-http-events-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sip-http-events>, <mailto:sip-http-events-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 17 Dec 2009 17:55:14 -0000
I've been asked to serve as Document Shepherd for the submission of
draft-roach-sip-http-subscribe. The following are review comments based
on the checklist for the proto writeup...
The draft doesn't specify an intended status. Add category="std" to
the attributes of the <rfc> element in your xml input.
The draft uses ABNF (only once, but...), so it needs a normative
reference to RFC 5234.
RFC 2119 keyword usage.
You use the keywords uncapitalized in a few places; the I-D nits
checker complains about the fact that you didn't use the
standard citation paragraph, substituting one that specifies that
only capitalized usages of the keywords have the RFC 2119 meanings.
Other than a couple of obviously non-normative usages in the
introduction and one idiomatic usage in 4.4, the only uncapitalized
uses of the keywords are:
Section 3.0, paragraph 4:
Because a single resource may have the ability to be monitored
via
multiple protocols, it is perfectly legal for an HTTP response to
contain multiple link relationships with relations that allow for
monitoring of changes. Implementors are cautioned to process all
link relations to locate a one that corresponds with their
preferred
change monitoring protocol.
I suggest rephrasing that - it might be helpful to express it in
terms of the monitoring services rather than the resource. It
would also be appropriate to provide a reference to the
authoritative definition of the Link header here to substantiate
the point. I suggest something like:
The service that provides HTTP access to a resource might
provide monitoring of that resource using multiple protocols, so
it is perfectly legal for an HTTP response to contain multiple
link relationships with relations that allow for monitoring of
changes (see [9]). Implementors are cautioned to process all
link relations to locate a one that corresponds with their
preferred change monitoring protocol.
Section 3.1 says:
If the server supports both SIP and SIPS access, it may
return link relations for both kinds of access.
that 'may' should be 'MAY'.
Section 3.2, paragraph 3:
The monitor-group URI corresponds to an RLS service associated
with
the HTTP server. This RLS service MUST support subscriptions to
request-contained resource lists, as defined in RFC 5367 [8].
This
RLS service is not, however, required to accept URI lists that
include monitoring URIs that are not associated with resources
served
by its related HTTP server. This allows RLS functionality to be
implemented without requiring back-end subscriptions.
The exclusion in this paragraph is important enough that it should
be in the capitalized form. I suggest:
The monitor-group URI corresponds to an RLS service associated
with
the HTTP server. This RLS service MUST support subscriptions to
request-contained resource lists as defined in RFC 5367 [8]; the
RLS service is NOT REQUIRED to accept URI lists that
include monitoring URIs that are not associated with resources
served
by its related HTTP server. This allows RLS functionality to be
implemented without requiring back-end subscriptions.
(you might also want to make that "MAY, but is NOT REQUIRED to")
Section 3.2, paragraph 5 begins:
If a client wishes to subscribe to the state of multiple HTTP
resources, and has received monitor-group URIs for each of them,
it
may use the monitor-group URIs to subscribe to multiple resources
in
the same subscription.
the 'may' here is easily replaced by 'can'.
Section 4.3 says:
Future extensions may define filter criteria to be sent in the
SUBSCRIBE message bodies.
Any IETF document might be extended or changed by future versions
- it doesn't really need to be said... I'd just remove the
sentence.
Section 4.4, last paragraph:
This local policy may choose to take various aspects of the
monitored
resource into account, such as its age and presumed period of
validity.
the 'may' here could either be capitalized or replaced with
'might'.
Section 4.7 paragraph 1:
NOTIFY messages should be generated whenever the underlying
resource
indicated by the corresponding HTTP URL has been modified.
that 'should' either should be capitalized or (better, imho) made
'MUST' (that's kind of the point of the whole thing).
Section 4.7 paragraph 2:
In the case that the notifier has insufficient information to
return
any useful information about the underlying HTTP resource, it may
return a message body that is zero bytes long.
that 'may' is clearly normative and should be capitalized.
Section 4.8 begins:
Upon receipt of a NOTIFY message, the subscriber should use any
information in the message/http to update its view of the
underlying
HTTP resource.
again, a simple rewording avoids the problem:
Upon receipt of a NOTIFY message, the subscriber applies any
information in the message/http to update its view of the
underlying
HTTP resource.
Secion 4.10 uses 'may' twice in ways that could be replaced by
'might'.
Section 5 uses 'It should be noted that', which could be changed to
'Note that'.
Section 6 (Security Considerations) ends with:
[...] If the HTTP resource is restricted
using some form of access control, special care must be taken to
ensure that the SIP means of subscribing to the resource state is
also restricted in the same way. Otherwise, unauthorized users
may
learn information that was intended to be confidential (including
the
actual resource value, in some cases).
The 'must' above should probably be capitalized.
The 'may' can be avoided by rephrasing:
Failure to ensure access control could expose information that
was intended to be confidential (including the actual resource
value, in some cases) to unauthrorized users.
One other technical comment that I didn't notice on my last review of
05... in section 4.4 you say:
Keep in mind that the goal behind selecting
subscription durations is to balance server load against time to
recover in the case of a failure.
it might be better to specify the nature of the failure -
specifically, short subscriptions guard against the loss of
subscription server state.
- [sip-http-events] pre-submission check for draft-… Scott Lawrence
- Re: [sip-http-events] pre-submission check for dr… Scott Lawrence
- Re: [sip-http-events] pre-submission check for dr… Adam Roach