throbber
(12) United States Patent
`Kenner et al.
`
`USOO6421726B1
`(10) Patent No.:
`US 6,421,726 B1
`(45) Date of Patent:
`*Jul. 16, 2002
`
`(54) SYSTEM AND METHOD FOR SELECTION
`AND RETRIEVAL OF DIVERSE TYPES OF
`VIDEO DATA ON A COMPUTER NETWORK
`
`(75)
`
`(73)
`
`Inventors: Brian Kenner, Encinitas; Kenneth W.
`Colby, San Diego; Lonnie J. Brownell,
`Encinitas; Guy P. Weathersby, San
`Diego, all of CA (US)
`ASSignee: Akamai Technologies, Inc., Cambridge,
`MA (US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`Notice:
`
`This patent is Subject to a terminal dis
`claimer.
`
`(21)
`(22)
`
`(60)
`
`(51)
`(52)
`(58)
`
`(56)
`
`Appl. No.:
`09/039,077
`Mar. 1, 1998
`Filed:
`Related U.S. Application Data
`Provisional application No. 60/039,086, filed on Mar. 14,
`1997.
`Int. Cl." ........................ G06F 15/173; G06F 15/16
`U.S. Cl. ........................ 709/225; 709/224; 709/219
`Field of Search ................................. 709/250, 245,
`709/244, 238, 235, 226, 228, 227, 224,
`219, 217, 105, 225; 707/5, 104.1; 34.5/716,
`717; 72.5/115
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`5,488,609 A * 1/1996 Hluychyi et al. ........... 370/232
`5,490.203 A * 2/1996 Jain et al. ............
`... 455/435
`5,504.837. A * 4/1996 Griffeth et al. ............... 706/10
`5,557,790 A
`9/1996 Bingham et al.
`5,574,903 A * 11/1996 Szymanski et al. ............ 707/1
`5,655,117 A * 8/1997 Goldberg et al. ........... 395/613
`5,737.495 A
`4/1998 Adams et al. ................. 707/5
`5,793,966 A * 8/1998 Amstein et al.
`... 709/203
`5,809,282 A * 9/1998 Cooper et al. .............. 395/500
`
`
`
`5,812,529 A * 9/1998 Czarnik et al. ............. 370/245
`(List continued on next page.)
`FOREIGN PATENT DOCUMENTS
`
`EP
`EP
`WO
`WO
`WO
`WO
`
`O384 339 A 8/1990
`O 674 259 A 9/1995
`91/11874
`* 8/1991
`95/26114
`* 9/1995
`96/09714
`* 3/1996
`97/37500
`* 10/1997
`
`OTHER PUBLICATIONS
`Baentsch, M. et al. “Introducing application-level replica
`tion and naming into today's Web, Computer Networks and
`ISDN Systems, vol. 28, No. 11 (May 1996).
`Meyer, T., et al., “WAXweb: a MOO-based collaborative
`hypermedia system for WWW,” Computer Newtworks and
`ISDN Systems, vol. 28, No. 1 (Dec. 1995).
`(List continued on next page.)
`Primary Examiner Zarni Maung
`ASSistant Examiner Jason D. Cardone
`(74) Attorney, Agent, or Firm-David H. Judson
`(57)
`ABSTRACT
`A system and method for the selection and retrieval of
`various types of video data from distributed delivery sites
`calls for the deployment of “Smart Mirror” sites throughout
`a network, each of which maintains a copy of certain data
`managed by the system. Each “Smart Mirror” site maintains
`copies of the data in Several alternative file formats. Every
`user is assigned to a specific delivery site based on an
`analysis of network performance with respect to each of the
`available delivery sites. Generalized network performance
`data is collected and Stored to facilitate the Selection of
`additional delivery sites and to ensure the preservation of
`improved performance in comparison to traditional net
`WorkS. The appropriate file format is automatically Selected
`based on the capabilities of a user terminal making a request
`for data.
`
`4 Claims, 5 Drawing Sheets
`
`AO
`
`42
`
`N
`
`46
`/
`
`Retrieve
`Delivery Site
`le
`
`Contected?
`
`Y
`- --
`Perform
`ests
`
`48
`
`/
`
`* -
`Collect and
`Process Resus
`-
`
`50
`
`Determine
`Best elivery
`Se
`
`l
`
`se
`
`Send Results
`to RSP
`
`5
`
`kicke
`Connection
`
`1 - ?
`
`Save
`Configurction
`information
`
`VIDEOLABS, INC.
`EX2006
`NETFLIX, INC. v. VIDEOLABS, INC.
`IPR2023-00628
`
`

`

`US 6,421,726 B1
`Page 2
`
`U.S. PATENT DOCUMENTS
`5,832,221. A 11/1998 Jones ......................... 709/206
`5,918,012 A * 6/1999 Astiz et al. ...
`395/200.47
`5,951,694. A * 9/1999 Choquier et al.
`... 714/15
`5.956,716 A * 9/1999 Kenner et al.
`... 707/10
`5.974.441. A * 10/1999 Rogers et al.
`... 709/200
`5.991,809 A * 11/1999 Kriegsman ...
`... 709/226
`6,003,030 A * 12/1999 Kenner et al.
`... 707/10
`6,115,752 A * 9/2000 Chauhan .......
`... 709/241
`6,167,122 A * 12/2000 Titmuss et al.
`... 379/93.15
`6,173,322 B1
`1/2001 Hu ............................. 709/224
`
`
`
`6,178.460 B1 * 1/2001 Maddalozzo et al. ....... 709/239
`OTHER PUBLICATIONS
`Braun, H. et al., “Web traffic characterization: an assessment
`of the impact of caching documents from NCSA's web
`server, Computer Networks and ISDN Systems, vol. 28, No.
`1 (Dec. 1995).
`“CyberMedia Oil Change software: How it works' Business
`Wire May 14, 1996.
`* cited by examiner
`
`

`

`U.S. Patent
`
`Jul. 16, 2002
`
`Sheet 1 of 5
`
`US 6,421,726 B1
`
`32
`
`MSP
`
`22
`
`30
`
`Delivery
`Site
`
`24
`
`Content
`Provider
`
`
`
`Content
`Provider
`
`28
`
`Delivery
`Site
`
`10
`
`26
`
`
`
`Delivery
`
`14
`
`SP
`
`18
`
`SP
`
`16
`
`
`
`54
`
`User
`Terminol
`
`20
`
`User
`Terminol
`
`38
`
`56
`
`Fig. 1
`
`
`
`
`
`
`
`12
`
`
`
`
`
`
`
`User
`Terminol
`Configuration
`Utility
`
`110
`112 CODEC 1
`CODEC 2
`1. CODEC 3
`Player Progrom
`
`
`
`Browser
`
`

`

`U.S. Patent
`
`Jul. 16, 2002
`
`Sheet 2 of 5
`
`US 6,421,726 B1
`
`40
`
`Retrieve
`Delivery Site
`File
`
`Fig 2
`
`42
`
`
`
`44
`
`Connected?
`
`Moke
`Connection
`
`Perform
`Tests
`
`
`
`Collect ond
`Process Results
`
`Determine
`Best Delivery
`Site
`
`Send Results
`to MSP
`
`52
`
`54
`
`SOve
`Configuration
`information
`
`

`

`U.S. Patent
`
`Jul. 16, 2002
`
`Sheet 3 of 5
`
`US 6,421,726 B1
`
`N
`
`N
`
`Prevent 98
`Transfer
`
`Show 100
`Bitmop
`
`60
`
`Y
`
`92
`
`Get Clip 94
`from
`Content Provider
`
`96
`
`Ploy Clip
`
`--
`
`Y
`Stop
`T
`Se
`
`2
`
`Extract 64
`Rating info
`
`66
`
`70
`
`N
`
`Rating
`Exist?
`Y
`Roting
`OK?
`
`Y
`
`Prevent 88
`Tronsfer
`
`
`
`74
`
`Clip
`On Disk?
`
`N
`Creote 18
`URL
`
`Most
`
`N
`Discord
`Clip
`
`5
`
`-
`FIQ.
`
`68
`
`72
`
`Y
`
`Ploy Clip
`
`
`
`84
`Move to
`Next Site
`N
`80
`Y
`Get Clip <CD
`
`
`
`Store 102
`Clip
`
`104
`Monage
`Doto Area
`
`Send 106
`Results to
`MSP
`
`108
`
`Play
`Clip
`
`

`

`U.S. Patent
`
`Jul. 16, 2002
`
`Sheet 4 of 5
`
`US 6,421,726 B1
`
`120
`Lood Page
`
`122
`tood Script
`
`124
`Check CODEC
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Fig. 4
`
`128
`Creote URL
`
`130
`Modify URL
`
`152
`Downlood Clip
`
`134
`Ploy Clip
`
`142
`Select CODEC
`
`144
`Download
`CODEC
`
`
`
`146
`instol CODEC
`
`

`

`U.S. Patent
`
`Jul. 16, 2002
`
`Sheet 5 of 5
`
`US 6,421,726 B1
`
`160
`Lood Poge
`
`161
`Lood Script
`
`
`
`
`
`
`
`
`
`
`
`Retrieve 176
`Porometers
`
`178
`Check CODEC
`
`
`
`3D Redirector
`
`184
`Check for
`
`N
`
`Fig. 5
`
`Downlood
`Plug-in
`
`instol
`Plug-In
`
`
`
`
`
`186
`
`GD Creote URL
`
`190
`
`188
`Prompt User
`
`192
`Modify URL
`
`N
`
`198
`Prompt User
`
`
`
`Y
`
`Foil
`
`208
`
`194
`Download Clip
`
`206
`instol
`CODEC
`
`
`
`204
`Download
`CODEC
`
`202
`Select CODEC
`
`196
`Play Clip
`
`

`

`1
`SYSTEMAND METHOD FOR SELECTION
`AND RETRIEVAL OF DIVERSE TYPES OF
`VIDEO DATA ON A COMPUTER NETWORK
`
`This application claims priority under 35 U.S.C. S 119(e)
`from Provisional Application No. 60/039,086 filed on Mar.
`14, 1997.
`The invention relates to a system and method for dis
`tributed data Storage and retrieval, and more particularly, to
`a System and method whereby a user can acquire network
`performance information for a dynamic and distributed
`multipurpose network, and use this information to identify
`and Select optimum delivery sites or Servers from which to
`receive computer data, Specifically multimedia content, as
`well as to Select the particular type of multimedia content
`viewable by the user. Such delivery sites, servers, and
`content type are Selected So as to increase network capacity,
`distribute Server load, reduce transmission delays between
`the Server and the user, and reduce obstacles to viewing the
`multimedia content.
`
`15
`
`BACKGROUND OF THE INVENTION
`The Internet is a loose network of connected computers
`Spread throughout the World. A message can be sent from
`any computer on the Internet to any other by Specifying a
`destination address and passing the message from computer
`to computer via a Series of “hops. Each computer, router, or
`“node' on the Internet has a unique Internet address. When
`an intermediate computer or router receives a message in
`transit, the computer checks the intended destination of the
`message and passes it along accordingly.
`The Internet is growing, in terms of both size and
`Sophistication, at a rapid rate. In the past, most users of the
`Internet were academic, research, or institutional users; the
`Internet was primarily used at that time to transmit and
`receive electronic mail and network news and to allow
`transfer of computer files. However, Since the introduction
`of the World Wide Web (also known as the “Web” or the
`“WWW) several years ago, the Internet has begun to host
`increasing amounts of other types of data of general interest,
`namely representations of images, articles, etc.
`The Web protocol and language establish a graphical
`means to navigate the expanses of the Internet. “Web pages,”
`often consisting primarily of text and graphical material, are
`stored on numerous computers, known as “Web servers,”
`throughout the Internet. A Software program known as a
`“browser can be used to acceSS and View Web pages acroSS
`the Internet by Specifying the location (i.e. Internet address)
`of the desired Web page. When a Web page is accessed, its
`information is transmitted from the remote computer (server
`or delivery site), wherever in the world it may be located,
`acroSS the Internet, to the user.
`In recent times, the Web has begun to host highly sophis
`ticated types of multimedia content, Such as audio and Video
`data, and computer Software. Compared to first generation
`Web content, namely text and Still images, audio clips, Video
`clips, and Software programs have extremely high Storage
`and bandwidth requirements.
`Before a Video clip can be transmitted over a computer
`network, the clip must be digitized by encoding the Video's
`analog signal to “1s” and “Os.” In order to reduce the
`bandwidth required to transmit the digitized video, the video
`data Stream is frequently compressed. Video compression is
`a process by which redundant data is eliminated from the
`Video data Stream So that the overall Size of the data Stream
`is reduced. There are many different compression formats
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,421,726 B1
`
`2
`which are used to reduce video data Streams, e.g., MPEG,
`JPEG, H.261, Indeo, Cinepak, AVI, Quicktime, TrueMotion
`and Wavelet.
`Video clips received in a compressed format generally S
`must be decompressed before they can be viewed. Decom
`pression of a Video is commonly performed by a Video
`player “CODEC program, or COmpressor/DECompressor,
`often located at a user's multimedia terminal. Generally
`Speaking, a single CODEC program can only recognize and
`decompress a single compression format.
`When a video clip is stored for transmission in a format
`which can be decompressed by the CODEC at a user
`terminal, delivery of the Video clip to the user can proceed
`Smoothly. This is typically the Situation where a Subscription
`Service provides Video delivery over a confined network.
`The Service provides a Subscribing user with a preferred
`CODEC, and stores video clips in the compression format
`recognized by the provided CODEC.
`However, when a Service begins to make Video clips
`available over the Internet, it is more likely that the video
`clips will be requested by a non-Subscribing user whose
`multimedia terminal does not have the Service provider's
`preferred CODEC. In this case, if the user wishes to view the
`Video clips, he would be required to acquire or download a
`CODEC program capable of decompressing the desired
`video clip. Like video clip files, CODEC program files can
`be large files that take a long time to download. Moreover,
`a CODEC program can be difficult, time-consuming, or
`inconvenient to install onto the multimedia terminal. If a
`user is forced to download a CODEC program before he can
`play a Video file, he may be discouraged from pursuing that
`particular video request any further.
`At present, it is difficult, if not impossible, to provide
`Sustained high-Speed transmission of large audio/video files
`over a multi-node link on the Internet. Because the data is
`often transferred from afar, many factors can cause the delay
`or even loSS of parts or all of a transmission. It is generally
`not critical if a user experiences minor delays in receiving
`Small graphic or text files. However, it is recognized that
`real-time data Such as Video has very Specific and Stringent
`timing requirements for data transfer and display.
`Unfortunately, the present design of traditional Internet
`like data networks is based on the principle that delayS and
`Significant data transmission rate variations are acceptable
`for ordinary data (e.g. text and still images). Consequently,
`because of the high value of permitting access to text and
`graphical information from locations around the World, Such
`transmission defects are considered acceptable, and the base
`capacity of the Internet is somewhat “oversubscribed” to
`reduce data transmission costs. In other words, the timeli
`neSS of network data transmission has been significantly
`compromised in order to render relatively insignificant the
`aggregate cost of long distance communication connections.
`In order to Successfully transfer audio-video data acroSS a
`message-oriented network Such as the Internet, for any more
`than a few users, network resources should be committed in
`a manner facilitating timeliness of transmittal. A System
`using committed network resources generally cannot take
`advantage of the existing pricing Scheme of Shared networks
`like the Internet, Since it cannot participate in the sharing of
`network resources on a data packet by data packet basis.
`Video data must be transmitted to the exclusion of lower
`priority data. Transmission costs thus become significant,
`especially when the connection is "long distance' or when
`the connection is continued over an extended period of time.
`Another consequence of the timelineSS VS. cost compro
`mise discussed above has been the Seemingly indiscriminate
`
`

