Method for configuring CP (Control Plane) and network equipment
By splitting the configuration resources into virtual CP to manage user access plane UP, the problem of a single control plane CP failure affecting a large range of users is solved, and rapid failure recovery and efficient user management are achieved.
Patent Information
- Application Number
- CN202411892579.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-20
- Publication Date
- 2025-04-11
AI Technical Summary
In the current switching and control separation system, there are many users managed by a single control surface CP. If the CP process fails, it may affect users above one million, with a large impact area and a long failure recovery time, which will affect rapid failure recovery.
By splitting the first configuration resource into two or more second configuration resources, a corresponding virtual CP is created, and the corresponding user access plane UP is managed using the virtual CP to establish a VXLAN channel to realize user access and address allocation.
Through virtual CP segmentation, the impact of CP process failure on a large number of users is avoided, the failure recovery time is shortened, and the system's rapid failure recovery ability is improved.
Smart Images

Figure CN119814560A_ABST
Abstract
Description
Technical Field
[0001] The present specification relates to the field of communication technology, and in particular to a method for configuring a control plane CP and a network device. Background Art
[0002] like Figure 1 The vBRAS forwarding and control separation architecture diagram is shown in the figure. The control plane (vBRAS-CP) is the user control management component, which uniformly manages the online and offline of BRAS users and maintains user information. The forwarding plane (vBRAS-UP) is the three-layer network edge and user policy execution component, which mainly includes forwarding plane functions such as traffic forwarding, QoS, and traffic statistics.
[0003] Among them, one CP can manage one or more UPs. The control plane (vBRAS-CP) is a virtual machine cluster composed of high-performance servers, consisting of a pair of CTRL-VM groups, multiple pairs of BRAS-VM groups and two backup FWD-VMs.
[0004] Among them, CTRL-VM is responsible for overall CP management and allocates subnet address segments to BRAS-VM.
[0005] BRAS-VM accepts the management of CTRL-VM and is responsible for UP user access. It allocates addresses to users according to the subnet address segment allocated by CTRL-VM. Each BRAS-VM is responsible for managing the user access of a fixed UP. Each UP access user can only be managed by one BRAS-VM.
[0006] FWD-VM is responsible for the communication between CP and UP, CP and external RADIUS server, and Web server.
[0007] DB-VM is responsible for storing data information backed up by CTRL-VM and BRAS-VM.
[0008] Currently, the following three types of communication channels need to be established between CP and UP:
[0009] Management channel: Use NETCONF connection as the management channel between CP and UP to enable CP to query data from UP and issue configurations. For example, query ARP detection packets and issue ACL configurations.
[0010] Control channel: Use CUSP (Control- / User-plane Separation Protocol) channel as the control channel between CP and UP to implement functions such as service entry delivery, query, and interface resource information reporting.
[0011] Protocol channel: Use the GPE (Generic Protocol Extension) type VXLAN tunnel as the protocol channel between the CP and the UP to implement the interaction of protocol packets such as DHCP, ARP, and PPPoE. The VXLAN GPE tunnel is an extended VXLAN tunnel that can carry more information in the VXLAN header, such as port type, port number, and VLAN information, so that the CP can complete the legitimacy verification of the user and IP address allocation based on this information.
[0012] Since a single CP currently manages a large number of users, if a CP process failure occurs in the current control-forwarding separation system (a process failure cannot trigger the switching of the primary and standby CPs), it may affect more than one million users at a time. In addition, if a large number of users need to be restored, it will take a long time, which is not conducive to rapid recovery from the failure. Summary of the invention
[0013] To overcome the problems existing in the related art, this specification provides a method and a network device for configuring a control plane CP.
[0014] According to a first aspect of an embodiment of this specification, a method for configuring a control plane CP is provided, the method being applied to a first network device running a CP function, the method comprising:
[0015] Acquire a first configuration resource for running a CP function in a first network device;
[0016] Splitting the first configuration resource into two or more second configuration resources;
[0017] Utilize each second configuration resource to configure a corresponding virtual CP;
[0018] Each virtual CP is used to manage the corresponding UP.
[0019] The acquiring of a first configuration resource for running a CP function in a first network device includes:
[0020] Get some or all of the resources including user access interface, user access board, UP information, user type, user priority, user domain, and user address quantity.
[0021] The step of splitting the first configuration resource into two or more second configuration resources includes:
[0022] According to user requirements, the first configuration resource is proportionally divided to obtain two or more second configuration resources after division.
[0023] The configuring the corresponding virtual CP using each second configuration resource includes:
[0024] Using each second configuration resource to create a CTRL-VM and BRAS-VM component corresponding to the virtual CP;
[0025] A first identifier uniquely identifying the virtual CP is allocated to each virtual CP.
[0026] Wherein, using each virtual CP to manage the corresponding UP includes:
[0027] A VXLAN channel is established between each virtual CP and the corresponding UP, wherein a first identifier corresponding to each virtual CP is recorded in a VXLAN header of the VXLAN channel.
[0028] Wherein, the method further comprises:
[0029] Each VXLAN channel is isolated by QOS.
[0030] It can be seen from the above embodiments that the present disclosure proposes the concept of virtual CP, by splitting the first configuration resource into two or more second configuration resources, creating a corresponding virtual CP through each second configuration resource, and using the virtual CP to manage part of the UP, thereby avoiding affecting a wide range of UP user services when a CP process fails.
[0031] According to a second aspect of an embodiment of this specification, a network device is provided, the network device comprising:
[0032] An acquisition module, used for acquiring a first configuration resource for running a CP function in a first network device;
[0033] A configuration module, configured to split the first configuration resource into two or more second configuration resources;
[0034] The configuration module is further used to configure the corresponding virtual CP using each second configuration resource;
[0035] The processing module is used to manage the corresponding UP by using each virtual CP.
[0036] The acquisition module is specifically used to acquire part or all of the resources in the user access interface, user access board, UP information, user type, user priority, user domain, and user address quantity.
[0037] The configuration module is specifically used to proportionally divide the first configuration resource according to user requirements to obtain two or more second configuration resources after division.
[0038] The matching module is specifically used to create CTRL-VM and BRAS-VM components corresponding to the virtual CP using each second configuration resource;
[0039] A first identifier uniquely identifying the virtual CP is allocated to each virtual CP.
[0040] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present specification. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the specification and, together with the description, serve to explain the principles of the specification.
[0042] Figure 1 This is a schematic diagram of a vBRAS forwarding and control separation architecture according to an exemplary embodiment of this specification.
[0043] Figure 2 The present specification is a schematic diagram of a user online address allocation process according to an exemplary embodiment.
[0044] Figure 3 It is a flowchart of a method for configuring a control plane CP according to an exemplary embodiment of this specification.
[0045] Figure 4 This is a schematic diagram of the position of a VXLAN header in a message according to an exemplary embodiment of this specification. DETAILED DESCRIPTION
[0046] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementations described in the following exemplary embodiments do not represent all implementations consistent with this specification. Instead, they are merely examples of devices and methods consistent with some aspects of this specification as detailed in the appended claims.
[0047] The terms used in this specification are for the purpose of describing specific embodiments only and are not intended to limit this specification. The singular forms "a", "the" and "the" used in this specification and the appended claims are also intended to include plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.
[0048] It should be understood that although the terms first, second, third, etc. may be used in this specification to describe various information, this information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of this specification, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".
[0049] like Figure 2 The schematic diagram of a user online address allocation process is shown. In the control-forwarding separation architecture, it is assumed that the total CP address pool is 1.0.0.0 / 8, and the allocated subnet segment is 24 bits. After the user online protocol message (PPPoE, DHCP, etc.) reaches the UP, the UP sends the protocol message to the BRAS-VM corresponding to the UP through the VXLAN protocol channel to interact with the protocol message. The BRAS-VM applies for the 24-bit subnet segment 1.0.0.0 / 24 from the CTRL-VM. After the application for the subnet segment is successful, the address 1.0.0.2 in the segment is allocated to the user, and the user successfully goes online. Subsequent related user management is performed by the BRAS-VM. The user table entry is sent to the UP through the CUSP channel. If there are idle addresses in the applied subnet segment, the user online is independently processed by the BRAS-VM. If the subnet segment address is insufficient, a new 24-bit subnet segment will be applied to the CTRL-VM.
[0050] After the user goes online, the CP sends the user table entry to the UP through the CUSP channel and conducts subsequent protocol interactions with the user through the VXLAN protocol channel.
[0051] Currently, a single BRAS-VM can manage multiple UPs. The number of users on a single BRAS-VM is over one million, and the number of users of the entire CP is generally around one million to ten million.
[0052] However, in the above process, since a single CP currently manages a large number of users, if a CP process failure occurs in the current control-forwarding separation system (without triggering the primary-standby CP switching), it may affect more than one million users at one time. The impact will be relatively large, and if a large number of users need to be restored, it will take a long time, which is not conducive to rapid recovery from the fault.
[0053] To solve the above technical problems, the present disclosure provides a method for configuring a control plane CP, which is applied to a first network device running a CP function, such as Figure 3 As shown, the method includes:
[0054] S301 obtains a first configuration resource for running a CP function in a first network device;
[0055] S302: split the first configuration resource into two or more second configuration resources;
[0056] S303 configures a corresponding virtual CP using each second configuration resource;
[0057] S304 manages the corresponding UP using each virtual CP.
[0058] In this embodiment, the user may determine the granularity of the first configuration resource according to the needs, and split the first configuration resource according to different granularities according to the user's needs.
[0059] Among them, the first configuration resource obtained may include: obtaining part or all of the resources in the user access interface, user access board, UP information, user type, user priority, user domain, and number of user addresses, wherein the UP information may include: UP backup group and / or single UP information.
[0060] In this embodiment, a virtual CP is created using the second configuration resource. Specifically, the CTRL-VM and BRAS-VM components of the corresponding virtual CP are created using the second configuration resource. In order to distinguish different virtual CPs, in this embodiment, a first identifier is assigned to each virtual CP to uniquely represent the virtual CP. The first identifier can be understood as the virtual CP number.
[0061] In one example, each virtual CP has an independent virtual CP number for identifying the virtual CP. The virtual CP numbers may be numbered starting from 1. In practical applications, for example, Figure 4 As shown, the VXLAN communication channel adds a virtual CP number in the reserved bytes of the original 8-byte VXLAN header to distinguish the virtual CP number for communication.
[0062] In this embodiment, the number of virtual CPs created can be determined according to the number of split second configuration resources. It is assumed that when the UP scale is small, the number of second configuration resources split from the first configuration resources can be small, thereby creating a small number of virtual CPs; when the UP scale is large, the number of second configuration resources split from the first configuration resources can be large, thereby creating a large number of virtual CPs.
[0063] In actual applications, the granularity of virtual CP division can be large or small and can be flexibly configured. When it is configured to be divided according to the number of user addresses, the specific implementation method is to divide the total address pool network segment into small segments according to certain rules and allocate them to separate virtual CPs for independent user management and user address allocation. The specific virtual CP network segment size can be flexibly allocated.
[0064] In step S304, a VXLAN channel is established between each virtual CP and the corresponding UP, wherein the first identifier corresponding to each virtual CP is recorded in the VXLAN header of the VXLAN channel, and the VXLAN channels of each different virtual CP are isolated from each other by QOS, and the bandwidths do not affect each other.
[0065] By default, the virtual CP number of the default VXLAN channel is 0, which can be used to handle new users going online. The channel will guarantee a certain bandwidth and will not be preempted by the VXLAN channels of other virtual CPs.
[0066] At the same time, when the default virtual CP number of the CUSP channel is 0, it is used to UP report interface information, etc. This channel will guarantee a certain bandwidth and will not be preempted by the CUSP channels of other virtual CPs.
[0067] In actual applications, a custom CUSP manufacturer private TLV can be added to the CUSP communication channel to store the virtual CP number. The CUSP communication between CUs will carry this TLV to identify which virtual CP is used for processing, so as to ensure that the CUSP channels of each different virtual CP are isolated from each other using QOS and the bandwidth does not affect each other.
[0068] To explain the technical solution in the present disclosure in detail, the present disclosure also provides the following examples:
[0069] The overall operation process of the virtual CP is described by taking the CP address pool as 1.0.0.0 / 8-bit network segment, the subnet segment is configured as 24 bits, and the virtual CP is configured as 64k according to the number of user addresses as an example.
[0070] 1) The system creates a default VXLAN and a default CUSP channel to exchange system and user data before the user goes online.
[0071] 2) The system creates a virtual CP1 by default, with virtual CP ID = 1. One or more segments that can connect 64K users are pre-allocated to the virtual CP in the total address pool segment, for example, segment 1.0.0.1 / 16. The virtual CP includes a pair of virtual CTRL-VMs, a pair of virtual BRAS-VMs, independent VXLAN channels and CUSP channels, and each virtual VM has an independent processing process.
[0072] 3) After the first user online message arrives at UP, the default VXLAN channel is used for protocol message interaction. After UP sends the protocol message to CP, since there is only one virtual CP1 and it has idle addresses, virtual CP1 is used for address allocation (address pool segment 1.0.0.1 / 16). BRAS-VM1 of virtual CP1 applies for 24-bit subnet segment 1.0.0.0 / 24 from virtual CTRL-VM1. After the subnet segment is successfully applied, the address 1.0.0.2 in the segment is allocated to the user. The user successfully goes online, and the user table entry records virtual CP ID = 1. The user table entry is issued using the CUSP channel of virtual CP1. Subsequent related user management is performed on the virtual BRAS-VM1, and user protocol message interaction is performed through the VXLAN channel of virtual CP1.
[0073] 4) Subsequent users go online from virtual CP1 and are assigned address 1.0.0.3 and so on until the number of online users on virtual CP1 reaches the threshold. The system will dynamically create a virtual CP2 in advance (including a pair of virtual CTRL-VMs, a pair of virtual BRAS-VMs, independent VXLAN channels and CUSP channels, and each virtual VM has an independent processing process).
[0074] 5) If a user goes offline after virtual CP1 and virtual CP2, and the number of online users is less than 128k, the new online user will be load-shared between the two virtual CPs. After the virtual CP is completely idle for a certain period of time, the second configuration resources corresponding to CP1 and CP2 can be recycled.
[0075] It can be seen from the above embodiments that when the technical solution in the present disclosure is adopted, the control plane CP of the transfer and control separation is still presented as only one CP to the outside, and the current overall configuration does not change, so as to facilitate unified configuration management. According to the technical solution in the present disclosure, the number of users online in each virtual CP is controlled within a smaller range, and each virtual CP has an independent process and CU channel, which have no impact on each other. When a process failure occurs in the virtual CP, only a limited number of users will be affected (the number of users affected depends on the number of users managed by the faulty virtual CP), and the user's fault recovery will also be faster.
[0076] At the same time, the CU communication channels and processes between virtual CPs are independent. The failure of a virtual CP will not affect users on other virtual CPs. Priority scheduling can also be performed between virtual CPs. When multiple virtual CPs fail and users need to go online to recover, users of high-priority virtual CPs can be guaranteed to go online first.
[0077] Based on the above method embodiments, the present disclosure further provides a network device, the network device comprising:
[0078] An acquisition module, used for acquiring a first configuration resource for running a CP function in a first network device;
[0079] A configuration module, configured to split the first configuration resource into two or more second configuration resources;
[0080] The configuration module is further used to configure the corresponding virtual CP using each second configuration resource;
[0081] The processing module is used to manage the corresponding UP by using each virtual CP.
[0082] The acquisition module is specifically used to acquire part or all of the resources in the user access interface, user access board, UP information, user type, user priority, user domain, and user address quantity.
[0083] The configuration module is specifically used to proportionally divide the first configuration resource according to user requirements to obtain two or more second configuration resources after division.
[0084] The matching module is specifically used to create CTRL-VM and BRAS-VM components corresponding to the virtual CP using each second configuration resource;
[0085] A first identifier uniquely identifying the virtual CP is allocated to each virtual CP.
[0086] For the device embodiment, since it basically corresponds to the method embodiment, the relevant parts can refer to the partial description of the method embodiment. The device embodiment described above is only schematic, wherein the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place, or they may be distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this specification. A person of ordinary skill in the art can understand and implement it without paying creative labor.
[0087] The above is a description of a specific embodiment of the specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0088] Those skilled in the art will readily appreciate other embodiments of the specification after considering the specification and practicing the invention claimed herein. The specification is intended to cover any variations, uses or adaptations of the specification that follow the general principles of the specification and include common knowledge or customary techniques in the art that are not claimed in the specification. The specification and examples are to be considered exemplary only, and the true scope and spirit of the specification are indicated by the following claims.
[0089] It should be understood that the present description is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present description is limited only by the appended claims.
[0090] The above description is only a preferred embodiment of this specification and is not intended to limit this specification. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of this specification should be included in the scope of protection of this specification.
Claims
1. A method for configuring a control plane CP, characterized in that: The method is applied to a first network device running a CP function, and the method includes: Acquire a first configuration resource for running a CP function in a first network device; Splitting the first configuration resource into two or more second configuration resources; Utilize each second configuration resource to configure a corresponding virtual CP; Each virtual CP is used to manage the corresponding UP.
2. The method according to claim 1, characterized in that The obtaining of a first configuration resource for running a CP function in the first network device includes: Get some or all of the resources including user access interface, user access board, UP information, user type, user priority, user domain, and user address quantity.
3. The method according to claim 2, characterized in that The step of splitting the first configuration resource into two or more second configuration resources includes: According to user requirements, the first configuration resource is proportionally divided to obtain two or more second configuration resources after division.
4. The method according to claim 1, characterized in that: The configuring the corresponding virtual CP using each second configuration resource includes: Using each second configuration resource to create a CTRL-VM and BRAS-VM component corresponding to the virtual CP; A first identifier uniquely identifying the virtual CP is allocated to each virtual CP.
5. The method according to claim 1, characterized in that The using of each virtual CP to manage the corresponding UP includes: A VXLAN channel is established between each virtual CP and the corresponding UP, wherein a first identifier corresponding to each virtual CP is recorded in a VXLAN header of the VXLAN channel.
6. The method according to claim 5, characterized in that The method further comprises: Each VXLAN channel is isolated by QOS.
7. A network device, characterized in that: The network equipment includes: An acquisition module, used for acquiring a first configuration resource for running a CP function in a first network device; A configuration module, configured to split the first configuration resource into two or more second configuration resources; The configuration module is further used to configure the corresponding virtual CP using each second configuration resource; The processing module is used to manage the corresponding UP by using each virtual CP.
8. The network device according to claim 7, characterized in that: The acquisition module is specifically used to acquire part or all of the resources in the user access interface, user access board, UP information, user type, user priority, user domain, and user address quantity.
9. The network device according to claim 8, characterized in that: The configuration module is specifically used to proportionally divide the first configuration resource according to user requirements to obtain two or more second configuration resources after division.
10. The network device according to claim 7, characterized in that: The configuration module is specifically used to create CTRL-VM and BRAS-VM components corresponding to the virtual CP using each second configuration resource; A first identifier uniquely identifying the virtual CP is allocated to each virtual CP.
Citation Information
Patent Citations
Physical resource adjustment method, device and controller
CN103703830A
Virtual BRAS equipment load sharing method and system in data center
CN111464454A
VBRAS, server and storage medium
CN111953571A