WO2001095119A1 - Caching architecture for delivery of multimedia content - Google Patents

Caching architecture for delivery of multimedia content Download PDF

Info

Publication number
WO2001095119A1
WO2001095119A1 PCT/US2001/009562 US0109562W WO0195119A1 WO 2001095119 A1 WO2001095119 A1 WO 2001095119A1 US 0109562 W US0109562 W US 0109562W WO 0195119 A1 WO0195119 A1 WO 0195119A1
Authority
WO
WIPO (PCT)
Prior art keywords
objects
content source
request
distribution center
template
Prior art date
Application number
PCT/US2001/009562
Other languages
French (fr)
Inventor
Anthony F. Istvan
Original Assignee
Digeo Broadband, Inc.
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 Digeo Broadband, Inc. filed Critical Digeo Broadband, Inc.
Priority to AU2001250981A priority Critical patent/AU2001250981A1/en
Publication of WO2001095119A1 publication Critical patent/WO2001095119A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the Web is a collection of formatted hypertext pages located on numerous computers around the world that are logically connected by the Internet.
  • “the Web” has in the past been a source of primarily scientific and technical information, it is now a valuable resource for information relating to almost any subject, including business, entertainment, travel, and education, to name just a few.
  • Advances in network technology, and especially in software such as "Web browsers” software applications which provide a user interface to the Web), have made the Web accessible to a large segment of the population.
  • Web browsers software applications which provide a user interface to the Web
  • U.S. Patent 5,935,207 entitled “Method and Apparatus for Providing Remote Site Administrators with User Hits on Mirrored Web Sites," discloses a proxy server which includes a document cache for storing recently requested documents. Hence, the patent discloses a method for reducing latency by caching recently requested documents, in their entirety, at proxy servers.
  • U.S. Patent 5,935,207 also describes a relatively convoluted way to track requests for the documents. Document requests are tracked by maintaining "hit" reports at the proxy server and sending a hit report to a remote (source) site upon receiving an authenticated request for the hit report.
  • U.S. Patent 6,023,268, entitled “Reducing Latency While Downloading Objects over a Network,” discloses another method for reducing latency experienced by a client processing system when accessing the World Wide Web.
  • the client processing system is coupled to a server processing system, and the client processing system includes a processor and a read-only memory (ROM).
  • ROM read-only memory
  • a first set of objects associated with at least one Web resource is stored in the ROM in the client processing system.
  • objects associated with the Web resource is provided to the client processing system, excluding any objects represented in the first set.
  • a method and system for facilitating distribution of multimedia content to a plurality of client terminals reduces latencies in the delivery of Web and other multimedia content.
  • the method and system circumvent bandwidth bottlenecks and inconsistencies in communicating over the Internet between a content source and a distribution center.
  • bandwidth bottlenecks and inconsistencies are circumvented while providing a straightforward way to track requests ("hits") for the multimedia content.
  • a better quality of service for streaming video content e.g., fewer dropped frames and less pausing during playback
  • the multimedia content comprises a template with embedded multimedia objects.
  • the multimedia objects are divided into a first set of objects and a second set of objects.
  • the first set of objects comprise objects which are stable over a period of time and may typically include large files such as streaming video clips and graphics.
  • the second set of objects comprise objects which may change over that period of time and may typically include smaller files such as text files.
  • the first set of objects are stored in a cache system at a distribution center, and the second set of objects are stored at the content source.
  • Fig. 1 is a schematic diagram depicting a system 100 for distributing multimedia content in accordance with an embodiment of the present invention.
  • Fig. 2 is a flow chart depicting a method 200 for preparing a distribution system 100 to efficiently distribute a web page with embedded multimedia objects in accordance with an embodiment of the present invention.
  • Fig. 3 is a flow chart depicting a process 300 for propagating an update to the web page with embedded multimedia objects in accordance with an embodiment of the present invention.
  • Fig. 4 is a flow chart depicting, from the client terminal's perspective, a method 400 for retrieving and displaying the web page with embedded multimedia objects in accordance with an embodiment of the present invention.
  • Fig. 5 is a flow chart depicting a method 500 for distributing the html template for the web page in accordance with an embodiment of the present invention.
  • Fig. 6 is a flow chart depicting a method 600 for distributing embedded multimedia objects in accordance with an embodiment of the present invention.
  • Fig. 1 is a schematic diagram depicting a system 100 for distributing multimedia content in accordance with an embodiment of the present invention.
  • the system 100 includes an Internet 102, a plurality of content sources 104, a plurality of distribution centers (depicted as headends or H/E) 106, and a plurality of client terminals (depicted as set top boxes or STB) 108.
  • a cache device 110 is coupled to each of the distribution centers 106.
  • a content source 104 is depicted as receiving objects from objects feeds 112, advertisement servers 114, image sources 116, and streaming video sources 118.
  • the plurality of content sources 104 are coupled to the Internet 102.
  • a content source 104 may comprise a web site portal such as Go2Net.com, or a news web site such as CNN.com, or other types of sources.
  • Each content source 104 may have various objects feeds 112, servers 114, and sources 116/118 coupled to it.
  • news or stock quote feeds 112 may be fed into the content source 104.
  • Servers 114 may provide advertisements for insertion into multimedia content deliveredy by the content source 104.
  • Sources 116/118 may provide images 116, streaming video 118, and other content to the content source 104.
  • Various other feeds, servers and sources may also be coupled to the content source 104.
  • the Internet 102 comprises a network of networks and is well known in the art. Communications over the Internet 102 are accomplished using standard protocols such as TCP/IP (transmission control protocol/internet protocol) and other protocols.
  • the Internet 102 is coupled to the plurality of distribution centers 106.
  • a distribution center 106 may comprise a cable headend (H/E).
  • a cache or storage system 110 is coupled to each distribution center 106.
  • the cache system 110 may physically reside within the center 106.
  • the cache system 110 may comprise, for example, a storage system which stores digital objects on a disk drive array or other storage devices.
  • Each distribution center 106 is coupled to a plurality of client terminals 108.
  • a client terminal 108 may comprise a set top box (STB), a personal computer, an interactive television set, or another type of communication device.
  • STB set top box
  • personal computer a personal computer
  • interactive television set or another type of communication device.
  • Fig. 2 is a flow chart depicting a method 200 for preparing a distribution system 100 to efficiently distribute a web page with embedded multimedia objects in accordance with an embodiment of the present invention. As depicted, the method 200 includes four steps.
  • the web page with embedded multimedia objects comprises a html (hyper text markup language) template and various objects embedded therein.
  • the embedded objects include: graphics, streaming video relating to daily headlines, and "live" stock quotes or similar data or text.
  • the graphics may include, for example, logos, icons, and commonly requested stock charts.
  • a first step 202 the embedded multimedio objects are divided into two sets of objects.
  • the first step 202 may be performed well in advance to the other steps of the process 200.
  • a first set of objects may include the images described above (logos, icons, and commonly requested stock charts) and the streaming video relating to daily headlines.
  • a second set of objects may include the live stock quotes.
  • the first set of objects may typically include large files which are stable over a period of time.
  • the second set of objects may typically include small files which may change over that period of time.
  • the first set of objects is transmitted from the content source 104 to the distribution center 106.
  • the first set of objects may typically include files which are stable over a period of time.
  • the transmission may occur via the Internet 102, or alternatively via a separate communications channel or network 120.
  • the transmission does not need to occur over that stable period of time. Instead, the transmission may be performed only after the first set of objects has been changed or updated. Alternatively, the transmission may be performed periodically (for example, on a daily basis during off-peak hours).
  • the distribution center 106 receives the first set of objects from the source 104.
  • the transmission of these objects from source 104 to center 106 may occur via the Internet 102 or some alternate communications channel (for example, the alternate channel 120 illustrated in Fig. 1).
  • the first set of objects is stored at the distribution center 106.
  • the storage may be performed at the cache system 110.
  • the cache system 110 is described above in relation to Fig. 1.
  • Fig. 3 is a flow chart depicting a process 300 for propagating an update to the web page with embedded multimedia objects in accordance with an embodiment of the present invention. As depicted, the process 300 includes six steps.
  • the web page with embedded multimedia content is updated at the content source 104.
  • Such an update may be periodic (e.g., stock charts that are updated on a daily basis) or irregular (e.g., redesign of icons used in web page).
  • a fourth step 308 the changed or new objects are transmitted from the source 104 to the distribution center 106. Subsequently, in fifth 310 and sixth 312 steps these objects are received and stored at the distribution center, respectively.
  • Fig. 4 is a flow chart depicting, from the client terminal's perspective, a method 400 for retrieving and displaying the web page with embedded multimedia objects in accordance with an embodiment of the present invention. As depicted in Fig. 4, the method 400 includes six steps.
  • the client terminal 108 transmits a request for the web page.
  • the web page may be specified by a URL (universal resource locator) for the html template of the web page.
  • the request is transmitted upstream towards the appropriate content source 104.
  • the request would go through a corresponding distribution center 106 and then either through the Internet 102 or possibly another channel 120 to the content source 104.
  • this request for the html template may be fulfilled by the content source 104.
  • the client terminal 108 receives the html template of the web page in response to the request.
  • the web page has embedded multimedia objects.
  • the html template has tags or links within it which point to files for the multimedia objects.
  • a third step 406 browser or browser-like software at the client terminal 108 loads the html template and finds the tags or links within it. As just mentioned, these tags or links point to files for the multimedia objects.
  • the client terminal 108 transmits requests for the multimedia objects.
  • the files for the multimedia objects may be specified by a URL (universal resource locator).
  • the requests are transmitted upstream towards the appropriate content source 104. As described below in relation to Fig. 6, some of these requests are fulfilled by the content source 104, while other of these requests are fulfilled from the cache system 110 at a corresponding distribution center 106.
  • the client terminal 108 receives responses which include the requested files for the multimedia objects. As just mentioned, some of the responses originate at the content source 104, while other responses originate at the corresponding distribution center 106.
  • a sixth step 412 browser or browser-like software at the client terminal 108 loads the multimedia objects into the html template. This results in the entire web page, including the embedded multimedia objects, being displayed at the client terminal 108.
  • Fig. 5 is a flow chart depicting a method 500 for distributing the html template for the web page in accordance with an embodiment of the present invention. As depicted in Fig. 5, the method 500 includes eight steps.
  • the distribution center 106 receives from a client terminal 108 a http (hyper text transport protocol) message which requests the html template for the web page.
  • a software (or possibly hardware) mechanism implemented within the distribution center 106 opens the http message and examines the request.
  • another (or the same) software (or possibly hardware) mechanism implemented within the distribution center 106 determines that the html template for the web page is not stored in the cache system 110.
  • the distribution center 106 forwards the http message with the request to the appropriate content source 104. Forwarding of the http message may be accomplished by way of a routing protocol and may occur via the Internet 102 or possibly via another communications channel 120.
  • the content source 104 receives the http message which requests the html template for the web page.
  • a software (or possibly hardware) mechanism implemented within the content source 104 opens the http message and examines the request.
  • the content source 104 retrieves the html template for the web page.
  • the content source 104 transmits the html template to the client terminal 108.
  • Fig. 6 is a flow chart depicting a method 600 for distributing embedded multimedia objects in accordance with an embodiment of the present invention. As depicted in Fig. 6, the method 600 includes nine steps. The actual method 600 in Fig. 6 depicts the process for distributing a single multimedia object. For multiple objects, the method 600 must be repeated multiple times.
  • the distribution center 106 receives from a client terminal 108 a http message which requests the file of an embedded object.
  • a software (or possibly hardware) mechanism implemented within the distribution center 106 opens the http message and examines the request.
  • a third step 606 another (or the same) software (or possibly hardware) mechanism implemented within the distribution center 106 determines whether or not the file of the embedded object is not stored in the cache system 110. Generally, if the embedded object comprises an object from the first set of objects, then the object will be found to be stored in the cache system 110. On the other hand, if the embedded object comprises an object from the second set of objects, then the object will not be found to be stored in the cache system 110.
  • the first set of objects comprise objects which are stable over a period of time and may typically include large files such as streaming video clips and graphics.
  • the second set of objects comprise objects which may change over that period of time and may typically include smaller files such as text files.
  • the distribution center 106 transmits the file for the object to the client terminal 108.
  • the request for the object is fulfilled directly from the distribution center 106.
  • the method 600 ends.
  • the direct fulfillment for these objects circumvents bottlenecks and inconsistencies in bandwidth of Internet connections, so latencies are reduced in responding to the request.
  • the direct fulfillment provides a better quality of service for objects which include streaming video content (e.g., fewer dropped frames and less pausing during playback).
  • the distribution center 106 forwards the http message with the request to the appropriate content source 104. Forwarding of the http message may be accomplished by way of a routing protocol and may occur via the Internet 102 or possibly via another communications channel 120.
  • the content source 104 receives the http message which requests the file for the object.
  • a software (or possibly hardware) mechanism implemented within the content source 104 opens the http message and examines the request.
  • the content source 104 retrieves the file for the object.
  • the content source 104 transmits the file for the object to the client terminal 108.

