WO2015006908A1 - 突发数据块中的空闲块idle的处理方法、设备及系统 - Google Patents

突发数据块中的空闲块idle的处理方法、设备及系统 Download PDF

Info

Publication number
WO2015006908A1
WO2015006908A1 PCT/CN2013/079411 CN2013079411W WO2015006908A1 WO 2015006908 A1 WO2015006908 A1 WO 2015006908A1 CN 2013079411 W CN2013079411 W CN 2013079411W WO 2015006908 A1 WO2015006908 A1 WO 2015006908A1
Authority
WO
WIPO (PCT)
Prior art keywords
data frame
idle
block
data
blocks
Prior art date
Application number
PCT/CN2013/079411
Other languages
English (en)
French (fr)
Inventor
司小书
孙方林
吴广生
张利
欧阳涛
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201380001423.9A priority Critical patent/CN104471888B/zh
Priority to PCT/CN2013/079411 priority patent/WO2015006908A1/zh
Publication of WO2015006908A1 publication Critical patent/WO2015006908A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control

Definitions

  • the present invention relates to communication technologies, and in particular, to a method, device and system for processing a free block IDLE in a burst of data blocks. Background technique
  • FEC Forward Error Correction
  • LDPC Low Density Parity Check Code
  • RS Reed-Solomon
  • CC Convolution Codes
  • the EPON physical layer uses a fixed RS code to protect the transmitted signal.
  • EPON Protocol over Coaxial Distribution Network EPoC
  • the noise of the coaxial medium is relatively large, so a better FEC method is needed to improve the anti-noise performance of the system.
  • the EPoC system In the EPoC system, data is transmitted in the downlink direction in the downlink mode, and data is transmitted in the burst mode in the uplink direction. Since the burst data length is different in the uplink burst mode, in order to improve resource utilization, the EPoC system may support multiple FEC types for different burst data lengths, and 10Gb independent media interfaces when transmitting uplink data. (10 Gigabit Media Independent Interface, referred to as XGMII) Before, in order to reserve space for the check bits generated by the subsequent FEC, it is necessary to insert the idle block (IDLE) into the data stream, and after the XGMII interface, in order to give FEC immediately. The generated check bits give up space and need to delete the IDLE operation on the data stream.
  • IDLE idle block
  • the embodiment of the invention provides a method, a device and a system for processing a free block IDLE in a burst data block, so that the system selects the number of IDLEs to be inserted or deleted according to the length of the burst data.
  • an embodiment of the present invention provides a method for processing a free block IDLE in a burst data block, including:
  • the codeword offset corresponding to the first data frame determines the number of IDLE blocks that need to be inserted after the first data frame, and the second data frame is located in the first data frame in the burst data block.
  • An IDLE block is inserted after the first data frame based on the determined number of IDLE blocks.
  • the determining, according to the codeword offset corresponding to the first data frame, the number of IDLE blocks that need to be inserted after the first data frame including: a codeword offset corresponding to the first data frame, comparing a number of parity bits generated by the plurality of FEC types to the first data frame to be sent, where the plurality of FEC types include a low density parity check
  • the code LDPC, the Reed-Solomon code RS, and the convolutional code CC type the number of non-maximum values selected from the plurality of FEC types respectively generated, according to the selected number of check bits Determining the number of IDLE blocks that need to be inserted after the first data frame.
  • the comparing according to the codeword offset corresponding to the first data frame, comparing multiple FEC types to be sent separately
  • the number of check bits generated by the first data frame, the number of non-maximum values selected from the number of check bits respectively generated by the multiple FEC types, and determined according to the selected number of check bits The number of IDLE blocks that need to be inserted after the first data frame, including:
  • An IDLE block is inserted after the first data frame based on the number of IDLE blocks obtained by looking up the first mapping table.
  • the first IDLE block is an end indication IDLE Block
  • the end indication IDLE block is used to indicate an end position of the burst data block.
  • the method further includes:
  • the length of the third data frame is calculated, and it is determined whether the length of the third data frame is greater than the length of the current transmission period. If the length is greater than, the first data frame is learned.
  • the first parameter corresponding to the first FEC type is an information code length corresponding to the first FEC type.
  • an embodiment of the present invention provides a method for processing a free block IDLE in a burst data block, including:
  • the plurality of forward error correction FEC types After receiving the burst data block, if the last data block of the burst data block is detected, comparing the plurality of forward error correction FEC types according to the number of data blocks that have been received, respectively.
  • the received data block generates a number of check bits, and the plurality of FEC types include a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code CC type, respectively, from the plurality of FEC types
  • the number of generated check bits is selected as the number of non-maximum values, and the number of IDLE blocks to be deleted is determined according to the selected number of check bits;
  • the subsequently received IDLE block is deleted according to the determined number of IDLE blocks that need to be deleted.
  • the last data block of the burst data block is detected, including:
  • the data block immediately before the end indication IDLE block is the last data block of the burst data block.
  • the number of parity bits generated by the plurality of forward error correction FEC types for each of the received data blocks is compared according to the number of data blocks that have been received, from the plurality of FEC types.
  • the number of non-maximum values is selected from the number of check bits generated separately, and the number of IDLE blocks to be deleted is determined according to the selected number of check bits, including:
  • IDLE block including:
  • the IDLE block, which is subsequently received, including the end indicating IDLE block, is deleted based on the number of IDLE blocks obtained by looking up the second mapping table.
  • an embodiment of the present invention provides a network device, including:
  • a processing module configured to: when the last data frame is sent in one transmission period of the burst data block, determine that the sum of the codeword offsets corresponding to the length of the first data frame and the second data frame is less than a first parameter corresponding to the forward error correction FEC type, the sum of the length of the first data frame and the codeword offset corresponding to the second data frame is used as a codeword offset corresponding to the first data frame And determining, according to the codeword offset corresponding to the first data frame, the number of IDLE blocks that need to be inserted after the first data frame, where the second data frame is located in the burst data block a data frame immediately adjacent to the first data frame before the first data frame;
  • an inserting module configured to insert an IDLE block after the first data frame according to the determined number of IDLE blocks.
  • the processing module is specifically configured to: compare, according to the codeword offset corresponding to the first data frame, the plurality of FEC types to be respectively sent to the The number of check bits generated by the first data frame, the plurality of FEC types including a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code CC type, respectively generated from the plurality of FEC types
  • the number of non-maximum values is selected from the number of check bits, and the number of IDLE blocks that need to be inserted after the first data frame is determined according to the selected number of check bits.
  • the processing module is specifically configured to:
  • the plug-in module is specifically configured to:
  • An IDLE block is inserted after the first data frame based on the number of IDLE blocks obtained by looking up the first mapping table.
  • the first IDLE block is an end indication IDLE Block
  • the end indication IDLE block is used to indicate an end position of the burst data block.
  • the processing module is specifically configured to: when transmitting the third data frame, calculate a length of the third data frame, and determine whether the length of the third data frame is If the length of the current data transmission period is greater than, the first data frame is the last data frame sent by the burst data block in the current transmission period, and the third data frame is the protrusion.
  • a data frame in the data block that is immediately after the first data frame and in close proximity to the first data frame.
  • the first parameter corresponding to the first FEC type is an information code length corresponding to the first FEC type.
  • an embodiment of the present invention provides a network device, including:
  • a receiving module configured to receive the burst data block
  • a determining module configured to compare the received data with each of the plurality of forward error correction FEC types according to the number of data blocks that have been received if the last data block of the burst data block is detected
  • the block generates a number of check bits
  • the plurality of FEC types include a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code CC type, and check bits respectively generated from the plurality of FEC types Selecting a quantity other than the maximum value, and determining the number of IDLE blocks to be deleted according to the selected number of check bits;
  • a deleting module configured to delete the number of IDLE blocks that need to be deleted according to the determining The IDLE block received.
  • the determining module is specifically configured to: after detecting an end indication IDLE block for indicating an end position of the burst data block, immediately following the end indication IDLE The data block before the block is the last data block of the burst data block.
  • the determining module is specifically configured to:
  • the deleting module is specifically configured to: delete the subsequently received IDLE block including the end indicating IDLE block according to the number of the IDLE blocks obtained by searching the second mapping table.
  • the fifth aspect provides a processing system for IDLE in a burst data block, including the first network device according to any possible implementation manner of the third aspect, and any one of the fourth aspects The second network device described in the implementation manner.
  • the method, device and system for processing the IDLE in the burst data block provided by this embodiment, when the last data frame is sent in one transmission period of the burst data block, determining the length of the first data frame The sum of the codeword offsets corresponding to the second data frame is smaller than the first parameter corresponding to the first FEC type, and the sum of the length of the first data frame and the codeword offset corresponding to the second data frame is taken as a codeword offset corresponding to the first data frame, and determining, according to the codeword offset corresponding to the first data frame, a number of IDLE blocks to be inserted after the first data frame, according to the determined IDLE The number of blocks, the IDLE block is inserted after the first data frame, so that the system can adaptively select the number of IDLE blocks that need to be inserted or deleted according to the length of the burst data.
  • FIG. 1 is a flowchart of Embodiment 1 of a method for processing an IDLE in a burst block of the present invention
  • FIG. 2 is a flowchart of a second embodiment of a method for processing an IDLE in a burst block according to the present invention
  • FIG. 4a is a schematic diagram of the burst data block before being inserted into the IDLE;
  • Figure 4b is a schematic diagram of the burst data block inserted into the IDLE
  • Figure 5a is a schematic diagram of the burst data block before deleting the IDLE
  • Figure 5b is a schematic diagram of the burst data block after deleting the IDLE
  • Embodiment 1 of a network device is a schematic structural diagram of Embodiment 1 of a network device according to the present invention.
  • Embodiment 7 is a schematic structural diagram of Embodiment 2 of a network device according to the present invention.
  • Embodiment 8 is a schematic structural diagram of Embodiment 3 of a network device according to the present invention.
  • FIG. 9 is a schematic structural diagram of Embodiment 4 of a network device according to the present invention.
  • the technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention.
  • the embodiments are a part of the embodiments of the invention, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
  • FIG. 1 is a flowchart of Embodiment 1 of a method for processing IDLE in a burst block of the present invention. As shown in FIG. 1, the method provided in this embodiment may be performed by a network device, and the method provided in this embodiment may include:
  • the length of the third data frame may be calculated by transmitting the third data frame, and determining the Whether the length of the three data frames is greater than the length of the current transmission period, and if the length is greater than, the first data frame is the last data frame sent by the burst data block in the current transmission period, and the third data frame is And a data frame located in the burst data block after the first data frame.
  • the FEC type can be represented by (n, k), where n represents the codeword length, represents the number of bits of the coded block, and k represents the information code length, which represents the number of bits to be protected by one encoding, and Nk represents the check bit added after encoding the k bit data to be transmitted.
  • the first parameter corresponding to the first FEC type may be the value of the information code length, gp, and parameter k corresponding to the first FEC type.
  • Determining, according to the codeword offset corresponding to the first data frame, the number of IDLE blocks that need to be inserted after the first data frame may include: according to the codeword offset corresponding to the first data frame, Comparing the number of parity bits generated by the plurality of FEC types for the first data frame to be transmitted, respectively, the plurality of FEC types including a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code a CC type, selecting a number of non-maximum values from the number of check bits respectively generated by the plurality of FEC types, and determining an IDLE to be inserted after the first data frame according to the selected number of check bits The number of blocks.
  • the plurality of FEC types including a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code a CC type
  • the first mapping table is a correspondence between the number of check bits generated under the plurality of FEC types and the number of IDLE blocks that need to be inserted.
  • the calculation formula may be calculated through calculation. It can also be obtained by a preset condition, which is not limited in this embodiment.
  • S102 Insert an IDLE block after the first data frame according to the determined number of IDLE blocks. If in S101, the number of IDLE blocks that need to be inserted after the first data frame is obtained by searching in the first mapping table, in this step, the first The number of IDLE blocks obtained by the mapping table is inserted into the IDLE block after the first data frame.
  • the IDLE block may indicate an IDLE block for the end indicating that the IDLE block is used to indicate the end position of the burst. This embodiment does not limit this.
  • the method for processing the IDLE in the burst data block provided in this embodiment, when the last data frame is sent in one transmission period of the burst data block, determining the length of the first data frame and the second data If the sum of the codeword offsets corresponding to the frame is smaller than the first parameter corresponding to the first FEC type, the sum of the length of the first data frame and the codeword offset corresponding to the second data frame is used as the first a codeword offset corresponding to the data frame, and determining, according to the codeword offset corresponding to the first data frame, the number of IDLE blocks that need to be inserted after the first data frame, according to the determined number of IDLE blocks, An IDLE block is inserted after the first data frame, thereby enabling the system to adaptively select the number of IDLE blocks to be inserted based on the length of the burst data.
  • Embodiment 2 is a flowchart of Embodiment 2 of a method for processing IDLE in a burst block of the present invention. As shown in FIG. 2, the method provided in this embodiment may be performed by a network device. On the basis of the foregoing embodiment, before the S101, the method provided in this embodiment may further include:
  • the encoding overhead determines the number of IDLE blocks that need to be inserted after the second data frame.
  • the first parameter corresponding to the first FEC type may be an information code length corresponding to the first FEC type, and determining that the codeword offset corresponding to the second data frame is greater than the first
  • the coding overhead of the second data frame may be calculated by using a calculation formula of the coding overhead, thereby determining the number of IDLE blocks to be inserted after the second data frame.
  • Insert an IDLE block after the second data frame according to the determined number of IDLE blocks The processing method of the IDLE in the burst data block provided in this embodiment may be based on the coding overhead when it is determined that the codeword offset corresponding to the second data frame is greater than the information code length corresponding to the first FEC type.
  • the calculation overhead of the second data frame calculated by the calculation formula determines the number of IDLE blocks that need to be inserted after the second data frame, and inserts an IDLE block after the second data frame according to the determined number of IDLE blocks. So that the system can adaptively select the number of IDLE blocks that need to be inserted according to the length of the burst data.
  • FIG. 3 is a flowchart of Embodiment 3 of a method for processing an IDLE in a burst block according to the present invention.
  • the method provided in this embodiment may be performed by a network device, and the method provided in this embodiment may include:
  • the data block to be generated generates the number of check bits
  • the plurality of FEC types include LDPC, RS, and CC types
  • the number of non-maximum values is selected from the number of check bits respectively generated by the multiple FEC types, according to The number of check bits selected is selected to determine the number of IDLE blocks that need to be deleted.
  • the last data block of the burst data block may be selected to be the IDLE block after detecting the end indicating the end position of the burst data, and immediately following the end indication IDLE
  • the data block before the block is the last data block of the burst data block. It can be understood by those skilled in the art that other methods may be used to indicate the last data block of the burst data block. This embodiment is incorrect. This is a limitation.
  • an FEC type that generates the least number of check bits generated for the data block that has been received may be selected, thereby determining the number of IDLE blocks that need to be deleted according to the number of check bits generated by the selected FEC type;
  • the number of check bits generated is the FEC type of the second smallest value, or other non-maximum values, which is not limited in this embodiment.
  • the number of check bits generated by the plurality of forward error correction FEC types for each of the received data blocks may be compared according to the number of data blocks that have been received, from the plurality of Selecting the number of non-maximum values in the number of check bits generated by the FEC type, and searching for the corresponding number of IDLE blocks that need to be deleted in the stored second mapping table, where the second mapping table is The correspondence between the number of check bits generated under the FEC type and the number of IDLE blocks that need to be deleted.
  • the number of IDLE blocks deletes the subsequently received IDLE block including the end indication IDLE block according to the number of the IDLE blocks obtained by searching the second mapping table.
  • the method for processing the IDLE in the burst data block compares the plurality of FEC types according to the number of data blocks that have been received when the last data block of the burst data block is detected.
  • Generating a number of check bits for the received data block the plurality of The FEC type includes an LDPC, an RS, and a CC type, and selects a non-maximum number from the number of check bits respectively generated by the multiple FEC types, and determines an IDLE block to be deleted according to the selected number of check bits.
  • the number is then deleted and the IDLE is subsequently deleted, so that the system can adaptively select the number of IDLE blocks that need to be deleted according to the received burst data block.
  • the following describes the processing method of the IDLE in the burst data block by taking the first FEC type as the LDPC as an example.
  • the setting system has two types of LDPC types, long code and short code, long code corresponding parameters (16157, 14365), and short code corresponding parameters (1101, 845). Since the operation object is a byte in the IDLE insertion processing flow, and the operation object is a 64B block in the IDLE deletion processing flow, it is necessary to convert the LDPC parameter into another format, gP, a long code parameter in bytes. For (221*8, 193*8), the long code parameter in bytes is (13*8, 9*8); the long code parameter in 64B is (221, 193), in units of 64B. The short code parameter is (13, 9).
  • the Ethernet data frame is sent, and the Ethernet data frame is assumed to be the second data frame. If the second data frame corresponds to the codeword offset fec ⁇ w is greater than the LDPC length.
  • the information code length corresponding to the code is 193*8, and the encoding overhead of the second data frame is calculated according to the calculation formula of the encoding overhead FEC_Overhead(), thereby determining the IDLE block that needs to be inserted after the second data frame. quantity.
  • the calculation formula of the FEC _ O ve r ⁇ 0 function is:
  • FEC _ Overhead ength FEC _ PARITY _ SIZE * floor
  • FEC _ PAYLOAD _ SIZE where FEC_PARITY _ SIZE is the check digit added after encoding the data frame.
  • FEC _ i ⁇ Xa4 ) _ S/ZE is the information code length
  • / g is the length of the data frame
  • /ec. J53 ⁇ 4e is the codeword partial.
  • the last data frame transmitted in the current transmission period of the burst data block is the first data frame, and the length Z g of the first data frame and the / eCi s corresponding to the second data frame
  • the + is used as the codeword offset corresponding to the first data frame
  • the first mapping is according to the codeword offset corresponding to the first data frame.
  • the table that is, in Table 1, finds the corresponding number of IDLE blocks that need to be inserted after the first data frame. Described in Table 1 is the correspondence between the codeword offset and the number of IDLE blocks that need to be inserted.
  • Figure 4a is a schematic diagram of a burst data block before it is inserted into IDLE
  • Figure 4b is a burst data block inserted into IDLE.
  • the IDLE block of the burst data block is distinguished from the inserted IDLE block by the oblique line, and the codeword offsets of the data frame FrmO, the data frame Frml, and the data frame Frm2 are larger than those corresponding to the LDPC.
  • the information code length is 193*8, and the number of IDLE blocks to be inserted after the data frame FrmO, the data frame Frml, and the data frame Frm2 can be calculated by the calculation formula FEC_Overhead() of the coding overhead, and the codeword of the data frame Frm3.
  • the offset is smaller than the information code length 193*8 corresponding to the LDPC
  • the number of IDLE blocks to be inserted after the data frame Frm3 can be obtained by querying Table 1. For example, if the codeword offset corresponding to the data frame Frm3 is 66*8, and 66*8 is within the codeword offset range (65*8, 78*8) in Table 1, it can be seen by looking up the table. It is necessary to insert 24 IDLE blocks after the data frame Frm3, and the code word types corresponding to the 24 IDLE blocks are five short codes plus one short code cut code.
  • the coding overhead of the data frame can be directly calculated by the FEC_Ow ⁇ e ⁇ O function, thereby determining the IDLE to be inserted after the data frame.
  • the number of blocks; For the last remaining data frames that do not satisfy the long code parameter, the number of IDLE blocks that should be inserted after the data frame is obtained by querying Table 1, thereby realizing that the system needs to be inserted according to the length of the burst data. The number of IDLE blocks.
  • the data block or the IDLE block is received.
  • the IDLE block can be divided into a normal IDLE block and an end indication IDLE block, and gp, EOBJDLE, and EOB_IDLE are used to indicate the end position of the burst data. Since the position of the last data frame can be accurately determined during the insertion of IDLE, when the IDLE block is inserted, the first IDLE block inserted in the IDLE after the last data frame can be EOB_IDLE, and the IDLE is deleted. In the process, If EOB_IDLE is detected, it indicates that the current burst valid data has ended.
  • EOB_IDLE is received, according to the number of data blocks that have been received, in the second mapping table, that is, in Table 2, the corresponding number of IDLE blocks indicating deletion is found, and the data blocks that have been received are described in Table 2.
  • Table 2 The correspondence between the number of IDLE blocks and the number of IDLE blocks that need to be deleted, and the IDLE block that is subsequently received, including the end indicating IDLE block, is deleted.
  • Figure 5a is a schematic diagram of the burst data block before IDLE is deleted
  • Figure 5b is a schematic diagram of the burst data block after IDLE is deleted.
  • the IDLE block of the burst data block is distinguished from the inserted IDLE block by a slash, and the number of the received data block FrmO, the data block Frml, and the data block Frm2 is equal to 64B. If the information code length corresponding to the long code of the unit is 193, the IDLE ⁇ of the same received check code length 28 is deleted, the received data block Frm3 is counted, and EOBJDLE is detected, and the table 2 is passed.
  • the number of IDLE blocks that need to be deleted after the data block Frm3 is obtained. For example, if EOB_IDLE is detected, the number of received data blocks Frm3 is 67, and 67 is within the range of data blocks of Table 2 (65, 78). By looking up the table, it is necessary to be in the data block Frm3. After deleting 24 IDLE blocks, the codeword types corresponding to the 24 IDLE blocks are five short codes plus one short code truncation code.
  • the subsequent data is deleted.
  • the received IDLE blocks of the same value as the check code corresponding to the long code; for the last remaining data blocks that do not satisfy the long code parameter, the number of IDLE blocks that should be deleted after the data block is obtained by querying Table 2. So that the system can adaptively select the number of IDLE blocks that need to be deleted according to the received burst data block.
  • FIG. 6 is a schematic structural diagram of Embodiment 1 of a network device according to the present invention.
  • the network device 10 provided in this embodiment as shown in FIG. 6 may include:
  • the processing module 11 is configured to: when the last data frame is sent in one transmission period of the burst data block, determine that the sum of the codeword offsets corresponding to the length of the first data frame and the second data frame is less than a first parameter corresponding to the first forward error correction FEC type, the sum of the length of the first data frame and the codeword offset corresponding to the second data frame is used as a codeword offset corresponding to the first data frame Transmitting, and determining, according to the codeword offset corresponding to the first data frame, the number of IDLE blocks that need to be inserted after the first data frame, where the second data frame is located in the burst data block The first data frame is immediately adjacent to the data frame of the first data frame;
  • the inserting module 12 is configured to insert an IDLE block after the first data frame according to the determined number of IDLE blocks.
  • the processing module 11 is specifically configured to compare, according to the codeword offset corresponding to the first data frame, a number of check bits generated by each of the plurality of FEC types for the first data frame to be sent, where
  • the plurality of FEC types include a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code CC type, and a number of non-maximum values are selected from the number of check bits respectively generated by the plurality of FEC types,
  • the number of IDLE blocks that need to be inserted after the first data frame is determined according to the selected number of check bits.
  • the processing module 11 may be configured to compare, according to the codeword offset corresponding to the first data frame, a check generated by the first data frame to be sent, respectively, in the multiple FEC types.
  • the number of IDLE blocks, the first mapping table is a correspondence between the number of check bits generated under the multiple FEC types and the number of IDLE blocks to be inserted;
  • the inserting module 12 is specifically configured according to Finding the number of IDLE blocks obtained by the first mapping table, inserting an IDLE block after the first data frame.
  • the first IDLE block is an end finger
  • An IDLE block is shown, the end indicating IDLE block is used to indicate an end position of the burst data block.
  • the processing module 11 is specifically configured to: when the third data frame is sent, calculate a length of the third data frame, and determine whether the length of the third data frame is greater than a remaining length of the current sending period, if greater than, Obtaining that the first data frame is the last data frame that is sent by the burst data block in a current sending period, and the third data frame is located in the burst data block after the first data frame and Adjacent to the data frame of the first data frame.
  • the first parameter corresponding to the first FEC type is an information code length corresponding to the first FEC type.
  • the network device provided in this embodiment may be used to implement the technical solution of the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • FIG. 7 is a schematic structural diagram of Embodiment 2 of a network device according to the present invention.
  • the network device 20 provided in this embodiment may include:
  • a receiving module 21 configured to receive the burst data block
  • a determining module 22 configured to determine, according to the number of data blocks that have been received, the number of IDLE blocks that need to be deleted, if the last data block of the burst data is detected;
  • the deleting module 23 is configured to compare, according to the determined number of IDLE blocks that need to be deleted, the number of check bits generated by the multiple FEC types to the received data block, where the multiple FEC types include LDPC,
  • the RS and CC types select a number of non-maximum values from the number of check bits respectively generated under the plurality of FEC types, and delete the subsequently received IDLE block according to the selected number of check bits.
  • the determining module 22 may be specifically configured to: after detecting an end indicating IDLE block for indicating an end position of the burst data block, the data block immediately before the end indicating the IDLE block is the burst data block The last data block.
  • the determining module 22 may be specifically configured to compare, according to the number of data blocks that have been received, the number of check bits generated by the multiple forward error correction FEC types on the received data block, respectively. Selecting a quantity that is not a maximum value among the number of check bits generated by the multiple FEC types, and searching for a corresponding number of IDLE blocks that need to be deleted in the stored second mapping table, where the second mapping table is Corresponding relationship between the number of check bits generated by the multiple FEC types and the number of IDLE blocks to be deleted; the deleting module 23 may be specifically configured to use the IDLE obtained by searching the second mapping table. The number of blocks, deleted subsequently received, including the end indication IDLE block including IDLE block.
  • the network device provided in this embodiment may be used to implement the technical solution of the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • FIG. 8 is a schematic structural diagram of Embodiment 3 of a network device according to the present invention.
  • the network device 30 provided in this embodiment may include a memory 31 and a processor 32, wherein the memory 31 stores a set of program codes, and the processor 32 is configured to call the program code in the memory 31 and perform the following operations. :
  • the codeword offset corresponding to the first data frame determines the number of IDLE blocks that need to be inserted after the first data frame, and the second data frame is located in the first data frame in the burst data block. a data frame immediately adjacent to the first data frame; an IDLE block is inserted after the first data frame according to the determined number of IDLE blocks.
  • comparing according to the codeword offset corresponding to the first data frame, comparing, by using multiple FEC types, the number of check bits generated by the first data frame to be sent, where the multiple FEC types include a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code CC type, and selecting a number of non-maximum values from the number of check bits respectively generated by the plurality of FEC types, according to the selected The number of check bits determines the number of IDLE blocks that need to be inserted after the first data frame.
  • the multiple FEC types include a low density parity check code LDPC, a Reed-Solomon code RS, and a convolutional code CC type
  • comparing according to the codeword offset corresponding to the first data frame, comparing the number of check bits generated by the multiple FEC types to the first data frame to be sent, respectively, from the multiple Selecting a number of non-maximum values among the number of check bits respectively generated in the FEC type, and searching for a corresponding number of IDLE blocks that need to be inserted after the first data frame in the stored first mapping table, where a mapping table is a correspondence between the number of check bits generated under the plurality of FEC types and the number of IDLE blocks to be inserted; according to the number of IDLE blocks obtained by searching the first mapping table, The IDLE block is inserted after the first data frame.
  • the first IDLE block is an end indicating IDLE block, and the end indication IDLE block is used to indicate an end position of the burst data block.
  • the third data frame When the third data frame is sent, calculating a length of the third data frame, and determining the third data Whether the length of the frame is greater than the length of the current transmission period, if the value is greater than, the first data frame is the last data frame sent by the burst data block in the current transmission period, and the third data frame is And a data frame of the burst data block that is located immediately after the first data frame and is adjacent to the first data frame.
  • the first parameter corresponding to the first FEC type is an information code length corresponding to the first FEC type.
  • the network device provided in this embodiment may be used to implement the technical solution of the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • FIG. 9 is a schematic structural diagram of Embodiment 4 of a network device according to the present invention.
  • the network device 40 provided in this embodiment may include a memory 41 and a processor 42.
  • the memory 41 stores a set of program codes
  • the processor 42 is configured to call the program code in the memory 41 and perform the following operations. :
  • Receiving the burst data block if the last data block of the burst data is detected, comparing the received data blocks to the plurality of FEC types according to the number of data blocks that have been received Generating a number of check bits, the plurality of FEC types including LDPC, RS, and CC types, and selecting a number of non-maximum values from the number of check bits respectively generated by the plurality of FEC types, according to the selected The number of check bits determines the number of IDLE blocks that need to be deleted; according to the determined number of IDLE blocks that need to be deleted, the subsequently received IDLE block is deleted.
  • the data block immediately before the end indication IDLE block is the last data block of the burst data block.
  • comparing the number of data blocks that have been received comparing the number of check bits generated by the plurality of forward error correction FEC types to the received data blocks, respectively, is generated separately from the multiple FEC types. Selecting a non-maximum number of check digits, and searching for a corresponding number of IDLE blocks indicating deletion to be deleted in the stored second mapping table, where the second mapping table is generated under the plurality of FEC types Corresponding relationship between the number of check bits and the number of IDLE blocks to be deleted; deleting the subsequently received number including the end indicating IDLE block according to the number of the IDLE blocks obtained by searching the second mapping table IDLE block.
  • the network device provided by this embodiment may be used to implement the technical solution of the foregoing method embodiments, and the implementation principles and technical effects thereof are similar, and details are not described herein again.
  • the embodiment provides a processing system for IDLE in a burst data block, and the system may include a first network device and a second network device.
  • the first network device includes a processing module and an insertion module.
  • a processing module for details, refer to the processing module 11 and the insertion module 12 in the network device 10 of the foregoing embodiment, and details are not described herein again.
  • the second network device includes a receiving module, a determining module, and a deleting module.
  • a receiving module refers to the receiving module 21, the determining module 22, and the deleting module 23 in the network device 20 of the foregoing embodiment, and details are not described herein again.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be 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 may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical, mechanical or otherwise.
  • the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the software functional unit is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to perform the method of various embodiments of the present invention. Part of the steps.
  • the foregoing 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 the like, which can store program code. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明实施例提供一种突发数据块中的IDLE的处理方法、设备及系统。该方法包括:当在突发数据块的一个发送周期内发送最后一个数据帧时,判断出当第一数据帧的长度与第二数据帧对应的码字偏移量之和小于第一前向纠错FEC类型对应的第一参数,则将第一数据帧的长度与第二数据帧对应的码字偏移量之和作为第一数据帧对应的码字偏移量,并根据第一数据帧对应的码字偏移量确定需要在第一数据帧后插入的IDLE块的数量,第二数据帧为突发数据块中位于第一数据帧之前且紧邻第一数据帧的数据帧;根据确定的IDLE块的数量,在第一数据帧后插入IDLE块。以使系统根据突发数据的长度选择需要插入或删除的IDLE的数目。

