Book contents
5 - The Amoeba Transaction Protocol
Published online by Cambridge University Press: 03 May 2010
Summary
INTRODUCTION
The Amoeba Distributed Operating System uses a Transaction Protocol for the communication between different processes running under the supervision of the Operating System. A transaction is a basic form of information exchange between two processes, consisting of a request followed by a reply. Contrary to a Connection Oriented Protocol a Transaction Protocol does not establish a permanent (logical) connection between two communicating processes. For each transaction a connection is built up. As soon as the transaction is finished the connection is broken. The choice of a Transaction Protocol in favour of a Connection Oriented Protocol is based on the observation that in a distributed operating system most communications within a network do not imply massive data transport during a long time. As a result the overhead costs of building up and maintaining a permanent connection between two processes will be (too) high.
In the Amoeba Operating System transactions take place between a Client process and a Server process. A Client process sends a request to the network. This request can be answered by a Server process with a reply. In order to increase the performance and the fault tolerance of the operating system several Server processes may provide the same service. When a specific Server crashes or is temporarily busy another one can take over its task.
As in all communication protocols, acknowledgements are needed for reliable communications. In the Amoeba Transaction Protocol, abbreviated to ATP in the sequel, an acknowledgement message from Client to Server is used to report the reception of a reply. The reply itself serves as an acknowledgement of the reception of a request.
- Type
- Chapter
- Information
- Algebraic Specification of Communication Protocols , pp. 113 - 134Publisher: Cambridge University PressPrint publication year: 1993