MXPA99010973A - System and method for multicasting multimedia content - Google Patents

System and method for multicasting multimedia content

Info

Publication number
MXPA99010973A
MXPA99010973A MXPA/A/1999/010973A MX9910973A MXPA99010973A MX PA99010973 A MXPA99010973 A MX PA99010973A MX 9910973 A MX9910973 A MX 9910973A MX PA99010973 A MXPA99010973 A MX PA99010973A
Authority
MX
Mexico
Prior art keywords
url
channel
content
receiver
units
Prior art date
Application number
MXPA/A/1999/010973A
Other languages
Spanish (es)
Inventor
M Dillon Douglas
Original Assignee
Hughes Electronics Corporation
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hughes Electronics Corporation filed Critical Hughes Electronics Corporation
Publication of MXPA99010973A publication Critical patent/MXPA99010973A/en

Links

Abstract

Un sistema de red de multidifusión selectiva utiliza un enlace de velocidad elevada, tal como un enlace por satélite, para multidifundir información multimedia desde la Internet hacia una pluralidad de receptores, tales como computadoras personales. La información de sitios Web seleccionados se organiza en"canales"y se proporciona a una red de multidifusión selectiva para su transmisión por multidifusión selectiva a los receptores. La información de canal actualizada también se proporciona periódicamente. Los receptores almacenan el canal recibido, de tal manera que un usuario puede accesar al contenido de la página Web en el canal a la velocidad del disco duro. Preferentemente, un sistema de acceso condicional asegura que solamente receptores autorizados reciben los canales. La presente invención también incluye preferentemente una conexión de dos vías de velocidad inferior a la Internet (tal como módem de marcación) que se utiliza para reportar información de uso y/o información de suscripción de regreso a los sitios Web. La presente invención también proporciona acceso automático o"sin suturas"a esta conexión para permitir al usuario recuperar cualquier información que no se ha recibido y almacenado. El receptor también gestiona el uso del espacio en la memoria y otras aplicaciones que pueden encontrarse activas en el receptor para asegurar que la recepción y procesamiento de la información de multidifusión selectiva no interfiere con la operación del receptor.

Description

SYSTEM AND METHOD FOR MULTIMEDIA SELECTIVE MULTI-DIFFUSION OF CONTENT BACKGROUND OF THE INVENTION Field of the Invention The present invention relates in general to the distribution of multimedia content in a selective multidiffusion network environment and, more particularly to a system of selective multicasting network that has a high-speed selective multicast communication channel for muting information to one or more receivers, and that also has a return channel, which can operate at a lower speed, to allow that the receptors interact with the network. BACKGROUND OF THE MATTER The most popular method for distributing multimedia information is the World Wide Web of the Internet (WWW). Referring to Figure 1, WWW can be considered as a set of information resources accessible by network, where many Web servers 10 and Web 12 viewers connect to Internet 14 through TCP / IP protocols. (These protocols are described in the book "Iaternet orJing with TCP / IP, Vol. I" by Douglas Corner, published by Prent ice-Hall in 1991, which is incorporated herein by reference). Web 12 viewers typically reside on personal computers (PCs) 16 that connect to the Internet. The connection between the PCs 16 and the Internet 14 is often a low speed connection, such as a dial-up modem dial-up connection. The Web servers 10 also connect to the Internet, typically by high-speed dedicated circuits, such as an IT connection of 1.5 Mbps. A PC user uses the display 12 to access the Web sites 18 (which contain Web pages, graphics and other multimedia content) from the servers 10 through the Internet 14 through the use of Hypertext Transfer Protocol (HTTP) . This "conventional" method for retrieving information from the World Wide Web requires a separate TCP connection each time a user accesses a Web site, even if the user repeatedly accesses the same Web site. The World Wide Web was founded on three basic ideas: (1) a global resource appointment scheme - Uniform Resource Locators (URLs); (2) protocols for accessing named resources - the most common is HTTP; and (3) hypertext - the ability to incorporate links into other resources, which is typically done according to the Hypertext Markup Language (HTML). Each Web site 18 contains a collection of Web pages operated by a single company that appears before the user of a Web viewer 12 as a single set of related content. Web pages within a Web site 18 are formatted according to the Hypertext Markup Language (HTML) standard. Standard HTML provides the deployment of high-quality text, including control over the location, size and font of the text and display of graphics within the Web page. Standard HTML also provides the "link" from one Web page to another, including the link between Web pages stored on different Web servers and even different Web sites. Each HTML document, graphic image, video cut or other individual piece of content is identified by an Internet address, referred to as a Uniform Resource Locator (URL). As used herein, "URL" refers to an address of an individual piece of Web content (HTML document, image, sound cut, video cut, etc.) and "URL unit" refers to the piece individual content directed by the URL. Although it is very popular, the conventional dialing method described above for accessing multimedia information is limited in at least two very important ways. First, most PC users access the Internet through the use of dial-up modems through an ordinary telephone line. These lines operate at a relatively slow speed 8 for example, 28.8 or 56 kbps) so the deployment of an ordinary Web page (for example, 150 kbytes) takes a long time (for example, 50 seconds) and the deployment of even short video cuts (such as a movie log) it takes much more time (for example, half an hour). Also, a user's telephone line is not available for normal voice calls all the time they are accessing the Internet. Secondly, the conventional method uses point-to-point transfer, where each Web site 18 must supply its content individually to each Web browser 12. Therefore, a single Web page of 150 kbytes must be aligned in a individual from the Web server through the Internet to each viewer that displays that page. If a popular Web server supplies ten reasonably large pages (for a total of 1.5 MB) to each of the 10,000 users during a busy hour, the Web server would require a link from a bandwidth of at least 33 Mbps to the Internet. The link to the Internet and a Web server fast enough to fill the link, are currently expensive and complicated to a prohibited degree. Support for a million or more users during the peak time would be completely impossible with current Internet technology. The World Wide Web currently supports two methods (advertisements and subscriptions) for a website operator to obtain revenue from content on their sites. The ads are inserted into a Web page Web site, typically in the form of images, where a user can "link" to the advertiser's website for more information by clicking on the image. Web-based advertising is superior to normal selective advertising (for example, TV, radio and newspaper ads) since the Web server 10 is able to track exactly how many users have seen a given advertisement and, for Repeater users, track by user which ads and how many of these ads the user has seen. If a website generates income through subscriptions, the user is only able to access the content of that website if he has "subscribed" to the site, that is, agrees to pay access to the site. By requiring the user to provide an account number and an access key each time the user wishes to access the site, a website controls the access so that only paying subscribers can access the site. Selective multicast systems are capable of accommodating large numbers of users much more easily than the Internet when users access a common content, because the given unit is multicast (that is, it is sent only once) without taking Count the number of receivers. The selective multicast networks that distribute multimedia content have been used in recent years over wide-area networks, such as a transmission by selective multicast transmission of geosynchronous satellite or by FM radio lateral band. Several selective multimedia multicast systems have been proposed in the academy that involve the individual selective mui idifusion of frequently accessed URLs, which have been identified by allowing the recipient to filter and store only those Web pages that, based on their history last, they may be of interest to the recipient. These systems have failed to show commercially because they copy and use the content without permission, thus creating a possible conflict with copyright laws. In addition, they do not guarantee the user a set of consistent content that can be accessed "offline" (that is, not while connected to the Internet) and do not provide a mechanism to preserve the subscription to a website or advertising revenue. A commercially displayed multimedia selective multicasting system is the AirMedia Internet Antenna system, Inc., which uses selective side-band multicasting via FM radio to distribute news and information (with limited graphics). A computer terminal receives the selective multicast information and stores it on the computer's hard drive. The information is multicast in a patented format and made available to the user through a special purpose application. The AirMedia system suffers from a lack of compulsion content, in part because of its very low speed FM sideband selective transmission systems (eg, 19 kbps). Another such system is Intel's Intercast system, which uses the vertical extinction interval within a selective NTSC muI t idiot to merge information in order to "improve the data" of the TV channel on which they behave. The vertical extinction range, which is normally used to carry closed-caption information, is also a low speed selective multicasting (for example, 30 kbps). Unlike the Air Media system, Intercast multicasts its data in a standard HTML format. Intercast provides a user application similar to a Web viewer, which, together with special hardware, allows the user to watch the TV program on a computer monitor while simultaneously accessing the complementary multimedia HTML data. The basic problem with such selective multicast systems is the availability of good content for transmission in selective multicasting. Content providers will only specifically prepare their content for a selective mutation system after a considerable number of users already exist to receive such content or when the operator of the selective mutation system is willing to pay large amounts of money. . However, a selective multicast system operator typically can not obtain a large number of users until the system has good content and can not obtain financing to pay for good content until a large number of users have subscribed to it. system. This problem of "the chicken and the egg" of good content / number of users has long plagued the development of selective multimedial multimedia systems.
In many cases, a new selective multicasting system is initiated through the recycling of pre-existing content. Television, for example, overcomes the problem of "the chicken and the egg" by recycling the content originally developed for another medium. The radio programs became both to be watched (on TV) and to listen to each other, often retaining the actors, characters, plots and even many of the pre-existing, original dialogues. Films, plays, operas and other existing material were also broadcast on television. Once television established the use of this pre-existing content and achieved a significant mass of users, television broadcasters were able to afford to develop new content aimed exclusively at television (ie, ÍE5IES 'miniseries, nightly news, night panels, infomercials, etc.). Another important obstacle to the successful deployment of selective mutation systems has been the impact of the processing (reception, filtering, storage, etc.) of selective mute data on the receiving computer. Previous selective multicasting systems had failed because the reception of selective multicasting data negatively impacted the performance of the receiving computers, so that users often do not allow the application of selective selective multicasting in order to execute other Applications. Frequently, users forgot to restore the selective multicast receiver application, thus causing a complete loss of functionality. Computer games are a classic example of an application that uses all the resources of a computer and therefore negatively impacts the reception and processing of selective mutation data. In addition, personal computer operating systems generally do not provide an optimal pool of resources among competing real-time applications. In this way, the user of a typical personal computer will not tolerate loss of performance (such as video and "unstable" graphics and / or unanswered control of the game) for reasons of receiving multimedia content from selective multicasting. In some selective multicast systems, such as Air Media, the impact on the receiving computer was negligible due to the low speed of the selective multicast link. However, a high speed selective multicast link is very desirable since it increases the amount and quality of content available to the user. Therefore, the need remains for a high speed selective multicasting system that is compatible with the existing content and does not interfere with other processing carried out by the receiving computer. SUMMARY OF THE INVENTION Prior to the present invention, no multimedia selective multicasting system was able to solve the "chicken-and-egg" problem in terms of number of users / good content faced by the new multi-media systems. selective The present invention overcomes this problem by providing access to high quality content, without modifications, from existing Web sites, in a manner that does not require changes in the operation of Web sites and that also preserves advertising and subscription subscriptions. the websites. The present invention also utilizes a high speed link (such as a satellite link) to provide a large amount of content and includes several innovative mechanisms for receiving such content from such a link at high speed with minimal impact on the operation of other links. applications within the receiving computer. The present invention is referred to herein as "DirecPC® WebCast" or "WebCast". (DirecPC® is a registered trademark of Hughes Network Systems.) The basic DirecPC® system, which generally provides a one-way high-speed link to receive information from the Internet but does not use a selective network of selective merging, is described in the co-pending series nos application. 08 / 257,670 (filed on June 8, 1994) and 08 / 795,505 (filed on February 7, 1997), which is assigned to the same assignee as the present invention). In general, WebCast comprises a selective multicast network that multicast selected website content (called "channels") on the hard disk of a receiving computer, making that content available to the user at "hard disk" speed. As stated in detail below, a channel is a set of Web content, which a user may be interested in repeatedly accessing. Preferably, the Web content within the channel is periodically updated. WebCast reports enough usage information to the website (that is, what content has been accessed by the user) to support revenue based on advertising, without requiring changes in the operation of the website. The present invention also supports Web sites with revenue based on subscription. Each receiving computer receives an Electronic Program Guide (EPG), which supports the promotion and subscription to the available website channels. The EPG provides functionality beyond what is carried out by the static Web pages, as it allows easy access to the channels to which a user has subscribed and provides promotional material from all other available WebCast channels. Such promotional material is accessed from the hidden content of the EPG until the user subscribes or not to the channel. At this point, the WebCast software contacts a conditional access system in the selective selective merging network and takes a transaction to initiate or terminate the subscription.
The conditional access system optionally provides subscription information to the billing system of the selective multicast system for the subsequent WebCast user bill and / or report to the channel's website. Within the receiving computer, WebCast configures a Web viewer to display the channel content of the stored (or "hidden") Web site. When started, a content viewer on the receiving computer configures the Web viewer to access the hidden content through an HTTP proxy server within the WebCast content viewer. A "lack of cache memory" occurs when the viewer requests a URL that is not stored in the selective multicast data cache. When a lack of cache memory occurs. The WebCast software notifies the user and offers the user the option of accessing the content through normal Internet access (ie, dialing). If the user so chooses, the WebCast application establishes a connection to the Internet (if necessary) and advances the content requests to the Web server on the Internet that contains the missing content. Preferably, this Internet connection is "without sutures", since it does not require any action from the user, but is automatically established by the WebCast software. From time to time, WebCast also establishes a connection to the Internet to send usage information to the appropriate Web sites. According to one aspect of the present invention, a system and method that transmits organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, comprises the allocation of one or more addresses of selective hyphenation to each channel, the programming of the assembly of the content of a channel, the assembly of the content of the channel, the fragmentation of the contents of the channel into packets, where each packet is addressed with one of the addresses selective channel selection, and the selective transfer of the packets. According to another aspect of the present invention, a system and method that transmits organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, comprises the programming of the URL. assembly of the content of a channel, the assembly of the content of the channel, the compression of a subset of the units of URL, where each unit of URL is individually compressed independently of the other units of URL, in such a way that each unit The compressed URL can be decompressed without decompressing other URL units, the fragmentation of the content of the channel into packets and the selective multicasting of the packets. The present invention can also assemble a base set of channel content, wherein the base set contains each URL unit in the channel, and assemble a delta set of channel content, where the delta set contains URL units that have changed or they are new from the previous assembly of the base assembly. According to still another aspect of the present invention, a system and method that transmits organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, comprises the programming of the assembly of the content of a channel, the assembly of content of the channel according to the programming, the fragmentation of the content of the channel into packets, the selective multicasting of packets to a plurality of receivers, wherein each receiver stores the content of the channel received in a receiving memory, and the reception of use reports from each recipient, wherein each use report identifies a subset of URL units from the stored URL units that were accessed from the receiving memory. According to yet another aspect of the present invention, a receiver for receiving content organized in channels coming from a selective multicast network, where the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, and where the network of Selective transmission transmits the contents of the channel to the receiver in packets, determines a selective multicast address used to carry packets of a channel, allows the reception of packets containing the selective multicast address of a channel, receives the packets that they contain the selective multicast address of a channel, assemble the received packets into the content of a channel, store the content of the channel and allow a user to access the content of the stored channel. The receiver can also individually decompress each URL unit compressed into the content of the stored channel at the time the user accesses the URL unit. According to yet another aspect of the present invention, a receiver in a selective multicast system receives URL units from a selective multicast network, stores the received URL units, allows a user to access the URL units. stored and tracks user access to stored URL units. The receiver can further determine when a URL unit to which access is requested by the user is not present within the stored URL units, notify the user that the requested URL unit is not stored and allow the user to access the URL unit. the URL unit not stored through a connection (such as dial-up modem) to a TCP / IP network, such as the Internet. According to yet another aspect of the present invention, a receiver in a selective mu l t-tick fusion system monitors the activity of the receiver and selectively receives the content of a selective mu l t t-merge network, where the content is received in a selective on the basis of the monitoring activity monitored. The receiver can be - for example, a personal computer and the monitored activity can include other applications / programs running on the receiver, the use of the disk / memory and / or user inputs (key pressures or mouse oppressions) . The receiver may also suspend the reception of content depending on the conclusion of the activity monitored, in such a way that the reception does not interfere with the activity monitored. According to yet another aspect of the present invention, a receiver in a selective mu l t-merge system comprises a packet receiver for receiving packets containing URL units from a selective mu l-threading network and assembling the received packets in a channel, wherein the channel comprises a set of URL units, a memory for storing the channel and a content viewer to allow a user to request access and access the URL units in the stored channel. According to yet another aspect of the present invention, a system for muting id url units from Web sites to a plurality of receivers comprises a Web search engine for retrieving the URL units from the Web sites and format URL units retrieved in packets, a packet supply subsystem to receive packets from the Web search engine, fragment packets into packets and transmit packets to a selective multicast network, and an access system conditional to determine which receivers are authorized to receive the packets, wherein the selective multicast network multicast packets only to authorized receivers. According to still another aspect of the present invention, a system for multiplying organized content in channels towards a plurality of receivers, wherein the content of a channel includes a plurality of URL units from at least one Web site, comprises a Web search engine to retrieve URL units from the Web site through a TCP / IP network and format URL units retrieved in packets, a packet supply subsystem to receive packets from the Web search engine and fragment packets into packets, a conditional access system to determine which receivers are authorized to receive packets, and a selective multicast network to receive packets from the packet supply subsystem. The conditional access system encrypts the packets and the selective multicast network multicast the encrypted packets to the authorized receivers, where the authorized receivers store the packets in a memory and decrypt the packets. BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a simplified block diagram of a prior art method for accessing information from the Internet; Figure 2 is a block diagram of the selective multicasting system of the present invention; Figure 3 is a block diagram of the subsequent subsystem of the selective multicast system of Figure 2; Figure 4 is a block diagram of the process used by the Web search engine of Figure 3 to collect active website content; Figure 5 is a flow chart illustrating the steps carried out by the packet supply subsystem of the downstream subsystem of Figure 3; Figure 6 is an example window of an Electronic Program Guide (EPG) that can be used to notify a user of the maximum memory space required for a channel and the packet transmission schedule; Figure 7 is an example advantage of the Electronic Program Guide (EPG) that allows a user to preview the content of the available channels and allows the user to subscribe or not to the channels; Fig. 8 is a flowchart illustrating the steps carried out by the content viewer of the receiver of Fig. 2 when a "lack of cache memory" occurs; Figure 9 is an example of a dialog box generated by the content viewer to notify the user about a lack of cache memory and ask the user whether an Internet connection should be established; Figure 10 is a block diagram illustrating the use report function of the present invention; Figure 11 is a flow diagram illustrating the steps carried out by the content viewer of Figure 7 to report usage information; and Figure 12 is an example of a dialog box generated by the content viewer to request permission from a user to connect to the Internet in order to report usage information.
DETAILED DESCRIPTION Web Diffusion Channels The present invention organizes the URL units that it transmits to the "channels", where a channel is a set of URL units which a user may be interested in repeatedly accessing. Ordinarily, a channel is a subset of the content of a Web site (ie, a set of Web pages) that is periodically extracted from the Web site by a Web search engine and supplied to subscribing users by means of transfer of multimedia files. selective protected by conditional access. In this way, the content of a channel consists of a collection of URL units, typically all from a single Web site. Preferably, the content of a channel is periodically updated. A typical channel could contain, for example, the content of 3,000 different URL units. Examples could include any Web site, such as Error! Can not find the source of the reference, or Error! Can not find the source of the reference., A news website in general, such as Error! The source of the reference is not found., Or a financial news site, such as quicken.excite.com. A user subscribes to the webcasting channels of interest and in the receiving end of the user only subscribed channels are received and stored. The content of a channel and the programming of selective language are specified by a Web Broadcast channel definition. The channel definition of each channel is predetermined. However, Web Broadcasting can allow the definition of a channel to be altered. Each channel definition includes at least: (1) A list of Web branches, where each branch includes a start address (URL) and a search depth. Since each Web page can contain links to other pages, the search depth refers to the number of links that are about to be recovered and stored with the original page. In a preferred embodiment, the search depth is set at two "levels" of an original Web page. In this way, the channel will include the original Web page and all other pages that are two hypertext links (that is, two mouse clicks) of the original page. However, the search depth can be set to any number of levels as best suited to the website by being included in the channel. (2) A list of filter preferences that indicates which URLs should be included in or excluded from the channel. Another set of filters can also identify how the URL unit, if it is all, is about to be compressed before it is transmitted. Still another set of filters can define the attributes of the "correspondence tracking" to be assigned to each URL, as discussed below in detail. The web search engine is activated in each of the starting URLs and searches for all links that pass the filters for the specified search depth. (3) A schedule that specifies the frequency and manner in which the content of a channel is packaged and multicast by a selective network of selective merging to each user. System Components Referring to Figure 2, the Web Broadcast system 20 of the present invention consists of a subsequent subsystem 22 communicating with one or more selective multicast networks 24 (link C). The subsequent subsystem 22 is connected to a plurality of Web sites 18 (from which the content is collected) through an internal TCP / IP network, such as Internet 14 (links A, B). The selective multicast network 24 multicast the information retrieved from the Web sites 18 to a plurality of receivers 26 on a high speed link (F), such as a satellite or other high speed link (over 200 kbps) . Each receiver 26 may be, for example, a personal computer at the home or business of a user. Nevertheless, the receivers 26 may also comprise higher activation boxes, digital televisions or other devices capable of receiving Internet content. Each receiver 26 is also preferably connected to the Internet 14 via a low speed link (D), which may be, for example, a dial-up modem, ISDN, a two-way cable, or the like. In addition, the present invention could be implemented with other TCP / IP networks different from the Internet, such as intra-networks. The basic functions of the components of the Web Diffusion system are established below and the various trajectories of the data flow are illustrated in figure 2. However, it is understood that the functions described can displace the location between the components of the system depending on the configuration of a particular system. Subsequent Subsystem Functions Subsequent subsystem 22 (which generally comprises a computer or set of networked computers) performs at least the following functions: (1) Collecting UR.L units from Web sites 18 through of the Internet 14 or a network or intranet private TCP / IP (links A and B) and assemble them in sets. (2) Fragment the large sets (ie, mui ti -megabyt es) (which contain URL units of the Web sites 18) into an appropriate sequence of packets and pass the packets to the selective selective merging network 24 ( link C); (3) Optionally process usage reports from recipients 26 (D and A links) and provide back usage reports to Websites 18 (links A and B); (4) Optionally process subscription and non-channel subscription requests from recipients 26 (D and A links) and optionally forward such requests to Websites 18 (links A and B); and (5) Optionally carry out conditional access for webcasting channels. The conditional access is normally carried out by a conditional access system 25 in the selective transmission network 24, but can be implemented by the subsequent subsystem 22 if the selective multicasting network does not include a conditional access system or if it is not The use of the conditional access system of the selective multicast network is desirable. Network Functions of the Selective Fusion Network: The Selective Fusion Network 24 performs at least the following functions: (1) Receive packets from the subsequent subsystem 22 (C link) and optionally multiplex the packets with data (such as digital video, audio voice, etc.) from any (any) other broadcast source (s) 27 (link E); (2) Multiplying packets to receivers 26 over the high-speed link (link F); (3) Optionally carry out the conditional access through the conditional access system 25 to ensure that only the subscribing receivers can receive the sets of a channel; (4) Optionally providing a return path from the receivers 26 to the subsequent subsystem 22 to allow usage reporting; (5) Optional processing of subscription requests and non-subscription of the channel, from the recipients 26; and (6) Optionally provide Internet access to allow a receiver to access cache memory leaks.
Functions of the Receiver: (1) Interact with the selective multicast network 24 to allow reception of the appropriate addresses; (2) Process the packets received from the selective multicast network 24 (link F); (3) Reassemble the Web Broadcast channel sets of the received packets and store each one as a file in a memory (for example, hard disk) 28; (4) Managing memory space 28 and managing the use of receiver resources to minimize the impact on other applications running on the receiver when receiving and processing sets of selective language; (5) Provide the user with promotional material (that is, through the EGP) to help the user determine which webcasting channels to subscribe to; (6) Provide the selective multicast network 24 (or optionally to the subsequent subsystem 22) subscription or non-subscription requests; (7) Report usage information to the subsequent subsystem 22 through the selective multicast network; (8) Optional decrypt the received sets when the selective multicast network does not provide conditional access but conditional access is desired; and (9) Interact with the subsequent subsystem 22 to obtain conditional access key material if the subsequent subsystem (instead of the selective multicast network) performs conditional access. Components of the Subsequent Subsystem Referring to Figure 3, the subsequent subsystem 22 includes two subsequent components: (1) one or more Web search engines; and (2) an assembly supply subsystem 36. Generally, each Web search engine 30 is a computer that accesses the channels of the Web sites 18 according to predetermined channel definitions 32. The Web Search Engine 30 It is similar to commercially available Web search engines, such as TelePort Pro and WebWacker. The basic difference with commercial Web search engines is that commercial Web search engines store each unit of URL as a file on disk and the web search engine DirecPC of Broadcast _ on Web 30 formats the URL units in sets (see below). As explained in detail below, the web search engine 30 collects the URL unit from the web sites 18. The URL unit is collected from the list of URLs in the channel definition and other URLs that are "linked" to the URLs listed according to the depth of search. The web search engine 30 then formats the URL unit collected in sets 34 (also explained in detail below) and presents the sets 34 to the set supply sub-system 36. The sets supply subsystem 36 receives the packs 34 from of the web search machine (s) 30 and fragments the sets 34 into an appropriate sequence of selective multicast packets 38, which is provided to the selective multicast network 24 for transmission in selective multicasting to the receivers 26. The subsequent subsystem 22 also optionally includes one or more cache maps 40, which receive the usage reports 42 from the receivers 26. The usage reports can be stored as correspondence logarithm files 44, which are periodically supplied to the Web sites 18. (The use report function of the present invention is described aba in detail). Subsequent subsystem 22 also optionally includes a registration server 46 (which may also be referred to as a self-naming server). The registration server 46 provides a convenient method for users to subscribe to Web Broadcast channels and also produce batch supply sequences and billing records by subscription 48, which track canceled subscriptions and subscriptions. (The subscription function of the present invention is also described in detail below). Web Search As stated above, the subsequent subsystem 22 contains one or more Web search engines 30, which pack the content of a channel and present it to the set supply subsystem 36 for its transmission of selective transmission to the receivers 26 through the network Selective Mutliplecy 24. The process by which the Web search machine (s) 30 collects (n) the content of various Web sites 18 is generally referred to as "search". Preferably, Web search engines 30 periodically search the Web sites and / or on a scheduled basis. The Web search engine 30 formats the content of a channel into "a single data structure that is preferably stored and transferred as a computerized" stream "or" flat "file (which is used by most systems). A file containing the contents of the channel is referred to as a set 34.) The web search engine 30 can be located in the subsequent subsystem 22 close to the set supply system 36, which, in some In some cases, the web search engine 30 can be located near the Web site (s) where it searches, for example, in the same area network. This configuration reduces the amount of traffic through the wide coverage network since only the compressed sets (instead of the entire content of the channel) are sent through the network. Wide coverage network. The Web search engine 30 typically does not receive an exhaustive list of the URLs to be included in the set. Instead, the Web search engine receives a channel 32 definition (which can either reside on the Web search engine or be retrieved by the Web search engine from an external server) that contains a list of the URL addresses of the URL units to be included in the channel. For each start URL address in the channel definition 32, the web search engine 30 creates a list of URL addresses to be searched, which initially contains only the start address. The Web search engine 30 repeatedly retrieves each URL unit and removes that URL unit from its list until the list is empty. The Web search machine can carry out many of these recoveries in parallel, in order to reduce the time needed to search for a channel. The web search engine 30 analyzes the content of these linked units of each retrieved URL unit to determine whether it contains "links" to other URL units. Typically, only HTML pages contain links. If so, the URL addresses are added to the list of URL addresses to be searched if the additional URL unit passes the channel definition filters. URLs added to the list may include frames, embedded graphics, Java program classes and references (also called "links") to other URLs external to the page. Frames can be thought of as embedded HTML pages. The frames, inserted graphics, Java program classes and graphics inserted within the frames, can be thought of as part of a Web page and are at the same "level" or "depth" as the HTML that refers to them. The URLs that are "linked" from the page under analysis is considered a level "lower" (that is, farther from the starting address) than the page that refers to them. A search depth of the URL is stored together with the URL address itself, in the list of URLs by "search". A URL is only located in the list of URLs to be searched if it passes the channel definition filters and if the depth does not exceed the search depth associated with its start address and the URL has not been previously entered in the list. Frequently, a Web server will respond to a request for a URL to "redirect" to another URL (often on a different Web server). Such a redirect does not increase the depth of the URL that is eventually recovered. The web search machine (s) 30 can be programmed to collect the entire content of a channel and place it in a set 34, which is referred to herein as a "base" set. The Web search to create a base set is referred to herein as a "base search". However, the content of a channel can be updated frequently by the website operator and updates can occur on an unknown basis and it is important to provide a webcast user with an up-to-date and consistent representation of the content of a website. In this way, once a base set has been produced, the Web search engine 30 can be programmed to produce a set containing only the URL units that have changed since the base search occurred. A set containing only the changed or updated content is referred to herein as a "delta" set. The Web search to create a delta set is referred to herein as a "delta search". After the recovery of a unit of URL, the Web search engine determines whether or not it includes, and the way it does, the URL unit within the set that is produced by the Web search engine. This determination depends on: (1) various filter preferences; (2) if you are looking for a base or delta set; and (3) if a delta set is being searched, if the URL unit is present in the base set of the channel and, if so, if the URL unit has changed. If you are looking for a base set, a URL is included in the set, if you pass the filters. If you are looking for a delta set, the URL is included in the set if it passes the filters and either does not exist in the base set or has changed since the version in the base set. If the URL has changed, it can be determined either by actual comparison of the content or by checking the "last modified field" provided by the Web server. In some sites the actual comparison of the data is necessary since the "last modified field" can not be relied upon. Alternatively, the web search engine 30 can determine whether the URL unit has changed by comparing the verification total (s) or the message digest (s) associated with it. the units. The search is typically the preferred mechanism for obtaining the URLs of a channel since it does not require changes to the production and operation of the website. This is very important when the "egg and chicken problem" is overcome over the number of users / good content, described above. However, the search can waste the resources of the network and the Web server since each URL must be verified individually in each search. For a base set of 40 MB (uncompressed), which is searched every half hour, this data flow exceeds 80 kbps. In this way, the present invention reduces the processing time for Web sites that correctly set the "last modified" date of the URLs, by requesting the URLs with a request to "Get If It Has Modified From" HTTP. The Web sites that are available for subscription in the Webcast produce their own definitions, which indicate exactly what URLs are included in the channel and when the URLs have changed. Such a channel definition can simply list each URL included in the channel and the time at which each was modified. With such a channel definition, the web search engine, when storing the retrieved URLs and their modification date, only needs to collect the URLs that are new or that have changed since the previous search. This provides a website with maximum control over the content on its channel, while minimizing the resources of the network and the Web server required to collect the content. The content of the dynamic Web site has a special problem for the search in Web Diffusion since the simple analysis of HTML is not enough to collect all the URLs required for a channel. An example of dynamic content is a Java Sports Scoring Program, which, when started, retrieves and displays a set of sports scores. The URL that contains the scores is not referred to by the HTML and would not normally be collected by the web search engine. Data can only be collected by actively running the Java Program. To overcome this deficiency, the channel definition allows a list of pages whose content is collected by a viewer capable of using Java. Referring to Figure 4, the web search engine 30 configures a viewer capable of using Java 50 to use the web search engine as a proxy server and directs the viewer 50 to display the pages configured with dynamic content (data flow). TO) . The viewer 50 collects the active content of a Web server 10 through the Web search engine 30, which now acts as a representative server (data flow B). The configuration of the display 50 for using the web search engine as a proxy server allows the web search engine to monitor and record the URLs accessed by the viewer, including the active content (data flow C). Compression As stated above, the Web search engine 30 collects URL units for a channel and places them in sets 34. Each set contains: (1) a set of URL units; (2) indexing information, such as a noise table, to allow quick access to the URL unit; and (3) diverse complementary information that identifies the set of URL units contained in the set and other information to guide the use of its content. The Web search engine 30 uses a lossless compression algorithm, such as the one created by Liv and Zempel in 1977 (LZ77) or another algorithm to individually compress each URL unit. (An alternative lossless compression algorithm is described in copending application serial No. 08 / 982,864 entitled "Data Compression for Use with a Communications Channel", filed on December 2, 1997 and assigned to the same assignee of the present invention. ). The unit of URL that can be compressed is compressed individually (and identified as compressed) before being placed in a set 34 (instead of compressing the whole in its entirety). In many cases, the URL unit that has changed between the time of a base search and a delta search has only partially changed. For example, many websites change the ads placed on an HTML page every time the page is serviced. In such a case, only the few characters that contain the URL unit of the ad change from ~ one search to the next search. In other cases, the volume of a Web page consists of a "model text" that provides a consistent view and style to the Web page. Even when the actual content within such a web page has completely changed, only a small fraction of the characters on the page change. In view of this, the size of the delta assemblies can be minimized if the web search engine 30 carries out what is referred to herein as "compression by difference". With compression by difference, the Web search machine 30 compares a URL unit to be included in a delta set with the corresponding URL unit in the base set (if it exists). The Web search machine 30 divides the URL unit of the delta set into data sections and, for each section, places the compressed version of the URL unit either: (1) a reference to the URL unit of the base set where that section of data can be found because it appears identically in the URL unit of both the base set and the delta set. This reference is usually much smaller than the data itself, or which inherently provides the compression. An example of a reference is a shift from the start of the URL to the first byte and a shift to the last byte that is referenced. Alternatively, other more complex but more compact mechanisms may be used to code a reference; or (2) the data section from the URL unit of the delta set. This does not provide any compression but exists to ensure that the URL unit of the delta set can be reassembled without modification from the URL unit of the base set and the URL unit compressed by difference. The URL unit compressed by difference can then be optionally compressed with a lossless data compression algorithm, such as LZ77, before being placed in the delta set. Channel definition filters indicate whether a URL unit included in the set should be compressed and, if so, the compression algorithm to be used. For delta sets, channel definition filters also specify whether compression by difference (and which algorithm to use to determine the difference) is applied to a URL to be included in the delta set. Table 1 provides examples of Web Broadcast channels that illustrate the effectiveness of base / delta assemblies, individual compression of URL units, and compression by difference.
TABLE 1 The resulting compression ratio (i.e., approximately 14 to 1) is much greater than the compression ratios that can be achieved from the direct application of ordinary lossless data compression algorithms, which typically do not exceed 2.5. to 1 in such sets. The use of delta sets in combination with base sets thus greatly reduces the amount of bandwidth needed to keep a receiver "up to date" with a Web site compared to the repeated selective multicasting of the complete set of Web site content. The present invention also accomplishes this while preserving the objective of always presenting a dynamic copy of the memory consistent with the content of a Web site. The present invention may also use delta assemblies delta assemblies. For example, a sports website may frequently update scores for a game with no other changes to the website. In this case, only the URL unit that contains the scores changes from one search to another. In this way, a delta set can be generated and compressed by difference in such a way that it contains only the difference (that is, the new score) of the previous delta set. The use of delta sets of delta sets also reduces the amount of data that must be transmitted. Packaging and Compression Windows - The organization of the content of a Web site in channels and sets of the present invention, provides significant advantages and benefits to reduce the impact of the reception of selective multicasting on the function of other active applications in a receiver 26 For example, the organization of each set 34 as a single file with integrated indexing for quick access minimizes the processing that the receiver 16 must perform on the content before showing it to the user. The alternative, which is to store each unit of URL as a separate file (as is commonly done with visual cache memories and existing caches), requires significant processing (and additional memory / disk space) to divide the units of URL in individual files and omit obsolete files. Because many Web channels can contain over 3000 URLs, this processing (that is, 3000 files separately) can take several minutes or more. In addition, this processing must take place either after the content has been received (interrupting any other procedure that is taking place at the moment) or when the user first accesses the content (causing the user to have to wait while this content takes place). process). In addition, the retention of the entire URL unit in a single file reduces the processing required to display the content by removing the overhead part of opening and closing a file for each URL. The individual compression of each URL unit (instead of compressing the whole as a whole) also minimizes the processing that receiver 16 must perform before displaying the contents of a set. Decompression of the whole requires significant processing, which, as stated above, must take place either after reception (interrupting whatever happens at the time) or when the user first accesses the contents of the set (forcing the user to wait). Compression of the whole as a whole also uses more memory or disk space because the content of the whole must be stored in an uncompressed form. The decompression of each unit of URL individually, as necessary, allows the units to be stored in compressed form (reducing memory space). Also, only the units that are actually accessed by the user are decompressed, thus reducing the total processing time. Also, because the decompression of the URL units is carried out at a time when the user has directed the receiver to display the content, it is unlikely that the decompression will interrupt other applications that require the use of the resources of the recipient. receiver. In addition, the use of the delta and base flp sets 10 allows the reception of base sets to be scheduled for periods of time when the receiver 16 can be expected to be inactive (for example, very late at night), while minor delta assemblies can be received during all day In this way, a receiver can be turned off, or it can suspend, abort or terminate the reception of sets during the moments in which the receiver is dedicated to another processing, still being carried out quickly the "update" after the reception of the set has been allowed. The present invention also ensures that a complete, consistent version of the content is presented to the user. In this way, the present invention provides advantages Significant over other selective multicast systems that frequently require the receiver to turn on continuously for such users who did not use the system or accidentally terminated the reception by turning off the receiver. With the transmission of delta and base sets, particularly when the base sets are transmitted at night or during another inactive period, a user can turn off the receiver or suspend the reception of sets during the peak usage time and still have the receiver quickly updated when the reception of sets is restarted. The use of delta assemblies, particularly with compression by difference, results in much smaller transmissions because fewer data must be received and processed to maintain an up-to-date receiver. This results in lower bandwidth requirements and decreases the impact on the receiver when a delta set is received. The organization of content in channels to which the user subscribes and in sets of a single file, also allows the content to be transmitted through very efficient selective file transfer protocols where virtually no processing is wasted. of the recipient by filtering out content that is not of interest to the user. It also allows the programming of transmissions, in such a way that a user can determine when the reception should be allowed to receive the content he desires. Although the preferred embodiment of the present invention stores each base or delta set as a single file, storing each set in a small number of files (ie, where the number of files is less than the number of URLs in the set). ) still achieves many of the benefits described above and may be desirable within some selective multicast networks. In addition, the creation of indexing information within the receiver from a single file (or small number of files) also accomplishes many of the benefits described above. Components of the Selective Fusion Network Referring again to Figure 2, the selective multicast network 24 generally includes the following components, although some components may vary depending on the specific modality of the selective multicast network: ( 1) A central subsystem 52, "the" which is responsible for: (a) taking packets from the subsequent subsystem 12 (link C) and multiplying the packets to the receivers 26 (link F); and (b) optionally multiplexing the subsequent subsystem packets with data (ie, digital video, audio, etc.) from another transmission source 27 (link E) and muting the stream (s) from Resulting data to the receivers 26. (2) A selective multicast receiver 54, which is responsible for providing selective multicast packets of the requested channels to the receivers 26 (link F). Alternatively, the selective mute receiver can be integrated with the receiver 26, such as in a personal computer with a receiving periphery and associated software. A higher digital satellite TV activation box or a higher cable TV activation box are other examples of receivers that may include integrated selective multicast receivers. (3) A conditional access system 25, which can be integrated with the central subsystem 52.
The conditional access system 25 may be of the type described in US Patents. 5,481,609; 5,282,249; 5,659,615; or 5,652,795, which are incorporated herein by reference. General crypto-technology is also described in "Applied Cryptography, 2nd Edition", published by John Wiley and Sons, 1996, which is also incorporated for reference. The conditional access system 25 uses a cryptographic key or a set of keys to cryptograph the packets in such a way that a receiver 26 only decrypts the packets it is authorized to receive. In general, the receiver 26 notifies the selective mute receiver 54 of the channels to be received. If the selective muting receiver 54 is integrated with the receiver 26, this is done through a software interface. The selective multicast receiver 54 then contacts the conditional access system 25 to initiate cryptography of the packets and the receiver is provided with the appropriate key to decrypt the packets it is authorized to receive. In the context of this invention, the selective multicast network is not limited to any particular type of network and can comprise any selective digital multicast network where the data that is carried is segmented and placed in one or more relatively small packets. (for example, approximately <1 MB) and where each package includes a selective mute and selective address field. In a preferred embodiment, the selective multicast network 24 is a geosynchronous satellite directly to the local system that carries both data and digital video services. In another embodiment, the selective broadcasting network 24 is a two-way cable television network that carries both analog selective digital fusion and analog television (and / or digital) data services. The selective multicast network may also comprise any other type of selective multicast network, such as Ethernet (where the destination MAC address field carries the selective multicast address), Digital Video Transmission (DVD) satellite. , terrestrial and other means, ATSC digital television and other selective multicast networks that use MPEG2 transport packets and where the PID field carries the selective multicast address, MBONE (experimental Internet selective multicast network), DVB that it carries the encapsulated data of an iprotocol, and any other IP selective network (Internet Protocol) where the IP packets are used and the destination IP address field maintains a selective multicast address. Components of the Receiver In a preferred embodiment, the receiver 26 is a personal computer. However, the receiver 26 may comprise any component capable of receiving and processing packets from a selective multicast network, such as an upper activation box that provides data services. (optionally together with digital video services), which are observed through a television, or a digital television that integrates the functions of a superior activation box and a television to provide both data and video services. Laptops or manuals and the like with wireless receivers are another example of a receiver that can be used with the present invention. Referring now to Figure 2, each receiver 26 includes software that can be functionally decomposed into the following components.
However, it is understood that the current organization of the software may vary within a specific implementation. (1) A receiver of Sets 56 - The set receiver 56 processes the packets received from the subscribers to channels through the selective multicast receiver 54 and reassembles the sets of those packets. (As stated above, the selective mutation receiver can also be located on the receiver). As discussed above, each set is stored as an individual file (or a small number of files) in the receiving memory 28 (ie, on a hard disk of the receiving computer). Optionally, if the selective multicast network 34 does not provide conditional access, the set receiver 56 can decrypt the sets, if conditional access is desired. The set receiver also manages the use of space in the receiver memory 28 and manages the use of receiver sources to minimize the impact of processing and reception of selective mute transmission in other applications operating in the receiver. (2) A Content Viewer 58 - The content viewer 58 on the receiver 26 provides the user with promotional material (ie, through the Electronic Program Guide (EPG)) that helps the user determine which channels to subscribe to. In a preferred embodiment, the content viewer also interacts with the selective multicast network 24 (or optionally the subsequent subsystem 22) to subscribe or not subscribe to the channels in the user's address. If the subsequent subsystem 22 is executing conditional access (before the selective mu st t re), preferably the content viewer 58 also interacts with the subsequent subsystem to obtain key material. Preferably, the content viewer 58 can also report usage information (i.e., information about which channels were accessed by the user), to the subsequent subsystem 22. Transmission of Sets In the preferred embodiment, the transmission of sets takes place through a selective multimodal controlled conditional access network 24 carrying selective IP multicast packets and wherein an IP selective mute address is assigned to each channel. The conditional access system of the selective multicast network 25 ensures that only the subscribed receivers can access the IP packets of the channel. Preferably, the selective multicast network 24 provides a single IP selective muting address (which each receiver 26 can receive), in which the set-delivery subsystem 36 sends packets announcing the next transmission of sets. In the preferred embodiment, the receiver 26 can selectively allow and not allow the addresses of multiple IP selective fusion. If an IP selective multicast address is not allowed, the selective mute tying receiver 54 filters the packets containing the address, such that the receiver 26 is not loaded with the processing associated with the identification and discard of addresses. not allowed Alternatively, if the selective multicast network 24 is compliant with the European Digital Video Select (DVB) selective standard, each channel can be assigned an MPEG2 transport stream and the conditional access system 25 of the multicast network. selective ensures that only subscribed receivers can access an MPEG2 transport stream from the channel. In other embodiments, more than one selective mute address can be dedicated to each channel (eg, one address for base set transmissions, one for delta packet transmissions, one for control information, etc.). An address or set of addresses can also be shared by multiple channels, one address or set of channels per set at a time. However, these assemblies are not preferred since they complicate the conditional access system 25. Preferably, the set supply subsystem 36 in the subsequent subsystem 22 receives sets 34 from the web search machine (s). 30 (figure 3) with a schedule for each set. The programming includes information such as, when the transmission should take place, the priority of the transmission of sets, the speed at which the transmission should take place, if the set should be transmitted more than once, and / or other information related to the transmission of sets. Figure 5 is a flow chart illustrating the steps executed by the set-up subsystem 36 of the subsequent subsystem 22 to transmit a set 34 to the selective multicast network 24. If the schedule is provided with the set, the steps they run within any programming constraint. The set-up subsystem (PDS) 36 first formats a selective multicasting advertisement packet that identifies the set to be transmitted (block 60). The selective multicasting ad packet may include, for example, what channel the set is a part of, what kind of set is transmitted, information to uniquely identify one version of a set of another and the size of the set. A PDS 36 then passes the selective mute announcement packet to the selective multicast network 24 to be transmitted through the selective mute announcement address (block 62). Preferably, the PDS 36 transmits the packet several times to ensure a high probability of reception. The PDS 36 then waits for a short period of time (eg, 3 seconds) to allow the receivers 26 to determine whether the set should be received and ready for reception (block 64). Optionally, if conditional access is desired but not provided by the selective multicast network 24, the PDS 36 uses a key or set of keys only available to subscribers subscribed to cryptography either the entire set or the individual packets (block 6). 6). The PDS 36 then fragments the assembly into a sequence of packets, wherein each packet has a unique sequence number (block 68) and begins to transmit the packets at the specified bit rate (block 70). The set-up subsystem 36 also multicast other information (either within the selective multicasting packets or other packets), to allow the receivers to identify the first and last packets of a set. The PDS 36 can subsequently retransmit a packet from the set to increase the probability of reception. Preferably, the PDS 36 retransmits the sets on a scheduled basis and only certain sets can be programmed for retransmission. For example, the base assemblies may preferably be transmitted 2-3 times depending on factors such as the time of day and the size of the assembly. However, the delta assemblies may preferably be transmitted only once, since the packet loss may be recovered by the subsequent transmission of the next delta set. Receiving Sets The set receiver 56 in each receiver 26 can optionally be configured to monitor the receiving activity and / or use the user input to classify the receiver's ability to receive sets. For example, the receiver of sets 56 can monitor: (i) the load of the terminal CPU of the receiving computer; (ii) the disk activity of the receiving computer; (iii) user input (mouse clicks and / or keystrokes); and / or (iv) time of day. The user can also enter preferences for when sets should be received. For example, the user can specify that before starting a computer game, all the reception of sets should be suspended until at least 30 minutes have passed without user input (mouse clicks or beats), or at least 30 minutes of only minimum CPU load and disk activity. Alternatively, the user may only allow the reception of base assemblies under such circumstances. In this way, a receiver's ability to receive sets can be classified as follows: (1) Completely suspended - the receiver of sets 56 will not receive sets in order to avoid interference with other processing; (2) Only base set reception - the set receiver 56 will only receive the base sets to reduce interference with other processing; or (3) Allowed set reception - the set receiver 56 will receive any set (ie base or delta) of interest. Preferably, when the reception of sets is completely suspended, the set receiver 56 suspends the reception of the selective multicasting ad packets by not allowing its address (s). In addition, the receiver of sets can reduce its impact by releasing all or part of its sources (memory, threads, etc.) up to, but not including, what is necessary to monitor the activity of the user and the computer. When its "occupied surface" (ie, number of sources used when a set is not received) is low, the receiver of sets 56 could silently discard all such announcements. When the reception of sets has allowed either the reception of all the sets or of the base sets, the set receiver 56 evaluates each selective multicast announcement packet to determine whether the corresponding set should be received. Reception should only begin if: (1) the reception of the set type (base or delta) is currently allowed; (2) the set has not already been received successfully; (3) the set is for a subscribed channel; and (4) the disk / memory usage management allows the reception of the set (explained in detail below). If the set receiver 56 determines that a set is to be received, the set receiver 56 requests the selective mu lt-firing receiver 54 to allow the associated address (s). The receiver of sets 56 then processes the packets of the set, discards packets already received and stores in the memory any packets not previously received (that is, he writes them on disk), thus reassembling the set.
Preferably, the set receiver 56 monitors packet sequence numbers and indications of the first and last packets to determine whether the complete set has been received without lost packets. The set receiver 56 identifies the end of an ensemble transmission either by not receiving any packets within a predetermined waiting period or by receiving the last packet. In selective multicast networks that allow packets out of sequence, the receiver of sets should probably wait another waiting period to determine that all packets have been received. If the set was received intact, the set receiver 56 makes the set available to the content viewer 58. If the set failed to be received intact, the set receiver can discard the set, preferably without interruption or notification to other operations. However, the set of missing packets is preferably recorded (in some way) and in a repetition transmission of the packets, the "holes" are filled by storing only missing packets. This provides a high probability of reception in repetition transmission, but may not be necessary with some networks that have a very low probability of packet loss. Preferably, while the set is received, the set receiver 56 also optionally offers the user the opportunity to abort the reception if, for example, the receiver 56 is needed for other activities. While the packet is received, the set receiver 56 also preferably monitors the user activity and the load of the computer terminal and aborts the reception depending on the user preferences previously configured. Space Management in Memory / Disk Previous selective mutation systems often interfere with the normal operation of the receiver by consuming too much memory or disk space. Because the high-speed selective multicast network of the present invention allows the transmission of large amounts of data at low speed, there is a high probability that, without effective management of memory / disk space, the set would consume too much space in the memory / disk. In order to overcome this potential problem, the Web search engine 30 and the packet receiver 56 of the present invention cooperate to manage the use of the memory to minimize the impact on the receiver 26. First, each definition of channel 32 that provided to the web search machine 30 includes a "memory provision" for the channel (figure 3). The provision of memory, which approximates the size of the channel, is used to ensure that the use of the memory / disc of the Webcast does not exceed the user's expectations. The web search engine 30 ensures that the total space in the memory consumed by a channel does not exceed the memory provision of the channel. Specifically, the web search engine 30 verifies the size of each set before referring it to the set supply subsystem 36 for transmission. The web search engine 30 also refers a base set to the set supply subsystem 36 when the memory provision does not exceed. The web search engine 30 only refers to a delta set when the size of the delta set plus the size of the corresponding base set does not exceed the memory provision. The receiver of sets 56 also verifies the size of a set before beginning its reception. The set receiver preliminarily allows reception when the size of the set plus the size of any previously received set does not exceed the memory provision of the channel. If the size of the set exceeds the memory provision, the set receiver verifies whether deleting previously received sets from the channel will allow reception. For a base set, the receiver sets clear the channel sets, as necessary, to make room for the base set. Preferably, the set receiver 56 first erases the previous base set, then any base set for that previous base set and then any other delta set, as necessary. For a delta set, the set receiver preferably erases the delta sets previously received from the channel, as necessary, to allow reception. Once preliminary reception of a set is allowed, the set receiver 56 checks the available space in the receiving memory 28 against a predetermined minimum memory space that is not yet used for storage of the Web Broadcast channel. The set receiver only allows reception when the set will not take available space in the memory / disk below its threshold. Preferably, the set receiver records when the space in the memory / disk does not allow a reception of sets and the content viewer 58 notifies the user of the lack of memory space. In a preferred embodiment, the user is notified through the EPG (Electronic Program Guide). Before subscribing to a set, the EPG notifies the user of the memory provision for the channel and the space available in the memory / disk. Figure 6 is an example of an EPG window that can be used to notify the user. As illustrated in Figure 6, the EPG also preferably notifies the user when the reception of sets will take place. For example, the base assemblies may be transmitted during a period of slow use (such as during the night). Delta sets (containing updates) can preferably be transmitted on a periodic basis, such as every half hour. The EPG can also allow the user to specify when the l - can be received conj utes. Canal Subscription and Conditional Access As discussed above, each user receives an Electronic Program Guide (EPG) channel. In the preferred embodiment, there is only one EPG channel. However, multiple EPG channels can be used, which are specifically tailored to a user based on factors such as language, the service plan that the user has selected, age, gender, etc. The EPG preferably contains promotional content from each available channel that allows a user to evaluate the channels and select which channels to subscribe to or not subscribe to. Preferably, the EPG and its promotional content is structured as a Web site - it is a collection of HTML pages with built-in graphics and other active content and a user indicates the desired channels by pressing buttons, check boxes, etc. Figure 7 is an example of an EPG window that can be used to notify the user of available channels. The example in the figure also allows the user to link to a planned channel and provides a box for the user to subscribe or not to subscribe to a channel.
When started by the user, the content viewer 58 in "the receiver 26 makes the promotional material available to the user." The content editor 58 also processes a user request to subscribe to or not subscribe to a channel, if conditional access is not implemented. , the content viewer 58 informs the set receiver 56 of the user's subscription / non-subscription request and the set receiver 56 initiates the reception or ceases reception of the channel sets, as appropriate.However, it is preferably implemented A conditional access scheme in the present invention As previously discussed, conditional access can be implemented, for example, by the selective multicast network 24, by the subsequent subsystem 22 or by a combination of the two. conditional access through the conditional access system 25 in the selective messaging network 24, the content viewer 58 ecuta a subscription or non-subscription transaction against the selective multicast network. This is typically executed through the selective mute receiver 54, which may optionally contact the central subsystem 52 either immediately or at a later time. For some selective multicast networks, the content viewer 58 can make direct contact with the central subsystem 52 (through the Internet, the dial-up modem connection, or any other suitable means) and execute the transaction. If the transaction is accepted, the content viewer 58 informs the set receiver 58, which in turn initiates reception or ceases reception of the channel sets, as appropriate. Preferably, the selective multicast network 24 provides the complete set of channels currently subscribed to the end of such a transaction (or in the request), thus maintaining the content viewer 58 and the selective mutation receiver 54 synchronized with the network of subscribers. selective transmission 24. Also, the conditional access system 25 preferably uses encryption to prevent unauthorized access to a selective multicast address, where the keys used to encrypt a selective multicast address of the channel are different from those keys used to cryptograph other directions of muitidi selective channel fusion. Alternatively, the selective mutation network 24 implements the conditional access and the subsequent subsystem 22 implements the subscription processing. With this arrangement the subsequent subsystem 22 processes the transactions for subscriptions and not subscriptions to the channel and the selective multicast network 24 controls the access to the selective multicasting addresses. The content viewer 58 contacts the registration server 46 of the subsequent subsystem 22 (through the dial-up modem, the Internet, etc.) and execute a subscription transaction. The transaction request includes information: (i) identifying the selective multicast receiver from which the receiver receives, (ii) the requested channel, and (iii) optionally, the information used to authenticate the issuer of the request. The registration server 46 authenticates the request and, if the message is authenticated, correlates the requested channel for the set of selective merging addresses carrying the channel. The registration server 46 then executes a transaction against the selective multicast network, the central subsystem 52 requesting that the receiver 26 be accessed by the addresses carried by the subscriber to the channel. The authentication attempts to verify that the request comes from the content viewer 58 of the receiver 26, for which access to a channel is requested. Preferably, authentication is executed through password authentication. However, authentication can also be executed using encryption in public key. Once the subscription request has been processed, the selective multicast network 24 is responsible for ensuring that the receivers 26 only receive packets from authorized selective muting addresses. In the preferred embodiment, the conditional access system 25 in the selective multicast network uses encryption to prevent unauthorized access to a selective multicast address, where the keys used to encrypt a selective multicast address of the channel they are different from the keys used to encrypt other channels of selective channel mutation. Alternatively, the conditional access can be implemented only by the subsequent subsystem 22. In this mode, the content viewer 58 contacts the registration server 46 (through the dial-up modem, the Internet, etc.) and executes a transaction of subscription / no subscription. Subsequent subsystem 22 then makes the decryption keys of the channel available to the receiver. The receiver will probably have to periodically execute transactions with the registration server to obtain and update the encryption keys.
(This can optionally be executed together with the usage report). If the transaction is accepted, the receiver of sets 56 is informed, as described above. This conditional access mode is typically not as secure as the conditional access system offered by the selective multicast network, but still provides a certain level of security. In any of the modalities described above, subscription and / or non-subscription requests can be grouped for more efficient processing. Off-line Examination Off-line examination refers to a user's access to website content without connecting to the Internet. The content viewer 58 within the receiver 26 is responsible for supporting the user's offline examination of the content of the Webcasting channel. In a preferred embodiment, the content viewer 58 comprises an application of the proxy server that operates with an existing Web viewer 12 (ie, unmodified). This allows the user to continue working with a popular Web viewer without re-learning a new user interface. In the preferred embodiment, when the user initiates an off-line examination session, the content viewer 58 determines whether the Web browser 12 works and, if so, instructs the user to close the viewer. If the viewer does not work, the content viewer 58 configures the viewer to access the Internet through the content viewer / proxy server. The content viewer / representative server then starts the viewer to display the Electronic Program Guide (EPG). At the end of an offline examination session, the content viewer / representative server 58 closes the viewer 12 and reconfigures the viewer to its configuration without representing, original. In another embodiment of the invention, the content viewer 58 is integrated with a display cache memory, in such a way that the viewer requests URLs from the content viewer 58 before requesting them through the network. In any mode, once the content viewer 58 has started, it receives URL requests from the viewer 12 and tries to find them from its "cache" of URLs. The cache consists of URL units contained within the sets received from the subscribed channels. From the point of view of the content viewer 58 that executes a cache query, a URL consists of two parts. For example, the URL "http://www.direcpc.com/users/index.html" illustrates these two parts: (1) "http://www.direcpc.com" - the first part identifies the protocol (which it is always http) and the domain name of the Web server, from which the URL is requested; (2) "/ users / index. Html" - the second part identifies the path name (directory and file name) of the URL within the file system of the Web server. The content viewer 58 executes a cache query by first executing a query of the domain name. The content viewer 58 maintains a data structure that correlates a domain name to the list of channels containing URLs of the domain name. In a preferred embodiment, this data structure is a noise table, wherein each noise input is a list and each list entry contains a domain name and a channel ID.
(As is known in the art, a noise table provides an efficient method of retrieving information from a matrix.) The use of a noise table allows many of the different possible inputs (or keys) that may occur that - correlate to the same location in the matrix under the action of an index function). Preferably, the content viewer 58 constructs this data structure from the supplemental information within each set that lists the domain names of the URLs "included in the set." The content viewer 58 extracts the domain name from the URL and determines from this data structure the list of channels that the URL can contain The content viewer 58 then executes a URL query, where the content viewer takes the list of candidate channels (determined from the query of the domain name) and verifies each set of the channel until it finds a comparison. Preferably, the content viewer 58 first checks a delta set of the channel (if available) for a comparison and then its base set. In some cases, a URL can exist in more than one set of the channel. To handle this, in a preferred embodiment, the content viewer 58 checks the channels that start with the most recent initial search time. (An initial channel time is recorded in your supplemental set information). When finding the URL in a set, the content viewer 58 retrieves the URL unit from the memory set 28 and decompresses the URL unit, if necessary. If the URL unit is decompressed by difference, the content viewer retrieves the URL unit from both beta sets and deltas (decompressing as needed) and performs decompression by difference to restore the contents of the revised URL. In many cases, the present invention is used with a receiver 26 having a dial-up connection to the Internet, such as a local computer running Windows95® with dial-up modem dial-up to the Internet. The telephone line is often used for both Internet access and regular telephone services (POTS). Another example is an ISDN switched connection. In addition to being a shared source, where the receiver can interfere with another user of the connection, a switched connection to the Internet is often measured, so that the user incurs an additional expense with each use. In such switched connection situations, it is desirable for the receiver to share the telephone line with other users. In a preferred embodiment, the content viewer 58 interacts with the user to allow access "without sutures" to the content outside the channel definition, while controlling access to the telephone line in a manner that allows the telephone line to be shared with others. users The content viewer does this by controlling "cache memory faults".
A lack of cache memory occurs when the display 12 requests a URL that is not found within any of the sets that have been received and stored in memory 28. The requested URL is probably not present in a received set because, For example, a hidden Web page can refer to URLs that were not searched and incorporated into a channel. This may occur due to either Internet outages during the search or because the Web page contained dynamic content that could not be automatically searched. In this case, there are often several cache faults within a short period of time, one for each embedded URL, missing. The requested URL is also probably not present if the user clicks on a page link within the channel definition that references a page outside of the channel definition. For example, if the channel definition defines a two-level search depth, and the user requests a URL that was three levels deep, a cache fault may occur. A lack of cache memory can also occur if the user directs the viewer to a URL that is not present in the cache. Preferably, when a lack of cache occurs, the content viewer 58 notifies the user and allows the user the opportunity to connect to the Internet (through the switched connection), to gain access without sutures to unhidden Web pages. Figure 8 shows a flow chart of the steps executed by the content viewer 58 when a cache loss occurs. The content viewer 58 first determines if another cache fault has occurred recently (block 100). If not, it then determines if the user has previously specified how a cache should be handled (block 102). If no user preference is specified, the content viewer 58 notifies the user that a cache failure has occurred and that the requested content can only be obtained by accessing the Internet (block 104). The content viewer 58 then asks the user if he wants to initiate a connection to the Internet to retrieve the requested content (block 106). This question prevents an automatic connection to the Internet that may interfere with other uses of the connection (ie, interrupt a phone call) or may incur unwanted charges. If another lack of cache memory occurs while waiting for an answer to the question, the content viewer 58 keeps the cache faults until the user responds. Block 106 also optionally initiates a countdown along with the question that allows the user to know that he has N seconds to answer the question. Figure 9 is an example of a dialog box that can be used to notify the user of the lack of cache memory and ask the user about the connection to the Internet. The example in figure 9 also includes the optional downcount. Referring again to Figure 8, if the user responds that he does not wish to connect to the Internet or if the downcount expires without any response from the user, the content viewer 58 denies the request for lack of cache by providing an indication to the viewer 12 that the content can only be obtained by connecting to the Internet (block 108). In a preferred embodiment, the content viewer returns an "error" HTTP response containing an HTML text or body (or a redirection to an HTML page), which contains the text that explains that the content can only be obtained through the Internet. This results in the display 12 displaying this text (or HTML page) to the user. Alternatively, if the user responds that he wants to access the requested content by connecting to the Internet, the content viewer initiates the connection to the Internet (block 110). In a preferred embodiment, the content viewer 58 acts as a normal proxy server and initiates TCP connections to the server of the requested URL and to the servers of the other requested URLs from the cache faults that were maintained while waiting for the user's response. Upon receiving such a connection start, the receiver 26 can then be configured to automatically initiate a switched connection to the Internet. In other embodiments, the content viewer 58 may interact with the device driver of the switched connection to initiate a connection and maintain all requested URLs until after the connection to the Internet has been established.
Referring again to block 100, if the content viewer 58 determines that another cache fault has recently occurred, it follows the user input for the lack of pre-cache memory and whether or not it initiates an Internet connection (block 110). ) or deny the request (block 108). Blocks 110-112 prevent the user from being "riddled" with ^ cache missing requests, which can occur frequently on Web pages with more than one missing, built-in URL. Similarly, if the content viewer determines that the user has indicated a preference for cache missing requests (block 102), it follows this preference (block 114) and either initiates the connection (block 110) or denies the request (block 108). Use Report The present invention provides sufficient usage information to a website to support a business model based on advertising although no change to a website operation is required. Alternatively, the usage information may be reported to another source, such as a network operations center (NOC). Specifically, the present invention can report usage information to the Web site as if the user will access the Web site through a conventional caching representative server. Alternatively, the present invention may report usage information to the Web site in the form of file diaries. Generally, a Web browser 12 sends a separate request to a Web server 10 for each URL that a user observes (Figure 1). A request for a URL is called a "correspondence." To generate advertising revenue, a website typically records for each advertising URL the number of "correspondences" (that is, the number of times the site has served the URL). The website receives advertising revenue based on either (i) the current number of "correspondences" the site receives or (ii) a calculation of the number of "correspondences" that advertising can expect to receive based on past experience. A website is typically unable to determine the identity (ie name, address, telephone number, etc.) of the users visiting the site. However, a website is able to tell which URLs are accessed for a period of time (ie, weeks and months) by the same user.
The website collects this information by assigning a unique "cookie" to each request URL of the different viewer of the site. (As is known in the art, a "cookie" is a piece of internal, limited information transmitted between a Web server and a Web viewer, which uniquely identifies the user without revealing the identity of the user). It is important, in order to maintain advertising revenue, for a website to be able to say that "correspondences" are received from the same user. The present invention provides such information to Web sites through the use of the cache mapping tracker 40 in the subsequent subsystem 22. (See Figure 3). Referring also to Figure 10, the content viewer 58 on the receiver 26 sends useful information 42 to the cache mapping tracker (s) of the subsequent subsystem 40, as specified by various channel channel definitions. The mapping trace part of the channel definition is supplied to the receiver 26 within a supplemental set information. In a preferred embodiment, the usage information consists of a record for each "match", whereby only a subset of the cache matches is recorded. This usage information is preferably reported through a TCP / IP network, such as Internet 14 and the receiver's interface to the Internet can be through a switched connection such as a dial-up modem connection. However, it is understood that the usage information could be reported through any other suitable connection. The present invention returns the usage information to a Web site (or other location) on a per-channel basis either through the representative (which does not require changes to the operation of the Web site) or through file journals (which does not require changes to the operation of the Web site besides acquiring and simply processing the archives diaries). With the representative reporting, the cache mapper 40 preferably operates (from the perspective of the Web servers) as an HTTP proxy server. The cache mapping tracker 40 stores "mappings" of the content viewer 58 in the receiver 26 and subsequently executes an HTTP operation for each reported URL. This minimizes the time that the receiver 22 needs to connect to the Internet 14 as it is not delayed while its mappings are reported to the Web servers 10. The type of HTTP operation executed by the cache mapper 40 is defined by the channel definitions, which are sent together with the usage reports 42 to the mapping cache 40. Specifically, the following HTTP operations can be configured to execute representative use report on a per-channel basis: (1) GET - The cache mapping tracker 40 can execute an HTTP GET operation (which, in general, transfers a unit of URL from the Web server 10 to the mapping tracker in 4-0V cache). The cache mapper 40 then expects all data to be received, but discards the data as it is received. This operation is almost equal to what the Web server 10 would have received if the user had directly retrieved the URL unit without the use of the present invention. (2) GET no wait - The cache mapping tracker 40 can execute an HTTP GET operation (exactly as above) but only expects the HTTP response header to be received from the Web server 10. Once received, the mail tracker in cache 40 immediately closes the connection. This operation uses less network bandwidth, since the current URL unit does not need to be completely transferred. (3) GET If Modified Since - The Cache Mapper 40 can execute an HTTP GET If -Modi fied- Since operation, where the last modified data comes from the HTTP response header included with the URL in the set. This operation also reduces the use of the network, since the complete content would typically not be sent, while completing the HTTP operation. (4) GET If Modified Since No Wait - The cache mapping tracker 40 can execute a GET operation If -Modí fied- Since (exactly as above), but does not expect any data after the response of the Web server 10 that the URL has changed and should be sent. This operation uses less network bandwidth, since the current URL unit is not transferred. The cache mapper 40 can also run the use report using file logs 44, preferably keeping separate file journals for each channel. The cache mapping tracker 40 either makes file logs 44 available to the Web site (through, for example, an FTP GET operation) or periodically supplies the logs of files 44 to the Web site (via, through example, of an FTP PUT operation or e-mail). In a preferred embodiment, each correspondence file journal 44 is a flat ASCII file, with one record per line and a fixed number of fields per record. All fields are separated and fields that can contain spaces are enclosed in quotation marks (""). Table 2 below specifies the preferred format of the correspondence file journal 44.
Field Name Field Format Description ChannelID Four (4) alphanumeric Identify the channel from which this correspondence comes URL "ASCII i p-rlmlble" The URL of the Line (put in quotation marks) Request of the HTTP request UserAgent "Printable ASCII" From the User-Agent e line (put in quotation marks) the HTTP request. If the User-Agent line is not present, the field is "N0AGENT" HitTime YYYYMMHH MSS Date and time stamp GMT of when the user accesses the URL unit requested from the ReportDelay cache Eight (8) numeric Duration (in seconds ) from when the cache correspondence occurs until the correspondence is reported (either to the source server or to the file) EditionID RRR. MMM An ID that uniquely identifies the snapshot of the channel content given to the user. (RRR are the last three significant digits (LSD) of the edition # of the base set and MMM are the three LSDs of the edition # of the DELTA SiteID set Ten (10) to the numeric f Only, but anonymously identifies the HitMethod user Four (4 ) to f anumerics Identify how the correspondence to the web server should be released, it will contain one of: FILE - file journal GETN - HTTP full GET operation GETR-HTTP GET No Wait (connection closed after the response header is received) GETI-HTTP Get If Modified Since (fails) GITR - HTTP Get If Modified Since No Wait (connection closed after the reply header is received) TABLE 2 In the preferred correspondence file journal format of Table 2, the "SiteID" field provides the Web site with an approximate equivalent to a "cookie" (discussed above) since it allows for the identification of correspondences from a single user , without revealing the identity of that user. The following is an example of a correspondence file journal record (in a current file journal, the record occupies a single line): EONL "http: // www. Hns. Com / index2. Html" "Mozilla / 2.0 (compatible, MS IE 3.0, Windows 95) "19770723164419 00002000 146.00109AKLM5823 FILE The channel definition for each channel dictates whether all correspondences or a corrected filtering subset should be reported. The filtering of reported correspondences minimizes unnecessary processing on the Web server (and connects time for the user), while retaining report information for advertising and other critical correspondences. Filters are typically set to filter "insignificant correspondences" and report only correspondences related to advertising and HTML matches, thus allowing a website to count advertising statistics and page popularity. Filters that can be used to reduce the report of insignificant correspondences include: (1) Content Filters - Content filters can be used, for example, if all ads are in the form of .gif images (graphics exchange format) . A content filter would detect and report all .gif image URLs and filter most non-.gif URLs (ie, without advertising). (2) URL Filters - URL filters can be used, for example, if all ads have URLs that contain "/ ads /" in their URL. In this way, a filter "URL containing '/ ads /'" would detect and report all correspondences with a URL that contains "/ ads /" and filter other URLs (that is, without advertising). Variations of such a URL filter can include a "Start URL" filter, an "End URL" filter or a "URL that matches a regular expression" filter, etc. The channel definition also defines under what circumstances the receiver must report usage information for that channel. For example, the recipient may report usage information for a channel at the end of an off-line examination session or on a periodic basis (overnight, weekly, monthly, etc.). These two methods are referred to as "report at the end of the session" and "periodic report", respectively. Alternatively, the usage information may be reported upon request or at any other time. A Web Broadcast channel generally contains only a subset of a Web site content. As discussed above in connection with 1 Figure 8, when a user requests access to a URL without hiding (a lack of cache memory), the content viewer 58, at the discretion of the user, can connect the receiver 26 to the Internet and access the URL directly from the server Web 1Q. This direct connection allows the Web server 10 to trace all the correspondences as it would normally do with any Internet user. In this way, the lack of cache feature of the present invention also allows a website to keep track of "clicks" ie cases where a user clicks on the link to a website that provides additional information. Ads contained within a website, for example, often contain links to a website that provides additional information about the advertised products. This is important because ad revenue is sometimes based only on the number of users who see an ad, but also on the number of users who "click" for additional information about the advertised product. By providing automatic or "no suture" access to URLs outside the channel definition, the present invention preserves this important form of advertising revenue. However, in this situation, it is desirable that the usage report does not interfere with other users of the switched connection and does not incur excessive connection charges. Using both the periodic report and the end of the session helps meet these goals. The channels are configured for use report at the end of the session when it is more important to obtain usage reports in a little before the actual time than to minimize the number of use report connections. Channels are configured for periodic reporting when it is important to minimize connection charges. The usage report can be concentrated on one connection per week by configuring all the channels for your weekly report. The usage report for all channels can also be programmed for the same time range. With a periodic report, the usage report is optimized to minimize the number of connections to the Internet. This is done by waiting as much as possible to send a usage information and incorporate usage reports to any other connection to the Internet, which can take place in the mean time. ("Incorporate" refers to sending the usage information together with other information). With periodic reporting, it is desirable to balance the content report so that the cache mappers do not overload. A receiver receives a usage report time range (for example, every night between midnight and 5 am) and, for each channel, a usage connection timeout value, indicating the maximum time that information from Use must wait before reporting. This waiting time can have, for example, a value of five days. The receiver selects a random time within the usage reporting time range, at that time, verifies whether a usage report connection should be made. A connection must be made if the usage information of any channel is older than the channel connection timeout. When such a connection is made, all pending usage information is reported. In a preferred embodiment, the receiver "incorporates" use report in the other Internet connections, upon first receiving a waiting time of incorporation and a waiting time for repetition of the use report. The receiver also maintains a usage reporting time that is either deactivated, runs or expires. The receiver monitors the Internet connection. When the receiver connects to the Internet, the receiver triggers the usage report timer for timeout after the incorporation timeout and starts the timer. When the receiver disconnects from the Internet, it deactivates the usage report timer. When the usage report timer expires, the receiver verifies if there is any use information ready to be reported and, if there is one, the receiver tries to report it. When either the report succeeds or fails, the receiver verifies the connection, and if it is still connected, the receiver triggers the usage report timer for timeout after the repetition waiting period and starts the emporizador. Thus, with a periodic report, an extra connection to the Internet for use report only occurs if the user connects to the Internet less than once during the use connection timeout value (for example, 5 days) . With report of use at the end of the session, the report usually takes place at the end of an offline examination session. If the user indicates at that time that the use should not be reported (because, for example, the telephone line is already occupied), the usage report is stored until the beginning of the next offline examination session. Thus, at the start of each offline examination session, the content viewer 58 checks if there is a usage report at the end of the session pending a previous off-line examination session. If yes, the content viewer 58 asks the user for permission to report the usage information and only allows the offline examination to begin after the permission is received and the use has been reported. Once the use has been reported at the end of the session, the content viewer 58 will immediately report any pending periodic use, as this may eliminate the need for a periodic use report connection. Figure 11 is a flow diagram illustrating the steps executed by the content viewer 58 in the preferred embodiment, for either the periodic use report and the end of the session. Once the content viewer has determined that the usage report should be initiated, determine whether the receiver 26 is already connected to the Internet (block 150). If not, it asks the user for permission to connect to the Internet to facilitate the use report (block 152). This prevents the use report from interfering with other applications of the receiver. Preferably, the content viewer 58 also starts a countdown for the user to respond. Figure 12 is an example of a dialog box used to ask the user for permission to connect to the Internet for the use report. The example in the figure also includes the optional downcount. Referring again to Figure 11, the content viewer then determines whether the user gave permission to connect (block 154). If permission was given (or if the user fails to respond within the specified time period), the content viewer 58 attempts to establish a connection to the Internet (block 156). Then, the content viewer determines if the connection was successful (block 158). If the attempt to connect fails, or if the user denies the permission to connect, the content viewer stores the usage information to report it some time later (block 160) and ends the program. If the connection was successful, the content viewer reports all pending usage information to the cache memory mapper 40 (block 162). The content viewer preferably reports the usage information in the form of a sequence of HTTP PUT or HTTP POST operations. These HTTP operations are preferable since they are almost always allowed to pass through any firewall through the Internet. However, the usage information could also be reported through e-mail, which allows the information to be transmitted in almost any kind of system. Preferably each HTTP PUT or POST operation (or transmission by e-mail) contains a multi-correspondence information block, which allows more efficient transmission of the usage information by reducing the usage report connection time. The content viewer then determines if the report was successful (block 164). If not, (for example, if the HTTP PUT fails), stores the usage information to be reported at a later time (block 166). You can also determine if there have been several reporting attempts and, if yes, you can discard the usage information (block 166). After the usage information has been stored or discarded (block 166), or if the content viewer determines that the report was successful (block 164), the content viewer is disconnected from the Internet (block 168). Alternatively, if the content viewer 58 determines that the receiver connects to the Internet (block 150), it "incorporates" all the pending usage information through the current Internet connection (block 170), as discussed above. The content viewer then determines if the report was successful (block 172). Otherwise, the content viewer either stores or discards usage information (block 174), as described above in connection with block 166. If the report was successful or after the usage information is stored or discarded , the program ends. Numerous modifications and alternative embodiments of the invention will be apparent to those skilled in the art in view of the foregoing description. According to the foregoing, this description is to be construed as illustrative only and for the purpose of teaching those skilled in the art the best mode of carrying out the invention, and the exclusive use of all modifications within is reserved. of the scope of the appended claims.

Claims (196)

  1. NOVELTY OF THE INVENTION Having described the present invention, it is considered as a novelty and therefore the property described in the following claims is claimed as property. An apparatus that transmits organized content in channels, wherein the content of a channel includes a plurality of units of URL and each unit of URL is addressed by a URL, characterized in that the system comprises: means to assign one or more addresses of selective mutation of each channel; means for programming the assembly of the content of a channel; means for assembling the content of the channel; means for fragmenting the content of the channel into packets, wherein each packet is addressed with one of the channel selective muting addresses; and means for multiplying the packages.
  2. 2. The apparatus according to claim 1, characterized in that the means for multiplying the packets includes means for transmitting the packets to a selective multicast receiver of a selective multicast network.
  3. The apparatus according to claim 1, characterized in that it further comprises means for encrypting a subset of packets of a channel before selective multicasting, wherein the cryptography encryption means either all or part of the packet and wherein the packets Each channel is encrypted with a set of encryption keys, which are unique to that channel.
  4. 4. The apparatus according to claim 3, characterized in that it further comprises: means for receiving requests to access the packets of a channel, coming from a receiver of selective multicasting; means for correlating the requested channel with the selective transmission addresses carried by the channel packets; and means to request authorization for the receiver to access the packages of the requested channel.
  5. The apparatus according to claim 4, characterized in that it further comprises means for authenticating the requests in order to ensure that the requests originate from the receiver for which access is requested.
  6. 6. The apparatus according to claim 2, characterized in that the selective multicasting network is a transmission system in digital TV, by satellite, geosynchronous.
  7. 7. The apparatus according to claim 1, characterized in that the selective multicast network is a cable TV network, with a line
  8. 8. The apparatus according to claim 1, characterized in that the selective multicast network is a network of digital video transmission (DVB).
  9. 9. The apparatus according to claim 1, characterized in that the packets are multiplied to a plurality of receivers.
  10. The apparatus according to claim 9, characterized in that the content of a channel includes the indexing of the information, which allows the URL units contained within the content of the channel to be searched quickly by the receiver receiving the content of the channel.
  11. The apparatus according to claim 10, characterized in that the content of the channel further includes a data structure containing each domain name present in the URLs of the URL units within the content of the channel.
  12. The apparatus according to claim 9, characterized in that it further comprises a conditional access system for controlling each access of the receiver to the packets, wherein each receiver can only access the packets containing the selective multicast addresses to which the conditional access system has authorized access to the receiver.
  13. 13. The apparatus according to claim 12, characterized in that the means for muting the packets is a terrestrial transmission station in digital TV, by satellite, geosynchronous.
  14. The apparatus according to claim 12, characterized in that it further comprises: means for receiving requests to obtain access to the packets of a channel, coming from the receivers, - means for correlating the requested channel with the selective multicasting addresses carried by the receivers. channel packages; and means to authorize the access of the receivers to the packets of a channel is response to the request of access of the receivers.
  15. The apparatus according to claim 13, characterized in that the content of a channel includes the indexing of the information, which allows the URL units contained within the content of the channel to be quickly searched by the receiver receiving the content of the channel, the system further comprising: means for programming a configurable number of retransmissions of the previously assembled content of the channel; means to fragment and multiply the content of the channel according to the programming; and means for specifying the transmission rate of the channel content, wherein the packets containing the channel content are multiplied at the specified rate.
  16. The apparatus according to claim 13, characterized in that it further comprises means for compressing a subset of the URL units, wherein each URL unit is compressed individually, independent of the other URL units, such that each unit The compressed URL can be decompressed without decompressing other URL units.
  17. The apparatus according to claim 16, characterized in that the URL units are compressed with a lossless data compression algorithm.
  18. 18. The apparatus according to claim 1, characterized in that it further comprises: means for programming a configurable number of retransmissions of the previously assembled content of a channel; and means to fragment and multiply the content of the channel, according to the programming.
  19. 19. The apparatus according to claim 18, characterized in that it further comprises means for specifying a transmission speed of the content of a channel, wherein the packets containing the content of the channel are multiplied at the specified speed.
  20. 20. The apparatus according to claim 19, characterized in that it further comprises: means for assigning one or more selective multicasting addresses to an announcement packet, wherein the announcement packet includes an announcement of a next transmission of the content of a channel; and means for multiplying the announcement packet before selective multicasting of packets containing the content of the channel.
  21. The apparatus according to claim 19, characterized in that the content of the channel includes a data structure containing each domain name present in the URLs of the URL units within the content of the channel.
  22. 22. The apparatus according to claim 19, characterized in that the packets are multiply to a plurality of receivers and wherein the content of a channel includes the indexing of the information, which allows the URL units contained within the content of the channel. they are quickly searched by the receiver that receives the content of the channel.
  23. The apparatus according to claim 22, characterized in that the content of the channel further includes a data structure containing each domain name present in the URLs of the URL units within the content of the channel.
  24. The apparatus according to claim 1, characterized in that the content of a channel includes a data structure containing each domain name present in the URLs of the URL units within the content of the channel.
  25. The apparatus according to claim 1, characterized in that the means for assembling the content of the channel further comprises: means for assembling a base set of the content of the channel, wherein the base set contains each URL unit in the channel; and means for assembling a delta set of channel content, wherein the delta set contains URL units that have changed or are new from the previous assembly of the base set.
  26. 26. An apparatus that transmits organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, characterized by the apparatus because it comprises: means for programming the assembly of the content of a channel; means for assembling the content of the channel; means for compressing a subset of the URL units, where each URL unit is individually compressed, independent of the other URL units, such that each compressed URL unit can be decompressed without decompressing other URL units; means for fragmenting the content of the channel into packets; and means to muidify the packets.
  27. 27. The apparatus according to claim 26, characterized in that the URL units are compressed with a lossless data compression algorithm.
  28. 28. The apparatus according to claim 26, characterized in that the means for assembling the content of the channel further comprises: means for assembling a base set of the content of the channel, wherein the base set contains each URL unit in the channel; and means for assembling a delta set of channel content, wherein the delta set contains URL units that have changed or are new from the previous assembly of the base set.
  29. 29. The apparatus according to claim 28, characterized in that the means for programming the assembly of the content of the channel comprises means for programming the assembly of the base assembly and means for programming the assembly of the delta assembly.
  30. 30. The apparatus according to claim 28, characterized in that it further comprises means for compressing the difference of a subset of the URL units in the content of a channel that occurs both in the delta set and in the previous base set.
  31. The apparatus according to claim 30, characterized in that the difference compression means further comprises: means for dividing a URL unit into sections in the delta set; and for each section, means to place ^ in a compressed version of the URL unit, one of a reference where that section can be found in the base set, or the section of the URL unit of the delta set.
  32. 32. The apparatus according to claim 28, characterized in that it further comprises means for assembling a second delta set containing a subject of the URL units which has changed or is new since the assembly of the previous delta set.
  33. The apparatus according to claim 26, characterized in that it further comprises means for encrypting a subset of packets of a channel before transmission thereof, wherein the cryptography encryption means either all or part of the packet and wherein each packet of the channel is cryptography with a set of encryption keys, which are unique to that channel.
  34. 34. An apparatus that transmits organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, characterized by the apparatus because it comprises: means for assembling a base set of content of a channel, where the base set contains each URL unit in the channel; means for fragmenting the base set into packets; means for multiplying the packages of the base set towards a plurality of receivers; means for assembling a delta set of the content of a channel, wherein the delta set contains URL units that have changed or are new from the previous assembly of the base set, - means for fragmenting the delta set into packets; and means for multiplying the packets of the delta set towards the plurality of receivers.
  35. 35. The apparatus according to claim 34, characterized in that some of the receivers comprise a personal computer.
  36. 36. The system according to claim 34, characterized in that some of the receivers comprise an upper activation box.
  37. 37. The apparatus according to claim 34, characterized in that it further comprises means for programming the assembly of base assemblies and delta assemblies, wherein the base assemblies and the delta assemblies are assembled according to the programming.
  38. 38. The apparatus according to claim 34, characterized in that it further comprises means for programming the selective mute transmission of packets of the base set and for programming the subsequent transmission of periodic selective multicasting of packets of the delta set, wherein the packets of the The base set and the packages of the delta set are divided according to the programming.
  39. 39. The apparatus according to claim 38, characterized in that the packages of the base set are programmed for transmission at a time when the receiver is not likely to be in use for other applications.
  40. 40. The apparatus according to claim 39, characterized in that the packages of the base set are * programmed for transmission very late at night or very early in the morning.
  41. 41. The apparatus according to claim 34, characterized in that it further comprises means for compressing a subset of the URL units in the base and delta assemblies, wherein each URL unit is individually compressed independently of other URL units, such as so that each compressed URL unit can be decompressed without decompressing other URL units.
  42. 42. The apparatus according to claim 41, characterized in that the URL units are compressed with a lossless data compression algorithm.
  43. 43. The apparatus according to claim 41, characterized in that it further comprises means for compressing the difference of a subset of the URL units that occur both in the delta set and in the previous base set.
  44. 44. The apparatus according to claim 43, characterized in that the means for compressing by difference further comprise: means for dividing a URL unit into the delta set into sections; and for each section, means to place in a compressed version of the UR.L unit, one of a reference of the place where that section can be found in the base set, or the section of the URL unit of the delta set.
  45. 45. The apparatus according to claim 44, characterized in that it further comprises means for compressing a subset of the URL unit previously compressed by difference with a lossless data compression algorithm.
  46. 46. The apparatus according to claim 34, characterized in that it further comprises means for assembling a second delta set containing URL units that have changed since the assembly of the previous delta set.
  47. 47. An apparatus that transmits organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, characterized by the apparatus because it comprises: means for programming the assembly of the content of a channel; means for assembling the content of the channel according to the programming; means for fragmenting the content of the channel into packets; means for multiplying the packets to a plurality of receivers, wherein each receiver stores the contents of the received channel in a receiving memory; and means for receiving usage reports from each recipient, wherein each use report identifies a subset of URL units from the stored URL units that were accessed from the receiving memory.
  48. 48. The apparatus according to claim 47, characterized in that it also comprises means for organizing the usage reports received by channel.
  49. 49. The apparatus according to claim 47, characterized in that each use report contains information that identifies a subset of URL units supplied to a Web viewer.
  50. 50. The apparatus according to claim 47, characterized in that the use reports comprise a set of files and where the UR units accessed for each channel are referenced in a set of files.
  51. 51. The apparatus according to claim 47, characterized in that the use reports contain information that identifies each unit of URL, of the URL units stored, being supplied to a Web viewer.
  52. 52. The apparatus according to claim 50, characterized in that the use report is carried out in a subset of URL units of a channel and the files contain a separate record for each time a unit of URL reported by use is supplied to a Web viewer, where the record identifies the URL of the URL unit.
  53. 53. The apparatus according to claim 52, characterized in that the register identifies when the URL unit was supplied to the Web viewer.
  54. 54. The apparatus according to claim 52, characterized in that the record contains a field that uniquely identifies the user that accesses the URL unit.
  55. 55. The apparatus according to claim 54, characterized in that the field that uniquely identifies the user does not specify the identity of the user.
  56. 56. The apparatus according to claim 54, characterized in that the field that uniquely identifies the user specifies the identity of the user.
  57. 57. The apparatus according to claim 47, characterized in that the content of a channel is assembled from a Web server and further comprises means for notifying the Web server to which a URL unit was assembled that the URL unit was accessed by a user.
  58. 58. The apparatus according to claim 57, characterized in that the Web server is notified that the URL unit was accessed by a user by notifying the Web server that the URL unit was supplied to a viewer.
  59. 59. The apparatus according to claim 57, characterized in that the Web server is notified that the URL unit was accessed when initiating an HTTP GET operation for the URL unit.
  60. 60. The apparatus according to claim 57, characterized in that the Web server is notified about multiple accesses of multiple URL units when initiating an HTTP PUT operation.
  61. 61. The apparatus according to claim 57, characterized in that the Web server is notified about multiple accesses of multiple URL units when initiating an HTTP POST operation.
  62. 62. The apparatus according to claim 57, characterized in that the Web server is notified that the URL unit was accessed by e-mail and where multiple accesses of multiple URL units are reported in an e-mail.
  63. 63. The apparatus according to claim 47, characterized in that it further comprises means for compressing a subset of the URL units.; means for compressing a subset of the URL units, wherein each URL unit is individually compressed independently of other URL units, such that each unit of compressed URL can be decompressed without decompressing other URL units.
  64. 64. A method for muting content organized into channels, where the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, characterized by the method because it comprises the steps of: assigning one or more selective multicasting addresses to each channel; schedule the assembly of the content of each channel; assemble the content of each channel according to the programming; fragmenting the content of each channel into packets, where each packet is addressed with one of the channels of selective channel merging; and transmitting the packets through a selective multicast network to a plurality of receivers.
  65. 65. The method according to claim 64, characterized in that it further comprises the encryption of a subset of packets of a channel before transmitting the packets, wherein either all or part of the packet is cryptographed and where the packets of each packet are encrypted. channel with a set of encryption keys that are unique to that channel.
  66. 66. The method according to claim 65, characterized in that it also comprises the steps of: receiving requests to access the packets of a channel, coming from the receivers; correlate the requested channel with the selective multicast addresses that carry the channel packets; and request authorization from the selective multicast network so that the receiver can access the packages of the requested channel.
  67. 67. The method according to claim 66, characterized in that it further comprises the step of authenticating the requests to ensure that the requests originate from the receiver for which access is requested.
  68. 68. The method according to claim 64, characterized in that the content of a channel includes the indexing of the information, which allows the URL units contained within the content of the channel to be searched quickly by the recipient receiving the content of the channel.
  69. 69. The method according to claim 68, characterized in that the content of the channel further includes a data structure containing each domain name present in the URLs of the URL units within the content of the channel.
  70. 70. The method according to claim 68, characterized in that the content of a channel includes the indexing of the information, which allows the URL units contained within the content of the channel to be quickly searched by the receiver receiving the content of the channel, the method further comprising the steps of: programming a configurable number of retransmissions of the previously assembled content of the channel, -specifying a transmission rate of the content of the channel; and fragment and transmit the content of the channel to the receivers according to the programming, at the specified transmission speed.
  71. 71. The method according to claim 65, characterized in that it further comprises the step of compressing a subset of the URL units, wherein each URL unit is individually compressed independently of other URL units, such that each compressed URL can be decompressed without decompressing other URL units.
  72. 72. The method according to claim 71, characterized in that the URL units are compressed with a lossless data compression algorithm.
  73. 73. The method according to claim 64, characterized in that it further comprises the steps of: programming a configurable number of retransmissions of the previously assembled content of a channel; and fragment and transmit the content of the channel to the receivers according to the programming.
  74. 74. The method according to claim 73, characterized in that it further comprises the step of specifying a transmission speed of the content of a channel, wherein the packets containing the content of the channel are transmitted at the specified rate.
  75. 75. The method according to claim 73, characterized in that it further comprises the steps of: assigning one or more selective multicasting addresses to an advertisement packet, wherein the advertisement package includes an announcement of a next transmission of the content of a channel; and transmit the announcement packet to the receivers before transmitting the packets containing the content of the channel.
  76. 76. The method according to claim 64, characterized in that the step of assembling the content of the channel further comprises: assembling a base set of the content of the channel, wherein the base set contains each unit of URL in the channel; and assembling a delta set of channel content, where the delta set contains URL units that have changed or are new from the previous assembly of the base set.
  77. 77. A method for transmitting organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, characterized by the method because it comprises the steps of: scheduling the assembly of the content of a channel; assemble the content of the channel according to the programming; compress a subset of the URL units, where each URL unit is individually compressed, independent of other URL units, so that each unit of compressed URL can be decompressed without decompressing other URL units; fragmenting the content of the channel into packets; and to fuse the packets through a selective multicast network towards a plurality of receivers.
  78. 78. The method according to claim 77, characterized in that the URL units are compressed with a lossless data compression algorithm.
  79. 79. The method according to claim 77, characterized in that the step of assembling the content of the channel further comprises the steps of: assembling a base set of the content of the channel, wherein the base set contains each unit of URL in the channel; and assemble a delta set of channel content, where the delta set contains the URL units that have changed or are new from the previous assembly of the base set.
  80. 80. The method according to claim 79, characterized in that the step of programming the assembly of the content of the channel comprises the programming of the assembly of the base assembly and the programming of the assembly of the delta assembly.
  81. 81. The method according to claim 80, characterized in that it further comprises the step of compressing by difference a subset of the URL units into the content of a channel, which is presented both in the delta set and in the previous base set.
  82. 82. The method according to claim 81, characterized in that the step of compressing by difference also comprises the steps of: dividing a unit of URL into the delta set into sections, and for each section, placing in a compressed version of the unit. URL, one of a reference of the place where that section of content can be found in the base set, or the section of the URL unit of the delta set.
  83. 83. The method according to claim 82, characterized in that the reference of the place where the URL unit section can be found in the base set is a shift from a start of the URL to a first byte and a shift to a last byte that is being referred.
  84. 84. The method according to claim 79, characterized in that it further comprises the step of assembling a second delta set containing a URL unit that has changed since the assembly of the previous delta set.
  85. 85. The method according to claim 77, characterized in that it further comprises the step of criptographing a subset of packets of a channel before its transmission, where all or part of the packets are encrypted and where each channel packet is encrypted. cryptography with a set of encryption keys that are unique to that channel.
  86. 86. A method for transmitting organized content in channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, characterized by the system because it comprises: assembling a base set of the contents of a URL. channel, where the base set contains each unit of URL in the channel; fragmenting the base set into packages; multiplying the packages of the base set towards a plurality of receivers; assemble a delta set of the content of a channel, where the delta set contains URL units that have changed or are new from the previous assembly of the base set; fragmenting the delta set into packages; and multiplying the packages of the delta set towards the plurality of receivers.
  87. 87. The method according to claim 86, characterized in that it further comprises the step of programming the assembly of base assemblies and delta assemblies, wherein the base assemblies and the delta assemblies are assembled according to the programming.
  88. 88. The method according to claim 86, characterized in that it further comprises the step of scheduling the selective multicast transmission of packets of the base set and to program the subsequent periodic selective multicast transmission of packets of the delta set, wherein the packages of the base set and the packages of the delta set are divided according to the programming. __ - _
  89. 89. The method according to claim 88, characterized in that the packages of the base set are programmed for transmission at a time when the receiver is not likely to be in use for other applications.
  90. 90. The method according to claim 86, characterized in that it further comprises the step of compressing a subset of the URL units in the base and delta assemblies, wherein each URL unit is compressed individually, independent of other URL units, in such a way that each unit of compressed URL can be decompressed without decompressing other URL units.
  91. 91. The method according to claim 90, characterized in that the URL units are compressed with a lossless data compression algorithm.
  92. 92. The method according to claim 90, characterized in that it further comprises the step of compressing by difference a subset of the URL units that are presented both in the delta set and in the previous base set.
  93. 93. The method according to claim 92, characterized in that the step of compressing by difference further comprises: dividing a URL unit into the delta set into sections; and for each section, place in a compressed version of the URL unit, one of a reference of the place where that section can be found in the base set, or the section of the URL unit of the delta set.
  94. 94. The method according to claim 93, characterized in that the reference of the place where the URL unit section can be found in the base set is a shift from a start of the URL to a first byte and a shift to a last byte that is being referred.
  95. 95. The method according to claim 93, characterized in that it further comprises compressing a subset of the URL units previously compressed by difference with a lossless data compression algorithm.
  96. 96. The method according to claim 86, characterized in that it further comprises the step of assembling a second delta set containing URL units that have changed since the assembly of the previous delta set.
  97. 97. A method for transmitting organized content in channels, wherein the content of a channel includes a plurality of URL units and each URL unit is addressed by a URL, the method comprising the steps of: scheduling the assembly of the contents of a URL. channel; assemble the content of the channel according to the program; fragmenting the content of the channel into packets; multiplying the packets to a plurality of receivers, wherein each receiver stores the content of the received channel in a receiving memory; and receiving usage reports from each recipient, wherein each use report defines a subset of URL units of the stored URL units that were accessed from the receiving memory.
  98. 98. The method according to claim 97, characterized in that it also comprises the stage of organizing the use reports received by channel.
  99. 99. The method according to claim 97, characterized in that each use report contains information identifying a subset of URL units supplied to a Web viewer
  100. 100. The method according to claim 97, characterized in that the usage reports comprise a set of files. , and where reference is made to the URL unit accessed for each channel in a set of files.
  101. 101. The method according to claim 97, characterized in that the use reports contain information that identifies each URL unit, of the URL units stored, that is supplied to a Web viewer.
  102. 102. The method according to claim 100, characterized in that it further comprises the step of executing the usage report in a subset of a channel URL unit and wherein the files contain a separate record for each time a reported URL unit of Use is supplied to a Web viewer, and where the record identifies the URL of the URL unit.
  103. 103. The method according to claim 102, characterized in that the record identifies when the URL unit was supplied to the Web viewer.
  104. 104. The method according to claim 102, characterized in that the record contains a field that uniquely identifies the user accessing the URL unit.
  105. 105. The method according to claim 104, characterized in that the field that uniquely identifies the user does not specify the identity of the user.
  106. 106. The method according to claim 104, characterized in that the field that uniquely identifies the user specifies the identity of the user.
  107. 107. The method according to claim 97, characterized in that the content or channel is assembled from a Web server and also comprises the step of notifying the Web server from which a URL unit is assembled, that the URL unit is Access by a user.
  108. 108. The method according to claim 107, characterized in that the Web server is notified that the URL unit is accessed by a user, by notifying the Web server that the URL unit is supplied to a viewer.
  109. 109. The method according to claim 107, characterized in that the Web server is notified that the URL unit is accessed when starting an HTTP GET operation for the URL unit.
  110. 110. The method according to claim 107, characterized in that the Web server is notified of multiple accesses of multiple URL units when initiating an HTTP PUT operation.
  111. 111. The method according to claim 107, characterized in that the Web server is notified of multiple accesses of multiple URL units when initiating an HTTP PUT operation.
  112. 112. The method according to claim 107, characterized in that the Web server is notified that the URL unit is accessed by e-mail, and where multiple accesses of multiple URL units are reported in an e-mail.
  113. 113. The method according to claim 97, characterized in that it further comprises the step of compressing a subset of the URL units, wherein each URL unit is individually compressed independently of the other URL units, such that each URL unit compressed it can be decompressed without decompressing other URL units.
  114. 114. A receiver for receiving a content of the selective multicast network organized into channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, and wherein the network of selective multicast transmits the content of the channel to the receiver in packets, the receiver comprising: means for determining a selective multicast address used to carry packets of a channel; means for enabling the reception of packets containing the selective multipath address of a channel; means for receiving packets containing the selective multicast address of a channel; means for assembling the received packets in the content of a channel; means for storing the content of the channel and means for allowing a user to access the content of the stored channel.
  115. 115. The receiver according to claim 114, characterized in that the received packets are totally or partially encrypted and the receiver further comprises means for decrypting the encrypted packets using a unique decryption key for the channel.
  116. 116. The receiver according to claim 114, characterized in that only the recipient is authorized to receive selected packets.
  117. 117. The receiver according to claim 114, characterized in that the content of the channel is stored in a single file.
  118. 118. The receiver according to claim 114, characterized in that the content of the channel is stored in a number of files, and where the number of files is less than the total number of URL units in the channel.
  119. 119. The receiver according to claim 114, characterized in that it also comprises means for allowing the user to designate the channels to be received.
  120. 120. The receiver according to claim 119, characterized in that it also comprises means for receiving only the channels designated by the user.
  121. 121. The receiver according to claim 120, characterized in that it also comprises means for displaying to the user a set of channels that can be received.
  122. 122. The receiver according to claim 121, characterized in that it further comprises means for receiving an electronic program guide channel, wherein the content of the electronic program guide channel includes the channel selection information, allowing the user to evaluate which channels should be receive the receiver.
  123. 123. The receiver according to claim 122, characterized in that it further comprises means for receiving updates for the electronic program guide channel.
  124. 124. The receiver according to the claim 122, characterized in that the channel selection information in the electronic program guide channel includes a schedule for when the content of the channels will be transmitted.
  125. 125. The receiver according to the claim 122, characterized in that the channel selection information in the electronic program guide channel includes an amount of memory space necessary to store the content of the channel.
  126. 126. The receiver according to claim 114, characterized in that it also comprises means for determining if all the packets for a channel have been received.
  127. 127. The receiver according to the claim 126, characterized in that the selective multicast network transmits packets to the receiver more than once and further comprises means for determining which packets for a channel were not received and assembling the missing packets of the channel from the retransmitted packets.
  128. 128. The receiver according to claim 114, characterized in that the receiver comprises a personal computer.
  129. 129. The receiver according to the claim 114, characterized in that the receiver comprises an upper activation box.
  130. 130. The receiver according to claim 114, characterized in that the receiver is integrated with a digital television.
  131. 131. The receiver according to claim 114, characterized in that it further comprises: means for determining when a URL unit requested to be accessed by the user is not present within the content of the stored channel, means for notifying the user that the URL unit requested it is not present within the content of the stored channel, and means to allow the user to access the URL unit not present through a connection to a TCP / IP network.
  132. 132. The receiver according to claim 131, characterized in that the TCP / IP network comprises the Internet.
  133. 133. The receiver according to claim 131, characterized in that it also comprises means for requesting the user if he accesses the URL unit not present through the connection to the TCP / IP network.
  134. 134. The receiver according to claim 132, characterized in that the selective merging network is a geosynchronous satellite transmission system and wherein the connection to the Internet is a dial-up modem.
  135. 135. The receiver according to claim 114, characterized in that it also comprises means for tracking each time the user accesses the URL unit in the content of the stored channel.
  136. 136. The receiver according to claim 135, characterized in that it also comprises means to report the tracked accesses of the user to a Web site, from which the accessed URL units were assembled.
  137. 137. The receiver according to claim 114, characterized in that the means receiving the packets monitor the receiving activity and selectively receive the packets based on the activity monitored.
  138. 138. The receiver according to claim 114, characterized in that it further comprises means for requesting the user to determine when the packets should be received and where the means receiving the packets selectively receive packets based on the preferences of the user.
  139. 139. A receiver for receiving a content of the selective mui tidi fusion network organized into channels, wherein the content of a channel includes a plurality of URL units and each unit of URL is addressed by a URL, and wherein the The selective multicast network transmits the content of the channel to the receiver in packets, the receiver comprising: means for determining a selective multicast address used to carry packets of a channel; means for allowing the reception of packets containing the selective multicast address of a channel; means for receiving packets containing the selective multicast address of a channel; means for assembling the received packets in the content of a channel; means for storing the content of the channel; means for allowing a user to access the content of the stored channel; and means for individually unzipping each unit of compressed URL in the content of the stored channel at a time, when the user accesses the URL unit.
  140. 140. The receiver according to the claim 139, characterized in that the URL unit is decompressed the first time the user accesses the URL unit and further comprises means for storing the decompressed URL unit.
  141. 141. The receiver according to the claim 139, characterized in that the URL unit is decompressed each time the user accesses the URL unit.
  142. 142. The receiver according to claim 139, characterized in that the selective multicast network transmits the content of a channel in the base set packets and in the delta set packets, and the means for assembling the base set packets in a set complete base and assemble the delta set packages into a complete delta set.
  143. 143. The receiver according to claim 142, characterized in that the means for storing the content of the channel stores the complete base set for the channel and the complete delta set for the channel.
  144. 144. The receiver according to claim 142, characterized in that the means for allowing a user to access the content of the stored channel provide the user with a URL unit of a delta set when the URL unit is present in a delta set and provide the user a URL unit of a base set when the URL unit is not present in a delta set.
  145. 145. A receiver in a selective multicast system, characterized in that it comprises means for receiving URL units from a selective multicast network; means for storing the received URL units; means to allow the user to access stored URL units; and means to track user access to the stored URL units.
  146. 146. The receiver according to claim 145, characterized in that the URL units are assembled from a Web site and also comprises means to report the access of the tracked user to the Web site.
  147. 147. The receiver according to the claim 145, characterized in that the tracking means includes means for counting a number of times the user accesses a subset of the stored URL units.
  148. 148. The receiver according to the claim 145, characterized in that it further comprises: means for determining when a URL unit requested to be accessed by the user is not present within the stored URL units, means for notifying the user that the requested URL unit is not present within URL units stored, and means to allow the user to access the URL unit not present through a connection to a TCP / IP network.
  149. 149. The receiver according to the claim 148, characterized in that it also comprises means for requesting the user if he accesses the URL unit not present through the connection to the TCP / IP network.
  150. 150. The receiver according to claim 148, characterized in that the selective multicast network is a geosynchronous satellite transmission system and wherein the connection to the TCP / IP network is a dial-up modem.
  151. 151. A receiver in a selective multisensing system, characterized in that it comprises: means for monitoring the receiving activity; and means for selectively receiving the content of a selective multicast network, wherein the content is selectively received based on the monitored receiving activity.
  152. 152. The receiver according to claim 151, characterized in that the monitoring means monitor whether any of other applications is currently active in the receiver.
  153. 153. The receiver according to claim 151, characterized in that the monitoring means monitor the use of a receiving memory.
  154. 154. The receiver according to claim 151, characterized in that the monitoring means monitor the activity of the user in an input device of the receiver.
  155. 155. The receiver according to claim 154, characterized in that the receiver is a personal computer and the user activity comprises keystrokes on a keyboard input device.
  156. 156. The receiver according to claim 154, characterized in that the receiver is a personal computer and the activity the user understands clicks on the mouse input device.
  157. 157. The receiver according to claim 156, characterized in that the activity the user further comprises keystrokes in a keyboard input device.
  158. 158. The receiver according to claim 151, characterized in that it further comprises means for requesting a user to specify when the content should be received and where the receiving means receive the content based on the user's specifications.
  159. 159. The receiver according to claim 158, characterized in that the user's specifications include the time of day when the content should be received.
  160. 160. The receiver according to claim 158, characterized in that the content comprises base sets and delta sets and the user's specifications include a first time period of when the base sets should be received and a second time period of when the delta sets should be received. .
  161. The receiver according to claim 151, characterized in that it further comprises means for suspending the reception of content when the monitoring means determines that the reception will interfere with another activity of the receiver.
  162. 162. The receiver according to claim 161, characterized in that it further comprises means for automatically allowing the reception of content after the monitoring means determines that the reception will not interfere with another activity of the receiver.
  163. 163. The receiver according to claim 161, characterized in that it further comprises means for automatically allowing reception at a time of the day when reception will not more likely interfere with other activity of the receiver.
  164. 164. The receiver according to claim 161, characterized in that the monitoring means determine that the reception will not interfere with another activity, by monitoring the activity of the user in an input device of the receiver.
  165. 165. The receiver according to claim 164, characterized in that the receiver is a personal computer and the user activity comprises clicks on the mouse input device.
  166. 166. A receiver in a selective transmission system, comprising: a set receiver for receiving packets containing URL units from a selective multicast network and assembling the received packets in a channel, characterized in that the channel comprises a set of URL units; a memory to store the channel; and a content viewer to allow a user to request access to and access the URL units in the stored channel.
  167. 167. The receiver according to claim 166, characterized in that it further comprises an examiner for searching the memory for the URL units requested by the user.
  168. 168. The receiver according to claim 166, characterized in that the receiver comprises a personal computer.
  169. 169. The receiver according to claim 166, characterized in that the receiver comprises an upper activation box.
  170. 170. The receiver according to claim 161, characterized in that the receiver ~ is integrated with a digital television.
  171. 171. The receiver according to claim 166, characterized in that the packets received from the selective multicast network are encrypted and the set receiver decrypts the packets.
  172. 172. A system for multiplying Web site URL units to a plurality of receivers, characterized in that it comprises: a Web search engine to retrieve the URL units of the Web sites and format the URL units retrieved in sets; a set-up subsystem for receiving the sets of the Web search machine, fragmenting the sets into packets and transmitting the packets to a selective merging network; and a conditional access system to determine to which receivers the packets are authorized to receive, wherein the selective multicast network only multicast packets to authorized receivers.
  173. 173. The system according to claim 172, characterized in that the Web search engine retrieves the URL units of the Web sites according to a predetermined channel definition.
  174. 174. The system according to claim 172, characterized in that the selective merging network multicast an electronic program guide to each receiver, and wherein the electronic program guide comprises descriptions of the websites, from which the units are retrieved. of URL.
  175. 175. The system according to claim 174, characterized in that a receiver uses the electronic program guide to subscribe to selected websites and the system further comprises a registration server to track the subscription information.
  176. 176. The system according to claim 175, characterized in that the registration server provides the subscription information to the set supply subsystem.
  177. 177. The system according to claim 172, characterized in that it also comprises a cache map matching tracker that receives the usage reports from the receivers, where the use reports contain information that identifies which units of URL, of the set of units of URLs received by the receiver, were accessed by a user.
  178. 178. The system according to claim 177, characterized in that the cache mapping tracer stores the use reports in correspondence file journals.
  179. 179. The system according to claim 178, characterized in that the cache mapping tracker provides file logs of correspondences to the Web sites, from which the URL units are retrieved.
  180. 180. The system according to claim 172, characterized in that the selective merging network multicast the packets to the receiver through a one-way high speed link.
  181. 181. The system according to claim 180, characterized in that the high speed link comprises a satellite link.
  182. 182. A system for multidirectional content merged into channels to a plurality of receivers, characterized in that the content of a channel includes a plurality of URL units of at least one Web site, comprising: a Web search engine to recover the URL units of the Web sites through a TCP / IP network and format the URL units retrieved in sets; a subsystem of supply of sets to receive the sets coming from the Web search machine and fragment the sets in packages; a conditional access system to determine to which receivers the packages are authorized to receive; and a selective multicast network for receiving packets from the set-up subsystem, where the conditional access system encrypts the packets and the selective multicast network multicast the encrypted packets to the authorized receivers, and where the receivers authorized stores the packages in a memory and decrypts the packages.
  183. 183. The system according to claim 182, characterized in that the Web search machine compresses a subset of the retrieved URL units, and wherein each URL unit is individually compressed independent of other URL content, such that the receiver You can decompress each unit of "URL without decompressing other URL units."
  184. 184. The system according to claim 182, characterized in that the Web search machine assembles a base set containing each unit URL in the channel and subsequently assembles a set. delta containing URL units that have changed or are new from the previous assembly of the base set
  185. 185. The system according to claim 180, characterized in that the Web search machine assembles the base assemblies and the delta assemblies according to a program
  186. 186. The system according to claim 184, characterized in that the selective multicast network multicasts the conjuncts. cough base and delta sets according to a program.
  187. 187. The system according to claim 186, characterized in that the base assemblies are programmed to multiply at a time when the receiver will probably not be in use for other applications.
  188. 188. The system according to claim 184, characterized in that the web search machine compresses a subset of the retrieved URL units, and wherein each URL unit is individually compressed independent of other URL content, such that the receiver You can unzip each URL unit without decompressing other URL units.
  189. 189. The system according to claim 188, characterized in that the Web search machine compresses by difference a subset of the URL units that are present in both the delta set and the previous base set.
  190. 190. The system according to claim 189, characterized in that the Web search engine performs compression by difference by: dividing a URL unit in the delta set into sections; and for each section, place in a compressed version of the URL unit, one of a reference to where that section can be found in the base set, or the section of the URL unit of the delta set.
  191. 191. The system according to claim 184, characterized in that the web search engine assembles a second delta set containing the URL unit that has changed since the assembly of the previous delta set.
  192. 192. The system according to claim 182, characterized in that each receiver comprises a content viewer to allow a user to access the stored URL units.
  193. 193. The system according to claim 192, characterized in that it also comprises a cache map matching tracker that receives the usage reports from the receivers, where the use reports contain information that identifies which units of URL, of the set of units of stored URLs, will be accessed by the user.
  194. 194. The system according to claim 193, characterized in that the cache mapping tracker provides usage reports to the Web sites, from which the accessed URL units are retrieved.
  195. 195. The system according to claim 182, characterized in that the TCP / IP network comprises the Internet.
  196. 196. The system according to claim 182, characterized in that the selective multicast network multicast the packets to the receiver through a one-way high speed link. SUMMARY A selective merger network system uses a high speed link, such as a satellite link, to multiply multimedia information from the Internet to a plurality of receivers, such as personal computers. The information of selected websites is organized into "channels" and is provided to a selective fusion network for its transmission by selective multicasting to the receivers. Updated channel information is also provided periodically. The receivers store the received channel, in such a way that a user can access the content of the Web page in the channel at the speed of the hard disk. Preferably, a conditional access system ensures that only authorized receivers receive the channels. The present invention also preferably includes a two-way connection of lower speed than the Internet (such as dial-up modem) which is used to report usage information and / or subscription information back to the Web sites. The present invention also provides automatic or "no suture" access to this connection to allow the user to retrieve any information that has not been received and stored. The receiver also manages the use of the memory space and other applications that may be active in the receiver to ensure that the reception and processing of the selective mute and merge information does not interfere with the receiver's operation.
MXPA/A/1999/010973A 1998-03-27 1999-11-26 System and method for multicasting multimedia content MXPA99010973A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09049334 1998-03-27

Publications (1)

Publication Number Publication Date
MXPA99010973A true MXPA99010973A (en) 2001-05-17

Family

ID=

Similar Documents

Publication Publication Date Title
US6351467B1 (en) System and method for multicasting multimedia content
EP2278775B1 (en) Multicasting method and apparatus
US7600120B2 (en) System for delivering media
US7996552B2 (en) Software downloading using a television broadcast channel
US7548962B2 (en) Internet multimedia advertisement insertion system selection architecture
US7734684B2 (en) Digital content delivery and viewing system and method
EP1859622B1 (en) Instantaneous media-on-demand
KR100831342B1 (en) A system for processing broadcast multimedia program content and advertisements, and a method for operating such a system
WO1997042582A9 (en) Multicasting method and apparatus
MXPA99010973A (en) System and method for multicasting multimedia content
CA2614654C (en) Methods and systems for playing media
WO2007131524A1 (en) Method of supplying data in digital television networks