FlexE group creation method, device, equipment and medium

By implementing the self-negotiation creation of FlexE groups between communication devices, the complex problem of FlexE interface configuration management in the existing FlexE configuration scheme is solved, the configuration process is simplified, manual operations are reduced, and the availability of FlexE Group is improved.

CN113595751BActive Publication Date: 2025-03-28ZTE CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010364420.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-04-30
Publication Date
2025-03-28
Estimated Expiration
2040-04-30

AI Technical Summary

Technical Problem

The existing FlexE configuration solution has the problem of complex FlexE interface configuration management operations and is not conducive to operation and maintenance, especially in the creation of FlexE Group and the binding of PHY interfaces. The manual configuration is complex and error-prone.

Method used

By implementing the self-negotiation creation of the FlexE group between the communication devices, the first communication device performs FlexE group pre-allocating the acquired neighbor interface information and sends the pre-allocation result to the matching second communication device. The second communication device performs the FlexE group creation operation based on the received result, and the first communication device performs the corresponding FlexE group creation operation based on the feedback of the second communication device.

Benefits of technology

The configuration process of FlexE Group is simplified, manual configuration operations are reduced, and the availability of FlexE Group groups is improved, and the cumbersome and error risks of manual configuration are avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113595751B_ABST
    Figure CN113595751B_ABST
Patent Text Reader

Abstract

The present application proposes a FlexE group creation method, apparatus, device and medium. The method includes: if it is determined that the first communication device is the main device for creating the FlexE group, then obtaining information from each neighbor interface of at least one second communication device, and performing FlexE group pre-allocation on these neighbor interfaces to obtain at least one FlexE group pre-allocation result; each FlexE group pre-allocation result is sent to a matching second communication device, so that the second communication device creates a FlexE group based on the FlexE group pre-allocation result; if it is determined that the second communication device has completed the FlexE group creation operation, then executing a FlexE group creation operation that matches the FlexE group pre-allocation result. The above technical solution simplifies the configuration process of the FlexE group, reduces manual configuration operations, and also improves the availability of the FlexE group.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a FlexE group creation method, device, equipment and medium. Background Art

[0002] FlexE (Flex Ethernet) is an improved technology based on high-speed Ethernet interface, which meets the needs of high-speed transmission and flexible bandwidth configuration. Compared with traditional bearers, 5G bearers require larger interface bandwidth and more sophisticated network slices, so FlexE is particularly important in the context of 5G networks.

[0003] The core idea of ​​FlexE technology is: first, multiple physical ports are bundled to form a large logical channel FlexE group (FlexEGroup), then each physical port in the FlexE Group is divided into independent time slot particles, and finally the time slots are combined in any number to form data bearing channels of different bandwidths FlexE Client to achieve more flexible multi-rate bearing. With its own technical characteristics, FlexE can support future network technology architectures based on different business experiences, and support the development of big video, cloud computing, VR (Virtual Reality) / AR (Augmented Reality) and 5G services.

[0004] However, existing FlexE configurations are all based on manual configuration, and there are many constraints on the creation of FlexE Group and the binding of PHY interfaces. Manual configuration is relatively complex and prone to errors. As a result, existing FlexE configuration solutions have defects such as complex FlexE interface configuration management operations and inconvenience in operation and maintenance. Therefore, how to simplify the configuration of FlexE Group, reduce manual configuration operations, and improve the availability of FlexE Group grouping is an urgent problem to be solved. Summary of the invention

[0005] The present application provides a FlexE group creation method, apparatus, device and medium to simplify the configuration of the FlexE Group, reduce manual configuration operations, and improve the availability of FlexE Group grouping.

[0006] In a first aspect, an embodiment of the present application provides a FlexE group creation method, which is applied to a first communication device, including:

[0007] If it is determined that the first communication device is a master device for creating a FlexE group, obtaining information of each neighbor interface from at least one second communication device; wherein the second communication device establishes a communication connection with the first communication device;

[0008] Performing FlexE group pre-allocation on each neighbor interface from the at least one second communication device to obtain at least one FlexE group pre-allocation result;

[0009] Send each of the FlexE group pre-allocation results to a matching second communication device respectively, where the FlexE group pre-allocation result is used by the matching second communication device to create a FlexE group;

[0010] If it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, a FlexE group creation operation that matches the FlexE group pre-allocation result is performed.

[0011] In a second aspect, an embodiment of the present application provides a FlexE group creation method, which is applied to a second communication device, including:

[0012] Receiving a FlexE group pre-allocation result sent by a first communication device; wherein the FlexE group pre-allocation result is obtained after the first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device, and the second communication device establishes a communication connection with the first communication device;

[0013] Execute a FlexE group creation operation that matches the FlexE group pre-allocation result, and feed back the FlexE group creation execution result to the first communication device; wherein the FlexE group creation execution result is used by the first communication device to execute a FlexE group creation operation that matches the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0014] In a third aspect, an embodiment of the present application provides a FlexE group creation device, applied to a first communication device, including:

[0015] a neighbor interface information acquisition module, configured to acquire information of each neighbor interface from at least one second communication device if it is determined that the first communication device is a master device for creating a FlexE group; wherein the second communication device establishes a communication connection with the first communication device;

[0016] A FlexE group pre-allocation module, configured to perform FlexE group pre-allocation on each neighbor interface from the at least one second communication device to obtain at least one FlexE group pre-allocation result;

[0017] A FlexE group pre-allocation result sending module, configured to send each of the FlexE group pre-allocation results to a matching second communication device, respectively, wherein the FlexE group pre-allocation result is used by the matching second communication device to create a FlexE group;

[0018] The FlexE group creation module is configured to execute a FlexE group creation operation that matches the FlexE group pre-allocation result if it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0019] In a fourth aspect, an embodiment of the present application provides a FlexE group creation device, applied to a second communication device, including:

[0020] A FlexE group pre-allocation result receiving module, configured to receive a FlexE group pre-allocation result sent by a first communication device; wherein the FlexE group pre-allocation result is obtained after the first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device, and the second communication device establishes a communication connection with the first communication device;

[0021] A FlexE group creation module is configured to execute a FlexE group creation operation that matches the FlexE group pre-allocation result, and to feed back the FlexE group creation execution result to the first communication device; wherein the FlexE group creation execution result is used by the first communication device to execute a FlexE group creation operation that matches the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0022] In a fifth aspect, an embodiment of the present application provides a FlexE group creation system, including: a first communication device and at least one second communication device;

[0023] Wherein, the first communication device and the second communication device establish a communication connection;

[0024] The first communication setting executes the FlexE group creation method applied to the first communication device as described in any embodiment of the present application;

[0025] The second communication device executes the FlexE group creation method applied to the second communication device as described in any embodiment of the present application.

[0026] In a sixth aspect, an embodiment of the present application provides a communication device, comprising: one or more processors; a memory for storing one or more programs; when the one or more programs are executed by the one or more processors, the one or more processors implement the FlexE group creation method applied to the first communication device as described in any embodiment of the present application.

[0027] In the seventh aspect, an embodiment of the present application provides a communication device, comprising: one or more processors; a memory for storing one or more programs; when the one or more programs are executed by the one or more processors, the one or more processors implement the FlexE group creation method applied to the second communication device as described in any embodiment of the present application.

[0028] In an eighth aspect, an embodiment of the present application provides a storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the FlexE group creation method as described in any embodiment of the present application is implemented.

[0029] In the technical solution provided in this embodiment, the first communication device, which serves as the main device for creating the FlexE group, can perform FlexE group pre-allocation on each neighbor obtained from at least one second communication device, and send each obtained FlexE group pre-allocation result to the matching second communication device. The second communication device performs a FlexE group creation operation on its own end based on the received FlexE group pre-allocation result. If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the received FlexE group pre-allocation result, it then performs a FlexE group creation operation on its own end that matches the FlexE group pre-allocation result. In this way, self-negotiation creation of the FlexE group is achieved between the first communication device and the second communication device, which simplifies the configuration process of the FlexE group, reduces manual configuration operations, and improves the availability of the FlexE group.

[0030] With regard to the above embodiments and other aspects of the present application and their implementation, further description is provided in the accompanying drawings, detailed description and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] Figure 1 A flowchart of a FlexE group creation method provided in this application;

[0032] Figure 2 A schematic diagram of the format of a Layer 2 Ethernet message provided for this application;

[0033] Figure 3 A schematic diagram of the format of the FlexE group creation request TLV provided in this application;

[0034] Figure 4 A schematic diagram of the TLV format of the FlexE group creation request response provided in this application;

[0035] Figure 5 A schematic diagram of the format of creating a TLV for a FlexE group provided in this application;

[0036] Figure 6 A schematic diagram of the format of the FlexE group creation response TLV provided in this application;

[0037] Figure 7 A flowchart of a FlexE group creation method provided in this application;

[0038] Figure 8 A flowchart of a FlexE group creation method provided in this application;

[0039] Fig. 9 A flowchart of a FlexE group creation method provided in this application;

[0040] Fig.10 A schematic diagram of the module structure of a FlexE group creation device provided in this application;

[0041] Fig.11 A schematic diagram of the module structure of a FlexE group creation device provided in this application;

[0042] Fig.12 A schematic diagram of the structure of a FlexE group creation system provided in this application;

[0043] Fig.13 A schematic diagram of the structure of a communication device provided for this application;

[0044] Fig.14 A schematic diagram of the structure of a communication device provided in this application. DETAILED DESCRIPTION

[0045] In order to make the purpose, technical solution and advantages of the present application more clear, the embodiments of the present application will be described in detail below with reference to the accompanying drawings. It should be noted that the embodiments and features in the embodiments of the present application can be combined with each other arbitrarily without conflict.

[0046] The terms "first" and "second" in this application are used to distinguish different objects rather than to describe a specific order.

[0047] To facilitate understanding, the main inventive concepts of the embodiments of the present application are briefly described.

[0048] In the present application, of the two end devices created by the FlexE group self-negotiation, one is the FlexE group creation master device, that is, the one-end device that actively initiates the FlexE group creation, and the other is the FlexE group creation slave device. Among them, the same FlexE group creation master device can correspond to only one FlexE group creation slave device, or it can correspond to multiple FlexE group creation slave devices at the same time. After the FlexE group creation master device obtains all neighbor interfaces, it performs FlexE group pre-allocation on these neighbor interfaces, obtains the FlexE group pre-allocation results corresponding to each FlexE group creation slave device, and sends them to the matching FlexE group creation slave device. After the FlexE group creation slave device receives the FlexE group pre-allocation result, if it is determined that the local interface resources meet the FlexE group pre-allocation result, the FlexE group creation operation on this end is executed based on the FlexE group pre-allocation result, and the execution result is fed back to the FlexE group creation master device. If the FlexE group creation master device determines that the FlexE group creation slave device completes the FlexE group creation operation that matches the FlexE group pre-allocation result, the FlexE group creation operation on the local end is performed, so as to realize the FlexE group auto-negotiation creation between the FlexE group creation master device and the FlexE group creation slave device.

[0049] In an exemplary embodiment, Figure 1 A flow chart of a FlexE group creation method provided in the present application. The method is applicable to the case where FlexE Group is created at both ends of the link. The method can be performed by a FlexE group creation device applied to a first communication device provided in the present application, and the FlexE group creation device can be implemented by software and / or hardware and integrated in the communication device.

[0050] like Figure 1 As shown, the FlexE group creation method provided by the present application and applied to the first communication device includes:

[0051] S110: If it is determined that the first communication device is a master device for creating a FlexE group, obtain information of each neighbor interface from at least one second communication device; wherein the second communication device establishes a communication connection with the first communication device.

[0052] When the first communication device creates a master device for the FlexE group, the second communication device that establishes a communication connection with it creates a slave device for the FlexE group. Specifically, the first communication device and the second communication device are directly connected through multiple optical fibers, and these interfaces are all in FlexE working mode.

[0053] In one example, the role information of the FlexE group creation master device or the FlexE group creation slave device can be manually configured in a reserved field of a set protocol, such as the FlexE ND (Neighbor Discovery) protocol. When a communication device at one end discovers a communication device at the other end, it parses the value of the reserved field in the preset protocol message to determine the master and slave roles of the two-end communication devices.

[0054] In another example, the role information of the FlexE group creating a master device or the FlexE group creating a slave device may also be configured by sending a manual command.

[0055] It is worth noting that in the network topology, a communication device can establish a communication connection with one or more communication devices, and the FlexE group creation master device can correspond to one or more FlexE group creation slave devices. In this embodiment, it is assumed that the first communication device is the FlexE group creation master device, and one or more second communication devices connected to the first communication device are the FlexE group creation slave devices.

[0056] If the first communication device determines that it is creating a master device for the FlexE group, it obtains information about each neighbor interface from at least one second communication device, for example, by querying information about each neighbor interface from at least one second communication device on the local physical interface, wherein the neighbor interface information may refer to the FlexE support capability of the physical interface and the rate of the physical interface.

[0057] In an example, before determining that the first communication device is a master device for creating a FlexE group, the method further includes:

[0058] Sending a first notification message carrying the interface FlexE capability and interface rate of the first communication device to at least one second communication device based on the target protocol;

[0059] Monitor a second notification message that is sent by the second communication device based on the target protocol and carries the interface FlexE capability and interface rate of the second communication device.

[0060] The target protocol refers to a private protocol with fast negotiation capability, which may be a data link layer protocol, such as the FlexE ND protocol and the LLDP (Link Layer Discovery Protocol) MED (Media Endpoint Discovery) protocol. The LLDP MED protocol adds some TLVs (Type Length Values) based on LLDP.

[0061] The interfaces of the first communication device and the second communication device are both capable of operating in FlexE mode, and the interface information can be notified to the other end through the target protocol, for example, the interface information can be notified to the other end through the FlexE ND protocol and the LLDP MED protocol, and the notified information may include the ability of the local interface to support FlexE mode and the rate of the local interface.

[0062] It is worth pointing out that the first notification message and the second notification message refer to the same type of notification messages. In order to distinguish the communication devices that send out the notification messages, they are named "first" and "second", which is not a specific limitation on the notification messages.

[0063] After the communication devices at both ends discover the FlexE neighbor interface of the communication device at the other end, they parse the notification message and determine the master-slave role of the communication device at the local end, whether it is the master device for creating the FlexE group or the slave device for creating the FlexE group. In this embodiment, if the first communication device determines that it is the master device for creating the FlexE group, it enters the FlexE group pre-allocation state, and if the second communication device determines that it is the slave device for creating the FlexE group, it enters the waiting FlexE group creation state.

[0064] S120. Perform FlexE group pre-allocation on each neighbor interface from at least one second communication device to obtain at least one FlexE group pre-allocation result.

[0065] After obtaining information of each neighbor interface directly connected to it, the first communication device pre-allocates these neighbor interfaces based on a preset allocation rule to obtain a FlexE group pre-allocation result. For example, these neighbor interfaces are pre-allocated based on a rule of whether the neighbor interface can be added to the same FlexE group and the interface capacity of the FlexE group.

[0066] Among them, when the number of second communication devices is one, the FlexE group pre-allocation result is one; when the number of second communication devices is multiple, the FlexE group pre-allocation result is multiple.

[0067] In an example, each neighbor interface from at least one second communication device may be pre-allocated as follows:

[0068] At least one level of neighbor interface classification is performed on each neighbor interface from at least one second communication device to obtain at least one neighbor interface classification set; and FlexE group pre-allocation is performed for each neighbor interface classification set.

[0069] For example, each neighbor interface is classified as a first-level neighbor interface, specifically whether it belongs to the same second communication device. If the number of second communication devices is one, then the obtained neighbor interface classification set is one; if the number of second communication devices is n, then the obtained neighbor interface classification sets are n. Furthermore, FlexE group pre-allocation is performed for each neighbor interface classification set. For example, FlexE group pre-allocation may be performed for each neighbor interface classification set based on the interface capacity of each FlexE group. Assuming that the number of interfaces in a neighbor interface classification set is 7, and the interface capacity of each FlexE group is 5, when FlexE group pre-allocation is performed for this neighbor interface classification set, the interfaces in this neighbor interface classification set may be divided into two FlexE groups, one FlexE group including 5 neighbor interfaces, and one FlexE group including 2 neighbor interfaces.

[0070] Further, in an example, each neighbor interface from at least one second communication device may be classified into at least one level of neighbor interface, specifically:

[0071] The neighbor interfaces from at least one second communication device are classified according to the device rack identifier, whether they comply with the opposite end interface bundling rule, and whether they comply with the local end interface bundling rule.

[0072] In this example, the first communication device performs three-level classification on each acquired neighbor interface. Among them, the first level classification is classification according to the equipment chassis identifier to which the neighbor interface belongs. Specifically, it can be classified according to the MAC address in the chassis identifier (Chassis Id) of the communication device to which the neighbor interface belongs, and the neighbor interfaces with the same MAC address are classified into one category and grouped. The second category classification is classification according to whether it complies with the opposite interface bundling rules. Specifically, the neighbor interfaces in the first level classification results can be classified according to whether they comply with the interface bundling rules of the second communication device. For example, it can be classified according to whether they belong to the same board or the same chip of the second communication device, etc. The neighbor interfaces in the first level classification results that belong to the same board or the same chip of the second communication device are classified into one category and grouped. This embodiment does not specifically limit the "opposite interface bundling rules". The third classification is classified according to whether it complies with the local interface bundling rules. Specifically, the neighbor interfaces in the second-level classification results can be classified according to whether they comply with the interface bundling rules of the first communication device. For example, the neighbor interfaces belonging to the same board or chip of the first communication device in the second-level classification results are classified into one category and grouped according to whether they belong to the same board or chip of the first communication device. This implementation does not specifically limit the "local interface bundling rules". In this implementation, the neighbor interface classification set that has been classified and grouped through three levels of classification is the minimum fine-grained set that can be bundled into groups.

[0073] Furthermore, the first communication device can also perform interface rate screening on neighbor interface classification sets that have been classified and grouped in three levels. Specifically, all neighbor interface classification sets that have been classified and grouped in three levels are traversed in turn, and the rate of each neighbor interface in each neighbor interface classification set is checked. If the rate of each neighbor interface is inconsistent with the rate of the corresponding local interface, it is removed from the corresponding neighbor interface classification set.

[0074] After obtaining each interface classification set, the first communication device can enter the FlexE group pre-allocation stage, and perform FlexE group pre-allocation for each neighbor interface classification set. Specifically, FlexE group pre-allocation is performed for each neighbor interface classification set according to the maximum number of interface members supported by each FlexE group. Taking a neighbor interface classification set as an example, for a pre-allocated FlexE group, a FlexE group identifier (FlexE Group ID) is assigned to it, and an interface number (PHY Number) is assigned to the interface divided into the FlexE group with the corresponding FlexE group identifier. When the number of interfaces allocated to the FlexE group exceeds the maximum number of interface members it supports, the next FlexE group is pre-allocated, and so on until all interfaces in this neighbor interface classification set are allocated.

[0075] Among them, PHY Numbers are allocated to interfaces in this neighbor interface classification set in sequence, and the PHY Numbers are automatically increased until all interfaces in this neighbor interface classification set are allocated. The FlexE Group ID and PHY number are globally unique in the local device.

[0076] In addition, the FlexE group creation master device and the FlexE group creation slave device (ie, the first communication device and the second communication device) can both initialize and set the maximum number of FlexE groups supported by the local end and the maximum number of interfaces supported by each FlexE group.

[0077] If the neighbor interfaces from at least one second communication device are classified according to the rack identifier of the device to which they belong, whether they comply with the interface bundling rules of the opposite end, and whether they comply with the interface bundling rules of the local end, and no neighbor interface classification set including at least two interfaces is obtained, the first communication device cannot pre-allocate the FlexE group.

[0078] S130. Send each FlexE group pre-allocation result to a matching second communication device respectively, and the FlexE group pre-allocation result is used by the matching second communication device to create a FlexE group.

[0079] The FlexE group pre-allocation result refers to the pre-allocation result corresponding to a FlexE group, which may include the FlexE Group ID of the FlexE group, the PHY number pre-allocated to all interfaces in the FlexE group, the interface rate, etc., which is not specifically limited in this embodiment.

