RFC 4692

Considerations on the IPv6 Host Density Metric

๐Ÿ“… published October 2006, from ietf

RFC 4692: Considerations on the IPv6 Host Density Metric โœจ

Okay bestie, let's start with the header stuff ๐Ÿ’… This is RFC 4692, called Considerations on the IPv6 Host Density Metric ๐Ÿฆ‹ It was written by G. Huston from APNIC and came out in October 2006. It's labelled Informational, which means it gives the Internet community info and does not specify an Internet standard of any kind. Its header doesn't list anything it obsoletes or updates, so it's a total solo queen ๐Ÿ‘‘ It's part of the Network Working Group series ๐ŸŒธ


Status of This Memo

This memo is info for the Internet community, not a standard ๐Ÿซถ It doesn't specify an Internet standard of any kind, and it can be distributed without limits. ๐Ÿ’œ

Copyright (C) The Internet Society (2006). ๐ŸŒˆ

Abstract

Okay so this memo digs into the Host Density metric, which is what the RIRs currently use to guide registry allocations of IPv6 unicast address blocks ๐Ÿงš It puts the address efficiency used for IPv4 allocations side by side with what IPv6 does, and the vibe is that for large allocations the target efficiency numbers can be wildly different between the two. Iconic comparison, no cap โœจ

Table of Contents

   1. Introduction ....................................................2
   2. IPv6 Address Structure ..........................................2
   3. The Host Density Ratio ..........................................3
   4. The Role of an Address Efficiency Metric ........................4
   5. Network Structure and Address Efficiency Metric .................6
   6. Varying the HD-Ratio ............................................7
      6.1. Simulation Results .........................................8
   7. Considerations .................................................10
   8. Security Considerations ........................................11
   9. Acknowledgements ...............................................11
   10. References ....................................................12
      10.1. Normative References .....................................12
      10.2. Informative References ...................................12
   Appendix A.  Comparison Tables ....................................13

1. Introduction โœจ

Okay so address assignment efficiency metrics are a big deal in the RIRs' (Regional Internet Registries') address allocation function ๐Ÿ’– The whole point of using one common metric is that individual networks can be checked against a threshold value in an objective way, no vibes-based decisions. It's the supporting material for an allocation request, showing the network met or beat the threshold, and it also backs up the case for getting another address block ๐ŸŽ€

Public and private IP networks are super different when it comes to purpose, structure, size, and tech, so trying to use one efficiency metric for all of them is honestly a tough job ๐Ÿ˜ญ The threshold has to strike a balance. It needs to be something any competently designed and operated service can actually hit, but it also can't let networks eat up so many address resources that the protocol's long-term viability gets threatened by scarcity. People have all kinds of takes on this, both from theoretical analysis of assignment efficiency and from the practical targets used in today's Internet ๐ŸŒธ

This document compares the efficiency metric and threshold value used for IPv4 allocations with the framework the IPv6 allocation process uses ๐Ÿฆ‹

2. IPv6 Address Structure โœจ

Before we get into allocation efficiency metrics, it makes sense to recap the address structure for IPv6 global unicast addresses ๐Ÿงš

The general format for IPv6 global unicast addresses is defined in [RFC4291], and it looks like this (Figure 1):

    |         64 - m bits    |   m bits  |       64 bits              |
    +------------------------+-----------+----------------------------+
    | global routing prefix  | subnet ID |       interface ID         |
    +------------------------+-----------+----------------------------+

                          IPv6 Address Structure

                                 Figure 1

In the current IPv6 allocation policy for the public Internet, the value of 'm' in that figure (the subnet ID) is usually a 16-bit field ๐Ÿ’… So the end-site global routing prefix ends up being 48 bits long, the per-customer subnet ID is 16 bits, and the interface ID is 64 bits [RFC3177] ๐Ÿ’œ

