Linux Format

A potted history of IP

-

The Internet Protocol as we know it today has a history dating back to 1974, with the fourth version being documented in September 1978 as Internet Experiment Note 54 and standardis­ed as the DoD Standard Internet Protocol by RFC760 in January 1980.

An IPv4 address is a 32-bit number (between zero and 2^ 32, or 4,294,967,296) usually represente­d in a dotted-decimal notation as four period-separated octets; decimal numbers between 0 and 255. For example, 145.131.132.70 represents the address 2441315398 ( http://2441315398 is a valid URL – try it if you have your doubts!). $ echo $(((145<<24)+(131<<16)+(132<<8)+70)) 2441315398 $ ping 2441315398 PING 2441315398 (145.131.132.70) 56(84) bytes of data. 64 bytes from 145.131.132.70: icmp_seq=1 ttl=52 time=22.8 ms

As well as aiding legibility, the dotted decimal representa­tion of the IP address carried semantic meaning. The first octet was a network identifier with the rest being a host identifier (it was actually called the rest field!). Hosts on the same network (those having the same first octet) were mutually accessible without routing. This design only allowed for 256 networks, which was quickly deemed inadequate.

The solution redefined the first octet to specify five network classes, with the size of the network given by the leading bits of the first octet. There were three main classes: Class A allocated one octet (8 bits) to the network identifier and three octets (24 bits) to the host identifier; Class B allocated two octets to each; and Class C allocated three octets to the network and one to the host. Two further classes were defined: Class D for multicast addresses and Class E, which is reserved and remains unused.

This design placed the first octet of Class A addresses between 0 and 127, Class B between 128 and 191 and Class C from 192 to 223. Class D is 224-239 and Class E reserves 240-255.

This Classful networking split addresses into network and host identifier­s on octet (8-bit) boundaries. Desire to further divide these networks led to the division of IP networks into subnets, specified in 1985 by RFC917. Instead of the rigid class network/host split, a subnet mask uses dotted-decimal notation to specify those bits of an address that form the network address.

Subnetting enabled network administra­tors to define subnets of varying sizes. It made it possible for an IP address to be split into a network (by its class), subnet (by the subnet mask) and host. The address 192.168.10.20 is in a class B network of 16,384 addresses. A subnet mask of 255.255.255.0 puts it into one of 256 subnets, each having 256 addresses.

Classful networking’s rigid network boundaries still hampered network allocation. This rigidity led to the more flexible Classless networking defined as Classless Inter-Domain Routing (CIDR, RFC1518) in 1993.

CIDR effectivel­y merges the network and subnet into a single Network Prefix specified as a decimal number suffixed to the IP address, which is the number of set bits in the equivalent subnet mask. This is written using CIDR Notation like 10.20.30.40/30, where the equivalent netmask would be 255.255.255.252. CIDR is used with respect to the deprecated network classes, but doing so is no longer technicall­y required. CIDR allows for more efficient usage of the available IPv4 addresses, but its 32-bit address space remains limited.

IPv6 provides a solution to that: it uses 128-bit addresses to provide a much larger address space than IPv4’s 32-bits. This is an enormous address space and only a small portion has been allocated for use – over 80 per cent is reserved for future allocation.

Newspapers in English

Newspapers from Australia