IP Version 4 Cheats Death!


It has been known for quite some time now that IPv4 was facing problems. The main problem of course being addressing and routing related. Before the introduction of the following method the Internet was facing address starvation and routing tables were becoming unmanageable. Now, it is hoped that its life has been extended into the next century.

Introducing Hierarchy

Classless interdomain routing (CIDR) is a minimal extension of IP interdomain routing. Instead of using IP network addresses to identify reachable destinations, CIDR uses the concept of IP address prefixes. An IP address prefix is a string of up to 32 bits, and is represented as a tuple consisting of a 32-bit IP address and a bit mask. The bit mask specifies the contiguous leading bits in the address that are significant to Internet routing. IP prefixes use a tuple notation, for example <,>.

Obviously, we should also mention at this stage that CIDR requires routing protocols to carry 32-bit IP prefix masks as well as the 32-bit IP address. OSPF and RIP-2 are currently capable of carrying masks and BGP-4 is now being implemented by router vendors.

IP address prefixes provide hierarchical abstraction through a process known as summarization. By summarization, we mean that a pair of prefixes of length N can be summarized to a single prefix of length N-1 if the prefixes share the first N-1 bits. Example, the prefixes 1101 and 1100 can be summarized as 110. This can be applied repeatedly. The method of summarization is used to aggregate multiple routing entries into a single entry so that if for example, 8 sites are attached to the same NSFNET regional, and have summerizable addresses, then the regional can advertise its reachability to these 8 sites with just one IP address prefix.

Currently CIDR specifies 3 levels in the routing hierarchy where summarization can be done with room for further levels if needed. The three levels are.

Finding the way

While CIDR exploits hierarchical routing, it doesn't force a strict routing hierarchy. For example for an IP datagram to reach its destination address, its destination address is matched with the candidate prefixes in a routing table to select where the datagram should be sent. This list of prefixes is sorted by length and searched in descending order so that the prefix with the longest match will select the routing entry to be used.

Despite networks needing to be renumbered, for CIDR really to have an effect, packets will still be able to find their way. The reason for this is that Internet users and applications rarely refer to the IP address of a site but mostly the name. So renumbering does not impact the same way as renumbering a telephone number might.

Currently the BGP routing tables in the interdomain routing system indicate that a CIDR addressing hierarchy is capable of routing the current set of 10,000 networks with fewer than 200 routing entries. Changing host addresses of sites already in the internet would however be needed to achieve this.

So what are you saying?

I'm saying that in the past IP address space has been freely traded off against making routing easier. For example sites of a few hundred hosts could have used a couple of Class C networks, but that instead used Class B because of only having to advertise the one routing address. Now with CIDR, its possible to use a couple of Class C networks and summarize these to still only one routing advertisement.

Also it has been found in surveys that 50% of Class B networks have fewer than 50 hosts which could easily fit into a Class C network (254 hosts). Renumbering these addresses would reclaim a substantial amount of IP address space.

1993s figures showed the Internet as having 1.5 million hosts. By using CIDR it should be possible to map this to approximately 10% of the total address space. Thus the Internet should be able to grow to about 400 million systems, so that even if the internet doubles in size every year, it should be possible to route with IPv4 into the next century.