Here's the tea: the efficiency metric isn't about using individual 128-bit IPv6 addresses, and it isn't about the 64-bit subnet prefix either ๐Ÿ™ˆ It's only about how efficiently the end-site global routing prefix gets used. This allocation model assumes each customer is given a minimum of one /48 address block. Since that block allows 2^16 possible subnets, a /48 allocation is assumed to be what gets used in the vast majority of end-customer assignments, which is giving main character energy ๐Ÿ‘‘

The discussion that follows assumes the IPv6 address allocation unit is a 48-bit address prefix, and that assignment efficiency means how efficiently /48 allocation units get assigned. That said, the analysis is more general than /48 prefixes. It's about end-site address allocation practices, so it applies to an end-site global routing prefix of any size โœจ

3. The Host Density Ratio ๐ŸŒˆ

The "Host Density Ratio" was first described in [RFC1715] and then updated in [RFC3194] ๐Ÿงš

The "H Ratio", as defined in RFC 1715, looks like this:

                            log (number of objects)
                        H = -----------------------
                                  available bits

                                 Figure 2

The argument in [RFC1715] uses a bunch of examples to back up the claim that this metric is a useful, generic measure of address assignment efficiency across a range of end-site addressed networks ๐Ÿ’– It also says the optimal point for this utilization efficiency metric is an H Ratio value somewhere between 0.14 and 0.26. Lower H Ratio values mean inefficient address use, and higher H Ratio values tend to come with extra network overhead from forced re-addressing operations ๐Ÿ˜ญ

Quick reminder: a low H Ratio means wasted addresses, and a high one means you're stuck doing forced re-addressing. Both are a no-go, bestie ๐Ÿ’€

This particular metric has a maximal value of log base 10 of 2, which is 0.30103 ๐Ÿ“

The metric got normalized in RFC 3194, which introduced the "HD-Ratio", defined like this:

                        log(number of allocated objects)
              HD = ------------------------------------------
                   log(maximum number of allocatable objects)

                                 Figure 3

HD-Ratio values are proportional to the H ratio, and they range from 0 to 1 ๐Ÿฆ‹ The analysis in [RFC3194] applied this HD-Ratio metric to the examples from [RFC1715]. Based on those examples, it proposed that HD-Ratio values of 0.85 or higher force a network into some form of renumbering. HD-Ratio values of 0.80 or lower were considered an acceptable network efficiency metric โœจ

The HD-Ratio is referenced in the IPv6 address allocation policies used by the Regional Internet Registries, and those policy documents say an HD-Ratio of 0.8 is an acceptable objective for address assignment efficiency in an IPv6 network ๐Ÿ’…

By contrast, the commonly used efficiency metric for IPv4 is just the ratio of allocated (or addressed) objects to the maximum number of allocatable objects ๐Ÿซถ For IPv4, the commonly applied value for this ratio is 0.8 (or 80%) ๐Ÿ”ฅ

A comparison of these two metrics is given in Table 1 of Attachment A ๐ŸŽ€

4. The Role of an Address Efficiency Metric โœจ

okay so the whole point of this address efficiency metric ๐ŸŽ€ is to give both the allocation entity AND the applicant some objective numbers about how well a network is actually using its address space. ๐Ÿ’… With those numbers they can figure out whether a new allocation is warranted, and get a hint about how big that allocation should be. It also gives a target utilization level, which tells you the moment a network's address resource can be considered "fully utilized" ๐Ÿฆ‹

The goal here is for the network service provider to deploy addresses across both the network gear AND the customers without having to renumber every so often ๐Ÿ˜ญ It also needs to keep the internal routing system and the inter-domain routing system from getting fragmented and bloated with a ton of extra route objects. ๐ŸŒธ The way to pull that off is an addressing plan where every level of structure has its own pool of address blocks, so the network can grow at that level without renumbering everything else. It's giving scalable, no cap ๐Ÿ‘‘

Now, a 100% address utilization efficiency metric is unrealistic in any scenario, fr fr ๐Ÿ’€ In a typical network address plan, the address space is considered exhausted not when every single address has been used, but when one element of the structure has used up its pool and borrowing from the other elements' pools would mean a massive renumbering headache. ๐Ÿ™ˆ It's not possible to give one definitive threshold for what overall efficiency is achievable in every IP network, but experience with IPv4 deployments suggests that at any particular level of a hierarchically structured address plan, an efficiency level of between 60% to 80% is an achievable metric in the general case. โœจ

