A data processing method and apparatus

By ensuring that all sub-time slots are in a working state in the FlexE ring network, the problem of high network device processing overhead in the prior art is solved, and efficient forwarding is achieved during small-granularity service handover.

CN118677718BActive Publication Date: 2026-05-26HUAWEI TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2023-03-17
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

When using FlexE technology to carry small-granularity services, the existing technology of switching small-granularity services to the protection path for forwarding results in a large processing overhead for network devices.

Method used

By defining the working path and protection path in the FlexE ring network, it is ensured that all sub-time slots are in the working state, rather than some sub-time slots being in the protection state. This eliminates the need to be aware of small-granular time slot configurations during handover, reducing the processing overhead of network devices.

Benefits of technology

This effectively reduces the processing overhead of network devices when switching small-granularity services to the protection path for forwarding, and improves processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118677718B_ABST
    Figure CN118677718B_ABST
Patent Text Reader

Abstract

This application discloses a data processing method applied to a first communication device in a FlexE ring network. The method includes: receiving a first data stream of a first small-granularity service through a time slot occupied by a first FlexE client; and, in response to a failure in a first FlexE group between the first communication device and a second communication device in the FlexE ring network, sending the first data stream to a third communication device in the FlexE ring network through a time slot occupied by a second FlexE client. The multiple first sub-time slots occupied by the second FlexE client are all working time slots. Using this solution, when the first communication device switches the transmission of the first data stream to the third communication device through a time slot occupied by the second FlexE client, it does not need to be aware of the small-granularity time slot configuration corresponding to the second FlexE client, thereby reducing processing overhead.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communications, and more particularly to a data processing method and apparatus. Background Technology

[0002] Flexible Ethernet (FlexE) technology offers the advantage of flexible bandwidth allocation on demand, meeting the needs of network scenarios such as mobile bearer, home broadband, and leased line access. To make efficient use of FlexE's bandwidth resources, it can be used to carry small-granularity services. Small-granularity services can be understood as dividing a large-bandwidth time slot in FlexE into multiple sub-slots, which are then used to carry customer services with lower bandwidth requirements.

[0003] When using FlexE technology to carry small-granularity services, to ensure the quality of service provided to these services, the services can be switched to a protection path for forwarding when the working path for transmitting the services fails. However, in some scenarios, the current method of switching small-granularity services to the protection path incurs significant processing overhead for network devices.

[0004] Therefore, there is an urgent need for a solution to address the above problems. Summary of the Invention

[0005] This application provides a data processing method and apparatus that can reduce the processing overhead of network devices when switching small-granularity services to the protection path for forwarding.

[0006] In a first aspect, embodiments of this application provide a data processing method applicable to a first communication device in a FlexE ring network. The first communication device can receive a first data stream of a first small-granularity service through a time slot occupied by a first FlexE client. A first FlexE group is provided between the first communication device and a second communication device in the FlexE ring network. The first FlexE group carries a third FlexE client, and the time slot occupied by the third FlexE client is divided into multiple second sub-time slots. These multiple second sub-time slots are configured to carry the first small-granularity service, and all of them are working time slots. When the first FlexE group is fault-free, the first communication device can send the first data stream to the second communication device through the time slot occupied by the third FlexE client. Furthermore, a second FlexE group is provided between the first communication device and the third communication device in the FlexE ring network. The second FlexE group carries a second FlexE client, and the time slot occupied by the second FlexE client is divided into multiple first sub-time slots. These multiple first sub-time slots are used to carry the first small-granularity service, and all of them are working time slots. The first FlexE client and the second FlexE client have a first time slot mapping relationship. In one example, if the first FlexE group fails, the first communication device can send the first data stream to the third communication device through the time slot occupied by the second FlexE client, based on the first time slot mapping relationship between the first FlexE client and the second FlexE client. In this embodiment, both the multiple first sub-time slots included in the second FlexE client and the multiple second sub-time slots included in the third FlexE client are all in active status, rather than some sub-time slots being active and others in a protected state. Therefore, when the first communication device switches the first data stream to transmission to the third communication device through the time slot occupied by the second FlexE client, the first communication device does not need to be aware of the small-granularity time slot configuration corresponding to the second FlexE client, thereby reducing the processing overhead of the first communication device.

[0007] In one possible implementation, the path for transmitting the first data stream may include a working path and a protection path, wherein the first FlexE group can be a FlexE group on the working path, and the second FlexE group can be a FlexE group on the protection path. Using the solution of this application embodiment, when the working path fails, the first data stream can be switched to the protection path for transmission. Furthermore, when switching the first data stream to the protection path, the first communication device does not need to be aware of small-granularity time slot configurations, thereby effectively saving the processing overhead of the communication device.

[0008] In one possible implementation, in addition to sending the first data stream to the third communication device via the time slot occupied by the second FlexE client, the first communication device can also send path protection switching instruction information to the third communication device. This path protection switching instruction information instructs the third communication device to switch from the working path to the protection path. In this way, after receiving the first data stream and the path protection switching instruction information, the third communication device can continue to forward the first data stream through the protection path, thereby ensuring that the first data stream is forwarded to the destination communication device through the protection path.

[0009] In one possible implementation, the first communication device can send the aforementioned path protection switching indication information to the third communication device through the time slot occupied by the second FlexE client. In a specific example, the first communication device can send a FlexE Operation Administration and Maintenance (OAM) message to the third communication device through the time slot occupied by the second FlexE client. This FlexE OAM message includes an Automatic Protection Switching (APS) code block, which carries the path protection switching indication information.

[0010] In one possible implementation, after the working path failure is resolved, the first communication device can switch the small-granularity service back to the working path for forwarding. In a specific example, the first communication device can also receive the second data stream of the first small-granularity service through the time slot occupied by the first FlexE client, and, in the event of a failure in the first FlexE group, send the second data stream to the second communication device through the time slot occupied by the third FlexE client, based on the second time slot mapping relationship between the first FlexE client and the third FlexE client.

[0011] In one possible implementation, the first communication device can also receive a third data stream of the second small-granularity service through a time slot occupied by a fourth FlexE client. A third FlexE group is provided between the first communication device and the third communication device in the FlexE ring network. The third FlexE group carries a sixth FlexE client, and the time slot occupied by the sixth FlexE client is divided into multiple fourth sub-time slots. These multiple fourth sub-time slots are configured to carry the second small-granularity service, and all of them are working time slots. When the third FlexE group is fault-free, the first communication device can send the third data stream to the third communication device through the time slot occupied by the sixth FlexE client. Additionally, a fourth FlexE group is provided between the first and second communication devices. This fourth FlexE group carries a fifth FlexE client, and the time slot occupied by the fifth FlexE client is divided into multiple third sub-time slots. These multiple third sub-time slots are used to carry the second small-granularity service, and all of them are working time slots. The fourth FlexE client and the fifth FlexE client have a third time slot mapping relationship. In one example, if the third FlexE group fails, the first communication device can send the third data stream to the second communication device through the time slot occupied by the fifth FlexE client, based on the third time slot mapping relationship between the fourth and fifth FlexE clients. In this embodiment, both the multiple third sub-time slots included in the fifth FlexE client and the multiple fourth sub-time slots included in the sixth FlexE client are all in active status, rather than some sub-time slots being active and others in a protected state. Therefore, when the first communication device switches the third data stream to transmission to the second communication device through the time slot occupied by the fifth FlexE client, the first communication device does not need to be aware of the small-granularity time slot configuration corresponding to the fifth FlexE client, thereby reducing the processing overhead of the first communication device.

[0012] In one possible implementation, the first small-granularity service and the second small-granularity service belong to the same small-granularity service. In this case, for the first small-granularity service, the corresponding uplink and downlink data flow paths are symmetrical, thereby providing a better quality of service for this small-granularity service.

[0013] Secondly, this application provides a data processing method that can be applied to a first communication device in a FlexE ring network. The first communication device can receive a first data stream of a first small-granularity service sent by a second communication device through a time slot occupied by a first FlexE client. Specifically, a first FlexE group is provided between the second and first communication devices. The first FlexE group carries the first FlexE client, and the time slot occupied by the first FlexE client is divided into multiple first sub-time slots. These multiple first sub-time slots are used to carry the first small-granularity service, and all of them are working time slots. The first data stream is sent through a protection path. In this application embodiment, all of the multiple first sub-time slots are in a working state, rather than some sub-time slots being in a working state and some being in a protection state. Therefore, when the first communication device sends the first data stream through the protection path, it does not need to be aware of the small-granularity time slot configuration corresponding to the first FlexE client, thereby reducing the processing overhead of the first communication device.

[0014] In one possible implementation, the method further includes: receiving path protection switching indication information sent by the second communication device, the path protection switching indication information indicating that the first communication device switches from the working path to the protection path.

[0015] In one possible implementation, receiving the path protection switching indication information sent by the second communication device includes: receiving a FlexE Operation, Management and Maintenance (OAM) message sent by the second communication device through a time slot occupied by the first FlexE client, wherein the Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the path protection switching indication information.

[0016] In one possible implementation, sending the first data stream via the protection path includes: sending the first data stream via the protection path according to the path protection switching instruction information.

