classful addressing considered harmful [was Re: Closure?]

Gilbert Martin @ Learning Solutions Gilbert.Martin at za.didata.com
Fri Feb 9 00:35:50 EST 2001


I think none of us are articulate at any stage... Lets see if ten or so
years if this gives any issues and well if it does make it the next
generations problem...

-----Original Message-----
From: Bob Hinden [mailto:hinden at iprg.nokia.com]
Sent: Friday, February 09, 2001 12:07 AM
To: Randy Bush
Cc: Thomas Narten; v6wg at arin.net
Subject: Re: classful addressing considered harmful [was Re: Closure?]


Randy,

Please excuse the roughness of my reply.  I am not that articulate even 
when I am not jet lagged :-)

I think there is still much confusion.

The major problem with IPv4's class-full addressing was that the boundaries 
in the address were built into implementations and into routing 
protocols.  The network part of the address was derived by looking at the 
bits in the address.  This made it impossible to add new prefix lengths 
without changing all of the implementations and routing protocols.  We even 
had routing protocols that only carried the bits of the network part (i.e., 
not the full address).  Even BGP started out without a prefix length.  It 
was added when we invented CIDR.

IPv4 today is still class-full in how multicast addresses are distinguished 
from unicast (i.e., uses class D), and the non-global prefixes (net 10, 
etc.).  These are built into implementations.  All other unicast addresses 
are not predefined in implementations and the network part is distinguished 
from the host part by a prefix length.

IPv6 follows the same model as IPv4 with CIDR.  With just about the same 
exceptions as IPv4, IPv6 addresses are class-less.  The exceptions are 
defined in section 2.8 of the addressing architecture document.  These are:

       o Multicast Prefix (FF)
       o Local-Use Prefixes (Link-Local and Site-Local)
       o Pre-Defined Multicast Addresses
       o IPv4-Compatible Prefixes

IPv6 implementation do not have any other built in knowledge about the 
boundaries in the addresses.  Like IPv4, IPv6 uses prefixes.  It uses 
CIDR.  IPv6 routing protocols carry prefixes.  Just like IPv4 with CIDR.

You argued that the /64 boundary is a class-full boundary.  This is a 
middle ground.  It is from an address creation point of view.  As Thomas 
pointed out, this was a tradeoff to make auto-configuration 
simple.  However, it is not from a routing and forwarding point of view.  I 
think the distinction is important.

All of the other "boundaries" are for allocation purposes.  They do not 
affect forwarding and routing.  They can be changed with having to change 
any implementations.  As you pointed out the /35 prefix was not defined in 
a standard.

The main point I am trying to make is that IPv6 is no more class-full than 
IPv4 is today.

Bob

p.s. The history behind of the TLA/NLA structure is that it is generally 
based on work that came out of Mike O'Dell's 8+8/GSE proposal.  That had a 
similar top level structure.  The specifics of the current TLA/NLA fields 
were worked out with Mike and I sitting at one of tables in the hotel lobby 
at Memphis, Tennessee IETF meeting.  I think this was before the ducks came 
down from the roof :-)




**********************************************************************

The information in this e-mail is confidential and is legally privileged.
It is intended solely for the addressee.  If this email is not intended for
you, you cannot copy, distribute, or disclose the included information
to any-one

If you are not the intended recipient please delete the mail. Whilst
all reasonable steps have been taken to ensure the accuracy and
integrity of all data transmitted electronically, no liability is accepted
if the data, for whatever reason, is corrupt or does not reach it's
intended destination.
All business is undertaken, subject to our standard trading conditions
which are available on request.

*******************************************************************



More information about the V6wg mailing list