This IPv4 efficiency threshold is way higher than what the examples in the HD-Ratio description in [RFC1715] show. ๐Ÿ“ Those examples come from sources including the Public Switched Telephone Network (PSTN), and this comparison deserves a closer look. There are a bunch of differences between public IP network deployments and PSTN deployments that could explain the gap. IP addresses are deployed per provider and lined up with network topology. ๐Ÿงš PSTN addresses are mostly deployed through a geographical distribution system of "call areas" that share a common number prefix. Inside each call area, there need to be enough number blocks from that prefix to let each operator pull their own block from the area pool. In the IP world, service providers don't pull blocks from a shared geographic number pool. They get address blocks from the Regional Internet Registry on a 'whole of network' basis. ๐Ÿซถ That difference in address structure lets an IP environment reach a higher overall address utilization efficiency. ๐Ÿ”ฅ

Let's talk about how many levels of internal hierarchy IP networks have. If the interior routing protocol is deployed uniformly, it supports a hierarchical network structure only two levels deep: a fully connected backbone "core" with a bunch of satellite areas attached directly to it. ๐Ÿ’œ You can get additional levels of routing hierarchy using various forms of routing confederations, but that's not a super common deployment technique. The most common structure in large IP networks is a three-level one using regions, individual Points of Presence (POPs), and end-customers. ๐ŸŒˆ

Also, big IP deployments usually have a relatively flat routing structure instead of a deeply hierarchical one. โญ To keep the interior routing protocol's dynamic performance healthy, the number of routes it carries is usually limited to the routes for next-hop destinations of iBGP routes. Customer routes get carried inside the iBGP domain and are aggregated at the point where they're announced over eBGP sessions. ๐ŸŽ€ This means that per-POP or per-region address aggregation based on some fixed address hierarchy isn't a necessary feature of large IP networks, so a strictly hierarchical address structure in every part of the network isn't a must in those routing environments. ๐Ÿฆ‹


5. Network Structure and Address Efficiency Metric ๐Ÿ‘‘

An address efficiency metric can be written using the number of levels of structure (n) and the efficiency achieved at each level (e). ๐Ÿ’– If the same efficiency threshold is applied at every level of structure, the resulting efficiency threshold is e^n. ๐Ÿงš This lets us make some extra observations about the HD-Ratio values. Table 2 of Appendix A (Figure 8) shows how many levels of structure are implied by a given HD-Ratio value of 0.8 for each address allocation block size, assuming a fixed efficiency level at all levels of the structure. ๐Ÿ”ฅ The takeaway is that for large address blocks, the HD-Ratio assumes either a large number of elements in the hierarchical structure, or a very low level of address efficiency at the lower levels. ๐Ÿ˜ญ In IP network deployments, that second situation isn't commonly the case. ๐Ÿ’…

The most common interior routing structure in IP networks is a two-level routing structure. ๐ŸŒธ Given that constrained routing architecture, network address plans seem to commonly use up to a three-level hierarchical structure, while larger networks may generally use a four-level structure. โœจ

Table 3 of Attachment A (Figure 9) shows an example of address efficiency outcomes using a per-level efficiency metric of 0.75 (75%), with a progressively deeper network structure as the address block grows. ๐Ÿ“ This model (termed here "limited levels") caps the maximal number of levels of internal hierarchy at 6, and adds 1 level to the network hierarchy whenever the network grows by a factor of a little over one order of magnitude. ๐ŸŒˆ

It's illustrative to compare these metrics for a larger network deployment. ๐Ÿซถ Say the network is designed to encompass 8 million end customers, each assigned a 16-bit subnet ID for their end site. Then the following table, Figure 4, shows the associated allocation size determined by the address efficiency metric. ๐Ÿ’œ

      Allocation:  8M Customers

                                Allocation    Relative Ratio

      100% Allocation Efficiency   /25               1
      80%  Efficiency (IPv4)       /24               2
      0.8  HD-Ratio                /19              64
      75%  with Limited Level      /23               4
      0.94 HD-Ratio                /23               4

                                 Figure 4

Note that the 0.8 HD-Ratio gives a significantly lower efficiency level than the other metrics. ๐Ÿ™ˆ The limited-level model seems to point to a more realistic efficiency value for networks of this scale (corresponding to a network with 4 levels of internal hierarchy, each with a target utilization efficiency of 75%). ๐Ÿฆ‹ This limited-level model corresponds to an HD-Ratio with a threshold value of 0.945. โœจ


6. Varying the HD-Ratio ๐ŸŒธ

One way to model the range of outcomes from taking a more limited approach to the number of levels of aggregateable hierarchy is to compare various HD-Ratio values against the fixed-efficiency model and the "Limited Levels" model. ๐Ÿ’– That comparison is shown in Figure 5. ๐ŸŽ€

       Prefix Length (bits)
       |
       |
       | Limited    HD-Ratio
       |  Levels    0.98    0.94    0.90    0.86    0.82    0.80
       |       |       |       |       |       |       |       |
       1   0.750   0.986   0.959   0.933   0.908   0.883   0.871
       4   0.750   0.946   0.847   0.758   0.678   0.607   0.574
       8   0.750   0.895   0.717   0.574   0.460   0.369   0.330
      12   0.563   0.847   0.607   0.435   0.312   0.224   0.189
      16   0.563   0.801   0.514   0.330   0.212   0.136   0.109
      20   0.422   0.758   0.435   0.250   0.144   0.082   0.062
      24   0.422   0.717   0.369   0.189   0.097   0.050   0.036
      28   0.316   0.678   0.312   0.144   0.066   0.030   0.021
      32   0.316   0.642   0.264   0.109   0.045   0.018   0.012
      36   0.237   0.607   0.224   0.082   0.030   0.011   0.007
      40   0.237   0.574   0.189   0.062   0.021   0.007   0.004
      44   0.178   0.543   0.160   0.047   0.014   0.004   0.002
      48   0.178   0.514   0.136   0.036   0.009   0.003   0.001

                              Figure 5

As this figure shows, it's possible to pick an HD-Ratio value that models IP level structures in a way that behaves more consistently for very large deployments. ๐Ÿ‘‘ In this case, an HD-Ratio of 0.94 is consistent with a limited-level model of up to 6 levels of hierarchy, with a metric of 75% density at each level. ๐Ÿ’… This correlation is indicated in Table 3 of Attachment A. ๐Ÿซถ

6.1. Simulation Results โœจ

okay bestie, let's talk numbers ๐Ÿงฎ๐Ÿ’… so when you're trying to figure out what happens if you drop the HD-Ratio to a lower value, the move is to test it against actual address consumption data ๐Ÿฆ‹ and the people running this study used the IPv4 allocation data that the Regional Internet Registries publish [RIR-Data] ๐ŸŒธ they assumed every end customer gets an IPv4 /32, and that assignments were made based on an 80% density metric in terms of assumed customer count ๐Ÿ’– then that customer count becomes the basis for an IPv6 address allocation, and the HD-Ratio is what maps a customer count to the size of the allocation ๐ŸŽ€

the results here come from simulating an IPv6 address allocation registry ๐Ÿ”ฅ using IPv4 allocation data from the RIRs covering January 1, 1999 through August 31, 2004 โญ the goal is to see the relative level of IPv6 address consumption when you use an IPv6 request size profile built by applying different HD-Ratio values to the derived customer numbers ๐ŸŒˆ