[0080] If the number of second communication devices is one, the first communication device only needs to send the obtained FlexE group pre-allocation result to the second communication device; if the number of second communication devices is multiple, the first communication device needs to send each obtained FlexE group pre-allocation result to the second communication device that matches it. Regarding how to determine the matching relationship between the obtained FlexE group pre-allocation result and the second communication device, this embodiment does not make any specific limitations.

[0081] After the second communication device receives the FlexE group pre-allocation result that matches it, it can directly create the FlexE group on its own end based on the FlexE group pre-allocation result. In this case, the creation may succeed or fail. It can also first determine whether the interface resources on its own end meet the FlexE group pre-allocation result. If so, it will create the FlexE group based on the FlexE group pre-allocation result. In this case, the creation will generally succeed.

[0082] Typically, the first communication device may send the FlexE group pre-allocation results to the matching second communication devices respectively via messages based on the data link layer protocol.

[0083] S140. If it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, perform the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0084] After the second communication device creates the FlexE group based on the received FlexE group pre-allocation result, it feeds back the FlexE group creation execution result to the first communication device. The FlexE group creation execution result can be completed or incomplete, or it can be successful (equivalent to completed) or failed (equivalent to incomplete).

[0085] If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, it will perform the FlexE group creation operation that matches the FlexE group pre-allocation result on its own end to achieve the creation of the FlexE group through self-negotiation.

[0086] If the first communication device determines that the second communication device has not completed the FlexE group creation operation that matches the FlexE group pre-allocation result, or has not received the FlexE group creation execution result feedback from the second communication device within a set time period, the first communication device will not perform the FlexE group creation operation that matches the FlexE group pre-allocation result on the local end to avoid FlexE group creation erroneous operation. At this time, the first communication device can end the self-negotiation process and clear the FlexE group pre-allocation result.

[0087] In the technical solution provided in this embodiment, the first communication device, which serves as the main device for creating the FlexE group, can perform FlexE group pre-allocation on each neighbor obtained from at least one second communication device, and send each obtained FlexE group pre-allocation result to the matching second communication device. The second communication device performs a FlexE group creation operation on its own end based on the received FlexE group pre-allocation result. If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the received FlexE group pre-allocation result, it then performs a FlexE group creation operation on its own end that matches the FlexE group pre-allocation result. In this way, self-negotiation creation of the FlexE group is achieved between the first communication device and the second communication device, which simplifies the configuration process of the FlexE group, reduces manual configuration operations, and improves the availability of the FlexE group.

[0088] Based on the above technical solution, in one example, sending the FlexE group pre-allocation result to the matching second communication device may be specifically as follows:

[0089] Encapsulate the FlexE group pre-allocation result in a FlexE group creation request message and send it to a matching second communication device, where the FlexE group creation request message is used to instruct the second communication device to detect whether the local resources meet the FlexE group pre-allocation result;

[0090] Correspondingly, it may be determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, specifically:

[0091] Receive a FlexE group creation request response message fed back by the second communication device in response to the FlexE group creation request message; if the FlexE group creation request response message indicates that the local resources of the second communication device meet the FlexE group pre-allocation result, send a FlexE group creation message to the second communication device, and the FlexE group creation message is used to instruct the second communication device to perform a FlexE group creation operation that matches the FlexE group pre-allocation result; receive a FlexE group creation response message fed back by the second communication device in response to the FlexE group creation message; if the FlexE group creation response message indicates that the second communication device has completed the FlexE group creation operation, determine that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0092] In this example, the self-negotiation creation of the FlexE group between the first communication device and the second communication device can be implemented based on a negotiation message. For example, the negotiation message can be an Ethernet layer 2 message (such as an LLDP message, etc.), and its message format is as follows: Figure 2 The notification information in the auto-negotiation process is encapsulated in the PDU (Protocol Data Unit) of the message and transmitted. It is carried through the overhead frame of the FlexE management channel on the interface link with FlexE capabilities at both ends, and is extracted as a common Ethernet message for parsing after being transmitted to the other end.

[0093] Specifically, after the FlexE group pre-allocation of the first communication device is completed, it immediately initiates a FlexE group creation request message to the second communication device, wherein the FlexE group pre-allocation result can be encapsulated in the FlexE group creation request message. Taking the FlexE group creation request message as an LLDP message as an example, the FlexE group pre-allocation result can be encapsulated in the TLV. In addition, the FlexE group creation request message can also carry the FlexEGroup ID and PHY Number. After the second communication device receives the FlexE group creation request message, it parses the message to obtain the FlexE group pre-allocation result, and determines whether the local interface resources meet the FlexE group pre-allocation result, and feeds back the judgment result to the first communication device (if satisfied, the feedback is successful, if not satisfied, the feedback is failed), and specifically, the FlexE group creation request response message can be immediately fed back for the FlexE group creation request message, and the FlexE group creation request response message carries the response status (success or failure). Among them, when the second communication device determines whether the local interface resources meet the FlexE group pre-allocation result, it can check whether the rate of each interface in the FlexE group is consistent with the rate of the local interface. If they are consistent, it is considered to be satisfied, otherwise it is considered to be unsatisfactory. In addition, the FlexE group creation request response message may also carry the FlexE Group ID and PHY Number.

[0094] After the first communication device receives the FlexE group creation request response message fed back by the second communication device, it parses the response status carried in the message to determine whether it is successful or failed. If successful, it immediately initiates a FlexE group creation message corresponding to the FlexE group creation request response message. For example, it may be possible to initiate a matching FlexE group creation message based on the FlexEGroup ID and PHY Number carried in the FlexE group creation request response message. After the second communication device receives the FlexE group creation message, it performs the FlexE group creation operation according to the FlexE group pre-allocation result. Specifically, it configures the FlexE group according to the FlexE group pre-allocation result, binds the corresponding physical interface (PHY) to the FlexE group, and allocates the corresponding PHYNumber. After the second communication device completes the FlexE group creation operation, it immediately sends a FlexE group creation response message to the first communication device, and the FlexE group creation response message carries the response status (success or failure). In addition, the FlexE group creation response message may also carry the FlexE Group ID and PHY Number.

[0095] After the first communication device receives the FlexE group creation response message sent by the second communication device, it parses the response status carried in the message to determine whether it is success or failure. If successful, it immediately executes the matching FlexE group creation operation. Specifically, it configures the FlexE group according to the FlexE group pre-allocation result, binds the corresponding physical interface (PHY) to the FlexE group, and allocates the corresponding PHY Number.

[0096] At this point, the self-negotiation creation process of the FlexE group is completed between the first communication device and the second communication device.

[0097] Specifically, when the second communication device determines that the local interface resources meet the FlexE group pre-allocation results, it may not be immediately sent to the local device interface, but the FlexE group pre-allocation results may be cached, so that after receiving the FlexE group creation message, the FlexE group pre-allocation results in the cache can be obtained and then the FlexE group creation operation can be performed.

[0098] In the above technical solution, there is no need to manually configure the FlexE Group and PHY number and bundle the FlexE Group, thus avoiding the tediousness and error probability of manual configuration.

[0099] In one example, while the first communication device sends a FlexE group creation request message to the second communication device, a timer may also be started, for example, for 3 seconds. If a FlexE group creation request response message corresponding to the FlexE group creation request message is not received before the timer expires, the self-negotiation creation process of the FlexE group is terminated and the FlexE group pre-allocation result is cleared.

[0100] In another example, while the first communication device sends a FlexE group creation message to the second communication device, a timer may also be started, for example, for 3 seconds. If a FlexE group creation response message corresponding to the FlexE group creation message is not received before the timer expires, the self-negotiation creation process of the FlexE group is terminated and the FlexE group pre-allocation result is cleared.

[0101] Take the LLDP negotiation message as an example: The TLV format in the FlexE group creation request message can be as follows: Figure 3 As shown in FIG. 1 , the TLV type may be 1, indicating that it is a FlexE group creation request message, and the TLV information string carries the FlexE group identifier and the interface number; the TLV format of the FlexE group creation request response message may be as follows: Figure 4 As shown in FIG. 1 , the TLV type can be 2, indicating that it is a FlexE group creation request response message, and the TLV information string carries the FlexE group identifier, interface number, and response status; the TLV format in the FlexE group creation message can be as follows Figure 5 As shown in the figure, the TLV type can be 3, indicating that it is a FlexE group creation message, and the TLV information string carries the FlexE group identifier and the interface number; the TLV format in the FlexE group creation response message can be as follows Figure 6 As shown, the TLV type can be 4, indicating that it is a FlexE group creation response message, and the TLV information string carries the FlexE group identifier, interface number and response status.

[0102] In the above technical solution, the negotiation messages between the two ends of the communication equipment are exchanged quickly, and the request response mechanism ensures the reliability of the negotiation. The negotiation can be completed without waiting for several cycles, which greatly shortens the negotiation creation time. In addition, the interactive information of the two ends of the communication equipment to negotiate and create a FlexE Group is encapsulated in a Layer 2 Ethernet message using TLV, which is also easier to implement and parse.

[0103] Furthermore, in an example, after executing the FlexE group creation operation matching the FlexE group pre-allocation result, the method further includes:

[0104] If there is a newly online neighbor interface, the newly online neighbor interface is pre-allocated to a FlexE group, a target FlexE group pre-allocation result corresponding to the newly online neighbor interface is obtained, and sent to a matching second communication device;

[0105] If it is determined that the matching second communication device has completed the FlexE group interface adding operation that matches the target FlexE group pre-allocation result, the FlexE group interface adding operation that matches the target FlexE group pre-allocation result is performed.

[0106] In this example, for a newly online (ie, newly added) interface, the first communication device may also perform auto-negotiation interface bundling with a matching second communication device to add the interface to an accommodating FlexE group.

[0107] Specifically, if the first communication device finds a newly online neighbor interface, it can also classify the neighbor interface according to the device rack identifier, whether it complies with the opposite end interface bundling rule, and whether it complies with the local end interface bundling rule, select a FlexE group that can accommodate the neighbor interface, and obtain the target FlexE group pre-allocation result corresponding to the neighbor interface. The target FlexE group pre-allocation result may include the rate of the neighbor interface, the pre-allocated FlexE group identifier of the neighbor interface, and the interface number of the neighbor interface.

