Error correction apparatus and method
First Claim
1. A method for error correction in a broadcast distribution system for distributing content data via a transmission from a satellite comprising:
- storing in a short term memory at an uplink controller an uplink bitmap, said uplink bitmap being configured to maintain a bit for each of a plurality of data packets comprising a content data file, the content data file having been selected for transmission from a long term memory in operative communication with said uplink controller;
transmitting an initialization command from said uplink controller to a plurality of receivers, said initialization command initiating storage of a receiver bitmap in a short term receiver memory in each of said plurality of receivers;
storing in each of said plurality of receivers said receiver bitmaps, said receiver bitmaps being configured to maintain a bit for each of said plurality of data packets comprising the content data file to be transmitted;
marking in each of said receiver bitmaps one of said bits that correspond to a data packet not judged to be received correctly as said transmission of the selected content data file progresses;
requesting by said uplink controller a return of an error status report from each of said plurality of receivers;
generating said error status report at each of said plurality of receivers, said error status report compressing from said receiver bitmap data identifying each of the data packets not judged to be received correctly at each of said receivers;
coding error types and including an error type code in said error status report;
returning via a network each of said error status reports from each of said plurality of receivers to said uplink controller;
aggregating in said short term memory at said uplink controller all of said error status reports by marking in said uplink bitmap each of said bits that correspond to any of the data packets not judged to be received correctly by any of said plurality of receivers;
re-transmitting only those data packets not judged to be received correctly by at least one of said receivers, as recorded in said uplink bitmap after said aggregation.
0 Assignments
0 Petitions
Accused Products
Abstract
A system, method and data structure for error correction for use in the transmission of content data distribution networks uses a compressed memory, for example a bitmap, to identify portions of transmitted content data files where transmission errors have occurred. The error memory, is used to generate an error status report that is returned to a transmission controller via a low bandwidth back channel, for example the Internet. The information in multiple error status reports is aggregated by the control system of the transmitter and used to re-transmit those portions of previously transmitted content data files that were not properly received due to error. By re-transmitting only the data packets of the transmitted content data files that contain errors, overall transmission speed is increased and bandwidth usage is conserved.
81 Citations
16 Claims
-
1. A method for error correction in a broadcast distribution system for distributing content data via a transmission from a satellite comprising:
-
storing in a short term memory at an uplink controller an uplink bitmap, said uplink bitmap being configured to maintain a bit for each of a plurality of data packets comprising a content data file, the content data file having been selected for transmission from a long term memory in operative communication with said uplink controller; transmitting an initialization command from said uplink controller to a plurality of receivers, said initialization command initiating storage of a receiver bitmap in a short term receiver memory in each of said plurality of receivers; storing in each of said plurality of receivers said receiver bitmaps, said receiver bitmaps being configured to maintain a bit for each of said plurality of data packets comprising the content data file to be transmitted; marking in each of said receiver bitmaps one of said bits that correspond to a data packet not judged to be received correctly as said transmission of the selected content data file progresses; requesting by said uplink controller a return of an error status report from each of said plurality of receivers; generating said error status report at each of said plurality of receivers, said error status report compressing from said receiver bitmap data identifying each of the data packets not judged to be received correctly at each of said receivers; coding error types and including an error type code in said error status report; returning via a network each of said error status reports from each of said plurality of receivers to said uplink controller; aggregating in said short term memory at said uplink controller all of said error status reports by marking in said uplink bitmap each of said bits that correspond to any of the data packets not judged to be received correctly by any of said plurality of receivers; re-transmitting only those data packets not judged to be received correctly by at least one of said receivers, as recorded in said uplink bitmap after said aggregation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An error correcting apparatus for receiving content data files transmitted by an uplink in a satellite distribution system, said content data files being comprised of multiple data packets, comprising:
-
a processor configured to receive said content data files and upon receipt check each of said multiple data packets for errors; a long term memory for storing those of said data packets received without error; a short term memory for storing a plurality of settings, each of said settings corresponding to one of said data packets; said processor marking each of said settings when said corresponding data packet is received, said markings identifying whether said corresponding data packet was judged not to be received correctly; said processor being further configured to generate an error status report identifying all of said data packets that were judged not to be received correctly; said error status report including an error type code for each data packet judged not to be received correctly; a send link in operative communication with a network; and said processor being further configured to send said error status report to said uplink via said send link upon completion of said transmission of said file.
-
-
15. An error correction apparatus in a transmitter of content data files comprised of multiple data packets, said error correction apparatus comprising:
-
a long term memory of content data files; a short term central memory for storing a plurality of settings, each of said settings corresponding to one of said data packets that comprise of one of said content data files to be transmitted; a receiving link in operative communication with a network and configured to receive over said network a plurality of error status reports from a plurality of receivers, said error status reports identifying all of said data packets in a content data file transmission that were judged not to be received correctly at any of said receivers; a processor, said processor being configured to scale said short term central memory to one of said content data files selected for transmission such that one of said settings corresponds to each data packet comprising the content data file selected for transmission; said processor being further configured to command each of said plurality of receivers to establish and scale a short term receiver memory, said short term receiver memory also storing one setting for each of said data packets comprising the content data file selected for transmission, each of said settings being a bit in a receiver bitmap; said processor being further configured to transmit a request to all of said plurality of receivers to each send an error status report, said request being sent after completion of a transmission of said content data file to be transmitted, each of said error reports having a portion of said received bitmap; said processor being further configured to receive all said error status reports via the network through said receiving link; said processor being further configured to aggregate all of said error status reports in said short term central memory such that selected ones of said settings corresponding to each of said data packets judged not to be received correctly by any of said plurality of receivers is marked, said marking corresponding to said data packets judged not to be received correctly as identified in each of said errors status reports; and said processor being further configured to re-transmit only those data packets marked in said short term memory.
-
-
16. An error correction apparatus in a transmitter of content data files comprised of multiple data packets, said error correction apparatus comprising;
-
a long term memory of content data files; a short term central memory for storing a plurality of settings, each of said settings corresponding to one of said data packets that comprise of one of said content data files to be transmitted; a receiving link in operative communication with a network and configured to receive over said network a plurality of error status reports from a plurality of receivers, said error status reports identifying all of said data packets in a content data file transmission that were judged not to be received correctly at any of said receivers; a processor, said processor being configured to scale said short term central memory to one of said content data files selected for transmission such that one of said settings corresponds to each data packet comprising the content data file selected for transmission, each of said settings being a bit in a bitmap; said processor being further configured to command each of said plurality of receivers to establish and scale a short term receiver memory, said short term receiver memory also storing one setting for each of said data packets comprising the content data file selected for transmission; said processor being further configured to transmit a request to all of said plurality of receivers to each send an error status report, said request being sent after completion of a transmission of said content data file to be transmitted; said processor being further configured to receive all said error status reports via the network through said receiving link, said error reports including a portion of said bitmap; said processor being further configured to aggregate all of said error status reports in said short term central memory such that selected ones of said settings corresponding to each of said data packets judged not to be received correctly by any of said plurality of receivers is marked, said marking corresponding to said data packets judged not to be received correctly as identified in each of said errors status reports; and said processor-being further configured to re-transmit only those data packets marked in said short term memory.
-
Specification