Abstract

A method and system for facilitating distribution of multimedia content to a plurality of client terminals. The method and system reduces latencies in the delivery of Web and other multimedia content (102, 104). Advantageously, such Internet-related bandwidth bottlenecks and inconsistencies are circumvented while providing a straightforward way to track requests for the multimedia content. Moreover, a better quality of service for streaming video content (e.g., fewer dropped frames and less pausing during playback) is provided. In accordance with an embodiment of the present invention, the multimedia content comprises a template with embedded multimedia objects. The multimedia objects are divided into a first set of objects and a second set of objects. The first set of objects comprise objects which are stable over a period of time and may typically include large files such as streaming video clips and graphics (116, 118). The second set of objects comprise objects which may change over that period of time and may typically include smaller files such as text files. The first set of objects are stored in a cache system (606) at a distribution center, and the second set of objects are stored at the content source.

Description

Caching Architecture for Delivery of Multimedia Content
BACKGROUND OF THE INVENTION
The number of homes and businesses using personal computers has increased substantially in recent years, and along with this increase has come an explosion in the use of the Internet, and particularly the World-Wide Web ("the Web"). The Web is a collection of formatted hypertext pages located on numerous computers around the world that are logically connected by the Internet. Although "the Web" has in the past been a source of primarily scientific and technical information, it is now a valuable resource for information relating to almost any subject, including business, entertainment, travel, and education, to name just a few. Advances in network technology, and especially in software such as "Web browsers" (software applications which provide a user interface to the Web), have made the Web accessible to a large segment of the population. However, despite the growth in the development and use of the Web, access to the Web still has many problems and disadvantages.
One problem commonly associated with Web browsing is communications latency. People commonly experience long, frustrating delays when browsing the Web. There are many possible causes for latency, such as heavy communications traffic on the Internet, slow response of remote servers, or the need to download very large files, as in the case of many images or audio files. Such delays will be even more of a problem as more users download multimedia pages which include streaming video along with other content. Therefore, what is needed is a means for reducing such latency to eliminate some of the frustration which typically has been associated with Web browsing.
U.S. Patent 5,935,207, entitled "Method and Apparatus for Providing Remote Site Administrators with User Hits on Mirrored Web Sites," discloses a proxy server which includes a document cache for storing recently requested documents. Hence, the patent discloses a method for reducing latency by caching recently requested documents, in their entirety, at proxy servers.
U.S. Patent 5,935,207 also describes a relatively convoluted way to track requests for the documents. Document requests are tracked by maintaining "hit" reports at the proxy server and sending a hit report to a remote (source) site upon receiving an authenticated request for the hit report.
U.S. Patent 6,023,268, entitled "Reducing Latency While Downloading Objects over a Network," discloses another method for reducing latency experienced by a client processing system when accessing the World Wide Web. As disclosed in the patent, the client processing system is coupled to a server processing system, and the client processing system includes a processor and a read-only memory (ROM). A first set of objects associated with at least one Web resource is stored in the ROM in the client processing system. In response to a request by the client processing system to access a Web resource, objects associated with the Web resource is provided to the client processing system, excluding any objects represented in the first set. In addition to use of ROM, the patent also discusses use of flash memory, and states that resources cached in the flash memory can be updated from the server via the Internet or a phone connection. Hence, U.S. Patent 6,023,268 discloses reducing latency by caching resources at a client processing system.
Both of the above two patents describe ways to reduce latencies in the delivery of Web content. Nevertheless, in order to deal with ever increasing demands for bandwidth, further techniques to achieve a reduction in latencies are highly desirable.
SUMMARY OF THE INVENTION
■ A method and system for facilitating distribution of multimedia content to a plurality of client terminals. The method and system reduces latencies in the delivery of Web and other multimedia content. In particular, the method and system circumvent bandwidth bottlenecks and inconsistencies in communicating over the Internet between a content source and a distribution center. Advantageously, such Internet-related bandwidth bottlenecks and inconsistencies are circumvented while providing a straightforward way to track requests ("hits") for the multimedia content. Moreover, a better quality of service for streaming video content (e.g., fewer dropped frames and less pausing during playback) is provided.
In accordance with an embodiment of the present invention, the multimedia content comprises a template with embedded multimedia objects. The multimedia objects are divided into a first set of objects and a second set of objects. The first set of objects comprise objects which are stable over a period of time and may typically include large files such as streaming video clips and graphics. The second set of objects comprise objects which may change over that period of time and may typically include smaller files such as text files. The first set of objects are stored in a cache system at a distribution center, and the second set of objects are stored at the content source.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 is a schematic diagram depicting a system 100 for distributing multimedia content in accordance with an embodiment of the present invention.
Fig. 2 is a flow chart depicting a method 200 for preparing a distribution system 100 to efficiently distribute a web page with embedded multimedia objects in accordance with an embodiment of the present invention.
Fig. 3 is a flow chart depicting a process 300 for propagating an update to the web page with embedded multimedia objects in accordance with an embodiment of the present invention.
Fig. 4 is a flow chart depicting, from the client terminal's perspective, a method 400 for retrieving and displaying the web page with embedded multimedia objects in accordance with an embodiment of the present invention.
Fig. 5 is a flow chart depicting a method 500 for distributing the html template for the web page in accordance with an embodiment of the present invention.
Fig. 6 is a flow chart depicting a method 600 for distributing embedded multimedia objects in accordance with an embodiment of the present invention.
DESCRIPTION OF THE SPECIFIC EMBODIMENTS
Fig. 1 is a schematic diagram depicting a system 100 for distributing multimedia content in accordance with an embodiment of the present invention. The system 100 includes an Internet 102, a plurality of content sources 104, a plurality of distribution centers (depicted as headends or H/E) 106, and a plurality of client terminals (depicted as set top boxes or STB) 108. A cache device 110 is coupled to each of the distribution centers 106. In addition, a content source 104 is depicted as receiving objects from objects feeds 112, advertisement servers 114, image sources 116, and streaming video sources 118.
The plurality of content sources 104 are coupled to the Internet 102. For example, a content source 104 may comprise a web site portal such as Go2Net.com, or a news web site such as CNN.com, or other types of sources. Each content source 104 may have various objects feeds 112, servers 114, and sources 116/118 coupled to it.
For example, news or stock quote feeds 112 may be fed into the content source 104. Servers 114 may provide advertisements for insertion into multimedia content deliveredy by the content source 104. Sources 116/118 may provide images 116, streaming video 118, and other content to the content source 104. Various other feeds, servers and sources may also be coupled to the content source 104.
The Internet 102 comprises a network of networks and is well known in the art. Communications over the Internet 102 are accomplished using standard protocols such as TCP/IP (transmission control protocol/internet protocol) and other protocols. The Internet 102 is coupled to the plurality of distribution centers 106. For example, a distribution center 106 may comprise a cable headend (H/E).
A cache or storage system 110 is coupled to each distribution center 106. The cache system 110 may physically reside within the center 106. The cache system 110 may comprise, for example, a storage system which stores digital objects on a disk drive array or other storage devices.
Each distribution center 106 is coupled to a plurality of client terminals 108. For example, a client terminal 108 may comprise a set top box (STB), a personal computer, an interactive television set, or another type of communication device.
In alternative or in addition to the Internet 102 being used to distribute multimedia content from the content sources 104 to distribution centers 106, communications channels or networks 120 apart from the Internet 102 may couple one or more content source 104 to one or more distribution center 106. One example of such an alternate path for communications is illustrated in Fig. 1. Other configurations are also possible and meant to be included within the scope of the present invention. Fig. 2 is a flow chart depicting a method 200 for preparing a distribution system 100 to efficiently distribute a web page with embedded multimedia objects in accordance with an embodiment of the present invention. As depicted, the method 200 includes four steps.
The web page with embedded multimedia objects comprises a html (hyper text markup language) template and various objects embedded therein. As an example, consider the embedded objects to include: graphics, streaming video relating to daily headlines, and "live" stock quotes or similar data or text. The graphics may include, for example, logos, icons, and commonly requested stock charts.
In a first step 202, the embedded multimedio objects are divided into two sets of objects. The first step 202 may be performed well in advance to the other steps of the process 200.
In the example being considered, a first set of objects may include the images described above (logos, icons, and commonly requested stock charts) and the streaming video relating to daily headlines. A second set of objects may include the live stock quotes. The first set of objects may typically include large files which are stable over a period of time. The second set of objects may typically include small files which may change over that period of time.
In a second step 204, the first set of objects is transmitted from the content source 104 to the distribution center 106. As described above, the first set of objects may typically include files which are stable over a period of time. The transmission may occur via the Internet 102, or alternatively via a separate communications channel or network 120.
Since the first set of objects may generally include files which are stable over a period of time, the transmission does not need to occur over that stable period of time. Instead, the transmission may be performed only after the first set of objects has been changed or updated. Alternatively, the transmission may be performed periodically (for example, on a daily basis during off-peak hours).
In a third step 206, the distribution center 106 receives the first set of objects from the source 104. The transmission of these objects from source 104 to center 106 may occur via the Internet 102 or some alternate communications channel (for example, the alternate channel 120 illustrated in Fig. 1).
In a fourth step 208, the first set of objects is stored at the distribution center 106. The storage may be performed at the cache system 110. The cache system 110 is described above in relation to Fig. 1.
Fig. 3 is a flow chart depicting a process 300 for propagating an update to the web page with embedded multimedia objects in accordance with an embodiment of the present invention. As depicted, the process 300 includes six steps.
In a first step 302 in the process 300 of Fig. 3, the web page with embedded multimedia content is updated at the content source 104. Such an update may be periodic (e.g., stock charts that are updated on a daily basis) or irregular (e.g., redesign of icons used in web page).
In a second step 304, a determination is made as to whether the update 302 has changed or added new objects to the first set of objects. If the first set of objects has not been changed or added to, then in a third step 306 the updating process ends.
On the other hand, if the first set of objects has been changed or added to, then in a fourth step 308 the changed or new objects are transmitted from the source 104 to the distribution center 106. Subsequently, in fifth 310 and sixth 312 steps these objects are received and stored at the distribution center, respectively.
Fig. 4 is a flow chart depicting, from the client terminal's perspective, a method 400 for retrieving and displaying the web page with embedded multimedia objects in accordance with an embodiment of the present invention. As depicted in Fig. 4, the method 400 includes six steps.
In a first step 402, the client terminal 108 transmits a request for the web page. In the request, the web page may be specified by a URL (universal resource locator) for the html template of the web page. The request is transmitted upstream towards the appropriate content source 104. For example, in the system 100 depicted in Fig. 1, the request would go through a corresponding distribution center 106 and then either through the Internet 102 or possibly another channel 120 to the content source 104. As described below in relation to Fig. 5, this request for the html template may be fulfilled by the content source 104.
In a second step 404, the client terminal 108 receives the html template of the web page in response to the request. In this case, the web page has embedded multimedia objects. The html template has tags or links within it which point to files for the multimedia objects.
In a third step 406, browser or browser-like software at the client terminal 108 loads the html template and finds the tags or links within it. As just mentioned, these tags or links point to files for the multimedia objects.
Subsequently, in a fourth step 408, the client terminal 108 transmits requests for the multimedia objects. In the request, the files for the multimedia objects may be specified by a URL (universal resource locator). The requests are transmitted upstream towards the appropriate content source 104. As described below in relation to Fig. 6, some of these requests are fulfilled by the content source 104, while other of these requests are fulfilled from the cache system 110 at a corresponding distribution center 106.
In a fifth step 410, the client terminal 108 receives responses which include the requested files for the multimedia objects. As just mentioned, some of the responses originate at the content source 104, while other responses originate at the corresponding distribution center 106.
Finally, in a sixth step 412, browser or browser-like software at the client terminal 108 loads the multimedia objects into the html template. This results in the entire web page, including the embedded multimedia objects, being displayed at the client terminal 108.
Fig. 5 is a flow chart depicting a method 500 for distributing the html template for the web page in accordance with an embodiment of the present invention. As depicted in Fig. 5, the method 500 includes eight steps.
In a first step 502, the distribution center 106 receives from a client terminal 108 a http (hyper text transport protocol) message which requests the html template for the web page. In a second step 504, a software (or possibly hardware) mechanism implemented within the distribution center 106 opens the http message and examines the request. Subsequently, in a third step 506, another (or the same) software (or possibly hardware) mechanism implemented within the distribution center 106 determines that the html template for the web page is not stored in the cache system 110. Hence, in a fourth step 508, the distribution center 106 forwards the http message with the request to the appropriate content source 104. Forwarding of the http message may be accomplished by way of a routing protocol and may occur via the Internet 102 or possibly via another communications channel 120.
In a fifth step 510, the content source 104 receives the http message which requests the html template for the web page. In a sixth step 512, a software (or possibly hardware) mechanism implemented within the content source 104 opens the http message and examines the request. In a seventh step 514, the content source 104 retrieves the html template for the web page. Finally, in an eighth step 516, the content source 104 transmits the html template to the client terminal 108.
Fig. 6 is a flow chart depicting a method 600 for distributing embedded multimedia objects in accordance with an embodiment of the present invention. As depicted in Fig. 6, the method 600 includes nine steps. The actual method 600 in Fig. 6 depicts the process for distributing a single multimedia object. For multiple objects, the method 600 must be repeated multiple times.
In a first step 602, the distribution center 106 receives from a client terminal 108 a http message which requests the file of an embedded object. In a second step 604, a software (or possibly hardware) mechanism implemented within the distribution center 106 opens the http message and examines the request.
Subsequently, in a third step 606, another (or the same) software (or possibly hardware) mechanism implemented within the distribution center 106 determines whether or not the file of the embedded object is not stored in the cache system 110. Generally, if the embedded object comprises an object from the first set of objects, then the object will be found to be stored in the cache system 110. On the other hand, if the embedded object comprises an object from the second set of objects, then the object will not be found to be stored in the cache system 110. As describe above, the first set of objects comprise objects which are stable over a period of time and may typically include large files such as streaming video clips and graphics. The second set of objects comprise objects which may change over that period of time and may typically include smaller files such as text files.
If the file for the object is found in the cache system 110, then in a fourth step 608 the distribution center 106 transmits the file for the object to the client terminal 108. The request for the object is fulfilled directly from the distribution center 106. In this case, after the fourth step 608, the method 600 ends.
Advantageously, the direct fulfillment for these objects circumvents bottlenecks and inconsistencies in bandwidth of Internet connections, so latencies are reduced in responding to the request. Moreover, the direct fulfillment provides a better quality of service for objects which include streaming video content (e.g., fewer dropped frames and less pausing during playback).
Otherwise, if the file for the object is not found in the cache system 110, then in a fifth step 610 the distribution center 106 forwards the http message with the request to the appropriate content source 104. Forwarding of the http message may be accomplished by way of a routing protocol and may occur via the Internet 102 or possibly via another communications channel 120. In this case, in a sixth step 612, the content source 104 receives the http message which requests the file for the object. In a seventh step 614, a software (or possibly hardware) mechanism implemented within the content source 104 opens the http message and examines the request. In an eighth step 616, the content source 104 retrieves the file for the object. Finally, in a ninth step 618, the content source 104 transmits the file for the object to the client terminal 108.
While specific embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise configuration and components disclosed herein and that various modifications, changes, and variations which will be apparent to those skilled in the art may be made in the arrangement, operation, and details of the methods and system of the present invention disclosed herein without departing from the spirit and scope of the invention as defined in the following claims.

Claims

WHAT IS CLAIMED IS:
L A method for facilitating distribution of a template with embedded multimedia objects, divided into a first set of objects and a second set of objects, the method comprising: receiving the first set of objects from a content source; storing the first set of objects in a cache system; receiving a request for the template from a client terminal; forwarding the request for the template to the content source; receiving requests for the embedded multimedia objects from said client terminal; examining each said request to determine whether the object requested is stored in the cache system; if the object requested is stored in the cache system, then transmitting the object requested to said client terminal to fulfill said request; and if the object requested is absent from the cache system, then forwarding said request to the content source.
2. The method of claim 1, wherein the template comprises a html file.
3. The method of claim 1 , wherein the first set of obj ects comprises objects which are stable over a period of time, and wherein the second set of objects comprises objects which may change over the period of time.
4. The method of claim 3, wherein the first set of objects include streaming video clips.
5. The method of claim 3 , wherein the first set of obj ects include graphics files.
6. The method of claim 3, wherein the period of time comprises a day.
7. The method of claim 1 , where the method is performed at a distribution center which is coupled between a plurality of content sources and a plurality of client terminals .
8. The method of claim 7, where the distribution center comprises a headend in a cable distribution system.
9. The method of claim 1, where the client terminal comprises an interactive television.
10. The method of claim 9, where the interactive television comprises a set-top box.
11. The method of claim 1 , where the content source comprises a web site.
12. A system for facilitating distribution of a template with embedded multimedia objects, divided into a first set of objects and a second set of objects, the system comprising: a plurality of client terminals; a plurality of distribution centers coupled to the plurality of client terminals; and a content source coupled to the plurality of distribution centers, wherein each distribution center receives the first set of objects from the content source; wherein each distribution center stores the first set of objects in a cache system; wherein a distribution center receives a request for the template from a client terminal; wherein the distribution center forwards the request for the template to the content source; wherein the distribution center receives requests for the embedded multimedia objects from said client terminal; wherein the distribution center examines each said request to determine whether the obj ect requested is stored in the cache system; wherein if the object requested is stored in the cache system, then the distribution center transmits the object requested to said client terminal to fulfill said request; and wherein if the object requested is absent from the cache system, then the distribution center forwards said request to the content source.
13. The system of claim 12, wherein the content source is coupled to the plurality of distribution centers by way of an Internet.
14. The system of claim 12, wherein the content source is able to track requests for the multimedia objects by tracking requests for the template.
PCT/US2001/009562 2000-06-08 2001-03-23 Caching architecture for delivery of multimedia content WO2001095119A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001250981A AU2001250981A1 (en) 2000-06-08 2001-03-23 Caching architecture for delivery of multimedia content

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US59048000A 2000-06-08 2000-06-08
US09/590,480 2000-06-08

