Comprehensive Analysis of Internet Router protocols

Source: Internet
Author: User

With the development of China's routing industry, vro has been widely used and promotes the improvement of vro protocols. The routing process can be outlined to find the path to each possible destination for a node. The route appears in each layer from the first layer to the seventh layer. The routes that people are familiar with appear on the layer 3 (Network Layer). Therefore, we only discuss the Layer 3 IP routing.

Protocols that exchange route information are connected to many vrouters in the world. Although these vro protocols are not the same, they can still provide their common network views through route tables. The route table stores all necessary information for the router to reach any destination of the network.

Routing Protocol

Various routing protocols are used to enter route tables in the network. Protocols such as BGP, OSPF, RIP, and ISIS can be transmitted to all routers in a correct and consistent network view. Routing Protocol: you can imagine that if each Router Protocol stores the information required for each target point that can be reached from its nodes, it is likely that the Router Protocol will accumulate a huge route table. Because of the physical (cpu, memory) limitations, it is difficult for a router to handle a large route table sometimes. Therefore, we need to minimize the route table without affecting the ability to reach each destination. For example, if a vro protocol is connected to the Internet by connecting to a DS1 link of another vro1, The vro can store the information of all nodes on the Internet, or it can store non-local information outside the DS1 serial link. That is to say, the router protocol does not store any information about the non-local network destination to be searched for by the Data "package" in its routing table, but sends these "packets" to the router at the other end of the serial link, this Router Protocol provides necessary information.

In this example, the router at the other end of the serial DS1 link is called "Gateway of Last Resort ". This simple trick can save 30 orders of magnitude for the route table. There is no need to exchange route information between routers too frequently. Generally, the blender in the route table puts a lot of unnecessary pressure on the poor memory and CPU that any Router Protocol can provide. Information replication should not affect the Router Protocol forwarding. Although it is not necessary to refresh the route table every millisecond, the route table cannot be refreshed every week. An important goal of a route is to provide a route table for the host to accurately reflect the current network status.

The most important operation of a router is to send the received packets to the correct path. Unrouted packets may cause data loss. The inconsistency of the route table will cause the routing loop and send a packet cyclically between two adjacent interfaces.

It is hoped that all router protocols will have fast convergence. Convergence can be informal defined as the unit of measuring the speed of all router protocols to obtain a consistent network view. People want a very small convergence time, because every router on the network can accurately reflect the current network topology even if the network topology (that is, the network view) is seriously changed. When the network topology is changed, each vro must transmit data to help other vro protocols converge to the correct network view. However, there is also a problem of fast convergence when refreshing the route table. If a link is rapidly vibrating (disconnected and closed later), it will generate a large number of installation and Revocation requests. This link will eventually consume the resources of each vro protocol on the network, because other vrouters are forced to quickly install or cancel the route. Therefore, even if fast convergence is the goal of the routing protocol, it is not a panacea for all network problems.

Distance Vector Routing

The Distance Vector Routing Protocol distributes a list of records in the form of <target, overhead> to all neighbors of the router. These records assign the overhead value to each non-current node in the network. It is worth noting that this information is only distributed to the neighbor router of the source router. The neighboring routers here are often physical, but they also apply to logical conditions in eBGP. Overhead refers to the total link overhead from the source router to the target node. The source router regularly refresh its distance vector record and distribute the record to its neighboring routers. The neighboring router compares the received records with the existing ones. If the previous overhead is small, the router sends the output records along the path indicated by the distance vector records received in the past.

Many distance vectors will encounter an infinite number in actual use. For example, assume that all links have an overhead unit and each pair of adjacent nodes corresponds to one unit. If vrox X is connected to vroy Y and vroy Y is connected to the vro, we will find the problem of infinity. Y knows that Z has 1 unit overhead and X knows that Z has 2 units overhead. If the link YZ is disabled, the overhead of the link becomes infinite. Now Y knows that the overhead to Z is infinite, and it sends this distance vector route to X. Assume that X is sent to Y at this time, and a Distance Vector Route claims that it has two units of overhead to reach Z. Now Y will think that it can reach Z through X, and it will send to X a refreshed Distance Vector Route claiming that its overhead to Z is three units (as shown in figure 3 ). Note that X does not think that the Distance Vector Route sent by Y is calculated by the Distance Vector Route sent to Y. This is a serious defect of distance vector routing. They do not contain information about routing barriers in their unimproved structure. As shown in the preceding example, the router will constantly change the path to Z. The routers X and Y will always exchange the path information about the Z router or wait until the value of the overhead unit reaches a predefined infinity value.

Obviously, LSP is an integral part of the convergence process. If an error LSP is added to the network. This will cause incorrect routing information (which may Route packets along a longer path than the original one) and even cause a routing black hole. If vroc C broadcasts a route entry to another vro, but when the link is disconnected, vroc C withdraws the broadcast. Unfortunately, the second LSP is first served and the first LSP is first served. At this time, the route tables of other router protocols cannot correctly reflect the network topology, but can only wait for another correct LSP to come. To solve this problem, the LSP introduces a sequence code. Therefore, all vrouters on the network initialize their serial codes with some values as the starting values, and then broadcast their LSP. This solves the problem just now.

When sequence code is used, the space of sequence code is limited. All the serial codes available for LSPs are set to a limited value. Therefore, when the sequence code reaches the maximum value, it must start from the minimum value. This makes it difficult for the router to compare the current records and refresh records of the link status, because priority is given to the large serial codes. To solve this problem, you can define a maximum aging time for LSP. That is to say, if the router does not receive a refresh record within X, it will discard the existing record and wait for the record to be updated. Note that the path to the destination must be invalid. For example, when vroy Y is disconnected from a local network, vroy Y broadcasts the link information to Vroz Z, at this time, the routers in the local network still think that they can still reach Z. If they do not receive refresh records within the maximum aging time, they will assume that the link to Y is no longer reachable. In this way, the route tables of all vrouters will be consistent, and vrouters Y and Z can also use limited serial codes.

The initialization of the sequence code is another important aspect of this issue. Assume that vroy Y is restarted, and the network begins to recalculate the path again. When the Link Status Protocol of the router starts to work, it must know the value of the serial code for re-initializing it to make it consistent with other router protocols. Therefore, it broadcasts the path information with a special initialization set. This record tells other routers that they need the serial code and other routers will tell them.

Related Article

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: info-contact@alibabacloud.com 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.