the total address consumption profile for selected HD-Ratio values is shown in Figure 6 ๐Ÿงš and the simulation says that an HD-Ratio of 0.8 eats a total of 7 times the address space that an HD-Ratio of 0.94 does ๐Ÿ˜ญ

                 HD-Ratio       Total Address Consumption
                 |        Prefix Length   Count of
                 |        Notation        /32 prefixes
                 0.80    /14.45          191,901
                 0.81    /14.71          160,254
                 0.82    /15.04          127,488
                 0.83    /15.27          108,701
                 0.84    /15.46           95,288
                 0.85    /15.73           79,024
                 0.86    /15.88           71,220
                 0.87    /16.10           61,447
                 0.88    /16.29           53,602
                 0.89    /16.52           45,703
                 0.90    /16.70           40,302
                 0.91    /16.77           38,431
                 0.92    /16.81           37,381
                 0.93    /16.96           33,689
                 0.94    /17.26           27,364
                 0.95    /17.32           26,249
                 0.96    /17.33           26,068
                 0.97    /17.33           26,068
                 0.98    /17.40           24,834
                 0.99    /17.67           20,595

                                 Figure 6

so what this is telling us ๐Ÿ‘€ is that an IPv6 registry will probably see enough spread in allocation request sizes that picking a threshold HD-Ratio actually changes the total address consumption rate ๐Ÿ’… going from 0.8 all the way to 0.99 is about a factor of one order of magnitude in relative address consumption over an extended period of time ๐Ÿ“ˆ the simulation also shows that most allocations (somewhere between 74% and 95% of all address allocations) fit inside the /32 minimum allocation size ๐Ÿซถ for the rest, the HD-Ratio really matters for a small slice of transactions: the leftovers range from a /19 to a /31 at HD-Ratio 0.8, and from a /26 to a /31 at HD-Ratio 0.99 ๐Ÿ™ˆ

the takeaway is that the HD-Ratio affects about one quarter of all allocations, and the remaining ones are handled by the minimum allocation unit of a /32 prefix ๐Ÿฆ‹ of those "impacted" allocations that are bigger than the minimum, roughly one tenth are "large" allocations ๐Ÿ“ those large ones have a huge effect on total consumption, and moving the HD-Ratio between 0.8 and 0.99 for them makes a net difference of about one order of magnitude ๐Ÿ’œ this is a heavy-tail distribution, which just means a tiny group of big allocations drives the total consumption rate ๐Ÿ˜ณ changing the HD-Ratio barely touches more than 95% of IPv6 allocations, but it creates big swings within the largest 2% of them, and those swings then hit total consumption rates hard ๐Ÿ’€

7. Considerations ๐ŸŽ€

so here's the spicy part ๐ŸŒถ๏ธ an HD-Ratio of 0.8, used as a model of network address utilization efficiency, gives extremely low efficiency outcomes for networks on the order of 10**6 end customers and bigger ๐Ÿ˜ญ

the 0.8 value also assumes that as the address allocation block gets bigger, the network it's deployed in adds more levels of hierarchical structure ๐Ÿงš and honestly, that ever-deeper hierarchy isn't something we commonly see in public IP network deployments ๐Ÿ™ˆ

the fixed efficiency model, which is what IPv4 address allocation policy uses, assumes that as the allocation block grows, the network structure stays at a fixed number of levels ๐Ÿ’… if you add levels, the efficiency at each level goes up a lot ๐Ÿ“ˆ but there's little evidence that adding levels to a network hierarchy actually raises efficiency at each level ๐Ÿคทโ€โ™€๏ธ

it's obvious that neither model accurately captures real IP network infrastructure and what address deployment actually needs ๐Ÿ’€ the fixed efficiency model puts way too much pressure on the operator to hit very high utilization at every level of the hierarchy ๐Ÿ˜ค which leads to either customer renumbering or deploying things like Network Address Translation (NAT) just to hit the target efficiency value in a hierarchically structured network ๐Ÿซ  the HD-Ratio model at 0.8 sets an extremely low efficiency target for bigger networks ๐Ÿฅด and while that doesn't force network architects into renumbering, there's real concern it's an extremely inefficient use of address resources ๐Ÿ˜ฌ if IPv6 is supposed to last for decades and span a public network with many billions of end customers and a huge range of end use devices and components ๐ŸŒ then there's legitimate reason to worry that 0.8 is setting too conservative a target for address efficiency, meaning the total address consumption targets might get hit way too early โฐ

