Client-Server Computing in Mobile EnvironmentsClient-Server ArchitectureMobile Computing and Issues in Client-Server EnvironmentParadigms of Mobile Client-Server ComputingMobile-Aware AdaptationSlide 6Application Transparent AdaptationSlide 8Application-Aware AdaptationSlide 10Client- based Application AdaptationClient-Server Application AdaptationProxy-Based Application AdaptationExtended Client-Server ModelSlide 15Thin client architectureFull-Client ArchitectureFlexible Client-Server ArchitectureMobile ObjectsCollaborative GroupsSlide 21Mobile Data AccessServer Data DisseminationClient Cache ManagementThank youClient-Server Computing in Mobile Environments Presenter : Rohan A. Bairat2Client-Server ArchitectureVersatile, Message based, Modular Infrastructure intended to improve usability, flexibility, interoperability and scalability as compared to Centralized, Mainframe, time sharing computing.Intended to reduce Network Traffic.Communication is using RPC or SQL3Mobile Computing and Issues in Client-Server Environment Mobile Computing a new ParadigmIssuesMobility of Users and their computersMobile Resource constraintsWireless BandwidthLimited Battery Life4Paradigms of Mobile Client-Server ComputingMobile Aware Adaptation Response to change in environmentNecessary system services that can be utilizedExtended Client-Server ModelVarious Architectures that enables functional participation of applications between client and serversMobile data AccessDeals with issues like data transfer and consistency of Client cache5Mobile-Aware AdaptationDynamically adjusting the functionality between the mobile and stationary host to cater changes like Variations and changes in Network ConditionsLocal resource availabilityComputations of Clients and Servers should be adaptive in response to change in mobile environment.6Mobile-Aware AdaptationApplication Transparent AdaptationApplications work with no modification in mobile environmentSystem shield or proxy is provided which hides the differences between the stationary and mobile environments from ApplicationsThe proxy / System shield mitigates to the change in environment and the change is transparent to the applications.7Application Transparent AdaptationE.G. File System Proxy (CODA)File System Proxy hides mobile issues from applications and emulate file server services on the mobile device.Proxy LogConcurrency control after reconnectionThree phases Hoarding Server Files pre-fetched into Mobile ComputersEmulating Upon Disconnection updates are loggedLog optimization is done to improve performanceReintegratingSynchronizes cache with the server8Application Transparent AdaptationDrawbacks of this approachPerformance is an issueIt may be sometimes very hard for the system Some manual user intervention may be needed9Application-Aware AdaptationAllows Applications or their extensions to react to mobile resource changesHow?Collaboration between System and individual ApplicationsSystem monitors resource levels and notifies applications of relevant changesApplication then adapts to the change10Application-Aware AdaptationIt can be divided into three different categoriesClient- based Application adaptationClient-server Application adaptationProxy-based Application adaptation11Client- based Application AdaptationIn the Collaborative adaptation ,System provides mechanisms of adaptation, while applications are free to specify adaptation policyApplication changes or adaptation is done only on client side12Client-Server Application AdaptationThe Rover toolkit supports the application aware adaptation through the use of RDO http://www.pdos.lcs.mit.edu/rover/RDOs are relocatable dynamic objectsRDOs are defined for the data types manipulated by the application and for the data transported between client and serverProgrammers TaskBenefits to Application DesignersApplication designers have semantic knowledgeCan tightly couple data with program code and manage resources13The application specific proxy has been proposed as an intermediary between client and server It performs storage intensive and computation intensive tasksProxy reduces Bandwidth demands and allow legacy and non standard client to communicate with the serverProxy-Based Application Adaptation14Extended Client-Server ModelClassic client-server systems assume that the location of client and server hosts do not change and also the connection among them does not changeFunctionality between client and server is statically partitionedExtended Client server Architecture thus deals with these inconsistencies in network connections and location specifics15Extended Client-Server ModelThin client architectureFull client architectureFlexible client architecture16Thin client architecture17Full-Client ArchitectureCan support disconnected or weakly connected clientThe full client architecture supports emulations of functions of server at client hostLight weight servers or proxyE.G CODA , WebExpress18Flexible Client-Server ArchitectureGeneralizes both thin client and full client architectureConnection between client and server can be dynamically established19Mobile ObjectsProgramming entities that can freely roam the networkMobile objects allow clients to download the server code to mobile host for executionThey can maintain state information and make intelligent decisionsChallenge in using mobile objects?Frequently disconnected or weak environment20Collaborative GroupsDivision of members into groupsMembers can access data for the groupA client is able to access data residing on server to which it is communicating and conversely any machine holding the copy of the database, including personal laptop, should be willing to server read and write requests from nearby machinesE.G Bayou system21Flexible Client-Server ArchitectureApplication specific proxyProxy acts an intermediary between clients and serverAllows legacy and other non-standard clients to interoperate with existing serversVirtual mobility of serversAchieved by replication22Mobile Data AccessMobile data access enables the delivery of server data and the maintenance of client-server dataData Access strategies in mobile environment can be characterized by Data delivery Data
View Full Document