[0108] The first communication device sends the target FlexE group pre-allocation result to the matching second communication device, and can encapsulate the target FlexE group pre-allocation result in the FlexE group interface addition request message and send it to the second communication device. If the second communication device determines that the local interface resources meet the target FlexE group pre-allocation result, it generates a FlexE group interface addition request response message and feeds it back to the first communication device. If the first communication device determines that the response status of the second communication device is successful, it sends the FlexE group interface addition message to the second communication device, and the second communication device binds the neighbor interface to the corresponding FlexE group according to the target FlexE group pre-allocation result, assigns the corresponding interface number to the neighbor interface, and feeds back the FlexE group interface addition response message to the first communication device. If the first communication device determines that the response status of the second communication device is successful, it binds the neighbor interface to the corresponding FlexE group according to the target FlexE group pre-allocation result on the local side, and assigns the corresponding interface number to the neighbor interface.

[0109] At this point, the first communication device and the second communication device complete the FlexE group interface auto-negotiation adding process for the newly online interface. Among them, the first communication device can also start the timer while sending the FlexE group interface adding request message and the FlexE group interface adding message, which will not be repeated here.

[0110] Furthermore, in an example, after executing the FlexE group creation operation matching the FlexE group pre-allocation result, the method further includes:

[0111] If there is a newly offline neighbor interface, sending the target FlexE group interface pre-deletion result corresponding to the newly offline neighbor interface to the matching second communication device;

[0112] If it is determined that the matching second communication device has completed the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result, the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result is performed.

[0113] In this example, for the newly offline interface, the first communication device may also perform auto-negotiation interface unbundling with the matching second communication device and delete it from the corresponding FlexE group.

[0114] Specifically, if the first communication device finds a newly offline neighbor interface, the FlexE group identifier and interface number corresponding to the neighbor interface are obtained. The target FlexE group interface pre-deletion result may include the rate of the neighbor interface, the FlexE group identifier corresponding to the neighbor interface, and the interface number of the neighbor interface.

[0115] The first communication device sends the target FlexE group interface pre-deletion result to the matching second communication device, and can encapsulate the target FlexE group interface pre-deletion result in the FlexE group interface deletion request message and then send the FlexE group interface deletion request message to the second communication device. If the second communication device determines that the local interface resources meet the target FlexE group interface pre-deletion result, it generates a FlexE group interface deletion request response message and feeds it back to the first communication device. If the first communication device determines that the response status of the second communication device is successful, it sends the FlexE group interface deletion message to the second communication device, and the second communication device unbundles the neighbor interface in the corresponding FlexE group according to the target FlexE group interface pre-deletion result, deletes the interface number of the neighbor interface, and feeds back the FlexE group interface deletion response message to the first communication device. If the first communication device determines that the response status of the second communication device is successful, it unbundles the neighbor interface in the corresponding FlexE group according to the target FlexE group interface pre-deletion result on the local side and deletes the interface number of the neighbor interface.

[0116] At this point, the first communication device and the second communication device complete the FlexE group interface auto-negotiation deletion process for the new offline interface. The first communication device can also start a timer while sending the FlexE group interface deletion request message and the FlexE group interface deletion message, which will not be repeated here.

[0117] The above technical solution supports a mechanism for interfaces to dynamically join or exit a FlexE group, making the management of the FlexE group more flexible.

[0118] In an exemplary embodiment, Figure 7 A flow chart of a FlexE group creation method provided in the present application. The method is applicable to the case where FlexE Group is created at both ends of the link. The method can be performed by a FlexE group creation device applied to a second communication device provided in the present application, and the FlexE group creation device can be implemented by software and / or hardware and integrated in the communication device.

[0119] like Figure 7 As shown, the FlexE group creation method applied to the second communication device provided by the present application includes:

[0120] S210. Receive the FlexE group pre-allocation result sent by the first communication device; wherein the FlexE group pre-allocation result is obtained after the first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device, and the second communication device establishes a communication connection with the first communication device.

[0121] In this embodiment, the first communication device that performs FlexE group pre-allocation creates a master device for the FlexE group, and correspondingly, the second communication device creates a slave device for the FlexE group. Specifically, the first communication device and the second communication device are directly connected through multiple optical fibers, and these interfaces are in FlexE working mode.

[0122] If the first communication device determines that it is creating a master device for the FlexE group, it obtains information about each neighbor interface from at least one second communication device, for example, by querying information about each neighbor interface from at least one second communication device on the local physical interface, wherein the neighbor interface information may refer to the FlexE support capability of the physical interface and the rate of the physical interface.

[0123] In an example, before receiving the FlexE group pre-allocation result sent by the first communication device, the method further includes:

[0124] Sending a second notification message carrying the interface FlexE capability and interface rate of the second communication device to the first communication device based on the target protocol;

[0125] The first notification message carrying the interface FlexE capability and interface rate of the first communication device and sent by the first communication device based on the target protocol is monitored.

[0126] The target protocol refers to a private protocol with fast negotiation capability, which may be a data link layer protocol, such as the FlexE ND protocol and the LLDP (Link Layer Discovery Protocol) MED (Media Endpoint Discovery) protocol. The LLDP MED protocol adds some TLVs (Type Length Values) based on LLDP.

[0127] The interfaces of the first communication device and the second communication device are both capable of operating in FlexE mode, and the interface information can be notified to the other end through the target protocol, for example, the interface information can be notified to the other end through the FlexE ND protocol and the LLDP MED protocol, and the notified information may include the ability of the local interface to support FlexE mode and the rate of the local interface.

[0128] After the communication devices at both ends discover the FlexE neighbor interface of the communication device at the other end, they parse the notification message and determine the master-slave role of the communication device at the local end, whether it is the master device for creating the FlexE group or the slave device for creating the FlexE group. In this embodiment, if the first communication device determines that it is the master device for creating the FlexE group, it enters the FlexE group pre-allocation state, and if the second communication device determines that it is the slave device for creating the FlexE group, it enters the waiting FlexE group creation state.

[0129] After obtaining information of each neighbor interface directly connected to it, the first communication device pre-allocates these neighbor interfaces based on a preset allocation rule to obtain a FlexE group pre-allocation result. For example, these neighbor interfaces are pre-allocated based on a rule of whether the neighbor interface can be added to the same FlexE group and the interface capacity of the FlexE group.

[0130] In one example, a first communication device performs at least one level of neighbor interface classification on each neighbor interface from at least one second communication device to obtain at least one neighbor interface classification set; and performs FlexE group pre-allocation for each neighbor interface classification set.

[0131] Further, the first communication device may classify each neighbor interface from at least one second communication device into at least one level of neighbor interfaces, specifically:

[0132] The first communication device classifies neighbor interfaces from at least one second communication device according to the device rack identifier, whether the neighbor interfaces comply with the opposite-end interface bundling rule, and whether the neighbor interfaces comply with the local-end interface bundling rule.

[0133] In this example, the first communication device performs three-level classification on each acquired neighbor interface. Among them, the first level classification is classification according to the equipment chassis identifier to which the neighbor interface belongs. Specifically, it can be classified according to the MAC address in the chassis identifier (Chassis Id) of the communication device to which the neighbor interface belongs, and the neighbor interfaces with the same MAC address are classified into one category and grouped. The second category classification is classification according to whether it complies with the opposite interface bundling rules. Specifically, the neighbor interfaces in the first level classification results can be classified according to whether they comply with the interface bundling rules of the second communication device. For example, it can be classified according to whether they belong to the same board or the same chip of the second communication device, etc. The neighbor interfaces in the first level classification results that belong to the same board or the same chip of the second communication device are classified into one category and grouped. This embodiment does not specifically limit the "opposite interface bundling rules". The third classification is classified according to whether it complies with the local interface bundling rules. Specifically, the neighbor interfaces in the second-level classification results can be classified according to whether they comply with the interface bundling rules of the first communication device. For example, the neighbor interfaces belonging to the same board or chip of the first communication device in the second-level classification results are classified into one category and grouped according to whether they belong to the same board or chip of the first communication device. This implementation does not specifically limit the "local interface bundling rules". In this implementation, the neighbor interface classification set that has been classified and grouped through three levels of classification is the minimum fine-grained set that can be bundled into groups.

[0134] Furthermore, the first communication device can also perform interface rate screening on neighbor interface classification sets that have been classified and grouped in three levels. Specifically, all neighbor interface classification sets that have been classified and grouped in three levels are traversed in turn, and the rate of each neighbor interface in each neighbor interface classification set is checked. If the rate of each neighbor interface is inconsistent with the rate of the corresponding local interface, it is removed from the corresponding neighbor interface classification set.

[0135] After obtaining each interface classification set, the first communication device can enter the FlexE group pre-allocation stage, and perform FlexE group pre-allocation for each neighbor interface classification set. Specifically, FlexE group pre-allocation is performed for each neighbor interface classification set according to the maximum number of interface members supported by each FlexE group. Taking a neighbor interface classification set as an example, for a pre-allocated FlexE group, a FlexE group identifier (FlexE Group ID) is assigned to it, and an interface number (PHY Number) is assigned to the interface divided into the FlexE group with the corresponding FlexE group identifier. When the number of interfaces allocated to the FlexE group exceeds the maximum number of interface members it supports, the next FlexE group is pre-allocated, and so on until all interfaces in this neighbor interface classification set are allocated.

[0136] Among them, PHY Numbers are allocated to interfaces in this neighbor interface classification set in sequence, and the PHY Numbers are automatically increased until all interfaces in this neighbor interface classification set are allocated. The FlexE Group ID and PHY number are globally unique in the local device.

[0137] In addition, the FlexE group creation master device and the FlexE group creation slave device (ie, the first communication device and the second communication device) can both initialize and set the maximum number of FlexE groups supported by the local end and the maximum number of interfaces supported by each FlexE group.

[0138] After the pre-allocation operation is completed, the first communication device sends each FlexE group pre-allocation result to the matching second communication device, and each second communication device receives the FlexE group pre-allocation result corresponding to it.

[0139] The FlexE group pre-allocation result refers to the pre-allocation result corresponding to a FlexE group, which may include the FlexE Group ID of the FlexE group, the PHY number pre-allocated to all interfaces in the FlexE group, the interface rate, etc., which is not specifically limited in this embodiment.

