Address aggregation

From Hill2dot0
Jump to: navigation, search

On the accompanying visual, one can see a small example of the benefits of address aggregation and gain an appreciation for the process that saves so much room in router memory.

The example centers upon a network access point (NAP) or large ISP—called NAP2 in the graphic. The has Internet Assigned Numbers Authority (IANA) has seen fit to grant this NAP a large block of 65536 Class C IP networks (all those between and including 199.0.0.0 and 199.255.255.0). Using classless interdomain routing (CIDR) notation, this block of addresses is represented by 199.0.0.0/8, with the “/8” signifying the number of bits in the IP network mask for the CIDR block. This so-called “slash” notation is becoming more common as CIDR makes its way into common parlance, although the block could also be expressed with the mask 255.0.0.0.

Address Aggregation

Note that the /8 designation overrides any notion of the address’s “natural” or “default” mask, which in this case would be 255.255.255.0 or /24. The CIDR designation of the block means that all the other NAPs need to keep track of only one routing table entry for all 64K networks! Their routers need to follow the rule, “If it starts with 199, send it to NAP2 and let that provider figure out what to do with it.”

NAP2 has up to 255 ISP customers; two are represented by ISP1 and ISP2, each of which is assigned a block of 255 Class C addresses. Although that means there are 65,536 possible networks for routers in NAP2 to track, NAP2 has also used address aggregation to assign its own addresses in blocks to its customers, giving 199.1.0.0/16 to ISP1, 199.2.0.0/16 to ISP2, and so on. Thus all the possible routes that NAP2’s routers must maintain can be expressed in 255 routing table entries. Following the example given above, if NAP2 receives a packet destined for 199.2.3.4, it need look only at the first two octets to know that the packet should be forwarded to ISP2.

Finally, it is left up to the individual ISPs to determine actual destinations for packets, since they are the only ones connected to the destination networks themselves. Address aggregation saves much memory in routers higher up in the tree, but the actual location of the destinations must be recorded somewhere. What CIDR really does is reduce the amount of redundancy in the routers, without adversely affecting (indeed, perhaps speeding up) the process of finding the best route.