When Microsoft Exchange Server sends a message, it relies on the MAPI subsystem to direct client requests to one or more transport-service providers. Windows DLLs serve as drivers for each transport provider. They also provide the interface between the MAPI spooler and the underlying messaging system or services.
MAPI defines three types of service providers:
When a message is sent from a client application, MAPI.DLL responds to the common mail call (CMC) or MAPI call. MAPI then routes the messages to the appropriate message store and address book service provider. If a particular message is marked for sending, the message spooler checks the message’s address to determine which transport provider must be used to send the message. Depending on the designated message recipient, the message spooler may call upon more than one transport provider.
The spooler performs other message-management functions. It directs inbound messages to a message store and handles messages that are undeliverable because no transport provider can carry them. The spooler also provides an important store-and-forward function. The spooler holds the message in a store if the required messaging service is currently unavailable. When MAPI reestablishes connection to that messaging service, the spooler automatically forwards the message to its destination.
The Microsoft Exchange server information store offers more functionality than many other MAPI message stores. For instance, replication services are part of the Microsoft Exchange server information store. The replicated storage model allows the Microsoft Exchange server information store to distribute information within an organization without requiring users to know the location of the folders containing the information.