ietf
[Top] [All Lists]

Re: Last Call: <draft-ietf-6man-rfc4291bis-07.txt> (IP Version 6 Addressing Architecture) to Internet Standard

2017-02-24 01:54:25
Hello David,


Le 24 févr. 2017 à 08:15, David Farmer <farmer(_at_)umn(_dot_)edu> a écrit :



On Thu, Feb 23, 2017 at 9:13 PM, Fernando Gont 
<fgont(_at_)si6networks(_dot_)com <mailto:fgont(_at_)si6networks(_dot_)com>> 
wrote:
I'd remove a few sentences here, as in:

   IPv6 unicast routing is based on prefixes of any valid length up to
   128 [BCP198]. Subnet prefixes of /64 are RECOMMENDED for general
   purpose use, subnet prefixes of /127 are RECOMMENDED for point-
   to-point router links [RFC6164]. The rationale for the 64 bit
   boundary in IPv6 addresses can be found in [RFC7421].

The problem is you have stripped out all the implementation guidance and only 
left operational guidance.  But maybe the the right idea is to separate the 
two, putting the operational guidance in Section 2.4 where we are talking 
about prefixes and the implementation guidance in section 2.4.1 where we are 
talking about IIDs.
2nd Paragraph of 2.4;

   IPv6 unicast routing is based on prefixes of any valid length up to
   and including 128 [BCP198].  However, subnet prefixes of 64 bits in
   length are REQUIRED for use with Stateless Address Autoconfiguration
   (SLAAC)[RFC4862] and are RECOMMENDED for all other general purpose
   use. The rationale for the 64 bit boundary in IPv6 addresses can be 
   found in [RFC7421].

Except RFC4862(SLAAC) does not say anywhere that 64 bits long IIDs are required.
Only mention I find of 64 is given as an example for EUI-64 for ethernet links.


4th paragraph of 2.4.1

   For all unicast addresses, except those that start with the binary
   value 000, support for Interface IDs that are 64 bits long is 
   REQUIRED, support for other Interface IDs lengths is OPTIONAL. The 
   rationale for the 64 bit boundary in IPv6 addresses can be found in
   [RFC7421].

1) The ::/3 rule is blatantly ignored by all implementations that I know of.
I don't see how something that has been ignored for years, and has 
no implementation and deployment experience, could make its way to full 
standard.

2) "support for other Interface IDs lengths is OPTIONAL" -> Wait. What !?
This is not a compromise. You are just relaxing the requirement even more than 
it already is.
This is not what is implemented, nor what is deployed.

- Pierre


This clearly say that implementations that only support 64 bit IID lengths 
are just fine, but also says implementations that allow IID lengths other 
than 64 bits are just fine too.  I think the current and historic text 
actually implies implementations are not to allow other IID lengths, is that 
what we really intended to say?  A lot of implementations seem to allow other 
IID lengths, are they wrong?  I don't think so.

This also gives strong operational guidance that 64 bit length subnet 
prefixes are expected in most situations.  Reinforcing the 64 bit boundary, 
however without outlawing the use of other subnet prefix lengths when 
implemented and they could be useful.  This is done without distracting from 
the 64 bit boundary, by not directly calling attention to RFC6164 or the 
other longer prefix lengths. Since BCP198 and RFC7421 both reference RFC6164 
calling it out here doesn't seem necessary, and would unnecessarily weaken 
the focus on the 64 bit boundary that I'm trying to maintain.

I don't see how this text would require changes in any code, nor does it 
imply other IID lengths are not allowed operationally, again which a lot of 
implementations seem to allow. 

Thanks.
-- 
===============================================
David Farmer               Email:farmer(_at_)umn(_dot_)edu 
<mailto:Email%3Afarmer(_at_)umn(_dot_)edu>
Networking & Telecommunication Services
Office of Information Technology
University of Minnesota   
2218 University Ave SE        Phone: 612-626-0815 <tel:(612)%20626-0815>
Minneapolis, MN 55414-3029   Cell: 612-812-9952 <tel:(612)%20812-9952>
===============================================

<Prev in Thread] Current Thread [Next in Thread>