Data transmission method and device

By indicating the object of the load field in the first indication field of the data block in the OTN, the problem of high data transmission delay in OTN is solved, and more efficient service transmission and reduced bandwidth lossless adjustment complexity is achieved.

CN119995771APending Publication Date: 2025-05-13HUAWEI TECH CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202311508223.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-13
Publication Date
2025-05-13

AI Technical Summary

Technical Problem

When transmitting data in an optical transmission network (OTN), how to reduce data transmission delay and improve service transmission efficiency has become an urgent problem.

Method used

By setting a first indication field in the data block, the object carried by the indication load field is data or padding, the receiving device can determine the amount of data of the received data frame in real time, reducing the hysteresis of rate control.

Benefits of technology

This method effectively reduces data transmission delay, improves service transmission efficiency, and reduces the complexity of lossless bandwidth adjustment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119995771A_ABST
    Figure CN119995771A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission method and device, and the method comprises the steps: mapping service data into a data frame, and transmitting the data frame. Wherein the data frame comprises a payload area, the payload area comprises a plurality of data blocks, each data block in the plurality of data blocks comprises a first indication field and a load field, and the first indication field is used for indicating that an object borne by the load field is data or filling. The technical scheme of the invention can be applied to the technical field of optical communication, and the first indication field is set in the data block, so that the object carried by the load field with a fixed number of bytes can be indicated, and the receiving end equipment can determine the data volume of the received data frame in real time. Thus, the receiving end equipment does not need to cache the data or read the data from the cache in the rate adaptation process, the hysteresis of rate control in the data transmission process can be reduced, the data transmission time delay is further reduced, and the service transmission efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of optical communication technology, and more specifically, to a method and device for transmitting data. Background Art

[0002] With the continuous expansion and optimization of network scale, the synchronous digital hierarchy (SDH) is gradually withdrawn from the network, and the optical transport network (OTN) is gradually transitioning to the transmission of Ethernet (ETH) services. Compared with carrying SDH services, OTN does not need clock transmission when carrying ETH services, and should have the lowest possible latency.

[0003] Therefore, when transmitting data in OTN, how to reduce data transmission delay has become an urgent problem to be solved. Summary of the invention

[0004] The present application provides a method and device for transmitting data, which can reduce the hysteresis of rate control, thereby reducing data transmission delay and improving service transmission efficiency.

[0005] In a first aspect, a method for transmitting data is provided, which can be performed by a transmitting device or by a component of the transmitting device (such as a chip or a chip system, etc.), and the present application does not limit this. The method includes: mapping service data into a data frame, the data frame includes a payload area, the payload area includes multiple data blocks, each of the multiple data blocks includes a first indication field and a load field, the first indication field is used to indicate that the object carried by the load field is data or padding; sending a data frame.

[0006] In a second aspect, a method for transmitting data is provided, which can be performed by a receiving device or by a component of the receiving device (such as a chip or a chip system, etc.), and the present application does not limit this. The method includes: receiving a data frame, the data frame includes a payload area, the payload area includes multiple data blocks, each of the multiple data blocks includes a first indication field and a load field, the first indication field is used to indicate that the object carried by the load field is data or padding; according to the first indication field of at least one data block in the multiple data blocks, demapping the service data from the data frame.

[0007] In some implementations, the 2N+1 bits included in the first indication field are used to indicate that the object carried by the load field is data or padding, where N is an integer greater than or equal to 1, that is, the object carried by the load field is indicated by majority decision, thereby improving the reliability of the scheme.

[0008] In the above technical solution, by setting the first indication field in the data block to indicate the object carried by the load field of a fixed number of bytes, it is helpful for the receiving end device to determine the data volume of the received data frame in real time. In other words, in the process of rate adaptation, the receiving end device helps to reduce the number of data caches or data read from the cache, which can reduce the lag of rate control during data transmission, thereby reducing data transmission delay and improving service transmission efficiency.

[0009] In combination with the first aspect or the second aspect, in certain implementations of the first aspect or the second aspect, the first indication field is further used to indicate the number of data blocks that have been sent and whose carrying objects are data.

[0010] In the above technical solution, the first indication field indicates the number of data blocks that have been sent and whose carrying objects are data, which helps the receiving device to determine and / or correct the amount of data determined by itself, helps to ensure the accuracy of the framing of the receiving device, and thus improves the reliability of the solution.

[0011] In combination with the first aspect or the second aspect, in certain implementations of the first aspect or the second aspect, the data frame also includes an overhead area, the overhead area includes a second indication field, and the second indication field is used to indicate the offset of the starting data block in the next multi-frame period of the data frame.

[0012] In combination with the first aspect or the second aspect, in certain implementations of the first aspect or the second aspect, the overhead area further includes a third indication field, and the third indication field is used to indicate a moment when bandwidth lossless adjustment is performed on multiple data blocks.

[0013] In the above technical solution, by transmitting multiple data blocks, the receiving end device can determine the data volume in real time, which helps to reduce the impact of the hysteresis of rate control on the lossless bandwidth adjustment. In addition, the position of the data block where the lossless bandwidth adjustment starts in the multiple data blocks can be indicated through the third indication field, which helps to reduce the complexity of the lossless bandwidth adjustment.

[0014] In combination with the first aspect or the second aspect, in certain implementations of the first aspect or the second aspect, the first indication field occupies 1 byte and the load field occupies 192 bytes.

