CA2121592C - Information broadcasting system and method - Google Patents
Information broadcasting system and method Download PDFInfo
- Publication number
- CA2121592C CA2121592C CA002121592A CA2121592A CA2121592C CA 2121592 C CA2121592 C CA 2121592C CA 002121592 A CA002121592 A CA 002121592A CA 2121592 A CA2121592 A CA 2121592A CA 2121592 C CA2121592 C CA 2121592C
- Authority
- CA
- Canada
- Prior art keywords
- information
- data packets
- data
- information database
- indices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H40/00—Arrangements specially adapted for receiving broadcast information
- H04H40/18—Arrangements characterised by circuits or components specially adapted for receiving
- H04H40/27—Arrangements characterised by circuits or components specially adapted for receiving specially adapted for broadcast systems covered by groups H04H20/53 - H04H20/95
- H04H40/90—Arrangements characterised by circuits or components specially adapted for receiving specially adapted for broadcast systems covered by groups H04H20/53 - H04H20/95 specially adapted for satellite broadcast receiving
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/18523—Satellite systems for providing broadcast service to terrestrial stations, i.e. broadcast satellite service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H20/00—Arrangements for broadcast or for distribution combined with broadcast
- H04H20/16—Arrangements for broadcast or for distribution of identical information repeatedly
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H20/00—Arrangements for broadcast or for distribution combined with broadcast
- H04H20/40—Arrangements for broadcast specially adapted for accumulation-type receivers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/02—Arrangements for generating broadcast information; Arrangements for generating broadcast-related information with a direct linking to broadcast information or to broadcast space-time; Arrangements for simultaneous generation of broadcast information and broadcast-related information
- H04H60/06—Arrangements for scheduling broadcast services or broadcast-related services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/27—Arrangements for recording or accumulating broadcast information or broadcast-related information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04H—BROADCAST COMMUNICATION
- H04H60/00—Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
- H04H60/76—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
- H04H60/81—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself
- H04H60/82—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet
- H04H60/87—Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet accessed over computer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/20—Adaptations for transmission via a GHz frequency band, e.g. via satellite
Abstract
An information broadcasting system (100) provides a large number of subscribers access to a large amount of information using one or more satellite transmission channels. The system (100) can also use cable television transmission channels. A program supplier station (102) stores an information database (112) and tags all the information in the database with indices so as to form a single hierarchical structure which encompasses the entire informatio n database (112). Portions of the information database (112) are transmitted often, at least once per day, in order to provide the basic subscriber with information need to access the remainder of the database (112). The information provided by the basic subscriber service, which will typically include at least 50 gigabytes of data, is available to all subscribers without requiring two way communications between the subscribers and the program supplier station. Using a tiered system for scheduling transmission of the 5 0 gigabytes or so of information included in the basic subscriber service, as well as an intelligent subscriber request anticipation scheme for retrieving information before the subscriber asks for it, the present invention provides subscribers with reasonably quick access to all the contents of the large database while using only a modest amount of bandwidth.
Description
~~ ~93/0~S3i ~ ~ ~ ~ ~ ~ ~ ~C1'JU592/090~7 .,, INFORMATION BROADCASTING SYSTEM AND METHOD
;: The present invention relates generally to the transmission or broadcastfig of digital information to a wide base of subscribers, and particularly to methods and systems for providing access by many subscribers to an almost rp~ unlimited amount of information and/or programming material.
BACtCGROIJND OF THC INVENTION
The goat of computerized information servers is to provide a system that encourages use by subscribers, provides acoess to a large range of information, and which is f6exible and ineacpensive for information publishers.
Comput~rized inforrnat'son services which exist today include Prodigy, 'I0' Compuserve, and Dialog. Typically, the user either pays a monthly fee or a connect'~ome feo for the most basic service and additional or special servides ore provided for additional fees.
AEI of the ab~ve mentioned computer services require two way communications betv~een the user and the inforrrtation server in order to l,ra service each new request by the user. in other enrords, the user sends requests; and then selected data is transmitted individually to that user in response to his/her request. This tv~o way "query based" communication - scheme is also prevalent in other types of information servers. For instance, the "pay per view" services provided by cable television companies allow a ~(~ subscriberto call the company and request a movie. The company then sends WO 93/09631 PCT/US92f0908'7 a signal to the subscriber's television signal decoder to enable it to decode the program on a particular channel during the period of time associated with the requested movie. tn this case, the "information" (a program or movie!
is being transmitted in any case, but subscribers are only provided access "iz .
. to the program 'if they pay a special fee.
x~ 5~
Two nrtajor distinctions between the present invention and the prior art query based information servers are (11 the present invention has a bandwidth that is thousands of times of greater than the prior art systems, thereby enabling high speed; low cost distribution of information, aid (2) the present invention greatly reduces the amount of two-way communication required between subscribers and the information server by automatically transmitting information that responds to most anticipated "requests" by subscribers.
Onlyihose subscriber requests not satisfied by the automatically transmitted information need to be conveyed to the information server.
The goal of the present invention is to provide widespread, high speed access to a virtual omniscient database having typically welt in excess of a terabyte ('i0'Z bytesp of data. lJsing a data channel capable of transmitting, say, 1,5 megabytes of data per second; the present invention can provide virtually instantaneous access to about a 't 00 megabytes of information, high speed ~ access (e.g; within two hours) to about a gigabyte of information, and can provide medium speed access; with perhaps 12 0~ 24 hour turn-around, to p~rhaps 100 terabytes of informatioryFurthermore, such access can be provided to a very large set of users without having to use a large number of data channels.
The large bandwidth of the present invention's information server enables the system to provide subscribers with multimedia p~ograrnming, including 'video and audio programming: This is unlike current query based information s~rve~s, whose low bandvrvidth makes the distribution of video and audio programming impractical: The ability of the present invention to distribute WO 93/09631 Ff.'T/US92/U9087 information in multimedia form makes it much more attractive to both subscribers and potential information publishers, including advertisers.
,>
It is important to note that while a user has access to perhaps a terabtye, or even 100 terabytes or more, of data, the total amount of data that systems ..__ in accordance with the present invention system can trsnsmit in any one day is much more limited, as will be described below. This is not unlike visiting the main library of a major university, such as Yale or Harvard University, having stacks containing several million volumes of books. Having "access"
to all hose books every single day does not means that a user can receive them all in one day, nor does it mean that all the users can receive all the books in a single day: Nevertheless, each particular book (file or program) is available on relatively short notice; and having access to such a large collection of books (data) is still very useful.
The present invention also has tremendous cost advantages compared with intormation distribution using compact disks (CDs); and is believed to have distribution costs on the order of one thousand times less than any competing distribution media. The present invention eliminates both the need to generate "master." disks and the need to manufacture any physical media.
Since distribution is accomplished by broadcasting; the actual costs for "publishing"
~a million copies of an average length novel (i.e:: 'distributing it to a million subscribers) would be on the order of just a'few dollars, versus a cost on the t.:
order a dollar or more per copy for printing either GDs or traditional books, f, plus similar costs for the physical distribution, resulting in traditional distribution costs totalling millions of doliars. Furthermore, updates to r 25 ' previously distributed information aye also distributed at equally tow cost using the present invention, irt contrast with CD:based publishing vuhich requires mailing or otherwise physically prodocing and distributing new GDs to all previous purchasers.
;: The present invention relates generally to the transmission or broadcastfig of digital information to a wide base of subscribers, and particularly to methods and systems for providing access by many subscribers to an almost rp~ unlimited amount of information and/or programming material.
BACtCGROIJND OF THC INVENTION
The goat of computerized information servers is to provide a system that encourages use by subscribers, provides acoess to a large range of information, and which is f6exible and ineacpensive for information publishers.
Comput~rized inforrnat'son services which exist today include Prodigy, 'I0' Compuserve, and Dialog. Typically, the user either pays a monthly fee or a connect'~ome feo for the most basic service and additional or special servides ore provided for additional fees.
AEI of the ab~ve mentioned computer services require two way communications betv~een the user and the inforrrtation server in order to l,ra service each new request by the user. in other enrords, the user sends requests; and then selected data is transmitted individually to that user in response to his/her request. This tv~o way "query based" communication - scheme is also prevalent in other types of information servers. For instance, the "pay per view" services provided by cable television companies allow a ~(~ subscriberto call the company and request a movie. The company then sends WO 93/09631 PCT/US92f0908'7 a signal to the subscriber's television signal decoder to enable it to decode the program on a particular channel during the period of time associated with the requested movie. tn this case, the "information" (a program or movie!
is being transmitted in any case, but subscribers are only provided access "iz .
. to the program 'if they pay a special fee.
x~ 5~
Two nrtajor distinctions between the present invention and the prior art query based information servers are (11 the present invention has a bandwidth that is thousands of times of greater than the prior art systems, thereby enabling high speed; low cost distribution of information, aid (2) the present invention greatly reduces the amount of two-way communication required between subscribers and the information server by automatically transmitting information that responds to most anticipated "requests" by subscribers.
Onlyihose subscriber requests not satisfied by the automatically transmitted information need to be conveyed to the information server.
The goal of the present invention is to provide widespread, high speed access to a virtual omniscient database having typically welt in excess of a terabyte ('i0'Z bytesp of data. lJsing a data channel capable of transmitting, say, 1,5 megabytes of data per second; the present invention can provide virtually instantaneous access to about a 't 00 megabytes of information, high speed ~ access (e.g; within two hours) to about a gigabyte of information, and can provide medium speed access; with perhaps 12 0~ 24 hour turn-around, to p~rhaps 100 terabytes of informatioryFurthermore, such access can be provided to a very large set of users without having to use a large number of data channels.
The large bandwidth of the present invention's information server enables the system to provide subscribers with multimedia p~ograrnming, including 'video and audio programming: This is unlike current query based information s~rve~s, whose low bandvrvidth makes the distribution of video and audio programming impractical: The ability of the present invention to distribute WO 93/09631 Ff.'T/US92/U9087 information in multimedia form makes it much more attractive to both subscribers and potential information publishers, including advertisers.
,>
It is important to note that while a user has access to perhaps a terabtye, or even 100 terabytes or more, of data, the total amount of data that systems ..__ in accordance with the present invention system can trsnsmit in any one day is much more limited, as will be described below. This is not unlike visiting the main library of a major university, such as Yale or Harvard University, having stacks containing several million volumes of books. Having "access"
to all hose books every single day does not means that a user can receive them all in one day, nor does it mean that all the users can receive all the books in a single day: Nevertheless, each particular book (file or program) is available on relatively short notice; and having access to such a large collection of books (data) is still very useful.
The present invention also has tremendous cost advantages compared with intormation distribution using compact disks (CDs); and is believed to have distribution costs on the order of one thousand times less than any competing distribution media. The present invention eliminates both the need to generate "master." disks and the need to manufacture any physical media.
Since distribution is accomplished by broadcasting; the actual costs for "publishing"
~a million copies of an average length novel (i.e:: 'distributing it to a million subscribers) would be on the order of just a'few dollars, versus a cost on the t.:
order a dollar or more per copy for printing either GDs or traditional books, f, plus similar costs for the physical distribution, resulting in traditional distribution costs totalling millions of doliars. Furthermore, updates to r 25 ' previously distributed information aye also distributed at equally tow cost using the present invention, irt contrast with CD:based publishing vuhich requires mailing or otherwise physically prodocing and distributing new GDs to all previous purchasers.
2~2~~~~
WO X3/49631 PGT/US92/09U~7 SUMMARY OF THE INVENTION
In summary, the present invention is an information broadcasting system which provides a large number of subscribers access to a large amount of information using one or more satellite transmission channels. The ,a broadcasting system can also use cable television transmission channels or ,..,~
~~! any similarly structured data distribution network. The system has a program supplier station which stores an information database and tags all the information ire the database with indices so as to form a single hierarchical structure which encompasses the entire information database. Portions~of i 10 the information database are transmitted often, at least once per day, in order ~sl' to provide the basic subscriber- with information needed to access the y remainder of the database. The information provided by the basic subscriber service, which will tYpicaity include at least 50 gigabytes of data, is available ro all subscribers without requiring two way communications between the ~: ; 15 subscribers and the program supplier station.
u' By using a "tiered" system for scheduling transmission of the 50 gigabytes or so of information included in the basic subscriber service, as well as an "intelligent" subscriber request anticipation scheme for retrieving inf~rmation before the subscriber asks for it, the present invention provides a huge number ~<.' 20 of subscribers with reasonably quick access to all the contents of the large ., y ~r database. This is accomplished even though only a modest amount of bandvrvidth is used: Furthermore; by reserving a portion of the system°s r:
bandwidth for satisfying requests for access to information not provided with the basic subscriber service, timely access to a virtually unlimited amount y - 25 of information can be provided, using the same modest transmission bandwidth, to thousahds of those subscribers willing to pay additional fees for that service:
The utility of the present can be further enhanced by using data compression techniques so as to increase the bandwidth of the information server, and . , WO 93/09631 21 ~ 1 ~ ~ ~ . PCT/US92/09087 by downloading software, data compression code books and the tike along with the transmitted information. The present invention also includes the ability to automatically update the software used by subscribers' computers by transmitting the software updates along with other data transmitted by ~ the information server, with different versions of the updated subscriber software being transmitted for each of the different platforms ~i.e., types of c:
CPUs1 being used in subscribers' computers.
s BRIEF DESCRIPTION OF THE DRAWINGS
Additional objects and features of the invention will be more readily apparent from the ,following detailed description and appended claims when taken in conjunction with the drawings, in which:
Figure 1 is a block diagram of a "hyperbroadcast" data transmission system in accordance with the present invention; showing a receiving station suitable i, .
for use by a group ofi users:
Figure 2 is a block diagram of a typical receiving station for use by an individual.
Figure 3 depicts some of the data areas and software routines stored in the memory storage area of a subscriber station.
Figure.4 is a block diagrartf of a system for rebroadcasting onto a cable television network the data stream received from a satellite, as well as a local information source which can insert data into the data stream in lieu of~ data from the satellite.'' Figure 5 is a block diagram of a local area network of subscribers.
Figure 6 is a block diagram of a data packet.
wo ~~eo~3a Pcreus92eo9os~
212192 _~_ Figure ~ is a block diagram of a data filter subsystem used in subscriber stations for receiving broadcast data and video signals.
Figure 8 depicts the data structure of the filter list used to select data packets received by a subscriber station.
~=T~' 5 Figure 9 depicts the hierarchical structure of the broadcast data.
Figure 1 t? is a b6ock diagram of a "user profile" data structure which specifies data to be stored and updated in a subscriber's computer.
Figure 1 i depicts the index ahd timestamp information embedded in the broadcast data.
r, ~~ 10 DESGR!!'TION ~F TiiE PREFERRED EM8~~IMEIVT
,~.
s~ Referring to Figure 1, there is shown an information broadcasting or ransmission system 1 D0 having a single program supplier station 1 ~2 which transmits a stream of data via a satellite '144 to a large set of receiving 'r stations 110 owned or leased by subscribers 110. Subscribers are persons, 15 'organizations and companies with equipmentt~ receive transmissions on one '= or more dedicated ichannels broadcast by he satellite 104.
(n one implementation of the invention, it is expected that subscribers wilt .
have access to the basic service without charge. This basec servoce promdes unlimited access to a base set of information, which in the preferred 20 embodiment is about fifty gigabytes of public service information, including infiormation such as newspapers, weather reports and the like that are updated frequently. Subscribers also have free-access to all information on the service which advertisers or other suppliers of paid programming, such as governments and schools, have provided for distribution to the general user .y 25 community. This access may include the ability to receive the broadcasted . , WO 93/09631 ~ ~ ~ ~ ~ ~ ~ PGTlUS92/09087 ad~~ertising information as well as to make special telephone requests for additional information: Multiple channel versions of the system, which wilt include additional programming on separate transmission channels, wilt provide unlimited access to arr even larger base set of information. In the preferred embodiment, all broadcast channels will include a mix of text, graphics, ~_ multimedia, audio, video and software programming, although the mix of programming materials will typically differ from channel to channel.
'' Subscribers who request transmission of data not included in the basic service could be charged for accessing that information. Information of this type is 1D such that the provider of the information (e.g., a person or company owning copyrights on the information) has placed restrictions on how the information may be distributed. For example, the provider may require a transaction fee or royalty be paid before providing the subscriber with access codes to find or decrypt the information. Alternately, access to a set of information may ~a~ 15 be limited by a provider's requirement that he know who is receiving it. In either case, the subscriber, or his computer system, requests such information by calling the user request processor at a particular telephone number Etoll free or otherwise) and specifying the information that the subscriber wishes to receive: The user is then given access codes and possibly decryption keys M~; , ~20 o enable the user to access the requested information.
Alternately, subscribers could be charged a monthly fee for the basic subscriber service. Access by nonsubscribersin systems which charge for ' the basic' subscribe' service; woutd be blocked either by encrypting the transmitted data; or by giving only subscribers the packet ID required to access 25 the root information required to access the rest of the database, as will be described in more detail below:
The database 112 of information provided by the program supplier station 102 is indexed in a h~erarchicat fashion; providing keyed or indexed access P
to all data within the 'database 112. The database 112 will typically have Vii~ X3109631 ~~ ~ ,~ ~ ~ ~ P(.'T/US~2109A87 _g_ at least a hundred times more data that is available for retrieval than the data which is provided with the basic service. Subscriber requests for additional information are transmitted by conventional modems and telephone lines to the program supplier station 102, after which transmission of the requested ~ information is scheduled for delivery (i.e., transmission) in the portion of the ~..3j ....-y1satellite's considerable bandwidth that is not used for traf~smitting the regularly scheduled basic programming. fn the one-channel preferred embodiment, the system can transmit 32.4 gigabytes of specially requested data per day, which is expected to be sufficient to serve a subscriber base of approximately one million home users or several tens of thousands of commercial users.
SAC..
See Table 1 below. Additional transmission channels can be added as the subscriber base increases in size, andlor different satellite transmission channels can be used for different geographical areas.
As, will next be de~crib~d, the present invention uses a "tiered" system for scheduling transmission of the 50 gigabytes or so of information included in the basic subscriber service, as well as an "intelligent" subscriber request anticipation scheme f~r retrieving information before the subscriber asks for it, Together, these features of the present invention provide the system's subscribers with virtually instantaneous access to an large information : database while using only i3 very modest amount of transmission bandwidth.
Furthermore, by reserving a portion of the system's bandwidth for satisfying requests for access to information not provided with the basic subscriber service, timely access to a uirtually unlimited amount of information can be provided to those subscribers, or advertisers, willing to pay additions( fees for that service. .
C.lverview of Basic Operation Referring to Figures 1 and 2, the data stream is transmitted over a single satellite channel at a rate of 1.5 megabytes per second in fixed size 1 OK5 (10 kilobyte) data packets having a maximum size of 10,000 bytes. The subscriber receiving stations 110 all include a riata filter subsystem 120 (see WO 93/~9531 ~ ~ ~ ~ ~_ ~ ~ ~'GT/iJS9Z149~87 , _g_ Figure 2) which receives the incoming data stream and selects those data packets that meet selection criteria defined by the receiving station 110. The information in the selected data packets is then downloaded into the memory 122-124 of the subscriber's workstation or other computer using software 5' provided by the information network supplier for that purpose.
Typically, all subscriber stations are programmed to store a set of °'root information", comprising about 250KB of information, which provides an index to the network's information database 112. Data packets containing this ''~:~ root information are marked to indicate the last time the root information was _.:, '~ 10 updated, and the subscriber stations are programmed to automatically replace their internal copy of the root information as updated information is received.
u~i In addition, each subscriber can specify additional information from the database 112 that the subscriber wants to receive. All information in the system is hierarchicaity arranged, with the root information comprising the 15 top several layers of the hierarchy. As will be described below, subscriber "requests" are made by selecting items from the top level menus, or by selecting "markers" in previously retrieved data that reference other portions of the netsevork database: Each such marker includes a packet ID that is used by the receiver to select packets to be downloaded to the subscriber's ~° 20 ~ ~ computer, as well as b timestamp value indicating d~4) whether or not the ,ia requested information is included in the basic subscriber service, and, if so, tB) the approximate time that the requested data is scheduled for transmission.
3fi . Timestamps are described in more detail below. if the requested information is alreadv scheduled for transmission sometime in the near future teither ~~ 25 because it is part of the basic service, or trecause another subscriber recently requested the same item), the subscriber is informed of the expected arrival time.
a, If the requested data is not included in the basic subscriber service, and if the subscriber is authorized to request additional information ~i.e., has signed WO 93l09b31 PGTlUS92/09087 an agreement to pay for the transmission of addition data), the request for additional information is transmitted by conventional modems and telephone lines to the program supplier station 102, after which transmission of the yj requested information is scheduled for delivery (i.e., transmission>
by the ~ program supplies station. If the packet IDs associated with the requested information are not already included in the root information available to the subscriber; the program supplier station 102 also provides the ~ subscriber with 4x the packet IDs required to access the requested information. For information c having an associated delivery charge, the subscriber's account is debited by t ..
~~ 10 'a charge corresponding to the information requested.
In the preferred embodiment, each request is assigned a priority level (e.g., a; low priority night-time delivery, regular two-hour delivery, and rush half-hour delivery, and the program supplier station 102 schedules delivery of requested information accordi~giy. Information access charges ave based both on the ~ .,., volume of informatioh requested ancf on the request's assigned priority level.
!f he requested priority level is not available due to an unexpected surge in requests; the subscriber station is informed that the request priority has been downgraded and the subscriber is given the opportunity to cancel the request.
r Prog~rain Sup Tier Station As shown in Figure 1; the program supplier station 102 includes the aforementioned database 112, which is typically stored on a large number of high density magnetic disk devices: The prograim editing software on the central program supplier station 102 tags alt the information in the database 112 with indices (each of which contains a packet ID plus additional information) so as to form a single hierarchical structure that encompasses the entire information database. More specifically, software 132 (executed by CPU 130) genefates a hierarchical-set of indices referencing all the data in the information database 112 and embeds those indices in the information database. .
1~V0 93/0631 ~ ~ ~ PC.'T/US92/O1087 In an alternate embodiment, the packet IDs and the associated indices embedded in the database can be generated off line. In particular, each information provider can be assigned, in advance, a block of packet ID values.
Bf the packet ID values are made sufficiently long, such as 64 or 96 bits long, then assigning blocks of packet ID values to information providers will not deplete the supply of such values. Each information pr~vider is required to organize the information it wants to publish into one or more subtrees, embedding the associated indices therein, and then providing the information to be published to the information server. The information server will then j "graft" the subtreets) of information provided by each information provider onto the information hierarchy broadcast by the information server.
The program supplier station 102 includes at least one central processing unit (CPU1 130, software 132 executed by the CPU 130 for editing program t.
materials and for scheduling delivery of both basic service information and subscriber requested data. In some embodiments, the supplier station 102 will be a distributed system utilizing many CPUs interconnected using a local area or even a wide area network. In that case, the station 102 shown in Figure 1 represents the information collection node, which collects all the information from various programming material providers, combines, serializes : and transmits the.infiormation.
Memory 133 stores; among other things, scheduling data which is used to control the timing at which each packet of information in the information database 112 is to be transmitted. As will be described below, the timing information in the schedule data is incorporated into "timestamp markers"
that are transmitted along with the transmitted data, enabling subscriber stations to know in advance when selected information items will be received .
User request processor 134 is interfaced to a large number of conventional telephone lines 136, using individual modular interface cards for each telephone line so that the system is expandable. Each interface card is ~~~~:=i~
WO 93!09631 PCT/US92/09087 programmed to receive and confirm information requests from subscribers, as well as to handle subscriber account transactions such as setting up new subscriber accounts, providing data decoding keys to new subscribers, and accepting credit card and debit card payments of subscriber balances.
In 5~ response to each information request received, the request processor queries a subsqriber database 138 to ensure that the subscriber is authorized ., to request additional data, sends the request to the scheduling software 132 ~
~
t ~ so that the transmission of the requested information will be scheduled, , and *v ;:
enters the corresponding charge into the subscriber's records in the subscriber 51.9 ~ database t38.
.
In embodiments of the invention using multiple transmission channels, so as to be able to handle lager numbers of subscriber requests, special scheduling messages are transmuted via the satellite indicating the approximate time that the requested information will be transmitted and the transmission channel that will be used. Subscriber stations waiting for requested information use this information to change the transmission channel being monitored so as to receive. the requested information.
. , The actual data transmission is handled by a data formatting and transmission subsystem 140. This subsystem includes memory for buffering and formatting he data scheduled for- transmission; as wail as circuitry for encrypting, packetizing, and then serializing or streaming the data to a transmitter which transmits the data stream to the subscriber stations 110 via satellite 104. .
In the preferred embodiment, some of the transmitted data is encoded.using s 25 conventional public key encryption methodology. Generally, decoding keys for decoding the encrypted data are given only to subscribers who pay for access to that data. For instance, whenever a subscriber requests information not included in the basic subscriber service: and for which there is an associated delivery charge, the program supplier station 102 may select a WO 93/l19b31 PCTlUS92/09087 new encryption key for each request in a pseudo-random fashion, passing the corresponding decoding key to the requestor via the same telephone connection on which the request is received. Encryption and decoding keys are used in the preferred embodiment solely in conjunction with the distribution of materials published on a fee-per-purchaser basis. When multiple subscribers request the same set of materials prior to their trarnsmission, the same encryption and decoding key can be used for all of those subscribers, thereby eliminating he need to retransmit the requested materials for each requesting subscribe:
t .: 10 Another type of "encryption" used in the preferred embodiment to defeat access by unauthorized subscribers to "protected data", without actually encrypting the protected data is as follows. The packet IDs associated with the protected data need not be sequential, rather they should be assigned ~ ,~.
on a pseudo-rarfdom basis. Furthermore; the packets for the requested data f . pseudo-random sequence.
'should be scheduled foc transmission in a interleaved with other broadcast data packets. This method of "mixing up"
S , the requested data, combined with the: fact that at least a fiundred 101~B
packets are transmitted per second, will make unauthorized access to protected data extremely difficult even when the protected data is not encrypted prior to transmission:
The utility of the present' invention can be further enhanced by using data compression techniques so as to increase the perceived bandwidth of the information server, and by downloading software, data compression codebooks and the like along with the transmitted information. Data compression is discussed more below.
Subscriber Receiving Stations Figure 2 shows an individual subscriber station 110-1 having its own satellite dish 150, low noise block receiver and signal converter (LNB) 152, receiver 153, and data filter subsystem 120. Typically, the satellite dish receives a WU 93lOg631 PGT/US9Z/09087 ~~~15~~ - 14-signal having a carrier frequency on the order of 12 GHz, the LNB 152 brings this down to about 1 GHz with a signal bandwidth of about 500 Mhlz, and the receiver 153 then'translates the received signal into a digital baseband ,a~.t si nal. In this embodiment, the subscriber station 110-1 is a deskto computer (such as a Macintosh computer made by Appfe Computer, or an ;
If3M PC compatible computer made by any one of a . large number of ~
manufacturerst to which the satellite receiver 150-152-153 and data x conversion subsystem 120 have been added. Thus, the subscriber station 110 has a CPU 154, monitor 156: keyboard 158, telephone modem 159 and other cowentional computer components.
As noted above; he data filter subsystem 120 receives the incoming data stream and selects those data packets that meet selection criteria defined by the' receiving lotion 110. The information in the selected data packets is downloaded into the memory 122-124 of the subscriber's workstation or other cormputer using subscriber software 160 provided by the information r~etwo~k supplier for that purpose. The data filter subsystem 120 is discussed i~ moce detail below with reference to Figure 7.
The present invention also includes the ability to automatically update the software used by ubscribers' computers by transmitting the software updates s~
; 20 along with other data transmitted by the information server, with different versions of the updated subscriber software being transmitted for each of ' the. different platforms ti:e., types of CPUs being used in subscribers computer. To implement this; the subscriber stations 110 must be set up to automatically accept and download software updates of the subscriber ~. 25 oftware 160.
-Referring to Figure 3; the subscriber's data storage 124 in the preferred embodiment includes a data area 161 reserved for downloading information from he data filter subsystem 120. Depending on the memory capacity of ..
the subscriber's data'storage devices 124, this data area 161 might be as W~U 93/09631 PCT/US92/a94P~7 ~12~.~92 small as, perhaps, 2MB, or as large as perhaps 100MB, with a reserved data area of i OMB being more typical for an individual subscriber.
~ne feature of the present invention is that the subscriber software 160 has a set of subscriber request handling routines 162 which interact with the data filter subsystem 120 to arrange for downloading of the iilformation requested by a subscriber. The request handling routines include a special "smart caching" routine 163 for anticipating future information requests by the user.
r~~ Data corresponding to these anticipated information requests is downloaded v;, into a port6on 164 of the reserved data area 161 called the smart cache. 6ince ~:.
a virtually unlimited amount of disk space could potentially be occupied by i.~.
these anticipated requests; only some of which will actually be requested by 5=y the subscriber, the smart cache 164 is used as a temporary buffer, the oldest contents of vrhich will be overwritten as information from new anticipated requests isvdownloaded:
. ~
The subscribersoftv~uare 9 60 also includes a data decompression routine 165 for decoding information transmitted in compressed form, a cache ~fs management routine 'l 66 for controlling the downloading of information into s ; the data area 161 and determining which information in the data area 161 a a:~ ~o delete when he urea overflows, and a user profile setup program '~ ,20 ~ ~ which c~mpiles a "user profile" data structure 300 that defines a default set of information to be retrieved from the transmitted data and stored in the data area 16'i . As noted previously, the data decompression routine used can dhan a de endin on the nature or t g P 9 ype of data.
Figures 4 and 5 show two alternate configurations of ubscriber stations, both >a 25 of which reduce the c~~t per subscriber for the required receiver hardware.
In Figure 4, the received satellite signal is translated by a low noise block converter t~NB) 152 t~ an intermediate carrier frequency of perhaps 1 GHz, which is then translated down to baseband by a receiver 153. The receiver 153 outputs a logic level bit stream that is received by a cable television WO 93!09631 PCTlUS92l09087 ,...:.., (CATV) distribution plant's head end 170 and then retransmitted via cable 172 to all the subscribers of the cable television system. Subscribers to the information network; connect their computers to the cable television cable 172 using a conventional tuner 174 to bring the satellite signal down to 5~ baseband. The~~ermaining portion of each subscriber's station is the same as shown in Figure 2. Two advantages of this systerri configuration are ( 1 ) that individual subscribes save the cost of having a satellite receiver 150-152, since one such receiver is ufficient to service a large number of subscribers' and (2) better reception of the satellite signal' with lower error rates' is ~ possible since most CATV head ends have larger receiving dishes than can be afforded by individual subscribers.
An important feature of this configuration is data switch 176' which enables local programming to be added to the data stream received from the satellite.
It is anticipated that a certain amount of the satellite's bandwidth will either be eft unused, for instance by leaving room for 1000 locally generated data packets each time that a particular special packet is transmitted, or that a portion of the data stream will be designated as suitable for being preempted by focal programming. The local program supplier station 178 is essentially a small version of central'program supplier station 102 in that it must perform similar tasks - collectihg information from various (presumably locat) programming; material providers; combining, serializing and transmitting the information during the available time slots set aside for local programming.
The local programming data will also be hierarchically arranged with embedded timestamped indices, and wilt generally be set up as a subtree appended to a bunch of the data hierarchy transmitted by the central program supplier station:
The ability to have local programming is commercially important, both because it provides the ability for local CATV stations to collect advertising revenues, which enabtes the data ransmission service to be provided free to subscribers' and~also to make the content of the transmitted data better tailored to its laVO 93/0~~31 ~ ~ ~ ~ ~ ~ '~ PCT/U~92/~9087 audience. Vastly greater information content is another result of having multiple local source transmitters. By way of example, if the local program supplier for each local CATV system provides one percent of the total traffic, and if there are one thousand such local program suppliers, the overall ~ information content of the information distribution system is increased ten fold.
In Figure 5, a single satellite receiver 150-152 is connected to a local area network 180 of subscribers. All requests for transmitted information are handled by a single data Tilt~r subsystem 120 and the network server 182.
I 0 In other words, requests for inforr~nation are routed through the network server 182 so that one date filter subsystem 120 can be used to select ail the information needed by all the subscriber work stations 184 on the local area network 180. Similarly, a single modem 186 or a small number of such modems can be used by a large dumber of work stations 184 to submit requests to the pragram supplierstation. A significant cost saving associated with this configuration is saved disk space - because all of the users can share access to it;formation stored on the server's hard disk. Speed of access to data from the informati6n service may also be improved, compared to an individual subscriber configuration, because more disk space can be dedicated ?0 tt~ automatically caching a larger portion of the transmitted information, since 'the cost of the dedicated disk space is being shared by a group of users.
This system configucatiorro also spreads the cost of the satellite receiver 150-152 and the cost of the data filter subsystem 120 over the same group of users. Since it is anticipated that the data filter subsystem 120 might sell 05- for ~t least5500 (in 199'! U:S. dolldcs) apiece to manufacture, the local area network configuration of Figure 5 can result in significant savings per user.
'fhe system configuration of Figure 5 is likely to be suitable not only for business subscribers, but also libraries, schools, kiosks at shopping malls, and other types of institutional subscribers.
WO 93/09631 ;~ ~ ~ ~ PCT/US92/09087 _ ~8 _ D~ita Fitter Subs~rstem As shown in Figure 6; each received data packet 200 begins with a packet identifier 202, followed by a function code 204 and a set of data 206, followed by error detection codes 208. Furthermore, as will be discussed 6 below, the data 206 includes not only the information associated with the packet identifier 202; but also timestamped indices 2'l0 for the next N (e.g., three) levels of information in the information database hierarchy.
Packet identifiers 202 are used to determine which packets require further processing, with alt unselected packets simply being discarded by the subsystem 120. The function code 204 is used to identify and categorize special messages transmitted by the program supplier. The packet ID 202 and the function 204 are ' not encrypted, thereby allowing packets to be selected o~ discarded prior to processing the data 206. In the preferred embodiment, the data 206 portion of most packets is not encrypted, except for the use of data compression: A standard, commercially available error correction methodology may be used to detect aid correct data errors caused by noise in the transmission process:
In some applications; data packets transmitted in response to subscriber requests will be encrypted: However; given the huge amount of data being '20 . rtransmitted it is impractical for a "pirate" to scan all the transmitted data for useful' information. Without knowing the packet tDs for a particular set of.
information, and the proper order of those packet IDs for reconstructing a particula~file or program, it is virtually impossibleto extract useful information from the data stream, thereby making data encryption unnecessary in most cases: _ Most or all of the data transmittedr by the system will be transmitted in compressed form. In order to make the data compression both efficient and flexible, a general set of data decompression software is included in the subscriber software 160 (see Figure 2~ given to each subscriber, along with . ., a default "code book" or coding algorithm to be used for the decompression process. Other code books or coding algorithms, associated with various types of transmitted data will be transmitted along with the compressed data.
A typical code book, for example suitable for encoding newspaper articles, ~5 will occupy less than 50KB. When used in conjuncti4n with megabytes of data. and taking into consideration that the compression will typically allow two-to-one or better data compression, the transmission of code-books along with the related data involves an inconsequential amount of overhead.
The data decompression is performed on the subscriber's own computer, where computation time is presumably virtually free of cost. Also, data decompression is not time consuming computationally using currently available desktop computers, and will ndt noticeably impact the performance of the system from the viewpoint of subscribers.
Referring to Figure 7 the data filter subsystem 120 used in subscriber stations ~o receive broadcast data works as follows. The satellite transmitted data stream, which contains a sequence of data packets, is first processed by a conventional satellite signal recovery circuit 220 that stores the received data packets in a ring buffer 222. In the preferred embodiment, the ring buffer 222 has 4 megabytes of storage, enabling about four hundred 10KB
data packets or about:2.5 seconds: of data at the system transmission rate to be stored: The required size of the ping buffer 222 is governed by the maximum possible delay before a selected packet is downloaded onto the subscribers host computer.
Each time that a complete data packet is transferred by the data recovery circuit 220 to ring buffer 222, the data recoverycircuit 220 sends a '~packet received" message to the subsystem's controller 224. The controller 224 responds by comparing the packet's !D 202 with a list of packet ID values and/or ranges of packet iD values stored in filter list 226. Packet's which match any of the packet iD values in the fitter list 226 are "selected" and iW0 93/09631 PtT/IJS92/09087 downloaded to the subscriber's computer via a conventional bus interface circuit 234, such as a SCSI (Standard Computer System Interface! interface.
To stretch the time available for downloading, a modified ring buffer technique can be used in which the buffer 222 is divided into a predefined number of slots, each of which can hold one packet. Slots holding.packets selected for downloading are "marked" (e.g., using a set of bit flagsl and thereby prevented from being overwritten by incoming data until the packet in the slot has been downloaded and the slot unmarked.
If a substantially longer period of time is required to ensure successful downloading of the received data to the subscriber's computer, either additional random access memory can be added to the ring buffer 222, or a fast disk storage device can be added to the data filter subsystem 120 to enable larger amounts of data to be buffered by the subsystem 124. The use of disk storage device for buffering may be justified for local area networks of subscribers, primarily to avoid loss of data when the network server cannot service the subsystem 120 within a few seconds.
In embodiments of the invention which include the transmission of video or audio programming material; the video programming material is transmitted st~gitally, in a compressed form. Many video data compression systems are 2~ commerciatly availabib. The video program materia6 stored in the information .
database 112 is stored in compressed digital form by the program supplier station 102. As a resutt, each data conversion subsystem could optionally include a video decompression and modulation circuit 240 for decompressing the compressed digitized video data, and then converging it back into an analog signal suitable for either playback or recording using a conventional VHS
video recorder. in alternate embodiments, the received video data will be downloaded in compressed form, for example for storage on a digital tape recorder: In this alternate embodiment, the subscriber's computer will have to include a video decompression circuit. This embodiment has the advantage ~1Y~ 93l~9631 PCT/~JS92109087 2~2~~9~
are reducing the storage requirement associated with digital video signal storage.
When multiple transmission channels are used by the program supplier station, the controller 224 sends control signals to the satellite receiver as to which channel should be selected. Typically, the satellite receiver will normally be tuned to a "main" or primary channel. Other channels are only selected during the expected transmission times associated with packet identifiers stored in the filter list.
Referring to Figure 6, the "requested data" in the filter list 226 is stored as an ordinary B-tree data stricture, similar to those found in almost any DBMS
(database management system). At the top of the tree is a root node 260.
At the bottom of the tree are leaf nodes 266, 268. In between the root 260 and the leaf nodes are intermediate nodes 27~, 272. 230. B-trees are well known data structures used to quickly identif~r whether or not a specified key 15 value is present icy a database: lr~ this case. a three level tree, with perhaps up to terventy entries per node; will facilitate high speed determination as to whether or not a particu9ar packet ID is present in the fitter list.
Each leaf node inahe filter list contains five fields: (1 ) a packet ID, t2) a flag indicating whether the packet is provided ps part of the basic subscriber ZO service oc whether it is a packet that has been specifically requested to be transmitted, (3) the identify of the char~hel on which the packet is to be transmitted, t4) a' repetition rate value; which is the rate at which transmission of the packet is repeated ~e.g., one time per hour, or zero for information specifically requested), and t5) a time skewvalue indicating the approximate 25 time that the packet is scheduled to be transmitted within the pack::°.'s repetition tier.
To determine the approximate next time that a packet is will be transmitted, r the repetition rate and time skew fields are used:
~,~ ~~/~~3~ PGT/US~2/0~3087 Next_Time = Rep Period ~' INT{Current TimelRep_Period}
+ Time Skew where INT is the integer functian. For instance, if the Current Time is 09:35, the Rep Period is one hour, and the Time Skew is 5 minutes, then the next time that the packet will be received is about 10:05 w-~tVhen a data packet ID in the filter list specified a channel other than the main data transmission channel, the Next Time value is used to determine when the subscriber's system should be tuned to the other specified transmission channel.
Alternately; the packet tDs for the information requested by the subscriber could be stored in a Content Address Memory (CAM?, thereby providing a match/ho-match determination for each packet 1D in a single clock cycle.
However; the CAM can st~re only a limited number of selected packet IDs, white the number ~f packet tDs that can b~ stored in the B-tree structure of figure 8 is limited only by the amount of tow-cost random access memory provided td store the filter fist.
Information Data Hierarchy and Indexinq Referring to Figures 1 and 9, alt of'the information in the program database 1.12 is hierarchically organized using a set; of assigned indices to reference each distinct portion thereof. F~r the purposes of transrr~ission, the database is broken into data packets each holding up to about 't 0;000 bytes of data. , tn general, each data packet has a unique packet ID, exc~:pt that a contiguous and associated set of packets might be assigned a single packet ID. sequence numbers inside the packets shaiing a common paekdt ID can be used to ensure that the data in these packets is properly ordered after downloading into the subscriber's computer. The indices associated v~rith reference data in the database ire included in the root information, and also may be embedded in vari~us portions of the transmitted data for the purposes of cross-referencing related enformation.
..._ ...:. : ,_ ,,.; . -. -__._ "~___ , _.,. ._.. , ..~.. , .. - ,: ::: .~:
.: , r - _~';, .
<; .
II.. ~." , ~ ~,. ~~! a x.,v. .' ~':~ .. ~.i . ~. . . .... ~.:~, :.!.. ~.'a:.:, a:~.:.~.: . :. . . ..W, ., , ....': . .., .' ' . '. :. ~~-:"
..n .:~.....".,..;....,. " ........,r ..~.~...~:. ..'.;:....;~
.:.......~_'...._....,.'..::, . . ', :.:-:.~ .._ ,:_.,::. .... ::....
"....,...:.. ~ .:,..,........:~..,..."... .. . . ,...,.~.P.: .....,..,.. .
'WHO 93/09631 PCTlUS92/~9fD~7 21~~~~~
Referring to the hierarchy or tree data structure 290 in Figure 9, a set of Root Information 292 is considered to be at the "top" of the hierarchy. For the purposes of this discussion, the directions "up" and "down" in the hierarchy are as shown in Figure 9. As shown, local programming provided by a local program supplier station is typically defined as a subtree of the hierarchy.
Alternately, the locally provided programming could be appended to several portions of the hierarchy 290.
Qepending on the amount of disk storage space available on the subscriber's computer for netv~iork server in the case of networks of subscribersl, a certain amount of the top portion of the information hierarchy 290 will be automatically stored and updated in the subscriber's computer so that this information is always available. Depending on how the subscriber configures his computer system, this may vary anywhere from 0.25 megabytes of data to perhaps 10 megabytes of data or more.
As Shawn in Figure 9; the information database is structured so that al! data down to a certain depth in the hierarchy is provided as part of the basic ubscriber service, while items further down the hierarchy are available only by special request: As shown in Figure 9, the depth of information provided by the basic subscriber service may vary in different portions of the hierarchy.
The information database is also hiera~chicalty~tructured in a second manner.
In particular, the information included in the basic subscriber service is divided into "root information" plus several tiers of 'snformation which are transmitted at decreasing frequency: Table 1 shows an example of how the 1.5 megabyte per second bandanridth associated with a single channel transmission system may be subdivided into tiers. The information database's root information, comprising about 0:25 megabytes that provides a large part of the indexing and top level menus needed to access the information database, is retransmitted ten times per hour. The first tier of information, transmitted foUrtimes per hour, comprises 150 megabytes of information most frequently VNO 9~/~9f31 PCT/U~92/09(18?
~~.~~5~ ~ - 24 -needed by subscribers. Each successively lower tier of information contains a larger amount of information than the next higher tier, prioritized in accordance with actual or expected subscriber usage, and is transmitted less often. In this example; twenty-five percent of the available bandwidth is reserved for responding to subscriber requests for additional data. It is noted that despite the high repetition rate of some of the basic subscriber service data, only 35.1 % of the available bandwidth is occupied by repeated information.
a 1o TABhE 1 Ezample of Data Channel Usage - 1.5MH/Sec Channel Megabytes % a~
Information Type Repeat Rate Per Transmsn .~;~dth Root Information 10 times/hr 0.250 00.0453 15 lat Priority Info 4 times/hr 150 1i.1 2nd Tisr Iafo 1 ti~~/hr 600 11.1 3rd Tier Info 0.25 t~msa/hr 20400 ii.i 4th Tisr Info 1 tims/12 hrs 7,200 11.i 5th T3.ar Into 1 tims/24 hrs 31,540 30.5537 Subtotals ~ nnzqus gnfo 49oe~0.25 ~',otal bytes T$ ~ 7 ~ 2 ~ ~ . ~ ~ 7 5 . ~ 0 Data T: by Request N/A 32,400 2500 ).Total ~29/6Q0e00 100.00 25 It should be emphasised that' the repetition rates and other data values provided in Table 1 are only one example of how the bandwidth of a channel could be utilized. The particular repetition rates associated with each tier of data and the amount of data allocated to each tier are selectable parameters that will need to be carefully considered in order to maximize utility of the 30 system for most subscribers.
W~ 93109631 ~ PCT/US92/09~~7 Each publisher providing materials to be published by the system will structure that information by indicating what portions are to be placed in Tier 1, what portions are to be placed in Tier 2, and so on. Different publication costs will be associated with each tier. Material published on fee-per-copy basis, wherein a royalty must be paid to the copyright owner,on a per copy basis, is transmitted only in response to specific subscriber~requests.
An alternate tiering scheme to the one shown in Table 1 would be to offer publishers a semi-continuous range of repetition rates in the form of a set of perhaps 100 different repetition rates, each having an associated publication cost; with much smaller increments between tiers than the example given in Table 1: tn addition, publishers would be able to specify time frames during which each subset of published information should be broadcast, thereby giving pubiish~rs a large degree of control over when their programming materials are broadcast. Of course, regardless of the repetition rate tiering scheme used; the publisher's ability to select any particular repetition rate and distribution time frame would be subject to the availability of the required transmissoon time. Presumably; supply and demand for time slots in the information server's transmitted data stream will be balanced by appropriate pricing poticies, much in the way that advertising time is sold by radio and television broadcasters:
rssPr Profiles For Automatic Data Retrieval Referring to Figure i 0; in the preferred embodiment, each subscriber's c~rr~puter compiles a "user profile" data structure 300 which defines a default filter set defining data to be stored and updated in a subscriber's computer.
In particular, the user profile 300 stores a value 302 indicating the amount ~f disk storage space that t : peen reserved for storing both root information and the frequently reques-. ~: ~, information specified elsewhere in the user profile. This value 302 will typically vary from 0.25 to 10 megabytes. A
depth value 304 indicates the amount of root information to be downloaded into the subscriber's computer, and items 306-308 specify portions of the ~V~ X3109631 ~ ~;~~~, 4,.'~;">~H PC°T/US9210908?
:,..
- 26 ~-information hierarchy that the subscriber wants to have stored and updated on an ongoing basis. For instance, the subscriber might specify that a1i information regarding certain sporting events tsuch as professional football games) be automatically retrieved and downloaded into his computer.
Software known as "computer agents" might be employed by subscribers for the purpose of automatically searching for specified data, organizing the results, and so off.
The data in the user profile 300 is translated into specific packet ID
inf~rmation that is then stored in the filter list 226 tsee Figure 7) of the 1 p subscriber's data fitter subsystem 120. As a result, transmitted information corresponding td the topics specified in the subscriber's user profile 300, is automatically downloaded into the subscriber's computer and is also automatically updated .as the transmitted information corresponding to those topics is update: By usia~g the "user profile" to pre-load the packet ID fitter 15 list: the subscriber's wait time for the information mast frequently requested by that subscrobe~ is reduced to zero.
Tim~starrsped Indices and .
"Smart Cachin4" to Avoid Data Delivery Delays Referring to Figure 11; timestamped indices 322 are embedded in the 2p ' information 320 transmitted by the program supplier. These indices are embedded not only in menus, such as the top level menu ,shown in Table 2, but are also embedded inside the text and~dr figures of the received informati~n, th~reby referencing and cross-referencing other data that is available in the database. The structure of the indices 322 is the same as 25 shown for indices 2G6, 266 stored in the filter list. It important to.note that each index item is tim~stamped tunlbss it references data that is transmitted only upon request) by the values in _the Rep Rate and Time akew fields of the index. Using the "Next Time" computation formula shown above, the timestamp data in each index allows the user to be notified as to the amount of time it ~nrill take before a requested item will be received.
Items in the WO 93!09631 ~ ~ ~ 1 ~ ~ ~ PCT/US92/09087 received information which have an associated timestamped index are highlighted or otherwise visually distinguished. When the subscriber selects the item, the associated ~imestamp information is displayed, thereby informing the subscriber whether or not this is a special request item obtainable only at extra cost, and also the associated delivery wait time if the item is included in the basic subscriber service.
look ahead requests is limited primarily by the amount of disk storage space available in the subscriber's computer. Since it will often take the subscriber a couple of minutes to examine the information obtained from a request, the W~ 93/09631 PCT/US92/09087 data from the look ahead requests will often be received before the subscriber actually requests them.
The data corresponding to the "look ahead" requests entered in the subscriber's fitter list are stored, when .received, on the subscriber's computer's hard disk (or other comparable mass storage device). In the preferred embodiment, a portion of the subscriber's hard disk is set aside as a "smart cache" (see Figure 3) specificatty for "caching" of these look ahead requests. When aid if the subscriber requests any of the data in the smart cache, it is available for immediate access by the subscriber. tf desired, the selected data in the smart cache can be moved to other areas of the user's hard disk. Unused data in the smart cache is overwritten with new data as required by other received data corresponding to look ahead requests.
Video Programming The transmission of video programming is a classic problem in that it tends A 15 to occupy large amounts of bandwidth. The typical byte count for an hour of video programming; using avaitabte data cmmpression techniques that do not noticeably degrade the quality flf the program, is about 0.9 gigabytes, which is equivalent to about 15M~ per minute.
Due to thelafge amounts of data associated with video programming, in the . 20 vpreferred embodiment most uideo programming is transmitted on a separate channel. Using a preferred data transmission rate of 1.aMB per second, which is equivalent to 90MB per minute, it is possible to use time multiplexing so as to transmit six video programs teach having an associated data rate of 15MB per minute) sirnuitaneously. tn addition to using time multiplexing' a 25 daxa Bering arrangement similar to the one shown in Table 1 can be used, whereby certain types of video programming are repeated more frequently than others.
WO 93/09631 PCI'/US92l09087 21~~~~~
Alternately, since the data rate of the channel is higher than the data rate required for any one video program, it would be possible to transmit a video program in a fraction of ~c ~s pia~ ~'- ~ck time associated with the program.
However, it is anticipated that m: subscriber's data receiver systems will ~ not be able to receive and store downloaded data at a sustained rate of 1.SMB
per second ti.e., for a sustained period of time in excess of, say, two or three seconds): If the received video programming data is being recorded in a typical subscriber station on a tape recorder, then the multiplexing rate used for transmission would be selected so as to match the data recording rates 1 ~ of such tape recorders.
It is anticipated that at least some subscriber's will be interested solely in receiving video programming from the data transmission system. For such subscribers, the subscriber's "computer" will actually be a data storage box which operates in much the same manner as a conventional video cassette recorder. Forthese systems, the data filter system would be preprogrammed to store all hierarchy information related to video programs. On screen menus would be displayed to allov~ the subscriber to select programs. The timestarr;p information embedded in he hierarchy information would be used to inform the subscriber as to when the selected programs would be received. Packet ED values correspondingto the selected programs would be stored in the filter list and the selected programs would be stored, generally on tape, for later viewing by the user.
Pg~ential Pub6ishers The data transmission system .of the present invention is suitable as a publication medium for' a wide range of potential publishers, including both publishers who wish to disseminate information for free and for publishers who wish to charge for each copy disseminated. The potential publishers include industrial suppliers (product data, catalogs, product information), software publishers (computer software and games, video and audio programming), catalog sales companies (text and pictures?, advertisers, real WO 93/09631 PCT/iJS92l09087 - ~~a ~ - 30 -v estate sellers, travel packages, publishers of reference materials or subscription based materials, and many others whose information changes relatively often or who wish to have low cost distribution to large numbers of customers.
Al~,ernate Embodiments Many aspects of the above described preferred embodime~tJmight be modified to accommodate various commercial and technical requirements. For instance, dedicated optical fiber. channels might used to transmit data from a national, or one or more regional, program supplier stations, to cable television transmission stations distributed over a wide geographic area. Certainly, the data transmission rates used by the system are totally dependent on the particular transmission medium used and the maximum acceptable cost for each subscriber's data filter subsystem.
Numerous minor technical choices in the design of the system can be changed without affecting the overall merit of the data transmission system. For 15 instance: in place of a standard, commercial error correction methodology, a proprietary error correction methodology could be used if there were a reason to do so.
White the present invention has been described with reference to a few specific embodiments, the description is illustrative of the invention and is 2~ ~ not to be construed as limiting the invention. Various modifications may occur to those 'skilled in the art without departing from the true spirit and scope of he invention as defihed by the appended claims.
WO X3/49631 PGT/US92/09U~7 SUMMARY OF THE INVENTION
In summary, the present invention is an information broadcasting system which provides a large number of subscribers access to a large amount of information using one or more satellite transmission channels. The ,a broadcasting system can also use cable television transmission channels or ,..,~
~~! any similarly structured data distribution network. The system has a program supplier station which stores an information database and tags all the information ire the database with indices so as to form a single hierarchical structure which encompasses the entire information database. Portions~of i 10 the information database are transmitted often, at least once per day, in order ~sl' to provide the basic subscriber- with information needed to access the y remainder of the database. The information provided by the basic subscriber service, which will tYpicaity include at least 50 gigabytes of data, is available ro all subscribers without requiring two way communications between the ~: ; 15 subscribers and the program supplier station.
u' By using a "tiered" system for scheduling transmission of the 50 gigabytes or so of information included in the basic subscriber service, as well as an "intelligent" subscriber request anticipation scheme for retrieving inf~rmation before the subscriber asks for it, the present invention provides a huge number ~<.' 20 of subscribers with reasonably quick access to all the contents of the large ., y ~r database. This is accomplished even though only a modest amount of bandvrvidth is used: Furthermore; by reserving a portion of the system°s r:
bandwidth for satisfying requests for access to information not provided with the basic subscriber service, timely access to a virtually unlimited amount y - 25 of information can be provided, using the same modest transmission bandwidth, to thousahds of those subscribers willing to pay additional fees for that service:
The utility of the present can be further enhanced by using data compression techniques so as to increase the bandwidth of the information server, and . , WO 93/09631 21 ~ 1 ~ ~ ~ . PCT/US92/09087 by downloading software, data compression code books and the tike along with the transmitted information. The present invention also includes the ability to automatically update the software used by subscribers' computers by transmitting the software updates along with other data transmitted by ~ the information server, with different versions of the updated subscriber software being transmitted for each of the different platforms ~i.e., types of c:
CPUs1 being used in subscribers' computers.
s BRIEF DESCRIPTION OF THE DRAWINGS
Additional objects and features of the invention will be more readily apparent from the ,following detailed description and appended claims when taken in conjunction with the drawings, in which:
Figure 1 is a block diagram of a "hyperbroadcast" data transmission system in accordance with the present invention; showing a receiving station suitable i, .
for use by a group ofi users:
Figure 2 is a block diagram of a typical receiving station for use by an individual.
Figure 3 depicts some of the data areas and software routines stored in the memory storage area of a subscriber station.
Figure.4 is a block diagrartf of a system for rebroadcasting onto a cable television network the data stream received from a satellite, as well as a local information source which can insert data into the data stream in lieu of~ data from the satellite.'' Figure 5 is a block diagram of a local area network of subscribers.
Figure 6 is a block diagram of a data packet.
wo ~~eo~3a Pcreus92eo9os~
212192 _~_ Figure ~ is a block diagram of a data filter subsystem used in subscriber stations for receiving broadcast data and video signals.
Figure 8 depicts the data structure of the filter list used to select data packets received by a subscriber station.
~=T~' 5 Figure 9 depicts the hierarchical structure of the broadcast data.
Figure 1 t? is a b6ock diagram of a "user profile" data structure which specifies data to be stored and updated in a subscriber's computer.
Figure 1 i depicts the index ahd timestamp information embedded in the broadcast data.
r, ~~ 10 DESGR!!'TION ~F TiiE PREFERRED EM8~~IMEIVT
,~.
s~ Referring to Figure 1, there is shown an information broadcasting or ransmission system 1 D0 having a single program supplier station 1 ~2 which transmits a stream of data via a satellite '144 to a large set of receiving 'r stations 110 owned or leased by subscribers 110. Subscribers are persons, 15 'organizations and companies with equipmentt~ receive transmissions on one '= or more dedicated ichannels broadcast by he satellite 104.
(n one implementation of the invention, it is expected that subscribers wilt .
have access to the basic service without charge. This basec servoce promdes unlimited access to a base set of information, which in the preferred 20 embodiment is about fifty gigabytes of public service information, including infiormation such as newspapers, weather reports and the like that are updated frequently. Subscribers also have free-access to all information on the service which advertisers or other suppliers of paid programming, such as governments and schools, have provided for distribution to the general user .y 25 community. This access may include the ability to receive the broadcasted . , WO 93/09631 ~ ~ ~ ~ ~ ~ ~ PGTlUS92/09087 ad~~ertising information as well as to make special telephone requests for additional information: Multiple channel versions of the system, which wilt include additional programming on separate transmission channels, wilt provide unlimited access to arr even larger base set of information. In the preferred embodiment, all broadcast channels will include a mix of text, graphics, ~_ multimedia, audio, video and software programming, although the mix of programming materials will typically differ from channel to channel.
'' Subscribers who request transmission of data not included in the basic service could be charged for accessing that information. Information of this type is 1D such that the provider of the information (e.g., a person or company owning copyrights on the information) has placed restrictions on how the information may be distributed. For example, the provider may require a transaction fee or royalty be paid before providing the subscriber with access codes to find or decrypt the information. Alternately, access to a set of information may ~a~ 15 be limited by a provider's requirement that he know who is receiving it. In either case, the subscriber, or his computer system, requests such information by calling the user request processor at a particular telephone number Etoll free or otherwise) and specifying the information that the subscriber wishes to receive: The user is then given access codes and possibly decryption keys M~; , ~20 o enable the user to access the requested information.
Alternately, subscribers could be charged a monthly fee for the basic subscriber service. Access by nonsubscribersin systems which charge for ' the basic' subscribe' service; woutd be blocked either by encrypting the transmitted data; or by giving only subscribers the packet ID required to access 25 the root information required to access the rest of the database, as will be described in more detail below:
The database 112 of information provided by the program supplier station 102 is indexed in a h~erarchicat fashion; providing keyed or indexed access P
to all data within the 'database 112. The database 112 will typically have Vii~ X3109631 ~~ ~ ,~ ~ ~ ~ P(.'T/US~2109A87 _g_ at least a hundred times more data that is available for retrieval than the data which is provided with the basic service. Subscriber requests for additional information are transmitted by conventional modems and telephone lines to the program supplier station 102, after which transmission of the requested ~ information is scheduled for delivery (i.e., transmission) in the portion of the ~..3j ....-y1satellite's considerable bandwidth that is not used for traf~smitting the regularly scheduled basic programming. fn the one-channel preferred embodiment, the system can transmit 32.4 gigabytes of specially requested data per day, which is expected to be sufficient to serve a subscriber base of approximately one million home users or several tens of thousands of commercial users.
SAC..
See Table 1 below. Additional transmission channels can be added as the subscriber base increases in size, andlor different satellite transmission channels can be used for different geographical areas.
As, will next be de~crib~d, the present invention uses a "tiered" system for scheduling transmission of the 50 gigabytes or so of information included in the basic subscriber service, as well as an "intelligent" subscriber request anticipation scheme f~r retrieving information before the subscriber asks for it, Together, these features of the present invention provide the system's subscribers with virtually instantaneous access to an large information : database while using only i3 very modest amount of transmission bandwidth.
Furthermore, by reserving a portion of the system's bandwidth for satisfying requests for access to information not provided with the basic subscriber service, timely access to a uirtually unlimited amount of information can be provided to those subscribers, or advertisers, willing to pay additions( fees for that service. .
C.lverview of Basic Operation Referring to Figures 1 and 2, the data stream is transmitted over a single satellite channel at a rate of 1.5 megabytes per second in fixed size 1 OK5 (10 kilobyte) data packets having a maximum size of 10,000 bytes. The subscriber receiving stations 110 all include a riata filter subsystem 120 (see WO 93/~9531 ~ ~ ~ ~ ~_ ~ ~ ~'GT/iJS9Z149~87 , _g_ Figure 2) which receives the incoming data stream and selects those data packets that meet selection criteria defined by the receiving station 110. The information in the selected data packets is then downloaded into the memory 122-124 of the subscriber's workstation or other computer using software 5' provided by the information network supplier for that purpose.
Typically, all subscriber stations are programmed to store a set of °'root information", comprising about 250KB of information, which provides an index to the network's information database 112. Data packets containing this ''~:~ root information are marked to indicate the last time the root information was _.:, '~ 10 updated, and the subscriber stations are programmed to automatically replace their internal copy of the root information as updated information is received.
u~i In addition, each subscriber can specify additional information from the database 112 that the subscriber wants to receive. All information in the system is hierarchicaity arranged, with the root information comprising the 15 top several layers of the hierarchy. As will be described below, subscriber "requests" are made by selecting items from the top level menus, or by selecting "markers" in previously retrieved data that reference other portions of the netsevork database: Each such marker includes a packet ID that is used by the receiver to select packets to be downloaded to the subscriber's ~° 20 ~ ~ computer, as well as b timestamp value indicating d~4) whether or not the ,ia requested information is included in the basic subscriber service, and, if so, tB) the approximate time that the requested data is scheduled for transmission.
3fi . Timestamps are described in more detail below. if the requested information is alreadv scheduled for transmission sometime in the near future teither ~~ 25 because it is part of the basic service, or trecause another subscriber recently requested the same item), the subscriber is informed of the expected arrival time.
a, If the requested data is not included in the basic subscriber service, and if the subscriber is authorized to request additional information ~i.e., has signed WO 93l09b31 PGTlUS92/09087 an agreement to pay for the transmission of addition data), the request for additional information is transmitted by conventional modems and telephone lines to the program supplier station 102, after which transmission of the yj requested information is scheduled for delivery (i.e., transmission>
by the ~ program supplies station. If the packet IDs associated with the requested information are not already included in the root information available to the subscriber; the program supplier station 102 also provides the ~ subscriber with 4x the packet IDs required to access the requested information. For information c having an associated delivery charge, the subscriber's account is debited by t ..
~~ 10 'a charge corresponding to the information requested.
In the preferred embodiment, each request is assigned a priority level (e.g., a; low priority night-time delivery, regular two-hour delivery, and rush half-hour delivery, and the program supplier station 102 schedules delivery of requested information accordi~giy. Information access charges ave based both on the ~ .,., volume of informatioh requested ancf on the request's assigned priority level.
!f he requested priority level is not available due to an unexpected surge in requests; the subscriber station is informed that the request priority has been downgraded and the subscriber is given the opportunity to cancel the request.
r Prog~rain Sup Tier Station As shown in Figure 1; the program supplier station 102 includes the aforementioned database 112, which is typically stored on a large number of high density magnetic disk devices: The prograim editing software on the central program supplier station 102 tags alt the information in the database 112 with indices (each of which contains a packet ID plus additional information) so as to form a single hierarchical structure that encompasses the entire information database. More specifically, software 132 (executed by CPU 130) genefates a hierarchical-set of indices referencing all the data in the information database 112 and embeds those indices in the information database. .
1~V0 93/0631 ~ ~ ~ PC.'T/US92/O1087 In an alternate embodiment, the packet IDs and the associated indices embedded in the database can be generated off line. In particular, each information provider can be assigned, in advance, a block of packet ID values.
Bf the packet ID values are made sufficiently long, such as 64 or 96 bits long, then assigning blocks of packet ID values to information providers will not deplete the supply of such values. Each information pr~vider is required to organize the information it wants to publish into one or more subtrees, embedding the associated indices therein, and then providing the information to be published to the information server. The information server will then j "graft" the subtreets) of information provided by each information provider onto the information hierarchy broadcast by the information server.
The program supplier station 102 includes at least one central processing unit (CPU1 130, software 132 executed by the CPU 130 for editing program t.
materials and for scheduling delivery of both basic service information and subscriber requested data. In some embodiments, the supplier station 102 will be a distributed system utilizing many CPUs interconnected using a local area or even a wide area network. In that case, the station 102 shown in Figure 1 represents the information collection node, which collects all the information from various programming material providers, combines, serializes : and transmits the.infiormation.
Memory 133 stores; among other things, scheduling data which is used to control the timing at which each packet of information in the information database 112 is to be transmitted. As will be described below, the timing information in the schedule data is incorporated into "timestamp markers"
that are transmitted along with the transmitted data, enabling subscriber stations to know in advance when selected information items will be received .
User request processor 134 is interfaced to a large number of conventional telephone lines 136, using individual modular interface cards for each telephone line so that the system is expandable. Each interface card is ~~~~:=i~
WO 93!09631 PCT/US92/09087 programmed to receive and confirm information requests from subscribers, as well as to handle subscriber account transactions such as setting up new subscriber accounts, providing data decoding keys to new subscribers, and accepting credit card and debit card payments of subscriber balances.
In 5~ response to each information request received, the request processor queries a subsqriber database 138 to ensure that the subscriber is authorized ., to request additional data, sends the request to the scheduling software 132 ~
~
t ~ so that the transmission of the requested information will be scheduled, , and *v ;:
enters the corresponding charge into the subscriber's records in the subscriber 51.9 ~ database t38.
.
In embodiments of the invention using multiple transmission channels, so as to be able to handle lager numbers of subscriber requests, special scheduling messages are transmuted via the satellite indicating the approximate time that the requested information will be transmitted and the transmission channel that will be used. Subscriber stations waiting for requested information use this information to change the transmission channel being monitored so as to receive. the requested information.
. , The actual data transmission is handled by a data formatting and transmission subsystem 140. This subsystem includes memory for buffering and formatting he data scheduled for- transmission; as wail as circuitry for encrypting, packetizing, and then serializing or streaming the data to a transmitter which transmits the data stream to the subscriber stations 110 via satellite 104. .
In the preferred embodiment, some of the transmitted data is encoded.using s 25 conventional public key encryption methodology. Generally, decoding keys for decoding the encrypted data are given only to subscribers who pay for access to that data. For instance, whenever a subscriber requests information not included in the basic subscriber service: and for which there is an associated delivery charge, the program supplier station 102 may select a WO 93/l19b31 PCTlUS92/09087 new encryption key for each request in a pseudo-random fashion, passing the corresponding decoding key to the requestor via the same telephone connection on which the request is received. Encryption and decoding keys are used in the preferred embodiment solely in conjunction with the distribution of materials published on a fee-per-purchaser basis. When multiple subscribers request the same set of materials prior to their trarnsmission, the same encryption and decoding key can be used for all of those subscribers, thereby eliminating he need to retransmit the requested materials for each requesting subscribe:
t .: 10 Another type of "encryption" used in the preferred embodiment to defeat access by unauthorized subscribers to "protected data", without actually encrypting the protected data is as follows. The packet IDs associated with the protected data need not be sequential, rather they should be assigned ~ ,~.
on a pseudo-rarfdom basis. Furthermore; the packets for the requested data f . pseudo-random sequence.
'should be scheduled foc transmission in a interleaved with other broadcast data packets. This method of "mixing up"
S , the requested data, combined with the: fact that at least a fiundred 101~B
packets are transmitted per second, will make unauthorized access to protected data extremely difficult even when the protected data is not encrypted prior to transmission:
The utility of the present' invention can be further enhanced by using data compression techniques so as to increase the perceived bandwidth of the information server, and by downloading software, data compression codebooks and the like along with the transmitted information. Data compression is discussed more below.
Subscriber Receiving Stations Figure 2 shows an individual subscriber station 110-1 having its own satellite dish 150, low noise block receiver and signal converter (LNB) 152, receiver 153, and data filter subsystem 120. Typically, the satellite dish receives a WU 93lOg631 PGT/US9Z/09087 ~~~15~~ - 14-signal having a carrier frequency on the order of 12 GHz, the LNB 152 brings this down to about 1 GHz with a signal bandwidth of about 500 Mhlz, and the receiver 153 then'translates the received signal into a digital baseband ,a~.t si nal. In this embodiment, the subscriber station 110-1 is a deskto computer (such as a Macintosh computer made by Appfe Computer, or an ;
If3M PC compatible computer made by any one of a . large number of ~
manufacturerst to which the satellite receiver 150-152-153 and data x conversion subsystem 120 have been added. Thus, the subscriber station 110 has a CPU 154, monitor 156: keyboard 158, telephone modem 159 and other cowentional computer components.
As noted above; he data filter subsystem 120 receives the incoming data stream and selects those data packets that meet selection criteria defined by the' receiving lotion 110. The information in the selected data packets is downloaded into the memory 122-124 of the subscriber's workstation or other cormputer using subscriber software 160 provided by the information r~etwo~k supplier for that purpose. The data filter subsystem 120 is discussed i~ moce detail below with reference to Figure 7.
The present invention also includes the ability to automatically update the software used by ubscribers' computers by transmitting the software updates s~
; 20 along with other data transmitted by the information server, with different versions of the updated subscriber software being transmitted for each of ' the. different platforms ti:e., types of CPUs being used in subscribers computer. To implement this; the subscriber stations 110 must be set up to automatically accept and download software updates of the subscriber ~. 25 oftware 160.
-Referring to Figure 3; the subscriber's data storage 124 in the preferred embodiment includes a data area 161 reserved for downloading information from he data filter subsystem 120. Depending on the memory capacity of ..
the subscriber's data'storage devices 124, this data area 161 might be as W~U 93/09631 PCT/US92/a94P~7 ~12~.~92 small as, perhaps, 2MB, or as large as perhaps 100MB, with a reserved data area of i OMB being more typical for an individual subscriber.
~ne feature of the present invention is that the subscriber software 160 has a set of subscriber request handling routines 162 which interact with the data filter subsystem 120 to arrange for downloading of the iilformation requested by a subscriber. The request handling routines include a special "smart caching" routine 163 for anticipating future information requests by the user.
r~~ Data corresponding to these anticipated information requests is downloaded v;, into a port6on 164 of the reserved data area 161 called the smart cache. 6ince ~:.
a virtually unlimited amount of disk space could potentially be occupied by i.~.
these anticipated requests; only some of which will actually be requested by 5=y the subscriber, the smart cache 164 is used as a temporary buffer, the oldest contents of vrhich will be overwritten as information from new anticipated requests isvdownloaded:
. ~
The subscribersoftv~uare 9 60 also includes a data decompression routine 165 for decoding information transmitted in compressed form, a cache ~fs management routine 'l 66 for controlling the downloading of information into s ; the data area 161 and determining which information in the data area 161 a a:~ ~o delete when he urea overflows, and a user profile setup program '~ ,20 ~ ~ which c~mpiles a "user profile" data structure 300 that defines a default set of information to be retrieved from the transmitted data and stored in the data area 16'i . As noted previously, the data decompression routine used can dhan a de endin on the nature or t g P 9 ype of data.
Figures 4 and 5 show two alternate configurations of ubscriber stations, both >a 25 of which reduce the c~~t per subscriber for the required receiver hardware.
In Figure 4, the received satellite signal is translated by a low noise block converter t~NB) 152 t~ an intermediate carrier frequency of perhaps 1 GHz, which is then translated down to baseband by a receiver 153. The receiver 153 outputs a logic level bit stream that is received by a cable television WO 93!09631 PCTlUS92l09087 ,...:.., (CATV) distribution plant's head end 170 and then retransmitted via cable 172 to all the subscribers of the cable television system. Subscribers to the information network; connect their computers to the cable television cable 172 using a conventional tuner 174 to bring the satellite signal down to 5~ baseband. The~~ermaining portion of each subscriber's station is the same as shown in Figure 2. Two advantages of this systerri configuration are ( 1 ) that individual subscribes save the cost of having a satellite receiver 150-152, since one such receiver is ufficient to service a large number of subscribers' and (2) better reception of the satellite signal' with lower error rates' is ~ possible since most CATV head ends have larger receiving dishes than can be afforded by individual subscribers.
An important feature of this configuration is data switch 176' which enables local programming to be added to the data stream received from the satellite.
It is anticipated that a certain amount of the satellite's bandwidth will either be eft unused, for instance by leaving room for 1000 locally generated data packets each time that a particular special packet is transmitted, or that a portion of the data stream will be designated as suitable for being preempted by focal programming. The local program supplier station 178 is essentially a small version of central'program supplier station 102 in that it must perform similar tasks - collectihg information from various (presumably locat) programming; material providers; combining, serializing and transmitting the information during the available time slots set aside for local programming.
The local programming data will also be hierarchically arranged with embedded timestamped indices, and wilt generally be set up as a subtree appended to a bunch of the data hierarchy transmitted by the central program supplier station:
The ability to have local programming is commercially important, both because it provides the ability for local CATV stations to collect advertising revenues, which enabtes the data ransmission service to be provided free to subscribers' and~also to make the content of the transmitted data better tailored to its laVO 93/0~~31 ~ ~ ~ ~ ~ ~ '~ PCT/U~92/~9087 audience. Vastly greater information content is another result of having multiple local source transmitters. By way of example, if the local program supplier for each local CATV system provides one percent of the total traffic, and if there are one thousand such local program suppliers, the overall ~ information content of the information distribution system is increased ten fold.
In Figure 5, a single satellite receiver 150-152 is connected to a local area network 180 of subscribers. All requests for transmitted information are handled by a single data Tilt~r subsystem 120 and the network server 182.
I 0 In other words, requests for inforr~nation are routed through the network server 182 so that one date filter subsystem 120 can be used to select ail the information needed by all the subscriber work stations 184 on the local area network 180. Similarly, a single modem 186 or a small number of such modems can be used by a large dumber of work stations 184 to submit requests to the pragram supplierstation. A significant cost saving associated with this configuration is saved disk space - because all of the users can share access to it;formation stored on the server's hard disk. Speed of access to data from the informati6n service may also be improved, compared to an individual subscriber configuration, because more disk space can be dedicated ?0 tt~ automatically caching a larger portion of the transmitted information, since 'the cost of the dedicated disk space is being shared by a group of users.
This system configucatiorro also spreads the cost of the satellite receiver 150-152 and the cost of the data filter subsystem 120 over the same group of users. Since it is anticipated that the data filter subsystem 120 might sell 05- for ~t least5500 (in 199'! U:S. dolldcs) apiece to manufacture, the local area network configuration of Figure 5 can result in significant savings per user.
'fhe system configuration of Figure 5 is likely to be suitable not only for business subscribers, but also libraries, schools, kiosks at shopping malls, and other types of institutional subscribers.
WO 93/09631 ;~ ~ ~ ~ PCT/US92/09087 _ ~8 _ D~ita Fitter Subs~rstem As shown in Figure 6; each received data packet 200 begins with a packet identifier 202, followed by a function code 204 and a set of data 206, followed by error detection codes 208. Furthermore, as will be discussed 6 below, the data 206 includes not only the information associated with the packet identifier 202; but also timestamped indices 2'l0 for the next N (e.g., three) levels of information in the information database hierarchy.
Packet identifiers 202 are used to determine which packets require further processing, with alt unselected packets simply being discarded by the subsystem 120. The function code 204 is used to identify and categorize special messages transmitted by the program supplier. The packet ID 202 and the function 204 are ' not encrypted, thereby allowing packets to be selected o~ discarded prior to processing the data 206. In the preferred embodiment, the data 206 portion of most packets is not encrypted, except for the use of data compression: A standard, commercially available error correction methodology may be used to detect aid correct data errors caused by noise in the transmission process:
In some applications; data packets transmitted in response to subscriber requests will be encrypted: However; given the huge amount of data being '20 . rtransmitted it is impractical for a "pirate" to scan all the transmitted data for useful' information. Without knowing the packet tDs for a particular set of.
information, and the proper order of those packet IDs for reconstructing a particula~file or program, it is virtually impossibleto extract useful information from the data stream, thereby making data encryption unnecessary in most cases: _ Most or all of the data transmittedr by the system will be transmitted in compressed form. In order to make the data compression both efficient and flexible, a general set of data decompression software is included in the subscriber software 160 (see Figure 2~ given to each subscriber, along with . ., a default "code book" or coding algorithm to be used for the decompression process. Other code books or coding algorithms, associated with various types of transmitted data will be transmitted along with the compressed data.
A typical code book, for example suitable for encoding newspaper articles, ~5 will occupy less than 50KB. When used in conjuncti4n with megabytes of data. and taking into consideration that the compression will typically allow two-to-one or better data compression, the transmission of code-books along with the related data involves an inconsequential amount of overhead.
The data decompression is performed on the subscriber's own computer, where computation time is presumably virtually free of cost. Also, data decompression is not time consuming computationally using currently available desktop computers, and will ndt noticeably impact the performance of the system from the viewpoint of subscribers.
Referring to Figure 7 the data filter subsystem 120 used in subscriber stations ~o receive broadcast data works as follows. The satellite transmitted data stream, which contains a sequence of data packets, is first processed by a conventional satellite signal recovery circuit 220 that stores the received data packets in a ring buffer 222. In the preferred embodiment, the ring buffer 222 has 4 megabytes of storage, enabling about four hundred 10KB
data packets or about:2.5 seconds: of data at the system transmission rate to be stored: The required size of the ping buffer 222 is governed by the maximum possible delay before a selected packet is downloaded onto the subscribers host computer.
Each time that a complete data packet is transferred by the data recovery circuit 220 to ring buffer 222, the data recoverycircuit 220 sends a '~packet received" message to the subsystem's controller 224. The controller 224 responds by comparing the packet's !D 202 with a list of packet ID values and/or ranges of packet iD values stored in filter list 226. Packet's which match any of the packet iD values in the fitter list 226 are "selected" and iW0 93/09631 PtT/IJS92/09087 downloaded to the subscriber's computer via a conventional bus interface circuit 234, such as a SCSI (Standard Computer System Interface! interface.
To stretch the time available for downloading, a modified ring buffer technique can be used in which the buffer 222 is divided into a predefined number of slots, each of which can hold one packet. Slots holding.packets selected for downloading are "marked" (e.g., using a set of bit flagsl and thereby prevented from being overwritten by incoming data until the packet in the slot has been downloaded and the slot unmarked.
If a substantially longer period of time is required to ensure successful downloading of the received data to the subscriber's computer, either additional random access memory can be added to the ring buffer 222, or a fast disk storage device can be added to the data filter subsystem 120 to enable larger amounts of data to be buffered by the subsystem 124. The use of disk storage device for buffering may be justified for local area networks of subscribers, primarily to avoid loss of data when the network server cannot service the subsystem 120 within a few seconds.
In embodiments of the invention which include the transmission of video or audio programming material; the video programming material is transmitted st~gitally, in a compressed form. Many video data compression systems are 2~ commerciatly availabib. The video program materia6 stored in the information .
database 112 is stored in compressed digital form by the program supplier station 102. As a resutt, each data conversion subsystem could optionally include a video decompression and modulation circuit 240 for decompressing the compressed digitized video data, and then converging it back into an analog signal suitable for either playback or recording using a conventional VHS
video recorder. in alternate embodiments, the received video data will be downloaded in compressed form, for example for storage on a digital tape recorder: In this alternate embodiment, the subscriber's computer will have to include a video decompression circuit. This embodiment has the advantage ~1Y~ 93l~9631 PCT/~JS92109087 2~2~~9~
are reducing the storage requirement associated with digital video signal storage.
When multiple transmission channels are used by the program supplier station, the controller 224 sends control signals to the satellite receiver as to which channel should be selected. Typically, the satellite receiver will normally be tuned to a "main" or primary channel. Other channels are only selected during the expected transmission times associated with packet identifiers stored in the filter list.
Referring to Figure 6, the "requested data" in the filter list 226 is stored as an ordinary B-tree data stricture, similar to those found in almost any DBMS
(database management system). At the top of the tree is a root node 260.
At the bottom of the tree are leaf nodes 266, 268. In between the root 260 and the leaf nodes are intermediate nodes 27~, 272. 230. B-trees are well known data structures used to quickly identif~r whether or not a specified key 15 value is present icy a database: lr~ this case. a three level tree, with perhaps up to terventy entries per node; will facilitate high speed determination as to whether or not a particu9ar packet ID is present in the fitter list.
Each leaf node inahe filter list contains five fields: (1 ) a packet ID, t2) a flag indicating whether the packet is provided ps part of the basic subscriber ZO service oc whether it is a packet that has been specifically requested to be transmitted, (3) the identify of the char~hel on which the packet is to be transmitted, t4) a' repetition rate value; which is the rate at which transmission of the packet is repeated ~e.g., one time per hour, or zero for information specifically requested), and t5) a time skewvalue indicating the approximate 25 time that the packet is scheduled to be transmitted within the pack::°.'s repetition tier.
To determine the approximate next time that a packet is will be transmitted, r the repetition rate and time skew fields are used:
~,~ ~~/~~3~ PGT/US~2/0~3087 Next_Time = Rep Period ~' INT{Current TimelRep_Period}
+ Time Skew where INT is the integer functian. For instance, if the Current Time is 09:35, the Rep Period is one hour, and the Time Skew is 5 minutes, then the next time that the packet will be received is about 10:05 w-~tVhen a data packet ID in the filter list specified a channel other than the main data transmission channel, the Next Time value is used to determine when the subscriber's system should be tuned to the other specified transmission channel.
Alternately; the packet tDs for the information requested by the subscriber could be stored in a Content Address Memory (CAM?, thereby providing a match/ho-match determination for each packet 1D in a single clock cycle.
However; the CAM can st~re only a limited number of selected packet IDs, white the number ~f packet tDs that can b~ stored in the B-tree structure of figure 8 is limited only by the amount of tow-cost random access memory provided td store the filter fist.
Information Data Hierarchy and Indexinq Referring to Figures 1 and 9, alt of'the information in the program database 1.12 is hierarchically organized using a set; of assigned indices to reference each distinct portion thereof. F~r the purposes of transrr~ission, the database is broken into data packets each holding up to about 't 0;000 bytes of data. , tn general, each data packet has a unique packet ID, exc~:pt that a contiguous and associated set of packets might be assigned a single packet ID. sequence numbers inside the packets shaiing a common paekdt ID can be used to ensure that the data in these packets is properly ordered after downloading into the subscriber's computer. The indices associated v~rith reference data in the database ire included in the root information, and also may be embedded in vari~us portions of the transmitted data for the purposes of cross-referencing related enformation.
..._ ...:. : ,_ ,,.; . -. -__._ "~___ , _.,. ._.. , ..~.. , .. - ,: ::: .~:
.: , r - _~';, .
<; .
II.. ~." , ~ ~,. ~~! a x.,v. .' ~':~ .. ~.i . ~. . . .... ~.:~, :.!.. ~.'a:.:, a:~.:.~.: . :. . . ..W, ., , ....': . .., .' ' . '. :. ~~-:"
..n .:~.....".,..;....,. " ........,r ..~.~...~:. ..'.;:....;~
.:.......~_'...._....,.'..::, . . ', :.:-:.~ .._ ,:_.,::. .... ::....
"....,...:.. ~ .:,..,........:~..,..."... .. . . ,...,.~.P.: .....,..,.. .
'WHO 93/09631 PCTlUS92/~9fD~7 21~~~~~
Referring to the hierarchy or tree data structure 290 in Figure 9, a set of Root Information 292 is considered to be at the "top" of the hierarchy. For the purposes of this discussion, the directions "up" and "down" in the hierarchy are as shown in Figure 9. As shown, local programming provided by a local program supplier station is typically defined as a subtree of the hierarchy.
Alternately, the locally provided programming could be appended to several portions of the hierarchy 290.
Qepending on the amount of disk storage space available on the subscriber's computer for netv~iork server in the case of networks of subscribersl, a certain amount of the top portion of the information hierarchy 290 will be automatically stored and updated in the subscriber's computer so that this information is always available. Depending on how the subscriber configures his computer system, this may vary anywhere from 0.25 megabytes of data to perhaps 10 megabytes of data or more.
As Shawn in Figure 9; the information database is structured so that al! data down to a certain depth in the hierarchy is provided as part of the basic ubscriber service, while items further down the hierarchy are available only by special request: As shown in Figure 9, the depth of information provided by the basic subscriber service may vary in different portions of the hierarchy.
The information database is also hiera~chicalty~tructured in a second manner.
In particular, the information included in the basic subscriber service is divided into "root information" plus several tiers of 'snformation which are transmitted at decreasing frequency: Table 1 shows an example of how the 1.5 megabyte per second bandanridth associated with a single channel transmission system may be subdivided into tiers. The information database's root information, comprising about 0:25 megabytes that provides a large part of the indexing and top level menus needed to access the information database, is retransmitted ten times per hour. The first tier of information, transmitted foUrtimes per hour, comprises 150 megabytes of information most frequently VNO 9~/~9f31 PCT/U~92/09(18?
~~.~~5~ ~ - 24 -needed by subscribers. Each successively lower tier of information contains a larger amount of information than the next higher tier, prioritized in accordance with actual or expected subscriber usage, and is transmitted less often. In this example; twenty-five percent of the available bandwidth is reserved for responding to subscriber requests for additional data. It is noted that despite the high repetition rate of some of the basic subscriber service data, only 35.1 % of the available bandwidth is occupied by repeated information.
a 1o TABhE 1 Ezample of Data Channel Usage - 1.5MH/Sec Channel Megabytes % a~
Information Type Repeat Rate Per Transmsn .~;~dth Root Information 10 times/hr 0.250 00.0453 15 lat Priority Info 4 times/hr 150 1i.1 2nd Tisr Iafo 1 ti~~/hr 600 11.1 3rd Tier Info 0.25 t~msa/hr 20400 ii.i 4th Tisr Info 1 tims/12 hrs 7,200 11.i 5th T3.ar Into 1 tims/24 hrs 31,540 30.5537 Subtotals ~ nnzqus gnfo 49oe~0.25 ~',otal bytes T$ ~ 7 ~ 2 ~ ~ . ~ ~ 7 5 . ~ 0 Data T: by Request N/A 32,400 2500 ).Total ~29/6Q0e00 100.00 25 It should be emphasised that' the repetition rates and other data values provided in Table 1 are only one example of how the bandwidth of a channel could be utilized. The particular repetition rates associated with each tier of data and the amount of data allocated to each tier are selectable parameters that will need to be carefully considered in order to maximize utility of the 30 system for most subscribers.
W~ 93109631 ~ PCT/US92/09~~7 Each publisher providing materials to be published by the system will structure that information by indicating what portions are to be placed in Tier 1, what portions are to be placed in Tier 2, and so on. Different publication costs will be associated with each tier. Material published on fee-per-copy basis, wherein a royalty must be paid to the copyright owner,on a per copy basis, is transmitted only in response to specific subscriber~requests.
An alternate tiering scheme to the one shown in Table 1 would be to offer publishers a semi-continuous range of repetition rates in the form of a set of perhaps 100 different repetition rates, each having an associated publication cost; with much smaller increments between tiers than the example given in Table 1: tn addition, publishers would be able to specify time frames during which each subset of published information should be broadcast, thereby giving pubiish~rs a large degree of control over when their programming materials are broadcast. Of course, regardless of the repetition rate tiering scheme used; the publisher's ability to select any particular repetition rate and distribution time frame would be subject to the availability of the required transmissoon time. Presumably; supply and demand for time slots in the information server's transmitted data stream will be balanced by appropriate pricing poticies, much in the way that advertising time is sold by radio and television broadcasters:
rssPr Profiles For Automatic Data Retrieval Referring to Figure i 0; in the preferred embodiment, each subscriber's c~rr~puter compiles a "user profile" data structure 300 which defines a default filter set defining data to be stored and updated in a subscriber's computer.
In particular, the user profile 300 stores a value 302 indicating the amount ~f disk storage space that t : peen reserved for storing both root information and the frequently reques-. ~: ~, information specified elsewhere in the user profile. This value 302 will typically vary from 0.25 to 10 megabytes. A
depth value 304 indicates the amount of root information to be downloaded into the subscriber's computer, and items 306-308 specify portions of the ~V~ X3109631 ~ ~;~~~, 4,.'~;">~H PC°T/US9210908?
:,..
- 26 ~-information hierarchy that the subscriber wants to have stored and updated on an ongoing basis. For instance, the subscriber might specify that a1i information regarding certain sporting events tsuch as professional football games) be automatically retrieved and downloaded into his computer.
Software known as "computer agents" might be employed by subscribers for the purpose of automatically searching for specified data, organizing the results, and so off.
The data in the user profile 300 is translated into specific packet ID
inf~rmation that is then stored in the filter list 226 tsee Figure 7) of the 1 p subscriber's data fitter subsystem 120. As a result, transmitted information corresponding td the topics specified in the subscriber's user profile 300, is automatically downloaded into the subscriber's computer and is also automatically updated .as the transmitted information corresponding to those topics is update: By usia~g the "user profile" to pre-load the packet ID fitter 15 list: the subscriber's wait time for the information mast frequently requested by that subscrobe~ is reduced to zero.
Tim~starrsped Indices and .
"Smart Cachin4" to Avoid Data Delivery Delays Referring to Figure 11; timestamped indices 322 are embedded in the 2p ' information 320 transmitted by the program supplier. These indices are embedded not only in menus, such as the top level menu ,shown in Table 2, but are also embedded inside the text and~dr figures of the received informati~n, th~reby referencing and cross-referencing other data that is available in the database. The structure of the indices 322 is the same as 25 shown for indices 2G6, 266 stored in the filter list. It important to.note that each index item is tim~stamped tunlbss it references data that is transmitted only upon request) by the values in _the Rep Rate and Time akew fields of the index. Using the "Next Time" computation formula shown above, the timestamp data in each index allows the user to be notified as to the amount of time it ~nrill take before a requested item will be received.
Items in the WO 93!09631 ~ ~ ~ 1 ~ ~ ~ PCT/US92/09087 received information which have an associated timestamped index are highlighted or otherwise visually distinguished. When the subscriber selects the item, the associated ~imestamp information is displayed, thereby informing the subscriber whether or not this is a special request item obtainable only at extra cost, and also the associated delivery wait time if the item is included in the basic subscriber service.
look ahead requests is limited primarily by the amount of disk storage space available in the subscriber's computer. Since it will often take the subscriber a couple of minutes to examine the information obtained from a request, the W~ 93/09631 PCT/US92/09087 data from the look ahead requests will often be received before the subscriber actually requests them.
The data corresponding to the "look ahead" requests entered in the subscriber's fitter list are stored, when .received, on the subscriber's computer's hard disk (or other comparable mass storage device). In the preferred embodiment, a portion of the subscriber's hard disk is set aside as a "smart cache" (see Figure 3) specificatty for "caching" of these look ahead requests. When aid if the subscriber requests any of the data in the smart cache, it is available for immediate access by the subscriber. tf desired, the selected data in the smart cache can be moved to other areas of the user's hard disk. Unused data in the smart cache is overwritten with new data as required by other received data corresponding to look ahead requests.
Video Programming The transmission of video programming is a classic problem in that it tends A 15 to occupy large amounts of bandwidth. The typical byte count for an hour of video programming; using avaitabte data cmmpression techniques that do not noticeably degrade the quality flf the program, is about 0.9 gigabytes, which is equivalent to about 15M~ per minute.
Due to thelafge amounts of data associated with video programming, in the . 20 vpreferred embodiment most uideo programming is transmitted on a separate channel. Using a preferred data transmission rate of 1.aMB per second, which is equivalent to 90MB per minute, it is possible to use time multiplexing so as to transmit six video programs teach having an associated data rate of 15MB per minute) sirnuitaneously. tn addition to using time multiplexing' a 25 daxa Bering arrangement similar to the one shown in Table 1 can be used, whereby certain types of video programming are repeated more frequently than others.
WO 93/09631 PCI'/US92l09087 21~~~~~
Alternately, since the data rate of the channel is higher than the data rate required for any one video program, it would be possible to transmit a video program in a fraction of ~c ~s pia~ ~'- ~ck time associated with the program.
However, it is anticipated that m: subscriber's data receiver systems will ~ not be able to receive and store downloaded data at a sustained rate of 1.SMB
per second ti.e., for a sustained period of time in excess of, say, two or three seconds): If the received video programming data is being recorded in a typical subscriber station on a tape recorder, then the multiplexing rate used for transmission would be selected so as to match the data recording rates 1 ~ of such tape recorders.
It is anticipated that at least some subscriber's will be interested solely in receiving video programming from the data transmission system. For such subscribers, the subscriber's "computer" will actually be a data storage box which operates in much the same manner as a conventional video cassette recorder. Forthese systems, the data filter system would be preprogrammed to store all hierarchy information related to video programs. On screen menus would be displayed to allov~ the subscriber to select programs. The timestarr;p information embedded in he hierarchy information would be used to inform the subscriber as to when the selected programs would be received. Packet ED values correspondingto the selected programs would be stored in the filter list and the selected programs would be stored, generally on tape, for later viewing by the user.
Pg~ential Pub6ishers The data transmission system .of the present invention is suitable as a publication medium for' a wide range of potential publishers, including both publishers who wish to disseminate information for free and for publishers who wish to charge for each copy disseminated. The potential publishers include industrial suppliers (product data, catalogs, product information), software publishers (computer software and games, video and audio programming), catalog sales companies (text and pictures?, advertisers, real WO 93/09631 PCT/iJS92l09087 - ~~a ~ - 30 -v estate sellers, travel packages, publishers of reference materials or subscription based materials, and many others whose information changes relatively often or who wish to have low cost distribution to large numbers of customers.
Al~,ernate Embodiments Many aspects of the above described preferred embodime~tJmight be modified to accommodate various commercial and technical requirements. For instance, dedicated optical fiber. channels might used to transmit data from a national, or one or more regional, program supplier stations, to cable television transmission stations distributed over a wide geographic area. Certainly, the data transmission rates used by the system are totally dependent on the particular transmission medium used and the maximum acceptable cost for each subscriber's data filter subsystem.
Numerous minor technical choices in the design of the system can be changed without affecting the overall merit of the data transmission system. For 15 instance: in place of a standard, commercial error correction methodology, a proprietary error correction methodology could be used if there were a reason to do so.
White the present invention has been described with reference to a few specific embodiments, the description is illustrative of the invention and is 2~ ~ not to be construed as limiting the invention. Various modifications may occur to those 'skilled in the art without departing from the true spirit and scope of he invention as defihed by the appended claims.
Claims (16)
1. An information transmission system, comprising:
a set of one or more computer memory devices on which is stored an information database;
database editing means, coupled to said one or more computer memory devices, for generating a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and for embedding said indices in said information database; said database editing means further embedding in said information database cross-referencing indices for cross-referencing related information;
a transmitter, coupled to said one or more computer memory devices, for transmitting a stream of data packets containing selected portions of said information database; and a multiplicity of subscriber stations for receiving said transmitted stream of data packets, each subscriber station including a data filter that stores filter data corresponding to a subset of said indices, said filter data specifying a set of requested data packets which comprises a subset of said transmitted data packets, and that downloads into a memory storage device those of said received data packets which match said specified set of requested data packets;
said subscriber stations including data processing apparatus that automatically adds, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data so as to specify additional data packets to be downloaded;
whereby said subscriber station automatically downloads data packets containing data related to data contained in requested data packets, thereby anticipating potential additional requests that a user may make and speeding access thereto, wherein said set of indices include timestamps therein indicating when each said portion of the information database referenced by an index is to be transmitted; and said subscriber stations's data processing apparatus furthermore decoding said timestamps in said indices;
whereby subscribers can be informed as to when a specified portion of the information database will be received.
a set of one or more computer memory devices on which is stored an information database;
database editing means, coupled to said one or more computer memory devices, for generating a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and for embedding said indices in said information database; said database editing means further embedding in said information database cross-referencing indices for cross-referencing related information;
a transmitter, coupled to said one or more computer memory devices, for transmitting a stream of data packets containing selected portions of said information database; and a multiplicity of subscriber stations for receiving said transmitted stream of data packets, each subscriber station including a data filter that stores filter data corresponding to a subset of said indices, said filter data specifying a set of requested data packets which comprises a subset of said transmitted data packets, and that downloads into a memory storage device those of said received data packets which match said specified set of requested data packets;
said subscriber stations including data processing apparatus that automatically adds, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data so as to specify additional data packets to be downloaded;
whereby said subscriber station automatically downloads data packets containing data related to data contained in requested data packets, thereby anticipating potential additional requests that a user may make and speeding access thereto, wherein said set of indices include timestamps therein indicating when each said portion of the information database referenced by an index is to be transmitted; and said subscriber stations's data processing apparatus furthermore decoding said timestamps in said indices;
whereby subscribers can be informed as to when a specified portion of the information database will be received.
2. The information transmission system of claim 1, wherein each timestamp includes a repetition rate value indicating how often the associated portion of the information database is transmitted, and a time skew value indicating in conjunction with said repetition rate value a transmission time for the associated portion of the information database.
3. The information transmission system of claim 13, further including a transmission scheduler for scheduling transmission of selected portions of said information database, including assigning each selected portion of said information database one or more scheduled transmission times;
wherein the timestamp in indices referencing portions of the information database not scheduled for transmission is null, indicating that said referenced portions of the information database are transmitted only upon request by subscribers.
wherein the timestamp in indices referencing portions of the information database not scheduled for transmission is null, indicating that said referenced portions of the information database are transmitted only upon request by subscribers.
4. An information transmission system comprising:
a set of one or more computer memory devices on which is stored an information database;
database editing means, coupled to said one or more computer memory devices, for generating a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and for embedding said indices in said information database; said database editing means further embedding in said information database cross-referencing indices for cross-referencing related information;
a transmitter, coupled to said one or more computer memory devices, for transmitting a stream of data packets containing selected portions of said information database; and a computer program product for use in conjunction with a network server coupled to an associated set of subscriber stations, the network server receiving said transmitted stream of data packets on behalf of the associated set of subscriber stations, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising: a data filter that references a specified set of data packets, said specified set of data packets representing data packets requested by said associated set of subscriber stations, and that downloads into a memory storage device associated with the network server those of said received data packets which match said specified set of requested data packets, and instructions that add, in accordance with predefined criteria, data packets corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said specified set of data packets so as to specify additional data packets to be downloaded;
whereby overhead associated with receiving the stream of data packets and downloading for storage a specified subset thereof is shared by a set of subscribers.
a set of one or more computer memory devices on which is stored an information database;
database editing means, coupled to said one or more computer memory devices, for generating a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and for embedding said indices in said information database; said database editing means further embedding in said information database cross-referencing indices for cross-referencing related information;
a transmitter, coupled to said one or more computer memory devices, for transmitting a stream of data packets containing selected portions of said information database; and a computer program product for use in conjunction with a network server coupled to an associated set of subscriber stations, the network server receiving said transmitted stream of data packets on behalf of the associated set of subscriber stations, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising: a data filter that references a specified set of data packets, said specified set of data packets representing data packets requested by said associated set of subscriber stations, and that downloads into a memory storage device associated with the network server those of said received data packets which match said specified set of requested data packets, and instructions that add, in accordance with predefined criteria, data packets corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said specified set of data packets so as to specify additional data packets to be downloaded;
whereby overhead associated with receiving the stream of data packets and downloading for storage a specified subset thereof is shared by a set of subscribers.
5. The information transmission system of claim 4, said network server including memory caching means for storing in a memory cache said additional data packets until said memory cache is full, and then overwriting ones of said additional data packets with subsequently received ones of said additional packets in accordance with predefined criteria.
6. The information transmission system of claim 5, wherein said memory caching means overwrites ones of said additional data packets that have not been accessed by any of said associated set of subscriber stations with subsequently received ones of said additional packets.
7. An information transmission method, comprising the steps of:
storing an information database on one or more memory devices;
generating and storing on said memory devices a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and embedding said indices in said information database; said storing step further including embedding in said information database cross-referencing indices for cross-referencing related information;
transmitting a stream of data packets containing selected portions of said information database;
receiving said transmitted stream of data packets at subscriber stations;
at each subscriber station, storing filter data corresponding to a subset of said indices, said filter data specifying a set of requested data packets which comprises a subset of said transmitted data packets;
at each subscriber station, downloading into a memory storage device those of said received data packets which match said specified set of requested data packets; and said storing filter data step furthermore including automatically adding, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data so as to specify additional data packets to be downloaded;
whereby said subscriber station automatically downloads data packets containing data related to data contained in requested data packets, thereby anticipating potential additional requests that a user may make and speeding access thereto;
wherein said generating step generates indices including timestamps therein, said timestamps indicating when each said portion of the information database referenced by an index is to be transmitted;
said method including decoding said timestamps in said indices at said subscriber stations;
whereby subscribers can be informed as to when a specified portion of the information database will be received.
storing an information database on one or more memory devices;
generating and storing on said memory devices a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and embedding said indices in said information database; said storing step further including embedding in said information database cross-referencing indices for cross-referencing related information;
transmitting a stream of data packets containing selected portions of said information database;
receiving said transmitted stream of data packets at subscriber stations;
at each subscriber station, storing filter data corresponding to a subset of said indices, said filter data specifying a set of requested data packets which comprises a subset of said transmitted data packets;
at each subscriber station, downloading into a memory storage device those of said received data packets which match said specified set of requested data packets; and said storing filter data step furthermore including automatically adding, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data so as to specify additional data packets to be downloaded;
whereby said subscriber station automatically downloads data packets containing data related to data contained in requested data packets, thereby anticipating potential additional requests that a user may make and speeding access thereto;
wherein said generating step generates indices including timestamps therein, said timestamps indicating when each said portion of the information database referenced by an index is to be transmitted;
said method including decoding said timestamps in said indices at said subscriber stations;
whereby subscribers can be informed as to when a specified portion of the information database will be received.
8. The information transmission method of claim 7, wherein each timestamp includes a repetition rate value indicating how often the associated portion of the information database is transmitted, and a time skew value indicating in conjunction with said repetition rate value a transmission time for the associated portion of the information database.
9. The information transmission system of claim 8, scheduling transmission of selected portions of said information database, including assigning each selected portion of said information database one or more scheduled transmission times;
wherein the timestamp in indices referencing portions of the information database not scheduled for transmission is null, indicating that said referenced portions of the information database are transmitted only upon request by subscribers.
wherein the timestamp in indices referencing portions of the information database not scheduled for transmission is null, indicating that said referenced portions of the information database are transmitted only upon request by subscribers.
10. An information transmission method comprising the steps of:
storing an information database on one or more memory devices;
generating and storing on said memory devices a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and embedding said indices in said information database; said storing step further including embedding in said information database cross-referencing indices for cross-referencing related information;
transmitting a stream of data packets containing selected portions of said information database;
receiving said transmitted stream of data packets at subscriber stations;
wherein one or more subsets of said subscriber stations are interconnected via a local area network including a network server;
said method including receiving at said network server said transmitted stream of data packets on behalf of an associated set of subscriber stations, storing filter data in said network server referencing a set of requested data packets, said filter data representing data packets requested by said associated set of subscriber stations, and downloading into a memory storage device associated with said network server those of said received data packets which match said specified set of requested data packets;
said network server further adding, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data stored by said network server so as to specify additional data packets to be downloaded;
whereby overhead associated with receiving the stream of data packets and downloading for storage a specified subset thereof is shared by a set of subscribers.
storing an information database on one or more memory devices;
generating and storing on said memory devices a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and embedding said indices in said information database; said storing step further including embedding in said information database cross-referencing indices for cross-referencing related information;
transmitting a stream of data packets containing selected portions of said information database;
receiving said transmitted stream of data packets at subscriber stations;
wherein one or more subsets of said subscriber stations are interconnected via a local area network including a network server;
said method including receiving at said network server said transmitted stream of data packets on behalf of an associated set of subscriber stations, storing filter data in said network server referencing a set of requested data packets, said filter data representing data packets requested by said associated set of subscriber stations, and downloading into a memory storage device associated with said network server those of said received data packets which match said specified set of requested data packets;
said network server further adding, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data stored by said network server so as to specify additional data packets to be downloaded;
whereby overhead associated with receiving the stream of data packets and downloading for storage a specified subset thereof is shared by a set of subscribers.
11. The information transmission method of claim 10, including storing in a memory cache in said network server said additional data packets until said memory cache is full, and then overwriting ones of said additional data packets with subsequently received ones of said additional packets in accordance with predefined criteria.
12. The information transmission method of claim 11, wherein said overwriting step overwrites ones of said additional data packets that have not been accessed by any of said associated set of subscriber stations with subsequently received ones of said additional packets.
13. An information transmission method, comprising the steps of:
storing an information database on one or more memory devices;
generating and storing on said memory devices a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and embedding said indices in said information database; said storing step further including embedding in said information database cross-referencing indices for cross-referencing related information;
transmitting a stream of data packets containing selected portions of said information database;
receiving said transmitted stream of data packets at subscriber stations;
at each subscriber station, storing filter data corresponding to a subset of said indices, said filter data specifying a set of requested data packets which comprises a subset of said transmitted data packets;
at each subscriber station, downloading into a memory storage device those of said received data packets which match said specified set of requested data packets; and said storing filter data step furthermore including automatically adding, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data so as to specify additional data packets to be downloaded;
whereby said subscriber station automatically downloads data packets containing data related to data contained in requested data packets, thereby anticipating potential additional requests that a user may make and speeding access thereto;
the method further including receiving requests from subscribers submitted via the subscriber stations, said requests each specifying a portion of said information database;
reserving transmission times for transmitting portions of said information database requested by subscribers;
and transmitting said requested portions of said information database during said reserved transmission times.
storing an information database on one or more memory devices;
generating and storing on said memory devices a set of indices for referencing data in said information database, including distinct indices for referencing distinct portions thereof, and embedding said indices in said information database; said storing step further including embedding in said information database cross-referencing indices for cross-referencing related information;
transmitting a stream of data packets containing selected portions of said information database;
receiving said transmitted stream of data packets at subscriber stations;
at each subscriber station, storing filter data corresponding to a subset of said indices, said filter data specifying a set of requested data packets which comprises a subset of said transmitted data packets;
at each subscriber station, downloading into a memory storage device those of said received data packets which match said specified set of requested data packets; and said storing filter data step furthermore including automatically adding, in accordance with predefined criteria, data corresponding to ones of said cross-referencing indices embedded in said downloaded data packets to said filter data so as to specify additional data packets to be downloaded;
whereby said subscriber station automatically downloads data packets containing data related to data contained in requested data packets, thereby anticipating potential additional requests that a user may make and speeding access thereto;
the method further including receiving requests from subscribers submitted via the subscriber stations, said requests each specifying a portion of said information database;
reserving transmission times for transmitting portions of said information database requested by subscribers;
and transmitting said requested portions of said information database during said reserved transmission times.
14. An information transmission method of claim 13, wherein said generating step generates indices including timestamps therein, said timestamps indicating when each said portion of the information database referenced by an index is to be transmitted;
said method including decoding said timestamps in said indices at said subscriber stations;
whereby subscribers can be informed as to when a specified portion of the information database will be received.
said method including decoding said timestamps in said indices at said subscriber stations;
whereby subscribers can be informed as to when a specified portion of the information database will be received.
15. The information transmission method of claim 14, wherein each timestamp includes a repetition rate value indicating how often the associated portion of the information database is transmitted, and a time skew value indicating in conjunction with said repetition rate value a transmission time for the associated portion of the information database.
16. The information transmission method of claim 14, scheduling transmission of selected portions of said information database, including assigning each selected portion of said information database one or more scheduled transmission times;
wherein the timestamp in indices referencing portions of the information database not scheduled for transmission is null, indicating that said referenced portions of the information database are transmitted only upon request by subscribers.
wherein the timestamp in indices referencing portions of the information database not scheduled for transmission is null, indicating that said referenced portions of the information database are transmitted only upon request by subscribers.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/786,453 | 1991-11-01 | ||
US07/786,453 US5404505A (en) | 1991-11-01 | 1991-11-01 | System for scheduling transmission of indexed and requested database tiers on demand at varying repetition rates |
PCT/US1992/009087 WO1993009631A1 (en) | 1991-11-01 | 1992-10-27 | Information broadcasting system and method |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2121592A1 CA2121592A1 (en) | 1993-05-13 |
CA2121592C true CA2121592C (en) | 2001-04-17 |
Family
ID=25138629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002121592A Expired - Lifetime CA2121592C (en) | 1991-11-01 | 1992-10-27 | Information broadcasting system and method |
Country Status (5)
Country | Link |
---|---|
US (1) | US5404505A (en) |
EP (1) | EP0610367A4 (en) |
AU (1) | AU654885B2 (en) |
CA (1) | CA2121592C (en) |
WO (1) | WO1993009631A1 (en) |
Families Citing this family (331)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6847611B1 (en) * | 1990-12-10 | 2005-01-25 | At&T Corp. | Traffic management for frame relay switched data service |
US5988078A (en) * | 1991-12-04 | 1999-11-23 | Gemstar Development Corp. | Method and apparatus for receiving customized television programming information by transmitting geographic location to a service provider through a wide-area network |
US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
US7242988B1 (en) * | 1991-12-23 | 2007-07-10 | Linda Irene Hoffberg | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
IN187949B (en) * | 1992-11-27 | 2002-07-27 | Io Res Pty Ltd | |
US5798785A (en) | 1992-12-09 | 1998-08-25 | Discovery Communications, Inc. | Terminal for suggesting programs offered on a television program delivery system |
US6201536B1 (en) | 1992-12-09 | 2001-03-13 | Discovery Communications, Inc. | Network manager for cable television system headends |
ATE183352T1 (en) * | 1992-12-09 | 1999-08-15 | Discovery Communicat Inc | IMPROVED TOP-UP TERMINAL FOR CABLE TELEVISION DISTRIBUTION SYSTEMS |
US7835989B1 (en) | 1992-12-09 | 2010-11-16 | Discovery Communications, Inc. | Electronic book alternative delivery systems |
US8073695B1 (en) | 1992-12-09 | 2011-12-06 | Adrea, LLC | Electronic book with voice emulation features |
US7168084B1 (en) | 1992-12-09 | 2007-01-23 | Sedna Patent Services, Llc | Method and apparatus for targeting virtual objects |
US5659350A (en) | 1992-12-09 | 1997-08-19 | Discovery Communications, Inc. | Operations center for a television program packaging and delivery system |
US5600364A (en) | 1992-12-09 | 1997-02-04 | Discovery Communications, Inc. | Network controller for cable television delivery systems |
US7336788B1 (en) * | 1992-12-09 | 2008-02-26 | Discovery Communicatoins Inc. | Electronic book secure communication with home subsystem |
US7509270B1 (en) | 1992-12-09 | 2009-03-24 | Discovery Communications, Inc. | Electronic Book having electronic commerce features |
US6463585B1 (en) | 1992-12-09 | 2002-10-08 | Discovery Communications, Inc. | Targeted advertisement using television delivery systems |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
US6181335B1 (en) | 1992-12-09 | 2001-01-30 | Discovery Communications, Inc. | Card for a set top terminal |
US7849393B1 (en) | 1992-12-09 | 2010-12-07 | Discovery Communications, Inc. | Electronic book connection to world watch live |
US5434850A (en) | 1993-06-17 | 1995-07-18 | Skydata Corporation | Frame relay protocol-based multiplex switching scheme for satellite |
US6771617B1 (en) * | 1993-06-17 | 2004-08-03 | Gilat Satellite Networks, Ltd. | Frame relay protocol-based multiplex switching scheme for satellite mesh network |
CA2106222C (en) * | 1993-09-15 | 2000-10-31 | Russell D. N. Mackinnon | Object oriented communication network |
US5513126A (en) * | 1993-10-04 | 1996-04-30 | Xerox Corporation | Network having selectively accessible recipient prioritized communication channel profiles |
US8095949B1 (en) | 1993-12-02 | 2012-01-10 | Adrea, LLC | Electronic book with restricted access features |
US7861166B1 (en) | 1993-12-02 | 2010-12-28 | Discovery Patent Holding, Llc | Resizing document pages to fit available hardware screens |
US7865567B1 (en) * | 1993-12-02 | 2011-01-04 | Discovery Patent Holdings, Llc | Virtual on-demand electronic book |
US9053640B1 (en) | 1993-12-02 | 2015-06-09 | Adrea, LLC | Interactive electronic book |
US5592626A (en) * | 1994-02-07 | 1997-01-07 | The Regents Of The University Of California | System and method for selecting cache server based on transmission and storage factors for efficient delivery of multimedia information in a hierarchical network of servers |
JPH07231309A (en) * | 1994-02-17 | 1995-08-29 | Hitachi Ltd | Information distribution system |
US6473860B1 (en) | 1994-04-07 | 2002-10-29 | Hark C. Chan | Information distribution and processing system |
US7991347B1 (en) | 1994-04-07 | 2011-08-02 | Data Innovation Llc | System and method for accessing set of digital data at a remote site |
US5559548A (en) * | 1994-05-20 | 1996-09-24 | Davis; Bruce | System and method for generating an information display schedule for an electronic program guide |
US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
US6473793B1 (en) * | 1994-06-08 | 2002-10-29 | Hughes Electronics Corporation | Method and apparatus for selectively allocating and enforcing bandwidth usage requirements on network users |
US6701370B1 (en) * | 1994-06-08 | 2004-03-02 | Hughes Electronics Corporation | Network system with TCP/IP protocol spoofing |
EP0765560A1 (en) * | 1994-06-08 | 1997-04-02 | Hughes Aircraft Company | Apparatus and method for hybrid network access |
US7181758B1 (en) | 1994-07-25 | 2007-02-20 | Data Innovation, L.L.C. | Information distribution and processing system |
US5978567A (en) * | 1994-07-27 | 1999-11-02 | Instant Video Technologies Inc. | System for distribution of interactive multimedia and linear programs by enabling program webs which include control scripts to define presentation by client transceiver |
US5684984A (en) * | 1994-09-29 | 1997-11-04 | Apple Computer, Inc. | Synchronization and replication of object databases |
US7188352B2 (en) | 1995-07-11 | 2007-03-06 | Touchtunes Music Corporation | Intelligent digital audiovisual playback system |
ES2143556T3 (en) | 1994-10-12 | 2000-05-16 | Touchtunes Music Corp | INTELLIGENT DIGITAL AUDIOVISUAL REPRODUCTION SYSTEM. |
US7424731B1 (en) * | 1994-10-12 | 2008-09-09 | Touchtunes Music Corporation | Home digital audiovisual information recording and playback system |
US8661477B2 (en) | 1994-10-12 | 2014-02-25 | Touchtunes Music Corporation | System for distributing and selecting audio and video information and method implemented by said system |
US5867205A (en) * | 1994-11-14 | 1999-02-02 | Intel Corporation | Method and apparatus for controlling video/audio and channel selection for a communication signal based on textual information indicative of channel contents of a signal |
US5727065A (en) | 1994-11-14 | 1998-03-10 | Hughes Electronics | Deferred billing, broadcast, electronic document distribution system and method |
US5652795A (en) | 1994-11-14 | 1997-07-29 | Hughes Electronics | Method and apparatus for an adapter card providing conditional access in a communication system |
US5617565A (en) * | 1994-11-29 | 1997-04-01 | Hitachi America, Ltd. | Broadcast interactive multimedia system |
US6453438B1 (en) | 1995-01-19 | 2002-09-17 | The Fantastic Corporation | System and method for automatically rescheduling a data transmission to members of a group |
US5920701A (en) * | 1995-01-19 | 1999-07-06 | Starburst Communications Corporation | Scheduling data transmission |
US6873627B1 (en) | 1995-01-19 | 2005-03-29 | The Fantastic Corporation | System and method for sending packets over a computer network |
US6625652B1 (en) | 1995-01-19 | 2003-09-23 | The Fantastic Corporation | System and method for host list pruning |
JP3666047B2 (en) * | 1995-03-17 | 2005-06-29 | 株式会社日立製作所 | Information transmission method |
US5819284A (en) * | 1995-03-24 | 1998-10-06 | At&T Corp. | Personalized real time information display as a portion of a screen saver |
US5828904A (en) * | 1995-05-09 | 1998-10-27 | Apple Computer, Inc. | System for data retrieval by scheduling retrieval if number of units scheduled equals or less than predetermined number and retrieving before or at time elapsed |
US6240451B1 (en) * | 1995-05-25 | 2001-05-29 | Punch Networks Corporation | Method and apparatus for automatically disseminating information over a network |
JP3394388B2 (en) * | 1995-05-30 | 2003-04-07 | 三菱電機株式会社 | Satellite communication system, satellite communication method, and information center distribution device |
US5675784A (en) * | 1995-05-31 | 1997-10-07 | International Business Machnes Corporation | Data structure for a relational database system for collecting component and specification level data related to products |
US5835061A (en) | 1995-06-06 | 1998-11-10 | Wayport, Inc. | Method and apparatus for geographic-based communications service |
US8606851B2 (en) | 1995-06-06 | 2013-12-10 | Wayport, Inc. | Method and apparatus for geographic-based communications service |
US6526038B1 (en) | 1995-06-07 | 2003-02-25 | Telcordia Technologies, Inc. | Periodic wireless broadcast |
FI98175C (en) * | 1995-06-12 | 1997-04-25 | Nokia Oy Ab | Transmission of multimedia objects in a digital data transmission system |
US5740549A (en) * | 1995-06-12 | 1998-04-14 | Pointcast, Inc. | Information and advertising distribution system and method |
US6807558B1 (en) | 1995-06-12 | 2004-10-19 | Pointcast, Inc. | Utilization of information “push” technology |
EP0787407B1 (en) * | 1995-07-03 | 2002-11-06 | Koninklijke Philips Electronics N.V. | Transmission of an electronic database of information |
US20020178051A1 (en) | 1995-07-25 | 2002-11-28 | Thomas G. Scavone | Interactive marketing network and process using electronic certificates |
US5907836A (en) * | 1995-07-31 | 1999-05-25 | Kabushiki Kaisha Toshiba | Information filtering apparatus for selecting predetermined article from plural articles to present selected article to user, and method therefore |
US5913040A (en) * | 1995-08-22 | 1999-06-15 | Backweb Ltd. | Method and apparatus for transmitting and displaying information between a remote network and a local computer |
WO1997010558A1 (en) * | 1995-09-14 | 1997-03-20 | Bell Communications Research, Inc. | Method and system for providing continually updated personalized information |
US5784597A (en) * | 1995-09-22 | 1998-07-21 | Hewlett-Packard Company | Communications network system including acknowledgement indicating successful receipt of request for reserved communication slots and start time for said reserved communication slots |
US5966163A (en) | 1995-10-20 | 1999-10-12 | Scientific-Atlanta, Inc. | Providing constant bit rate upstream data transport in a two way cable system by scheduling preemptive grants for upstream data slots using selected fields of a plurality of grant fields |
US6230203B1 (en) | 1995-10-20 | 2001-05-08 | Scientific-Atlanta, Inc. | System and method for providing statistics for flexible billing in a cable environment |
US5781226A (en) * | 1995-11-13 | 1998-07-14 | General Instrument Corporation Of Delaware | Network virtual memory for a cable television settop terminal |
US6195654B1 (en) * | 1995-11-16 | 2001-02-27 | Edward I Wachtel | System and method for obtaining improved search results and for decreasing network loading |
AU701622B2 (en) * | 1996-01-16 | 1999-02-04 | Hughes Electronics Corporation | Secure satellite receive-only local area network with address filter |
US5823879A (en) | 1996-01-19 | 1998-10-20 | Sheldon F. Goldberg | Network gaming system |
US9530150B2 (en) | 1996-01-19 | 2016-12-27 | Adcension, Llc | Compensation model for network services |
US6264560B1 (en) | 1996-01-19 | 2001-07-24 | Sheldon F. Goldberg | Method and system for playing games on a network |
US20090012864A1 (en) * | 2007-07-02 | 2009-01-08 | Goldberg Sheldon F | Compensation model for network services |
US5915207A (en) | 1996-01-22 | 1999-06-22 | Hughes Electronics Corporation | Mobile and wireless information dissemination architecture and protocols |
US6119135A (en) * | 1996-02-09 | 2000-09-12 | At&T Corporation | Method for passively browsing the internet using images extracted from web pages |
JPH09271002A (en) * | 1996-03-29 | 1997-10-14 | Mitsubishi Electric Corp | Video data distribution system |
US5995943A (en) * | 1996-04-01 | 1999-11-30 | Sabre Inc. | Information aggregation and synthesization system |
US5901287A (en) | 1996-04-01 | 1999-05-04 | The Sabre Group Inc. | Information aggregation and synthesization system |
US7028088B1 (en) * | 1996-04-03 | 2006-04-11 | Scientific-Atlanta, Inc. | System and method for providing statistics for flexible billing in a cable environment |
US5828837A (en) * | 1996-04-15 | 1998-10-27 | Digilog As | Computer network system and method for efficient information transfer |
US5848397A (en) * | 1996-04-19 | 1998-12-08 | Juno Online Services, L.P. | Method and apparatus for scheduling the presentation of messages to computer users |
US5838790A (en) * | 1996-04-19 | 1998-11-17 | Juno Online Services, L.P. | Advertisement authentication system in which advertisements are downloaded for off-line display |
US5809242A (en) | 1996-04-19 | 1998-09-15 | Juno Online Services, L.P. | Electronic mail system for displaying advertisement at local computer received from remote system while the local computer is off-line the remote system |
US5802305A (en) * | 1996-05-17 | 1998-09-01 | Microsoft Corporation | System for remotely waking a sleeping computer in power down state by comparing incoming packet to the list of packets storing on network interface card |
US5768528A (en) * | 1996-05-24 | 1998-06-16 | V-Cast, Inc. | Client-server system for delivery of online information |
US5745756A (en) * | 1996-06-24 | 1998-04-28 | International Business Machines Corporation | Method and system for managing movement of large multi-media data files from an archival storage to an active storage within a multi-media server computer system |
IES70671B2 (en) * | 1996-07-08 | 1996-12-11 | Anthony Stafford | Data processing system |
US5987464A (en) * | 1996-07-26 | 1999-11-16 | Schneider; Eric | Method and system for periodically updating data records having an expiry time |
FR2752350B1 (en) * | 1996-08-09 | 2001-06-08 | Thomson Multimedia Sa | METHOD FOR EXTRACTING DATA IN A CYCLIC TRANSMISSION SYSTEM AND IMPLEMENTING DEVICE |
US5956034A (en) * | 1996-08-13 | 1999-09-21 | Softbook Press, Inc. | Method and apparatus for viewing electronic reading materials |
US5933811A (en) | 1996-08-20 | 1999-08-03 | Paul D. Angles | System and method for delivering customized advertisements within interactive communication systems |
US6601103B1 (en) | 1996-08-22 | 2003-07-29 | Intel Corporation | Method and apparatus for providing personalized supplemental programming |
EP0827093A3 (en) * | 1996-08-28 | 1999-01-07 | Oki Electric Industry Co., Ltd. | Information transmission system, information storing and providing apparatus, and information receiving apparatus |
JPH1070530A (en) * | 1996-08-28 | 1998-03-10 | Oki Electric Ind Co Ltd | Information transfer system, information storage providing device and information device to be provided |
JP3671543B2 (en) * | 1996-09-10 | 2005-07-13 | ソニー株式会社 | Data transmission method, data transmission device, data reception device parameter setting method, data reception device, and data transmission system |
FR2753868A1 (en) | 1996-09-25 | 1998-03-27 | Technical Maintenance Corp | METHOD FOR SELECTING A RECORDING ON AN AUDIOVISUAL DIGITAL REPRODUCTION SYSTEM AND SYSTEM FOR IMPLEMENTING THE METHOD |
US6141044A (en) * | 1996-09-26 | 2000-10-31 | Apple Computer, Inc. | Method and system for coherent image group maintenance in memory |
US6199076B1 (en) * | 1996-10-02 | 2001-03-06 | James Logan | Audio program player including a dynamic program selection controller |
US6049332A (en) * | 1996-10-07 | 2000-04-11 | Sony Corporation | Method and apparatus for the scheduling and ordering of elements in a multimedia environment |
US6311329B1 (en) | 1996-10-14 | 2001-10-30 | Sony Corporation | Information providing apparatus and method, display controlling apparatus and method, information providing system, as well as transmission medium |
JP3655714B2 (en) * | 1996-11-15 | 2005-06-02 | 株式会社ニューズウオッチ | Information filtering apparatus and recording medium |
US6405239B1 (en) * | 1996-12-09 | 2002-06-11 | Scientific-Atlanta, Inc. | Using a hierarchical file system for indexing data broadcast to a client from a network of servers |
JP3244166B2 (en) * | 1996-12-25 | 2002-01-07 | ユニデン株式会社 | Information reservation transmission method, information reservation transmission method, and transmission server |
FR2758425B1 (en) * | 1997-01-14 | 1999-03-19 | Telediffusion Fse | INTERFACING SYSTEM BETWEEN SERVERS OF A BENEFIT EDITOR, AND A SERVER FOR ACCESS TO A BROADCASTING NETWORK, AND BETWEEN THIS NETWORK AND A USER |
US6308328B1 (en) | 1997-01-17 | 2001-10-23 | Scientific-Atlanta, Inc. | Usage statistics collection for a cable data delivery system |
US6272150B1 (en) | 1997-01-17 | 2001-08-07 | Scientific-Atlanta, Inc. | Cable modem map display for network management of a cable data delivery system |
CA2278709A1 (en) * | 1997-01-27 | 1998-08-13 | Benjamin Slotznick | System for delivering and displaying primary and secondary information |
US6138162A (en) | 1997-02-11 | 2000-10-24 | Pointcast, Inc. | Method and apparatus for configuring a client to redirect requests to a caching proxy server based on a category ID with the request |
US6173311B1 (en) | 1997-02-13 | 2001-01-09 | Pointcast, Inc. | Apparatus, method and article of manufacture for servicing client requests on a network |
DE19709041A1 (en) * | 1997-03-06 | 1998-09-10 | Rudolf Prof Bayer | Database system and method for operating a database system |
JP3662384B2 (en) * | 1997-03-09 | 2005-06-22 | 松下電器産業株式会社 | Information providing method and information providing and receiving apparatus used therefor |
KR20050052484A (en) * | 1997-03-17 | 2005-06-02 | 마츠시타 덴끼 산교 가부시키가이샤 | Data processing method |
GB9705719D0 (en) * | 1997-03-20 | 1997-05-07 | Two Way Tv Ltd | Method and apparatus for transmitting data |
US6286058B1 (en) | 1997-04-14 | 2001-09-04 | Scientific-Atlanta, Inc. | Apparatus and methods for automatically rerouting packets in the event of a link failure |
US6377963B1 (en) * | 1997-05-23 | 2002-04-23 | Walker Digital, Llc | Method and system for attaching customized indexes to periodicals |
US7484172B2 (en) | 1997-05-23 | 2009-01-27 | Walker Digital, Llc | System and method for providing a customized index with hyper-footnotes |
US5978381A (en) * | 1997-06-06 | 1999-11-02 | Webtv Networks, Inc. | Transmitting high bandwidth network content on a low bandwidth communications channel during off peak hours |
US5892919A (en) * | 1997-06-23 | 1999-04-06 | Sun Microsystems, Inc. | Spell checking universal resource locator (URL) by comparing the URL against a cache containing entries relating incorrect URLs submitted by users to corresponding correct URLs |
US6081524A (en) | 1997-07-03 | 2000-06-27 | At&T Corp. | Frame relay switched data service |
US5973734A (en) | 1997-07-09 | 1999-10-26 | Flashpoint Technology, Inc. | Method and apparatus for correcting aspect ratio in a camera graphical user interface |
US6038601A (en) * | 1997-07-21 | 2000-03-14 | Tibco, Inc. | Method and apparatus for storing and delivering documents on the internet |
SE510000C2 (en) * | 1997-07-21 | 1999-03-29 | Ericsson Telefon Ab L M | Structure of database |
US6760746B1 (en) * | 1999-09-01 | 2004-07-06 | Eric Schneider | Method, product, and apparatus for processing a data request |
US6442549B1 (en) | 1997-07-25 | 2002-08-27 | Eric Schneider | Method, product, and apparatus for processing reusable information |
KR100262854B1 (en) * | 1997-08-29 | 2000-08-01 | 전주범 | Apparatus for detecting database of video program and method thereof |
US6141694A (en) * | 1997-09-16 | 2000-10-31 | Webtv Networks, Inc. | Determining and verifying user data |
FR2769165B1 (en) | 1997-09-26 | 2002-11-29 | Technical Maintenance Corp | WIRELESS SYSTEM WITH DIGITAL TRANSMISSION FOR SPEAKERS |
US6604240B2 (en) | 1997-10-06 | 2003-08-05 | United Video Properties, Inc. | Interactive television program guide system with operator showcase |
US5924096A (en) * | 1997-10-15 | 1999-07-13 | Novell, Inc. | Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand |
WO1999028838A1 (en) * | 1997-12-04 | 1999-06-10 | Aveo, Inc. | Method and apparatus for multi-stage data filtering by a single device |
US6330610B1 (en) * | 1997-12-04 | 2001-12-11 | Eric E. Docter | Multi-stage data filtering system employing multiple filtering criteria |
US6990680B1 (en) * | 1998-01-05 | 2006-01-24 | Gateway Inc. | System for scheduled caching of in-band data services |
WO1999036846A2 (en) * | 1998-01-14 | 1999-07-22 | Andrei Valerievich Shelenin | Bank gambling system |
GB9803623D0 (en) * | 1998-02-20 | 1998-04-15 | The Technology Partnership Plc | Audio information transmission |
AU6334698A (en) * | 1998-02-23 | 1999-09-06 | Personal Audio, Inc. | System for distributing personalized audio programming |
IL127792A (en) * | 1998-04-21 | 2003-04-10 | Ibm | System and method for identifying and selecting portions of information streams for a television system |
JP3361997B2 (en) * | 1998-05-07 | 2003-01-07 | 松下電器産業株式会社 | Broadcast transmission device and broadcast transmission method |
US6243389B1 (en) * | 1998-05-21 | 2001-06-05 | Lucent Technologies, Inc. | Method and apparatus for indexed data broadcast |
US9009773B1 (en) | 1998-06-30 | 2015-04-14 | Cox Communications, Inc. | Method and apparatus for providing broadcast data services |
FR2781582B1 (en) | 1998-07-21 | 2001-01-12 | Technical Maintenance Corp | SYSTEM FOR DOWNLOADING OBJECTS OR FILES FOR SOFTWARE UPDATE |
FR2781580B1 (en) | 1998-07-22 | 2000-09-22 | Technical Maintenance Corp | SOUND CONTROL CIRCUIT FOR INTELLIGENT DIGITAL AUDIOVISUAL REPRODUCTION SYSTEM |
FR2781591B1 (en) | 1998-07-22 | 2000-09-22 | Technical Maintenance Corp | AUDIOVISUAL REPRODUCTION SYSTEM |
US8028318B2 (en) | 1999-07-21 | 2011-09-27 | Touchtunes Music Corporation | Remote control unit for activating and deactivating means for payment and for displaying payment status |
SG80598A1 (en) * | 1998-08-14 | 2001-05-22 | Television Licensors Internat | Display system for multimedia data |
US6516341B2 (en) * | 1998-09-14 | 2003-02-04 | Juno Online Services, Inc. | Electronic mail system with advertising |
US6351750B1 (en) | 1998-10-16 | 2002-02-26 | Softbook Press, Inc. | Dynamic conversion of byte ordering for use on different processor platforms |
US6195667B1 (en) | 1998-10-16 | 2001-02-27 | Softbook Press, Inc. | On-line menu updating for an electronic book |
US6314474B1 (en) | 1998-10-16 | 2001-11-06 | Softbook Press, Inc. | Efficient information exchange between an electronic book and a cartridge |
US6363418B1 (en) | 1998-10-16 | 2002-03-26 | Softbook Press, Inc. | On-line image caching control for efficient image display |
US6275934B1 (en) | 1998-10-16 | 2001-08-14 | Soft Book Press, Inc. | Authentication for information exchange over a communication network |
NL1010389C2 (en) * | 1998-10-23 | 2000-04-26 | Koninkl Kpn Nv | System for distribution of audio or video files. |
US7313806B1 (en) | 1998-10-30 | 2007-12-25 | Intel Corporation | Method and apparatus for channel surfing through multiple sources based on user-definable preferences |
US7058597B1 (en) * | 1998-12-04 | 2006-06-06 | Digital River, Inc. | Apparatus and method for adaptive fraud screening for electronic commerce transactions |
US20030195974A1 (en) * | 1998-12-04 | 2003-10-16 | Ronning Joel A. | Apparatus and method for scheduling of search for updates or downloads of a file |
US7617124B1 (en) | 1998-12-04 | 2009-11-10 | Digital River, Inc. | Apparatus and method for secure downloading of files |
US6463447B2 (en) | 1998-12-16 | 2002-10-08 | Rstar Corporation | Optimizing bandwidth consumption for document distribution over a multicast enabled wide area network |
US6317141B1 (en) | 1998-12-31 | 2001-11-13 | Flashpoint Technology, Inc. | Method and apparatus for editing heterogeneous media objects in a digital imaging device |
US6567411B2 (en) | 1998-12-31 | 2003-05-20 | Qwest Communications International, Inc. | Method and apparatus for continuous narrowcast of individualized information over a data network |
EP1021059A1 (en) * | 1999-01-18 | 2000-07-19 | Siemens Aktiengesellschaft | Reservation procedure in digital transmission networks and digital switch |
US7904187B2 (en) | 1999-02-01 | 2011-03-08 | Hoffberg Steven M | Internet appliance system and method |
US6934255B1 (en) * | 1999-02-02 | 2005-08-23 | Packeteer, Inc. | Internet over satellite apparatus |
US7099848B1 (en) | 1999-02-16 | 2006-08-29 | Listen.Com, Inc. | Audio delivery and rendering method and apparatus |
US8726330B2 (en) * | 1999-02-22 | 2014-05-13 | Touchtunes Music Corporation | Intelligent digital audiovisual playback system |
USRE43690E1 (en) | 1999-03-22 | 2012-09-25 | Esdr Network Solutions Llc | Search engine request method, product, and apparatus |
US9141717B2 (en) * | 1999-03-22 | 2015-09-22 | Esdr Network Solutions Llc | Methods, systems, products, and devices for processing DNS friendly identifiers |
US8037168B2 (en) * | 1999-07-15 | 2011-10-11 | Esdr Network Solutions Llc | Method, product, and apparatus for enhancing resolution services, registration services, and search services |
US6338082B1 (en) | 1999-03-22 | 2002-01-08 | Eric Schneider | Method, product, and apparatus for requesting a network resource |
US7188138B1 (en) | 1999-03-22 | 2007-03-06 | Eric Schneider | Method, product, and apparatus for resource identifier registration and aftermarket services |
US6971119B1 (en) * | 1999-03-29 | 2005-11-29 | The Directv Group, Inc. | Method and apparatus for transmission, receipt, caching and display of one-way broadcast programming and data |
US6515681B1 (en) | 1999-05-11 | 2003-02-04 | Prophet Financial Systems, Inc. | User interface for interacting with online message board |
US7162471B1 (en) | 1999-05-11 | 2007-01-09 | Maquis Techtrix Llc | Content query system and method |
US6804675B1 (en) | 1999-05-11 | 2004-10-12 | Maquis Techtrix, Llc | Online content provider system and method |
US6493703B1 (en) | 1999-05-11 | 2002-12-10 | Prophet Financial Systems | System and method for implementing intelligent online community message board |
US6571234B1 (en) | 1999-05-11 | 2003-05-27 | Prophet Financial Systems, Inc. | System and method for managing online message board |
DE69937548T2 (en) * | 1999-06-08 | 2008-03-06 | Sony Deutschland Gmbh | Method and system for distributing information |
WO2000079714A1 (en) * | 1999-06-18 | 2000-12-28 | Richard Zogheb | System for providing entertainment and educational services on demand to subscribers |
US6404441B1 (en) * | 1999-07-16 | 2002-06-11 | Jet Software, Inc. | System for creating media presentations of computer software application programs |
FR2796482B1 (en) | 1999-07-16 | 2002-09-06 | Touchtunes Music Corp | REMOTE MANAGEMENT SYSTEM FOR AT LEAST ONE AUDIOVISUAL INFORMATION REPRODUCING DEVICE |
US20020023123A1 (en) * | 1999-07-26 | 2002-02-21 | Justin P. Madison | Geographic data locator |
US7219073B1 (en) * | 1999-08-03 | 2007-05-15 | Brandnamestores.Com | Method for extracting information utilizing a user-context-based search engine |
US7013300B1 (en) | 1999-08-03 | 2006-03-14 | Taylor David C | Locating, filtering, matching macro-context from indexed database for searching context where micro-context relevant to textual input by user |
USRE44207E1 (en) | 1999-09-01 | 2013-05-07 | Esdr Network Solutions Llc | Network resource access method, product, and apparatus |
US6857106B1 (en) | 1999-09-15 | 2005-02-15 | Listen.Com, Inc. | Graphical user interface with moveable, mergeable elements |
US6523120B1 (en) | 1999-10-29 | 2003-02-18 | Rstar Corporation | Level-based network access restriction |
US6397264B1 (en) | 1999-11-01 | 2002-05-28 | Rstar Corporation | Multi-browser client architecture for managing multiple applications having a history list |
IL149356A0 (en) | 1999-11-03 | 2002-11-10 | Wayport Inc | Distributed network communication system which enables multiple network providers to use a common distributed network infrastructure |
US6961430B1 (en) | 1999-11-10 | 2005-11-01 | The Directv Group, Inc. | Method and apparatus for background caching of encrypted programming data for later playback |
JP4065381B2 (en) | 1999-11-10 | 2008-03-26 | ヤフー! インコーポレイテッド | Internet radio and broadcast method |
US7454509B2 (en) * | 1999-11-10 | 2008-11-18 | Yahoo! Inc. | Online playback system with community bias |
AU3322400A (en) * | 1999-12-02 | 2001-06-12 | Valagam Rajagopal Raghunathan | A method and system for communication of data and information dynamically at anyplace and time |
KR100782255B1 (en) | 1999-12-08 | 2007-12-04 | 리슨.컴 .인크. | Scheduled retrieval, storage and access of media data |
JP2001202371A (en) * | 2000-01-19 | 2001-07-27 | Sony Corp | Data communication system and receiver to be used therefor |
US6389467B1 (en) | 2000-01-24 | 2002-05-14 | Friskit, Inc. | Streaming media search and continuous playback system of media resources located by multiple network addresses |
FR2805377B1 (en) | 2000-02-23 | 2003-09-12 | Touchtunes Music Corp | EARLY ORDERING PROCESS FOR A SELECTION, DIGITAL SYSTEM AND JUKE-BOX FOR IMPLEMENTING THE METHOD |
EP1256225B1 (en) * | 2000-02-04 | 2010-08-18 | Listen.Com, Inc. | System for distributed media network and meta data server |
FR2805060B1 (en) | 2000-02-16 | 2005-04-08 | Touchtunes Music Corp | METHOD FOR RECEIVING FILES DURING DOWNLOAD |
US20030018581A1 (en) * | 2000-02-16 | 2003-01-23 | Bratton Timothy R. | Delivering media data to portable computing devices |
FR2805072B1 (en) | 2000-02-16 | 2002-04-05 | Touchtunes Music Corp | METHOD FOR ADJUSTING THE SOUND VOLUME OF A DIGITAL SOUND RECORDING |
JP2001268026A (en) * | 2000-03-17 | 2001-09-28 | Hitachi Ltd | Information transmission/reception method and device therefor |
US7162482B1 (en) * | 2000-05-03 | 2007-01-09 | Musicmatch, Inc. | Information retrieval engine |
US7024485B2 (en) * | 2000-05-03 | 2006-04-04 | Yahoo! Inc. | System for controlling and enforcing playback restrictions for a media file by splitting the media file into usable and unusable portions for playback |
US7251665B1 (en) | 2000-05-03 | 2007-07-31 | Yahoo! Inc. | Determining a known character string equivalent to a query string |
US8352331B2 (en) | 2000-05-03 | 2013-01-08 | Yahoo! Inc. | Relationship discovery engine |
AU2001261232A1 (en) * | 2000-05-08 | 2001-11-20 | Walker Digital, Llc | Method and system for providing a link in an electronic file being presented to a user |
FR2808906B1 (en) | 2000-05-10 | 2005-02-11 | Touchtunes Music Corp | DEVICE AND METHOD FOR REMOTELY MANAGING A NETWORK OF AUDIOVISUAL INFORMATION REPRODUCTION SYSTEMS |
FR2809557B1 (en) * | 2000-05-25 | 2004-12-10 | Cit Alcatel | METHOD FOR BROADCASTING MULTIMEDIA INFORMATION ELEMENTS, RECEIVING MULTIMEDIA INFORMATION ELEMENTS BROADCASTED BY THIS METHOD, AND USER INTERFACE FOR CONSULTING THESE INFORMATION ELEMENTS |
FR2809569B1 (en) * | 2000-05-29 | 2005-04-08 | At Sky | SYSTEM FOR FILTERING DIGITAL DATA TRANSMISSIONS ACCORDING TO USER PROFILES |
FR2811175B1 (en) | 2000-06-29 | 2002-12-27 | Touchtunes Music Corp | AUDIOVISUAL INFORMATION DISTRIBUTION METHOD AND AUDIOVISUAL INFORMATION DISTRIBUTION SYSTEM |
FR2811114B1 (en) | 2000-06-29 | 2002-12-27 | Touchtunes Music Corp | DEVICE AND METHOD FOR COMMUNICATION BETWEEN A SYSTEM FOR REPRODUCING AUDIOVISUAL INFORMATION AND AN ELECTRONIC ENTERTAINMENT MACHINE |
US20020029384A1 (en) | 2000-07-20 | 2002-03-07 | Griggs Theodore L. | Mechanism for distributing content data |
US20020053081A1 (en) * | 2000-10-31 | 2002-05-02 | Digitaldeck, Inc. | Adaptable programming guide for networked devices |
US20060259926A1 (en) * | 2000-07-20 | 2006-11-16 | Digital Deck, Inc. | Adaptable programming guide for networked devices |
US8645856B1 (en) | 2000-08-04 | 2014-02-04 | Netzero, Inc. | Ticker for internet client |
US7548921B1 (en) * | 2000-08-29 | 2009-06-16 | The Directv Group, Inc. | Method and apparatus for transmitting files |
FR2813416B1 (en) * | 2000-08-31 | 2003-10-17 | Canon Kk | METHOD AND DEVICE FOR ADAPTING THE CONTENT OF DOCUMENTS ON AN INFORMATION SERVER |
WO2002019096A2 (en) * | 2000-08-31 | 2002-03-07 | Docubase | Reconfiguration and preservation of setup data |
US20020065927A1 (en) * | 2000-09-05 | 2002-05-30 | Janik Craig M. | Webpad and method for using the same |
FR2814085B1 (en) | 2000-09-15 | 2005-02-11 | Touchtunes Music Corp | ENTERTAINMENT METHOD BASED ON MULTIPLE CHOICE COMPETITION GAMES |
ATE297616T1 (en) * | 2000-10-09 | 2005-06-15 | Ses Astra Sa | SYSTEM FOR TRANSMITTING DATA TO MULTIPLE RECEIVER USING DIRECT TRANSMISSION VIA SATELLITE |
CA2425411A1 (en) * | 2000-10-09 | 2002-04-18 | Ses Astra S.A. | Internet broadcast system |
AU2002211570A1 (en) | 2000-10-11 | 2002-04-22 | United Video Properties, Inc. | Systems and methods for caching data in media-on-demand systems |
US7209899B2 (en) * | 2000-10-31 | 2007-04-24 | Fujitsu Limited | Management device, network apparatus, and management method |
US8271333B1 (en) | 2000-11-02 | 2012-09-18 | Yahoo! Inc. | Content-related wallpaper |
WO2002058393A1 (en) * | 2001-01-17 | 2002-07-25 | I-Request, Inc. | A method and system for supplementing television programming with e-mailed magazines |
US20030167465A1 (en) * | 2001-01-17 | 2003-09-04 | Davis T. Ron | Method and system for supplementing television programming with e-mailed magazines |
US7406529B2 (en) * | 2001-02-09 | 2008-07-29 | Yahoo! Inc. | System and method for detecting and verifying digitized content over a computer network |
US7437318B2 (en) * | 2001-03-30 | 2008-10-14 | Gemstar Ebook Group Limited | Systems and methods for electronic off-line catalog |
US7574513B2 (en) | 2001-04-30 | 2009-08-11 | Yahoo! Inc. | Controllable track-skipping |
DE60140902D1 (en) * | 2001-05-30 | 2010-02-04 | Opentv Inc | DEMANDED INTERACTIVE MAGAZINE |
US20020188956A1 (en) * | 2001-06-07 | 2002-12-12 | Michael Ficco | Method and system for electronic program guide temporal content organization |
US20040237106A1 (en) * | 2001-06-12 | 2004-11-25 | Sebastien Brule | System for filtering digital data transmissions in accordance with user profiles |
US7020893B2 (en) * | 2001-06-15 | 2006-03-28 | Intel Corporation | Method and apparatus for continuously and opportunistically driving an optimal broadcast schedule based on most recent client demand feedback from a distributed set of broadcast clients |
WO2003001769A2 (en) * | 2001-06-25 | 2003-01-03 | Siemens Aktiengesellschaft | Method for transmitting data |
US7908628B2 (en) | 2001-08-03 | 2011-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
US7793326B2 (en) | 2001-08-03 | 2010-09-07 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US7313617B2 (en) | 2001-09-28 | 2007-12-25 | Dale Malik | Methods and systems for a communications and information resource manager |
US6976073B2 (en) * | 2001-11-29 | 2005-12-13 | Hewlett-Packard Development Company, L.P. | Transparent remote data storage device and method |
US8332890B2 (en) | 2001-12-05 | 2012-12-11 | International Business Machines Corporation | Efficiently identifying television stations in a user friendly environment |
US7565402B2 (en) | 2002-01-05 | 2009-07-21 | Eric Schneider | Sitemap access method, product, and apparatus |
US8763066B2 (en) * | 2002-01-08 | 2014-06-24 | Tivo Inc. | Television signal data delivery system |
US6842807B2 (en) * | 2002-02-15 | 2005-01-11 | Intel Corporation | Method and apparatus for deprioritizing a high priority client |
RU2307472C2 (en) * | 2002-03-18 | 2007-09-27 | Конинклейке Филипс Электроникс Н.В. | Method for identification of changes in broadcasted database |
US7707221B1 (en) | 2002-04-03 | 2010-04-27 | Yahoo! Inc. | Associating and linking compact disc metadata |
US7162475B2 (en) | 2002-04-17 | 2007-01-09 | Ackerman David M | Method for user verification and authentication and multimedia processing for interactive database management and method for viewing the multimedia |
US7305483B2 (en) | 2002-04-25 | 2007-12-04 | Yahoo! Inc. | Method for the real-time distribution of streaming data on a network |
US7133486B2 (en) * | 2002-06-21 | 2006-11-07 | Thomson Licensing | Ever-increasing quality for stored video streaming in a mobile wireless interworking environment |
US7640565B2 (en) * | 2002-06-21 | 2009-12-29 | Thomson Licensing | Ever-decreasing network QOS requirements for stored video streaming in a mobile wireless interworking environment |
WO2004021709A1 (en) | 2002-08-29 | 2004-03-11 | Opentv, Inc. | Video-on-demand and targeted advertising |
US7343398B1 (en) | 2002-09-04 | 2008-03-11 | Packeteer, Inc. | Methods, apparatuses and systems for transparently intermediating network traffic over connection-based authentication protocols |
AU2003270371A1 (en) * | 2002-09-05 | 2004-03-29 | Thomson Licensing S.A. | Method and system for providing a cache guide |
US8151304B2 (en) | 2002-09-16 | 2012-04-03 | Touchtunes Music Corporation | Digital downloading jukebox system with user-tailored music management, communications, and other tools |
US10373420B2 (en) | 2002-09-16 | 2019-08-06 | Touchtunes Music Corporation | Digital downloading jukebox with enhanced communication features |
US7822687B2 (en) | 2002-09-16 | 2010-10-26 | Francois Brillon | Jukebox with customizable avatar |
US9646339B2 (en) * | 2002-09-16 | 2017-05-09 | Touchtunes Music Corporation | Digital downloading jukebox system with central and local music servers |
US8584175B2 (en) | 2002-09-16 | 2013-11-12 | Touchtunes Music Corporation | Digital downloading jukebox system with user-tailored music management, communications, and other tools |
US8103589B2 (en) | 2002-09-16 | 2012-01-24 | Touchtunes Music Corporation | Digital downloading jukebox system with central and local music servers |
US8332895B2 (en) | 2002-09-16 | 2012-12-11 | Touchtunes Music Corporation | Digital downloading jukebox system with user-tailored music management, communications, and other tools |
US11029823B2 (en) | 2002-09-16 | 2021-06-08 | Touchtunes Music Corporation | Jukebox with customizable avatar |
US7085755B2 (en) * | 2002-11-07 | 2006-08-01 | Thomson Global Resources Ag | Electronic document repository management and access system |
WO2004054143A1 (en) * | 2002-12-12 | 2004-06-24 | Oasis Silicon Systems Ag | Distribution system for satellite broadcasts |
DE10324122B4 (en) * | 2003-05-26 | 2007-08-30 | Smsc Europe Gmbh | Distribution system for satellite broadcasting |
US7263648B2 (en) * | 2003-01-24 | 2007-08-28 | Wegener Communications, Inc. | Apparatus and method for accommodating loss of signal |
US20100017627A1 (en) | 2003-02-07 | 2010-01-21 | Broadon Communications Corp. | Ensuring authenticity in a closed content distribution system |
US20040267384A1 (en) * | 2003-02-07 | 2004-12-30 | Broadon Communications, Inc. | Integrated console and controller |
US7322042B2 (en) | 2003-02-07 | 2008-01-22 | Broadon Communications Corp. | Secure and backward-compatible processor and secure software execution thereon |
US7779482B1 (en) | 2003-02-07 | 2010-08-17 | iGware Inc | Delivery of license information using a short messaging system protocol in a closed content distribution system |
US8131649B2 (en) * | 2003-02-07 | 2012-03-06 | Igware, Inc. | Static-or-dynamic and limited-or-unlimited content rights |
US7032235B2 (en) | 2003-03-12 | 2006-04-18 | Wegener Communications, Inc. | Recasting DVB video system to recast digital broadcasts |
JP4337375B2 (en) * | 2003-03-14 | 2009-09-30 | 株式会社デンソー | Information distribution server, receiving terminal, information distribution system, reservation terminal, and reservation server |
US7171606B2 (en) * | 2003-03-25 | 2007-01-30 | Wegener Communications, Inc. | Software download control system, apparatus and method |
US20040218047A1 (en) * | 2003-04-29 | 2004-11-04 | Falcon Management Inc. | Entertainment kiosk |
US7296204B2 (en) * | 2003-05-30 | 2007-11-13 | Wegener Communications, Inc. | Error correction apparatus and method |
US20040255327A1 (en) * | 2003-06-12 | 2004-12-16 | Digital Deck, Inc. | Media content distribution system and method |
US7206411B2 (en) | 2003-06-25 | 2007-04-17 | Wegener Communications, Inc. | Rapid decryption of data by key synchronization and indexing |
US7132953B2 (en) * | 2003-06-26 | 2006-11-07 | Lear Corporation | Spring sensor assembly for a vehicle seat cushion |
US7412536B2 (en) * | 2003-06-27 | 2008-08-12 | Intel Corporation | Method and system for a network node for attachment to switch fabrics |
US7779345B2 (en) * | 2003-07-30 | 2010-08-17 | Aol Inc. | Reverse mapping method and apparatus for form filling |
JP4624354B2 (en) * | 2003-09-10 | 2011-02-02 | ミュージックマッチ インコーポレイテッド | Music purchasing and playback system and method |
US7774499B1 (en) | 2003-10-30 | 2010-08-10 | United Online, Inc. | Accelerating network communications |
US7860804B2 (en) * | 2003-12-17 | 2010-12-28 | At&T Intellectual Property, I, L.P. | Methods, systems and storage medium for providing content notification based on user communities |
US20050149619A1 (en) * | 2003-12-22 | 2005-07-07 | Cowan Keith O. | Methods, systems and storage medium for distributing content based on user communities |
US8036907B2 (en) * | 2003-12-23 | 2011-10-11 | The Dun & Bradstreet Corporation | Method and system for linking business entities using unique identifiers |
US7289996B2 (en) * | 2004-09-09 | 2007-10-30 | International Business Machines Corporation | Data transmission management |
US8050512B2 (en) * | 2004-11-16 | 2011-11-01 | Sharp Laboratories Of America, Inc. | High dynamic range images from low dynamic range images |
US20060117355A1 (en) * | 2004-11-29 | 2006-06-01 | Vincent Dureau | Pushing content in a two-way network |
US8027876B2 (en) * | 2005-08-08 | 2011-09-27 | Yoogli, Inc. | Online advertising valuation apparatus and method |
US8429167B2 (en) * | 2005-08-08 | 2013-04-23 | Google Inc. | User-context-based search engine |
US7908244B2 (en) * | 2005-08-31 | 2011-03-15 | Ascent Media Group, Llc | Localized media content management |
US20070255659A1 (en) * | 2006-05-01 | 2007-11-01 | Wei Yen | System and method for DRM translation |
WO2007130554A2 (en) | 2006-05-02 | 2007-11-15 | Broadon Communications Corp. | Content management system and method |
US9224145B1 (en) | 2006-08-30 | 2015-12-29 | Qurio Holdings, Inc. | Venue based digital rights using capture device with digital watermarking capability |
US7624276B2 (en) * | 2006-10-16 | 2009-11-24 | Broadon Communications Corp. | Secure device authentication system and method |
US7613915B2 (en) * | 2006-11-09 | 2009-11-03 | BroadOn Communications Corp | Method for programming on-chip non-volatile memory in a secure processor, and a device so programmed |
US8326997B2 (en) | 2006-11-15 | 2012-12-04 | Opentv, Inc. | Data retrieval in a two-way network |
US8200961B2 (en) * | 2006-11-19 | 2012-06-12 | Igware, Inc. | Securing a flash memory block in a secure device system and method |
US9330529B2 (en) | 2007-01-17 | 2016-05-03 | Touchtunes Music Corporation | Game terminal configured for interaction with jukebox device systems including same, and/or associated methods |
US9171419B2 (en) | 2007-01-17 | 2015-10-27 | Touchtunes Music Corporation | Coin operated entertainment system |
US9953481B2 (en) | 2007-03-26 | 2018-04-24 | Touchtunes Music Corporation | Jukebox with associated video server |
US10290006B2 (en) | 2008-08-15 | 2019-05-14 | Touchtunes Music Corporation | Digital signage and gaming services to comply with federal and state alcohol and beverage laws and regulations |
US8332887B2 (en) | 2008-01-10 | 2012-12-11 | Touchtunes Music Corporation | System and/or methods for distributing advertisements from a central advertisement network to a peripheral device via a local advertisement server |
EP3349439A1 (en) * | 2008-01-04 | 2018-07-18 | Rovi Guides, Inc. | Systems and methods for selecting media assets for display in a screen of an interactive media guidance application |
US8600341B2 (en) | 2008-03-14 | 2013-12-03 | William J. Johnson | System and method for location based exchanges of data facilitating distributed locational applications |
US8761751B2 (en) | 2008-03-14 | 2014-06-24 | William J. Johnson | System and method for targeting data processing system(s) with data |
US9014658B2 (en) | 2008-03-14 | 2015-04-21 | William J. Johnson | System and method for application context location based configuration suggestions |
US8566839B2 (en) | 2008-03-14 | 2013-10-22 | William J. Johnson | System and method for automated content presentation objects |
US8634796B2 (en) | 2008-03-14 | 2014-01-21 | William J. Johnson | System and method for location based exchanges of data facilitating distributed location applications |
US8639267B2 (en) | 2008-03-14 | 2014-01-28 | William J. Johnson | System and method for location based exchanges of data facilitating distributed locational applications |
US8214839B1 (en) * | 2008-03-31 | 2012-07-03 | Symantec Corporation | Streaming distribution of file data based on predicted need |
US8849435B2 (en) | 2008-07-09 | 2014-09-30 | Touchtunes Music Corporation | Digital downloading jukebox with revenue-enhancing features |
US10564804B2 (en) | 2009-03-18 | 2020-02-18 | Touchtunes Music Corporation | Digital jukebox device with improved user interfaces, and associated methods |
US10719149B2 (en) | 2009-03-18 | 2020-07-21 | Touchtunes Music Corporation | Digital jukebox device with improved user interfaces, and associated methods |
CN102449658A (en) | 2009-03-18 | 2012-05-09 | 踏途音乐公司 | Entertainment server and associated social networking services |
US9292166B2 (en) | 2009-03-18 | 2016-03-22 | Touchtunes Music Corporation | Digital jukebox device with improved karaoke-related user interfaces, and associated methods |
CA3034363C (en) | 2010-01-26 | 2021-04-06 | Touchtunes Music Corporation | Digital jukebox device with improved user interfaces, and associated methods |
US8775245B2 (en) | 2010-02-11 | 2014-07-08 | News America Marketing Properties, Llc | Secure coupon distribution |
CA2970057C (en) | 2011-09-18 | 2023-08-01 | Touchtunes Music Corporation | Digital jukebox device with karaoke and/or photo booth features, and associated methods |
US11151224B2 (en) | 2012-01-09 | 2021-10-19 | Touchtunes Music Corporation | Systems and/or methods for monitoring audio inputs to jukebox devices |
CA2879180A1 (en) | 2012-03-07 | 2013-09-12 | Snap Trends, Inc. | Methods and systems of aggregating information of social networks based on geographical locations via a network |
US8627097B2 (en) | 2012-03-27 | 2014-01-07 | Igt | System and method enabling parallel processing of hash functions using authentication checkpoint hashes |
US9846906B1 (en) | 2013-02-28 | 2017-12-19 | Jpmorgan Chase Bank, N.A. | Digital bank branch |
US9477991B2 (en) | 2013-08-27 | 2016-10-25 | Snap Trends, Inc. | Methods and systems of aggregating information of geographic context regions of social networks based on geographical locations via a network |
US9894489B2 (en) | 2013-09-30 | 2018-02-13 | William J. Johnson | System and method for situational proximity observation alerting privileged recipients |
WO2015070070A1 (en) | 2013-11-07 | 2015-05-14 | Touchtunes Music Corporation | Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices |
KR102378718B1 (en) | 2014-03-25 | 2022-03-24 | 터치튠즈 뮤직 코포레이션 | Digital jukebox device with improved user interfaces, and associated methods |
GB2551323B (en) * | 2016-06-08 | 2021-02-10 | Companion Ltd | System providing a shared environment |
US20210112456A1 (en) * | 2020-12-22 | 2021-04-15 | Satish Chandra Jha | Always-on mobility-as-a-service connectivity |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4814979A (en) * | 1981-04-01 | 1989-03-21 | Teradata Corporation | Network to transmit prioritized subtask pockets to dedicated processors |
US4429385A (en) * | 1981-12-31 | 1984-01-31 | American Newspaper Publishers Association | Method and apparatus for digital serial scanning with hierarchical and relational access |
JPS60130282A (en) * | 1983-12-16 | 1985-07-11 | Pioneer Electronic Corp | Data transmission system of catv |
US4868866A (en) * | 1984-12-28 | 1989-09-19 | Mcgraw-Hill Inc. | Broadcast data distribution system |
US4706121B1 (en) * | 1985-07-12 | 1993-12-14 | Insight Telecast, Inc. | Tv schedule system and process |
US5193189A (en) * | 1987-10-07 | 1993-03-09 | Allen-Bradley Company, Inc. | Programmable controller with multiple priority level task processing |
US4897782A (en) * | 1987-10-19 | 1990-01-30 | International Business Machines Corporation | Local cache structure for maintaining updated file characteristics in a file sharing system |
JP2769709B2 (en) * | 1988-07-22 | 1998-06-25 | ブッシュ,トーマス,エイ. | Paid entertainment appreciation system |
US4994926C1 (en) * | 1988-09-22 | 2001-07-03 | Audiofax Ip L L C | Facsimile telecommunications system and method |
US5321750A (en) * | 1989-02-07 | 1994-06-14 | Market Data Corporation | Restricted information distribution system apparatus and methods |
US5220501A (en) * | 1989-12-08 | 1993-06-15 | Online Resources, Ltd. | Method and system for remote delivery of retail banking services |
US5220420A (en) * | 1990-09-28 | 1993-06-15 | Inteletext Systems, Inc. | Interactive home information system for distributing compressed television programming |
US5172413A (en) * | 1990-12-20 | 1992-12-15 | Sasktel | Secure hierarchial video delivery system and method |
US5164938A (en) * | 1991-03-28 | 1992-11-17 | Sprint International Communications Corp. | Bandwidth seizing in integrated services networks |
-
1991
- 1991-11-01 US US07/786,453 patent/US5404505A/en not_active Expired - Lifetime
-
1992
- 1992-10-27 EP EP92922971A patent/EP0610367A4/en not_active Withdrawn
- 1992-10-27 AU AU29090/92A patent/AU654885B2/en not_active Ceased
- 1992-10-27 WO PCT/US1992/009087 patent/WO1993009631A1/en not_active Application Discontinuation
- 1992-10-27 CA CA002121592A patent/CA2121592C/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5404505A (en) | 1995-04-04 |
AU654885B2 (en) | 1994-11-24 |
CA2121592A1 (en) | 1993-05-13 |
EP0610367A1 (en) | 1994-08-17 |
EP0610367A4 (en) | 1995-04-19 |
WO1993009631A1 (en) | 1993-05-13 |
AU2909092A (en) | 1993-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2121592C (en) | Information broadcasting system and method | |
US6002720A (en) | Audio and video transmission and receiving system | |
US7818773B2 (en) | Audio and video transmission and receiving system | |
US5956716A (en) | System and method for delivery of video data over a computer network | |
EP1359759A1 (en) | Audio and video transmission and receiving system | |
US20020143976A1 (en) | Method and system for managing and updating metadata associated with digital assets | |
KR20000016951A (en) | An apparatus for controlling and distribution copy right and receiver system | |
WO2004054204A2 (en) | Optimized delivery of multimedia content | |
US7840644B2 (en) | Information distribution system, information receiving apparatus, information list forming method, information deleting method, and information storing method | |
US20020199197A1 (en) | System for exchanging data | |
EP1175776B2 (en) | Video on demand system | |
EP1367828B1 (en) | Method and System for recording and playing back audiovisual information | |
JPH0638210A (en) | Serving system for membership av software or the like | |
KR20020054317A (en) | Video and music distribution systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |