throbber
US006131116A
`
`
`
`United States Patent
`
`
`
`6,131,116
`Patent Number:
`
`[11]
`[19]
`
`
`
`
`
`
`
`Rigginsetal.
`*Oct. 10, 2000
`[45]
`Date of Patent:
`
`
`
`
`
`
`SYSTEM AND METHOD FOR GLOBALLY
`
`
`
`
`ACCESSING COMPUTER SERVICES
`
`
`
`
`
`
`
`
`
`
`
`Inventors: Mark D. Riggins, McLeansville, N.C.;
`
`
`
`
`
`
`R. Stanley Bailes, San Jose, Calif.;
`
`
`
`
`
`Hong O. Bui, Cupertino, Calif.; David
`
`
`
`
`
`
`I. Cowan, Menlo Park, Calif.; Daniel I.
`
`
`
`
`
`Mendez; Mason Ng,both of Mountain
`
`
`
`
`
`View, Calif.; Sean Michael Quinlan,
`
`
`
`
`
`San Francisco, Calif.; Prasad Wagle,
`
`
`
`
`Santa Clara, Calif.; Christine C. Ying,
`
`
`
`
`Foster City, Calif.; Christopher R.
`
`
`
`
`
`Zuleeg, San Jose, Calif; Joanna A.
`
`
`
`
`Aptekar-Strober, Menlo Park, Calif.
`
`
`
`
`
`Assignee: Visto Corporation, Mountain View,
`Calif.
`
`
`
`
`
`
`
`This patent issued on a continued pros-
`
`
`
`
`
`ecution application filed under 37 CFR
`
`
`
`
`
`
`1.53(d), and is subject to the twenty year
`
`
`
`
`
`
`term provisions of 35 U.S.C.
`patent
`
`154(a)(2).
`
`Notice:
`
`
`
`
`
`
`
`
`Appl. No.: 08/766,307
`
`
`
`Filed:
`Dec. 13, 1996
`
`
`
`
`
`
`
`Tint, C07 cece eececseeeecseeeseceesnneeeceennenseesnnees GO06F 15/16
`
`
`
`
`US. Ce ccccsecseesessnessnceeserneneennees 709/219; 709/203
`
`
`
`
`
`
`
`
`Field of Search... 395/200.33, 200.47,
`
`
`
`
`395/200.57, 200.49, 200.59; 709/203, 217,
`227, 229, 219
`
`
`
`
`
`
`
`
`[54]
`
`
`[75]
`
`
`[73]
`
`
`
`
`[21]
`
`[22]
`
`[51]
`
`
`
`[52]
`
`
`[58]
`
`
`
`References Cited
`
`
`U.S. PATENT DOCUMENTS
`
`
`
`5/1989 Miller et al. oe eeeeee 707/104
`
`
`
`
`
`6/1993 Parker ...ccccccsssssesscsssseeecsssneesseees 380/21
`
`
`
`
`
`11/1993 Janis we.
`we. T07/9
`
`
`
`
`
`
`12/1996 Hossain et al.eee eee TO7/1
`
`
`
`
`
`
`
`
`
`(List continued on next page.)
`FOREIGN PATENT DOCUMENTS
`
`
`
`6/1997) Canada woe eeeeeeeee HO4M 3/42
`
`
`
`
`
`4,831,582
`
`5,220,603
`
`5,263,157
`
`5,581,749
`
`
`2191505
`
`
`
`
`OTHER PUBLICATIONS
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Article by Bellovin et al., entitled: “Network Firewalls”
`
`
`
`
`
`Published by IEEE Communications Magazine Sep. 1994,
`
`
`pp. 50-57.
`
`
`
`
`
`Article by Steffen Stempel, entitled: “IPAccess—An Internet
`
`
`
`
`
`
`Service Access System for Firewall Installations” Published
`
`
`
`
`
`
`
`by IEEE Communications Magazine Feb. 16, 1995, pp.
`31-41.
`
`
`
`
`
`
`
`Article by Braunet al., entitled: “Web Traffic Characteriza-
`
`
`
`
`
`
`
`tion: an assessment of the impact of caching documents
`
`
`
`
`
`
`from NCSA’s web server” Published by Elsevier Science
`
`
`
`
`B.V. 1995 pp. 37-51.
`
`
`
`
`
`
`
`Article by Nelson et al., entitled: “Security for Infinite
`
`
`
`
`Networks” Published by IEEE Communications Magazine
`
`
`
`
`
`
`on Aug. 22, 1995, pp. 11-19.
`
`
`
`
`
`
`
`Article by Greenwald et al., entitled: “Designing an Aca-
`
`
`
`
`
`
`
`demic Firewall: Policy, Practice, and Experience with
`
`
`
`
`
`SURF” Published by IEEE Communications Magazine on
`
`
`
`
`
`Feb. 22, 1996, pp. 79-92.
`
`
`
`
`
`
`Article by Kiuchiet al., entitled: “C-HTTP—The Develop-
`
`
`
`
`
`ment of a Secure, Closed HTTP-based Network on the
`
`
`
`
`
`Internet” Published by IEEE Proceedings of SNDSSon Feb.
`
`
`
`
`22, 1996, pp. 64-75.
`
`
`
`(List continued on next page.)
`
`
`
`
`Primary Examiner—Mehmet B. Geckil
`
`
`
`
`
`Attorney, Agent, or Firm—Graham & James LLP
`
`
`ABSTRACT
`[57]
`
`
`
`
`
`
`
`A system for communicating through a computer network.
`
`
`
`
`
`
`
`The system includes a communications engine for establish-
`
`
`
`
`
`
`
`ing a communications link with a server, a browser, coupled
`
`
`
`
`
`
`
`
`to the communications engine, for receiving applet infor-
`
`
`
`
`
`
`
`mation corresponding to a service from the server, and an
`
`
`
`
`
`
`
`
`
`applet engine for using the applet information to control user
`
`
`
`
`
`
`
`
`interface I/O of the service. The communications engine
`
`
`
`
`
`
`
`may confirm user access privileges before establishing a
`communications link between the client and the server. The
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`communications engine receives configuration data, and
`
`
`
`
`
`
`
`configures client attributes using the configuration data to
`
`
`
`
`
`
`
`provide a user-specific user interface to the client. It will be
`
`
`
`
`
`
`
`
`appreciated that the system may bestored on a floppy disk
`or hard drive.
`
`
`
`
`
`
`
`
`
`
`
`43 Claims, 10 Drawing Sheets
`
`
`
`B00
`
`
`
`
`
`
`
`(sa)
`
`
`- fo
`
`
`
`620—
`ee J
`re
`630
`
`
`Configure Remote Client
`
`
` Display Web Page onRemote |”
`e fj
`
`Download Applets from Master
`Serverto Remote Client
`
`
`
`Cliant Display
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`640~~
`
`860
`
`660—,
`
`7a
`
`
`
`620
`
`LGEExhibit-1008/Page 1 of 18
`LGEv. Uniloc
`
`LGE Exhibit-1008/Page 1 of 18
`LGE v. Uniloc
`
`

