Apparatus and method for packet redundancy and recovery
First Claim
1. A communication transmitter, comprising:
- a receiving interface configured to receive data having (X*Y) data packets;
a transmitting interface configured to transmit data to a communication receiver; and
a parity generator configured to;
generate X parity packets according to the (X*Y) data packets from the receiving interface, wherein an ith parity packet of the X parity packets are generated by executing exclusive OR (XOR) among the (X*Y) data packets by using the equation
Pi(N)=P(N+i)XORP(N+X+i)XORP(N+2*X+i)XOR . . . XORP(N+(Y−
1)*X+i)wherein N is the sequence number of data packets and is integral multiplicity of (X*Y), and i=0 . . . X−
1; and
send the plurality of parity packets along with the corresponding plurality of data packets to a communication receiver via the transmitting interface,wherein the corresponding plurality of data packets executed exclusive OR are selected in an interleaved order.
2 Assignments
0 Petitions
Accused Products
Abstract
Apparatus and method for packet redundancy and recovery are disclosed. In a transmitter, parity packets are generated by executing exclusive OR between the corresponding data packets, and are transmitted along with the data packets to a receiver. In the receiver, lost data packets are found out and are recovered by executing exclusive OR between the corresponding data packets and the corresponding parity packets. This invention enhances the reliability of streaming data transmission using loss-recovery packets. Data packets are grouped and transmitted with redundant packets to allow the receiver to recover a lost packet within the group. This will minimize the need and therefore the time and delay to request a retransmission of the damaged or lost packets.
18 Citations
25 Claims
-
1. A communication transmitter, comprising:
-
a receiving interface configured to receive data having (X*Y) data packets; a transmitting interface configured to transmit data to a communication receiver; and a parity generator configured to; generate X parity packets according to the (X*Y) data packets from the receiving interface, wherein an ith parity packet of the X parity packets are generated by executing exclusive OR (XOR) among the (X*Y) data packets by using the equation
Pi(N)=P(N+i)XORP(N+X+i)XORP(N+2*X+i)XOR . . . XORP(N+(Y−
1)*X+i)wherein N is the sequence number of data packets and is integral multiplicity of (X*Y), and i=0 . . . X−
1; andsend the plurality of parity packets along with the corresponding plurality of data packets to a communication receiver via the transmitting interface, wherein the corresponding plurality of data packets executed exclusive OR are selected in an interleaved order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A communication receiver, comprising:
-
a receiving interface configured to receive (X*Y) data packets and X parity packets, wherein an ith parity packet of the X parity packets are generated by executing exclusive OR (XOR) among the (X*Y) data packets by using the equation
Pi(N)=P(N+i)XORP(N+X+i)XORP(N+2*X+i)XOR . . . XORP(N+(Y−
1)*X+i)wherein N is the sequence number of data packets and is integral multiplicity of (X*Y), and i=0, . . . , X−
1; anda recovery module coupled to the receiving interface, wherein the recovery module is configured to; analyze the plurality of data packets with sequence numbers from the receiving interface to find out lost data packets; recover the lost data packets by executing exclusive OR between the corresponding plurality of data packets and the corresponding plurality of parity packets to get a plurality of recovery data packets; and send out the plurality of recovery data packets and the plurality of data packets, wherein the corresponding plurality of data packets executed exclusive OR are selected in an interleaved order. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A packet redundancy method, comprising:
-
receiving (X*Y) data packets; generating X parity packets according to the (X*Y) data packets, wherein an ith parity packet of the X parity packets are generated by executing exclusive OR (XOR) among the (X*Y) data packets by using the equation
Pi(N)=P(N+i)XORP(N+X+i)XORP(N+2*X+i)XOR . . . XORP(N+(Y−
1)*X+i)wherein N is the sequence number of data packets and is integral multiplicity of (X*Y), and i=0 . . . X−
1; andtransmitting the plurality of parity packets along with the corresponding plurality of data packets to a communication receiver, wherein the corresponding plurality of data packets executed exclusive OR are selected in an interleaved order. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. A packet recovery method, comprising:
-
receiving (X*Y) data packets and X parity packets, wherein an ith parity packet of the X parity packets are generated by executing exclusive OR (XOR) among the (X*Y) data packets by using the equation
Pi(N)=P(N+i)XORP(N+X+i)XORP(N+2*X+i)XOR . . . XORP(N+(Y−
1)*X+i)wherein N is the sequence number of data packets and is integral multiplicity of (X*Y), and i=0 . . . X−
1; andanalyzing the plurality of data packets with sequence numbers to find out lost data packets; and recovering the lost data packets by executing exclusive OR between the corresponding plurality of data packets and the corresponding plurality of parity packets to get a plurality of recovery data packets, wherein the corresponding plurality of data packets executed exclusive OR are selected in an interleaved order. - View Dependent Claims (22, 23, 24, 25)
-
Specification