To keep IANA happy, and to cause maximal-density usage of CIDR blocks, what should be allocated is un-growable blocks, just big enough for customer needs. This ensures that once the CIDR block is allocated-out, density is sufficient to justify trivially another CIDR block.
This also means when the customer needs more space, they either have to renumber (and this is the number one customer complaint), or have to set up their network with overlayed subnets (and not all the stuff out there can successfully do that). We serve primarily business customers with dedicated LAN access, and have relatively little dialup business (as measured by address space and revenue). This is one of our biggest costs since part of our service is to manage the internet access for our customers, including on-site configuration. So that means we actually go renumber the customer for them. That's good for the customer, but it also means we are sorely aware of the costs involved. We try to balance things the best we can by working with customers to determine what their needs are with respect to their expanding networking needs over the coming year. I try to allocate what they reasonably expect to need in the next 12 months, giving them the smallest subnet that fits that projected need if it is not more than 2 or 4 times the current need. But I have had customers who hooked up 3 machines to begin with and knew that they would have 100 machines within 6-9 months, and they really did.
This is basically a space-packing problem, which while non-trivial, yields solutions which are quite simple to code. The general process is as follows.
The coding is certainly simple enough, but is it a practical business model? The answer is actually yes, if one considers a reasonable balance between current and future needs. I've tried the "tree" approach, manually and have found that I end up going back and re-using the "holes" for different (and usually new) customers without leaving space for customer expansion. Once we have reached the 50% usage mark it's still not time to go back and get more space, so the "holes" get used. Still, there is a 50% time in which we can expand most customers with growing space if we do use the "tree" method. Today as we are rapidly growing, new customers still outpace the growth in network size of existing customers. It's still a business decision on which way to allocate network address space, rather than a technical one. -- -- *-----------------------------* Phil Howard KA9WGN * -- -- | Inturnet, Inc. | Director of Internet Services | -- -- | Business Internet Solutions | eng at intur.net | -- -- *-----------------------------* philh at intur.net * --