RDP: A Result Delivery Protocol for Mobile Computing Markus Endler, Dilma M. Silva and Kunio Okuda Department of Computer Science University of S˜ ao Paulo, Brazil endler,dilma,kunio @ime.usp.br Abstract Nowadays several information retrieval services are be- ing offered to mobile clients. Many of such services are im- plemented by groups of distributed servers and sometimes employ time-consuming data location and retrieval proto- cols among the servers. Moreover, many network appli- cations have strong reliability requirements. This means that client-server communication in services for mobile computing must also be reliable despite the intrinsic non- predictability related to mobile computing. In this paper we present a client-server protocol which implements reliable delivery of messages to mobile hosts. Reliability here means that for every request from a mo- bile client to a network service, eventually it will receive the result, despite its periods of inactivity and any number of migrations. This protocol is suitable for network services based on request-reply style of communication (e.g. RPC) and with long request processing times, i.e. where there is high probability that a client at a mobile host migrates to another cell while waiting for the reply. The main advantage of our protocol is that the location of the proxy used to forward messages to a mobile host is not static (as in Mobile IP), by which it facilitates dynamic global load balancing within the set of Mobile Support Sta- tions. 1. Introduction With the ongoing improvement and spread of cellular telephony technology, more and more computer network services will be supporting wireless communication. Soon, it will be possible to access many sorts of information bases from lightweight, inexpensive and hand-held terminals or PDAs, regardless of their current location. Also, many of these information bases will be fed with data sent by these mobile devices, which may range from frequent updates Supported by FAPESP (Fundac ¸˜ ao de Amparo ` a Pesquisa do Estado de ao Paulo) - Proc. No. 98/06138-2. of simple data, such as the current location, to occasional uploads of huge volume of data. Moreover, many infor- mation bases will consist of data stored at groups of dis- tributed servers, and queries may eventually require time- consuming data location and retrieval protocols among the servers. On the other hand, more and more applications impose strong reliability requirements on the services they use. This means that client-server communication within ser- vices for mobile computing must also be reliable despite the intrinsic non-predictability related to mobile comput- ing, such as wireless transmission problems, migration or non-availability of a mobile host. Currently we are working on a project called SIDAM (Distributed Information Systems for Mobile Agents) that aims at studying the main architectural and algorithmical is- sues involved in the implementation of distributed informa- tion services for mobile agents, investigating existing meth- ods and technologies and designing efficient protocols and services for data storage and access. For that, a general model has been proposed as an in- tegrator of the several research areas involved, namely: distributed systems, performance analysis, fault tolerance, software architecture, databases and knowledge represen- tation. The construction of this model was motivated by a real-life application: an on-line service providing traf- fic information in a big city such as S˜ ao Paulo. Project SIDAM aims at developing a distributed information ser- vice that can be queried and updated by mobile users. These users may be either common citizens requesting informa- tion about traffic situation in a specific part of the city or may be S˜ ao Paulo’s Traffic Engineering Company staff (in a car or helicopter) feeding the system with data about traf- fic. This data will be stored (eventually in several forms and degrees of accuracy) in an decentralized information base, consisting of several interconnected Traffic Informa- tion Servers (TIS). The decentralized nature of the infor- mation base is necessary to handle the high load of con- current queries and updates, and to take advantage of the locality of updates. In this context, queries and updates to the global information base may involve complex searches,