`

`US 6,421,726 B1
`
`15
`
`25
`
`3
`topographical design of the network. Since delays and
`throughput variations have traditionally been excused in
`favor of low cost, the configuration of the Internet infra
`Structure has also been driven by cost considerations.
`Accordingly, the interconnection efficiency of the network
`has rarely been considered. The rapid growth of real time
`data is changing this requirement.
`It is recognized that inadequate data transfer performance
`of time-Sensitive data on the Internet is typically caused by
`four factors: packet loSS, excessive Server utilization, the
`relatively low capacity of the network infrastructure, and
`inherent delays in the network hardware. Packet loss, in
`particular, is caused by inadequate infrastructure and lack of
`robustness in routing. The inherent delays are believed to be
`caused by, among other things, the lack of flow control
`between adjacent nodes in a multiple-node path on the
`Internet.
`Unlike Smaller text and graphic files, relatively large
`Video files can take Several minutes (or more) of
`“streaming,” or constant data flow. Consequently, the usual
`network performance problems are exacerbated. Network
`bandwidth, or the data-carrying capacity of a particular
`network, is limited. Thus, packet loSS and delays increase.
`Long delivery times consume a large amount of Server
`capacity for a long time, decreasing the resources available
`to other users. Accordingly, because the network infrastruc
`ture becomes increasingly congested, packet loSS and delayS
`continue to increase, transmission times rise, and Server load
`increases further.
`This pattern exemplifies a “downward spiral” of network
`performance, which can be driven by the attempted trans
`mission of large data files Such as Video clips. AS long as
`network traffic remains within the limits imposed by net
`work bandwidth, network performance will remain accept
`able. However, whenever peak network loads exceed
`capacity, the downward Spiral described above will begin,
`causing increasing periods of poor network performance.
`AS discussed above, a browser program can be used to
`access and View Web pages acroSS the Internet by Specifying
`40
`the location (i.e. Internet address) of the desired Web page,
`or more commonly, by “hotlinking” to Web pages. Common
`browsers are Lynx, NCSA Mosaic, Netscape Navigator, and
`Microsoft Internet Explorer. The desired Web page is speci
`fied by a uniform resource locator (“URL'), indicating the
`precise location of the file using the Syntax "http://
`internet.address/directory/filename.html.
`Web pages are generally described, in terms of layout and
`content, by way of a language known as “HTML
`(HyperText Markup Language). Any particular computer
`linked to the Internet can Store one or more Web pages, i.e.
`computer files in HTML format, for access by users.
`Hotlinking from one HTML Web page to another is
`accomplished as follows. The user first accesses a Web page
`having a known address, often on the computer located at
`the user's ISP (Internet Service Provider). The ISP is the
`organization providing Internet connectivity to the user. That
`Web page can contain, in addition to textual and visual data
`specified in HTML format, “links,” or embedded informa
`tion (in the form of URLs) pointing to the Internet addresses
`of other Web pages, often on other computers throughout the
`Internet. The user, by Selecting a link (often by pointing and
`clicking with a mouse), can then access other Web pages,
`which can in turn contain further data and/or additional
`linkS.
`Various extensions to HTML, such as Netscapes
`EMBED tag, allow references to other data to be embedded
`
`4
`into Web pages. Some browsers are not capable of handling
`data other than text and images. Other browsers can handle
`the data in various ways. NCSA Mosaic, for example,
`handles references to unknown types of data by allowing the
`data to be downloaded to the user's computer, and then
`optionally invoking an external program to View or manipu
`late the data. Recent releases of Netscape Navigator and
`MicroSoft Internet Explorer take the concept one Step fur
`ther: a browser extension, or "plug-in, can be automatically
`invoked to handle the data as it is received from the remote
`Web page. Other means, Such as network program “applets”
`written in the Java language (or a similar language), can be
`used to extend the functionality of the browser environment
`or network.
`Digital multimedia data can have eXtremely high Storage
`and bandwidth requirements. In particular, Video files can be
`very large, from approximately 10 megabytes to 10
`gigabytes. In order to play Video files at Speeds approaching
`their recorded rate at a user's terminal, the files have to be
`delivered at a fast, constant Speed. Too slow, and the image
`plays back slower than originally recorded. If the Speed is
`uneven, then the Video appears jerky, like an old-time movie.
`The network design compromises discussed above gen
`erally adversely impact the transmission of audio and Video
`data acroSS the Internet. While a user using a browser to
`“surf” the Web might not notice minor delays and transmis
`Sion rate variations while retrieving text and Still images,
`Such defects become apparent and Significant when real-time
`audio and Video information is accessed.
`In an attempt to Solve these problems, Internet content
`providerS Sometimes Spread popular content around the
`Internet on various Servers or delivery Sites known as
`“mirror sites.' Each mirror site contains information that is
`essentially identical to that of the original Site. For example,
`if a popular Web site is located in New York, mirror sites
`might be located in Los Angeles, London, and Tokyo.
`Accordingly, if a European user is having difficulty access
`ing the original New York site, he can hotlink to the mirror
`Site that is geographically closest, i.e. London.
`However, mirror Sites have Several disadvantages. For
`example, mirror Sites may be widely distributed
`geographically, but may not be efficiently distributed on the
`network in terms of actual usage, network traffic, etc. Thus,
`New York and Los Angeles mirror sites might both be
`connected to the same national Internet Service provider's
`network, meaning that difficulty in accessing one of the Sites
`might also affect the other.
`Furthermore, mirror Sites might not be optimally placed to
`reduce load on each Server. Although an “educated guess'
`might be made as to where a mirror Site should be located,
`actual usage patterns might differ. Furthermore, there is no
`guarantee of enhanced performance. The bandwidth of the
`mirror Site might be lower than that of the original Site, or
`it might be overloaded for other reasons.
`Moreover, mirror sites are often hosted on a voluntary
`basis. If a Web Site is extremely popular, and a Service
`provider determines that the Subject matter might be of
`interest to its Subscribers, that Service provider might agree
`to host a mirror site of the original Web site. Such an
`arrangement would be attractive to host of the mirror Site
`because people would be drawn to the mirror Site, and might
`hotlink to other content hosted there. On the other hand, Such
`Voluntary alliances typically are not reliable and might be
`Severed at any time.
`In essence, a mirror Site offers a Secondary Source for data,
`which may or may not be available, and which may improve
`
`35
`
`45
`
`50
`
`55
`
`60
`
`65
`
`

`

`US 6,421,726 B1
`
`S
`user convenience, but which does not address network
`bandwidth or efficiency. A mirror Site does not account for
`performance characteristics of the network, nor identify
`available bandwidth which could be used to efficiently
`transmit Video data while Still taking advantage of the
`existing low-cost pricing Schemes Such as those on the
`Internet.
`Currently, there is no guidance in Selecting optimal loca
`tions for delivery sites, nor is there a known method per
`mitting a user to determine which mirror Site to connect to
`that will ensure optimum performance. In fact, the use of a
`traditional mirror Site is Voluntary. Typically, a user will try
`to access the original site (or a known mirror Site), and will
`Switch to another mirror Site only if performance is found to
`be insufficient after one or more attempts. This approach is
`an inefficient utilization of network resources. Clearly, mir
`ror Sites are not an optimum Solution to the problem of
`overloaded Web Sites. A principal reason for this, among
`others, is the failure to consider network performance.
`Network analysis, particularly the performance of Specific
`paths and linkS Over the Internet, is well known and devel
`oped. For example, the “ping program allows a computer
`connected to the Internet to determine whether a remote host
`is accessible. However, the ping program uses a low-priority
`network protocol known as the ICMP protocol, and accord
`ingly does not provide meaningful performance analysis
`information. The “traceroute” program follows the transmis
`Sion of a message from a computer to a remote host, tracking
`delays along each link, and determining the path taken by
`the message. The traceroute application can be used to map
`the flow of data. However, it lacks the ability to provide
`meaningful performance analysis information. Traceroute
`only provides route information for a message propagating
`in one direction, and only for one instant in time.
`Moreover, only the connectivity characteristics of paths
`leading to and from the Single computer running the tests are
`typically determined; expanding the Scope of testing is
`possible but logistically impracticable, Since the Internet is
`So large.
`Traditional network analysis techniques Such as the
`"ping and "traceroute' programs offer a view of network
`connectivity but provide little understanding of what per
`formance can be expected from providers and mirror Sites
`acroSS the Internet. Therefore, only "guesses' can be made
`as to where delivery or mirror sites should be located or
`which mirror Sites should be used to optimize performance.
`Since Video delivery over the Internet has quickly gained
`in popularity, a need exists for a System that can make Sure
`that a user's Video request can, in most cases, be satisfied by
`Video clip Stored in a compression format recognized by a
`CODEC on the user's terminal, thereby eliminating or
`reducing the user's need to download a new CODEC
`program.
`A further need exists for a method of determining overall
`network performance. A further need exists for a System
`applying that method to enable content providers to dynami
`cally locate data delivery or mirror Sites at optimum network
`locations, and to allow users to Select optimum mirror Sites
`from which to receive data.
`
`15
`
`25
`
`35
`
`40
`
`6
`for certain Web content to an optimum mirror site. A format
`Selection Scheme is used to automatically Select a Video clip
`file compressed in a format recognized by a CODEC pro
`gram already installed and operative on a user terminal.
`A number of “smart” delivery or mirror sites are used to
`distribute popular Web content to various parts of the
`Internet. A comprehensive Scheme of network analysis,
`based on tests performed by a large number of users, is used
`to interactively determine the preferred locations for the
`Sites, and to determine the optimum Sites to be used by each
`individual user.
`Accordingly, because each individual user is routed to a
`Smart Mirror or delivery site that provides improved
`performance, overall network congestion is reduced. In most
`cases, the improved Server is located electronically close to
`a user in order to decrease the number of network connec
`tions over which data must travel, thereby reducing packet
`loSS and delay.
`Furthermore, network analysis results allow message traf
`fic to be routed away from those delivery sites and network
`regions that are already overloaded, and toward underuti
`lized Servers and networks. This results in an improvement
`in throughput as Seen by each user, and will thereby increase
`the appeal of the content offered by content providers using
`the System. Content providers are able to reach a larger
`number of users acroSS the Internet without Suffering Sig
`nificant decreases in performance.
`A System according to the invention begins with an
`original Web site and at least one additional delivery (or
`mirror) site. Each user desiring to use the System will be
`provided, in a preferred embodiment, with software which
`includes a configuration utility and a client program. The
`configuration utility is used first to determine which delivery
`SiteS provide improved performance for that particular user.
`In one embodiment of the invention, the configuration
`utility first downloads a “delivery site file” from a service
`provider. This delivery site file contains a list of available
`delivery sites and a list of network tests to be run. The types
`of tests and frequency of testing to be performed may be
`Specified in the delivery site file, as dependent on the number
`of users testing the network and the estimated drain on
`network or delivery System capacity.
`The configuration utility will run a subset of the tests
`specified in the delivery site file. The test results show which
`delivery sites yield improved performance for the user, and
`also contain information on various generalized network
`capabilities from the Standpoint of the user running the tests.
`The network test results and the identity of the chosen
`delivery site will be sent (via e-mail in one possible
`configuration) back to the delivery Service provider for
`incorporation into the Service provider's database.
`The delivery site chosen by the configuration utility is
`then used by that user for the retrieval of all content
`managed by the delivery System Service provider.
`Consequently, when the user is browsing Web content, and
`finds a particular item, e.g. a video clip, that is managed by
`the Service provider's delivery System, the client Software
`will automatically retrieve it from the specified “Smart
`Mirror” delivery site. Site preferences and default sites can
`be updated periodically on request, at Specified times, or in
`response to changes in network load and traffic.
`Moreover, because the configuration utility of the inven
`tion is performing various network tests and providing the
`test results to the Service provider, Valuable data on System
`and network performance is available. Such data provides
`information on which “Smart Mirror” delivery sites are
`
`45
`
`50
`
`55
`
`60
`
`SUMMARY OF THE INVENTION
`The invention is directed to a system and method for the
`optimized distribution of Web content to and from sites
`located around the Internet. An intelligent mirroring Scheme,
`called here “Smart Mirroring,” is used to determine the need
`for and distribution of mirror Sites and to direct user requests
`
`65
`
`

`

`7
`performing effectively and which are not, which Smart
`Mirror delivery sites are overloaded, and what portions of
`the Internet might benefit from the addition of more delivery
`Sites or capacity.
`Such data also makes it possible to perform Such Sophis
`ticated network analysis as end-to-end performance
`measurements, workload characterization, route Stability,
`and outage metrics. Thus, from an engineering Standpoint,
`the mirror Service provider can continue to ensure that
`improved performance is being provided. From a marketing
`perspective, content providers can be told where to locate
`Smart Mirror or delivery sites for improved performance,
`and what ISP provides improved delivery.
`A Web page hosting an embedded Video clip also includes
`code to activate the Smart Mirroring and format Selection
`Schemes. Accordingly, a Video clip Selection and retrieval
`System according to the invention Stores each Video clip at
`various locations in a number of different compression
`formats. A format Selection module comprises Software
`programs that instruct the user terminal to determine which
`CODEC programs are installed at a user terminal, Select a
`preferred CODEC for use, locate video clips stored in a
`compression format recognized by the preferred CODEC,
`and redirect or modify a Video request So the video delivery
`System can locate and retrieve the desired clip. Where no
`appropriate CODEC is detected, the format selection mod
`25
`ule prompts the user to download and install a preferred
`CODEC.
`In a first embodiment of the format selection module, a
`Video clip is Stored in a number of different compression
`formats at individual delivery sites connected to the Internet.
`The Video clip and its address are referenced on a Web page
`providing access to the Server. The Web page also contains
`an embedded Software program for querying the user ter
`minal to determine what CODECs are installed at the
`terminal. The embedded program is automatically executed
`35
`when the user requests a Video clip which is referenced on
`the Web page. If the query detects the presence of a CODEC
`that can decompress a video clip Stored by one of the Servers,
`the embedded program will select that CODEC and request
`the appropriate Video clip.
`In a Second embodiment of the format Selection module,
`a relatively Small program is installed on the browser as a
`“plug-in” or the like. The “plug-in” embodiment performs
`the same functions as the embedded Software program
`described in the preceding embodiment and has the added
`functionality of interacting with the Smart Mirror facilities
`discussed above.
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is a block diagram of an illustrative network
`topology of a System according to the invention, including
`multiple users and multiple content providers,
`FIG. 2 is a flowchart describing the operation of the
`configuration utility used in a System according to the
`invention;
`FIG. 3 is a flowchart describing the operation of a client
`program used in a System according to the invention;
`FIG. 4 is a flowchart describing the operation of an
`embedded program embodiment of the format Selection
`module according to the invention; and
`FIG. 5 is a flowchart describing the operation of a
`“plug-in” embodiment of the format selection module
`according to the invention.
`DETAILED DESCRIPTION OF THE
`INVENTION
`The invention is described below, with reference to
`detailed illustrative embodiments. It will be apparent that the
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket