WO2024148984A1 - 传输数据的方法、装置、设备、系统及存储介质 - Google Patents
传输数据的方法、装置、设备、系统及存储介质 Download PDFInfo
- Publication number
- WO2024148984A1 WO2024148984A1 PCT/CN2023/136552 CN2023136552W WO2024148984A1 WO 2024148984 A1 WO2024148984 A1 WO 2024148984A1 CN 2023136552 W CN2023136552 W CN 2023136552W WO 2024148984 A1 WO2024148984 A1 WO 2024148984A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- fec code
- encoding
- padding
- code
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
- H04L1/0007—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
- H04L1/0008—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length by supplementing frame payload, e.g. with padding bits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
- H04L1/0042—Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
- H04L1/0065—Serial concatenated codes
Definitions
- the present application relates to the field of communications, and in particular to a method, device, equipment, system and storage medium for transmitting data.
- the transmission rate of Ethernet on the physical link is usually selected as an integer multiple of the crystal oscillator.
- additional padding data is usually required.
- the present application proposes a method, apparatus, device, system and storage medium for transmitting data, which are used to improve the reliability and efficiency of transmitting fill data.
- a method for transmitting data comprising: obtaining first data, the first data being obtained by encoding first reference data using a first forward error correction (FEC) code; encoding the first data according to a second FEC code to obtain a first encoding result; obtaining second data, the second data comprising the first encoding result and padding data for adjusting a frequency, the padding data carrying relevant information for data transmission, and the padding data being protected data; and transmitting the second data.
- FEC forward error correction
- the method improves the reliability and efficiency of transmitting the padding data by protecting the padding data, thereby enabling the relevant information of the data transmission carried by the padding data to be transmitted more reliably.
- the first FEC code and the second FEC code include but are not limited to any one of Reed-Solomon (RS) code, Bose-Chaudhuri-Hocquenghem (BCH) code, Fire code, extended BCH code, Hamming code, extended Hamming code, turbo code, turbo product code (TPC), staircase code and low density parity check (LDPC) code.
- RS Reed-Solomon
- BCH Bose-Chaudhuri-Hocquenghem
- Fire code extended BCH code
- Hamming code extended Hamming code
- turbo code turbo product code
- TPC turbo product code
- LDPC low density parity check
- the protection process includes adding CRC
- the padding data is the data for adding the CRC protection. If CRC protection is added to the padding data, it can be used to detect whether there is an error in the padding data within the CRC protection range after transmission. In order to add the CRC function, the length of the padding data needs to meet the length that can be inserted into the CRC.
- the protection processing includes encoding using a third FEC code, and the padding data is data encoded using the third FEC code. Since the FEC code can not only detect errors but also correct bit errors, the packet loss rate is reduced. By encoding the padding data using the third FEC code, the reliability of the padding data can be further improved after being calculated by the third FEC code.
- the protection processing includes adding a cyclic redundancy check (CRC) and encoding with a third FEC code
- the padding data is data that adds the CRC protection and is encoded with the third FEC code.
- CRC cyclic redundancy check
- This protection method can be applied in scenarios where high reliability requirements are required for the relevant information of the data carried.
- the third FEC code is the same as the second FEC code.
- the encoder and decoder of the implemented second FEC code are reused as much as possible.
- the length of the padding data is an integer multiple of the length of the second FEC code, thereby facilitating the fixing of the boundary of the second FEC.
- obtaining the second data includes: inserting padding data for adjusting the frequency point into the first encoding result according to a reference density to obtain the second data, wherein the reference density is determined based on an overhead ratio of the first FEC code and the second FEC code and a frequency of a crystal oscillator used when encoding the first data according to the second FEC code.
- the method further includes: acquiring at least one third data, wherein the third data is obtained by encoding the second reference data using a fourth FEC code; for any third data among the at least one third data, encoding the any third data according to a fifth FEC code to obtain a second encoding result; acquiring fourth data, wherein the fourth data includes the second encoding result and the padding data; and transmitting the fourth data.
- both the fourth data and the second data include padding data
- a method for transmitting data comprising: receiving second data, the second data comprising a first coding result and filling data for adjusting a frequency, the filling data carrying relevant information for data transmission, and the filling data being protected data, the first coding result being obtained by encoding first data based on a second FEC code, the first data being obtained by encoding first reference data using a first FEC code; obtaining the first coding result and the filling data from the second data; decoding the first coding result according to the second FEC code to obtain the first data; and obtaining relevant information for the data transmission based on the filling data.
- the protection processing includes adding CRC
- the padding data is data for adding the CRC protection
- obtaining the relevant information of the data transmission based on the padding data includes: performing the CRC check on the padding data, and obtaining the relevant information of the data transmission after the CRC check passes.
- the protection processing includes encoding using a third FEC code, and the padding data is data encoded using the third FEC code; obtaining relevant information of the data transmission based on the padding data includes: decoding the padding data using the third FEC code, and obtaining relevant information of the data transmission based on the decoding result.
- the protection processing includes adding CRC and encoding with a third FEC code
- the padding data is data to which the CRC protection is added and encoded with the third FEC code
- obtaining relevant information of the data transmission based on the padding data includes: decoding the padding data with a third FEC code, performing the CRC check on the decoding result, and obtaining relevant information of the data transmission after the CRC check passes.
- the third FEC code is the same as the second FEC code.
- the length of the padding data is an integer multiple of the length of the second FEC code.
- the method also includes: receiving at least one fourth data, the fourth data including a second encoding result and padding data, the second encoding result being obtained by encoding third data based on a fifth FEC code, and the third data being obtained by encoding second reference data using the fourth FEC code; obtaining the second encoding result and the padding data from each fourth data; decoding the second encoding result according to the fifth FEC code to obtain the third data; and obtaining relevant information of the data transmission based on the padding data, including: comparing the padding data obtained from each fourth data with the padding data obtained from the second data, and when it is determined according to the comparison result that the number of identical padding data reaches a threshold, the second module obtaining relevant information of the data transmission based on the padding data.
- comparing the padding data obtained from each of the fourth data with the padding data obtained from the second data includes: segmenting the padding data obtained from each of the fourth data and the padding data obtained from the second data, respectively, and comparing the segmented data blocks.
- the padding data comparison process is implemented by comparing data blocks, thereby improving comparison efficiency.
- a device for transmitting data comprising: a first acquisition module, used to acquire first data, wherein the first data is obtained by encoding first reference data using a first FEC code; an encoding module, used to encode the first data according to a second FEC code to obtain a first encoding result; a second acquisition module, used to acquire second data, wherein the second data includes the first encoding result and padding data for adjusting the frequency, the padding data carries relevant information for data transmission, and the padding data is data that has been protected; and a transmission module, used to transmit the second data.
- the protection process includes adding a CRC
- the padding data is data for adding the CRC protection.
- the protection processing includes encoding using a third FEC code, and the padding data is data encoded using the third FEC code.
- the protection processing includes adding CRC and encoding with a third FEC code, and the padding data is data to which the CRC protection is added and encoded with the third FEC code.
- the third FEC code is the same as the second FEC code.
- the length of the padding data is an integer multiple of the length of the second FEC code.
- the second acquisition module is used to insert padding data for adjusting the frequency point into the first encoding result according to a reference density to obtain the second data, and the reference density is determined based on the overhead ratio of the first FEC code and the second FEC code and the frequency of the crystal oscillator used when encoding the first data according to the second FEC code.
- the first acquisition module is further used to acquire at least one third data, where the third data is obtained by encoding the second reference data using the fourth FEC code; the encoding module is further used to encode any third data among the at least one third data according to the fifth FEC code to obtain a second encoding result; the second acquisition module is further used to acquire fourth data, where the fourth data includes the second encoding result and the padding data; and the transmission module is further used to transmit the fourth data.
- a device for transmitting data comprising: a receiving module, used to receive second data, the second data comprising a first coding result and padding data for adjusting a frequency, the padding data carrying relevant information for data transmission, and the padding data being protected data, the first coding result being obtained by encoding first data based on a second FEC code, the first data being obtained by encoding first reference data using a first FEC code; a first acquisition module, used to obtain the first coding result and the padding data from the second data; a decoding module, used to decode the first coding result according to the second FEC code to obtain the first data; and a second acquisition module, used to obtain relevant information for the data transmission based on the padding data.
- the protection processing includes adding CRC
- the filling data is data for adding the CRC protection
- the second acquisition module is used to perform the CRC check on the filling data, and after the CRC check passes, obtain relevant information of the data transmission.
- the protection processing includes encoding using a third FEC code, and the padding data is data encoded using the third FEC code; the second acquisition module is used to decode the padding data using the third FEC code, and obtain relevant information of the data transmission based on the decoding result.
- the protection processing includes adding CRC and encoding with a third FEC code, and the padding data is data to which the CRC protection is added and encoded with the third FEC code; the second acquisition module is used to decode the padding data with the third FEC code, perform the CRC check on the decoding result, and obtain relevant information of the data transmission after the CRC check passes.
- the third FEC code is the same as the second FEC code.
- the length of the padding data is an integer multiple of the length of the second FEC code.
- the receiving module is also used to receive at least one fourth data, the fourth data including a second encoding result and padding data, the second encoding result is obtained by encoding the third data based on the fifth FEC code, and the third data is obtained by encoding the second reference data using the fourth FEC code;
- the first acquisition module is also used to obtain the second encoding result and the padding data from each fourth data;
- the decoding module is also used to decode the second encoding result according to the fifth FEC code to obtain the third data;
- the second acquisition module is used to compare the padding data obtained from each fourth data with the padding data obtained from the second data, and when it is determined according to the comparison result that the number of identical padding data reaches a threshold, obtain the relevant information of the data transmission based on the padding data.
- the second acquisition module is used to segment the filling data obtained from the fourth data and the filling data obtained from the second data, respectively, and compare the data blocks obtained by segmentation.
- a network device comprising: a processor, the processor being coupled to a memory, the memory storing at least one program instruction or code, the at least one program instruction or code being loaded and executed by the processor so that the network device implements any of the methods described in the first aspect or the second aspect above.
- a data transmission system comprising a first module and a second module, the first module is used to execute any method described in the first aspect, and the second module is used to execute any method described in the second aspect.
- a computer-readable storage medium stores at least one program instruction or code, and when the program instruction or code is loaded and executed by a processor, the computer implements any method described in the first aspect or the second aspect.
- a chip comprising a processor, wherein the processor is used to implement the method described in any one of the first aspect or the second aspect.
- a communication device which includes the chip described in the eighth aspect.
- a computer program comprising a computer program or code, which, when executed by a computer, enables the The computer executes any of the methods described in the first aspect or the second aspect.
- another communication device comprising: a transceiver, a memory and a processor.
- the transceiver, the memory and the processor communicate with each other through an internal connection path, the memory is used to store instructions, the processor is used to execute the instructions stored in the memory to control the transceiver to receive signals and control the transceiver to send signals, and when the processor executes the instructions stored in the memory, the processor executes the method in the first aspect or any possible implementation of the first aspect, or executes the method in the second aspect or any possible implementation of the second aspect.
- the number of the processors is one or more, and the number of the memories is one or more.
- the memory may be integrated with the processor, or the memory may be provided separately from the processor.
- the memory can be a non-transitory memory, such as a read-only memory (ROM), which can be integrated with the processor on the same chip or can be separately set on different chips.
- ROM read-only memory
- the embodiments of the present application do not limit the type of memory and the setting method of the memory and the processor.
- a chip comprising a processor for calling and executing instructions stored in a memory from the memory, so that a communication device equipped with the chip executes the methods in the above aspects.
- another chip comprising: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory, and when the code is executed, the processor is used to execute the methods in the above aspects.
- FIG1 is a schematic diagram of a cascade coding process provided by an embodiment of the present application.
- FIG2 is a schematic diagram of an implementation scenario provided by an embodiment of the present application.
- FIG3 is an interactive diagram of a method for transmitting data provided by an embodiment of the present application.
- FIG4 is a schematic diagram of inserting filling data provided by an embodiment of the present application.
- FIG5 is a schematic diagram of a structure of filling data provided in an embodiment of the present application.
- FIG6 is a schematic diagram of a structure of filling data provided in an embodiment of the present application.
- FIG7 is a schematic diagram of the structure of a device for transmitting data provided in an embodiment of the present application.
- FIG8 is a schematic diagram of the structure of a device for transmitting data provided in an embodiment of the present application.
- FIG9 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application.
- FIG10 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application.
- FIG. 11 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application.
- FEC forward error correction
- RS Reed-Solomon
- BCH Bose-Chaudhuri-Hocquenghem
- Fire code extended BCH code
- Hamming code extended Hamming code
- turbo code turbo product code
- LDPC low density parity check
- the commonly used crystal oscillator frequency (also called the basic frequency) of Ethernet is 156.25 megahertz (MHz) or 312.5MHz.
- the rate of each physical channel is 25.78125 gigabit per second (Gbps or Gb/s) non return to zero (NRZ) modulation, and the transmission baud rate is 165 times the basic frequency of 156.25MHz.
- each physical channel The rate is 106.25Gb/s four-level (or four-level) pulse amplitude modulation (PAM4) modulation, and the baud rate is 53.125GBd, which is 340 times the basic frequency of 156.25MHz.
- PAM4 pulse amplitude modulation
- 200G/lane intensity-modulation direct detection (IMDD) optical link may adopt cascaded FEC.
- RS 544, 514 code provided by the host application-specific integrated circuit (host ASIC) chip
- the optical module performs a certain integration operation on the data stream without decoding, and then superimposes a layer of short code encoding, which can be any FEC code.
- the cascade code can also be fully integrated into, for example, the host ASIC chip.
- the cascade FEC includes an outer code and an inner code.
- the outer code is the first FEC code and the inner code is the second FEC code.
- the overhead of the inner code (the second FEC code) will be considered.
- the selection can also support integer multiples of the base frequency.
- the information bit length of the second FEC code is represented by k, and the length of the second FEC codeword is represented by n. k and n are positive integers, and the values of k and n are related to the code type.
- the process diagram of cascade coding for example, in the case of nominal 200G/lane, the transmission rate after 64-bit (bit, B)/66B coding is 206.25Gb/s, and after transcoding to 256B/257B coding, the transmission rate is 200.78125Gb/s.
- the actual transmission rate of nominal 200G/lane is 212.5Gb/s.
- the baud rate is 106.25GBd.
- the physical link rate can be increased to 225Gb/s, that is, 112.5GBd (112.5G baud rate), which is 720 times the base frequency.
- 112.5GBd 112.5G baud rate
- the operation of the second FEC code is shown in Figure 1.
- the relevant information for data transmission may be some management and control information, which includes but is not limited to: adjusting optical device parameters, adjusting electrical characteristic parameters of optical modules, communicating with the opposite end about the quality of signal reception and transmission, negotiating the switch of the FEC interleaver, and so on.
- the embodiment of the present application provides a method for transmitting data, which improves the reliability of transmitting the padding data by protecting the padding data, thereby enabling the relevant information of the data transmission carried by the padding data to be transmitted more reliably.
- FIG2 is a schematic diagram of an implementation scenario of a method for transmitting data provided in an embodiment of the present application.
- the implementation scenario includes a first module 101 and a second module 102, and the first module 101 and the second module 102 are communicatively connected.
- the first module 101 and the second module 102 are communicatively connected via multiple physical links.
- the first module 101 is included in a first device
- the second module 102 is included in a second device.
- the first module 101 and the second module 102 may also be included in the same device.
- the device where any one or more of the first module 101 and the second module 102 are located may be a network device, or may be other devices that include an Ethernet interface or comply with the IEEE 802.3 standard.
- other modules may also be included in the implementation scenario shown in FIG2, which is not limited in the embodiment of the present application.
- the method for transmitting data provided in an embodiment of the present application may be shown in FIG. 3 , taking the first module executing the method as an example, including the following S301 - S304 .
- a first module obtains first data, where the first data is obtained by encoding first reference data with a first FEC code.
- the first module obtains the first data by encoding the first reference data using a first FEC code after obtaining the first reference data. In this manner, the first module is the source node of data transmission.
- the first module may obtain the first data in such a way that other modules other than the first module encode the first reference data using the first FEC code to obtain the first data, and then send the first data to the first module, so that the first module obtains the first data.
- the first module may be an intermediate node for data transmission.
- the first reference data may also be scrambled before the first module or other modules encode the first reference data using the first FEC code.
- the first FEC code includes but is not limited to any one of RS code, BCH code, fire code, extended BCH code, Hamming code, extended Hamming code, turbo code, TPC code, staircase code and LDPC code.
- the first data may also undergo other processing.
- the embodiment of the present application does not limit the processing methods of other processing.
- the first data is data that encodes the first reference data using the first FEC code, passes through the physical medium access sublayer (physical medium attachment sublayer, PMA) and/or passes through the physical medium dependent layer interface (physical media dependent, PMD), or the first data is data that is encoded using the first FEC code, interleaved and PMA and/or PMD.
- the interleaving process can be multiple times, for example, the first data is encoded using the first FEC code, interleaved, PMA and/or PMD, then interleaved, reconverged, and so on.
- the first module encodes the first data according to the second FEC code to obtain a first encoding result.
- the quality of data transmission can be improved.
- the embodiment of the present application does not limit the second FEC code, including but not limited to any one of RS code, BCH code, fire code, extended BCH code, Hamming code, extended Hamming code, turbo code, TPC code, staircase code and LDPC code.
- the second FEC code used can be self-negotiated by the first module and the second module receiving the data.
- the self-negotiation process can be performed after the first module obtains the first data, or before executing the method.
- the embodiment of the present application does not limit the timing of the self-negotiation.
- the first data is data received by the first module and sent by other modules and obtained through scrambling
- the first module encodes the first data according to the second FEC code
- the scrambling code of the first data is removed, and the data after the scrambling code is removed is encoded according to the second FEC code to obtain a first encoding result.
- the data after the scrambling code is removed is still data encoded using the first FEC code.
- the first module obtains second data, the second data includes the first coding result and filling data for adjusting the frequency, the filling data carries relevant information of the data transmission, and the filling data is protected data.
- the overhead of the inner code (second FEC code) is also considered, and the selection can also support integer multiples of the base frequency.
- the overhead ratio of the second FEC code cannot support integer multiples, it is usually necessary to add additional padding (pad or padding) data to increase it to an integer multiple. Therefore, when obtaining the second data, the method provided in the embodiment of the present application can be implemented by inserting padding data in the first encoding result, and the padding data can be used to adjust the frequency point.
- the first module obtains the second data, including: the first module inserts padding data for adjusting the frequency point in the first encoding result according to the reference density to obtain the second data.
- the reference density includes but is not limited to the frequency determination based on the overhead ratio of the first FEC code and the second FEC code and the crystal oscillator used when encoding the first data according to the second FEC code.
- the frequency of the crystal oscillator involved in determining the reference density is the frequency of the crystal oscillator used by the first module when encoding the first data according to the second FEC code.
- the reference density of inserted padding data may also be referred to as the ratio of inserted padding data.
- the 200G/lane physical channel rate encoded by the first FEC code RS (544, 514) code is 212.5Gb/s, which is 106.25GBd under PAM4 modulation
- Z can also be greater than An integer.
- the reference density (ratio) of the inserted padding data is 1/1088.
- p bits are inserted every 1088*p bits.
- p is the length of the inserted padding data.
- the embodiment of the present application does not limit the length of the padding data. It is only necessary to ensure that the reference density (ratio) of the inserted padding data meets the requirement of 1/m.
- the length of the padding data can be an integer multiple of the length of the second FEC code.
- the present embodiment can protect the padding data.
- the present application embodiment does not limit the protection processing method used for the padding data, which includes but is not limited to the following three methods.
- Protection processing method 1 protection processing includes adding a cyclic redundancy check (CRC), and the padding data is the data to be protected by the CRC.
- CRC cyclic redundancy check
- the length p of the padding data needs to meet the length that can be inserted into the CRC.
- the length of p is at least required to be N+1 bits.
- the length p of the padding data can be 2N or longer, and N can be a positive integer greater than or equal to 3.
- the length p of the padding data is an integer multiple of the second FEC codeword length n. Therefore, the length of the padding data must not only meet the requirement of being able to insert the CRC, but also meet the requirement of being an integer multiple of the second FEC codeword length n.
- CRC is a verification mechanism that detects whether the data within its protection range (including the check bit) has errors after transmission. If CRC protection is added to the padding data, it can be used to detect whether the padding data within the CRC protection range has errors after transmission.
- CRC-n means that the check bit length is n bits (bit). For the same length of check bits n bits, there are multiple calculation methods to generate the check bits, and the calculation method is determined by the polynomial corresponding to the CRC. The highest term of the CRC-n polynomial is the nth power, and different polynomials may have different verification capabilities.
- the padding data after protection includes 112 bits of operations, administration and maintenance (OAM) information and CRC-16 check bits.
- OAM operations, administration and maintenance
- CRC-16 check bits.
- the CRC polynomial 0x9eb2 is used, that is, x ⁇ 16+x ⁇ 13+x ⁇ 12+x ⁇ 11+x ⁇ 10+x ⁇ 8+x ⁇ 6+x ⁇ 5+x ⁇ 2+1, that is, x16+x13+x12+x11+x10+x8+x6+x5+x2+1.
- the CRC can ensure that it is detected.
- the receiving side verifies the CRC before receiving the information, which greatly increases the probability of receiving the correct information.
- the probability of 6 or more bit errors within the 128-bit range is 2.8 x 10-5.
- the reliability is increased by 20,000 times when CRC-16 is added.
- Protection processing method 2 the protection processing includes encoding with a third FEC code, and the padding data is data encoded with the third FEC code.
- the FEC code can not only detect errors, but also correct bit errors, thereby reducing the packet loss rate.
- the reliability of the padding data can be further improved after the third FEC code is calculated.
- the embodiment of the present application does not limit the third FEC code, including but not limited to any one of RS code, BCH code, fire code, extended BCH code, Hamming code, extended Hamming code, turbo code, TPC code, staircase code and LDPC code.
- the third FEC code used can be self-negotiated by the first module and the second module receiving the data. The self-negotiation process can be performed after the first module obtains the first coding result, or it can be performed before executing the method.
- the embodiment of the present application does not limit the timing of the self-negotiation.
- the third FEC code used for the padding data may be the same as the second FEC code, or may be different from the second FEC code.
- the decoder of the second FEC code will cause "empty beats", that is, there is no data to be processed in a certain clock cycle, which not only requires additional processing, but also wastes chip performance.
- the encoder and decoder of the second FEC code that have been implemented are reused as much as possible.
- the padding data after protection processing includes 120 bits (bits) of OAM information and 8 bits of check bits.
- the 8-bit check bit can use a parity code. If the receiving side uses hard decision decoding to correct errors after adding the padding data after FEC protection, 1 bit error can be corrected, thereby increasing the correct probability of each padding data from 56.1% to 88.6%. If soft decision decoding and error correction are used, it can be increased to more than 98%.
- Protection processing method three the protection processing includes adding CRC and using the third FEC code for encoding, and the padding data is the data to which CRC protection is added and encoded using the third FEC code.
- the third protection processing method is a combination of the first protection processing method and the second protection processing method, and can be used in scenarios where high reliability requirements are placed on the relevant information of the data carried. For example, when the "mean time before first false acceptance" (also called mean time to false packet acceptance (MTTFPA)) is required to be greater than 1.3 x 109 years, a combination of multiple protection processing methods may be needed to protect the padding data.
- MTTFPA mean time to false packet acceptance
- the third protection processing method it is necessary to add CRC first and then use the third FEC code for encoding.
- the CRC content can be protected by FEC. If the CRC content is wrong, it can be corrected, further improving the reliability and efficiency of transmitting the padding data.
- the padding data is first protected by CRC, and the CRC content is FEC-encoded together with the padding data such as OAM information. FEC error correction is performed first on the receiving side, and then CRC check is performed.
- the embodiment of the present application does not limit the manner in which the first module transmits the second data to the second module.
- the first module transmits the second data to the second module through a physical link.
- the first module transmits the second data through a logical channel, and the logical channel may be a physical coding sublayer (PCS) channel or an FEC channel.
- PCS physical coding sublayer
- FEC FEC channel
- S305 The second module receives second data.
- the second data includes the first coding result and filling data for adjusting the frequency.
- the second data is obtained by the first module inserting the filling data for adjusting the frequency into the first coding result, the filling data carries relevant information of the data transmission, and the filling data is protected data.
- the first coding result is obtained by encoding the first data based on the second FEC code, and the first data is obtained by encoding the first reference data using the first FEC code.
- the embodiment of the present application does not limit the way in which the second module receives the second data transmitted by the first module, which can correspond to the way in which the first module transmits the second data to the second module.
- the way in which the second data is obtained can refer to the above-mentioned process of S301-S304, which will not be repeated here.
- the second module obtains the first encoding result and padding data from the second data.
- the second module can obtain the first encoding result and the padding data from the second data after receiving the second data.
- the embodiment of the present application does not limit the manner in which the second module obtains the first encoding result and the padding data from the second data.
- the second module decodes the first encoding result according to the second FEC code to obtain the first data, and obtains relevant information of the data transmission based on the padding data.
- the embodiment of the present application does not limit the manner in which the second module decodes the first coding result according to the second FEC code.
- the second module can first decode the first coding result according to the second FEC code to obtain the first data, and then obtain the relevant information of the data transmission based on the padding data.
- the second module can also first obtain the relevant information of the data transmission based on the padding data, and then decode the first coding result according to the second FEC code to obtain the first data.
- the embodiment of the present application does not limit the order in which the second module obtains the first data and obtains the relevant information of the data transmission.
- protection processing includes adding CRC, and the filling data is data with added CRC protection; the second module obtains relevant information of data transmission based on the filling data, including: the second module performs CRC check on the filling data, and obtains relevant information of data transmission after the CRC check passes.
- the second module When the second module performs a CRC check on the padding data, the length of the CRC protection added to the padding data can be used to perform a CRC check on the padding data. If the CRC check passes, it means that the padding data is not wrong, and the relevant information obtained for data transmission is also accurate and reliable. In a possible implementation, when the second module performs a CRC check on the padding data, if the CRC check fails, the second module may not obtain the relevant information for data transmission, or obtain the correct relevant information for data transmission through other means. This application does not limit the processing process after the CRC check fails.
- Acquisition method two, protection processing includes encoding with a third FEC code, and the padding data is data encoded with the third FEC code; the second module obtains relevant information of data transmission based on the padding data, including: the second module uses the third FEC code to decode the padding data, and obtains relevant information of data transmission according to the decoding result.
- the third FEC code can be determined by negotiation between the first module and the second module, the second module can determine to use the third FEC code when decoding the padding data.
- the third FEC code can be any type of FEC code, and the embodiment of the present application does not elaborate on the process of decoding the padding data using the third FEC code.
- Acquisition method three, protection processing includes adding CRC and encoding with a third FEC code, and the padding data is data that adds CRC protection and is encoded with a third FEC code; the second module obtains relevant information about data transmission based on the padding data, including: the second module uses The third FEC code decodes the padding data, performs a CRC check on the decoding result, and obtains relevant information of the data transmission after the CRC check passes.
- the third acquisition method can be understood as the reverse process of the third protection processing method in S303.
- the third FEC code can be used to decode the padding data first, and after obtaining the decoding result, the decoding result is subjected to CRC check. If the CRC check passes, the relevant information of the data transmission is obtained. Optionally, if the third FEC code is used to decode the padding data unsuccessfully, the subsequent CRC check operation may not be performed.
- the reliability of the padding data during transmission is improved by adding CRC protection to the padding data or using FEC coding protection or a combination of the two.
- the method provided in the embodiment of the present application also supports multiple transmissions of the same padding data, so that the receiving end, i.e., the second module, can determine whether the correct padding data is received by majority voting, thereby obtaining relevant information for reliable data transmission.
- the first module after the first module transmits the second data, it also includes: the first module obtains at least one third data, the third data is obtained by encoding the second reference data using the fourth FEC code; for any third data of the at least one third data, the first module encodes any third data according to the fifth FEC code to obtain a second coding result; obtains fourth data, the fourth data includes the second coding result and the padding data; and transmits the fourth data.
- the fourth data when obtaining the fourth data, can be obtained by inserting padding data into the second encoding result.
- the above-mentioned at least one third data can be one or more.
- the embodiment of the present application does not limit the number of third data obtained by the first module. If the number of third data is multiple, the first module can obtain multiple third data at different times or simultaneously. The embodiment of the present application does not limit the way in which the first module obtains the third data.
- the method for obtaining the first data in S301 can be referred to.
- first reference data and the second reference data may be the same or different.
- the fourth FEC code and the fifth FEC code may be the same as the first FEC code, the second FEC code or the third FEC code, or may be different from the first FEC code, the second FEC code or the third FEC code.
- a third data is encoded by the fifth FEC code
- a second encoding result can be obtained
- the padding data is inserted into the second encoding result
- a fourth data can be obtained.
- the number of the third data and the fourth data can be the same.
- the padding data inserted in the second encoding result can be the same as the padding data inserted in the first encoding result, that is, the same padding data will be transmitted to the second module multiple times through the second data and the fourth data.
- the padding data inserted in the second encoding result is also protected.
- the method for obtaining the padding data can refer to the relevant description of S303, and the method for transmitting the fourth data can refer to the relevant description of S304, which will not be repeated here.
- the second module receives at least one fourth data, the fourth data includes a second coding result and padding data, the second coding result is obtained by encoding the third data based on the fifth FEC code, and the third data is obtained by encoding the second reference data using the fourth FEC code; the second module obtains the second coding result and padding data from each fourth data; and decodes the second coding result according to the fifth FEC code to obtain the third data.
- the second module obtains the relevant information of the data transmission based on the padding data, including: the second module compares the padding data obtained from each fourth data with the padding data obtained from the second data, and when it is determined according to the comparison result that the number of identical padding data reaches a threshold, the second module obtains the relevant information of the data transmission based on the padding data.
- the embodiment of the present application does not limit the threshold value reached by the number of identical filling data.
- the threshold value can be set based on experience, can be flexibly set based on the application scenario, and can also be determined based on the number of times the filling data is sent. For example, the first module sends the same filling data three times in a row, and the second module determines whether there are two identical filling data. If there are two identical filling data, the relevant information of the data transmission is obtained. If no two filling data are identical, the received filling data is discarded.
- the method provided in the embodiment of the present application supports dividing the longer padding data into smaller data blocks, and implements the padding data comparison process by comparing the data blocks, thereby improving the comparison efficiency.
- the second module compares the padding data obtained from each fourth data with the padding data obtained from the second data, including: the second module divides the padding data obtained from each fourth data with the padding data obtained from the second data, and compares the divided data blocks.
- the embodiment of the present application does not limit the granularity of the second module to divide the padding data, for example, it can be divided by bytes, and each byte is compared byte by byte.
- the technical solution provided in the embodiment of the present application can improve the reliability and efficiency of transmitting the padding data by protecting the padding data when cascade coding is used and padding data needs to be inserted, thereby improving the reliability of the related information of the data transmission carried by the padding data.
- there are various ways to protect the padding data which improves the flexibility of protecting the padding data and makes it more adaptable.
- the FEC code used for FEC encoding of the padding data in the embodiment of the present application is the same as the inner code in the cascade coding, that is, the second FEC code, which can avoid wasting chip performance. By setting the length of the padding data to an integer multiple of the length of the second FEC code, it is convenient to fix the boundary of the second FEC code.
- FIG7 is a schematic diagram of the structure of a device for transmitting data provided by the embodiment of the present application. Based on the multiple modules shown in FIG7, the device for transmitting data shown in FIG7 can perform all or part of the operations performed by the first module in the method embodiment shown in FIG3 above. It should be understood that the device may include more additional modules than the modules shown or omit some of the modules shown therein, and the embodiment of the present application does not limit this. As shown in FIG7, the device includes:
- a first acquisition module 701 is used to acquire first data, where the first data is obtained by encoding first reference data using a first FEC code;
- the encoding module 702 is used to encode the first data according to the second FEC code to obtain a first encoding result
- a second acquisition module 703 is used to acquire second data, where the second data includes the first coding result and padding data for adjusting the frequency point, where the padding data carries relevant information of data transmission, and the padding data is protected data;
- the transmission module 704 is configured to transmit the second data.
- the protection process includes adding a CRC
- the padding data is data to which the CRC protection is added.
- the protection process includes encoding using a third FEC code, and the padding data is data encoded using the third FEC code.
- the protection process includes adding CRC and encoding with a third FEC code, and the padding data is data to which CRC protection is added and encoded with the third FEC code.
- the third FEC code is the same as the second FEC code.
- the length of the padding data is an integer multiple of the second FEC code length.
- the second acquisition module 703 is used to insert padding data for adjusting the frequency point in the first encoding result according to a reference density to obtain second data, and the reference density is determined based on the overhead ratio of the first FEC code and the second FEC code and the frequency of the crystal oscillator used when encoding the first data according to the second FEC code.
- the first acquisition module 701 is also used to acquire at least one third data, where the third data is obtained by encoding the second reference data using the fourth FEC code; the encoding module 702 is also used to encode any third data among the at least one third data according to the fifth FEC code to obtain a second encoding result; the second acquisition module 703 is also used to acquire fourth data, where the fourth data includes the second encoding result and padding data; and the transmission module 704 is also used to transmit the fourth data.
- FIG8 is a schematic diagram of the structure of a device for transmitting data provided by the embodiment of the present application. Based on the multiple modules shown in FIG8, the device for transmitting data shown in FIG8 can perform all or part of the operations performed by the second module in the method embodiment shown in FIG3 above. It should be understood that the device may include more additional modules than the modules shown or omit some of the modules shown therein, and the embodiment of the present application does not limit this. As shown in FIG8, the device includes:
- the receiving module 801 is used to receive second data, where the second data includes a first coding result and padding data for adjusting the frequency, where the padding data carries relevant information of data transmission and is protected data, where the first coding result is obtained by encoding the first data based on the second FEC code, and the first data is obtained by encoding the first reference data using the first FEC code;
- a first acquisition module 802 configured to acquire a first encoding result and padding data from second data
- a decoding module 803, configured to decode the first encoding result according to the second FEC code to obtain first data
- the second acquisition module 804 is used to acquire relevant information of data transmission based on the filling data.
- the protection processing includes adding CRC, and the padding data is data to which CRC protection is added; the second acquisition module 804 is used to perform CRC check on the padding data, and after the CRC check passes, obtain relevant information of the data transmission.
- the protection processing includes encoding using a third FEC code, and the padding data is data encoded using the third FEC code; the second acquisition module 804 is used to decode the padding data using the third FEC code, and obtain relevant information of the data transmission based on the decoding result.
- the protection processing includes adding a cyclic redundancy check CRC and encoding with a third FEC code, and the padding data is data with added CRC protection and encoded with a third FEC code; the second acquisition module 804 is used to decode the padding data with the third FEC code, perform a CRC check on the decoding result, and obtain relevant information of the data transmission after the CRC check passes.
- the third FEC code is the same as the second FEC code.
- the length of the padding data is an integer multiple of the second FEC code length.
- the receiving module 801 is further configured to receive at least one fourth data, the fourth data including the second encoding result and the padding data, the second encoding result is obtained by encoding the third data based on the fifth FEC code, and the third data is obtained by encoding the third data using the fourth FEC code.
- the second reference data is encoded; the first acquisition module 802 is also used to obtain the second encoding result and padding data from each fourth data; the decoding module 803 is also used to decode the second encoding result according to the fifth FEC code to obtain the third data; the second acquisition module 804 is used to compare the padding data obtained from each fourth data with the padding data obtained from the second data, and when it is determined according to the comparison result that the number of identical padding data reaches a threshold, obtain relevant information of data transmission based on the padding data.
- the second acquisition module 804 is used to segment the padding data acquired from each fourth data and the padding data acquired from the second data, respectively, and compare the data blocks obtained by segmentation.
- the embodiment of the present application provides a communication device, the hardware structure of which is a communication device 1500 as shown in FIG9, including a transceiver 1501, a processor 1502 and a memory 1503.
- the transceiver 1501, the processor 1502 and the memory 1503 are connected via a bus 1504.
- the transceiver 1501 is used to receive and send messages
- the memory 1503 is used to store instructions or program codes
- the processor 1502 is used to call the instructions or program codes in the memory 1503 so that the device executes the relevant processing steps of the first module or the second module in the above-mentioned method embodiment.
- the communication device 1500 of the embodiment of the present application may correspond to the first module or the second module in the above-mentioned various method embodiments, and the processor 1502 in the communication device 1500 reads the instructions or program codes in the memory 1503, so that the communication device 1500 shown in FIG9 can execute all or part of the operations performed by the first module or the second module.
- the communication device 1500 can also correspond to the device shown in Figure 7 or 8 above.
- the transmission module 704 and the receiving module 801 involved in Figure 7 and Figure 8 are equivalent to the transceiver 1501, and the first acquisition module 701, the encoding module 702, the second acquisition module 703, the first acquisition module 802, the decoding module 803, and the second acquisition module 804 are equivalent to the processor 1502.
- Fig. 10 shows a schematic diagram of the structure of a communication device 2000 provided by an exemplary embodiment of the present application.
- the communication device 2000 shown in Fig. 10 is used to perform the operations involved in the method for transmitting data shown in Fig. 3.
- the communication device 2000 is, for example, a switch, a router, etc.
- the communication device 2000 includes at least one processor 2001 , a memory 2003 , and at least one communication interface 2004 .
- the processor 2001 is, for example, a general-purpose central processing unit (CPU), a digital signal processor (DSP), a network processor (NP), a graphics processing unit (GPU), a neural-network processing units (NPU), a data processing unit (DPU), a microprocessor, or one or more integrated circuits for implementing the solution of the present application.
- the processor 2001 includes an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
- the PLD is, for example, a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
- the processor can implement or execute various logic blocks, modules, and circuits described in conjunction with the disclosure of the embodiments of the present invention.
- the processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.
- the communication device 2000 also includes a bus.
- the bus is used to transmit information between the components of the communication device 2000.
- the bus can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc.
- PCI peripheral component interconnect
- EISA extended industry standard architecture
- the bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in FIG10, but it does not mean that there is only one bus or one type of bus.
- the components of the communication device 2000 in FIG10 can also be connected in other ways, and the embodiment of the present invention does not limit the connection method of each component.
- the memory 2003 is, for example, a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, or a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or 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 compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or 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 thereto.
- the memory 2003 is, for example, independent and connected to the processor 2001 via a bus.
- the memory 2003 can also be integrated with the processor 2001. together.
- the communication interface 2004 uses any transceiver-like device for communicating with other devices or communication networks, and the communication network can be Ethernet, a radio access network (RAN) or a wireless local area network (WLAN), etc.
- the communication interface 2004 can include a wired communication interface and a wireless communication interface.
- the communication interface 2004 can be an Ethernet interface, a Fast Ethernet (FE) interface, a Gigabit Ethernet (GE) interface, an Asynchronous Transfer Mode (ATM) interface, a wireless local area network (WLAN) interface, a cellular network communication interface or a combination thereof.
- the Ethernet interface can be an optical interface, an electrical interface or a combination thereof.
- the communication interface 2004 can be used for the communication device 2000 to communicate with other devices.
- the processor 2001 may include one or more CPUs, such as CPU0 and CPU1 shown in FIG10 .
- Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor.
- the processor here may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
- the communication device 2000 may include multiple processors, such as the processor 2001 and the processor 2005 shown in FIG10. Each of these processors may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU).
- the processor here may refer to one or more devices, circuits, and/or processing cores for processing data (such as computer program instructions).
- the communication device 2000 may also include an output device and an input device.
- the output device communicates with the processor 2001 and may display information in a variety of ways.
- the output device may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector.
- the input device communicates with the processor 2001 and may receive user input in a variety of ways.
- the input device may be a mouse, a keyboard, a touch screen device, or a sensor device.
- the memory 2003 is used to store the program code 2010 for executing the solution of the present application
- the processor 2001 can execute the program code 2010 stored in the memory 2003. That is, the communication device 2000 can implement the message method provided by the method embodiment through the processor 2001 and the program code 2010 in the memory 2003.
- the program code 2010 may include one or more software modules.
- the processor 2001 itself can also store the program code or instruction for executing the solution of the present application.
- the communication device 2000 of the embodiment of the present application may correspond to the first module or the second module in the above-mentioned method embodiments.
- the processor 2001 in the communication device 2000 reads the program code 2010 in the memory 2003 or the program code or instructions stored in the processor 2001 itself, so that the communication device 2000 shown in Figure 10 can execute all or part of the operations performed by the first module or the second module.
- the communication device 2000 may also correspond to the apparatus shown in FIG. 7 or FIG. 8, and each functional module in the apparatus shown in FIG. 7 or FIG. 8 is implemented by the software of the communication device 2000.
- the functional modules included in the apparatus shown in FIG. 7 or FIG. 8 are generated after the processor 2001 of the communication device 2000 reads the program code 2010 stored in the memory 2003.
- the transmission module 704 and the receiving module 801 involved in FIG. 7 or FIG. 8 are equivalent to the communication interface 2004, and the first acquisition module 701, the encoding module 702, the second acquisition module 703, the first acquisition module 802, the decoding module 803, and the second acquisition module 804 are equivalent to the processor 2001 and/or the processor 2005.
- each step of the method shown in Figure 3 is completed by an integrated logic circuit of hardware or software instructions in the processor of the communication device 2000.
- the steps of the method disclosed in conjunction with the embodiment of the present application can be directly embodied as a hardware processor, or a combination of hardware and software modules in the processor.
- the software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc.
- the storage medium is located in the memory, and the processor reads the information in the memory, and completes the steps of the above method in conjunction with its hardware. To avoid repetition, it is not described in detail here.
- FIG. 11 shows a schematic diagram of the structure of a communication device 2100 provided by another exemplary embodiment of the present application.
- the communication device 2100 shown in FIG. 11 is used to perform all or part of the operations involved in the method shown in FIG. 3 above.
- the communication device 2100 is, for example, a switch, a router, etc., and the communication device 2100 can be implemented by a general bus architecture.
- the communication device 2100 includes: a main control board 2110 and an interface board 2130 .
- the main control board is also called the main processing unit (MPU) or route processor card.
- the main control board 2110 is used to control and manage various components in the communication device 2100, including routing calculation, device management, device maintenance, and protocol processing functions.
- the main control board 2110 includes: a central processing unit 2111 and a memory 2112.
- the interface board 2130 is also called a line processing unit (LPU), a line card or a service board.
- the interface board 2130 is used to provide various service interfaces and implement data packet forwarding.
- Service interfaces include but are not limited to Ethernet interfaces, POS (Packet over SONET/SDH) interfaces, etc., and Ethernet interfaces are, for example, Flexible Ethernet Clients (FlexE Clients).
- the interface board 2130 includes: a central processing unit 2131, a network processor 2132, a forwarding table entry memory 2134 and a physical interface card (PIC) 2133.
- PIC physical interface card
- the central processor 2131 on the interface board 2130 is used to control and manage the interface board 2130 and communicate with the central processor 2111 on the main control board 2110 .
- the network processor 2132 is used to implement the message sending process.
- the network processor 2132 may be in the form of a forwarding chip.
- the forwarding chip may be a network processor (NP).
- the forwarding chip may be implemented by an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA).
- ASIC application-specific integrated circuit
- FPGA field programmable gate array
- the network processor 2132 is used to forward the received message based on the forwarding table stored in the forwarding table entry memory 2134.
- the message is sent to the CPU (such as the central processor 2131) for processing; if the destination address of the message is not the address of the communication device 2100, the next hop and the output interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to the output interface corresponding to the destination address.
- the processing of the uplink message may include: processing of the message input interface, forwarding table search; the processing of the downlink message may include: forwarding table search, etc.
- the central processing unit may also perform the functions of the forwarding chip, such as implementing software forwarding based on a general-purpose CPU, so that a forwarding chip is not required in the interface board.
- the physical interface card 2133 is used to implement the physical layer docking function, whereby the original traffic enters the interface board 2130, and the processed message is sent out from the physical interface card 2133.
- the physical interface card 2133 also called a daughter card, can be installed on the interface board 2130, and is responsible for converting the photoelectric signal into a message and forwarding the message to the network processor 2132 for processing after checking the legitimacy of the message.
- the central processor 2131 can also perform the functions of the network processor 2132, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 2132 is not required in the physical interface card 2133.
- the communication device 2100 includes a plurality of interface boards, for example, the communication device 2100 further includes an interface board 2140, and the interface board 2140 includes: a central processor 2141, a network processor 2142, a forwarding table entry memory 2144, and a physical interface card 2143.
- the functions and implementation methods of the components in the interface board 2140 are the same or similar to those of the interface board 2130, and are not described in detail herein.
- the communication device 2100 further includes a switching fabric board 2120.
- the switching fabric board 2120 may also be referred to as a switch fabric unit (SFU).
- SFU switch fabric unit
- the switching fabric board 2120 is used to complete data exchange between the interface boards.
- the interface board 2130 and the interface board 2140 may communicate through the switching fabric board 2120.
- the main control board 2110 is coupled to the interface board.
- the main control board 2110, the interface board 2130, the interface board 2140, and the switching network board 2120 are connected to the system backplane through the system bus to achieve intercommunication.
- an inter-process communication (IPC) channel is established between the main control board 2110 and the interface board 2130 and the interface board 2140, and the main control board 2110 and the interface board 2130 and the interface board 2140 communicate through the IPC channel.
- IPC inter-process communication
- the communication device 2100 includes a control plane and a forwarding plane.
- the control plane includes a main control board 2110 and a central processing unit 2111.
- the forwarding plane includes various components for performing forwarding, such as a forwarding table entry memory 2134, a physical interface card 2133, and a network processor 2132.
- the control plane performs functions such as a router, generating a forwarding table, processing signaling and protocol messages, and configuring and maintaining the status of the communication device.
- the control plane sends the generated forwarding table to the forwarding plane.
- the network processor 2132 forwards the message received by the physical interface card 2133 based on the forwarding table sent by the control plane.
- the forwarding table sent by the control plane can be stored in the forwarding table entry memory 2134. In some embodiments, the control plane and the forwarding plane can be completely separated and not on the same communication device.
- main control boards there may be one or more main control boards, and when there are multiple boards, they may include a primary main control board and a backup main control board.
- the communication equipment may not need a switching network board, and the interface board is responsible for the processing function of the service data of the entire system.
- the communication equipment may have at least one switching network board, and the switching network board is used to realize data exchange between multiple interface boards, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of the communication equipment with a distributed architecture are greater than those of the communication equipment with a centralized architecture.
- the communication device may have only one board, that is, no switching network board, and the functions of the interface board and the main control board are integrated on the board.
- the central processor on the interface board and the central processor on the main control board can be combined into one central processor on the board to perform the functions of the two.
- This type of communication device has low data exchange and processing capabilities (for example, low-end switches or routers and other communication devices).
- the specific architecture to be adopted depends on the specific networking deployment scenario, and no limitation is made here.
- the communication device 2100 corresponds to the apparatus shown in FIG. 7 and FIG. 8.
- the transmission module 704 and the receiving module 801 in the apparatus shown in FIG. 7 and FIG. 8 correspond to the physical interface card 2133 or the physical interface card 2143 in the communication device 2100.
- the first acquisition module 701, the encoding module 702, the second acquisition module 703, the first acquisition module 802, the decoding module 803 in the apparatus shown in FIG. 7 or FIG. 8 correspond to the physical interface card 2133 or the physical interface card 2143 in the communication device 2100.
- the code module 803 and the second acquisition module 804 are equivalent to at least one of the central processor 2111 , the network processor 2132 and the network processor 2142 in the communication device 2100 .
- An embodiment of the present application also provides a network device, the network device comprising: a processor, the processor is coupled to a memory, the memory stores at least one program instruction or code, and the at least one program instruction or code is loaded and executed by the processor to enable the network device to implement any of the above-mentioned methods for transmitting data.
- An embodiment of the present application also provides a system for transmitting data, which includes: a first module and a second module.
- the methods executed by the first module and the second module can be found in the relevant description of the embodiment shown in Figure 3 above, and will not be repeated here.
- An embodiment of the present application further provides a system for transmitting data, the system comprising: the device shown in FIG. 7 and the device shown in FIG. 8 .
- the embodiment of the present application also provides a system for transmitting data, the system comprising: a first device and a second device.
- the first device is the communication device 1500 shown in FIG. 9 or the communication device 2000 shown in FIG. 10 or the communication device 2100 shown in FIG. 11
- the second device is the communication device 1500 shown in FIG. 9 or the communication device 2000 shown in FIG. 10 or the communication device 2100 shown in FIG. 11.
- the method executed by the first device and the second device can refer to the relevant description of the embodiment shown in FIG3 above, and will not be described in detail here.
- the above processor 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.
- the general-purpose processor may be a microprocessor or any conventional processor, etc. It is worth noting that the processor may be a processor supporting the advanced RISC machines (ARM) architecture.
- the memory may include a read-only memory and a random access memory, and provide instructions and data to the processor.
- the memory may also include a non-volatile random access memory.
- the memory may also store information about the device type.
- the memory may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memory.
- the nonvolatile 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), which is used as an external cache. By way of example but not limitation, many forms of RAM are available.
- SRAM static RAM
- DRAM dynamic random access memory
- SDRAM synchronous DRAM
- DDR SDRAM double data rate SDRAM
- ESDRAM enhanced SDRAM
- SLDRAM synchronous link DRAM
- DR RAM direct rambus RAM
- a computer-readable storage medium in which at least one program instruction or code is stored, and the program instruction or code is loaded and executed by a processor to enable a computer to implement any method of transmitting data as described in any one of FIG. 3 above.
- the present application provides a computer program (product), which, when executed by a computer, can enable a processor or a computer to execute the corresponding steps and/or processes in the above method embodiments.
- a chip comprising a processor, for calling and executing instructions stored in a memory from the memory, so that a communication device equipped with the chip executes the methods in the above aspects.
- Another chip comprising: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, the processor is used to execute the code in the memory, and when the code is executed, the processor is used to execute the methods in the above aspects.
- a communication device is also provided, the device comprising the above chip.
- the device is a router, a switch or a server.
- the computer program product includes one or more computer instructions.
- the computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device.
- the computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
- the computer instructions can be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) means.
- the computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that includes one or more available media integrated.
- the available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a tape), an optical medium (for example, a Such as DVD), or semiconductor media (such as solid state disk).
- the computer program product includes one or more computer program instructions.
- the method of the embodiment of the present application can be described in the context of a machine executable instruction, and the machine executable instruction is such as included in the program module executed in the device on the real or virtual processor of the target.
- a program module includes a routine, a program, a library, an object, a class, a component, a data structure, etc., which performs a specific task or realizes a specific abstract data structure.
- the function of the program module can be merged or divided between the described program modules.
- the machine executable instruction for the program module can be executed in a local or distributed device. In a distributed device, the program module can be located in both a local and a remote storage medium.
- the computer program code for realizing the method for the embodiment of the present application can be written in one or more programming languages. These computer program codes can be provided to the processor of a general-purpose computer, a special-purpose computer or other programmable data processing device, so that the program code, when executed by a computer or other programmable data processing device, causes the function/operation specified in the flow chart and/or block diagram to be implemented.
- the program code can be executed completely on a computer, partially on a computer, as an independent software package, partially on a computer and partially on a remote computer or completely on a remote computer or server.
- computer program codes or related data may be carried by any appropriate carrier to enable a device, apparatus or processor to perform the various processes and operations described above.
- Examples of carriers include signals, computer readable media, and the like.
- Examples of signals may include electrical, optical, radio, acoustic or other forms of propagated signals, such as carrier waves, infrared signals, etc.
- a machine-readable medium may be any tangible medium that contains or stores a program for or related to an instruction execution system, apparatus, or device.
- a machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
- a machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More detailed examples of machine-readable storage media include an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical storage device, a magnetic storage device, or any suitable combination thereof.
- the disclosed systems, devices and methods can be implemented in other ways.
- the device embodiments described above are only schematic.
- the division of the module is only a logical function division. There may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed.
- the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or modules, or it can be an electrical, mechanical or other form of connection.
- modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place or distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the embodiments of the present application.
- each functional module in each embodiment of the present application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module.
- the above integrated modules can be implemented in the form of hardware or software functional modules.
- the integrated module is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium.
- the technical solution of the present application is essentially or partly contributed to the prior art, or All or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method in each embodiment of the present application.
- the aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and other media that can store program codes.
- first, second, etc. are used to distinguish between identical or similar items with substantially the same effects and functions. It should be understood that there is no logical or temporal dependency between “first”, “second”, and “nth”, nor is the quantity and execution order limited. It should also be understood that although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another.
- the first network device may be referred to as the second network device, and similarly, the second network device may be referred to as the first network device.
- the first network device and the second network device may both be network devices of any type, and in some cases, may be separate and different network devices.
- the size of the serial number of each process does not mean the order of execution.
- the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
- determining B based on A does not mean determining B based only on A.
- B can also be determined based on A and/or other information.
- references to “one embodiment”, “an embodiment”, or “a possible implementation” throughout the specification mean that specific features, structures, or characteristics related to the embodiment or implementation are included in at least one embodiment of the present application. Therefore, the references to “in one embodiment” or “in an embodiment”, or “a possible implementation” throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
Claims (37)
- 一种传输数据的方法,其特征在于,所述方法包括:获取第一数据,所述第一数据为采用第一前向纠错FEC码对第一参考数据进行编码得到;按照第二FEC码对所述第一数据进行编码,得到第一编码结果;获取第二数据,所述第二数据包括所述第一编码结果和用于调整频点的填充数据,所述填充数据携带数据传输的相关信息,且所述填充数据为经过保护处理的数据;传输所述第二数据。
- 根据权利要求1所述的方法,其特征在于,所述保护处理包括增加循环冗余校验CRC,所述填充数据为增加所述CRC保护的数据。
- 根据权利要求1所述的方法,其特征在于,所述保护处理包括采用第三FEC码进行编码,所述填充数据为采用所述第三FEC码进行编码的数据。
- 根据权利要求1所述的方法,其特征在于,所述保护处理包括增加循环冗余校验CRC以及采用第三FEC码进行编码,所述填充数据为增加所述CRC保护以及采用所述第三FEC码进行编码的数据。
- 根据权利要求3或4所述的方法,其特征在于,所述第三FEC码与所述第二FEC码相同。
- 根据权利要求1-5任一所述的方法,其特征在于,所述填充数据的长度为所述第二FEC码长度的整数倍。
- 根据权利要求1-6任一所述的方法,其特征在于,所述获取第二数据,包括:按照参考密度在所述第一编码结果中插入用于调整频点的填充数据,得到所述第二数据,所述参考密度基于所述第一FEC码和所述第二FEC码的开销比例以及按照所述第二FEC码对所述第一数据进行编码时使用的晶体振荡器的频率确定。
- 根据权利要求1-7任一所述的方法,其特征在于,所述传输所述第二数据之后,所述方法还包括:获取至少一个第三数据,所述第三数据为采用第四FEC码对第二参考数据进行编码得到;对于所述至少一个第三数据中的任一第三数据,按照第五FEC码对所述任一第三数据进行编码,得到第二编码结果;获取第四数据,所述第四数据包括所述第二编码结果和所述填充数据;传输所述第四数据。
- 一种传输数据的方法,其特征在于,所述方法包括:接收第二数据,所述第二数据包括第一编码结果和用于调整频点的填充数据,所述填充数据携带数据传输的相关信息,且所述填充数据为经过保护处理的数据,所述第一编码结果基于第二前向纠错码FEC码对第一数据进行编码得到,所述第一数据为采用第一FEC码对第一参考数据进行编码得到;从所述第二数据中获取所述第一编码结果和所述填充数据;按照所述第二FEC码对所述第一编码结果进行解码,得到所述第一数据;基于所述填充数据获取所述数据传输的相关信息。
- 根据权利要求9所述的方法,其特征在于,所述保护处理包括增加循环冗余校验CRC,所述填充数据为增加所述CRC保护的数据;所述基于所述填充数据获取所述数据传输的相关信息,包括:对所述填充数据进行所述CRC校验,在所述CRC校验通过后,获取所述数据传输的相关信息。
- 根据权利要求9所述的方法,其特征在于,所述保护处理包括采用第三FEC码进行编码,所述填充数据为采用所述第三FEC码进行编码的数据;所述基于所述填充数据获取所述数据传输的相关信息,包括:采用所述第三FEC码对所述填充数据进行解码,根据解码结果获取所述数据传输的相关信息。
- 根据权利要求9所述的方法,其特征在于,所述保护处理包括增加循环冗余校验CRC以及采用第三FEC码进行编码,所述填充数据为增加所述CRC保护以及采用所述第三FEC码进行编码的数据;所述基于所述填充数据获取所述数据传输的相关信息,包括:采用第三FEC码对所述填充数据进行解码,对解码结果进行所述CRC校验,在所述CRC校验通过后,获取所述数据传输的相关信息。
- 根据权利要求11或12所述的方法,其特征在于,所述第三FEC码与所述第二FEC码相同。
- 根据权利要求9-13任一所述的方法,其特征在于,所述填充数据的长度为所述第二FEC码长度的整数倍。
- 根据权利要求9-14任一所述的方法,其特征在于,所述方法还包括:接收至少一个第四数据,所述第四数据包括第二编码结果和填充数据,所述第二编码结果基于第五FEC码对第三数据进行编码得到,所述第三数据为采用第四FEC码对第二参考数据进行编码得到;从各个第四数据中获取所述第二编码结果和所述填充数据;按照所述第五FEC码对所述第二编码结果进行解码,得到所述第三数据;所述基于所述填充数据获取所述数据传输的相关信息,包括:将从所述各个第四数据中获取的填充数据与从所述第二数据中获取的填充数据进行比对,在根据比对结果确定相同填充数据的数量达到阈值的情况下,基于所述填充数据获取所述数据传输的相关信息。
- 根据权利要求15所述的方法,其特征在于,所述将从所述各个第四数据中获取的填充数据与从所述第二数据中获取的填充数据进行比对,包括:将从所述各个第四数据中获取的填充数据与从所述第二数据中获取的填充数据分别进行切分,将切分得到的数据块进行比对。
- 一种传输数据的装置,其特征在于,所述装置包括:第一获取模块,用于获取第一数据,所述第一数据为采用第一前向纠错FEC码对第一参考数据进行编码得到;编码模块,用于按照第二FEC码对所述第一数据进行编码,得到第一编码结果;第二获取模块,用于获取第二数据,所述第二数据包括所述第一编码结果和用于调整频点的填充数据,所述填充数据携带数据传输的相关信息,且所述填充数据为经过保护处理的数据;传输模块,用于传输所述第二数据。
- 根据权利要求17所述的装置,其特征在于,所述保护处理包括增加循环冗余校验CRC,所述填充数据为增加所述CRC保护的数据。
- 根据权利要求17所述的装置,其特征在于,所述保护处理包括采用第三FEC码进行编码,所述填充数据为采用所述第三FEC码进行编码的数据。
- 根据权利要求17所述的装置,其特征在于,所述保护处理包括增加循环冗余校验CRC以及采用第三 FEC码进行编码,所述填充数据为增加所述CRC保护以及采用所述第三FEC码进行编码的数据。
- 根据权利要求19或20所述的装置,其特征在于,所述第三FEC码与所述第二FEC码相同。
- 根据权利要求17-21任一所述的装置,其特征在于,所述填充数据的长度为所述第二FEC码长度的整数倍。
- 根据权利要求17-22任一所述的装置,其特征在于,所述第二获取模块,用于按照参考密度在所述第一编码结果中插入用于调整频点的填充数据,得到所述第二数据,所述参考密度基于所述第一FEC码和所述第二FEC码的开销比例以及按照所述第二FEC码对所述第一数据进行编码时使用的晶体振荡器的频率确定。
- 根据权利要求17-23任一所述的装置,其特征在于,所述第一获取模块,还用于获取至少一个第三数据,所述第三数据为采用第四FEC码对第二参考数据进行编码得到;所述编码模块,还用于对于所述至少一个第三数据中的任一第三数据,按照第五FEC码对所述任一第三数据进行编码,得到第二编码结果;所述第二获取模块,还用于获取第四数据,所述第四数据包括所述第二编码结果和所述填充数据;所述传输模块,还用于传输所述第四数据。
- 一种传输数据的装置,其特征在于,所述装置包括:接收模块,用于接收第二数据,所述第二数据包括第一编码结果和用于调整频点的填充数据,所述填充数据携带数据传输的相关信息,且所述填充数据为经过保护处理的数据,所述第一编码结果基于第二前向纠错码FEC码对第一数据进行编码得到,所述第一数据为采用第一FEC码对第一参考数据进行编码得到;第一获取模块,用于从所述第二数据中获取所述第一编码结果和所述填充数据;解码模块,用于按照所述第二FEC码对所述第一编码结果进行解码,得到所述第一数据;第二获取模块,用于基于所述填充数据获取所述数据传输的相关信息。
- 根据权利要求25所述的装置,其特征在于,所述保护处理包括增加循环冗余校验CRC,所述填充数据为增加所述CRC保护的数据;所述第二获取模块,用于对所述填充数据进行所述CRC校验,在所述CRC校验通过后,获取所述数据传输的相关信息。
- 根据权利要求25所述的装置,其特征在于,所述保护处理包括采用第三FEC码进行编码,所述填充数据为采用所述第三FEC码进行编码的数据;所述第二获取模块,用于采用所述第三FEC码对所述填充数据进行解码,根据解码结果获取所述数据传输的相关信息。
- 根据权利要求25所述的装置,其特征在于,所述保护处理包括增加循环冗余校验CRC以及采用第三FEC码进行编码,所述填充数据为增加所述CRC保护以及采用所述第三FEC码进行编码的数据;所述第二获取模块,用于采用第三FEC码对所述填充数据进行解码,对解码结果进行所述CRC校验,在所述CRC校验通过后,获取所述数据传输的相关信息。
- 根据权利要求27或28所述的装置,其特征在于,所述第三FEC码与所述第二FEC码相同。
- 根据权利要求25-29任一所述的装置,其特征在于,所述填充数据的长度为所述第二FEC码长度的整数倍。
- 根据权利要求25-30任一所述的装置,其特征在于,所述接收模块,还用于接收至少一个第四数据,所述第四数据包括第二编码结果和填充数据,所述第二编码结果基于第五FEC码对第三数据进行编码得到,所述第三数据采用第四FEC码对第二参考数据进行编码得到;所述第一获取模块,还用于从各个第四数据中获取所述第二编码结果和所述填充数据;所述解码模块,还用于按照所述第五FEC码对所述第二编码结果进行解码,得到所述第三数据;所述第二获取模块,用于将从所述各个第四数据中获取的填充数据与从所述第二数据中获取的填充数据进行比对,在根据比对结果确定相同填充数据的数量达到阈值的情况下,基于所述填充数据获取所述数据传输的相关信息。
- 根据权利要求31所述的装置,其特征在于,所述第二获取模块,用于将从所述各个第四数据中获取的填充数据与从所述第二数据中获取的填充数据分别进行切分,将切分得到的数据块进行比对。
- 一种网络设备,其特征在于,所述网络设备包括:处理器,所述处理器与存储器耦合,所述存储器中存储有至少一条程序指令或代码,所述至少一条程序指令或代码由所述处理器加载并执行,以使所述网络设备实现权利要求1-16中任一所述的方法。
- 一种数据传输系统,其特征在于,所述系统包括第一模块和第二模块,所述第一模块用于执行权利要求1-8中任一所述的方法,所述第二模块用于执行权利要求9-16中任一所述的方法。
- 一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条程序指令或代码,所述程序指令或代码由处理器加载并执行以使计算机实现如权利要求1-16中任一所述的方法。
- 一种芯片,其特征在于,所述芯片包括处理器,所述处理器用于实现权利要求1-16中任一所述的方法。
- 一种通信设备,其特征在于,所述通信设备包括至少一个权利要求36所述的芯片。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP23915742.3A EP4633070A4 (en) | 2023-01-13 | 2023-12-05 | METHOD AND APPARATUS FOR DATA TRANSMISSION, DEVICE, SYSTEM, AND STORAGE MEDIA |
| US19/266,843 US20260031931A1 (en) | 2023-01-13 | 2025-07-11 | Data transmission method and apparatus, device, system, and storage medium |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310200011.3 | 2023-01-13 | ||
| CN202310200011 | 2023-01-13 | ||
| CN202310119761.8A CN118353575A (zh) | 2023-01-13 | 2023-01-31 | 传输数据的方法、装置、设备、系统及存储介质 |
| CN202310119761.8 | 2023-01-31 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US19/266,843 Continuation US20260031931A1 (en) | 2023-01-13 | 2025-07-11 | Data transmission method and apparatus, device, system, and storage medium |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024148984A1 true WO2024148984A1 (zh) | 2024-07-18 |
Family
ID=91821516
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/136552 Ceased WO2024148984A1 (zh) | 2023-01-13 | 2023-12-05 | 传输数据的方法、装置、设备、系统及存储介质 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20260031931A1 (zh) |
| EP (1) | EP4633070A4 (zh) |
| CN (1) | CN118353575A (zh) |
| TW (1) | TW202429847A (zh) |
| WO (1) | WO2024148984A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2026056463A1 (zh) * | 2024-09-10 | 2026-03-19 | 华为技术有限公司 | 一种数据处理方法及装置 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100241923A1 (en) * | 2009-03-17 | 2010-09-23 | Broadcom Corporation | Communication device employing LDPC (Low Density Parity Check) coding with Reed-Solomon (RS) and/or binary product coding |
| CN101884182A (zh) * | 2007-12-14 | 2010-11-10 | 三星电子株式会社 | 处理流的发送系统和接收系统及其流处理方法 |
| CN110034847A (zh) * | 2018-01-12 | 2019-07-19 | 华为技术有限公司 | 级联编码方法及装置 |
| CN112217607A (zh) * | 2015-03-02 | 2021-01-12 | 三星电子株式会社 | 发送方法和接收方法 |
| CN114731210A (zh) * | 2019-11-26 | 2022-07-08 | 华为技术有限公司 | 一种通信方法及装置 |
| CN114793148A (zh) * | 2021-01-25 | 2022-07-26 | 华为技术有限公司 | 数据传输的方法、装置、设备、系统及可读存储介质 |
-
2023
- 2023-01-31 CN CN202310119761.8A patent/CN118353575A/zh active Pending
- 2023-12-05 EP EP23915742.3A patent/EP4633070A4/en active Pending
- 2023-12-05 WO PCT/CN2023/136552 patent/WO2024148984A1/zh not_active Ceased
-
2024
- 2024-01-04 TW TW113100413A patent/TW202429847A/zh unknown
-
2025
- 2025-07-11 US US19/266,843 patent/US20260031931A1/en active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101884182A (zh) * | 2007-12-14 | 2010-11-10 | 三星电子株式会社 | 处理流的发送系统和接收系统及其流处理方法 |
| US20100241923A1 (en) * | 2009-03-17 | 2010-09-23 | Broadcom Corporation | Communication device employing LDPC (Low Density Parity Check) coding with Reed-Solomon (RS) and/or binary product coding |
| CN112217607A (zh) * | 2015-03-02 | 2021-01-12 | 三星电子株式会社 | 发送方法和接收方法 |
| CN110034847A (zh) * | 2018-01-12 | 2019-07-19 | 华为技术有限公司 | 级联编码方法及装置 |
| CN114731210A (zh) * | 2019-11-26 | 2022-07-08 | 华为技术有限公司 | 一种通信方法及装置 |
| CN114793148A (zh) * | 2021-01-25 | 2022-07-26 | 华为技术有限公司 | 数据传输的方法、装置、设备、系统及可读存储介质 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4633070A1 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2026056463A1 (zh) * | 2024-09-10 | 2026-03-19 | 华为技术有限公司 | 一种数据处理方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN118353575A (zh) | 2024-07-16 |
| US20260031931A1 (en) | 2026-01-29 |
| EP4633070A1 (en) | 2025-10-15 |
| TW202429847A (zh) | 2024-07-16 |
| EP4633070A4 (en) | 2026-04-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12160314B2 (en) | Forward error correction (FEC) code type conversion | |
| CN117749323B (zh) | 数据传输的方法、装置、设备、系统及可读存储介质 | |
| US11695508B2 (en) | Data processing method and related apparatus | |
| US20240364455A1 (en) | Sending method, receiving method, apparatus, system, device, and storage medium | |
| EP4440014A1 (en) | Methods, apparatuses, devices and systems for generating and processing ethernet frame, and storage medium | |
| CN117083820A (zh) | 数据传输方法、通信设备及系统 | |
| CN115694739A (zh) | 一种千兆以太网的数据传输装置及方法 | |
| CN120389834A (zh) | 数据处理方法、装置、电子设备和存储介质 | |
| US20260031931A1 (en) | Data transmission method and apparatus, device, system, and storage medium | |
| CN116455517A (zh) | 编码方法、解码方法、装置、设备、系统及可读存储介质 | |
| US20240356563A1 (en) | Encoding method, decoding method, apparatus, device, system, and readable storage medium | |
| US20240356564A1 (en) | Encoding method, decoding method, apparatus, device, system, and readable storage medium | |
| US12549279B2 (en) | Method for adjusting transmission rate, processor, network device, and network system | |
| CN118118417A (zh) | 数据传输方法、装置、介质及电子设备 | |
| US20260113119A1 (en) | Data transmission method, apparatus, and system | |
| CN118041488A (zh) | 数据传输方法、装置、系统及计算机可读存储介质 | |
| TW202437746A (zh) | 傳輸乙太網實體層信號的方法、裝置、電腦系統和網路系統 | |
| WO2024193265A1 (zh) | 一种数据传输方法及相关装置 | |
| BR112021022883B1 (pt) | Método e aparelho de transmissão de dados |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23915742 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023915742 Country of ref document: EP |
|
| ENP | Entry into the national phase |
Ref document number: 2023915742 Country of ref document: EP Effective date: 20250708 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWP | Wipo information: published in national office |
Ref document number: 2023915742 Country of ref document: EP |