Method and system for efficiently creating ECMP group

By reserving space for MEMBER entries during ECMP group creation and optimizing the addition process, the problems of low efficiency in adding MEMBER entries and resource gaps were solved, thus achieving efficient utilization of MEMBER resources.

CN121077993APending Publication Date: 2025-12-05YUNHE ZHIWANG (SHANGHAI) TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511171654.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-20
Publication Date
2025-12-05

AI Technical Summary

Technical Problem

In existing technologies, adding MEMBERs to ECMP groups is inefficient, and frequent relocations lead to resource gaps, affecting overall efficiency.

Method used

When creating an ECMP group, reserve space for X MEMBER entries, based on the number of network members. If the reserved space is insufficient, continue to occupy free space or move MEMBERs while keeping the MEMBER's starting address unchanged, thus optimizing the addition process.

Benefits of technology

Reduce the number of times members need to be moved, improve the efficiency of adding members, solve the problem of resource gaps, and ensure the efficient use of member resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121077993A_ABST
    Figure CN121077993A_ABST
Patent Text Reader

Abstract

The invention discloses a method and system for efficiently creating an ECMP group, and the method comprises the following steps: receiving an instruction for creating an ECMP GROUP; x MEMBER table item spaces are reserved in the ECMP GROUP, the initial address of the ECMP GROUP and the number of current MEMBERs are recorded, and creation of the ECMP GROUP is completed; receiving an instruction of adding the MEMBER to the specified ECMP GROUP; the reserved MEMBER table item space of the specified ECMP GROUP is analyzed, and if the reserved MEMBER table item space is not full and enough, the idle MEMBER table item space is directly and continuously occupied backwards; and if the reserved MEMBER table item space is full or insufficient, searching enough available space, and carrying out MEMBER expression moving operation. According to the GROUP creation method designed by the invention, enough resource space is reserved, so that each GROUP keeps enough elasticity during space expansion, and the movement caused by insufficient continuous space is effectively reduced; and meanwhile, the problem of MEMBER resource holes after frequent moving can be solved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data transmission, in particular to an efficient creation method of an ECMP group. BACKGROUND

[0002] ECMP technology There are multiple paths to the same destination, and the application of ECMP (Equal Cost Multiple Path Routing) can realize the functions of network bandwidth increase, load balancing, and mutual protection between paths. When the device supports ECMP, the two-layer or three-layer traffic to the destination device can be carried through different paths, realizing the load balancing of network links; and when a member link fails, the network can be quickly switched.

[0003] As shown in Figure 1 , the traffic carried on the ECMP group is evenly distributed on these equivalent links without considering the difference in link bandwidth. The ECMP algorithm is supported by various routing protocols, such as OSPF, ISIS, EIGRP, BGP, etc. In the network architecture of the data center, the services it carries also widely use ECMP as a load balancing algorithm. As a load balancing strategy, ECMP has been widely used in actual data center networks due to its simple deployment advantage.

[0004] Traditional ECMP group MEMBER addition scheme In the hardware implementation of the MEMBER of the ECMP group, it is usually required that the hardware table items of the MEMBER are stored in a continuous space. The traditional ECMP group MEMBER addition scheme is to pre-establish the MEMBER hardware resources of the ECMP group after adding the MEMBER, and then update the start address of the MEMBER pointed by the ECMP group. As shown in Figures 2-4 , the MEMBER resource occupation is given when the MEMBER number of the ECMP GROUP 1 is 1, 2, and 64.

[0005] As shown in Figure 5 , in the traditional MEMBER addition scheme, the new GROUP after adding the MEMBER is reconstructed in the new space, and then the ECMP GROUP table item is updated. When the ECMP GROUP table item is updated, the MEMBER pointer and the MEMBER number are updated at the same time.

[0006] Defects of the prior art The scheme needs to frequently move the existing MEMBER resources of the GROUP, and the MEMBER adding efficiency is low; after frequent moving, the MEMBER resource holes are more likely to appear, the MEMBER resource holes in the middle cannot be allocated and used, and the use efficiency of the whole MEMBER resources is affected. SUMMARY

[0007] According to a first aspect of the embodiment of the present application, an efficient ECMP group creation method is provided, comprising the following steps: receiving an instruction of creating an ECMP GROUP; reserving X MEMBER table item spaces in the ECMP GROUP, recording the start address and the current MEMBER number of the ECMP GROUP, and completing the creation of the ECMP GROUP; receiving an instruction of adding a MEMBER to a specified ECMP GROUP; analyzing the reserved MEMBER table item space of the specified ECMP GROUP, if the reserved MEMBER table item space is not enough, directly continuing to occupy the idle MEMBER table item space; if the reserved MEMBER table item space is full, finding enough available space and performing the performance moving operation of the MEMBER.

[0008] Further, X MEMBER table item spaces are reserved in the new ECMP GROUP, wherein the value of X is planned according to the ECMP member number of the network.

[0009] According to a second aspect of the embodiment of the present application, an efficient ECMP group creation system is provided, comprising: a first receiving module, configured to receive an instruction of creating an ECMP GROUP; a creating module, configured to reserve X MEMBER table item spaces in the ECMP GROUP, record the start address and the current MEMBER number of the ECMP GROUP, and complete the creation of the ECMP GROUP; a second receiving module, configured to receive an instruction of adding a MEMBER to a specified ECMP GROUP; an analyzing module, configured to analyze the reserved MEMBER table item space of the specified ECMP GROUP, if the reserved MEMBER table item space is not enough, directly continue to occupy the idle MEMBER table item space; if the reserved MEMBER table item space is full, find enough available space and perform the performance moving operation of the MEMBER.

[0010] Further, X MEMBER table item spaces are reserved in the new ECMP GROUP, wherein the value of X is planned according to the ECMP member number of the network.

[0011] According to the third aspect of the embodiments of the present application, an electronic device is provided, comprising a memory, a processor and a computer program, the computer program is stored in the memory, and the processor runs the computer program to execute the method for efficiently creating an ECMP group according to the first aspect.

[0012] According to the first aspect of the embodiments of the present application, a readable medium with non-volatile program code executable by a processor is provided, the program code causes the processor to run the method for efficiently creating an ECMP group according to the first aspect.

[0013] The method for efficiently creating an ECMP group according to the embodiments of the present application has the following beneficial effects: (1) The adding process of the MEMBER is newly designed to reduce the moving as much as possible when the MEMBER is added; the first address of the MEMBER is kept unchanged, the hardware space of the MEMBER is applied backward first, the MEMBER table item is added, and finally the number of the MEMBER of the GROUP is adjusted to complete the actual adding of the MEMBER.

[0014] (2) According to the application planning, the global initial MEMBER capacity of the ECMP group is set as the reserved space when the ECMP group is created, which can reduce the moving times of the MEMBER and improve the adding efficiency of the MEMBER; at the same time, the problem of the frequent creation and deletion of the empty hole when the number of the MEMBER of the multiple GROUPs is inconsistent can be solved.

[0015] It is to be understood that both the foregoing general description and the following detailed description are exemplary, and are intended to provide further explanation of the subject technology claimed. BRIEF DESCRIPTION OF DRAWINGS

[0016] Figure 1 ECMP network framework diagram.

[0017] Figure 2 ECMP GROUP1 contains 1 MEMBER diagram.

[0018] Figure 3 ECMP GROUP1 contains 2 MEMBER diagram.

[0019] Figure 4 ECMP GROUP1 contains 64 MEMBER diagram.

[0020] Figure 5 Flowchart of the traditional ECMP adding MEMBER scheme.

[0021] Figure 6A flow chart of the ECMP MEMBER adding scheme of the efficient ECMP group creation method according to the embodiment of the present application.

[0022] Figure 7 A diagram of the MEMBER resource reservation after the creation of N GROUPs in the efficient ECMP group creation method according to the embodiment of the present application.

[0023] Figure 8 A flow chart of the MEMBER adding scheme of the ECMP MEMBER reservation of X MEMBERs in the efficient ECMP group creation method according to the embodiment of the present application.

[0024] Figure 9 A flow chart of the efficient ECMP group creation method according to the embodiment of the present application.

[0025] Figure 10 A structure diagram of the efficient ECMP group creation system according to the embodiment of the present application.

[0026] Figure 11 A structure diagram of the electronic device according to the embodiment of the present application. DETAILED DESCRIPTION

[0027] The preferred embodiments of the present application will be described in detail below with reference to the accompanying drawings.

[0028] Firstly, the efficient ECMP group creation method according to the embodiment of the present application will be described. Figures 6-9 The efficient ECMP group creation method according to the embodiment of the present application can effectively reduce the moving times of the MEMBERs and improve the adding efficiency of the MEMBERs, and has a wide application scenario.

[0029] As shown in Figures 6-9 , the efficient ECMP group creation method according to the embodiment of the present application has the following steps: In S1, as shown in Figure 9 , the instruction of creating the ECMP GROUP is received.

[0030] In S2, as shown in Figure 9 , X MEMBER entry spaces are reserved in the ECMP GROUP, the start address of the ECMP GROUP and the current MEMBER number are recorded, and the creation of the ECMP GROUP is completed.

[0031] Further, X MEMBER entry spaces are reserved in the new ECMP GROUP, where the value of X is planned according to the number of ECMP members of the network, such as 32 / 64 / 128 / 256 in the AI data center network. The scheme of reserving X MEMBER entry spaces when the ECMP GROUP is created can also be transformed into pre-reserving X MEMBER spaces when the first MEMBER of the GROUP is created.

[0032] As shown in Figure 7 , when the value of X is 64, after N GROUPs are created, the reserved MEMBER spaces are as shown in Figure 8 , when the MEMBER is added, the scheme of reserving X MEMBER spaces by the GROUP is used.

[0033] It should be noted that when the traditional GROUP is created, only the resources related to the GROUP are allocated, and the MEMBER resources are not operated. The present application designs a creation scheme of the ECMP GROUP, reserves sufficient MEMBER resource spaces X, so that each GROUP has sufficient flexibility when expanding the space, effectively reduces the moving caused by insufficient continuous space, and further improves the creation efficiency of the ECMP group; at the same time, the problem of holes caused by frequent creation and deletion of the MEMBERs with different numbers of the GROUPs can be solved. If the reserved MEMBER resource space X is too large, the MEMBER space will be wasted, and if it is too small, there will still be frequent moving.

[0034] In S3, as shown in Figure 9 , the instruction of adding a MEMBER to a specified ECMP GROUP is received.

[0035] In S4, as shown in Figure 9 , the reserved MEMBER entry space of the specified ECMP GROUP is parsed, if the reserved MEMBER entry space is not sufficient, the idle MEMBER entry space is directly occupied; if the reserved MEMBER entry space is insufficient, sufficient available space is found, and the moving operation of the MEMBER is performed.

[0036] It should be noted that in the traditional scheme, the operation of adding a MEMBER is finally converted into the update of the ECMP GROUP information table pointer, and the essence of the process is the update of the MEMBER first address and the update of the MEMBER COUNT. As shown in Figure 5As shown, this invention analyzes and designs the MEMBER addition scheme. If there is sufficient space after an existing MEMBER entry, the space for the MEMBER entry can be extended further. This keeps the ECMP GROUP table unchanged, and the MEMBERCOUNT field in the ECMP information table is updated to complete the MEMBER addition operation. This invention keeps the starting address of the MEMBER unchanged, thereby avoiding the need to move existing MEMBER entries and effectively improving the efficiency of the MEMBER addition operation. Figure 6 The MEMBER addition scheme shown is highly efficient in scenarios where GROUPs and MEMBERs are created one by one. During initialization, all MEMBER spaces are in an idle and available state; when adding a new MEMBER, space is requested as needed.

[0037] As described above, the efficient ECMP group creation method according to an embodiment of the present invention has the following beneficial effects: (1) To minimize the movement when adding MEMBER, a new process for adding MEMBER was designed. Keeping the starting address of MEMBER unchanged, hardware space for MEMBER is requested from the back, MEMBER entries are added, and finally the number of MEMBER in GROUP is adjusted to complete the actual addition of MEMBER.

[0038] (2) Based on the application plan, set the global initial MEMBER capacity of the ECMP group as reserved space when the ECMP group is created. This can reduce the number of times MEMBERs are moved and improve the efficiency of adding MEMBERs; at the same time, it can solve the problem of empty spaces after frequent creation and deletion when the number of MEMBERs in multiple GROUPs is inconsistent.

[0039] The above combined with the appendix Figures 6-9 An efficient method for creating ECMP groups according to embodiments of the present invention is described. Furthermore, the present invention can also be applied to an efficient system for creating ECMP groups.

[0040] like Figure 10 As shown, according to a second aspect of the present invention, an efficient ECMP group creation system is provided, comprising: The first receiving module 100 is used to receive instructions to create an ECMP group; Create module 200 to reserve X MEMBER table entries in ECMP GROUP, record the starting address of ECMP GROUP and the current number of MEMBERs, and complete the creation of ECMP GROUP; The second receiving module 300 receives the instruction to add a MEMBER to the specified ECMP GROUP; The analysis module 400 analyzes the reserved MEMBER table item space of the specified ECMP GROUP. If the reserved MEMBER table item space is not sufficient, the analysis module 400 directly continues to occupy the idle MEMBER table item space. If the reserved MEMBER table item space is full, the analysis module 400 searches for sufficient available space and performs the performance migration operation of the MEMBER.

[0041] Further, X MEMBER table item spaces are reserved in the new ECMP GROUP, wherein the value of X is planned according to the number of ECMP members of the network.

[0042] The above describes the efficient creation system of the ECMP group according to the embodiment of the present application in combination with the accompanying drawings. Figure 10 The efficient creation system of the ECMP group according to the embodiment of the present application is described. Further, the present application can also be applied to an electronic device.

[0043] According to the third aspect of the embodiment of the present application, an electronic device is provided, which comprises a memory 1, a processor 2 and a computer program 3. The computer program 3 is stored in the memory 1, and the processor 2 runs the computer program 3 to execute the efficient creation method of the ECMP group of the first aspect.

