Routing Technologies
Routing
Routing is one of the fundamental aspects of networking. The ability of routers to learn possible routes (rather than make you manually configure and constantly update the routes) is one of the primary reasons that ARPANET which originally connected seven sites, scaled into the modern Internet in only a few short years.
Routed networks are often large and complex, and it would be prohibitively difficult to manage and update network information on all routers all the time. Several algorithms have been developed to help address these difficulties. These algorithms allow the routers to learn about the network and then make decisions based on that information.
To learn paths (or routes) through a network, and make decisions on where to send packets, a router
- Destination address - Typically the Internet Protocol (IP) address of the data’s (packet) destination.
- Source address - Where the information came from (typically an IP address).
- Possible routes - Routes that can get information from its present location or source to some other location (the destination or closet known point).
- Best route - The best path to the intended destination. (“Best” can mean many things.)
- Status of routes - The current state of routes, which routers track to ensure timely delivery of information.
What Exactly Does “Best” Mean?
Routers often make decisions about the best possible path to get information from a source to a destination. “Best,” however, is loosely defined, and it depends on what is valued by the network. These measurements of value are referred to as metrics. Which metrics are valued by the network is determined by the network administrator. Several metrics are listed here:
- Hop count - Number of times a packet goes through a router.
- Delay time - Time required to reach the destination.
- Reliability - Bit-error rate of each network link.
- Maximum transmission unit (MTU) - Maximum message length (or packet size) allowed on the path.
- Cost - Arbitrary value based on a network- administrator'determined value. Usually some combination of other metrics.
Static Versus Dynamic
Routers must learn about the network around them to make determinations on where to send packets. This information can either be manually entered (static routes) or learned from other routers in the network (dynamic routes):
- Static routes - When a network administrator manually enters information about a route, it is considered a static route. Only a network administrator can change this information. (That is, the router does not learn from, or update, its routing tables based on network events.) Static routes allow for tight control of packets but are difficult to maintain and prone to human error.
- Dynamic routes - Routers on a network can learn about possible routes and current route status from other routers in the network. Routes learned in this way are called dynamic routes. Routers in dynamic routes learn about changes in the network without administrative intervention and automatically propagate them throughout the network.
Flat Versus Hierarchical Routing
With flat networks, all routers must keep track of all other routers on the network. As networks grow, the amount of information contained in the routing tables increases.
Although this method is simple, it can result in poor network performance LI because the number of routing updates traffic grows with each new router.
Hierarchical networks segment routers into logical groupings. This arrangement simplifies routing tables and greatly reduces overhead traffic.
Intradomain Versus Interdomain Routing
You can easily understand intradomain and interdomain routing in the context of large-scale hierarchical networks. Think of each segment as its own autonomous network. Within each autonomous network, intradomain routing protocols, also called Interior Gateway Prototols (IGPs), exchange routing information and forward packets. Interdomain routing protocols, also called Exterior Gateway Protocols (EGPs), are used between autonomous networks.
Distance-Vector Versus Link-State Routing
The two main classes of routing are distant vector routing and link-state routing. With distance-vector routing, routers share their routing table information with each other. Also referred to as “routing by rumor,” each router provides and receives updates from its direct neighbor. In the following figure, Router B shares information with Routers A and C. Router C shares routing information with Routers B and D. A distance vector describes the direction (port) and the distance (number of hops or other metric) to some other router. When a router receives information from another router, it increments whatever metric it is using. This process is called distance accumulation. Routers using this method know the distance between any two points in the network, but they do not know the exact topology of an internetwork.
Network discovery is the process of learning about indirectly connected routers. During network discovery, routers accumulate metrics and learn the best paths to various destinations in the network. In the example, each directly connected network has a distance of 0. Router A learns about other networks based on information it receives from Router B. Routers increment the distance metric for any route learned by an adjacent router. In other words, any distance information A learns about other routers from B, it increments by 1.
Link-State Routing
With link-state routing, also known as shortest path first (SPF), each router maintains a database of topology information for the entire network. Link-state routing provides better scaling than distance-vector routing because it only sends updates when there is a change in the network, and then it only sends information specific to the change that occurred. Distance vector uses regular updates and sends the whole routing table every time. Link-state routing also uses a hierarchical model, limiting the scope of route changes that occur.