On 3-dec-03, at 21:21, Anthony G. Atkielski wrote:
It was well understood that it was important to keep most of the IPv6
address space open to allow for future use.
If it were well understood, nobody would have ever been foolish enough
to suggest blowing 2^125 addresses right up front. I've already
explained the folly of this in a previous post.
You seem to assume that being frugal with address space would make it
possible to use addresess that are much smaller than 128 bits. This
might have been the case if efficiency in address allocation were the
only issue we'd have to deal with. However, stateless autoconfiguration
is an important feature, and it eats up a significant amount of address
space because the interface identifier must be reasonably unique. But
more important are routing limitations. We need to keep the size of the
global routing table in check, which means "wasting" a good deal of
address space. Even in IPv4, where addresses are considered at least
somewhat scarce, a significant part of all possible addresses is lost
because of this.
If we want to keep stateless autoconfig and be modestly future-proof we
need at least a little over 80 bits. 96 would have been a good number,
but I have no idea what the tradeoffs are in using a broken power of
two. If we assume at least 96 bits are necessary, IPv6 only wastes 2 x
32 bits = 8 bytes per packet, or about 0,5% of a maximum size packet.
Not a huge deal. And there's always header compression.