[0017] Thirdly, embodiments of this application provide a first communication device, the first communication device comprising: a transceiver unit and / or a processing unit; the transceiver unit is configured to perform the receiving and / or transmitting operations performed by the first communication device as described in the first aspect or the second aspect above; the processing unit is configured to perform operations other than the receiving and / or transmitting operations performed by the first communication device as described in the first aspect or the second aspect above.

[0018] In a specific example, the first communication device may include a receiving unit and a transmitting unit.

[0019] As an example:

[0020] A receiving unit is configured to receive a first data stream of a first small-granularity service through a time slot occupied by a first Flexible Ethernet client (FlexE client); a sending unit is configured to, in response to a failure in a first FlexE group between a first communication device and a second communication device in the FlexE ring network, send the first data stream to a third communication device in the FlexE ring network through a time slot occupied by the second FlexE client, based on a first time slot mapping relationship between the first FlexE client and the second FlexE client, wherein: a second FlexE group is provided between the first communication device and the third communication device, the second FlexE group carries the second FlexE client, the time slot occupied by the second FlexE client is divided into multiple first sub-time slots, the multiple first sub-time slots are used to carry the first small-granularity service, and the multiple first sub-time slots are all working time slots; the first FlexE group is used to carry a third FlexE client, the time slot occupied by the third FlexE client is divided into multiple second sub-time slots, the multiple second sub-time slots are configured to carry the first small-granularity service, and the multiple second sub-time slots are all working time slots.

[0021] In one possible implementation, the sending unit is further configured to: send path protection switching indication information to the third communication device, the path protection switching indication information instructing the third communication device to switch from the working path to the protection path.

[0022] In one possible implementation, the sending unit is specifically used to: send a FlexE Operation, Management and Maintenance (OAM) message to the third communication device through the time slot occupied by the second FlexE client, wherein the Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the Path Protection Switching Indication information.

[0023] In one possible implementation, the receiving unit is further configured to: receive the second data stream of the first small-granularity service through the time slot occupied by the first FlexE client; the sending unit is further configured to, in response to the first FlexE group fault recovery, send the second data stream to the second communication device through the time slot occupied by the third FlexE client based on the second time slot mapping relationship between the first FlexE client and the third FlexE client.

[0024] In one possible implementation, the receiving unit is further configured to receive a third data stream of the second small-granularity service through a time slot occupied by the fourth FlexE client; the sending unit is further configured to, in response to a third FlexE group failure between the first communication device and the third communication device in the FlexE ring network, send the third data stream to the second communication device in the FlexE ring network through a time slot occupied by the fifth FlexE client, based on the third time slot mapping relationship between the fourth FlexE client and the fifth FlexE client, wherein: a fourth FlexE group is provided between the first communication device and the second communication device, the fourth FlexE group carries the fifth FlexE client, the time slot occupied by the fifth FlexE client is divided into multiple third sub-time slots, the multiple third sub-time slots are used to carry the second small-granularity service, and the multiple third sub-time slots are all working time slots; the third FlexE group is used to carry a sixth FlexE client, the time slot occupied by the sixth FlexE client is divided into multiple fourth sub-time slots, the multiple fourth sub-time slots are configured to carry the second small-granularity service, and the multiple fourth sub-time slots are all working time slots.

[0025] In one possible implementation, the first small-granular service and the second small-granular service belong to the same small-granular service.

[0026] In one possible implementation, the first FlexE group is a FlexE group on the working path, and the second FlexE group is a FlexE group on the protection path.

[0027] As yet another example:

[0028] A receiving unit is configured to receive a first data stream of a first small-granularity service sent by a second communication device through a time slot occupied by a first Flexible Ethernet client (FlexE client); wherein: a first FlexE group is provided between the second communication device and the first communication device, the first FlexE group carries the first FlexE client, the time slot occupied by the first FlexE client is divided into multiple first sub-time slots, the multiple first sub-time slots are used to carry the first small-granularity service, and the multiple first sub-time slots are all working time slots; a sending unit is configured to send the first data stream through a protection path.

[0029] In one possible implementation, the receiving unit is further configured to: receive path protection switching indication information sent by the second communication device, the path protection switching indication information indicating that the first communication device switches from the working path to the protection path.

[0030] In one possible implementation, the receiving unit is specifically configured to: receive FlexE Operation, Management and Maintenance (OAM) messages sent by the second communication device through the time slot occupied by the first FlexE client, wherein the Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the Path Protection Switching Indication Information.

[0031] In one possible implementation, the sending unit is specifically configured to: send the first data stream through the protection path according to the path protection switching instruction information.

[0032] Fourthly, embodiments of this application provide a communication device, including: a communication interface and a processor, wherein the communication device executes the method described in any one of the first aspects above or any one of the second aspects above, based on the communication interface and the processor.

[0033] In one specific design, the aforementioned communication device may be a chip, the aforementioned communication interface includes an interface circuit, and the processor includes a processing circuit. The interface circuit may include an input circuit and an output circuit. The processing circuit is used to receive signals through the input circuit and transmit signals through the output circuit, thereby enabling any one of the first to second aspects, and any embodiment of any one aspect, to be implemented.

[0034] Fifthly, embodiments of this application provide a computer-readable storage medium, including instructions or a computer program, which, when run on a processor, executes the method described in any one of the first aspects above or any one of the second aspects above.

[0035] Sixthly, embodiments of this application provide a computer program product, including a computer program product that, when run on a processor, executes the method described in the first aspect and any one of the first aspects above, or executes the method described in the second aspect and any one of the second aspects above.

[0036] In a seventh aspect, embodiments of this application provide a communication system, the communication system comprising: a first communication device that performs the method described in the first aspect and any one of the first aspects above, and a first communication device that performs the method described in the second aspect and any one of the second aspects above.

[0037] Eighthly, embodiments of this application provide a chip system that may include a processor. The processor is coupled to a memory and can be used to execute any one of the first to second aspects described above, and any implementation thereof. Optionally, the chip system further includes a memory. The memory is used to store a computer program (also referred to as code or instructions). The processor is used to call and run the computer program from the memory, causing a device on which the chip system is mounted to execute any one of the first to second aspects, and any implementation thereof.

[0038] Ninthly, embodiments of this application provide a communication device, including: an interface circuit and a processing circuit. The interface circuit may include an input circuit and an output circuit. The processing circuit is used to receive signals through the input circuit and transmit signals through the output circuit, such that any one of the first to second aspects, and any implementation thereof, is implemented. In a specific implementation, the processing circuit includes functions for implementing operations performed by the Flexe shim layer.

[0039] In practical implementation, the aforementioned communication device can be a chip, the input circuit can be an input pin, the output circuit can be an output pin, and the processing circuit can be a transistor, gate circuit, flip-flop, and various logic circuits. The input signal received by the input circuit can be received and input by, for example, but not limited to, a receiver, and the signal output by the output circuit can be, for example, but not limited to, output to a transmitter and transmitted by the transmitter. Furthermore, the input circuit and the output circuit can be the same circuit, which is used as both the input circuit and the output circuit at different times. This application does not limit the specific implementation of the processor and various circuits.

[0040] In another implementation, the communication device can be a component of the first communication device or controller, such as an integrated circuit product like a system-on-a-chip or communication chip. The interface circuit can be an input / output interface, interface circuit, output circuit, input circuit, pins, or related circuits on the chip or chip system. The processing circuit can be the logic circuit on the chip. Attached Figure Description

[0041] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0042] Figure 1a A schematic diagram of an SPN architecture supporting small particle technology provided in an embodiment of this application;

[0043] Figure 1b A schematic diagram of a network architecture provided for an embodiment of this application;

[0044] Figure 2a This is a schematic diagram illustrating an exemplary application scenario provided in an embodiment of this application;

[0045] Figure 2b This is a schematic diagram illustrating another exemplary application scenario provided in the embodiments of this application;

[0046] Figure 3 This is a schematic diagram of an application scenario provided by an embodiment of this application;

[0047] Figure 4 A signaling interaction diagram of a data processing method provided in an embodiment of this application;

[0048] Figure 5 Signaling interaction diagram for yet another data processing method provided in the embodiments of this application;

[0049] Figure 6 Signaling interaction diagram for yet another data processing method provided in the embodiments of this application;

[0050] Figure 7 A flowchart illustrating a data processing method provided in an embodiment of this application;

[0051] Figure 8 A flowchart illustrating another data processing method provided in an embodiment of this application;

[0052] Figure 9 This is a schematic diagram of the structure of a first communication device provided in an embodiment of this application;

[0053] Figure 10 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application;

[0054] Figure 11 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Detailed Implementation

[0055] This application provides a data processing method and apparatus that can reduce the processing overhead of network devices when switching small-granularity services to the protection path for forwarding.

[0056] To make it easier to understand, we will first introduce the relevant content of FlexE.

[0057] FlexE group: Each FlexE group includes one or more PHYs. When multiple PHYs are included, they are physically independent. Network devices using FlexE technology can identify which PHYs are included in a FlexE group by their PHY numbers, thus enabling logical bundling of multiple PHYs. For example, each PHY number can be identified by a number between 1 and 254, with 0 and 255 being reserved numbers. A PHY number can correspond to an interface on the network device. Adjacent network devices must use the same number to identify the same PHY. The numbers of each PHY included in a FlexE group do not need to be consecutive. Typically, two network devices share one FlexE group, but this application does not limit the existence of only one FlexE group between two network devices; that is, two network devices can also have multiple FlexE groups. A PHY can be used to carry at least one client, and a client can transmit on at least one PHY. FlexE can support the mapping and transmission of any number of different FlexE clients on any set of PHYs, thereby realizing functions such as PHY bundling, channelization, and sub-rate.

[0058] FlexE Client: Corresponds to various user interfaces or bandwidths in the network. A FlexE Client represents a client data stream transmitted on a FlexEGroup within a specified time slot (one or more time slots). A single FlexE Group can support multiple FlexE Clients, and each FlexE Client can correspond to one or more user service data streams (also known as MAC Clients). FlexE Clients can be flexibly configured according to bandwidth requirements, supporting Ethernet media access control (MAC) data streams of various rates (such as 10G, 40G, n*25G data streams, and even non-standard rate data streams). For example, data streams can be transmitted to the FlexE shim layer using 64B / 66B encoding. Clients sending data through the same FlexE group need to share the same clock, and these clients need to adapt according to the allocated time slot rates. In this application, a FlexE Client (also known as a FlexE Client interface) can be used to transmit the corresponding FlexE Client service data streams. The FlexE Client interface is a logical interface. Each FlexE interface can logically be divided into one or more FlexE client interfaces, and each FlexE interface can be divided into multiple time slots in the time domain. Each FlexE client interface occupies at least one of these multiple time slots. Specifically, 64 / 66B refers to a data code block consisting of 66 bits. The first two bits are synchronization bits, and the last 64 bits are data bits. At the PCS layer, 64 / 66B can be extracted using the first two synchronization bits.

[0059] FlexE shim: As an additional logical layer inserted between the MAC and PHY (PCS sublayer) of the traditional Ethernet architecture, it is the core architecture for implementing FlexE technology based on a time-slot distribution mechanism. For the transmitting end, the main function of the FlexE shim is to encapsulate data into pre-divided time slots. Then, according to the FlexE time slot table, each divided time slot is mapped to a PHY in the FlexE group for transmission. Each time slot maps to one PHY in the FlexE group. Taking a 100GE PHY as an example, the FlexE shim layer can divide each 100GE PHY in the FlexE group into 20 time slots as data transport channels, with each slot corresponding to a bandwidth of 5Gbps. Every time the PHY transmits 1023*20 slots of 64 / 66B data, it inserts an overhead FlexE (OH) to inform the receiving end how to parse the received data.

[0060] Small-granularity services: In some embodiments, the slot corresponding to a large bandwidth can be further divided into multiple sub-slots to carry customer services with smaller bandwidth requirements. These services are also referred to as small-granularity services. For example, the large bandwidth can be understood as the bandwidth corresponding to the service layer of the small-granularity service. For instance, when the service layer of the small-granularity service is the MTN channel layer, the bandwidth of the MTN channel layer is 5Gbps. The slot corresponding to the large bandwidth of 5Gbps is further divided into 480 sub-slots with a granularity of 10Mbps. These 480 sub-slots are used to carry small-granularity services. For example, the first, third, and fifth sub-slots of these 480 sub-slots are used to carry small-granularity service 1. As another example, when the service layer of the small-granularity service is the 10GE Ethernet physical layer, the corresponding large bandwidth is further divided into multiple sub-slots with a finer granularity to carry small-granularity services. Therefore, small-granularity bandwidth refers to services with relatively small bandwidth requirements. For example, a dedicated power line service might require 10Mbps of bandwidth. In this case, small-granularity technology can be used to allocate a specific bandwidth to this dedicated power line service to carry its traffic. The aforementioned dedicated power line service is an example of a small-granularity service.

[0061] In transmitting small-granularity services, for the transmitting end, in one example, the FlexE shim can encapsulate data into pre-defined sub-slots based on the small-granularity time slot configuration for transmission. For the receiving end, the FlexE shim can restore the data received through the corresponding 5Gbps bandwidth slot into the original small-granularity service data and continue transmission, based on the small-granularity time slot configuration. In another example, for the transmitting end, the MTN path adaptation function can be used to encapsulate data into the corresponding sub-slot for transmission; for the receiving end, the MTN path adaptation function can be used to restore the data received through the corresponding 5Gbps bandwidth slot into the original small-granularity service data and continue transmission. In one example, the small-granularity service data can be carried in a fine granularity unit (FGU) baseframe. In one example, the small-granularity unit can also be referred to as a fine granularity basic unit (fgBU), and the two terms can be used interchangeably in the following description.

[0062] Regarding the FlexE OH insertion method and the structure of the overhead frame, for a specific implementation, please refer to the relevant description of FlexE in the Optical Internetworking Forum (OIF), which will not be detailed here.

[0063] The following section introduces a possible Slicing Packet Network (SPN) architecture that supports small-granularity technology. See [link / reference] Figure 1a The figure is a schematic diagram of an SPN architecture supporting small particle technology provided in an embodiment of this application.

[0064] like Figure 1a As shown, the SPN architecture includes:

[0065] The system comprises a slice packet layer (SPL), a slice channel layer (SCL), a slice transport layer (STL), a software-defined network (SDN) slice control plane integrating management and control, and ultra-high precision event frequency synchronization technology. Among these:

[0066] SCL comprises the FGU layer, the MTN path (MTNP) layer, and the MTN section (MTNS) layer. The FGU layer provides end-to-end deterministic low-latency N*10Mbps granularity hard slice channels for small-granularity services. The FGU layer is an independent sublayer and can be flexibly chosen to be carried on either the MTN path layer or the Ethernet physical layer as needed. In other words, the service layer of the FGU layer can be either the MTN path layer or the Ethernet physical layer.

[0067] STL adds a 10GE Ethernet physical layer interface to the existing high-speed Ethernet physical layer interface. The 10GE Ethernet physical layer can be used in customer-premises equipment (CPE) scenarios to directly carry the FGU layer.

[0068] Next, taking the MTN channel layer carrying small-granularity services as an example, we will introduce the MTNS and MTNP from the perspectives of transmitting-side behavior and receiving-side behavior.

[0069] First, we will introduce the sending and receiving behaviors of MTNS.

[0070] In one example, using a 100GBASE-R PHY, MTNS provides point-to-point connectivity, handling time-slotting of adjacent nodes connected by the Ethernet PHY, and providing bonding, sub-rate, and channelization functions. MTNS is bidirectional and symmetrical; this explanation focuses on one data transmission direction.

[0071] On the transmitting side, MTNS inserts a special O code block into the 66B code block sequence. After an interval of 1023*20 66B code blocks, a D code block is inserted. Another D code block is inserted after every 1023*20 66B code blocks, for a total of 7 D code blocks. After inserting the 7th D code block, another 1023*20 code block interval is followed by a special O code block. Thus, a total of 8*(1023*20+1) code blocks constitute one MTNS frame.

[0072] The O code block, together with the aforementioned seven D code blocks, constitutes the overhead of the MTNS frame. The overhead carries some point-to-point link configuration information indicating the MTNS, such as time slot configuration information, segment layer group configuration information, etc.

[0073] MTNS continuously transmits data to the receiving end according to the above frame structure. The continuous MTNS frames are equivalent to a 66B code block stream, which is converted into bits, optical signals, or other analog signals such as electrical pulses according to the lower PHY layer protocol defined by the Institute of Electrical and Electronics Engineers (IEEE) 802.3 and transmitted from the transmitting device.

[0074] On the receiving side, following the Ethernet lower PHY layer protocol, the received signal (e.g., bits, optical signals, or other analog signals such as electrical pulses) is identified by the O code block, thus locking the MTNS frame header. By using a fixed count, the next overhead code block can be determined after 1023*20 code blocks. Accordingly, based on the O code block, the receiving side can determine the position of the data corresponding to each time slot within the received signal.

[0075] MTNS only provides point-to-point connections, while MTNP provides end-to-end tunnel connections from network ingress to network egress. MTNP provides rigid, end-to-end hard-pipe connections and offers management, maintenance, and protection (OAM, OAMP) functionality. A typical MTNP network topology can be found by referring to [reference needed]. Figure 1b As shown, Figure 1b This is a schematic diagram of a network architecture provided for an embodiment of this application.

[0076] Next, combine Figure 1b This section introduces the transmitting and receiving behaviors of MTNP.

[0077] like Figure 1b As shown, there is an end-to-end MTNP between provider edges (PE)1 and PE2, and a point-to-point MTNS between PE1 and PE2.

[0078] On the network-to-network interface (NNI) side of PE1, the MTNP layer obtains client signals from the MAC layer, which can be MAC frames. The MAC layer's processing module can be referred to here. After obtaining the MAC frame, the MTNP layer encodes it into a sequence of 64 / 66B code blocks. Specifically, each MAC frame is encoded into a sequence of 66B code blocks defined by a start code block (S block) and an end code block (T block), resulting in a series of MAC frame sequences encoded into a series of 66B code block sequences.

[0079] In one example, if no valid MAC frame is waiting to be sent, MTNP will fill the 66B code block with I code blocks to ensure that MTNP's hard pipe is always sending data.

