`Towardsubiquitouspersonalisedcomputing
`KennethR.Wood(cid:3),TristanRichardson(cid:3),FrazerBennett(cid:3),
`AndyHarter(cid:3),AndyHopper(cid:3)y
`(cid:3)TheOlivetti&OracleResearch
`yUniversityofCambridge
`Laboratory
`ComputerLaboratory
`OldAddenbrooke'sSite
`PembrokeStreet
`aTrumpingtonStreet
`Cambridge
`Cambridge
`CB QG
`CB QA
`UnitedKingdom
`UnitedKingdom
`Abstract
`Previousworkhasdescribedteleporting,anapproachtomobilecomputing
`inwhichitistheuser'spersonalapplicationenvironmentwhichismobile
`ratherthanthehardwareonwhichtheapplicationsrun.Inthispaperwe
`describeanewteleportingsystemwhichmakestheuser'senvironment
`availableonanymachineintheworldrunningaJava-compliantweb
`browser.Wepresentsomepreliminaryexperimentalresultstogetherwith
`discussionsofsecurityandperformanceissues.
` Introduction
`Theessenceofmobilecomputingishavingone'spersonalcomputingenvironment
`availablewhereverheorshehappenstobe.Traditionallythisisachievedby
`physicallycarryingacomputingdevice(say,alaptoporPDA)whichmayhave
`someformofintermittentnetworkconnectivity,eitherwirelessortethered.
`However,in[]anotherformofmobilitywasintroducedinwhichitisthe
`user'sapplicationswhicharemobile.Theuserdoesnotcarryanycomputing
`platformbutinsteadisabletobringuphisorherapplicationsonanynearby
`machineexactlyastheyappearedwhenlastbroughtupinthisway,there
`orelsewhere.Thisformofmobilityiscalledteleportingandhasbeenused
`continuouslyandfruitfullybymanymembersofourlaboratoryforthelast
`threeyears.
`Clearly,themachinestowhichonecanteleportinthiswaymustbeattached
`toanetworkandmustprovideacommoninterfaceatsomelevel.Inourcase
`thenetworkisourlocalareanetwork(EthernetandATM)andthecommon
`interfaceistheXWindowSystem [].Whenweteleport,ourpersonalX
` TheXWindowSystemisatrademarkofTheXConsortium.
`
`
`Juniper Ex. 1022-p. 1
`Juniper v Finjan
`
`
`
`TELEPORTING
`sessionwithallofitsassociatedapplicationsintheirlatestcollectivestateis
`transferredfromonehost'sdisplaytoanotherwithinthelab.Thisallowsus,
`forexample,towalkintosomeoneelse'so(cid:14)ceandimmediatelycallupand
`interactwithourpersonalworkingenvironmentontheirmachine,alongside
`anyotherworkingenvironmentscurrentlydisplayedthere.
`Inourcurrentworkweareattemptingtoextendthisideafromourlocal
`areanetworktotheentireinternetusingJavaasthecommoninterface.Itis
`stillourpersonalXsessionswhicharemademobile,butnowtheycanappear
`withinanybrowserwhichcanexecuteJavaapplets,anywhereontheinternet.
`Althoughintheorytheoriginalformofteleportingcouldbeusedacross
`theinternet,itwouldberestrictedtohostsrunninganXserver,and,even
`moreproblematically,wouldcontravenetheXsecuritypolicyimplementedby
`mostsystemadministrators.Perhapsmostimportantly,though,ourapproach
`toteleportingacrosstheinternetisintendedtotakeadvantageoftherapid
`globalproliferationoftheWorldWideWeb.Webbrowsersareavailablein
`adramaticallygrowingrangeoflocations,includingcorporate,personal,and
`evenpublic-accesssites.Thus,theabilitytocallupone'spersonalcomputing
`environmentonanysuchbrowserwillenablenomadiccomputingonatruly
`globalscale .
`Teleporting
`Theteleportingsystemo(cid:11)ersameansofredirectingtheuserinterfaceofapplications
`whichrunundertheXwindowsystem.InX,adisplayiscontrolledbyanX
`serverandapplicationsareclientsoftheserver,communicatingwiththeserver
`usingtheXprotocol.Thisprotocolallowsapplicationstocreatewindowson
`thescreenandreceiveinputfromthekeyboardandmouse.
`Theteleportingsystemintroducesalevelofindirectionbetweenapplications
`andthedisplay.ThisisdoneusingaspecialXserver,knownasaproxyserver.
`(SeeFigure .)Applicationsaremademobilebyrunningthemasclientsof
`theproxyserver,withinateleportsession,ratherthanwithinatraditionalX
`sessionunderarealXserver.
`UnlikearealXserver,theproxyserverdoesnothaveascreen,keyboard
`andmouse(adisplay)ofitsown.Instead,itisabletomakeuseofthedisplay
`ofsomerealXserver.TotherealXserver,theproxyserverappearsjustlike
`anordinarysetofclients.Inthisway,theoutputoftheproxyserver'sclients
`willbesenttothescreenoftherealXserver,andtheirinputwillcomefrom
`itsinputdevices.
`Theproxyservermakesitsclientsmobilebecauseitisable,uponrequest,
`tobreakdownitsconnectionswiththerealXserverand,ifdesired,re-build
`themwithanother.Thisoccurswithouttheclients'needingtobeawareofthis
`activity.Theresultisthattheteleportsessionwithalltheclients'windowscan
`disappearfromonescreenand(possiblymuchlater)re-materialiseonanother.
`JavaisatrademarkofSunMicrosystems.
` NotethatthenextreleaseofX,codenamed\Broadway",willalsoaddresssomeofthese
`issues.
`
`
`Juniper Ex. 1022-p. 2
`Juniper v Finjan
`
`
`
`X server
`
`X server
`
`X server
`
`X Client
`
`X Client
`
`X Client
`
`Proxy X
`Server
`
` TELEPORTINGINJAVA:THECONCEPT
`Figure :ProxyServer
`Inourlabwehavemadeextensiveuseoftheteleportingsysteminour
`everydaywork,andwehavefoundthattheabilitytomoveourworkingsessions
`onthe(cid:13)yfromo(cid:14)cetoo(cid:14)ce,o(cid:14)cetomeetingroom,o(cid:14)cetokitchen,o(cid:14)ceto
`home,etc,isextremelyuseful,especiallyforthesortofperipateticcollaboration
`whichtendstogooninatypicalresearchlab.Afterhavingusedtheteleporting
`systemforourprimaryworkenvironment,mostofuswould(cid:12)nditdi(cid:14)cultto
`gobacktoastaticloginsession.
` TeleportinginJava:TheConcept
`Givenhowusefulwehavefoundteleportingtobe,itisonlynaturaltowant
`toextenditsrangebeyondtheimmediateenvironmentofourlabandhomes.
`Inordertodothis,ofcourse,weneedanetworkandcommoninterfacewidely
`availableinplacesoverwhichwehavenocontrol.TheWorldWideWeband
`Javaprovidejustsuchaninfrastructure.
`Webbrowsersarenowavailablealmosteverywhereanetworkedcomputer
`canbefound,andJavaisemergingasthedominanttechnologyforenabling
`programstobedownloadedandexecutedwithinabrowser.Thus,wedecided
`thataninitialattemptatglobalteleportingshouldbebasedontheideathata
`workingsessionisidenti(cid:12)edwithawebpagecontainingaJavaapplet.Simply
`bypointinganyJava-capablebrowseratthispage,wecausethecorresponding
`workingsessiontoappearwithinthebrowserwhereweinteractwithitinthe
`naturalway.
`Thisis,infact,exactlywhatwehavedone.Wecalltheimplementation
`VNC(forVirtualNetworkComputer)andFigureshowsatypicalVNC
`sessionwhichhasbeenbroughtupinNetscape.
`HavingpointedNetscapetothewebpagecorrespondingtothesession
`shown,wecanusethemouseandkeyboardtomanipulatewindowsandgraphical
`applications,edit(cid:12)les,andsoon,justasifwewereloggedintothesessionin
`thenormalway.Wecanalsobrowseotherpages,returningtotheVNCpage
`WeoriginallyusedthenameJavaTel(forTeleportinginJava)butchangedtoVNCto
`avoidconfusionwithJavaTelephonyapplications.
`
`Juniper Ex. 1022-p. 3
`Juniper v Finjan
`
`
`
`TELEPORTINGINJAVA:THEMECHANICS
`wheneverwewanttodosomeworkthere.Furthermore,wecangotoanother
`physicallocationandpointadi(cid:11)erentbrowserattheVNCpage,whereuponthe
`sessionwillappearinthenewbrowserandvanishfromtheoldone.(Wealso
`providethecapabilitytodisconnectaVNCsessionfromonebrowserwithout
`havingitappearinanother.Itcanthenbecalledupfromthesameoranother
`browseratanylatertime.)
`
`Figure:AsampleVNCsession
`TeleportinginJava:TheMechanics
`Inordertomovetheconceptofteleportingtothewiderarenaoftheinternet,
`wemakeuseofanothersortofproxywhichwecallaremoteframebu(cid:11)er(or
`RFB)service.Inourcase,theRFBserviceisprovidedbyanRFBXserver
`whichisjustastandardXservertowhichwehaveaddedtwosimplefeatures:
`
`
`Juniper Ex. 1022-p. 4
`Juniper v Finjan
`
`
`
`TELEPORTINGINJAVA:THEMECHANICS
` .TheRFBXserverprovidesaTCPsocketinterfaceonwhichitwillaccept
`mouseandkeyboardeventsusingasimpleprotocol.Whenanysuchevent
`isreceived,itisprocessedjustasifithadbeengeneratedbyamouseor
`keyboardconnecteddirectlytotheXserver.
`.TheRFBXserverprovidesanotherTCPsocketinterfaceonwhichitwill
`acceptrequestsforinformationaboutthestateofthescreendisplay.In
`replytosucharequest,theRFBXserversendsdetailsofthoseregionsof
`thescreenwhichhavechangedsincethelastsuchrequest.Thesedetails
`aresentasasetofbitmappedrectangleswhichrepresentthechangesto
`thescreen.
`Forexample,iftherewereaword-processorrunningintheXsessionand
`alower-caseletter'l'hadbeentypedintoitsincethelastrequest,thenin
`responsetothenextrequesttheRFBXserverwouldsendthefollowing
`data:(cid:15)the(x,y)pixelcoordinatesindicatingthescreenpositionofthetop-
`leftcornerofarectanglecontainingthe'l'.
`(cid:15)thewidthandheightoftherectanglecontainingthe'l',inpixels.
`(cid:15)ablockofwidth*heightpixelvalueswhichrepresenttherowsof
`pixelswhichmakeuptherectanglecontainingthe'l'.Forexample,
`iftherectanglewerepixelswideand pixelshigh,andthevalues
`and representedwhiteandblackrespectively,thentheblock
`ofpixelvaluesmightlooklikeFigure .
`Thechangestothescreenmight,ofcourse,bemuchmoreextensivethan
`theadditionofan'l'(forinstance,theymightincludetheappearanceof
`asetofcompleximages)andinthiscasetheRFBXserverwouldsend
`asmanyrectanglespeci(cid:12)cationsasarerequiredtodescribethechanges.
`Togethertheprotocolsusedonthetwosocketinterfacesdescribedabove
`comprisetheRFBprotocol.Byconnectingtothesesocketinterfaces,anRFB
`clientrunningonaremote(non-X-aware)devicecanprovideseamlessinteraction
`betweenauserandtheXserver.TheRFBclientneedonlyunderstandthe
`RFBprotocol,i.e.howtosendinputevents(mouseandkeyboard)andhow
`toreceiveandrenderscreen-changerectangles.ThecompleteRFBprotocolis
`somewhat(thoughnotagreatdeal)morecomplexthanthatillustratedhere,
`asitallowsdi(cid:11)erentsynchronizationmodesandalsoprovidesforcompression
`ofthescreenrectangleswhenthisisdeemednecessary.
`TheremotedeviceforwhichweoriginallydevelopedtheRFBservice(and
`onwhichwearestillusingit)isavideotile,apen-basedATM-connecteddisplay
`[].TheRFBclientrunningonthetilepassespeneventsasmouseeventsto
`theRFBXserverandputsallscreenchangesitreceivesontothetiledisplay,
`therebyallowinginteractionwithXapplicationsonthetile.
`ItsoonbecameapparentthatsimplybywritinganRFBclientinJavawe
`coulduseexactlythesameapproachtoprovideinteractionwithanXserver
`fromwithinaJavaappletandhencefromwithinawebbrowser.TheRFB
`
`
`Juniper Ex. 1022-p. 5
`Juniper v Finjan
`
`
`
`TELEPORTINGINJAVA:THEMECHANICS
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Figure :Abitmappedrectanglecontainingtheletter'l'
`clientappletopenssocketstothemouse/keyboardandscreen-changeportsof
`theRFBXserver.ItthensendsmouseandkeyboardeventsfromJava'sAWT
`downtheappropriatesocketastheyoccur,andpaintschangedrectanglesto
`thescreenastheyarrivefromtheRFBXserver,againusingtheAWT.The
`resultistheappearanceofanXsessionwithinawebbrowser,asdescribed
`aboveanddepictedinFigure.
`FigureshowsthestructureoftheVNCsystem.Notethatthe(cid:12)gure
`representsthestateofaconnectedVNCsessionwhichpresumesthefollowing
`backgroundsteps:
`(cid:15)ontheapplicationhost,atsomeearliertimetheuserwillhaveinitiated
`hisVNCsessionbyrunningastartupscript.Thisscriptstartsthe
`RFBXserverwithitsassociatedXsession(whichiscompletelyuser-
`con(cid:12)gurablejustasanyotherXsessionis)andcreatesanHTML(cid:12)le
`whichencapsulatesthecorrespondingRFBclientapplet.(Notethatthe
`Xsessionisstartedonavirtualdisplay,afeatureofthecurrentrelease
`ofX,soasnottotieupaphysicaldisplay.)
`(cid:15)onthebrowserhost,theuserwillhavepointedthebrowserattheURLof
`thegeneratedHTML(cid:12)le,whereupontheRFBclientappletwillhavebeen
`downloadedandrun,andtheconnectionsshowninthe(cid:12)gureestablished.
`Becauseofcurrentappletsecurityrestrictions,theHTML(cid:12)lemustbeserved
`byanHTTPserverrunningonthesamemachineastheRFBXserver.When
`thelevelofJavasecurityisadjustable,asisplanned,thisrestrictionmaybe
`removedifdesired.
`Itisimportanttorealizethatalthoughthee(cid:11)ectoftheVNCsystemisto
`provideteleportingacrosstheinternet,themethodbywhichthisisachievedis
`entirelyseparatefromthatemployedbytheoriginalteleportingsystem.That
`is,theVNCsystemisaconceptualbutnotatechnicalextensionofteleporting.
`Themostsigni(cid:12)canttechnicaldi(cid:11)erencebetweentheVNCandteleporting
`systemsisthattheVNCclientismuchthinnerthantheteleportingclient.
`Inordertobringupateleportsessiononaclientmachine,thatclientmustbe
`runningafullXserver,whereastobringupaVNCsessiontheclientneedsto
`runonlyaverysmall(about K)Javaapplet.
`
`
`Juniper Ex. 1022-p. 6
`Juniper v Finjan
`
`
`
`TELEPORTINGINJAVA:THEMECHANICS
`
`RFB X Server
`
`X applications use this server like any other
`
`Application Site
`
`xrn
`
`emacs
`
`xterm
`
`Mouse & Keyboard
`Events (TCP)
`
`Browser Site
`
`RFB client applet
`
`xrn
`
`emacs
`
`xterm
`
`User interacts with X apps
`here through browser
`
`Web Browser (any platform)
`
`Screen-change Rectangles
`(TCP)
`
`Figure:StructureoftheVNCsystem
`
`
`Juniper Ex. 1022-p. 7
`Juniper v Finjan
`
`
`
`EXPERIMENTS
`Experiments
`Thebulkofourexperimentshavebeenlocaltoourlab.Thatis,theapplication
`hostandthebrowserhosthavebothbeenmachinesonourlocalnetwork.
`However,wehavealsodoneanumberoflonger-distanceexperiments,many
`betweenCambridgeandOxford,andafewbetweenCambridgeandplaces
`furthera(cid:12)eld,includingMunich,Princeton,andSanFrancisco.Theapplication
`hosthasalwaysbeenaUNIXmachine,butwehavebroughtuptheVNC
`sessioninbrowsersrunningonbothUNIXandWindowsmachines.
`Ingeneral,theinteractiveperformanceisquiteacceptableexceptwhere
`theJavaAWTonthebrowserhostmachineisparticularlyslow.Becauseour
`earlyinvestigationsrevealedtheperformancebottlenecktobetheJavaimage-
`drawingcapabilities,wemadeaconsiderablee(cid:11)orttoimprovemattersonthat
`frontbydesigningacompressionschemewhichputsthetransmittedscreen
`rectanglesintoaformparticularlysuitedtofastrenderinginJava.
`ForXsessionstypicalofworkwithinourlab,ourcompressionscheme
`reducesnetworktra(cid:14)cbyafactorbetweenand .Asweputmoredistance
`betweentheapplicationandbrowserhosts,andasJava'simage-drawingspeed
`improves,interactiveperformanceincreasinglydependsonthespeedofnetwork
`communication.Hencetheabilityofthecompressionschemetoreducenetwork
`tra(cid:14)cisbecomingmoreimportantthanitsabilitytoreducedrawingtimeat
`theclient,andwethereforeintendtoinvestigateothercompressionschemesas
`well.Tables togivearoughindicationofVNCinteractiveperformancefor
`threespeci(cid:12)ctasksinvarioussituations.Inallcases,themeasurementsarein
`secondsandrepresentanaverageofbetween andtrialsofthesametask.
`TheapplicationhostwasalwaysonourlocalnetworkinCambridge.The'text'
`taskcomprisedscrollingthrough emailmessagesusingrmailinEmacs,the
`'menu'taskcomprisedpullingdownawindowmanagermenu times,andthe
`'image'taskcomprisedrenderingaKJPEGimage.
`Fortables and,theVNCclientappletswereruninNetscape . on
`relativelyslowUnixmachines.Thiswastheonlytypeofmachineavailableto
`usattheremotesiteinOxford,andweranthetestsonasimilarlocalmachine
`forcomparisonpurposes.WerantheVNCsessioninOxfordbytelnetingtothe
`remotemachine,andrunningNetscapetherewiththedisplaysettoourlocal
`machine.Thus,theOxford(cid:12)guresincludenetworkround-tripswhichwould
`nothaveoccurredhadwebeenphysicallylocatedattheremotesite.
`Fromthesetables,wecanseethatonslowerbrowserhostmachinesinteractive
`performanceisnotreallyacceptableevenwhenthemachineislocal.Moving
`toaremoteslowmachine(rememberingthatour(cid:12)guresincludeessentially
`doublednetworktra(cid:14)c)reducesinteractiveperformancefurther,butdoesleave
`itonthesameorderofmagnitude.
`Tables ,,andpresent(cid:12)guresforthethreetasksonfasterbrowserhost
`machinesonourlocalnetwork.Hereweseethattheinteractiveperformanceis
`UNIXisatrademarkoftheNovellCorporation.
`WindowsisatrademarkoftheMicrosoftCorporation.
`
`
`Juniper Ex. 1022-p. 8
`Juniper v Finjan
`
`
`
`EXPERIMENTS
`Time(sec)
`Task
`
`text
`
`menu
`image
`
`Table :VNCtimes,Netscape . ,slowUnixbrowserhost(SunIPX),local
`(Cambridge)
`Task
`Time(sec)
`text
`
`
`menu
`image
`
`Table:VNCtimes,Netscape . ,slowUnixbrowserhost(SunIPX),remote
`(Oxford)
`greatlyimproved,totheextentthatitisalmostcomparabletonativeXserver
`performance.These(cid:12)guressuggestthattheVNCsystemprovidesasuitable
`methodforaccessingXapplicationsfromJava-basedthinclientmachinesona
`localnetwork,andoursubjectiveexperiencewithinthelabhascon(cid:12)rmedthis.
`OursubjectiveexperienceofusingtheVNCsystemonfasterbrowserhosts
`fromsuchremotesitesasMunich,Princeton,andSanFranciscosuggeststhat
`theVNCsystemalsoprovidesasuitablemethodfortheglobalteleporting
`whichwastheoriginalaimofthework.Inseveralcases,membersofourlab
`haveusedtheirVNCsessionstodousefulworkwhiletravelling,andtheyreport
`thatalthoughinteractiveperformanceisbynomeanscomparabletonativeX
`serverperformanceonalocalmachine,itiscertainlyadequatefortheoccasional
`sessionofnomadiccomputing.
`Weplantocarryoutmorecontrolledexperimentsusingfastbrowserhosts
`fromremotesites,andatthesametimetoexperimentwithdi(cid:11)erenttechniques
`forimprovingVNCperformanceinthesesituations.Ourexperiencetodate
`makesuscon(cid:12)dentthattheVNCapproachishighlye(cid:11)ectiveandthatits
`e(cid:14)ciencyforremoteusewilleventuallyapproachitsdemonstratede(cid:14)ciency
`forlocaluse.
`Task
`Time(sec)
`text
`
`menu
`
`image
`
`Table :VNCtimes,Netscape . ,fastUnixbrowserhost(UltraSparc),local
`Finally,inaninteresting(ifsomewhatconfusingtoimagine)experiment,we
`combinedouroriginalteleportingsystemwiththeVNCsystem.SinceaVNC
`sessionprovidesremoteaccesstoastandardXserver,wecanteleporttoaVNC
`sessioninexactlythesamewaythatweteleporttoanyotherXserver,thereby
`
`
`Juniper Ex. 1022-p. 9
`Juniper v Finjan
`
`
`
`SECURITY
`Time(sec)
`Task
`
`text
`
`menu
`image
`
`Table:VNCtimes,Netscape . ,fastWindowsbrowserhost(Pentium ),
`local
`Task
`Time(sec)
`text
`
`menu
`
`image
`
`Table:VNCtimes,MicrosoftInternetExplorer . ,fastWindowsbrowser
`host(Pentium ),local
`causingateleportsessiontoappearwithinawebbrowser.Thus,formembers
`ofourlabtheVNCsystemcanprovidenotonlythecapabilityoftransporting
`aspeciallyset-upXsessionaroundtheinternet,butalsothecapabilityof
`transportingtheireverydayworkingenvironment.
`Security
`Thereareclearlyimportantsecurityconcernsaboutasystemwhichmakesfull
`accesstoone'spersonalcomputingenvironmentaseasyasclickingonaweb
`hyperlink.Sincewebbrowsersaredesignedtolimitthedamageanappletcan
`dotothelocalenvironment,whereasnosuchdamagelimitationexistsforan
`Xsession,theVNCuserismoreworriedaboutothersinvadinghercomputing
`environmentthanabrowser-providerisworriedaboutaVNCsessioninvading
`his.Theminimalsecurityrequirementisthereforepasswordprotectionforaccess
`toaVNCsession,andwehaveimplementedthislevelofsecurityusinga
`challenge-responseauthenticationmechanismbasedonstrongencryption.Better
`stillwouldbeongoingveri(cid:12)cationoftra(cid:14)cintegrityusingaone-timesession
`key,orevenfullencryptionofthesessiontra(cid:14)csince,forexample,onemight
`wanttoreadsensitiveemailinaVNCsession.Wearecurrentlyinvestigating
`variouspossibleapproachestotheseadditionallevelsofsecurity,noneofwhich
`presentsanyfundamentalproblem,sincetheappropriatetechnologyisavailable
`now.Evenwiththestrongestlevelofsecurity,however,onemuststilltrustthe
`webbrowserandthehostonwhichitruns.
`Adi(cid:11)erentapproachwouldbetoisolatetheresourceswhicharereachable
`fromaVNCsessionsuchthatunauthorisedaccesstothesessioncouldnotlead
`toanysigni(cid:12)cantloss.Thiswould,however,considerablylimittheusefulness
`oftheVNCsystem.
`
`
`Juniper Ex. 1022-p. 10
`Juniper v Finjan
`
`
`
`RELIANCEONX
`RelianceonX
`OnecaninteractwithaVNCsessiononanyplatformrunningaJava-capable
`webbrowserincluding,forexample,Windows-basedPCs,Macs,andUNIX
`workstations.However,theapplicationswithinthesessionmustuseXastheir
`Itispossible,though,withinanXsessionrunningon
`displaytechnology.
`onemachinetointeractwithaMicrosoftWindowssessionrunningnatively
`onaPC.Thisrequiresamulti-userversionofWindowsNTsuchasNTrigue,
`WinCenter,orWinDD,andwehavesuccessfullyusedWinCenterinthiswayto
`provideaccesstoWindowsapplicationswithinaVNCsession,ascanbeseen
`inFigure.
`
`Figure:AsampleWinCenterVNCsession
`
`
`Juniper Ex. 1022-p. 11
`Juniper v Finjan
`
`
`
`CONCLUSIONSANDRELATEDWORK
`Analternativesolution,whichwearelookingintonow,wouldbetocreate
`anRFBWindowsservercomparabletotheRFBXserverwhichwehave
`describedabove.TheRFBWindowsserverwouldprovidethesameRFB
`protocolinterfaceastheRFBXserver,butwoulddelivermouseandkeyboard
`eventsto,andretrievescreenchangesfrom,aWindowssessionratherthanan
`Xsession.ThiswouldimmediatelyenabledirectVNC-styleinteractionwith
`WindowsapplicationssincetheRFBclientdependsonlyontheRFBprotocol
`andisthereforecompletelyindependentoftheapplicationhost'swindowing
`system.TherecentemergenceofICA-basedsystemsforexportingWindows
`interfacestowebpagesprovidesamodelforthisapproach.
`ConclusionsandRelatedWork
`Thedi(cid:11)erentfacetsofmobilecomputingandtherelated(cid:12)eldofubiquitous
`computingareexploredin,forexample,[ , ,,].Theconceptofubiquitous
`personalisationextendstheseideastoencompassthenotionthatwherever
`theusermightbeandusingwhateverdevice,thecomputingand/orcontrol
`interfaceisinsomewaytailoredtotheuser'sspeci(cid:12)cations.TheVNCsystem
`isastepinthatdirectioninsofarasitmakesavailableonvirtuallyanyinternet-
`connectedmachineacomputingenvironmentcompletelydeterminedbythe
`user.AnotherX-basedarchitectureformobileapplicationsonthewebispresented
`in[]togetherwithagoodoverviewandanalysisofthecentral
`issuesin
`designingsuchanarchitecture.Theapproachtakenissimilartoours,although
`itreliesonXonthebrowsersideaswellastheapplicationside.
`Thenextphaseofourresearchaimstoprovideameansfortheuser's
`environmenttoadapttoradicallydi(cid:11)erenttypesofdeviceswhilestillretaining
`someelementofpersonalisedbehaviour.Thedevicesweareconsideringhere
`rangefromthemostbasic(say,mobilephones)throughtodesktopPCsand
`workstations.Perhapsthiscanbeachievedbydesigningbrowserswhichinterpret
`webdocumentsandappletsinwayssuitabletothesedi(cid:11)erentdevices,asis
`apparentlythethrustofNetscape'sNavioCommunicationsventureand,to
`someextent,Microsoft'sWindowsCE.However,onitsownthiswillnotbe
`enough.Thereisawidespectrumofpossibledistributionsofbothstateand
`intelligencebetweentheapplicationandbrowserhosts,andthecurrentVNC
`systemrepresentsjustoneextremepointonthisspectrum.Thesuccessof
`thisnextresearchphasewilldependoncarefulinvestigationandexploitation
`ofotherpointsalongthisspectrum,andthisiswhereweintendtodirectour
`researche(cid:11)ortsinthe(cid:12)rstinstance.
`References
`[ ]RajiveBagrodia,WesleyChu,LeonardKleinrock,andGeraldPopek.
`Vision,issues,andarchitecturefornomadiccomputing.IEEEPersonal
`Communications,(): {,December .
`ICAisatrademarkofCitrixSystemsInc.
`
`Juniper Ex. 1022-p. 12
`Juniper v Finjan
`
`
`
`REFERENCES
`[]DanielDardailler.MobileGUIontheweb.TheXAdvisor, (): {,
`July .TheXAdvisorisathttp://www.unx.com/DD/advisor/.
`[ ]TomaszImielinskiandB.R.Badrinath.Wirelesscomputing.
`CommunicationsoftheACM, ( ): {,October .
`[]ArupMukherjeeandDanielSiewiorek.Mobility:Amediumfor
`computation,communication,andcontrol.InLuis-FelipeCabreraand
`MahadevSatyanarayanan,editors,WorkshoponMobileComputing
`SystemsandApplications,pages{ .IEEEComputerSocietyPress,
` .
`[]ORLwebsite.Tilemodule.http://www.orl.co.uk/tile.html.
`[]TristanRichardson,FrazerBennett,GlenfordMapp,andAndyHopper.
`TeleportinginanXwindowsystemenvironment.IEEEPersonal
`Communications, ( ):{ ,ThirdQuarter .AlsoavailableasORL
`TechnicalReport .,ORLLtd,TrumpingtonStreet,CambridgeCB
` QA,England.
`[]MarkWeiser.Somecomputerscienceissuesinubiquitouscomputing.
`CACM, (): { , .Seehttp://www.ubiq.com/forfurther
`informationonthisandrelatedwork.
`[]XConsortiumwebsite.Xconsortiumwelcomedocument.
`http://www.x.org/.
`
`
`Juniper Ex. 1022-p. 13
`Juniper v Finjan
`
`