[0015] In combination with the first aspect or the second aspect, in certain implementations of the first aspect or the second aspect, the data frame includes an optical transport network OTN frame or a flexible OTN frame.

[0016] In combination with the second aspect, in certain implementations of the second aspect, business data is demapped from a data frame based on a first indication field of at least one data block among a plurality of data blocks, including: determining a first number of data blocks whose carrying objects are data received in the current multi-frame period based on the first data block and a data block received before the first data block is received in the current multi-frame period; when the number of data blocks indicated by the counting information carried by the first data block is different from the first number, modifying a determination result of the carrying object of a load field of a second data block, the second data block being a data block received after the first data block.

[0017] In a third aspect, an embodiment of the present application provides a device for transmitting data. The device is used to execute the method provided in the first aspect above, or to execute the method provided in the second aspect above. Specifically, the device may include a unit and / or module for executing the method provided in the first aspect or any one of the above implementations of the first aspect, or the device may include a unit and / or module, such as a processing module and a transceiver module, for executing the method provided in the second aspect or any one of the above implementations of the second aspect.

[0018] In one implementation, the device for transmitting data may include a unit and / or module for executing the method provided by the first aspect or any one of the above implementations of the first aspect, which is a transmitting end device. The transceiver module may be a transceiver, or an input / output interface. The processing module may be at least one processor. Optionally, the transceiver may be a transceiver circuit. Optionally, the input / output interface may be an input / output circuit.

[0019] Alternatively, the device for transmitting data is a chip, a chip system or a circuit in a transmitting end device. The transceiver module may be an input / output interface, an interface circuit, an output circuit, an input circuit, a pin or a related circuit on the chip, the chip system or the circuit. The processing module may be at least one processor, a processing circuit or a logic circuit.

[0020] In another implementation, the device for transmitting data may include a unit and / or module for executing the method provided by the second aspect or any one of the implementations of the second aspect, which is a receiving end device. The transceiver module may be a transceiver, or an input / output interface. The processing module may be at least one processor. Optionally, the transceiver may be a transceiver circuit. Optionally, the input / output interface may be an input / output circuit.

[0021] Alternatively, the device for transmitting data is a chip, a chip system or a circuit in a receiving device. The transceiver module may be an input / output interface, an interface circuit, an output circuit, an input circuit, a pin or a related circuit on the chip, the chip system or the circuit. The processing module may be at least one processor, a processing circuit or a logic circuit.

[0022] In a fourth aspect, an embodiment of the present application provides a processor for executing the methods provided in the above aspects.

[0023] For the operations such as sending and acquiring / receiving involved in the processor, unless otherwise specified, or unless they conflict with their actual function or internal logic in the relevant description, they can be understood as operations such as processor output, reception, input, etc., or as sending and receiving operations performed by the radio frequency circuit and antenna, and this application does not limit this.

[0024] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium. The computer-readable storage medium stores a program code for execution by a device, and the program code includes a method for executing any one of the implementations of the first aspect or the second aspect.

[0025] In a sixth aspect, an embodiment of the present application provides a computer program product comprising instructions. When the computer program product is run on a computer, the computer is caused to execute the method provided in any one of the implementations of the first aspect or the second aspect.

[0026] In a seventh aspect, an embodiment of the present application provides a chip, which includes a processor and a communication interface, wherein the processor reads instructions stored in a memory through the communication interface and executes the method provided in any one of the implementations of the first aspect or the second aspect.

[0027] Optionally, as an implementation method, the chip also includes a memory, in which a computer program or instructions are stored, and the processor is used to execute the computer program or instructions stored in the memory. When the computer program or instructions are executed, the processor is used to execute the method provided in any one of the implementation methods of the first or second aspect above.

[0028] The beneficial effects brought about by the third to seventh aspects mentioned above can be specifically referred to the description of the beneficial effects in the first or second aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] Figure 1 It is a schematic diagram of an application scenario of an embodiment of the present application.

[0030] Figure 2 It is a schematic diagram of the hardware structure of an OTN device provided in an embodiment of the present application.

[0031] Figure 3 It is a schematic diagram of the optical transport network data frame structure.

[0032] Figure 4 It is a structural diagram of an optical transport network data frame provided in an embodiment of the present application.

[0033] Figure 5 It is a structural diagram of a data block provided in an embodiment of the present application.

[0034] Figure 6 This is another structural diagram of a data block provided in an embodiment of the present application.

[0035] Figure 7 This is another structural diagram of an optical transport network data frame provided in an embodiment of the present application.

[0036] Figure 8 It is a schematic flowchart of the method for transmitting data provided in an embodiment of the present application.

[0037] Fig. 9 It is a schematic block diagram of a device for transmitting data provided in an embodiment of the present application.

[0038] Fig.10 It is a schematic block diagram of the OTN device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0039] The technical solution in this application will be described below in conjunction with the accompanying drawings.

[0040] In the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is a kind of association relationship that describes associated objects, indicating that three relationships can exist, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In this application, "at least one" means one or more, and "multiple" means two or more. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.

[0041] The prefixes such as "first" and "second" used in the embodiments of the present application are only used to distinguish different description objects, and have no limiting effect on the position, order, priority, quantity or content of the described objects. The use of prefixes such as ordinal numbers used to distinguish description objects in the embodiments of the present application does not constitute a limitation on the described objects. For the statement of the described objects, please refer to the description in the context of the claims or embodiments, and the use of such prefixes should not constitute an unnecessary limitation.

[0042] The embodiments of the present application are applicable to optical networks, such as OTN. An OTN is usually composed of multiple devices connected by optical fibers, and can be composed of different topology types such as linear, ring and mesh according to specific needs. Figure 1 The OTN 100 shown is composed of eight OTN devices 101, namely devices A to H. The optical fiber 102 is used to connect two devices, and the customer service interface 103 is used to receive or send customer service data. Figure 1 As shown, OTN 100 is used to transmit service data for customer devices 1 to 3. The customer devices are connected to the OTN devices through customer service interfaces. For example, Figure 1 In the example, customer devices 1 to 3 are connected to OTN devices A, H and F respectively.

[0043] In the embodiment of the present application, service data refers to the services that can be carried by the optical transport network. For example, it can be Ethernet services, packet services, wireless backhaul services, etc. Service data can also be called service signals, customer data or customer service data.

[0044] According to 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 (OA) and optical add-drop multiplexers (OADM). OA can also be called optical line amplifiers (OLA), which are mainly used to amplify optical signals to support transmission over longer distances while ensuring the specific performance of optical signals. OADM is used to spatially transform optical signals so that they can be output from different output ports (sometimes also called directions). Electrical layer devices refer to devices that can process electrical layer signals, such as devices that can process OTN signals. Optoelectronic hybrid devices refer to devices that have the ability to process optical layer signals and electrical layer signals. It should be noted that, according to specific integration needs, an OTN device can combine multiple different functions. The technical solution provided in this application is applicable to OTN devices with electrical layer functions of different forms and integration levels.

[0045] Figure 2 A possible OTN equipment hardware structure diagram is shown below. Figure 1Device A in the figure. Specifically, the OTN device 200 includes a branch board 201, a cross board 202, a line board 203, an optical layer processing board (not shown in the figure), and a system control and communication board 204. According to specific needs, the type and quantity of boards included in the OTN device may be different. For example, an OTN device as a core node does not have a branch board 201. For another example, an OTN device as an edge node has multiple branch boards 201, or no optical cross board 202. For another example, an OTN device that only supports electrical layer functions may not have an optical layer processing board.

[0046] The tributary board 201, the cross board 202 and the line board 203 are used to process the electrical layer signals of the OTN. Among them, the tributary board 201 is used to realize the reception and transmission of various customer services, such as SDH services, packet services, Ethernet services and fronthaul services. Further, the tributary board 201 can be divided into a customer-side optical transceiver module and a signal processor. Among them, the customer-side optical transceiver module can also be called an optical transceiver, which is used to receive and / or send service data. The signal processor is used to realize the mapping and demapping processing of service data to data frames. The cross board 202 is used to realize the exchange of data frames and complete the exchange of one or more types of data frames. The line board 203 mainly realizes the processing of line-side data frames. Specifically, the line board 203 can be divided into a line-side optical module and a signal processor. Among them, the line-side optical module can be called an optical transceiver, which is used to receive and / or send data frames. The signal processor is used to realize the multiplexing and demultiplexing of the data frames on the line side, or the mapping and demapping processing. The system control and communication type single board 204 is used to realize system control. Specifically, information can be collected from different boards, or control instructions can be sent to the corresponding boards. It should be noted that, unless otherwise specified, the specific components (such as signal processors) can be one or more, and this application does not limit this. It should also be noted that this application does not impose any restrictions on the types of boards included in the device, as well as the functional design and quantity of the boards. It should be noted that in a specific implementation, the above two boards may also be designed as one board. In addition, the OTN equipment may also include a power supply for backup, a fan for heat dissipation, etc.

[0047] It should be noted that the data frame structure used by the OTN device in the embodiment of the present application is an OTN frame, which is used to carry various business data and provide rich management and monitoring functions. The OTN frame can be an optical payload unit k (OPUk) frame, an optical data unit k (ODUk) frame, or an optical transport unit k (OTUk). k represents different rate levels, k = 0, 1, 2, 3, 4, Cn and flex, respectively indicating bit rates of 1.25 Gbits per second (Gbit / s or Gbps), 2.5 Gbit / s, 10 Gbit / s, 40 Gbit / s, 100 Gbit / s, n*100 Gbit / s, and n*1.25 Gbit / s (n≥2). Figure 3 FIG. 1 is a schematic diagram of the frame structure of an OTN frame. Figure 3 As shown in FIG. 1 , the OTN frame is a 4-row multi-column frame structure, including an overhead area and a payload area. Each column is 1 byte (B). Figure 3 In the OTN frame structure shown, the first 4 rows*16 columns are the overhead area of ​​OTU / ODU / optical payload unit (OPU), followed by the OPU payload area. The OPUk payload area and OPUk overhead area constitute the OPUk frame, the OPUk frame and ODUk overhead area constitute the ODUk frame, and the ODUk frame, OTUk overhead area, frame alignment signal (FAS) and forward error correction (FEC) check area constitute the OTUk frame. For a more specific OTN frame structure, please refer to the relevant description in the current protocol, which will not be repeated here.

[0048] Unless otherwise specified, an OPU frame refers to any one of OPUk, OPUCn or OPUflex, an ODU frame refers to any one of ODUk, ODUCn or ODUflex, and an OTU frame refers to any one of OTUk, OTUCn or FlexO. It should also be noted that with the development of OTN technology, new types of OTN frames may be defined, which are also applicable to this application.

[0049] As mentioned above, with the continuous expansion and optimization of the network scale, SDH is gradually withdrawn from the network, and OTN is gradually transitioning to the transmission of ETH services. Compared with carrying SDH services, OTN does not need clock transmission when carrying ETH services, and should have the lowest possible latency. In the existing OTN technology, low-order ODUs can be multiplexed into high-order ODUs. Specifically, 4 ODU1s can be multiplexed into one ODU2, 4 ODU2s can be multiplexed into one ODU3, and 16 ODU1s can be multiplexed into one ODU3. For the OPUk of the high-order ODU, byte-granular time division multiplexing (TDM) can be used to interleave and divide it into multiple tributary time slots (TS). A TS includes a part of the OPUk overhead area and a part of the OPUk payload area. For example, OPU2 can be divided into 4 2.5Gbps TSs, or it can be divided into 8 1.25Gbps TSs. For another example, OPU3 can be divided into 16 2.5Gbps TSs, or it can be divided into 32 1.25Gbps TSs. When a low-order ODU is mapped to a high-order ODU time slot, an overhead (OH) is generally used to notify the client signal rate adaptation, and the above-mentioned OH may include adjustment control (JC) 1 to JC6. Among them, the specific contents of JC1 to JC6 can refer to the relevant description in the current protocol, which will not be repeated here. When the generic mapping procedure (GMP) is used to map the low-order ODU to the high-order ODU, it is necessary to predetermine the amount of data in the next frame period based on the statistics of the historical rate. Since this control method has a lag in rate control, the continuity of the data needs to be strictly guaranteed when performing ODU cross-scheduling. In this way, the data must be cached after cross-scheduling so that the expected amount of data can be scheduled in the next frame period. However, reading and writing data in the cache increases the scheduling delay, making it impossible for the current OTN to meet the low latency requirements of ETH services when used to transmit ETH services. In addition, when performing lossless bandwidth adjustment based on GMP, the lag of rate control increases the complexity of bandwidth adjustment.

[0050] In order to solve the above problems, the embodiment of the present application defines a data block in the branch time slot of the high-order OTN frame based on the current OTN frame structure. The receiving device can determine the data amount of the low-order OTN frame through the data block. That is to say, when the receiving device performs rate adaptation, there is no need to cache data or read data from the cache, which helps to reduce the latency of the OTN device transmission service.

[0051] Figure 4 FIG. 2 shows an OTN frame structure provided by an embodiment of the present application. Figure 4 As shown, the payload area of ​​the OTN frame includes at least one TS of 4 rows × N columns, and the TS includes multiple data blocks. Each data block includes a first indication field and a load field. The first indication field indicates that the object carried by the load field is data or padding, and the load field is used to carry data or padding. The data block is used as the minimum transmission unit for service transmission between the transmitting end device and the receiving end device. Exemplarily, N can be the number of columns of a TS, and the specific value of N can be determined according to the order of the high-order OTN frame and the rate of each TS. For example, taking the high-order OTN frame as ODU2 and the rate of each TS as 1.25Gbps as an example, N can be 476; taking the high-order OTN frame as ODU2 and the rate of each TS as 2.5Gbps as an example, N can be 952; taking the high-order OTN frame as ODU2 and the rate of each TS as 5Gbps as an example, N can be 1904. Furthermore, when the low-order OTN frame is mapped to the high-order OTN frame, M tributary time slots may be occupied, that is, when the low-order OTN frame is transmitted in ODU2, N×M columns are occupied, and the N×M columns×4×L rows constitute a multi-frame period. Among them, M can be a positive integer, and L indicates the multiplexing period of the tributary slot overhead (TSOH) of the high-order OTN frame, that is, TSOH is multiplexed once every L frames in the high-order OTN frame. Taking the ODU2 with a high-order OTN frame and a rate of 1.25 Gbps for each TS as an example, L can be 8. The time slot overhead part can carry a second indication field, which indicates the offset of the starting data block in the next multi-frame period. For example, Figure 4 There is a load field of x B before the first data block in the multiframe, and this x B can be considered as the offset of the starting data block of the multiframe period. The starting offset of x B can be indicated by the second indicator field of the previous multiframe period. In actual implementation, a data block can be carried across rows, for example, the first row carries the first indicator field of data block a, and the second row carries the load field of data block a; or, the first row carries the first indicator field and part of the load field of data block b, and the second row carries the remaining load field of data block b. A data block can also be carried across branch time slots, for example, the current branch time slot carries the first indicator field of data block c, and the next branch time slot carries the load field of data block c; or, the current branch time slot carries the first indicator field and part of the load field of data block d, and the next branch time slot carries the remaining load field of data block d. A data block can also be carried across multi-frame periods, for example, the current multi-frame period carries the first indication field of data block e, and the next multi-frame period carries the load field of data block e; or, the current multi-frame period carries the first indication field and part of the load field of data block f, and the next multi-frame period carries the remaining load field of data block f.

[0052] Figure 5 A schematic diagram of the first indication field provided in an embodiment of the present application is shown. Figure 5 As shown, the first indication field may include 8 bits, wherein the 1st to 3rd bits are used to carry data count information, and the 4th to 8th bits are used to carry data / fill indication information. When the payload field carries data, the transmitting device may set the values ​​of the 4th to 8th bits, a total of 5 bits, to 1 (i.e., 5b'11111); when the payload field is filled, the transmitting device may set the values ​​of the 4th to 8th bits, a total of 5 bits, to 0 (i.e., 5b'00000). When the transmitting device sends a data frame, within a multi-frame period, for each data block with data carried in the payload field, the values ​​of the 1st to 3rd bits, a total of three bits, are increased by 1; for each data block with filled data carried in the payload field, the values ​​of the 1st to 3rd bits, a total of three bits, remain unchanged. Taking the initial value of the first to third bits as "000" as an example, when the first data block sent in multiframe period 1 carries data, the first to third bits of the first data block are "001"; when the second data block sent in multiframe period 1 carries data, the first to third bits of the second data block are "010"; when the third data block sent in multiframe period 1 carries padding, the first to third bits of the third data block are "000"; when the fourth data block sent in multiframe period 1 carries data, the first to third bits of the fourth data block are "100", and so on. In some implementations, the data counting information may not be limited to one multiframe period. For example, starting from the initialization state of the sending end device, the value of the data counting information may increase by 1 each time the sending end device sends a data block carrying data.

[0053] Figure 6 FIG. 2 shows another schematic diagram of the first indication field provided in an embodiment of the present application. Figure 6 As shown, the first indication field may include 8 bits, wherein the first bit may be a reserved field, and the second to eighth bits are used to carry data / fill indication information. When the payload field carries data, the transmitting end device may set the values ​​of the 7 bits from the second bit to the eighth bit to 1 (i.e., 7b'1111111); when the payload field is filled, the transmitting end device may set the values ​​of the 7 bits from the second bit to the eighth bit to 0 (i.e., 7b'0000000).

[0054] For example, Figure 5 or Figure 6 The size of the payload field in the data block shown may be 192 bytes, or 256 bytes, or bytes of other sizes.

[0055] It should be understood that Figure 5 and Figure 6 The form of the first indication field shown is only an example. In actual implementation, the first indication field may also include more or fewer bits, or the data / fill indication information may also occupy more or fewer bits.

[0056] Figure 7 FIG. 1 is a schematic diagram showing the TS overhead of an OTN frame provided by an embodiment of the present application. Figure 7 As shown, the 1st to 2nd bits of the 15th column of the 1st to 3rd rows of the TS overhead (i.e., the first two bits of JC4 to JC6) are used to carry bandwidth adjustment information to instruct the receiving end device to perform lossless adjustment of the time slot bandwidth or not to perform lossless adjustment of the time slot bandwidth. Exemplarily, when lossless bandwidth adjustment is not required or the receiving end device needs to be instructed to stop lossless bandwidth adjustment, bandwidth indication information 1 to bandwidth indication information 3 all take the value of "11"; when the receiving end device needs to perform lossless bandwidth adjustment, bandwidth indication information 1 to bandwidth indication information 3 all take the value of "00". The 3rd to 8th bits of the 15th column of the 1st to 2nd rows of the TS overhead are used to carry the tributary port ID (TPID) of the time slot to be added or reduced, and the 3rd to 8th bits of the 15th column of the 3rd row of the TS overhead are used to carry verification information, such as a 6-bit binary cyclic redundancy check (CRC), which is used to protect the TPID overhead, that is, to verify the 3rd to 8th bits of the 15th column of the 1st and 2nd rows. The 1st to 8th bits of the 16th column of the 1st row of the TS overhead are used to carry offset indication information, which indicates the offset of the starting data block in the next multi-frame period. The 1st to 8th bits of the 16th column of the 2nd row of the TS overhead are the control protocol overhead for lossless adjustment of the time slot bandwidth. For example, the 1st bit, the 2nd to 3rd bits, the 4th bit, and the 5th to 6th bits of the 16th column of the 1st row are bandwidth adjustment protocol (resize protocol, RP) bit, control (control, CTRL) bit, tributary slot continuity check (tributary slot connectivity check, TSCC) bit, and tributary slot group status (tributary slot group status, TSGS) bit. The role of the above bits can refer to the relevant description in the current protocol and will not be repeated here. The 1st to 8th bits of the 16th column of the 3rd row of the TS overhead are used to carry verification information, such as carrying CRC8, which is used to protect the control protocol overhead, that is, to verify the 1st to 8th bits of the 16th column of the 2nd row.

[0057] Based on the above scheme, the data / filling indication information of the data block can realize rate matching when mapping the low-order OTN frame to the high-order OTN frame without GMP, which can reduce the lag of rate control and thus reduce the service transmission delay. By transmitting multiple data blocks, the receiving end device can determine the data volume in real time, which helps to reduce the impact of the lag of rate control on the lossless bandwidth adjustment. In addition, the location of the data block where the lossless bandwidth adjustment starts in multiple data blocks can be indicated through bandwidth indication information 1 to 3, which helps to reduce the complexity of the lossless bandwidth adjustment.

[0058] Figure 8 A schematic diagram of a data transmission method provided by the present application is shown. Figure 8 As shown, the transmitting end device may be an OTN device, or may also be a component of an OTN device (such as a chip or a chip system, etc.). The receiving end device may be an OTN device, or may also be a component of an OTN device (such as a chip or a chip system, etc.).

[0059] Specifically, the method includes:

[0060] S801, the sending end device maps the service data into a data frame.

[0061] Specifically, the data frame includes a payload area, the payload area carries multiple data blocks, each of the multiple data blocks includes a first indication field and a load field, and the first indication field is used to indicate that the object carried by the load field is data or padding.

[0062] Exemplarily, the first indication field indicates, through the data / fill indication information in the above embodiment, that the object carried by the payload field is data or fill.

[0063] For example, a data frame may include Figure 4 or Figure 7 As shown in the OTN frame, the data block may include Figure 5 or Figure 6 The data block shown. The data frame may be any one of an OPU frame, an ODU frame or an OTU frame. The service data may be data obtained by the transmitting end device through the customer service interface. Alternatively, the service data may also be data generated locally by the transmitting end device and need to be transmitted. The above-mentioned data obtained through the customer service interface may include an OTN frame, wherein the OTN frame may include a low-order OTN frame. Alternatively, the data obtained through the customer service interface may also include other types of data, such as Ethernet service data.

[0064] In one example, if the service data is data carried in a low-order ODU frame obtained by the sending device through a client service interface, the sending device mapping the service data into a data frame may include: the sending device mapping the data of the low-order ODU frame into one or more data blocks in the data frame of the present application.

[0065] In another example, if the service data is data generated locally by the sending device and needs to be transmitted, the sending device mapping the service data into the data frame may include: the sending device directly mapping the local data into one or more data blocks in the data frame of the present application.

[0066] In some implementations, the first indication field is further used to indicate the number of data blocks that have been sent and whose carrying objects are data.

[0067] Exemplarily, the first indication field indicates the number of data blocks that have been sent through the data counting information in the above embodiment. The number of data blocks that have been sent by the transmitting device and whose carrying objects are data helps the receiving device determine whether the amount of data it has parsed is accurate.

[0068] In some implementations, the data frame further includes an overhead area, the overhead area includes a second indication field, and the second indication field is used to indicate an offset of a starting data block in a next multi-frame period.

[0069] Exemplarily, the second indication field may include the second indication field in the above embodiment, for example, indicating the offset of the starting data block of the next multi-frame period through the offset indication information.

[0070] In some implementations, the overhead area further includes a third indication field, where the third indication field is used to indicate a time when bandwidth lossless adjustment is performed on the plurality of data blocks.

[0071] Exemplarily, the third indication field can indicate the time when the bandwidth lossless adjustment is performed on multiple data blocks through the bandwidth adjustment information 1 to 3 in the above embodiment. When the bandwidth adjustment information 1 to 3 are all "00", it indicates that the bandwidth lossless adjustment needs to be performed; when the bandwidth adjustment information 1 to 3 are all "11", it indicates that the bandwidth lossless adjustment is not required. In specific implementation, the receiving end device and the sending end device can pre-negotiate the time of bandwidth lossless adjustment. For example, it can be pre-negotiated that the receiving end device starts to perform bandwidth lossless adjustment at the nth data block after receiving the information indicating the bandwidth lossless adjustment. Exemplarily, after the receiving end device receives the bandwidth adjustment information 1 to 3, it can determine whether to perform bandwidth lossless adjustment according to the majority decision method. For example, if two or more values ​​of the bandwidth adjustment information 1 to 3 received by the receiving end device are "00", the receiving end device starts bandwidth lossless adjustment at the nth data block. For another example, if two or more values ​​of the bandwidth adjustment information 1 to 3 received by the receiving end device are "11", the receiving end device does not perform bandwidth lossless adjustment. Exemplarily, the above n is a positive integer, for example, n can be 1, or can be other values, which is not specifically limited in the present application.

[0072] S802: The transmitting device sends a data frame to the receiving device.

[0073] S803, the receiving device receives the data frame.

[0074] S804: The receiving device demaps the service data carried by the data frame.

[0075] Exemplarily, each time a receiving end device receives a data block, it demaps according to the first indication field of the data block, and determines whether the object carried by the payload field of the data block is data or padding according to the first indication field. For example, the object carried by the payload field of the data block can be determined according to a majority decision. If the first indication field is determined by Figure 5 The 5 bits shown indicate the object carried by the payload field. When 3 or more bits among the 5 bits are 1, the receiving device determines that the object carried by the payload field is data. If the first indication field is Figure 6 The 7 bits shown indicate the object carried by the payload field, and the receiving end device determines that the object carried by the payload field is data when 4 or more bits among the 7 bits are 1. In this way, the receiving end device can determine the amount of data it receives in real time.

[0076] When the first indication field also indicates the number of data blocks that the transmitting device has sent that carry data (for example, also carries data counting information), the receiving device determines whether an error occurs in the demapping process of the receiving device according to the number indicated by the first indication field and the number recorded by the local data counter. The number of bits used by the local data counter is the same as the number of bits of the data counting information, for example, both occupy 3 bits. Exemplarily, in the initial state, the receiving device determines the initial value of the local data counter according to the first indication information of the received data block, for example, the value after multiple checks on the data counting information carried by the received data block is used as the initial value. After determining the initial value, each time a data block carrying data is received, the value of the local data counter is increased by 1. Further, when the receiving device determines that the number of data blocks indicated by the first indication field of the received data block is not equal to the number recorded by the local data counter, the data carried by the load field or the judgment result of the padding is adjusted in the subsequent demapping process to correct the data amount of the received data frame. Exemplarily, if the number of data blocks determined by the receiving end device according to the first indication field is 1 less than the number of data blocks recorded by the local data device, it means that the receiving end device has mistakenly parsed a data block carrying padding as a data block carrying data. In the subsequent demapping process, when the receiving end device determines that a data block carries data, the determination result is modified to that the data block carries padding, that is, the count of the local data counter remains unchanged. If the number of data blocks determined by the receiving end device according to the first indication field is 1 greater than the number recorded by the local data device, it means that the receiving end device has mistakenly parsed a data block carrying data as a data block carrying padding. In the subsequent demapping process, when the receiving end device determines that a data block carries padding, the determination result is modified to that the data block carries data, that is, the count of the local data counter is increased by 1. In this way, the receiving end device can correct the amount of data it has parsed.

[0077] The method for transmitting data provided by the embodiment of the present application can indicate the object carried by the load field of a fixed number of bytes by setting a first indication field in the data block, which helps the receiving device to determine the data volume of the received data frame in real time. In this way, the receiving device does not need to cache data or read data from the cache during the rate adaptation process, which can reduce the lag of rate control during data transmission, thereby reducing data transmission delay and improving service transmission efficiency. In addition, by transmitting multiple data blocks, the receiving device can determine the data volume in real time, which helps to reduce the impact of the lag of rate control on lossless bandwidth adjustment.

[0078] Combination of the above Figures 1 to 8The method for transmitting data provided in the embodiments of the present application is described. In the various embodiments of the present application, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between the various embodiments are consistent and can be referenced to each other. The technical features in different embodiments can be combined to form new embodiments according to their internal logical relationships.

[0079] The following combination Fig. 9 and Fig.10 The device for transmitting data provided by the embodiment of the present application is described in detail. It should be understood that the description of the device embodiment corresponds to the description of the method embodiment. Therefore, the content not described in detail can be referred to the method embodiment above, and some content will not be repeated for the sake of brevity.

[0080] Fig. 9 The present invention provides a schematic block diagram of a data transmission device 1000 provided in an embodiment of the present invention. The device 1000 includes a transceiver module 1001, which can be used to implement corresponding transceiver functions. The transceiver module 1001 can also be called a transceiver unit.

[0081] The device 1000 further includes a processing module 1002 (or processing unit), which can be used to implement corresponding processing functions.

[0082] Optionally, the device 1000 also includes a storage unit, which can be used to store instructions and / or data. The processing module 1002 can read the instructions and / or data in the storage unit so that the device implements the actions of the relevant devices in the aforementioned method embodiments.

[0083] The device 1000 can be used to execute the actions performed by the sending device or the receiving device in the above method embodiments. In this case, the device 1000 can be a component of the sending device or the receiving device, the transceiver module 1001 is used to execute the sending and receiving related operations of the sending device or the receiving device in the above method embodiments, and the processing module 1002 is used to execute the processing related operations of the sending device or the receiving device in the above method embodiments.

[0084] It should be understood that the specific process of each module executing the above corresponding steps has been described in detail in the above method embodiment, and for the sake of brevity, it will not be repeated here.

[0085] Fig.10 FIG. 1 shows a schematic diagram of the structure of an OTN device provided in an embodiment of the present application. Fig.10 As shown, the OTN device 1100 includes a processor 1101 and an optical transceiver 1102. The OTN device can be applied to both a transmitting end device and a receiving end device. Fig.10 The OTN equipment shown may include Figure 1Any OTN equipment shown, or may also include Figure 2 The OTN equipment shown.

[0086] When applied to a transmitting device, the processor 1101 is used to implement Figure 8 The method performed by the transmitting end device in, for example, S801, the optical transceiver 1102 is used to implement Figure 8 When applied to a receiving device, the processor 1101 is used to implement Figure 8 The method performed by the transmitting end device in, for example, S804, the optical transceiver 1102 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 or software instructions in the processor 1101. Figure 8 A method executed by a sending device in .

[0087] In the embodiment of the present application, the processor 1101 can 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, a discrete hardware component, and can implement or execute the methods, steps and logic block diagrams disclosed in the embodiment of the present application. The general-purpose processor can be a microprocessor or any conventional processor, etc. The steps of the method disclosed in the embodiment of the present application can be directly embodied as a hardware processor to be executed, or the hardware and software units in the processor can be combined and executed.

[0088] In addition, the OTN device 1100 may include one or more processors 1101 .

[0089] Optionally, the OTN device may further include a memory 1103, wherein the program code executed by the processor 1101 to implement the above method may be stored in the memory 1103. The OTN device 1100 may include one or more memories 1103.

[0090] Specifically, the memory 1103 can be coupled to the processor 1101. The coupling in the embodiment of the present application is an indirect coupling or communication connection between devices, units or modules, which can be electrical, mechanical or other forms, and is used for information exchange between devices, units or modules. Alternatively, the processor 1101 can operate in conjunction with the memory 1103. The memory 1103 can be a non-volatile memory, such as a hard disk drive (HDD), etc., or a volatile memory (volatile memory), such as a random-access memory (RAM). The memory 1103 is any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited to this. It should be noted that Fig.10 The device can also be used to execute the method steps involved in the embodiment variations shown in the above-mentioned figures, which will not be described in detail here.