[0140] S220. Execute a FlexE group creation operation that matches the FlexE group pre-allocation result, and feed back the FlexE group creation execution result to the first communication device; wherein the FlexE group creation execution result is used by the first communication device to execute a FlexE group creation operation that matches the FlexE group pre-allocation result when it determines that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0141] After the second communication device receives the FlexE group pre-allocation result that matches it, it can directly create the FlexE group on its own end based on the FlexE group pre-allocation result. In this case, the creation may succeed or fail. It can also first determine whether the interface resources on its own end meet the FlexE group pre-allocation result. If so, it will create the FlexE group based on the FlexE group pre-allocation result. In this case, the creation will generally succeed.

[0142] The FlexE group creation execution result may be completed or incomplete, or may be success (equivalent to completion) or failure (equivalent to incomplete).

[0143] If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, it will perform the FlexE group creation operation that matches the FlexE group pre-allocation result on its own end to achieve the creation of the FlexE group through self-negotiation.

[0144] If the first communication device determines that the second communication device has not completed the FlexE group creation operation that matches the FlexE group pre-allocation result, or has not received the FlexE group creation execution result feedback from the second communication device within a set time period, the first communication device will not perform the FlexE group creation operation that matches the FlexE group pre-allocation result on the local end to avoid FlexE group creation erroneous operation. At this time, the first communication device can end the self-negotiation process and clear the FlexE group pre-allocation result.

[0145] In the technical solution provided in this embodiment, the first communication device, which serves as the main device for creating the FlexE group, can perform FlexE group pre-allocation on each neighbor obtained from at least one second communication device, and send each obtained FlexE group pre-allocation result to the matching second communication device. The second communication device performs a FlexE group creation operation on its own end based on the received FlexE group pre-allocation result. If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the received FlexE group pre-allocation result, it then performs a FlexE group creation operation on its own end that matches the FlexE group pre-allocation result. In this way, self-negotiation creation of the FlexE group is achieved between the first communication device and the second communication device, which simplifies the configuration process of the FlexE group, reduces manual configuration operations, and improves the availability of the FlexE group.

[0146] Based on the above technical solution, in an example, receiving the FlexE group pre-allocation result sent by the first communication device may specifically include:

[0147] receiving a FlexE group creation request message encapsulating a FlexE group pre-allocation result sent by the first communication device;

[0148] Correspondingly, a FlexE group creation operation matching the FlexE group pre-allocation result may be executed, and the FlexE group creation execution result may be fed back to the first communication device, specifically:

[0149] A FlexE group creation request response message is generated for the FlexE group creation request message and sent to the first communication device, where the FlexE group creation request response message indicates whether the local resources of the second communication device meet the FlexE group pre-allocation result;

[0150] If a FlexE group creation message sent by the first communication device is received, a FlexE group creation operation matching the FlexE group pre-allocation result is performed, and the FlexE group creation execution result is sent to the first communication device via a FlexE group creation response message fed back to the FlexE group creation message.

[0151] In this example, the self-negotiation creation of the FlexE group between the first communication device and the second communication device can be implemented based on a negotiation message. For example, the negotiation message can be an Ethernet layer 2 message (such as an LLDP message, etc.), and its message format is as follows: Figure 2 The notification information in the auto-negotiation process is encapsulated in the PDU (Protocol Data Unit) of the message and transmitted. It is carried through the overhead frame of the FlexE management channel on the interface link with FlexE capabilities at both ends, and is extracted as a common Ethernet message for parsing after being transmitted to the other end.

[0152] In a specific example, after the pre-allocation process of the first communication device is completed, a FlexE group creation request message is immediately generated and sent to the second communication device, wherein the FlexE group pre-allocation result is encapsulated in the TLV of the FlexE group creation request message. At the same time, a timer is started. If no response message from the second communication device is received within the timeout period, the negotiation process is terminated and the FlexE group pre-allocation result is cleared.

[0153] After the second communication device receives the FlexE group creation request message sent by the first communication device, it parses the message and checks whether the local interface resources meet the FlexE group pre-allocation results, obtains a response status based on the judgment result, and feeds back to the first communication device through a FlexE group creation request response message.

[0154] After the first communication device receives the FlexE group creation request response message, if it determines that the response status is successful, it immediately sends a FlexE group creation message. At the same time, a timer is started. If no response message from the second communication device is received within the timeout period, the negotiation process ends and the FlexE group pre-allocation result is cleared.

[0155] After receiving the FlexE group creation message from the first communication device, the second communication device configures the FlexE group according to the FlexE group pre-allocation result, binds the corresponding interface into the FlexE group, and allocates the corresponding PHY number to the interface. After the FlexE group configuration is successful, the FlexE group creation response message is sent immediately.

[0156] After the first communication device receives the FlexE group creation response message from the second communication device, if it determines that the response status is successful, it immediately executes the FlexE group creation action, binds the corresponding interface to the FlexE group, and allocates the corresponding PHY number to the interface.

[0157] At this point, the self-negotiation creation process of the FlexE group is completed between the first communication device and the second communication device.

[0158] Furthermore, in an example, after performing a FlexE group creation operation matching the FlexE group pre-allocation result, the method further includes:

[0159] If a target FlexE group pre-allocation result corresponding to the newly online neighbor interface is received, a FlexE group interface addition operation matching the target FlexE group pre-allocation result is performed, and the FlexE group interface addition execution result is fed back to the first communication device; wherein the FlexE group interface addition execution result is used by the first communication device to perform a FlexE group interface addition operation matching the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group interface addition operation matching the target FlexE group pre-allocation result.

[0160] In this example, for a newly online (i.e., newly added) interface, the first communication device can also perform self-negotiation interface bundling with a matching second communication device to add it to an accommodating FlexE group. The first communication device can also start a timer while sending a FlexE group interface addition request message and a FlexE group interface addition message, which will not be repeated here.

[0161] Furthermore, in an example, after performing a FlexE group creation operation matching the FlexE group pre-allocation result, the method further includes:

[0162] If a target FlexE group interface pre-deletion result corresponding to the newly offline neighbor interface is received, a FlexE group interface deletion operation matching the target FlexE group interface pre-deletion result is executed, and the FlexE group interface deletion execution result is fed back to the first communication device; wherein, the FlexE group interface deletion execution result is used by the first communication device to execute a FlexE group interface deletion operation matching the target FlexE group interface pre-deletion result when it is determined that the second communication device has completed the FlexE group interface deletion operation matching the target FlexE group interface pre-deletion result.

[0163] In this example, for the newly offline interface, the first communication device can also perform self-negotiation interface unbundling with the matching second communication device and delete it from the corresponding FlexE group. Wherein, the first communication device can also start the timer while sending the FlexE group interface deletion request message and the FlexE group interface deletion message, which will not be repeated here.

[0164] For details not explained in this embodiment, please refer to the aforementioned embodiment and will not be repeated here.

[0165] In a specific embodiment, Figure 8 A schematic diagram of a FlexE group creation method provided in this application. Figure 8 As shown, a FlexE group creation method provided by the present application specifically includes:

[0166] S310: The first communication device and the second communication device respectively send a notification message carrying the interface FlexE capability and interface rate of the respective end to the opposite end based on the target protocol, and monitor the notification message sent from the opposite end.

[0167] The second communication device establishes a communication connection with the first communication device.

[0168] S320: If the first communication device determines that it is the FlexE group creation master device, it obtains information about each neighbor interface from at least one second communication device.

[0169] S330. The first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device to obtain at least one FlexE group pre-allocation result.

[0170] In one example, the first communication device performs at least one level of neighbor interface classification on each neighbor interface from at least one second communication device to obtain at least one neighbor interface classification set; and performs FlexE group pre-allocation for each of the neighbor interface classification sets.

[0171] Furthermore, in one example, the first communication device classifies neighbor interfaces from at least one second communication device according to the device rack identifier, whether the neighbor interface complies with the opposite interface bundling rule, and whether the neighbor interface complies with the local interface bundling rule.

[0172] S340: The first communication device sends each FlexE group pre-allocation result to a matching second communication device.

[0173] In one example, the first communication device encapsulates each FlexE group pre-allocation result in a FlexE group creation request message and sends it to a matching second communication device.

[0174] S350. The second communication device receives the FlexE group pre-allocation result sent by the first communication device.

[0175] In one example, the second communication device detects whether the local resources meet the FlexE group pre-allocation result, and based on the detection result, feeds back a FlexE group creation request response message to the first communication device. If the first communication device determines that the response status of the second communication device is successful, it sends a FlexE group creation message to the second communication device.

[0176] S360. The second communication device executes a FlexE group creation operation that matches the FlexE group pre-allocation result, and feeds back the FlexE group creation execution result to the first communication device.

[0177] In one example, after receiving the FlexE group creation message, the second communication device performs a FlexE group creation operation that matches the FlexE group pre-allocation result, and feeds back the FlexE group creation execution result to the first communication device through a FlexE group creation response message.

[0178] S370. If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, the first communication device performs the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0179] At this point, the self-negotiation creation process of the FlexE group is completed between the first communication device and the second communication device.

[0180] Furthermore, after the first communication device executes the FlexE group creation operation, if there is a newly online neighbor interface, the newly online neighbor interface is pre-allocated to the FlexE group, and the target FlexE group pre-allocation result corresponding to the newly online neighbor interface is obtained, and sent to the matching second communication device; the second communication device executes a FlexE group interface addition operation that matches the target FlexE group pre-allocation result, and feeds back the FlexE group interface addition execution result to the first communication device; if the first communication device determines that the matching second communication device has completed the FlexE group interface addition operation that matches the target FlexE group pre-allocation result, it executes a FlexE group interface addition operation that matches the target FlexE group pre-allocation result.

[0181] At this point, the first communication device and the second communication device complete the FlexE group interface auto-negotiation adding process for the newly online interface.

[0182] Furthermore, after the first communication device executes the FlexE group creation operation, if there is a newly offline neighbor interface, the target FlexE group interface pre-deletion result corresponding to the newly offline neighbor interface is sent to the matching second communication device; the second communication device executes the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result, and feeds back the FlexE group interface deletion execution result to the first communication device; if the first communication device determines that the matching second communication device has completed the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result, it executes the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result.

[0183] At this point, the first communication device and the second communication device complete the FlexE group interface auto-negotiation deletion process for the new offline interface.

[0184] For details not explained in this embodiment, please refer to the aforementioned embodiment and will not be repeated here.

