`
`Distributed Transaction Processing:
`Reference Model, Version 3
`
`CI
`
`LA
`
`N
`
`H
`
` G
`
`U
`ID
`
`E
`
`S
`
`C
`
`ET
`
`IPR2022-00976
`Fintiv Ex. 2010 | Page 1 of 7
`
`
`
`X/Open Guide
`
`Distributed Transaction Processing:
`
`Reference Model, Version 3
`
`X/Open Company Ltd.
`
`IPR2022-00976
`Fintiv Ex. 2010 | Page 2 of 7
`
`
`
`(cid:211) February 1996, X/Open Company Limited
`All rights reserved. No part of this publication may be reproduced, stored in a retrieval system,
`or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording or
`otherwise, without the prior permission of the copyright owners.
`
`X/Open Guide
`Distributed Transaction Processing: Reference Model, Version 3
`ISBN: 1-85912-170-5
`X/Open Document Number: G504
`
`Published by X/Open Company Ltd., U.K.
`
`Any comments relating to the material contained in this document may be submitted to X/Open
`at:
`
`X/Open Company Limited
`Apex Plaza
`Forbury Road
`Reading
`Berkshire, RG1 1AX
`United Kingdom
`or by Electronic Mail to:
`XoSpecs@xopen.org
`
`ii
`
`X/Open Guide
`
`IPR2022-00976
`Fintiv Ex. 2010 | Page 3 of 7
`
`
`
`Chapter 1
`
`Introduction
`
`1.1
`
`1.2
`
`Overview
`The X/Open Distributed Transaction Processing (DTP) model is a software architecture that
`allows multiple application programs to share resources provided by multiple resource
`managers, and allows their work to be coordinated into global transactions.
`The X/Open DTP Model comprises five basic functional components:
`• an Application Program (AP), which defines transaction boundaries and specifies actions
`that constitute a transaction
`• Resource Managers (RMs) such as databases or file access systems, which provide access to
`resources
`• a Transaction Manager (TM), which assigns identifiers to transactions, monitors their
`progress, and takes responsibility for transaction completion and for coordinating failure
`recovery.
`• Communication Resource Managers (CRMs), which control communication between
`distributed applications within or across TM domains.
`• a communication protocol, which provides the underlying communication services used by
`distributed applications and supported by CRMs.
`These terms are defined more precisely in Section 3.2 on page 8.
`X/Open DTP publications based on this model specify a portable high-level TP language (HTL),
`portable APIs and system-level interfaces that facilitate:
`• portability of application program source code to any X/Open environment that offers that
`HTL and/or those APIs
`• interchangeability of TMs, RMs and CRMs from various sources
`• interoperability of diverse TMs, RMs and CRMs in the same global transaction.
`
`Benefits of X/Open DTP
`Distributed transaction processing provides the necessary mechanism to combine multiple
`software components into a cooperating unit that can maintain shared data, potentially
`spanning multiple physical processors or locations, or both. This enables construction of
`applications that manipulate data consistently using multiple products,
`that can easily
`incorporate additional components, and that can be scaled by adding additional hardware and
`software components.
`Portability, interchangeability and interoperability let application writers benefit from a wider
`selection of transaction managers, resource managers and communication resource managers.
`Application writers also gain the freedom to select from alternative products, hardware and
`software platforms.
`Published language and interface specifications simplify software design. For example, some
`software products that might once have been implemented using customised interfaces may
`
`Distributed Transaction Processing: Reference Model, Version 3
`
`1
`
`IPR2022-00976
`Fintiv Ex. 2010 | Page 4 of 7
`
`
`
`Benefits of X/Open DTP
`
`Introduction
`
`1.3
`
`1.4
`
`now be viewed as interchangeable DTP components. This approach shortens development time
`and extends the above benefits to a greater number of products.
`All parties benefit from the X/Open method of achieving consensus and communication among
`open systems providers, with a significant voice for system vendors, independent software
`vendors (ISVs) and users.
`
`Areas Not Addressed
`The X/Open DTP Model does not address all issues of importance in transaction processing, for
`example:
`• configuration, administration and monitoring of transaction processing systems
`• forms management and other user interfaces
`• specification of benchmarks
`• security
`• naming
`• communication techniques that may be used within RM implementations.
`
`Relationship to International Standards
`The X/Open DTP Model shows that DTP software components use the communication protocol
`specified in the referenced OSI TP standards to facilitate interoperability of components in
`heterogeneous environments. The use of OSI TP is not mandatory where implementors require
`to use a product-internal communication provider.
`Data structures from the referenced OSI CCR standards are a recommended component of the
`transaction identifier that X/Open specifies.
`
`2
`
`X/Open Guide
`
`IPR2022-00976
`Fintiv Ex. 2010 | Page 5 of 7
`
`
`
`Chapter 2
`
`Definitions
`
`This chapter gives fundamental definitions on which subsequent chapters depend.
`structured as follows:
`• Transaction Definitions
`• Model Definitions.
`The terms Application Program (AP), Resource Manager (RM), Transaction Manager (TM) and
`Communication Resource Manager (CRM) are defined in Section 3.2 on page 8.
`
`It is
`
`2.1
`
`Transaction Definitions
`
`Transaction
`A transaction is a complete unit of work which, in general terms, can apply to many contexts. It
`may comprise many computational
`tasks including user interfaces, data retrieval and
`communications. A typical
`transaction modifies resources. The model described in the
`referenced OSI TP standards defines the term transaction more precisely.
`This guide refers to specific types of transaction, such as global and distributed. These are defined
`below.
`
`Consistency
`
`Transaction Properties
`Transactions typically exhibit the following properties:
`The results of the transaction’s execution are either all committed or all rolled
`Atomicity
`back.
`A completed transaction transforms a shared resource from one valid state to
`another valid state.
`Changes to shared resources that a transaction effects do not become visible
`outside the transaction until the transaction commits.
`The changes that result from transaction commitment survive subsequent
`system or media failures.
`These properties are known by their initials as the ACID properties. In the X/Open DTP Model,
`the TM coordinates Atomicity at global level whilst each RM is responsible for the Atomicity,
`Consistency, Isolation and Durability of its resources.
`
`Isolation
`
`Durability
`
`Global Transaction
`The term global transaction collectively describes all the work done by participating RMs
`anywhere in the network for a single unit of work. An AP defines the start and end of a global
`transaction. A single, coordinating, TM manages its initiation and completion.
`
`Distributed Transaction Processing: Reference Model, Version 3
`
`3
`
`IPR2022-00976
`Fintiv Ex. 2010 | Page 6 of 7
`
`
`
`Transaction Definitions
`
`Definitions
`
`Distributed Transaction
`This guide uses the term global, rather than distributed, transaction. Chapter 3 concentrates on
`global transaction processing whilst avoiding confusion about the actual location of the work
`and its distribution across physical locations, network nodes or TM Domains.
`
`Commitment
`Commitment is the act that ends a transaction and makes permanent all changes to resources
`specified during that transaction.
`
`Rollback
`Rollback is the act that ends a transaction and nullifies or undoes all changes to resources
`specified during that transaction.
`
`Transaction Completion
`Transaction completion means either commitment or rollback .
`
`Commitment Protocol
`A commitment protocol is the synchronisation that occurs at transaction completion. The X/Open
`DTP Model follows the two-phase commit with presumed rollback 1 protocol defined in the
`referenced OSI TP standards. A description of the basic protocol is given in Section 3.4.3 on page
`13. In certain cases, a global transaction may be completed heuristically . Heuristic transaction
`completion is described in Section 3.4.5 on page 14.
`
`RM Resource
`In the X/Open DTP Model, an RM resource is the collection of data that an RM manages. A
`resource may be shared with other global transactions or dedicated to a single transaction.
`
`RM Native Interface
`The RM’s native interface is the RM-defined API by which an AP operates on the RM’s resource.
`The RM may support a standard interface, such as SQL or ISAM, in which case the AP may be
`portable to other RMs that use the same interface. The RM may, on the other hand, offer a
`proprietary interface specific to its services.
`
`__________________
`1. To aid readability, some parts of this guide use the term two-phase commit as an abbreviation of two-phase commit with presumed
`rollback .
`
`4
`
`X/Open Guide
`
`IPR2022-00976
`Fintiv Ex. 2010 | Page 7 of 7
`
`