Indirect Routing
When the network prefixes of the two addresses do not coincide, the destination machine is in a different network. In this case, routing is carried out (i.e., the most suitable gateway to direct the datagram to is chosen). This routing is done by the host and the intermediate gateways. When a gateway receives an encapsulated datagram through the physical network, it must examine the IP address of the destination and decide which gateway of another physical network to send it to, carrying out the suitable encapsulation for the new network. To carry out indirect routing, the IP specifies an algorithm based on tables. This is discussed next. 3.5.2.1 The IP Routing Table Algorithm The IP specifies a routing algorithm based on tables stored both in hosts and in gateways. An example of a routing table is shown in Figure 3.7. It is obvious that a gateway only knows the next step toward the destination network and not the complete path. Bearing this in mind, and knowing that only the network prefix of each destination IP address is stored (the suffix specifying only the machine used during the final direct routing), the routing tables can be maintained with a reduced size. It should also be remembered that in this table a gateway or host only stores the gateways connected to its own physical network, which is always the first step toward any other destination network. This routing mechanism has some drawbacks. For example, all of the datagrams directed to a specific network will follow the same path even though other alternative routes could be used at the same time. Moreover, the influence of the delays and the network throughput are not taken into account according to the type of traffic. What happens when a destination network does not appear in the table? In this case, there is what is called a default gateway, which routes all of the datagrams whose destination network does not appear in the table. A default gateway is often the only entry in the routing tables of the hosts. Finally, another important aspect of routing is how the tables are initialized and how they are updated as the network changes. In the beginnings of Internet, these tables were updated manually in the few gateways that existed, but this situation became impracticable. A series of protocols then developed as the Internet grew and changed its architecture permitting the initialization and updating of these tables automatically and dynamically through the interchange of routing information among the gateways.
794 times read
|
|
|
|