Basic Network Routing Technology

Source: Internet
Author: User

What is a route?

Routing refers to the activity of moving information from the source location to the target location through a interconnected network. Generally, information passes through at least one or more intermediate nodes during routing. In general, people will compare routing and switching, mainly because the functions of the two are the same in the eyes of common users. In fact, the main difference between routing and switching is that switching occurs at the Layer 2 (data link layer) of the OSI reference model, while routing occurs at the Layer 3 (Network Layer. This difference determines that different control information needs to be used in the process of routing and exchange of mobile information. Therefore, the two methods to implement their respective functions are different.

As early as 40 years ago, there have been discussions on the routing technology, but it was not until 1980s that the routing technology was gradually commercialized. The reason why the routing technology was not widely used at the beginning was that the network structure before 1980s was very simple and the routing technology was useless. It has not been until the last decade that large-scale interconnected networks have become popular, providing a good foundation and platform for the development of routing technology.

Composition of Routing Technology

The routing technology we usually call is actually composed of two basic activities, namely determining the optimal path and Transmission Information Unit (also known as data packets ). The data packet transmission and exchange are relatively simple and direct, while the route determination is more complex.

Confirm route

Metric, such as the path length, is used by routing algorithms to calculate and determine the optimal path to the destination. To help determine the data transmission path, the routing algorithm can establish and maintain the route table. The routing table contains various routing information. The routing information varies according to the routing algorithm used.

The routing algorithm writes different information into the routing table. The router selects the optimal path based on the destination to which the data packet arrives and sends the data packet to the next vro that can reach the destination. When a router receives the packet, it will also view its target address and use the appropriate path to continue transmission to the subsequent router. And so on until the data packet reaches the final destination.

In addition to the two items we can see in, the routing table also contains other valuable information about route calculation and selection. The router determines the optimal path by comparing the measurement values of different paths, and the specific measurement value depends on the routing algorithm used. We will introduce some commonly used metrics in detail later in this article.

Vrouters can communicate with each other and maintain their route tables by transmitting different types of information. The route update information is generally composed of some or all route tables. By analyzing the route update information sent by other routers, the router can master the topology of the entire network. Link Status broadcast is another type of information transmitted between routers. It can notify the sender of the link status of the information to other routers in a timely manner.

Packet Exchange

The exchange algorithm is simpler than the routing algorithm, and most routing protocols can use the same exchange technology. After the sender of the packet obtains the router address in a certain way, the packet is sent out with the physical address (MAC address) of the router, at the same time, the network layer address is used to identify the final destination of the data packet.

After the router receives the data packet, it will view the Protocol address indicating its destination and decide whether to forward the data packet to the next vro according to the address. If the router does not know how to forward the data packet to its destination, the packet is generally discarded. If the router knows the data packet forwarding path, it will change the physical address to the address of the next vro and then send it out. And so on until the data packet reaches its final destination. During the entire process, the physical address of the data packet changes with the different routers that pass through the mobile process, but the Protocol address representing the destination remains unchanged.

Routing Algorithm

The routing algorithm is mainly determined by several key factors. First, the design intent of the algorithm has a great impact on the actual operation of the routing protocol. Secondly, there are many different types of routing algorithms, each of which has different requirements and influences on network and router resources. Finally, the routing algorithm uses different measurement standards to make the calculation results of the optimal path different.

Design intent

Generally, a routing algorithm can reflect the following design intent:

Simple, low overhead
Robust and stable
Fast Convergence
Strong Applicability
Optimization refers to the ability of the routing algorithm to select the optimal path, which mainly depends on the measurement standard used to calculate the optimal path. For example, a routing algorithm can use both the number of hops and latency of data packets passing through the router as the measurement standard, while latency is also the main standard. Each routing protocol must strictly define the calculation method of the metric value.

The design of the routing protocol should be as simple as possible. In other words, the routing algorithm must be able to use its functions in the most effective way to minimize software and overhead. Especially when the software that implements routing algorithms can only run on machines with limited resources, the effectiveness becomes more important.

The routing algorithm must be robust and can run normally in the case of exceptions or emergencies (such as hardware damage, high load, and execution errors. Because the router is often a connection node of the network, if a problem occurs, it will have very serious consequences. Therefore, the best routing algorithm should be able to withstand the test of time and maintain stable operation under different network conditions.

Routing Algorithms should also be able to quickly converge. Convergence refers to the process in which all routers reach an agreement on the optimal path. When a router fails to be normally used due to a problem, the router sends route update information to the entire network and recalculates the optimal path, and finally make all routers agree on the new path. Routing Algorithms with slow aggregation speed may lead to the emergence of routing circuits.

In the routing circuit shown in, a data packet arrives at router 1 at time t1. Because the information in vro1 1 has been updated, the router knows that the optimal path to the Data Packet Destination should be through vro2 2. Therefore, vro1 1 forwards data packets to vro2 2. However, the information in vro2 2 is not updated, so we still think that the optimal path should pass through vro1 1, and therefore forward the data packet back to vro1 1. In this way, data packets can only be transmitted back and forth between the two routers until vro2 2 receives the route update information or the data packet exceeds the maximum lifetime.

Routing Algorithms should also be highly adaptive and can quickly and accurately adapt to different network environments. For example, if a network segment has a problem, many routing protocols can quickly select a new optimal path to replace the original path that is no longer available. Routing Algorithms should be programmed to adapt to changes in network bandwidth, network latency, and other parameter variables.

Algorithm type

Routing Algorithms can be divided into many different types. The main classification criteria are as follows:

Static vs dynamic
Single Path vs Multi-path
Single-layer structure vs hierarchical structure
Host intelligence vs router intelligence
Inter-Domain vs intra-Domain
Link Status vs Distance Vector
Static vs dynamic

The Static Routing Algorithm is not a real routing algorithm, but a routing ing table established by the network administrator before the network routing function is enabled. The contents of the ing table will not change unless manually modified by the Administrator. Static Routing Algorithms are easy to design and suitable for use in environments where data traffic is predictable and the network structure is relatively simple.

Because the Static Routing System cannot respond to network changes, it is not applicable to today's large and dynamic networks. Most of the mainstream routing algorithms currently used are dynamic routing algorithms. You can analyze the received route update information and make corresponding adjustments to the changed network environment. If the network changes, the routing software recalculates the new route and sends the new route update information. Update information can be transmitted throughout the network. All routers that receive the information will re-execute their respective routing algorithms to modify the route table accordingly.

Static Routing and dynamic routing are not completely opposite. in an appropriate environment, the two can be organically combined to complement each other. For example, we can create a static route and specify a dedicated router as the last resort router to receive all data packets that cannot be correctly routed, we can ensure that all information can be processed in some way.
Single Path vs Multi-path

Some complex routing protocols support multiple routes to the same destination. Unlike a single path algorithm, a multi-path algorithm can achieve multiplexing of data traffic between multiple paths. The advantages of the multi-path routing algorithm are obvious, which can provide greater data throughput and enhance network reliability.

Single-layer structure vs hierarchical structure

In a single-layer routing system, all routers are peer-to-peer. In a hierarchical routing system, some routers form the routing trunk. Data packets sent from any host are first transmitted along the route trunk through a non-trunk router to the trunk router. When the network area of the destination is reached, the master router is transferred to a non-master router, and the destination receiver is finally reached.

Generally, the local node group in the routing system is called a domain, autonomous system, or region. In a hierarchical routing system, some vrouters in one domain can communicate with vrouters in other domains, while other vrouters can only communicate with vrouters in the same domain. In a larger network, there may be more routing levels, and the routing trunk is generally composed of routers at the highest level.

The biggest advantage of hierarchical routing is that its structure is consistent with the management and organizational structure we adopt in real enterprises. Therefore, it can well support internal data traffic and models of the company. For example, in Enterprise Networks, most network communication occurs in a small range of groups or domains. Therefore, a vro in a domain only needs to know how to communicate with other vrouters in the domain, do not care about the routers in other domains. In this way, the routing algorithm can be simplified and the route update traffic can be reduced accordingly.

Host intelligence vs router intelligence

The so-called host intelligent algorithm refers to the complete route in the whole transmission process determined by the sender of the data packet, which is also called the source route. In the source routing system, the role of a router is simple storage and forwarding.

The router intelligent algorithm is based on the assumption that the sender of the data packet has no decision on the route, and the router selects and determines the data transmission path based on their respective computing methods.

Inter-Domain vs intra-Domain

Some routing algorithms can only be used in separate domains, while other routing algorithms can be used between domains or domains. These two algorithms have different properties. Therefore, a good intra-Domain Routing algorithm may not be used in an Inter-Domain environment.

Link Status vs Distance Vector

The link status algorithm (also known as the shortest path Priority Algorithm) can transmit route information to all nodes on the network. However, each vro sends a small part of route table information describing its link status to the outside world. The Distance Vector Algorithm (also known as the Bellman-Ford algorithm) requires each router to send all or most of the route table information, but this information can only be sent to the neighboring router. Therefore, the difference between the two is that the link status algorithm can send a small amount of update information to the entire network range, while the distance vector algorithm can only send a large number of update information to the neighboring router.

Because the convergence speed of The Link State algorithm is relatively fast, it is more effective than the distance vector algorithm to avoid the emergence of routing circuits. However, on the other hand, the link state algorithm requires more CPU processing time and system memory, which is more costly than Distance Vector Algorithm Implementation and support. Apart from the differences mentioned here, both routing algorithms can be used in most network environments.

Routing Metric

The routing algorithm uses many different metrics to determine the optimal path. Some complex routing algorithms can combine several independent metrics to make more comprehensive and accurate routing decisions. The following are the most common routing metrics:

Path Length

Communication cost
Path length is the most common routing metric. Some routing protocols allow network administrators to specify route costs for each network connection. In this case, the path length is the sum of route costs related to all connections. Other routing protocols can also define the number of hops, that is, the number of network interconnection devices (such as routers) that data packets must pass from the source address to the destination.

In the scope of routing algorithms, reliability mainly refers to the availability of each network connection (usually expressed by the error rate ). Some network connections may be more prone to problems than other connections. After a network failure is fixed, some network connections may be faster or more convenient to restore than other connections. Network administrators can take into account any reliability factor and specify a reliable value for each network connection accordingly.

Route latency refers to the total time required to move data packets from the source address to the destination through the network. There are many factors that can cause route latency, including the bandwidth of the network connection, the load of each route, network congestion, and the physical distance that packets need to pass. Because routing latency is a comprehensive reflection of multiple important variables, it is widely used.

Bandwidth refers to the traffic throughput capacity provided by a network connection. Obviously, the bandwidth of 10-Mbps Ethernet is much higher than that of the 64-kbps leased line. Although the bandwidth reflects the maximum rate a network connection can provide, sometimes the route using the broadband connection is not necessarily the optimal path. For example, if a high-speed connection is very busy, the actual waiting time for sending data packets may be longer.

Load refers to the amount of network resources and devices such as routers busy. We can compute loads in multiple ways, such as CPU usage and the number of packets that can be processed per second. Long-term continuous monitoring of routing load can more effectively manage and configure network resources.

Communication cost is another very important routing measurement standard, especially for enterprises that are more concerned with the running cost than the network performance. For example, enterprises sometimes switch to private lines with greater latency to save the cost of using public lines, which is a concrete manifestation of communication costs. Article entry: csh responsible editor: csh

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.