throbber
United States Patent (19)
`Lambert et al.
`
`54
`
`(75)
`
`METHOD AND APPARATUS FOR STORING
`AND DELIVERING DOCUMENTS ON THE
`INTERNET
`
`Inventors: Mark L. Lambert, Atherton; Daniel J.
`G. van der Rijn, San Carlos; David J.
`Kemper, San Mateo; Jay L. Verkler,
`Menlo Park, all of Calif.
`Assignee: Tibco, Inc., Palo Alto, Calif.
`
`Appl. No.: 08/897,786
`Filed:
`Jul. 21, 1997
`Int. Cl. ...................................................... H04J 3/17
`U.S. Cl. ........................... 709/226; 370/468; 709/240
`Field of Search ......................... 395/200.33, 200.43,
`395/200.46-200.49, 200.54, 200.56, 200.57;
`370/234, 468, 444, 462; 709/232, 226,
`224, 240
`
`56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`3,848,193 11/1974 Martin et al. ............................. 325/53
`4,287,592 9/1981 Paulish et al. ............................ 370/88
`4,429,385
`1/1984 Cichelli et al. ........................... 370/92
`4,815,030 3/1989 Cross et al. .......
`... 364/900
`4,868,866 9/1989 Williams, Jr. ............................. 380/49
`4,974,149 11/1990 Valenti ..........
`... 364/200
`5,105,184 4/1992 Pirani et al. ..
`... 340/721
`5,220,657 6/1993 Bly et al. ......
`... 395/425
`5,230,048 7/1993 Moy ..............
`... 395/600
`5,339,239 8/1994 Manabe et al. ...
`... 364/401
`5,347,632 9/1994 Filepp et al...
`... 395/200
`5,515,098 5/1996 Carles ......................................... 348/8
`5,557,608 9/1996 Calvignac et al.
`370/462 X
`5,577,266 11/1996 Takahisa et al. .......................... 455/66
`5,579,537 11/1996 Takahisa ................................... 455/66
`5,617.565 4/1997 Augenbraun et al.
`... 395/604
`5,675,510 10/1997 Coffey et al. .....
`... 395/200.54
`5,687,167 11/1997 Bertin et al. ........................ 370/444 X
`
`
`
`US0060386O1A
`Patent Number:
`11
`(45) Date of Patent:
`
`6,038,601
`Mar. 14, 2000
`
`5,734,909 3/1998 Bennett .............................. 395/200.59
`5,742,772 4/1998 Sreenan ...
`... 395/200.56
`5,751,956 5/1998 Kirsch .........
`... 395/200.33
`5,754,774 5/1998 Bittinger et al.................... 395/200.33
`5,764,908 6/1998 Shoji et al. ........................ 395/200.47
`5,799,002 8/1998 Krishman ................................ 370/234
`FOREIGN PATENT DOCUMENTS
`
`93.09631 11/1991 WIPO.
`
`OTHER PUBLICATIONS
`Ari Luotonen et al., World Wide Proxies, http://
`www.w3.org/archives/pp. 1-8, Apr. 1994.
`Ari Luotonen et al., Logging Control in W3C httpd, http://
`www.w3.org/archives/, pp. 1-4, Jul. 1995.
`Ari Luotonen et al., Caching Algorithm of CERN httpd,
`http://www.w3.org/archives/, pp. 1-4, Dec. 1994.
`(List continued on next page.)
`Primary Examiner Zarni Maung
`ASSistant Examiner Patrice L. Winder
`Attorney, Agent, or Firm Blakley, Sokoloff, Taylor &
`Zafman LLP
`ABSTRACT
`57
`An improved method and apparatus is used for Storing and
`delivering information over the Internet and using Internet
`technologies. According to one embodiment of the present
`invention, a method and apparatus for maintaining Statistics
`on a Server is disclosed. According to an alternative
`embodiment, a method and apparatus is disclosed for pre
`dicting data that a client device may request from a server on
`a network. In another embodiment of the present invention,
`a method and apparatus is disclosed for managing band
`width between a client device and a network. According to
`yet another embodiment, a method and apparatus is dis
`closed for validating a collection of data. According to yet
`another embodiment, a method for providing notification to
`clients from Servers is disclosed.
`
`5 Claims, 10 Drawing Sheets
`
`ALLOCATING A PRIORITY TO EACHREQUES FROMACLIENT DEVICE
`
`
`
`
`
`ALLOCATING BANDWIDTH TO EACHREQUEST BASED ON THE
`PRIORITY
`
`PROCESSINGEACHREGUEST BASED ON THE ALLOCATED
`PRORTY AND THE ALLOCATED BANDWOTH
`
`Netflix, Inc. - Ex. 1054, Page 000001
`IPR2021-01319 (Netflix, Inc. v. CA, Inc.)
`
`

`

`6,038,601
`Page 2
`
`OTHER PUBLICATIONS
`Duane Wessels, Intelligent Caching for World Wide Web
`Objects, http://www/isoc.org/, pp. 1-15, May 1995.
`Evangelos P. Markatos et al., A Top-10 Approach to
`Prefetching on the Web, http://www.ics.forth.gr/proj/, pp.
`1-15, Aug. 1996.
`Pillip M. Hallam-Baker, Notification for Proxy Caches,
`http://www.w3.org/pub/, pp. 1-5, Feb. 1996.
`Chris Dodge et al., Web cataloguing through cache exploi
`tation and Steps toward consistency maintenance, Computer
`Networks and ISDN Systems, pp. 1003-1008, Dec. 1995.
`Thomas T. Kwan et al., NCSA's World Wide Web Server:
`Design and Performance, IEEE, pp. 68-74, Dec. 1995.
`“A Structure For Transportable, Dynamic Multimedia Docu
`ments', Dick C.A. Bulterman, Proceedings of the Summer
`1991 USENIX Conference Jun. 10–14, 1991, pp. iii-vi and
`137-155, Nashville, TN.
`“An Interchange Standard And System For Browsing Digital
`Documents', Andrew Jonathan Kass, pp. Cover page,
`Abstract page & pp. 5-105, Massachusetts Institute of
`Technology, 1995.
`“Pointcast To Team With Microsoft, Add New Net Dimen
`Sion', George Avalos, Contra Costa Times, 2 pp., Dec. 12,
`1996.
`“Microsoft Picks On-Line News From PointCast', David
`Bank, 1 pg., The Wall Street Journal Marketplace, Dec. 12,
`1996.
`“Microsoft To Expand Its Internet Reach'', 1 pg., Los
`Angeles Times, Dec. 12, 1996.
`The ISI Experimental Multimedia Mail System, Jonathan B.
`Postel, et al., ISI Research Report, Sep. 1986, pp. 1-27.
`“An Interpersonal Multimedia Visualization System”, Rich
`ard L. Philips, Los Alamos National Laboratory, IEEE
`Computer Graphics & Applications, pp. 20-27, May 1991.
`“Architectures For Personalized Multimedia', Srinivas
`Ramanathan, et al., University of California at San Diego,
`Spring, 1994 IEEE pp. 37–46.
`“Pushing the Envelope on delivery of Customized Internet”,
`New York Times, 2 pp., Laurence Zuckerman, Dec. 9, 1996.
`“SIFT A Tool For Wide-Area Information Dissemination,
`"Tak W. Yan, et al., pp. 177-186, 1995 USENIX Technical
`Conference, Jan. 16-20, 1995.
`“The RightPages Image-Based Electronic Library For
`Alerting And Browsing, pp. 17-26, Guy A. Story, et al.,
`AT&T Bell Laboratories, Sep. 1992.
`“Two Free Programs Deliver News To Your PC, 1 pg.,
`Gabrielle Mitchell, PC World Aug. 1996.
`“A Need-To-Know Basis', 1 pg., WebMaster, Oct. 1996.
`“Microsoft Cuts Deals With 2 Firms”, San Jose Mercury
`News, 1 pg., Dec. 12, 1996.
`“Microsoft Unites With PointCast at Trade Show”, The San
`Francisco Chronicle, Jean Sheartz, 1 pg., Dec. 12, 1996.
`“Microsoft And Point Cast In Broadcast Alliance', The New
`York Times, Laurence Zuckerman, 1 pg., Dec. 12, 1996.
`“Big Business at Businesswire.Com, Christopher Elliott,
`Web Techniques, Dec. 1996, pp. 95–99.
`“Microsoft Teams With PointCast', The Globe And Mail,
`Patrick Bretmour, 1 pg., Dec. 12, 1996.
`“JournalistTM , Your Personalized Newspaper for Com
`puServe”, PED Software Corporation, pp. 1-143.
`“Synchronization of Multimedia Data For A Multimedia
`NewS-On-Demand Application', Louise Lamont, et al.,
`IEEE Journal on Selected areas in Communications, pp.
`164-278, vol. 14, No. 1, Jan. 1996.
`
`“Tele-Briefs A Novel User-Selectable Real Time News
`Headline Service For Cable TV", Ralph H. Baer, 3 pp., IEEE
`Transactions on Consumer Electronics, vol. CE–25, No. 3,
`Ju1 1979.
`“News To The Desktop', Interactive Age, John Evan Frook,
`3 pp., Apr. 29, 1996.
`“The Digital News System. At EDUCOM: A Convergence of
`Interactive Computing, Newspapers, Television and High
`-Speed Networks”, pp. 113-116, Eric M. Hoffert, et al., Apr.
`1991, vol. 34, No. 4.
`“Point Cast Network', 1 pg., Netguide, Sep. 1996.
`“An Interchange Standard And System For Browsing Digital
`Documents', Andrew Jonathan Kass, Massachusetts Insti
`tute Of Technology, pp. 1-105, May 1995.
`“Journalist Quick Start, PED Software Corp., 2 pp.
`“News-on-demand For Multimedia Networks', Miller, et
`al., pp. 383–392, ACM Multimedia, 1993.
`“News Servers, A New Generation Of NNTP Servers Pro
`vides A Vehicle for Enhanced Collaboration', Amarendra
`Singh, PC Magazine, pp. 183-184 & 189-190, Jan. 21,
`1997.
`“Push Products Redefine Internet”, Jesse Berst, PC Week, 2
`pp. Nov. 25, 1996.
`“MediaView A General Multimedia Digital Publication Sys
`tem”, Richard L. Phillips, pp. 3 & 75-83, Communications
`of The ACM, Jul 1991, vol. 34, No. 7.
`“Initial Experience With Multimedia Documents. In Dia
`mond', Forsdick, et al., pp. 99-113, May 1-4, 1984.
`Proceedings of The Fifteenth International Conference On
`Very Large Data Bases, Peter M.G. Apers, et al., Aug.
`22–25, 1989.
`“Oracle-An Information Broadcasting Service Using Data
`Transmission. In The Vertical Interval”, G. A. McKenzie,
`Journal of the SMPTE, pp. 6-10 Jan. 1974.
`“Experience With Grapevine: The Growth Of A Distributed
`System”, Schroeder, et al., pp. 3–23, ACM Transactions on
`Computer Systems, vol. 2, No. 1, Feb. 1984.
`“For A Window On A New World of News”, Prodigy
`Interactive Personal Service, Copyright 1994.
`JournalistTM, “Your Personalized Newspaper For The Prodi
`gy Service”, PED Software Corporation, 1993, pp. 1-141.
`Patent Abstracts of Japan, European Patent Office, “Data
`base Retrieval Communication System”, Abstract date May
`9, 1991, Application JP3204259.
`“An Adaptation Method for SDI, Nauchno-Tekh, article,
`Nauchno-Teknicheskaya Informatsiya Seriya 2, 1973,
`USSR, 1 page.
`Simba Information, Inc., “PED Delivers Personalized News
`papers To Users Desktops”, Electronic Information Report,
`Apr. 15, 1994, vol. 15, No. 14.
`Journal Article, “Innovation That Has a Purpose Is Called
`Key to Technology Success”. Anonymous, Marketing News
`vol. 22, No. 6, Mar. 14, 1988, pp. 37, 40.
`Quain, J., “Journalist Delivers Your Own Personalized
`Newspaper”, PC Magazine, vol. 12, No. 17, p. 29.
`Flynn, M. et al., “The Daily Me: Laying Out Tomorrow's
`(electronic) News”, PC Magazine, vol. 12, No. 15, p. 29.
`UK: Home Computer “From Your Own Correspondent', 1
`pg., Independent (IND), Sep. 24, 1993.
`Journalist-“A New Prodigy Add-On’, PED Software, 1
`pg., 1994.
`New Custom File Capability For Nexis, 1 pg., May 1, 1995.
`Ad on CompuServe pp. 1-2.
`Prodigy article, Prodigy Services Company 1989, pp. 1-6.
`
`Netflix, Inc. - Ex. 1054, Page 000002
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 1 of 10
`
`6,038,601
`
`CONTENT
`PROVIDER
`102
`
`FIG. 1A
`(PRIOR ART)
`
`CLIENT
`
`100
`
`Netflix, Inc. - Ex. 1054, Page 000003
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 2 of 10
`
`6,038,601
`
`
`
`
`
`
`
`
`
`?ÔI
`
`HOSSE|00}}d
`
`| |
`
`EOLAEC]
`XHONA LEN
`
`Netflix, Inc. - Ex. 1054, Page 000004
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 3 of 10
`
`6,038,601
`
`CONTENT
`BAR
`
`302
`
`CACHING
`SERVER
`304
`CLIENT 100
`
`A
`VIA INTERNET
`OR INTRANET
`
`
`
`BACKEND
`SERVER
`350
`
`Netflix, Inc. - Ex. 1054, Page 000005
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 4 of 10
`
`6,038,601
`
`SUBSCRIPTION
`MANAGER
`306
`
`SUBSCRIPTION
`DRIVEN LOOKAHEAD
`
`TELLS BROWSER
`TO DISPLAY CONTENT WEBBROWSER
`ON CLIENT
`100
`
`STATUS
`UPDATES
`
`HTTP
`REQUEST
`
`HTTP
`RESPONSE
`CACHED C d
`UPDATED
`CONTENT
`
`
`
`
`
`
`
`SERVER
`
`204
`
`HTTP REQUESTS
`FOR NON-CACHED
`CONTENT
`
`HTTP RESPONSE
`
`FIG. 3
`
`Netflix, Inc. - Ex. 1054, Page 000006
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 5 of 10
`
`6,038,601
`
`
`
`DEFINING ATABLE OF CONTENTS (TOC) FOR A COLLECTION OF DATA
`
`RECEIVING AREQUEST FOR DATA CONTAINED WITHIN THE
`COLLECTION OF DATA
`
`EXAMINING THE TOC TO DETERMINE WHETHER THE DATA WITHIN
`THE COLLECTION OF DATAS WALD
`
`UPDATING THE COLLECTION OF DATA IF THE DATA CONTAINED IN
`THE COLLECTION OF DATA IS NVALD
`
`FIG. 4
`
`Netflix, Inc. - Ex. 1054, Page 000007
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 6 of 10
`
`6,038,601
`
`BEGIN
`
`RECEIVING STATISTICS FROMA DEVICE COUPLED TO A SERVER, THE STATISTICS
`BEING ASSOCATED WITH DATA ON THE SERVER THE RECEIVING STEP BEING
`PERFORMED ONLY WHEN AUSER ACCESSES THE DATA ON THE SERVER
`
`
`
`
`
`UPDATING THE STATISTICS ON THE SERVER IN RESPONSE
`TO A USER ACCESS OF DATA ON THE SERVER
`
`
`
`END
`
`FIG. 5
`
`Netflix, Inc. - Ex. 1054, Page 000008
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 7 of 10
`
`6,038,601
`
`COMPUTING ASET OF METRICS CORRESPONDING TO A LIKELIHOOD DATA WILL
`BE REQUESTED BY A USER
`
`
`
`
`
`DOWNLOADING BASED ON THE METRICS DATA FROM THE SERVER
`TO THE CLIENT DEVICE PRIOR TO THE REQUEST FROM THE
`CLIENT DEVICE
`
`
`
`STORING THE DATA INA CACHE ON THE CLIENT DEVICE
`
`FIG. 6
`
`Netflix, Inc. - Ex. 1054, Page 000009
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 8 of 10
`
`6,038,601
`
`POSITIVE LOOKAHEAD FILTER
`
`
`
`http://cnn.com/a/b
`
`http://cnn.com/alb -o- OK
`
`http:/cnnfn.com/a/b -
`
`DOK
`
`http://incommon.com/a1b - - X
`
`FIG. 7A
`
`Netflix, Inc. - Ex. 1054, Page 000010
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 9 of 10
`
`6,038,601
`
`NEGATIVE LOOKAHEAD FILTER
`
`http://nytimes.com/a/b/*
`
`
`
`
`
`
`
`http://nytimeS.COm / C /d/ e -o- OK
`
`http://nytimes.com/a/c -D OK
`
`http://nytimes.com/a/b/ C - X
`
`FIG. 7B
`
`Netflix, Inc. - Ex. 1054, Page 000011
`
`

