Distance vector protocol route discovery + suppression Loop
Vro Network c algorithm directly transmits route table information from the vector protocol. The router in the network obtains the route information from its neighbor router, and sends the route information together with its local route information to other neighbors, so that the level-1 transmission can achieve full network synchronization. Each router does not understand the entire network topology. They only know the network conditions that are directly connected to themselves, and update their route tables based on the route information obtained from the neighbors.
It is relatively simple to implement or manage the distance vector protocol, but it is slow to converge, has a large number of packets, occupies a large amount of network overhead, and requires various special processing to avoid routing loops.
The distance vector algorithm requires each router to transmit its route table to the adjacent router. When the router receives the updated route information, it first compares the updated information with the information in the original route table. the local route table must be modified (assuming RouterB's D-V packet is received by RouterB) to reflect the latest network changes:
(1) If there is no routerentry in the RouterB route table, the corresponding table item must be added to the RouterB route table. The target network is the target network in the RouterB route table, the path overhead is the path overhead in the RouterB table item plus l (assuming the number of hops is used to calculate the path overhead ). the next hop is RouterB;
(2) the overhead of the route table to a target network in RouterB is less than that of the route table to the target network in RouterB. this indicates that the route to the target network consumes less traffic if it passes through the RouterB path. then, the routerentry is changed to RouterB, and the path overhead is the path overhead in RouterB plus l:
(3) The next hop to a target network in the routertable is RouterB, and the overhead of the route table to the target network in RouterB changes. the path overhead of the corresponding table item in route_route_item must be modified. replace the original path overhead with the updated path overhead of RouterB plus l;
(4) The next hop to a target network in the routertable is RouterB, And the RouterB route table no longer contains the path to the target network, then, the corresponding path in the routeentry table should be deleted.
Methods to suppress broadcast storms:
Horizontal segmentation is one of the most common solutions to avoid loops in distance vector routing protocols. Analyze the cause of the route loop, one of which is because the router tells the route information learned from a neighbor. The idea of horizontal segmentation is that during route information transmission, route information is no longer sent to the interface that receives the route information. As shown in:
Vroc C tells vrob B to go to route 11.4.0.0. vrob B will pass the route information to vroa. At the same time, it will also be sent back to router C. When the network 11.4.0.0 does not crash, router C will not accept the route information transmitted by router B to the network 11.4.0.0. Because router C has a lower cost of routing.
If router C crashes when it reaches route 11.4.0.0, router C will accept the route information transmitted by router B to route to network 11.4.0.0, although this route entry is already an incorrect route entry (because the route from router C to network 11.4.0.0 crashes, route 11.4.0.0 learned by router B from router C is incorrect ). But router C does not know this.
In this way, router B thinks that it can go to network 11.4.0.0 through router C, and router C thinks it can go to network 11.4.0.0 through router B, forming a loop.
The horizontal segmentation method solves this problem. horizontal segmentation does not allow the router to pass route update information back to the port that sends the route information. In, router B learned the route to network 11.4.0.0 from router C. Horizontal division rules: vrob B no longer transmits route information destined for 11.4.0.0 to vroc C, thus avoiding loop generation to a certain extent.