2 Functional Architecture
The transaction processing services protocols are an internal infrastructure of the Windows operating system and support applications and systems that require transaction coordination services. For example, a message queuing system such as the one described in [MS-MQOD] can use transaction processing to make sure that operations on separate queues either are completed or aborted. Or a middle-tier application server system such as COM+, specified in [MS-COM], uses transaction services. [MS-MQOD] and [MS-COM] describe how those systems interact with the transaction processing services protocols.
Transaction processing services consist of one or more transaction managers that communicate with each other by using protocols that are internal to the system. Multiple transaction managers can be involved in a transaction for many reasons, for example when applications and the resources that are involved are distributed over a network, or when one of the resources that are involved is associated with its own specialized transaction manager.
To provide interoperability with other well-known transaction processing standards, the transaction processing services protocols provide specific external interfaces to enable applications, resource managers, and transaction managers that do not support the internal protocols as defined by the system, to participate in transactions. They are referred to as external applications, external resource managers, and external transaction managers.