[0080] On the receiving side of the P node, the MTNS frame is first identified according to the MTNS receiving side behavior described above. Then, based on the pre-configured settings, the MTNP data is recovered from the specified MTNS time slot. The P node then performs MTNP forwarding. It's important to note that the fundamental difference between MTNP forwarding and IP forwarding, as well as MAC bridge forwarding, is that MTNP forwarding exclusively uses device forwarding resources, does not support statistical multiplexing, and requires the same number of MTNS time slots to be configured for both the ingress and egress points of the network node (e.g., the P node).

[0081] As described above, in some embodiments, the slot corresponding to a large bandwidth can be further divided into multiple sub-slots to carry small-granularity services. For example, a slot with a bandwidth of 5Gbps can be further divided into 480 sub-slots with a granularity of 10Mbps, and these 480 sub-slots are used to carry small-granularity services. In this case, the MTNFGU can further divide the 5Gbps MTNP into 480 10Mbps time slots in a hierarchical manner. In this scenario, the MTNP and MTN FGU can be decoupled, and the MTNP acts as the service layer of the MTN FGU. In one example, the fg-BU can include FGU baseframe overhead and FGU baseframe payload. The FGU baseframe overhead can be used to carry small-granularity time slot information, and the FGU baseframe payload is used to carry the small-granularity service data. The small-granularity time slot information can be a mapping relationship between sub-slots and sub-clients. The sub-client, similar to the FlexE client, also corresponds to various user interfaces or bandwidths of the network. The difference between a sub-client and a FlexE client is that a sub-client represents a client data stream transmitted on a sub-slot, and one sub-client can correspond to one or more sub-slots.

[0082] In a scenario where a slot with a corresponding bandwidth of 5Gbps is further divided into 10Mbps granularities, in one example, an FGU baseframe can include 24 sub-slots, each sub-slot comprising 65 bytes, and each sub-slot can carry eight 65-bit code blocks. In other words, the aforementioned baseframe payload of 120 can include 65 * 24 = 1560 bytes. 20 FGU baseframes form a multiframe, providing 24 × 20 = 480 sub-slots. In one example, after 64 / 66B encoding, fg-BU can yield one S0 code block, 196 D code blocks, and one T code block.

[0083] For the NNI transmitting side of PE1, the MTN FGU layer, like MTNP, first encodes the MAC frame client signal into a 66B code block sequence, and then inserts OAM code blocks. It's important to note that the OAM code blocks inserted in the MTN FGU layer are small-granularity MTNP (fgMTNP) OAM code blocks, not MTNP OAM code blocks. Subsequently, a series of 66B code block sequences containing fgMTNP OAM code blocks are mapped into the fg-BU into a pre-configured 10Mbps time slot.

[0084] The fgBU sequence itself is actually a 66B code block, which can be equivalent to the MTNP client signal. After inserting the MTNP OAM code block, it is mapped into the time slot specified by MTNS according to the behavior of the MTNS transmitting side described above.

[0085] On the receiving side of the P node, following the behavior of the MTNP receiving side described above, the MTNP signal is recovered, and then the OAM code block in the MTNP is extracted. After the receiving side of the P node recovers the MTNP signal, the fg-BU framing can be completed by searching for the S code block.

[0086] P-nodes perform fgMTNP forwarding. Like MTNP forwarding, fgMTNP forwarding is TDM forwarding, exclusively occupying device forwarding resources and not supporting statistical multiplexing. P-nodes do not terminate the OAM code blocks of fgMTNP.

[0087] The sending behavior of node P is the reverse of the receiving behavior of node P, and will not be described in detail here. Similarly, the receiving behavior of node PE2 is the reverse of the sending behavior of node PE1, and will not be described in detail here either. Currently, when using FlexE technology to carry small-granularity services, in order to ensure the quality of service provided to these services, when the working path for transmitting small-granularity services fails, the services can be switched to the protection path for forwarding. See also... Figure 2a This figure is a schematic diagram of an exemplary application scenario provided by an embodiment of this application.

[0088] like Figure 2a As shown, network equipment (NE) 1, NE2, NE3, NE4, NE5, and NE6 form a FlexE ring network. A FlexE ring network can be understood as a ring network that utilizes FlexE technology. FlexE technology can also be called FlexE mapping technology, which refers to the mapping of time slots. The time slots mentioned here can be time slots corresponding to large granularities or sub-time slots corresponding to small granularities.

[0089] Each network device can act as either a receiver (RX) or a transmitter (TX). When acting as a receiver, the network device can receive data streams corresponding to small-granularity services through the time slots occupied by FlexE client0, such as... Figure 2aAs shown, taking network device NE4 as an example, when it acts as a receiver, the time slots occupied by FlexEclient0 are divided into two parts, W1 and P2. As an example, W1 and P2 each occupy half of the sub-time slots occupied by FlexE client0. W1 is in the active state, and P2 is in the protected state. In a specific example, FlexE client0 occupies a bandwidth of 5G, comprising 480 sub-time slots, with W1 and P2 each occupying 240 sub-time slots. In one example, W1 and P2 can be carried through FlexE group1 between NE4 and NE5.

[0090] Similarly, when a network device acts as a transmitter, it can send data streams corresponding to small-granularity services through the time slots occupied by FlexE client0, such as... Figure 2a As shown, taking network device NE4 as an example, when it acts as a transmitter, the time slots occupied by FlexEclient0 are divided into two parts, W2 and P1. As an example, W2 and P1 each occupy half of the sub-time slots occupied by FlexE client0. W2 is in the active state, and P1 is in the protected state. In a specific example, FlexE client0 occupies a bandwidth of 5G, comprising 480 sub-time slots, with W2 and P1 each occupying 240 sub-time slots. In one example, W2 and P1 can be carried through FlexE group2 between NE4 and NE5.

[0091] In one example, when Figure 2a When the FlexE group provided between the network devices shown is functioning correctly, NE4 can send small-granularity service data to NE2 along the working path. As an example, NE4 can send small-granularity service data to NE2 in a counter-clockwise direction; specifically, NE4 can send small-granularity service data to NE2 via path 201 in a counter-clockwise direction. When NE4 sends small-granularity service data to NE2 via path 201, the small-granularity service data is carried through W1 between NE4 and NE3, and W1 between NE3 and NE2.

[0092] In one example, such as Figure 2b As shown, Figure 2bThis is a schematic diagram illustrating another exemplary application scenario provided by the embodiments of this application. When a failure occurs in the FlexE group between NE4 and NE2, NE4 can send the data stream corresponding to the small-granularity service to NE2 through the protection path. As an example, NE4 can send the aforementioned data stream corresponding to the small-granularity service to NE2 in a clockwise direction. Specifically, NE4 sends the aforementioned data stream received through W1 between NE5 and NE4 to NE5 through P1 between NE5 and NE4, and NE5 further sends the data stream to NE2 through P1 between NE5 and NE6. When NE5 sends the data stream to NE2 through P1 between NE5 and NE6, the data stream is carried through P1 between NE5 and NE6, P1 between NE6 and NE1, and P1 between NE1 and NE2.

[0093] However, since half of the sub-time slots occupied by FlexE client0 are in the working state and half are in the protected state, when NE4 sends the data stream to NE5 through P1 between NE5 and NE4, it needs to perform time slot mapping on the data stream according to the local small-granularity time slot configuration of NE4. Similarly, when NE5, NE6 and NE1 forward the data stream, they also need to perform time slot mapping on the data stream according to the local small-granularity time slot configuration.

[0094] However, the processing overhead for time-slot mapping of data streams based on small-granular configuration is relatively large. Therefore, in Figure 2a and Figure 2b In the scenario shown, switching small-granular services to the protection path for forwarding results in significant processing overhead for network devices.

[0095] To address this issue, embodiments of this application provide a data processing method and apparatus. The data processing method provided in the embodiments of this application will now be described in conjunction with the accompanying drawings.

[0096] See Figure 3 This figure is a schematic diagram of an application scenario provided by an embodiment of this application. The data processing method provided by this embodiment can be applied to... Figure 3 The application scenarios shown.

[0097] like Figure 3 As shown, NE1, NE2, NE3, NE4, NE5 and NE6 form a FlexE ring network.

[0098] Each network device can act as either an RX (Receiving Entity) or a TX (Transmitting Entity). When acting as a receiver, the network device can receive data streams corresponding to small-granularity services through the time slot occupied by FlexE client0, such as... Figure 3As shown, taking network device NE4 as an example, when it acts as a receiver, all time slots W1 occupied by FlexE client0 are in working condition. In other words, the time slots occupied by FlexE client0 are divided into multiple sub-time slots, all of which are working time slots. In a specific example, FlexE client0 occupies a bandwidth of 5G, comprising 480 sub-time slots, and W1 occupies 480 sub-time slots. In one example, W1 can be carried by FlexE group1 between NE4 and NE5.

[0099] Similarly, when a network device acts as a transmitter, it can send data streams corresponding to small-granularity services through the time slots occupied by FlexE client0, such as... Figure 3 As shown, taking network device NE4 as an example, when it acts as a transmitter, the time slot P1 occupied by FlexE client0 is always active. In a specific example, FlexE client0 occupies 5G of bandwidth, including 480 sub-time slots, and P1 occupies all 480 sub-time slots. In one example, P1 can be carried by FlexEgroup2 between NE4 and NE5.

[0100] Next, combined Figure 4 The embodiments of this application are applicable to Figure 3 The data processing methods for the application scenarios shown will be introduced. Figure 4 This is a signaling interaction diagram of a data processing method provided in an embodiment of this application. Figure 4 The data processing method 100 shown may include the following steps S101-S104.

[0101] The communication device mentioned in the embodiments of this application can be a network device such as a switch or router, or a component of a network device, such as a single board or line card on the network device, or a functional module on the network device, or a chip used to implement the method of this application. The embodiments of this application do not impose specific limitations. The communication devices can be directly connected, for example, but not limited to, via Ethernet cables or optical fibers.

[0102] In the embodiments of this application, the communication device corresponding to the network device means that the communication device can be the network device itself or a component of the network device.

[0103] The network devices or nodes in the embodiments of this application can be network devices such as switches and routers.

[0104] In one example, when Figure 4 The method 100 shown is applied to Figure 3 In the application scenario shown, the communication device 1 in method 100 can correspond to Figure 3 The NE4 shown; the communication device 2 in method 100 can correspond to Figure 3 The NE3 shown; the communication device 3 in method 100 can correspond to Figure 3 NE5 is shown.

[0105] S101: Communication device 1 receives data stream 1 of small-granularity service 1 through the time slot occupied by FlexE client 1.

[0106] In one example, FlexE client 1 can be a FlexE client carried by a FlexE group between communication device 1 and communication device 3. In this case, communication device 1 can receive the data stream 1 sent by communication device 3 through the time slot occupied by FlexE client 1. Figure 3 In the scenario shown, the time slot occupied by the FlexE client1 can correspond to W1 between NE4 and NE5. Correspondingly, the FlexE group carrying the FlexE client1 can be the FlexE group provided between NE4 and NE5 that carries the W1.

[0107] S102: In response to a failure in FlexEgroup1 between communication device 1 and communication device 2 in the FlexE ring network, communication device 1 sends the data stream 1 to communication device 3 in the FlexE ring network through the time slot occupied by FlexE client 2, based on the time slot mapping relationship between FlexE client 1 and FlexE client 2.

[0108] In this embodiment, a FlexE group 2 is provided between the communication device 1 and the communication device 3. The FlexE group 2 carries the FlexE client 2, and the time slot occupied by the FlexE client 2 is divided into multiple sub-time slots 1. The multiple sub-time slots 1 are used to carry the small-granularity service 1, and each of the multiple sub-time slots 1 is a working time slot. (See reference...) Figure 3To understand this, the time slot occupied by FlexE client 2 can correspond to P1 between NE4 and NE5. Correspondingly, FlexE group 2 is the FlexE group provided between NE4 and NE5 that carries P1. As an example, FlexE client 1 and FlexE client 2 have a time slot mapping relationship. Data stream 1 received by communication device 1 through the time slot occupied by FlexE client 1 can be mapped to the time slot occupied by FlexE client 2 for forwarding. As an example, the shim layer of communication device 1 can map data stream 1 received through the time slot occupied by FlexE client 1 to the time slot occupied by FlexE client 2. Since all sub-time slots 1 occupied by FlexE client 2 are working time slots, when mapping data stream 1 received through the time slot occupied by FlexE client 1 to the time slot occupied by FlexE client 2 for forwarding, there is no need to be aware of small-granularity time slot configuration; large-granularity time slot mapping can be performed at the large-granularity level, resulting in lower processing overhead for communication device 1.

[0109] In this embodiment, a FlexE group 1 is provided between communication device 1 and communication device 3. The FlexE group 1 is used to carry FlexE client 3, and the time slots occupied by FlexE client 3 are divided into multiple sub-time slots 2. These sub-time slots 2 are configured to carry the small-granularity service 1, and each sub-time slot 2 is a working time slot. (See reference...) Figure 3To understand this, the time slot occupied by FlexE client3 can correspond to W1 between NE4 and NE3. Correspondingly, FlexEgroup1 is the FlexE group provided between NE4 and NE3 that carries W1. As an example, FlexEclient1 and FlexE client3 have a time slot mapping relationship. Data stream 1 received by communication device 1 through the time slot occupied by FlexE client1 can be mapped to the time slot occupied by FlexE client3 for forwarding. As an example, the shim layer of communication device 1 can map data stream 1 received through the time slot occupied by FlexE client1 to the time slot occupied by FlexE client3. Since all sub-time slots 2 among the multiple sub-time slots 2 occupied by FlexE client3 are working time slots, when mapping data stream 1 received through the time slot occupied by FlexE client1 to the time slot occupied by FlexE client2 for forwarding, there is no need to be aware of small-granularity time slot configuration; large-granularity time slot mapping can be performed at the large-granularity level, resulting in lower processing overhead for communication device 1.

[0110] In one example, the path used to forward the aforementioned data stream 1 may include a working path and a protection path. When the working path is fault-free, data stream 1 can be forwarded through the working path. When the working path fails, data stream 1 can be switched to the protection path for forwarding. As an example, the aforementioned FlexE group 1 may be a FlexE group on the working path, and FlexE group 2 may be a FlexE group on the protection path. In this case, communication device 1 can send data stream 1 to communication device 3 through the time slot carried by FlexEclient2 carried by FlexE group 2 when FlexE group 1 fails, thereby enabling data stream 1 to be forwarded through the protection path. In one example, the failure of FlexE group 1 may be, for example, a failure of the PHY included in FlexE group 1.

[0111] In one example, communication device 1 can also send path protection switching instruction information to communication device 3, which instructs communication device 3 to switch from the working path to the protection path. Upon receiving this instruction, communication device 3 can switch from the working path to the protection path, thereby forwarding data stream 1 received from communication device 1 through the protection path, thus enabling data stream 1 to be forwarded to the destination communication device via the protection path.

[0112] This application does not specifically limit the specific implementation of communication device 1 sending path protection switching indication information to communication device 3. In one example, communication device 1 can send path protection switching indication information to communication device 3 through the time slot occupied by FlexE client 2. In a specific example, communication device 1 can send an OAM message to communication device 3 through the time slot occupied by FlexE client 2. The OAM message may include the path protection switching indication information. As an example, the path protection switching indication information can be carried by the APS code block in the OAM message.

[0113] S103: Communication device 3 receives data stream 1 sent by communication device 1 through the time slot occupied by the FlexE client 2.

[0114] S104: Communication device 3 sends the data stream 1 through the protection path.

[0115] After communication device 1 sends data stream 1 to communication device 3 through the time slot occupied by FlexE client 2, communication device 3 can receive data stream 1 sent by communication device 1 through the time slot occupied by FlexE client 2, and further transmit the data stream 1 through the protection path. As an example, communication device 3 can transmit the data stream 1 through the protection path according to the path protection switching instruction information sent by communication device 1. (See reference...) Figure 3 To understand this, after NE5 receives data stream 1 sent by NE4 through the time slot included in P1 between NE5 and NE4, it can send data stream 1 back to NE6 through the time slot included in P1 between NE5 and NE6. Specifically, NE5 can map the data stream 1 received through the time slot included in P1 between NE5 and NE4 to the time slot included in P1 between NE5 and NE6 for transmission. In one example, all sub-time slots included in P1 between NE5 and NE6 are active. Therefore, when NE5 maps the data stream 1 received through the time slot included in P1 between NE5 and NE4 to the time slot included in P1 between NE5 and NE6, it does not need to be aware of the small-granularity time slot configuration; it can perform large-granularity time slot mapping at the large-granularity level, thus reducing the processing overhead of communication device 3.

[0116] As can be seen from the above description, when the communication device 1 forwards the data stream 1 of the small-granular service 1 through the protection path, it does not need to be aware of the small-granular time slot configuration, and the processing overhead of the communication device 1 is small.

[0117] In one example, after the working path failure is resolved, communication device 1 can switch small-granularity service 1 back to the working path for forwarding. In a specific example, communication device 1 can also receive data stream 2 of the small-granularity service 1 through the time slot occupied by FlexE client 1. In the event of a failure in FlexE group 1, communication device 1 can send data stream 2 to communication device 2 through the time slot occupied by FlexE client 3, based on the time slot mapping relationship between FlexE client 1 and FlexE client 3. Specifically, the shim layer of communication device 1 can map data stream 2 received through the time slot occupied by FlexE client 1 to the time slot occupied by FlexE client 3, thereby sending data stream 2 through the working path.

[0118] In one example, the data processing method provided in this application embodiment may further include Figure 5 Method 200 is shown. Figure 5 This is a signaling interaction diagram for another data processing method provided in an embodiment of this application. Figure 5 The data processing method shown can be applied to Figure 5 The application scenarios shown.

[0119] In one example, when Figure 5 The method 200 shown is applied to Figure 6 In the application scenario shown, the communication device 1 in method 200 can correspond to Figure 6 The NE4 shown; the communication device 2 in method 200 can correspond to Figure 6 The NE3 shown; the communication device 3 in method 200 can correspond to Figure 6 NE5 is shown.

[0120] The method 200 may include, for example, the following steps S201-S204.

[0121] S201: Communication device 1 receives data stream 3 of small-granularity service 2 through the time slot occupied by FlexE client 4.

[0122] For reference Figure 6 To understand, Figure 6 This is a schematic diagram of a FlexE ring network provided as an embodiment of this application. Figure 6 As shown, in one example, the FlexE client 4 can be a FlexE client carried by a FlexE group between communication device 2 and communication device 1. In this case, communication device 1 can receive the data stream 3 sent by communication device 2 through the time slot occupied by FlexE client 4. Figure 6 In the scenario shown, the time slot occupied by the FlexE client4 can correspond to W2 between NE4 and NE3. Correspondingly, the FlexE group carrying the FlexE client4 can be the FlexE group provided between NE4 and NE3 that carries the W2.

[0123] S202: In response to a FlexE group3 fault between communication device 1 and communication device 3, communication device 1 sends the data stream 3 to communication device 2 through the time slot occupied by FlexE client 5, based on the time slot mapping relationship between FlexE client 4 and FlexE client 5.

[0124] In this embodiment, a FlexE group 4 is provided between the communication device 1 and the communication device 2. The FlexE group 4 carries the FlexE client 5. The time slot occupied by the FlexE client 5 is divided into multiple sub-time slots 3. The multiple sub-time slots 3 are used to carry the small-granularity service 2, and each of the multiple sub-time slots 3 is a working time slot. (See reference...) Figure 6 To understand this, the time slot occupied by FlexE client 5 can correspond to P2 between NE4 and NE3. Correspondingly, FlexE group 4 is the FlexE group provided between NE4 and NE3 that carries P2. As an example, FlexE client 4 and FlexE client 5 have a time slot mapping relationship. Data stream 2 received by communication device 1 through the time slot occupied by FlexE client 4 can be mapped to the time slot occupied by FlexE client 5 for forwarding. As an example, the shim layer of communication device 1 can map data stream 2 received through the time slot occupied by FlexE client 4 to the time slot occupied by FlexE client 5. Since all sub-time slots 3 occupied by FlexE client 5 are working time slots, when mapping data stream 2 received through the time slot occupied by FlexE client 4 to the time slot occupied by FlexE client 5 for forwarding, there is no need to be aware of small-granularity time slot configuration; large-granularity time slot mapping can be performed at the large-granularity level, resulting in lower processing overhead for communication device 1.

[0125] In this embodiment, the FlexE group3 is used to carry the FlexE client 6. The time slot occupied by the FlexE client 6 is divided into multiple sub-time slots 4. The multiple sub-time slots 4 are configured to carry the small-granularity service 2, and each of the multiple sub-time slots 4 is a working time slot. (See reference...) Figure 6 To understand this, the time slot occupied by FlexE client 6 can correspond to W2 between NE4 and NE5. Correspondingly, FlexE group 3 is the FlexE group provided between NE4 and NE5 that carries W2. As an example, FlexE client 4 and FlexE client 6 have a time slot mapping relationship. Data stream 2 received by communication device 1 through the time slot occupied by FlexE client 4 can be mapped to the time slot occupied by FlexE client 6 for forwarding. As an example, the shim layer of communication device 1 can map data stream 2 received through the time slot occupied by FlexE client 4 to the time slot occupied by FlexE client 6. Since all sub-time slots 4 occupied by FlexE client 6 are working time slots, when mapping data stream 2 received through the time slot occupied by FlexE client 4 to the time slot occupied by FlexE client 6 for forwarding, there is no need to be aware of small-granularity time slot configuration; large-granularity time slot mapping can be performed at the large-granularity level, resulting in lower processing overhead for communication device 1.

[0126] In one example, the path used to forward the aforementioned data stream 2 may include a working path and a protection path. When the working path is functioning correctly, data stream 2 can be forwarded via the working path. When the working path fails, data stream 2 can be switched to the protection path for forwarding. As an example, the aforementioned FlexE group 3 may be a FlexE group on the working path, and FlexE group 4 may be a FlexE group on the protection path. In this case, if FlexE group 3 fails, communication device 1 can transmit data stream 2 to communication device 2 via the time slot carried by FlexEclient5 carried by FlexE group 4, thereby enabling data stream 2 to be forwarded via the protection path. In one example, a failure in FlexE group 3 could be, for example, a failure in the PHY included in FlexE group 3.

[0127] In one example, communication device 1 can also send path protection switching instruction information to communication device 2, instructing communication device 2 to switch from the working path to the protection path. Upon receiving this instruction, communication device 2 can switch from the working path to the protection path, thereby forwarding the data stream 2 received from communication device 1 through the protection path, and thus enabling data stream 2 to be forwarded to the destination communication device. For the specific implementation of communication device 1 sending path protection switching instruction information to communication device 2, please refer to the section on sending path protection switching instruction information from communication device 1 to communication device 3 in method 100 above; it will not be repeated here.

[0128] S203: Communication device 2 receives the data stream 3 sent by communication device 1 through the time slot occupied by the FlexE client 5.

[0129] S204: Communication device 2 sends the data stream 3 through the protection path.

[0130] After communication device 1 sends data stream 2 to communication device 2 through the time slot occupied by FlexE client 5, communication device 2 can receive data stream 2 sent by communication device 1 through the time slot occupied by FlexE client 5, and further transmit the data stream 2 through the protection path. As an example, communication device 2 can transmit the data stream 2 through the protection path according to the path protection switching instruction information sent by communication device 1. (See reference...) Figure 6 To understand this, after NE3 receives data stream 2 from NE4 through the time slot included in P2 between NE3 and NE4, it can send data stream 2 to NE2 through the same time slot. Specifically, NE3 can map the data stream 2 received through the time slot included in P2 between NE3 and NE4 to the time slot included in P2 between NE3 and NE2 before sending it. In one example, all sub-time slots included in P2 between NE3 and NE2 are active. Therefore, when NE3 maps the data stream 2 received through the time slot included in P2 between NE4 and NE3 to the time slot included in P2 between NE3 and NE2, it does not need to be aware of the small-granularity time slot configuration; it can perform large-granularity time slot mapping at the large-granularity level, resulting in lower processing overhead for communication device 2.

[0131] In one example, the aforementioned small-granularity service 1 and small-granularity service 2 can correspond to the same small-granularity service. In this case, the solution of the embodiment of this application can achieve path symmetry of the uplink and downlink data streams corresponding to the small-granularity service. Next, combined with Figure 6The following example illustrates the small-granularity service transmission between NE3 and NE5. When NE3 sends the data stream corresponding to the small-granularity service to NE5, the forwarding path of this data stream is: NE3-NE4-NE5. This data stream can be carried using the time slot occupied by W2 between NE3 and NE4, and also through the time slot occupied by W2 between NE4 and NE5. When NE5 sends the data stream corresponding to the small-granularity service to NE3, the forwarding path of this data stream is: NE5-NE4-NE3. This data stream can be carried using the time slot occupied by W1 between NE5 and NE4, and also through the time slot occupied by W1 between NE4 and NE3.

[0132] This application also provides a data processing method 300, which can be applied to a first communication device in a FlexE ring network. In one example, the method can be applied to method 100 or 200 above to perform the operations performed by communication device 1 in method 100 or 200 above.

[0133] See Figure 7 The figure is a flowchart illustrating a data processing method provided in an embodiment of this application. Figure 7 The method 300 shown may include, for example, the following steps S301-S302.

[0134] S301: Receive the first data stream of the first small-granularity service through the time slot occupied by the first FlexE client.

[0135] The first FlexE client in method 300 can correspond to FlexE client1 in method 100; the first small-granular service in method 300 can correspond to small-granular service 1 in method 100; the first data stream in method 300 can correspond to data stream 1 in method 100.

[0136] S302: In response to a failure in the first FlexE group between the first communication device and the second communication device in the FlexE ring network, the first data stream is sent to the third communication device in the FlexE ring network through the time slot occupied by the second FlexE client, based on the first time slot mapping relationship between the first FlexE client and the second FlexE client.

[0137] The second communication device in method 300 can correspond to the communication device 2 in method 100; the first FlexE group in method 300 can correspond to the FlexE group 1 in method 100; the second FlexE client in method 300 can correspond to the FlexE client 2 in method 100; and the third communication device in method 300 can correspond to the communication device 3 in method 100.

[0138] in:

[0139] A second FlexE group is provided between the first communication device and the third communication device. The second FlexE group carries the second FlexE client. The time slot occupied by the second FlexE client is divided into multiple first sub-time slots. The multiple first sub-time slots are used to carry the first small-granularity service. All of the multiple first sub-time slots are working time slots.

[0140] The second FlexE group in method 300 can correspond to FlexE group2 in method 100; the first sub-time slot in method 300 can correspond to sub-time slot 1 in method 100.

[0141] The first FlexE group is used to carry the third FlexE client. The time slot occupied by the third FlexE client is divided into multiple second sub-time slots. The multiple second sub-time slots are configured to carry the first small-granular service. All of the multiple second sub-time slots are working time slots.

[0142] The third FlexE client in method 300 can correspond to FlexE client3 in method 100; the second sub-time slot in method 300 can correspond to sub-time slot2 in method 100.

[0143] In one possible implementation, the method further includes: sending path protection switching instruction information to the third communication device, the path protection switching instruction information instructing the third communication device to switch from the working path to the protection path.

[0144] In one possible implementation, sending the path protection switching indication information to the third communication device includes: sending a FlexE Operation, Management and Maintenance (OAM) message to the third communication device through a time slot occupied by the second FlexE client, wherein the Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the path protection switching indication information.

[0145] In one possible implementation, the method further includes: receiving a second data stream of the first small-granularity service through a time slot occupied by the first FlexE client; and, in response to the first FlexE group fault recovery, sending the second data stream to the second communication device through a time slot occupied by the third FlexE client based on the second time slot mapping relationship between the first FlexE client and the third FlexE client.

