Designing Subnets

As established in the previous section, subnet bits cannot be all zeros or all ones in classful environments.
Likewise, an IP host address cannot have all its host bits set to zero— this setting is reserved for the
address router's use to represent the network or subnet itself. And the host bits cannot be set to all ones, as
this setting is the broadcast address. These restrictions apply to the host bits with no exceptions and are
starting points for designing subnets. Beyond these starting points, network designers need to choose the
most appropriate subnetting scheme in terms of matching the address space to the particulars of an
internetwork.
When designing subnets and their masks, the number of available subnets under a major network address
and the number of available hosts on each subnet are both calculated with the same formula: 2 n – 2,
where n is the number of bits in the subnet or host space and 2 is subtracted to account for the unavailable
all-zeros and all-ones addresses. For example, given a class A address of 10.0.0.0, a subnet mask of
10.0.0.0/16 (255.255.0.0) means that the 8-bit subnet space will yield 28 – 2 = 254 available subnets and
216 – 2 = 65,534 host addresses available on each of those subnets. On the other hand, a mask of
10.0.0.0/24 (255.255.255.0) means that a 16-bit subnet space is yielding 65,534 subnets and an 8-bit host
space is yielding 254 host addresses for each subnet.
The following steps are used to subnet an IP address:
NOTE
A stepwise method for designing subnets
1. Determine how many subnets are required and how many hosts per subnet are required.
2. Use the 2 n – 2 formula to determine the number of subnet bits and the number of host bits that will
satisfy the requirements established in step 1. If multiple subnet masks can satisfy the
requirements, choose the one that will best scale to future needs. For example, if the internetwork
is most likely to grow by adding subnets, choose more subnet bits; if the internetwork is most
likely to grow by adding hosts to existing subnets, choose more host bits. Avoid choosing a
scheme in which either all subnets or all host addresses within the subnets will be used up
immediately, leaving no room for future growth.
3. Working in binary, determine all available bit combinations in the subnet space; in each instance,
set all the host bits to zero. Convert the resulting subnet addresses to dotted decimal. These are the
subnet addresses.
4. For each subnet address, again working in binary, write all possible bit combinations for the host
space without changing the subnet bits. Convert the results to dotted decimal; these are the host
addresses available for each subnet.
NOTE
When configuring subnets, always work in binary instead of dotted decimal.
The importance of doing the last two steps in binary cannot be overemphasized. The single greatest
source of mistakes when working with subnets is trying to work with them in dotted deci mal without
under standing what is happening at the binary level. Again, dotted decimal is for convenience in reading
and writing IP addresses. Routers and hosts see the addresses as 32-bit binary strings; to successfully
work with IP addresses, they must be seen the way the routers and hosts see them.
The last paragraph may seem a bit overzealous in light of the examples given so far; the patterns of subnet
and host addresses have been quite apparent without having to see the addresses and masks in binary. The
next section uses the four design steps to derive a subnet design in which the dotted-decimal
representations are not so obvious. 37

Subnets and Subnet Masks

NOTE
The need for network-level addressing
Never lose sight of why network-level addresses are necessary in the first place. For routing to be
accomplished, each and every data link (network) must have a unique address; in addition, each and every
host on that data link must have an address that both identifies it as a member of the network and
distinguishes it from any other host on that network.
As defined so far, a single class A, B, or C address can be used only on a single data link. To build an
internetwork, separate addresses must be used for each data link so that those networks are uniquely
identifiable. If a separate class A, B, or C address were assigned to each data link, less than 17 million
data links could be addressed before all IP addresses were depleted. This approach is obviously
impractical, [7] as is the fact that to make full use of the host address space in the previous example, more
than 65,000 devices would have to reside on data link 172.21.0.0!
[7] Seventeen million data links may seem like a lot until you consider that even a single moderate-size business may have dozens or hundreds of
data links.
The only way to make class A, B, or C addresses practical is by dividing each major address, such as
172.21.0.0, into subnetwork addresses. Recall two facts:
1. The host portion of an address can be used as desired.
2. The network portion of an IP address is determined by the address mask assigned to that interface.
Figure 2.13 shows an internetwork to which the major class B address 172.21.0.0 has been assigned. Five
data links are interconnecting the routers, each one of which requires a network address. As it stands,
172.21.0.0 would have to be assigned to a single data link, and then four more addresses would have to be
requested for the other four data links.

Notice what was done in Figure 2.13. The address mask is not a standard 16-bit mask for class B
addresses; the mask has been extended another eight bits so that the first 24 bits of the IP address are
interpreted as network bits. In other words, the routers and hosts have been given a mask that causes them
to read the first eight host bits as part of the network address. The result is that the major network address
applies to the entire internetwork, and each data link has become a subnetwork, or subnet. A subnet is a
subset of a major class A, B, or C address space.
NOTE
Subnet
NOTE
Subnet mask
The IP address now has three parts: the network part, the subnet part, and the host part. The address mask
is now a subnet mask, or a mask that is longer than the standard address mask. The first two octets of the
address will always be 172.21, but the third octet—whose bits are now subnet bits instead of host bits—
may range from 0 to 255. The internetwork in Figure 2.12 has subnets 1, 2, 3, 4, and 5 (172.21.1.0
through 172.21.5.0). Up to 256 subnets may be assigned under the single class B address, using the mask
shown.
Two words of caution are in order. First, not all routing protocols can support subnet addresses in which
the subnet bits are all zeros or all ones. The reason is that these protocols, called classful protocols, cannot
differentiate between an all-zero subnet and the major network number. For instance, subnet 0 in Figure
2.13 would be 172.21.0.0; the major IP address is also 172.21.0.0. The two cannot be distinguished
without further information.
NOTE
Classful protocols

Likewise, classful routing protocols cannot differentiate a broadcast on the all-ones subnet from an allsubnets
broadcast address.[8] For example, the all-ones subnet in Figure 2.13 would be 172.21.255.0. For
that subnet, the all-hosts broadcast address would be 172.21.255.255, but that is also the broadcast for all
hosts on all subnets of major network 172.21.0.0. Again, the two addresses cannot be distinguished
without further information. RIP version 1 and IGRP are both classful routing protocols; Chapter 7
introduces classless routing protocols, which can indeed use the all-zeros and all-ones subnets.
[8] The all-hosts IP broadcast address is all ones: 255.255.255.255. An all-hosts broadcast for a particular subnet would set all host bits to one; for
instance, an all hosts broadcast for subnet 172.21.1.0 would be 172.21.1.255. Finally, a broadcast for all hosts on all subnets sets the subnet bits
and the host bits to all ones: 172.21.255.255.
The second caution has to do with the verbal description of subnets and their masks. Subnetting the third
octet of a class B address, as is done is Figure 2.13, is very common; also common is hearing people
describe such a subnet design as "using a class C mask with a class B address," or "subnetting a class B
address into a class C." Both descriptions are wrong! Such descriptions frequently lead to
misunderstandings about the subnet design or to a poor understanding of subnetting itself. The proper
way to describe the subnetting scheme of Figure 2.12 is either as "a class B address with 8 bits of
subnetting," or as "a class B address with a 24-bit mask."
The subnet mask may be represented in any of three formats—dotted decimal, bitcount, and
hexadecimal—as shown in Figure 2.14. Dotted decimal is still the most common format, although the
bitcount format is becoming increasingly popular. Compared to dotted decimal, the bitcount format is
easier to write (the address is followed by a forward slash and the number of bits that are masked for the
network part). In addition, the bitcount format is more descriptive of what the mask is really doing and
therefore avoids the type of semantic misunderstandings described in the previous paragraph. Many
UNIX systems use the hexadecimal format.
Figure 2.14. The subnet mask in Figure 2.13 may be represented in three different formats.
Although the address mask must be specified to Cisco routers in dotted decimal, using the command
shown previously, the mask may be displayed by various show commands in any of the three formats by
using the command ip netmask-format [dec|hex|bit] in line configuration mode. For example, to
configure a router to display its masks in bitcount format, use:
Gladys(config)# line vty 0 4
Gladys(config-line)# ip netmask-format bit

Address Masksz

The address for an entire data link—a non-host-specific network address— is represented by the network
portion of an IP address, with all host bits set to zero. For instance, the InterNIC, the body that
administers IP addresses, might assign to an applicant an address of 172.21.0.0.[6] This address is a class B

address because 172 is between 128 and 191, so the last two octets make up the host bits. Notice that they
are all set to zero. The first 16 bits (172.21.) are assigned, but address owners are free to do whatever they
please with the host bits.
[6] Actually, this address would never be assigned. It is from a group of addresses reserved for private use; most of the addresses used in this book
are from this reserved pool, described in RFC 1918. Reserved addresses are: 10.0.0.0-10.255.255.255, 172.16.0.0-172.31.255.255, and
192.168.0.0-192.168.255.255.
Each device or interface will be assigned a unique, host-specific address such as 172.21.35.17. The
device, whether a host or a router, obviously needs to know its own address, but it also needs to be able to
determine the network to which it belongs— in this case, 172.21.0.0.
This task is accomplished by means of an address mask. The address mask is a 32-bit string, one bit for
each bit of the IP address. As a 32-bit string, the mask can be represented in dotted-decimal format just
like an IP address. This representation tends to be a stumbling block for some beginners: Although the
address mask can be written in dotted decimal, it is not an address. Table 2.3 shows the standard address
masks for the three classes of IP address.
Table 2.3. Address masks for class A, B, and C network addresses.
Class Mask Dotted Decimal
A 11111111000000000000000000000000 255.0.0.0
B 11111111111111110000000000000000 255.255.0.0
C 11111111111111111111111100000000 255.255.255.0
For each bit of the IP address, the device performs a Boolean (logical) AND function with the
corresponding bit of the address mask. The AND function can be stated as follows:
Compare two bits and derive a result. The result will be one if and only if both bits are one. If either or
both bits are zero, the result will be zero.
Figure 2.12 shows how, for a given IP address, the address mask is used to determine the network
address. The mask has a one in every bit position corresponding to a network bit of the address and a zero
in every bit position corresponding to a host bit. Because 172.21.35.17 is a class B address , the mask
must have the first two octets set to all ones and the last two octets, the host part, set to all zeros. As Table
2.3 shows, this mask can be represented in dotted decimal as 255.255.0.0.
Figure 2.12. Each bit of this class B address is ANDed with the corresponding bit of the address mask to
derive the network address.

A logical AND is performed on the IP address and its mask for every bit position; the result is shown in
Figure 2.12. In the result, every network bit is repeated, and all the host bits become zeros. So by
assigning an address of 172.21.35.17 and a mask of 255.255.0.0 to an interface, the device will know that
the interface belongs to network 172.21.0.0. Applying the AND operator to an IP address and its address
mask always reveals the network address.
An address and mask are assigned to an interface of a Cisco router (in this example, the E0 interface) by
means of the following commands:
Smokey(config)# interface ethernet 0
Smokey(config-if)# ip address 172.21.35.17 255.255.0.0
But why use address masks at all? So far, using the first octet rule seems much simpler.

The First Octet Rule

Without putting too fine a point on it, it can be said that there are three sizes of internetworks as measured
by the number of hosts: big, medium, and small.
Big internetworks, by definition, have a huge number of hosts. Relatively few big internetworks
exist.
Small internetworks are just the opposite. Each one is small because it has a small number of
hosts; a huge number of small internetworks exist.
Medium internetworks are just that: a medium number of them (in relation to big and small ones)
and a medium number of hosts in each one.
This high level of addressing focus requires three types—classes—of network address for the three sizes
of internetworks. Addresses for big internetworks need to be capable of addressing many hosts, but
because so few big internetworks exist, only a few big-network addresses are required.
The situation is reversed for small internetworks. Because there are many small internetworks, a large
number of small-network addresses are needed. But because a small internetwork has a small number of
hosts, each of the many network addresses only requires a few host addresses.
For medium-sized internetworks, a medium number of network addresses and a medium number of host
addresses will be available for each network address.
Figure 2.10 shows how the network and host portions of IP addresses are divvied up for these three
classes.
Figure 2.10. Class A, B, and C IP address formats.
The big, medium, and small networks described thus far map to address classes as follows:
Class A IP addresses are for big internetworks. The first octet is the network portion, and the last
three octets are the host portion. Only 256 numbers are available in the eight-bit network part, but
224 or 16,777,216 numbers are available in the host part of each of those network addresses.

Class B addresses are for medium-size internetworks. The first two octets are the network portion
, and the last two octets are the host portion. There are 216 or 65,536 available numbers in the
network part and an equal number in the host part.
Class C addresses are just the opposite of class A. The first three octets are the network portion,
and the last octet is the host portion.
Because all IP addresses are 32-bit binary strings, a way of distinguishing the class to which a particular
address belongs is necessary. The first octet rule, illustrated in Figure 2.11, provides the means to make
such a distinction and can be described as follows:
Figure 2.11. The first octet rule.
For class A addresses, the first bit of the first octet— that is, the left-most bit of the entire 32-bit
string— is always set to zero. Therefore, we can find the minimum and maximum numbers in the
class A range by setting all the remaining bits in the first octet to zero (for the minimum) and one
(for the maximum). This action results in the decimal numbers 0 and 127 with a few exceptions: 0
is reserved as part of the default address (Chapter 12, "Default Routes and On-Demand Routing"
), and 127 is reserved for internal loopback addresses.[4] That leaves 1 through 126; any IP address
whose first octet is between 1 and 126 inclusive is a class A address.
[4] UNIX machines use an internal loopback address (typically 127.0.0.1) to send traffic to themselves. Data may be sent to this
address and returned to the transmitting process without ever leaving the device.
Class B addresses always have their left-most bit set to one and the second bit set to zero. Again
finding the minimum and maximum number of the first octet by setting all remaining bits to zero
and then to one, we see in Figure 2.9 that any address whose first octet is in the decimal range 128
through 191 is a class B address.
In class C addresses, the first two bits are set to one, and the third bit is set to zero. The result is a
first octet range of 192 through 223.[5]
[5] Notice that 223 does not exhaust all available numbers in the first octet. See Configuration Excerise 1 at the end of this chapter.
So far IP addressing doesn't seem so difficult. A router or host could easily determine the network part of
an IP address by using the first octet rule. If the first bit is 0, then read the first eight bits to find the
network address. If the first two bits are 10, then read the first 16 bits; and if the first three bits are 110,
then read 24 bits in to get the network address. Unfortunately, things are not that easy.

The TCP/IP Protocol Layers

The TCP/IP Protocol Layers
Figure 2.1 shows the TCP/IP protocol suite in relationship to the OSI reference model. The network
interface layer, which corresponds to the OSI physical and data link layers, is not really part of the
specification. However, it has become a de facto layer either as shown in Figure 2.1 or as separate
physical and data link layers. It is described in this section in terms of the OSI physical and data link
layers.

The physical layer contains the protocols relating to the physical medium on which TCP/IP will be
communicating. Officially, the protocols of this layer fall within four categories that together describe all
aspects of physical media:
Electrical/optical protocols describe signal characteristics such as voltage or photonic levels, bit
timing, encoding, and signal shape.
Mechanical protocols are specifications such as the dimensions of a connector or the metallic
makeup of a wire.
Functional protocols describe what something does. For example, "Request to Send" is the
functional description of pin 4 of an EIA-232-D connector.
Procedural protocols describe how something is done. For example, a binary 1 is represented on
an EIA-232-D lead as a voltage more negative than –3 volts.
The data link layer was described in Chapter 1, "Basic Concepts: Internetworks, Routers, and Addresses."
This layer contains the protocols that control the physical layer: how the medium is accessed and shared,
how devices on the medium are identified, and how data is framed before being transmitted on the
medium. Examples of data link protocols are IEEE 802.3/Ethernet, IEEE 802.5/Token Ring, and FDDI.
The internet layer, corresponding to the OSI network layer, is primarily responsible for enabling the
routing of data across logical internetwork paths, such as in Figure 1.9, by defining a packet format and
an addressing format. This layer is, of course, the one with which this book is most concerned.
The host-to-host layer, corresponding to the OSI transport layer, specifies the protocols that control the
internet layer, much as the data link layer controls the physical layer. Both the host-to-host and data link
layers can define such mechanisms as flow and error control. The difference is that while data link
protocols control traffic on the data link— the physical medium connecting two devices— the transport
layer controls traffic on the logical link— the end-to-end connection of two devices whose logical
connection traverses a series of data links.
The application layer corresponds to the OSI session, presentation, and application layers. Although
some routing protocols such as BGP and RIP reside at this layer, the most common services of the
application layer provide the interfaces by which user applications access the network.
A function common to the protocol suite of Figure 2.1 and any other protocol suites is multiplexing
between layers. Many applications may use a service at the host-to-host layer, and many services at the
host-to-host layer may use the internet layer. Multiple protocol suites (IP, IPX, AppleTalk, for example)
may share a physical link via common data link protocols.
The IP Packet Header
Figure 2.2 shows the format of the IP packet header, specified in RFC 791. Most fields in this packet have
some importance to routing.

