Re: [dhcwg] WGLC on draft-ietf-dhc-mac-assign-01 and draft-ietf-dhc-slap-quadrant-01 - respond by Nov. 17

ianfarrer@gmx.com Thu, 05 March 2020 11:39 UTC

Return-Path: <ianfarrer@gmx.com>
X-Original-To: dhcwg@ietfa.amsl.com
Delivered-To: dhcwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 868EA3A12FF for <dhcwg@ietfa.amsl.com>; Thu, 5 Mar 2020 03:39:00 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=gmx.net
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id EwYL_Z8dFhse for <dhcwg@ietfa.amsl.com>; Thu, 5 Mar 2020 03:38:57 -0800 (PST)
Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9E6D33A12DF for <dhcwg@ietf.org>; Thu, 5 Mar 2020 03:38:56 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1583408328; bh=2cnEawpklZi8nTaxwlYEsoEmufAqukx1DwEBvLCWsHE=; h=X-UI-Sender-Class:From:Subject:Date:In-Reply-To:Cc:To:References; b=Sh8jC1yRu0SwG/zBAk5YGL21Sw49YP27Zr61gUdqwIHe1y+coLgqEwl38HDWdrrk3 qVtlsQtgCxVxf9SBnGls+69PPnJYF6DdiMxc9YKMUXIe4xicCjrNyoa2/uZYJw0vh3 NBad0S4yPMh3G7mqXAo9ykBo88nvyQaAGn+ac+v8=
X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c
Received: from ians-mbp.fritz.box ([87.78.230.251]) by mail.gmx.com (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1M5wLZ-1jHGxX1ORv-007TfG; Thu, 05 Mar 2020 12:38:48 +0100
From: ianfarrer@gmx.com
Message-Id: <D1A4475A-E548-49CC-B8E8-1B5FDAD9072B@gmx.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_2AD6FEF1-2750-4420-A2AD-6BFA69320DB5"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\))
Date: Thu, 05 Mar 2020 12:38:46 +0100
In-Reply-To: <CALypLp-mcLbGVPd6b1Nw8qMeYX6_pDYQu7e72b9hGrk52TRSig@mail.gmail.com>
Cc: dhcwg <dhcwg@ietf.org>
To: CARLOS JESUS BERNARDOS CANO <cjbc@it.uc3m.es>, Tomek Mrugalski <tomasz.mrugalski@gmail.com>, "Bernie Volz (volz)" <volz@cisco.com>
References: <c9976d83-7243-cf44-a9c6-ff858afb5247@gmail.com> <CD79D9E3-4B44-4D9D-85A6-849EC540DCA4@gmx.com> <CALypLp-hLE8g_z8fzxU-q-xoN1ogqo9Tqw1mHJUs=++DcXreig@mail.gmail.com> <A6AFDB93-2C79-4C54-AF84-B5F1CB55D620@gmx.com> <CALypLp-mcLbGVPd6b1Nw8qMeYX6_pDYQu7e72b9hGrk52TRSig@mail.gmail.com>
X-Mailer: Apple Mail (2.3445.104.11)
X-Provags-ID: V03:K1:mNoUo9W2wVcgpJRoqAlK/J66QnA2o98Dr52NKMW7Av2mkGdsYhb TTVDUKmwHM7201Mlff2K9khLf27eZsho4Zkd7Ak6plmBuWLggnBFbyC05Kl1/cRkgoe6V9x LJCgBID/FoIaMKVzwSk3Iaog7TMzufqlt9Bddp3yUJHi/T7GXvz0N9tBZqdnKg7QlzgImeI urd1dZ4DhDpi6lopzKcgQ==
X-UI-Out-Filterresults: notjunk:1;V03:K0:PNOfWrgm9tA=:1h8RmgCsUAKGMPkOcqSWqp KpFyzxELoTAw2H3EM/56o6I04ggnt6pYbJyzoRbnPs5qHHBbs9in6cb/agVaLrkuUTsQyPQ3e prjfpuzljPIkygA4X9vSJ2YTuY75BzffWVgMRou6cq6ZlWSg6+Xbv6mabL22nuj1OCDV6pi0L CbmZBVo77EadobsFLW5g2wwJj+uFoTJOH19fZgxyCixbti7xxJ7ReftLkcoI4o15HKfLBb5yX BnZ6Ce9vUjrhZhEAvdo4aVr+onkGRnEKAvWe/19oyeijFLhKIbKn+tV66JT2wDZsqTfP/g6Ck k3cSihAtpwuyVwfinl38loENakMGJ023cN6kDZqBaGt4GLzapjiAr71/dmiVDiTl0LCbiDc0d e1OqlwO/03Ei7y3UlNoBlt2xcSeS80MuOdoSPU+Xrkq6jh5vRN4DLlPy0fuc9NvxXmwGfIS28 EU9srqypqVbhIs1uRlvwcSMP3QstayvGMYimV8MSChZur93zhIcpz7avWUbtC6oRn+qQPjNn2 rPCqxqHHylLJ0+RoltVyQkoL/kiZyQ6cYvPdx/Su2fDMLAK8hosHhxip5hKgbdrmjzS5mDtjG Ire5zjGhnuqic/xt352uGa7ZSm8DU9mDrldt5Ill6BXfb5TVPlcdjcZgFEtLJwpi9wkguwMHy Gx4PWWVfWygzcskmGh4RQTBufDlCh1Fjqu9JD3cjIdp4ivI60M2p4M6818CYbDCR4QBeF+Vw0 iRx4RHVAEe163UJiwqINQ12yyr0tZqS4Zp/GqChzfqvFUtbJ9lIKOovFAVcD2Tc1s/BMhpNyI UAEQTeEBIYfMj9iOLzY9sgHUMrXeOu27rR1nFmnUUi4JIF6O0xvmbK3MHBqjzpfBk2LBggaej hVoJ7t3fWh0sAP3a03Fc0UJzfI5LiThYbT368KmIQTuDC5byJXj1Dy98Z0kIdYgAzlWjYNHrN /duxil871djZZ2pk1B/aD4BZ4sOXs5/JMBCuC5r89c3qwaxWr+DEzAcjBJ3TSGWwJno4eQ1/M /QaGawWX8pUb9z05WWJGKtNllwiosjSwMEjexqQKwBXjthFOmwlMtsZcPGFtOo9nwrxX5Bqet qWpuW4CCuDPLnBlFfIjqMHzzHtDv4R8nV+t82n+K3G92LM/q34X/eDJQ2OXeES6FyS78jS0jH CVwepuuvK2V0nVmqIJdBoslBoRjbD6zL9idN+BBWxtbfpllqa+mfZAyeABDLDB3CIaFg24ave Fdm7UpI8X462x4FS5
Archived-At: <https://mailarchive.ietf.org/arch/msg/dhcwg/3sis0KQpN_dcAV-oT--ZBbgM8ac>
Subject: Re: [dhcwg] WGLC on draft-ietf-dhc-mac-assign-01 and draft-ietf-dhc-slap-quadrant-01 - respond by Nov. 17
X-BeenThere: dhcwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <dhcwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dhcwg>, <mailto:dhcwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/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: Thu, 05 Mar 2020 11:39:01 -0000

Hi Carlos / Bernie / Tomek,

@Bernie / Tomek - As there are defined values for the different SLAP Quadrant Identifiers, do you see the need to create an IANA registry for these values? We’ve done similar things in the past, e.g. RFC8026.


@Carlos,
Thanks for the update. There’s a few new comments based on the current version. I’ve also responded inline to the existing comments and deleted the ones that are now closed.

Best regards,
Ian


-----

Abstract.

Could you add this sentence to the end:

"A new DHCPv6 option (OPTION_SLAP_QUAD, or QUAD) is defined for this purpose."

as the term QUAD is used to refer to the new option throughout, but it’s not defined anywhere.

------


Section 4.2


Step 2.

Spaces missing in the following text:
Note that if a client sends multiple
        instances of the IA_LLoption in the same message, the DHCP relay
        MUST ONLY add a singleinstance of the QUAD option.  The server
        SHOULD apply thecontents of the relay's supplied QUAD option for
        all of theclient's IA_LLs, unless configured to do otherwise.

-
Also (this mistake was from my proposed text. Apologies:-):
s/MUST ONLY/MUST only/

-
This text is in step 2, but as it describes how the server behaves, it really
belongs in Step 3:

"The server  SHOULD apply thecontents of the relay's supplied QUAD option for
        all of theclient's IA_LLs, unless configured to do otherwise."

I suggest that it replaces the last sentence in step 3 (starting ’Note that
if the client is sending multiple…’ as this client related text isn’t really relevant
in the relay section


——

Step 3. 
s/The server, upon receiving a IA_LL option/The server, upon receiving an IA_LL option/
-

s/then the addresses being offered SHOULD belong to the requested quadrant(s)./
then the addresses being offered MUST belong to the requested quadrant(s)./

Please change in line with Section 4.1 Step 2 ‘the addresses being offered MUST belong to the requested quadrant(s)’

-----

For the following text:

   If a client provides a QUAD IA_LL-option and the relay agent is still
   configured to add its preference value, the server SHOULD follow what
   is administratively configured in a QUAD_RELAY_PREF internal
   variable.  If the value is set to 1, then the realy provided
   preference overrides what the client has provided, while if the
   variable is set to 0, then the client's provided preference is
   considered.  It is RECOMMENDED that QUAD_RELAY_PREF is set to 1 at
   the server.

I don’t agree with the recommendation here, as in section 4.2 the text states that the
client SHOULD NOT configure a prefix from an unrequested quadrant. The ‘1' recommendation
says ‘relay knows best’, but the client’s actually got the veto on whether it will configure it
or not. The client clearly knows best here!

Also, the text using QUAD_RELAY_PREF and ‘value is set to 1’ etc. seems overly prescriptive
for an implementation. It would be better to use more general terms e.g. ‘administratively
configured to evaluate the client’s supplied instance of OPTION_SLAP_QUAD and ignore
the relay supplied instance, or vice versa’.

--


Section 5
s/If a same preference value/If the same preference value/

-----

"A quadrant value MUST only appear once at most in the option. If an
   option includes more than one occurence of the same quadrant value,”

This text is a little ambiguous (on first read, I thought that the value was for the preference. I
suggest the following re-word (‘occurence’ typo is also fixed):

“A quadrant identifier value MUST only appear at most once in the option. If an
   option includes more than one occurrence of the same quadrant identifier,”


——

(if the server can assign addresses from all of some of the quadrants
   with the same assigned preference).

I guess that the intended text here is: 

(if the server can assign addresses from all or some of the quadrants
   with the same assigned preference).



-----

Section 5.1
The text:
   A quadrant value MUST only appear once at most in the option.  If an
   option includes more than one occurence of the same quadrant value,
   only the first occurence is processed and the rest MUST be ignored by
   the server.

and 
   Client and relay agent MUST NOT place the same quadrant value into
   the option more than once; however servers should be capable of
   dealing with this by using the more preferred instance (as it
   requires no special handling).

both deal with the same case, but describe different behaviour for the server. I suggest
one of the two paragraphs is deleted.
----



> On 28. Feb 2020, at 00:32, CARLOS JESUS BERNARDOS CANO <cjbc@it.uc3m.es> wrote:
> 
> Hi Ian,
> 
> Thanks a lot for your comments.
> 
> Please see inline below.
> 
> 
> On Tue, Jan 14, 2020 at 12:22 PM <ianfarrer@gmx.com <mailto:ianfarrer@gmx.com>> wrote:
> Hi Carlos,
> 
> Thanks for the update. I’ve got a few more comments on the current version, in addition to Bernie's.
> 
> Thanks and best regards,
> Ian 
> 
> 
> 
> Section 4.1 Step 2:
> 
> "If the server supports the new QUAD IA-LL-option, and manages
> a block of addresses belonging to the requested quadrant, the
> addresses being offered SHOULD belong to the requested
> quadrant.  If the server does not have addresses from the
> requested quadrant, it MUST return the IA_LL option
> containing a Status Code option with status set to NoQuadAvail (IANA-2).”
> 
> 1, This should describe the process of checking the QUAD option’s 
> priorities to find the highest priority quadrant with an available address.

[if - The text still doesn’t describe how the server parses the client’s request. Can I suggest
the. following text change:

old:
The server, upon receiving a IA_LL option, inspects its content
       and may offer an address or addresses for each LLADDR option
       according to its policy. The server sends back an Advertise
       message ...

new:
The server, upon receiving a IA_LL option, inspects its contents. For each of the entries in OPTION_SLAP_QUAD, in order of the preference field (highest to lowest), the server checks if it has a configured MAC address pool matching the requested quadrant identifier, and an available range of addresses of the requested size. If suitable addresses are found, The server sends back an Advertise message…. ]

> 
> ---
> 
> Section 4.1 Step3. 
> 1, Does the client perform any validation that the received MAC address comes from one of 
> the requested quadrants? If the address doesn’t, what does the client do? I think it would be worth having
> some text on how the client is expected to behave in this case. This is especially important
> in the case of the relay adding the option, as if the quadrant the relay prefers is one that the
> client will not configure, then there’s a risk of breaking things.
> 
> [Carlos] Again, a very good point, thanks. I've added some text at the end of Sections 4.1 and 4.2.


[if - A question that arises from the above is what the client should then do with any other addressing information that is has been received in the DHCPv6 reply (i.e. an address allocation for a requested IA_NA). Should the IA_NA be used with the existing (initial, temporary) MAC address, or should it not be configured and DHCP retried until a MAC address from a requested quadrant is received (and a new IA_NA allocation with it?]

> 
>>  
>> ------
>> 
>> Section 5.1
>> 
>> The structure of the option seems needlessly complex and introduces problems/exceptions that currently aren’t discussed, but could be 
>> avoided. i.e. what happens if a quadrant id appears more than once? What if two id’s have the same preference values?
>> 
>> Couldn’t a simple, ordered list be used here? This would be processed in order (first to last) until a match is found. RFC8026 provides
>> an example of this.
>> 
>> [CB] Since not all the quadrants might appear in the option, we believe it's better to keep the current format, but we agree that we have to add text to discuss how different cases should be addressed, and which ones should be avoided. I've added some text to clarify that part.
> 
> [if - I’m with Bernie on this. It would be much simpler. Using an ordered list format does not mean that every value has to appear in it. ]
> 
> [Carlos] I still resist to change it. One more comment about changing it and I'll do it ;)

[if - The only case that I can think of that requires having the id/priority tuple is the case whereby a client really has no preference between two or three IDs and so the server can decide. No preference between all 4 types would be the same as not including the option. Is this a case that you can see arising? If so, it might be worth having some text describing the case as the question may well get raised again in later review stages.] 

>  
> 
> 
>>  
>> ———
>> 
>> I’m not sure if a new IANA registry of the valid values for the 'quadrant-n’ field is necessary. I’d appreciate the Chairs input on this.
>> 
>> [CB] I'll wait for Chairs' advise on this.
> 
> [if - I wonder if a point
> 
> [Carlos] ??

[if - I’ve put the question at the top of the email so hopefully it doesn’t get missed]

>> 
>> ----
>> 
>> There also needs to be a definition for the relay function, as it needs to be updated for
>> the Quad option as well.
>> 
>> [CB] I've added it. Thanks.
> 
> [if - One question about the wording here - does the relay need to support IA_LL, or only QUAD? I don’t see
> any requirement for the relay to look for instances of IA_LL in the client’s messages, and the relay doesn’t 
> create them itself.)

[if. - I didn’t see an answer for this. Also, the relay definition doesn’t state that the relay (may) implement OPTION_SLAP_QUAD.]

>> 
>> ——
>> 
>> Figure 4 seem to show that the relay adds the Quad option into the client's SOLICIT - i.e. alters the contents of the client’s
>> message.
>> 
>> This is not described by the body text, but the diagram needs to be fixed to avoid confusion here.
>> 
>> [CB] I'm not sure I follow this. The next says that "The relay, based on local knowledge and policies, includes in the Relay-Forw message the QUAD option with the preferred quadrant.", so it is described in the text, or am I missing something?
> 
> 
> [if - I should have explained this better. Figure 4 shows the following:
> 
> 2. Relay-forward
> (Solicit(IA_LL),QUAD)
> 
> The parentheses seem to indicate that QUAD is being inserted either into the client’s solicit message, or the relay_msg). The following format shows the encapsulations better:
> 
> Relay-forward
> ((RELAY_MSG(SOLICIT(IA_LL)),QUAD))
> ]
> 
> [Carlos] I still don't see this point. Current text says "Relay-forward(Solicit(IA_LL),QUAD)". For me this does not imply that the relay add the QUAD option in the client's solicit. In Figure 3, where we describe the client behavior adding the QUAD option uses "Solicit(IA_LL(QUAD))". For me it's clear the difference, but maybe I'm missing something.

[OK, let’s leave it as is]

> 
> Thanks a lot!
> 
> Carlos
>> 
>> dhcwg@ietf.org <mailto:dhcwg@ietf.org>
>> https://www.ietf.org/mailman/listinfo/dhcwg <https://www.ietf.org/mailman/listinfo/dhcwg>