`

`
`6,131,116
`Page 2
`
`
`
`
`U.S. PATENT DOCUMENTS
`
`
`
`3/1997
`Hoffman et al. occ eeeececeeeee 382/115
`
`
`
`
`Conmorset al. wc ceeeeceeceeeee 358/407
`5/1997
`
`
`
`
`7/1997
`
`
`
`
`Thompson et al.
`wee 348/13
`8/1997
`
`
`
`
`Elgamal et al. occ 380/49
`9/1997
`Crozier oe.
`... 395/803
`
`
`
`
`10/1997
`Watson et al... ceeeeeeereeee 395/200.12
`
`
`
`
`10/1997
`Freund et al. oo. ceeeeesceeeeeee 395/605
`
`
`
`
`11/1997
`
`
`
`
`Boothby........
`«707/203
`
`12/1997
`CHOZIEL .oeceeececsseseeeceeeeeneceeeenees 395/335
`
`
`
`1/1998
`
`
`
`
`Foley et ab.
`.ccccceccseeeceees 395/610
`2/1998
`Stefik occccccceesersetcesceecteeneeeee 705/44
`
`
`
`
`Butts et al...
`. 3995/500
`5/1998
`
`
`
`
`
`MacDoran et al... ce ceeeceeceeee 380/25
`5/1998
`
`
`
`
`6/1998
`GSN eeececececcteeereeeeeeceeenes 395/200.33
`
`
`
`7/1998
`Frid-Nielsen et al.
`... 395/208
`
`
`
`
`
`7/1998
`Chen et al. vice cceeeneceeceeee 380/21
`
`
`
`
`
`7/1998
`
`
`
`
`Akiyamaet al. cece 380/25
`
`9/1998
`Van Hoff
`......
`.- 707/513
`
`
`
`
`
`
`9/1998
`WDE o.eeeeececcseeeeceneceeceeceneenscnee 380/24
`
`
`
`
`9/1998
`
`
`
`Vogler icccccscccsescsescsseecsees 395/500
`10/1998
`Cowan et al. v..cceceeeeeeee 395/200.33
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`5,613,012
`
`5,627,658
`
`5,644,354
`
`5,657,390
`
`5,666,553
`
`5,682,478
`
`5,682,524
`
`5,684,990
`
`5,701,423
`
`5,706,502
`
`5,715,403
`
`5,754,830
`
`5,757,916
`
`5,768,510
`
`5,778,346
`
`5,784,463
`
`5,784,464
`
`5,802,530
`
`5,812,668
`
`5,815,683
`
`5,828,840
`
`
`
`
`
`OTHER PUBLICATIONS
`
`
`
`
`
`
`
`Article by S. Cobb, entitled: “Establishing Firewall Policy”
`
`
`
`
`
`
`
`Published by National Computer Security Assn. on Jun.
`
`
`
`
`25-27, 1996, pp. 198-205.
`
`
`
`
`
`
`Tanenbaum, Andrew S., “Computer Network”, Third Edi-
`
`
`
`
`
`
`tion, Prentice—Hall 1996, ISBN 0-13-349945-6, Chapter7,
`
`
`
`
`
`Sections 7.1.4 to 7.1.6, pp. 597-618.
`
`
`
`
`
`
`Knudsen, Jonathan, “Java Cryptography”, First Edition,
`
`
`
`
`
`
`
`O’Reilly & Assoc. 1998, ISBN 1-56592—402-9, pp. 79-91.
`
`
`
`
`Web page: www.verisign.com/press/product/isv.html, Veri-
`
`
`
`
`
`
`
`sign Press Release, “Versign Enhances Digital
`IDS to
`
`
`
`
`
`
`
`Enable Universal Website Login and One-Step Registra-
`
`
`
`
`tion’, Nov. 3, 1998, 3 pages.
`
`
`
`
`
`
`
`Mark Brown, “Using Netscape 2”, Que Corporation, 1995,
`
`
`pp. 885-907.
`
`
`
`
`
`
`Douglas Kramer, “The Java Platform,” Javas—Soft, May
`
`
`
`1996, pp. 1-25.
`
`
`
`Package java.applet; java.net http:/Awww-nrg.ee lbl.gov/jef/
`
`
`
`
`
`apibook/javaf.htm javam.htm Apr. 22, 1996.
`
`
`
`
`http://mech.postech.ac.kr/Java/java.sun-
`Servlet Tutorial
`
`
`.com/products/jeeves/current
`release//doc/servlet—tutorial/
`
`
`
`
`servlet—tutorial html Aug. 20, 1996.
`
`
`
`
`
`
`LGEExhibit-1008/Page 2 of 18
`
`LGE Exhibit-1008/Page 2 of 18
`
`

`

`
`U.S. Patent
`
`
`
`
`
`Oct. 10, 2000
`
`
`
`
`
`Sheet 1 of 10
`
`6,131,116
`
`
`
`
`
`001
`
`
`
`
`
`ByeqUOReINDYUODySjalddy@Tan©
`
`
`
`*jsenbayBdIANIES©)©“ySonboey
`
`SdiAlas
`
`
`
`GLL9eLOSL
`
`eaulBuy3BOIAIBSom
`
`O71a|qepeojumoqOviJasmoig
`
`
`
`
`
`
`
`sjajddy
`
`
`
`eyeqaaisucdsay©)
`
`ejeqsalsuodsay»@
`
`cel
`
`
`
`JaAlasJayseyy
`
`
`
`JUSI|DBJOWsY
`
`
`
`OLLae
`
`uoneinByuoy
`
`
`
`Z€L
`
`
`
`Req
`
`
`
`
`
`BdIAIESauibuyadiAiesTOMESONO
`
`aulbug
`
`SEL
`
`
`
`
`
`aulbuysolAles
`
`091Z9L
`
`SOLOF991
`
`lSls
`
`LGEExhibit-1008/Page3 of 18
`
`LGE Exhibit-1008/Page 3 of 18
`
`
`
`

`

`
`U.S. Patent
`
`
`
`
`
`Oct. 10, 2000
`
`
`
`
`Sheet 2 of 10
`
`6,131,116
`
`
`
`
`
`
`
`OS]JUSIIDSsjowsy
`
`
`
`
`
`
`
`
`
`yndjno
`
`S0lAaq
`
`Ww
`
`0te
`
`
`
`022Ole
`
`
`
`sja\ddy
`
`pepeojumogc6¢
`
`
`
`uoleinbiyuoyv6Z
`
`962
`
`¢Old
`
`082
`
`C8C
`
`8c
`
`SSL
`
`
`88¢
`
`62
`
`
`
`abeiojseyeq
`
`ao1Aeq
`
`SUON]eOIUNWWUOD
`
`SORHE}U]
`
`Ort
`
`Ge
`
`LGE Exhibit-1008/Page 4 of 18
`
`LGE Exhibit-1008/Page 4 of 18
`
`
`
`
`
`
`
`
`
`

`

`
`U.S. Patent
`
`
`
`
`
`Oct. 10, 2000
`
`
`
`
`Sheet 3 of 10
`
`6,131,116
`
`
`
`
`
`aulBugJsoHjejddy
`
`98t
`
`v’
`
`casjuaby
`ansS}O[NIaS
`
`ajqepeojumoq
`
`sjaiddy
`
`
`
`eyeguoneinbyuoy
`
`
`
`eulbuysoInas
`
`Oge
`
`c8e
`
`eel
`
`e8e
`
`9EL
`
`Zeb
`
`8el
`
`09
`
`
`
`aBeiojseyeq
`
`ad1Aaq
`
`SUONEOIUNWWUOD
`
`adeHa}u]
`
`Ose
`
`OcL
`
`OvL
`
`Ve‘Sls
`
`LGEExhibit-1008/Page 5 of 18
`
`yndjno
`
`a01Aeq
`
`yndu|
`
`aolnaq
`
`0v
`
`Ndd
`
`
`
`O€|JaAasJa}seYW
`
`we
`
`Oee
`
`Oce
`
`OLe
`
`
`
`LGE Exhibit-1008/Page 5 of 18
`
`
`
`
`
`
`
`€
`
`

`

`U.S. Patent
`
`
`
`
`Oct. 10, 2000
`
`
`
`
`
`Sheet 4 of 10
`
`
`6,131,116
`
`
`
`137
`
`
`
`
`a
`
`Service Addresses
`
`
`
`Settings
`
`Preferences
`
`
`
`Services
`
`
`
`
`
`
`
`
`FIG. 3B
`
`LGEExhibit-1008/Page6 of 18
`
`LGE Exhibit-1008/Page 6 of 18
`
`

`

`
`U.S. Patent
`
`
`
`
`
`Oct. 10, 2000
`
`
`
`
`Sheet 5 of 10
`
`6,131,116
`
`
`
`
`
`
`
`
`
`OOFJUAIID|e907]
`
`OLP
`
`
`
`—_—Vv
`
`O&Pr
`
`OcV
`
`OLY
`
`yndyno
`
`s01Neq
`
`yndu}
`
`ad1ANq
`
`Orr
`
`Ndd
`
`
`
`aBelojsejeg
`
`B01Aeq
`
`suoljeolunwwoD
`
`soeHa}u|
`
`O87
`
`0S
`v
`
`
`
`L8P
`
`
`
`09P
`
`
`
`O06eulBuyadlNas
`
`v-Ols
`
`CSV
`
`v8y
`
`
`
`987
`
`
`
`Och
`
`LGEExhibit-1008/Page7 of 18
`
`LGE Exhibit-1008/Page 7 of 18
`
`
`
`
`

`

`U.S. Patent
`
`
`
`
`Oct. 10, 2000
`
`
`
`
`
`Sheet 6 of 10
`
`
`6,131,116
`
`
`
`900
`
`
`x
`
`
`
`396
`
`
`
`Sending Faxes
`
`
`
`
`Roam Page
`
`
`
`Calendaring
`
`
`
`Internet Access
`
`
`
`
`
`
`
`
`
`FIG. 5
`
`
`
`(Roam Page Screen Shot)
`
`
`
`LGEExhibit-1008/Page8 of 18
`
`LGE Exhibit-1008/Page 8 of 18
`
`

`

`
`U.S. Patent
`
`
`
`Oct. 10, 2000
`
`
`
`
`
`Sheet 7 of 10
`
`
`6,131,116
`
`
`
`600
`
`
`
`
`x
`
`
`
`
`
`
`
`Create Link Between Remote
`
`
`
`
`Client and Master Server
`
`
`
`Download Configuration Data
`
`
`
`610
`
`
`
`620
`
`
`
`630
`
`
`
`
`
`Configure Remote Client
`
`
`
`
`
`
`Download Applets from Master
`
`
`
`Server to Remote Client
`
`
`
`
`
`
`Display Web Page on Remote
`
`
`Client Display
`
`
`
`
`
`Select a Service, whichInitiates
`
`
`
`
`
`
`Execution of the Appropriate
`
`Applet
`
`
`
`
`
`Initiate Execution of the
`
`
`Appropriate Service
`
`
`
`
`
`
`Provide Access to Service to
`
`
`
`Remote Client User
`
`a L
`
`640
`
`650
`
`
`
`660
`
`
`
`670
`
`
`
`680
`
`
`
`
`
`GEExhibit-1008/Page 9 of 18
`
`LGE Exhibit-1008/Page 9 of 18
`
`

`

`U.S. Patent
`
`Oct. 10, 2000
`
`Sheet 8 of 10
`
`6,131,116
`
`670
`
`A
`
`Start
`Corresponding Serviet
`
`Applet Forwards Service Request to
`
`Serviet Retrieves Service Address
`
`Servlet Forwards Service Request
`to Appropriate Service Interface
`
`Service Interface Initiates Execution
`of Appropriate Service
`
`Service Interface Informs Servlet of
`Service Initiation
`
`Servlet ConfiguresItself to Act as
`
`Proxy for Applet
`
`Serviet Informs Applet of Service
`Initiation
`
`Applet Configures Itself to Act as I/O
`Interface with Service Engine
`
`710
`
`720
`
`730
`
`740
`
`750
`
`760
`
`770
`
`780
`
`FIG. 7
`
`LGE Exhibit-1008/Page 10 of 18
`
`

`

`810
`
`
`
`820
`
`
`
`830
`
`
`
`840
`
`
`
`850
`
`
`
`860
`
`
`
`870
`
`
`
`
`
`
`
`Applet Forwards Service Requestto
`
`
`Service Interface
`
`
`
`
`Service Interface Initiates Execution
`
`
`
`of Appropriate Service
`
`
`
`
`
`
`
`ServiceInitiation
`
`U.S. Patent
`
`
`
`
`Oct. 10, 2000
`
`
`
`
`
`Sheet 9 of 10
`
`
`6,131,116
`
`
`
`670
`
`
`
`
`
`
`
`
`
`
`Applet Requests the Master Serverto
`
`
`
`
`
`Opena Direct Connection with the
`
`
`Service Engine
`
`
`
`
`Master Server Sends Service-Specific
`
`
`
`
`Configuration Data to the Applet
`
`
`
`
`
`
`Client Opens Direct Connection
`
`
`With Service
`
`
`
`
`
`
`
`Service Interface Informs Applet of
`
`
`
`Interface with Service Engine
`
`
`
`
`
`Applet ConfiguresItself to Act as I/O
`
`
`
`
`
`End
`
`
`FIG. 8
`
`LGEExhibit-1008/Page 11 of 18
`
`LGE Exhibit-1008/Page 11 of 18
`
`