[0185] In a specific embodiment, Fig. 9 A flowchart of a FlexE group creation method provided in this application.

[0186] Reference Fig. 9:First, the interfaces of device A and device B are both FlexE capable, and their FlexE capabilities and interface rates can be notified to the other end through FlexE ND and LLDP MED messages. After receiving the FlexE capability notification information, the two devices parse out the FlexE capabilities and interface rates of the other end's interface and store them locally, for example, in the flexible configuration module of the device (the virtual function module in the device). In particular, the two devices can elect the master and slave roles of the devices by parsing the notification message, wherein the two devices can determine the master and slave attributes of the devices by sending configuration commands.

[0187] Once the master and slave devices are elected, the flexible configuration module of the device initializes the maximum number of FlexEGroups supported by the local end and the maximum number of PHY members supported by each FlexE Group. The initialization can be done by setting default values ​​in the configuration file or by issuing configuration commands.

[0188] Next, the flexible configuration module of the master device begins to classify the neighboring interfaces with FlexE capabilities on the other end, where the classification can be carried out in three stages. The first level of classification is carried out according to the Chassis ID of the neighboring interface, and the binding range of the FlexEGroup is first selected as the same neighboring device. All neighboring interfaces received by the master device are classified into groups according to the MAC address of the Chassis ID of the neighboring interface; the second level of classification is that the flexible configuration module classifies the group members of the first level classification according to the "opposite end bundleable PHY grouping rule" to define the members that can be classified into groups for FlexE Group, where the "opposite end bundleable PHY grouping rule" can be whether the neighboring interface of the slave device is an interface in the same board or an interface controlled by the same chip or other optional rules; the third level of classification is that the flexible configuration module classifies the group members of the second level classification according to the "local end bundleable PHY grouping rule". The final three-level classification result is a collection of the smallest granularity that can be bundled into a FlexEGroup.

[0189] After the three-level neighbor classification, all the three-level classification sets are traversed. For each set, all neighbor interfaces in the set are traversed and the local interface rate is compared with the neighbor interface rate. If the comparison result is inconsistent, the neighbor interface is removed from the corresponding set. Finally, available FlexE Group members are selected.

[0190] Next, the flexible configuration module of the master device enters the FlexE Group pre-allocation phase. The flexible configuration module will allocate PHY numbers to the available group members finally selected according to the maximum number of PHY members supported by each FlexE Group, and assign the corresponding Group ID. After the maximum number of PHY members is exceeded, the next Group will be allocated, and so on. Each 100G PHY interface is assigned a PHY number in turn, and the PHY number is automatically incremented until all PHYs are allocated. The Group ID and PHY number are globally unique on this end device. In particular, for the newly added PHY, the FlexE Group that can be accommodated should be dynamically selected according to the previous classification and bundling decision rules. If the neighboring interface is offline, the corresponding PHY will be dynamically kicked out of the FlexE Group.

[0191] It should be noted that the FlexE pre-allocation phase mainly calculates and allocates the FlexE Group ID and PHY number. The calculation and allocation results are not immediately sent to the local device interface, but are only cached in the flexible configuration module of the master device.

[0192] When the master device completes the pre-allocation, it encapsulates the FlexE Group pre-allocation result into TLV and initiates a FlexE Group creation request message. Figure 3 The format of the TLV in the FlexE Group creation request message is shown in the figure. The TLV type is 1 and occupies 1 byte, indicating that the TLV is the FlexE Group creation request TLV. The TLV information string field is filled with the FlexE Group ID and PHY number calculated in the FlexE Group pre-allocation phase. These two fields occupy 1 byte respectively. The TLV is immediately sent from the master device to the slave device through the FlexE Group creation request message. At the same time, the master device can start a timer. If the master device does not receive a response message from the slave device within the timeout period, the negotiation ends and the pre-allocation result in the flexible configuration module is cleared.

[0193] After receiving the FlexE Group creation request message from the master device, the slave device interface immediately checks whether the neighbor interface rate in the FlexE Group creation request message is consistent with the local interface, and immediately sends a FlexE Group creation request response message. Figure 4It describes the format of the TLV in the FlexE Group creation request response message, where the TLV type is 2, occupying 1 byte, indicating that the TLV is the FlexE Group creation request response TLV, and the TLV information string field is filled with the pre-allocated FlexE Group ID, PHY number and response status, and these three fields occupy 1 byte respectively. The FlexE GroupID and PHY number are extracted from the FlexE Group creation request message TLV and filled into the corresponding fields of the FlexE Group creation request response message TLV. Exemplarily, the response status 1 indicates success and 0 indicates failure. When the interface rate of the slave device is consistent with the interface rate of the master device, it indicates success, otherwise it indicates failure. At the same time, the FlexE Group ID and PHY number in the FlexE Group creation request message are parsed out and stored in the flexible configuration module.

[0194] After receiving the FlexE Group Create Request Response message, the master device parses the FlexE Group ID and PHYnumber and checks the response status. If it is successful, it immediately initiates a FlexE Group Create message. Figure 5 The format of the TLV in the FlexEGroup creation message is shown in the figure. The TLV Type is 3 and occupies 1 byte, indicating that the TLV is the FlexE Group creation TLV. The TLV information string field is filled with the FlexE Group ID and PHY number calculated in the pre-allocation phase. These two fields occupy 1 byte respectively. The TLV is immediately sent from the master device to the slave device through the FlexE Group creation message, indicating that the slave device can start the configuration delivery of the FlexE Group. At the same time, the master device can start a timer. If the response message from the slave device is not received within the timeout period, the negotiation ends and the pre-allocation result in the flexible configuration module is cleared.

[0195] When the slave device receives the FlexE Group creation message, it immediately notifies the flexible configuration module and configures and sends the previously pre-allocated results. When the FlexE Group is successfully created, the slave device immediately sends a FlexE Group creation response message. Figure 6The format of the TLV in the FlexE Group creation message is described, where the TLV Type is 4, which occupies 1 byte, indicating that the TLV is a FlexE Group creation response TLV. The TLV information string field is filled with the pre-allocated FlexE Group ID, PHY number and response status, and these three fields occupy 1 byte respectively. For example, the response status 1 indicates that the FlexE Group is created successfully, and 0 indicates failure.

[0196] After receiving the FlexE Group creation response message, the master device analyzes the response status and immediately sends the FlexE Group configuration corresponding to the master device pre-allocation result if successful. Finally, the two-end automatic negotiation ends and both parties successfully configure the FlexE Group.

[0197] This embodiment also provides a FlexE group creation device, Fig.10 This is a schematic diagram of the structure of a FlexE group creation device provided in this application. Fig.10 As shown, a FlexE group creation device applied to a first communication device provided in an embodiment of the present application can be implemented by software and / or hardware and integrated in the communication device, and the device includes: a neighbor interface information acquisition module 510, a FlexE group pre-allocation module 520, a FlexE group pre-allocation result sending module 530 and a FlexE group creation module 540. Among them,

[0198] A neighbor interface information acquisition module 510 is configured to acquire information of each neighbor interface from at least one second communication device if it is determined that the first communication device is a master device for creating a FlexE group; wherein the second communication device establishes a communication connection with the first communication device;

[0199] The FlexE group pre-allocation module 520 is configured to perform FlexE group pre-allocation on each neighbor interface from the at least one second communication device to obtain at least one FlexE group pre-allocation result;

[0200] A FlexE group pre-allocation result sending module 530 is configured to send each of the FlexE group pre-allocation results to a matching second communication device, wherein the FlexE group pre-allocation result is used by the matching second communication device to create a FlexE group;

[0201] The FlexE group creation module 540 is configured to execute a FlexE group creation operation that matches the FlexE group pre-allocation result if it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0202] In the technical solution provided in this embodiment, the first communication device, which serves as the main device for creating the FlexE group, can perform FlexE group pre-allocation on each neighbor obtained from at least one second communication device, and send each obtained FlexE group pre-allocation result to the matching second communication device. The second communication device performs a FlexE group creation operation on its own end based on the received FlexE group pre-allocation result. If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the received FlexE group pre-allocation result, it then performs a FlexE group creation operation on its own end that matches the FlexE group pre-allocation result. In this way, self-negotiation creation of the FlexE group is achieved between the first communication device and the second communication device, which simplifies the configuration process of the FlexE group, reduces manual configuration operations, and improves the availability of the FlexE group.

[0203] Furthermore, the above device also includes: a notification module and a monitoring module, wherein:

[0204] A notification module, configured to send a first notification message carrying an interface FlexE capability and an interface rate of the first communication device to at least one second communication device based on a target protocol;

[0205] The monitoring module is configured to monitor a second notification message sent by the second communication device based on the target protocol and carrying the interface FlexE capability and interface rate of the second communication device.

[0206] Furthermore, the FlexE group pre-allocation module 520 is specifically configured to perform at least one level of neighbor interface classification on each neighbor interface from at least one second communication device to obtain at least one neighbor interface classification set; and perform FlexE group pre-allocation for each of the neighbor interface classification sets.

[0207] Furthermore, the FlexE group pre-allocation module 520 is specifically configured to classify neighbor interfaces from at least one second communication device according to the device rack identifier to which they belong, whether they comply with the opposite end interface bundling rule, and whether they comply with the local end interface bundling rule.

[0208] Furthermore, the above device further comprises: a new online interface bundling module and / or a new offline interface debundling module, wherein:

[0209] A newly online interface bundling module is configured to, after executing a FlexE group creation operation that matches the FlexE group pre-allocation result, if there is a newly online neighbor interface, perform FlexE group pre-allocation on the newly online neighbor interface, obtain a target FlexE group pre-allocation result corresponding to the newly online neighbor interface, and send it to a matching second communication device; if it is determined that the matching second communication device has completed a FlexE group interface addition operation that matches the target FlexE group pre-allocation result, perform a FlexE group interface addition operation that matches the target FlexE group pre-allocation result;

[0210] The new offline interface unbundling module is configured to, after executing the FlexE group creation operation that matches the FlexE group pre-allocation result, if there is a newly offline neighbor interface, send the target FlexE group interface pre-deletion result corresponding to the newly offline neighbor interface to the matching second communication device; if it is determined that the matching second communication device has completed the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result, execute the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result.