[0091] Based on the above embodiments, the embodiments of the present application further provide a computer-readable storage medium. The storage medium stores a software program, and the software program can implement the method provided by any one or more of the above embodiments when read and executed by one or more processors. The computer-readable storage medium may include: a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk or an optical disk, and other media that can store program codes.

[0092] Based on the above embodiments, the embodiments of the present application further provide a chip. The chip includes a processor for implementing the functions involved in any one or more of the above embodiments, such as acquiring or processing the OTN frames involved in the above methods. Optionally, the chip also includes a memory, which is used for the necessary program instructions and data executed by the processor. The chip can be composed of a chip, or it can include a chip and other discrete devices.

[0093] 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 is also intended to include these modifications and variations.

[0094] It should be understood that the processor mentioned in the embodiments of the present application may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0095] It should also be understood that the memory mentioned in the embodiments of the present application may be a volatile memory and / or a non-volatile memory. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM). For example, RAM can be used as an external cache. By way of example and not limitation, RAM may include the following forms: static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).

[0096] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, the memory (storage module) can be integrated into the processor.

[0097] Those skilled in the art will appreciate that the units and steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel may use different methods to implement the described functions for each specific application; such implementation should not be considered to exceed the scope of protection of this application.

[0098] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0099] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. For example, the computer can be a personal computer, a server, or a network device, etc. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that contains one or more available media integrations. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state disk (SSD)). For example, the aforementioned available medium may include, but is not limited to, various media that can store program codes, such as a USB flash drive, a mobile hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.

[0100] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or replacements within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be based on the protection scope of the claims. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working process of the above-described system, device and unit can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

Claims

1. A method for transmitting data, characterized in that: include Mapping the service data into a data frame, wherein the data frame includes a payload area, the payload area includes a plurality of data blocks, each of the plurality of data blocks includes a first indication field and a load field, the first indication field is used to indicate whether the object carried by the load field is data or padding; The data frame is sent.

2. The method according to claim 1, characterized in that The first indication field is also used to indicate the number of data blocks that have been sent and whose carrying objects are data.

3. The method according to claim 1 or 2, characterized in that: The data frame further includes an overhead area, wherein the overhead area includes a second indication field, and the second indication field is used to indicate an offset of a starting data block in a next multi-frame period of the data frame.

4. The method according to claim 3, characterized in that The overhead area further includes a third indication field, and the third indication field is used to indicate a time when the bandwidth of the multiple data blocks is losslessly adjusted.

5. The method according to any one of claims 1 to 4, characterized in that The first indication field occupies 1 byte, and the load field occupies 192 bytes.

6. The method according to any one of claims 1 to 5, characterized in that The data frame includes an optical transport network OTN frame or a flexible OTN frame.

7. A method for transmitting data, characterized in that: include Receive a data frame, the data frame comprising a payload area, the payload area comprising a plurality of data blocks, each of the plurality of data blocks comprising a first indication field and a load field, the first indication field being used to indicate that an object carried by the load field is data or padding; According to the first indication field of at least one data block among the multiple data blocks, service data is demapped from the data frame.

8. The method according to claim 7, characterized in that The first indication field is also used to indicate the number of data blocks that have been sent and whose carrying objects are data.

9. The method according to claim 7 or 8, characterized in that: The data frame further includes an overhead area, wherein the overhead area includes a second indication field, and the second indication field is used to indicate an offset of a starting data block in a next multi-frame period of the data frame.

10. The method according to claim 9, characterized in that The overhead area further includes a third indication field, and the third indication field is used to indicate a time when the bandwidth of the multiple data blocks is losslessly adjusted.

11. The method according to any one of claims 7 to 10, characterized in that The first indication field occupies 1 byte, and the load field occupies 192 bytes.

12. The method according to any one of claims 7 to 11, characterized in that The data frame includes an optical transport network OTN frame or a flexible OTN frame.

13. The method according to any one of claims 7 to 12, characterized in that Demapping service data from the data frame according to the first indication field of at least one data block among the multiple data blocks includes: Determine, according to the first data block and the data blocks received before receiving the first data block in the current multiframe period, a first number of data blocks carrying data received in the current multiframe period; When the number of data blocks indicated by the counting information carried by the first data block is different from the first number, the determination result of the object carried by the payload field of the second data block is modified, and the second data block is a data block received after the first data block.

14. A device for transmitting data, characterized in that: include: A module for executing the method according to any one of claims 1 to 6, or a module for executing the method according to any one of claims 7 to 13.

15. A device for transmitting data, characterized in that: The device comprises at least one processor coupled to at least one memory, wherein the at least one processor is used to execute a computer program or instruction stored in the at least one memory so that the device performs the method according to any one of claims 1 to 6, or the method according to any one of claims 7 to 13.

16. A chip, characterized in that: The chip includes a processor and a communication interface, the communication interface is used to receive data frames and transmit them to the processor or send data frames to other communication devices other than the communication device including the chip, and the processor is used to execute the method as described in any one of claims 1 to 6, or the method as described in any one of claims 7 to 13.

Citation Information

Cited By

  • Data transmission method and apparatus

    EP4794228A1

  • Data transmission method and apparatus

    WO2025102774A1