Become Masters in Computer Network. Anybody Can Master Computer Hardware and Maintenance," the ultimate destination for individuals seeking to gain expertise in computer hardware components and maintenance techniques. Whether you're a beginner looking to expand your knowledge or a seasoned professional aiming to enhance your skills, this website is designed to cater to all levels of expertise
Routing Network Protocols
Routed protocols are protocols that are routed over an internetwork. Examples of such protocols are the Internet Protocols (IP), DECnet, AppleTalk, Novell NetWare, OSI, Banyan VINES and Xerox Network System (XNS). Routing protocols, on the other hand, are protocols that implement routing algorithms. Routing protocols are used by intermediate systems to build tables used in determining path selection of routed protocols. Examples of these protocols include Interior Gateway Routing Protocol (IGRP), Enhanced Interior Gateway Routing Protocol (Enhanced IGRP), Open Shortest Path First (OSPF), Exterior Gateway Protocol (EGP), Border Gateway Protocol (BGP), Intermediate System-Intermediate System (IS-IS) and Routing Information Protocol (RIP).
Routing Metrics
Routing algorithms have used many different metrics to determine the best route. Sophisticated routing algorithms can base route selection on multiple metrics, combining them in a single (hybrid) metric. The following metrics have been used:
- Path length
- Reliability
- Delay
- Bandwidth
- Load
- Communication cost.
Path length is the most common routing metric. Some routing protocols allow network administrators to assign costs to each network. In this case, path length is the sum of the costs associated with each link traversed. Other routing protocols define hop count, a metric that specifies the number of passes through internetworking products, such as routers, that a packet must taken route from a source to a destination.
Reliability, in the context of routing algorithms, refers to the dependability (usually described in terms of the bit-error rate) of each network link. Some network links might go down more often than others. After a network fails, certain network links might be repaired more easily ore more quickly than other links. Any reliability factors can be taken into account in the assignment of the reliability ratings, which are arbitrary numeric values usually assigned to network links by network administrators.
Routing delay refers to the length of time required to move a packet from source to destination through the internetwork. Delay depends on many factors, including the bandwidth of intermediate network links, the port queues at each router along the way, network congestion on all intermediate network links and the physical distance to be traveled. Because delay is a conglomeration of several important variables, its is a common and useful metric.
Bandwidth refers to the available traffic capacity of a link. All other things being equal, a 10-Mbps Ethernet link would be preferable to a 64-kbps leased line. Although bandwidth is a rating of the maximum attainable throughput on a link, routes through links with greater bandwidth do not necessarily provide better routes than routes through slower links. For example, if a faster link is busier, the actual time required to send a packet to the destination could be greater.
Load refers to the degree to which a network resource, such as a router, is busy. Load can be calculated in a variety of ways, including CPU utilization and packets precessed per second. Monitoring these parameters on a continual basis can be resource-intensive itself.
Communication cost is another important metric, especially because some companies may not care about performance as much as they care about operating expenditures. Although line delay may be longer, they will send packets over their own lines rather than through the public lines that cost money for usage time.
Link-State Versus Distance Vector Routing Algorithm
Because they converge more quickly, link-state algorithms are somewhat less prone to routing lops than distance vector algorithms. On the other hand, link-state algorithms require more CPU power and memory than distance vector algorithms. Link-state algorithms, therefore, can be more expensive to implement and support. Link-state protocols are generally more scalable than distance vector protocols.
Intradomain Versus Interdomain Routing Algorithm
Host Intelligent Versus Router-Intelligent Routing Algorithm
Other algorithm assume that hosts know nothing about routes. In these algorithms, routers determine the path through the internetwork based on their own calculations. In the first system, the hosts have the routing intelligence. In the latter system, routers have the routing intelligence.
Flat Versus Hierarchical Routing Algorithm
Routing systems often designate logical groups of nodes, called domains, autonomous systems or areas. In hierarchical systems, some routers in a domain can communicate with routers in other domains, while others can communicate only with routers within their domain. In very large networks, additional hierarchical levels may exist, with routers at the highest hierarchical level forming the routing backbone.
The primary advantage of hierarchical routing is that it mimics the organization of most companies and therefore supports their traffic patterns well. Most network communication occurs within small company groups (domains). Because intradomain routers need to know only about other routers within their domain, their routing algorithms can be simplified and, depending on the routing algorithm being used, routing update traffic can be reduced accordingly.
Single-Path Versus Multipath Routing Algorithm
Static Versus Dynamic Routing Algorithms
Because static routing systems cannot react to network changes, they generally are considered unsuitable for today's large, constantly changing networks. Most of the dominant routing algorithms today are dynamic routing algorithms, which adjust to changing network circumstances by analyzing incoming routing update messages. If the message indicates that a network change has occurred, the routing software recalculates routes and sends out new routing update messages. These messages permeate the network, stimulating routers to rerun their algorithms and change their routing tables accordingly.
A router of last resort (a router to which all unroutable packets are sent), for example, can be designated to act as a repository for all unroutable packets, ensuring that all messages are at least handled in some way.
Routing Algorithm Types
- Static versus dynamic routing algorithms
- Flat versus hierarchical routing algorithms
- Host-intelligent versus router-intelligent routing algorithms
- Intradomain versus interdomain routing algorithms
- Link-state versus distance vector routing algorithms
Routing Algorithms Design Goals
- Optimality
- Simplicity and low overhead
- Robustness and stability
- Rapid convergence
- Flexibility
Optimality refers to the capability of the routing algorithm to select the best route, which depends on the metrics weightings used to make the calculation. For example, one routing algorithm may use a number of hops and delays, but it may weigh delay more heavily in the calculation. Naturally, routing protocols must define their metric calculation algorithms strictly.
Routing algorithms also are designed to be as single as possible. In other words, the routing algorithm must offer its functionality efficiently, with a minimum of software and utilization overhead. Efficiency is particularly important when the software implementing the routing algorithm must run on a computer with limited physical resources.
Routing algorithms must be robust which means that they should perform correctly in the face of unusual or unforeseen circumstances, such as hardware failures, high load conditions, and incorrect implementations. Because routers are located at network junctions points, they can cause considerable problems when they fail. The best routing algorithms are often those that have withstood the test of time and that have proven stable under a variety of network conditions.
In addition, routing algorithms must converge rapidly . Convergence is the process of agreement, by all routers, on optimal routes. When a network event causes routes to either go down or become available, routers distribute routing update messages that permeate networks, stimulating recalculation of optimal routes and eventually causing all routers to agree on these routes. Routing algorithms that converge slowly can cause routing loops or network outages.
In the routing loop if a packet arrives at Router 1 at time 't1', Router 1 already has been updated and thus knows that the optimal route to the destination calls for Router 2 to be the next stop. Router 1 therefore forwards the packet to Router 2, but because this router has not yet been updated, it believes that the optimal next hop is Router n. Router 2 therefore forwards the packet back to Router 1, and the packet continues to bounce back and forth between the two routers until Router 2 receives its routing update or until the packet has been switched the maximum number of times allowed.
Routing algorithms should also be flexible, which means that they should quickly and accurately adapt to a variety of network circumstances. Assume, for example, that a network segment has gone down. As many routing algorithms become aware of the problem, they will quickly select the next-best path for all routes normally using that segment. Routing algorithms can be programmed to adapt to changes in network bandwidth, router queue size and network delay , among other variables.
Routing Algorithms
- Design Goals
- Algorithm Types
Switching as a Routing Component
Switching algorithms is relatively simple and it is the same for most routing protocols. In most cases, a host determines that is must send a packet to another host. Having acquired a router's address by some means, the source host sends a packet addressed specifically to a router's physical (Media Access Control [MAC]-layer) address, this time with the protocol (network layer) address of the destination host.
As it examines the packet's destination protocol address, the router determines that it either knows or does not know how to forward the packet to the next hop. If the router does not know how to forward the packet, it typically drops the packet. If the router knows how to forward the packet, however, it changes the destination physical address to that of the next hop and transmits the packet.
The next hop may be the ultimate destination host. If not, the next hop is usually another router, which executes the same switching decision process. As the packet moves through the internetwork, its physical address changes, but its protocol address remains constant.
The International Organization for Standardization (ISO) has developed a hierarchical terminology that is useful in describing the switching process. Using the switching terminology network devices without the capability to forward packets between sub networks are called End Systems (ESs), whereas network devices with these capabilities are called Intermediate Systems (ISs). ISs are further divided into those that can communicate within routing domains (intradomain ISs) and those that communicate both within and between routing domains (interdomain ISs). A routing domain generally is considered a portion of an internetwork under common administrative authority that is regulated by a particular set of administrative guidelines. Routing domains are all called autonomous systems. With certain protocols, routing domains can be divided into routing areas, but intradomain routing protocols are still used for switching both within and between areas.
Other Routing Component
Path Determination as a Routing Component
Routing protocols use metrics to evaluate what path will be the best for a packet to travel. A metric is standard of measurement, such as path bandwidth, that is used by routing algorithms to determine the optimal path to a destination. To aid the process of path determination, routing algorithms initialize and maintain routing tables, which contain route information. Route information varies depending on the routing algorithm used.
Routing algorithms fill routing tables with a variety of information. Destination/next hop associations tell a router that a particular destination can be reached optimally by sending the packet to a particular router representing the "next hop" on the way to the final destination. When a router receives an incoming packet, it checks the destination address and attempts to associate this address with a next hop.
Routing tables also can contain other information, such as data about the desirability of a path. Routers compare metrics to determine optimal routes and these metrics differ depending on the design of the routing algorithm used.
Routers communicate with one another and maintain their routing tables through the transmission of a variety of messages. The routing update message is one such message that generally consists of all or a portion of a routing table. By analyzing routing updates from all other routers, a router can build a detailed picture of network topology. A link-state advertisement, another example of a message sent between routers, informs other routers of the state of the sender's links. Link information also can be used to build a complete picture of network topology to enable routers to determine optimal routes to network destinations.
Other Component of Routing:
Routing Components
Routing involves two basic activities: determining optimal paths and transporting information groups (typically called packets) through an internetwork. In the context of the routing process, the latter of these is referred to as packet switching. Although packet switching is relatively straightforward, path determination can be very complex.
Routing
Related Topics:
- Routing Components
- Routing Algorithms
- Design Goals
- Algorithm Types
- Static Versus Dynamic
- Single-Path Versus Multipath
- Flat Versus Hierarchical
- Host-Intelligent Versus Router-Intelligent
- Intradomain Versus Interdomain
- Link-State Versus Distance Vector
- Routing Metrics
- Network Routing Protocols