`

`U.S. Patent
`
`Mar. 14, 2000
`
`Sheet 10 Of 10
`
`6,038,601
`
`
`
`BEGIN
`
`ALLOCATING A PRIORITY TO EACH REQUEST FROM A CLIENT DEVICE
`
`ALLOCATING BANDWIDTH TO EACH REQUEST BASED ON THE
`PRIORITY
`
`PROCESSING EACH REQUEST BASED ON THE ALLOCATED
`PRIORITY AND THE ALLOCATED BANDWIDTH
`
`FIG. 8
`
`Netflix, Inc. - Ex. 1054, Page 000012
`
`

`

`1
`METHOD AND APPARATUS FOR STORING
`AND DELIVERING DOCUMENTS ON THE
`INTERNET
`
`6,038,601
`
`FIELD OF THE INVENTION
`The present invention relates to the field of Internet and
`wide-area networking technology. Specifically, the present
`invention relates to the Storage and delivery of information
`over the Internet and using Internet technologies.
`
`DESCRIPTION OF RELATED ART
`The World Wide Web (the Web) represents all of the
`computers on the Internet that offer users access to infor
`mation on the Internet via interactive documents or Web
`pages. Web information resides on Web servers on the
`Internet or within company networks. Web client machines
`running Web browserS or other internet Software can acceSS
`these Web pages via a communications protocol known as
`HyperText transport protocol (HTTP). With the proliferation
`of information on the Web and information accessible in
`company networks, it has become increasingly difficult for
`users to locate and effectively use this information. AS Such,
`the mode of Storing, delivering, and interacting with data on
`the Internet, and the Web in particular, has changed over
`time.
`FIG. 1A illustrates a typical Internet configuration com
`prising client 100 and content provider 102 coupled via the
`Internet. The content provider may include a media
`company, a consumer Service, a busineSS Supplier, or a
`corporate information Source inside the company's network.
`The use of information within a wide-area network Such
`as the Internet poses problems not usually experienced in
`Smaller, local-area networks. The latency of the Internet
`produces delays that become the performance bottleneck in
`retrieving information. Clients may be connected to the
`network only part of the time, but Still want access to
`information from their local platform that was retrieved
`from the content provider prior to being disconnected. The
`granularity and independence of the objects in a wide-area
`network, particularly the Internet, make the task of aggre
`gating them more difficult.
`The use of client and intermediate caching of the content
`provider information may alleviate Some of the problems of
`the wide-area network interactions. Certain implementations
`today perform this caching on behalf of the client, but
`Sacrifice data timelineSS and do not address performance
`problems because they must validate their caches in Single
`operations over the network.
`FIG. 1A also illustrates the typical Internet configuration
`of client-to-content-provider interaction. Subsequent to con
`necting to the Internet, client 100 will generally request
`objects from the content provider 102. The client must locate
`the information, often through manual or automatic
`Searches, then retrieve the data through the client.
`When searching for the data initially, this “pull” model
`provides great utility in locating information. Implicit in the
`model, however, is that the client machine has the respon
`Sibility for finding and downloading data as desired. The
`user is faced with the problem of having to scour the Web for
`various information Sites that may be of interest to him or
`her. Although this model provides a user with a large degree
`of flexibility in terms of the type of information that he or
`She would like to acceSS each time he or she connects to the
`Internet, there is clearly a downside to the model in that the
`user is forced to constantly Search for information on the
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`Internet. Given the exponential rate of growth of data on the
`Internet, this type of Searching is becoming increasingly
`cumberSome.
`While the pull model is effective for finding information,
`once a user has found an information Source-a location
`from which Subsequent information of interest to the user
`will be distributed-he or she must continue to check for
`new information periodically. In the “pull” model, the server
`is inherently passive and the client does all the work of
`initiating requests. If the Server has new information of
`interest to the client, the Server has no method of delivering
`either the information or a notification to the client that the
`information exists. The content provider cannot, in the pull
`model, provide an “information service” where active server
`information is identified, then passed to the client in terms
`of Some kind of notification.
`It is therefore an object of the present invention to provide
`a method to manage passive and active data throughout the
`network, and offer an improved method and apparatus for
`Storing and delivering information on the Internet.
`
`SUMMARY OF THE INVENTION
`The present invention discloses an improved method and
`apparatus for Storing and delivering information over the
`Internet and using Internet technologies. According to one
`embodiment of the present invention, a method for
`managing, and validating a collection of data that may be
`distributed in caches throughout a network is disclosed.
`According to an alternate embodiment, a method and appa
`ratus for maintaining Statistics on a server is disclosed.
`According to an alternative embodiment, a method and
`apparatus is disclosed for predicting data that a client device
`may request from a server on a network. In another embodi
`ment of the present invention, a method and apparatus is
`disclosed for managing bandwidth between a client device
`and a network. According to yet another embodiment, a
`method and apparatus is disclosed for validating a collection
`of data. According to yet another embodiment, a method for
`providing notification to clients from Servers is disclosed.
`Other objects, features and advantages of the present inven
`tion will be apparent from the accompanying drawings and
`from the detailed description.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The present invention is illustrated by way of example
`and not by way of limitation in the figures of the accompa
`nying drawings in which like reference numerals refer to
`Similar elements and in which:
`FIG. 1A illustrates a typical Internet configuration.
`FIG. 1B illustrates a typical computer system in which the
`present invention operates.
`FIG. 2 illustrates the three major components according to
`one embodiment of the present invention.
`FIG. 3 illustrates an overview of how the three compo
`nents of one embodiment of the present invention interact
`with each other.
`FIGS. 4-6 are flow charts illustrating embodiments of the
`present invention.
`FIG. 7A illustrates a regular expression used as a "positive
`filter' for links on a page.
`FIG. 7B illustrates a regular expression used as a “nega
`tive filter for links on a page.
`FIG. 8 is a flow chart illustrating one embodiment of the
`present invention.
`
`Netflix, Inc. - Ex. 1054, Page 000013
`
`