[0211] In a specific example, the FlexE group pre-allocation result sending module 530 is configured to encapsulate the FlexE group pre-allocation result in a FlexE group creation request message and send it to a matching second communication device, where the FlexE group creation request message is used to instruct the second communication device to detect whether the local resources meet the FlexE group pre-allocation result;

[0212] Correspondingly, the FlexE group creation module 540 is configured to receive a FlexE group creation request response message fed back by the second communication device in response to the FlexE group creation request message; if the FlexE group creation request response message indicates that the local resources of the second communication device meet the FlexE group pre-allocation result, then send a FlexE group creation message to the second communication device, and the FlexE group creation message is used to instruct the second communication device to perform a FlexE group creation operation that matches the FlexE group pre-allocation result; receive a FlexE group creation response message fed back by the second communication device in response to the FlexE group creation message; if the FlexE group creation response message indicates that the second communication device has completed the FlexE group creation operation, then determine that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0213] The FlexE group creation device applied to the first communication device provided in this embodiment is used to implement the FlexE group creation method applied to the first communication device as described in the embodiment of the present application. The implementation principle and technical effect of the FlexE group creation device applied to the first communication device provided in this embodiment are similar to the FlexE group creation method applied to the first communication device described in the embodiment of the present application, and are not repeated here.

[0214] This embodiment also provides a FlexE group creation device, Fig.11 This is a schematic diagram of the structure of a FlexE group creation device provided in this application. Fig.11 As shown, the FlexE group creation device applied to the second communication device provided in the embodiment of the present application can be implemented by software and / or hardware and integrated in the communication device, and the device includes: a FlexE group pre-allocation result receiving module 610 and a FlexE group creation module 620. Among them,

[0215] The FlexE group pre-allocation result receiving module 610 is configured to receive a FlexE group pre-allocation result sent by a first communication device; wherein the FlexE group pre-allocation result is obtained after the first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device, and the second communication device establishes a communication connection with the first communication device;

[0216] The FlexE group creation module 620 is configured to execute a FlexE group creation operation that matches the FlexE group pre-allocation result, and to feed back the FlexE group creation execution result to the first communication device; wherein the FlexE group creation execution result is used by the first communication device to execute a FlexE group creation operation that matches the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0217] In the technical solution provided in this embodiment, the first communication device, which serves as the main device for creating the FlexE group, can perform FlexE group pre-allocation on each neighbor obtained from at least one second communication device, and send each obtained FlexE group pre-allocation result to the matching second communication device. The second communication device performs a FlexE group creation operation on its own end based on the received FlexE group pre-allocation result. If the first communication device determines that the second communication device has completed the FlexE group creation operation that matches the received FlexE group pre-allocation result, it then performs a FlexE group creation operation on its own end that matches the FlexE group pre-allocation result. In this way, self-negotiation creation of the FlexE group is achieved between the first communication device and the second communication device, which simplifies the configuration process of the FlexE group, reduces manual configuration operations, and improves the availability of the FlexE group.

[0218] Furthermore, the above device also includes: a notification module and a monitoring module, wherein:

[0219] A notification module, configured to send a second notification message carrying an interface FlexE capability and an interface rate of the second communication device to the first communication device based on a target protocol;

[0220] The monitoring module is configured to monitor a first notification message sent by the first communication device based on the target protocol and carrying the interface FlexE capability and interface rate of the first communication device.

[0221] Furthermore, the above device further comprises: a new online interface bundling module and / or a new offline interface debundling module, wherein:

[0222] A newly online interface bundling module is configured to, after executing a FlexE group creation operation that matches the FlexE group pre-allocation result, if a target FlexE group pre-allocation result corresponding to a newly online neighbor interface is received, execute a FlexE group interface addition operation that matches the target FlexE group pre-allocation result, and feed back the FlexE group interface addition execution result to the first communication device; wherein the FlexE group interface addition execution result is used by the first communication device to execute a FlexE group interface addition operation that matches the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group interface addition operation that matches the target FlexE group pre-allocation result;

[0223] The new offline interface unbundling module is configured to execute a FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result if a target FlexE group interface pre-deletion result corresponding to the newly offline neighbor interface is received, and feed back the FlexE group interface deletion execution result to the first communication device; wherein the FlexE group interface deletion execution result is used for the first communication device to execute a FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result when it is determined that the second communication device has completed the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result.

[0224] In a specific example, the FlexE group pre-allocation result receiving module 610 is configured to receive a FlexE group creation request message encapsulating the FlexE group pre-allocation result and sent by the first communication device;

[0225] Correspondingly, the FlexE group creation module 620 is configured to send a FlexE group creation request response message that is fed back to the FlexE group creation request message to the first communication device if the resources on this end meet the FlexE group pre-allocation result; if a FlexE group creation message sent by the first communication device is received, a FlexE group creation operation that matches the FlexE group pre-allocation result is executed, and the FlexE group creation execution result is sent to the first communication device through a FlexE group creation response message that is fed back to the FlexE group creation message.

[0226] The FlexE group creation device applied to the second communication device provided in this embodiment is used to implement the FlexE group creation method applied to the second communication device as described in the embodiment of the present application. The implementation principle and technical effect of the FlexE group creation device applied to the second communication device provided in this embodiment are similar to the FlexE group creation method applied to the second communication device described in the embodiment of the present application, and are not repeated here.

[0227] The embodiment of the present application also provides a FlexE group creation system, Fig.12 This is a schematic diagram of the structure of a FlexE group creation system provided in this application. Fig.12 As shown, a FlexE group creation system provided in an embodiment of the present application includes: a first communication device 710 and at least one second communication device 720 ( Fig.12 Two are shown as examples);

[0228] The first communication device 710 and the second communication device 720 establish a communication connection, for example, by directly connecting the interfaces through multiple optical fibers;

[0229] The first communication device 710 is configured to execute the FlexE group creation method applied to the first communication device as described in any embodiment of the present application;

[0230] The second communication device 720 executes the FlexE group creation method applied to the second communication device as described in any embodiment of the present application.

[0231] For details not explained in this embodiment, please refer to the aforementioned embodiment and will not be repeated here.

[0232] The present application embodiment provides a communication device, Fig.13 A schematic diagram of the structure of a communication device provided in this application, such as Fig.13 As shown, the communication device provided by the present application includes: one or more processors 810 and a memory 820; the processor 810 of the communication device may be one or more, Fig.13 A processor 810 is taken as an example; the memory 820 is used to store one or more programs; the one or more programs are executed by the one or more processors 810, so that the one or more processors 810 implement the FlexE group creation method applied to the first communication device as described in the embodiment of the present invention.

[0233] The processor 810 and the memory 820 in the communication device may be connected via a bus or other means. Fig.13 The example of connecting through bus is taken in the following.

[0234] As a computer-readable storage medium, the memory 820 may be configured to store software programs, computer executable programs, and modules, such as the program instructions / modules corresponding to the FlexE group creation method applied to the first communication device as described in the embodiment of the present application (for example, the neighbor interface information acquisition module 510, the FlexE group pre-allocation module 520, the FlexE group pre-allocation result sending module 530, and the FlexE group creation module 540 applied to the FlexE group creation device in the first communication device). The memory 820 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created according to the use of the device, etc. In addition, the memory 820 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some instances, the memory 820 may further include a memory remotely arranged relative to the processor 810, and these remote memories may be connected to the communication node via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0235] The present application embodiment provides a communication device, Fig.14 A schematic diagram of the structure of a communication device provided in this application, such as Fig.14 As shown, the communication device provided by the present application includes: one or more processors 910 and a memory 920; the processor 910 of the communication device may be one or more, Fig.14 A processor 910 is taken as an example; the memory 920 is used to store one or more programs; the one or more programs are executed by the one or more processors 910, so that the one or more processors 910 implement the FlexE group creation method applied to the second communication device as described in the embodiment of the present invention.

[0236] The processor 910 and the memory 920 in the communication device may be connected via a bus or other means. Fig.14 The example of connecting through bus is taken in the following.

[0237] As a computer-readable storage medium, the memory 920 may be configured to store software programs, computer executable programs, and modules, such as the program instructions / modules corresponding to the FlexE group creation method applied to the second communication device as described in the embodiment of the present application (for example, the FlexE group pre-allocation result receiving module 610 and the FlexE group creation module 620 applied to the FlexE group creation device in the second communication device). The memory 920 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created according to the use of the device, etc. In addition, the memory 920 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some instances, the memory 920 may further include a memory remotely arranged relative to the processor 910, and these remote memories may be connected to the communication node via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0238] An embodiment of the present application also provides a storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the FlexE group creation method applied to the first communication device described in the embodiment of the present application, or implements the FlexE group creation method applied to the second communication device described in the embodiment of the present application.

[0239] The FlexE group creation method applied to the first communication device includes:

[0240] If it is determined that the first communication device is a master device for creating a FlexE group, obtaining information of each neighbor interface from at least one second communication device; wherein the second communication device establishes a communication connection with the first communication device;

[0241] Performing FlexE group pre-allocation on each neighbor interface from the at least one second communication device to obtain at least one FlexE group pre-allocation result;

[0242] Send each of the FlexE group pre-allocation results to a matching second communication device respectively, where the FlexE group pre-allocation result is used by the matching second communication device to create a FlexE group;

[0243] If it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, a FlexE group creation operation that matches the FlexE group pre-allocation result is performed.

[0244] A FlexE group creation method applied to a second communication device includes:

[0245] Receiving a FlexE group pre-allocation result sent by a first communication device; wherein the FlexE group pre-allocation result is obtained after the first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device, and the second communication device establishes a communication connection with the first communication device;

[0246] Execute a FlexE group creation operation that matches the FlexE group pre-allocation result, and feed back the FlexE group creation execution result to the first communication device; wherein the FlexE group creation execution result is used by the first communication device to execute a FlexE group creation operation that matches the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

[0247] Optionally, when executed by a computer processor, the computer executable instructions can also be used to implement any of the FlexE group creation methods applied to the first communication device described in the embodiments of the present application, or to implement any of the FlexE group creation methods applied to the second communication device described in the embodiments of the present application.

