Method for packet-level FEC encoding a stream of source packets using shifted interleaving
First Claim
1. A method for transmitting interleaved shares of packet-level forward-error-correction encoded packets, each share including source packets and wildcard packets, wherein a given time shift occurs between consecutive shares, the method comprising the steps of:
- determining a current state;
associating a packet with a share based on the current state;
determining a position of the packet within the share based on the given time shift; and
,if the position of the packet corresponds to a source packet position, computing a contribution from the packet to wildcard packets of the share and transmitting the packet as a source packet, or, if the position of the packet corresponds to a wildcard packet position, transmitting the packet as a wildcard packet,wherein positions of two consecutive packets within two shares are not the same, andwherein the above steps are performed by a processor.
4 Assignments
0 Petitions
Accused Products
Abstract
A method for transmitting interleaved shares of packet-level FEC encoded packets, in which a given time shift occurs between consecutive shares, includes determining a current state; associating a packet with a share based on the current state; and determining a position of the packet within the share. Each share includes source packets and error-correcting or wildcard packets. If the position of the packet corresponds to a source packet position, a contribution of the packet to the wildcard packets of the share is computed, and the packet is transmitted as a source packet. If the position of the packet corresponds to a wildcard packet position, the packet is transmitted as a wildcard packet.
-
Citations
22 Claims
-
1. A method for transmitting interleaved shares of packet-level forward-error-correction encoded packets, each share including source packets and wildcard packets, wherein a given time shift occurs between consecutive shares, the method comprising the steps of:
-
determining a current state; associating a packet with a share based on the current state; determining a position of the packet within the share based on the given time shift; and
,if the position of the packet corresponds to a source packet position, computing a contribution from the packet to wildcard packets of the share and transmitting the packet as a source packet, or, if the position of the packet corresponds to a wildcard packet position, transmitting the packet as a wildcard packet, wherein positions of two consecutive packets within two shares are not the same, and wherein the above steps are performed by a processor. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of shifting interleaved shares of packet-level forward-error-correction encoded packets to be transmitted, in which multiple shares of packets are transmitted as a lot, the method comprising the steps of:
-
determining a time shift, S, based on; a number of source packets per share, K, a number of error-correcting packets per share, E, and a number of shares per lot, L, wherein K, E and L are integers; and shifting each interleaved share of packet-level forward-error correction encoded packets by the time shift, S, relative to a corresponding previous share, wherein S=(K+E)/L, wherein positions of two consecutive packets within two shares are not the same, and wherein the above steps are performed by a processor. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A method for transmitting interleaved shares of packet-level forward-error-correction encoded packets to be transmitted, in which multiple shares of packets are transmitted as a lot, the method comprising the steps of:
-
determining a time shift, S, based on; a number of source packets per share, K, a number of error-correcting packets per share, E, and a number of shares per lot, L, wherein K, E and L are integers, and wherein S=(K+E)/L; shifting a share by the time shift, S, relative to a previous share; arranging the lot packets to be transmitted according to columns and rows, with C representing a column number and R representing a row number, wherein 0≦
R≦
(L−
1) and R corresponds to a share in the lot;transmitting a packet at a first position identified by R and C; determining a next position such that; if R+1=L, set R=0 and increase C by 1, or, if R+1<
L, then set R=R+1; andtransmitting a packet at the next position, wherein positions of two consecutive packets within two shares are not the same. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A computer programmed to perform transmitting of interleaved shares of packet-level forward-error-correction encoded packets, each share including source packets and wildcard packets, wherein a given time shift occurs between consecutive shares, by using a processor to perform the steps of:
-
determining a current state; associating a packet with a share based on the current state; determining a position of the packet within the share based on the given time shift; and
,if the position of the packet corresponds to a source packet position, computing a contribution from the packet to wildcard packets of the share and transmitting the packet as a source packet, or, if the position of the packet corresponds to a wildcard packet position, transmitting the packet as a wildcard packet, wherein positions of two consecutive packets within two shares are not the same.
-
-
18. A computer programmed to perform shifting of interleaved shares of packet-level forward-error-correction encoded packets to be transmitted, in which multiple shares of packets are transmitted as a lot, by using a processor to perform the steps of:
-
determining a time shift, S, based on; a number of source packets per share, K, a number of error-correcting packets per share, E, and a number of shares per lot, L, wherein K, E and L are integers; and shifting each interleaved share of packet-level forward-error correction encoded packets by the time shift, S, relative to a corresponding previous share, wherein S=(K+E)/L, wherein positions of two consecutive packets within two shares are not the same.
-
-
19. A computer programmed to perform transmitting of interleaved shares of packet-level forward-error-correction encoded packets to be transmitted, in which multiple shares of packets are transmitted as a lot, by using a processor to perform the steps of:
-
determining a time shift, S, based on; a number of source packets per share, K, a number of error-correcting packets per share, E, and a number of shares per lot, L, wherein K, E and L are integers, and wherein S=(K+E)/L;
shifting a share by the time shift, S, relative to a previous share;arranging the lot packets to be transmitted according to columns and rows, with C representing a column number and R representing a row number, wherein 0≦
R≦
(L−
1) and R corresponds to a share in the lot;transmitting a packet at a first position identified by R and C; determining a next position such that; if R+1=L, set R=0 and increase C by 1, or, if R+1<
L, then set R=R+1; and
transmitting a packet at the next position, wherein positions of two consecutive packets within two shares are not the same.
-
-
20. A communications system for transmitting interleaved shares of packet-level forward-error-correction encoded packets, each share including source packets and wildcard packets, wherein a given time shift occurs between consecutive shares, comprising:
a transmitter configured to perform; determining a current state; associating a packet with a share based on the current state; determining a position of the packet within the share based on the given time shift; and
,if the position of the packet corresponds to a source packet position, computing a contribution from the packet to wildcard packets of the share and transmitting the packet as a source packet, or, if the position of the packet corresponds to a wildcard packet position, transmitting the packet as a wildcard packet, wherein positions of two consecutive packets within two shares are not the same.
-
21. A communications system for transmitting shifted interleaved shares of packet-level forward-error-correction encoded packets, in which multiple shares of packets are transmitted as a lot, comprising:
-
a transmitter configured to perform; determining a time shift, S, based on; a number of source packets per share, K, a number of error-correcting packets per share, E, and a number of shares per lot, L, wherein K, E and L are integers; and shifting each interleaved share of packet-level forward-error correction encoded packets by the time shift, S, relative to a corresponding previous share, wherein S=(K+E)/L, wherein positions of two consecutive packets within two shares are not the same.
-
-
22. A communications system for transmitting interleaved shares of packet-level forward-error-correction encoded packets to be transmitted, in which multiple shares of packets are transmitted as a lot, comprising:
-
a transmitter configured to perform; determining a time shift, S, based on; a number of source packets per share, K, a number of error-correcting packets per share, E, and a number of shares per lot, L, wherein K, E and L are integers, and wherein S=(K+E)/L; shifting a share by the time shift, S, relative to a previous share; arranging the lot packets to be transmitted according to columns and rows, with C representing a column number and R representing a row number, wherein 0≦
R≦
(L−
1) and R corresponds to a share in the lot;transmitting a packet at a first position identified by R and C; determining a next position such that; if R+1=L, set R=0 and increase C by 1, or, if R+1<
L, then set R=R+1; andtransmitting a packet at the next position, wherein positions of two consecutive packets within two shares are not the same.
-
Specification