CN111130686B - Service data processing method and device - Google Patents

Service data processing method and device Download PDF

Info

Publication number
CN111130686B
CN111130686B CN201811296809.8A CN201811296809A CN111130686B CN 111130686 B CN111130686 B CN 111130686B CN 201811296809 A CN201811296809 A CN 201811296809A CN 111130686 B CN111130686 B CN 111130686B
Authority
CN
China
Prior art keywords
data
line
fec
blocks
line frames
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811296809.8A
Other languages
Chinese (zh)
Other versions
CN111130686A (en
Inventor
常天海
吴秋游
苏伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haisiguang Electronics Co ltd
Original Assignee
Haisiguang Electronics Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Haisiguang Electronics Co ltd filed Critical Haisiguang Electronics Co ltd
Priority to CN201811296809.8A priority Critical patent/CN111130686B/en
Publication of CN111130686A publication Critical patent/CN111130686A/en
Application granted granted Critical
Publication of CN111130686B publication Critical patent/CN111130686B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/07Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems
    • H04B10/075Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an in-service signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J14/00Optical multiplex systems
    • H04J14/02Wavelength-division multiplex systems
    • H04J14/0227Operation, administration, maintenance or provisioning [OAMP] of WDM networks, e.g. media access, routing or wavelength allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J14/00Optical multiplex systems
    • H04J14/02Wavelength-division multiplex systems
    • H04J14/0287Protection in WDM systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0062Network aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0062Network aspects
    • H04Q2011/0079Operation or maintenance aspects
    • H04Q2011/0081Fault tolerance; Redundancy; Recovery; Reconfigurability

Abstract

The application discloses a service data processing method and device, and belongs to the technical field of communication. In the method, the service data are segmented, when the number of the data blocks obtained by segmentation reaches k, i FEC blocks are generated based on the k data blocks, and m line frames are generated according to the k data blocks and the i FEC blocks and sent out. Since the i FEC blocks included in the m line frames can ensure that the receiving end device can restore the data blocks in the n line frames when the transmission error codes of the n line frames of the m line frames exist, when the k data blocks are sent out through the m line frames, even if the transmission error codes exist in the n line frames due to the failure of the transmission link, the service data can still be restored by the data blocks and the FEC blocks in the remaining other line frames, and the interruption of the service data cannot occur, so that the lossless restoration of the service data is realized under the condition of the failure of the transmission link.

Description

Service data processing method and device
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method and an apparatus for processing service data.
Background
Currently, in an Optical Transport Network (OTN), when a fault occurs on a working link of service data, transmission of the service data may be protected from being completely interrupted by automatic protection switching. The first mode is that the sending end device may generate two paths of identical optical signals according to the received service data, send one path of optical signal through the working link, and send the other path of optical signal through the protection link, and when the receiving end device detects that the working link fails, the receiving end device may switch to the protection link, thereby receiving the optical signal carrying the service data and transmitted through the protection link. In a second manner, the sending end device may generate one path of optical signal according to the received service data, and send the generated optical signal through the working link, when the sending end device detects that the working link fails, the sending end device may switch to the protection link to continue sending subsequent service data, and send an Automatic Protection Switching (APS) message to the receiving end device, and the receiving end device switches to the protection link to receive the service data after receiving the APS message.
As can be seen from the above description, when the first manner is adopted, when the receiving end device is switched from the working link to the protection link, there is a switching duration, and the receiving end device cannot receive the service data within the switching duration, that is, the instant interruption of the service data occurs within the switching duration. When the second method is adopted, since both the sending end device and the receiving end device need to perform link switching, there is also a switching duration, which results in an instant interruption of service data. Therefore, it is desirable to provide a method for processing service data, so that when a working link fails, the service data received by the receiving end device is not affected.
Disclosure of Invention
The application provides a method and a device for processing service data, which can be used for ensuring that the service data received by receiving end equipment is not influenced when a working link fails. The technical scheme is as follows:
in a first aspect, a method for processing service data is provided, where the method includes: dividing the service data into data blocks according to the specified byte length; when the number of the data blocks obtained by segmentation reaches k, generating i forward error correction code (FEC) blocks based on the k data blocks, wherein both k and i are positive integers greater than 1; generating m line frames based on the k data blocks and the i FEC blocks, and sending the m line frames, where the total number of the data blocks and the FEC blocks included in each line frame in the m line frames is the same, and the i FEC blocks are used to support a receiving end device to restore the service data when transmission errors exist in line frames not greater than n in the m line frames, where m is a positive integer greater than 1, k + i is an integer multiple of the m, and n is a positive integer greater than 0 and less than m.
The i FEC blocks included in the m line frames can ensure that the receiving end device can restore the data blocks in the n line frames when the n line frames of the m line frames transmit error codes, so that when the k data blocks are sent out through the m line frames, even if the n line frames have transmission error codes, the service data can still be restored by depending on the data blocks and the FEC blocks in the remaining other line frames, and therefore, even if a transmission link of the service data fails, the method provided by the application can ensure that all the service data can be restored without interruption of the service data, and the lossless restoration of the service data is realized under the condition that the transmission link fails.
Optionally, the implementation process of generating m line frames based on the k data blocks and the i FEC blocks may include: generating an intermediate frame comprising m rows of data based on the k data blocks and the i FEC blocks; and generating a line frame based on each line of the m lines of data of the intermediate frame to obtain the m line frames. The intermediate frame includes k data cells and i FEC cells, each of the k data cells carries one of the k data blocks, a port number and a sequence number, the port number is used to indicate a destination port of the data block carried by the corresponding data cell, the sequence number is used to indicate a sorting of the data block carried by the corresponding data cell in the k data blocks, and each of the i FEC cells carries one of the i FEC blocks.
Optionally, the generating one line frame based on each line data in the m line data of the intermediate frame, and the obtaining the m line frames may include: mapping each row of data in the m rows of data into one optical channel data unit ODUk to obtain m ODUks; and mapping each ODUk in the m ODUks into a line frame to obtain the m line frames.
It should be noted that the line frame may be a Synchronous Digital Hierarchy (SDH) frame, an OTN frame, an Ethernet frame, or a flexible Ethernet (FlexE) frame.
Optionally, each line frame in the m line frames includes a fault indication code, where the fault indication code is used to identify whether an error exists in the corresponding line frame.
It should be noted that the failure indication code may be obtained by encoding using a Cyclic Redundancy Check (CRC) encoding manner or an FEC encoding manner.
Optionally, the implementation process of sending the m line frames may include: and modulating the m line frames to optical signals with m wavelengths in a one-to-one correspondence manner to obtain m paths of optical signals, and sending the m paths of optical signals through m paths of optical fibers, wherein each path of optical fiber in the m paths of optical fibers is used for sending one path of optical signal in the m paths of optical signals.
Optionally, the implementation process of sending the m line frames may include: and correspondingly modulating the m line frames to optical signals with m wavelengths one by one to obtain m paths of optical signals, and sending the m paths of optical signals through one path of optical fiber.
Optionally, before the m line frames are transmitted, a line frame FEC corresponding to each line frame may be further determined based on each line frame in the m line frames, and the corresponding line frame FEC may be added to each line frame.
By adding a corresponding line frame FEC in each line frame, it can be ensured that each line frame can be correctly decoded during transmission.
Optionally, a wavelength adjustment instruction may be further received before the m line frames are modulated onto the optical signals with m wavelengths in a one-to-one correspondence manner, where the wavelength adjustment instruction carries a wavelength to be adjusted and a target wavelength, the wavelength to be adjusted is any one of the m wavelengths, and the target wavelength is another wavelength except the m wavelengths; and updating the wavelength to be adjusted to the target wavelength.
In this application embodiment, sending end equipment can adjust the wavelength of treating the adjustment according to the wavelength adjustment instruction, thereby carry out the spectrum change, in order to realize the arrangement of spectrum piece, and to receiving end equipment, because the spectrum change, will lead to receiving end equipment can't receive this way data, under this condition, receiving end equipment then can restore this way data according to the FEC block that includes in other way data, thereby obtain complete service data, that is, through the service data processing method that this application embodiment provided, can avoid sending end equipment's the loss of service data that spectrum piece arrangement operation caused, thereby realize the spectrum piece arrangement of no perception.
In a second aspect, a method for processing service data is provided, where the method includes: receiving m line frames sent by sending end equipment; if the number of the line frames with the transmission error codes in the m line frames is detected to be less than or equal to n, restoring the data blocks included in the line frames with the transmission error codes based on the FEC blocks in the m line frames, and restoring the service data based on the restored data blocks and the data blocks included in other line frames except the line frames with the transmission error codes, wherein m is a positive integer greater than 1, and n is a positive integer greater than 0 and less than m.
The i FEC blocks included in the m line frames sent by the sending end device can support the receiving end device to restore the service data when transmission errors or failures occur in n line frames in the m line frames, so that, if transmission path failures of the m line frames cause transmission failures or errors in line frames not greater than n lines in the transmission process, the receiving end device can restore the data blocks in the line frames with transmission failures or errors according to the FEC blocks included in the received line frames after receiving the plurality of line frames, thereby restoring the service data.
Optionally, each line frame in the m line frames carries a fault indication code for identifying whether a transmission error code exists in the corresponding line frame; the method further comprises the following steps: detecting whether a fault indication code carried by each line frame in the m line frames is a first numerical value; if a line frame with the fault indication code of the first numerical value exists in the m line frames, determining the line frame with the fault indication code of the first numerical value as the line frame of the transmission error code, and counting the number of the line frames of the transmission error code.
It should be noted that the failure indication code may be obtained by encoding using a Cyclic Redundancy Check (CRC) encoding manner or an FEC encoding manner.
Optionally, the m line frames include k data cells and i FEC cells, where each data cell in the k data cells carries one data block, a port number, and a sequence number, the port number is used to indicate a destination port of the data block carried by the corresponding data cell, the sequence number is used to indicate an ordering of the data block carried by the corresponding data cell among the k data blocks carried by the k data cells, and each FEC cell in the i FEC cells carries one FEC block;
the implementation process of restoring the data block included in the line frame with the transmission error based on the FEC block in the m line frames may include: analyzing the m line frames to obtain a plurality of FEC blocks included in the m line frames; and restoring the data blocks included in the line frame of the transmission error code based on the plurality of FEC blocks.
Optionally, the implementation process of restoring the service data based on the restored data block and data blocks included in line frames other than the line frame with the transmission error code may include: determining an ordering of the recovered data blocks among the k data blocks based on the plurality of FEC blocks; and sorting the reduced data blocks and the plurality of data blocks carried by the plurality of data cells based on the sorting of the reduced data blocks in the k data blocks and the sequence number carried by each data cell in the plurality of data cells included in other line frames except the line frame of the transmission error code to obtain the service data.
Optionally, the method further comprises: if the number of the line frames with the transmission error codes in the m line frames is detected to be larger than n, determining that the data blocks in the line frames with the transmission error codes are failed to be restored based on the FEC blocks in the m line frames, and triggering a restoration failure alarm.
In a third aspect, a service data processing apparatus is provided, where the service data processing apparatus has a function of implementing the behavior of the service data processing method in the first aspect or the second aspect. The service data processing apparatus includes at least one module, and the at least one module is configured to implement the service data processing method provided in the first aspect or the second aspect.
In a fourth aspect, a service data processing apparatus is provided, where the structure of the service data processing apparatus includes a processor and a memory, and the memory is used to store a program that supports the service data processing apparatus to execute the service data processing method provided in the first aspect or the second aspect, and store data used to implement the service data processing method provided in the first aspect or the second aspect. The processor is configured to execute programs stored in the memory. The operating means of the memory device may further comprise a communication bus for establishing a connection between the processor and the memory.
In a fifth aspect, a computer-readable storage medium is provided, where instructions are stored in the computer-readable storage medium, and when the instructions are executed on a computer, the instructions cause the computer to execute the business data processing method according to the first aspect or the second aspect.
In a sixth aspect, a computer program product is provided, which comprises instructions that, when run on a computer, cause the computer to perform the business data processing method of the first or second aspect.
The technical effects obtained by the third, fourth, fifth and sixth aspects are similar to the technical effects obtained by the corresponding technical means in the first and second aspects, and are not described herein again.
The beneficial effect that technical scheme that this application provided brought includes at least:
the method and the device for generating the FEC blocks have the advantages that the business data are segmented, when the number of the data blocks obtained through segmentation reaches k, i FEC blocks are generated based on the k data blocks, m line frames are generated according to the k data blocks and the i FEC blocks, and the line frames are sent out. Since the i FEC blocks included in the m line frames can ensure that the receiving end device can restore the data blocks in the n line frames when the transmission error codes of the n line frames of the m line frames exist, even if the transmission error codes exist in the n line frames when the k data blocks are sent out through the m line frames, the service data can be restored by the data blocks and the FEC blocks in the remaining other line frames, so that even if the transmission link of the service data fails, the method provided by the application can ensure that all the service data can be restored without interruption of the service data, and the lossless restoration of the service data is realized under the condition that the transmission link fails.
Drawings
Fig. 1 is a real-time environment diagram of a service data processing method provided in an embodiment of the present application;
FIG. 2 is a schematic structural diagram of a computer device provided in an embodiment of the present application;
fig. 3 is a flowchart of a service data processing method provided in an embodiment of the present application;
FIG. 4 is a diagram illustrating a data structure of an intermediate frame according to an embodiment of the present application;
FIG. 5 is a cell format of a data cell according to an embodiment of the present application;
FIG. 6 is a cell format of an FEC cell provided in the embodiments of the present application;
fig. 7 is a flowchart of a service data processing method according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of a service data processing apparatus according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a service data processing apparatus according to an embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, the following detailed description of the embodiments of the present application will be made with reference to the accompanying drawings.
Before explaining the embodiments of the present application in detail, an application scenario related to the embodiments of the present application will be described.
Currently, in an OTN, when a working link for transmitting service data fails, a transmission link for the service data may be switched through automatic protection and switching, so as to implement fast recovery of transmission of the service data. When the transmission link of the service data is switched by automatic protection switching, the receiving end device has a switching duration of not more than 50 seconds, and the receiving end device will interrupt the reception of the service data within the switching duration, in other words, the service data transmitted through the working link within the switching duration will be lost or erroneous. As the requirement of the user on the network quality is higher and higher, when the OTN is applied to a large bandwidth scenario, the interruption of the service data will greatly affect the user experience. For example, in a scenario of data center interconnection, if a working link of service data fails, and a transmission link of the service data is switched by automatic protection and switching, lost or faulty service data within a switching duration of 50 seconds will affect a large area of users. The service data processing method provided by the embodiment of the application can realize the lossless recovery of the service data under the condition that the working link fails.
Fig. 1 is an implementation environment diagram related to a service data processing method provided in an embodiment of the present application. As shown in fig. 1, the implementation environment includes a sending end device 101 and a receiving end device 102. The sending end device 101 and the receiving end device 102 are connected through an OTN.
For example, the sending-end device 101 may receive a service data stream sent by an upstream device, process the received service data stream by using the service data processing method provided in this embodiment, and send the processed service data out through multiple lines.
The receiving end device 102 may receive the service data sent by the sending end device 101 through the multiple lines, and when a transmission link between the receiving end device and the sending end device 101 fails, the service data processing method provided in the embodiment of the present application is used to process the received service data, so as to perform lossless recovery on the service data transmitted on the failed transmission link.
The sending-side device 101 may be a device such as a desktop, a laptop, or a network server, or may be a device such as a router or a switch. The receiving end device 102 may also be a desktop, a laptop, a network server, or other devices, or may also be a router, a switch, or other devices. This is not particularly limited in the embodiments of the present application.
Fig. 2 is a schematic structural diagram of a computer device according to an embodiment of the present application. Both the sender device and the receiver device of fig. 1 may be implemented by the computer device shown in fig. 2. Referring to fig. 2, the computer device comprises at least one processor 201, a communication bus 202, a memory 203 and at least one communication interface 204.
The processor 201 may be a general-purpose Central Processing Unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more ics for controlling the execution of programs in accordance with the present invention.
The communication bus 202 may include a path that carries information between the aforementioned components.
The Memory 203 may be a Read-Only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an Electrically Erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical Disc storage, optical Disc storage (including Compact Disc, laser Disc, optical Disc, digital versatile Disc, blu-ray Disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to these. The memory 203 may be self-contained and coupled to the processor 201 via the communication bus 202. The memory 203 may also be integrated with the processor 201.
Communication interface 204, using any transceiver or the like, is used for communicating with other devices or communication Networks, such as ethernet, radio Access Network (RAN), wireless Local Area Network (WLAN), etc.
In particular implementations, processor 201 may include one or more CPUs, such as CPU0 and CPU1 shown in FIG. 2, as one embodiment.
In particular implementations, a computer device may include multiple processors, such as processor 201 and processor 205 shown in fig. 2, as one embodiment. Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. A processor herein may refer to one or more devices, circuits, and/or processing cores that process data (e.g., computer program instructions).
In particular implementations, the computer device may also include an output device 206 and an input device 207, as one embodiment. The output device 206 is in communication with the processor 201 and may display information in a variety of ways. For example, the output device 206 may be a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display device, a Cathode Ray Tube (CRT) display device, a projector (projector), or the like. The input device 207 is in communication with the processor 201 and may receive user input in a variety of ways. For example, the input device 207 may be a mouse, a keyboard, a touch screen device, a sensing device, or the like.
The computer device may be a general purpose computer device or a special purpose computer device. In a specific implementation, the computer device may be a desktop computer, a laptop computer, a network server, a Personal Digital Assistant (PDA), a mobile phone, a tablet computer, a wireless terminal device, a communication device, or an embedded device. The embodiment of the invention does not limit the type of the computer equipment.
The memory 203 is used for storing program codes for executing the scheme of the application, and the processor 201 controls the execution. The processor 201 is operable to execute program code 208 stored in the memory 203. One or more software modules may be included in program code 208. The sending or receiving end device shown in fig. 1 may process the traffic data to be sent or received by the processor 201 and one or more software modules in the program code 208 in the memory 203.
Next, a service data processing method provided in the embodiment of the present application is explained.
Fig. 3 is a service data processing method provided in this embodiment, where the method may be applied to the sending end device in fig. 1, and referring to fig. 3, the method includes the following steps:
step 301: and dividing the service data into data blocks according to the specified byte length.
In this embodiment, the sending-end device may receive the service data sent by the upstream device. Or, the sending end device may also generate service data according to a user operation. During the process of receiving the service data or generating the service data, the sending end device may segment the received or generated service data into data blocks according to the specified byte length.
For example, when the service data is divided in the process of receiving the service data, the sending end device may regard the received data with the specified byte length as one data block every time the data with the specified byte length is received from the beginning of receiving the service data.
When the service data is divided in the process of generating the service data, the sending end device may regard the generated service data with the specified byte length as one data block and restart counting every time the byte length of the generated service data reaches the specified byte length from the start of generating the service data, regard the generated service data with the specified byte length as another data block when the service data with the specified byte length is generated again, and so on, generate a plurality of data blocks.
Wherein the specified byte length may be a preset byte length. It should be noted that, in this embodiment of the present application, since the subsequent sending-end device may send the data block carried in the data cell of the intermediate frame, the specified byte length may be determined according to the preset byte length of the data cell of the intermediate frame. In this case, the specified byte length may be less than the byte length of the data cells of the intermediate frame.
Step 302: and when the number of the data blocks obtained by segmentation reaches k, generating i FEC blocks based on the k data blocks, wherein k and i are positive integers larger than 1.
When the number of the data blocks obtained by the segmentation in step 301 reaches k, that is, when the service data is segmented to obtain k data blocks, the sending end device may generate i FEC blocks based on the k data blocks. It should be noted that the i FEC blocks may be obtained by encoding k data blocks, and the encoding type of the i FEC blocks may be Reed-solomon (RS) code, hamming code, BCH (Bose, ray-Chaudhuri, hocquenghem) code, or the like.
In this embodiment, the transmission link between the sending end device and the receiving end device may include m lines, and in this embodiment, the k data blocks and the i FEC blocks may be evenly distributed to the m lines to be sent. Thus, the sum of k and i may be an integer multiple of m. Where i FEC blocks may be used to correct errors for k data blocks. And i is the minimum number of FEC blocks required to restore the data blocks included in the n channels. In other words, when the k data blocks and the i FEC blocks are evenly distributed to m lines for transmission, if the data blocks on n lines of the m lines fail to be transmitted or are in error, the i FEC blocks can support recovery of the data blocks with failed transmission or errors.
Step 303: generating m line frames based on the k data blocks and the i FEC blocks, and sending the m line frames, where the total number of the data blocks and the FEC blocks included in each line frame in the m line frames is the same, and the i FEC blocks are used to support a receiving end device to restore service data when transmission errors exist in line frames not greater than n in the m line frames, where m is a positive integer greater than 1, and n is a positive integer greater than 0 and less than m.
After i FEC blocks are generated, the sending end device may generate m line frames based on k data blocks and i FEC blocks, and send the m line frames in a one-to-one correspondence through m lines. Wherein, each line frame in the m line frames comprises the same total number of data blocks and FEC blocks.
Illustratively, the transmitting end device may generate m line frames based on the k data blocks and the i FEC blocks by:
(1) An intermediate frame containing m rows of data is generated based on the k data blocks and the i FEC blocks.
Fig. 4 shows a data structure diagram of an intermediate frame. As shown in FIG. 4, the intermediate frame may include m rows of data, each row of data may include a number of cells, and each row of data includes an equal number of cells. Where m may refer to the number of lines in a transmission link between a sending end device and a receiving end device. Each of the m rows of data includes a plurality of cells including at least one of data cells and FEC cells. In other words, some rows in the m rows of data may include only data cells, some rows may include only FEC cells, and some rows may include both data cells and FEC cells. The data cells are mainly used for carrying service data, and the FEC cells are mainly used for carrying FEC data for correcting the service data. Optionally, in a possible implementation manner, each row of data may further include a fault indication area, that is, an F area shown in fig. 4, where the fault indication area may be located at a head of each row of data, and the fault indication area is used to carry a fault indication code to indicate to the receiving end device whether there is an error in the corresponding row of data during transmission. The failure indication code may be obtained by encoding using a Cyclic Redundancy Check (CRC) encoding scheme, an FEC encoding scheme, or another encoding scheme.
Figure 5 shows a possible cell format for a data cell. As shown in fig. 5, the data cell may include a payload area 51 and an overhead area 52. The load area 51 is used to carry the data blocks obtained by slicing, and one load area 51 may be used to carry one data block. The overhead area 52 is used to carry the attribute information corresponding to the load area. Illustratively, the overhead area 52 may include a cell type for indicating that the cell is a data cell, a port number for identifying a destination port corresponding to the data block carried by the load area 51, and a sequence number for indicating an ordering of the data block carried by the load area 51 among the plurality of data blocks. Optionally, the overhead area 52 may further include other overhead such as timestamp information of the data blocks carried by the payload area 51.
Figure 6 shows a possible cell format of an FEC cell. As shown in fig. 6, the FEC cell may include an FEC area 61 and an overhead area 62. The FEC area 61 is configured to carry an FEC block for performing error correction and recovery on the service data carried in the intermediate frame. The overhead area 62 may not contain any data, or the overhead area 62 may also contain overhead such as a cell type indicating that the cell is an FEC cell and a sequence number indicating the ordering of the FEC blocks carried by the FEC area 61 in a plurality of FEC blocks.
It should be noted that the data cells and FEC cells of the intermediate frame may be both fixed-length structures, that is, the data cells and FEC cells have the same length. And the number of data cells is not less than k, and the number of FEC cells is not less than i.
In this embodiment, the sending end device may generate an intermediate frame that includes m rows of data and conforms to the data structure according to the k data blocks and the i FEC blocks, where the generated intermediate frame may include k data cells and i FEC cells. And, according to the data structure of the intermediate frame, the format of the data cell and the format of the FEC cell described above, each of the k data cells carries one of the k data blocks, a port number used for indicating a destination port of the data block carried by the corresponding data cell, and a sequence number used for indicating the ordering of the data block carried by the corresponding data cell among the k data blocks. Each of the i FEC cells carries one of the i FEC blocks, and optionally, may also carry a sequence number used for indicating the ordering of the FEC blocks carried by the corresponding FEC cell in the i FEC blocks.
Optionally, the number of data cells included in the generated intermediate frame may also be greater than k, in which case, k data cells in the data cells included in the intermediate frame will carry data blocks, and the remaining data cells may not carry data blocks. And, the overhead area of each data cell may further include a mapping overhead for indicating a mapping relationship between the data block and the data cell, and the receiving end device may determine which data cells carry the data block through the mapping overhead. Similarly, the number of FEC cells included in the generated intermediate frame may also be greater than i, in which case, i FEC cells in the FEC cells included in the intermediate frame will carry the FEC block, and the remaining FEC cells may not carry the FEC block.
(2) And generating a line frame based on each line of the m lines of data of the intermediate frame to obtain m line frames.
After generating the intermediate frame including the m lines of data, the transmitting end device may generate one line frame according to each line of data of the intermediate frame.
Optionally, in a possible implementation manner, after generating an intermediate frame including m lines of data, the sending end device may map each line of data in the m lines of data to one ODUk to obtain m ODUk, and then the sending end device may map each ODUk to one line frame to obtain m line frames. The implementation manner in which the sending end device maps each line of data in the m lines of data to one ODUk may refer to a mapping method in the related art, and this embodiment of the present application is not described herein again.
It should be noted that the line frame may be a Synchronous Digital Hierarchy (SDH) frame, an OTN frame, an Ethernet frame, or a flexible Ethernet (FlexE) frame.
Optionally, after generating m line frames, the sending end device may further generate a line frame FEC corresponding to each line frame according to each line frame, and add the corresponding line frame FEC to each line frame, so as to ensure that each line frame can be correctly decoded in the transmission process. The sending end device may add the line frame FEC corresponding to each generated line frame to the header of the corresponding line frame.
After the m line frames are generated, the sending end device may send the m line frames one-to-one through the m lines. For example, in this embodiment, the sending end device may modulate m line frames onto m optical signals, and send the m optical signals through m optical fibers. That is, m lines may refer to m fibers. Optionally, the sending end device may also modulate m line frames onto m optical signals with different wavelengths, so as to obtain m optical signals, and then send the m optical signals through one optical fiber. That is, the m lines may refer to m optical channels for transmitting m optical signals in one optical fiber.
It should be further noted that, when m line frames are sent out through m lines, the sending-end device may send the m line frames in a polling manner. For example, if there are five lines between the sending end device and the receiving end device, and the numbers are 1 to 5, the sending end device may start from line 1, allocate the first line frame to line 1 for transmission, allocate the second line frame to line 2 for transmission, and so on.
Optionally, in this embodiment of the present application, when m line frames are modulated to optical signals with m wavelengths and sent through one optical fiber, before modulation, the sending end device may further receive a wavelength adjustment instruction carrying a wavelength to be adjusted and a target wavelength, and update the wavelength to be adjusted to the target wavelength. The wavelength to be adjusted is any one of m wavelengths, and the target wavelength is other wavelengths except the m wavelengths.
For example, if the sending end device receives the wavelength adjustment instruction before modulating the signal, the sending end device may control the laser to generate the optical signal with the target wavelength according to the wavelength adjustment instruction, so as to replace the optical signal with the wavelength to be adjusted, and then the sending end device may modulate the line frame that is originally modulated onto the wavelength to be adjusted onto the target wavelength, so as to obtain the corresponding optical signal. By the method, the sending end device can change the frequency spectrum to realize the sorting of the frequency spectrum fragments, and for the receiving end device, the receiving end device cannot receive the path of data due to the frequency spectrum change.
In this embodiment, the sending end device may divide the service data into data blocks, generate i FEC blocks based on k data blocks when the number of the data blocks obtained through division reaches k, and send out m line frames generated based on the k data blocks and the i FEC blocks. Since the i FEC blocks included in the m line frames can support the receiving end device to restore the service data when transmission errors or failures occur in n line frames in the m line frames, even if transmission errors or failures occur in the n line frames when the k data blocks are sent out by the m line frames, the service data can still be restored by the data blocks and the FEC blocks in the remaining other line frames, so that even if a transmission link of the service data fails, the method provided by the application can ensure that all the service data can be restored without interruption of the service data, and the service data can be restored without loss under the condition that the transmission link fails.
The foregoing embodiment mainly introduces the process of processing and sending the service data by the sending end device, and after the sending end device sends out the service data through m line frames according to the method introduced in the foregoing embodiment, the receiving end device may process the received line frames by the method described in the following embodiment, so as to restore the received service data.
Fig. 7 is a service data processing method provided in an embodiment of the present application, where the method may be applied to the receiving end device shown in fig. 1, and as shown in fig. 7, the method includes the following steps:
step 701: and receiving the m line frames sent by the sending end equipment.
After the sending end device sends m line frames by using the method described in the foregoing embodiment, the receiving end device receives m line frames sent by the sending end device.
Step 702: and detecting whether the number of line frames with transmission errors in the m line frames is less than or equal to n.
Wherein m is a positive integer greater than 1, and n is a positive integer greater than 0 and less than m.
If m line frames sent by the sending end device have been received through step 701, the receiving end device may further detect whether there is a line frame with a transmission error caused by a transmission path failure in the received m line frames.
Illustratively, as can be seen from the content described in step 303 in the foregoing embodiment, the sending-end device may add a corresponding line frame FEC to the header of each line frame, and each line frame may carry a fault indication code for indicating whether an error exists in the corresponding line frame. In this case, the receiving end device may analyze the line frame FEC corresponding to each line frame, correct each line frame according to the FEC code obtained through the analysis, and then analyze each line frame, so as to obtain the fault indication code carried by each line frame. And detecting whether the fault indication code carried by each line frame in the m line frames is a first numerical value, if the line frame with the fault indication code carried as the first numerical value exists in the m line frames, determining the line frame with the fault indication code carried as the first numerical value as the line frame of the transmission error code, and counting the number of the line frames of the transmission error code.
It should be noted that the fault indication code may include two values, which are a first value and a second value, respectively, where the first value is used to indicate that the corresponding line frame transmission is faulty, and the second value is used to indicate that the corresponding line frame transmission is not faulty. Based on this, if it is detected that there is a line frame, of which the carried fault indication code is the first numerical value, in the m line frames, it may be determined that there is a transmission error code in the m line frames. At this time, the receiving end device may further count the number of line frames carrying the fault indication code as the first numerical value.
It should be noted that, the foregoing is only an implementation manner for optionally detecting whether a line frame is transmitted in error, and in practical application, the receiving end device may also implement monitoring whether m line frames are transmitted in error through other manners. This is not particularly limited in the embodiments of the present application.
Optionally, in a possible case, as can be seen from the foregoing embodiment, the sending end device may generate m optical signals according to the m frames, and send the m optical signals out through the m optical fibers. However, during the transmission of m optical signals from the transmitting end device to the receiving end device, there is a possibility that part of the signal transmission may be interrupted due to a transmission path failure. If part of the signal transmission is interrupted, the number of line frames received by the receiving end device may be smaller than m. In this case, the receiving end device may determine the number of line frames that have failed in transmission among the m line frames sent by the sending end device by decoding the received line frames.
Step 703: and if the number of the line frames with the transmission error codes in the m line frames is detected to be less than or equal to n, restoring the data blocks included in the line frames with the transmission error codes based on the FEC blocks in the m line frames.
As can be seen from the foregoing description in the embodiment, at most, the i FEC blocks included in the m line frames sent by the sending end device can support the recovery of n line frames in the m line frames. Therefore, after counting the number of line frames with transmission errors, the receiving end device may determine whether the number is greater than n, and if the number is not greater than n, the receiving end device may restore the data blocks included in the line frames with transmission errors based on the FEC blocks in the m line frames.
Illustratively, as can be seen from the foregoing description of the embodiments, the m line frames may include k data cells and i FEC cells, based on which the receiving end device may determine a cell type of each cell by parsing overhead areas of a plurality of cells, and further determine the FEC cells and the data cells from the plurality of cells included in the m line frames according to the determined cell types. Then, the receiving end device may parse the FEC block from the FEC cell, and restore the data block included in the line frame with the transmission error through the parsed FEC block.
After restoring the data block in the line frame with the transmission error code, the receiving end device may parse the data cells included in other line frames except the line frame with the transmission error code, so as to obtain the data block included in other line frames. Then, the receiving end device may perform error correction on the data block obtained through the analysis by using the FEC block obtained through the analysis.
Optionally, if the number of line frames received by the receiving end device is less than m, that is, if there is a line frame with a transmission failure in m line frames sent by the sending end device, after determining that the number of line frames with a transmission failure is obtained, the receiving end device may determine whether the number is greater than n, and if the number is not greater than n, the receiving end device may restore a data block included in the line frame with a transmission failure based on an FEC block in the received multiple line frames.
For example, the receiving end device may determine a cell type of each cell by parsing overhead areas of a plurality of cells in a plurality of line frames, and further determine an FEC cell and a data cell from a plurality of cells included in the plurality of optical signals according to the determined cell types. Then, the receiving end device may parse the FEC block from the FEC cell, and restore the data block included in the line frame with failed transmission through the parsed FEC block.
Step 704: and restoring the service data based on the restored data blocks and the data blocks included in the line frames except the line frame of the transmission error code.
After restoring the data block in the line frame with the transmission error, the receiving end device may restore the service data based on the restored data block and data blocks included in other line frames except the line frame with the transmission error.
For example, the receiving end device may determine, based on the plurality of FEC blocks, an ordering of the restored data blocks among the k data blocks; and sequencing the reduced data blocks and the plurality of data blocks carried by the plurality of data cells based on the sequencing of the reduced data blocks in the k data blocks and the sequence number carried by each data cell in the plurality of data cells in the line frames except the line frame with the transmission error to obtain the service data.
As can be known from the description in the foregoing embodiment, the overhead area of each data cell includes a sequence number used to indicate sorting of data blocks carried in the corresponding data cell among k data blocks, and based on this, for data cells included in a line frame that is not in error during transmission, the receiving end device may obtain the sequence number from the overhead area of each data cell, and sort the data blocks carried in the corresponding data cell according to the obtained sequence number. For a data cell included in a line frame with a transmission error, since the plurality of FEC blocks actually also include the ordering information of the data blocks, the receiving end device may determine the ordering of the plurality of restored data blocks in the k data blocks while restoring the data blocks based on the plurality of FEC blocks. Then, the receiving end device may perform sorting and assembling on the plurality of restored data blocks and the plurality of data blocks in the sorted non-error line frame according to the sorting of the plurality of restored data blocks in the k data blocks, so as to obtain the service data.
Optionally, after the line frame with failed transmission is restored, the service data may also be restored according to the restored data block with reference to the above method.
Step 705: and if the number of the line frames with the transmission error codes in the m line frames is detected to be larger than n, determining that the data blocks in the line frames with the transmission error codes are failed to be restored based on the FEC blocks in the m line frames, and triggering a restoration failure alarm.
When it is detected through step 702 that a line frame of a transmission error code in m line frames is greater than n, i FEC blocks included in the m line frames sent by the sending end device may support the restoration of n line frames in the m line frames at most, so that the receiving end device may not realize the restoration of the line frames greater than n based on the FEC blocks included in the m line frames, and at this time, the receiving end device may determine that the restoration of service data fails, and send an original failure warning message to perform warning.
In this embodiment of the present application, i FEC blocks included in m line frames sent by a sending end device may support a receiving end device to restore service data when transmission error codes of n line frames in the m line frames occur at most, so that if a transmission error code occurs in a line frame that is not greater than n lines due to a transmission path failure in a transmission process of the m line frames, after receiving a plurality of line frames, the receiving end device may restore a data block in the line frame that has the transmission error code according to the FEC block included in the received line frame, thereby restoring the service data.
In addition, it should be further noted that when the sending end device performs spectrum defragmentation to cause n paths of wavelengths to be interrupted or less than n paths of wavelengths to be interrupted, the receiving end device may still restore the interrupted data according to FEC blocks included in other paths of data, so as to obtain complete service data.
Next, a service data processing apparatus provided in this embodiment of the present application is described.
Referring to fig. 8, an embodiment of the present application provides a service data processing apparatus 800, where the apparatus 800 includes:
a slicing module 801 for performing step 301 in the foregoing embodiment;
a generating module 802 for performing step 302 in the foregoing embodiment;
a sending module 803, configured to execute step 303 in the foregoing embodiment.
Optionally, the generating module 802 includes:
a generation submodule, configured to generate an intermediate frame including m rows of data based on k data blocks and i FEC blocks, where the intermediate frame includes k data cells and i FEC cells, each data cell in the k data cells carries one data block in the k data blocks, a port number and a sequence number, the port number is used to indicate a destination port of the data block carried by the corresponding data cell, the sequence number is used to indicate an ordering of the data block carried by the corresponding data cell in the k data blocks, and each FEC cell in the i FEC cells carries one FEC block in the i FEC blocks;
and the generation submodule is also used for generating a line frame based on each line of the m lines of data of the intermediate frame to obtain m line frames.
Optionally, the generation submodule is specifically configured to:
mapping each line of data in the m lines of data into one optical path data unit ODUk to obtain m ODUks;
and mapping each ODUk in the m ODUks to one line frame to obtain m line frames.
Optionally, each of the m line frames includes a fault indication code, and the fault indication code is used to identify whether an error exists in the corresponding line frame.
Optionally, the sending module 803 is specifically configured to:
the m line frames are modulated onto the optical signals with m wavelengths in a one-to-one correspondence manner to obtain m paths of optical signals, and the m paths of optical signals are sent through m paths of optical fibers, wherein each path of optical fiber in the m paths of optical fibers is used for sending one path of optical signal in the m paths of optical signals.
Optionally, the sending module 803 is specifically configured to:
and modulating the m line frames to the optical signals with m wavelengths in a one-to-one correspondence manner to obtain m paths of optical signals, and transmitting the m paths of optical signals through one path of optical fiber.
Optionally, the apparatus 800 is further configured to:
determining a line frame FEC corresponding to each line frame based on each line frame in the m line frames, and adding the corresponding line frame FEC in each line frame.
Optionally, the apparatus 800 is further configured to:
receiving a wavelength adjusting instruction, wherein the wavelength adjusting instruction carries a wavelength to be adjusted and a target wavelength, the wavelength to be adjusted is any one of m wavelengths, and the target wavelength is other wavelengths except the m wavelengths;
and updating the wavelength to be adjusted to the target wavelength.
To sum up, the embodiment of the present application may divide the service data into data blocks, generate i FEC blocks based on k data blocks when the number of the data blocks obtained by division reaches k, and generate m line frames from the k data blocks and the i FEC blocks, and send the m line frames. Since the i FEC blocks included in the m line frames can support the receiving end device to restore the service data when transmission errors or failures occur in n line frames in the m line frames, even if transmission errors occur in n line frames when the k data blocks are sent out by the m line frames, the service data can still be restored by the data blocks and the FEC blocks in the remaining other line frames.
Referring to fig. 9, an embodiment of the present application provides a service data processing apparatus 900, where the apparatus 900 includes:
a receiving module 901, configured to execute step 701 in the foregoing embodiment;
a restoring module 902 for performing steps 702-704 in the foregoing embodiments.
Optionally, each line frame in the m line frames carries a fault indication code for identifying whether a transmission error code exists in the corresponding line frame;
the apparatus 900 further comprises:
the detection module is used for detecting whether the fault indication code carried by each line frame in the m line frames is a first numerical value;
and the counting module is used for determining the line frame with the fault indication code as the first numerical value as the line frame of the transmission error code and counting the number of the line frames of the transmission error code if the line frame with the fault indication code as the first numerical value exists in the m line frames.
Optionally, the m line frames include k data cells and i FEC cells, each data cell in the k data cells carries one data block, a port number, and a sequence number, the port number is used to indicate a destination port of the data block carried by the corresponding data cell, the sequence number is used to indicate an ordering of the data block carried by the corresponding data cell in the k data blocks carried by the k data cells, and each FEC cell in the i FEC cells carries one FEC block;
the restoring module 902 is specifically configured to:
analyzing the m line frames to obtain a plurality of FEC blocks included by the m line frames;
the data blocks included in the line frame of the transmission error are restored based on the plurality of FEC blocks.
Optionally, the restoring module 902 is specifically configured to:
determining an ordering of the restored data blocks among the k data blocks based on the plurality of FEC blocks;
and sequencing the reduced data block and the plurality of data blocks carried by the plurality of data cells based on the sequencing of the reduced data block in the k data blocks and the sequence number carried by each data cell in the plurality of data cells of the line frames except the line frame for transmitting the error code to obtain the service data.
Optionally, the apparatus 900 is further configured to:
if the number of the line frames with the transmission error codes in the m line frames is detected to be larger than n, determining that the data blocks in the line frames with the transmission error codes are failed to be restored based on the FEC blocks in the m line frames, and triggering a restoration failure alarm.
In this embodiment of the present application, i FEC blocks included in m line frames sent by a sending end device may support a receiving end device to restore service data when transmission errors or failures of n line frames in the m line frames occur, so that, if transmission failures or errors of line frames not greater than n lines are caused by a transmission path failure in a transmission process of the m line frames, the receiving end device may restore data blocks in the line frames in which transmission fails or is erroneous according to the FEC blocks included in the received line frames after receiving a plurality of line frames, thereby restoring the service data.
It should be noted that: in the service data processing apparatus provided in the foregoing embodiment, when processing service data, only the division of the functional modules is illustrated, and in practical applications, the function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the service data processing apparatus and the service data processing method provided in the foregoing embodiments belong to the same concept, and specific implementation processes thereof are described in the method embodiments, and are not described herein again.
In the above embodiments, the implementation may be wholly or partly realized by software, hardware, firmware, or any combination thereof. When implemented in software, it may 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 loaded and executed on a computer, cause the processes or functions described in accordance with embodiments of the invention, to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., digital Versatile Disk (DVD)), or a semiconductor medium (e.g., solid State Disk (SSD)), among others.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the storage medium may be a read-only memory, a magnetic disk or an optical disk.
The above-mentioned embodiments are provided not to limit the present application, and any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (32)

1. A method for processing service data, the method comprising:
dividing the service data into data blocks according to the specified byte length;
when the number of the data blocks obtained by segmentation reaches k, generating i forward error correction code (FEC) blocks based on the k data blocks, wherein both k and i are positive integers greater than 1;
generating m line frames based on the k data blocks and the i FEC blocks, and sending the m line frames, where the total number of the data blocks and the FEC blocks included in each line frame in the m line frames is the same, and the i FEC blocks are used to support a receiving end device to restore the service data when transmission errors exist in line frames not greater than n in the m line frames, where m is a positive integer greater than 1, k + i is an integer multiple of the m, and n is a positive integer greater than 0 and less than m.
2. The method of claim 1, wherein generating m line frames based on the k data blocks and the i FEC blocks comprises:
generating an intermediate frame including m rows of data based on the k data blocks and the i FEC blocks, where the intermediate frame includes k data cells and i FEC cells, each data cell in the k data cells carries one data block in the k data blocks, a port number and a sequence number, the port number is used to indicate a destination port of the data block carried by the corresponding data cell, the sequence number is used to indicate an ordering of the data block carried by the corresponding data cell in the k data blocks, and each FEC cell in the i FEC cells carries one FEC block in the i FEC blocks;
and generating a line frame based on each line of the m lines of data of the intermediate frame to obtain the m line frames.
3. The method of claim 2, wherein said generating a line frame based on each of the m lines of data of the intermediate frame, resulting in the m line frames, comprises:
mapping each row of data in the m rows of data into one optical channel data unit ODUk to obtain m ODUks;
and mapping each ODUk of the m ODUk into one line frame to obtain the m line frames.
4. The method of claim 2, wherein each of the m line frames includes a fault indication code for identifying whether an error exists in the corresponding line frame.
5. The method of claim 3, wherein each of the m line frames includes a fault indication code for identifying whether an error exists in the corresponding line frame.
6. The method of any of claims 1-5, wherein said transmitting the m line frames comprises:
and modulating the m line frames to optical signals with m wavelengths in a one-to-one correspondence manner to obtain m paths of optical signals, and sending the m paths of optical signals through m paths of optical fibers, wherein each optical fiber in the m paths of optical fibers is used for sending one optical signal in the m paths of optical signals.
7. The method of any of claims 1-5, wherein said transmitting said m line frames comprises:
and correspondingly modulating the m line frames to optical signals with m wavelengths one by one to obtain m paths of optical signals, and sending the m paths of optical signals through one path of optical fiber.
8. The method of claim 6, wherein prior to said transmitting said m line frames, further comprising:
and determining a line frame FEC corresponding to each line frame based on each line frame in the m line frames, and adding the corresponding line frame FEC in each line frame.
9. The method of claim 7, wherein prior to said transmitting said m line frames, further comprising:
and determining a line frame FEC corresponding to each line frame based on each line frame in the m line frames, and adding the corresponding line frame FEC in each line frame.
10. The method of claim 6, wherein prior to said modulating said m line frames one-to-one onto m wavelengths of optical signals, further comprising:
receiving a wavelength adjusting instruction, wherein the wavelength adjusting instruction carries a wavelength to be adjusted and a target wavelength, the wavelength to be adjusted is any one of the m wavelengths, and the target wavelength is other wavelengths except the m wavelengths;
and updating the wavelength to be adjusted to the target wavelength.
11. The method of claim 7, wherein prior to said modulating said m line frames one-to-one onto m wavelengths of optical signals, further comprising:
receiving a wavelength adjusting instruction, wherein the wavelength adjusting instruction carries a wavelength to be adjusted and a target wavelength, the wavelength to be adjusted is any one of the m wavelengths, and the target wavelength is other wavelengths except the m wavelengths;
and updating the wavelength to be adjusted to the target wavelength.
12. A method for processing service data, the method comprising:
receiving m line frames sent by sending end equipment;
if the number of line frames with transmission errors in the m line frames is detected to be less than or equal to n, restoring data blocks included in the line frames with the transmission errors based on FEC blocks in the m line frames, and restoring service data based on the restored data blocks and data blocks included in other line frames except the line frames with the transmission errors, wherein m is a positive integer greater than 1, and n is a positive integer greater than 0 and less than m;
the m line frames include i FEC blocks, where i refers to a minimum number of FEC blocks required for restoring n lines of included data blocks, the m line frames are sent by equally distributing k data blocks and i FEC blocks to m lines of the sending end device, and a sum of k and i is an integer multiple of m.
13. The method of claim 12, wherein each of the m line frames carries a fault indication code for identifying whether a transmission error exists in the corresponding line frame;
the method further comprises the following steps:
detecting whether a fault indication code carried by each line frame in the m line frames is a first numerical value or not;
if the line frame with the fault indication code of the first numerical value exists in the m line frames, determining the line frame with the fault indication code of the first numerical value as the line frame of the transmission error code, and counting the number of the line frames of the transmission error code.
14. The method of claim 12, wherein the m line frames comprise k data cells and i FEC cells, each of the k data cells carries one data block, a port number for indicating a destination port of the data block carried by the corresponding data cell, and a sequence number for indicating an ordering of the data blocks carried by the corresponding data cell among the k data blocks carried by the k data cells, each of the i FEC cells carries one FEC block;
the restoring the data block included in the line frame with the transmission error code based on the FEC block in the m line frames includes:
analyzing the m line frames to obtain a plurality of FEC blocks included in the m line frames;
and restoring the data blocks included in the line frame of the transmission error code based on the plurality of FEC blocks.
15. The method of claim 14, wherein the recovering the service data based on the recovered data blocks and data blocks included in line frames other than the line frame with the transmission error comprises:
determining an ordering of the recovered data blocks among the k data blocks based on the plurality of FEC blocks;
and sorting the reduced data blocks and the plurality of data blocks carried by the plurality of data cells based on the sorting of the reduced data blocks in the k data blocks and the sequence number carried by each data cell in the plurality of data cells included in other line frames except the line frame of the transmission error code to obtain the service data.
16. The method of any of claims 12-15, wherein the method further comprises:
if the number of the line frames with the transmission error codes in the m line frames is detected to be larger than n, determining that the data blocks in the line frames with the transmission error codes are failed to be restored based on the FEC blocks in the m line frames, and triggering a restoration failure alarm.
17. A service data processing apparatus, characterized in that the apparatus comprises:
the segmentation module is used for segmenting the service data into data blocks according to the specified byte length;
a generating module, configured to generate i forward error correction FEC blocks based on k data blocks when the number of the data blocks obtained through segmentation reaches k, where k and i are positive integers greater than 1;
a sending module, configured to generate m line frames based on the k data blocks and the i FEC blocks, and send the m line frames, where total numbers of the data blocks and the FEC blocks included in each line frame of the m line frames are the same, and the i FEC blocks are used to support a receiving end device to restore the service data when transmission error occurs in a line frame that is not greater than n in the m line frames, where m is a positive integer greater than 1, k + i is an integer multiple of m, and n is a positive integer greater than 0 and less than m.
18. The apparatus of claim 17, wherein the generating module comprises:
a generating sub-module, configured to generate an intermediate frame including m rows of data based on the k data blocks and the i FEC blocks, where the intermediate frame includes k data cells and i FEC cells, each of the k data cells carries one of the k data blocks, a port number, and a sequence number, the port number is used to indicate a destination port of the data block carried by the corresponding data cell, the sequence number is used to indicate an ordering of the data block carried by the corresponding data cell in the k data blocks, and each of the i FEC cells carries one of the i FEC blocks;
the generation submodule is further configured to generate a line frame based on each line of the m lines of data of the intermediate frame, so as to obtain the m line frames.
19. The apparatus of claim 18, wherein the generation submodule is specifically configured to:
mapping each row of data in the m rows of data into one optical channel data unit ODUk to obtain m ODUks;
and mapping each ODUk in the m ODUks into a line frame to obtain the m line frames.
20. The apparatus of claim 18, wherein each of the m line frames includes a fault indication code for identifying whether an error exists in the corresponding line frame.
21. The apparatus of claim 19, wherein each of the m line frames includes a fault indication code for identifying whether an error exists in the corresponding line frame.
22. The apparatus of any one of claims 17-21, wherein the sending module is specifically configured to:
and modulating the m line frames to optical signals with m wavelengths in a one-to-one correspondence manner to obtain m paths of optical signals, and sending the m paths of optical signals through m paths of optical fibers, wherein each optical fiber in the m paths of optical fibers is used for sending one optical signal in the m paths of optical signals.
23. The apparatus of any one of claims 17-21, wherein the sending module is specifically configured to:
and correspondingly modulating the m line frames to optical signals with m wavelengths one by one to obtain m paths of optical signals, and sending the m paths of optical signals through one path of optical fiber.
24. The apparatus of claim 22, wherein the apparatus is further configured to:
and determining a line frame FEC corresponding to each line frame based on each line frame in the m line frames, and adding the corresponding line frame FEC in each line frame.
25. The apparatus of claim 23, wherein the apparatus is further configured to:
and determining a line frame FEC corresponding to each line frame based on each line frame in the m line frames, and adding the corresponding line frame FEC in each line frame.
26. The apparatus of claim 22, wherein the apparatus is further configured to:
receiving a wavelength adjusting instruction, wherein the wavelength adjusting instruction carries a wavelength to be adjusted and a target wavelength, the wavelength to be adjusted is any one of the m wavelengths, and the target wavelength is other wavelengths except the m wavelengths;
and updating the wavelength to be adjusted to the target wavelength.
27. The apparatus of claim 23, wherein the apparatus is further configured to:
receiving a wavelength adjusting instruction, wherein the wavelength adjusting instruction carries a wavelength to be adjusted and a target wavelength, the wavelength to be adjusted is any one of the m wavelengths, and the target wavelength is other wavelengths except the m wavelengths;
and updating the wavelength to be adjusted to the target wavelength.
28. A service data processing apparatus, characterized in that the apparatus comprises:
the receiving module is used for receiving m line frames sent by the sending end equipment;
a restoring module, configured to restore, if it is detected that the number of line frames with transmission error codes in the m line frames is less than or equal to n, a data block included in the line frame with transmission error codes based on an FEC block in the m line frames, and restore service data based on the restored data block and data blocks included in other line frames except the line frame with transmission error codes, where m is a positive integer greater than 1, and n is a positive integer greater than 0 and less than m;
the m line frames include i FEC blocks, where i refers to a minimum number of FEC blocks required for restoring n lines of included data blocks, the m line frames are sent by equally distributing k data blocks and i FEC blocks to m lines of the sending end device, and a sum of k and i is an integer multiple of m.
29. The apparatus of claim 28, wherein each of the m line frames carries a fault indication code for identifying whether a transmission error exists in the corresponding line frame;
the device further comprises:
the detection module is used for detecting whether a fault indication code carried by each line frame in the m line frames is a first numerical value;
and the counting module is used for determining the line frame with the fault indication code as the first numerical value as the line frame of the transmission error code and counting the number of the line frames of the transmission error code if the line frame with the fault indication code as the first numerical value exists in the m line frames.
30. The apparatus of claim 28, wherein the m line frames comprise k data cells and i FEC cells, each of the k data cells carrying a data block, a port number indicating a destination port of the data block carried by the corresponding data cell, and a sequence number indicating an ordering of the data blocks carried by the corresponding data cell among the k data blocks carried by the k data cells, each of the i FEC cells carrying an FEC block;
the reduction module is specifically configured to:
analyzing the m line frames to obtain a plurality of FEC blocks included in the m line frames;
and restoring the data blocks included in the line frame of the transmission error code based on the plurality of FEC blocks.
31. The apparatus of claim 30, wherein the reduction module is specifically configured to:
determining an ordering of the recovered data blocks among the k data blocks based on the plurality of FEC blocks;
and sorting the reduced data blocks and the plurality of data blocks carried by the plurality of data cells based on the sorting of the reduced data blocks in the k data blocks and the sequence number carried by each data cell in the plurality of data cells included in other line frames except the line frame of the transmission error code to obtain the service data.
32. The apparatus of any of claims 28-31, wherein the apparatus is further configured to:
if the number of the line frames with the transmission error codes in the m line frames is detected to be larger than n, determining that the data blocks in the line frames with the transmission error codes are failed to be restored based on the FEC blocks in the m line frames, and triggering a restoration failure alarm.
CN201811296809.8A 2018-11-01 2018-11-01 Service data processing method and device Active CN111130686B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811296809.8A CN111130686B (en) 2018-11-01 2018-11-01 Service data processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811296809.8A CN111130686B (en) 2018-11-01 2018-11-01 Service data processing method and device

Publications (2)

Publication Number Publication Date
CN111130686A CN111130686A (en) 2020-05-08
CN111130686B true CN111130686B (en) 2022-12-06

Family

ID=70494938

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811296809.8A Active CN111130686B (en) 2018-11-01 2018-11-01 Service data processing method and device

Country Status (1)

Country Link
CN (1) CN111130686B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114567410A (en) * 2020-11-27 2022-05-31 华为技术有限公司 Signal frame processing method and related equipment
CN114978412A (en) * 2021-02-26 2022-08-30 华为技术有限公司 Data encoding method, data decoding method and related equipment
EP4287533A4 (en) * 2021-02-26 2024-03-27 Huawei Tech Co Ltd Design method for forward error correction (fec) and related device

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4573663B2 (en) * 2005-02-16 2010-11-04 富士通株式会社 Data relay device, data relay method, data transmission / reception device, and data communication system
CN101193041A (en) * 2006-11-28 2008-06-04 华为技术有限公司 Network data transmission method, device and system
CN101414922B (en) * 2007-10-16 2012-09-05 华为技术有限公司 Method and apparatus for sending and receiving IP data packet
KR101691841B1 (en) * 2009-02-12 2017-01-02 엘지전자 주식회사 Method and Apparatus Of Tranmsitting A Signal
CN101588504A (en) * 2009-05-21 2009-11-25 中兴通讯股份有限公司 Sending and receiving devices of video communication system, and sending and receiving method thereof
CN101662335B (en) * 2009-09-15 2013-06-26 中国人民解放军国防科学技术大学 Forward error correction encoding method, forward error correction decoding method and devices thereof
CN110719143A (en) * 2015-07-30 2020-01-21 华为技术有限公司 Method, transmitter and receiver for data transmission
CN107196746B (en) * 2016-03-15 2020-11-27 中兴通讯股份有限公司 Method, device and system for packet loss resistance in real-time communication

Also Published As

Publication number Publication date
CN111130686A (en) 2020-05-08

Similar Documents

Publication Publication Date Title
CN111130686B (en) Service data processing method and device
US8243619B2 (en) Smart mechanism for multi-client bidirectional optical channel protection scheme
US11297000B2 (en) Data transmission method, apparatus, and system
WO2016110248A1 (en) Failure processing method and device for forwarding device, and controller
US20070005248A1 (en) Data reconstruction in link-based interconnects
US11611816B2 (en) Service data processing method and device
JP5719438B2 (en) CPRI link error code monitoring method, system and apparatus
US20230023776A1 (en) Codeword Synchronization Method, Receiver, Network Device, and Network System
CN108337069B (en) Improved error rate reducing end parallel grouping CRC (Cyclic redundancy check) system
CN111049690B (en) Equipment fault monitoring processing method, device, equipment and storage medium
CN112511330A (en) Alarm method, device, network equipment and storage medium
EP4068661A1 (en) Data transmission method and apparatus
CN112671575B (en) Working link switching method and device, storage medium and electronic device
CN115549774B (en) Optical signal processing method, device, chip, system and medium
WO2022228370A1 (en) Codeword synchronization method, receiver, network device and network system
CN116346280A (en) Method, device, equipment, system and storage medium for generating and processing Ethernet frame
US8429484B2 (en) Digitized radar information redundancy method and system
AU2022211512A1 (en) Data transmission method and apparatus, and device, system and computer-readable storage medium
CN112825501A (en) Signal degradation processing method, device and system
JP6348870B2 (en) Communication apparatus and communication method
EP4319089A1 (en) Path determination method and apparatus, device, system, and computer readable storage medium
WO2022237217A1 (en) Link detection method and apparatus, and device
US20230403098A1 (en) Data encoding method, data decoding method, and related device
CN113872790B (en) Service signal transmission method and network equipment
CN116980231B (en) Double-link redundancy safety communication method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant