Classless Inter-Domain Routing
Classless Inter-Domain Routing (CIDR) is a set of administrative and technical measures, which were one of the "just in time" fixes that allowed continued growth of the public Internet which had not been planned for such growth. It dealt with the procedures for assigning Internet Protocol version 4 (IPv4) space, working around the limitations of routing technology of the time, a move to routing protocols that could usefully distribute CIDR information, and, with difficulty, a large user education problem.
Background
Original Internet Protocol addressing
All versions of the Internet Protocol assume that the address is split into a locator part that tells routers how to move it closer to its destination, and an identifier that brings it to the specific destination host on the final medium on the route. In the very first version of IPv4,[1]the locator field was a fixed 8 bits, allowing for a maximum of 255 possible locators (i.e., possible internconnected networks0. This fit the early research ARPANET, which principally linked large time-sharing computers; there were no personal computers, local area network, or routing within organizations.
The 8-bit locator very quickly proved inadequate, and a quick fix was applied with RFC 791. By constraining the value of the first three bits of the locator field, without changing the address length, which would need substantial equipment change, it became possible, among other things, to have more locators with different lengths, appropriate for large, medium and small networks:[2]
- Class A: 8-bit locator
- Class B: 16-bit locator
- Class C: 24-bit locator
This change also defined an address space for multicasting.
Classless routing
In the global Internet, routable address space is based on arbitrary-length prefixes rather than traditional address classes. Classless Inter-Domain Routing (CIDR) is the administrative realization of prefix addressing in the global Internet.[3] By "administrative", we mean that address registries]] assign address space on boundaries defined by the amount of space needed, not by an arbitrary 8-bit grouping. Inside enterprises, arbitrary prefix length addressing often is called Variable Length Subnet Masking (VLSM) or "subnetting a subnet." VLSM is technically not part of CIDR, but both follow the principle of classless prefix addressing:
- the all-zeroes and all-one subnets are legal [RFC1812]
- no assumption assuming that a route to a "Class A/B/C network number" implies routes to all subnets of that network.
- Assumptions also should not be made that a prefix length is implied by the structure of the high-order bits of the IP address (i.e., the "First Octet Rule").
CIDR notation is the method of writing CIDR and VLSM addresses, in the form:
address/prefix length
Prefix-based routing requires a routing protocol that always associates a prefix length with an address. OSPF, IS-IS and BGP all do this; the only current caveat is to be sure one is running RIP version 2.
References
"Classless Routing (CIDR)", Section 4.3.2 in Computer Networks, 4th ed., Peterson & Davie (2007).
RFC-4632, BCP 122 (2006), "Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan", V.Fuller, T.Li, http://tools.ietf.org/html/rfc4632.