Routing Metrics and Costs
Metrics are cost values used by routers to determine the best path to a destination network. Several factors help dynamic routing protocols decide which is the preferred or shortest path to a particular destination. These factors are known as metrics and algorithms.
Metrics are the network variables used in deciding what path is preferred in terms of these metrics. For some routing protocols these metrics are static and may not be changed. For other routing protocols these values may be assigned by a network administrator. The most common metric values are hop, bandwidth, delay, reliability, load, and cost.
Hop
A hop is a metric value used to measure distance based on the number of networks a datagram traverses. Each time a router forwards a datagram onto a segment this counts as a single hop. Routing protocols that observe hops as their primary metric value consider the best or preferred path (when multiple paths exist) to a destination to be the one with the least number of network hops (see Figure 3.18).
Figure 3.18 The upper path to network X is preferred because it involves only three hops.
In Figure 3.18, the upper path consists of three network hops, whereas the lower path has four hops. The assumption of the hop metric, is that the path with the least number of hops is the always the best route.
Routing protocols that only reference hops as their metric do not always select the best path through a network. Just because a path to a destination contains fewer network hops than another does not make it best. The upper path may contain a slower link, such as 56Kb dial-up link along the second hop, whereas the lower path may consist of more hops but faster links, such as gigabit Ethernet. If this were the case, the lower path would undoubtedly be faster than the upper. However routing protocols that use hops do not consider other metric values in their routing decisions.
Bandwidth
Protocols that consider the capacity of a link use this ).metric. Bandwidth is measured in terms of bits per second. Links that support higher transfer rates like gigabit are preferred over lower capacity links like 56Kb. These protocols determine and consider the bandwidth capacity of each link along the path end to end. The path with the overall higher bandwidth is chosen as the best route (see Figure 3.19).
Figure 3.19 The lower path is longer (in terms of hops), but preferred because the bandwidth capacity end to end is greater than the upper path.
In Figure 3.19, the upper path consists of three hops. The first and last are gigabit Ethernet, the second is low-speed 56Kb link. The lower path is four hops, with all hops offering gigabit capacity. Although the lower path is longer in terms of hops, it is much faster in terms of bandwidth capacity end to end.
Delay
Delay is measured in tens of microseconds (the symbol μ is used to indicate this). Delay represents the amount of time it takes for a router to process, queue, and transmit a datagram out an interface. Protocols that use this metric must determine the delay values for all links along the path end to end, considering the path with the lowest (cumulative) delay to be a better route (see Figure 3.20).
Although the lower path in Figure 3.19 is obviously longer in terms of hops, it is faster in terms of delay. The lower path has an overall delay time of 30 microseconds end to end, while the upper path has a delay of 60 microseconds. The lower the delay time the better the path.
Figure 3.20 The upper path has an end to end delay of 60μ. The lower path has a delay of 300μ, making it the preferred path.
Reliability
Although this metric may be configured as a fixed value by an administrator, it is generally measured dynamically over a specific time frame, such as five seconds. Routers observe attached links, reporting problems, such as link failures, interface errors, lost datagrams and so on. Links experiencing more problems would be considered less reliable than others making them less desirable pathsthe higher the reliability the better the path. Because network conditions are constantly changing, link reliability will change. This value is generally measured as a percentage of 255, with 255 being the most reliable and 1 being least reliable (see Figure 3.21).
Figure 3.21 The lower path contains links that are less reliable than the upper path.
In Figure 3.21 two of the links along the lower path have been experiencing intermittent problems. Because of these problems, the reliability factor for this path are lower (200) than the upper path. The upper path has not experienced any link or datagram delivery problems and therefore has a history of providing more reliable data delivery.
Load
Load is a variable value, generally measured over a five-second window indicating the traffic load over a specific link. Load measures the amount of traffic occupying the link over this time frame as a percentage of the link's total capacity. The value 255 is equivalent to 100% utilization or loadthe higher the value the higher the traffic load (bandwidth utilization) across this link.
As traffic increases, this value increases. Values approaching 255 indicate congestion, while lower values indicate moderate traffic loadsthe lower the value, the less congested the path, the more preferred (see Figure 3.22). This value may be manually configured as a static value by an administrator or it may be dynamically tracked allowing it to adjust as traffic patterns within the network change.
Figure 3.22 The upper path contains three links. The last two show a 128 load value, which represents 50% bandwidth utilization. The lower path has lower load values and is the preferred path.
It is important to remember that as traffic increases load across a link will increase. This value changes as traffic patterns change. Routing protocols using this value can recognize when a path is becoming congested and use an alternate path during that time.
Cost
Network administrators can affect the way routers make path decisions by setting arbitrary metric values on links along the path end to end. These arbitrary values are typically single integers with lower values indicating better paths.