the study concludes that we should look at whether a higher HD-Ratio value is viable ๐Ÿฆ‹ because it could be a more relevant model of internal network structure, internal routing, and internal address aggregation in IPv6 deployments ๐Ÿ’–

8. Security Considerations ๐Ÿ”

considerations of various forms of host density metrics create no new threats to the security of the Internet ๐Ÿซถ

9. Acknowledgements ๐Ÿ™

the document was reviewed by Kurt Lindqvist, Thomas Narten, Paul Wilson, David Kessens, Bob Hinden, Brian Haberman, and Marcelo Bagnulo ๐ŸŒธ

10. References ๐Ÿ“š

10.1. Normative References

[RFC1715]   Huitema, C., "The H Ratio for Address Assignment
            Efficiency", RFC 1715, November 1994.

[RFC3177]   IAB and IESG, "IAB/IESG Recommendations on IPv6 Address
            Allocations to Sites", RFC 3177, September 2001.

[RFC3194]   Durand, A. and C. Huitema, "The H-Density Ratio for
            Address Assignment Efficiency An Update on the H ratio",
            RFC 3194, November 2001.

[RFC4291]   Hinden, R. and S. Deering, "IP Version 6 Addressing
            Architecture", RFC 4291, February 2006.

10.2. Informative References

[RIR-Data]  RIRs, "RIR Delegation Records", February 2005,
            <ftp://ftp.apnic.net/pub/stats/>.

Appendix A. Comparison Tables โœจ

okay so this appendix is basically the receipts ๐Ÿงพ๐Ÿ’… It shows how many /48 end user allocations you'd need before a block counts as "full" under the threshold, comparing the Fixed Efficiency model (0.8) with the HD-Ratio model (0.8). The HD-Ratio column is where things get spicy: bigger blocks hit their threshold with way fewer allocations, which is exactly why the fixed model looks so different. ๐Ÿ˜ญ

   Fixed Efficiency Value  0.8
   HD-Ratio Value          0.8

                               Number of /48 allocations to fill the
                                address block to the threshold level

   Prefix          Size              Fixed Efficiency      HD-Ratio
                                       0.8                     0.8

   /48                 1                 1 100%              1  100%
   /47                 2                 2 100%              2   87%
   /46                 4                 4 100%              3   76%
   /45                 8                 7  88%              5   66%
   /44                16                13  81%              9   57%
   /43                32                26  81%             16   50%
   /42                64                52  81%             28   44%
   /41               128               103  80%             49   38%
   /40               256               205  80%             84   33%
   /39               512               410  80%            147   29%
   /38             1,024               820  80%            256   25%
   /37             2,048             1,639  80%            446   22%
   /36             4,096             3,277  80%            776   19%
   /35             8,192             6,554  80%          1,351   16%
   /34            16,384            13,108  80%          2,353   14%
   /33            32,768            26,215  80%          4,096   13%
   /32            65,536            52,429  80%          7,132   11%
   /31           131,072           104,858  80%         12,417    9%
   /30           262,144           209,716  80%         21,619    8%
   /29           524,288           419,431  80%         37,641    7%
   /28         1,048,576           838,861  80%         65,536    6%
   /27         2,097,152         1,677,722  80%        114,105    5%
   /26         4,194,304         3,355,444  80%        198,668    5%
   /25         8,388,608         6,710,887  80%        345,901    4%
   /24        16,777,216        13,421,773  80%        602,249    4%
   /23        33,554,432        26,843,546  80%      1,048,576    3%
   /22        67,108,864        53,687,092  80%      1,825,677    3%
   /21       134,217,728       107,374,180  80%      3,178,688    2%
   /20       268,435,456       214,748,365  80%      5,534,417    2%
   /19       536,870,912       429,496,730  80%      9,635,980    2%
   /18     1,073,741,824       858,993,460  80%     16,777,216    2%
   /17     2,147,483,648     1,717,986,919  80%     29,210,830    1%
   /16     4,294,967,296     3,435,973,837  80%     50,859,008    1%
   /15     8,589,934,592     6,871,947,674  80%     88,550,677    1%
   /14    17,179,869,184    13,743,895,348  80%    154,175,683    1%
   /13    34,359,738,368    27,487,790,695  80%    268,435,456    1%
   /12    68,719,476,736    54,975,581,389  80%    467,373,275    1%
   /11   137,438,953,472   109,951,162,778  80%    813,744,135    1%
   /10   274,877,906,944   219,902,325,556  80%  1,416,810,831    1%
   /9    549,755,813,888   439,804,651,111  80%  2,466,810,934    0%
   /8  1,099,511,627,776   879,609,302,221  80%  4,294,967,296    0%
   /7  2,199,023,255,552 1,759,218,604,442  80%  7,477,972,398    0%
   /6  4,398,046,511,104 3,518,437,208,884  80% 13,019,906,166    0%
   /5  8,796,093,022,208 7,036,874,417,767  80% 22,668,973,294    0%

           Table 1.  Comparison of Fixed Efficiency Threshold vs
                     HD-Ratio Threshold

                                 Figure 7

okay the next bit is the "how deep does the hierarchy get" question ๐ŸŒธ The idea is that the messy stuff you see in big deployments comes from having lots of levels of structure in the network. This table works out how many levels you end up with to hit a 0.8 HD-Ratio, assuming 0.8 utilization efficiency at each level. Main character energy for the hierarchy ๐Ÿ‘‘

   Prefix          Size              0.8 Structure
                                HD-Ratio    Levels
   /48                 1               1         1
   /47                 2               2         1
   /46                 4               3         2
   /45                 8               5         2
   /44                16               9         3
   /43                32              16         4
   /42                64              28         4
   /41               128              49         5
   /40               256              84         5
   /39               512             147         6
   /38             1,024             256         7
   /37             2,048             446         7
   /36             4,096             776         8
   /35             8,192           1,351         9
   /34            16,384           2,353         9
   /33            32,768           4,096        10
   /32            65,536           7,132        10
   /31           131,072          12,417        11
   /30           262,144          21,619        12
   /29           524,288          37,641        12
   /28         1,048,576          65,536        13
   /27         2,097,152         114,105        14
   /26         4,194,304         198,668        14
   /25         8,388,608         345,901        15
   /24        16,777,216         602,249        15
   /23        33,554,432       1,048,576        16
   /22        67,108,864       1,825,677        17
   /21       134,217,728       3,178,688        17
   /20       268,435,456       5,534,417        18
   /19       536,870,912       9,635,980        19
   /18     1,073,741,824      16,777,216        19
   /17     2,147,483,648      29,210,830        20
   /16     4,294,967,296      50,859,008        20
   /15     8,589,934,592      88,550,677        21
   /14    17,179,869,184     154,175,683        22
   /13    34,359,738,368     268,435,456        22
   /12    68,719,476,736     467,373,275        23
   /11   137,438,953,472     813,744,135        23
   /10   274,877,906,944   1,416,810,831        24
   /9    549,755,813,888   2,466,810,934        25
   /8  1,099,511,627,776   4,294,967,296        25

          Table 2: Number of Structure Levels Assumed by HD-Ratio

                                 Figure 8