[0248] Through the above description of the implementation method, the technicians in the relevant field can clearly understand that the present application can be implemented with the help of software and necessary general hardware, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application can be essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as a computer floppy disk, read-only memory (ROM), random access memory (RAM), flash memory (FLASH), hard disk or optical disk, etc., including a number of instructions for a communication device (which can be a personal computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0249] It is worth noting that in the above-mentioned FlexE group creation device applied in the first communication device, or in the embodiment of the FlexE group creation device applied in the second communication device, the various units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of the present invention.

[0250] The above description is merely an exemplary embodiment of the present application and is not intended to limit the protection scope of the present application.

[0251] In general, various embodiments of the present application can be implemented in hardware or dedicated circuits, software, logic or any combination thereof. For example, some aspects can be implemented in hardware, while other aspects can be implemented in firmware or software that can be executed by a controller, microprocessor or other computing device, although the present application is not limited thereto.

[0252] Embodiments of the present application may be implemented by executing computer program instructions by a data processor of a mobile device, for example in a processor entity, or by hardware, or by a combination of software and hardware. The computer program instructions may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages.

[0253] The block diagram of any logic flow in the accompanying drawings of the present application can represent program steps, or can represent interconnected logic circuits, modules and functions, or can represent a combination of program steps and logic circuits, modules and functions. The computer program can be stored on a memory. The memory can have any type suitable for the local technical environment and can be implemented using any suitable data storage technology, such as but not limited to read-only memory (ROM), random access memory (RAM), optical memory device and system (digital versatile disc DVD or CD disc), etc. Computer-readable media may include non-transient storage media. The data processor can be any type suitable for the local technical environment, such as but not limited to a general-purpose computer, a special-purpose computer, a microprocessor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a programmable logic device (FGPA) and a processor based on a multi-core processor architecture.

[0254] By way of exemplary and non-limiting examples, a detailed description of exemplary embodiments of the present application has been provided above. However, various modifications and adjustments to the above embodiments will be apparent to those skilled in the art when considered in conjunction with the accompanying drawings and claims, but will not depart from the scope of the present invention. Therefore, the proper scope of the present invention will be determined according to the claims.

Claims

1. A FlexE group creation method, characterized in that: Applied to a first communication device, comprising: If it is determined that the first communication device is a master device for creating a FlexE group, obtaining information of each neighbor interface from at least one second communication device; wherein the second communication device establishes a communication connection with the first communication device; Performing FlexE group pre-allocation on each neighbor interface from the at least one second communication device to obtain at least one FlexE group pre-allocation result; Send each of the FlexE group pre-allocation results to a matching second communication device respectively, where the FlexE group pre-allocation result is used by the matching second communication device to create a FlexE group; If it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result, a FlexE group creation operation that matches the FlexE group pre-allocation result is performed.

2. The method according to claim 1, characterized in that Before determining that the first communication device is a master device for creating a FlexE group, the method further includes: Sending a first notification message carrying the interface FlexE capability and interface rate of the first communication device to at least one second communication device based on the target protocol; Monitor a second notification message that is sent by the second communication device based on the target protocol and carries the interface FlexE capability and interface rate of the second communication device.

3. The method according to claim 1, characterized in that Pre-allocating each neighbor interface from at least one second communication device includes: Performing at least one level of neighbor interface classification on each neighbor interface from at least one second communication device to obtain at least one neighbor interface classification set; A FlexE group is pre-allocated for each of the neighbor interface classification sets.

4. The method according to claim 3, characterized in that Classifying each neighbor interface from at least one second communication device into at least one level of neighbor interfaces includes: The neighbor interfaces from the at least one second communication device are classified according to the device rack identifier, whether they comply with the opposite end interface bundling rule, and whether they comply with the local end interface bundling rule.

5. The method according to claim 1, characterized in that After executing a FlexE group creation operation matching the FlexE group pre-allocation result, the method further includes: If there is a newly online neighbor interface, perform FlexE group pre-allocation on the newly online neighbor interface, obtain a target FlexE group pre-allocation result corresponding to the newly online neighbor interface, and send it to the matching second communication device; If it is determined that the matched second communication device has completed the FlexE group interface adding operation that matches the target FlexE group pre-allocation result, performing the FlexE group interface adding operation that matches the target FlexE group pre-allocation result; and / or, If there is a newly offline neighbor interface, sending the target FlexE group interface pre-deletion result corresponding to the newly offline neighbor interface to the matching second communication device; If it is determined that the matched second communication device has completed the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result, the FlexE group interface deletion operation that matches the target FlexE group interface pre-deletion result is performed.

6. The method according to claim 1, characterized in that Sending the FlexE group pre-allocation result to a matching second communication device includes: Encapsulating the FlexE group pre-allocation result in a FlexE group creation request message and sending it to a matching second communication device, wherein the FlexE group creation request message is used to instruct the second communication device to detect whether the local resources meet the FlexE group pre-allocation result; Determining that the second communication device has completed a FlexE group creation operation that matches the FlexE group pre-allocation result includes: receiving a FlexE group creation request response message fed back by the second communication device in response to the FlexE group creation request message; If the FlexE group creation request response message indicates that the local resources of the second communication device meet the FlexE group pre-allocation result, sending a FlexE group creation message to the second communication device, where the FlexE group creation message is used to instruct the second communication device to perform a FlexE group creation operation that matches the FlexE group pre-allocation result; receiving a FlexE group creation response message fed back by the second communication device in response to the FlexE group creation message; If the FlexE group creation response message indicates that the second communication device has completed the FlexE group creation operation, it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

7. A FlexE group creation method, characterized in that: Applied to a second communication device, comprising: Receiving a FlexE group pre-allocation result sent by a first communication device; wherein the FlexE group pre-allocation result is obtained after the first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device, and the second communication device establishes a communication connection with the first communication device; Execute a FlexE group creation operation that matches the FlexE group pre-allocation result, and feed back the FlexE group creation execution result to the first communication device; wherein the FlexE group creation execution result is used by the first communication device to execute a FlexE group creation operation that matches the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

8. The method according to claim 7, characterized in that Before receiving the FlexE group pre-allocation result sent by the first communication device, the method further includes: Sending a second notification message carrying the interface FlexE capability and interface rate of the second communication device to the first communication device based on the target protocol; Monitor a first notification message that is sent by the first communication device based on the target protocol and carries the interface FlexE capability and interface rate of the first communication device.

9. The method according to claim 7, characterized in that: After executing a FlexE group creation operation matching the FlexE group pre-allocation result, the method further includes: If a target FlexE group pre-allocation result corresponding to the newly online neighbor interface is received, a FlexE group interface addition operation matching the target FlexE group pre-allocation result is performed, and the FlexE group interface addition execution result is fed back to the first communication device; wherein the FlexE group interface addition execution result is used by the first communication device to perform a FlexE group interface addition operation matching the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group interface addition operation matching the target FlexE group pre-allocation result; and / or, If a target FlexE group interface pre-deletion result corresponding to the newly offline neighbor interface is received, a FlexE group interface deletion operation matching the target FlexE group interface pre-deletion result is executed, and the FlexE group interface deletion execution result is fed back to the first communication device; wherein, the FlexE group interface deletion execution result is used by the first communication device to execute a FlexE group interface deletion operation matching the target FlexE group interface pre-deletion result when it is determined that the second communication device has completed the FlexE group interface deletion operation matching the target FlexE group interface pre-deletion result.

10. The method according to claim 7, characterized in that Receiving a FlexE group pre-allocation result sent by a first communication device, including: receiving a FlexE group creation request message encapsulating a FlexE group pre-allocation result sent by the first communication device; Executing a FlexE group creation operation that matches the FlexE group pre-allocation result, and feeding back the FlexE group creation execution result to the first communication device, including: generating a FlexE group creation request response message for the FlexE group creation request message and sending it to the first communication device, wherein the FlexE group creation request response message indicates whether the local resources of the second communication device meet the FlexE group pre-allocation result; If a FlexE group creation message sent by the first communication device is received, a FlexE group creation operation matching the FlexE group pre-allocation result is performed, and the FlexE group creation execution result is sent to the first communication device via a FlexE group creation response message fed back to the FlexE group creation message.

11. A FlexE group creation device, characterized in that: Applied to a first communication device, comprising: a neighbor interface information acquisition module, configured to acquire information of each neighbor interface from at least one second communication device if it is determined that the first communication device is a master device for creating a FlexE group; wherein the second communication device establishes a communication connection with the first communication device; A FlexE group pre-allocation module, configured to perform FlexE group pre-allocation on each neighbor interface from the at least one second communication device to obtain at least one FlexE group pre-allocation result; A FlexE group pre-allocation result sending module, configured to send each of the FlexE group pre-allocation results to a matching second communication device, respectively, wherein the FlexE group pre-allocation result is used by the matching second communication device to create a FlexE group; The FlexE group creation module is configured to execute a FlexE group creation operation that matches the FlexE group pre-allocation result if it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

12. A FlexE group creation device, characterized in that: Applied to a second communication device, comprising: A FlexE group pre-allocation result receiving module, configured to receive a FlexE group pre-allocation result sent by a first communication device; wherein the FlexE group pre-allocation result is obtained after the first communication device performs FlexE group pre-allocation on each neighbor interface from at least one second communication device, and the second communication device establishes a communication connection with the first communication device; A FlexE group creation module is configured to execute a FlexE group creation operation that matches the FlexE group pre-allocation result, and to feed back the FlexE group creation execution result to the first communication device; wherein the FlexE group creation execution result is used by the first communication device to execute a FlexE group creation operation that matches the FlexE group pre-allocation result when it is determined that the second communication device has completed the FlexE group creation operation that matches the FlexE group pre-allocation result.

13. A FlexE group creation system, characterized in that: include: a first communication device and at least one second communication device; Wherein, the first communication device and the second communication device establish a communication connection; The first communication setting executes the FlexE group creation method according to any one of claims 1 to 6; The second communication device executes the FlexE group creation method as described in any one of claims 7 to 10.

14. A communication device, characterized in that: include: one or more processors; A memory for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the FlexE group creation method as described in any one of claims 1-6, or implement the FlexE group creation method as described in any one of claims 7-10.

15. A storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, it implements the FlexE group creation method as described in any one of claims 1-6, or implements the FlexE group creation method as described in any one of claims 7-10.

Citation Information

Patent Citations

  • Transmission path configuration method, device and equipment

    CN109672513A

  • Port mode switching method and related equipment thereof

    CN110289978A