Hello Charlie :

This is not simple and I hope the list comes in and helps. The reason for 
proposing the text below is to enable future codes to be backward compatible 
with this spec.
As written a non-zero split-code is ignored, and a legacy node can still parse 
the ROVR correctly when a future node uses a non-zero split-code.
If we do not split the code, the legacy node cannot parse the message at all if 
the code is not one of the listed ones, since it cannot fathom the size of the 
ROVR.
Also, if all ROVR sizes are still supported in the future, the addition of a 
new code will in fact cause the addition of as many codes as there are ROVR 
sizes.

All in all I favor the proposed text that splits the ICMP code.

What do others think?

Pascal

From: 6lo <[email protected]> On Behalf Of Charlie Perkins
Sent: lundi 21 mai 2018 18:40
To: [email protected]
Subject: Re: [6lo] Future extensibility for the DAR/DAC


Hello folks,

I think it would be better to avoid subdividing the Code field as shown below.  
It may seem simple, but the effect would to require 16 subCodes for every 
future allocated Code, even if completely unnecessary.  Besides that, there is 
then the complication of additional registries, review procedure, etc., which 
may not be needed for future Codes.

Instead, for the purposes mentioned to enable options, I think it makes a lot 
more sense to just allocate a different Code for each proposed subcase of ROVR 
field length.  As noted below, I think this would mean 4 codes for DAR and 4 
codes for DAC.  That is really pretty straightforward, besides only taking two 
bits instead of four per ICMP type.

Regards,
Charlie P.

On 5/4/2018 8:08 AM, Pascal Thubert (pthubert) wrote:
Dear all :

The problem at hand is that the way draft 19 is formulated, the DAR/DAC 
messages can never have options. This is barring future capabilities, in 
particular using the DAR/DAC over the backbone as discussed at the last IETF - 
I still need ot propose text on that.
To address this issue, I suggest that the initial use of the ICMP code (at some 
point odd values would mean support to this spec) in DAR/DAC message is 
extended so the size of the ROVR field is clearly indicated in a subfield of 
the ICMP code.
The proposed change is as follows:



       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |     Type      |CodePfx|CodeSfx|          Checksum             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Status     |     TID       |     Registration Lifetime     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
     ...          Registration Ownership Verifier                    ...
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                                               |
      +                                                               +
      |                                                               |
      +                       Registered Address                      +
      |                                                               |
      +                                                               +
      |                                                               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 2: Duplicate Address Messages Format

   Modified Message Fields:

   Code:           The ICMP Code as defined in [RFC4443].  With this
                   specification, the ICMP Code for Duplicate Address
                   Messages is split in 2 fields, the Code Prefix and
                   the Code Suffix, each a 4-bits field.  The Code
                   Prefix MUST be set to zero by the sender and MUST be
                   ignored by the receiver.  A non-null value of the
                   Code Suffix indicates support for this specification.
                   It MUST be set to 1 when operating in a backward-
                   compatible mode with a ROVR size of 64 bits.  It MAY
                   be 2, 3 or 4, denoting a ROVR size of 128, 192, and
                   256 bits, respectively.


Also this means a chnage in the IANA section:

9.2.  ICMP Codes

   IANA is requested to create 2 new subregistries of the ICMPv6 "Code"
   Fields registry, which itself is a subregistry of the Internet
   Control Message Protocol version 6 (ICMPv6) Parameters for the ICMP
   codes.  The new subregistries relate to the ICMP type 157, Duplicate
   Address Request (shown in Table 3), and 158, Duplicate Address
   Confirmation (shown in Table 4), respectively.  For those ICMP types,
   the ICMP Code field is split in 2 subfields, the "Code Prefix" and
   the "Code Suffix".  The new subregistries relate to the "Code Suffix"
   portion of the ICMP Code.  The range of "Code Suffix" is 0..15 in all
   cases.  The policy is "IETF Review" or "IESG Approval" [RFC8126] for
   both subregistries.  The new subregistries are initialized as
   follows:


             New Code Suffixes for ICMP types 157 DAR message

   +--------------+---------------------------------------+------------+
   | Code Suffix  | Meaning                               | Reference  |
   +--------------+---------------------------------------+------------+
   | 0            | RFC6775 DAR message                   | RFC 6775   |
   |              |                                       |            |
   | 1            | EDAR message with 64bits-long ROVR    | This RFC   |
   |              | field                                 |            |
   |              |                                       |            |
   | 2            | EDAR message with 128bits-long ROVR   | This RFC   |
   |              | field                                 |            |
   |              |                                       |            |
  | 3            | EDAR message with 192bits-long ROVR   | This RFC   |
   |              | field                                 |            |
   |              |                                       |            |
   | 4            | EDAR message with 256bits-long ROVR   | This RFC   |
   |              | field                                 |            |
   |              |                                       |            |
   | 5...15       | Unassigned                            |            |
   +--------------+---------------------------------------+------------+

              Table 3: New Code Suffixes for the DAR message

             New Code Suffixes for ICMP types 158 DAC message

   +-------------+----------------------------------------+------------+
   | Code Suffix | Meaning                                | Reference  |
   +-------------+----------------------------------------+------------+
   | 0           | RFC6775 DAC message                    | RFC 6775   |
   |             |                                        |            |
   | 1           | EDAC message with 64bits-long ROVR     | This RFC   |
   |             | field                                  |            |
   |             |                                        |            |
   | 2           | EDAC message with 128bits-long ROVR    | This RFC   |
   |             | field                                  |            |
   |             |                                        |            |
   | 3           | EDAC message with 192bits-long ROVR    | This RFC   |
   |             | field                                  |            |
   |             |                                        |            |
   | 4           | EDAC message with 256bits-long ROVR    | This RFC   |
   |             | field                                  |            |
   |             |                                        |            |
   | 5...15      | Unassigned                             |            |
  +-------------+----------------------------------------+------------+

              Table 4: New Code Suffixes for the DAC message


Please let us know if there is an issue with this, cc'ing Adrian since we 
discussed this unusual use of the ICMP Code during his review.

All the best,

Pascal
From: 6lo <[email protected]><mailto:[email protected]> On Behalf Of 
Pascal Thubert (pthubert)
Sent: mercredi 25 avril 2018 11:54
To: [email protected]<mailto:[email protected]>
Subject: [6lo] Future extensibility for the DAR/DAC

Dear all :

As it stands in RFC 6775 update, the fact that the DAR and DAC messages are in 
fact extended DAR and DAC is indicated by the ICMP code of 1.
In that case, the size of the message determines the size of the ROVR field 
that carries the ex-EUI-64 field, now ROVR field, which can be extended up to 
256 bits for use as a cryptographic proof of ownership in AP-ND.
Keeping it that way may be problematic if we want to add future extensions 
(e.g., options at the end of the message) and stay backward compatible.
An alternate way is to block 2 bits of the ICMP code and use the values 0, 1, 
2, and 3 denoting a ROVR size of 64, 128, 192 and 256 bits respectively.

Should we / shouldn't we do that?

Pascal






_______________________________________________

6lo mailing list

[email protected]<mailto:[email protected]>

https://www.ietf.org/mailman/listinfo/6lo

_______________________________________________
6lo mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/6lo

Reply via email to