`

`6,038,601
`
`15
`
`35
`
`40
`
`25
`
`3
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`The present invention relates to a method and apparatus
`for Storing and delivering documents on the Internet. In the
`following detailed description, numerous specific details are
`Set forth in order to provide a thorough understanding of the
`present invention. It will be apparent to one of ordinary skill
`in the art however, that these specific details need not be
`used to practice the present invention. In other instances,
`well known Structures, interfaces and processes have not
`been shown in detail in order not to unnecessarily obscure
`the present invention.
`FIG. 1B illustrates a typical computer system 100 in
`which the present invention operates. One embodiment of
`the present invention is implemented on a personal computer
`architecture. It will be apparent to those of ordinary skill in
`the art that other alternative computer System architectures
`may also be employed.
`In general, Such computer Systems as illustrated by FIG.
`1B comprise a bus 101 for communicating information, a
`processor 112 coupled with the bus 101 for processing
`information, main memory 103 coupled with the bus 101 for
`Storing information and instructions for the processor 112, a
`read-only memory 104 coupled with the bus 101 for storing
`Static information and instructions for the processor 112, a
`display device 105 coupled with the bus 101 for displaying
`information for a computer user, an input device 106
`coupled with the bus 101 for communicating information
`and command Selections to the processor 112, and a mass
`storage device 107 coupled with the bus 101 for storing
`information and instructions. A data Storage medium 108,
`Such as a magnetic disk and associated disk drive, containing
`digital information is configured to operate with mass Stor
`age device 107 to allow processor 112 access to the digital
`information on data storage medium 108 via bus 101.
`Processor 112 may be any of a wide variety of general
`purpose processors or microprocessorS Such as the PEN
`TIUM(R) brand processor manufactured by INTELOR Corpo
`ration. It will be apparent to those of ordinary skill in the art,
`however, that other varieties of processors may also be used
`in a particular computer system. Display device 105 may be
`a liquid crystal device, cathode ray tube (CRT), or other
`suitable display device. Mass storage device 107 may be a
`conventional hard disk drive, floppy disk drive, CD-ROM
`45
`drive, or other magnetic or optical data Storage device for
`reading and writing information Stored on a hard disk, a
`floppy disk, a CD-ROM a magnetic tape, or other magnetic
`or optical data Storage medium. Data Storage medium 108
`may be a hard disk, a floppy disk, a CD-ROM, a magnetic
`tape, or other magnetic or optical data Storage medium.
`In general, processor 112 retrieves processing instructions
`and data from a data Storage medium 108 using mass Storage
`device 107 and downloads this information into random
`access memory 103 for execution. Processor 112, then
`executes an instruction Stream from random acceSS memory
`103 or read-only memory 104. Command selections and
`information input at input device 106 are used to direct the
`flow of instructions executed by processor 112. Equivalent
`input device 106 may also be a pointing device Such as a
`conventional mouse or trackball device. The results of this
`processing execution are then displayed on display device
`105.
`Computer system 100 includes a network device 110 for
`connecting computer system 100 to a network. The network
`device 110 for connecting computer system 100 to the
`network includes Ethernet devices, data modems and ISDN
`
`50
`
`55
`
`60
`
`65
`
`4
`adapters. It will be apparent to one of ordinary skill in the art
`that other network devices may also be utilized.
`The preferred embodiment of the present invention is
`implemented as a Software module, which may be executed
`on a computer System Such as computer System 100 in a
`conventional manner. Using well known techniques, the
`application Software of the preferred embodiment is Stored
`on data Storage medium 108 and Subsequently loaded into
`and executed within computer system 100. Once initiated,
`the software of the preferred embodiment operates in the
`manner described below.
`1. Introduction
`The presently claimed invention improves use of the Web
`and wide-area networks by managing groups of network
`objects (content or applications) and bringing that content
`and notifications from Servers directly to desktops in a
`timely fashion and while consuming a minimal amount of
`desktop Screen Space. Users Subscribe to “channels', which
`automatically bring new content to the user's machine and
`render information in Summary form. Detailed content
`attached to the Subscription is rendered in the users web
`browser, and automatically pre-fetched by one embodiment
`of the present invention.
`Channel configuration and rendition, as well as related
`content pre-fetch are all controlled by default from the
`content provider via a back-end Server, thus giving content
`providers a large amount of control over their own data and
`how it is presented. Content providers can Supply their own
`graphics, advertising, ticker information, animation control,
`and content refresh parameters. Subscribing to channels is
`also simple: content providerS Simply place an icon on one
`or more pages in their site and clicking the icon causes a
`Subscription to be created on the client Side and/or the Server
`Side. The Subscription is then updated automatically.
`According to one embodiment, the presently claimed
`invention plays a unique role as an intermediary and media
`tor between end users, namely consumers of information,
`and content providers, namely producers of information.
`One embodiment of the present invention provides func
`tionality that gives to the content provider control over their
`brand, the way in which their information is presented, and
`the way in which users access their web site. At the same
`time, users are given the ability to pick and choose the
`information they want from the Sites they want, and presen
`tation of that information is accelerated, thus improving the
`user's Web experience.
`An intelligent caching infrastructure that uses information
`(called “Meta-Data”) about the content to control client and
`intermediate caches reduces the wide-area networking prob
`lems generally attributed to interactive content by allowing
`the caches to manage expiration, compaction, bulk-delivery
`and other operations guided via Meta-Data from the content
`provider. The caches become intelligent delivery nodes at
`the client, and within the network, because they are able to
`understand the important properties of the information they
`are managing.
`The presently claimed invention also provides a notifica
`tion System to the content provider and user that spans
`Internet, firewall, and internal network Systems, and can
`combine various underlying transports and notifications into
`a general notification architecture. This offers content pro
`viders (server) the opportunity to provide pro-active infor
`mation Service to the user. The user may receive various
`types of internet and internal, company notifications and
`information.
`When the notification and “active information' push
`model is combined with an intelligent caching network
`
`Netflix, Inc. - Ex. 1054, Page 000014
`
`

