This invention relates to transmitting data, more particularly, employing a receiver feedback for error correction of data transmission for interference caused by factors including regional factors, and dynamic factors.
In the deployment of large scale content broadcasting, poor or unsatisfactory data reception caused by interference factors in the path of the transmitting data between a transmitter and a receiver is a usual issue. This concern is applicable to both analog and digital signals, including the digital television transmission (DTV) formats such as the recently available high definition television (HDTV) and standard definition television (SDTV) having technical standards established by the American Television Systems Committee (ATSC), an international organization.
Broadcast systems traditionally transmit data in one direction from a server system to a plurality of client systems. Consumers of the client systems typically receive the signals from the server system as they are broadcast. Currently, error correction practices are utilized that increase the reliability of the reception of transmitted data including forward error correction (FEC) techniques and carouselling (retransmission of the same data), convolutional (tree) codes and block codes. FEC, however, is not useful with analog communications because the degradation of analog signals cannot be effectively corrected. Often these various error correction techniques are employed to handle transmission errors but show unsatisfactory results since there are often a myriad of data transmission interference factors. Some interference factors are regional such as terrain existing along the path of the data transmission, and other factors are dynamic based on environmental factors including weather and season. Retransmission factors are a further consideration such that data can be transmitted to many locations, each having different regional and dynamic factors. For example, satellite communications systems use orbiting satellites as radio repeaters to relay signals between earth stations. Most telecommunications satellites in use today are in geostationary orbit about 22,300 miles above the equator. Satellite systems can be used for one-way, two-way, point-to-point or point-to-multipoint transmission of various types of signals, including voice, data and video. Further, interference can occur in the up-link transmission from earth station to satellite, or in the down-link from satellite to earth.
Currently, there is a need for control and optimization of bandwidth and Quality of Service (QOS) of a given broadcast based on regional factors including terrain, and transient conditions including weather that effect the level of service to the end client (i.e. the receiver). QOS is currently a significant concern for continuous transmission of high-bandwidth video and multimedia information.
Additional advantages of the invention will become apparent upon reading the following detailed description and upon reference to the drawings, in which:
Exemplary embodiments are described with reference to specific configurations. Those of ordinary skill in the art will appreciate that various changes and modifications can be made while remaining within the scope of the appended claims. Additionally, well-known elements, devices, components, circuits, process steps and the like are not set forth in detail in order to avoid obscuring the present invention.
In an embodiment, the invention provides error correction of data transmission in communications, utilizing a receiver feedback, for data transmission interference caused by regional factors including terrain, dynamic factors including weather and season, and retransmission factors.
In an embodiment, a method and system is provided that controls Quality of Service (QOS), a guaranteed and specified networking throughput level, by tracking and reporting data transmission errors utilizing a feedback from a receiver to a transmitter (i.e. from a set-top box to a broadcast center server). Transmission rates, error rates and other characteristics are measured, improved, and to some extent guaranteed in advance.
In an embodiment, the invention provides a method and apparatus for tracking and reporting data transmission errors irregardless of the cause of the data interference. The reported data transmission errors are analyzed to determine whether a tolerable level is exceeded. Error correction is applied if the tolerable level is exceeded. In an embodiment, the invention provides increased reliability of data transmission (for both analog and digital data transmission) between a transmitter and a receiver, as compared to currently used systems. In an embodiment, no other error analysis input is required for the data transmitter error correction, other than error reporting by the set-top box.
In an embodiment, broadcast center server 110 receives the product from content provider 100 via connection 104. In an embodiment, broadcast center server 110 is a server computer or a group of computers including a subnetwork, cluster or a LAN. Broadcast center server 110 distributes the product to consumers such as clients 120 and 122.
In an embodiment, broadcast center server 110 utilizes Asynchronous Transfer Mode (ATM) to transfer data in cells or packets of a fixed size. In an embodiment, the ATM creates a fixed channel between broadcast center server 110 and clients 120 and 122 when the transfer of data begins. In another embodiment, each packet is transmitted individually and can follow different routes to its destination. After receiving the packets, clients 120 and 122 recompile the packets into the original message. In an embodiment, by utilizing ATM, high-speed (up to 2.5 gigabits) switching service capable of carrying voice, data, video and multimedia images is provided. This allows ATM providers to guarantee to their customers that end-to-end latency will not exceed a specified level.
In an embodiment, the products sent to the clients are sent in a digital format. In an embodiment, broadcast center server 110 is comprised of one or more server computers that include a processor 140, a memory 142 such as any Random Access Memory (RAM) device, a storage device 144 to store data received from the content providers and clients, and at least one communications interface 152. In an embodiment, multiple communications interfaces 152 and 154 are utilized for communication with content providers as already described, and for communication with clients as will be described below. Storage device 144 can be any machine-readable medium including hard disk drives, optical disk drives, magnetic tape, etc.
Software implementing the methods described herein can be stored on storage device 144 or other machine-readable medium included in broadcast center server 110, including magnetic and optical disks; magnetic tape; read-only memory (ROM), programmable read-only memory (PROM), electronically erasable programmable memory (EEPROM), and similar semiconductor devices; or can be downloaded from any external or remote device via electrical, acoustical, or other form of propagated signal (e.g., carrier waves, digital signals, infrared signals, etc.).
In an embodiment, processor 140, memory 142, storage device 144, and communications interfaces 152 and 154 are coupled via bus 146. In an embodiment, broadcast center server 110 includes multiple or additional communications interfaces, processors, storage devices, display adapters, and buses. In an embodiment, broadcast center server 110 includes multiple server computers that can be dedicated communications servers, applications servers, storage servers, and other specialized servers configured as a LAN, group, subgroup, cluster, subnetwork, and the like.
In an embodiment, clients 120 and 122 that receive products are a computing device such as a set-top box, personal computer, portable computer, cellular telephone, personal digital assistant (PDA), computing tablet, or any other device containing a processor with a communications interface that allows for the receipt of data distributed via connections 114 and 116. In an embodiment, the set-top box utilizes a TCP/IP communications stack. In one embodiment, the set-top box is attached to a service through a telephone line or through a cable TV company. In an embodiment, the set-top box contains one or more processors for running the operating system, and for parsing the MPEG standards transport stream. In an embodiment, the set-top box includes RAM, an MPEG decoder chip, and more chips for audio decoding and processing. The set-top box can also be DVB-compliant to decode COFDM transmissions or ATSC-compliant to decode VSB transmissions.
In an embodiment, clients 120 and 122 receive broadcast products wirelessly via a conventional ground terrestrial transmission, via a digital television (DTV) connection 114, via satellite connection 116 and via a wide area network (WAN) connection. The WAN can be the Internet. In another embodiment, clients 120 and 122 receive broadcast product via cable television (CATV) connection. In an embodiment, a CATV connection is a WAN. The DTV connection display formats is one of High Definition Television (HDTV) and Standard Definition Television (SDTV). In an embodiment, clients 120 and 122 receive 8-level vestigial sideband (8-VSB) format chosen by the ATSC for the broadcast of DTV.
In an embodiment, clients 120 and 122 also send information to broadcast center server 110. For clients 120 and 122 that receive broadcast products via a satellite, radio wave or other wireless connection, communication to the broadcast center 110 can be achieved via telephone dial-up connection through a WAN, such as, for example, by connecting over the Internet. In other embodiments, clients 120 and 122 dial-up directly to broadcast center server 110. In an embodiment, connection 130 represents a connection through a WAN to broadcast center server 110, and connection 132 represents a direct dial-up connection to broadcast center server 110. In an embodiment, connections 130 and 132 join to connection 134 and further connect to broadcast center server 110.
In an embodiment, when a product is sent by broadcast center server 110 to clients 120 and 122, clients 120 and 122 having software, track and report data errors regarding the received product. The tracked data errors are reported back to broadcast center server 110, automatically and transparently, without any user input. In an embodiment, data transmission errors are continuously tracked by clients 120 and 122. In an embodiment broadcast center server 110 assigns a predetermined tolerable transmitted data error level to clients 120 and 122. On the first occasion that the predetermined tolerable data level is determined and assigned, clients 120 and 122 have previously reported a transmitted data error level to broadcast center server 110. Thereafter, a different predetermined tolerable transmitted data error level can be periodically reassigned as clients 120 and 122 report transmitted data error levels (further described hereinafter). In an embodiment, the errors include errors caused by regional factors including terrain, dynamic factors including weather and season, and retransmission factors.
In an embodiment, the tolerable transmitted data error level is additionally based on the number of clients 120 and 122 that are located in a geographical area having the same or similar regional and dynamic characteristics. That is, for example, a first tolerable transmitted data error level is assigned to a first group of set-top boxes having a similar regional and dynamic environment, and a second tolerable transmitted data error level is assigned to a second group of set-top boxes having a similar regional and dynamic environment (but different environment than the first group).
In an embodiment, clients 120 and 122 identify data errors that exceed the predetermined tolerable transmitted data error level. In another embodiment, clients 120 and 122 identify data errors that exceed the predetermined tolerable transmitted data error level for a predetermined time. After identifying the errors, clients 120 and 122 report the errors to broadcast center server 110. In another embodiment, a predetermined tolerable transmitted data error level is not assigned to clients 120 and 122, and data errors are continuously reported by clients 120 and 122 to broadcast center server 110. In an embodiment, the continuous reporting is accomplished at a predetermined periodic rate. In an embodiment, an identification of clients 120 and 122 is transmitted to broadcast center server 110 with the reported transmitted data error level.
In an embodiment, broadcast center server 110 analyzes the reported data errors. The analysis includes comparing the transmitted data errors to at least one of a predetermined tolerable transmitted data error level and a predetermined tolerable transmitted data error level for a predetermined time period.
In an embodiment, broadcast center server 110 includes error correction policy application 156. The functions, in an embodiment of the invention, of Error Correction Policy Application are shown in
In an embodiment, at least one of error correction coding and error detection coding is utilized. In an embodiment, error correction policy application 156 utilizes at least one of convolutional (tree) codes and block codes. In an embodiment, broadcast center server 110 includes processor 140 that executes a decoding algorithm to decode convolutional codes. In an embodiment, errors are analyzed by measuring the bit error rate in terms of the number of bit errors divided by the total bits transferred. In an embodiment, the bit error rate is measured in terms of quantity of bit errors occurring over some unit of time.
By error correcting the data transmission in an embodiment of the invention, bandwidth is increased, the amount of data that is transmitted in a fixed amount of time, since the effects of regional factors and dynamic factors are reduced. In an embodiment, error correction policy application 156 utilizes Forward Error Correction (FEC) and adds check bits to the data stream, thereby increasing the transmission reliability. Clients 120 and 122 analyze the check bit information to locate and correct errors. After correcting errors, however, clients 120 and 122 report errors to broadcast center server 110.
Broadcast center server 110 receives tracked and reported transmitted data errors regarding the transmitted data based on regional, dynamic and retransmission factors, as shown in method block 406. Optionally, the reported transmitted data errors is directly received by broadcast center server 110, as shown in method block 408. The received tracked and reported transmitted data errors optionally includes utilizing at least one of telephone dial-up connection through a WAN, dial-up directly, data link switching (DLS), cable docsys, and telephony, as shown in method block 410. In an embodiment, broadcast center server 110 optionally assigns a predetermined tolerable transmitted data error level and receives tracked and reported transmitted data errors only when one of the transmitted data errors exceeds the predetermined tolerable transmitted data error level and the transmitted data errors exceeds the predetermined tolerable transmitted data error level for a predetermined time period, as shown in method block 412. Broadcast center server 110 identifies the specific client reporting the transmitted data errors, as shown in method block 414.
Broadcast center server 110 analyzes the reported transmitted data errors, as shown in method block 416. The transmitted data errors is optionally compared to a predetermined tolerable transmitted data error level and a predetermined tolerable transmitted data error level for a predetermined time period, as shown in method block 418. Error correction is optionally adjusted based on the analysis of the reported data errors, as shown in method block 420. Optionally, broadcast center server 110 dynamically employs at least one of forward error correction and carouselling, and alters at least one of bandwidth and quality of service, as shown in method block 422. Data is transmitted to the client having an adjusted error correction to the identified client, as shown in method block 424.
Optionally, clients 120 and 122 identify data errors that exceed a predetermined tolerable received data error level, and exceed the predetermined tolerable received data error level for a predetermined time period, as shown in method block 508. Any data errors reported, as shown in method block 510. Optionally, data errors are reported only when the data errors exceed the predetermined tolerable received data error level and the data errors exceed the predetermined tolerable received data error level for a predetermined time period, as shown in method block 512. Optionally, data errors are reported utilizing one of telephone dial-up connection through a WAN, dial-up directly, data link switching (DLS), cable docsys, and telephony, as shown in method block 514. Optionally, the reported data errors is reported to a broadcast center server, as shown in method block 516. Optionally, clients 120 and 122 receive data having an adjusted error correction, as shown in method block 518.
In an embodiment of the invention, a machine-readable medium is provided, the machine-readable medium having instructions that when executed by a processor cause the processor to perform operations. In an embodiment, the operations include at least one of the methods as discussed herein with reference to
The machine-readable storage medium includes any mechanism that provides (i.e., stores and/or transmits) information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium includes floppy diskettes, optical disks, compact disc, Read-Only Memory (CD-ROMs), and magneto-optical disks, Read-Only Memory (ROMs), Random Access Memory (RAMs), Erasable Programmable Read-Only Memory (EPROMs), Electrically Erasable Read-Only Memory (EEPROMs), magnetic disk storage media, optical storage media, flash memory devices, electrical, optical, acoustical or other form of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.), and other type of media/machine-readable medium suitable for storing electronic instructions, etc.
Having disclosed exemplary embodiments and the best mode, modifications and variations can be made to the disclosed embodiments while remaining within the spirit and scope of the invention as defined by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
4602279 | Freeman | Jul 1986 | A |
5075771 | Hashimoto | Dec 1991 | A |
5155591 | Wachob | Oct 1992 | A |
5392223 | Caci | Feb 1995 | A |
5410272 | Haberland et al. | Apr 1995 | A |
5410344 | Graves et al. | Apr 1995 | A |
5444499 | Saitoh | Aug 1995 | A |
5446919 | Wilkins | Aug 1995 | A |
5483278 | Strubbe et al. | Jan 1996 | A |
5483529 | Baggen et al. | Jan 1996 | A |
5534911 | Levitan | Jul 1996 | A |
5559549 | Hendricks et al. | Sep 1996 | A |
5564088 | Saitoh | Oct 1996 | A |
5566174 | Sato et al. | Oct 1996 | A |
5585838 | Lawler et al. | Dec 1996 | A |
5600364 | Hendricks et al. | Feb 1997 | A |
5619247 | Russo | Apr 1997 | A |
5654747 | Ottesen et al. | Aug 1997 | A |
5664091 | Keen | Sep 1997 | A |
5686954 | Yoshinobu et al. | Nov 1997 | A |
5724345 | Guarneri et al. | Mar 1998 | A |
5727002 | Miller et al. | Mar 1998 | A |
5751282 | Girard et al. | May 1998 | A |
5768681 | Dan et al. | Jun 1998 | A |
5778182 | Cathey et al. | Jul 1998 | A |
5790935 | Payton | Aug 1998 | A |
5801753 | Eyer et al. | Sep 1998 | A |
5838678 | Davis et al. | Nov 1998 | A |
5867799 | Lang et al. | Feb 1999 | A |
5897608 | Yokoyama et al. | Apr 1999 | A |
5920700 | Gordon et al. | Jul 1999 | A |
5930493 | Ottesen et al. | Jul 1999 | A |
5937411 | Becker | Aug 1999 | A |
5940738 | Rao | Aug 1999 | A |
5945988 | Williams et al. | Aug 1999 | A |
5973683 | Cragun et al. | Oct 1999 | A |
5977964 | Williams et al. | Nov 1999 | A |
5991841 | Gafken et al. | Nov 1999 | A |
5999526 | Garland et al. | Dec 1999 | A |
6002393 | Hite et al. | Dec 1999 | A |
6002852 | Birdwell et al. | Dec 1999 | A |
6005597 | Barrett et al. | Dec 1999 | A |
6006247 | Browning et al. | Dec 1999 | A |
6018768 | Ullman et al. | Jan 2000 | A |
6020883 | Herz et al. | Feb 2000 | A |
6021433 | Payne et al. | Feb 2000 | A |
6055560 | Mills et al. | Apr 2000 | A |
6088722 | Herz et al. | Jul 2000 | A |
6108645 | Eichstaedt et al. | Aug 2000 | A |
6114376 | Prichard et al. | Sep 2000 | A |
6119189 | Gafken et al. | Sep 2000 | A |
6125259 | Perlman | Sep 2000 | A |
6131127 | Gafken et al. | Oct 2000 | A |
6144376 | Connelly | Nov 2000 | A |
6148005 | Paul et al. | Nov 2000 | A |
6160989 | Hendricks et al. | Dec 2000 | A |
6184918 | Goldschmidt Iki et al. | Feb 2001 | B1 |
6215776 | Chao | Apr 2001 | B1 |
6279040 | Ma et al. | Aug 2001 | B1 |
6289012 | Harrington et al. | Sep 2001 | B1 |
6289510 | Nakajima | Sep 2001 | B1 |
6298482 | Seidman et al. | Oct 2001 | B1 |
6304578 | Fluss | Oct 2001 | B1 |
6317881 | Shah-Nazaroff et al. | Nov 2001 | B1 |
6320850 | Perahia et al. | Nov 2001 | B1 |
6349321 | Katayama | Feb 2002 | B1 |
6359557 | Bilder | Mar 2002 | B1 |
6359571 | Endo et al. | Mar 2002 | B1 |
6374405 | Willard | Apr 2002 | B1 |
6378036 | Lerman et al. | Apr 2002 | B1 |
6389593 | Yamagishi | May 2002 | B1 |
6397387 | Rosin et al. | May 2002 | B1 |
6424625 | Larsson et al. | Jul 2002 | B1 |
6434747 | Khoo et al. | Aug 2002 | B1 |
6449632 | David et al. | Sep 2002 | B1 |
6457010 | Eldering et al. | Sep 2002 | B1 |
6460036 | Herz | Oct 2002 | B1 |
6467089 | Aust et al. | Oct 2002 | B1 |
6480783 | Myr | Nov 2002 | B1 |
6490722 | Barton et al. | Dec 2002 | B1 |
6513069 | Abato et al. | Jan 2003 | B1 |
6526455 | Kamimura | Feb 2003 | B1 |
6529526 | Schneidewend | Mar 2003 | B1 |
6557042 | He et al. | Apr 2003 | B1 |
6570843 | Wolfgang | May 2003 | B1 |
6571389 | Spyker et al. | May 2003 | B1 |
6574518 | Lounsberry et al. | Jun 2003 | B1 |
6578199 | Tsou et al. | Jun 2003 | B1 |
6594682 | Peterson et al. | Jul 2003 | B1 |
6601237 | Ten Kate et al. | Jul 2003 | B1 |
6617980 | Endo et al. | Sep 2003 | B1 |
6678890 | Cai | Jan 2004 | B1 |
6715004 | Grimsrud et al. | Mar 2004 | B1 |
20010012299 | Dahlen | Aug 2001 | A1 |
20010013127 | Tomita | Aug 2001 | A1 |
20010037507 | Mori | Nov 2001 | A1 |
20020112235 | Ballou et al. | Aug 2002 | A1 |
20020199194 | Ali | Dec 2002 | A1 |
20030056216 | Wugofski et al. | Mar 2003 | A1 |
20030074664 | Kwoh | Apr 2003 | A1 |
20030097657 | Zhou et al. | May 2003 | A1 |
20040123323 | Russo | Jun 2004 | A1 |
20040163014 | Schein et al. | Aug 2004 | A1 |
20040221307 | Arai et al. | Nov 2004 | A1 |
20050155063 | Bayrakeri et al. | Jul 2005 | A1 |
Number | Date | Country |
---|---|---|
0902569 | Mar 1999 | EP |
1028551 | Aug 2000 | EP |
1 043 892 | Oct 2000 | EP |
1 089 572 | Apr 2001 | EP |
1089201 | Apr 2001 | EP |
1089571 | Apr 2001 | EP |
WO-9726729 | Jul 1997 | WO |
WO-9944159 | Sep 1999 | WO |
WO-9965237 | Dec 1999 | WO |
WO-0001149 | Jan 2000 | WO |
WO 0059204 | Oct 2000 | WO |
WO-0064165 | Oct 2000 | WO |
WO-0115449 | Mar 2001 | WO |
WO-0115451 | Mar 2001 | WO |
WO-0117195 | Mar 2001 | WO |
WO-0172042 | Sep 2001 | WO |
WO-0193524 | Dec 2001 | WO |
WO-0248863 | Jun 2002 | WO |
WO-02103940 | Dec 2002 | WO |
WO-02103941 | Dec 2002 | WO |
WO-02104030 | Dec 2002 | WO |
WO-02104031 | Dec 2002 | WO |
WO-03028381 | Apr 2003 | WO |
WO-03030540 | Apr 2003 | WO |
WO-03061245 | Jul 2003 | WO |
Number | Date | Country | |
---|---|---|---|
20030046708 A1 | Mar 2003 | US |