Reliable client-server communication in distributed programs

Kandasamy Ravindran, Samuel T. Chanson, Kadangode K. Ramakrishnan · 2003

The authors' premise is that applications have the ability to tolerate certain types of failures under certain situations. This may, in turn, relax the top-level constraint on failure recovery algorithms in the interprocess communication (IPC) layer and allow exploitation of the inherent tolerance of applications to failures in a systematic way to simplify failure recovery. Using this application-driven approach, the authors present a model of a distributed program based on the well-known client-server relationship among the processes of the program. The model reflects certain generic properties of the application layer that can be exploited by the IPC layer during failure recovery. New techniques as to how the properties can be used for recovery are outlined. The authors use remote procedure call and shared variable as communication abstractions for the client and the server processes in the program to communicate with one another. The simplicity and generality of the failure recovery renders the application-driven approach particularly useful in contemporary distributed systems which are large and heterogeneous and hence have complex failure modes.>

Read the paper · More papers on PaperTik