`

`S
`infrastructure, in the presently claimed invention, the user
`achieves the highest degree of functionality, performance,
`and usability. As described in further detail below, the
`presently claimed invention spans client and Server
`machines, creating a System that allows feedback from the
`client to the back-end Server, and Subsequent optimization of
`the client by the back-end server.
`2. Components
`The presently claimed invention consists of three major
`components: the content bar, caching Server and back-end
`server, as illustrated in FIG. 2. The content bar 302 and the
`caching Server 304 reside on one or more end-user comput
`ers 100 (“client machines”) owned by information subscrib
`ers. The back-end server 350 resides one or more server
`class computers owned by information publishers (“back
`end server machines”). The content bar 302 and caching
`Server 304 are logical components. Each component can be
`implemented as Separate processes or within a Single pro
`CCSS.
`The client machines 100 and the back-end server
`machines communicate over a network Such as the Internet
`or a corporate intranet. The communication mechanism
`includes open standard protocols such as HTTP (Hypertext
`Transfer Protocol), MIME (Multipurpose Internet Mail
`Extensions) and TCP/IP (Transmission Control Protocol/
`Internet Protocol).
`One embodiment of the present invention is implemented
`in the caching server 304. An alternate embodiment is
`implemented in a combination of the caching server 304 and
`the back-end server 350. The content bar 302 in either
`embodiment is a rendering environment for published con
`tent. Although the following Sections describe a two-tier
`client-Server architecture, the presently claimed invention
`may also be implemented according to other architectures.
`For example, while the content bar 302 always resides on a
`Subscriber's client machine 100 and the back-end server 350
`always resides on a publisher's back-end Server machine,
`there can be any number of intermediate caching Servers
`between the subscriber and the publisher.
`The caching Servers do not have to reside on the client
`machine. This configuration typically provides the best
`performance, however, by taking advantage of local disk
`access Speed to increase performance. Caching Servers can
`be deployed around the network to balance networkload and
`provide concentration of frequently used information. In this
`embodiment, each caching Server 304 is implemented as a
`standard HTTP proxy server thus allowing them to be
`coupled together hierarchically. FIG. 3 illustrates an over
`view of how the three components of one embodiment of the
`present invention interact with each other. A Subscriber's
`requests to retrieve certain published content are managed
`by Subscription manager 306 which resides on the subscrib
`er's client machine. Subscription manager 306 communi
`cates with Web browser 100 on the client machine to
`demand the requested content. Web browser 100 then sends
`an HTTP request to a remote caching server 204. In
`response, caching Server 204 either retrieves cached content
`from cache 300 or sends an HTTP request via the Internet to
`a publisher's machine to retrieve non-cached content.
`2.1 Content Bar
`The end user interacts with the content bar. According to
`one embodiment, the content bar is responsible for rendering
`channel Subscription content, configuring each Subscrip
`tion's look and feel, and managing the user's interaction
`with the web. The user can create Several content bars, and
`can float them on the desktop, dock them to one of the edges
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6,038,601
`
`6
`of the display, or dock them to a web browser. When docked
`to one of the Screen edges, the content bar can be configured
`to auto-hide, So that it appears only when the mouse is
`placed on the edge of the Screen.
`Each content bar contains one or more channels, namely
`areas of the content bar that belong to a particular content
`provider. Channel look and feel is under the control of the
`content provider via open data formats (MIME, HTTP,
`standard image formats such as GIF and JPEG). The content
`bar provides a common rendering environment for the
`channels So they can be moved, resized, or locally config
`ured by the user in a Standard way.
`Each channel contains one or more “Subscriptions.” Sub
`Scriptions are agents configured to retrieve information at
`various times, or to process asynchronous notifications of
`incoming data. Initial configuration is set up by the content
`provider according to the content provider's publishing
`Schedules. The user can change this information as well as
`add to it. Each channel Subscription uses a notification
`mechanism to retrieve new data the notification mechanism
`can be simple polling, or more complex asynchronous event
`notification mechanisms, as described later in the document.
`2.2 Caching Server
`The caching Server manages all of the user's interaction
`with the Web. All web requests, including those generated by
`the user's browser and those generated by channel
`Subscriptions, go through the caching Server. The caching
`Server is responsible for the follo

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