ISO/IEC 10026-2:1996
(Main)Information technology — Open Systems Interconnection — Distributed Transaction Processing — Part 2: OSI TP Service
Information technology — Open Systems Interconnection — Distributed Transaction Processing — Part 2: OSI TP Service
Technologies de l'information — Interconnexion de systèmes ouverts (OSI) — Traitement transactionnel réparti — Partie 2: Service OSI TP
General Information
Relations
Standards Content (Sample)
INTERNATIONAL
ISO/IEC
STANDARD
10026-2
Second edition
1996-05-01
Information technology - Open Systems
Distributed Transaction
Interconnection -
Processing -
Part 2:
OSI TP Service
Technologies de /‘information - In terconnexion de sys tt?mes ouverts
(OS/) - Traitement transactionnel kparti
Partie 2: Service OS/ TP
Reference number
ISO/l EC 10026-2: 1996(E)
---------------------- Page: 1 ----------------------
0 ISOAEC
SO/I EC 10026-2: 1996(E)
Contents
V
Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .*.
Vi
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .“.“.“.““““““““““““.””.”””””““““““.“.
1
Scope .
1
................................................................................................................................
Normative references
2
Definitions .
3
Abbreviations .
4
Conventions .
4
5.1 Service conventions .
4
.....................................................................................................
5.2 Usage of the term transaction
4
.......................................................................................................
5.3 Usage of italics for notations
5
Overview of the OSI TP Service .
5
........................................................................................................................................
Service facilities
5
.........................................................................................................
7.1 Functional unit descriptions
6
units .
7.2 Services contained in functional
6
..............................................................................................
7.3 Service for modelling data transfer
7
.................................................................................................
7.4 Structure of service descriptions
8
....................................................................................................
7.5 Effects of dialogue termination
8
...................................................................................................
Service primitives and their parameters
10
Data transfer .
10
..........................................................................................................
9.1 Overview of data transfer
10
................................................................................................
9.2 Data transfer service, TP-DATA
11
..................................................................................................................
10 The Dialogue functional unit
11
..................................................................................
10.1 Overview of the Dialogue functional unit
11
.........................................................
10.2 Dialogue Establishment service, TP-BEGIN-DIALOGU E
16
................................................................
10.3 Dialogue Termination service, TP-END-DIALOGU E
018
............................................................................
10.4 User Error Reporting service, TP-U-ERROR
. $20
10.5 User Abort service, TP-U-ABORT .
22
.....................................................................................
10.6 Provider Abort service, TP-P-ABORT
24
........................................................................................................
11 The Shared Control functional unit
24
........................................................................
11 .l Overview of the Shared Control functional unit
24
.....................................................................................................
12 The Polarized Control functional unit
24
.....................................................................
12.1 Overview of the Polarized Control functional unit
24
........................................................................
12.2 Grant Control service, TP-GRANT-CONTROL
............................................................... 26
12.3 Request Control service, TP-REQUEST-CONTROL
0 ISO/IEC 1996
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or
by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from the
publisher.
ISO/IEC Copyright Office l Case Postale 56 l CH-1211 Geneve 20 l Switzerland
Printed in Switzerland
ii
---------------------- Page: 2 ----------------------
ISOllEC 10026-2: 1996(E)
SO/IEC
27
..............................................................................................................
The Handshake functional unit
27
..............................................................................
13.1 Overview of the Handshake functional unit
27
....................................................................................
13.2 Handshake service, TP-HANDSHAKE
..2 9
13.3 Handshake and Grant Control service, TP-HANDSHAKE-AND-GRANT-CONTROL
.............
31
...............................................................................................
14 The commitment-related functional units
31
.............................................................................................................................
14.1 Introduction
31
...................................................................................
14.2 Overview of the Commit functional unit
33
unit .
14.3 Overview of the Chained Transactions functional
33
..........................................................
14.4 Overview of the Unchained Transactions functional unit
33
..........................................................
14.5 Begin Transaction service, TP-BEGIN-TRANSACTION
35
.........................................
14.6 Deferred End Dialogue service, TP-DEFERRED-END-DIALOGUE
..................................... 36
14.7 Deferred Grant Control service, TP-DEFERRED-GRANT-CONTROL
38
............................................................................................................
14.8 TP-PREPARE request
39
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14.9 TP-PREPARE indication
39
........................................................................................................
14.10 TP-READY indication.
40
........................................................................................................
14.11 TP-COMMIT request.
41
........................................................................................................
14.12 TP-COMMIT indication.
42
request . . . . . . . . .
14.13 TP-DONE
43
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .““.““.
T ‘E indication
14.14 TP-COMMIT-COMPLE-
44
........................................................................................................
14.15 TP-ROLLBACK request
44
.....................................................................................................
14.16 TP-ROLLBACK indication
45
.................................................................................
14.17 TP-ROLLBACK-COMPLETE indication
.......................................... 46
14.18 Heuristic Reporting service, TP-HEURISTIC-REPORT indication
Annexes
47
................................................................................................................................
A Service state table
47
A. 1 Overview .
47
A.2 Dialogue States .
49
.................................................................................................................................
A.3 Variables
51
....................................................................................................................................
A.4 Actions
54
.............................................................................................................................
A.5 Node Crash
54
A.6 Keys .
55
..................................................................................................................
A.7 Blank Intersections
55
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.8 Service State Table
78
...................................................................................................................
B Changes from first edition
78
...................................................
B-1 Changes from the first edition to produce the second edition
Tables
6
....................................................................................
Table 1 - Functional units and their services
7
....................................................................................
Table 2 - Service for modelling data transfer
9
..................................................................................................
Table 3 - OSI TP service primitives
10
................................................................................
Table 4 - TP-DATA primitives and parameters
................................................... 12
Table 5 - TP-BEGIN-DIALOGUE primitives and their parameters
....................................................... 16
Table 6 - TP-END-DIALOGUE primitives and their parameters
18
..................................................................................................
Table 7 - TP-U-ERROR primitives
20
..................................................................
Table 8 - TP-U-ABORT primitives and their parameters
22
.....................................................................
Table 9 - TP-P-ABORT indication and its parameters
25
..................................................................................
Table 10 - TP-GRANT-CONTROL primitives
26
..............................................................................
Table 11 - TP-REQUEST-CONTROL primitives
27
............................................................
Table 12 - TP-HANDSHAKE primitives and their parameter
“29
Table 13 - TP-HANDSHAKE-AND-GRANT-CONTROL primitives and their parameter.
.................
............................................................................ 33
primitives
Table 14 - TP-BEGIN-TRANSACTION
35
..................................................................
Table 15 - TP-DEFERRED-END-DIALOGUE primitives
. . .
III
---------------------- Page: 3 ----------------------
0 ISOAEC
ISOllEC 10026=2:1996(E)
36
..............................................................
Table 16 - TP-DEFERRED-GRANT-CONTROL primitives
38
.......................................................................
Table 17 - TP-PREPARE request and its parameter
39
....................................................................
Table 18 - TP-PREPARE indication and its parameter
40
.....................................................................................................
Table 19 - TP-READY indication
40
.....................................................................................................
Table 20 - TP-COMMIT request
41
..................................................................................................
Table 21 - TP-COMMIT indication
42
.............................................................................
Table 22 - TP-DONE request and its parameter
43
..............................................................................
Table 23 - TP-COMMIT-COMPLETE indication
44
.................................................................................................
Table 24 - TP-ROLLBACK request
44
..............................................................................................
Table 25 - TP-ROLLBACK indication
45
..........................................................................
Table 26 - TP-ROLLBACK-COMPLETE indication
46
......................................................
Table 27 - TP-HEURISTIC-REPORT indication and parameter
Figures
14
...........................................
Figure 1 - Unconfirmed TP-BEGIN-DIALOGUE sequence of primitives
.............................................. 14
Figure 2 - Confirmed TP-BEGIN-DIALOGUE sequence of primitives
16
..............................................
Figure 3 - Unconfirmed TP-END-DIALOGUE sequence of primitives
17
.......................................................
Figure 4 - Confirmed END-DIALOGUE sequence of primitives
18
.............................................................................
Figure 5 - TP-U-ERROR sequence of primitives
19
...............................
Figure 6 - TP-U-ERROR as the negative confirmation to a handshake service
21
..............................................................................
Figure 7 - TP-U-ABORT sequence of primitives
23
..............................................................................
Figure 8 - TP-P-ABORT sequence of primitives
25
...............................................................
Figure 9 - TP-GRANT-CONTROL sequence of primitives
26
........................................................
Figure 10 - TP-REQUEST-CONTROL sequence of primitives
28
......................................................................
Figure 11 - TP-HANDSHAKE sequence of primitives
30
..............................
Figure 12 - TP-HANDSHAKE-AND-GRANT-CONTROL sequence of primitives
34
......................................................
Figure 13 - TP-BEGIN-TRANSACTION sequence of primitives
............................................. 35
Figure 14 - TP-DEFERRED-END-DIALOGUE sequence of primitives
......................................... 37
Figure 15 - TP-DEFERRED-GRANT-CONTROL sequence of primitives
iv
---------------------- Page: 4 ----------------------
0 ISOAEC ISOll EC 10026-2: 1996(E)
Foreword
IS0 (the International Organization for Standardization) and IEC (the
International Electrotechnical Commission) for the specialized system for
worldwide standardization. National bodies that are members of IS0 or
IEC participate in the development of International Standards through
technical committees established by the respective organization to deal
with particular fields of technical activity. IS0 and IEC technical
committees collaborate in fields of mutual interest. Other International
organizations, governmental and non-governmental, in liaison with IS0 and
IEC, also take part in the work.
In the field of information technology, IS0 and IEC have established a joint
technical committee, ISO/IEC JTC 1. Draft International Standards
adopted by the joint technical committee are circulated to national bodies
for voting. Publication as an International Standard requires approval by at
least 75 % of the national bodies casting a vote.
International Standard ISOAEC 10026-2 was prepared by Joint Technical
Committee ISOAEC JTC 1, information technology, Subcommittee SC 21,
Open Systems Interconnection, data management and open distributed
processing.
This second edition cancels and replaces the first edition (ISO/IEC
10026-2:1992), which has been technically revised.
ISO/IEC 10026 consists of the following parts, under the general title
Information technology - Open Systems Interconnection - Distributed
Transaction Processing:
-
Part 1: OS/ TP Model
Part 2: OS/ TP Service
-
Pan 3: Protocol specification
Part 4. Protocol Implementation Conformance Statement (PICS)
proforma
Pat? 5. Application context proforma and guidelines when using
OS TP
Part 6: Unstructured Data Transfer
-
Pan 7: Message queuing
Annex A forms an integral part of this part of ISO/IEC 10026. Annex B is
for information only.
---------------------- Page: 5 ----------------------
0 ISOAEC
ISO/IEC 10026=2:1996(E)
Introduction
ISO/IEC 10026 is one of a set of standards produced to facilitate the
It is related to other International
interconnection of computer systems.
Standards in the set as defined by the Reference Model for Open Systems
Interconnection (lSO/lEC 7498-1). The Reference Model subdivides the
area of standardization for interconnection into a series of layers of
specification, each of manageable size.
The aim of Open Systems Interconnection is to allow, with a minimum of
technical agreement outside the interconnection standards, the
interconnection of computer systems
from different manufacturers;
a)
under different management;
b)
of different levels of complexity; and,
Cl
of different technologies.
d)
ISO/IEC 10026 defines an OSI TP Model, an OSI TP Service and
specifies an OSI TP Protocol available within the Application Layer of the
OSI Reference Model.
The OSI TP Service is an Application Layer service. It is concerned with
information which can be related as transactions, which may involve two or
more open systems.
This part of ISO/IEC 10026 defines a basic OSI TP Service. It provides
sufficient facilities to support transaction processing, and establishes a
framework for coordination across multiple TP resources in separate open
systems.
ISO/IEC 10026 does not specify the interface to local resources or access
facilities that are provided within the local system. However, future
enhancement of the standard may deal with these issues.
Vi
---------------------- Page: 6 ----------------------
ISO/IEC 10026-2: 1996(E)
INTERNATIONAL STANDARD @ ISO/IEC
Information technology - Open Systems
Distributed Transaction
Interconnection -
Processing -
Part 2:
OSI TP Service
1 Scope
This part of ISO/IEC 10026 defines in an abstract way the Distributed Transaction Processing Service within
the Application Layer in terms of
a) the actions and events of the service primitives;
b) the parameter data associated with each service primitive ’s action and event; and,
c) the relationship between, and the valid sequences of these actions and events.
It does not specify individual implementations or products, nor does it constrain the implementation of
entities or interfaces within a computer system.
2 Normative references
The following standards contain provisions which, through reference in this text, constitute provisions of this
part of ISO/IEC 10026. At the time of publication, the editions indicated were valid. All standards are
subject to revision, and the parties to agreements based on this part of lSO/IEC 10026 are encouraged to
investigate the possibility of applying the most recent editions of the standards indicated below. Members of
IS0 and IEC maintain registers of currently valid International Standards.
Open Systems Interconnection - Basic Reference
IS0 7498-3: 1989, Information processing systems -
Model - Par? 3: Naming and Addressing.
I SO 8649: 1988, Information processing systems - Open Systems Interconnection - Service definition for the
Association Control Service Element.
ISO/l EC 10026-l : 1992, Information technology - Open Systems Interconnection - Distributed Transaction
Processing - Part I: OS/ TP Model.
---------------------- Page: 7 ----------------------
0 ISOAEC
ISOllEC 10026=2:1996(E)
ISO/I EC 10026-3: 1996, Information technology - Open Systems Interconnection - Distributed Transaction
Processing - Parf 3: Protocol specification.
ISOAEC 10731 :1994, Information technology - Open Systems Interconnection - Basic Reference Model -
Conventions for the definition of 03 services.
3 Definitions
For the purposes of this part of ISO/IEC 10026, the definitions of ISO/IEC 10026-I and the following
definitions apply.
3.1 dialogue establishment indication outstanding: A dialogue state in which a TP-BEGIN-DIALOGUE
indication with the Confirmation parameter set to Vlalways” has been issued but has not yet been responded
to by a TP-BEGIN-DIALOGUE response.
A dialogue state in which a TP-BEGIN-DIALOGUE
3.2 dialogue establishment request outstanding:
request with the Confirmation parameter set to “alwaystl has been issued but has not yet been responded to
by a TP-BEGIN-DIALOGUE confirm.
A dialogue state in which a TP-END-DIALOGUE
3.3 dialogue termination indication outstanding:
indication with the Confirmation parameter set to Yrue” has been issued while there is no user error request
outstanding, but has not yet been responded to by a TP-END-DIALOGUE response, or by a TP-U-ERROR
request.
3.4 dialogue termination request outstanding: A dialogue state in which a TP-END-DIALOGUE request
with the Confirmation parameter set to Yrue” has been issued, but has not yet been responded to by a TP-
END-DIALOGUE confirm, or by a TP-U-ERROR indication-
3.5 handshake indication outstanding: A dialogue state in which one of the following service primitives:
- TP-HANDSHAKE indication;
- TP-HANDSHAKE-AND-GRANT-CONTROL indication;
has been issued while there is no user error request outstanding, but has not yet been responded to by one
of the following service primitives (respectively):
- TP-HANDSHAKE response;
- TP-HANDSHAKE-AND-GRANT-CONTROL response;
or by a TP-U-ERROR request, or, if the coordination level of the dialogue is %ommitmenY, by any rollback-
initiating service primitive.
3.6 handshake request outstanding: A dialogue state in which one of the following service primitives:
- TP-HANDSHAKE request;
- TP-HANDSHAKE-AND-GRANT-CONTROL request;
has been issued, but has not yet been responded to by one of the following service primitives (respectively):
- TP-HANDSHAKE confirm;
- TP-HANDSHAKE-AND-GRANT-CONTROL confirm;
or by a TP-U-ERROR indication, or, if the coordination level of the dialogue is ~~commitment~~, by any
rollback-initiating service primitive.
3.7 rollback-initiating indication: An indication or confirm that triggers a rollback; it is one of the
following service primitives:
- TP-ROLLBACK indication;
- TP-U-ABORT indication with the Rollback parameter set to “true ”;
- TP-P-ABORT indication with the Rollback parameter set to ‘Yruell;
- TP-BEGIN-DIALOGUE confirm with the Rollback parameter set to “true ”.
2
---------------------- Page: 8 ----------------------
0 ISOAEC ISOllEC 10026-2:1996(E)
it is one of the following service
3.8 rollback-initiating request: A request that triggers a rollback;
primitives:
- TP-ROLLBACK request;
- TP-U-ABORT request for a dialogue with a coordination level of ttcommitmenttt not issued during the
termination phase of a transaction.
3.9 rollback-initiating service primitive: A service primitive that triggers a rollback; it may be either a
rollback-initiating request or a rollback-initiating indication.
3.10 subordinate dialogue: A dialogue with a subordinate.
3.11 subordinate subtree: A subtree of a subordinate.
3.12 superior dialogue: The dialogue with the superior.
3.13 termination phase of a transaction: The phase of a transaction between initiation of commitment or
rollback and the end of the transaction.
This phase is entered, for a given TPSUI, upon issuance of a TP-COMMIT request or any rollback-initiating
service primitive.
For a TPSUI which does not have a dialogue establishment indication outstanding, this phase is exited upon
issuance of a TP-COMMIT-COMPLETE indication or a TP-ROLLBACK-COMPLETE indication.
For a TPSUI which does have a dialogue establishment indication outstanding when the termination phase is
entered (this can only happen when a TP-ROLLBACK indication is issued), this phase is exited by a TP-
BEGIN-DIALOGUE response with the Result parameter set to Yejected(user)tt or by a TP-P-ABORT
indication for the dialogue; if the dialogue is accepted during the termination phase, the termination phase is
exited by the subsequent TP-ROLLBACK-COMPLETE indication.
3.14 transaction tree constraint: A constraint that cannot be checked at a single node.
3.15 user error indication outstanding: A state of a dialogue with the Polarized Control functional unit
selected. In this state, a TP-U-ERROR indication, issued while the recipient had control of the dialogue and
has neither a handshake request outstanding nor a dialogue termination request outstanding, has not yet
been responded to by a TP-GRANT-CONTROL request, or, if the coordination level of the dialogue is
“commitment ”, by any rollback-initiating service primitive.
3.16 user error request outstanding: A state of a dialogue with the Polarized Control functional unit
selected. In this state, a TP-U-ERROR request, issued without having control of the dialogue and without
having either a handshake indication outstanding or a dialogue termination indication outstanding, has not
yet been responded to by a TP-GRANT-CONTROL indication, a TP-HANDSHAKE indication, a TP-
HANDSHAKE-AND-GRANT-CONTROL indication, a TP-END-DIALOGUE indication with the Confirmation
parameter set to Yruett, or, if the coordination level of the dialogue is “commitmenY, by any rollback-initiating
service primitive.
4 Abbreviations
Abbreviations used in this part of ISO/IEC 10026 are defined in ISO/IEC 10026-I (OS II TP Model), except
for the following which are used in some tables:
confirm service primitive;
cnf
ind indication service primitive;
request service primitive;
w
response service primitive.
f SP
3
---------------------- Page: 9 ----------------------
ISOAEC 18026-2: 1996(E) 0 ISOAEC
5 Conventions
5.1 Service conventions
This part of ISO/IEC 10026 defines services for Distributed Transaction Processing guided by the descriptive
conventions defined in ISO/lEC 10731=
However, the terms Vequest” and Yndication” are sometimes used in the following ways:
a) a single request may result in multiple indications (an example is that a single VP-COMMIT request
may result in TP-PREPARE indications to each direct subordinate TPSUI);
b) several requests may result in a single indication (an example is that a single TP-COMMIT-
COMPLETE indication may be issued to a superior TPSUI only after TP-DONE requests have been
issued by this TPSUI and by all subordinate TPSUls in the transaction tree);
c) the convention that a request primitive results in an indication primitive of the same name, is not always
followed (for example, the issuance of a TP-COMMIT request will cause a TP-PREPARE indication to
be issued).
NOTE - In this part of ISOAEC 10026, requests and responses are described as being issued by the TPSUI
whereas indications and confirms are described as being issued by the TPSP.
For a given primitive, the presence of each parameter is described by one of the following values:
blank:
not applicable;
.
M .
presence. is mandatory;
.
U . presence is a user option;
.
0 . presence is a provider option; and,
.
C . presence is conditional.
In addition the notation (=) indicates that a parameter value is semantically equal to the value of the
parameter of the preceding primitive in the table.
5.2 Usage of the term transaction
In this part of ISO/IEC 10026, the term Yransaction” is used to denote a distributed provider-supported
transaction.
5.3 Usage of italics for notations
In this part of ISO/IEC 10026, the following notations, defined in clause 3, appear in italics:
- dialogue establishment indication outstanding;
- dialogue establishment request outstanding;
- dialogue termination indication outstanding;
- dialogue termination request outstanding;
- handshake indication outstanding;
- handshake request outstanding;
- rollback-initiating indication;
- rollback-initiating request;
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.