`

`
`U.S. Patent
`
`
`
`Oct. 10, 2000
`
`
`
`
`
`Sheet 10 of 10
`
`
`6,131,116
`
`
`
`680
`
`
`
`910
`
`
`
`920
`
`
`
`930
`
`
`
`940
`
`
`
`960
`
`
`
`Load Service Engine
`
`
`
`
`
`
`
`
`
`
`
`
`Engine
`
`
`
`
`
`into RAM Execute Service
`
`
`
`
`
`Send Display Data and I/O
`
`
`Requests as Responsive Data
`
`
`
`to Remote Client
`
`
`
`Wait for an Instruction
`
`
`
`
`from Remote Client
`
`
`
`
`
`Instructed to Quit
`
`ProcessInstruction and
`
`
`
`
`
`
`Repeat Steps 920-960 Until
`
`
`
`
`
`End
`
`
`
`
`FIG. 9
`
`LGEExhibit-1008/Page 12 of 18
`
`LGE Exhibit-1008/Page 12 of 18
`
`

`

`6,131,116
`
`
`
`
`
`
`1
`SYSTEM AND METHOD FOR GLOBALLY
`
`
`
`ACCESSING COMPUTER SERVICES
`
`
`
`BACKGROUND OF THE INVENTION
`
`
`1. Field of the Invention
`
`
`
`
`
`
`
`
`
`
`This invention relates generally to computer networks,
`
`
`
`
`
`
`
`and more particularly to a system and method for globally
`
`
`
`accessing computer services.
`
`
`
`
`
`2. Description of the Background Art
`
`
`
`
`
`
`The internet currently interconnects about 100,000 com-
`
`
`
`
`
`
`
`puter networks and several million computers. Each of these
`
`
`
`
`
`
`computers stores numerous application programs for pro-
`
`
`
`
`
`
`viding numerous services, such as generating, sending and
`
`
`
`
`
`
`
`receiving e-mail, accessing World Wide Websites, generat-
`
`
`
`
`
`
`
`ing and receiving facsimile documents, storing and retriev-
`
`
`
`ing data, etc.
`
`
`
`
`
`
`
`
`
`A roaming user, i.e., a user who travels and accesses a
`
`
`
`
`
`
`
`workstation remotely, is faced with several problems. Pro-
`
`
`
`
`
`
`gram designers have developed communication techniques
`
`
`
`
`
`
`
`for enabling the roaminguserto establish a communications
`link and to download needed information and needed service
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`application programs from the remote workstation to a local
`
`
`
`
`
`
`
`
`computer. Using these techniques,
`the roaming user can
`
`
`
`
`
`
`
`
`manipulate the data on the remote workstation and, when
`
`
`
`
`
`
`
`
`
`finished, can upload the manipulated data back from the
`
`
`
`
`
`
`
`remote workstation to the local computer. However, slow
`
`
`
`
`
`
`
`computers and slow communication channels make down-
`
`
`
`
`
`
`
`loading large files and programs a time-consuming process.
`
`
`
`
`
`
`
`Further, downloading files and programs across insecure
`
`
`
`
`
`
`
`channels severely threatens the integrity and confidentiality
`of the downloaded data.
`
`
`
`
`
`
`
`
`
`
`
`The roaming user alternatively can carry a copy ofall
`
`
`
`
`
`
`
`potentially needed information and all potentially needed
`
`
`
`
`
`
`application programs. However, maintaining a true copy of
`
`
`
`
`
`
`
`a database is a cumbersome process which often results in a
`
`
`
`
`
`
`
`data inconsistency problem. Therefore, a system and method
`
`
`
`
`
`
`
`
`are needed to enable multiple users to access computer
`
`
`
`
`
`
`
`services remotely without consuming excessive time, with-
`
`
`
`
`
`
`
`out severely threatening the integrity and confidentiality of
`
`
`
`
`
`
`
`the data, and without compromising data consistency.
`SUMMARYOF THE INVENTION
`
`
`
`
`
`
`
`
`
`
`
`The present invention provides a system and method for
`
`
`
`
`
`
`communicating through a computer network. The system
`
`
`
`
`
`
`
`
`includes a master server, service engines and clients, each
`
`
`
`
`
`
`equipped with a communication engine for establishing
`
`
`
`
`
`
`communications links. The system further includes a
`
`
`
`
`
`
`browser for receiving applet information corresponding to a
`
`
`
`
`
`
`
`
`service performed by one of the service engines from the
`
`
`
`
`
`
`
`
`
`server, and an applet engine for using the applet information
`to controluser interface I/O of the service. The master server
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`may confirm access privileges before allowing clients to
`55
`
`
`
`
`
`
`
`access a service. The communications engine receives con-
`
`
`
`
`
`
`
`
`
`figuration data which are used to configure the client com-
`
`
`
`
`
`
`
`
`
`ponents such as the operating system, the web browser, the
`
`
`
`
`
`
`
`
`applets, etc.
`to enable communication with the service
`
`
`
`
`
`
`
`
`engine and to provide a user-specific user interface to the
`
`
`
`
`
`
`
`
`client. It will be appreciated that the system may be stored
`
`
`
`
`
`on a floppy disk or hard drive.
`
`
`
`
`
`
`The method includes establishing a communications link
`
`
`
`
`
`
`
`between a client and a server, receiving applet information
`
`
`
`
`
`
`
`by the client from the server, establishing a communications
`
`
`
`
`
`
`
`
`
`link between the client and a service using the applet
`
`
`
`
`
`
`
`
`information, and directing user interface I/O control of the
`
`
`
`
`
`
`
`
`service to the client using the applet information. Establish-
`
`
`
`
`10
`
`
`
`
`
`
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`60
`
`65
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`2
`
`
`
`
`
`
`ing a communications link may include confirming access
`
`
`
`
`
`
`
`privileges. The method may further include receiving con-
`
`
`
`
`
`
`
`
`figuration data, and using the configuration data for config-
`
`
`
`
`
`
`
`uring the client components such as the operating system,
`
`
`
`
`
`
`
`
`the web browser, the applets, etc. to enable communication
`
`
`
`
`
`
`
`with the service engine and to provide a user-specific user
`interface to the client.
`
`
`
`
`
`
`
`
`
`
`
`
`The system and method use web browser technology to
`
`
`
`
`
`
`
`enable multiple users to access computer services remotely.
`
`
`
`
`
`
`
`
`Furthermore, the system and method use applet technology
`
`
`
`
`
`
`
`
`to enable users to access computer services without con-
`
`
`
`
`
`
`
`suming excessive time, without severely threatening the
`
`
`
`
`
`
`
`
`
`integrity and confidentiality of the data, and without com-
`
`
`
`
`
`
`
`
`promising data consistency. Still further,
`the system and
`
`
`
`
`
`
`
`method use configuration data to enable users to obtain a
`
`
`
`
`
`
`consistent interface from any remote terminal.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`
`
`
`
`
`
`
`FIG. 1 is a block diagram illustrating a roaming-user
`
`
`
`
`
`
`
`network access system in accordance with the present inven-
`
`tion;
`
`
`
`
`
`FIG. 2 is a block diagram illustrating details of the remote
`
`
`client of FIG. 1;
`
`
`
`
`
`
`FIG. 3A is a block diagram illustrating details of the
`
`
`
`master server of FIG. 1;
`
`
`
`
`
`
`FIG. 3B is a block diagram illustrating details of the
`
`
`
`
`configuration data of FIG. 3A;
`
`
`
`
`
`
`FIG. 4 is a block diagram illustrating details of each local
`
`
`client of FIG. 1;
`
`
`
`
`
`
`FIG. 5 illustrates an example graphical user interface of
`
`
`
`
`
`
`
`
`web page as maintained by the web page engine of FIG. 1;
`
`
`
`
`
`
`FIG. 6 is a flowchart illustrating a method for globally
`
`
`
`
`accessing a particular computer service;
`
`
`
`
`
`
`FIG. 7 is a flowchartillustrating details of the FIG. 6 step
`
`
`
`
`
`
`
`
`of initiating execution of a service on the local client;
`
`
`
`
`
`FIG. 8 is a flowchartillustrating alternative details of the
`
`
`
`
`
`
`FIG. 6 step of initiating execution of a service on the local
`
`
`client; and
`
`
`
`
`
`
`FIG. 9 is a flowchartillustrating details of the FIG. 6 step
`
`
`
`
`
`
`
`
`of providing service access to the remote client user.
`DETAILED DESCRIPTION OF THE
`
`
`
`PREFERRED EMBODIMENT
`
`
`
`
`
`
`
`
`FIG. 1 is a block diagram illustrating a roaming-user
`
`
`
`
`
`
`
`
`network access system 100, in accordance with the present
`
`
`
`
`
`
`invention. System 100 includes a network of computers,
`
`
`
`
`
`
`
`
`
`referred to herein as an “internet” 140, connected via a
`master server 130 to a local network 120. A first local client
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`110 and a second local client 160 are addressably connected
`via the local network 120 to the master server 130. A remote
`
`
`
`
`
`
`
`
`
`
`client 150 is connected via the internet 140 to the master
`
`
`
`
`
`
`
`
`
`server 130. Another server 166 is also connected via the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`internet 140 to the remote client 150, to the master server
`130 and to the local clients 110 and 160.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Thefirst local client 110 includesa first service engine 115
`
`
`
`
`
`
`
`for providing a first computer service, such as calendaring,
`
`
`
`
`
`
`
`
`e-mail, paging, word-processing or the like, to a user. The
`
`
`
`
`
`
`
`
`
`second local client 160 includes a second service engine 165
`
`
`
`
`
`
`
`for providing a second computer service to a user. Service
`
`
`
`
`
`
`
`
`
`engines 115 and 165 are described in greater detail with
`reference to FIG. 4. The remote client 150 includesa client
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`engine, an example of which is an applet-based web browser
`
`
`
`
`
`
`
`
`155 which is configured for communicating with the internet
`
`
`
`
`
`
`
`
`140 and for reading and executing applets. Examples of web
`
`LGEExhibit-1008/Page 13 of 18
`
`LGE Exhibit-1008/Page 13 of 18
`
`

`

`6,131,116
`
`
`
`10
`
`15
`
`
`
`
`
`25
`
`
`
`3
`4
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`To initiate execution of the service request, the master
`browsers 155 include the Netscape™ web browser produced
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`by the Netscape Corporation, the Internet Explorer™ web
`server 130 may use servlets or agents. The appropriate
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`browser produced by the Microsoft Corporation, or the
`service engine 115, 138, 165 or 167 executes the service and
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Java™ Developers Kit 1.0 web browser produced by Sun
`generates responsive data accordingly. As shown byline 5,
`
`
`
`
`
`
`
`Microsystems, Inc. While the illustrated client engine is a
`
`
`
`
`
`
`
`
`
`
`the service engine 115, 138, 165 or 167 sends the responsive
`
`
`
`
`
`
`
`
`
`
`web browser 155, those skilled in the art will recognize that
`
`
`
`
`
`
`
`
`
`data back to the master server 130 and, as shownbyline 6,
`
`
`
`
`
`
`
`
`other client engines could be used in accordance with the
`
`
`
`
`
`
`
`
`
`
`the master server 130 sends the responsive data back to the
`
`
`
`
`
`
`
`present
`invention. Although the embodiment herein are
`remote client 150.
`
`
`
`
`
`
`
`
`
`
`
`being described with reference to the Java™ distributed
`
`
`
`
`
`
`
`
`
`
`
`Since the master server 130 stores the applets 136 and the
`
`
`
`
`
`
`environment produced by Sun Microsystems,Inc., “Down-
`
`
`
`
`
`
`
`
`
`configuration data 137, the roaming user can access a service
`
`
`
`
`
`
`
`loadables” herein correspond to all downloadable and
`
`
`
`
`
`
`
`
`
`via any computer 110, 130, 150 or 160 which includes an
`
`
`
`
`
`
`executable or interpretable programsfor use in a distributed
`
`
`
`
`
`
`
`
`environment such as ActiveX™ controls in the ActiveX™
`applet-based web browser 155 and which is connected to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`master server 130. Further, because the master server 130
`
`
`
`
`
`
`distributed environment produced by the Microsoft Corpo-
`ration.
`
`
`
`
`
`
`
`
`maintains the network addresses of all services, the user
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`need only maintain the URL address of the web page
`The master server 130 includes a web page engine 133 for
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`maintained by the web page engine 133. That is, the user
`maintaining and providing access to an internet web page
`need not maintain the current address of each service.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`whichis enabled to forward applets 136 to the web browser
`
`
`
`
`
`
`
`
`155 of the remote client 150. A user can select a particular
`
`
`
`
`
`
`
`
`Although not shown in FIG. 1, a web browser 155 may be
`
`
`
`
`
`
`
`service which correspondsto oneof the applets 136, thereby
`
`
`
`
`
`
`
`
`
`placed onalocal client 110 or 160. Auser can access the web
`20
`
`
`
`
`
`
`
`
`
`causing the web browser 155 of the remote client 150 to
`
`
`
`
`
`
`
`
`
`
`page engine 133 from the local client 110 or 160 to take
`
`
`
`
`
`
`
`initiate execution of the corresponding applet 130. Execu-
`
`
`
`
`
`
`advantage of the services provided by the master server 130,
`
`
`
`
`
`
`
`
`
`tion of the applet 130 causes the appropriate service engine
`
`
`
`
`
`
`
`
`
`by the server 166 or even by the local clients 110 or 160. For
`
`
`
`
`
`
`
`
`115 or 165 to execute the particular service or access an
`
`
`
`
`
`
`
`
`
`
`example,
`the local client user may access the web page
`
`
`
`
`
`
`
`already executing service. It will be appreciated that execut-
`
`
`
`
`
`
`
`
`engine 133 and select a particular service which resides on
`
`
`
`
`
`
`
`ing a service may include directing Input/Output (1/0)
`
`
`
`
`
`
`
`
`
`the local client 110. Accordingly,
`the applets 136 would
`
`
`
`
`
`
`control of a service application program, such as an e-mail
`
`
`
`
`
`
`
`
`
`launch the service on the local client 110 and would provide
`
`
`
`
`
`
`application program, a paging application program or a
`direct I/O control of the service to the user. Those skilled in
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`word-processing application program, to the remote client
`
`
`
`
`
`
`
`
`
`150 user.
`the art will recognize that a particular service engine may
`
`
`
`
`
`
`
`
`
`
`
`require the services of other service engines.
`It will be
`
`
`
`
`
`
`
`
`The master server 130 further includes configuration data
`
`
`
`
`
`
`
`
`
`
`appreciated that the local client user need not know the
`
`
`
`
`
`
`
`
`
`137, which the remote client 150 can download to gain
`
`
`
`
`
`
`
`
`
`
`location of each service. The local client user need only
`
`
`
`
`
`
`
`
`access to the desired service and to configure the
`access the master server 130.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`functionality, look and feel of the web browser 155. The
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. 2 is a block diagram illustrating details of the remote
`configuration data 137 may include operating system set-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`client 150, which includes a Central Processing Unit (CPU)
`tings such as TCP protocol data and the domain nameserver
`
`
`
`
`
`
`
`
`
`
`
`
`210 such as a Motorola Power PC® microprocessor or an
`address, user preferences, bookmarks, services, service
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Intel Pentium® microprocessor. An input device 220 such as
`addresses, etc. Each user preferably uploads unique con-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`a keyboard and mouse, and an output device 230 such as a
`figuration data 137 to the master server 130 in order to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Cathode Ray Tube (CRT) display are coupled via a signal
`obtain similar functionality, look and feel from any web
`browser 155.
`
`
`
`
`
`
`
`
`bus 240 to CPU 210. Acommunicationsinterface 250, a data
`
`
`
`
`
`
`
`
`
`
`storage device 260, such as Read Only Memory (ROM) and
`
`
`
`
`
`
`
`
`
`
`Similar to the local clients 110 and 160, the master server
`
`
`
`
`
`
`
`a magnetic disk, and a Random-Access Memory (RAM) 270
`
`
`
`
`
`
`
`
`
`130 may include a service engine 138 for providing access
`
`
`
`
`
`
`
`
`
`
`are further coupled via signal bus 240 to CPU 210. The
`
`
`
`
`
`
`
`
`
`to a third computer service, and server 166 may include a
`
`
`
`
`
`
`
`communicationsinterface 250 is coupled to the internet 140.
`
`
`
`
`
`
`
`service engine 167 for providing access to a fourth computer
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`service. Service engines 138 and 166 are described in greater
`An operating system 280 includes a program for control-
`detail with reference to FIG. 4. From the remote client 150
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ling processing by CPU 210, andis typically stored in data
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`user’s standpoint, the location of the service engine does not
`storage device 260 and loaded into RAM 270 for execution.
`matter.
`
`
`
`
`
`
`Operating system 280 further includes a communications
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`engine 282 for generating and transferring message packets
`As shown by line 1, the remote client 150 user inputs a
`to and from the internet 140 via the communications inter-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`predetermined Uniform Resource Locator (URL) address
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`face 250. Operating system 280 further includes an Oper-
`for opening the web page managed by the web page engine
`
`
`
`
`
`
`
`
`ating System (OS) configuration engine 284, which config-
`
`
`
`
`
`
`
`
`
`133 of the master server 130. As shownby line 2, the web
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ures the operating system 280 based on OS configuration
`page engine 133 sends at least one of the applets 136 and
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`data 137 such as TCP protocol data, domain name server
`web browser configuration data 137 to the web browser 155.
`
`
`
`
`
`
`
`
`addresses, etc. received from the master server 130.
`
`
`
`
`
`
`
`
`
`From the services offered by the web page, the user selects
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`a particular service corresponding to one of the applets 136.
`Operating system 280 further includes a web browser 155
`as described with reference to FIG. 1. The web browser 155
`
`
`
`
`
`
`
`
`For example, to access e-mail services, the user selects an
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`e-mail prompt corresponding to an e-mail applet 136.
`includes a Web Browser (WB) configuration engine 288,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`As shownbyline 3, the web browser 155 forwards to the
`which configures the web browser 155 based on WB con-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`master server 130 a service request for initiating execution
`figuration data 137 such as home page addresses,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`of the selected service. As shownbyline 4, the master server
`bookmarks, caching data, user preferences, etc. received
`130 determines the location of the service and sends the
`from the master server 130. The web browser further
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`service request to the appropriate address, i.e., either to the
`includes an applet engine 290 for handling the execution of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`service engine 115 of the local client 110, to the service
`downloaded applets 294. The applet engine 290 includes an
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Applet Engine (AE) configuration engine 292, which con-
`engine 165 of the local client 160, to the service engine 138
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`of the master server 130 or to service engine 167 of the other
`figures the applet engine 290 based on AE configuration data
`server 166.
`
`
`
`
`
`
`
`
`
`
`
`
`137 received from the master server 130. The applet engine
`
`30
`
`35
`
`
`
`40
`
`
`
`45
`
`
`
`50
`
`
`
`55
`
`
`
`60
`
`
`
`65
`
`
`
`LGEExhibit-1008/Page 14 of 18
`
`LGE Exhibit-1008/Page 14 of 18
`
`

`