Description

突发数据块中的空闲块 IDLE的处理方法、 设备及系统 技术领域
本发明涉及通信技术, 尤其涉及一种突发数据块中的空闲块 IDLE 的处 理方法、 设备及系统。 背景技术
前向纠错 (Forward Error Correction, 简称 FEC) 可以通过在发送端对原 信号编码产生校验信息, 从而对发送的信号进行保护, 接收端可以通过这些 校验信息从受到干扰的信号中恢复出原信号, 常用的 FEC类型有低密度奇偶 校验码 (Low Density Parity Check Code 简称: LDPC ) 、 里德-所罗门 (Reed-Solomon, 简称: RS )码和卷积码( Convolution Codes, 简称: CC) 。
在以太无源光网络(Ethernet Passive Optical Network, 简称: EPON) 中, 由于光纤介质受到噪声干扰小, 所以 EPON物理层采用固定的 RS码实现对 发送的信号的保护。而在基于 EPON协议的同轴分配网络 (EPON Protocol over Coaxial Distribution Network, 简称: EPoC) 系统中, 由于同轴介质受到的噪 声影响比较大, 所以需要更完善的 FEC方法提高系统抗噪声的性能。
在 EPoC系统中, 下行方向采用广播方式发送数据, 上行方向采用突发 模式发送数据。 由于上行突发模式下, 突发数据长度是不同的, 为了提高资 源利用率, 针对不同的突发数据长度, EPoC系统可能支持多种 FEC类型, 而在发送上行数据时, 在 10Gb独立媒体接口 (10 Gigabit Media Independent Interface, 简称 XGMII) 前, 为了给后续 FEC产生的检验位预留空间, 需要 对数据流进行插入空闲块 (IDLE) 的操作, 并在 XGMII接口后, 为了给马 上要进行 FEC产生的检验位让出空间,需要对数据流进行删除 IDLE的操作。 但是由于在 EPoC系统中存在多种 FEC方式时, 突发数据的长度不同会决定 需要插入或删除的 IDLE 的数目也会不同, 如何针对不同长度的突发数据来 接入或删除不同数目的 IDLE, 目前还没有方式解决。 发明内容 本发明实施例提供一种突发数据块中的空闲块 IDLE 的处理方法、 设备 及系统, 以使系统根据突发数据的长度选择需要插入或删除的 IDLE的数目。
第一方面, 本发明实施例提供一种突发数据块中的空闲块 IDLE 的处理 方法, 包括:
当在突发数据块的一个发送周期内发送最后一个数据帧时, 判断出当所 述第一数据帧的长度与第二数据帧对应的码字偏移量之和小于第一前向纠 错 FEC类型对应的第一参数, 则将所述第一数据帧的长度与第二数据帧对 应的码字偏移量之和作为所述第一数据帧对应的码字偏移量, 并根据所述第 一数据帧对应的码字偏移量确定需要在所述第一数据帧后插入的 IDLE块的 数量, 所述第二数据帧为所述突发数据块中位于所述第一数据帧之前且紧邻 所述第一数据帧的数据帧;
根据确定的 IDLE块的数量, 在所述第一数据帧后插入 IDLE块。
在第一方面的第一种可能的实现方式中, 所述根据所述第一数据帧对应 的码字偏移量确定需要在所述第一数据帧后插入的 IDLE块的数量, 包括: 根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下分别对要 发送的所述第一数据帧产生的校验位的数量, 所述多种 FEC类型包括低密度 奇偶校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC 类型下分别产生的校验位数量中选择非最大值的数量, 根据所选择的所述校 验位数量, 确定需要在所述第一数据帧后插入的 IDLE块的数量。
根据第一方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下分别对要 发送的所述第一数据帧产生的校验位的数量, 从所述多种 FEC类型下分别产 生的校验位数量中选择非最大值的数量, 根据所选择的所述校验位数量, 确 定需要在所述第一数据帧后插入的 IDLE块的数量, 包括:
根据所述第一数据帧对应的码字偏移量, 比较所述多种 FEC类型下分别 对要发送的所述第一数据帧产生的校验位的数量, 从所述多种 FEC类型下分 别产生的校验位数量中选择非最大值的数量, 在存储的第一映射表中查找对 应的、 表示需要在所述第一数据帧后插入的 IDLE块的数量, 所述第一映射 表为所述多种 FEC类型下产生的所述校验位数量与需要插入的 IDLE块数量 之间的对应关系; 相应的,所述根据确定的 IDLE块的数量,在所述第一数据帧后插入 IDLE 块, 包括:
根据查找所述第一映射表获得的 IDLE块的数量, 在所述第一数据帧后 插入 IDLE块。
结合第一方面至第一方面的第二种可能的实现方式, 在第三种可能的实 现方式中, 所述在所述第一数据帧后插入的 IDLE中, 首个 IDLE块为结束指 示 IDLE块, 所述结束指示 IDLE块用于指示所述突发数据块的结束位置。
在第一方面的第四种可能的实现方式中, 还包括:
在发送第三数据帧时, 计算所述第三数据帧的长度, 判断所述第三数据 帧的长度是否大于所述当前发送周期剩余的长度, 若大于, 则获知所述第一 数据帧为所述突发数据块在当前发送周期内发送的最后一个数据帧, 所述第 三数据帧为所述突发数据块中位于所述第一数据帧之后且紧邻所述第一数据 帧的数据帧。
在第一方面的第五种可能的实现方式中, 所述第一 FEC类型对应的第一 参数为所述第一 FEC类型对应的信息码长。
第二方面, 本发明实施例提供一种突发数据块中的空闲块 IDLE的处理 方法, 包括:
接收到所述突发数据块后,若检测到所述突发数据块的最后一个数据块, 则根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对所 述已接收到的数据块产生校验位的数量, 所述多种 FEC类型包括低密度奇偶 校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC类型 下分别产生的校验位数量中选择非最大值的数量, 根据所选择的所述校验位 数量, 确定需要删除的 IDLE块的数量;
根据所述确定需要删除的 IDLE块的数量, 删除随后接收到的 IDLE块。 在第二方面的第一种可能的实现方式中, 检测到所述突发数据块的最后 一个数据块, 包括:
检测到用于指示所述突发数据块的结束位置的结束指示 IDLE块后, 则 紧邻所述结束指示 IDLE块之前的数据块即为所述突发数据块的最后一个数 据块。
结合第二方面或第二方面的第一种可能的实现方式, 在第二种可能的实 现方式中, 所述根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类 型下分别对所述已接收到的数据块产生校验位的数量, 从所述多种 FEC类型 下分别产生的校验位数量中选择非最大值的数量, 根据所选择的所述校验位 数量, 确定需要删除的 IDLE块的数量, 包括:
根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对 所述已接收到的数据块产生校验位的数量, 从所述多种 FEC类型下分别产生 的校验位数量中选择非最大值的数量, 在存储的第二映射表中查找对应的、 表示需要删除的 IDLE块的数量, 所述第二映射表为所述多种 FEC类型下产 生的所述校验位数量与需要删除的 IDLE块数量之间的对应关系;
相应的, 根据所述确定需要删除的 IDLE块的数量, 删除随后接收到的
IDLE块, 包括:
根据查找所述第二映射表获得的所述 IDLE块的数量, 删除随后接收到 的、 包括结束指示 IDLE块在内的 IDLE块。
第三方面, 本发明实施例提供一种网络设备, 包括:
处理模块, 用于当在突发数据块的一个发送周期内发送最后一个数据帧 时, 判断出当所述第一数据帧的长度与第二数据帧对应的码字偏移量之和小 于第一前向纠错 FEC类型对应的第一参数, 则将所述第一数据帧的长度与 第二数据帧对应的码字偏移量之和作为所述第一数据帧对应的码字偏移量, 并根据所述第一数据帧对应的码字偏移量确定需要在所述第一数据帧后插入 的 IDLE块的数量, 所述第二数据帧为所述突发数据块中位于所述第一数据 帧之前紧邻所述第一数据帧的数据帧;
插入模块, 用于根据确定的 IDLE块的数量, 在所述第一数据帧后插入 IDLE块。
在第三方面的第一种可能的实现方式中, 所述处理模块具体用于: 根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下分别对要 发送的所述第一数据帧产生的校验位的数量, 所述多种 FEC类型包括低密度 奇偶校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC 类型下分别产生的校验位数量中选择非最大值的数量, 根据所选择的所述校 验位数量, 确定需要在所述第一数据帧后插入的 IDLE块的数量。
根据第三方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述处理模块具体用于:
根据所述第一数据帧对应的码字偏移量, 比较所述多种 FEC类型下分别 对要发送的所述第一数据帧产生的校验位的数量, 从所述多种 FEC类型下分 别产生的校验位数量中选择非最大值的数量, 在存储的第一映射表中查找对 应的、 表示需要在所述第一数据帧后插入的 IDLE块的数量, 所述第一映射 表为所述多种 FEC类型下产生的所述校验位数量与需要插入的 IDLE块数量 之间的对应关系;
所述插入模块具体用于:
根据查找所述第一映射表获得的 IDLE块的数量, 在所述第一数据帧后 插入 IDLE块。
结合第三方面至第三方面的第二种可能的实现方式, 在第三种可能的实 现方式中, 所述在所述第一数据帧后插入的 IDLE中, 首个 IDLE块为结束指 示 IDLE块, 所述结束指示 IDLE块用于指示所述突发数据块的结束位置。
在第三方面的第四种可能的实现方式中, 所述处理模块具体用于: 在发送第三数据帧时, 计算所述第三数据帧的长度, 判断所述第三数据 帧的长度是否大于所述当前发送周期剩余的长度, 若大于, 则获知所述第一 数据帧为所述突发数据块在当前发送周期内发送的最后一个数据帧, 所述第 三数据帧为所述突发数据块中位于所述第一数据帧之后且紧邻所述第一数据 帧的数据帧。
在第三方面的第五种可能的实现方式中, 所述第一 FEC类型对应的第一 参数为所述第一 FEC类型对应的信息码长。
第四方面, 本发明实施例提供一种网络设备, 包括:
接收模块, 用于接收到所述突发数据块,
确定模块, 用于若检测到所述突发数据块的最后一个数据块, 则根据已 经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对所述已接收 到的数据块产生校验位的数量, 所述多种 FEC 类型包括低密度奇偶校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC类型下分别 产生的校验位数量中选择非最大值的数量, 根据所选择的所述校验位数量, 确定需要删除的 IDLE块的数量;
删除模块, 用于根据所述确定需要删除的 IDLE块的数量, 删除随后接 收到的 IDLE块。
在第四方面的第一种可能的实现方式中, 所述确定模块具体用于: 检测到用于指示所述突发数据块的结束位置的结束指示 IDLE块后, 则 紧邻所述结束指示 IDLE块之前的数据块即为所述突发数据块的最后一个数 据块。
结合第四方面或第四方面的第一种可能的实现方式, 在第二种可能的实 现方式中, 所述确定模块具体用于:
根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对 所述已接收到的数据块产生校验位的数量, 从所述多种 FEC类型下分别产生 的校验位数量中选择非最大值的数量, 在存储的第二映射表中查找对应的、 表示需要删除的 IDLE块的数量, 所述第二映射表为所述多种 FEC类型下产 生的所述校验位数量与需要删除的 IDLE块数量之间的对应关系;
所述删除模块具体用于: 根据查找所述第二映射表获得的所述 IDLE块 的数量, 删除随后接收到的、 包括结束指示 IDLE块在内的 IDLE块。
第五方面, 本发明实施例提供一种突发数据块中的 IDLE的处理系统, 包括如第三方面任一种可能的实现方式所述的第一网络设备和如第四方 面任一种可能的实现方式所述的第二网络设备。
本实施例提供的突发数据块中的 IDLE 的处理方法、 设备及系统, 通过 当在突发数据块的一个发送周期内发送最后一个数据帧时, 判断出当所述第 一数据帧的长度与第二数据帧对应的码字偏移量之和小于第一 FEC类型对应 的第一参数, 则将所述第一数据帧的长度与第二数据帧对应的码字偏移量之 和作为所述第一数据帧对应的码字偏移量, 并根据所述第一数据帧对应的码 字偏移量确定需要在所述第一数据帧后插入的 IDLE块的数量, 根据确定的 IDLE块的数量, 在所述第一数据帧后插入 IDLE块, 从而使得系统可以根据 突发数据的长度自适应的选择需要插入或删除的 IDLE块的数量。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对 实施例或现有技术描述中所需要使用的附图作一简单地介绍, 显而易见 地, 下面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员 来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的 附图。
图 1为本发明突发数据块中的 IDLE的处理方法实施例一的流程图; 图 2为本发明突发数据块中的 IDLE的处理方法实施例二的流程图; 图 3为本发明突发数据块中的 IDLE的处理方法实施例三的流程图; 图 4a为突发数据块插入 IDLE前的示意图;
图 4b为突发数据块插入 IDLE后的示意图;
图 5a为突发数据块删除 IDLE前的示意图;
图 5b为突发数据块删除 IDLE后的示意图;
图 6为本发明网络设备实施例一的结构示意图;
图 7为本发明网络设备实施例二的结构示意图;
图 8为本发明网络设备实施例三的结构示意图;
图 9为本发明网络设备实施例四的结构示意图。 具体实施方式 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发 明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于 本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提下所获 得的所有其他实施例, 都属于本发明保护的范围。
图 1为本发明突发数据块中的 IDLE的处理方法实施例一的流程图。 如 图 1所示, 本实施例提供的方法可以由网络设备执行, 本实施例提供的方法 可以包括:
S101、 当在突发数据块的一个发送周期内发送最后一个数据帧时, 判断 出当所述第一数据帧的长度与第二数据帧对应的码字偏移量之和小于第一 前向纠错 FEC类型对应的第一参数, 则将所述第一数据帧的长度与第二数 据帧对应的码字偏移量之和作为所述第一数据帧对应的码字偏移量, 并根据 所述第一数据帧对应的码字偏移量确定需要在所述第一数据帧后插入的 IDLE块的数量,所述第二数据帧为所述突发数据块中位于所述第一数据帧之 前且紧邻所述第一数据帧的数据帧。 在判断获知第一数据帧为突发数据块在当前发送周期内发送的最后一 个数据帧时, 具体可以通过在发送第三数据帧时, 计算所述第三数据帧的长 度, 判断所述第三数据帧的长度是否大于当前发送周期剩余的长度, 若大于, 则获知所述第一数据帧为所述突发数据块在当前发送周期内发送的最后一个 数据帧, 所述第三数据帧为所述突发数据块中位于所述第一数据帧之后的数 据帧。
需要说明的是, FEC类型可以用 (n, k) 来表示, 其中, n表示码字长 度, 代表编码后码块的比特数, k表示信息码长, 代表一次编码要保护的比 特数, 而 n-k表示在对 k个待发送的比特数据进行编码后增加的校验位。
在实际应用过程中, 本实施例中, 所述第一 FEC类型对应的第一参数可 以为所述第一 FEC类型对应的信息码长, gp, 参数 k的值。
所述根据所述第一数据帧对应的码字偏移量确定需要在所述第一数据帧 后插入的 IDLE块的数量可以包括: 根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下分别对要发送的所述第一数据帧产生的校验位的数量, 所述多种 FEC类型包括低密度奇偶校验码 LDPC、 里德-所罗门码 RS和卷积 码 CC类型, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大值 的数量, 根据所选择的所述校验位数量, 确定需要在所述第一数据帧后插入 的 IDLE块的数量。
进一步地, 可以根据所述第一数据帧对应的码字偏移量, 比较所述多种 FEC类型下分别对要发送的所述第一数据帧产生的校验位的数量, 从所述多 种 FEC类型下分别产生的校验位数量中选择非最大值的数量, 在存储的第一 映射表中查找对应的、 表示需要在所述第一数据帧后插入的 IDLE块的数量, 所述第一映射表为所述多种 FEC类型下产生的所述校验位数量与需要插入的 IDLE块数量之间的对应关系。
本领域技术人员可以理解, 在根据所述第一数据帧对应的码字偏移量确 定需要在所述第一数据帧后插入的 IDLE块的数量时, 可选还可以通过计算 公式经过计算得到, 也可以通过预设条件得到, 本实施例不对此进行限制。
S102、 根据确定的 IDLE块的数量, 在所述第一数据帧后插入 IDLE块。 若在 S101中, 是通过在所述第一映射表查找得到对应的、需要在所述第 一数据帧后插入的 IDLE块的数量, 则在本步骤中, 可以根据查找所述第一 映射表获得的 IDLE块的数量, 在所述第一数据帧后插入 IDLE块。
作为一种可行的实施方式, 在所述第一数据帧后插入的 IDLE 中, 首个
IDLE块可以为结束指示 IDLE块, 所述结束指示 IDLE块用于指示所述突发 数据块的结束位置。 本实施例不对此进行限制。
本实施例提供的突发数据块中的 IDLE 的处理方法, 通过当在突发数据 块的一个发送周期内发送最后一个数据帧时, 判断出当所述第一数据帧的长 度与第二数据帧对应的码字偏移量之和小于第一 FEC类型对应的第一参数, 则将所述第一数据帧的长度与第二数据帧对应的码字偏移量之和作为所述第 一数据帧对应的码字偏移量, 并根据所述第一数据帧对应的码字偏移量确定 需要在所述第一数据帧后插入的 IDLE块的数量,根据确定的 IDLE块的数量, 在所述第一数据帧后插入 IDLE块, 从而使得系统可以根据突发数据的长度 自适应的选择需要插入的 IDLE块的数量。
图 2为本发明突发数据块中的 IDLE的处理方法实施例二的流程图。 如 图 2所示, 本实施例提供的方法可以由网络设备执行, 在上述实施例的基础 上, 在 S101之前, 本实施例提供的方法还可以包括:
5201、所述第二数据帧对应的码字偏移量若大于所述第一 FEC类型对应 的第一参数, 则计算所述第二数据帧的编码开销, 并根据所述第二数据帧的 编码开销确定需要在所述第二数据帧后插入的 IDLE块的数量。
本步骤中,所述第一 FEC类型对应的第一参数可以为所述第一 FEC类型 对应的信息码长, 在判断出所述第二数据帧对应的码字偏移量大于所述第一 FEC类型对应的信息码长时, 可以通过编码开销的计算公式计算出所述第二 数据帧的编码开销, 从而确定所述第二数据帧后需要插入的 IDLE块的数量。
5202、 根据确定的 IDLE块的数量, 在所述第二数据帧后插入 IDLE块。 本实施例提供的突发数据块中的 IDLE 的处理方法, 在判断出所述第二 数据帧对应的码字偏移量大于所述第一 FEC类型对应的信息码长时, 可以根 据编码开销的计算公式计算出的所述第二数据帧的编码开销确定所述第二数 据帧后需要插入的 IDLE块的数量,并根据确定的 IDLE块的数量在所述第二 数据帧后插入 IDLE块, 从而使得系统可以根据突发数据的长度自适应的选 择需要插入的 IDLE块的数量。
图 3为本发明突发数据块中的 IDLE的处理方法实施例三的流程图。 如 图 3所示, 本实施例提供的方法可以由网络设备执行, 本实施例提供的方法 可以包括:
5301、 接收到所述突发数据块后, 若检测到所述突发数据块的最后一个 数据块, 则根据已经接收到的数据块的数量, 比较多种 FEC类型下分别对所 述已接收到的数据块产生校验位的数量, 所述多种 FEC类型包括 LDPC、 RS 和 CC类型, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大值 的数量, 根据所选择的所述校验位数量, 确定需要删除的 IDLE块的数量。
在实际应用过程中, 检测到所述突发数据块的最后一个数据块可选可以 为检测到用于指示所述突发数据的结束位置的结束指示 IDLE块后, 则紧邻 所述结束指示 IDLE块之前的数据块即为所述突发数据块的最后一个数据块, 本领域技术人员可以理解, 也可以使用其他的方式来指示所述突发数据块的 最后一个数据块, 本实施例不对此进行限制。
可选的, 可以选择对已经接收到的数据块产生的校验位数量最少的 FEC 类型,从而根据所选择的 FEC类型产生的校验位数量,确定需要删除的 IDLE 块的数量; 也可以选择产生的校验位数量为次小值的 FEC类型, 或其他非最 大值, 本实施例不对此进行限制。
作为一种可行的实施方式, 可以根据已经接收到的数据块的数量, 比较 多种前向纠错 FEC类型下分别对所述已接收到的数据块产生校验位的数量, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大值的数量, 在存 储的第二映射表中查找对应的、 表示需要删除的 IDLE块的数量, 所述第二 映射表为所述多种 FEC类型下产生的所述校验位数量与需要删除的 IDLE块 数量之间的对应关系。
5302、根据所述确定需要删除的 IDLE块的数量,删除随后接收到的 IDLE 块。
若在 S301中, 是通过在所述第二映射表中查找得到对应的、需要删除的
IDLE块的数量, 则在本步骤中, 根据查找所述第二映射表获得的所述 IDLE 块的数量, 删除随后接收到的、 包括结束指示 IDLE块在内的 IDLE块。
本实施例提供的突发数据块中的 IDLE 的处理方法, 通过在检测到所述 突发数据块的最后一个数据块时, 根据已经接收到的数据块的数量, 比较多 种 FEC 类型下分别对所述已接收到的数据块产生校验位的数量, 所述多种 FEC类型包括 LDPC、 RS和 CC类型, 从所述多种 FEC类型下分别产生的校 验位数量中选择非最大值的数量, 根据所选择的所述校验位数量, 确定需要 删除的 IDLE块的数量并对随后接收到 IDLE进行删除,从而使得系统可以根 据接收到的突发数据块自适应的选择需要删除的 IDLE块的数量。
为使上述突发数据块中的 IDLE的处理方法更具体, 下面以第一 FEC类 型为 LDPC为例, 对上述突发数据块中的 IDLE的处理方法做进一步具体的 说明。
设定系统有两种 LDPC 类型可选, 长码和短码, 长码对应参数 (16157,14365), 短码对应参数 (1101,845)。 由于在 IDLE插入处理流程中, 操 作对象是字节, 而在 IDLE删除处理流程中, 操作对象是 64B块, 因此, 需 要将 LDPC参数转换为其它格式, gP, 以字节为单位的长码参数为 (221*8, 193*8), 以字节为单位的长码参数为(13*8, 9*8); 以 64B为单位的长码参数 为 (221, 193), 以 64B为单位的短码参数为 (13, 9)。
在突发数据块插入 IDLE 的过程中, 发送以太网数据帧, 假设所述以太 网数据帧为第二数据帧, 若所述第二数据帧对应的码字偏移量 fec^w大于 LDPC 长码对应的信息码长 193*8, 则根据编码开销的计算公式 FEC _ Overhead()函数计算出所述第二数据帧的编码开销, 从而确定需要在所 述第二数据帧后插入的 IDLE块的数量。具体地, FEC _ Over ^0函数的计算 公式为:
fecoffset + length
FEC _ Overhead ength) = FEC _ PARITY _ SIZE * floor
FEC _ PAYLOAD _ SIZE 式中, FEC— PARITY _ SIZE为对数据帧进行编码后增加的校验位,
FEC _ i }Xa4 ) _ S/ZE为信息码长, / g 为数据帧的长度, /ec。j5¾e为码字偏 若在突发数据块当前发送周期内发送的最后一个数据帧为第一数据帧, 且所述第一数据帧的长度 Z g 与所述第二数据帧对应的 /eCi s 之和小于 LDPC对应的信息码长 193*8, 则将 + 作为所述第一数据帧对应 的码字偏移量, 并根据所述第一数据帧对应的码字偏移量在第一映射表, 即 表 1中, 查找对应的、 表示需要在所述第一数据帧后插入的 IDLE块的数量。 表 1中描述的是码字偏移量与需要插入的 IDLE块数量之间的对应关系。
图 4a为突发数据块插入 IDLE前的示意图,图 4b为突发数据块插入 IDLE 后的示意图。 如图 4a及图 4b所示, 突发数据块本身的 IDLE块用斜线与插 入的 IDLE块进行区别, 数据帧 FrmO、 数据帧 Frml、 数据帧 Frm2的码字偏 移量均大于 LDPC对应的信息码长 193*8, 则可以通过编码开销的计算公式 FEC _ Overhead()函数计算出在数据帧 FrmO、 数据帧 Frml、 数据帧 Frm2后分 别需要插入的 IDLE块数量,数据帧 Frm3的码字偏移量小于 LDPC对应的信 息码长 193*8, 则可以通过对表 1进行查询得到数据帧 Frm3后需要插入的 IDLE块数量。 例如, 若数据帧 Frm3对应的码字偏移量为 66*8, 而 66*8处 于表 1中的码字偏移量范围 (65*8, 78*8]之内, 通过查表可知, 需要在数据帧 Frm3后插入 24个 IDLE块, 该 24个 IDLE块对应的码字类型为五个短码加 一个短码截断码。
表 1
Figure imgf000014_0001
在上述突发数据块插入 IDLE 的过程中, 对于满足长码参数的数据帧, 可以直接通过 FEC— Ow^e^O函数计算出数据帧的编码开销, 从而确定需要 在数据帧后插入的 IDLE块的数量; 对于最后剩余的不满足长码参数的数据 帧, 通过查询表 1得到应该在数据帧后插入的 IDLE块的数量, 从而实现系 统根据突发数据的长度自适应的选择需要插入的 IDLE块的数量。
在突发数据块删除 IDLE的过程中, 接收数据块或 IDLE块, IDLE块可 以分为普通 IDLE块和结束指示 IDLE块, gp, EOBJDLE, EOB_IDLE用于 指示所述突发数据的结束位置。 由于在插入 IDLE 的过程中可以准确判断出 最后一个数据帧的位置, 因此, 在插入 IDLE块的时候, 在最后一个数据帧 后插入的 IDLE中,首个 IDLE块可以为 EOB_IDLE,在删除 IDLE的过程中, 如果检测到 EOB_IDLE, 则表示当前突发有效数据已经结束。
统计接收到的数据块的数量, 若接收到的数据块数量等于以 64B为单位 的长码对应的信息码长 193, 则删除随后接收到的、 与以 64B为单位的长码 对应的校验码 28的数值相同的 28个 IDLE块。
如果接收到 EOB_IDLE, 根据已经接收到的数据块数量, 在第二映射表, 即表 2中, 查找对应的、 表示需要删除的 IDLE块的数量, 表 2中描述的是 已经接收到的数据块的数量与需要删除的 IDLE块数量之间的对应关系, 并 删除随后接收到的、 包括结束指示 IDLE块在内的 IDLE块。
图 5a为突发数据块删除 IDLE前的示意图,图 5b为突发数据块删除 IDLE 后的示意图。 如图 5a及图 5b所示, 突发数据块本身的 IDLE块用斜线与插 入的 IDLE块进行区别, 若分别接收到的数据块 FrmO、数据块 Frml、 数据块 Frm2的数量等于以 64B为单位的长码对应的信息码长 193, 则删除随后接收 到的校验码长 28的数值相同的数个 IDLE ±夬,统计接收到的数据块 Frm3,并 检测到 EOBJDLE, 则通过对表 2进行查询得到数据块 Frm3后需要删除的 IDLE块数量。例如,若在检测到 EOB_IDLE时,统计的接收到的数据块 Frm3 的数目为 67, 而 67处于表 2的数据块数量范围 (65,78]之内, 通过查表可知, 需要在数据块 Frm3后删除 24个 IDLE块, 该 24个 IDLE块对应的码字类型 为五个短码加一个短码截断码。
表 2
Figure imgf000015_0001
在上述突发数据块删除 IDLE 的过程中, 对于满足长码参数的数据块, 可以在统计接收到的数据块的数量等于长码对应的信息码长时, 删除随后接 收到的, 与长码对应的校验码的数值相同的数个 IDLE块; 对于最后剩余的 不满足长码参数的数据块, 通过查询表 2得到应该在数据块后删除的 IDLE 块的数量, 从而使得系统可以根据接收到的突发数据块自适应的选择需要删 除的 IDLE块的数量。
图 6为本发明网络设备实施例一的结构示意图。 如图 6所示本实施例提 供的网络设备 10可以包括:
处理模块 11, 用于当在突发数据块的一个发送周期内发送最后一个数据 帧时, 判断出当所述第一数据帧的长度与第二数据帧对应的码字偏移量之和 小于第一前向纠错 FEC类型对应的第一参数, 则将所述第一数据帧的长度 与第二数据帧对应的码字偏移量之和作为所述第一数据帧对应的码字偏移 量, 并根据所述第一数据帧对应的码字偏移量确定需要在所述第一数据帧后 插入的 IDLE块的数量, 所述第二数据帧为所述突发数据块中位于所述第一 数据帧之前紧邻所述第一数据帧的数据帧;
插入模块 12, 用于根据确定的 IDLE块的数量, 在所述第一数据帧后插 入 IDLE块。
所述处理模块 11具体可以用于根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下分别对要发送的所述第一数据帧产生的校验位的数量, 所述多种 FEC类型包括低密度奇偶校验码 LDPC、 里德-所罗门码 RS和卷积 码 CC类型, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大值 的数量, 根据所选择的所述校验位数量, 确定需要在所述第一数据帧后插入 的 IDLE块的数量。
进一步地,所述处理模块 11具体可以用于根据所述第一数据帧对应的码 字偏移量, 比较所述多种 FEC类型下分别对要发送的所述第一数据帧产生的 校验位的数量, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大 值的数量, 在存储的第一映射表中查找对应的、 表示需要在所述第一数据帧 后插入的 IDLE块的数量, 所述第一映射表为所述多种 FEC类型下产生的所 述校验位数量与需要插入的 IDLE块数量之间的对应关系; 所述插入模块 12 具体用于根据查找所述第一映射表获得的 IDLE块的数量, 在所述第一数据 帧后插入 IDLE块。
其中, 所述在所述第一数据帧后插入的 IDLE中, 首个 IDLE块为结束指 示 IDLE块, 所述结束指示 IDLE块用于指示所述突发数据块的结束位置。 所述处理模块 11具体可以用于在发送第三数据帧时,计算所述第三数据 帧的长度, 判断所述第三数据帧的长度是否大于所述当前发送周期剩余的长 度, 若大于, 则获知所述第一数据帧为所述突发数据块在当前发送周期内发 送的最后一个数据帧, 所述第三数据帧为所述突发数据块中位于所述第一数 据帧之后且紧邻所述第一数据帧的数据帧。
所述第一 FEC类型对应的第一参数为所述第一 FEC类型对应的信息码 长。
本实施例提供的网络设备, 可用于执行上述方法实施例的技术方案, 其 实现原理及技术效果类似, 此处不再赘述。
图 7为本发明网络设备实施例二的结构示意图。 如图 7所示, 本实施例 提供的网络设备 20可以包括:
接收模块 21, 用于接收到所述突发数据块;
确定模块 22, 用于若检测到所述突发数据的最后一个数据块, 则根据已 经接收到的数据块的数量, 确定需要删除的 IDLE块的数量;
删除模块 23, 用于根据所述确定需要删除的 IDLE块的数量, 比较多种 FEC类型下分别对所述已接收到的数据块产生校验位的数量, 所述多种 FEC 类型包括 LDPC、 RS和 CC类型, 从所述多种 FEC类型下分别产生的校验位 数量中选择非最大值的数量, 根据所选择的所述校验位数量, 删除随后接收 到的 IDLE块。
所述确定模块 22 具体可以用于检测到用于指示所述突发数据块的结束 位置的结束指示 IDLE块后,则紧邻所述结束指示 IDLE块之前的数据块即为 所述突发数据块的最后一个数据块。
进一步地,所述确定模块 22具体可以用于根据已经接收到的数据块的数 量, 比较多种前向纠错 FEC类型下分别对所述已接收到的数据块产生校验位 的数量, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大值的数 量, 在存储的第二映射表中查找对应的、 表示需要删除的 IDLE块的数量, 所述第二映射表为所述多种 FEC类型下产生的所述校验位数量与需要删除的 IDLE块数量之间的对应关系; 所述删除模块 23具体可以用于根据查找所述 第二映射表获得的所述 IDLE块的数量, 删除随后接收到的、 包括结束指示 IDLE块在内的 IDLE块。
本实施例提供的网络设备, 可用于执行上述方法实施例的技术方案, 其 实现原理及技术效果类似, 此处不再赘述。
图 8为本发明网络设备实施例三的结构示意图。 如图 8所示, 本实施例 提供的网络设备 30可以包括存储器 31和处理器 32, 其中, 存储器 31中存 储有一组程序代码, 处理器 32用于调用存储器 31中的程序代码并执行以下 操作:
当在突发数据块的一个发送周期内发送最后一个数据帧时, 判断出当所 述第一数据帧的长度与第二数据帧对应的码字偏移量之和小于第一前向纠 错 FEC类型对应的第一参数, 则将所述第一数据帧的长度与第二数据帧对 应的码字偏移量之和作为所述第一数据帧对应的码字偏移量, 并根据所述第 一数据帧对应的码字偏移量确定需要在所述第一数据帧后插入的 IDLE块的 数量, 所述第二数据帧为所述突发数据块中位于所述第一数据帧之前紧邻所 述第一数据帧的数据帧; 根据确定的 IDLE块的数量, 在所述第一数据帧后 插入 IDLE块。
具体地, 根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下 分别对要发送的所述第一数据帧产生的校验位的数量, 所述多种 FEC类型包 括低密度奇偶校验码 LDPC、里德-所罗门码 RS和卷积码 CC类型,从所述多 种 FEC类型下分别产生的校验位数量中选择非最大值的数量, 根据所选择的 所述校验位数量, 确定需要在所述第一数据帧后插入的 IDLE块的数量。
进一步地, 根据所述第一数据帧对应的码字偏移量, 比较所述多种 FEC 类型下分别对要发送的所述第一数据帧产生的校验位的数量, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大值的数量, 在存储的第一映 射表中查找对应的、 表示需要在所述第一数据帧后插入的 IDLE块的数量, 所述第一映射表为所述多种 FEC类型下产生的所述校验位数量与需要插入的 IDLE块数量之间的对应关系; 根据查找所述第一映射表获得的 IDLE块的数 量, 在所述第一数据帧后插入 IDLE块。
其中, 所述在所述第一数据帧后插入的 IDLE中, 首个 IDLE块为结束指 示 IDLE块, 所述结束指示 IDLE块用于指示所述突发数据块的结束位置。
在发送第三数据帧时, 计算所述第三数据帧的长度, 判断所述第三数据 帧的长度是否大于所述当前发送周期剩余的长度, 若大于, 则获知所述第一 数据帧为所述突发数据块在当前发送周期内发送的最后一个数据帧, 所述第 三数据帧为所述突发数据块中位于所述第一数据帧之后且紧邻所述第一数据 帧的数据帧。
所述第一 FEC类型对应的第一参数为所述第一 FEC类型对应的信息码 长。
本实施例提供的网络设备, 可用于执行上述方法实施例的技术方案, 其 实现原理及技术效果类似, 此处不再赘述。
图 9为本发明网络设备实施例四的结构示意图。 如图 9所示, 本实施例 提供的网络设备 40可以包括存储器 41和处理器 42, 其中, 存储器 41中存 储有一组程序代码, 处理器 42用于调用存储器 41中的程序代码并执行以下 操作:
接收到所述突发数据块, 若检测到所述突发数据的最后一个数据块, 则 根据已经接收到的数据块的数量, 比较多种 FEC类型下分别对所述已接收到 的数据块产生校验位的数量,所述多种 FEC类型包括 LDPC、 RS和 CC类型, 从所述多种 FEC类型下分别产生的校验位数量中选择非最大值的数量, 根据 所选择的所述校验位数量, 确定需要删除的 IDLE块的数量; 根据所述确定 需要删除的 IDLE块的数量, 删除随后接收到的 IDLE块。
具体地, 检测到用于指示所述突发数据块的结束位置的结束指示 IDLE 块后, 则紧邻所述结束指示 IDLE块之前的数据块即为所述突发数据块的最 后一个数据块。
进一步地, 根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类 型下分别对所述已接收到的数据块产生校验位的数量, 从所述多种 FEC类型 下分别产生的校验位数量中选择非最大值的数量, 在存储的第二映射表中查 找对应的、表示需要删除的 IDLE块的数量,所述第二映射表为所述多种 FEC 类型下产生的所述校验位数量与需要删除的 IDLE块数量之间的对应关系; 根据查找所述第二映射表获得的所述 IDLE块的数量, 删除随后接收到的、 包括结束指示 IDLE块在内的 IDLE块。
本实施例提供的网络设备, 可用于执行上述方法实施例的技术方案, 其 实现原理及技术效果类似, 此处不再赘述。 本实施例提供一种突发数据块中的 IDLE 的处理系统, 所述系统可以 包括第一网络设备和第二网络设备。
第一网络设备包括处理模块和插入模块, 具体内容参见上述实施例的 网络设备 10中的处理模块 11和插入模块 12, 此处不再赘述。
第二网络设备包括接收模块、 确定模块和删除模块, 具体内容参见上 述实施例的网络设备 20中的接收模块 21、 确定模块 22和删除模块 23, 此处不再赘述。
在本发明所提供的几个实施例中, 应该理解到, 所揭露的装置和方法, 可以通过其它的方式实现。例如, 以上所描述的装置实施例仅仅是示意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外 的划分方式, 例如多个单元或组件可以结合或者可以集成到另一个系统, 或 一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间的耦合或 直接耦合或通信连接可以是通过一些接口, 装置或单元的间接耦合或通信连 接, 可以是电性, 机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的, 作 为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个网络单元上。 可以根据实际的需要选择其中的部分或 者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单 元中。 上述集成的单元既可以采用硬件的形式实现, 也可以采用硬件加软件 功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元, 可以存储在一个计算机 可读取存储介质中。 上述软件功能单元存储在一个存储介质中, 包括若干指 令用以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络设备等) 或处理器 (processor) 执行本发明各个实施例所述方法的部分步骤。 而前述 的存储介质包括: U盘、移动硬盘、只读存储器(Read-Only Memory, ROM )、 随机存取存储器(Random Access Memory, RAM) 、 磁碟或者光盘等各种可 以存储程序代码的介质。
本领域技术人员可以清楚地了解到, 为描述的方便和简洁, 仅以上述各 功能模块的划分进行举例说明, 实际应用中, 可以根据需要而将上述功能分 配由不同的功能模块完成, 即将装置的内部结构划分成不同的功能模块, 以 完成以上描述的全部或者部分功能。 上述描述的装置的具体工作过程, 可以 参考前述方法实施例中的对应过程, 在此不再赘述。
最后应说明的是: 以上各实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述各实施例对本发明进行了详细的说明, 本领域的普通 技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征进行等同替换; 而这些修改或者替换, 并 不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims

权 利 要 求 书
1、 一种突发数据块中的空闲块 IDLE的处理方法, 其特征在于, 包括: 当在突发数据块的一个发送周期内发送最后一个数据帧时, 判断出当所 述第一数据帧的长度与第二数据帧对应的码字偏移量之和小于第一前向纠 错 FEC类型对应的第一参数, 则将所述第一数据帧的长度与第二数据帧对 应的码字偏移量之和作为所述第一数据帧对应的码字偏移量, 并根据所述第 一数据帧对应的码字偏移量确定需要在所述第一数据帧后插入的 IDLE块的 数量, 所述第二数据帧为所述突发数据块中位于所述第一数据帧之前且紧邻 所述第一数据帧的数据帧;
根据确定的 IDLE块的数量, 在所述第一数据帧后插入 IDLE块。
2、 根据权利要求 1所述的方法, 其特征在于, 所述根据所述第一数据帧 对应的码字偏移量确定需要在所述第一数据帧后插入的 IDLE块的数量, 包 括:
根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下分别对要 发送的所述第一数据帧产生的校验位的数量, 所述多种 FEC类型包括低密度 奇偶校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC 类型下分别产生的校验位数量中选择非最大值的数量, 根据所选择的所述校 验位数量, 确定需要在所述第一数据帧后插入的 IDLE块的数量。
3、 根据权利要求 2所述的方法, 其特征在于, 所述根据所述第一数据帧 对应的码字偏移量, 比较多种 FEC类型下分别对要发送的所述第一数据帧产 生的校验位的数量, 从所述多种 FEC类型下分别产生的校验位数量中选择非 最大值的数量, 根据所选择的所述校验位数量, 确定需要在所述第一数据帧 后插入的 IDLE块的数量, 包括:
根据所述第一数据帧对应的码字偏移量, 比较所述多种 FEC类型下分别 对要发送的所述第一数据帧产生的校验位的数量, 从所述多种 FEC类型下分 别产生的校验位数量中选择非最大值的数量, 在存储的第一映射表中查找对 应的、 表示需要在所述第一数据帧后插入的 IDLE块的数量, 所述第一映射 表为所述多种 FEC类型下产生的所述校验位数量与需要插入的 IDLE块数量 之间的对应关系;
相应的,所述根据确定的 IDLE块的数量,在所述第一数据帧后插入 IDLE 块, 包括:
根据查找所述第一映射表获得的 IDLE块的数量, 在所述第一数据帧后 插入 IDLE块。
4、 根据权利要求 1-3任一所述的方法, 其特征在于, 所述在所述第一数 据帧后插入的 IDLE中,首个 IDLE块为结束指示 IDLE块,所述结束指示 IDLE 块用于指示所述突发数据块的结束位置。
5、 根据权利要求 1所述的方法, 其特征在于, 还包括:
在发送第三数据帧时, 计算所述第三数据帧的长度, 判断所述第三数据 帧的长度是否大于所述当前发送周期剩余的长度, 若大于, 则获知所述第一 数据帧为所述突发数据块在当前发送周期内发送的最后一个数据帧, 所述第 三数据帧为所述突发数据块中位于所述第一数据帧之后且紧邻所述第一数据 帧的数据帧。
6、 根据权利要求 1所述的方法, 其特征在于, 所述第一 FEC类型对应 的第一参数为所述第一 FEC类型对应的信息码长。
7、 一种突发数据块中的空闲块 IDLE的处理方法, 其特征在于, 包括: 接收到所述突发数据块后,若检测到所述突发数据块的最后一个数据块, 则根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对所 述已接收到的数据块产生校验位的数量, 所述多种 FEC类型包括低密度奇偶 校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC类型 下分别产生的校验位数量中选择非最大值的数量, 根据所选择的所述校验位 数量, 确定需要删除的 IDLE块的数量;
根据所述确定需要删除的 IDLE块的数量, 删除随后接收到的 IDLE块。
8、 根据权利要求 7所述的方法, 其特征在于, 检测到所述突发数据块的 最后一个数据块, 包括:
检测到用于指示所述突发数据块的结束位置的结束指示 IDLE块后, 则 紧邻所述结束指示 IDLE块之前的数据块即为所述突发数据块的最后一个数 据块。
9、 根据权利要求 7或 8所述的方法, 其特征在于, 所述根据已经接收到 的数据块的数量, 比较多种前向纠错 FEC类型下分别对所述已接收到的数据 块产生校验位的数量, 从所述多种 FEC类型下分别产生的校验位数量中选择 非最大值的数量, 根据所选择的所述校验位数量, 确定需要删除的 IDLE块 的数量, 包括:
根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对 所述已接收到的数据块产生校验位的数量, 从所述多种 FEC类型下分别产生 的校验位数量中选择非最大值的数量, 在存储的第二映射表中查找对应的、 表示需要删除的 IDLE块的数量, 所述第二映射表为所述多种 FEC类型下产 生的所述校验位数量与需要删除的 IDLE块数量之间的对应关系;
相应的, 根据所述确定需要删除的 IDLE块的数量, 删除随后接收到的 IDLE块, 包括:
根据查找所述第二映射表获得的所述 IDLE块的数量, 删除随后接收到 的、 包括结束指示 IDLE块在内的 IDLE块。
10、 一种网络设备, 其特征在于, 包括:
处理模块, 用于当在突发数据块的一个发送周期内发送最后一个数据帧 时, 判断出当所述第一数据帧的长度与第二数据帧对应的码字偏移量之和小 于第一前向纠错 FEC类型对应的第一参数, 则将所述第一数据帧的长度与 第二数据帧对应的码字偏移量之和作为所述第一数据帧对应的码字偏移量, 并根据所述第一数据帧对应的码字偏移量确定需要在所述第一数据帧后插入 的 IDLE块的数量, 所述第二数据帧为所述突发数据块中位于所述第一数据 帧之前紧邻所述第一数据帧的数据帧;
插入模块, 用于根据确定的 IDLE块的数量, 在所述第一数据帧后插入
IDLE块。
11、 根据权利要求 10所述的网络设备, 其特征在于, 所述处理模块具体 用于:
根据所述第一数据帧对应的码字偏移量, 比较多种 FEC类型下分别对要 发送的所述第一数据帧产生的校验位的数量, 所述多种 FEC类型包括低密度 奇偶校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC 类型下分别产生的校验位数量中选择非最大值的数量, 根据所选择的所述校 验位数量, 确定需要在所述第一数据帧后插入的 IDLE块的数量。
12、 根据权利要求 10所述的网络设备, 其特征在于, 所述处理模块具体 用于: 根据所述第一数据帧对应的码字偏移量, 比较所述多种 FEC类型下分别 对要发送的所述第一数据帧产生的校验位的数量, 从所述多种 FEC类型下分 别产生的校验位数量中选择非最大值的数量, 在存储的第一映射表中查找对 应的、 表示需要在所述第一数据帧后插入的 IDLE块的数量, 所述第一映射 表为所述多种 FEC类型下产生的所述校验位数量与需要插入的 IDLE块数量 之间的对应关系;
所述插入模块具体用于:
根据查找所述第一映射表获得的 IDLE块的数量, 在所述第一数据帧后 插入 IDLE块。
13、 根据权利要求 10-12任一所述的网络设备, 其特征在于, 所述在所 述第一数据帧后插入的 IDLE中, 首个 IDLE块为结束指示 IDLE块, 所述结 束指示 IDLE块用于指示所述突发数据块的结束位置。
14、 根据权利要求 10所述的网络设备, 其特征在于, 所述处理模块具体 用于:
在发送第三数据帧时, 计算所述第三数据帧的长度, 判断所述第三数据 帧的长度是否大于所述当前发送周期剩余的长度, 若大于, 则获知所述第一 数据帧为所述突发数据块在当前发送周期内发送的最后一个数据帧, 所述第 三数据帧为所述突发数据块中位于所述第一数据帧之后且紧邻所述第一数据 帧的数据帧。
15、 根据权利要求 10所述的网络设备, 其特征在于, 所述第一 FEC类 型对应的第一参数为所述第一 FEC类型对应的信息码长。
16、 一种网络设备, 其特征在于, 包括:
接收模块, 用于接收到所述突发数据块,
确定模块, 用于若检测到所述突发数据块的最后一个数据块, 则根据已 经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对所述已接收 到的数据块产生校验位的数量, 所述多种 FEC 类型包括低密度奇偶校验码 LDPC、 里德-所罗门码 RS和卷积码 CC类型, 从所述多种 FEC类型下分别 产生的校验位数量中选择非最大值的数量, 根据所选择的所述校验位数量, 确定需要删除的 IDLE块的数量;
删除模块, 用于根据所述确定需要删除的 IDLE块的数量, 删除随后接 收到的 IDLE块。
17、 根据权利要求 16所述的网络设备, 其特征在于, 所述确定模块具体 用于:
检测到用于指示所述突发数据块的结束位置的结束指示 IDLE块后, 则 紧邻所述结束指示 IDLE块之前的数据块即为所述突发数据块的最后一个数 据块。
18、 根据权利要求 16或 17所述的网络设备, 其特征在于, 所述确定模 块具体用于:
根据已经接收到的数据块的数量, 比较多种前向纠错 FEC类型下分别对 所述已接收到的数据块产生校验位的数量, 从所述多种 FEC类型下分别产生 的校验位数量中选择非最大值的数量, 在存储的第二映射表中查找对应的、 表示需要删除的 IDLE块的数量, 所述第二映射表为所述多种 FEC类型下产 生的所述校验位数量与需要删除的 IDLE块数量之间的对应关系;
所述删除模块具体用于: 根据查找所述第二映射表获得的所述 IDLE块 的数量, 删除随后接收到的、 包括结束指示 IDLE块在内的 IDLE块。
19、 一种突发数据块中的 IDLE的处理系统, 其特征在于, 包括如权 利要求 10-15任一所述的第一网络设备和如权利要求 16-18任一所述的第 二网络设备。
PCT/CN2013/079411 2013-07-15 2013-07-15 突发数据块中的空闲块idle的处理方法、设备及系统 WO2015006908A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201380001423.9A CN104471888B (zh) 2013-07-15 2013-07-15 突发数据块中的空闲块idle的处理方法、设备及系统
PCT/CN2013/079411 WO2015006908A1 (zh) 2013-07-15 2013-07-15 突发数据块中的空闲块idle的处理方法、设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/079411 WO2015006908A1 (zh) 2013-07-15 2013-07-15 突发数据块中的空闲块idle的处理方法、设备及系统

Publications (1)

Publication Number Publication Date
WO2015006908A1 true WO2015006908A1 (zh) 2015-01-22

Family

ID=52345679

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/079411 WO2015006908A1 (zh) 2013-07-15 2013-07-15 突发数据块中的空闲块idle的处理方法、设备及系统

Country Status (2)

Country Link
CN (1) CN104471888B (zh)
WO (1) WO2015006908A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107786299B (zh) 2016-08-25 2021-06-08 华为技术有限公司 一种发送和接收业务的方法、装置和网络系统
CN109347598B (zh) * 2017-09-21 2022-03-11 中国移动通信有限公司研究院 校验码处理方法、电子设备及存储介质
CN110324110B (zh) * 2018-03-30 2020-10-27 华为技术有限公司 一种通信方法、通信设备及存储介质
CN110572237B (zh) * 2018-06-06 2021-12-31 华为技术有限公司 一种信号发送及中继方法和相关设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209116B1 (en) * 1997-10-09 2001-03-27 Hughes Electronics Corporation Adaptable overlays for forward error correction schemes based on trellis codes
CN101207481A (zh) * 2006-12-21 2008-06-25 日立通讯技术株式会社 加密装置
CN101488820A (zh) * 2008-01-14 2009-07-22 华为技术有限公司 数据发送方法、数据接收方法及相关设备
CN101631064A (zh) * 2008-07-14 2010-01-20 华为技术有限公司 一种数据发送与接收的方法、装置及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011144051A2 (zh) * 2011-05-20 2011-11-24 华为技术有限公司 数据传输方法、光线路终端和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209116B1 (en) * 1997-10-09 2001-03-27 Hughes Electronics Corporation Adaptable overlays for forward error correction schemes based on trellis codes
CN101207481A (zh) * 2006-12-21 2008-06-25 日立通讯技术株式会社 加密装置
CN101488820A (zh) * 2008-01-14 2009-07-22 华为技术有限公司 数据发送方法、数据接收方法及相关设备
CN101631064A (zh) * 2008-07-14 2010-01-20 华为技术有限公司 一种数据发送与接收的方法、装置及系统

Also Published As

Publication number Publication date
CN104471888B (zh) 2017-09-29
CN104471888A (zh) 2015-03-25

Similar Documents

Publication Publication Date Title
US10361810B2 (en) Data packet transmission/reception apparatus and method
US11368250B1 (en) Adaptive payload extraction and retransmission in wireless data communications with error aggregations
CN110943800A (zh) 数据包的发送方法、装置及系统、存储介质、电子装置
EP2847953B1 (en) Apparatus and method of transmitting and receiving packet in a broadcasting and communication system
CN108631937B (zh) 一种信息处理方法、装置及设备
WO2017092617A1 (zh) 一种错误估计的方法、基站及终端
CN112751644B (zh) 数据传输方法、装置及系统、电子设备
BR112019019039A2 (pt) método de transmissão de dados e dispositivo relacionado
WO2015006908A1 (zh) 突发数据块中的空闲块idle的处理方法、设备及系统
US20230291502A1 (en) Data Processing Method and Related Apparatus
WO2014101087A1 (zh) 编码/解码方法、装置及系统
US20140215292A1 (en) Lt staircase fec code
US9866350B2 (en) Streaming media packet processing method, WiFi chip, and mobile terminal
JP5600774B1 (ja) データ伝送装置及び方法
CN110299970B (zh) 一种数据报文发送方法及装置
JP7282895B2 (ja) データの再送復号方法、装置、システム及び通信装置
CN110299971B (zh) 一种数据报文接收方法及装置
WO2016082230A1 (zh) 一种虚拟载波侦听方法及装置
CN110213259A (zh) 电力测控报文的udp传输方法、发送终端及接收终端
WO2018133415A1 (zh) 一种物理编码子层的数据编解码方法和装置、存储介质
CN110299973B (zh) 一种数据滚动传输的接收方法及装置
CN110299969B (zh) 一种数据滚动传输的发送方法及装置
KR20150075410A (ko) 플렉서블 반복 응답 메커니즘을 사용하는 통신 시스템 및 이의 운영 방법
CN108809479A (zh) 数据处理方法和数据处理装置
JP2006314120A (ja) 無線通信方法

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: 13889502

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13889502

Country of ref document: EP

Kind code of ref document: A1