Version identifies the I P version to which the packet belongs. This four-bit field is usually set to binary
0100; version 4 (IPv4) is in current, common use. A newer version of the protocol, not yet in widespread
deployment, is version 6 (IPv6), sometimes referred to as" next-generation IP"(IPng). All currently
assigned version numbers can be seen in Table 2.1, along with a few of the relevant RFCs. All versions
other than 4 and 6 (built on an earlier proposal called Simple Internet Protocol, or SIP, which also carried
a version number of 6) now exist only as "culture," and it will be left to the curious to read their cited
RFCs.
Header Length is a four-bit field that tells, as the name implies, the length of the IP header. The reason
this field is included is that the Options field (described later in this section) can vary in size. The
minimum length of the IP header is 20 octets, and the options may increase this size up to a maximum of
24 octets. This field describes the length of the header in terms of 32-bit words— five for the minimum
160-bit size and six for the maximum.
Table 2.1. IP version numbers.
Number Version RFC
0 Reserved
1–3 Unassigned
4 Internet Protocol (IP) 791
5 ST Datagram Mode 1190
6 Simple Internet Protocol (SIP)
6 IPng 1883
7 TP/IX 1475
8 P Internet Protocol (PIP) 1621
9 TCP and UDP over Bigger Addresses (TUBA) 1347
10–14 Unassigned
15 Reserved
Type of Service (TOS) is an eight-bit field that can be used for specifying special handling of the packet.
This field actually can be broken down into two subfields: Precedence and TOS. Precedence sets a
priority for the packet, the way a package might be sent overnight, 2-day delivery, or general post. TOS
allows the selection of a delivery service in terms of throughput, delay, reliability, and monetary cost.
Although this field is not commonly used (all the bits will usually be set to zero), early specifications of
the Open Shortest Path First (OSPF) protocol called for TOS routing. Also, the Precedence bits are occasionally used in Quality of Service (QoS) applications. Figure 2.3 summarizes the eight TOS bits; for
more information , see RFC 1340 and RFC 1349.
Figure 2.3. The Type of Service field.
Total Length is a 16-bit field specifying the total length of the packet, including the header, in octets. By
subtracting the header length, a receiver may determine the size of the packet's data payload. Because the
largest decimal number that can be described with 16 bits is 65,535, the maximum possible size of an IP
packet is 65,535 octets.
Identifier is a 16-bit field used in conjunction with the Flags and Fragment Offset fields for fragmentation
of a packet. Packets must be fragmented into smaller packets if the original length exceeds the Maximum
Transmission Unit (MTU) of a data link through which they pass. For example, consider a 5,000-byte
packet traveling through an internetwork. It encounters a data link whose MTU is 1,500 bytes— that is,
the frame can contain a maximum packet size of 1,500 bytes. The router that places the packet onto this
data link must first fragment the packet into chunks of no more than 1,500 octets each. The router then
marks each fragment with the same number in the Identifier field so that a receiving device can identify
the fragments that go together.[1]
[1] A fragmented packet is not reassembled at the other end of the data link; the packet stays fragmented until it reaches its final destination.
NOTE
The DF bit can be used in troubleshooting to determine a path's MTU.
Flags is a three-bit field in which the first bit is unused. The second is the Don't Fragment (DF) bit. When
the DF bit is set to one, a router cannot fragment the packet. If the packet cannot be forwarded without
fragmenting, the router drops the packet and sends an error message to the source. This function enables
the testing of MTUs in an internetwork. The DF bit can be set using the Extended Ping utility on Cisco
routers, as shown in Figure 2.4.
30

TCP/IP Review

The TCP/IP Protocol Layers
The IP Packet Header
IP Addresses
ARP
ICMP
The Host-to-Host Layer
The purpose of this chapter is to examine the details of the protocols that enable, control, or contribute to
the routing of TCP/IP, not to do an in-depth study of the TCP/IP protocol suite. Several books on the
recommended reading list at the end of the chapter cover the subject in depth. Read at least one.
Conceived in the early 1970s by Vint Cerf and Bob Kahn, TCP/IP and its layered protocol architecture
predates the ISO's OSI reference model. A brief review of TCP/IP's layers will be useful in understanding
how the various functions and services examined in this chapter interrelate.

Repeaters and Bridges

The information presented so far may be distilled into a few brief statements:
A data communication network is a group of two or more devices connected by a common, shared
medium.
These devices have an agreed-upon set of rules, usually called the Media Access Control, or
MAC, that govern how the media is shared.
Each and every device has an identifier, and each identifier is unique to only one device.
Using these identifiers, the devices communicate by encapsulating the data they need to send
within a virtual envelope called a frame.

So here's this wonderful resource-sharing tool called a LAN. It's so wonderful, in fact, that everyone
wants to be connected to it. And herein is the rub. As a LAN grows, new problems present themselves.
The first problem is one of physical distance. Figure 1.4 shows that three factors can influence an
electrical signal. These factors may decrease or eliminate any intelligence the signal represents:
Figure 1.4. Attenuation, interference, and distortion prevent a signal from arriving in the same shape it was
in when it left. Attenuation (a) is a function of the resistance of the wire. A certain amount of signal energy
must be spent "pushing past" the resistance. Interference (b) is a function of outside influences—noise—
which adds characteristics to the signal that should not be there. Distortion (c) is a function of the wire
impeding different frequency components of the signal in different ways.
Attenuation
Interference
Distortion
As the distance the signal must travel down the wire increases, so do the degrading effects of these three
factors. Photonic pulses traveling along an optical fiber are much less susceptible to interference but will
still succumb to attenuation and distortion.
Repeaters are added to the wire at certain intervals to alleviate the difficulties associated with excessive
distance. A repeater is placed on the media some distance from the signal source but still near enough to
be able to correctly interpret the signal (see Figure 1.5). It then repeats the signal by producing a new,
clean copy of the old degraded signal. Hence, the name repeater.
Figure 1.5. By placing a repeater in the link at a distance where the original signal can still be recognized,
despite the effects of attenuation, interference, and distortion, a fresh signal can be generated and the
length of the wire extended.
A repeater may be thought of as part of the physical medium. It has no real intelligence, but merely
regenerates a signal; a digital repeater is sometimes facetiously called a "bit spitter" for this reason.
The second problem associated with growing LANs is congestion. Repeaters are added to extend the
distance of the wire and to add devices; however, the fundamental reason for having a LAN is to share

resources. When a too-large population tries to share limited resources, the rules of polite behavior begin
to be violated and conflicts erupt. Among humans, poverty, crime, and warfare may result. On Ethernet
networks, collisions deplete the available bandwidth. On Token Ring and FDDI networks, the token
rotation time and timing jitter may become prohibitively high.
Drawing boundaries between populations of LAN devices is a solution to overcrowding. This task is
accomplished by the use of bridges.[6]
[6] If you cut through the marketing hype surrounding modern Ethernet and Token Ring switches, you'll find that these very useful tools are
merely high-performance bridges.
Figure 1.6 shows the most common type of bridge: a transparent bridge. It performs three simple
functions: learning, forwarding, and filtering. It is transparent in that end stations have no knowledge of
the bridge.
Figure 1.6. The transparent bridge segments network devices into manageable populations. A bridging
table tracks the members of each population and manages communication between the populations.
The bridge learns by listening promiscuously on all its ports. That is, every time a station transmits a
frame, the bridge examines the source identifier of the frame. It then records the identifier in a bridging
table, along with the port on which it was heard. The bridge therefore learns which stations are out port 1,
which are out port 2, and so on.
In Figure 1.6, the bridge uses the information in its bridging table to forward frames when a member of
one population—say, a station out port 1—wants to send a frame to a member of another population: a
station out port 2.
A bridge that only learns and forwards would have no use. The real utility of a bridge is in the third
function, filtering. Figure 1.6 shows that if a station out port 2 sends a frame to another station out port 2,
the bridge will examine the frame. The bridge consults its bridging table and sees that the destination
device is out the same port on which the frame was received and will not forward the frame. The frame is
filtered.
Bridges enable the addition of far more devices to a network than would be possible if all the devices
were in a single population, contending for the same bandwidth. Filtering means that only frames that 20

Data Link Addresses

