The Message Server is a standard server, which accepts asynchronous requests from clients via a kernel-maintained session. It performs two key functions:
Controls access to message data: in response to client requests, the Message Server delegates temporary, exclusive access to message data. It is the responsibility of the Message Server to keep the message data in good order, and cope with such events as failure recovery.
Delegates requests to Server-side MTMs: the Message Server must identify requests, such as sending a message, that require protocol-specific functionality and load the appropriate Server-side MTM.
The Message Server and any loaded Server-side MTMs exist in the same process space. The design allows clients to access the combined functionality of the Message Server and the Server-side MTMs through a single server interface.