A formal treatment of interference in remote procedure calls
Remote procedure calls (rpcs) are a distributed programming facility enabling a client program to call a procedure that will be executed by a server computation running on a remote machine. It would be desirable that remote and local procedure calls could be treated uniformly, so as to make distribution transparent to the programmer. But transparency may be impaired if, because of communication or machine failures, computations serving the rpc of a client are allowed to interfere with computations serving later rpcs of that client. This paper gives a formal treatment of interference in rpcs. The formalism used is that of occurrence graphs. The main result obtained is a sufficient condition for rpcs to be interference-free. The practical significance of this condition is highlighted by relating it to interference prevention techniques often adopted in the design of rpc mechanisms.
Unable to display preview. Download preview PDF.
- [ASU]Aho A., Sethi R., Ullmann J., Principles of Compiler Design, Addison-Wesley, 1986.Google Scholar
- [Gor]Goree J., “Internal Consistency of a Distributed Transaction System”, M. Sc. Thesis, Tech. rep. LCS/TR-286, Massachusetts Institute of Technology, 1983.Google Scholar
- [LS]Liskov B. and Scheifler R., “Guardians and Actions: Linguistic Support for Robust Distributed Programming”, ACM TOPLAS, July 1983.Google Scholar
- [LaB]Lampson B., “Remote Procedure Calls”, in LNCS 105, 246–265, Springer-Verlag, New York, 1981.Google Scholar
- [LaL]Lamport L., “Time, Clocks, and the Ordering of Events in Distributed Systems”, CACM 21 (7), 558–565, July 1978.Google Scholar
- [Nel]Nelson B., “Remote Procedure Call”, Ph. D. thesis, Tech. rep. CSL-79-3, Xerox Palo Alto Research Center, 1981.Google Scholar
- [Shr]Shrivastava S., On the Treatment of Orphans in a Distributed System, in Proc. of the 3rd Symposium on Reliability in Distributed Software and Database Systems, 155–162, IEEE Computer Society, 1983.Google Scholar
- [Wal]Walker E., “Orphan Detection in the Argus System”, M. Sc. Thesis, Tech. rep. LCS/TR-326, Massachusetts Institute of Technology, 1984.Google Scholar