The invention concerns a method of Border Gateway Protocol (BGP) next-hop monitoring in a Layer 3 virtual private network (L3VPN) model. Specifically, the method verifies learned route information over BGP by monitoring the validity of the route's next hop in the L3VPN model.
The internet is decentralized and interconnected by Autonomous Systems (ASs). Each AS is managed by a Service provider (Internet Service Provider—ISP) to provide Internet and Virtual Private Network (VPN) services. Currently, Border Gateway Protocol (BGP) is the only routing protocol used for routing between different ASs.
Layer 3 Virtual Private Network (L3VPN) is one of the most popular and important VPN applications, deployed on Multi Protocol Label Switching (MPLS) technology combined with BGP. For service providers, L3VPN allows simultaneous transport of multiple users' data through a shared core network. The L3VPN model has three main types of devices: routers located at the provider's edge (Provider Edge—PE), routers located at the user's edge (Customer Edge—CE), and devices located inside the provider's network (Provider-P). To establish a L3VPN channel, the service provider must establish the BGP VPN address family between PE devices. At each PE device, there will be Virtual Routing and Forwarding (VRF) tables corresponding to different users. The user's route information will be stored in VRF tables and advertised over the BGP protocol.
The BGP protocol has its own routing tables, which will also contain the user's route information. Each route information will include the next-hop address field—where next to send the packet in order to get to the target. Routes can be either valid or invalid. Of the valid routes, optimal routes that are chosen to forward packets are best routes, while others are non-best routes. The best and valid routes are imported into the VRF tables and advertised by the router to its BGP peers. By default, the BGP protocol will use the BGP scanner process, which performs a next-hop validation of each of the user routes, thereby determines whether to keep them in the VRF table. This process works with a 60 second cycle, i.e. every 60 seconds the validity of the user route is re-examined. This value may be changed, but changing it lower will increase the load on the Central Processing Unit (CPU). Another way to validate these routes is to use the BGP session keepalive timer and the BGP hold timer. Every time the keepalive timer expires, a BGP router sends a keepalive message to its peer to announce that it is still running. Also, if a BGP router does not receiver a BGP message from a peer before the hold timer ends, the BGP session with this peer will fail, and all the route information learned through this BGP session will be removed by the router. The BGP keepalive timer and hold timer have default values of 60 seconds and 180 seconds, respectively. These can be changed to lower values, but the amount of route information sent through the BGP protocol can be very large, up to tens of thousands of routes, thus doing so will increase CPU processing capacity during route setup and update. Convergence of user routes over the L3VPN channel will depend on the convergence of the BGP protocol, but the convergence time of BGP does not meet the requirements of the user and the service provider itself.
To solve this problem of long L3VPN route convergence time, we propose a BGP next-hop monitoring method which makes this convergence time shorter and independent of the BGP convergence time.
In order to converge quickly when a route is no longer valid, a router located at the provider edge (PE) must determine the validity of the next-hop for that route very quickly. If the next hop is invalid or there is a change in cost when it comes to the next hop, an update is needed to ensure convergence time.
Thus, the PE has been improved to allow for the fastest identification of valid next hops. The steps to implement this method on the PE device are as follows:
Step 1: The development team made modifications on the open source code that allowed the creation of IP Monitoring (IPM) tables corresponding to the different virtual routing and forwarding (VRF) tables in the layer 3 virtual private network (L3VPN).
Step 2: The development team edited the open source of Border Gateway protocol (BGP) so that when importing user routes into VRF, BGP will also remember the next-hops to follow if the BGP next-hop monitoring function is enabled.
Step 3: Lastly, the development team edited the source code so that if there is a next-hop related change event in the global VRF table, the table will send a notification to the IPM table. The IPM table will then inform the BGP routing table to recalculate the valid routes and the best routes. The notification time from IPM for BGP protocol is configurable, with the minimum of 0 seconds (notify immediately).
Step 1: The development team made a modification on the PE device that allowed the creation of IP Monitoring (IPM) tables corresponding to the different virtual routing and forwarding (IPM) tables in the layer 3 virtual private network (L3VPN). To do this, a L3VPN channel between different PEs must first be configured.
Step 2: On the PE device, the development team modified the border gate protocol (BGP) so that when it imports user routes into the VRF, if the BGP next-hop monitoring function is enabled, the BGP process will write the next-hops to be tracked into the IPM table. Specifically, this step does the following:
Step 3: The development team made a source code edit on the PE so that if there is a next hop related change event in the global VRF table, it will send a notification to the IPM table. The IPM table will then inform the routing table in the BGP protocol to recalculate the valid routes and the best routes.
The method was implemented on the Site Router version EVT2 manufactured by VHT. The Site Router acts as a router at the provider's edge (PE) in the service provider's network. The Site Router establishes the BGP protocol and L3VPN with other PE devices in the network, creating a seamless channel for providing network services. Each user's routing information is recorded in their respective VRF table and next-hop monitoring is also enabled on all these VRFs.
Results
Comparison between using the three-label encapsulation multi-protocol label switching (MPLS) method and using the conventional MPLS method, shows that both methods are capable of providing layer 3 virtual private network service. However, there is a difference between these two methods in terms of economic efficiency, as shown in Table 1 below:
In summary, the proposed invention provides a method for tracking the next-hop of a border gateway protocol in a Layer 3 virtual private network model. The method helps to determine the next-hop of a route as fast as possible. If the next-hop becomes invalid or the route to the next-hop has a change in cost, an update is carried out to ensure minimal convergence time.
Number | Date | Country | Kind |
---|---|---|---|
1-2022-04146 | Jun 2022 | VN | national |