`
`5
`
`
`
`
`
`
`
`290 further includes applet-specific configuration data 296
`
`
`
`
`
`
`
`
`
`
`received from the master server 130. For example, for the
`
`
`
`
`
`
`
`
`
`e-mail applet 294, e-mail applet configuration data 296 may
`
`
`
`
`
`
`
`include a user’s e-mail address, name, preferred signature
`
`
`
`
`
`
`block, as well as customizable user interface parameters.
`
`
`
`
`
`
`
`
`FIG. 3A is a block diagram illustrating details of the
`
`
`
`
`
`
`
`
`master server 130, which includes a Central Processing Unit
`
`
`
`
`
`
`
`(CPU) 310 such as a Motorola Power PC® microprocessor
`
`
`
`
`
`
`
`or an Intel Pentium® microprocessor. An input device 320
`
`
`
`
`
`
`
`
`such as a keyboard and mouse, and an output device 330
`
`
`
`
`
`
`
`
`
`such as a Cathode Ray Tube (CRT) display are coupled via
`
`
`
`
`
`
`
`
`a signal bus 340 to CPU 310. A communications interface
`
`
`
`
`
`
`
`
`
`350, a data storage device 360, such as Read Only Memory
`
`
`
`
`
`
`(ROM)and a magnetic disk, and a Random-Access Memory
`
`
`
`
`
`
`
`
`
`(RAM)370 are further coupled via signal bus 340 to CPU
`
`
`
`
`
`
`
`310. The communications interface 350 is coupled between
`the internet 140 and the local network 120.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`An operating system 380 includes a program for control-
`
`
`
`
`
`
`
`
`ling processing by CPU 310, and is typically stored in data
`
`
`
`
`
`
`
`
`storage device 360 and loaded into RAM 370 for execution.
`
`
`
`
`
`
`Operating system 380 further includes a communications
`
`
`
`
`
`
`
`engine 382 for generating and transferring message packets
`via the communications interface 350 to and from the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`internet 140 and to and from local network 120. Operating
`
`
`
`
`
`
`
`
`
`
`system 380 also includes a web page

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