[0146] The second data stream in method 300 can correspond to data stream 2 in method 100.

[0147] In one possible implementation, the method further includes:

[0148] The third data stream of the second small-granularity service is received through the time slot occupied by the fourth FlexE client; in response to a third FlexE group failure between the first communication device and the third communication device in the FlexE ring network, the third data stream is sent to the second communication device in the FlexE ring network through the time slot occupied by the fifth FlexE client based on the third time slot mapping relationship between the fourth FlexE client and the fifth FlexE client.

[0149] The fourth FlexE client in method 300 can correspond to FlexE client4 in method 200; the second small-granularity service in method 300 can correspond to small-granularity service 2 in method 200; the third FlexE group in method 300 can correspond to FlexE group3 in method 200; and the fifth FlexE client in method 300 can correspond to FlexE client5 in method 200.

[0150] in:

[0151] A fourth FlexE group is provided between the first communication device and the second communication device. The fourth FlexE group carries the fifth FlexE client. The time slot occupied by the fifth FlexE client is divided into multiple third sub-time slots. The multiple third sub-time slots are used to carry the second small-granularity service. All of the multiple third sub-time slots are working time slots.

[0152] The third FlexE group is used to carry the sixth FlexE client. The time slot occupied by the sixth FlexE client is divided into multiple fourth sub-time slots. The multiple fourth sub-time slots are configured to carry the second small-granularity service. All of the multiple fourth sub-time slots are working time slots.

[0153] The fourth FlexE group in method 300 can correspond to FlexE group4 in method 200; the third sub-time slot in method 300 can correspond to sub-time slot 3 in method 200; the sixth FlexE client in method 300 can correspond to FlexE client6 in method 200; and the fourth sub-time slot in method 300 can correspond to sub-time slot 4 in method 200.

[0154] In one possible implementation, the first small-granular service and the second small-granular service belong to the same small-granular service.

[0155] In one possible implementation, the first FlexE group is a FlexE group on the working path, and the second FlexE group is a FlexE group on the protection path.

[0156] This application embodiment also provides a data processing method 400, which can be applied to a first communication device in a FlexE ring network. In one example, the method can be applied to method 100 or 200 above to perform the operations performed by communication device 2 or communication device 3 in method 100 or 200 above. When method 400 is applied to method 100 above, the first communication device in method 400 can correspond to communication device 3 in method 100; when method 400 is applied to method 200 above, the first communication device in method 400 can correspond to communication device 2 in method 200.

[0157] See Figure 8 The figure is a flowchart illustrating another data processing method provided in an embodiment of this application. Figure 8 The method 400 shown may include, for example, the following S401-S402.

[0158] S401: Receive a first data stream of a first small-granularity service sent by a second communication device through a time slot occupied by a first Flexible Ethernet client (FlexE client); wherein: a first FlexE group is provided between the second communication device and the first communication device, the first FlexE group carries the first FlexE client, the time slot occupied by the first FlexE client is divided into multiple first sub-time slots, the multiple first sub-time slots are used to carry the first small-granularity service, and the multiple first sub-time slots are all working time slots.

[0159] When method 400 is applied to method 100 above: the first FlexE client in method 400 can correspond to FlexE client 2 in method 100; the second communication device in method 400 can correspond to communication device 1 in method 100; the first FlexE group in method 400 can correspond to FlexE group 2 in method 100; the first small-granularity service in method 400 can correspond to small-granularity service 1 in method 100; the first data stream in method 400 can correspond to data stream 1 in method 100; and the first sub-time slot in method 400 can correspond to sub-time slot 1 in method 100.

[0160] When method 400 is applied to method 200 above: the first FlexE client in method 400 can correspond to FlexE client 4 in method 200; the second communication device in method 400 can correspond to communication device 1 in method 100; the first FlexE group in method 400 can correspond to FlexE group 5 in method 200; the first small-granularity service in method 400 can correspond to small-granularity service 2 in method 200; the first data stream in method 400 can correspond to data stream 3 in method 200; and the first sub-time slot in method 400 can correspond to sub-time slot 3 in method 200.

[0161] S402: Send the first data stream through the protection path.

[0162] In one possible implementation, the method further includes: receiving path protection switching indication information sent by the second communication device, the path protection switching indication information indicating that the first communication device switches from the working path to the protection path.

[0163] In one possible implementation, receiving the path protection switching indication information sent by the second communication device includes: receiving a FlexE Operation, Management and Maintenance (OAM) message sent by the second communication device through a time slot occupied by the first FlexE client, wherein the Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the path protection switching indication information.

[0164] In one possible implementation, sending the first data stream via the protection path includes: sending the first data stream via the protection path according to the path protection switching instruction information.

[0165] For the specific implementation of methods 300 and 400, please refer to the relevant descriptions of methods 100 and 200 above, which will not be repeated here.

[0166] This application provides a first communication device, which includes a transceiver unit and / or a processing unit; the transceiver unit is used to perform the receiving and / or sending operations performed by the first communication device as described in any of the above method embodiments; the processing unit is used to perform operations other than the receiving and / or sending operations performed by the first communication device as described in any of the above method embodiments.

[0167] For a specific example, please refer to Figure 9 , Figure 9 This is a schematic diagram of the structure of a first communication device provided in an embodiment of this application. Figure 9 The first communication device shown may include a receiving unit 901 and a transmitting unit 902.

[0168] As an example:

[0169] The receiving unit 901 is used to receive the first data stream of the first small-granularity service through the time slot occupied by the first flexible Ethernet client (FlexE client).

[0170] Transmitting unit 902 is configured to, in response to a failure in the first FlexE group between the first communication device and the second communication device in the FlexE ring network, transmit the first data stream to the third communication device in the FlexE ring network through the time slot occupied by the second FlexE client, based on the first time slot mapping relationship between the first FlexE client and the second FlexE client, wherein:

[0171] A second FlexE group is provided between the first communication device and the third communication device. The second FlexE group carries the second FlexE client. The time slot occupied by the second FlexE client is divided into multiple first sub-time slots. The multiple first sub-time slots are used to carry the first small-granularity service. All of the multiple first sub-time slots are working time slots. The first FlexE group is used to carry the third FlexE client. The time slot occupied by the third FlexE client is divided into multiple second sub-time slots. The multiple second sub-time slots are configured to carry the first small-granularity service. All of the multiple second sub-time slots are working time slots.

[0172] In one possible implementation, the sending unit 902 is further configured to: send path protection switching indication information to the third communication device, the path protection switching indication information instructing the third communication device to switch from the working path to the protection path.

[0173] In one possible implementation, the sending unit 902 is specifically used to: send a FlexE Operation, Management and Maintenance (OAM) message to the third communication device through the time slot occupied by the second FlexEclient, wherein the Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the Path Protection Switching Indication Information.

[0174] In one possible implementation, the receiving unit 901 is further configured to: receive the second data stream of the first small-granularity service through the time slot occupied by the first FlexE client; the sending unit 902 is further configured to, in response to the first FlexE group fault recovery, send the second data stream to the second communication device through the time slot occupied by the third FlexE client based on the second time slot mapping relationship between the first FlexE client and the third FlexE client.

[0175] In one possible implementation, the receiving unit 901 is further configured to receive a third data stream of the second small-granularity service through a time slot occupied by the fourth FlexE client; the sending unit 902 is further configured to, in response to a third FlexE group failure between the first communication device and the third communication device in the FlexE ring network, send the third data stream to the second communication device in the FlexE ring network through a time slot occupied by the fifth FlexE client, based on the third time slot mapping relationship between the fourth FlexE client and the fifth FlexE client, wherein: a fourth FlexE group is provided between the first communication device and the second communication device, the fourth FlexE group carries the fifth FlexE client, the time slot occupied by the fifth FlexE client is divided into multiple third sub-time slots, the multiple third sub-time slots are used to carry the second small-granularity service, and the multiple third sub-time slots are all working time slots; the third FlexE group is used to carry a sixth FlexE client, the time slot occupied by the sixth FlexE client is divided into multiple fourth sub-time slots, the multiple fourth sub-time slots are configured to carry the second small-granularity service, and the multiple fourth sub-time slots are all working time slots.

[0176] In one possible implementation, the first small-granular service and the second small-granular service belong to the same small-granular service.

[0177] In one possible implementation, the first FlexE group is a FlexE group on the working path, and the second FlexE group is a FlexE group on the protection path.

[0178] As another example:

[0179] The receiving unit 901 is configured to receive a first data stream of a first small-granularity service sent by the second communication device through a time slot occupied by the first Flexible Ethernet client (FlexE client); wherein: a first FlexE group is provided between the second communication device and the first communication device, the first FlexE group carries the first FlexE client, the time slot occupied by the first FlexE client is divided into a plurality of first sub-time slots, the plurality of first sub-time slots are used to carry the first small-granularity service, and the plurality of first sub-time slots are all working time slots;

[0180] The sending unit 902 is used to send the first data stream through the protection path.

[0181] In one possible implementation, the receiving unit 901 is further configured to: receive path protection switching indication information sent by the second communication device, the path protection switching indication information indicating that the first communication device switches from the working path to the protection path.

