A BFD Configuration Deployment Method and System
By deploying the BFD disk selection module on the main control layer of the 5G network, and dynamically adjusting and balancing the deployment of BFD configuration, the problems of easy loss of BFD configuration and board load imbalance are solved, and the rapid BFD fault detection and maximum overall machine specifications are achieved.
Patent Information
- Application Number
- CN202111399490.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-19
- Publication Date
- 2025-07-01
- Estimated Expiration
- 2041-11-19
AI Technical Summary
In 5G networks, BFD configuration is prone to loss and board load is unbalanced, resulting in the inability to achieve rapid BFD fault detection and maximization of the entire machine specification.
By deploying the BFD disk selection module on the main control layer, the configuration balance of each business board is detected in real time, and the types and objects of the board to be deployed are determined based on the type of BFD configuration and the configuration balance, and the BFD configuration amount on each business board is dynamically adjusted and balanced.
It avoids the loss of BFD configuration, realizes rapid BFD fault detection and maximization of the entire machine specifications, and at the same time realizes load balancing of BFD configurations for each board.
Smart Images

Figure CN114173378B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technologies, and particularly relates to a BFD configuration and deployment method and system. Background Art
[0002] With the explosive development of 5G mobile Internet and Internet of Things, various emerging services and businesses with different requirements and characteristics are frequently deployed in the 5G network. These services and businesses have high requirements for the bandwidth, latency, etc. of the 5G network. Therefore, once the network is interrupted, the services cannot be restored in time, resulting in significant losses. Thus, in order to reduce the impact of link and device failures on services and improve the reliability of the network, network devices need to quickly detect communication failures with adjacent devices so as to take timely measures to ensure the normal operation of services. Among them, BFD (Bidirectional Forwarding Detection) provides a general, standardized medium-independent and protocol-independent fast fault detection mechanism for quickly detecting the forwarding connectivity of services such as links, IP (Internet Protocol) routes, LSP (Label Switching Path), and PW (Pseudo-wire) in the monitored network.
[0003] Since the devices at the backbone aggregation and core nodes in the current 5G network have large capacities, the backbone aggregation and core node devices both adopt a distributed architecture. In the distributed architecture devices, the configuration of the BFD user command line is unified at the control plane and is divided into dynamic and static according to whether signaling is used. Among them, for dynamic, a BFD session is established by BFD signaling messages, and for static, a BFD session is established by user configuration and sent through the control plane. The BFD session formed at the control plane usually generates a BFD configuration and downloads it to the board.
[0004] However, the BFD configuration specification capacity of each board card is usually 2K, and the BFD configuration distribution is usually limited by the service configuration, that is, most BFD configurations need to be deployed on the same board card following their corresponding service configurations. For example, if the protocols or services are concentrated on a certain board card A, the BFD corresponding to the protocols or services will also be configured on the board card A. Thus, in this scenario where the BFD configuration is strongly correlated with the service, if the number of TUNNEL / LSP / PW / Route of the service is relatively large, the number of associated BFD configurations will also be relatively large; therefore, when the service specification reaches 2K services, the BFD configuration will also reach 2K. If more BFD configurations are continued to be added on the board card A, it will cause the loss of the BFD configuration and it cannot take effect, so that the system requirements cannot be met, and thus the BFD fast detection and convergence service cannot be realized, and the device BFD cannot reach the maximum specification of the whole machine; in addition, there are multiple board cards in the distributed system (such as board card A, board card B, board card C, etc.). If all BFD configurations are deployed on the board card A and no BFD configurations are deployed on the board card B and board card C, it will make the board cards B and C idle. For the whole machine, it will cause a high resource occupancy rate of the board card A and a low resource occupancy rate of the board card B and board card C, so that the board cards in the distributed system cannot achieve load balancing, and thus the performance of the distributed system cannot be maximally exerted. Summary of the Invention
[0005] This application provides a method and system for deploying BFD configurations to solve the problems of easy loss of BFD configurations and unbalanced board card loads in related technologies.
[0006] In a first aspect, a method for deploying BFD configurations is provided. The method for deploying BFD configurations is applied to a BFD disk selection module on the master control layer and includes the following steps:
[0007] Obtain the BFD configuration to be deployed;
[0008] Detect the outgoing interface type of the BFD configuration to be deployed;
[0009] When the outgoing interface type is a non-LAG outgoing interface, calculate the remaining configuration amounts of each service board card respectively;
[0010] Determine the service board card to be deployed from multiple service board cards according to the remaining configuration amounts, and deploy the BFD configuration to be deployed to the service board card to be deployed.
[0011] In some embodiments, after the step of detecting the outgoing interface type of the BFD configuration to be deployed, it further includes:
[0012] When the outgoing interface type is a LAG outgoing interface, deploy the to-be-deployed BFD configuration to the main control cross-connect board card.
[0013] In some embodiments, after the step of deploying the to-be-deployed BFD configuration to the main control cross-connect board card, it further includes:
[0014] Forward the BFD packet corresponding to the to-be-deployed BFD configuration from the main control cross-connect board card across the board to the first service board card where the service corresponding to the to-be-deployed BFD configuration is located, for BFD to detect the failure of the communication link.
[0015] In some embodiments, the forwarding of the BFD packet corresponding to the to-be-deployed BFD configuration from the main control cross-connect board card across the board to the first service board card where the service corresponding to the to-be-deployed BFD configuration is located includes:
[0016] Generate a BFD packet according to the to-be-deployed BFD configuration, and the BFD packet includes BFD_ID information;
[0017] Forward the BFD packet to the destination service board card, so that the destination service board card determines the next-hop outgoing interface information and routing outgoing interface information corresponding to the BFD packet according to the BFD_ID information in the BFD packet, determines the first service board card where the service corresponding to the to-be-deployed BFD configuration is located according to the next-hop outgoing interface information and the routing outgoing interface information, and forwards the BFD packet to the first service board card.
[0018] In some embodiments, when the outgoing interface type is a non-LAG outgoing interface, calculating the configuration quantity balance of each service board card includes:
[0019] When the outgoing interface type is a non-LAG outgoing interface, respectively obtain the first real-time BFD configuration quantity and the balanced configuration quantity of each service board card;
[0020] Calculate the configuration quantity balance of each service board card based on the balanced configuration quantity and the first real-time BFD configuration quantity.
[0021] In some embodiments, before the step of obtaining the first real-time BFD configuration quantity and the balanced configuration quantity of each service board card, it further includes:
[0022] Obtain the resource information of each service board card, and the resource information includes CPU main frequency, number of CPU cores, FPGA specification, and chip processing capacity;
[0023] Determine the balanced configuration quantity of the service board card according to the resource information.
[0024] In some embodiments, the resource information further includes the real-time service load of the service board.
[0025] In some embodiments, after the step of deploying the to-be-deployed BFD configuration to the to-be-deployed service board, the method further includes:
[0026] Obtaining the second real-time BFD configuration amount of the to-be-deployed service board;
[0027] Detecting whether the second real-time BFD configuration amount of the to-be-deployed service board is less than the BFD configuration amount at the previous moment;
[0028] If so, receiving a BFD configuration migration command, where the BFD configuration migration command includes migration information of the to-be-migrated BFD configuration;
[0029] Based on the migration information, migrating the to-be-migrated BFD configuration from other service boards to the to-be-deployed service board.
[0030] In a second aspect, a BFD configuration deployment system is provided, including: a master control layer and a forwarding layer. A BFD disk selection module is provided on the master control layer. The BFD disk selection module is used to obtain the to-be-deployed BFD configuration; detect the outgoing interface type of the to-be-deployed BFD configuration; when the outgoing interface type is a non-LAG outgoing interface, calculate the configuration amount balance of each service board on the forwarding layer respectively; determine the to-be-deployed service board from multiple service boards according to the configuration amount balance, and deploy the to-be-deployed BFD configuration to the to-be-deployed service board.
[0031] In some embodiments, the BFD disk selection module is further used for:
[0032] When the outgoing interface type is a LAG outgoing interface, deploying the to-be-deployed BFD configuration to the master control cross-board card.
[0033] The beneficial effects brought by the technical solution provided by this application include: not only can avoid the loss of BFD configuration, effectively realize fast BFD fault detection and maximize the whole machine specification, but also can realize the BFD configuration load balance of each board.
[0034] The present application provides a BFD configuration deployment method and system. The BFD configuration deployment method is applied to a BFD disk selection module on the master control layer, and includes: obtaining a BFD configuration to be deployed; detecting the type of the outgoing interface of the BFD configuration to be deployed. When the type of the outgoing interface is a non-LAG outgoing interface, calculating the remaining configuration amount of each service board separately; determining the service board to be deployed from multiple service boards according to the remaining configuration amount, and deploying the BFD configuration to be deployed to the service board to be deployed. By deploying a BFD disk selection module on the master control layer, the present application centrally manages hardware resources, that is, the BFD disk selection module detects the remaining configuration amount of each service board in real time, and determines the type and object of the board to be deployed according to the type of the BFD configuration and the remaining configuration amount, which is separated from service configuration and protocol configuration, so that the BFD configuration does not need to be deployed on the same board as its corresponding service or protocol, and dynamically adjusts and evenly deploys the BFD configuration amount on each service board according to the remaining configuration amount, which can not only avoid the loss of BFD configuration, effectively realize fast BFD fault detection and maximize the overall machine specification, but also realize the load balance of the BFD configuration of each board. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0036] Figure 1 It is a flowchart of a BFD configuration deployment method provided by an embodiment of the present application;
[0037] Figure 2 It is a schematic structural diagram of a BFD configuration deployment system provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0038] To make the objectives, technical solutions, and advantages of the embodiments of the present application clearer, the following will clearly and completely describe the technical solutions in the embodiments of the present application with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some, but not all, of the embodiments of the present application. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present application without creative efforts fall within the scope of protection of the present application.
[0039] The embodiments of the present application provide a BFD configuration deployment method and system, which can solve the problems of easy loss of BFD configuration and unbalanced board load in the related art.
[0040] Figure 1 It is a schematic flowchart of a BFD configuration deployment method provided by an embodiment of the present application. The BFD configuration deployment method is applied to a BFD disk selection module on the master control layer, and includes the following steps:
[0041] Step S10: Obtain the BFD configuration to be deployed;
[0042] Exemplarily, the configurations of each board are generally sent from the master control level. For example, the master control level makes a disk selection control decision according to actual requirements and generates a BFD configuration, and sends the BFD configuration to the corresponding board. Among them, because of different designs such as hardware driver chips for each board, the maximum number of BFD configuration entries that can be supported is different. However, due to limited hardware resources of the board, the maximum specification of the BFD configuration amount of the board is usually 2K entries. If the BFD configuration amount of the board exceeds 2K entries, then if the BFD configuration continues to be deployed to this board, configuration loss will occur, and then the fast detection and convergence service function of BFD cannot be realized. At the same time, it is very difficult to realize the full load of the BFD configuration of the maximum specification of the device.
[0043] In addition, the current BFD configuration is often associated with protocols and services. That is, if 2K services are deployed on a board, then the BFD configuration corresponding to the 2K services will also be completely deployed on this board, resulting in the BFD running at full load on this board. For a distributed system with multiple boards, there may be other idle boards or boards with low resource occupancy rates, which may lead to the inability of the boards in the system to achieve load balancing. Therefore, this embodiment proposes to set up a BFD disk selection module on the master control layer, and deploy the BFD configuration by means of centralized selection or designated board by the BFD disk selection module. Therefore, the BFD disk selection module in this embodiment obtains the BFD configuration to be deployed.
[0044] Step S20: Detect the outgoing interface type of the BFD configuration to be deployed;
[0045] Exemplarily, currently, service configurations or protocol configurations are generally deployed on service boards, so the BFD configuration is also deployed on service boards. The board types usually include master control cross-disk boards and service boards, and the outgoing interface types of the BFD configuration include LAG (Link Aggregation Group) outgoing interfaces and non-LAG outgoing interfaces. Therefore, the BFD disk selection module in this embodiment can iterate to obtain the outgoing interface according to the BFD configuration, and can set the corresponding board type to be deployed for the BFD configuration according to the outgoing interface type of the BFD configuration, thereby separating the BFD configuration from the service configuration or protocol configuration. It can not only make the BFD configuration not need to be deployed on the same board as its corresponding service or protocol, but be deployed on other boards, providing the possibility for realizing board load balancing, but also increasing the deployment space of the BFD configuration through the master control cross-disk board.
[0046] For example, the deployment rule of the BFD configuration can be to deploy the BFD configuration with the egress interface type being a LAG egress interface to the service board, and deploy the BFD configuration with the egress interface type being a non-LAG egress interface to the main control cross-connect board; of course, the deployment rule of the BFD configuration can also be to deploy the BFD configuration with the egress interface type being a LAG egress interface to the main control cross-connect board, and deploy the BFD configuration with the egress interface type being a non-LAG egress interface to the service board; in addition, since the load conditions of different service boards are different at different times, when determining to deploy the BFD configuration to the service board, the best service board to be deployed can be further determined. Among them, the specific BFD configuration deployment rule can be seen in Table 1. It should be noted that the specific deployment rule can be determined according to actual needs and is not limited here.
[0047] Table 1 Example of BFD Configuration Deployment Rule
[0048]
[0049] Among them, the aforementioned Table 1 is only presented exemplarily, and the deployment rule can be added or modified according to needs.
[0050] Step S30: When the egress interface type is a non-LAG egress interface, calculate the configuration quantity balance of each service board respectively;
[0051] Specifically, when the egress interface type is a non-LAG egress interface, obtain the first real-time BFD configuration quantity and the balanced configuration quantity of each service board respectively;
[0052] Calculate the configuration quantity balance of each service board based on the balanced configuration quantity and the first real-time BFD configuration quantity.
[0053] Exemplarily, in this embodiment, the BFD configuration with the egress interface type being a LAG egress interface is deployed to the main control cross-connect board, and the BFD configuration with the non-LAG egress interface is deployed to the service board according to the deployment rule, and the BFD configuration is preferentially distributed and deployed. Therefore, when the BFD disk selection module detects that the egress interface type of the BFD configuration to be deployed is a non-LAG egress interface, it means that the BFD configuration to be deployed needs to be deployed to the service board.
[0054] However, in a distributed architecture device, there are usually multiple service boards (such as service board A, service board B, and service board C). The load conditions of different service boards may vary at the same moment. For example, there are 2K BFD configurations deployed on service board A, 1K BFD configurations deployed on service board B, and 100 BFD configurations deployed on service board C. At this time, if the service configuration corresponding to the BFD configuration to be deployed is deployed on service board A, then if the BFD configuration to be deployed is directly deployed to service board A, the BFD configuration to be deployed will be lost because the BFD configuration quantity on service board A is at full load at this time, while there is still a large amount of space on service board B and service board C for deploying BFD configurations. This situation has a problem of board load imbalance for the whole machine, that is, the resource occupancy rate of service board A is high, while the resource occupancy rates of service board B and service board C are low.
[0055] Therefore, in this embodiment, the service board dynamic weighting algorithm is used to select a disk for the deployment of BFD configurations, that is, the load conditions of each service board are dynamically analyzed based on the first real-time BFD configuration quantity and the balanced configuration quantity of each service board, and then the BFD configuration to be deployed is dynamically configured. Specifically, the difference between the balanced configuration quantity and the first real-time BFD configuration quantity of each current service board is calculated to obtain the configuration quantity balance of the corresponding service board. Among them, the first real-time BFD configuration quantity refers to the number of BFD configurations already deployed on the service board at the current moment; the balanced configuration quantity refers to the optimal deployment quantity of BFD configurations on the service board.
[0056] Specifically, before the step of obtaining the first real-time BFD configuration quantity and the balanced configuration quantity on each service board, it further includes:
[0057] Obtain the resource information of each service board, where the resource information includes the CPU main frequency, the number of CPU cores, the FPGA (Field Programmable Gate Array) specification, and the chip processing ability; determine the balanced configuration quantity of the service board according to the resource information.
[0058] Exemplarily, the balanced configuration quantity can be calculated by weighting according to the hardware resources of the service board (such as the CPU main frequency, the number of CPU cores, the FPGA specification, the chip processing ability). Assume that the same balanced quantity M is set for each service board, and then the balanced configuration quantity M' of each service board is determined according to the pros and cons of the hardware resource performance of the service board. Specifically, it can be calculated according to the formula M' = M + M × m%, where m is the weighting coefficient of the hardware resources. When the hardware resource performance is better (such as high main frequency, many cores, large FPGA specification, strong chip processing), the value of the weighting coefficient m is larger, and the corresponding balanced configuration quantity M' is larger.
[0059] Further, the resource information further includes the real-time service load of the service board.
[0060] Exemplarily, the performance of the service board is affected by the service load or protocol load of the service board, which in turn affects the implementation quality of BFD. Therefore, in this embodiment, the real-time service load or real-time protocol load of the service board is introduced into the calculation of the balanced configuration amount to further improve the calculation accuracy of the balanced configuration amount.
[0061] Taking the real-time service load as an example, when calculating the balanced configuration amount, in addition to considering the hardware resource information of the service board, the influence of the real-time service load of the service board also needs to be considered. Assume that the same balance amount M is set for each service board, and then the balanced configuration amount M' of each service board is determined according to the quality of the hardware resource performance of the service board and the real-time service load of the service board; specifically, it can be calculated according to the formula M' = M + M×m% - M×k%, where m is the weighted coefficient of the hardware resource and k is the weighted coefficient of the service load, and it has a linear relationship with the service load.
[0062] Step S40: Determine the service board to be deployed from multiple service boards according to the balance of the configuration amount, and deploy the BFD configuration to be deployed to the service board to be deployed.
[0063] Exemplarily, all the configuration amount balances calculated in the previous step can be sorted in descending order. The smaller the configuration amount balance, the closer the first real-time BFD configuration amount is to the balanced configuration amount, which further indicates that the BFD configuration amount of this service board will approach the full-load state. At this time, it is not suitable to deploy the BFD configuration to be deployed to this service board; while the larger the configuration amount balance, the smaller the first real-time BFD configuration amount is less than the balanced configuration amount, which further indicates that there is still enough space for this service board to deploy the BFD configuration. Therefore, the service board with a larger configuration amount balance can be used as the service board to be deployed, and then the BFD configuration to be deployed can be deployed to this service board to be deployed. It can be seen that through the above balanced algorithm strategy, the optimal slot can be calculated, so that the BFD configuration to be deployed can be deployed to the service board with a large configuration amount balance as much as possible, thereby ensuring balanced distribution; macroscopically, it can make the service volume and BFD configuration amount of each service board be evenly loaded, and give full play to the performance of the board and the device specifications.
[0064] In this application, a BFD disk selection module is deployed on the main control layer to centrally manage hardware resources, that is, to detect the remaining configured amount of each service board in real time through the BFD disk selection module, and determine the type and object of the board to be deployed according to the type of BFD configuration and the remaining configured amount, which is separated from the service configuration and protocol configuration, so that the BFD configuration does not need to be deployed on the same board as its corresponding service or protocol, and dynamically adjust and balance the BFD configuration amount on each service board according to the remaining configured amount, which can not only avoid the loss of BFD configuration, effectively realize fast BFD fault detection and maximize the whole machine specification, but also achieve load balancing of BFD configuration on each board.
[0065] Further, in the embodiment of this application, after the step of deploying the BFD configuration to be deployed to the service board to be deployed, the following is further included:
[0066] Obtain the second real-time BFD configuration amount of the service board to be deployed;
[0067] Detect whether the second real-time BFD configuration amount of the service board to be deployed is less than the BFD configuration amount at the previous moment;
[0068] If so, receive a BFD configuration migration command, and the BFD configuration migration command includes the migration information of the BFD configuration to be migrated;
[0069] Based on the migration information, migrate the BFD configuration to be migrated from other service boards to the service board to be deployed.
[0070] Exemplarily, in this embodiment, after managing and dynamically adjusting the distribution of the BFD configuration amounts of all service boards, a command line of relevant specifications will be provided to display the real-time BFD configuration amounts. When a BFD configuration on a certain service board is deleted, it means that the BFD configuration amount on this service board is decreasing, while there are still a large number of BFD configurations on other service boards. At this time, there may be a problem of unbalanced BFD configuration amounts among service boards.
[0071] Therefore, when it is detected that the second real-time BFD configuration quantity of the service board card to be deployed is less than the BFD configuration quantity at the previous moment, a manual command line can be used for BFD configuration migration to dynamically and evenly adjust the distribution of BFD configurations. That is, a BFD configuration migration command including migration information of the BFD configuration to be migrated is received. The migration information includes the basic information of the BFD configuration to be migrated and the basic information of the service board card where it is located, etc. And according to the migration information, the BFD configuration to be migrated is migrated from other service board cards to the service board card to be deployed to reach the maximum value of the device specification. Thus, it can be seen that this embodiment supports manual configuration switching of users, automatically adjusts the BFD distribution according to a single-disk failure, and supports a deployable method where the switch can be configured and the user command line is flexible and dynamic, thereby solving the problem that the existing BFD configuration is fixed and cannot be selected for migration.
[0072] Furthermore, in the embodiment of the present application, after the step of detecting the outgoing interface type of the BFD configuration to be deployed, it further includes: when the outgoing interface type is a LAG outgoing interface, deploying the BFD configuration to be deployed onto the main control cross-connect board card.
[0073] Exemplarily, in this embodiment, the BFD configuration with the outgoing interface type of LAG outgoing interface is deployed onto the main control cross-connect board card, and the BFD configuration with a non-LAG outgoing interface is deployed onto the service board card according to the deployment rule. When the BFD disk selection module detects that the outgoing interface type is a LAG outgoing interface, it indicates that the BFD configuration to be deployed needs to be deployed onto the main control cross-connect board card.
[0074] Furthermore, after the step of deploying the BFD configuration to be deployed onto the main control cross-connect board card, it further includes:
[0075] Cross-disk forwarding the BFD packet corresponding to the BFD configuration to be deployed from the main control cross-connect board card to the first service board card where the service corresponding to the BFD configuration to be deployed is located, for the BFD to detect the failure of the communication link.
[0076] Specifically, the cross-disk forwarding of the BFD packet corresponding to the BFD configuration to be deployed from the main control cross-connect board card to the first service board card where the service corresponding to the BFD configuration to be deployed is located includes:
[0077] Generating a BFD packet according to the BFD configuration to be deployed, and the BFD packet includes BFD_ID information;
[0078] Forward the BFD packet to the destination service board, so that the destination service board can determine the next-hop egress interface information and routing egress interface information corresponding to the BFD packet according to the BFD_ID information in the BFD packet, determine the first service board where the service corresponding to the to-be-deployed BFD configuration is located according to the next-hop egress interface information and the routing egress interface information, and forward the BFD packet to the first service board.
[0079] Exemplarily, the BFD two-way forwarding detection mechanism continuously and rapidly sends BFD control packets through the forwarding layer, thereby providing rapid link fault detection for different upper-layer applications. Therefore, BFD packets in various scenarios need to be forwarded along the path. So when the BFD configuration and the service configuration or protocol configuration are deployed on different boards, the board with the deployed BFD configuration needs to support cross-board forwarding, that is, the BFD packets generated by the FPGA can be forwarded out along the service path.
[0080] This embodiment takes the service configuration being deployed on the first service board and the to-be-deployed BFD configuration corresponding to the service configuration being deployed on the main control cross-board as an example to illustrate the BFD packet cross-board forwarding process.
[0081] Among them, for the processing of packets in the sending direction: the to-be-deployed BFD configuration is deployed on the FPGA of the main control cross-board. The board application layer generates a global BFD forwarding table and an internal index value of the FPGA on the main control cross-board, and configures the BFD forwarding table of the switching chip on the main control cross-board; the FPGA on the main control cross-board extracts the to-be-deployed BFD configuration according to the internal index value and generates a BFD application layer control packet; the FPGA on the main control cross-board sends the BFD packet to the standby board side chip on the main control cross-board. After receiving the BFD packet, the standby board side chip on the main control cross-board transfers the packet to the switching board on the board application layer, and the switching board performs processing similar to the function of a switch and forwards it to the destination service board (the destination service board is the intermediate service board running normally on the board application layer) according to the information in the BFD packet;
[0082] After receiving the BFD message, the spare disk side chip (J+) of the destination service board forwards the message to the FPGA on the destination service board. The FPGA on the destination service board queries the BFD forwarding table through the BFD_ID information carried in the message, finds the next-hop out-interface information and the routing out-interface information corresponding to the BFD_ID, encapsulates the found next-hop out-interface information and the routing out-interface information into the BFD message, and forwards the BFD message to the switching chip on the destination service board; the switching chip on the destination service board searches for the service table entry data according to the next-hop out-interface information and the routing out-interface information, determines the first service board where the service corresponding to the BFD configuration to be deployed is located, and sends the BFD message to the first service board. At this point, the BFD message is sent from the panel side interface.
[0083] Message processing in the receiving direction: When the first service board receives the BFD message, it first reads out the BFD_ID field, and searches the forwarding behavior and destination slot corresponding to the BFD_ID field in the BFD_TABLE table in the forwarding chip. After identifying that the destination slot is the master cross slot and the multicast forwarding behavior, the BFD message is directly transferred to the master cross disk board, and multicast is used to send it to the master cross disk board, thereby realizing the detection of communication link failure; among them, since most of the running engineering deployment equipment has one active and one standby master cross disk board (i.e., the active master cross disk board and the standby master cross disk board), when the BFD message comes out from the backplane port of the switching chip of the service board and is sent to the master switch disk board, the master switch disk board will multicast it to the active and standby master cross disk boards after receiving it.
[0084] This embodiment is described by taking the processing flow of the main master control cross disk board as an example: after the main master control cross disk board receives the BFD message from the standby disk side, it directly sends the BFD message to the FPGA on the main master control cross disk board for processing. The FPGA on the main master control cross disk board searches for the internal index value by BFD_ID according to the locally stored FPGA binary tree (the binary tree contains the mapping relationship between BFD_ID and the internal index value). After finding the internal index, the corresponding BFD entry can be found, and then the local BFD state is updated according to the BFD entry. When the forwarding layer detects that the BFD message state has changed, it will trigger the change of the running state of the state machine, and the BFD state machine will roll to the next state, and then send the next state BFD message, wait for the next state machine BFD message to be received, and perform state migration session UP. At this time, the state is reported to the main master control cross disk board, and the BFD session on the main master control cross disk board can be UP.
[0085] It can be seen that this embodiment supports BFD cross-disk forwarding, so that BFD messages can be forwarded across boards and can quickly detect whether an application layer failure occurs. If a failure occurs, the protocol and service switching are quickly triggered.
[0086] See Figure 2 As shown, the embodiment of the present application further provides a BFD configuration deployment system, including: a master control layer and a forwarding layer. A BFD disk selection module is provided on the master control layer. The BFD disk selection module is used to obtain the BFD configuration to be deployed; detect the type of the outgoing interface of the BFD configuration to be deployed; when the type of the outgoing interface is a non-LAG outgoing interface, calculate the remaining configuration amounts of each service board card on the forwarding layer respectively; determine the service board card to be deployed from multiple service board cards according to the remaining configuration amounts, and deploy the BFD configuration to be deployed to the service board card to be deployed.
[0087] Exemplarily, the BFD disk selection module in this embodiment is located at the bottom layer of the master control system (that is, in the device management subsystem in the master control layer), and receives configurations of all service types; among them, the table item data of the service module and the table item data of the protocol module configured through the network management system (the network management system includes CLI, SNMP, etc.) are both stored in the device management subsystem, and the BFD disk selection module is configured and its status information is managed through the BFD management module; the deployment rules are stored in the rule configuration database, and the forwarding layer includes service board card A, service board card B, service board card C, service board card D, master control cross-connect board card, switching board card, etc.
[0088] The BFD disk selection module iterates to the associated services, protocols, and the outgoing interfaces and next-hop outgoing interfaces of the services and protocols according to the BFD configuration information to be deployed, and determines the type of the board card to be deployed for the BFD configuration to be deployed according to the deployment rules loaded from the rule configuration database, that is, uniformly decides whether to deploy on the master control cross-connect board card or the service board card according to whether the outgoing interface is a LAG; if it is detected that the outgoing interface is a non-LAG, it is determined to be deployed to the service board card; then the dynamic weighted balancing algorithm is used to select the optimal service board card as the service board card to be deployed, and the BFD configuration to be deployed is deployed to the service board card to be deployed.
[0089] The present application adopts a flexible principle and deploys through the BFD disk selection module according to the BFD configuration type, so that the BFD configuration is separated from the service configuration, and the real-time BFD configuration amounts of each board card can be monitored, and then the BFD configuration amounts of each board card can be dynamically adjusted and evenly deployed. It can not only achieve BFD configuration load balancing to a certain extent, but also avoid the loss of BFD configuration, and effectively realize fast BFD fault detection and maximization of the whole machine specification.
[0090] Furthermore, in the embodiment of the present application, the BFD disk selection module is further used to: when the type of the outgoing interface is a LAG outgoing interface, deploy the BFD configuration to be deployed to the master control cross-connect board card.
[0091] Further, in the embodiment of the present application, the forwarding layer is used to: cross-board forward the BFD packets corresponding to the to-be-deployed BFD configuration from the master control cross-board card to the first service board where the service corresponding to the to-be-deployed BFD configuration is located, for BFD to detect the fault of the communication link.
[0092] Further, in the embodiment of the present application, the forwarding layer is specifically used to:
[0093] Generate BFD packets according to the to-be-deployed BFD configuration, where the BFD packets include BFD_ID information;
[0094] Forward the BFD packets to the destination service board, so that the destination service board determines the next-hop outgoing interface information and routing outgoing interface information corresponding to the BFD packets according to the BFD_ID information in the BFD packets, determines the first service board where the service corresponding to the to-be-deployed BFD configuration is located according to the next-hop outgoing interface information and the routing outgoing interface information, and forwards the BFD packets to the first service board.
[0095] Further, in the embodiment of the present application, the BFD disk selection module is further used to:
[0096] Obtain the resource information of each service board, where the resource information includes CPU main frequency, number of CPU cores, FPGA specification, and chip processing capacity;
[0097] Determine the balanced configuration amount of the service board according to the resource information.
[0098] Further, in the embodiment of the present application, the resource information further includes the real-time service load of the service board.
[0099] Further, in the embodiment of the present application, the BFD disk selection module is further used to:
[0100] Obtain the second real-time BFD configuration amount of the to-be-deployed service board;
[0101] Detect whether the second real-time BFD configuration amount of the to-be-deployed service board is less than the BFD configuration amount at the previous moment;
[0102] If so, receive a BFD configuration migration command, where the BFD configuration migration command includes the migration information of the to-be-migrated BFD configuration;
[0103] Based on the migration information, migrate the to-be-migrated BFD configuration from other service boards to the to-be-deployed service board.
[0104] It should be noted that those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working processes of the above-described system and each module can refer to the corresponding processes in the foregoing embodiments of the BFD configuration and deployment method, and will not be elaborated herein.
[0105] It should be noted that in this document, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, such that a process, method, article or system including a series of elements not only includes those elements but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or system. Without further limitation, an element defined by the phrase "including a..." does not exclude the presence of additional identical elements in the process, method, article or system including such element.
[0106] The above are only specific embodiments of the present application, enabling those skilled in the art to understand or implement the present application. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to these embodiments shown herein, but will be accorded the widest scope consistent with the principles and novel features claimed herein.
Claims
1. A method for deploying BFD configuration, characterized in that The described BFD configuration deployment method is applied to the BFD disk selection module on the master control layer, and includes the following steps: Obtain the BFD configuration to be deployed; Detect the outgoing interface type of the BFD configuration to be deployed; When the outgoing interface type is a non-LAG outgoing interface, calculate the remaining configuration amounts of each service board card respectively; Determine the service board card to be deployed from multiple service board cards according to the remaining configuration amounts, and deploy the BFD configuration to be deployed to the service board card to be deployed; Wherein, after the step of deploying the BFD configuration to be deployed to the service board card to be deployed, it further includes: Obtain the second real-time BFD configuration amount of the service board card to be deployed; Detect whether the second real-time BFD configuration amount of the service board card to be deployed is less than the BFD configuration amount at the previous moment; If so, receive a BFD configuration migration command, and the BFD configuration migration command includes migration information of the BFD configuration to be migrated; Based on the migration information, migrate the BFD configuration to be migrated from other service board cards to the service board card to be deployed.
2. The BFD configuration and deployment method according to claim 1, wherein After the step of detecting the outgoing interface type of the BFD configuration to be deployed, it further includes: When the outgoing interface type is a LAG outgoing interface, deploy the BFD configuration to be deployed to the master cross-connect board card.
3. The BFD configuration and deployment method according to claim 2, characterized in that, After the step of deploying the BFD configuration to be deployed to the master cross-connect board card, it further includes: Forward the BFD packet corresponding to the BFD configuration to be deployed from the master cross-connect board card across the board to the first service board card where the service corresponding to the BFD configuration to be deployed is located, for BFD to detect the failure of the communication link.
4. The BFD configuration deployment method according to claim 3, wherein The step of forwarding the BFD packet corresponding to the BFD configuration to be deployed from the master cross-connect board card across the board to the first service board card where the service corresponding to the BFD configuration to be deployed is located includes: Generate a BFD packet according to the BFD configuration to be deployed, and the BFD packet includes BFD_ID information; Forward the BFD packet to the destination service board card, so that the destination service board card determines the next-hop outgoing interface information and routing outgoing interface information corresponding to the BFD packet according to the BFD_ID information in the BFD packet, determines the first service board card where the service corresponding to the BFD configuration to be deployed is located according to the next-hop outgoing interface information and the routing outgoing interface information, and forwards the BFD packet to the first service board card.
5. The BFD configuration deployment method according to claim 1, characterized in that When the outgoing interface type is a non-LAG outgoing interface, calculating the remaining configuration amounts of each service board card includes: When the outgoing interface type is a non-LAG outgoing interface, respectively obtain the first real-time BFD configuration amount and the balanced configuration amount of each service board card; Calculate the remaining configuration amounts of each service board card based on the balanced configuration amount and the first real-time BFD configuration amount.
6. The BFD configuration and deployment method according to claim 5, wherein Before the step of obtaining the first real-time BFD configuration amount and the balanced configuration amount of each service board card, it further includes: Obtain the resource information of each service board card, and the resource information includes CPU main frequency, number of CPU cores, FPGA specification and chip processing capacity; Determine the balanced configuration amount of the service board card according to the resource information.
7. The BFD configuration and deployment method according to claim 6, wherein: The resource information further includes the real-time service load of the service board cards.
8. A BFD configuration deployment system, characterized in that, It includes: A main control layer and a forwarding layer. A BFD selection module is provided on the main control layer, and the BFD selection module is used to obtain the BFD configuration to be deployed; Detect the outgoing interface type of the BFD configuration to be deployed; When the outgoing interface type is a non-LAG outgoing interface, calculate the remaining configuration amounts of each service board card on the forwarding layer respectively; determine the service board card to be deployed from multiple service board cards according to the remaining configuration amounts, and deploy the BFD configuration to be deployed to the service board card to be deployed; Among them, the BFD selection module is further used for: Obtain the second real-time BFD configuration amount of the service board card to be deployed; Detect whether the second real-time BFD configuration amount of the service board card to be deployed is less than the BFD configuration amount at the previous moment; If so, receive a BFD configuration migration command, and the BFD configuration migration command includes the migration information of the BFD configuration to be migrated; Based on the migration information, migrate the BFD configuration to be migrated from other service board cards to the service board card to be deployed.
9. The BFD configuration and deployment system according to claim 8, characterized in that, The BFD selection module is further used for: When the outgoing interface type is a LAG outgoing interface, deploy the BFD configuration to be deployed to the main control cross-board card.
Citation Information
Patent Citations
Method, device and switch for realizing BFD (Bidirectional Forwarding Detection)
CN102025616A
VLAN distribution method, device and equipment based on hardware service board card
CN112637033A