Previous | Table of Contents | Next |
Basic Subnetting
Basic subnetting and variable length subnets are still quite misunderstood. This section first gives a brief introduction on how subnetting works and then tackles Variable Length Subnet Masks (VSLM), trying to make it as clear as possible.
A subnet or subnetwork is a subset of class A, B, or C networks. To elaborate more, take a closer look at IP addresses. IP addresses are formed of a network portion and a host portion. A network mask is used to separate the network information from the host information.
In figure 3-4, the network mask 255.0.0.0 is applied to network 10.0.0.0. The mask in a binary notation is a series of contiguous ones followed by a series of contiguous zeros. The ones portion represents the network number, whereas the zeros portion represents the host number. This would split the IP address 10.0.0.1 into a network portion of 10 and a host portion of 0.0.1. As such, classes A, B, and C each have what is called a natural mask, which is the mask created by the very definition of the network and host portions of each class.
Figure 3-4 Basic masking.
By separating the network and host portions of an IP address, masks facilitate the creation of subnets. Without the introduction of subnets, network numbers would be of very limited use. Each physical segment, such as an Ethernet, Token Ring, or FDDI segment, is normally associated with one or more network numbers. If this is the case, then a class A network of the form 10.0.0.0 would accommodate one physical segment with about 16 million hosts on it, as indicated in figure 3-5.
Figure 3-5 Illustration of an unsubnetted class A address space.
With the use of masks, networks can be divided into subnetworks by extending the network portion of the address into the host portion. The subnetting technique increases the number of subnetworks and reduces the number of hosts.
In figure 3-6, a mask of 255.255.0.0 is applied to network 10.0.0.0. This will divide the IP address 10.0.0.1 into a network portion of 10, a subnet portion of 0, and a host portion of 0.1. The 255.255.0.0 mask has borrowed a portion of the host space and has applied it to the network space. As a result, the network space of the class 10 has increased from a single network 10.0.0.0 to 256 subnetworks ranging from 10.0.0.0 to 10.255.0.0. This would decrease the number of hosts per each subnet from 16777216 to 65536 (ignoring boundaries).
Figure 3-6 Basic subnetting.
Variable Length Subnet Mask
The term Variable Length Subnet Mask (VLSM) refers to the fact that one network can be configured with different masks. The idea behind Variable Length Subnet Masks [3] is to offer more flexibility in dividing a network into multiple subnets while still maintaining an adequate number of hosts in each subnet. Without VLSM, one subnet mask only can be applied to a network. This would restrict the number of hosts given the number of subnets required. If you pick the mask such that you have enough subnets, you might not be able to allocate enough hosts in each subnet. The same is true for the hosts; a mask that allows enough hosts might not provide enough subnet space.
Suppose, for example, that you were assigned a class C network 192.214.11.0 and you need to divide that network into three subnets, with 100 hosts in one subnet and 50 hosts for each of the remaining subnets. Ignoring the two end limits 0 and 255, you theoretically have available to you 256 addresses 192.214.11.0 to 192.214.11.255. The desired subdivision cannot be done without VLSM, as you shall see.
There are a handful of subnet masks of the form 255.255.255.X that can be used to divide the class C network 192.214.11.0 into more subnets. Remember that a mask should have a contiguous number of ones starting from the left, and the rest of the bits should be zeros. The following masks could be used to segment the theoretical 256 addresses available to you into more subnets.
Without VLSM, you have the choice of using mask 255.255.255.128 and dividing the addresses into two subnets with 128 hosts each or using 255.255.255.192 and dividing the addresses into 4 subnets with 64 hosts each. This would not meet the requirement of having 100 hosts on one segment and 50 hosts on each of the two other segments. By using multiple masks, you can use mask 128 to divide the addresses into two subnets with 128 hosts each and then use mask 192 to further subnet the second chunk of addresses into two subnets with 64 hosts each. Figure 3-7 and figure 3-8 illustrate how to divide the address space accordingly.
Figure 3-7 Example of a class C network divided into three subnets.
Figure 3-8 Use of VLSM to split network space into subnets of unequal size.
Not all routing protocols can handle VLSM. RIP Version 12 and IGRP3 do not carry network masks in routing updates and hence have trouble dealing with variably subnetted networks. Today, even with the deployment of routing protocols such as OSPF4, EIGRP5, ISIS6, and RIP Version 2 that can handle variable length masks, administrators still have difficulties adapting to this technique. Most early networks built on RIP version 1 and IGRP do not have their IP addresses assigned in a manner that would enable them to be grouped in blocks. Rather, their IP addresses are all over the place, and administrators would have to renumber their hosts to make them conform with the new addressing scheme. Such renumbering is so difficult that most administrators consider it out of the question. So, the older protocols must co-exist with newer methods that do handle VLSM. This co-existence is a challenge, and administrators have resorted to much maneuvering and static routing to accommodate it.
2Routing Information Protocol
3Interior Gateway Routing ProtocolCisco proprietary
4Open Shortest Path First
5Enhanced Internet Gateway ProtocolCisco proprietary
6Intermediate System-to-Intermediate System
Previous | Table of Contents | Next |