Publications (1)

Publication Number Publication Date
WO2001095119A1 true WO2001095119A1 (en) 2001-12-13

Family

ID=24362437

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/009562 WO2001095119A1 (en) 2000-06-08 2001-03-23 Caching architecture for delivery of multimedia content

Country Status (2)

Country Link
AU (1) AU2001250981A1 (en)
WO (1) WO2001095119A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102419765A (en) * 2011-11-01 2012-04-18 无敌科技(西安)有限公司 Embedded-type device for smoothly storing data to universal file system and method for smoothly storing data to universal file system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5710918A (en) * 1995-06-07 1998-01-20 International Business Machines Corporation Method for distributed task fulfillment of web browser requests
US6195692B1 (en) * 1997-06-02 2001-02-27 Sony Corporation Television/internet system having multiple data stream connections

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5710918A (en) * 1995-06-07 1998-01-20 International Business Machines Corporation Method for distributed task fulfillment of web browser requests
US6195692B1 (en) * 1997-06-02 2001-02-27 Sony Corporation Television/internet system having multiple data stream connections

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102419765A (en) * 2011-11-01 2012-04-18 无敌科技(西安)有限公司 Embedded-type device for smoothly storing data to universal file system and method for smoothly storing data to universal file system
CN102419765B (en) * 2011-11-01 2013-07-17 无敌科技(西安)有限公司 Embedded-type device for smoothly storing data to universal file system and method for smoothly storing data to universal file system