In a certain community in Colorado, two individuals are named Jeff Doyle. One Jeff Doyle frequently
receives telephone calls for the person with whom he shares a name—so much so that his clever wife has
posted the correct number next to the phone to redirect errant callers to their desired destination. In other
words, because two individuals cannot be uniquely identified, data is occasionally delivered incorrectly
and a process must be implemented to correct the error.
Among family, friends, and associates, a given name is usually sufficient for accurately distinguishing
individuals. However, as this example shows, most names become inaccurate over a larger population. A
more unique identifier, such as a United States Social Security number, is needed to distinguish one
person from every other.
NOTE
Frame
Devices on a LAN must also be uniquely and individually identified or they, like humans sharing the
same name, will receive data not intended for them. When data is to be delivered on aLAN , it is
encapsulated within an entity called a frame, a kind of binary envelope. Think of data encapsulation as
being the digital equivalent of placing a letter inside an envelope, as in Figure 1.1[1] . A destination address
and a return (source) address are written on the outside of the envelope. Without a destination address, the
postal service would have no idea where to deliver the letter. Likewise, when a frame is placed on a data
link, all devices attached to the link "see" the frame; therefore, some mechanism must indicate which
device should pick up the frame and read the enclosed data.

Bicycles with Motors

One of the difficulties of decentralized computing is that it isolates users from one another and from the
data and applications they may need to use in common. When a file is created, how is it shared with Tom,
Dick, and Harriet down the hall? The early solution to this was the storied SneakerNet: Put the file on
floppy disks and hand carry them to the necessary destinations. But what happens when Tom, Dick, and
Harriet modify their copies of the file? How does one ensure that all information in all versions are
synchronized? What if those three coworkers are on different floors or in different buildings or cities?
What if the file needs to be updated several times a day? What if there are not three coworkers, but 300
people? What if all 300 people occasionally need to print a hard copy of some modification they have
made to the file?
The local-area network, or LAN, is a small step back to centralization. LANs are a means of pooling and
sharing resources. Servers enable everyone to access a common copy of a file or a common database; no
more "walkabouts" with floppies, no more worries about inconsistent information. E-mail furnishes a
compromise between phone calls, which require the presence of the recipient, and physical mail service,
which is called snail mail for a good reason. The sharing of printers and modem pools eliminates the need
for expensive, periodically used services on every desk.
Of course, in their infancy, LANs met with more than a little derision from the mainframe manufacturers.
A commonly heard jibe during the early years was, "A LAN is like a bike with a motor, and we don't
make Mopeds!" What a difference a few years and a few billion dollars would make.
Physically, a LAN accomplishes resource pooling among a group of devices by connecting them to a
common, shared medium, or datalink. This medium may be twisted-pair wires (shielded or unshielded),
coaxial cable, optical fiber, infrared light, or whatever. What matters is that all devices attach commonly
to the data link through some sort of network interface.
A shared physical medium is not enough. Rules must govern how the data link is shared. As in any
community, a set of rules is necessary to keep life orderly, to ensure that all parties behave themselves,
and to guarantee that everyone gets a fair share of the available resources. For a local-area network, this
set of rules, or protocol, is generally called a Media Access Control (MAC). The MAC, as the name
implies, dictates how each machine will access and share a given medium.
So far, a LAN has been defined as being a community of devices such as PCs, printers, and servers
coexisting on a common communications medium and following a common protocol that regulates how
they access the medium. But there is one last requirement: As in any community, each individual must be
uniquely identifiable.

Internetworks, Routers, and Addresses

Basic Concepts: Internetworks, Routers, and
Addresses
Bicycles with Motors
Data Link Addresses
Repeaters and Bridges
Routers
Network Addresses
Once upon a time, computing power and data storage were centralized. Mainframes were locked away in
climate-controlled, highly secure rooms, watched over by a priesthood of IS administrators. Contact with
a computer was typically accomplished by bringing a stack of Hollerith cards to the priests, who
interceded on our behalf with the Big Kahuna.
The advent of the minicomputer took the computers out of the IS temple of corporations and universities
and brought them to the departmental level. For a mere $100K or two, engineering and accounting and
any other department with a need for data processing could have their own machines.
Following on the heels of the minicomputers were microcomputers, bringing data processing right to the
desktop. Affordability and accessibility dropped from the departmental level to the individual level,
making the phrase personal computer part of everyone's vocabulary.
Desktop computing has evolved at a mind-boggling pace, but it was certainly not an immediate
alternative to centralized, mainframe-based computing. There was a ramping-up period in which both
software and hardware had to be developed to a level where personal computers could be taken seriously.