TELEVISION INTERACTIVE ACCESS SYSTEM USING URLS

Abstract: A television distribution network (12) for enabling a user to download Internet web pages related to the currently viewed television broadcast via channel hyperlinking. User sends channel hyperlink requests through upstream channel (22) to network headend (14) by actuating web button on remote controller (23). The headend is interfaced to Internet Service Provider or ISP (30) for downloading related web pages. The headend uses ID tag with channel and time of request information to identify the location of the information to be downloaded to the user. Preferably, the information is pre-cached from the ISP to a headend cache (31) in advance of the broadcast to facilitate quicker downloading of the information to the user.

Description: TELEVISION INTERACTIVE ACCESS SYSTEM USING URLS Technical Field The present invention relates generally to an access system and method for providing interactive access to an information source, such as the Internet, through a networked distribution system, such as a television or broadcast distribution system. More particularly, the present invention relates to a system and method for providing a receiver connected to a networked distribution system with information from the Internet or another information source which is related to the programming content of a currently received television, radio or other transmission. Background a rt As is well known, the "Internet" is a world-wide interconnected network of computers which provides users with access to a tremendous volume of information on practically any topic one can imagine. However, accessing the information normally requires the use of a personal computer and related hardware and software. Television is another communication medium which has continued to grow over the years with the advent of cable and satellite based distribution systems that provide subscribers with access to upwards of one hundred or more channels. These two communication media have not been combined with one another previously, and a need exists for a system which combines the two media in a convenient, user-friendly manner to provide television viewers with access to information from the Internet or another information source. Disclosure of Invention The present invention satisfies the foregoing need by providing a system and method for accessing television or broadcast program content related information from an information source, such as the Internet, through a networked distribution system, such as a television or broadcast distribution system. Conventional television distribution systems, for example, include a television distribution network which is interfaced through communications links (e.g., coaxial cables, optical fibers, radio and satellite wireless links, etc., or combinations thereof) to a plurality of user televisions. In most instances, each television is connected to a set top converter box or terminal which is interfaced between a communication link and the television for receiving and decoding the television signals from the distribution network. Television distribution systems of this type usually provide no or very limited means for a user to communicate through the distribution network to the television content provider. The distribution system employed in the preferred embodiment of the present invention differs from previous television distribution systems through provision of a plurality of upstream communication channels disposed between the users and the distribution network which enable the users to communicate therewith in real-time. In addition, the television distribution network is interfaced to an information source, such as the Internet, tlirough a headend server and router so that each user can access the information by sending access commands and information requests through the upstream communication channel to the headend server. The headend server retrieves the requested information and downloads it through one of a plurality of downstream television signal channels to the requesting user. In the preferred embodiment of the present invention, the system is employed specifically for linking real-time broadcast programming content with extensive related information using a technique known as channel hyperlinking. In one specific application relating to broadcast and cable television, channel hyperlinking provides the linking of a specified television frequency or channel to content from an Internet World Wide Web site for the purpose of offering additional information to the television viewer about the currently viewed programming content. As an example, if a user is currently viewing an advertisement for a particular product, they can simply actuate a button on their television remote control, and within seconds, receive additional information on the particular product from an Internet Web site. To implement the preferred embodiment of the present invention, one or more headend databases are interfaced to the headend server which contain related Internet-based information for the programs and advertisements being broadcast over the television distribution network. More particularly, for each program or advertisement to be associated with an Internet location, a database contains the Uniform Resource Locator (URL) address information for an Internet location which is associated with such programs or advertisements. Preferably, the HTML (Hyper Text Markup Language) Web site data for the specified Internet locations is also pre- stored in a cache that is interfaced to the headend server for substantially reducing access time thereto. To facihtate this predictive caching of the Web site from the Internet, the headend server is interfaced to an Internet Service Provider (ISP), and downloads the Web site data from the ISP to the cache prior to the broadcast of programming which is hyperlinked to the Web site data. When a system user wishes to access Internet information associated with a program or advertisement they are currently viewing, the user presses a channel hyperlink button on their television remote control. This instructs an application program in the user's set top converter box to send the request to the headend server through one of the upstream channels along with an identification number for the user's set top converter box, and information identifying the channel which the user is viewing. Upon receipt of the request, the headend server determines the exact time of the request from a system clock, and, using the identification number and channel information, accesses the headend database(s) to locate the URL address for the desired Internet information. This information is then passed on to one of a plurality of Internet browser applications with an instruction to download the associated Internet information to the user's set top converter box in accordance with the converter ID number. Typically, the Internet information is HTTP (Hyper Text Transport Protocol) data which is either dynamically accessed from the ISP with an Internet browser in a traditional manner, or which has been cached at the headend server based upon prior or predicted usage. To determine which Web pages should be associated with each program or advertisement, each broadcast source inserts an identification number or tag in the broadcast signal approximately once every second which identifies the program or advertisement content, as well as timing and duration information associated with such content. The headend database is continually updated with the ID tag information during broadcast. As discussed previously, the headend database also contains URL data which is associated with the particular program or advertising content included in the broadcast content tag information. This is provided as input to the headend database, and is updated as required through separate Internet downloads or through other broadcast or hard copy storage medium (e.g., magnetic tape). In addition, the headend database contains channel mappings which associate particular converter channels with a programming source. In this manner, when a system user actuates the channel hyperlink button, the headend server determines the time of button actuation from a system clock, and matches the converter ID number and channel information with the associated Internet information from the cache or ISP utilizing the channel mapping and content tagged information, as well as the URL data. A data collection center is also preferably provided for receiving the various broadcast, downloaded, or hard copy information. For example, this center can receive satellite broadcasts from the various broadcast sources (e.g., the television cable networks such as ABC, CBS, NBC, HBO, CNN, ESPN, etc.), and determines the required content tagged information. This center can also receive the downloaded and/or hard copy URL data to be associated with the broadcast programming and advertising content. This information can be assembled in a master database, relevant portions of which are then sent to the headend servers providing the interactive information source according to the present invention. This database information is matched by the headend servers with other database information relating to the applicable channel mappings, channel and timing information to interactively associate the particular programming or advertising content being viewed on the television with associated Internet information. Brief Description of Drawings The features and advantages of the present invention will become apparent from the following detailed description of a preferred embodiment thereof taken in conjunction with the accompanying drawings, in which: FIG. 1 is a schematic block diagram of a system constructed in accordance with a preferred embodiment of the present invention for linking television distribution system users to Internet based information which is related to the content of a viewed program; FIG. 2 is a schematic block diagram of a network headend employed in the system of FIG. 1; FIG. 3 is a schematic block diagram of a set top converter box circuit employed in the system of FIG. 1; FIG. 4 is a diagram of a downstream packet transmitted on one of the system's downstream channels; FIGs. 5A and 5B are diagrams of payloads that can be sent in the downstream packet shown in FIG. 4; FIG. 6 is a diagram of an upstream packet transmitted on one of the system's upstream channels; and FIGs. 7A-7F are diagrams of payloads that can be sent be sent in the upstream packet shown in FIG. 6. Best Mode for Carrying out the Invention With reference to FIG. 1, an information communication system 10 is illustrated for implementing the channel hyperlinking concept of the present invention in accordance with a preferred embodiment thereof. The system 10 includes a television distribution system 12 for distributing television and other programming to a plurality of system users. As is conventional, the distribution system 12 includes a network headend 14 for supplying programming through a distribution network 16. The distribution network 16 distributes the television programming through a plurality of transmission links 18 to a corresponding plurality of user terminals or set top converter boxes 20. Each of the transmission links 18 preferably includes a plurality of downstream channels 21, and at least one upstream channel 22. As is also conventional, each of the set top converter boxes 20 enables a user to select, via a remote control device 23, for example, one of the downstream channels 21 to be viewed on a television 24. Preferably, the remote control device 23 comprises a computer style keyboard which communicates with the set top converter box 20 by means of a conventional infra-red wireless link. Additionally, a mouse type input device (not shown) may be used in conjunction with the keyboard 23 as is conventional. aAlternatively, the remote control device 23 may also comprise a conventional television remote control. Each of the communication links 18 preferably comprises a coaxial cable, however, it will be understood that other types of links, such as fiber optics and wireless links, for example, may be employed. The distribution network 16 supplies the video programming information for each of the plurality of downstream channels 21 to each of the set top converter boxes 20 by using a conventional digital or analog communication scheme. In contrast to conventional television distribution systems, however, the communication links 18 are preferably operated in a two-way manner in which at least one of the upstream channels 22 is provided for each set top converter box 20 to enable it to send information requests to the network headend 14 in real-time. This allows a user to request access to Internet-based or other information related to the currently viewed prograirjming through actuation of a channel hyperlink button 25 on the keyboard 23. The network headend 14 receives video programming to be distributed to the user from a satellite 26 as is conventional. In contrast to conventional television distribution systems, however, the headend 14 can also access information from one or more headend databases 28 (hereinafter referred to as the hyperlink database), and this information may be used to select the Internet or other information which can be downloaded to the set top converter boxes 20 for viewing on the user televisions 24. The information stored in the hyperlink database(s) 28 is reference information which is related in some manner to the programs and advertisements being broadcast through the distribution network 16 to the users. For example, the reference information preferably includes source, content, timing and duration information regarding each program or advertisement. In addition, a key piece of information will typically be a Uniform Resource Locator (URL) which is used to reference more detailed information associated with the content of the programs and advertisements being broadcast. The programming content related information may be in any suitable form, such as text and associated graphics or pictures (e.g., Internet Web pages, full motion video, audio, etc.). Although the content related information may be from any source, it is preferable that at least some of the information be obtained from the Internet. This is preferably accomplished by interfacing the headend 14 to a conventional Internet Service Provider (ISP) 30. Although the headend 14 can access the information directly from the ISP 30 in real-time, it is preferable that the headend 14 access the information from the ISP 30 in advance of any information requests being received from the users, and stores or caches the information in a cache 31 interfaced between the ISP 30 and the headend 14 so that it may be quickly accessed and downloaded to a user in response to an information request. To facihtate channel hyperlinking by a user from a video program or advertisement to related Internet-based or other information, some means must be provided for identifying to the network headend 14, the identity of the program which was being viewed at the instant that the user initiated the hyperlinking request. This is accomplished by having all sources of broadcast programming periodically insert an identification number or tag, hereinafter referred to as an ID tag, into the transmitted television signal approximately once every second. The ID tag identifies the programming content, and may also identify the company or organization originating the program or advertisement, as well as unique demographic or geographic information which identifies known geographic and demographic categories within a given country or market. As will be discussed in greater detail below, the headend 14 employs the ID tag to perform a table look up operation in the hyperlink database(s) 28 to retrieve the reference information (e.g., URLs) which is necessary to access the content related information from the ISP 30 and/or the cache 31. A data collection center 34 is preferably provided which receives, monitors and collects broadcast programming via the satellite 26 from a plurality of broadcast and cable television network uplink centers 38 (only one shown in FIG. 1), each of which is operated by a corresponding broadcast or cable television network. The purpose of the uplink center 38 is not only to broadcast video programming via the satellite 26, but also to insert the ID tags in the video programming. In the case of analog television signals, this can be accomplished by inserting the ED tag in the vertical blanking interval (NBI) of the signal, or by inserting the tag in either the audio or live video stream. For digital communications, such as those based on the MPEG II format, for example, the ID tag data may be periodically (e.g., approximately once every second) inserted in a data stream associated with the particular video and audio data stream. Each of the uplink centers 38 also preferably communicates with an uplink center database 40 which stores information relating to the programming or advertising content such as the URL or other Web based information to be associated with the programming or advertising content. The URL data in each of the uplink center databases 40 is preferably communicated via the Internet to a master database 42 which is interfaced to the data collection center 34. The master database 42 contains the URL and other reference data for all channel hyperlinks for the various national broadcast and cable TV networks. This information is then retransmitted, again preferably through the Internet, to each of the network headends 14 where the URL data is stored in the one or more hyperlink databases 28. Additionally, it should also be noted that although much of the URL data stored in the hyperlink database 28 will be the same as the corresponding data stored in the master database 42, there will be some differences in cases where the URLs or other Web data to be associated with an ID tag, as supplied by the programming source, are to be unique for a particular geographic or demographic location or market. For example, an ID tag for an advertised product may be linked to information pertaining to one supplier of the product in a first market area, and information pertaining to a second supplier in a second market area. The data collection center 34 thus manages the transmission of the URL data from the master database 42 to the hyperlink database 28 in accordance with any geographic or demographic identifiers that may be present in each ID tag. .Also, the headend database 28 will likely contain only the information on ID tags for programming and advertising which may likely appear on the broadcast channels received by the headend 14, while the master database 42 will contain all such information. The collection center 34 also combines all of the ID tags which are present in all of the television signals that are received from the sateUite 26, and retransmits the ID tags as a combined data stream to a second sateUite 43. The second sateUite 43 transmits this combined ED tag data stream to each cable headend 14. aAlthough the ED tags are obviously present in the video signals being received by the cable headend 14 from the first sateUite 26, the separate transmission of the ID tags eliminates the need for the headend 14 to detect and remove the ID tags from the incoming video signals. aAltematively, however, it wiU of course be understood that the headend 14 can detect and remove the ID tags itself. The hyperlink database 28 also preferably receives URL hyperlink data from a local video content source or database 44 which supplies information for national network local affiliates, community access, locals schools, and cable operator sponsored channels, for example. A source 46 of local advertising insertion is also provided for supplying local advertisement ID tags to each hyperlink database 28. The local ad insertion equipment informs the hyperlink database 28 in real-time of any ID tags when it is going to insert advertisements in the broadcast. FIG. 2 nlustrates the detaUs of the headend 14 in the preferred embodiment of the present invention which operates by supplying channel hyperlink and other Internet information to each user through insertion of the information in the downstream television signals. The heart of the headend 14 is a headend server 50 which manages accessing of channel hyperlink information from the ISP 30, hyperlink database(s) 28 and local database 44, storage of pre-cached channel hyperlink information in the cache 31, and reception of program content ED tag information from an ID tag receiving circuit 52. The headend server 50 includes a processor 54 for carrying out these operations. The processor 54 sends Intemet information requests to, and receives requested information from, the ISP 30 by means of a number of conventional communications elements including a caching engine 55, an interface 56, a router 58 and a channel service unit/data service unit (CSU/DSU) 60. The caching engine 55 manages the predictive caching of HTML Web site hyperlink data from the ISP 30, and storage of this data in the cache 31. A conventional graphics processor 62 may also be provided, if necessary, for converting the graphics portion of the HTML data received from the ISP 30 into a graphics format which is compatible with the user television 24. The channel hyperlink information requests are received from a user by a set top communications controUer 70. These requests are forwarded to a session manager 72 which can manage multiple sessions from a pluraUty of the set top converter boxes 20, and maintains an association between the received request and the one of the converter boxes 20 which made the request. More particularly, each channel hyperlink information request received by the communications controUer 70 includes an identification number or code which identifies the set top converter box 20 that sent the request. The session manager 72 keeps track of this information and wiU match the Intemet information requested with the correct set top converter box 20 which submitted the request. aAfter a request is received from one of the set top converter boxes 20, the session manager 72 forwards the request to the processor 54, and connects the user to one of a pluraUty of active browser appUcations (browsers) 74. By providing a pluraUty of the browsers 74 which are actively running, but are not currently being used by any users, a user can be connected to the channel hyperlink information without the delays which are normaUy associated with the opening of a browser apphcation. The session manager 72 monitors the number of avaUable active browsers 74 as users are connected to the channel hyperlink information through the browsers 74, and the number of avaUable active browsers decreases. Once this number reaches a predetermined minimum, e.g., 3, the session manager 72 causes a predetermined number, e.g., 5, of the browsers 74 to be reactivated to insure that an active browser wiU always be avaUable when channel hyperlink information is requested to be accessed by a user. It should be understood that although the use of plural active browsers in the foregoing manner is preferred, it is not necessary to employ this feature to practice the present invention, and the browsers 74 could be opened in a conventional "as needed" manner if desired. The channel hyperlink information is accessed by the browser apphcation 74 from either the cache 31 or the ISP 30. The browser apphcation 74 constructs the accessed information (e.g., Web page) into a bitmap which is preferably compressed to reduce transmission time between the headend 14 and the set top converter box 20. The compressed bitmap is then forwarded by the browser apphcation 74 to a terminal display manager 76. Preferably, the terminal display manager 76 is designed to minimize further the actual amount of information that must be transmitted to the set top converter box 20. This is accompUshed by transmitting to the set top converter box 20, only the information necessary to refresh portions of a display screen that are to be changed. The set top communications controUer 70 transmits the display information from the display manager 76 to a data modulator 80. In a preferred embodiment, the modulator 80 comprises a NBI data inserter. As the name impUes, a VBI data inserter inserts the channel hyperlink related data into the vertical blanking interval of the video program currently being broadcast on the one of the downstream channels 21 on which the hyperlink data is to be downloaded. It should be noted that a pluraUty of the data modulators 80 is provided, one for each of the avaUable downstream channels 21. Alternatively, this information, along with appropriate identifiers, is included as part of an elementary digital stream of data. Each downstream channel 21 also includes an RF modulator 82 for modulating each television signal to the appropriate channel frequency. An RF combiner 84 is provided which receives the outputs from aU of the RF modulators 82 and combines them to form a single signal. This signal is then fed to a diplex filter 86, and finaUy to the distribution network 16. The purpose of the diplex filter 86 is to separate upstream channel hyperlink information requests received from the users over the transmission link 18, from the downstream television signals. These upstream requests are fed from the diplex filter 86 to a pluraUty of RF demodulators 87, one for each upstream channel 22, and then to an upstream data receiver 88 which forwards the requests to the communications controUer 70 for processing by the headend server 50. A network headend controUer 89 includes equipment for receiving television broadcast transmissions from the second sateUite 36, and distributing the transmissions over the respective downstream channels 21. Preferably, a noise detector 90 is also provided in the communications controUer 70 for detecting the noise level on each of the upstream channels 22. If the detected noise level is too high on one of the upstream channels 22, the communications controUer 70 can re-assign each of the set top converter boxes 20 to another one of the upstream channels 22. Alternatively, the communications controUer 70 can direct the affected ones of the set top converter boxes 20 to transmit at a higher level if necessary. Preferably, the noise detector 90 comprises software that determines noise levels by keeping statistics corresponding to the number of corrupted data packets received on each of the upstream channels 22. With reference now to FIG. 3, the circuitry contained in the set top converter box 20 is ihustrated. In the preferred embodiment, downstream television signals received from the distribution network 16 are fed to a downstream data extractor 92 via an RF tuner 94. In the embodiment in which the data modulator 80 comprises a VBI inserter, the extractor 92 comprises a VBI extractor. As is conventional, the RF tuner 94 is controUed by the user to select and demodulate one of the downstream channels 21. AdditionaUy, a set top or terminal processor 96 is provided which can also control the RF tuner 94 for selection, in response to information received from the communications controUer 70, the one of the downstream channels 21 on which requested hyperlink information wiU be received. The extractor 92 removes the inserted channel hyperlinking information from the blank intervals of the video signal, and forwards it to the terminal processor 96. Preferably, the processor 96 also includes the software for performing the function of decoding and decompressing the video display data. -Alternatively, the set top converter box 20 may include a decoding and/or decompression module 98 interposed between the extractor 92 and the processor 96 for performing this function. The terminal processor 96 is interfaced to a memory bank or module 100 which facilitates the various processing functions performed by the processor 96, including production of the video display information from the extracted information, and display of the same on the television display screen 24. The terminal processor 96 also receives channel hyperlinking commands from a user via the keyboard 23. The remote control 23 preferably includes an IR transmitter 102 which communicates with an IR receiver 104 contained within the set top converter box 20. It wUl be of course understood that any other type of input arrangement, such as a hard wired keyboard or mouse, for example, could be employed for entering the channel hyperhnk requests. The receiver 104 forwards the channel hyperlinking request to the terminal processor 96 which identifies the channel to which the RF tuner 94 is tuned. This information, along with the set top converter box identification number, is then forwarded by means of an upstream transmitter 106 through the transmission link 18 to the headend 14 for processing. It should be understood that whUe one embodiment of the invention is specificaUy designed for use with analog video signals in which the channel hyperhnk information is inserted into the vertical blanking intervals of the analog video signals, the information could also be inserted into the horizontal blanking intervals and/or the video and audio streams if desired. Such alternative arrangements would be useful, for example, for increasing the transmission rate of the channel hyperhnk information. Further, it would be a simple matter to implement the present invention using an aU digital format, such as MPEG π, for example. In such an arrangement, the data modulator 90 and extractor 92 would be implemented by a corresponding digital data inserter and extractor which are compatible with the selected digital format. The transmission of upstream and downstream data between the set top converter box 20 and the communications controUer 70 of the headend server 50 wUl now be described with reference to FIGs. 4-7. Preferably, each upstream channel 22 of the television distribution network 12 is multiplexed into a pluraUty of upstream slots, where the temporal length T of each slot is equal to the temporal length T of a single picture field in the downstream video signals, where each picture field includes a picture interval and a vertical blanking interval. In the USA broadcasting convention, T equals l/60th of a second. Also preferably, a pluraUty of the upstream channels 22 are paired with each downstream channels 21. In the preferred embodiment of the present invention, up to four upstream channels are paired with each downstream channel. -Also preferably, each set top converter box 20 in the system 10 is assigned to at least one of the upstream slots at any one time. Preferably, and referring now to FIG. 4, each transmission of downstream data from the communications controUer 70 of the headend server 50 is in the form of at least one downstream packet 110. As illustrated, the downstream packet 110 includes a four-byte cycUcal redundancy check (CRC) value based on the rest of the downstream packet 110, where the CRC value is employed to detect any corruption of the data in the packet 110. The use of CRC values is weU-known and, therefore, need not be further described. The downstream packet 110 also includes four SND bytes (SND A - SND D), where each SND byte corresponds to an upstream channel associated with the downstream channel on which the downstream packet 110 is being sent. Each SND byte contains a session ID of a sender (i.e., a set top converter box 20) that is aUowed to transmit upstream data in the next upstream slot of the corresponding upstream channel. For example, if the SND B byte has a value of , then the set top converter box 20 assigned the session ID ' 1' may transmit in the next upstream slot on the upstream channel that corresponds to 'B'. Preferably, if a particular SND byte has a value of zero, any set top converter box 20 is aUowed to transmit in the next corresponding upstream slot, for example, to request a new session. Each downstream packet 110 also has four acknowledgment (ACK A - ACK D) bytes, where each ACK byte corresponds to an upstream channel associated with the downstream channel on which the downstream packet 110 is being sent. As should be understood, each ACK byte is sent in response to the successful receipt of upstream data on a respective upstream channel in the previous upstream slot. Preferably, each ACK byte includes the session ID of the transmitting set top converter box 20 and a check bit indicating whether the serial number of the upstream packet being acknowledged was an even or an odd number. Referring now to FIG. 5 A, the downstream packet 110 also has a two-byte packet serial number, foUowed by a multi-byte downstream data payload 112. The downstream data payload 112 includes a one-byte payload session ID for identifying the session ED of the intended receiving set top converter box 20 for the payload, a two-byte length indicator, and the contents of the data being sent in the packet. As should be understood, although aU of the set top converter boxes 20 on the downstream channel wiU receive aU downstream packets 110, a particular set top converter box 20 wiU ignore the contents of the data being sent in the packet 110 unless the data payload 112 has a payload session ID corresponding to the session ID of the set top converter box 20. Preferably, a downstream packet 110 periodicaUy has a housekeeping payload 114 rather than a data payload 112, as Ulustrated in FIG. 5B. As lustrated, the housekeeping payload 114 includes four channel bytes, each channel byte identifying a respective one of the four upstream channels 22 associated with the one of the downstream channels 21 on which the downstream packet 110 is being sent. Accordingly, if a set top converter box 20 wishes to transmit a channel hyperlink request, the set top converter box 20 must Usten on the downstream channel for a housekeeping packet 114, and upon receipt of such housekeeping packet can determine what upstream channels are associated with the downstream channel. The set top converter box 20 can then send a hyperlink request on one of the associated upstream channels 22. If hyperhnk requests were recently made and acted upon by the communications controUer 70, the housekeeping payload 114 also includes a number of hyperlink request acknowledgments (ACKs). In particular, the housekeeping payload 114 includes a one-byte indicator of the number of ACKs, foUowed by each ACK Each ACK includes a 'box ED' corresponding to a unique terminal ID number associated with a requesting set top converter box 20, a one-byte session ID that identifies the requesting set top converter box 20 during the channel hyperlink session, a two-byte downstream channel indicator indicating the one of the downstream channels 21 that the requesting set top converter box 20 should tune in to, .and a one-byte upstream channel indicator indicating the upstream channel 22 on which the set top converter box 20 should be broadcasting. Referring now to FIG. 6, upstream data from the set top converter box 20 is sent in the form of an upstream packet 116. As illustrated, each upstream packet 116 includes a 4- byte CRC value, as with each downstream packet 110, a one-byte identifier which has the session ID assigned to the set top converter box 20 and a check bit indicating whether the upstream packet 110 has an even or an odd packet number, a one-byte data length indicator indicating the length of a multi-byte upstream payload in the packet 116, and the payload. As Ulustrated in FIG. 7 A, the upstream payload has a structure 118 that includes a two-byte length indicator and the contents of the payload. FIGs. 7B-7F are examples of the contents of various upstream payloads. As lustrated in FIG. 7B, a channel hyperlink request 120 from a set top converter box 20 includes a one-byte indicator signifying that the upstream packet 116 is a hyperhnk request 120, a two-byte indicator identifying the TN channel that the set top converter box 20 is currently tuned to, and a four-byte indicator identifying the unique box ID of the requesting set top converter box 20. Upon receipt of the channel hyperlink request in 20, the headend server 14 determines the time of the request from a real-time system clock. The time and TN channel number are then used by the headend server 14 to access the hyperlink database 28 to locate the appropriate URL. As Ulustrated in FIG. 7C, an upstream acknowledge payload 122 includes a one-byte indicator signifying that the upstream packet 116 is an upstream acknowledge 122, a two-byte serial number of the downstream packet 110 that is being acknowledged, and a one-byte acknowledge (ACK) indicator. On occasion, an expected downstream data packet 110 is not received, or else is received with a corruption or error. Accordingly, and as Ulustrated in FIG. 7D, an upstream packet 116 may have an upstream re-send request payload 124 which includes a one-byte indicator signifying that the upstream packet 116 is a re-send request 124, and a two-byte serial number of the downstream packet 110 that must be re-sent. If the data being sent upstream by the set top converter box 20 is a keystroke from a computer-style keyboard or the like, then the upstream packet 116 has an upstream keystroke payload 126, as Ulustrated in FIG. 7E, which includes a one-byte indicator signifying that the upstream packet 116 is a keystroke payload 126, and a two-byte keystroke code. As should be understood, if the keystroke is from a keyboard, the keystroke code includes information on whether a CTRL/ALT/SHTFT key is being pressed at the time a key is struck. If a mouse or mouse-like device is employed by a user as an input device, mouse movements are input to the set top converter box 20 and the system 10 as commands. Accordingly, an upstream packet 116 may have upstream mouse movement information 128, as Ulustrated in FIG. 7F. The mouse movement information 128 includes a one-byte indicator signifying that the upstream packet 116 is a mouse movement payload 128, a one-byte mouse- stroke code, a two-byte mouse X-coordinate, and a two-byte mouse Y-coordinate. As should be understood, the one-byte mouse-stroke code includes information on whether a SHIFT/CTRL/ALT key is being pressed, and left, middle and right mouse button information. As one skilled in the art wiU readily appreciate, the particular structures of the downstream and upstream packets 110, 116 may be changed without departing from the spirit and scope of the present invention. For example, if only three upstream channels are assigned to a downstream channel, only three SND and three ACK bytes are necessary in the downstream packet 110 (FIG. 4). SimUarly, fields in the packets 110, 116 may be added, deleted or changed in terms of structure or size. As should be understood, due to the structure of a typical television distribution network, noise on upstream channels is problematic. As a result, it is known that upstream channels can have error rates as high as 1: 100000 to 1: 100. Accordingly, it is preferable that upstream data packets 116 are kept relatively short to lessen the probability that any one packet will be corrupted by noise. It should be noted, however, that such short upstream packets 116 are not prohibitive in that most upstream commands are relatively short: a mouse movement, a keystroke, etc. With the system 10 as described above, a set top converter box 20 generates a channel hyperhnk request in the foUowing manner. Preliminarily, the set top converter box 20 is tuned into one of the downstream channels 21 on which downstream packets 110 are being sent, and Ustens for a housekeeping packet 114 to determine which upstream channels 22 are associated with the downstream channel 21. A random one of the upstream channels 22 is selected, and a hyperlink request 120 is sent in an upstream slot that has not been preassigned by a respective SND byte. If a hyperlink request acknowledge (ACK) is subsequently received within a pre-determined number of time periods T (corresponding to the length of a picture field and to the length of an upstream slot), the hyperhnk request has been successfully received. If not, new random downstream and upstream channels 21 and 22 may be tried. In the unlikely event that two set top converter boxes 20 send a hyperhnk request in the same upstream slot, the communications controUer 70 wUl receive coUided data and neither set top converter box 20 wiU receive an ACK Preferably, each set top converter box 20 then waits a random amount of time and attempts a second hyperhnk request. The process is repeated untU both hyperlink requests are handled by the communications controUer 70. Once receipt of the hyperhnk session request is acknowledged, the set top converter box 20 waits for a downstream packet 110 that has been addressed to the set top converter box 20 in response to the request. Preferably, each received downstream packet 110 is checked to determine if the packet serial number is correct. If the packet serial number is wrong, a re-send request 124 is sent with the packet serial number of the last packet that was successfiiUy received. Preferably, the headend server 50 interprets a re-send request 124 as a request to re-send the packet 110 having the re-send serial number and every packet 110 sent thereafter. If a re-send request 124 is sent multiple times without result, or if a downstream packet 110 has not been received by the set top converter box 20 in a predetermined period of time, the set top converter box 20 can attempt a re-connect. Preferably, in a re-connect attempt, the set top converter box 20 makes a hyperlink session request 120 on a new one of the upstream channels 22, and the communications controUer 70 responds on a different one of the downstream channels 21. As was discussed above, each downstream packet 110 and upstream packet 116 is quickly acknowledged (ACKed) by the packet recipient, as Ulustrated in FIGs. 4 and 7C. As should be understood, such quick ACKs are necessary to address the problem of noise and to provide real-time access to the ISP 30. Preferably, a packet sender waits for up to two upstream slots or picture fields to receive an ACK from a packet recipient. If an ACK is not received in this time by a set top converter box 20, the set top converter box 20 preferably re- sends the upstream packet 116 for which acknowledgment is sought. If a set top converter box 20 is forced to re-send data a predetermined number of times, a re-connect attempt is preferably made on new ones of the downstream and upstream channels 21 and 22. In the operation of the channel hyperlinking system 10, each of the headends 14 preferably pre-caches from the ISP 30, the HTML data pertaining to the channel hyperlinks associated with upcoming programming prior to the broadcasts, and stores this information in the cache 31. As the video programs are received from the sateUite 26 and the ID tag data stream is received from the second sateUite 43, the headend 14 coUects the hyperlink ED tags from the data stream, thereby reducing the hardware costs at the headend 14. At any given instant, the headend 14 can therefore identify the program content of any channel. The headend 14, upon receiving the URL data from the master database 42, can also retrieve the Web information located at the URL address from the ISP 30. As discussed previously, whUe it is preferable that this procedure be carried out in advance of a video broadcast to facihtate faster processing of hyperhnk requests, this process can also be done in real-time if necessary. If a user viewing a program or advertisement on channel - , for example, wishes to obtain additional information related to the advertised product or television program, the user presses the channel hyperlink button 25 on the keyboard 23 to initiate the request. The terminal processor 96 in the set top converter box 20 receives the request, and forwards it along with the channel and converter box identification information to the headend 14 for processing. When the headend 14 receives the channel hyperlink information requests from the user, the communications controUer 70 sends the channel ED information to the terminal processor 96 which identifies the one of the downstream channels 21 on which the requested channel hyperlink information wiU be transmitted. In response, the terminal processor 96 instructs the RF toner 94 to switch to the designated channel. The session manager 72 then connects the user to one of the avaUable active browsers 74, and the headend processor 54 uses the channel and request time information to perform a look up operation in the hyperlink database 28. In this example, the processor 54 accesses the HTML data from the cache 31 which corresponds to the URL information identified by the hyperhnk ID tag for channel A at the exact time that the hyperlink request was made. The HTML data is then downloaded by the browser 74 to the user on the selected downstream channel for display on their television 24. If the plural active browsers and pre-caching features of the invention are employed, this entire process from actuation of the hyperlink button 25 to display of the downloaded information on the user television 24 should take only a few seconds by virtue of the fact that the user is quickly connected to an active browser apphcation, and the downloaded Internet- based hyperlink information has already been pre-cached in the cache 31. Once the user is finished browsing the downloaded information, they either actuate the hyperlink button 25 on the keyboard 23 for closing the Web page, or if they are using a mouse-type input device, they point and click on a back or exit button on the television display screen. In response, the session manager 72 closes the browser apphcation 74 which has been delegated to the user, and the terminal processor 96 switches the tuner 94 back to the previously selected channel so that the user may resume viewing the video broadcast. In summary, the present invention provides a convenient, user-friendly means by which a user can quickly access Internet-based, or other, information which is related to the programming content of a currently viewed television broadcast, and can view the information on their television without the need for an expensive computer system or the necessary skiUs for operating such a system. It should be understood that while the preferred embodiment of the present invention is designed specificaUy for accessing programming content related Internet-based information in a cable or other television distribution system, the inventive channel hyperlinking concept embodied in the preferred embodiment could be appUed to any type of communication medium in which one or more information containing transmission signals are broadcast and received by one or more users, and the users can initiate hyperlink requests to access other information which is related to the information contained in the transmission signals. For example, the hyperlinking concept could also be appUed to radio broadcasts in which a user, employing a personal computer or the like, could hyperlink to Internet-based or other information pertaining to a currently received radio broadcast. SimUarly, the hyperlinking concept could be appUed to pager signal distribution systems wherein, upon reception of a predetermined pager signal, a user could hyperhnk to an information source containing pertinent information which the transmitter of the pager signal wants the receiver to access. In view of the foregoing, it wiU therefore be understood that the scope of the invention as defined in the foUowing claims is not limited to the preferred embodiment, and that the above and numerous additional variations and modifications could be made thereto without departing from the scope of the invention as defined in the foUowing claims.

