Re: [nfsv4] Last call for NSDB Protocol for Federated Filesystems (Oct 4 - Oct 22nd)

Chuck Lever <chuck.lever@oracle.com> Thu, 04 November 2010 13:59 UTC

Return-Path: <chuck.lever@oracle.com>
X-Original-To: nfsv4@core3.amsl.com
Delivered-To: nfsv4@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 8DE6C3A68FE for <nfsv4@core3.amsl.com>; Thu, 4 Nov 2010 06:59:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.598
X-Spam-Level:
X-Spam-Status: No, score=-6.598 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, UNPARSEABLE_RELAY=0.001]
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 t5cYuJVTydRF for <nfsv4@core3.amsl.com>; Thu, 4 Nov 2010 06:59:00 -0700 (PDT)
Received: from rcsinet10.oracle.com (rcsinet10.oracle.com [148.87.113.121]) by core3.amsl.com (Postfix) with ESMTP id 509F63A68B5 for <nfsv4@ietf.org>; Thu, 4 Nov 2010 06:59:00 -0700 (PDT)
Received: from acsinet15.oracle.com (acsinet15.oracle.com [141.146.126.227]) by rcsinet10.oracle.com (Switch-3.4.2/Switch-3.4.2) with ESMTP id oA4Dx6As018466 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 4 Nov 2010 13:59:08 GMT
Received: from acsmt354.oracle.com (acsmt354.oracle.com [141.146.40.154]) by acsinet15.oracle.com (Switch-3.4.2/Switch-3.4.1) with ESMTP id oA4Dx5If015002; Thu, 4 Nov 2010 13:59:05 GMT
Received: from abhmt013.oracle.com by acsmt353.oracle.com with ESMTP id 748411911288879070; Thu, 04 Nov 2010 06:57:50 -0700
Received: from moret.1015granger.net (/99.26.161.222) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Thu, 04 Nov 2010 06:57:49 -0700
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset="us-ascii"
From: Chuck Lever <chuck.lever@oracle.com>
In-Reply-To: <alpine.LFD.2.00.1010221251120.4707@jlentini-linux.nane.netapp.com>
Date: Thu, 04 Nov 2010 09:57:48 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <A8AE7495-87AF-447B-AB3B-BB18CB9B643C@oracle.com>
References: <E043D9D8EE3B5743B8B174A814FD584F0A6BFD9C@TK5EX14MBXC126.redmond.corp.microsoft.com> <alpine.LFD.2.00.1010221251120.4707@jlentini-linux.nane.netapp.com>
To: James Lentini <jlentini@netapp.com>
X-Mailer: Apple Mail (2.1081)
Cc: "nfsv4@ietf.org" <nfsv4@ietf.org>
Subject: Re: [nfsv4] Last call for NSDB Protocol for Federated Filesystems (Oct 4 - Oct 22nd)
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/nfsv4>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 04 Nov 2010 13:59:01 -0000

On Oct 22, 2010, at 1:31 PM, James Lentini wrote:

> 
> 
> On Mon, 4 Oct 2010, Spencer Shepler wrote:
> 
>> 
>> Last call for the following document starts today and ends on October 22nd
>> 
>> NSDB Protocol for Federated Filesystems
>> draft-ietf-nfsv4-federated-fs-protocol-09
>> 
>> Comments on the document, other than the editorial, should be
>> directed to the NFSv4 WG alias.   Document links are as follows:
>> 
>> html: http://tools.ietf.org/html/draft-ietf-nfsv4-federated-fs-protocol-09
>> txt: http://tools.ietf.org/id/draft-ietf-nfsv4-federated-fs-protocol-09.txt
> 
> There has been some discussion regarding the fedfsAnnotation LDAP 
> attribute defined in Section 4.2.1.12 that I wanted to record as part 
> of this thread.
> 
> Chuck Lever discovered some ambiguities in the description of this 
> attribute's format. We discussed those issues during the FedFS concall 
> on 10/14. A revised description that attempts to eliminate those 
> ambiguities is included below.
> 
> In the process of reviewing the revised text, Chuck, my co-authors, 
> and I have have been considering the utility of including this 
> annotation mechanism. Before LDAP was chosen for the NSDB protocol, 
> this attribute was created to allow private schema extensions. Given 
> our use of LDAP, this attribute may be obsolete.
> 
> Using LDAP there are other, arguably more natural, ways to allow for 
> schema extensions. For example, LDAP allows an entry's schema 
> definition to be extended by adding additional object types to the 
> entry. In this approach, the KEYs and VALUEs defined in Section 
> 4.2.1.12 map to LDAP attribute types and values respectively. This 
> approach would allow implementers to define their own annotation 
> attributes, and would allow for standardizing such attributes if there 
> was interest.
> 
> Are there objections to removing the fedfsAnnotation attribute from 
> the schema and recommending that schema extensions be handled as 
> described above?
> 
> -james
> 
> Revised text for Section 4.2.1.12 
> (if fedfsAnnotation is retained):
> ------------------------------------------
> 
> 4.2.1.12. fedfsAnnotation
> 
> 
>   A fedfsAnnotation contains an object annotation formatted as a 
>   key/value pair.
> 
>   This attribute is multi-valued; an object type that permits
>   annotations may have any number of annotations per instance.
> 
>   A fedfsAnnotation attribute is a human-readable UTF-8 string.
>   The value MUST NOT contain a non-terminal NUL character and

Rob pointed out to me that UTF-8 strings by definition may not have a non-terminal NUL character, so the above MUST NOT text is not necessary.

>   MUST be formatted according to the following ABNF [RFC 5234] rules:
> 
>   ANNOTATION = KEY EQUALS VALUE
>   KEY        = ITEM
>   VALUE      = ITEM
>   ITEM       = BLANK DQUOTE STR DQUOTE BLANK
>   BLANK      = 0*EMPTY
>   EMPTY      = SPACE / HTAB
>   HTAB       = %x09 ; horizontal tab
>   STR        = 0*UTF8
> 
>   The DQUOTE, EQUALS, UTF8, and SPACE rules are defined in [RFC4512].
> 
>   The following escape sequences are allowed:
> 
>                     +-----------------+-------------+
>                     | escape sequence | replacement |
>                     +-----------------+-------------+
>                     |        \\       |      \      |
>                     |        \"       |      "      |
>                     +-----------------+-------------+
> 
>   A fedfsAnnotation value SHOULD be processed as follows:
> 
>   1. Scan through the attribute value and replace the above escape 
>      sequences.
>   2. Parse the results of the previous step according to the 
>      ANNOTATION rule.
> 
>   A fedfsAnnotation attribute that does not adhere to this format
>   SHOULD be ignored.
> 
>   The following are examples of valid fedfsAnnotation attributes:
> 
>            "key1" = "foo"
>            "another key"=    "x=3"
>            "key-2" = "A string with \" and \\ characters."
>            "key_3" = "Backslash before final quote: \\" 
> 
>   which correspond to the following key/value pairs:
> 
>            +-------------+-----------------------------------+
>            |     key     |               value               |
>            +-------------+-----------------------------------+
>            |     key1    |                foo                |
>            | another key |                x=3                |
>            |    key-2    | A string with " and \ characters. |
>            |    key_3    | Backslash before final quote: \   |
>            +-------------+-----------------------------------+
> 
>   <CODE BEGINS>
> 
>           ///
>           /// attributetype (
>           ///     1.3.6.1.4.1.31103.1.12 NAME 'fedfsAnnotation'
>           ///     DESC 'Annotation of an object'
>           ///     SUP name
>           ///     )
>           ///
> 
>   <CODE ENDS>
> _______________________________________________
> nfsv4 mailing list
> nfsv4@ietf.org
> https://www.ietf.org/mailman/listinfo/nfsv4

-- 
Chuck Lever
chuck[dot]lever[at]oracle[dot]com