Method and device for transmitting data
By defining fine-grained sub-user interfaces and sub-timeslot cross-connection technology, the problem of bandwidth waste for low-rate services in FlexE technology is resolved, achieving more efficient bandwidth utilization and isolation, and is suitable for low-rate service transmission on Ethernet interfaces.
Patent Information
- Application Number
- CN202010761609.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-07-25
- Filing Date
- 2020-07-31
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2040-07-31
AI Technical Summary
Existing FlexE technology suffers from severe bandwidth waste when carrying low-rate services, especially 10Mbps services. Existing technology cannot accurately match the bandwidth requirements of low-rate services.
By redefining the fine-grained sub-client interface and sub-timeslot crossover technology, the interface rate of each sub-client interface can be flexibly configured. Combined with the time division multiplexing mechanism, efficient transmission of low-rate services can be achieved.
It significantly improves the utilization of channel bandwidth and avoids bandwidth waste, especially when carrying low-speed services, achieving more efficient bandwidth isolation and utilization.
Smart Images

Figure CN113972997B_ABST
Abstract
Description
[0001] This application claims priority to Chinese patent application No. 202010726636.X, filed on July 25, 2020, entitled “A method and device for transmitting data,” the entire contents of which are incorporated herein by reference. Technical Field
[0002] Embodiments of the present invention relate to the field of communication technologies, and in particular, to a method and device for transmitting data, and more particularly, to a method and device for transmitting data in an Ethernet interface or a flexible Ethernet interface. Background Art
[0003] Flexible Ethernet (FlexE) technology, an interface technology for achieving service isolation and network segmentation, has developed rapidly in recent years and has been widely adopted by major standards organizations. The Optical Internet Forum (OIF) has released the FlexE standard. FlexE technology integrates the Flexible Ethernet protocol layer (also known as the FlexE Shim layer) based on IEEE 802.3, decoupling the Media Access Control (MAC) layer from the Physical Link Interface (PHY) layer, thereby enabling flexible rate matching. Based on the Time Division Multiplexing (TDM) distribution mechanism, the Flex Shim schedules data from multiple FlexE clients according to time slots and distributes it to multiple sub-channels. This achieves hard isolation of transmission channel bandwidth, allowing a service data flow to be allocated to one or more time slots, thus enabling matching of services of varying rates.
[0004] Existing FlexE interface technology has, to a certain extent, addressed the issue of fixed Ethernet port rates, and client cross-connect technology has addressed the issue of excessive packet forwarding latency. However, existing technology results in significant channel bandwidth waste when carrying low-rate services (such as 10 Mbps). Summary of the Invention
[0005] The present application provides a method for transmitting data, a communication device, a network device, a communication system, a storage medium and a computer program product to solve the problem of serious bandwidth waste when carrying services based on FlexE technology. The technical solution of the present application can greatly improve the utilization rate of the channel bandwidth, especially when carrying low-rate services (such as M-level low-rate services), it can significantly improve the utilization rate of the channel bandwidth and avoid bandwidth waste. Furthermore, the present application newly defines a frame structure of a small-granularity service frame, so that the Ethernet (English: Ethernet, ETH) interface can be used to transmit service data in a time-division multiplexing manner. Therefore, even ordinary Ethernet interfaces that do not support the standard FlexE mode can effectively utilize the Ethernet interface bandwidth to achieve bandwidth isolation.
[0006] In a first aspect, the present application provides a method for transmitting data, characterized in that it is implemented by a first communication device, and the method includes:
[0007] generating a first data stream, wherein the first data stream includes a plurality of data code blocks;
[0008] The multiple data code blocks include multiple first base frames, each first base frame includes a base frame payload, the base frame payload includes a base frame overhead and multiple sub-client sub-timeslot payloads, the multiple sub-client sub-timeslot payloads include multiple first sub-client sub-timeslot payloads, and the multiple first sub-client sub-timeslot payloads include service data of a first sub-client interface;
[0009] The first data stream is sent through the first interface.
[0010] Optionally, the first interface is logically divided into Z sub-client interfaces, and the Z sub-client interfaces include the first sub-client interface.
[0011] Optionally, the first interface is a Flexible Ethernet user FlexE client interface.
[0012] Optionally, the first interface is an Ethernet interface.
[0013] Optionally, the first interface is a first Flexible Ethernet client interface, and the first communication device further includes a first FlexE interface on a sending side. Sending the first data stream through the first interface includes:
[0014] The first data stream is sent through the first FlexE interface according to a time slot mapping relationship between the first FlexE client interface and the first FlexE interface, wherein the first FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the first FlexE client interface.
[0015] Optionally, each first base frame further includes a first code block and a second code block, wherein the first code block is used to indicate a frame header of the first base frame, and the second code block is used to indicate a frame tail of the first base frame.
[0016] Optionally, the first code block is an S code block, and the second code block is a T code block.
[0017] Optionally, the first code block includes a first indication field and a first data field, the first indication field is used to indicate the frame header, and the first data field is used to carry part of the data of the base frame payload.
[0018] Optionally, the second code block includes a second indication field and a second data field, the second indication field is used to indicate the frame end, and the second data field is used to carry part of the data of the base frame payload.
[0019] Optionally, formats of the first code block and the second code block comply with the code block format defined by the Institute of Electronics Engineers IEEE 802.3 standard.
[0020] Optionally, the base frame overhead includes one or more items of information:
[0021] The sequence number of the base frame;
[0022] sub-client sub-timeslot mapping table;
[0023] timeslot adjustment request;
[0024] Time slot adjustment response;
[0025] Time slot effective indication;
[0026] Management channel information; or
[0027] Base frame overhead check information.
[0028] Optionally, the first interface is divided into M sub-time slots in the time domain, where M is an integer greater than 1.
[0029] Optionally, a time slot bandwidth of each of the M sub-time slots is P, where P<5 Gbp / s.
[0030] Optionally, the M sub-timeslots are evenly distributed in X first base frames, and base frame encapsulation is performed once every time M / X sub-timeslots are scheduled. Each base frame payload includes M / X sub-client sub-timeslot payloads, where X is an integer greater than 1.
[0031] Optionally, the transmission rate of the first interface is N Gbp / s, where N is greater than or equal to 1.
[0032] Optionally, the method further includes:
[0033] receiving a first sub-client sub-timeslot mapping table sent by a second communication device, where the first sub-client sub-timeslot mapping table is used to indicate a first mapping relationship between the M sub-timeslots and the Z sub-client interfaces, where each of the sub-client interfaces is mapped to at least one sub-timeslot of the M sub-timeslots;
[0034] The first sub-client sub-slot mapping table is saved.
[0035] Optionally, the first sub-client sub-timeslot mapping table indicates the first mapping relationship by mapping Z sub-user identifiers sub-client IDs and M sub-timeslot identifiers sub-slot IDs, wherein the Z sub-client IDs are respectively used to indicate the Z sub-client interfaces, and the M sub-slot IDs are respectively used to indicate the M sub-timeslots.
[0036] Optionally, the second communication device is a control and management device.
[0037] Optionally, the second communication device is a forwarding device.
[0038] Optionally, the first sub-client sub-timeslot mapping table is carried in the base frame overhead; or, the first sub-client sub-timeslot mapping table is carried in a designated sub-timeslot of the M sub-timeslots.
[0039] Optionally, the first data stream is used to carry Ethernet services.
[0040] Optionally, generating the first data stream includes:
[0041] Obtain the first Ethernet service data stream from the physical coding sublayer (PCS);
[0042] Slicing the first Ethernet service data flow to obtain multiple Ethernet service slices;
[0043] The multiple Ethernet service slices are used as the multiple sub-user sub-client sub-timeslot payloads and encapsulated in the base frame payload.
[0044] Optionally, the first Ethernet service data flow includes at least one OAM code block.
[0045] Optionally, the first Ethernet service data flow includes multiple 64B / 66B code blocks or multiple 64B / 65B code blocks or multiple 256B / 257B code blocks.
[0046] Optionally, the first data stream is used to carry a constant bit rate (CBR) service.
[0047] Optionally, generating the first data stream includes:
[0048] Slicing the first CBR service data stream to obtain a plurality of CBR service slice data, wherein the first CBR service data stream includes a plurality of CBR service frames;
[0049] Slice and encapsulate the multiple CRB service slice data respectively to obtain multiple CBR service slices, each of the CBR service slices including the CBR service slice data and encapsulation information;
[0050] Obtaining, according to the multiple CBR service slices, the multiple sub-user sub-client sub-timeslot payloads;
[0051] The multiple sub-user sub-client sub-timeslot payloads are encapsulated in the base frame payload.
[0052] Optionally, the slice granularity of each of the CBR service slices is i bits, and the contents of the multiple CBR service frames are not identified when slicing the first CBR service data stream, where i is an integer.
[0053] Optionally, the slice granularity of each of the CBR service slices is j complete CBR service frames, where j is an integer greater than or equal to 1.
[0054] Optionally, the CBR service slice includes a first field for carrying the CBR service slice data.
[0055] Optionally, the encapsulation information includes a second field, and the second field is used to carry clock frequency information.
[0056] Optionally, the encapsulation information includes a third field, and the third field is used to carry operation, administration and maintenance (English: operation, administration and maintenance, OAM) information.
[0057] Optionally, the encapsulation information includes a fourth field, and the fourth field is used to carry the serial number of the CBR service slice.
[0058] Optionally, the serial number of the CBR service slice is used for slice reassembly.
[0059] Optionally, the encapsulation information includes a fifth field, and the fifth field is used to carry payload length information, where the payload length information is the effective length of the CBR service slice data carried in each of the CBR service slices.
[0060] Optionally, the encapsulation information includes a sixth field, and the sixth field is a padding field.
[0061] Optionally, the encapsulation information includes a seventh field, and the seventh field is used to carry verification information.
[0062] Optionally, obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes:
[0063] Perform Ethernet message encapsulation on the multiple CBR service slices to obtain a second data stream, where the second data stream includes multiple code blocks;
[0064] The second data stream is sliced according to the length of each sub-user sub-client sub-timeslot payload to obtain the multiple sub-user sub-client sub-timeslot payloads.
[0065] Optionally, the second data stream includes multiple 64B / 66B code blocks or multiple 64B / 65B code blocks or multiple 256B / 257B code blocks.
[0066] Optionally, the first data stream includes multiple OAM code blocks for carrying OAM information.
[0067] Optionally, obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes:
[0068] Each of the CBR service slices is directly used as a sub-user sub-client sub-timeslot payload.
[0069] Optionally, the first data stream includes multiple 64B / 66B code blocks or multiple 64B / 65B code blocks or multiple 256B / 257B code blocks.
[0070] Optionally, the first sub-client interface is mapped to W sub-timeslots of the first interface, and generating the first data stream includes:
[0071] The multiple first sub-client sub-timeslot payloads are mapped to the W sub-timeslots respectively, where W is an integer greater than 1.
[0072] Optionally, mapping the plurality of first sub-client sub-timeslot payloads to the W sub-timeslots respectively includes:
[0073] The W sub-time slots are scheduled in sequence according to a mapping relationship between the first sub-client interface and the W sub-time slots and based on a time slot scheduling period of the first interface.
[0074] Optionally, the first communication device includes a second sub-client interface on the receiving side, and generating the first data stream includes:
[0075] obtaining a plurality of second sub-client sub-timeslot payloads of the second sub-client interface,
[0076] processing the plurality of second sub-client sub-slot payloads based on a sub-slot cross-relationship between the second sub-client interface and the first sub-client interface to obtain the plurality of first sub-client sub-slot payloads;
[0077] The multiple first sub-client sub-timeslot payloads are encapsulated in the base frame payload.
[0078] Optionally, obtaining a plurality of second sub-client sub-timeslot payloads of the second sub-client interface includes:
[0079] Obtain a third data stream of a second interface on the receiving side, and demap the plurality of second sub-client sub-timeslot payloads from the third data stream according to a second sub-client sub-timeslot mapping table. The second interface is divided into A sub-timeslots in the time domain, and the second interface is logically divided into B sub-client interfaces, where the B sub-client interfaces include the second sub-client interface. The second sub-client sub-timeslot mapping table is used to indicate a second mapping relationship between the A sub-timeslots and the B sub-client interfaces. A and B are both integers. The value of A can refer to the relevant description of the value of M in this application.
[0080] Optionally, the second interface is an Ethernet interface.
[0081] Optionally, the second interface is a second FlexE Cilent interface.
[0082] Optionally, the first communication device further includes a second FlexE interface on a receiving side, and the acquiring the third data stream includes:
[0083] Acquire a fourth data flow of the second FlexE interface, where the second FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the second FlexE client interface;
[0084] According to the time slot mapping relationship between the second FlexE client interface and the second flexE interface, the third data stream is demapped from the fourth data stream, where the third data stream includes multiple second base frames, and the multiple second base frames include the multiple second sub-client sub-time slot payloads.
[0085] In a second aspect, the present application provides a first communication device, characterized by comprising:
[0086] a memory storing instructions;
[0087] A processor connected to the memory, when the processor executes the instruction, causes the first communication device to execute the method described in the first aspect and any optional embodiment.
[0088] In a third aspect, the present application provides a computer-readable storage medium, characterized in that it includes a program or instruction, which, when executed on a computer, enables the computer to execute the method described in the first aspect and any optional embodiment.
[0089] In a fourth aspect, the present application provides a communication system, comprising a first communication device and a second communication device according to claim 1, wherein the first communication device is configured to execute the method described in the first aspect and any optional embodiment.
[0090] In a fifth aspect, the present application provides a program product, characterized in that it includes a program or instruction, which, when run on a computer, enables the computer to execute the method described in the first aspect and any optional embodiment. BRIEF DESCRIPTION OF THE DRAWINGS
[0091] Figure 1 This is a diagram of the general architecture of FlexE based on the Flexible Ethernet protocol;
[0092] Figure 2 Schematic diagram of the timeslot allocation of a FlexE Group across four physical link interfaces (aggregating four PHYs);
[0093] Figure 3Schematic diagram of the application scenario of the FlexE communication system involved in this application;
[0094] Figure 4 A schematic diagram of the process of transmitting data using FlexE technology involved in this application;
[0095] Figure 5 This is a schematic diagram of the overhead frame and overhead multiframe structure of a 100GE interface as specified in the OIF IA-FLEXE-02.1 standard.
[0096] Figure 6 Schematic diagram of timeslot allocation for multiple FlexE clients when N 100G PHYs are bundled.
[0097] Figure 7 A schematic diagram of a base frame encapsulation process provided by this application;
[0098] Figure 8 The code block format defined by IEEE802.3;
[0099] Figure 9 A schematic diagram of a data transmission structure based on a sub-client interface provided by this application;
[0100] Figure 10 A schematic diagram of the format of a multi-frame encapsulation provided by this application;
[0101] Figure 11 A schematic diagram illustrating the format of a multiframe provided in this application;
[0102] Figure 12 A flowchart of a method for obtaining a sub-client sub-timeslot payload of an Ethernet service provided by the present application;
[0103] Figure 13 A flowchart of a method for obtaining a CBR service sub-client sub-timeslot payload provided by this application;
[0104] Figure 14 A flowchart of a specific method for obtaining the CBR service sub-client sub-timeslot payload provided by this application;
[0105] Figure 15 A flowchart of another specific method for obtaining the CBR service sub-client sub-timeslot payload provided by this application;
[0106] Figure 16 A schematic diagram of a data transmission method provided by this application;
[0107] Figure 17A schematic diagram of a method for configuring a sub-client sub-timeslot mapping table provided in this application;
[0108] Figure 18 A schematic diagram of another method for configuring a sub-client sub-timeslot mapping table provided by this application;
[0109] Figure 19 A schematic diagram of a method for sending sub-client service data streams provided by this application;
[0110] Figure 20 A schematic diagram of a method for transmitting Ethernet services based on a flexE interface provided in this application;
[0111] Figure 21 A schematic diagram of a method for transmitting CBR services based on a flexE interface provided in this application;
[0112] Figure 22 A schematic diagram of a first method for transmitting Ethernet services based on an Ethernet interface is provided for this application;
[0113] Figure 23 A schematic diagram of a method for transmitting CBR services based on an Ethernet interface provided in this application;
[0114] Figure 24 A schematic structural diagram of a communication device provided in this application;
[0115] Figure 25 A schematic structural diagram of a communication device provided in this application;
[0116] Figure 26 A schematic structural diagram of a communication device provided in this application;
[0117] Figure 27 A schematic structural diagram of a communication device provided in this application. DETAILED DESCRIPTION
[0118] In this application, ordinal numbers such as "1," "2," "3," "4," "first," "second," "third," and "fourth" are used to distinguish different objects and are not used to define the order of multiple objects. In addition, the terms "including" and "having" are not exclusive. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units and may also include steps or units that are not listed.
[0119] In this application, Ethernet interface and Ethernet interface are often used interchangeably, and Flexible Ethernet interface and Flexible Ethernet interface are often used interchangeably.
[0120] For the related FlexE prior art involved in this application, please refer to the relevant descriptions of the FlexE standards IA OIF-FLEXE-01.0, IA OIF-FLEXE-02.0 or IA OIF-FLEXE02.1 formulated by OIF, and the above standards are incorporated into this application by reference in their entirety.
[0121] Figure 1 The following is an example diagram of a FlexE general architecture based on the Flexible Ethernet protocol. Figure 1 As shown, a FlexE Group consists of four PHYs. A FlexE Client represents a client data stream transmitted in a specified timeslot (one or multiple timeslots) on the FlexE Group. A FlexE Group can carry multiple FlexE Clients, and a FlexE Client can correspond to one or more user service data streams (also known as MAC Clients). The FlexE Shim layer provides data adaptation and conversion from FlexE Clients to MAC Clients. FlexE supports the mapping and transmission of any number of different FlexE Clients on any group of PHYs, enabling features such as PHY bundling, channelization, and sub-rates. Multiple PHYs are combined into a FlexE Group (also called a FlexE Group), which carries one or more FlexE client data streams distributed and mapped via the FlexE Shim layer. Taking 100GE PHYs as an example, the FlexE Shim layer can divide each 100GE PHY in the FlexE Group into 20 data bearer channels with a bandwidth of 5 Gbps per slot.
[0122] Figure 2 The following diagram schematically shows the time slot allocation of a FlexE Group across four physical link interfaces (aggregating four PHYs). Figure 2 As shown in Figure 1, each PHY has 20 time slots, so the FlexE Group has 20*4 time slots. Figure 2 As shown, Figure 1Take the example of a FlexE Group including 4 PHYs, namely PHY A 1201, PHY B 1202, PHY C 1203 and PHY D 1204. The FlexE Group corresponds to a time slot allocation table (also called a calendar in English); the time slot mapping table corresponding to a single physical link included in a FlexE Group can be called a sub-time slot allocation table (also called a sub-calendar in English). The FlexE calendar can be composed of one or more sub-calendars. Each sub-calendar can indicate how the 20 time slots on the single physical link are allocated to the corresponding FlexE client. In other words, each sub-calendar can indicate the correspondence between the time slots on the single physical link and the FlexE client. Figure 2 As shown in the figure, each PHY can correspond to 20 time slots, which are represented by slot 0 to slot 19 respectively. Figure 2 Schematic diagrams showing 20 time slots corresponding to each of PHYs A 1201, PHY B 1202, PHY C 1203, and PHY D 1204 are shown.
[0123] Figure 3 Schematic diagram of the application scenario of the FlexE communication system involved in this application is shown. Figure 3 As shown, FlexE communication system 100 includes network device 1, network device 2, user device 1, and user device 2. Network device 1 can be an intermediate node, in which case network device 1 is connected to user device 1 through other network devices. Network device 1 can be an edge node, in which case network device 1 is directly connected to user device 1. Network device 1 can be an intermediate node, in which case network device 1 is connected to user device 1 through other network devices. Network device 1 can also be an edge node, in which case network device 1 is directly connected to user device 1. Network device 2 can be an intermediate node, in which case network device 2 is connected to user device 2 through other network devices. Network device 2 can also be an edge node, in which case network device 2 is directly connected to user device 2. Network device 1 includes FlexE interface 1, and network device 2 includes FlexE interface 2. FlexE interface 1 is adjacent to FlexE interface 2. Each FlexE interface includes a transmit port and a receive port. Unlike a traditional Ethernet interface, a FlexE interface can carry multiple clients, and a FlexE interface, as a logical interface, can be composed of multiple physical interfaces. Figure 3 The flow of business data in the forward channel shown in Figure 3 As shown by the solid arrow, the flow of business data in the reverse channel is as follows Figure 3Indicated by the dotted arrow in the middle, the transmission channel of the embodiment of the present invention takes the forward channel as an example, and the flow direction of service data in the transmission channel is user equipment 1 -> network equipment 1 -> network equipment 2 -> user equipment 2.
[0124] It should be understood that Figure 3 Only two network devices and two user devices are shown as an example. The network may include any other number of network devices and user devices, which is not limited in the embodiments of the present application. Figure 3 The FlexE communication system shown in the figure is only an example. The application scenarios of the FlexE communication system provided in this application are not limited to Figure 3 The technical solution provided in this application is applicable to all network scenarios that use FlexE technology for data transmission.
[0125] The following combination Figure 4 Further description Figure 3 The process shown in FIG1 shows that network device 1 and network device 2 use FlexE technology to transmit data.
[0126] like Figure 4 As shown, PHY1, PHY2, PHY3 and PHY4 are bound into a FlexE group. Network device 1 and network device 2 are connected through the FlexE group interface, that is, they are connected through FlexE interface 1 and FlexE interface 2. The above-mentioned FlexEgroup interface can also be called a FlexE interface. The FlexE group interface is a logical interface formed by binding a group of physical interfaces. The FlexE group interface carries a total of 6 clients, namely client1 to client6. Among them, the data mapping of client1 and client2 is transmitted on PHY1; the data mapping of client3 is transmitted on PHY2 and PHY3; the data mapping of client4 is transmitted on PHY3; the data mapping of client5 and client6 is transmitted on PHY4. Different FlexE clients are mapped and transmitted on the FlexE group to realize the bundling function. Among them:
[0127] FlexE group: It can also be called a bundling group. The multiple PHYs included in each FlexE group have a logical bundling relationship. The so-called logical bundling relationship means that there may be no physical connection relationship between different PHYs. Therefore, the multiple PHYs in the FlexE group can be physically independent. The network devices in FlexE can use the PHY number to identify which PHYs are included in a FlexE group to achieve logical bundling of multiple PHYs. For example, the number of each PHY can be identified by a number between 1 and 254, and 0 and 255 are reserved numbers. A PHY number can correspond to an interface on the network device. The same number must be used to identify the same PHY between two adjacent network devices. The numbers of the various PHYs included in a FlexE group do not have to be consecutive. Normally, there is one FlexE group between two network devices, but this application does not limit the existence of only one FlexE group between two network devices, that is, there can also be multiple FlexE groups between two network devices. A PHY can be used to carry at least one client, and a client can be transmitted on at least one PHY.
[0128] FlexE client: corresponds to various user interfaces or bandwidths of the network. The FlexE client can be flexibly configured according to bandwidth requirements, and supports Ethernet MAC data streams of various rates (such as 10G, 40G, n*25G data streams, and even non-standard rate data streams). For example, the data stream can be passed to the FlexE shim layer through 64B / 66B encoding. Customers sent through the same FlexE group need to share the same clock, and these customers need to adapt according to the allocated time slot rate. The FlexE client interface described in this application is used to transmit the business data stream of the corresponding FlexE client. The FlexEclient interface is a logical interface. Each FlexE interface can be logically divided into one or more FlexEclient 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 the multiple time slots.
[0129] The FlexE shim, an additional logical layer inserted between the MAC and PHY (PCS sublayer) of the traditional Ethernet architecture, is the core architecture for implementing FlexE technology using a calendar-based timeslot distribution mechanism. The FlexE shim slices data based on a common clock and encapsulates the sliced data into pre-assigned timeslots. It then maps these slots to the PHYs in the FlexE group for transmission based on a pre-configured timeslot allocation table. Each timeslot is mapped to a PHY in the FlexE group.
[0130] Calender: A timeslot allocation table, also known as a timeslot table. A FlexE Group corresponds to a calendar, and the timeslot mapping table corresponding to a single physical link (PHY) within a FlexE Group is called a sub-timeslot allocation table (sub-calendar). A FlexE calendar can consist of one or more sub-calendars. Each sub-calendar indicates how the 20 timeslots (or slots) on a single physical link are allocated to the corresponding FlexE client. In other words, each sub-calendar indicates the correspondence between timeslots on a single physical link and FlexE clients. The current standard defines two calendars in each FlexE overhead frame: the active timeslot table (Calender A) and the backup timeslot table (Calender B).
[0131] FlexE establishes a fixed frame format for physical interface transmission and divides time slots into TDM time slots. As previously mentioned, the FlexE shim layer defines overhead frames and overhead multiframes to reflect the time slot mapping relationship between the client and the FlexE group, as well as the calendar operation mechanism. It should be noted that the overhead frame described above can also be referred to as a Flexible Ethernet overhead frame (FlexE overhead frame), and the overhead multiframe can also be referred to as a Flexible Ethernet overhead multiframe (FlexE overhead multiframe). The FlexE shim layer uses the overhead to provide an in-band management channel, supporting the transmission of configuration and management information between two interconnected FlexE interfaces, enabling automatic link negotiation and establishment.
[0132] The data on each FlexE PHY is aligned by periodically inserting code blocks of the FlexE overhead frame (OH) frame. For example, one 66B overhead code block FlexE OH can be inserted every 1023 x 20 66B payload data code blocks. According to the FlexE Implementation Agreement, a FlexE Group will send a 64B / 66B code block of a FlexE overhead frame to the remote PHY at predetermined time intervals on each PHY. Eight 64B / 66B code blocks of FlexE overhead frames sent in sequence constitute a FlexE overhead frame. FlexE defines some fields on the overhead frame to carry the time slot allocation table, and synchronizes the time slot allocation table to the PHY on the remote communication device through the FlexE overhead frame to ensure that the communication devices on both ends use the same time slot allocation table to receive and send the data streams corresponding to the FlexE customers. Specifically, if Figure 5 As shown, Figure 5 The figure shows the structure of the overhead frame and overhead multiframe for 100GE interfaces as specified in the OIF IA-FLEXE-02.1 standard. An overhead frame consists of eight overhead blocks, also known as overhead slots. Each overhead block is a 64B / 66B coded block that appears every 1023 x 20 blocks, but the fields contained in each overhead block are different. In an overhead frame, the first overhead block contains a control character (0x4B) and an "O code" (0x5). During data transmission, interconnected FlexE interfaces identify the first overhead frame by matching these control characters with the "O code." An overhead multiframe consists of 32 overhead frames.
[0133] In the above, combined with Figures 1 to 5 This article introduces the FlexE general architecture based on the Flexible Ethernet protocol and the data transmission process based on existing FlexE technology. The current OIF FlexE standard defines the 50G / 100G / 200G / 400G interface framework. FlexE client interfaces of different rates are allocated N time slots within a time slot cycle. The time slot bandwidth of each time slot is 5Gbps (hereinafter referred to as 5G) granularity. Therefore, N = interface rate / 5Gbps. Taking 100G PHY as an example, Figure 6 As shown in the figure, each PHY includes 20 5G time slots. When N PHYs are bundled, there are a total of N*20 5G time slots. Therefore, the bandwidth allocated to each FlexE Client must be an integer multiple of 5G. The minimum bandwidth is 5G, that is, at least one time slot is allocated. Figure 6In this example, each time slot has a 5G bandwidth. FlexE client #1 is allocated x time slots, FlexE client #2 is allocated y time slots, and FlexE client #M is allocated z time slots. However, many low-speed services exist at the application layer, such as bank automated teller machines (ATMs). These services require very low bandwidth, perhaps only 100 Mbps. In this case, even using the smallest 5G FlexE client channel (occupying only one time slot) to carry this service would waste 4.9 GHz of bandwidth, failing to accurately meet service requirements.
[0134] To address the aforementioned technical issues, this application redefines sub-client interfaces at a smaller granularity, building upon existing FlexE interfaces or standard Ethernet physical interfaces. The interface rate of each sub-client interface can be flexibly set based on the needs of different low-rate services, minimizing bandwidth waste. Furthermore, this application also provides a sub-timeslot interleaving technology that, while fully utilizing bandwidth, performs forwarding within the device based on timeslot interleaving, effectively reducing forwarding latency.
[0135] Before introducing the various technical solutions provided by this application, in order to facilitate the understanding of the technical solutions of this application, some technical terms involved in this application are briefly introduced and explained.
[0136] Sub-timeslots: Sub-timeslots are also called low-order timeslots. They are compared to the timeslots (also called large timeslots or high-order timeslots) configured on existing FlexE client interfaces or the large bandwidth of common ETH interfaces. For standard FlexE client interfaces or common ETH interfaces, each FlexE client interface or ETH interface is divided into M sub-timeslots in the time domain. Each sub-user interface occupies at least one sub-timeslot of bandwidth for data transmission.
[0137] The FlexE sub-shim, based on the sub-timeslot distribution mechanism, slices data from the same sub-client and encapsulates the switched data as sub-timeslot payloads into pre-allocated sub-timeslots. It then maps the allocated sub-timeslots to corresponding FlexE client interfaces based on a pre-obtained sub-client sub-timeslot mapping table. Each sub-timeslot is mapped to a single FlexE client interface.
[0138] Sub-clients correspond to various sub-user interfaces or bandwidths on the network. FlexE sub-clients can be flexibly configured based on bandwidth requirements, supporting Ethernet MAC data streams of various rates (such as 10G, 40G, and n*25G data streams, and even non-standard data streams). For example, data streams can be delivered to the FlexE sub-shim layer using 64B / 66B, 64B / 65B, or 256B / 257B transcoding.
[0139] Sub-user interface: Sub-client interface. A sub-user interface can also be called a sub-timeslot interface, a low-order timeslot interface, a sub-timeslot channel, or a low-order timeslot channel. A sub-user interface is a concept relative to existing FlexE Client interfaces or standard Ethernet interfaces. Each FlexE Client interface or standard Ethernet interface is logically divided into multiple sub-user interfaces and, in the time domain, into multiple sub-timeslots. Each sub-user interface occupies at least one sub-timeslot for data transmission. The timeslot bandwidth granularity of each sub-timeslot is typically less than 5 Gbps, and can be any value between 10 Mbps and 100 Mbps, allowing it to carry more low-rate services and effectively utilize bandwidth.
[0140] The sub-client sub-slot payload is the data obtained by slicing the same sub-client data. Each slice is encapsulated as a sub-client sub-slot payload in a pre-divided sub-slot.
[0141] Sub-Client timeslot mapping table: Also known as the low-order channel timeslot allocation table, sub-client timeslot allocation table, or low-order channel timeslot mapping table. It identifies the number and positions of timeslots allocated to each sub-client sub-interface.
[0142] Base frame: A data structure provided by the present application, which is used to carry the service data streams of different sub-clients. Each base frame includes a base frame payload. The base frame payload includes a base frame overhead and a low-order time slot payload (i.e., a sub-client sub-time slot payload). In the present application, each low-order time slot payload has the same length, for example, Y bits. Each low-order time slot payload can be a plurality of 64B / 66B code blocks. In order to further improve the transmission efficiency of data, each low-order time slot payload can be a plurality of 64B / 65B code blocks or 256B / 257B code blocks, wherein the plurality of 64B / 65B code blocks or 256B / 257B code blocks can be obtained by transcoding and compressing a plurality of 64B / 66B code blocks encoded by PCS using a transcoding algorithm, and the forwarding algorithm can be, for example, 64B / 65B transcoding or 256B / 257B transcoding. The base frame overhead is used to transmit overhead information, and the overhead information can include but is not limited to one or more of the following information:
[0143] The sequence number of the base frame;
[0144] sub-client sub-timeslot mapping table;
[0145] timeslot adjustment request;
[0146] Time slot adjustment response;
[0147] Time slot effective indication;
[0148] Manage channel information;
[0149] Overhead verification information.
[0150] Among them, the base frame sequence number can be used to identify the position of the base frame in the entire multiframe, and the sub-timeslot number carried by the base frame can be known based on the position information. The sub-client sub-timeslot mapping table can be used to identify the number of time slots and time slot positions allocated to each low-order channel. The time slot adjustment request is used to send a time slot adjustment request, for example, to adjust the sub-client time slot. The time slot adjustment response is a response to the received time slot adjustment request. The time slot effective indication is used to indicate that the time slot adjustment is effective. The management message channel can be used to transmit network element management messages and can also be used to transmit sub-client sub-timeslot mapping table information. The overhead check information is used to check the base frame overhead. The check algorithm can be, but is not limited to, selecting an error detection algorithm such as CRC or BIP. The sub-client sub-timeslot payload is used to carry data of different sub-client interfaces according to the sub-client sub-timeslot mapping table. Each base frame also includes a code block for defining the base frame header and a code block for defining the base frame tail.
[0151] Figure 7A schematic diagram of a specific base frame encapsulation format provided by the present application is shown, but those skilled in the art will understand that Figure 7 It should not be understood as a limitation on the base frame encapsulation format. Figure 7 As shown in Figure 1, to be compatible with the Ethernet frame format defined by IEEE 802.3, the base frame is encapsulated using the / S / code block, / D / code block, and / T / code block. The / S / code block is used to indicate the frame header of the base frame. The / T / code block is used to indicate the frame tail of the base frame. The data field of the / D / code block (such as Figure 7 or Figure 8 The Blockpayload field shown in FIG. 1 is used to carry the base frame payload. The / I / code block can be used to perform rate adaptation on the base frame. In a specific embodiment, the format of each code block in the base frame can be, for example, as follows: Figure 8 The code block format defined by IEEE 802.3 is shown in the figure. In one specific embodiment, part or all of the block payload (BP) in the / S / code block and / or the / T / code block and the data field of the / D / code block jointly carry the base frame payload. The BP in the S code block is an optional field, and the T code can be any of the seven code blocks T0-T7.
[0152] Figure 9 This is a schematic diagram of the data structure of a sub-user interface transmission provided by this application. Figure 9 As shown, M sub-timeslots are divided in a FlexE Client interface or a common ETH interface with a bandwidth of N*5G for cyclic transmission. That is, each cycle consists of M sub-timeslots, which can also be referred to as a sub-timeslot scheduling period or a time slot scheduling period of a sub-user interface. In a specific embodiment, X base frames are evenly distributed over the M sub-timeslots, and each base frame payload carries (M / X) low-order time slots. Every X base frames can also be defined as a multiframe. In each cycle, a multiframe is transmitted. In a specific embodiment, according to the provisions for transmitting Ethernet messages, the multiframe length should be less than or equal to 9600 bytes.
[0153] In this application, each FlexE interface can be logically divided into multiple FlexE Client interfaces. A FlexE Client interface can be logically divided into multiple FlexE sub-client interfaces, and a FlexE Client interface can be divided into M sub-timeslots in the time domain. For FlexE Client interfaces with different bandwidths and different FlexE sub-client interface bandwidths, M can be flexibly configured. For example, Figure 10 The following is a schematic diagram showing a format of a multi-frame encapsulation provided by the present application. Figure 10For each 5G FlexE Client interface, it can be divided into 480 sub-timeslots (i.e., M=480) in the time domain. In each time slot scheduling cycle of a FlexE Client interface (480 sub-timeslots constitute a time slot scheduling cycle), 20 base frames, i.e., a multiframe, are evenly distributed. In this application, the English name of the base frame is fgDu. Each base frame contains 24 sub-timeslots. In a specific embodiment, each sub-timeslot payload can contain 8 66b compressed code blocks. For a base frame, plus / S / , / OH / code blocks, and / T / code blocks for encapsulation, a base frame can contain 197 66B code blocks. Among them, in order to adapt the rate, / I / code blocks can be added between base frames, or some / I / code blocks can be used to replace the OAM code blocks transmitted in the FlexEclient interface. The / I / code block is an idle code block, which is used for MAC layer rate adaptation.
[0154] As a specific implementation method, Figure 11 A schematic diagram illustrating a format of a multiframe provided in this application is shown. Figure 11 Can be used for Figure 10 The multiframe structure shown is further explained. Figure 11 The small particle time slot 1 to the small particle time slot 480 described in correspond to the sub-time slot 1 to the sub-time slot 480 respectively.
[0155] like Figure 11 As shown in Figure 1, a multiframe includes 480 sub-time slots, each base frame includes 24 sub-time slots, and each sub-time slot includes 8 66B compressed code blocks, that is, 8 65B code blocks. The code block compression process is as follows: Figure 11 As shown, after the OAM code blocks are periodically inserted into the 66B code block stream, code block compression is performed. After compression, each sub-time slot includes 8 65B code blocks. In a specific implementation, part of the fields in the base frame overhead can be used to carry data. For example, if the base frame overhead only requires 56 bits, the remaining 8 bits of each base frame overhead can be used to carry data. In a specific implementation, the first field in the code block used to identify the end of the frame can be used to indicate the end of the frame, and the second field is used to carry data. For example, Figure 11 The control symbol in the T code block shown in indicates the frame end, and the BP field in the T code block can be used to carry data, that is, the 56 bits in the T code block can be used to carry data. Therefore, as an example, Figure 11 As shown, the bits used to carry service data in the base frame = 24*(8*65b) = 12480b = 8b (the remaining 8 bits in the OH) + 194*64b + 56b (56 bits in the T code block).
[0156] The following combination Figure 12The present application provides a method 100 for obtaining a sub-client sub-timeslot payload of an Ethernet service, which includes: obtaining an Ethernet service data stream from a PCS; slicing the first Ethernet service data stream to obtain multiple Ethernet service slices; and using the multiple Ethernet service slices as the multiple sub-client sub-timeslot payloads. As a specific example, in combination with Figure 12 S101-S103 specifically describe how to obtain the Ethernet service data stream, and in conjunction with S104 describe how to slice the Ethernet service data stream to obtain the multiple sub-user sub-client sub-timeslot payloads.
[0157] S101: The PCS encodes the MAC layer Ethernet message.
[0158] As a specific implementation method, Figure 12 As shown in the figure, referring to the Ethernet layered model defined by IEEE 802.3, each low-order channel (i.e., each sub-client interface) is treated as an independent port and divided into the MAC layer and the PCS. The MAC layer performs service message encapsulation and checksum processing, while the PCS performs 64B / 66B encoding on the MAC layer messages (i.e., the Ethernet service data stream) according to the 802.3 encoding method. The encoded code block stream includes S blocks, D blocks, T blocks, and I blocks (also known as idle blocks). The code block format complies with the standard code block format defined by IEEE 802.3.
[0159] S102: Insert the low-order channel layer OAM code block into the PCS-encoded code block stream to obtain the Ethernet service data stream. The OAM code block is used to transmit OAM information. For example, the OAM code block can be inserted by selecting adjacent / I / code blocks after a certain interval (such as 3.3ms) or a certain number of code blocks (such as 500).
[0160] In a specific implementation, the OAM information may be, for example, an OAM message, and reference may be made to the MTN channel layer OAM format defined in the ITU G.MTN standard.
[0161] S103: Optionally, transcode and compress the 64B / 66B code block stream after the OAM message is inserted.
[0162] In a specific implementation, the compressed code block stream includes multiple 64B / 65B code blocks. In a specific implementation, the compressed code block stream includes multiple 256B / 257B code blocks.
[0163] Transcoding and compressing the code block stream can improve the data carrying efficiency of the low-order channel. The transcoding algorithm can use 256B / 257B transcoding. Figure 12Only 64B / 65B transcoding is shown in the figure. The 256B / 257B transcoding is similar and will not be described in detail.
[0164] S104: The Ethernet service data stream (or code block stream) is sliced according to the payload length (Y bits) of each sub-client sub-timeslot. The payload length of each sub-client sub-timeslot can be Z 64B / 66B code blocks. If transcoding and compression are performed, the payload length can also be Z transcoded 64B / 65B code blocks or Z 256B / 257B transcoded code blocks. Both Y and Z are integers.
[0165] Each slice obtained by the slicing operation in S104 is encapsulated as a sub-client sub-timeslot payload into a base frame Payload. The base frame payload and the related formats of the base frame are described above and will not be repeated here.
[0166] The following combination Figure 13 A method 200 for obtaining a sub-client sub-timeslot payload of a constant bit rate (CBR) provided by the present application is introduced.
[0167] S201. Slice the CBR service data stream to obtain multiple CBR service slice data. The first CBR service data stream includes multiple CBR service frames.
[0168] Slicing of CBR service data streams includes but is not limited to the following two modes:
[0169] Mode 1: Bit transparent slicing mode.
[0170] In bit-transparent slicing mode, service frame content is not identified and slicing is performed according to a fixed number of bits (e.g., i bits).
[0171] Mode 2: Frame slicing mode.
[0172] The frame slicing mode requires identifying the service frame format and slicing according to a fixed number of frames (such as j frames).
[0173] S202. Slice and encapsulate the multiple CRB business slice data respectively to obtain multiple CBR business slices, each of the CBR business slices including the CBR business slice data and encapsulation information.
[0174] In a specific embodiment, each CBR service slice includes multiple fields, which are used to carry CBR service slice data and encapsulation information respectively.
[0175] In a specific implementation, the CBR service slice includes a first field for carrying the CBR service slice data.
[0176] In a specific implementation, the encapsulation information includes any one or more fields from the second field to the seventh field, which are used to carry different encapsulation information.
[0177] The second field is used to carry clock frequency information. The clock frequency information may include information such as a timestamp, etc., and is used to transmit clock information of the service.
[0178] The third field is used to carry operation, management and maintenance (OAM) information.
[0179] The fourth field is used to carry the serial number of the CBR business slice; the serial number of the CBR business slice can be used for slice reorganization, and the serial number of the CBR business slice can also be used for slice loss detection or lossless protection.
[0180] The fifth field is used to carry payload length information, and the payload length information is the effective length of the CBR service slice data carried in each of the CBR service slices.
[0181] The sixth field is a padding field. However, when the service slice is smaller than the sub-time slot payload length after encapsulation, the padding field can be used for data filling.
[0182] The seventh field is used to carry check information. The check information can be used to perform error checking on the slice data, but the present application is not limited to including the check information in the slice. The check function can also be performed in other ways, such as using OAM for check.
[0183] S203. Obtain the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices.
[0184] In a specific embodiment, the multiple CBR service slices can be directly used as the multiple sub-client sub-timeslot payloads, that is, the length of each CBR service slice obtained after encapsulation is the same as the length of each sub-client sub-timeslot payload, for example, both are Y bits. Figure 14 A specific example is given to illustrate this method.
[0185] In another specific embodiment, obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes:
[0186] Perform Ethernet message encapsulation on the multiple CBR service slices to obtain a second data stream, where the second data stream includes multiple code blocks;
[0187] The second data stream is sliced according to the length of each sub-client sub-timeslot payload to obtain the multiple sub-client sub-timeslot payloads. Figure 15 This embodiment will be described with specific examples.
[0188] Figure 14 A schematic diagram of a method for obtaining a CBR service sub-client sub-timeslot payload provided by the present application is shown. The method 1400 can be used to specifically implement the method 200. The method includes:
[0189] S1401. Slice the CBR service data. Obtain multiple CBR service slice data, corresponding to Figure 14 The slicing mode uses Mode 1 or Mode 2 introduced above.
[0190] S1402. Encapsulate each service slice data. The encapsulated slice length is the same as the low-order time slot payload length (e.g., Y bits). The encapsulation information includes one or more of the following information:
[0191] OAM information (optional) is used for CBR low-order path layer fault detection and protection operations.
[0192] Serial number (optional).
[0193] Clock frequency information is used to transmit service clock information (such as timestamp).
[0194] Payload length and padding are optional. If the service slice is smaller than the low-order time slot payload length after encapsulation, data padding is required and the effective payload length is marked.
[0195] The check field is optional and is used to perform error checking on the slice data. This check function can also be checked through OAM.
[0196] S1403. Use the sliced data as a sub-client sub-timeslot payload.
[0197] Figure 15 A schematic diagram of a method for obtaining a sub-client sub-timeslot payload of a CBR service provided by the present application is shown. The method 1500 can be used to specifically implement the method 200. The method 1500 includes:
[0198] S1501. Slice the CBR service data to obtain multiple CBR service slice data corresponding to Figure 15The service slice shown in . The slicing mode adopts mode 1 or mode 2 introduced above.
[0199] S1502. Encapsulate the slice data block.
[0200] Packaging information includes one or more of the following:
[0201] OAM information (optional) is used for CBR low-order path layer fault detection and protection operations.
[0202] Serial number (optional).
[0203] Clock frequency information is used to transmit service clock information (such as timestamp).
[0204] Payload length and padding are optional. If the service slice is smaller than the low-order time slot payload length after encapsulation, data padding is required and the effective payload length is marked.
[0205] The check field is optional and is used to perform error checking on the slice data. This check function can also be checked through OAM.
[0206] S1503. Encapsulate the encapsulated CBR service slice into an Ethernet message and add a frame boundary (for example, Figure 15 / S / code blocks and / T / code blocks shown) and interframe gap encapsulation (e.g., Figure 15 The / I / code block shown in the figure) is used to obtain an encoded Ethernet code block stream. Each encapsulated CBR service slice is used as a data code block of the Ethernet data stream. The specific operation of this step is similar to the existing Ethernet message processing and is not repeated here.
[0207] S1504: Insert a low-order path layer OAM code block into the PCS-encoded Ethernet code block stream. The OAM code block is used to transmit OAM information.
[0208] In a specific implementation, the OAM information may be, for example, an OAM message, and reference may be made to the MTN channel layer OAM format defined in the ITU G.MTN standard.
[0209] S1505. Optionally, transcode and compress the 64B / 66B code block stream after the OAM message is inserted.
[0210] In a specific implementation, the compressed code block stream includes multiple 64B / 65B code blocks. In a specific implementation, the compressed code block stream includes multiple 256B / 257B code blocks.
[0211] Transcoding and compressing the code block stream can improve the data carrying efficiency of the low-order channel. The transcoding algorithm can use 256B / 257B transcoding. Figure 12Only 64B / 65B transcoding is shown in the figure. The 256B / 257B transcoding is similar and will not be described in detail.
[0212] S1506. The Ethernet service data stream (or block stream) with the OAM code blocks inserted is sliced according to the payload length (Y bits) of each sub-client sub-timeslot. The payload length of each sub-client sub-timeslot can be Z 64B / 66B code blocks. If transcoding and compression are performed before slicing, it can also be Z transcoded 64B / 65B code blocks or Z 256B / 257B transcoded code blocks. Both Y and Z are integers.
[0213] Each slice obtained by the slicing operation in S1056 will be encapsulated into the base frame Payload as a sub-client sub-timeslot payload. The base frame payload and the related formats of the base frame are described above and will not be repeated here.
[0214] The above describes the encapsulation format and encapsulation process of the base frame provided by this application, and also introduces the method for obtaining the sub-client sub-timeslot payload of the Ethernet service or the sub-client sub-timeslot payload of the CBR service. Figure 16 A method 1600 for transmitting data provided in this application is introduced. The method is performed by a first communication device, the first communication device including a first interface, and the method includes:
[0215] S1601. Generate a first data stream, where the first data stream includes multiple data code blocks.
[0216] Specifically, the multiple data code blocks include multiple first base frames, each first base frame includes a base frame payload, the base frame payload includes a base frame overhead and multiple sub-user sub-client sub-timeslot payloads, the multiple sub-client sub-timeslot payloads include multiple first sub-client sub-timeslot payloads, and the multiple first sub-client sub-timeslot payloads include service data of a first sub-client interface.
[0217] S1602. Send the first data stream through the first interface.
[0218] In S1602, the encapsulation format and encapsulation process of each base frame are described in detail above and will not be repeated here.
[0219] In one specific embodiment, the first interface is divided into M sub-timeslots in the time domain. M is an integer greater than 1. To carry more low-rate services, the time slot bandwidth of each of the M sub-timeslots is P. Preferably, P < 5 Gbp / s, more preferably, P < 1 Gbp / s, and even more preferably, P < 500 Mbps. To carry services such as ATM machines, P is preferably < 100 Mbps. The specific value of M can be found in the above description and will not be elaborated here.
[0220] In a specific embodiment, the first interface is logically divided into Z sub-client interfaces, and the Z sub-client interfaces include the first sub-client interface.
[0221] In a specific embodiment, the first interface is a first Flexible Ethernet client interface. The first communication device further includes a first FlexE interface on the sending side. S1602 specifically includes:
[0222] The first data stream is sent through the first FlexE interface according to a time slot mapping relationship between the first FlexE client interface and the first FlexE interface, wherein the first FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the first FlexE client interface.
[0223] In a specific embodiment, when the first interface is a first FlexE client interface,
[0224] In a specific embodiment, the first interface is an Ethernet interface.
[0225] In a specific implementation, the first data stream is used to carry Ethernet services.
[0226] In a specific implementation, when the first data stream is used to carry an Ethernet service, generating the first data stream in S1601 includes:
[0227] Obtain the first Ethernet service data stream from the PCS;
[0228] Slicing the first Ethernet service data flow to obtain multiple Ethernet service slices;
[0229] The multiple Ethernet service slices are used as the multiple sub-user sub-client sub-timeslot payloads and encapsulated in the base frame payload.
[0230] The specific implementation of the above steps can be combined with Figure 12 , refer to the detailed description of method 100 above. No further details will be given here.
[0231] In a specific implementation, the first data flow is used to carry a CBR service.
[0232] When the first data stream is used to carry a CBR service, generating the first data stream in S1601 includes:
[0233] In a specific embodiment, the method 1600 further includes: slicing the first CBR service data stream to obtain a plurality of CBR service slice data, wherein the first CBR service data stream includes a plurality of CBR service frames;
[0234] Slice and encapsulate the multiple CRB service slice data respectively to obtain multiple CBR service slices, each of the CBR service slices including the CBR service slice data and encapsulation information;
[0235] Obtaining, according to the multiple CBR service slices, the multiple sub-user sub-client sub-timeslot payloads;
[0236] The multiple sub-user sub-client sub-timeslot payloads are encapsulated in the base frame payload.
[0237] In a specific embodiment, the slice granularity of each of the CBR service slices is i bits, and the contents of the multiple CBR service frames are not identified when slicing the first CBR service data stream, where i is an integer.
[0238] In a specific implementation, the slice granularity of each of the CBR service slices is j complete CBR service frames, where j is an integer greater than or equal to 1.
[0239] In a specific embodiment, the CBR service slice includes a first field for carrying the CBR service slice data.
[0240] In a specific implementation, the encapsulation information includes a second field, and the second field is used to carry clock frequency information.
[0241] In a specific implementation, the encapsulation information includes a third field, and the third field is used to carry operation, administration and maintenance (OAM) information.
[0242] In a specific embodiment, the encapsulation information includes a fourth field, and the fourth field is used to carry the serial number of the CBR service slice.
[0243] In a specific embodiment, the serial number of the CBR service slice is used for slice reassembly.
[0244] In a specific embodiment, the encapsulation information includes a fifth field, and the fifth field is used to carry payload length information, and the payload length information is the effective length of the CBR service slice data carried in each of the CBR service slices.
[0245] In a specific implementation, the encapsulation information includes a sixth field, and the sixth field is a padding field.
[0246] In a specific implementation, the encapsulation information includes a seventh field, and the seventh field is used to carry verification information.
[0247] In a specific embodiment, obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes:
[0248] Perform Ethernet message encapsulation on the multiple CBR service slices to obtain a second data stream, where the second data stream includes multiple code blocks;
[0249] The second data stream is sliced according to the length of each sub-user sub-client sub-timeslot payload to obtain the multiple sub-user sub-client sub-timeslot payloads.
[0250] In a specific embodiment, the second data stream includes multiple 64B / 66B code blocks or multiple 64B / 65B code blocks or multiple 256B / 257B code blocks.
[0251] In a specific implementation, the first data stream includes multiple OAM code blocks for carrying OAM information.
[0252] In a specific embodiment, obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes:
[0253] Each of the CBR service slices is directly used as a sub-user sub-client sub-timeslot payload.
[0254] In a specific embodiment, the first data stream includes multiple 64B / 66B code blocks or multiple 64B / 65B code blocks or multiple 256B / 257B code blocks.
[0255] It should be noted that the specific process of slicing, encapsulating and obtaining the multiple sub-user sub-client sub-timeslot payloads for the CBR service data stream can be found in the above description. Figures 13 to 15The corresponding descriptions in method 200, method 1400 and method 1500 are not repeated here.
[0256] In a specific embodiment, the method further includes: the first communication device receiving a first sub-client sub-timeslot mapping table sent by the second communication device, the first sub-client sub-timeslot mapping table being used to indicate a first mapping relationship between the M sub-timeslots and the Z sub-client interfaces, each of the sub-client interfaces being mapped to at least one sub-timeslot of the M sub-timeslots;
[0257] The first sub-client sub-slot mapping table is saved.
[0258] In a specific embodiment, the first sub-client sub-timeslot mapping table indicates the first mapping relationship by mapping Z sub-user identifiers sub-client IDs and M sub-timeslot identifiers sub-slot IDs, wherein the Z sub-client IDs are respectively used to indicate the Z sub-client interfaces, and the M sub-slot IDs are respectively used to indicate the M sub-timeslots.
[0259] In a specific embodiment, the second communication device may be a control and management device or a forwarding device that communicates data with the first communication device. The control and management device may be, for example, a network management system or a controller. The forwarding device may be, for example, a forwarding device such as a router, a switch, a firewall, a packet transmission network (PTN) device, or a single board in a network device.
[0260] In a specific embodiment, the first sub-client sub-timeslot mapping table is carried in the base frame overhead, or the first sub-client sub-timeslot mapping table is carried in a designated sub-timeslot of the M sub-timeslots.
[0261] In one specific embodiment, the sub-client sub-timeslot mapping table provided herein includes sub-timeslot numbers and sub-client numbers. Each sub-client can be mapped to multiple sub-timeslots. This mapping can also be understood as configuration or occupation. That is, each sub-client transmits data via the mapped sub-timeslots. The transmitting and receiving ends of the communication transmit and recover (or demap) the data transmitted in the corresponding sub-timeslots according to the same sub-client sub-timeslot mapping table.
[0262] The following combination Figure 17 and Figure 18The following is an exemplary description of a method flow for a first communication device to obtain a first sub-client sub-slot mapping table.
[0263] Figure 17 The following is a schematic diagram showing a method for configuring a sub-client sub-time slot mapping table based on a control management device provided by the present application. Figure 17 As shown, at the receiving end and the sending end of the communication, both are configured by the control management device respectively.
[0264] Figure 18 The following is a schematic diagram of a method for configuring a sub-client sub-time slot mapping table based on a data path provided by the present application. Figure 17 As shown, the control and management device only configures the sub-client sub-time slot mapping table of the sending end, and the sending end transmits it to the receiving end through the data path. The data path can use the time slot table transmission channel defined in the base frame overhead to transmit the sub-client sub-time slot mapping table, or specify a specific sub-time slot among the M sub-time slots for transmission. If it is a FlexE interface, the sub-client sub-time slot mapping table can also be transmitted through the FlexE overhead. This application does not impose specific restrictions on the method of transmitting the sub-client sub-time slot mapping table with the data path.
[0265] for Figure 17 In the corresponding method, the first communication device can be a transmitting device or a receiving device. Figure 18 In the corresponding method, the first communication device serves as a receiving device.
[0266] In a specific embodiment, the first sub-client interface is mapped to W sub-timeslots of the first interface, and generating the first data stream includes:
[0267] The multiple first sub-client sub-timeslot payloads are mapped to the W sub-timeslots respectively, where W is an integer greater than 1.
[0268] In a specific embodiment, mapping the plurality of first sub-client sub-timeslot payloads to the W sub-timeslots respectively includes:
[0269] The W sub-timeslots are scheduled sequentially based on a time slot scheduling period of the first interface according to a mapping relationship between the first sub-client interface and the W sub-timeslots. The mapping relationship between the first sub-client interface and the W sub-timeslots may be determined based on the first sub-client sub-timeslot mapping table.
[0270] In a specific embodiment, the first communication device includes a second sub-client interface on the receiving side, and generating the first data stream includes:
[0271] obtaining a plurality of second sub-client sub-timeslot payloads of the second sub-client interface,
[0272] processing the plurality of second sub-client sub-slot payloads based on a sub-slot cross-relationship between the second sub-client interface and the first sub-client interface to obtain the plurality of first sub-client sub-slot payloads;
[0273] The multiple first sub-client sub-timeslot payloads are encapsulated in the base frame payload.
[0274] The specific implementation of this embodiment can be found in the following Figure 20-23 Specific description of the middle time slot cross-connect device NE2.
[0275] In a specific embodiment, obtaining a plurality of second sub-client sub-timeslot payloads of the second sub-client interface includes:
[0276] Obtain a third data stream of a second interface on the receiving side, and demap the plurality of second sub-client sub-timeslot payloads from the third data stream according to a second sub-client sub-timeslot mapping table, wherein the second interface is divided into A sub-timeslots in the time domain and is logically divided into B sub-client interfaces, the B sub-client interfaces including the second sub-client interface, and the second sub-client sub-timeslot mapping table is used to indicate a second mapping relationship between the A sub-timeslots and the B sub-client interfaces, where A and B are both integers.
[0277] The third data stream corresponds to Figure 20-23 The high-order channel in the middle timeslot cross-connect device NE2 is the data stream obtained from a client interface or an Ethernet interface.
[0278] In a specific implementation, the second interface is an Ethernet interface.
[0279] In a specific embodiment, the second interface is a second FlexE Cilent interface.
[0280] In a specific embodiment, the first communication device further includes a second FlexE interface on the receiving side, and obtaining the third data stream includes:
[0281] Acquire a fourth data flow of the second FlexE interface, where the second FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the second FlexE client interface;
[0282] According to the time slot mapping relationship between the second FlexE client interface and the second FlexE interface, the third data stream is demapped from the fourth data stream, where the third data stream includes multiple second base frames, and the multiple second base frames include the multiple second sub-client sub-time slot payloads.
[0283] The second FlexE interface can be, for example, Figure 20 or Figure 21 The fourth data flow is the data flow obtained by the FlexE interface on the receiving side. The third data flow shown can be, for example, Figure 21 or Figure 22 The data flow corresponding to the high-order channel client-1 is shown in FIG.
[0284] The following combination Figure 19 The specific method 1900 for sending the first data stream through the first interface in the method 1600 provided in this application is illustrated as an example.
[0285] S1901: Schedule M sub-timeslots sequentially. A first interface (FlexE Client interface or a common ETH interface) configures a TDM timeslot scheduler at the transmitting end through the FlexE sub-shim layer to schedule the M sub-timeslots sequentially. The TDM timeslot scheduler performs cyclic scheduling, with the M sub-timeslots divided by the first interface as a timeslot scheduling period.
[0286] S1902: Mapping the plurality of different sub-client sub-slot payloads included in the first data stream to sub-slots corresponding to the corresponding sub-client interfaces based on a first sub-client sub-slot mapping table according to the order of sub-slot scheduling.
[0287] S1903: Base frame encapsulation. In a specific implementation, X base frames are evenly distributed every M sub-time slots. Base frame encapsulation is performed once every M / X sub-time slots are scheduled. The base frame encapsulation process is described above and will not be repeated here.
[0288] S1904: Send the first data stream including multiple base frames through the first interface.
[0289] In the above method 1600, since the sub-timeslot payload and base frame overhead of each sub-client are encapsulated in the payload of the base frame, and are encapsulated in the / D / code block as data code blocks during Ethernet service mapping, even ordinary Ethernet interfaces that do not support the standard FlexE mode can be isolated in the interface time slot bandwidth based on the method provided by this application. The method provided by this application, by reconstructing the format of the base frame, can achieve further flexible configuration of small bandwidths of various rates in a large bandwidth, whether it is an Ethernet interface or a flexible Ethernet interface. For low-rate services of different rates, a variety of flexible bandwidth allocation schemes can be provided. The utilization efficiency of the bandwidth is greatly improved.
[0290] In method 1600, the first interface can be an Ethernet interface or a flexible Ethernet interface, which can be used to carry ordinary Ethernet services or CBR services. The application scenarios of the technical solution are very wide. Figure 20-23 The application scenario of method 1600 is described with specific examples. Figure 20 The diagram shows a flow chart of a method for transmitting Ethernet services based on a flexE interface. Figure 21 The figure shows a flow chart of a method for transmitting CBR services based on a flexE interface. Figure 22 A schematic flow chart of a method for transmitting Ethernet services based on an Ethernet interface is shown. Figure 23 The diagram shows a method for transmitting CBR services based on Ethernet interface. Figures 20 to 23 In the present application, the first communication device may be Figure 20-24 The source end service access device NE1, the intermediate time slot cross device NE2 or the sink end service sending device NE3 shown in any of the figures. The first communication device can also be a single board in the source end service access device NE1, the intermediate time slot cross device NE2 or the sink end service sending device NE3, for executing Figures 20 to 23 One or more operations in the corresponding method.
[0291] The following combination Figure 20 , briefly introduces the method of transmitting Ethernet services based on flexE interface. Figure 20 As shown, in a network based on FlexE for communication, there are three types of equipment: source-end service access equipment NE1, mid-time slot cross-connect equipment NE2 and sink-end service sending equipment NE3.
[0292] Source service access device NE1: The receiving side is an Ethernet interface, and the sending side is a FlexE port. The receiving side port receives the Ethernet message, first completes the packet layer service processing (such as VLAN, IP, MPLS, SR, etc.), and then maps different service flows to the corresponding low-order channels (i.e., the sub-Client interface described in this application) according to the Ethernet timeslot mapping process. Figure 20 , and then loaded into the high-order channel (i.e., the FlexE Client interface described in this application, corresponding to Figure 20 The above process can be seen in the following sections: Client 1-1…Client 1-n) and finally sent out from the FlexE interface. Figure 12 The corresponding method 100 first generates each sub-Client sub-time slot payload, and then based on Figure 19 The corresponding method uses the sub-client sub-timeslot mapping table and the TDM timeslot scheduler to map the payload of each sub-client sub-timeslot to the sub-timeslot corresponding to each sub-client. The packets are then encapsulated into the corresponding base frame and sent out of the corresponding Flex-client interface. The mapping process between each Flex-client interface and the corresponding FlexE interface is part of the existing implementation and will not be further described here.
[0293] Intermediate timeslot cross-connect device NE2: Both the receiving and sending sides are FlexE interfaces. First, the received FlexE high-order channel (i.e., the FlexE Client interface described in this application, corresponding to Figure 20 Client 1-1 ... Client 1-n) shown in FIG, demaps the low-order channel (ie, the sub-Client interface described in this application) according to the sub-client sub-timeslot table. Figure 20 The sub-client 1-1 ... sub-client 1-m) time slots shown in the figure are then crossed to the egress low-order channel (i.e., the sub-Client interface described in this application). Figure 20 In the sub-client 2-1 ... sub-client 2-m shown in FIG, the egress low-order channel (i.e., the FlexE Client interface described in this application, corresponding to Figure 20 Client 2-1…Client 2-n) are then loaded onto the higher-order channel and sent out from the sending-side FlexE interface.
[0294] On NE2, the low-order timeslot interleaving is based on the second sub-client interface on the receiving side (e.g., Figure 20 NE2 device in the sub-client 1-1) and the first sub-client interface on the sending side (for example, Figure 20The sub-slot cross relationship between the sub-clients 2-1) shown in FIG is used to process the multiple second sub-client sub-slot payloads in the second sub-client interface to obtain the multiple first sub-client sub-slot payloads of the first sub-client interface, and then perform base frame encapsulation.
[0295] The sink-side service sending device, NE3, has a FlexE port on the receiving side and an Ethernet port on the sending side. It first demaps the low-order channel timeslots from the received FlexE high-order channel according to the sub-client sub-timeslot mapping table. Then, it uses the Ethernet timeslot demapping process to restore the Ethernet message. After packet layer service processing, the message is sent out from the sending Ethernet port.
[0296] The following combination Figure 21 , briefly introduces the method of transmitting CBR services based on flexE interface. Figure 21 As shown, in a network based on FlexE for communication, there are three types of equipment: source-end service access equipment NE1, mid-time slot cross-connect equipment NE2 and sink-end service sending equipment NE3.
[0297] Source service access device NE1: The receiving side is a CBR service interface such as E1 / E3 / T1 / T3 / STM-N / FC, and the sending side is a FlexE interface. After receiving the CBR service bit stream, the receiving side port Figure 13 or Figure 14 or Figure 15 Any of the methods described herein obtains a CBR service sub-cient sub-timeslot payload, and maps different CBR service flows corresponding to the obtained multiple CBR service sub-cient sub-timeslot payloads to corresponding low-order channels (i.e., the sub-Client interface described in this application, Figure 21 , and then loaded into the high-order channel (i.e., the FlexEClient interface described in this application, corresponding to Figure 20 Client 1-1...Client 1-n) shown in the figure is sent from the FlexE interface. Specifically, it can be based on Figure 19 The corresponding method uses the sub-client sub-timeslot mapping table and the TDM timeslot scheduler to map the sub-client sub-timeslot payload of each CBR service to the sub-timeslot corresponding to each sub-client. The service is then encapsulated into the corresponding base frame and sent out of the corresponding Flex-client interface. The mapping process between each Flex-client interface and the corresponding FlexE interface is part of the existing implementation and will not be further described here.
[0298] Intermediate time slot crossover equipment: and Figure 20 The inter-slot crossover equipment shown is the same and will not be described again here.
[0299] The sink-side service transmission device has a FlexE interface on the receiving side and a CBR service interface (such as I / E3 / T1 / T3 / STM-N / FC) on the transmitting side. The device demaps the low-order channel timeslots from the received FlexE high-order channels according to the timeslot table. The CBR timeslot demapping process is then followed to restore the CBR service bitstream. The CBR service bitstream is then transmitted from the transmitting-side CBR service interface.
[0300] When transmitting CBR services on the FlexE interface, the process of slicing, encapsulating, and encapsulating the CBR services in base frames is described above and will not be repeated here.
[0301] The following combination Figure 22 , briefly introduces the method of transmitting Ethernet services based on Ethernet interface.
[0302] Figure 22 In the network based on FlexE for communication, there are three types of equipment: source-end service access equipment NE1, intermediate time slot switching equipment NE2 and sink-end service sending equipment NE3.
[0303] Figure 22 and Figure 20 The main difference is that the network-side interface is a common Ethernet interface instead of a FlexE interface.
[0304] Source service access device NE1: The receiving side is an Ethernet interface, and the sending side is an Ethernet interface. The receiving side port receives the Ethernet message and first completes the packet layer service processing (such as VLAN, IP, MPLS, SR, etc.), according to Figure 12 The corresponding method obtains the sub-slot payload of multiple sub-clients. Then based on Figure 19 The method shown performs time slot mapping on the sub-time slot payloads of the multiple sub-clients according to the sub-client sub-time slot mapping table, and after base frame encapsulation, sends them from the corresponding Ethernet interface.
[0305] Intermediate timeslot cross device NE2: The receiving side and the sending side are both Ethernet interfaces. First, the low-order channel (that is, the sub-Client interface described in this application) is mapped out from the Ethernet interface according to the sub-client sub-timeslot table. Figure 22 The sub-time slots of sub-client 1-1 ... sub-client 1-m) shown in the figure are then crossed to the egress low-order channel (i.e., the sub-Client interface described in this application). Figure 22Then based on the sub-client 2-1...sub-client 2-m shown in Figure 19 The method shown performs time slot mapping on the sub-time slot payloads of the multiple sub-clients according to the sub-client sub-time slot mapping table, and after base frame encapsulation, sends them from the corresponding Ethernet interface.
[0306] On NE2, the low-order timeslot interleaving is based on the second sub-client interface on the receiving side (e.g., Figure 22 NE2 device in the sub-client 1-1) and the first sub-client interface on the sending side (for example, Figure 22 The sub-slot cross relationship between the sub-clients 2-1) shown in FIG is determined, and the multiple second sub-client sub-slot payloads in the second sub-client interface are processed to obtain the multiple first sub-client sub-slot payloads of the first sub-client interface, and then the base frame encapsulation is performed.
[0307] The sink-side service transmitting device, NE3, has an Ethernet interface on both the receiving and transmitting sides. The low-order channel timeslots are first demapped from the receiving Ethernet interface according to the sub-client timeslot mapping table. Ethernet packets are then restored using the Ethernet timeslot demapping process. After packet layer service processing, these packets are sent out from the transmitting Ethernet port.
[0308] The following combination Figure 23 , briefly introduces the method of transmitting CBR services based on Ethernet interface.
[0309] Figure 23 In the network based on FlexE for communication, there are three types of equipment: source-end service access equipment NE1, intermediate time slot switching equipment NE2 and sink-end service sending equipment NE3.
[0310] Source service access device: The receiving side is E1 / E3 / T1 / T3 / STM-N / FC and other CBR service interfaces, and the sending side is Ethernet interface. Figure 13 or Figure 14 or Figure 15 Any of the methods described herein obtains a CBR service sub-cient sub-timeslot payload, and maps different CBR service flows corresponding to the obtained multiple CBR service sub-cient sub-timeslot payloads to corresponding low-order channels (i.e., the sub-Client interface described in this application, Figure 23 In the sub-client 1-1...sub-client 1-m shown in the figure, then based on Figure 19The method shown performs time slot mapping on the sub-time slot payloads of the multiple sub-clients according to the sub-client sub-time slot mapping table, and after base frame encapsulation, sends them from the corresponding Ethernet interface.
[0311] Intermediate time slot crossover equipment: and Figure 22 The middle time slot crossover equipment is the same as that of the 1000 series. Detailed description is omitted here.
[0312] The sink-side service transmission device has a flexible Ethernet interface on the receiving side and a CBR service interface (such as I / E3 / T1 / T3 / STM-N / FC) on the transmitting side. The low-order channel timeslots are first demapped from the receiving Ethernet interface according to the sub-client timeslot mapping table. The CBR timeslot demapping process is then followed to restore the CBR service bitstream. The CBR service bitstream is then transmitted from the transmitting CBR service interface.
[0313] The following combination Figure 24 , a communication device 700 provided in an embodiment of the present application is introduced. The communication device 700 can be applied to Figure 3 In the network architecture shown. For example, the communication device 700 can be the network device 1 (TX) or the network device 2 (RX) described in this application, and the communication device 700 can also be the first communication device or the second communication device described in this application. The first communication device and the second communication device described in this application can be an integral network device, or a single board in the network device 1, such as an interface board or a line card or a dumb board or a centralized cross board. The communication device 800 can also be the control management device described in this application, performing various operations performed by the control management device. The communication device 700 is used to perform the aforementioned Figure 6-Figure 23 The method of the embodiment corresponding to any of the figures. The communication device 700 includes a transceiver unit 701 and a processing unit 702. The transceiver unit 701 is used to perform transceiver operations, and the processing unit is used to perform operations other than transceiver operations. For example, when the communication device 700 is used as a first communication device to perform Figure 16 In the method 1600 shown, the processing unit 702 is used to generate the first data stream, and the transceiver unit 701 can be used to send the first data stream.
[0314] The following combination Figure 25 , another communication device 800 provided in an embodiment of the present application is introduced. The communication device 800 can be applied to Figure 3In the network architecture shown. For example, the communication device 800 can be the network device 1 (TX) or the network device 2 (RX) described in this application, and the communication device 800 can also be the first communication device or the second communication device described in this application. The communication device 800 can also be the control management device described in this application, performing various operations performed by the control management device. The first communication device and the second communication device described in this application can be an integral network device, or a single board in the network device 1, such as an interface board or a line card or a dumb board or a centralized cross board. The communication device 800 is used to perform the aforementioned Figure 6-Figure 23 The method of the embodiment corresponding to any of the figures. The network device 800 includes a communication interface 801 and a processor 802 connected to the communication interface. The communication interface 801 is used to perform transceiver operations, and the processor 802 is used to perform operations other than transceiver operations. For example, when the communication device 800 is used as the first communication device to perform Figure 16 In the method 1600 shown, the processor 802 is used to generate the first data stream, and the communication interface 801 can be used to send the first data stream.
[0315] The following combination Figure 26 , another communication device 900 provided in an embodiment of the present application is introduced. The communication device 900 can be applied to Figure 3 In the network architecture shown. For example, the communication device 900 can be the network device 1 (TX) or the network device 2 (RX) described in this application, and the communication device 900 can also be the first communication device or the second communication device described in this application. The communication device 900 can also be the control management device described in this application, performing various operations performed by the control management device. The first communication device and the second communication device described in this application can be an integral network device, or a single board in the network device 1, such as an interface board or a line card or a dumb board or a centralized cross board. The communication device 900 is used to perform the aforementioned Figure 6-Figure 23 The communication device 900 includes a memory 901 and a processor 902 connected to the memory. The memory 901 stores instructions, and the processor 902 reads the instructions, so that the communication device 900 executes Figure 6-Figure 23 The method of the embodiment corresponding to any of the accompanying drawings.
[0316] The following combination Figure 27 , another communication device 1000 provided in an embodiment of the present application is introduced. The communication device 800 can be applied to Figure 3In the network architecture shown. For example, the communication device 800 can be the network device 1 (TX) or the network device 2 (RX) described in this application, and the communication device 1000 can also be the first communication device or the second communication device described in this application. The communication device 1000 can also be the control management device described in this application, performing various operations performed by the control management device. The first communication device and the second communication device described in this application can be an integral network device, or a single board in the network device 1, such as an interface board or a line card or a dumb board or a centralized cross board. The communication device 800 is used to perform the aforementioned Figure 6-Figure 23 The method of the embodiment corresponding to any of the accompanying drawings. Figure 27 As shown, the communication device 1000 includes a processor 1010, a memory 1020 coupled to the processor, and a communication interface 1030. In a specific embodiment, the memory 1020 stores computer-readable instructions, and the computer-readable instructions include multiple software modules, such as a sending module 1021, a processing module 1022, and a receiving module 1023. After executing each software module, the processor 1010 can perform corresponding operations according to the instructions of each software module. In this embodiment, the operation performed by a software module actually refers to the operation performed by the processor 1010 according to the instructions of the software module. For example, when the network device 1000 executes as the first communication device Figure 16 In the method shown in FIG. 1 , the sending module 1021 is used to send the first data stream, and the processing module 1022 is used to generate the first data stream. In addition, after the processor 1010 executes the computer-readable instructions in the memory 1020, it can perform all operations that can be performed by the first communication device in this application according to the instructions of the computer-readable instructions. For example, when the communication device 1000 is used as the first communication device, the communication device 1000 can perform Figure 6-Figure 23 The method executed by the first communication device in the embodiment corresponding to any of the drawings.
[0317] The processor referred to in this application may be a central processing unit (CPU), a network processor (NP), or a combination of a CPU and an NP. The processor may also be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD may be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. Processor 1010 may refer to a single processor or may include multiple processors. The memory referred to in this application may include volatile memory (English: volatile memory), such as random-access memory (English: random-access memory, abbreviated: RAM); memory may also include non-volatile memory (English: non-volatile memory), such as read-only memory (English: read-only memory, abbreviated: ROM), flash memory (English: flash memory), hard disk drive (English: hard disk drive, abbreviated: HDD) or solid-state drive (English: solid-state drive, abbreviated: SSD); memory may also include a combination of the above types of memory. Memory can refer to a single memory or include multiple memories.
[0318] The embodiment of the present application further provides a communication system, including a first communication device and a second communication device, wherein the first communication device or the second communication device can Figure 24-27 Any of the communication devices described above, used to perform Figures 6 to 23 For the method in any corresponding embodiment, the communication system may further include the control management device described in this application.
[0319] The present application also provides a computer program product, comprising a computer program, which, when run on a computer, enables the computer to execute Figures 6 to 23 The method is performed by the first communication device, the second communication device or the control management device in any corresponding embodiment.
[0320] The present application also provides a computer program product, comprising a computer program, which, when run on a computer, enables the computer to execute Figures 6 to 23 The method is performed by the first communication device, the second communication device or the control management device in any corresponding embodiment.
[0321] The present application provides a computer-readable storage medium including computer instructions, which, when executed on a computer, enables the computer to execute Figures 6 to 23 The method is performed by the first communication device, the second communication device or the control management device in any corresponding embodiment.
[0322] Those skilled in the art will appreciate that the modules and method operations described in the various examples of the embodiments disclosed herein can be implemented using electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application.
[0323] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0324] In the above embodiments, all or part of the embodiments can be implemented through hardware, firmware, or any combination thereof. When software is involved in the specific implementation process, it can be embodied in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more available media. The available medium can be a magnetic medium (e.g., a floppy disk, hard disk, tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)).
[0325] The various sections of this specification are described in a progressive manner. Similar portions between the various embodiments can be referenced to each other. Each embodiment focuses on the differences between the other embodiments. In particular, the device and system embodiments are generally similar to the method embodiments, so their descriptions are relatively simple. For relevant portions, refer to the descriptions of the method embodiments.
Claims
1. A method for transmitting data, characterized in that: The method is implemented by a first communication device and includes: generating a first data stream, wherein the first data stream includes a plurality of data code blocks; The multiple data code blocks include multiple first base frames, each first base frame includes a base frame payload, the base frame payload includes a base frame overhead and multiple sub-client sub-timeslot payloads, the multiple sub-client sub-timeslot payloads include multiple first sub-client sub-timeslot payloads, and the multiple first sub-client sub-timeslot payloads include service data of a first sub-client interface; sending the first data stream through a first interface; Each of the first base frames further includes a first code block and a second code block, wherein the first code block is used to indicate a frame header of the first base frame, and the second code block is used to indicate a frame tail of the first base frame.
2. The method according to claim 1, characterized in that The first interface is logically divided into Z sub-client interfaces, where the Z sub-client interfaces include the first sub-client interface, and Z is an integer greater than 1.
3. The method according to claim 1, wherein The first interface is a Flexible Ethernet user FlexEclient interface.
4. The method according to claim 1, wherein The first interface is an Ethernet interface.
5. The method according to claim 1, wherein The first interface is a first Flexible Ethernet user FlexEclient interface, and the first communication device further includes a first flexE interface on a sending side. Sending the first data stream through the first interface includes: The first data stream is sent through the first FlexE interface according to a time slot mapping relationship between the first FlexE client interface and the first FlexE interface, wherein the first FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the first FlexE client interface.
6. The method according to claim 2, wherein The first interface is a first Flexible Ethernet user FlexEclient interface, and the first communication device further includes a first flexE interface on a sending side. Sending the first data stream through the first interface includes: The first data stream is sent through the first FlexE interface according to a time slot mapping relationship between the first FlexE client interface and the first FlexE interface, wherein the first FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the first FlexE client interface.
7. The method according to any one of claims 1 to 6, characterized in that The first code block is an S code block, and the second code block is a T code block.
8. The method according to any one of claims 1 to 6, characterized in that The first code block includes a first indication field and a first data field, the first indication field is used to indicate the frame header, and the first data field is used to carry part of the data of the base frame payload.
9. The method according to any one of claims 1 to 6, characterized in that: The second code block includes a second indication field and a second data field, the second indication field is used to indicate the frame end, and the second data field is used to carry part of the basic frame payload data.
10. The method according to claims 1-6, characterized in that The formats of the first code block and the second code block comply with the code block format defined by the Institute of Electronics Engineers (IEEE) 802.3 standard.
11. The method according to any one of claims 1 to 6, characterized in that: The base frame overhead includes one or more of the following information: The sequence number of the base frame; sub-client sub-timeslot mapping table; Time slot adjustment request information; Time slot adjustment response information; Time slot remaining indication information; Manage channel information; Base frame overhead check information.
12. The method according to any one of claims 1 to 6, characterized in that The first interface is divided into M sub-timeslots in the time domain, and a time slot bandwidth of each of the M sub-timeslots is P, where P<5 Gbp / s, and M is an integer greater than 1.
13. The method according to claim 12, characterized in that The M sub-timeslots are evenly distributed in X first base frames. Base frame encapsulation is performed once every time M / X sub-timeslots are scheduled. Each base frame payload includes M / X sub-client sub-timeslot payloads, where X is an integer greater than 1.
14. The method according to any one of claims 1 to 6, characterized in that The transmission rate of the first interface is NGbp / s, where N is greater than or equal to 1.
15. The method according to claim 2, characterized in that The first interface is divided into M sub-timeslots in the time domain, and the time slot bandwidth of each of the M sub-timeslots is P, P<5 Gbp / s, and M is an integer greater than 1; the method further includes: receiving a first sub-client sub-timeslot mapping table sent by a second communication device, where the first sub-client sub-timeslot mapping table is used to indicate a first mapping relationship between the M sub-timeslots and the Z sub-client interfaces, where each of the sub-client interfaces is mapped to at least one sub-timeslot of the M sub-timeslots; The first sub-client sub-slot mapping table is saved.
16. The method according to claim 15, characterized in that The first sub-client sub-timeslot mapping table indicates the first mapping relationship by mapping Z sub-user identifiers sub-client IDs and M sub-timeslot identifiers sub-slot IDs, wherein the Z sub-client IDs are respectively used to indicate the Z sub-client interfaces, and the M sub-slot IDs are respectively used to indicate the M sub-timeslots.
17. The method according to claim 15 or 16, characterized in that The second communication device is a control and management device.
18. The method according to claim 15 or 16, characterized in that The second communication device is a forwarding device.
19. The method according to claim 15 or 16, characterized in that The first sub-client sub-timeslot mapping table is carried in the base frame overhead; or, the first sub-client sub-timeslot mapping table is carried in a designated sub-timeslot of the M sub-timeslots.
20. The method according to any one of claims 1 to 6, characterized in that The first data stream is used to carry Ethernet services.
21. The method according to claim 20, characterized in that The generating of the first data stream comprises: Obtaining the first Ethernet service data stream from the physical coding sublayer PCS; Slicing the first Ethernet service data flow to obtain multiple Ethernet service slices; The multiple Ethernet service slices are used as the multiple sub-user sub-client sub-timeslot payloads and encapsulated in the base frame payload.
22. The method according to claim 21, characterized in that The first Ethernet service data flow includes multiple 64B / 66B code blocks or multiple 64B / 65B code blocks or multiple 256B / 257B code blocks.
23. The method according to any one of claims 1 to 6, characterized in that The first data stream is used to carry a constant bit rate CBR service.
24. The method according to claim 23, wherein The generating of the first data stream comprises: Slicing the first CBR service data stream to obtain a plurality of CBR service slice data, wherein the first CBR service data stream includes a plurality of CBR service frames; Slice and encapsulate the multiple CRB service slice data respectively to obtain multiple CBR service slices, each of the CBR service slices including the CBR service slice data and encapsulation information; Obtaining, according to the multiple CBR service slices, the multiple sub-user sub-client sub-timeslot payloads; The multiple sub-user sub-client sub-timeslot payloads are encapsulated in the base frame payload.
25. The method according to claim 24, characterized in that The slice granularity of each of the CBR service slices is i bits. When slicing the first CBR service data stream, the contents of the multiple CBR service frames are not identified, and i is an integer.
26. The method according to claim 24, characterized in that The slice granularity of each of the CBR service slices is j complete CBR service frames, where j is an integer greater than or equal to 1.
27. The method according to any one of claims 24 to 26, characterized in that The CBR service slice includes a first field for carrying the CBR service slice data.
28. The method according to any one of claims 24 to 26, characterized in that The encapsulation information includes a second field, and the second field is used to carry clock frequency information.
29. The method according to any one of claims 24 to 26, characterized in that: The encapsulation information includes a third field, and the third field is used to carry operation, administration and maintenance (OAM) information.
30. The method according to any one of claims 24 to 26, characterized in that The encapsulation information includes a fourth field, and the fourth field is used to carry the serial number of the CBR service slice.
31. The method according to claim 30, wherein The serial number of the CBR service slice is used for slice reassembly.
32. The method according to any one of claims 24 to 26, characterized in that The encapsulation information includes a fifth field, and the fifth field is used to carry payload length information. The payload length information is the effective length of the CBR service slice data carried in each of the CBR service slices.
33. The method according to any one of claims 24 to 26, characterized in that The encapsulation information includes a sixth field, and the sixth field is a padding field.
34. The method according to any one of claims 24 to 26, characterized in that The encapsulation information includes a seventh field, and the seventh field is used to carry verification information.
35. The method according to any one of claims 24 to 26, characterized in that Obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes: Perform Ethernet message encapsulation on the multiple CBR service slices to obtain a second data stream, where the second data stream includes multiple code blocks; The second data stream is sliced according to the length of each sub-user sub-client sub-timeslot payload to obtain the multiple sub-user sub-client sub-timeslot payloads.
36. The method according to claim 35, characterized in that The second data stream includes a plurality of 64B / 66B code blocks, a plurality of 64B / 65B code blocks, or a plurality of 256B / 257B code blocks.
37. The method according to claim 35, characterized in that The first data stream includes multiple OAM code blocks, which are used to carry OAM information.
38. The method according to any one of claims 24 to 26, characterized in that Obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes: Each of the CBR service slices is directly used as a sub-user sub-client sub-timeslot payload.
39. The method according to any one of claims 1 to 6, characterized in that The first data stream includes a plurality of 64B / 66B code blocks, a plurality of 64B / 65B code blocks, or a plurality of 256B / 257B code blocks.
40. The method according to any one of claims 1 to 6, characterized in that The first sub-client interface is mapped to W sub-timeslots of the first interface, and the generating the first data stream includes: The multiple first sub-client sub-timeslot payloads are mapped to the W sub-timeslots respectively, where W is an integer greater than 1.
41. The method according to claim 40, wherein Mapping the plurality of first sub-client sub-timeslot payloads to the W sub-timeslots respectively includes: The W sub-time slots are scheduled in sequence according to a mapping relationship between the first sub-client interface and the W sub-time slots and based on a time slot scheduling period of the first interface.
42. The method according to any one of claims 1 to 6, characterized in that The first communication device includes a second sub-client interface on the receiving side, and generating the first data stream includes: obtaining a plurality of second sub-client sub-timeslot payloads of the second sub-client interface, processing the plurality of second sub-client sub-slot payloads based on a sub-slot cross-relationship between the second sub-client interface and the first sub-client interface to obtain the plurality of first sub-client sub-slot payloads; The multiple first sub-client sub-timeslot payloads are encapsulated in the base frame payload.
43. The method according to claim 42, wherein Acquiring a plurality of second sub-client sub-timeslot payloads of the second sub-client interface includes: Obtain a third data stream of the second interface on the receiving side, and demap the multiple second sub-client sub-timeslot payloads from the third data stream according to a second sub-client sub-timeslot mapping table, where the second interface is divided into A sub-timeslots in the time domain and is logically divided into B sub-client interfaces, where the B sub-client interfaces include the second sub-client interface, and the second sub-client sub-timeslot mapping table is used to indicate a second mapping relationship between the A sub-timeslots and the B sub-client interfaces, where A and B are both integers greater than 1.
44. The method according to claim 43, wherein The second interface is an Ethernet interface.
45. The method according to claim 43, wherein The second interface is a second FlexE Cilent interface.
46. The method according to claim 45, characterized in that The first communication device further includes a second FlexE interface on a receiving side, and obtaining the third data stream includes: Acquire a fourth data flow of the second FlexE interface, where the second FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the second FlexE client interface; According to the time slot mapping relationship between the second FlexE client interface and the second flexE interface, the third data stream is demapped from the fourth data stream, where the third data stream includes multiple second base frames, and the multiple second base frames include the multiple second sub-client sub-time slot payloads.
47. A first communication device, characterized in that: include: a processing unit, configured to generate a first data stream, wherein the first data stream includes a plurality of data code blocks; The multiple data code blocks include multiple first base frames, each first base frame includes a base frame payload, the base frame payload includes a base frame overhead and multiple sub-client sub-timeslot payloads, the multiple sub-client sub-timeslot payloads include multiple first sub-client sub-timeslot payloads, and the multiple first sub-client sub-timeslot payloads include service data of a first sub-client interface; a transceiver unit, configured to send the first data stream through a first interface; Each of the first base frames further includes a first code block and a second code block, wherein the first code block is used to indicate a frame header of the first base frame, and the second code block is used to indicate a frame tail of the first base frame.
48. The first communication device according to claim 47, characterized in that The first interface is logically divided into Z sub-client interfaces, where the Z sub-client interfaces include the first sub-client interface, and Z is an integer greater than 1.
49. The first communication device according to claim 47, wherein: The first interface is a Flexible Ethernet user FlexE client interface.
50. The first communication device according to claim 47, wherein: The first interface is an Ethernet interface.
51. The first communication device according to claim 47, wherein: The first interface is a first Flexible Ethernet client interface. The first communication device further includes a first FlexE interface on a sending side. Sending the first data stream through the first interface includes: The first data stream is sent through the first FlexE interface according to a time slot mapping relationship between the first FlexE client interface and the first FlexE interface, wherein the first FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the first FlexE client interface.
52. The first communication device according to claim 48, wherein The first interface is a first Flexible Ethernet client interface. The first communication device further includes a first FlexE interface on a sending side. Sending the first data stream through the first interface includes: The first data stream is sent through the first FlexE interface according to a time slot mapping relationship between the first FlexE client interface and the first FlexE interface, wherein the first FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the first FlexE client interface.
53. The first communication device according to any one of claims 47 to 52, characterized in that: The first code block is an S code block, and the second code block is a T code block.
54. The first communication device according to any one of claims 47 to 52, characterized in that: The first code block includes a first indication field and a first data field, the first indication field is used to indicate the frame header, and the first data field is used to carry part of the data of the base frame payload.
55. The first communication device according to any one of claims 47 to 52, characterized in that: The second code block includes a second indication field and a second data field, the second indication field is used to indicate the frame end, and the second data field is used to carry part of the basic frame payload data.
56. The first communication device according to any one of claims 47 to 52, characterized in that The formats of the first code block and the second code block comply with the code block format defined by the Institute of Electronics Engineers (IEEE) 802.3 standard.
57. The first communication device according to any one of claims 47 to 52, characterized in that: The base frame overhead includes one or more of the following information: The sequence number of the base frame; sub-client sub-timeslot mapping table; Time slot adjustment request information; Time slot adjustment response information; Time slot remaining indication information; Manage channel information; Base frame overhead check information.
58. The first communication device according to any one of claims 47 to 52, characterized in that The first interface is divided into M sub-timeslots in the time domain, and a time slot bandwidth of each of the M sub-timeslots is P, where P<5 Gbp / s, and M is an integer greater than 1.
59. The first communication device according to claim 58, characterized in that The M sub-timeslots are evenly distributed in X first base frames. Base frame encapsulation is performed once every time M / X sub-timeslots are scheduled. Each base frame payload includes M / X sub-client sub-timeslot payloads, where X is an integer greater than 1.
60. The first communication device according to any one of claims 47 to 52, characterized in that: The transmission rate of the first interface is N Gbp / s, where N is greater than or equal to 1.
61. The first communication device according to claim 48, wherein: The first interface is divided into M sub-timeslots in the time domain, and the time slot bandwidth of each of the M sub-timeslots is P, P<5 Gbp / s, and M is an integer greater than 1; The transceiver unit is further configured to receive a first sub-client sub-timeslot mapping table sent by a second communication device, where the first sub-client sub-timeslot mapping table is configured to indicate a first mapping relationship between the M sub-timeslots and the Z sub-client interfaces, where each sub-client interface is mapped to at least one sub-timeslot of the M sub-timeslots; The processing unit is further configured to store the first sub-client sub-slot mapping table.
62. The first communication device according to claim 61, wherein: The first sub-client sub-timeslot mapping table indicates the first mapping relationship by mapping Z sub-user identifiers sub-client IDs and M sub-timeslot identifiers sub-slot IDs, wherein the Z sub-client IDs are respectively used to indicate the Z sub-client interfaces, and the M sub-slot IDs are respectively used to indicate the M sub-timeslots.
63. The first communication device according to claim 61 or 62, characterized in that The second communication device is a control and management device.
64. The first communication device according to claim 61 or 62, characterized in that The second communication device is a forwarding device.
65. The first communication device according to claim 61 or 62, characterized in that The first sub-client sub-timeslot mapping table is carried in the base frame overhead; or, the first sub-client sub-timeslot mapping table is carried in a designated sub-timeslot of the M sub-timeslots.
66. The first communication device according to any one of claims 47 to 52, characterized in that: The first data stream is used to carry Ethernet services.
67. The first communication device according to claim 66, characterized in that The processing unit is further configured to: Obtaining the first Ethernet service data stream from the physical coding sublayer PCS; Slicing the first Ethernet service data flow to obtain multiple Ethernet service slices; The multiple Ethernet service slices are used as the multiple sub-user sub-client sub-timeslot payloads and encapsulated in the base frame payload.
68. The first communication device according to claim 66, wherein: The first Ethernet service data stream includes multiple 64B / 66B code blocks or multiple 64B / 65B code blocks or multiple 256B / 257B code blocks.
69. The first communication device according to any one of claims 47 to 52, characterized in that: The first data stream is used to carry a constant bit rate CBR service.
70. The first communication device according to claim 69, wherein: The processing unit is further configured to: Slicing the first CBR service data stream to obtain a plurality of CBR service slice data, wherein the first CBR service data stream includes a plurality of CBR service frames; Slice and encapsulate the multiple CRB service slice data respectively to obtain multiple CBR service slices, each of the CBR service slices including the CBR service slice data and encapsulation information; Obtaining, according to the multiple CBR service slices, the multiple sub-user sub-client sub-timeslot payloads; The multiple sub-user sub-client sub-timeslot payloads are encapsulated in the base frame payload.
71. The first communication device according to claim 70, characterized in that The slice granularity of each of the CBR service slices is i bits. When slicing the first CBR service data stream, the contents of the multiple CBR service frames are not identified, and i is an integer.
72. The first communication device according to claim 70, characterized in that The slice granularity of each of the CBR service slices is j complete CBR service frames, where j is an integer greater than or equal to 1.
73. The first communication device according to any one of claims 70 to 72, characterized in that: The CBR service slice includes a first field for carrying the CBR service slice data.
74. The first communication device according to any one of claims 70 to 72, characterized in that: The encapsulation information includes a second field, and the second field is used to carry clock frequency information.
75. The first communication device according to any one of claims 70 to 72, characterized in that: The encapsulation information includes a third field, and the third field is used to carry operation, administration and maintenance (OAM) information.
76. The first communication device according to any one of claims 70 to 72, characterized in that: The encapsulation information includes a fourth field, and the fourth field is used to carry the serial number of the CBR service slice.
77. The first communication device according to claim 76, characterized in that The serial number of the CBR service slice is used for slice reassembly.
78. The first communication device according to any one of claims 70 to 72, characterized in that: The encapsulation information includes a fifth field, and the fifth field is used to carry payload length information. The payload length information is the effective length of the CBR service slice data carried in each of the CBR service slices.
79. The first communication device according to any one of claims 70 to 72, characterized in that: The encapsulation information includes a sixth field, and the sixth field is a padding field.
80. The first communication device according to any one of claims 70 to 72, characterized in that: The encapsulation information includes a seventh field, and the seventh field is used to carry verification information.
81. The first communication device according to any one of claims 70 to 72, characterized in that: Obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes: Perform Ethernet message encapsulation on the multiple CBR service slices to obtain a second data stream, where the second data stream includes multiple code blocks; The second data stream is sliced according to the length of each sub-user sub-client sub-timeslot payload to obtain the multiple sub-user sub-client sub-timeslot payloads.
82. The first communication device according to claim 81, characterized in that The second data stream includes a plurality of 64B / 66B code blocks, a plurality of 64B / 65B code blocks, or a plurality of 256B / 257B code blocks.
83. The first communication device according to claim 81, characterized in that The first data stream includes multiple OAM code blocks, which are used to carry OAM information.
84. The first communication device according to any one of claims 70 to 72, characterized in that: Obtaining the multiple sub-user sub-client sub-timeslot payloads according to the multiple CBR service slices includes: Each of the CBR service slices is directly used as a sub-user sub-client sub-timeslot payload.
85. The first communication device according to any one of claims 70 to 72, characterized in that: The first data stream includes a plurality of 64B / 66B code blocks, a plurality of 64B / 65B code blocks, or a plurality of 256B / 257B code blocks.
86. The first communication device according to any one of claims 70 to 72, characterized in that: The first sub-client interface is mapped to W sub-timeslots of the first interface, and the processing unit is further configured to: The multiple first sub-client sub-timeslot payloads are mapped to the W sub-timeslots respectively, where W is an integer greater than 1.
87. The first communication device according to claim 86, characterized in that Mapping the plurality of first sub-client sub-timeslot payloads to the W sub-timeslots respectively includes: The W sub-time slots are scheduled in sequence according to a mapping relationship between the first sub-client interface and the W sub-time slots and based on a time slot scheduling period of the first interface.
88. The first communication device according to any one of claims 70 to 72, characterized in that: The first communication device includes a second sub-client interface on the receiving side, and the processing unit is further configured to: obtaining a plurality of second sub-client sub-timeslot payloads of the second sub-client interface, processing the plurality of second sub-client sub-slot payloads based on a sub-slot cross-relationship between the second sub-client interface and the first sub-client interface to obtain the plurality of first sub-client sub-slot payloads; The multiple first sub-client sub-timeslot payloads are encapsulated in the base frame payload.
89. The first communication device according to claim 88, characterized in that The acquiring of the plurality of second sub-client sub-timeslot payloads of the second sub-client interface includes: Obtain a third data stream of the second interface on the receiving side, and demap the multiple second sub-client sub-timeslot payloads from the third data stream according to a second sub-client sub-timeslot mapping table, where the second interface is divided into A sub-timeslots in the time domain and is logically divided into B sub-client interfaces, where the B sub-client interfaces include the second sub-client interface, and the second sub-client sub-timeslot mapping table is used to indicate a second mapping relationship between the A sub-timeslots and the B sub-client interfaces, where A and B are both integers greater than 1.
90. The first communication device according to claim 89, wherein: The second interface is an Ethernet interface.
91. The first communication device according to claim 89, wherein The second interface is a second FlexECilent interface.
92. The first communication device according to claim 91, wherein: The first communication device further includes a second FlexE interface on a receiving side, and obtaining the third data stream includes: Acquire a fourth data flow of the second FlexE interface, where the second FlexE interface is logically divided into multiple FlexE client interfaces, and the multiple FlexE client interfaces include the second FlexE client interface; According to the time slot mapping relationship between the second FlexE client interface and the second flexE interface, the third data stream is demapped from the fourth data stream, where the third data stream includes multiple second base frames, and the multiple second base frames include the multiple second sub-client sub-time slot payloads.
93. A first communication device, characterized in that include: a memory storing instructions; A processor connected to the memory, wherein when the processor executes the instructions, the first communication device executes the method according to any one of claims 1 to 46.
94. A computer-readable storage medium, characterized in that The method comprises a program or an instruction, which, when executed on a computer, causes the computer to execute the method according to any one of claims 1 to 46.
95. A communication system comprising the first communication device and the second communication device described in any one of claims 47 to 92, configured to execute the method described in any one of claims 1 to 46.
Citation Information
Patent Citations
Service processing method and device
CN108632886A
FlexE service processing method, FlexE service processing device and electronic equipment
CN111107641A