Each of the hosts in the Internet needed
to be uniquely identifiable. In the Internet's two-level hierarchy, this
required an address with two parts:
- Network address
- Host address
Together, these two types of addresses
could uniquely identify any and all machines connected via the Internet.
It is possible that the needs of a small, networked community could be
satisfied with just host addresses, as is the case with LANs. Network
addresses, however, are necessary for end systems on different networks
to communicate with each other. It is the unique combination of both the
host and network addresses that make it possible to access any given
host in an internetwork.
The Internet uses this two-level address
hierarchy. Rather than calculating and tracking routes to each known
host, however, the Internet advertises just the network addresses. End
systems that need to access hosts in other networks address their
datagrams with the full address, including both network and host
numbers, but the routers in the internetwork could assume that the
destination network would know how to deliver datagrams to all the end
systems within its domain. Therefore, the Internet's routers would only
have to track routes to every known network.
A router in the Internet's backbone would
quickly become overwhelmed if it tracked paths through the Internet to
each end system or host. Instead, the architects of the Internet and IP
implemented a two-tiered physical architecture. This was accompanied by
a two-tiered network address, consisting of the network's address and a
host address. The most practical implication of such a scheme was that
routers in the Internet's backbone could greatly reduce their workload
by just tracking routes to network addresses.
To understand how network routes are
advertised, consider the diagram in Figure . This diagram shows three networks: A, B, and C. Each has a small number
of hosts that are numbered numerically. All the routers have host
address 1 in their network number. Therefore, the router that
interconnects Network A to the Internet has the address A.1.
The routers that comprise the Internet's
backbone could calculate routes through the Internet for each of the
hosts in Figure .
Figure presents their routing tables (in a highly simplified and
homogenized form).
As can be seen in Figure ,
the destination gateway identified by Internet routers
wouldn't vary by host address. Therefore, tracking routes to individual
hosts (known as host-based routing) would only create unnecessary
work for the routers in the internetwork. The destination gateway would,
however, vary by network address. Therefore, the Internet's routers can
reduce their workload (and increase their efficiency) by not remembering
routes to every host. They can advertise routes to network numbers
without compromising their ability to deliver datagrams. Figure
demonstrates how network route advertising can reduce the
size of routing tables.
Note: It does not make sense to program
individual host routes because it doesn't scale. And that building route
tables based on definitions of networks (which include all hosts on that
network) is much more scaleable.
The greatly reduced size of the
network-based routing tables does not compromise the capability of the
Internet routers to forward datagrams to their destinations. Advertising
network routes does, however, have numerous other implications. It can
improve a router's performance, for example. The more entries in a
router's table means it takes less time to determine where to
forward a datagram.
However, the larger a network's
routing tables become, the greater the demands that are placed on the
network routers' physical resources. These include random access memory
(RAM) and central processing unit (CPU) cycles. Providing increasing
amounts of both resources can become expensive.
Closely related to performance, but much
more significant, is scalability. Network advertisement enables
internetworks to be highly scalable. Proof of this is evident in the
mammoth proportions of today's Internet. Without the capability to
advertise network routes, the Internet's growth would have been severely
constrained.
The Internet was aided in its scalability
by its sophisticated address architecture. Its architects foresaw the
potential for its growth and developed an addressing architecture that
was both flexible and extensible. This architecture was implemented in
IP.
|