[0044] According to the first aspect of the embodiment of the present application, a readable medium with non-volatile program code executable by a processor is provided. The program code causes the processor to run the efficient creation method of the ECMP group of the first aspect.

[0045] Wherein the readable storage medium can be a computer storage medium or a communication medium. The communication medium includes any medium that facilitates the transfer of computer program from one place to another. The computer storage medium can be any available medium that can be accessed by a general or special purpose computer. For example, the readable storage medium is coupled to the processor, so that the processor can read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be an integral part of the processor. The processor and the readable storage medium can be located in an application specific integrated circuit. In addition, the application specific integrated circuit can be located in a device. Of course, the processor and the readable storage medium can also exist as discrete components in a communication device. The readable storage medium can be a read only memory (ROM), a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk and an optical data storage device, etc. The present application also provides a program product, which includes execution instructions stored in a readable storage medium. The at least one processor of the device can read the execution instructions from the readable storage medium, and the at least one processor executes the execution instructions to make the device implement the above-mentioned various embodiments of the ECMP group creation method. In the above-mentioned embodiments of the device, it should be understood that the processor can be a central processing unit (English: Central Processing Unit, for short: CPU), and can also be other general-purpose processors, digital signal processors (English: Digital Signal Processor, for short: DSP), application specific integrated circuits (English: Application Specific Integrated Circuit, for short: ASIC), etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the present application can be directly embodied as the execution of the hardware processor, or the execution of the combination of the hardware and software modules in the processor.

[0046] Commonly used terms ECMP —— Equal Cost Multiple Path, equal cost multiple path ECMP MEMBER —— Equal Cost Multiple Path GROUP MEMBER, ECMP group member. Related standards and protocols

[0047] RFC 2991 —— Multipath Issues in Unicast and Multicast Next-Hop Selection RFC 2992 - Analysis of an Equal-Cost Multi-Path Algorithm RFC 6754 - Protocol Independent Multicast Equal-Cost Multipath (ECMP) Redirect It should be noted that, in this specification, the terms "comprises", "comprising", or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but can also include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element proceeded by "comprises... a" does not, without more constraints, exclude the existence of additional identical elements in the process, method, article, or apparatus that comprises the element.

[0048] While the application has been particularly shown and described with reference to the preferred embodiments, it will be understood by those skilled in the art that various changes in form and details can be made therein without departing from the spirit and scope of the application. Accordingly, the scope of the application should be determined not by the embodiments illustrated, but by the appended claims and their equivalents.

Claims

1. An efficient method for creating an ECMP group, characterized in that, The method comprises the following steps: receiving an instruction of creating an ECMP GROUP; reserving X MEMBER table item spaces in the ECMP GROUP, recording a start address and a current MEMBER number of the ECMP GROUP, and completing creation of the ECMP GROUP; receiving an instruction of adding a MEMBER to a specified ECMP GROUP; analyzing reserved MEMBER table item spaces of the specified ECMP GROUP, if the reserved MEMBER table item spaces are not enough, directly continuing to occupy idle MEMBER table item spaces; if the reserved MEMBER table item spaces are full, searching for enough available spaces and performing a performance migration operation of the MEMBER.

2. The method of claim 1, wherein the ECMP group is created efficiently by, X MEMBER table item spaces are reserved in a new ECMP GROUP, wherein the value of X is planned according to the ECMP member number of a network.

3. A system for efficient creation of an ECMP group, the system comprising: The method comprises the following steps: a first receiving module for receiving an instruction of creating an ECMP GROUP; a creating module for reserving X MEMBER table item spaces in the ECMP GROUP, recording a start address and a current MEMBER number of the ECMP GROUP, and completing creation of the ECMP GROUP; a second receiving module for receiving an instruction of adding a MEMBER to a specified ECMP GROUP; an analyzing module for analyzing reserved MEMBER table item spaces of the specified ECMP GROUP, if the reserved MEMBER table item spaces are not enough, directly continuing to occupy idle MEMBER table item spaces; if the reserved MEMBER table item spaces are full, searching for enough available spaces and performing a performance migration operation of the MEMBER.

4. The system for efficient ECMP group creation of claim 3, wherein, X MEMBER table item spaces are reserved in a new ECMP GROUP, wherein the value of X is planned according to the ECMP member number of a network.

5. An electronic device, comprising: The method comprises the following steps: a memory, a processor and a computer program, the computer program is stored in the memory, the processor runs the computer program to execute the efficient creation method of the ECMP group in any one of claims 1-2.

6. A readable medium having a non-volatile program code executable by a processor, characterized in that, The program code enables the processor to run the efficient creation method of the ECMP group in any one of claims 1-2.