1 Some problems of restricting BGP expansibility
BGP is the IP network Interconnection protocol applied to Internet, which provides a stable and secure routing protocol for the interconnection between operators, and has rich routing control mechanism. To better control the routing strategy, most operators now deploy BGP to backbone routers. With the continuous expansion of the network, the increasing number of routers and the proliferation of routing information items, it is becoming more and more important to solve the problem of BGP extensibility.
At present, the scalability of BGP faces several problems.
(1) The Full-mesh problem of I-BGP
BGP routing protocol is divided into I-BGP and E-BGP two parts. I-BGP is used between routers in autonomous domains, E-BGP between routers in autonomous domains. To prevent the generation of loop loops, the BGP protocol requires a router to be routed through I-BGP and no longer broadcasts to other I-BGP neighbors, so all routers participating in the I-BGP protocol in an autonomous domain have to establish sessions with other routers to ensure that routing information is properly broadcast to each router. According to this principle, the total number of I-BGP sessions in an autonomous domain is NX (N-1)/2 (n is the number of routers running I-BGP), and when n grows, the number is staggering: 100 routers, the number of sessions is 4950. This is a huge burden for network devices, and it will complicate the management and configuration of the network. The backbone network is usually composed of a large number of running I-BGP routers, therefore, whether this problem can be solved, directly affect the size of the network size.
(2) The problem of routing oscillation when changing routing policy
BGP is a routing protocol for incremental updates, and when a new route is to be published, the router sends update information to the neighbor, and if a route is to be deleted, the withdraw message is sent. The flap definition of BGP routing is that when a route is retracted (withdraw), it is broadcast (Update) and treated as a flap. Because the recovery and update of any one route will result in the whole routing table of a router being recalculated, the load on the router device will be under great pressure when the flap situation is much higher. According to the author's experience in practical work, under normal circumstances, a high-end router in the calculation of BGP routing, the CPU load is basically around 80%~90%, sometimes even to 100%, occupy almost all the CPU resources. Although most high-end routers now distribute routing modules and forwarding modules to different hardware, to reduce the main CPU busy caused by the decline in the performance of the router, but the frequent changes in the routing table and update, the entire device has a certain impact on the operation, and such calculations will be retrieved or broadcast with the route, Continue to expand inside the autonomous domain, causing the same problem for the internal routers.
(3) Other issues to be considered
In addition to the above two problems will lead to excessive consumption of router resources, there are other factors, such as the number of routes, BGP routing table size and routing calculation of the way, but also affect the performance of the router.
In addition, the larger the network, the more routing items, configuration and management of the more complex, which needs to be in the network design as far as possible to simplify the configuration, reduce the workload of managers, to avoid man-made causes of failure.
2 How to solve the problem of restricting BGP scalability
In view of the above problems, some related solutions are introduced.
(1) methods to solve the bottleneck of I-BGP session number
There are two ways to solve the problem of too many I-BGP sessions mentioned above:
1) Methods of the Federation (confederations)
The Alliance works by dividing the original autonomous domain network into multiple child autonomous domains and configuring the original as number to each router with the Confederations ID. There are two benefits: one is to retain the original I-BGP properties, including local preference, Med, and Next_hop, which can be automatically implemented in the Confederations function without the administrator having to configure the filtering internal as number information at the exit of the network.