Also Published As

Publication number Publication date
AU2001250981A1 (en) 2001-12-17

Similar Documents

Publication Publication Date Title
KR100324974B1 (en) Internet convolution audio/video server
US6298373B1 (en) Local service provider for pull based intelligent caching system
KR100540495B1 (en) A method and apparatus for compressing a continuous, indistinct data stream
US7092997B1 (en) Template identification with differential caching
US6338094B1 (en) Method, device and system for playing a video file in response to selecting a web page link
US7558837B1 (en) Method and system for redirecting an electronic content request to an alternate content transport mechanism or storage site
JP4693988B2 (en) System and method for delivering web content over broadcast media
KR100300494B1 (en) Method and apparatus for precaching data at a server
US6917960B1 (en) Intelligent content precaching
US8312074B2 (en) Method for multipart encoding
US20040193648A1 (en) Distributed on-demand media transcoding system and method
US20110140937A1 (en) Distributed on-demand media transcoding system and method
KR20010111380A (en) An internet service apparatus and service method
JPH10247945A (en) Method and device for mapping uniform resource locator into broadcasting address in television signal
WO2003042855A1 (en) System for reducing server loading during content delivery
US20060168349A1 (en) System and method for enhancing network browsing speed by setting a proxy server on a handheld device
US20040039788A1 (en) Relaying system for broadcasting multi-channel internet television and networking method thereof
KR20000050255A (en) Internet broadcasting system and method using the technique of overlayed playing video contents and dynamically combined advertisement
US20130041970A1 (en) Client side caching
US20210409290A1 (en) Unique user session tracking in adaptive bitrate video delivery
CN115297095B (en) Back source processing method, device, computing equipment and storage medium
WO2001095119A1 (en) Caching architecture for delivery of multimedia content
Appliance Internet content adaptation protocol (icap)
WO2002029642A2 (en) Replacement of requested data with equivalent data
KR100375797B1 (en) Method for website advertising agency by using CDD server

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP