# [NANOG] FUS for IP space fragmentation (Re: fair warning: less than 1000 days left to IPv4 exhaustion)

Talk of IPv6 space hoarding and fragmentation. Ughh. Perhaps we can
avoid repeating IPv4 mistakes with IPv6.

Exponential problems need linear solutions.

The method for handing out blocks is flawed. There's no need for linear
stride-N allocations, assuming that a highly-sparse array is acceptable.

Allocate thus:

1. At start of 0b/1
2. At start of 1b/1
3. At start of 01b/2
4. At start of 11b/2
5. At start of 001b/3
6. At start of 101b/3
7. At start of 011b/3
8. At start of 111b/3
(and so forth)

Allocate on /1 boundaries as many times as possible... then /2...
followed by /3... next /4... et cetera. Let each allocation be long
enough to contain sufficient address space; the space to the right is
reserved for growth.

Different networks will grow at different speeds. That is handled by
allocating from "largest available /N" instead of "next /N in sequence",
and tends to keep new allocations away from rapidly-growing ones.

Fragmentation is drastically reduced. Allocating more space is a simple
matter of "grow right", reducing the "hoard as much as possible because
new space is a pain" mentality.

Wait... we've had this discussion before:

http://www.merit.edu/mail.archives/nanog/2006-03/msg00183.html

Eddy

Hi,

Talk of IPv6 space hoarding and fragmentation. Ughh. Perhaps we can
avoid repeating IPv4 mistakes with IPv6.

Would be nice, but alas, it seems we're doomed to repeat most past mistakes.

Let each allocation be long
enough to contain sufficient address space; the space to the right is
reserved for growth.

If I understand what you're suggesting, this is the rationale for the RIR's receiving /12s from the IANA. The theory was that the RIRs needed /12s in order for them to allocate address space via a bisection methodology, which would allow for growth in any of the allocations made.

However, last I checked (which was a while ago), only APNIC had actually carried through on this -- all the other RIRs (if they were allocating out of the /12 blocks at all), were still allocating sequentially.

Things might have changed (haven't been following what the RIRs do so closely anymore)...

Regards,
-drc

Date: Sat, 10 May 2008 04:02:49 +0000 (GMT)
From: Edward B. DREGER

Exponential problems need linear solutions.