EP3560104A1 - Procédé et dispositif de correction d'erreurs à faible latence pour recouvrement de paquets de données - Google Patents
Procédé et dispositif de correction d'erreurs à faible latence pour recouvrement de paquets de donnéesInfo
- Publication number
- EP3560104A1 EP3560104A1 EP17832531.2A EP17832531A EP3560104A1 EP 3560104 A1 EP3560104 A1 EP 3560104A1 EP 17832531 A EP17832531 A EP 17832531A EP 3560104 A1 EP3560104 A1 EP 3560104A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- block
- sub
- repair
- symbols
- data block
- 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.)
- Withdrawn
Links
Classifications
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3707—Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
- H03M13/3715—Adaptation to the number of estimated errors or to the channel state
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/373—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon 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/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/251—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with block coding
-
- 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
-
- 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/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory 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/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- 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/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
- H03M13/353—Adaptation to the channel
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3769—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using symbol combining, e.g. Chase combining of symbols received twice or more
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3972—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sliding window techniques or parallel windows
Definitions
- the present invention relates to the transmission of data in a communication channel between a transmitting device and a receiving device, and in particular, the implementation of an error correction mechanism or loss of data.
- AL-FEC Forward Error Correction
- 3GGP 3rd Generation Partnership Project
- eMBMS Extended Multimedia Broadcast Services
- RS Reed-Solomon
- MDS maximum distance separable
- repair symbols RS are obtained by operations performed on a Galois field GF (Galois Field) such as GF (2 m ).
- GF Galois Field
- the repair symbols are computed by a linear combination of the source symbols using coefficients belonging to the body GF (2 m ).
- repair symbol calculations are performed on the GF ( 28 ) body, which limits the size n of the processed data blocks to less than 256 symbols.
- the block AL-FEC encodings have the disadvantage of requiring to wait for the repair symbols transmitted at the end of a data block to be able to restore a lost or erroneous symbol in the data block.
- the recovery time of a source symbol can therefore reach the reception time of a data block, if the error occurs on the first source symbol of the data block.
- the access time to a stream of data blocks can reach the reception duration of a block if the instant of access to the stream occurs between the instants receiving start of the first and second source symbols.
- all the source symbols of a data block have the same high level of protection, since all the repair symbols are calculated from all the source symbols of the block.
- LDPC Low Density Parity Check
- Block-based AL-FEC encodings are widely used because of their multiple performance advantages, particularly in terms of repair capacity, complexity and flexibility.
- block-based ALFEC encodings have a high latency of repair. If one of the first symbols in a data block is erroneous or lost, it can not be restored until the repair symbols at the end of the block are received.
- Convolutional encodings have also been proposed, applying a sliding window mechanism.
- the repair symbols are computed on the fly, on the source symbols belonging to the sliding window, and sent after the source symbols of the window.
- a repair symbol is calculated on at most W source symbols and sent all k source symbols, k ⁇ W.
- the restoration of a lost or erroneous source symbol can therefore be performed as soon as a repair symbol is received. , before all source symbols are received.
- this type of coding raises an access latency problem, when a terminal accesses a data stream of a broadcast transmission or point-to-multipoint transmission, after the start of the transmission. Indeed, the terminal must wait at least W source symbols before receiving the first exploitable repair symbol.
- each loss of source symbol increases the access time to the data stream of k + 1 source symbols.
- a drifting effect occurs when the symbol loss rate approaches the ratio of the number of repair symbols to the number of source symbols transmitted. In this case, it is not possible to restore lost or erroneous symbols.
- Embodiments are provided for a method of transmitting data, comprising: encoding data to be transmitted as source symbols grouped into data blocks, allocating each data block a number of repair symbols, and each block of data: divide the source symbols of the data block into sub-blocks, the number of sub-blocks being equal to the number of repair symbols allocated to the data block, assigning a repair symbol to each sub-block of the data block, calculating the repair symbol of each sub-block of the data block by a linear combination of source symbols of the sub-block and the preceding sub-block source symbols in the data block, and transmit the data block in a stream of data blocks, successively transmitting each sub-block of the data block, each sub-block -block being transmitted by transmitting the source symbols of the sub-block, followed by the repair symbol of the sub-block.
- each repair symbol of the data block is computed by a linear combination of at least a portion of the source symbols of the data block, so that each source symbol of the data block is used to compute the same number, to a close, of repair symbols of the data block.
- each repair symbol of the data block is calculated by a linear combination of all the previously transmitted source symbols of the data block.
- a plurality of repair symbols calculated from at least a portion of the source symbols of the last sub-block of the data block are transmitted at the end of the data block.
- each sub-block of the data block comprises the same number, to a close, of source symbols.
- the data block comprises as many sub-blocks as repair symbols transmitted at the end of the data block.
- the method comprises steps of defining a format of the data block, consisting in: defining a first number of repair symbols to be transmitted at the end of the data block, determining a number of sub-blocks of the data block according to the first number and a number of repair symbols allocated to the data block, or determine the number of repair symbols allocated to the data block according to the number of sub-blocks of the data block and of the first number, calculating a minimum number of source symbols per sub-block by dividing the number of source symbols in the data block by the number of sub-blocks, the minimum number of source symbols being set equal to the largest lower integer or equal to the result obtained from the division, and calculate a difference between the number of source symbols of the data block and the product of the number of sub-blocks in the data block by the number m inimum of source symbols by sub-block, the deviation defining a number of source symbols to be added in the sub-blocks of the data block.
- the gap defines a number of sub-blocks of the data block
- the method comprises the steps of: receiving from a user terminal in point-to-point mode, a message signaling poor reception conditions, and transmitting to the terminal in point-to-point mode, in response to the message, at least one repair symbol for each block of data transmitted after the receipt of the message.
- Embodiments may also relate to a method of receiving data transmitted in accordance with the previously defined transmission method, the receiving method comprising successive steps of receiving the source symbol sub-blocks of a data block, receiving each sub-block being followed by receiving a repair symbol associated with the sub-block, each repair symbol corresponding to a linear combination of the source symbols of the sub-block associated with the repair symbol.
- the receiving method comprises the steps of: detecting a missing or erroneous source symbol in the data block, and upon receiving a first repair symbol following the missing or erroneous source symbol, calculating the missing or erroneous source symbol by solving an equation resulting from the equality between the first repair symbol and a linear combination corresponding to the first repair symbol.
- the reception method comprises the steps of: detecting bad reception conditions of data blocks transmitted in a multicast mode,
- Embodiments may also relate to a data transmission device configured to implement the previously defined transmission method.
- Embodiments may also relate to a data receiving device configured to implement the reception method defined above.
- FIG. 1 schematically represents a data transmission system
- FIG. 2 diagrammatically represents a conventional format for transmitting data generated in a transmission device of the transmission system
- FIG. 3 illustrates a method for calculating repair symbols of the format represented in FIG. 2,
- FIG. 4 diagrammatically represents another conventional format for transmitting data generated in the transmission device of the transmission system
- FIG. 5 illustrates a data transmission format and a method for calculating repair symbols of the format shown in FIG. 4,
- FIG. 7 illustrates an exemplary data transmission format obtained using the procedure shown in FIG. 6,
- FIG. 8 represents steps of a procedure for determining a data transmission format, according to another embodiment
- FIGS. 9 to 14 illustrate examples of data transmission formats obtained using the procedure illustrated in FIG. 8, and examples of methods of calculating the repair symbols
- FIGS. 15 to 23 show curves illustrating the performances obtained using the data transmission formats presented above.
- FIG. 24 schematically represents a content broadcasting system with several mobile terminals.
- the ENC encoding module is configured to assemble the source symbols into data blocks including repair symbols.
- the transmission module XMT is configured to put the data of the data blocks received from the encoding module ENC into a transmission format adapted to the transmission channel CH.
- the transmission channel CH may be a real-time channel, for example a link formed through the Internet, or a content-broadcasting link to a plurality of terminals, or a point-to-point link for transmitting voice or voice. the image.
- the receiver device RDV comprises a reception module REC, a decoding module DEC, and a assembly module DASM for restoring the transmitted data IDT in their initial format.
- the reception module REC converts the signals transmitted by the transmission channel CH into symbols comprising source symbols and repair symbols.
- the decoding module DEC detects errors or the possible absence of symbols in the symbols produced by the reception module REC, and attempts to reconstruct any missing or erroneous source symbols using the repair symbols received. For example, errors can be detected using parity bits in transmitted symbols.
- the assembly module DASM assembles the source symbols provided by the DEC decoder module to generate ODT output data corresponding to the input data IDT transmitted.
- FIG. 2 represents a conventional format of a data block DB [k, k + r] that can be provided by the encoding module ENC.
- each repair symbol R1 [1, k] to R1 [1, k] is represented by an arrow extending over all the source symbols from which it is calculated.
- each of the repair symbols RI [1,49] to R9 [1,49] is calculated from the 49 source symbols of the DB data block [49,58].
- the matrix of coefficients ⁇ ⁇ ! and parameters defining the format of the transmitted data blocks can be transmitted to the DEC decoding module.
- FIG. 4 represents another conventional format of an SST symbol stream [k, w] that can be provided by the encoding module ENC.
- the symbol flow comprises a succession of groups of k source symbols S [1] -S [k], S [k + 1] -S [2k], S [n-k + 1] -S [nk], each group being followed by a repair symbol R [kw, k], R [2k-w, 2k], Rl [nkw, nk], calculated on the w previous source symbols in the data stream, with w> k.
- each repair symbol R [xw, x] is represented by an arrow extending over the w source symbols from which they are calculated.
- the repair symbol R [7.21] is transmitted after the source symbol group SB [18.21] and is calculated from the source symbols S [7] to S [21].
- the next repair symbol R [10,24] in the SST flow [3,15] is transmitted after the source symbol group SB [21,24] and is calculated from the source symbols S [10] to S [24 ].
- Repair symbols R [i, j] can also be calculated by equation (1) or (2) ⁇ In the example of Figure 5, it is possible to restore a lost or erroneous source symbol upon receipt of the next repair symbol.
- the access time to a source symbol of the stream can be infinite, if the transmission of the stream produces at least one error in each of the successive groups SB [nk-2, nk] of 3 source symbols on which are calculated the repair symbols.
- the restoration and access latencies are reduced by dividing the bulk data stream and dividing each transmitted data block into subblocks and assigning each subblock a block. of data, a repair symbol that is transmitted immediately following the last source symbol of the sub-block. Any remaining repair symbols are transmitted after the last sub-block of the data block.
- step S1 the number of sub-blocks NB is set equal to the number of repair symbols allocated to the data block, ie n - k.
- step S2 the number KB of source symbols per sub-block of the data block is calculated by the following equation:
- KB FL (k / (nk)) (3) in which the function FL (x) provides the large integer less than or equal to the number x.
- a difference ⁇ between the number k of source symbols in the data block and the product of the numbers KB is NB is calculated.
- the number ⁇ represents the number of remaining source symbols, not assigned to one of the sub-blocks of the data block, if all the sub-blocks of the data block comprise KB source symbols.
- the number ⁇ is used to specify that the division of the sub-block data block comprises ⁇ sub-blocks of (KB + 1) source symbols and (NB- ⁇ ) sub-blocks of KB source symbols.
- the ⁇ sub-blocks of (KB + 1) source symbols can be indifferently positioned at the beginning or at the end of the data block. Alternatively, ⁇ source symbols can be removed from one of the sub-blocks, for example the first or the last sub-block of the data block.
- the PI procedure ends by providing the numbers KB, NB and ⁇ . The PI procedure therefore results in a division of each block of data into ⁇ sub-blocks of (KB + 1) source symbols and (NB - ⁇ ) sub-blocks SB of KB source symbols.
- the latency of repair or access to the data stream in the event of loss of p source symbols (p ⁇ nk) in a data block, is less than the reception time of the p repair symbols R [i, j ] of the data block.
- the number of source symbols lost in a data block is greater than the number (n - k) of repair symbols per data block, the data block being received is not repairable; it is therefore necessary to wait for the reception of the next data block.
- FIG. 7 represents an exemplary format of a data block DB defined by the procedure PI and a mode of calculation of the repair symbols.
- the data block DB comprises sub-blocks SB [1-5] (including the source symbols 1 to 5 of the DB data block), SB [6-10], SB [11-15], SB [16-20], SB [21-25], each comprising 5 source symbols, and the sub-blocks SB [26-31], SB [32-37], SB [38-43] and SB [44- 49] each comprising 6 source symbols.
- the first repair symbol R1 [1,5], obtained by a linear combination of the source symbols S [1] to S [5] is transmitted immediately after the first sub-block SB [1-5], either following the source symbol S [5].
- the second repair symbol R1 [l, 10] obtained by a linear combination of the source symbols S [1] to S [10] is transmitted immediately after the second sub-block SB [6- 10], and so on. .
- the latency of repair or access to the data stream, in the event of the loss of a source symbol is less than the reception time of 5 source symbols and the repair symbol that follows.
- Figure 8 shows steps S 10 to S 13 of a procedure P2 for determining a data block format, according to another embodiment.
- the procedure P2 makes it possible to determine the number NB of sub-blocks SB per block of data and the number of source symbols KB per sub-block from the number k of source symbols per block of data, of the total number n of symbol by data block and a number Q of repair symbols to be assigned to the last sub-block of each data block.
- the parameters KB and NB provided by the PI procedure are then considered as minimum values for the number KB and maximum for the number NB.
- the number Q of repair symbols allocated to the last sub-block is set to 1.
- step S10 the number NB of sub-blocks is calculated by subtracting the quantity Q - 1 from the number n - k of repair symbols per block of data.
- step S11 the number KB of source symbols is calculated by dividing the number k of source symbols by data block by the number NB of sub-blocks obtained in step S10. The number KB is set equal to largest integer less than the result of k / NB division.
- the numbers NB and KB are obtained by the following equations:
- step S 12 the difference ⁇ between the number k of source symbols in the data block and the product of numbers KB is NB.
- the number ⁇ is equal to k - NB x KB.
- step S13 the procedure P2 returns the numbers KB, NB and ⁇ thus calculated.
- the procedure P2 makes it possible to define a division of a data block of k source symbols and (nk) repair symbols, comprising for example (NB - ⁇ ) sub-blocks including KB source symbols and ⁇ sub-blocks comprising ( KB + 1) source symbols, each sub-block being followed by a repair symbol R [i, j] calculated on at least a part of the previous source symbols in the data block, for example by equation (1) or (2).
- the parameters KB, NB and ⁇ thus calculated can be transmitted to the DEC decoding module so that it can locate the sub-blocks and the repair symbols in the transmitted data blocks.
- the procedure P2 provides a number NB of sub-blocks NB equal to n - k (number of repair symbols in a data block), and a number KB of source symbols per sub -block equal to FL (k / (n - k)), according to the format defined by the procedure Pl.
- the procedure P2 provides a number NB of sub-blocks equal to 9, and a number KB of source symbols per sub-block equal to 5 with a difference ⁇ equal to 4.
- the procedure P2 provides a number NB of sub-blocks SB equal to 1, and therefore a number KB of source symbols by sub-units. block equal to the number k of source symbols in the data block. We thus find the format of Figure 3, without division of the data block into sub-blocks.
- step S 10 is replaced by a step of calculating the number r of repair symbols per data block, or the total number n of symbols per data block.
- the number r of repair symbols per data block is equal to the number NB of sub-blocks per data block plus the number Q1 of repair symbols to be added at the end of the data block, not counting the repair symbol. assigned to the last sub-block of the data block.
- the procedure P2 then provides the number r of repair symbols or the total number n of symbols per data block, instead of the number NB of sub-blocks per data block. It may also be provided to set the number r of repair symbols per data block and to determine the number Q of repair symbols at the end of the data block, depending on the number r and the number NB of sub-blocks by block of data.
- FIG. 9 represents an exemplary format of a data block DB with 49 source symbols and 9 repair symbols, obtained by the procedure P2.
- the number Q of repair symbols at the end of the data block DB is chosen equal to 3.
- sub-block 9 thus comprises sub-blocks SB [1, 7], SB [8, 14], SB [15, 21], SB [22, 28], SB [29, 35], SB [36,42] and SB [42,49], each sub-block being immediately followed by a repair symbol, respectively R1 [1,7], R2 [1,4], R3 [1,221], R4 [1,28], R5 [1,35], R6 [1,442] and R7 [1,449].
- the last sub-block SB [42,49] is followed by three repair symbols R7 [1,49], R8 [1,49] and R9 [1,49], according to the parameter Q chosen equal to 3.
- the latency repair or access to such a data block in case of loss of a source symbol is less than or equal to the reception time 7 source symbols plus a repair symbol.
- the source symbols of the first sub-block SB [1,5], SB [1,7] are protected by all the repair symbols allocated to the data block DB.
- the last sub-block SB [44, 49], SB [43,49] of the data block DB is protected by only one repair symbol R9 [1,49] in the example of the figure 7, and by the three repair symbols R7 [1,49], R8 [1,49] and R9 [1,490] in the example of FIG. 9. if the number of source symbols lost at the beginning of the block is greater than the number of repair symbols, it is not possible to restore the lost source symbols of the DB data block, which requires waiting for the reception of the source symbols the next block of data.
- the data block is divided into NB sub-blocks with the NB - ⁇ first sub-blocks SB each comprising KB source symbols from (b-KB + 1) to ((b + 1 ) -KB), b varying from 0 to ( ⁇ - ⁇ -2), and the last ⁇ sub-blocks SB each comprising (KB + 1) source symbols from (b-KB + b - NB + ⁇ -1) to ((b + 1) -KB + b - NB + ⁇ ), b varying from ( ⁇ - ⁇ -1) to (NB-1).
- the last NB-1 repair symbols can be calculated according to the source symbols from (b-KB + 1) to k, when b is less than ( ⁇ - ⁇ -1), and (b-KB + b - NB + ⁇ - 1) to k, when b is greater than ( ⁇ - ⁇ -2). As the number of source symbols from which some repair symbols are calculated is reduced, the calculation of the repair symbols and the restoration calculations of a source symbol are simplified.
- the size and distribution of the sub-blocks in the data block DB is unchanged from the format shown in FIG. 9.
- the repair symbols R1 to R3 are always calculated from the first source symbol S [1] of the block of DB data.
- repair symbols R4 [8.28], R5 [15.35], R6 [22, 42] and R7 [29.49] are calculated from the 21 preceding source symbols
- the repair symbol R8 [ 36,49] is calculated from the last 14 source symbols S [36] to S [49] of the data block DB
- the repair symbol R9 [43,49] is calculated from the last 7 source symbols S [ 43] to S [49] of the DB data block.
- FIG. 11 shows an exemplary format of a data block DB with 49 source symbols and 9 repair symbols, obtained by the procedure P2.
- the number Q of repair symbols at the end of the data block DB is chosen equal to CL ((n - k) / 2), ie 5, the function CL (x) representing the smallest integer greater than or equal to the number x.
- the choice of Q set at 5 leads to a division of the data block DB into a sub-block of 9 source symbols and 4 sub-blocks of 10 source symbols .
- 11 comprises 4 sub-blocks SB [1,10], SB [11,20], SB [21,30], SB [31,40] comprising 10 source symbols and one sub-block -block SB [41,49] of 9 source symbols, each sub-block being immediately followed by a repair symbol R1 [1,10], R2 [1,20], R3 [1,30], R4 [1 , 40] and R5 [1,49].
- the last sub-block SB [41, 49] is followed by five repair symbols R5 [1.49], R6 [1.49], R7 [1.49], R8 [1.49] and R9 [1, 49], according to the parameter Q chosen equal to 5.
- FIG. 12 shows an exemplary format of a DB data block with 49 source symbols and 9 repair symbols, derived from the format of FIG. 11, and in which each source symbol is protected by five repair symbols.
- the size and distribution of the sub-blocks in the data block DB is unchanged from the format shown in FIG. 11.
- the repair symbols R1 to R5 are all calculated from the first source symbol S [1] of the block of DB data.
- the other repair symbols R6 [11,49], R7 [21,49], R8 [31,49] and R9 [41,49] are respectively calculated from the source symbols S [1 1], S [21], S [31] and S [41].
- FIG. 13 shows an exemplary format of a data block DB with 49 source symbols and 9 repair symbols, obtained by the procedure P2, when the number Q of repair symbols at the end of the data block DB is chosen. equal to 6.
- 13 thus comprises 3 sub-blocks SB [1,12], SB [13,24] and SB [25,36] comprising 12 source symbols and an SB sub-block [37,49] of 13 source symbols, each sub-block being immediately followed by a repair symbol RI [1,12], R2 [1,24], R3 [1,36] and R4 [1,49].
- the last sub-block SB [37,49] is followed by six repair symbols R4 [1,4,], R5 [1,49], R6 [1,49], R7 [1,49], R8 [1, 49] and R9 [1,49], according to the parameter Q chosen equal to 6.
- FIG. 14 shows an exemplary format of a DB data block with 49 source symbols and 9 repair symbols, derived from the format of FIG. 13, and in which each source symbol is protected by six repair symbols.
- the size and distribution of the sub-blocks in the data block DB is unchanged from the format shown in FIG. 13.
- the repair symbols R1 to R6 are always calculated from the first source symbol S [l] of the DB data block.
- the other repair symbols R7 [13,49], R8 [25,49] and R9 [37,49] are calculated from the source symbols S [13], S [25] and S [37], respectively.
- Figures 15 to 18 show variation curves of the probability of lost symbol RT repair time, for different data block formats. These curves were obtained by simulating a transmission of blocks of 100 source symbols and 125 symbols in total, with a bit rate of 1 Mb / s. The transmission time was set at 100 ms. Each measurement was obtained by simulating the transmission of 10 7 source symbols, or 10 5 blocks of data. Symbol losses are obtained from a Bernouilli loss model. The repair time of a source symbol corresponds to the time between the moment when the source symbol should have been received in the absence of an error and the moment when the source symbol is restored.
- Figure 15 shows curves C1 to C5 of variation in repair probability versus repair time, when all repair symbols are transmitted at the end of the data block ( Figure 3).
- Curves C1 to C5 were obtained with symbol loss rates at 1, 5, 10, 15 and 20%, respectively.
- the repair probability is 0.4 and 1, for repair times of about 50 ms and 90 ms, respectively.
- the lost symbol repair time gradually increases as the symbol loss rate increases.
- the repair time goes to about 820 ms and 92 ms with probabilities of 0.4 and 1, respectively.
- the repair time increases to about 91 ms and 96 ms, with probabilities of 0.4 and 1, respectively.
- the repair time increases to about 94 ms and 98 ms, with probabilities of 0.4 and 1, respectively.
- the repair time increases to about 96 ms and 100 ms with probabilities of 0.4 of 1, respectively.
- FIG. 16 shows curves Ci 1 to C 15 of variation in the probability of repair of symbols lost as a function of the repair time, when the format of the transmitted data blocks comprises as many sub-blocks as of repair symbols at the end of the block of data, and when all the sub-blocks are protected substantially by the same number of repair symbols (Figure 12).
- Curves Ci to C15 were obtained with symbol loss rates at 1, 5, 10, 15 and 20%, respectively.
- the lost symbol repair time is between about 3 and 7 ms, with a probability of 0.4.
- the repair probability is 1 for a symbol repair time lost at approximately 16 ms. This repair time increases gradually as the symbol loss rate increases.
- the symbol repair time lost reaches about 50 ms with a probability close to 1.
- this repair time goes to about 50 ms and 96 ms with probabilities of 0.9 and 1, respectively.
- the lost symbol repair time increases to about 74 ms and 98 ms with probabilities of 0.8 and 1, respectively.
- the lost symbol repair time increases to approximately 84 ms and 98 ms with probabilities of 0.8 and 1, respectively.
- the format of FIG. 12 thus displays much better performance in terms of lost symbol repair latency than the conventional format of FIG.
- Fig. 17 shows curves C21 to C25 of variation in the probability of repairing symbols lost as a function of the repair time, when the format of the transmitted data blocks comprises two or three repair symbols at the end of the data block (Figs. 9 or 10).
- Curves C21 to C25 were obtained with symbol loss rates of 1, 5, 10, 15 and 20%, respectively.
- the repair time is less than about 7 ms, with a probability of 0.6.
- the repair probability is 1 to about 10 ms.
- the repair time increases gradually as the rate of symbol loss increases. According to curve C22, the repair time reaches about 20 ms with a probability close to 1. According to the curve C23, the repair time goes to about 46 ms with a probability of 1.
- the repair time increases to approximately 80 ms with a probability of 1.
- the repair time is less than 70 ms when the probability is higher than 0.95, and reaches 98 ms with a probability of 1.
- the format of Figure 9 or 10 therefore has better performance in terms of repair latency than the format of Figure 12.
- Fig. 18 shows curves C31 to C35 of variation in the probability of repairing symbols lost as a function of the repair time, when the format of the data blocks transmitted comprises as many sub-blocks as repair symbols (FIG. 7).
- Curves C31 to C35 were obtained with symbol loss rates at 1, 5, 10, 15 and 20%, respectively.
- the repair time is less than about 10 ms, with a probability of 0.8.
- the repair probability is 1 to about 7 ms.
- the repair time increases gradually as the rate of symbol loss increases.
- the lost symbol repair time reaches about 20 ms with a probability close to 1.
- this repair time goes to about 34 ms with a probability of 1.
- this repair time goes to about 56 ms with a probability of 1.
- this repair time is less than 30 ms when the probability is greater than 0.95, and reaches 74 ms with a probability of 1.
- the format Figure 7 therefore shows better performance in terms of repair latency than the format of Figure 9 or 10.
- Figures 19 to 23 show variation curves of the probability of access time to a data stream, for different data block formats. These curves were also obtained by simulating a transmission of blocks of 100 source symbols and 125 symbols in total, with a bit rate of 1 Mb / s. The transmission time was set at 100 ms. Each measurement was obtained by simulating the transmission of 10 7 source symbols, or 10 5 blocks of data. Symbol losses are obtained from a Bernouilli loss model. The access time to the data stream is calculated assuming that the access time to the flow occurs in the 50 th symbol of the second source block of transmitted data.
- FIG. 19 represents curves C41 to C45 of variation of the probability of data flow access time, when the format of the data blocks transmitted comprises a single sub-block, all the repair symbols being transmitted at the end. from the data block ( Figure 3). Curves C41 to C45 were obtained with symbol loss rates at 1, 5, 10, 15 and 20%, respectively. Curves C41 to C45 show that the access time does not exceed about 150 ms (reached with a probability of 1). According to the curve C41, the access time is zero with a probability slightly greater than 0.6.
- the access time reaches 50 ms with a probability of about 0.75, and reaches 150 ms with a probability greater than 0.85. From curve C42, the access time to the data stream is less than 150 ms with a probability of less than about 0.12. According to the curves C43 to C45, the access time is less than 150 ms with a probability close to 0.
- FIG. 20 represents curves C51 to C55 of variation of the access time probability, when the format of the transmitted data blocks comprises as many sub-blocks as repair symbols grouped at the end of the data block (FIG. or 12).
- Curves C51 to C55 were obtained with symbol loss rates at 1, 5, 10, 15 and 20%, respectively.
- the access time is less than about 50 ms, with a probability greater than 0.75.
- the access time is zero with a probability close to 0.6.
- the curves C51, C52 the access time at 50 ms is reached with a probability close to 1.
- the curve C53 the probability of 1 is reached with an access time of about 100 ms.
- the probability of 1 is reached with an access time of about 150 ms.
- the access time is between 50 and 150 ms with a probability greater than 0.9.
- the access time is between 50 and 150 ms with a probability greater than 0.75.
- the format of Figure 9 or 10 therefore has better performance in terms of access latency than the format of Figure 3.
- Fig. 21 shows curves C61 to C65 of varying the access time probability, when the format of the transmitted data blocks comprises two or three repair symbols at the end of the data block (Figs. 9 or 10).
- Curves C61 to C65 were obtained with symbol loss rates at 1, 5, 10, 15 and 20%, respectively.
- the access time is less than about 50 ms, with a probability greater than 0.9.
- the access time is zero with a probability close to 0.6.
- the access time at 50 ms is reached with a probability close to 1.
- the curve C64 the probability of 1 is reached with an access time of approximately 130 ms.
- the access time increases to about 150 ms with a probability greater than 0.95.
- the format of Figure 9 or 10 therefore has better performance in terms of access latency than the format of Figure 11 or 12.
- FIG. 22 represents curves C71 to C75 of variation of the access time probability, when the format of the transmitted data blocks comprises as many sub-blocks as of repair symbols (FIG. 7).
- Curves C71 to C75 were obtained with symbol loss rates at 1, 5, 10, 15 and 20%, respectively.
- the access time is less than about 50 ms, with a probability greater than 0.95.
- the access time is zero with a probability close to 0.6.
- the access time at 50 ms is reached with a probability close to 1.
- the probability of 1 is reached with an access time of about 70 ms.
- the probability of 1 is reached with an access time of about 150 ms.
- the access time is between 50 and 150 ms with a probability greater than 0.9.
- the access time is between 50 and 150 ms with a probability greater than 0.8.
- the format of Figure 7 therefore has better performance in terms of access latency than the format of Figure 9 or 10.
- the access time JT to a data stream is limited to a value less than about 150 ms in the case where the data is organized into data blocks.
- FIG. 23 represents curves C81 to C84 of variation of the access time probability, when the format of the data blocks transmitted is in the form of that of FIG. 5 with a window w of 50 source symbols.
- Curves C81 to C84 were obtained with symbol loss rates at 1, 5, 10 and 15%, respectively. At symbol loss rates of 20% and above, the access time to the data stream tends to infinity.
- the access time is zero with a probability close to 0.6, and slightly greater than 50 ms with a probability of 1.
- the curve C82 reaches a probability close to 1, with an access time of about 80 ms. From the curve C83, a probability close to 1 is reached with an access time of about 150 ms.
- curve C84 a probability close to 1 is reached with an access time of about 500 ms.
- the format of Figure 5 therefore presents poorer performance in terms of access latency than the other formats studied.
- a content server comprising or coupled to the TDV transmitter device, broadcasts multi-broadcast (multicast) content to a set of terminals such as mobile terminals, including the RDV receiver device.
- FIG. 24 represents an example of such a CNTP content server connected to an IPN network, such as the Internet network, via an MBMS server implementing a Multimedia Broadcast Multicast Service (MBMS) or eMBMS service. (enhanced MBMS).
- MBMS Multimedia Broadcast Multicast Service
- eMBMS enhanced MBMS
- the UE terminals are connected each of the UTRN mobile networks which are connected to the IPN network via MGW gateways.
- the content provided by the CNTP server is broadcast in accordance with one of the formats described above.
- Some of the UEs with poor reception conditions may send on a return channel a return message signaling poor reception conditions to the CNTP content server.
- the return message may indicate a packet loss rate, a residual loss rate after exploitation of the repair symbols, characteristics relating to the quality of the received signal.
- the CNTP content server sends to terminals that have reported poor reception conditions, on unicast channels, one or more additional repair symbols for each data block sent by the content server's TDV sending device. CNTP for a certain period.
- the CNTP content server can transmit multi-broadcast content to several tens of thousands of UE terminals, and transmit in point-to-point mode additional repair symbols to several hundred UE terminals reporting bad reception conditions. quality.
- the sending to the server by a terminal of a return message indicating good reception conditions may terminate the sending of additional repair symbols for this terminal.
- this sending In addition to this sending being stopped at the end of the transmission of the broadcasted content, it may also be terminated at the end of a certain period.
- the terminals then always have the possibility issue new return messages signaling poor reception conditions, to trigger again the sending of additional repair symbols in point-to-point broadcast mode.
- the processing of the signaling messages of good or bad reception conditions, and the transmission of supplementary repair symbols may be performed by a server other than the CNTP content server, for example a server such as the MBMS server, ensuring the dissemination of the content to EU terminals.
- the multicast service can be implemented by other means and other protocols than those illustrated by way of example in FIG. 24.
- the multicast service can be implemented in a WiFi network.
- the source symbols from which each of the repair symbols are calculated are not necessarily consecutive in the data block, and do not necessarily include the source symbol transmitted immediately before the repair symbol.
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1663227A FR3061379B1 (fr) | 2016-12-22 | 2016-12-22 | Procede de transmission de donnees incluant une correction d’erreur directe |
PCT/FR2017/053795 WO2018115775A1 (fr) | 2016-12-22 | 2017-12-21 | Procédé et dispositif de correction d'erreurs à faible latence pour recouvrement de paquets de données |
Publications (1)
Publication Number | Publication Date |
---|---|
EP3560104A1 true EP3560104A1 (fr) | 2019-10-30 |
Family
ID=58501569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP17832531.2A Withdrawn EP3560104A1 (fr) | 2016-12-22 | 2017-12-21 | Procédé et dispositif de correction d'erreurs à faible latence pour recouvrement de paquets de données |
Country Status (7)
Country | Link |
---|---|
US (1) | US20190319645A1 (fr) |
EP (1) | EP3560104A1 (fr) |
JP (1) | JP2020503742A (fr) |
KR (1) | KR20190099045A (fr) |
CN (1) | CN110121840B (fr) |
FR (1) | FR3061379B1 (fr) |
WO (1) | WO2018115775A1 (fr) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11411584B2 (en) * | 2020-09-28 | 2022-08-09 | Western Digital Technologies, Inc. | Data storage device channel encoding current data using redundancy bits generated over preceding data |
CN114244476B (zh) * | 2021-12-25 | 2024-03-15 | 秦柏林 | 一种基于倍率码的数据编码传输方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870412A (en) * | 1997-12-12 | 1999-02-09 | 3Com Corporation | Forward error correction system for packet based real time media |
US7930617B1 (en) * | 2007-06-20 | 2011-04-19 | Rockwell Collins, Inc. | Sliding window block codes for cross-packet coding |
KR20130094160A (ko) * | 2012-01-20 | 2013-08-23 | 삼성전자주식회사 | 스트리밍 서비스를 제공하는 방법 및 장치 |
WO2014169015A1 (fr) * | 2013-04-09 | 2014-10-16 | Carlson Frederic Roy Jr | Système à multiples processeurs ayant un accès direct indépendant à des ressources de mémoire à semi-conducteurs de volume |
-
2016
- 2016-12-22 FR FR1663227A patent/FR3061379B1/fr active Active
-
2017
- 2017-12-21 US US16/471,901 patent/US20190319645A1/en not_active Abandoned
- 2017-12-21 KR KR1020197021436A patent/KR20190099045A/ko unknown
- 2017-12-21 EP EP17832531.2A patent/EP3560104A1/fr not_active Withdrawn
- 2017-12-21 WO PCT/FR2017/053795 patent/WO2018115775A1/fr unknown
- 2017-12-21 CN CN201780079656.9A patent/CN110121840B/zh active Active
- 2017-12-21 JP JP2019531161A patent/JP2020503742A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2020503742A (ja) | 2020-01-30 |
WO2018115775A1 (fr) | 2018-06-28 |
CN110121840B (zh) | 2023-09-15 |
CN110121840A (zh) | 2019-08-13 |
KR20190099045A (ko) | 2019-08-23 |
US20190319645A1 (en) | 2019-10-17 |
FR3061379A1 (fr) | 2018-06-29 |
FR3061379B1 (fr) | 2022-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110943800B (zh) | 数据包的发送方法、装置及系统、存储介质、电子装置 | |
EP1512228B1 (fr) | Procede et systeme de correction d'erreurs sans voie de retour destines a la transmission fiable de donnees en temps reel sur un reseau a commutation de paquets | |
EP2471206B1 (fr) | Procédé d'égalisation de la taille des paquets de données par blocs d'un flux multimedia | |
FR2906428A1 (fr) | Procede, dispositif et application logicielle pour la transmission de paquets de donnees dands un systeme de communication. | |
FR2845227A1 (fr) | Procede de reception d'un signal module selon une technique de codage multi-niveaux, procede de decodage, dispositif de reception, systeme de codage-decodage et applications correspondant | |
EP2266234B1 (fr) | Procede de transmission d'un signal numerique entre au moins deux emetteurs et au moins un recepteur, mettant en oeuvre au moins un relais, produit programme et dispositif relais correspondants | |
EP1172961A1 (fr) | Système de communication, récepteur, méthode d'estimation d'erreurs dues au canal | |
US11689323B2 (en) | Efficient on-demand packet recovery for broadcast and multicast networks system and method | |
WO2018115775A1 (fr) | Procédé et dispositif de correction d'erreurs à faible latence pour recouvrement de paquets de données | |
EP3476071B1 (fr) | Transmission dynamique et selectif d'un signal numerique pour un systeme avec relais full-duplex et une voie de retour limitee | |
CA2031039C (fr) | Procede et dispositif de transmission numerique d'informations, avec demande automatique de retransmission, ou "arq" | |
CN113965293B (zh) | 基于rs编码最佳冗余位的pam4信号前向纠错方法 | |
KR100792153B1 (ko) | 멀티캐스트 기반 네트워크에서의 데이터 전송 방법, 데이터처리 방법 및 데이터 전송 시스템 | |
EP3247076A1 (fr) | Systeme et procede de transmission de donnees | |
Sánchez et al. | P2P group communication using Scalable Video Coding | |
FR2972878A1 (fr) | Procede d'encodage correcteur d'erreur, procede de decodage et dispositifs associes. | |
EP2436134B1 (fr) | Procédé de transmission de données depuis une infrastructure d'un réseau de radiocommunication vers des équipements utilisateur, et équipements pour la mise en oeuvre du procédé | |
JP2008092213A (ja) | 受信機、パケット再送方法及びプログラム | |
WO2007028835A2 (fr) | Procede de modulation avec insertion de symboles semi-pilotes | |
EP2722992B1 (fr) | Méthode de codage pour canal à évanouissement quasi-périodique | |
Nguyen et al. | Internet media streaming using network coding and path diversity | |
Khayam et al. | Improving wireless multimedia quality using header detection with priors | |
WO2013012089A1 (fr) | Dispositif de relais, procédé de relais, et logiciel | |
WO2015079168A1 (fr) | Codage de paquets de données par codes convolutifs et recouvrement de paquets effacés | |
Linder et al. | Scalable multicast data distribution for different transport service classes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20190619 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) | ||
17Q | First examination report despatched |
Effective date: 20200416 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20201027 |