Re: [dhcwg] Comments on draft-ietf-dhc-dhcpv6-opt-netboot-05

Damien Neil <Damien.Neil@nominum.com> Tue, 06 October 2009 20:02 UTC

Return-Path: <Damien.Neil@nominum.com>
X-Original-To: dhcwg@core3.amsl.com
Delivered-To: dhcwg@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id BAC4B3A68FF for <dhcwg@core3.amsl.com>; Tue, 6 Oct 2009 13:02:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.599
X-Spam-Level:
X-Spam-Status: No, score=-6.599 tagged_above=-999 required=5 tests=[AWL=0.000, 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 aGqBn3i38lt0 for <dhcwg@core3.amsl.com>; Tue, 6 Oct 2009 13:02:10 -0700 (PDT)
Received: from exprod7og123.obsmtp.com (exprod7og123.obsmtp.com [64.18.2.24]) by core3.amsl.com (Postfix) with ESMTP id E210B3A67D8 for <dhcwg@ietf.org>; Tue, 6 Oct 2009 13:02:08 -0700 (PDT)
Received: from source ([64.89.228.228]) (using TLSv1) by exprod7ob123.postini.com ([64.18.6.12]) with SMTP ID DSNKSsuioog/zeIqDc/DN2vwvRc1densjsFb@postini.com; Tue, 06 Oct 2009 13:03:48 PDT
Received: from [64.89.225.4] (unknown [64.89.225.4]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (Client did not present a certificate) by shell-ng.nominum.com (Postfix) with ESMTP id CB4A61A8206; Tue, 6 Oct 2009 13:03:45 -0700 (PDT) (envelope-from neild@nominum.com)
Mime-Version: 1.0 (Apple Message framework v1076)
Content-Type: text/plain; charset="us-ascii"; format="flowed"; delsp="yes"
From: Damien Neil <Damien.Neil@nominum.com>
In-Reply-To: <200910061918.n96JI5Nv005405@cichlid.raleigh.ibm.com>
Date: Tue, 06 Oct 2009 13:03:45 -0700
Content-Transfer-Encoding: 7bit
Message-Id: <42BCDBAE-673E-44FA-B44C-42A8149D6838@nominum.com>
References: <994ABFCB-3ABF-484C-9855-1EEACC663CF4@nominum.com> <200910061918.n96JI5Nv005405@cichlid.raleigh.ibm.com>
To: Thomas Narten <narten@us.ibm.com>
X-Mailer: Apple Mail (2.1076)
Cc: DHC-WG WG <dhcwg@ietf.org>, Damien Neil <Damien.Neil@nominum.com>
Subject: Re: [dhcwg] Comments on draft-ietf-dhc-dhcpv6-opt-netboot-05
X-BeenThere: dhcwg@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <dhcwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/dhcwg>, <mailto:dhcwg-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/dhcwg>
List-Post: <mailto:dhcwg@ietf.org>
List-Help: <mailto:dhcwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dhcwg>, <mailto:dhcwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 06 Oct 2009 20:02:10 -0000

On Oct 6, 2009, at 12:18 PM, Thomas Narten wrote:
> Would a resonable criteria be that multiple options are OK if you can
> process them in whatever order you find them easily, without having to
> go through the entire message and find other related options that must
> be processed together?

I think that ordering of options should not be significant, although  
I'm not convinced that non-significant ordering is sufficient reason  
to use multiple instances of an option.

One of my concerns is the complexity of presenting option data to a  
user--to a server administrator specifying what to send to a client,  
or to a network configuration script executed by a client.

With DHCPv4 single-instance options, you can say "the value of option  
<foo> is <bar>".  For example, in ISC dhcpd:

   option domain-name-servers = 10.0.0.1, 10.0.0.2;

When you introduce multiple-instance options, this becomes more  
complicated.  There are various means of presenting this to the user,  
but I don't find any of them truly satisfactory.

I note that ISC dhcpd doesn't appear to support defining multiple  
instances of an option at this time.  The dhcp-options(5) manpage  
states, "normally [multiply-instanced options] are options which are  
digested by the DHCP protocol software, and not by users or  
applications."  (If I'm wrong about this, and such support does exist  
in ISC dhcpd, my apologies.)

I'm not absolutely opposed to multiply-instanced options, but I do  
think there's more implementation complexity to them than may first  
meet the eye.  The existing multiple-instanced IA* options don't  
trigger that complexity as much, since they don't need to be directly  
exposed to users.

I'd be very interested to hear what other implementors of generic  
servers or clients think; it's possible that my view is an outlier, in  
which case I withdraw the objection.

               - Damien