`
`DROPBOX EX. 1029
`
`
`
`
`
`
`
`USOOS919247A
`
`United States Patent
`
`[19]
`
`[11] Patent Number:
`
`5,919,247
`
`Van Hoff et al.
`
`[45] Date of Patent:
`
`Jul. 6, 1999
`
`l54l
`
`[75]
`
`METHOD FOR THE DISTRIBUTION OF
`CODE AND DATA UPDATES
`
`Inventors: Arthur Van Hoff, Mountain View;
`Jonathan Payne, Santa Clara; Sami
`Shaio, Menlo Park, all of Calif.
`
`5,619,716
`5,628,005
`5,634,052
`5,713,017
`
`4/1997 Nonaka et al. .
`5/1997 llurvig.
`5/1997 Morris.
`1/1998 Lin ct a]. .
`OTHER PUBLICATIONS
`
`[73]
`
`Assignee: Marimba, Inc.
`
`[21]
`
`Appl. No.: 08/690,257
`
`Filed:
`
`Jul. 24, 1996
`
`Int. Cl.° ...................................................... C06F 17/30
`[1.8. CI.
`......................... .. 709/217; 707/201; 395/712
`Field 01' Search ........................ . 395200.31, 200.33,
`395/20049, 395.47, 395.59, 684, 200.47,
`200.48, 712; 707/201, 203
`
`References Cited
`
`US. PATENT DOCUMENTS
`
`Baron, Robert J. and LG. Shapiro, Data Structures and their
`Implementation, 1980, p. 150 and pp. 218—219, Van Nos-
`trand Reinhold Company, New York, New York, USA.
`Bentley, Jon L, Multidimensional Binary Search Trees in
`Database Applications,
`lEEE Transactions on Software
`Engineering, Jul. 1979, pp. 333—340, vol. SE—S. institute of
`Electrical and Electronics Engineers, Inc., New York, New
`York, USA.
`Gotlieb, CC. and LR. Gotlieb, Data Types and Structures,
`1978, pp. 169—185, Prentice Hall Inc., Englewood Clifl’s,
`New Jersey, USA.
`
`(List continued on next page.)
`
`Prim/12y Examiner—Dung C. Dinh
`Attorney. Agent, or Firm—Charles E. Gotlieb
`
`[57]
`
`ABSTRACT
`
`A system and method for distributing software applications
`and data to many thousands of clients over a network. The
`applications are called “channels”, the sewer is called the
`“transmitter”, and the client is called the “tuner”. The use of
`channels is based on subscription. The end-user needs to
`subscribe to channel before it can be executed. When the
`end-user subscribes to a channel the associated code and
`data is downloaded to the local hard-disk, and once down-
`loaded the channel can be executed many times without
`requiring further network access. Channels can be updated
`automatically at regular intervals by the tuner, and as a result
`the end-user is no longer required to manually install soft-
`ware updates, instead these software and data updates are
`automatically downloaded and installed in the background.
`This method of automatic downloading of updates achieves
`for the client the same result as the broadcast distribution of
`software over a connection based network, but wherein the
`client initiates each update request without requiring any
`special broadcast networking infra structure.
`
`61 Claims, 13 Drawing Sheets
`
`4,432,057
`4,468,728
`4,558,413
`4.61 1,272
`4,658,093
`4,714,992
`4,714,996
`4,866,61 1
`4,875,159
`4,897,781
`5,113,519
`5, 1 1 5,504
`5,155,847
`5,341,477
`5,377,329
`5,388,255
`5,408,619
`5.434,.994
`5,471,629
`5.473.772
`5,491,820
`5,574,906
`5,581,764
`5,586,322
`5,606,705
`
`2/ 1984
`8/1984
`12/1985
`9/1986
`4/1987
`12/1987
`12/1987
`9/1989
`10/1989
`1/ 1990
`5/1992
`5/1992
`10/1992
`8/1994
`12/1994
`2/1995
`4/1995
`7/1995
`11/1995
`12/1995
`2/1996
`11/1996
`12/ 1996
`12/1996
`2/1997
`
`Daniel] et al.
`Wang .
`Schmidt et al.
`Lomet .
`Hellman .
`.
`Gladney et al.
`Gladney et al. .
`Cree et al.
`.
`Cary et al.
`.
`.
`Chang et al.
`Johnson et al. .
`Belove et al.
`.
`Kirouac et al. .
`Pitkin et al.
`Seitz .
`Pytlik et al.
`Oran .
`Shaheen et al.
`Risch .
`Halliwell et al.
`Belove et al. .
`Morris .
`Fitzgerald et al.
`Beck et al.
`Randall et al.
`
`.
`
`...................... .. 707/203
`
`395/20056
`
`................................ 707/4
`
`.
`
`.
`
`395/712
`
`395/703
`707/200
`
`was
`
`410
`
`my
`
`. - 140
`
`SERVER 3V3?!"
`
` NETWORK
`
`CLIENT SYSTEM
`
`CLIENT SVSYEM
`
`PROXV SYSTEM
`
`Dropbox Ex. 1029
`Page 1
`
`SYSTEM
`
`SERVER SYSTEM
`zc
`\I
`170
`
`DEVELOPMENT
`
`
`
`
`
`
`
`
`
`
`
`5,919,247
`
`Page 2
`
`
`
`OTHER PUBLICATIONS
`
`
`
`
`
`
`
`
`
`
`
`
`
`Gull, W.E. and MA. Jenkins, Recursive Data Structures in
`
`
`
`
`
`
`
`
`APL, Communications of the ACM, Jan. 1979, pp. 79—96,
`
`
`
`
`
`
`
`
`vol. 22, No. 1, Association for Computing Machinery, Inc.,
`
`
`
`
`
`
`
`
`Baltimore, Maryland, USA.
`
`
`
`Lee, D.T. and CK. Wong, Quintary Trees: A File Structure
`
`
`
`
`
`
`
`
`
`
`for Multidimensional Database Systems, Sep. 1980, pp.
`
`
`
`
`
`
`
`339—353, vol. 5, No. 3, Association for Computing Machin-
`
`
`
`
`
`
`
`
`ery, Inc., Baltimore, Maryland, USA.
`
`
`
`
`
`Tremblay, Jean—Paul and Paul G. Sorenson, An Introduction
`
`
`
`
`
`
`
`
`to Data Structures with Applications, 1984, pp. 811—826,
`
`
`
`
`
`
`
`
`Second Edition, McGraw—Hill Book Company, New York,
`
`
`
`
`
`
`
`New York, USA.
`
`
`
`Brown, Bradley J., Checksum Methodology as a Configu-
`
`
`
`
`
`
`
`ration Management Tool, The Journal of Systems and Soft-
`
`
`
`
`
`
`
`
`ware, Jun. 1987, pp. 141—143, vol. 7, Elsevier Science
`
`
`
`
`
`
`
`
`Publishing Co., Inc., New York, New York, USA.
`
`
`
`
`
`
`
`
`Segal, Mark E., and O. Frieder, Dynamically Updating
`
`
`
`
`
`
`
`Distributed Software: Supporting Change in Uncertain and
`
`
`
`
`
`
`Mistrustful Environments, Conference on Software Mainte-
`
`
`
`
`
`nance—1989, Oct. 16—19, 1989, pp. 254—261, IEEE Com-
`
`
`
`
`
`
`
`puter Society Press, Piscataway, New Jersey, USA.
`
`
`
`
`
`
`
`Danzig, Peter B., R. S. Hall and M. F. Schwartz, A Case for
`
`
`
`
`
`
`
`
`
`
`
`
`
`Caching File Objects Inside Internetworks, Proceedings:
`
`
`
`
`
`
`SIGCOM ’93—Ithaca NY, 1993, pp. 239—248, Association
`
`
`
`
`
`
`
`for Computing Machinery, Inc., Baltimore, Maryland, USA.
`
`
`
`
`
`
`
`Wedde, Horst F. et al, Distributed Management of Repli-
`
`
`
`
`
`
`
`
`cated and Partitioned Files Under Dragon Slayer, Confer-
`
`
`
`
`
`
`
`ence Publication: Compsac90, The Fourteenth Annual Inter-
`
`
`
`
`
`
`national Computer Software and Applications Conference,
`
`
`
`
`
`Oct. 1990, pp. 436—441, Institute of Electrical and Electron-
`
`
`
`
`
`
`
`
`ics Engineers, Inc., New York, New York, USA.
`
`
`
`
`
`
`
`
`Pilarski, Slawomir, and T. Kameda, A Novel Checkpointing
`
`
`
`
`
`
`
`
`Scheme for Distributed Database Systems, Proceedings of
`
`
`
`
`
`
`
`the Ninth ACM SIGACT—SIGMOD—SIGART Symposium
`
`
`
`
`
`on Principles of Database Systems, Apr. 2—4, 1990, pp.
`
`
`
`
`
`
`
`
`
`368—378, ACM Press, Baltimore, MD., USA.
`
`
`
`
`
`
`Teorey, Toby J. and J .P. Fry, Design of Database Structures,
`
`
`
`
`
`
`
`
`
`1982, pp. xiii—xv and 3—492, Prentice—Hall, Englewood
`
`
`
`
`
`
`Cliffs, New Jersey, USA.
`
`
`
`
`Bentley, Jon Louis, and J.H. Friedman, Data Structures for
`
`
`
`
`
`
`
`
`
`Range Searching, Computing Surveys: The Survey and
`
`
`
`
`
`
`
`Tutorial Journal of the ACM, Dec. 1979, pp. 397—409, vol.
`
`
`
`
`
`
`
`
`
`
`11, No. 4, Association for Computing Machinery,
`Inc.,
`
`
`
`
`
`
`
`
`Baltimore, Maryland, USA.
`
`
`
`Bentley, Jon Louis, Multidimensional Binary Search Trees
`
`
`
`
`
`
`
`Used for Associative Searching, Communications of the
`
`
`
`
`
`
`
`ACM, Sep. 1975, pp. 509—517, vol. 18, No. 9, Association
`
`
`
`
`
`
`
`
`
`
`for Computing Machinery, Inc., Baltimore, Maryland, USA.
`
`
`
`
`
`
`
`
`Date, C.J., An Introduction to Database Systems, 1981, pp.
`
`
`
`
`
`
`
`
`
`1 61, 97 115, 159 181, 237 273, 279 337, and 386—387,
`
`
`
`
`
`
`
`Third Edition, Addison—Wesley, Reading, Massachusetts,
`
`
`
`
`
`USA.
`
`Korth, Henry F., and A. Silberschatz, Database System
`
`
`
`
`
`
`
`
`Concepts (1“ ed.), 1986, pp. 265—272, McGraw—Hill Book
`
`
`
`
`
`
`
`
`Company, New York, New York, USA.
`
`
`
`
`
`
`Nievergelt, J ., Hinterberger, H., and KC. Sevcik, The Grid
`
`
`
`
`
`
`
`
`
`File: An Adaptable, Symmetric Multikey File Structure,
`
`
`
`
`
`
`
`ACM Transactions on Database Systems, Mar. 1984, pp.
`
`
`
`
`
`
`
`
`37—71, vol. 9, No. 1, Association for Computing Machinery,
`
`
`
`
`
`
`
`
`
`Inc., Baltimore, Maryland, USA.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Dart, Susan A., “The Past, Present and Future of Configu-
`
`
`
`
`
`
`
`
`
`ration Management,” Technical Report, Software Engineer-
`
`
`
`
`
`ing Institute, Jul. 1992, pp. 1—28, Carnegie Mellon Univer-
`
`
`
`
`
`
`
`
`sity, Pittsburgh, PA USA.
`
`
`
`
`Dart, Susan, “Concepts in Configuration Management Sys-
`
`
`
`
`
`
`tems,” Article, Software Engineering Institute, Jun. 12—14,
`
`
`
`
`
`
`1991, Carnegie Mellon University, Pittsburgh, PA, USA.
`
`
`
`
`
`
`
`Hiller, Thomas, “SUP—das Software Update Protocol der
`
`
`
`
`
`
`
`Carnegie—Mellon Universitat,” Feb. 2, 1997 World Wide
`
`
`
`
`
`
`
`Web Page. German Language Document: A concise expla-
`
`
`
`
`
`
`
`nation is attached.
`
`
`
`Kumar, Puneet, “Coping with Conflicts in an Optimistically
`
`
`
`
`
`
`
`Replicated File System,” Article, Nov. 8—9, 1990, pp. 60—64,
`
`
`
`
`
`
`
`
`School of Computer Science, Carnegie Mellon University,
`
`
`
`
`
`
`Pittsburgh, PA, USA.
`
`
`
`Downing, Alan R., et. al., “OSCAR: A System for Weak—
`
`
`
`
`
`
`
`
`
`Consistency Replication,” Article, Nov. 8—9, 1990, pp.
`
`
`
`
`
`
`
`26—30, Information and Telecommunications Sciences Cen-
`
`
`
`
`
`ter, SRI International, Menlo Park, CA, USA.
`
`
`
`
`
`
`
`Faloutsos, Christos, “Multiattribute Hashing Using Gray
`
`
`
`
`
`
`Codes,” Article, Department of Computer Science, 1986, pp.
`
`
`
`
`
`
`
`
`227—238, University of Maryland, College Park, MD, USA.
`
`
`
`
`
`
`
`
`Feiler, Peter, and Downey, Grace, “Transaction—Oriented
`
`
`
`
`
`
`Configuration Management:: A Case Study,” Technical
`
`
`
`
`
`
`Report, Software Engineering Institute, Nov. 1990, pp.
`
`
`
`
`
`
`
`9—23, Carnegie Mellon University, Pittsburgh, PA USA.
`
`
`
`
`
`
`
`Feiler, Peter, and Downey, Grace, “Tool Version Manage-
`
`
`
`
`
`
`
`ment Technology: A Case Study,” Technical Report, Soft-
`
`
`
`
`
`
`
`ware Engineering Institute, Nov. 1990, pp. 1—30 Carnegie
`
`
`
`
`
`
`
`
`Mellon University, Pittsburgh, PA USA.
`
`
`
`
`
`Feiler, Peter,
`“Software Configuration Management:
`
`
`
`
`
`Advances in Software Development Environments,” Article,
`
`
`
`
`
`
`Software Engineering Institute, Mar. 9 1990, pp. 1—12,
`
`
`
`
`
`
`
`
`Carnegie Mellon University, Pittsburgh, PA, USA.
`
`
`
`
`
`
`Cooper, Michael A., “Overhauling Rdist for the ’90’s,”
`
`
`
`
`
`
`
`Article, Proceedings of the Sixth Systems Administration
`
`
`
`
`
`
`Conference (LISA VI), USENIX Association, Oct., 1992,
`
`
`
`
`
`
`pp. 175—188, Long Beach, CA, USA.
`
`
`
`
`
`
`Brown, A., et al, “The State of Automated Configuration
`
`
`
`
`
`
`
`
`
`Management,” Annual Technical Review, Sep. 1991, pp.
`
`
`
`
`
`
`
`1—52, Software Engineering Institute, Carnegie Mellon Uni-
`
`
`
`
`
`
`versity, Pittsburgh, PA, USA.
`
`
`
`
`Brown, Mark R. and Ellis, John R., “Bridges: Tools to
`
`
`
`
`
`
`
`
`
`
`Extend the Vesta Configuration Management System,”
`
`
`
`
`
`
`Article, System Research Center, Digital Equipment Cor-
`
`
`
`
`
`
`poration, Jun. 14, 1993, pp. 1—42, Palo Alto, CA, USA.
`
`
`
`
`
`
`
`
`
`
`Bauer, Michael A., “Naming and Name Management Sys-
`
`
`
`
`
`
`
`tems: A Survey of the State of the Art,” Technical Report
`
`
`
`
`
`
`
`
`
`
`241, Jun. 1989, pp. 1—83, Distributed Directories Labora-
`
`
`
`
`
`
`
`tory, Department of Computer Science, The University of
`
`
`
`
`
`
`
`Western Ontario, Ontario, Canada.
`
`
`
`
`Bauer, Michael A., et al, “Replication Strategies for X.500:
`
`
`
`
`
`
`
`
`
`Experiments with a Prototype X.500 Directory,” Technical
`
`
`
`
`
`
`
`Report 279, Oct. 1990, pp. 1—36, Distributed Directories
`
`
`
`
`
`
`
`
`Laboratory, Department of Computer Science, The Univer-
`
`
`
`
`
`
`sity of Western Ontario, Ontario, Canada.
`
`
`
`
`
`
`Bennett, J.M. and Bauer, Michael A., “An Analysis of
`
`
`
`
`
`
`
`
`Replication Strategies for X.500—like Distributed Directo-
`
`
`
`
`
`ries,” Proceedings, Workshop On the Management of Rep-
`
`
`
`
`
`
`
`licated Data, Nov. 8—9, 1990, pp. 137—142 IEEE Comput.
`
`
`
`
`
`
`
`
`
`Soc. Press Los Alamitos, CA.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Dropbox Ex. 1029
`Page 2
`
`Dropbox Ex. 1029
`Page 2
`
`
`
`
`5,919,247
`
`Page 3
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Broder, Andrei Z., “Some applications of Rabin’s finger-
`
`
`
`
`
`
`
`printing method,”Article, presented at workshop—Sequences
`
`
`
`
`
`II Methods in Communication, Security, and Computer
`
`
`
`
`
`
`Science, Jun. 17—21, 1991, pp. 143—152, Springer—Verlag,
`
`
`
`
`
`
`New York, USA, Published 1993.
`
`
`
`
`
`Broder, Andrei Z., et al, “Trading Space for Time in Undi-
`
`
`
`
`
`
`
`
`
`
`rected s—t Connectivity,” Article, May 7, 1991. pp. 1—14,
`
`
`
`
`
`
`
`
`Digital Equipment Corporation, Systems Research Center,
`
`
`
`
`
`Palo Alto, CA, USA.
`
`
`
`
`Barbara, Daniel and Lipton, Richard J ., “A Class of Ran-
`
`
`
`
`
`
`
`
`
`domized Strategies for Low—Cost Comparison of File Cop-
`
`
`
`
`
`
`
`ies,” Article, Apr. 1991, pp. 160—179, vol. 2, No. 2, IEEE
`
`
`
`
`
`
`
`
`
`
`Transactions On Parallel And Distributed Systems, Princ-
`
`
`
`
`
`
`eton, NJ, USA.
`
`
`
`IBM, “Administrator’s Guide” IBM Distributed Change
`
`
`
`
`
`Management Facility /MVS, Version 1, Release 1, 15’ edi-
`
`
`
`
`
`
`
`
`tion, Aug. 1990, pp. 1—64, Cary, NC, USA.
`
`
`
`
`
`
`
`
`Metzner, John A., “A Parity Structure for Large Remotely
`
`
`
`
`
`
`
`
`Located Replicated Data Files”, Article, IEEE Transactions
`
`
`
`
`
`
`on Computers vol. C 32, No. 8, Aug. 1983, pp. 727—730,
`
`
`
`
`
`
`
`
`
`
`IEEE Computer Society Press, Washington, DC, USA.
`
`
`
`
`
`
`
`Schwarz, Thomas, et al, “Low Cost Comparisons of File
`
`
`
`
`
`
`
`
`Copies,” Technical Report, UCSD, Proc. Of the 10th inter-
`
`
`
`
`
`
`
`
`national Conference on Distributed Computing Systems,
`
`
`
`
`
`May/Jun., 1990, pp. 196—202,
`IEEE Computer Society
`
`
`
`
`
`
`Press, Washington, DC, USA.
`
`
`
`
`Sarin, Sunil, Floyd, Richard, and Phadnis, Nilkanth, “A
`
`
`
`
`
`
`
`
`Flexible Algorithm for Replicated Directory Management,”
`
`
`
`
`
`
`Article, Proc. Of the 9th International Conference on Dis-
`
`
`
`
`
`
`
`
`tributed Computing Systems, 1989, pp. 456—464, IEEE,
`
`
`
`
`
`
`Cambridge, MA, USA.
`
`
`
`Rangajaran, Sampath and Fussell, Donald, “Rectifying Cor-
`
`
`
`
`
`
`
`
`
`
`
`
`
`rupted Files in Distributed File Systems”, Article, 11‘”
`International Conference on Distributed Computing Sys-
`
`
`
`
`
`tems, May, 1991, pp. 446—453, University of Maryland,
`
`
`
`
`
`
`
`College Park, MD, USA.
`
`
`
`
`Madej, Tom, “An Application of Group Testing to the File
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Comparison Problem,” Article, Proc. Of the 9th International
`
`Conference on Distributed Computing Systems, Jun., 1989,
`
`
`
`
`
`
`
`pp. 237—243, University of Illinois, Urbana, IL, USA.
`
`
`
`
`
`
`
`
`for
`Barbara, Daniel,
`al,
`“Exploiting Symmetries
`et
`
`
`
`
`
`
`
`
`
`
`
`
`
`Low—Cost Comparison of File Copies,” Article, 8th Inter-
`
`national Conference on Distributed Computing Systems,
`
`
`
`
`
`Jun. 1988, pp. 471—479, IEEE Computer Society Press,
`
`
`
`
`
`
`
`Princeton University, Princeton, NJ,.
`
`
`
`
`Fuchs, W.K., Wu, K. and Abraham, J., “Low—Cost Com-
`
`
`
`
`
`
`
`
`parison and Diagnosis of Large Remotely Located Files,”
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Article, Proc. 5‘” Symposium on Reliability in Dist. Soft-
`
`ware and Database Systems, Jan., 1986, pp. 67—73, IEEE,
`
`
`
`
`
`
`
`
`Computer Society Press, IL, USA.
`
`
`
`
`
`Pu, Calton, Noe, Jerre, and Proudfoot, Andrew, “Regenera-
`
`
`
`
`
`
`
`tion of Replicated Objects: A Technique and it’s Eden
`
`
`
`
`
`
`
`
`Implementation,” IEEE Transactions on Software Engineer-
`
`
`
`
`
`ing, vol. 4, No. 7, Jul. 1988, pp. 936—945, University of
`
`
`
`
`
`
`
`
`
`
`Wash., Seattle, WA, USA.
`
`
`
`
`Acharya, Arup, and Badrinath, B.R., “Delivering Multicast
`
`
`
`
`
`
`
`Messages in Networks with Mobile Hosts,” Article, Proc.
`
`
`
`
`
`
`
`
`
`
`
`
`
`13th International Conference on Distributed Computing
`
`Systems, May. 1993, pp. 292—299, IEEE Computer Society
`
`
`
`
`
`
`
`
`Press, Los Alamitos, CA, USA.
`
`
`
`
`
`Jia, Xiaohua, et al, “Highly Concurrent Directory Manage-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ment in the Galaxy Distributed System,” Article, Proc. 10th
`International Conference on Distributed Computing Sys-
`
`
`
`
`
`tems, May—Jun., 1990, pp. 416—423, IEEE Computer Soci-
`
`
`
`
`
`
`
`ety Press, Los Alamitos, CA, USA.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Tugender, Ronald, “Maintaining Order and Consistency in
`
`
`
`
`
`
`Multi—Access Data,” Article, AFIPS Conference Proceed-
`
`
`
`
`
`ings, 1979 National Computer Conference, Jun. 1979, pp.
`
`
`
`
`
`
`
`
`869—874, USC Information Science Institute, Marina Del
`
`
`
`
`
`
`
`Ray, CA, USA.
`
`
`
`Gopal, Inder and Segall, Adrian, “Directories for Networks
`
`
`
`
`
`
`
`with Casually Connected Users,” 1990, pp. 255—262,
`
`
`
`
`
`
`Elsevier Science Publishers B.V. (North—Holland).
`
`
`
`
`
`Cheng, Hsiao—Chung and Sheu, Jang—Ping, “Design and
`
`
`
`
`
`
`
`Implementation of a Distributed File System,” Article, Soft-
`
`
`
`
`
`
`ware—Practice and Experience, vol. 21(7), Jul., 1991, pp.
`
`
`
`
`
`
`
`
`657—675, John Wiley and Sons, Ltd.
`
`
`
`
`
`
`Grosse, Eric, “Repository Mirroring,” Article, ACM Trans-
`
`
`
`
`
`
`actions on Mathematical Software, vol. 21, No. 1, Mar.
`
`
`
`
`
`
`
`
`
`1995, pp. 89—97, Murray Hill, NJ, USA.
`
`
`
`
`
`
`
`Howard, John H., “Using Reconciliation to Share Files
`
`
`
`
`
`
`
`
`between Occasionally Connected Computers,” Article, Proc.
`
`
`
`
`
`
`4th Workshop on Workstation Operating Systems, Oct.,
`
`
`
`
`
`
`
`1993, pp. 56—60, IEEE Computer Society Press, Cambridge,
`
`
`
`
`
`
`
`
`MA, USA.
`
`
`Courington, William, “The Network Software Environ-
`
`
`
`
`
`ment,” Tech. Sun Microsystems Tech Report, 1989, pp.
`
`
`
`
`
`
`
`
`1—104, Sun Microsystems Mt. View, CA, USA.
`
`
`
`
`
`
`
`Nachbar, Daniel, “When Network File Systems Aren’t
`
`
`
`
`
`
`
`Enough: Automatic Software Distribution Revisited,”
`
`
`
`
`
`Article, USENIX Association, Summer Conference Pro-
`
`
`
`
`
`ceedings, Jun., 1986, pp. 159—171, Bell Communications
`
`
`
`
`
`
`Research, Morristown, NJ, USA.
`
`
`
`
`Satdeva, Bjorn and Moriarty, Paul M., “Fdist: A Domain
`
`
`
`
`
`
`
`
`Based File Distribution System for a Heterogeneous Envi-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ronment,” USENIX Association, Proc. Of the 5th Large
`
`Installation Systems Administration Conference,(LISA V)
`
`
`
`
`
`Sep./Oct. 1991, pp. 109—125.
`
`
`
`
`Symborski, Carl, “Updating Software and Configuration
`
`
`
`
`
`Data in a Distributed Communications Network,” Article,
`
`
`
`
`
`
`Hughes Network Systems, IEEE, 1988, pp. 331—8, German-
`
`
`
`
`
`
`
`town, MD, USA.
`
`
`
`Shafer, Stephen and Thompson, Mary, “The SUP Software
`
`
`
`
`
`
`
`
`Upgrade Protocol,” Sep. 1989, pp. 1—13, Carnegie Mellon
`
`
`
`
`
`
`
`
`University School of Computer Science, Pittsburgh, PA,
`
`
`
`
`
`
`
`USA.
`
`Prusker, Francis J. and Wobber, Edward P., “The Siphon:
`
`
`
`
`
`
`
`
`
`Managing Distant Replicated Repositories,” Article, Digital
`
`
`
`
`
`
`Equipment Corporation, Nov. 8—9, 1990, pp. 44—47, IEEE,
`
`
`
`
`
`
`
`
`Palo Alto, CA, USA.
`
`
`
`
`Cooper, Michael A., “Rdist Version 6.1, May 2, 1994,” pp.
`
`
`
`
`
`
`
`
`
`
`1—4, University of Southern California Computing Services,
`
`
`
`
`
`
`
`Los Angeles, CA, USA.
`
`
`
`
`Paciorek, Noemi and Teller, Mark, “An Object Oriented,
`
`
`
`
`
`
`
`File System Independent, Distributed File Server,” Article,
`
`
`
`
`
`
`File Systems Workshop, USENIX Association, May 21,
`
`
`
`
`
`
`1992, pp. 45—62, Marlborough, MA, USA.
`
`
`
`
`
`
`Shasa, Dennis and Zhang, Kaizhong, “Fast Algorithms for
`
`
`
`
`
`
`
`
`the Unit Cost Editing Distance Between Trees,” Article,
`
`
`
`
`
`
`
`
`Journal of Algorithms II, 1990, 581—62, Academic Press,
`
`
`
`
`
`
`
`
`Inc, New York, NY, USA.
`
`
`
`
`
`Tai, Kuo—Chung, “The Tree to Tree Correction Problem,”
`
`
`
`
`
`
`
`Article, Journal of the Association for Computing Machin-
`
`
`
`
`
`
`
`ery, vol. 26, No. 3, Jul. 1979, pp. 422—433, Raleigh, NC,
`
`
`
`
`
`
`
`
`
`
`USA.
`
`“fingerprint/src/finger-
`Digital Equipment Corporation,
`
`
`
`print.i3,” SRC Modula—3, 1994, Digital Equipment Corpo-
`
`
`
`
`
`
`ration, pp. 1—5, Maynard, MA, USA.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Dropbox Ex. 1029
`Page 3
`
`Dropbox Ex. 1029
`Page 3
`
`
`
`
`5,919,247
`
`Page 4
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Loverso, Susan, et al, “The OSF/1 Unix Filesystem (UFS),”
`
`
`
`
`
`
`
`
`Article, USENIX, Winter, 1991, pp. 207—218, Dallas, Texas,
`
`
`
`
`
`
`
`USA.
`
`Lu, Shin—Yee, “A Tree to Tree Distance and It’s Application
`
`
`
`
`
`
`
`
`to Cluster Analysis,” IEEE Transactions on Pattern Analysis
`
`
`
`
`
`
`
`and Machine Intelligence, vol. PAMI—1, No. 2, Apr., 1979,
`
`
`
`
`
`
`
`
`pp. 219—224, Syracuse University, Syracuse, NY, USA.
`
`
`
`
`
`
`
`Katz, Randy H., et al, “Version Modeling Concepts for
`
`
`
`
`
`
`
`
`
`Computer—Aided Design Databases,” Article, Association
`
`
`
`
`
`for Computing Machinery, 1986, pp. 379—386, Berkeley,
`
`
`
`
`
`
`
`CA, USA.
`
`
`Kistler, James Jay, “Increasing File System Availability
`
`
`
`
`
`
`through Second Class Replication,” IEEE, Nov. 8—9, 1990,
`
`
`
`
`
`
`
`p. 69, Carnegie Mellon University, Pittsburgh, PA, USA.
`
`
`
`
`
`
`
`
`Kistler, James J. and Satyanarayanan, M., “Disconnected
`
`
`
`
`
`
`Operation in the Coda File System,” Article, ACM Trans-
`
`
`
`
`
`
`
`
`actions on Computer Systems, vol. 10, No. 1, Feb. 1992, pp.
`
`
`
`
`
`
`
`
`
`
`
`3—25, ACM, Carnegie Mellon University, Pittsburgh, PA,
`
`
`
`
`
`
`
`USA.
`
`Harrison, Helen B, “So Many Workstations, So Little
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Time,” USENIX Association, Proc. Of the 6th Systems
`
`Administration Conference (LISA VI), Oct., 1992, pp.
`
`
`
`
`
`
`
`79—87, SAS Institute, Cary, NC, USA.
`
`
`
`
`
`
`Pukatzki, Dieter and Schumann, Johann, “Autoload; The
`
`
`
`
`
`
`
`Network Management System,” USENIX Association,
`
`
`
`
`
`
`
`
`
`
`
`
`Proc. Of the 6th Systems Administration Conference (LISA
`
`VI), Oct., 1992, pp. 97—104, Germany.
`
`
`
`
`
`
`Rosenstein, Mark and Peisach, Ezra, “Mkserv—Workstation
`
`
`
`
`
`
`Customization and Privatization,” USENIX Association,
`
`
`
`
`
`
`
`
`
`
`
`
`Article, Proc. Of the 6‘” Systems Administration Conference
`
`(LISA VI), Oct., 1992, pp. 89—95, MIT Information Sys-
`
`
`
`
`
`
`
`
`tems, Boston, MA, USA.
`
`
`
`
`Vangala, Ram R., et al, “Software Distribution and Man-
`
`
`
`
`
`
`
`
`agement in a Networked Environment,” Article, USENIX
`
`
`
`
`
`
`
`
`
`
`
`
`Association, Proc. Of the 6‘” Systems Administration Con-
`
`ference (LISA VI), Oct., 1992, pp. 163—170, NJ, USA.
`
`
`
`
`
`
`
`
`
`Zwicky, Elizabeth D., “Typecast: Beyond Cloned Hosts,”
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Article, USENIX Association, Proc. Of the 6‘” Systems
`
`Administration Conference (LISA VI), Oct., 1992, pp.
`
`
`
`
`
`
`
`73—78,, SRI International, Menlo Park, CA, USA.
`
`
`
`
`
`
`
`Fletcher, Mark, “doit: A Network Software Management
`
`
`
`
`
`
`Tool,” Article, USENIX Association, Proc. Of the 6th Sys-
`
`
`
`
`
`
`
`
`tems Administration Conference (LISA VI), Oct., 1992, pp.
`
`
`
`
`
`
`
`
`189—196, Cary, NC, USA.
`
`
`
`
`Tichy, Walter E, “An Introduction to the Revision Control
`
`
`
`
`
`
`
`
`
`System,” UNIX Programmer’s Supplementary Documents
`
`
`
`
`
`vol. 1:13—1, Apr., 1986, pp. 13—1—13—21, Purdue University,
`
`
`
`
`
`
`
`
`West Lafayette, IN, USA.
`
`
`
`
`for Flexible Software
`Eirich, Thomas, “Beam: A Tool
`
`
`
`
`
`
`
`Update,” Article, 1994 LISA, Sep., 1994, pp. 75—82, Uni-
`
`
`
`
`
`
`
`
`versity of Erlangen—Numberg, Germany.
`
`
`
`
`Rouillard, John P. and Martin, Richard B., “Depot—Lite: A
`
`
`
`
`
`
`
`
`
`Mechanism for Managing Software,” Article, 1994 LISA,
`
`
`
`
`
`
`
`Sep., 1994, pp. 83—91, Boston, Massachusetts, USA.
`
`
`
`
`
`
`
`Allman, Eric., “An Introduction to the Source Code Control
`
`
`
`
`
`
`
`
`
`System,” UNIX Programmer’s Supplementary Documents
`
`
`
`
`
`vol. 1:14—1, Apr., 1986, pp. 14—1—14—15, Berkeley, CA,
`
`
`
`
`
`
`
`
`USA.
`
`Walpole, J. et al, “Maintaining Consistency in Distributed
`
`
`
`
`
`
`
`
`Software Engineering Environments,” Article, IEEE, Proc.
`
`
`
`
`
`
`
`
`
`
`
`
`Of the 8th International Conference on Distributed Comput-
`
`ing Systems, Jun., 1988, (no page #’s), Bailrigg, United
`
`
`
`
`
`
`
`
`Kingdom.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Osel, Peter, W. and Gansheimer, Wilfried, “OpenDist—
`
`
`
`
`
`
`Incremental Software Distribution,” Article, USENIX Asso-
`
`
`
`
`
`
`
`
`
`
`
`ciation, Proc. Of the 9‘” Systems Administration Conference
`
`(LISA IX), Sep., 1995, pp.
`181—193, Siemens AG,
`
`
`
`
`
`
`
`Munchen, Germany.
`
`
`Chiu, Sheng—Yang and Levin, Roy, “The Vesta Repository:
`
`
`
`
`
`
`
`
`A File System Extension for Software Development,”
`
`
`
`
`
`
`
`Article, Systems Research Center of Digital Equipment
`
`
`
`
`
`
`
`Corporation, Jun., 1993, pp. 1—32, Palo Alto, CA, USA.
`
`
`
`
`
`
`
`
`
`Manheimer, Kenneth, et al, “The Depot: A Framework for
`
`
`
`
`
`
`
`
`
`Sharing Software Installation Across Organizational and
`
`
`
`
`
`
`UNIX Platform Boundaries,” Article, LISA IV, Oct., 1990,
`
`
`
`
`
`
`
`
`pp. 37—45.
`
`
`Jones, George M. and Romig, Steven M., “Cloning Cus-
`
`
`
`
`
`
`
`
`tomized Hosts (or Customizing Cloned Hosts),” Article,
`
`
`
`
`
`
`LISA V, Sep./Oct., 1991, pp. 233—241, Ohio State Univer-
`
`
`
`
`
`
`
`
`sity, Columbus, OH, USA.
`
`
`
`
`Rich, Kenneth and Leadley, Scott, “hobgoblin: A File and
`
`
`
`
`
`
`
`
`
`Directory Auditor,” Article, LISA V, Sep./Oct., 1991, pp.
`
`
`
`
`
`
`
`
`199—206, University of Rochester, Rochester, NY, USA.
`
`
`
`
`
`
`
`Wuu, Gene T.J. and Bernstein, Arthur, J., “Efficient Solu-
`
`
`
`
`
`
`
`
`tions to the Replicated Log and Dictionary Problems,” Proc.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Of the 3rd PODC Conference Proceedings, ACM, 1984, pp.
`
`57—66, ACM Press, Department of Computer Science, Suny
`
`
`
`
`
`
`
`
`Stony Brook, Long Island, NY, USA.
`
`
`
`
`
`
`Daniels, Dean and Spector, Alfred Z., “An Algorithm for
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Replicated Directories,” Proc. Of the 2”“ PODC Conference
`
`Proceedings, 1983, pp. 24—43, ACM Press, Department of
`
`
`
`
`
`
`
`
`Computer Science, Carnegie Mellon University, Pittsburgh,
`
`
`
`
`
`
`PA, USA.
`
`
`Gladney, H.M., “Data Replicas in Distributed Information
`
`
`
`
`
`
`Services,” Article, ACM Transactions on Database Systems,
`
`
`
`
`
`
`vol. 14, No. 1, Mar. 1989, pp. 75—97, San Jose, CA, USA.
`
`
`
`
`
`
`
`
`
`
`
`Colton, Malcom, “Replicated Data in a Distributed Envi-
`
`
`
`
`
`
`
`ronment,” Proc. Of the 1993 ACM SIGMOD International
`
`
`
`
`
`
`
`
`Conference on Management of Data, vol. 22, Issue 2, May,
`
`
`
`
`
`
`
`
`
`
`1993, pp. 464—6, ACM Press, Washington, DC, USA.
`
`
`
`
`
`
`
`
`Alonso, Rafael and Korth, Henry F., “Database System
`
`
`
`
`
`
`
`
`Issues in Nomadic Computing,” Proc. Of the 1993 ACM
`
`
`
`
`
`
`
`
`
`SIGMOD International Conference on Management of
`
`
`
`
`
`
`Data, vol. 22, Issue 2, May, 1993, pp. 388—392, Princeton,
`
`
`
`
`
`
`
`
`
`
`NJ, USA.
`
`
`Lindsay, et al, “A Snapshot Differential Refresh Algorithm,”
`
`
`
`
`
`
`
`Proc. Of the 1986 ACM SIGMOD International Conference
`
`
`
`
`
`
`
`on Management of Data, ACM, 1986, pp. 53—60, ACM
`
`
`
`
`
`
`
`
`Press, San Jose, CA, USA.
`
`
`
`
`
`Wolfson, Ouri and Jajodia, Sushil, “Distributed Algorithms
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`for Dynamic Replication of Data,” Proc. Of the 11th ACM
`SIGACT SIGMOD SIGART Symposium on Principles of
`
`
`
`
`
`
`
`Database Systems, ACM, Jul., 1992, pp. 149—156, ACM
`
`
`
`
`
`
`
`
`Press, San Diego, CA, USA.
`
`
`
`
`
`Liskov, Barbara, et al, “Replication in the Harp File Sys-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tem,” Proc. Of the 13th ACM Symposium on Operating
`Systems Principles, ACM, Oct., 1991, pp. 226—238, MIT,
`
`
`
`
`
`
`
`
`Cambridge, MA, USA.
`
`
`
`Liskov, Barbara, et al, “A Replicated UNIX File System,”
`
`
`
`
`
`
`
`
`ACM Operating Systems Review, vol. 25, No. 1, Jan., 1991,
`
`
`
`
`
`
`
`
`
`pp. 60—64, ACM Press, MIT, Cambridge, MA, USA.
`
`
`
`
`
`
`
`
`Ladin, Rivka, et al, “Lazy Replication: Exploiting the
`
`
`
`
`
`
`
`
`Semantics of Distributed Services,” ACM Operating Sys-
`
`
`
`
`
`
`tems Review, vol. 25, No. 1, Jan., 1991, pp. 49—55, ACM
`
`
`
`
`
`
`
`
`
`
`Press, Cambridge, MA, USA.
`
`
`
`
`Tivoli Systems, Inc., “Tivoli/Courier User’s Guide,” Tivoli
`
`
`
`
`
`
`Systems, Inc., 1991—5, pp. 1—1—8—27, Austin, TX, USA.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Dropbox Ex. 1029
`Page 4
`
`Dropbox Ex. 1029
`Page 4
`
`
`
`
`5,919,247
`Page 5
`
`
`
`
`
`
`Tivoli Systems, Inc., “Tivoli/Courier Reference Manual,”
`
`
`
`
`
`
`Reference Manual, Tivoli Systems,
`Inc., 1991—5, pp.
`
`
`
`
`
`
`
`1—1—6—4, Austin, TX, USA.
`
`
`
`
`Lan Supervision,
`Inc., “Change Management Facility
`
`
`
`
`
`(CMF),” Administrator’s Guide, 1995, pp. 2—159, San
`
`
`
`
`
`
`Ramon, CA, USA.
`
`
`
`Lan Supervision, Inc., “Change Management Facility,” Gen-
`
`
`
`
`
`
`eral Information Guide, 1995, pp. 1—51, San Ramon, CA,
`
`
`
`
`
`
`
`
`USA.
`IBM, “General
`Information Manual,” IBM Distributed
`
`
`
`
`Change Management Facility /MVS, Version 1, Release 1,
`
`
`
`
`
`
`
`1“ edition, Aug. 1990, pp. 1—50, Cary, NC, USA.
`
`
`
`
`
`
`
`
`
`
`Anderson, Paul, “Managing Program Binaries in a Hetero-
`
`
`
`
`
`
`
`geneous UNIX Network,” Article, LISA V Sep./Oct., 1991,
`
`
`
`
`
`
`
`pp. 1—7, University of Edinburgh, Edinburgh, UK.
`
`
`
`
`
`
`
`
`
`
`Cooper, Michael, RDist (Computer Program and Documen-
`
`
`
`
`
`
`tation), Web Site: http://hpuX.dutchworks.nl, Date of Publi-
`
`
`
`
`
`
`cation Unknown, not later than Feb. 25, 1997, HP Dutch-
`
`
`
`
`
`
`
`
`
`Works, The Netherlands.
`
`
`
`
`
`Lemay, Laura, “Official Guide to Castanet”, 1997, iv—353
`
`
`
`
`
`
`
`and supplements, 1“ ed. Sams.net, Indianapolis, IN.
`
`
`
`
`
`
`
`
`
`
`Dropbox Ex. 1029
`Page 5
`
`
`
`
`
`
`
`
`Dropbox Ex. 1029
`Page 5
`
`
`
`
`US. Patent
`
`
`
`Jul. 6, 1999
`
`
`
`
`
`Sheet 1 0f 13
`
`
`
`
`
`
`5,919,247
`
`
`
`100V
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SERVER SYSTEM
`
`
`
`
`CLIENT SYSTEM
`
`
`
`NETWORK
`
`
`
`
`
`
`
`
`SERVER SYSTEM
`
`
`
`110
`
`
`
`
`
`
`
`
`
`
`
`CLIENT SYSTEM
`
`
`
`
`
`140 '
`
`
`
`DEVELOPMENT
`SYSTEM
`
`
`
`
`
`
`
`
`
`
`
`
`————_..
`1.91
`
`
`
`
`PROXY SYSTEM
`
`
`
`
`
`
`
`Dropbox Ex. 1029
`Page 6
`
`Dropbox Ex. 1029
`Page 6
`
`
`
`US. Patent
`
`Jul. 6, 1999
`
`Sheet 2 0f 13
`
`5,919,247
`
`CLIENT SYSTEM
`
`141
`
`NETWORK
`INTERFACE
`
`OPERATING SYSTEM
`WEB BROWSER
`
`CHANNEL APPL.
`
`STORAGE SYSTEM
`
`HOLDING LOG
`
`HOLDING INDEX
`
`HOLDING DATA '
`
`CHANNEL INDEX
`
`CHANNEL DATA
`
`CHANNEL
`
`0O F
`
`IG. 13
`
`Dropbox Ex. 1029
`
`Page 7
`
`
`
`
`US. Patent
`
`
`
`Jul. 6, 1999
`
`
`
`
`
`Sheet 3 0f 13
`
`
`
`
`5,919,247
`
`
`
`
`110
`
`
`
`
`
`SERVER SYSTEM
`
`120
`11 1
`
`NETWORK
`
`
`
`
`
`121
`
`
`
`
`
`
`
`INTERFACE
`
`
`
`TRANSMITTER
`
`OPERATING SYSTEM
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
` STORAGE SYSTEM
`
`
`
`
` CHANNEL INDEX
`
`
`
`
`
`CHANNEL DATA
`
`
`0C F
`
`
`
`
`
`
`
`
`
`CHANNEL
`
`
`
`
`
`
`
`
`
`
`IG. 1C
`
`
`
`Dropbox Ex. 1029
`Page 8
`
`
`Dropbox Ex. 1029
`Page 8
`
`
`
`
`US. Patent
`
`
`
`Jul. 6, 1999
`
`
`
`
`
`Sheet 4 0f 13
`
`
`
`
`5,919,247
`
`
`
`
`DEVELOPMENT SYSTEM
`
`
`
`170
`
`
`
`171
`
`
`
`NETWORK
`INTERFACE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`130
`
`
`
`
`Y
`OPERATING S STEM
`
`DEVELOPMENT TOOLS
`
`
`
`181
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`CHANNEL DATA
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ADMINISTRATION TOOL STORAGE SYSTEM
`
`
`FIG. 10
`
`
`
`Dropbox Ex. 1029
`Page 9
`
`
`Dropbox Ex. 1029
`Page 9
`
`
`
`
`
`
`
`
`NETWORK
`INTERFACE
`
`
`
`
`
`OPERATING SYSTEM
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`HTTP CACHE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`US. Patent
`
`
`
`Jul. 6, 1999
`
`
`
`
`
`Sheet 5 0f 13
`
`
`
`
`5,919,247
`
`
`
`
`PROXY SYSTEM
`
`
`
`
`
`1.90
`
`
`
`HTTP PROXY SERVER STORAGE SYSTEM
`
`
`FIG. 15
`
`
`
`Dropbox Ex. 1029
`Page 10
`
`
`Dropbox Ex. 1029
`Page 10
`
`
`
`US. Patent
`
`Jul. 6, 1999
`
`Sheet 6 of 13
`
`5,919,247
`
`201
`
`202
`
`203
`
`204
`
`x 200
`
`DIRECTORY INDEX NODE
`
`CHECKSUM
`
`
`
`
`
`- UMBER OF CHILDREN
`
` 211
`
`212
`
`213
`
`214
`
`215
`
`FILE INDEX NODE
`
`FILE INDEX NODE
`
`FILE POINTER
`FIG. 2
`
`221
`
`— 222
`
`223
`
`224
`
`231
`
`232
`
`, 233
`
`234
`
`Dropbox Ex. 1029
`
`Page 11
`
`
`
`US. Patent
`
`Jul. 6, 1999
`
`Sheet 7 0f 13
`
`5,919,247
`
`FOR EACH UNIQUE
`
`AND SERVER INDEX
`
`DIRECTORY
`
`NODE?
`
`IN BOTH
`
`INDICES?
`
`IN
`
`SERVER
`
`INDEX?
`
`NODE IN THE CLIENT
`
`
`
`NO
`
`NO
`
`ISSUE CREATE
`
`ISSUE DELETE
`
`ISSUE UPDATE
`
`FILE
`
`FILE
`
`FILE
`
`30.9
`
`\
`310
`
`FIG. 3A
`
`311
`
`Dropbox Ex. 1029
`
`Page 12
`
`
`
`US. Patent
`
`Jul. 6, 1999
`
`Sheet 8 0f 13
`
`5,919,247
`
`IN BOTH
`
`INDICES?
`
`IN SERVER
`
`INDEX?
`
`0
`
`NO ACTION
`
`REQUIRED
`
`306
`
`
`
`ISSUE CREATE
`DIRECTORY
`
`'SSUE F'LE D'FF
`
`ISSUE DELETE
`DIRECTORY
`
`313
`
`314
`
`FIG. 3B
`
`Dropbox Ex. 1029
`
`Page 13
`
`
`
`US. Patent
`
`Jul. 6, 1999
`
`Sheet 9 0f 13
`
`5,919,247
`
`SELECT CHANNEL
`
`401
`
`402
`
`PREPARE SUBSCRIBE
`
`REQUEST
`
`403
`
`GET CHANNEL INDEX
`
`
`
`
`
`OPTIMIZE
`
`UPDATE?
`
`PREPARE OPTIMIZED
`
`UPDATE REQUEST
`
`PREPARE UPDATE
`
`REQUEST
`
`
`
`405'
`
`ADD CLIENT
`
`INFORMATION
`
`409
`
`ADD CHANNEL DATA
`
`FIG. 4
`
`Page 14
`
`
`Dropbox Ex. 1029
`
`
`
`US. Patent
`
`Jul. 6, 1999
`
`Sheet 10 0f 13
`
`5,919,247
`
`PREPARE REQUEST
`
`CONNECT TO
`
`TRANSMITTER
`
`501
`
`502
`
`NO
`
`503
`
`YES
`
`SEND REQUEST
`
`WAIT FOR REPLY
`
`READ REPLY
`
`
`
`PREPARE UPDATE
`
`CONNECT TO
`
`REDIRECTED
`
`TRANSMITTER
`
`