Claims: Claims 1. A system for providing access to an information source comprising: a) an information source; b) a pluraUty of terminals, each said terminal including: 1) a receiver for receiving information from said information source and a transmission signal from a transmission signal source; and 2) a transmitter for transmitting a request for information to be received from said information source; and c) a network for receiving information from said information source and said transmission signal from a transmission signal source, and distributing said information and said transmission signal to said plurality of terminals, said network including: 1) a receiver for receiving requests for information from said terminals; and 2) means for accessing information in said information source which is related to the information content of said transmission signal, and, in response to an information request received from a first of said terminals during reception of said transmission signal by said first terminal, transmitting said related information to said first terminal. 2. The system of claim 1, wherein said information source comprises a cache interfaced to said network. 3. The system of claim 1, wherein said information source further comprises the Intemet, and said network further includes means for accessing information from the Intemet through an Intemet Service Provider (ISP). 4. The system of claim 3, wherein said network fiirther includes means for accessing information from the Intemet through said ISP which is related to the information content of a transmission signal to be broadcast to said terminals by said network, and storing said information in a cache interfaced to said network for fiiture access in response to information requests received from said teπninals during broadcast of said transmission signal. 5. The system of claim 1, wherein said transmission signal includes an identification tag which is periodicaUy transmitted with said transmission signal, said identification tag being employed by said network to identify, in response to a received information request, information in said information source which is related to the information content of a transmission signal being received by one of said terminals when said terminal generates an information request. 6. The system of claim 5, wherein each said terminal further includes a terminal processor for generating an information request, and transmitting said request to said network with additional information identifying a receiver channel to which said terminal receiver is tuned at the time of said request, wherein said network employs said channel information, said identification tag and timing information identifying the time at which said request is generated, to determine the information content of the transmission signal received by said terminal at the time that the information request is generated thereby. 7. The system of claim 6, further including a database interfaced to said network for storing reference information corresponding to said identification tag which identifies the location in said information source of information related to the information content of said transmission signal. 8. The system of claim 7, further including a master database for receiving and storing reference information for a plurality of broadcast transmission signals which identifies the location in said information source of information related to the information content of each said broadcast transmission signal, and means for transmitting information in said master database to said network database. 9. The system of claim 8, wherein said reference information in said master database includes Uniform Resource Locators (URLs) for Intemet locations containing information which is related to the information content of each said broadcast transmission signal. 10. The system of claim 9, wherein said information source includes a cache interfaced to said network for storing HTML data for information accessed from the Intemet at locations specified by said URLs. 11. The system of claim 1, wherein said information source comprises the Intemet, and said network includes a browser apphcation for use by one of said terminals requesting information to access and browse information from the Intemet through an Intemet Service Provider (ISP). 12. The system of claim 11, wherein said network further includes a plurality of said browser apphcations, and means for maintaining a number of said browser apphcations in an active state prior to receiving an information request from one of said terminals, whereby one of said active browser apphcations can be immediately employed by one of said terminals for accessing information from the Intemet through said ISP. 13. The system of claim 1, wherein said transmission signal comprises a television broadcast signal, and said information source contains information related to the programming content of said television broadcast signal. 14. The system of claim 13, wherein said plurality of terminals and said network are disposed in a television distribution system. 15. The system of claim 14, wherein said television distribution system is a cable television distribution system. 16. A system for providing access to the Intemet through a television distribution network comprising: a) a source of Intemet based information; b) a pluraUty of terminals, each said terminal interfaced to a television signal receiving device and including: 1) a multiple channel receiver for receiving Intemet based information from said information source and a plurality of broadcast television transmission signals on a corresponding pluraUty of channels; and 2) a transmitter for transmitting a request for Intemet based information to be received from said information source; and c) a network for receiving Intemet based information from said information source and said transmission signals from at least one broadcast television transmission signal source, and distributing Intemet based information from said information source and said broadcast television transmission signals from said signal source on a plurality of channels to said pluraUty of terminals, said network including: 1) a receiver for receiving requests for Intemet based information from said terminals; and 2) means for accessing Intemet based information in said information source which is related to the information content of said broadcast television transmission signals, and, in response to an information request received from a first of said terminals during reception of one of said broadcast television transmission signals by said first terminal, transmitting to said first terminal for reception by said television signal receiving device, Intemet based information which is related to the information content of said one of said broadcast television transmission signals at the time said request is made by said first terminal. 17. The system of claim 16, wherein said network further includes means for accessing information from the Intemet through an Intemet Service Provider (ISP). 18. The system of claim 17, wherein said network fiirther includes means for accessing information from the Intemet through said ISP which is related to the information content of a pluraUty of television transmission signals to be broadcast to said terminals by said network, and storing said information in a cache interfaced to said network for future access in response to information requests received from said terminals during broadcast of said television transmission signals. 19. The system of claim 16, wherein each of said television transmission signals includes an identification tag which is periodicaUy transmitted with each said television transmission signal, said identification tag being employed by said network to identify, in response to a received information request, Intemet based information which is related to the information content of one of said television transmission signals being received by one of said terminals when said terminal generates an information request. 20. The system of claim 19, wherein each said terminal further includes a terminal processor for generating an information request, and transmitting said request to said network with additional information identifying a receiver channel to which said terminal receiver is tuned at the time of said request, wherein said network employs said channel information, said identification tag and timing information identifying the time at which said request is generated, to determine the information content of the television transmission signal received by said terminal at the time that the information request is generated thereby. 21. The system of claim 20, further including a database interfaced to said network for storing reference information corresponding to said identification tag which identifies the location in said information source of information related to the information content of said television transmission signal. 22. The system of claim 21, further including a master database for receiving and storing reference information for a pluraUty of broadcast television transmission signals which identifies the location in said information source of information related to the information content of each said broadcast television transmission signal, and means for transmitting information in said master database to said network database. 23. The system of claim 22, wherein said reference information in said master database includes Uniform Resource Locators (URLs) for Intemet locations containing information which is related to the information content of each said broadcast television transmission signal 24. The system of claim 23, wherein a cache is interfaced to said network for storing HTML data for information accessed from the Intemet at locations specified by said URLs. 25. The system of claim 16, wherein each of said terminals includes means for a user to enter a request for Intemet based information which is related to the information content of a television broadcast currently being viewed by said user on said television signal receiving device. 26. The system of claim 25, wherein said means for a user to enter a request comprises a button on a remote control device. 27. The system of claim 16, wherein said means in said network for transmitting said Intemet based information comprises a data modulator for inserting said information in a television transmission signal being broadcast by said network on one of said receiver channels in said first terminal. 28. The system of claim 27, wherein said data modulator comprises a vertical blanking interval inserter for inserting said information in the vertical blanking intervals of said television transmission signal. 29. A method for accessing transmission signal content related information from an information source, said method comprising the steps of: a) providing a terminal, said terminal including a receiver for receiving a transmission signal and a transmitter for sending a request for information; b) providing a transmission signal distribution network for receiving a transmission signal from a signal source and broadcasting said transmission signal to said terminal receiver; c) providing an information source interfaced to said network, said information source containing information related to the information content of said transmission signal; d) transmitting said transmission signal from said network to said terminal receiver; e) generating a request at said terminal for information related to the information content of said transmission signal during reception thereof and sending said request to said network; f) in response to reception of said request from said terminal, said network: 1) identifying information in said information source which is related to the information content of said transmission signal; 2) accessing said content related information; and 3) transmitting said content related information to said terminal. 30. The method of claim 29, wherein said step of said network accessing said information further comprises accessing said information from the Intemet through an Intemet Service Provider. 31. The method of claim 30, wherein said step of said network accessing said information further comprises: a) before said transmission signal is transmitted to said terminal receiver, accessing information from the Intemet through an Intemet Service Provider which is related to the information content of said transmission signal; b) storing said related information in a cache interfaced to said network; and c) accessing said related information from said cache when said information request is received. 32. The method of claim 29, wherein said step of said network identifying information in said information source which is related to the information content of said transmission signal, further comprises: a) deteiTxuning from an identification tag periodicaUy transmitted with said transmission signal by said signal source, and information identifying the time at which said request is made, the identity of the information content of said transmission signal; and b) matching said identification tag with reference information identifying the location of said content related information in said information source, said reference information being stored in a network database accessed by said network. 33. The method of claim 32, wherein said step of said terminal sending said request further includes sending information identifying a channel to which said terminal receiver is tuned, said network employing said channel information with said identification tag and time of request information to determine the information content of the transmission signal being received by said terminal at the time said request is generated. 34. The system of claim 32, further comprising the steps of generating a ma.ster database of reference information for a pluraUty of broadcast transmission signals which identifies the location in said information source of information related to the information content of each said broadcast transmission signal, and transmitting information in said master database to said network database. 35. The method of claim 34, wherein said reference information in said master database includes Uniform Resource Locators (URLs) for Intemet locations containing information which is related to the information content of each said broadcast transmission signal. 36. The method of claim 35, wherein said step of said network accessing said content related information fiirther comprises accessing HTML data from the Intemet at locations specified by said URLs. 37. A method for accessing broadcast television transmission signal content related information from the Intemet, said method comprising the steps of: a) providing a pluraUty of terminals, each said terminal being interfaced to a television transmission signal receiving device, and including a multiple channel receiver for receiving a transmission signal and a transmitter for sending a request for Intemet based information which is related to the information content of a currently received television transmission signal; b) providing a television transmission signal distribution network for receiving a pluraUty of broadcast television transmission signals from at least one signal source and transmitting said television transmission signals to said terminal receivers; c) providing an information source interfaced to said network, said information source containing Intemet based information related to the information content of said television transmission signals; d) transmitting said television transmission signals from said network to said terminal receivers; e) generating at least a first request at a first of said terminals for information related to the information content of one of said television transmission signals during reception by said first terminal, and sending said request to said network; f) in response to reception of said request from said first terminal, said network: 1) identifying Intemet based information in said information source which is related to the information content of said television transmission signal; 2) accessing said content related information; and 3) transmitting said content related information to said first terminal. 38. The method of claim 37, wherein said step of said network accessing said information further comprises accessing said information from the Intemet through an Intemet Service Provider. 39. The method of claim 38, wherein said step of said network accessing said information further comprises: a) before said television transmission signals are transmitted to said terminal receivers, accessing information from the Intemet through an Intemet Service Provider which is related to the information content of said television transmission signals; b) storing said related information in a cache interfaced to said network; and c) accessing said related information from said cache when said information request is received. 40. The method of claim 37, wherein said step of said network identifying information in said information source which is related to the information content of said television transmission signal, further comprises: a) determining from an identification tag periodicaUy transmitted with said television transmission signal by said signal source, and information identifying the time at which said request is made, the identity of the information content of said television transmission signal; and b) matching said identification tag with reference information identifying the location of said content related information in said information source, said reference information being stored in a network database accessed by said network. 41. The method of claim 40, wherein said step of said terminal sending said request further includes sending information identifying a channel to which said terminal receiver is tuned, said network employing said channel information with said identification tag and time of request information to determine the information content of the television transmission signal being received by said terminal at the time said request is generated. 42. The system of claim 40, further comprising the steps of generating a master database of reference information for a pluraUty of broadcast television transmission signals which identifies the location in said information source of Intemet based information related to the information content of each said broadcast television transmission signal, and transmitting information in said master database to said network database. 43. The method of claim 42, wherein said reference information in said master database includes Uniform Resource Locators (URLs) for Intemet locations containing information which is related to the information content of each said broadcast television transmission signal. 44. The method of claim 43, wherein said step of said network accessing said content related information further comprises accessing HTML data from the Intemet at locations specified by said URLs. 45. The method of claim 37, wherein said step of said network transmitting said content related information to said first terminal further comprises connecting said first terminal to an Intemet browser apphcation located in said network, and downloading said content related information to said first terminal. 46. The method of claim 45, wherein said step of connecting said first terminal to an Intemet browser apphcation further comprises connecting said first terminal to one of a plurality of active Intemet browser apphcations in said network. 47. The method of claim 37, wherein said step of generating a request fiirther comprises a user entering a request in said first terminal for Intemet based information which is related to the information content of a television broadcast currently being viewed by said user on said television signal receiving device. 48. The method of claim 47, wherein said user to enter said request by actuating a button on a remote control device. 49. The method of claim 37, wherein said step of transmitting said Intemet based information to said first terminal comprises inserting said information in a television transmission signal being broadcast by said network on one of said receiver channels in said first terminal. 50. The method of claim 49, wherein said information is inserted in the vertical blanking intervals of said television transmission signal.

Inventors: AUGENBRAUN JOSEPH E, GROSKY AARON, KRISBERGH HAROLD, KUNKEL GERARD, LEE JAE HEA EDWARD, AUGENBRAUN, JOSEPH, E., GROSKY, AARON, KRISBERGH, HAROLD, KUNKEL, GERARD, LEE, JAE, HEA, EDWARD
Applicants: WORLDGATE COMMUNICATIONS INC, WORLDGATE COMMUNICATIONS, INC.
Application year: 1998
Main classification: G06F12
IPC codes: G06F15, H04H1, H04L29, H04N7