/126 or /127 -- neither!
Matt Crawford
ipng@sunroof.Eng.Sun.COM
Thu, 18 Sep 1997 12:40:05 -0500
At the PAL1 meeting, when we were considering the 64 bit identifier
which is now part of the addressing architecture, the question arose
of teensy little subnets (such as /126's) for point-to-point links. I
argued at the time that we have no place, and need no place, for any
prefix with length in the range 65 to 127 bits, inclusive. That is,
every entry in a (unicast) IPv6 routing table ought to be either a
128 bit "host route" or a prefix of 64 bits or less.
I'd like to elaborate a bit on this argument. To be specific, I'm
discussing the case of a point-to-point link between two routers
under different organizational control. This may be a link between
two sites, two ISPs, or a site and an ISP from which the site does
not derive address space. Possibly what I have to say will be
applicable to p-p links within an organization. Not being an
enormous ISP or a seller of boxes to enormous ISPs, I enjoy a vast
ignorance about operational customs.
The fundamental reason that IPv4 needs a /30 for a point-to-point
link is that one address is reserved to be the broadcast address on
that subnet. IPv6 has no broadcast.
A secondary reason is that another address is reserved as an
ill-defined numeric name for the subnet itself. (I say ill-defined
because so many implementations treat it as a synonym the above
broadcast address.) IPv6 uses a similar bit-pattern as an anycast
address for "any router on this subnet."
What I've seen requested here for IPv6 is a slice of the address
space to be used for non-routable /126 (or /127) prefixes to number
point-to-point links. This space would carry, besides scaling
problems, a weighty bureaucracy to administer assignments. It should
have, therefore, an equally weighty justification. I think there is
none.
The alternative is for each end of a p-p link to be assigned an
address out of its respective site's prefix. I believe routing
protocols can perfectly well handle links whose endpoints have unrelated
global-scope addresses. RIPng, for example, uses link-local next-hop
addresses, and the last section of draft-bates-bgp4-multiprotocol-03.txt
seems to take care of this situation quite nicely.
In summary, the only capability that's lost by having no subnet
allocated to a p-p link is the ability to address "either end of this
link." The cost of providing that ability is to either use one of
our very large /64 subnets per link, or to do great violence to the
interface identifier concept in the new addressing architecture.
Matt