last one ๐Ÿฆ‹ The original also looks at a different deployment model where the hierarchy gets more levels at a slower rate than the 0.8 HD-Ratio model. This one uses a per-level target efficiency of 0.75 and gets compared against an HD-Ratio value of 0.94.

   Per-Level Target Efficiency: 0.75

   Prefix           Size Stepped      Stepped Efficiency      HD-Ratio
                         Levels          0.75                   0.94

   /48                 1  1                1 100%                 1 100%
   /47                 2  1                2 100%                 2 100%
   /46                 4  1                3  75%                 4 100%
   /45                 8  1                6  75%                 7  88%
   /44                16  1               12  75%                13  81%
   /43                32  1               24  75%                25  78%
   /42                64  1               48  75%                48  75%
   /41               128  1               96  75%                92  72%
   /40               256  1              192  75%               177  69%
   /39               512  2              384  75%               338  66%
   /38             1,024  2              576  56%               649  63%
   /37             2,048  2            1,152  56%             1,244  61%
   /36             4,096  2            2,304  56%             2,386  58%
   /35             8,192  2            4,608  56%             4,577  56%
   /34            16,384  2            9,216  56%             8,780  54%
   /33            32,768  2           18,432  56%            16,845  51%
   /32            65,536  2           36,864  56%            32,317  49%
   /31           131,072  3           73,728  56%            62,001  47%
   /30           262,144  3          110,592  42%           118,951  45%
   /29           524,288  3          221,184  42%           228,210  44%
   /28         1,048,576  3          442,368  42%           437,827  42%
   /27         2,097,152  3          884,736  42%           839,983  40%
   /26         4,194,304  3        1,769,472  42%         1,611,531  38%
   /25         8,388,608  3        3,538,944  42%         3,091,767  37%
   /24        16,777,216  3        7,077,888  42%         5,931,642  35%
   /23        33,554,432  4       14,155,776  42%        11,380,022  34%
   /22        67,108,864  4       21,233,664  32%        21,832,894  33%
   /21       134,217,728  4       42,467,328  32%        41,887,023  31%
   /20       268,435,456  4       84,934,656  32%        80,361,436  30%
   /19       536,870,912  4      169,869,312  32%       154,175,684  29%
   /18     1,073,741,824  4      339,738,624  32%       295,790,403  28%
   /17     2,147,483,648  4      679,477,248  32%       567,482,240  26%
   /16     4,294,967,296  4    1,358,954,496  32%     1,088,730,702  25%
   /15     8,589,934,592  5    2,717,908,992  32%     2,088,760,595  24%
   /14    17,179,869,184  5    4,076,863,488  24%     4,007,346,185  23%
   /13    34,359,738,368  5    8,153,726,976  24%     7,688,206,818  22%
   /12    68,719,476,736  5   16,307,453,952  24%    14,750,041,884  21%
   /11   137,438,953,472  5   32,614,907,904  24%    28,298,371,876  21%
   /10   274,877,906,944  5   65,229,815,808  24%    54,291,225,552  20%
   /9    549,755,813,888  5  130,459,631,616  24%   104,159,249,331  19%
   /8  1,099,511,627,776  5  260,919,263,232  24%   199,832,461,158  18%

                   Table 3: Limited Levels of Structure

                                 Figure 9

Author's Address

Geoff Huston APNIC

EMail: gih@apnic.net

Copyright (C) The Internet Society (2006).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property ๐Ÿ’…

Okay bestie, this part is the legal stuff, but it's important so let's go ๐Ÿงš

The IETF is not picking a side on whether any Intellectual Property Rights (IPR) or other rights that might be claimed over the technology in this document are valid or in scope ๐Ÿซ . It also doesn't say whether a license to those rights is available, and it hasn't done any independent digging to find out what rights exist ๐Ÿ™ˆ. If you want to know how all of that works for RFC documents, check out BCP 78 and BCP 79 ๐Ÿ“š.

Copies of IPR disclosures sent to the IETF Secretariat are available, and so are any assurances of licenses. You can also find the results of anyone trying to get a general license or permission to use these proprietary rights, which is handy for implementers and users of this spec โœจ. All of that lives in the IETF online IPR repository at http://www.ietf.org/ipr ๐ŸŒธ.

The IETF also really wants to hear from you ๐Ÿซถ. If you know about any copyrights, patents, patent applications, or other proprietary rights that might cover technology you'd need to implement this standard, tell them! Send it to ietf-ipr@ietf.org ๐Ÿ’œ.


Acknowledgement ๐ŸŽ€

Shoutout to the people keeping the lights on: funding for the RFC Editor function comes from the IETF Administrative Support Activity (IASA) ๐Ÿ‘‘. Couldn't do it without them ๐Ÿ’–๐ŸŒˆ

๐Ÿ“ฆ where this page comes from