[0182] In one possible implementation, the receiving unit 901 is specifically configured to: receive FlexE Operation, Management and Maintenance (OAM) messages sent by the second communication device through the time slot occupied by the first FlexEclient, wherein the Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the Path Protection Switching Indication Information.

[0183] In one possible implementation, the sending unit 902 is specifically used to: send the first data stream through the protection path according to the path protection switching instruction information.

[0184] like Figure 10 As shown, the communication device 1000 includes a processing circuit 1010 and an interface circuit 1020. The processing circuit 1010 and the interface circuit 1020 are coupled to each other. It is understood that the interface circuit 1020 can be a transceiver or an input / output interface. Optionally, the communication device 1000 may also include a memory for storing instructions executed by the processing circuit, or storing input data required for the processing circuit 1010 to execute instructions, or storing data generated after the processing circuit 1010 executes instructions.

[0185] When the communication device 1000 is used to implement method 100, method 200, method 300 or method 400, the interface circuit 1020 is used to implement the functions of the receiving unit 901 and the transmitting unit 902 corresponding to the first communication device 900; the processing circuit 1010 is used to implement other functions implemented by the first communication device 900 besides the functions of the receiving unit 901 and the transmitting unit 902.

[0186] like Figure 11 As shown, the communication device 1100 includes a processor 1110 and a communication interface 1120. The processor 1110 and the communication interface 1120 are coupled to each other. It is understood that the communication interface 1120 can be a transceiver or an input / output interface. Optionally, the communication device 1100 may also include a memory 1130 for storing instructions executed by the processor 1110, or storing input data required by the processor 1110 to execute instructions, or storing data generated after the processor 1110 executes instructions.

[0187] When the communication device 1100 is used to implement method 100, method 200, method 300 or method 400, the communication interface 1120 is used to implement the functions of the receiving unit 901 and the transmitting unit 902 corresponding to the first communication device 900, and the processor 1110 is used to implement other functions implemented by the first communication device 900 besides the functions of the receiving unit 901 and the transmitting unit 902.

[0188] When the aforementioned communication devices (such as the first communication device 900, communication device 1000, and communication device 1100) are chips applied to the communication devices, the communication device chip implements the functions of the communication devices in the above method embodiments. The communication device chip receives information from other modules (such as radio frequency modules or antennas) in the communication device, the information being sent to the communication device chip by other communication devices; or, the communication device chip sends information to other modules (such as radio frequency modules or antennas) in the communication device, the information being sent to other communication device chips by the communication device.

[0189] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.

[0190] This application also provides a computer-readable storage medium storing instructions that, when executed on a computer, cause the computer to perform any one or more of the operations described in the foregoing embodiments (e.g., method 100, method 200, method 300, or method 400).

[0191] This application also provides a computer program product, including a computer program that, when run on a computer, causes the computer to perform any one or more of the operations described in the foregoing embodiments (e.g., method 100, method 200, method 300, or method 400).

[0192] This application also provides a communication system. In one example, the communication system may include communication device 1 and communication device 3 from method 100 above. In yet another example, the communication system may include communication device 1 and communication device 2 from method 200 above. In yet another example, the communication system may include the first communication device from method 300 above and the first communication device from method 400 above.

[0193] According to the method provided in this application, this application also provides a chip system, which may include a processor. The processor is coupled to a memory and can be used in methods 100, 200, 300, or 400 described above. Optionally, the chip system further includes a memory. The memory is used to store computer programs (also referred to as code or instructions). The processor is used to retrieve and execute the computer program from the memory, causing a device equipped with the chip system to perform methods 100, 200, 300, or 400 described above.

[0194] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a particular order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments described herein can be implemented in a sequence other than that illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0195] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0196] In the embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical business division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between apparatuses or units, and may be electrical, mechanical, or other forms.

[0197] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0198] Furthermore, the various business units in the embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software business unit.

[0199] If the integrated unit is implemented as a software business unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0200] Those skilled in the art will recognize that, in one or more of the examples above, the services described in this invention can be implemented using hardware, software, firmware, or any combination thereof. When implemented in software, these services can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any medium that facilitates the transmission of computer programs from one place to another. Storage media can be any available medium accessible to general-purpose or special-purpose computers.

[0201] The above specific embodiments further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above are merely specific embodiments of the present invention.

[0202] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.

Claims

1. A data processing method, characterized by, A first communication device applied in a Flexible Ethernet ring network, the method comprising: The first data stream of the first small-granular service is received through the time slot occupied by the first Flexible Ethernet client (FlexE client). In response to a failure in the first FlexE group between the first communication device and the second communication device in the FlexE ring network, based on the first time slot mapping relationship between the first FlexE client and the second FlexE client, the first data stream is sent to the third communication device in the FlexE ring network through the time slot occupied by the second FlexE client, wherein: A second FlexE group is provided between the first communication device and the third communication device. The second FlexE group carries the second FlexE client. The time slot occupied by the second FlexE client is divided into multiple first sub-time slots. The multiple first sub-time slots are used to carry the first small-granularity service. All of the multiple first sub-time slots are working time slots. The first FlexE group is used to carry the third FlexE client. The time slot occupied by the third FlexE client is divided into multiple second sub-time slots. The multiple second sub-time slots are configured to carry the first small-granular service. All of the multiple second sub-time slots are working time slots.

2. The method of claim 1, wherein, The method further includes: Send path protection switching instruction information to the third communication device, the path protection switching instruction information instructing the third communication device to switch from the working path to the protection path.

3. The method of claim 2, wherein, Sending path protection switching instruction information to the third communication device includes: The second FlexE client sends FlexE Operation, Management and Maintenance (OAM) messages to the third communication device through the time slot occupied by the second FlexE client. The Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the path protection switching indication information.

4. The method according to any one of claims 1-3, characterized in that, The method further includes: The second data stream of the first small-granular service is received through the time slot occupied by the first FlexE client; In response to the first FlexE group failure recovery, based on the second time slot mapping relationship between the first FlexE client and the third FlexE client, the second data stream is sent to the second communication device through the time slot occupied by the third FlexE client.

5. The method according to claim 1, characterized in that, The method further includes: The third data stream of the second small-granularity service is received through the time slot occupied by the fourth FlexE client; In response to a third FlexE group failure between the first communication device and the third communication device in the FlexE ring network, based on the third time slot mapping relationship between the fourth and fifth FlexE clients, the third data stream is sent to the second communication device in the FlexE ring network through the time slot occupied by the fifth FlexE client, wherein: A fourth FlexE group is provided between the first communication device and the second communication device. The fourth FlexE group carries the fifth FlexE client. The time slot occupied by the fifth FlexE client is divided into multiple third sub-time slots. The multiple third sub-time slots are used to carry the second small-granularity service. All of the multiple third sub-time slots are working time slots. The third FlexE group is used to carry the sixth FlexE client. The time slot occupied by the sixth FlexE client is divided into multiple fourth sub-time slots. The multiple fourth sub-time slots are configured to carry the second small-granularity service. All of the multiple fourth sub-time slots are working time slots.

6. The method according to claim 5, characterized in that, The first small-granular service and the second small-granular service belong to the same small-granular service.

7. The method according to any one of claims 1-3 or any one of claims 5-6, characterized in that, The first FlexE group is the FlexE group on the working path, and the second FlexE group is the FlexE group on the protection path.

8. The method according to claim 4, characterized in that, The first FlexE group is the FlexE group on the working path, and the second FlexE group is the FlexE group on the protection path.

9. A data processing method, characterized in that, The first communication device applied in a FlexE ring network, the method comprising: The first data stream of the first small-granularity service sent by the second communication device is received through the time slot occupied by the first flexible Ethernet client (FlexE client); wherein: a first FlexE group is provided between the second communication device and the first communication device, the first FlexE group carries the first FlexE client, the time slot occupied by the first FlexE client is divided into multiple first sub-time slots, the multiple first sub-time slots are used to carry the first small-granularity service, and the multiple first sub-time slots are all working time slots; The first data stream is sent via the protected path.

10. The method according to claim 9, characterized in that, The method further includes: Receive path protection switching instruction information sent by the second communication device; According to the path protection switching instruction information, switch from the working path to the protection path.

11. The method according to claim 10, characterized in that, Receiving path protection switching instruction information sent by the second communication device includes: The first FlexE client receives the FlexE Operation, Management and Maintenance (OAM) message sent by the second communication device through the time slot occupied by the first FlexE client. The Automatic Protection Switching (APS) code block in the FlexE OAM message is used to carry the path protection switching indication information.

12. A first communication device, characterized in that, The device includes: Receiving unit and transmitting unit; The receiving unit is configured to perform the receiving operation performed by the first communication device according to any one of claims 1-8, and the transmitting unit is configured to perform the transmitting operation performed by the first communication device according to any one of claims 1-8; or, The receiving unit is configured to perform the receiving operation performed by the first communication device according to any one of claims 9-11, and the sending unit is configured to perform the sending operation performed by the first communication device according to any one of claims 9-11.

13. A communication device, characterized in that, include: A communication interface and a processor, wherein the communication device performs the method according to any one of claims 1-11, based on the communication interface and the processor.

14. A communication system, characterized in that, The system includes: A first communication device that performs the method according to any one of claims 1-8 and a first communication device that performs the method according to any one of claims 9-11.