Data processing method and device
By eliminating invalid data slots and mapping actual data blocks, bandwidth compression is achieved, and the problem of limited number of CPE accesses of OTN equipment is solved, and the CPE access capability is improved.
Patent Information
- Application Number
- CN202410171555.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-02-06
- Publication Date
- 2025-08-12
AI Technical Summary
The number of CPEs currently connected by existing OTN devices is limited by slot capacity and cannot meet higher access needs. Especially in the Ethernet service scenario, 40G slots can only be connected to 16 CPEs.
By eliminating the time slots carrying invalid data, mapping the actual data blocks into the time slots of the second type of data frame, bandwidth compression is achieved, thereby supporting access to more CPEs.
Without increasing the slot capacity, the number of CPE accesses of OTN equipment is increased, meeting the operator's access requirements for 50-80 CPEs.
Smart Images

Figure CN120475285A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of optical communication technology, and in particular to a data processing method and device. Background Art
[0002] The fine grain optical transport network (fgOTN) has a minimum granularity of 10M and supports multiplexing into OTN frames such as optical data unit (ODU) 0, ODU1, ODU2, and ODUFlex. Currently, fgOTN deployment requires OTN equipment to support fgODU low-order cross-connection.
[0003] In Ethernet service scenarios, the customer's Ethernet service signals are encapsulated into fgODU frames by the customer-premises equipment (CPE) and sent to the gray optical circuit board. The gray optical circuit board multiplexes the fgODU frame services into ODU frames and transparently transmits them to the fgODU low-order cross-connect board, which further demaps the service signals for processing.
[0004] Because the minimum ODU0 rate is 1.25G, the number of CPEs that can be connected to current OTN equipment is actually limited by the slot capacity. For example, the number of CPEs connected to a 40G slot = 40 / 1.25 / 2 = 16. This means that a 40G slot can only accommodate 16 dual-uplink CPEs, which cannot support a higher number of CPEs. Summary of the Invention
[0005] The embodiments of the present application provide a data processing method and apparatus for enabling OTN equipment to support access to a greater number of CPEs.
[0006] In a first aspect, an embodiment of the present application provides a data processing method, comprising: receiving a first data frame of a first type, the payload area of the first data frame of the first type including M first time slots, M being a positive integer, and each of the M first time slots being used to carry first business data and / or fill data; identifying at least one first time slot carrying first business data from the M first time slots; mapping the first business data carried in the at least one first time slot to a first data frame of a second type, the payload area of the data frame of the second type including N second time slots, N being a positive integer, and the payload area included in at least one of the N second time slots being used to carry the first business data.
[0007] In one possible implementation, the overhead area of the first data frame of the first type includes the branch channel number of the first time slot carrying the first business data; further, when identifying at least one first time slot carrying the first business data from the M first time slots, at least one first time slot carrying the first business data can be identified from the M first time slots based on the branch channel number included in the overhead area of the first data frame of the first type.
[0008] The solution provided by the embodiments of the present application eliminates time slots (or payload blocks) that do not carry service data (i.e., carry invalid data), and only maps the actual data blocks carried by the time slots to the time slots of the second type of data frame. The time slots of the second type of data frame are used to carry service data. Because the bandwidth of a dedicated line is actually smaller than the bandwidth of ODU0, for example 50M, the embodiments of the present application achieve bandwidth compression by eliminating time slots that carry invalid data, thereby enabling the 40G slot to connect to more CPEs.
[0009] In a possible implementation manner, cross-scheduling is performed on the first data frames of the second type.
[0010] In a possible implementation, the first type of data frame is a small-granularity flexible optical data unit fgODUflex frame. The embodiment of the present application can be applied to the fgODU scenario.
[0011] In one possible implementation, the number of bits occupied by the payload area included in the second time slot is equal to the number of bits occupied by the first time slot. The payload area of the time slot of the second type of data frame provided in the embodiment of the present application is the same size as the first time slot of the first type of data frame, so that the data block carried by the first time slot can be directly filled into the payload area of the time slot of the second type of data frame without performing other operations, thereby reducing processing complexity.
[0012] In one possible implementation, the second type of data frame may also be an fgODUflex frame, but the filler data in the time slots of the first type of data frame is removed and no longer occupies the time slots of the second type of data frame. Optionally, when mapping the service data carried by the second type of data frame into the first type of data frame, a bit-synchronous mapping procedure (BMP) mapping method may also be used.
[0013] In a possible implementation, the payload area of the second time slot occupies 16 bytes.
[0014] In one possible implementation, the first data frame of the second type also includes an overhead area, the overhead area of the first data frame of the second type includes a common domain, the first time slot also includes an overhead area, any second overhead area in the at least one second time slot includes a channel field, the common domain carries the high bit of the branch channel number, and any second channel field carries the low bit of the branch channel number, and the branch channel number is used to indicate the first time slot to which the first service data carried by any second payload area belongs.
[0015] In the above implementation, by providing a channel field within the time slot of the second-type data frame to carry the tributary channel number, mapping does not need to be performed sequentially, and the padding position does not need to be fixed, thereby improving mapping complexity and flexibility. Furthermore, by reusing the common field to carry the high bits of the tributary channel number, bandwidth utilization of the second-type first data frame can be improved.
[0016] In a possible implementation, any second time slot further includes an overhead area, and any second overhead area includes a channel field, and the channel field carries the branch channel number of the first time slot to which the first service data carried by any second time slot belongs.
[0017] In the above implementation, by setting the channel field in the time slot of the second type of data frame to carry the branch channel number, when performing mapping, there is no need to execute in sequence, and the filling position does not need to be fixed, which can improve the mapping complexity and flexibility.
[0018] In one possible implementation, the overhead area of the first data frame of the first type includes a multiplexing structure identifier (MSI) field, which carries the branch channel number. The branch channel number is derived from the multiplexing structure identifier (MSI) field in the overhead area of the first data frame of the first type. In this embodiment, the branch channel number is extracted from the MSI of the first type data frame and added to the channel field of the time slot of the second type data frame, which reduces complexity.
[0019] In a possible implementation, the overhead area of the first data frame of the first type includes a payload type (PSI) field, and the PSI field carries the branch channel number. For example, the PSI field includes an MSI field.
[0020] In a possible implementation, the overhead area of any second time slot further includes a status indication field, and information carried by the status indication field is used to indicate an alarm status of a branch channel corresponding to the branch channel number carried by any second time slot.
[0021] In the above implementation, by configuring the status indication field to carry the alarm status information, the solution provided in the embodiment of the present application can be applied to the protection switching scenario, thereby improving the flexibility of the application.
[0022] In one possible implementation, the method further includes: receiving a second data frame of a first type, wherein each first time slot of the M first time slots of the second data frame of the first type is used to carry second service data and / or padding data; the second data frame of the first type and the first data frame of the first type belong to a different optical transmission channel;
[0023] Identifying at least one first time slot carrying second service data from the M first time slots of the second data frame according to the branch channel number included in the overhead area of the second data frame of the first type;
[0024] The second service data carried in at least one first time slot is mapped to a second data frame of a second type, the payload area of the second type of data frame includes N second time slots, N is a positive integer, and the payload area included in at least one second time slot of the N second time slots is used to carry the second service data; the second type of second data frame and the second type of first data frame belong to a different optical transmission channel.
[0025] In the above implementation, the optical transmission channels of the first type of data frames correspond one-to-one to the optical transmission channels of the second type of data frames. There is no need to consider whether the branch channel numbers of different optical transmission channels are the same, which can reduce complexity.
[0026] In a possible implementation, the method further includes:
[0027] Before determining at least one first time slot carrying second business data from the M first time slots of the second data frame of the first type, a first activation indication is received, wherein the first activation indication is used to indicate mapping the first type of data frames from different optical transmission channels to the second type of data frames belonging to different optical transmission channels.
[0028] In a possible implementation, the method further includes:
[0029] receiving a second data frame of a first type, wherein each of the M first time slots of the second data frame of the first type is used to carry second service data and / or padding data; the second data frame of the first type and the first data frame of the first type belong to a different optical transmission channel;
[0030] Determining at least one first time slot carrying second service data from the M first time slots of the second data frame of the first type according to the branch channel number included in the overhead area of the second data frame of the first type;
[0031] The second business data carried in at least one first time slot carrying the second business data is mapped to a first data frame of the second type, and the payload area included in at least one second time slot among the N second time slots is used to carry the second business data; the at least one second time slot carrying the second business data is different from the at least one second time slot carrying the first business data.
[0032] In the above implementation, the optical transmission channels of multiple first-type data frames correspond to one second-type data frame optical transmission channel, which can further improve bandwidth utilization and increase the number of connected CPEs.
[0033] In one possible implementation, the method further includes: before determining at least one first time slot carrying second service data from the M first time slots of the second data frame of the first type, receiving a second activation indication, wherein the second activation indication is used to indicate mapping the first type of data frames from different optical transmission channels to the second type of data frames belonging to the same optical transmission channel.
[0034] In a possible implementation, the method further includes:
[0035] Configuration information is received, where the configuration information is used to indicate a correspondence between a branch channel number allocated to the first type of data frame, an optical transmission channel to which the first type of data frame belongs, and a first time slot to which the first type of data frame belongs.
[0036] In a second aspect, an embodiment of the present application provides a data processing method, including:
[0037] receiving a first data frame of a second type, wherein a payload area of the first data frame of the second type includes N time slots, where N is a positive integer;
[0038] According to at least one first time slot to which the first business data carried by K1 second time slots in the N second time slots belongs, the first business data carried by the K1 second time slots is cross-scheduled; the at least one first time slot belongs to at least one first time slot carrying the first business data in the M first time slots included in the first data frame of the first type, where M is a positive integer and K1 is a positive integer less than or equal to N.
[0039] In a possible implementation, the first type of data frame is a small-granularity optical data unit (fgODUflex) frame. The embodiment of the present application can be applied to the fgODU scenario.
[0040] In one possible implementation, the number of bits occupied by the payload area included in the second time slot is equal to the number of bits occupied by the first time slot. The payload area of the time slot of the second type of data frame provided in the embodiment of the present application is the same size as the first time slot of the first type of data frame, so that the data block carried by the first time slot can be directly filled into the payload area of the time slot of the second type of data frame without performing other operations, thereby reducing processing complexity.
[0041] In a possible implementation, the payload area of the second time slot occupies 16 bytes.
[0042] In one possible implementation, the first data frame of the second type also includes an overhead area, the overhead area of the first data frame of the second type includes a common domain, any second time slot of the K1 second time slots also includes an overhead area, the overhead area of any second time slot includes a channel field, the common domain carries the high bit of the branch channel number, the channel field of any second time slot carries the low bit of the branch channel number, and the branch channel number is used to indicate the first time slot to which the first service data carried by the payload area of any second time slot belongs.
[0043] In one possible implementation, the first time slot also includes an overhead area, the overhead area of the first time slot includes a channel field, the channel field carries a branch channel number, and the branch channel number is used to indicate the first time slot to which the first service data carried by the payload area of the first time slot belongs.
[0044] In a possible implementation, the overhead area of any second time slot among the K1 second time slots further includes a status indication field, and the information carried by the status indication field is used to indicate the alarm status of the branch channel corresponding to the branch channel number carried by any second time slot.
[0045] In a possible implementation, the method further includes:
[0046] receiving a second data frame of a second type, wherein a payload area of the second data frame of the second type includes N second time slots, where N is a positive integer;
[0047] According to at least one first time slot to which the second business data carried by K2 second time slots in the N second time slots belongs, the second business data carried by the at least one second time slot is cross-scheduled; the at least one first time slot belongs to at least one first time slot carrying first business data in the M first time slots included in the second data frame of the first type, M is a positive integer, the second data frame of the second type and the first data frame of the second type belong to a different optical transmission channel, and K2 is a positive integer less than or equal to N.
[0048] In a possible implementation, the method further includes:
[0049] According to at least one first time slot to which the second business data carried by K3 second time slots in the N second time slots belongs, the second business data carried by the K3 second time slots are cross-scheduled; the at least one first time slot belongs to at least one first time slot carrying second business data in the M first time slots included in the second data frame of the first type, M is an integer greater than N, the second data frame of the second type and the first data frame of the second type belong to the same optical transmission channel, K3 is a positive integer, and K1+K3 is less than or equal to N.
[0050] In a possible implementation, the method further includes: receiving configuration information, the configuration information being used to indicate a correspondence between a branch channel number allocated to the first type of data frame, an optical transmission channel to which the first type of data frame belongs, and a first time slot to which the first type of data frame belongs;
[0051] The first time slot to which the first service data carried by the second time slot belongs is determined according to the configuration information.
[0052] In a third aspect, an embodiment of the present application provides a data transmission device, comprising a processor and a memory. The memory is configured to store program code. The processor is configured to read and execute the program code stored in the memory to implement the method described in the first aspect or any design of the first aspect, or to implement the method described in the second aspect or any design of the second aspect.
[0053] In a fourth aspect, embodiments of the present application further provide a computer storage medium. The storage medium stores a software program that, when read and executed by one or more processors, can implement the method provided by any one of the designs of the first or second aspects, or the method provided by the second aspect or any one of the designs of the second aspect.
[0054] In a fifth aspect, an embodiment of the present application provides a computer program product comprising instructions, which, when run on a computer, enables the computer to execute any method provided by the design of the first aspect above or enables the computer to execute any method provided by the design of the second aspect above.
[0055] In a sixth aspect, an embodiment of the present application provides a chip, the chip including a processor. The processor is configured to execute any one of the methods provided in the first aspect, or execute any one of the methods provided in the second aspect.
[0056] In one possible design, the chip further includes a communication interface coupled to the processor.
[0057] In one possible design, the chip is connected to a memory and is used to read and execute a software program stored in the memory to implement the method provided by any one of the designs of the first aspect, or to implement the method provided by any one of the designs of the second aspect.
[0058] Based on the implementations provided in the above aspects, this application can also be further combined to provide more implementations. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] Figure 1 A schematic diagram of a network architecture;
[0060] Figure 2 A schematic diagram of the hardware structure of a network device;
[0061] Figure 3 This is a schematic diagram of the hardware structure of an OTN device;
[0062] Figure 4 This is a schematic diagram of an OTN frame structure;
[0063] Figure 5 A schematic diagram of TS distribution using GMP mapping;
[0064] Figure 6 A schematic diagram of a network model for a CO scenario;
[0065] Figure 7A A schematic diagram of a compressed frame format provided in an embodiment of the present application;
[0066] Figure 7B A schematic diagram of another compressed frame format provided in an embodiment of the present application;
[0067] Figure 8 A flowchart of a data processing method provided in an embodiment of the present application;
[0068] Figure 9 This is a schematic diagram of compression processing of a first possible implementation method of an embodiment of the present application;
[0069] Figure 10 This is a schematic diagram of compression processing of a second possible implementation method of an embodiment of the present application;
[0070] Figure 11 This is a schematic diagram of mapping fgODU0 to ODU0 in an embodiment of the present application;
[0071] Figure 12 A schematic diagram of bandwidth compression provided in an embodiment of the present application;
[0072] Figure 13This is a schematic diagram of compression processing in a first possible implementation method in an embodiment of the present application;
[0073] Figure 14 This is a schematic diagram of compression processing in a second possible implementation method in an embodiment of the present application;
[0074] Figure 15 A schematic diagram of a data processing device provided in an embodiment of the present application;
[0075] Figure 16 A schematic diagram of another data processing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0076] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0077] In the description of this application, unless otherwise specified, "plurality" means two or more than two. Furthermore, " / " indicates that the objects associated with each other are in an "or" relationship. For example, A / B can mean A or B. "And / or" in this application is merely a description of the association relationship between associated objects, indicating that three relationships can exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, or B exists alone. A and B can be singular or plural. Furthermore, to facilitate the clear description of the technical solutions of the embodiments of this application, the embodiments of this application use terms such as "first" and "second" to distinguish between identical or similar items with substantially the same functions and effects. Those skilled in the art will understand that terms such as "first" and "second" do not limit the quantity or order of execution, and that terms such as "first" and "second" do not necessarily define differences. It should also be noted that, unless otherwise specified, the specific description of certain technical features in one embodiment can also be used to explain the corresponding technical features mentioned in other embodiments.
[0078] The network architecture and service scenarios described in the embodiments of this application are intended to more clearly illustrate the technical solutions of the embodiments of this application and do not constitute a limitation on the technical solutions provided in the embodiments of this application. Persons skilled in the art will appreciate that, with the evolution of network architecture and the emergence of new service scenarios, the technical solutions provided in the embodiments of this application are equally applicable to similar technical problems.
[0079] The technical solutions provided in the embodiments of this application are applicable to optical networks, such as OTNs. An OTN is typically composed of multiple OTN devices connected by optical fibers, and can be configured into different topologies, such as linear, ring, and mesh, depending on specific needs. Furthermore, in the embodiments of this application, network nodes can be referred to simply as nodes, network elements, or network devices, such as OTN devices.
[0080] like Figure 1 The OTN shown is composed of two OTN networks. Each OTN network consists of a certain number of OTN devices (N1 to N7). Depending on actual needs, an OTN device may have different functions. Generally speaking, OTN devices are divided into optical layer devices, electrical layer devices, and optoelectronic hybrid devices. Optical layer devices refer to devices that can process optical layer signals, such as optical amplifiers (OAs) and optical add-drop multiplexers (OADMs). OAs, also known as optical line amplifiers (OLAs), are primarily used to amplify optical signals to enable longer transmission distances while maintaining specific optical signal performance. OADMs spatially transform optical signals so that they can be output from different output ports (sometimes called directions). Based on their capabilities, OADMs can be divided into fixed OADMs (FOADMs) and reconfigurable OADMs (ROADMs). Electrical layer devices refer to devices that can process electrical layer signals, such as those capable of processing OTN signals. An optoelectronic hybrid device is a device capable of processing both optical and electrical layer signals. It should be noted that, depending on specific integration requirements, a single OTN device can incorporate multiple different functions. The technical solution provided in this application is applicable to OTN devices of varying form factors and levels of integration.
[0081] It should be noted that the data frame structure used by the OTN equipment in the embodiments of the present application can be an OTN frame, which is used to carry various service data and enable management and monitoring of service data. The OTN frame can be an ODUk, ODUCn, ODUflex, or an optical channel transport unit (OTU) k, OTUCn, or a flexible OTN (FlexO) frame. The data frame can also have other frame structures suitable for optical networks.
[0082] Figure 2 The following is a possible hardware structure diagram of an OTN device. The OTN device here can refer to Figure 1 Specifically, an OTN device includes power supplies, fans, auxiliary boards, and may also include tributary boards, line boards, cross-connect boards, and system control and communication boards. Optionally, an OTN device may also include an optical layer processing board ( Figure 2(not shown). For example, the optical layer processing unit can be included in the circuit board. It should be noted that, depending on specific needs, the specific type and number of boards included in each device may vary. For example, a network device serving as a core node may not have a tributary board. A network device serving as an edge node may have multiple tributary boards. The power supply is used to power the OTN equipment and may include a primary and a backup power supply. The fan is used to dissipate heat from the equipment. Auxiliary boards are used to provide auxiliary functions such as external alarms or access to external clocks. Trip boards, cross-connect boards, and circuit boards are primarily used to process OTN electrical layer signals. Trip boards are used to receive and transmit various customer services, such as SDH services, packet services, Ethernet services, and fronthaul services. Furthermore, tributary boards can be divided into client-side optical modules and signal processors. The client-side optical modules can be optical transceivers used to receive and / or transmit service data. The signal processor is used to map and demap service data into data frames. The cross-connect board is used to exchange data frames and complete the exchange of one or more types of data frames. The circuit board mainly implements the processing of line-side data frames. Specifically, the circuit board can be divided into a line-side optical module and a signal processor. Among them, the line-side optical module can be a line-side optical transceiver for receiving and / or sending data frames. The signal processor is used to implement multiplexing and demultiplexing, or mapping and demapping processing of line-side data frames. System control and communication boards are used to implement system control and communication. Specifically, information can be collected from different boards through the backplane, or control instructions can be sent to the corresponding boards. It should be noted that, unless otherwise specified, the specific components (for example: signal processors) can be one or more, and this application does not impose any restrictions. It should also be noted that the embodiments of the present application do not impose any restrictions on the types of boards included in the device, as well as the specific functional design and quantity of the boards.
[0083] In addition, the present application is applicable to fgOTN network, and the cross-connect board in the OTN equipment may include a high-order cross-connect board and a low-order cross-connect board. The low-order cross-connect board can be used to implement cross-connect scheduling of low-order data frames, such as fgOTN frames. Figure 3 The figure shows the structure of OTN equipment used in fgOTN network. Figure 3 The OTN equipment shown only shows the branch board, high-order cross-connect board, circuit board, and low-order cross-connect board. The circuit board can be a gray light circuit board or a color light circuit board. For example, the wavelength division side circuit board can be a daylight circuit board, and the line side circuit board can be a gray light (black and white light) circuit board. The gray light circuit board does not have a specific standard wavelength, and the wavelength fluctuates within a certain range. OTN equipment may include Figure 3 More or fewer components than shown. Figure 3This is just an example. The cross-connect capability of a low-order cross-connect board is smaller than that of a high-order cross-connect board, that is, the number of cross-connect ports implemented by the low-order cross-connect board is smaller than that of the high-order cross-connect board.
[0084] Below, some terms in this application are explained to facilitate understanding by those skilled in the art.
[0085] 1) Multiple refers to two or more. “And / or” describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. A and B can be singular or plural. In addition, in order to facilitate the clear description of the technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as “first” and “second” are used to distinguish between identical or similar items with basically the same functions and effects. Those skilled in the art will understand that words such as “first” and “second” do not limit the quantity and execution order, and words such as “first” and “second” do not necessarily limit them to be different. It should also be noted that, unless otherwise specified, the specific description of some technical features in one embodiment can also be used to explain the corresponding technical features mentioned in other embodiments.
[0086] 2) OTN frame, which is used to carry various service data and can realize the management and monitoring of service data. OTN frame can be optical data unit (ODU) k, ODUCn, ODUflex, or optical transport unit (OTU) k, OTUCn, or optical payload unit (OPU), or flexible OTN (FlexO) frame, etc. OTN frame can also be ODU multiframe, OTU multiframe or OPU multiframe, etc. OTN frame can also be other frame structures suitable for optical network. Among them, the difference between ODU frame and OTU frame is that OTU frame includes ODU frame and OTU overhead. k represents different rate levels. For example, k=1 means 2.5Gbps, k=4 means 100Gbps. Cn represents variable rate, specifically a rate of positive integer multiples of 100Gbps. Unless otherwise specified, an ODU frame refers to any of ODUk, ODUCn, or ODUflex, and an OTU frame refers to any of OTUk, OTUCn, or FlexO. It should also be noted that with the development of optical transport network technology, new types of OTN frames may be defined and also apply to this application. Furthermore, the methods disclosed in this application can also be applied to other optical transport network frames such as FlexE frames.
[0087] like Figure 4 As shown in the figure, an OTN frame can have a 4×4080 bit structure, that is, 4 rows × 4080 columns. The OTN frame structure includes a frame alignment area, an OTU overhead (OH), an ODU OH, an optical payload unit (OPU) OH, an OPU payload area, and a forward error correction (FEC) area. The first 16 columns are overhead bytes, the last 256 columns are the FEC check area, and the middle 3808 columns are the payload area.
[0088] The frame alignment overhead includes two parts: the frame alignment signal (FAS) and the multiframe alignment signal (MFAS). Multiple OTN frames constitute an OTN multiframe, for example, 8 OTN frames constitute an OTN multiframe.
[0089] OPUk is used to carry service data and includes the OPU payload area and OPU OH. k represents the OPU rate level. k = 1, 2, 3, and 4 correspond to 2.5G, 10G, 40G, and 100G rates, respectively. k = flex, or OPUflex, can correspond to any rate level and is used only to carry single-channel services. k = Cn, or OPUCn, corresponds to a rate level n times 100G.
[0090] ODUk is an information structure used to support OPUk and consists of OPUk and ODUk OH. Similarly, the capacity of ODUk is distinguished by k. ODUflex consists of OPUflex and ODUflex OH. ODUCn consists of OPUCn and ODUCn OH.
[0091] OTUk consists of ODUk, FEC area, and OTUk OH. OTUCn consists of ODUCn and OTUCn OH, but does not include the FEC area.
[0092] 3) The minimum granularity of the fgOTN frame is 10M, which supports multiplexing into channels such as optical data unit (ODU) 0, ODU1, ODU2, and ODUFlex. The smallest granularity of the fgOTN frame can be understood as fgODU0.
[0093] 4) Generic Mapping Procedure (GMP) is a general mapping procedure for OTN. Specifically, it generates the value of the number of customer entities Cm and clock information in each service frame period, then calculates the distribution pattern of customer data in the payload area using the "sigma-delta" algorithm, and maps the Cm number of customer data to the position corresponding to the distribution pattern.
[0094] The fgODUflex may be mapped to the OTN frame using a GMP mapping method, wherein the fgODUflex occupies several time slots (tributary slots or time slots, TS) in the OTN frame.
[0095] As an example, Figure 5 A schematic diagram of TS distribution using GMP mapping. Figure 5 OH in the middle indicates the overhead area. Figure 5 The service container consisting of one or more TS is used to transmit fgODUflex. Figure 5 In this example, the OTN frame ODU0 is used. ODU0 consists of 119 10M time slots. The ODU0 payload area is divided into 119 10M time slots. The time slot interleaving granularity is 16 bytes, which means each time slot occupies 16 bytes. Figure 5 Each block in the ODU frame is 16 bytes, and each time slot in each ODU frame contains 8 16-byte blocks. 32 ODU0s constitute a multiframe. When mapping fgODU0s into the service container, they can be placed in rows from top to bottom and from left to right. After the corresponding time slots in a row are filled, similar operations are performed on the corresponding time slots in the next row. Figure 5 As shown in the figure, for example, the service container occupies three time slots. Taking TS#1, TS#2, and TS#k as an example, the mapping granularity is 16 bytes. The mapping granularity can be called a data block, i.e., the size of a data block is 16 bytes. After the first row is filled with TS#1, TS#2, TS#k, TS#1, TS#2, and TS#k, the service data bit stream is then placed in the second row in the same order.
[0096] For Ethernet service scenarios, take the OTN equipment of the central office (CO) as an example, see Figure 6As shown in the figure, the gray optical circuit board is connected to the CPE. The customer's Ethernet service signals are encapsulated into fgODUFlex frames by the customer-premises equipment (CPE) and sent to the gray optical circuit board. The gray optical circuit board transparently transmits the fgODUFlex frames carrying the service signals to the fgODU low-order cross-connect board, which further demaps the service signals for aggregation and other processing.
[0097] Since the minimum ODU0 speed is also 1.25G, the number of CPEs that can be connected to the current CO's OTN equipment is actually limited by the slot capacity. For example, the number of CPEs that can be connected to a 40G slot = 40 / 1.25 / 2 = 16. This means that a 40G slot can only accommodate 16 dual-uplink CPEs, which cannot meet the operator's requirement that a central office OTN device can support 50-80 CPEs, that is, support a higher number of connected CPEs. The applicant analyzed that this is due to the large bandwidth of the service layer, with an average dedicated line of 50M, but the actual bandwidth utilization is low and cannot reach 50M.
[0098] Based on this, embodiments of the present application provide a data processing method and apparatus that compresses the bandwidth of service layer data frames through bandwidth compression, thereby supporting the access of more CPEs while maintaining the same slot capacity. In embodiments of the present application, time slots that do not carry service data in data frames are stripped off, and the content of time slots that carry service data is carried in a data frame format, which is then cross-scheduled via a low-order cross-connect board.
[0099] The following first describes the format of the compressed data frame provided in the embodiments of this application. The compressed data frame can use a standard fgODUflex frame or a data frame in another format. The compressed data frame can be referred to as a second-type data frame, a compressed frame, a compressed data frame, a cell frame, or a compressed cell, etc. This application does not specifically limit these names. For ease of description, in the embodiments of this application, the compressed data frame is referred to as a compressed frame.
[0100] See also Figure 7A As shown, a schematic diagram of the format of a compressed frame provided in an embodiment of the present application is provided. The payload area of the compressed frame includes N time slots. The time slots of the compressed frame may also be referred to as time slot blocks, data blocks, or payload blocks, etc. The number of bits occupied by each time slot may be determined based on the number of bits occupied by the time slots of the data frame before compression. It should be noted that the fields included in the overhead area of the time slots of the compressed frame may be increased or decreased as required. In one possible implementation, the compressed frame may further include a public domain, which may be used to carry one or more of the extended branch channel number and the time stamp.
[0101] In one example, the compressed frame can be in the form of a cell. The cell includes a cell header and an information segment. For example, the cell header can be used to carry a service number. The public domain and the N time slots can be understood as the information segment of the cell.
[0102] In another example, the compressed frame may also have a redefined frame format. The N time slots in the compressed frame constitute a payload area, and may also include an overhead area, which may include a common field and a frame header.
[0103] In one possible implementation, each time slot in the compressed frame format may include a payload area and may further include an overhead area. In one example, the size of the payload area of each time slot may be the same as the number of bits occupied by the time slot of the data frame before compression. In another example, the number of bits occupied by the time slot of the data frame before compression may be a multiple of the number of bits occupied by the payload area of each time slot in the compressed frame format.
[0104] For example, the overhead area of each time slot in a compressed frame may include a channel field, which may be used to indicate the branch channel number of the time slot of the pre-compression data frame carried by the time slot in the compressed frame. For ease of distinction, in the following description, the time slot in the compressed frame will be referred to as the second time slot, and the time slot of the pre-compression data frame will be referred to as the first time slot. The channel field may be used to indicate the branch channel number of the first time slot of the pre-compression data frame carried by the second time slot. The channel field may also be referred to as almid, or other names, which are not specifically limited in this embodiment of the application. The number of bits occupied by the channel field can be set as needed. For example, the channel field occupies 9 bits, but a higher or lower number of bits may also be used. Optionally, the overhead area of the compressed frame format may also include a status indication field, which is used to indicate the alarm status of the first time slot carried by the second time slot. The status indication field may also be referred to as subId, or other names, which are not specifically limited in this embodiment of the application. The number of bits occupied by the status indication field can be set as needed. For example, the status indication field occupies 2 bits, but a higher or lower number of bits may also be used.
[0105] As an example, see Figure 7BAs shown, a compressed frame includes 22 second time slots, that is, N=22, and the number of bits occupied by the payload area of each second time slot is 16B. For example, almid occupies 2 bits, subId occupies 9 bits, and the public domain occupies 14 bits, then the length of the compressed frame is 384B. For another example, the compressed frame also includes a cell header, and the number of bits occupied by the cell header can be configured according to demand, such as 48B. For example, taking the data frame before compression as an ODUk frame carrying fgODU0 as an example, the bandwidth of the compressed frame can be 240M, or an integer multiple of 240M. The compressed frame can be used to carry 22 10M branch services.
[0106] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0107] See also Figure 8 The figure shows a flow chart of a data processing method provided by an embodiment of the present application. The data processing method can be executed by a network device, such as an OTN device, or by a chip or chip system within the network device, such as a circuit board and a low-level cross-connect board. The method includes steps S801-S804.
[0108] S801: Receive a first data frame of a first type, where the first data frame of the first type includes M first time slots, where M is a positive integer, and each of the M first time slots is used to carry first service data and / or padding data.
[0109] Exemplarily, the first type of data frame may be an OTN frame, or may be another type of optical transport network frame. For example, the first type of data frame may be an fgODUflex frame.
[0110] The first data frame of the first type can be understood as one of the data frames of the first type. In order to distinguish it from other data frames of the first type described later, it is referred to as the first data frame of the first type here.
[0111] S802: Identify at least one first time slot carrying first service data from the M first time slots.
[0112] A first data frame of the first type includes M first time slots, some of which carry filler data, and some of which carry service data. The network device can demap the first data frame to extract the first time slots (i.e., time slot blocks or payload blocks) that actually carry service data. To distinguish it from the service data described later, the service data carried by the M first time slots is referred to herein as first service data.
[0113] S803, map the first business data carried in the at least one first time slot to a first data frame of the second type, the payload area of the second type of data frame includes N second time slots, N is a positive integer, and the payload area included in at least one second time slot of the N second time slots is used to carry the first business data.
[0114] The first data frame of the second type is a compressed frame. The first data frame of the second type can be understood as one of the data frames of the second type. In order to distinguish it from the data frames described later, it is referred to as the first data frame of the second type here.
[0115] In some embodiments, mapping the first service data carried in the at least one first time slot to the first data frame of the second type can also be understood as mapping each first time slot in the at least one first time slot to the payload area of one or more time slots of the first data frame of the second type.
[0116] In a possible implementation, the above method may further include S804.
[0117] S804: Perform cross scheduling on the first data frame of the second type.
[0118] In one possible implementation, when performing cross-scheduling, the first business data carried by the at least one second time slot can be cross-scheduled based on at least one first time slot to which the first business data carried by the at least one second time slot belongs; the at least one first time slot belongs to the first time slot carrying the first business data among the M first time slots included in the first data frame of the first type, and M is a positive integer.
[0119] In an embodiment of the present application, the network device demaps one or more first time slots (or payload blocks or data blocks carried by the time slots) carrying service data from the first type of data frame, and then maps these first time slots into the payload area of one or more second time slots of the compressed frame. In other words, the network device strips off the first time slots of the first type of data frame that do not carry service data and no longer performs subsequent operations, i.e., no longer occupies subsequent processing resources, thereby improving resource utilization. By reducing the bandwidth occupied by data frames carrying service data, the number of CPEs connected to the network device can be increased.
[0120] In a possible implementation, the above steps S801 to S803 may be executed by a circuit board, such as a gray light circuit board or a color light circuit board. The above step S804 may be executed by a cross-connect board, such as a low-order cross-connect board.
[0121] In some embodiments, when the first time slot of the first type of data frame and the second time slot of the compressed frame are the same size, it can be understood that after the network device demaps one or more first time slots carrying service data from the first type of data frame, it can reassemble the one or more first time slots and add the cell header and overhead to obtain a complete compressed frame.
[0122] In some other embodiments, when the sizes of the first time slot of the first type of data frame and the second time slot of the compressed frame are different, for example, the number of bits occupied by the first time slot of the first type of data frame is greater than the number of bits occupied by the second time slot of the compressed frame. It can be understood that after the network device demaps one or more first time slots carrying service data from the first type of data frame, it can split the one or more first time slots, for example, split the one or more first time slots according to the size of the second time slot of the compressed frame, and after the split, map them to multiple second time slots of the compressed frame, and add the cell header and overhead to obtain a complete compressed frame. For example, if the number of bits occupied by the first time slot is twice that of the time slot of the compressed frame, each first time slot carrying service data can be split into two parts and mapped to the two second time slots of the compressed frame.
[0123] In one possible implementation, the overhead area of the time slot of the compressed frame includes a channel field. After mapping one or more first time slots carrying service data to the payload area of one or more time slots of the compressed frame, the branch channel number of the mapped first time slot can be added to the overhead area of the time slot.
[0124] In one example, the overhead area of the first type of data frame includes a multiplex structure identifier (MSI), and the MSI carries the tributary channel number corresponding to the first time slot. The tributary channel number can be extracted from the MSI field of the overhead area of the first type of data frame and then added to the channel field of the compressed frame, such as subId. In another example, the overhead area of the first data frame of the first type includes a payload type (PSI) field, and the PSI field carries the tributary channel number. For example, the PSI field includes an MSI field.
[0125] In some possible application scenarios, the M time slots included in the first type of data frame may belong to one or more branches (or branch channels), and each branch channel occupies one or more time slots. A certain branch channel number may belong to multiple first time slots of the first type of data frame. That is, it can be understood that multiple first time slots in the first type of data frame, that is, multiple payload blocks belong to the same branch channel and have the same branch channel number. Furthermore, when the first time slot carrying service data is mapped to the second time slot of the compressed frame, the multiple first time slots belonging to the same branch channel are mapped to multiple second time slots of the compressed frame. Since each second time slot of the compressed frame carries a branch channel number, when mapping the first time slot of service data to the second time slot of the compressed frame, there is no limitation on the time slot position of the first time slot mapped to the compressed frame, and it can be arbitrarily configured according to needs.
[0126] In another example, the number of bits occupied by the branch channel number extracted from the MSI field of the overhead area of the first type of data frame is greater than the number of bits occupied by the channel field of the compressed frame. In this case, the common domain field of the compressed frame can be reused. The branch channel number is carried by both the channel field of the compressed frame and the common domain field. For example, the common domain field is used to carry the high bit of the branch channel number, while the channel field is used to carry the low bit of the branch channel number. For example, the branch channel number occupies 10 bits and the channel field occupies 9 bits. 1 bit of the common domain field can be used to carry part of the bits of the branch channel number. For example, the high bit of the branch channel number can be carried by 1 bit of the common domain field.
[0127] In an embodiment of the present application, when mapping a first type of data frame to a second type of data frame, the mapping may be performed according to a correspondence between an optical transmission channel to which the first type of data frame belongs and an optical transmission channel to which the second type of data frame belongs.
[0128] In a first possible implementation, the optical transmission channel to which the first type of data frame belongs corresponds one-to-one with the optical transmission channel to which the compressed frame belongs. For ease of distinction, the optical transmission channel to which the first type of data frame belongs is referred to as the first type of frame transmission channel, and the optical transmission channel to which the second type of data frame belongs is referred to as the second type of frame transmission channel. For example, if the first type of data frame is an ODUk, then the first type of frame transmission channel is the ODUk channel. If the second type of data frame is a compressed frame, then the second type of frame transmission channel is the compressed frame channel (also referred to as the compressed channel).
[0129] When performing mapping, a data frame belonging to a first type frame transmission channel is mapped into a compressed frame of a corresponding first type frame transmission channel.
[0130] In a second possible implementation manner, the optical transmission channel to which the multiple first-type data frames belong corresponds to an optical transmission channel of one compressed frame.
[0131] When performing mapping, data frames belonging to multiple first-type frame transmission channels can be mapped into a compressed frame of one first-type frame transmission channel. Data frames belonging to different first-type frame transmission channels can be mapped into different second time slots of the compressed frame.
[0132] The following describes the first possible implementation method. For example, consider a circuit board (PCB) in a network device that performs frame compression. The PCB can also be referred to as a line card. Each first-type frame transmission channel on the PCB corresponds to a compressed frame channel.
[0133] See also Figure 9 As shown, two first-type frame transmission channels are taken as an example, namely frame transmission channel 1-1 and frame transmission channel 1-2, and two second-type frame transmission channels are taken as an example, namely compressed frame channel 2-1 and compressed frame channel 2-2.
[0134] The data frame transmitted by the frame transmission channel 1-1 is a first data frame, and the data frame transmitted by the frame transmission channel 1-2 is a second data frame.
[0135] The line board receives a first data frame of the first type through the frame transmission channel 1-1, and receives a second data frame of the first type through the frame transmission channel 1-2.
[0136] The circuit board determines at least one first time slot carrying first service data from the M first time slots of the first data frame of the first type; maps the first service data carried in the at least one first time slot to the first data frame of the second type belonging to the compressed frame channel 2-1. The tributary channel number to which the at least one first time slot belongs is added to the channel field of the first data frame of the second type. For example, if time slot 1-1 is mapped to time slot 2-1 of the first data frame of the second type, the tributary channel number of time slot 1-1 is added to the channel field of time slot 2-1 of the first data frame of the second type. For example, the tributary channel number can be extracted from the MSI field of the first data frame of the first type. In some scenarios, a common domain can be reused to carry the tributary channel number. Please refer to the above for details and will not be repeated here. In some embodiments, the circuit board also adds the alarm status of time slot 1-1 to the status indication field of time slot 2-1 of the first data frame of the second type. Furthermore, the circuit board adds a cell header to the first data frame of the second type.
[0137] The circuit board determines at least one first time slot carrying second service data from the M first time slots of the second data frame of the first type; maps the second service data carried in the at least one first time slot to a second data frame of the second type belonging to compressed frame channel 2-2. The tributary channel number to which at least one tributary time slot belongs is added to the channel field of the second data frame of the second type. For example, if time slots 1-2 of the second data frame of the first type are mapped to time slots 2-2 of the second data frame of the second type, the tributary channel number of time slots 1-2 is added to the channel field of time slots 2-2 of the second data frame of the second type. For example, the tributary channel number can be extracted from the MSI field of the second data frame of the first type. In some scenarios, a common domain can be reused to carry the tributary channel number. See above for details and will not be repeated here. In some embodiments, the circuit board also adds the alarm status of time slots 1-2 to the status indication field of time slots 2-2 of the second data frame of the second type. Furthermore, a cell header is added to the second data frame of the second type.
[0138] In order to distinguish the service data carried by different first-type frame transmission channels, the service data carried by the frame transmission channel 1-1 is referred to as first service data, and the service data carried by the frame transmission channel 1-2 is referred to as second service data.
[0139] The circuit board further transmits the first data frame of the second type and the second data frame of the second type to the lower-order cross-connect board. The lower-order cross-connect board performs cross-connect scheduling on the first data frame of the second type and the second data frame of the second type, respectively. For example, the lower-order cross-connect board extracts service data from the first data frame of the second type and the second data frame of the second type according to the compressed frame format and then performs cross-connect scheduling. For example, the lower-order cross-connect board may extract service data from the first data frame of the second type and the second data frame of the second type based on the branch channel number carried in the channel field, and perform cross-connect processing on the extracted service data.
[0140] In some possible embodiments, before bandwidth compression is performed, the circuit board may receive a first activation indication, which is used to indicate activation of a compression channel. Specifically, it indicates mapping a first type of data frame from a different first type of frame transmission channel to a second type of data frame belonging to a different second type of frame transmission channel. For example, the network device may include a controller, which sends the first activation indication to the circuit board before activating a service, such as a BID-n / ODUk-x / fgODU-y service.
[0141] The second possible implementation is described below. Taking the example of a circuit board in a network device performing frame compression, which can also be referred to as a line card, as an example, each first-type frame transmission channel on the circuit board corresponds to a compressed frame channel.
[0142] See also Figure 10 As shown, two first-type frame transmission channels are taken as an example, namely frame transmission channel 1-1 and frame transmission channel 1-2, and one second-type frame transmission channel is taken as an example, namely compressed frame channel 2-1.
[0143] The data frame transmitted by the frame transmission channel 1-1 is a first data frame, and the data frame transmitted by the frame transmission channel 1-2 is a second data frame.
[0144] The line board receives a first data frame of the first type through the frame transmission channel 1-1, and receives a second data frame of the first type through the frame transmission channel 1-2.
[0145] The circuit board determines at least one first time slot carrying first service data from the M first time slots of the first data frame of the first type; maps the first service data carried in the at least one first time slot of the first data frame of the first type to a first data frame of the second type belonging to compressed frame channel 2-1. The tributary channel number to which the at least one first time slot belongs is added to the channel field of the first data frame of the second type. The circuit board determines at least one first time slot carrying second service data from the M first time slots of the second data frame of the first type; maps the second service data carried in the at least one first time slot of the second data frame of the first type to a first data frame of the second type belonging to compressed frame channel 2-1. For example, if time slot 1-1 of the first data frame of the first type is mapped to time slot 2-1 of the first data frame of the second type, the tributary channel number of time slot 1-1 is added to the channel field of time slot 2-1 of the first data frame of the second type. If time slot 1-2 of the second data frame of the first type is mapped to time slot 2-1 of the first data frame of the second type, the tributary channel number of time slot 1-2 is added to the channel field of time slot 2 of the first data frame of the second type. For example, the branch channel number can be extracted from the MSI field of the first data frame of the first type. In some scenarios, a public domain can be reused to carry the branch channel number. Please refer to the above for details and will not be repeated here. In some embodiments, the circuit board also adds the alarm status of time slot 1-1 of the first data frame of the first type to the status indication field of time slot 2-1 of the first data frame of the second type; and adds the alarm status of time slot 1-2 of the second data frame of the first type to the status indication field of time slot 2-2 of the first data frame of the second type. Furthermore, the circuit board adds a cell header to the first data frame of the second type.
[0146] The circuit board further transmits the second-type first data frame to the lower-order cross-connect board. The lower-order cross-connect board performs cross-connect scheduling on the second-type first data frame. For example, the lower-order cross-connect board extracts service data from the second-type first data frame in a compressed frame format and performs cross-connect scheduling. For example, the lower-order cross-connect board may extract service data from the second-type first data frame based on the branch channel number carried in the channel field and perform cross-connect processing on the extracted service data.
[0147] In some possible embodiments, before performing bandwidth compression processing, the circuit board may receive a second activation indication, and the second activation indication is used to indicate the activation of multiple compression channels. That is, it indicates that the first type of data frames from different first type frame transmission channels are mapped to the second type of data frames belonging to the same second type frame transmission channel. For example, the network device may include a controller, and the controller sends a first activation indication to the circuit board before activating a service, such as activating the nth single board service (boxID-n) or the xth ODUk channel (ODUk-x) service or the yth fgODU channel (fgODU-y) service.
[0148] In some possible application scenarios, since different first-type frame transmission channels of the entire circuit board may have the same numbered branch channel numbers, the controller reallocates branch channel numbers for each first time slot of the first-type data frame when activating the fgODU-y service; and establishes a correspondence between the allocated branch channel number, the optical transmission channel to which the first-type data frame belongs, and the first time slot to which the first-type data frame belongs. The controller can send the established correspondence to the circuit board and the low-order cross-board. When the circuit board executes the mapping of the time slot of the first-type data frame carrying service data to the second-type data frame, the allocated branch channel number can be added to the channel field. Through the above correspondence, the circuit board and the low-order cross-board can identify the first time slot of the first-type data frame and the frame transmission channel to which it belongs corresponding to the channel field of the time slot of the second-type data frame according to the channel identifier.
[0149] The following describes the solution provided by the embodiment of the present application in conjunction with a specific application scenario. For example, the first type of data frame is ODU0, and the second type of data frame is a compressed frame. For example, the fgODU scenario is mapped into ODUk.
[0150] See also Figure 11 As shown, fgODU0 is mapped to ODU0 using a simplified version of the generic mapping procedure (GMP-lite), see Figure 11 FIG. 1 is a schematic diagram of the first time slot of fgODUflex in the OPUO frame in ODU0. Figure 11 ODU0 consists of 119 10M time slots. The ODU0 payload area is divided into 119 10M time slots. The time slot interleaving granularity is 16 bytes. Figure 11 Each time slot (or time slot block) is 16 bytes. Figure 11 fgTS represents time slot. 32 ODU0s form a multiframe. Figure 11 It can be seen that the first time slot in ODU0 is divided into 16-bit units, and an ODU0 has 119 time slots. For example, the number of bits occupied by the payload area of each time slot in the compressed frame is 16 bits. Figure 11 In the figure, fgTSOH represents the timeslot overhead, PT represents the service type indicator, and OMFI represents the OPU multi-frame indication.
[0151] See also Figure 12 As shown, when performing bandwidth compression, the line board demaps the received ODU0 according to GMP-lite. Based on the timeslot channel number indicated by the MSI in the ODU0, the line board extracts the 16B first timeslot that actually carries the service data. This is then mapped to the 16B payload area of the compressed frame. The branch channel number indicated by the MSI is then added to the channel field. Multiple first timeslots of an ODUk (an ODUk channel) or multiple first timeslots of multiple ODUks (multiple ODUk channels) are mapped into a compressed frame, thus assembling a complete compressed frame. The frame is then assembled into a cell format by adding a cell header and other overhead. The frame is then sent to the lower-order cross-connect board via the switching fabric. The lower-order cross-connect board extracts the fgODU0 channel data (each 16B timeslot) according to the compressed frame format and performs cross-connect scheduling.
[0152] The following describes the first possible implementation method based on the above scenario. Figure 13 As shown, when activating a service, the controller in the network device may send a first activation instruction to the line board to activate the compression channel (or compressed cell channel). After receiving the ODU0 carrying fgODU0, the line board performs bandwidth compression, extracts 16B of service data (or time slot blocks or payload blocks) from the service data in the ODUK according to the ODUk channel to which it belongs and the first time slot position, and maps it to the 16B payload area of the compressed frame. The service data of the ODUk frames belonging to different ODUk channels are mapped to the compressed frames of different compression channels. See Figure 13As shown in the figure, ODU0-1 is mapped to compressed frame 1, and ODU0-2 is mapped to compressed frame 2. Compressed frame 1 and compressed frame 2 belong to different compression channels. ODU0-1 and ODU0-2 belong to different frame transmission channels. The time slot channel ID (TPID) of the first timeslot indicated by the MSI is added to the channel field. The channel alarm status of the first timeslot is added to the almId field. The cell header and other overhead are then added to assemble the compressed frame and sent to the lower-order cross-connect board. Figure 13 The example uses a 384B compressed frame. The lower-order cross-connect board identifies the channel field and parses it into a timeslot block or payload block (i.e., fgODU) for cross-connect processing. Taking a 384B compressed frame as an example, one compressed frame can be divided into 22 x 16B, or 22 16B payload blocks, with a minimum bandwidth of 240M. For example, a 40G slot can support a maximum of 40 / 0.24 / 2 = 83 CPEs.
[0153] The following describes the second possible implementation method based on the above scenario. Figure 14 As shown, when activating a service, the controller in the network device may send a first activation indication to the line board to activate the compression channel (or called a compression cell channel). When activating the fgODU channel service, the controller assigns a branch channel number to the fgODU, that is, assigns a branch channel number to the fgODU mapped to a time slot of ODU0. Different fgODU services are assigned different branch channel numbers. It can be understood that the branch channel numbers assigned to the time slots of different ODUK channels are all different. And establish a correspondence between the assigned branch channel number, the ODUk channel, and the first time slot to which the fgODU belongs. The controller can send the established correspondence to the line board and the low-order cross-board. After the line board receives the ODU0 frame carrying the fgODU, it performs bandwidth compression, extracts 16B of business data (or time slot block or payload block or fgODU service) from the fgODU service data in the ODUK according to the frame transmission channel to which it belongs and the first time slot position, and maps it to the 16B payload area of the compressed frame. See. Figure 14 As shown in the figure, ODU0-1 is mapped to compressed frame 1, and ODU0-2 is mapped to compressed frame 1. ODU0-1 and ODU0-2 belong to different frame transmission channels. The assigned tributary channel number is added to the channel field. The channel alarm status of the first timeslot is added to the almId field. The cell header and other overhead are then added to assemble the compressed frame and sent to the lower-order cross-connect board. Figure 14The example uses a 384B compressed frame. The low-order cross-connect board identifies the channel field and parses it to extract the timeslot block or payload block (i.e., fgODU) for cross-connect processing. Taking a 384B compressed frame as an example, a line board with 10 ports, each with a 50M bandwidth, or 500M per board, can divide a compressed frame into 22*16B, or 22 16B payload blocks, for a minimum bandwidth of 240M. For example, a 40G slot can support a maximum of 10*40 / 0.5G / 2 = 400 CPEs.
[0154] Based on the same inventive concept as the above embodiment, the embodiment of the present application also provides a data processing device. The device can be a processor in an OTN device, or a chip or chip system, or a functional module for sending. Figure 15 As shown, the device may include a receiving unit 1501, a determining unit 1502, a mapping unit 1503, and a cross unit 1504; wherein the receiving unit 1501 is used to execute S801, the determining unit 1502 is used to execute S802, the mapping unit 1503 is used to execute S803, and the cross unit 1504 is used to execute S804. The repeated parts will not be repeated here.
[0155] The division of units in the embodiments of the present application is illustrative and is merely a logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional units in the various embodiments of the present application may be integrated into a single processor, or may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0156] The present application also provides another data processing device structure, such as Figure 16 As shown, the data processing device may include a communication interface 1610, a processor 1620, and a memory 1630. The device may be used in an OTN device, and the device may specifically be a processor, a chip, a chip system, or a module in a processor in the OTN device. Figure 2 It can be implemented by the circuit board in the system, or by the circuit board + cross-connect board.
[0157] above Figure 15 The receiving unit 1501, the determining unit 1502, the mapping unit 1503, and the cross-linking unit 1504 shown in FIG can all be implemented by the processor 1620. The processor 1620 receives the first type of data frame through the communication interface 1610, and is used to implement Figure 8 In the implementation process, each step of the processing flow can be completed by the hardware integrated logic circuit in the processor 1620 or the software form of instructions. Figure 8 The method described.
[0158] In the embodiment of the present application, the communication interface 1610 may be a circuit, a bus, a transceiver, or any other device that can be used for information exchange, wherein, illustratively, the other device may be a device connected to the data processing device.
[0159] In the embodiments of the present application, the processor 1620 may be a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field-programmable gate array, or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and may implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of the present application may be directly implemented and executed by a hardware processor, or by a combination of hardware and software components within the processor. The program code executed by the processor 1620 to implement the aforementioned methods may be stored in the memory 1630. The memory 1630 is coupled to the processor 1620. Coupling in the embodiments of the present application refers to an indirect coupling or communication connection between devices, units, or modules, and may be electrical, mechanical, or other forms, used for information exchange between the devices, units, or modules. The processor 1620 may operate in conjunction with the memory 1630. The memory 1630 may be a non-volatile memory, such as a hard disk drive (HDD) or a solid-state drive (SSD), or a volatile memory, such as a random-access memory (RAM). The memory 1630 is any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto.
[0160] The specific connection medium between the communication interface 1610, the processor 1620 and the memory 1630 is not limited in the embodiment of the present application. Figure 16 The memory 1630, the processor 1620 and the communication interface 1610 are connected via a bus. Figure 16 The connections between the other components are shown in bold lines, which are only for illustration and are not intended to be limiting. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, Figure 16 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.
[0161] Based on the above embodiments, embodiments of the present application further provide a computer storage medium storing a software program that, when read and executed by one or more processors, can implement the methods provided by any one or more of the above embodiments. The computer storage medium may include any medium capable of storing program code, such as a USB flash drive, a mobile hard drive, a read-only memory, a random access memory, a magnetic disk, or an optical disk.
[0162] Based on the above embodiments, embodiments of the present application further provide a chip, which includes a processor for implementing the functions involved in any one or more of the above embodiments, such as acquiring or processing the data frames involved in the above methods. Optionally, the chip also includes a memory for storing the necessary program instructions and data executed by the processor. The chip can be composed of a chip alone, or it can include a chip and other discrete devices.
[0163] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0164] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0165] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0166] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0167] Obviously, those skilled in the art can make various changes and modifications to the embodiments of the present application without departing from the scope of the embodiments of the present application. Thus, if these modifications and variations of the embodiments of the present application fall within the scope of the claims of the present application and their equivalents, the present application also intends to include these modifications and variations.
Claims
1. A data processing method, characterized in that: include: receiving a first data frame of a first type, wherein a payload area of the first data frame of the first type includes M first time slots, where M is a positive integer, and each of the M first time slots is used to carry first service data and / or padding data; and an overhead area of the first data frame of the first type includes a branch channel number of the first time slot carrying the first service data; Identifying at least one first time slot carrying first service data from the M first time slots according to the branch channel number included in the overhead area of the first data frame of the first type; The first service data carried in the at least one first time slot is mapped to a first data frame of the second type, the payload area of the second type of data frame includes N second time slots, N is a positive integer, and the payload area included in at least one second time slot of the N second time slots is used to carry the first service data.
2. The method according to claim 1, wherein The first type of data frame is a small-granularity flexible optical data unit fgODUflex frame.
3. The method according to claim 1 or 2, wherein: The number of bits occupied by the payload area included in the second time slot is equal to the number of bits occupied by the first time slot.
4. The method according to claim 3, wherein The payload area of the second type of data frame occupies 16 bytes.
5. The method according to any one of claims 1 to 4, characterized in that The first data frame of the second type also includes an overhead area, the overhead area of the first data frame of the second type includes a common domain, any second time slot of the at least one second time slot also includes an overhead area, the overhead area of any second time slot includes a channel field, the common domain carries the high bit of the branch channel number, the channel field of any second time slot carries the low bit of the branch channel number, and the branch channel number is used to indicate the first time slot to which the first service data carried by the payload area of any second time slot belongs.
6. The method according to any one of claims 1 to 4, characterized in that Any second time slot of the at least one second time slot further includes an overhead area, and the overhead area of any second time slot includes a channel field, and the channel field carries the branch channel number of the first time slot to which the first service data carried by any second time slot belongs.
7. The method according to claim 5 or 6, wherein: The overhead area of the first data frame of the first type includes a multiplexing structure identifier (MSI) field, and the MSI field carries the branch channel number.
8. The method according to any one of claims 5 to 7, wherein: The overhead area of any second time slot further includes a status indication field, and information carried by the status indication field is used to indicate an alarm status of a branch channel corresponding to the branch channel number carried by any second time slot.
9. The method according to any one of claims 1 to 8, wherein The method further comprises: receiving a second data frame of a first type, wherein each of the M first time slots of the second data frame of the first type is used to carry second service data and / or padding data; the second data frame of the first type and the first data frame of the first type belong to a different optical transmission channel; Identifying at least one first time slot carrying second service data from the M first time slots of the second data frame according to the branch channel number included in the overhead area of the second data frame of the first type; The second service data carried in at least one first time slot is mapped to a second data frame of a second type, the payload area of the second type of data frame includes N second time slots, N is a positive integer, and the payload area included in at least one second time slot of the N time slots is used to carry the second service data; the second type of second data frame and the second type of first data frame belong to a different optical transmission channel.
10. The method according to claim 9, wherein The method further comprises: Before determining at least one first time slot carrying second business data from the M first time slots of the second data frame of the first type, a first activation indication is received, wherein the first activation indication is used to indicate mapping the first type of data frames from different optical transmission channels to the second type of data frames belonging to different optical transmission channels.
11. The method according to any one of claims 1 to 6, wherein: The method further comprises: receiving a second data frame of a first type, wherein each of the M first time slots of the second data frame of the first type is used to carry second service data and / or padding data; the second data frame of the first type and the first data frame of the first type belong to a different optical transmission channel; Identifying at least one first time slot carrying second service data from the M first time slots of the second data frame of the first type according to the branch channel number included in the overhead area of the second data frame of the first type; The second business data carried in at least one first time slot is mapped to the first data frame of the second type, and the payload area included in at least one second time slot among the N second time slots is used to carry the second business data; the at least one second time slot carrying the second business data is different from the at least one second time slot carrying the first business data.
12. The method according to claim 11, wherein The method further comprises: Before determining at least one first time slot carrying second business data from the M first time slots of the second data frame of the first type, a second activation indication is received, wherein the second activation indication is used to indicate that first type data frames from different optical transmission channels are mapped to second type data frames belonging to the same optical transmission channel.
13. The method according to claim 11 or 12, wherein: The method further comprises: Configuration information is received, where the configuration information is used to indicate a correspondence between a branch channel number allocated to the first type of data frame, an optical transmission channel to which the first type of data frame belongs, and a first time slot to which the first type of data frame belongs.
14. A data processing method, characterized in that: include: receiving a first data frame of a second type, wherein a payload area of the first data frame of the second type includes N second time slots, where N is a positive integer; According to at least one first time slot to which the first business data carried by K1 second time slots in the N second time slots belongs, the first business data carried by the K1 second time slots is cross-scheduled; the at least one first time slot belongs to at least one first time slot carrying the first business data in the M first time slots included in the first data frame of the first type, where M is a positive integer and K1 is a positive integer less than or equal to N.
15. The method according to claim 14, wherein The first type of data frame is a small-granularity flexible optical data unit fgODUflex frame.
16. The method according to claim 14 or 15, characterized in that The number of bits occupied by the payload area included in the second time slot is equal to the number of bits occupied by the first time slot.
17. The method according to claim 16, wherein The payload area of the second time slot occupies 16 bytes.
18. The method according to any one of claims 14 to 17, wherein: The first data frame of the second type also includes an overhead area, the overhead area of the first data frame of the second type includes a common domain, any second time slot among the K1 second time slots also includes an overhead area, the overhead area of any second time slot includes a channel field, the common domain carries the high bit of the branch channel number, the channel field of any second time slot carries the low bit of the branch channel number, and the branch channel number is used to indicate the first time slot to which the first service data carried by the payload area of any second time slot belongs.
19. The method according to any one of claims 14 to 17, wherein: The first time slot also includes an overhead area, the overhead area of the first time slot includes a channel field, the channel field carries a branch channel number, and the branch channel number is used to indicate the first time slot to which the first service data carried by the payload area of the first time slot belongs.
20. The method according to claim 18 or 19, wherein The tributary channel number comes from a multiplexing structure identifier MSI in an overhead area of a first data frame of the first type.
21. The method according to any one of claims 18 to 20, wherein: The overhead area of any second time slot among the K1 second time slots further includes a status indication field, and information carried by the status indication field is used to indicate the alarm status of the branch channel corresponding to the branch channel number carried by any second time slot.
22. The method according to any one of claims 14 to 21, wherein: The method further comprises: receiving a second data frame of a second type, wherein a payload area of the second data frame of the second type includes N second time slots, where N is a positive integer; According to at least one first time slot to which the second business data carried by K2 second time slots in the N second time slots belongs, the second business data carried by the at least one second time slot is cross-scheduled; the at least one first time slot belongs to at least one first time slot carrying first business data in the M first time slots included in the second data frame of the first type, M is a positive integer, the second data frame of the second type and the first data frame of the second type belong to a different optical transmission channel, and K2 is a positive integer less than or equal to N.
23. The method according to any one of claims 14 to 21, wherein: The method further comprises: According to at least one first time slot to which the second business data carried by K3 second time slots in the N second time slots belongs, the second business data carried by the K3 second time slots are cross-scheduled; the at least one first time slot belongs to at least one first time slot carrying second business data in the M first time slots included in the second data frame of the first type, M is an integer greater than N, the second data frame of the second type and the first data frame of the second type belong to the same optical transmission channel, K3 is a positive integer, and K1+K3 is less than or equal to N.
24. The method according to claim 23, wherein The method further comprises: receiving configuration information, where the configuration information is used to indicate a correspondence between a branch channel number allocated to the first type of data frame, an optical transmission channel to which the first type of data frame belongs, and a first time slot to which the first type of data frame belongs; The first time slot to which the first service data carried by the second time slot belongs is determined according to the configuration information.
25. A data processing device, characterized in that: A processor and a memory, wherein: The memory stores program code; The processor is configured to read and execute the program code stored in the memory to implement the method according to any one of claims 1 to 13, or to implement the method according to any one of claims 14 to 24.
26. A chip, characterized in that: The chip is connected to the memory and is used to read and execute the program code stored in the memory to implement the method according to any one of claims 1 to 13, or to implement the method according to any one of claims 14 to 24.