Design overview

CICS® handles session failures and systems failures for distributed transaction processing in the same way as for CICS function shipping. See the relevant topics in Function shipping for further information.

Distributed transaction processing with MRO and LU6.1

Figure 35 gives an overview of the modules involved with distributed transaction processing for MRO and LU6.1 ISC.

Figure 35. Distributed transaction processing for MRO and LU6.1
 The figure illustrates the modules in distributed transaction processing for MRO and LU6.1, which are described in the text.

The DFHEIP module is described in EXEC interface. This routes all terminal control requests to DFHETC. DFHETC handles BUILD_ATTACH, EXTRACT, and POINT_TC requests itself. It routes all other requests (SEND, WAIT, CONVERSE, RECEIVE (with journal)), to DFHZARQ, except for FREE_TC and ALLOCATE_TC requests, which are routed to DFHZISP. If the request requires that the user conversation state be returned, DFHETC calls DFHZSTAP. All these modules are described in detail under Modules.

Mapped and unmapped conversations (LU6.2)

In mapped conversations, the data passed to and received from the LU6.2 application programming interface (API) is simply user data. Mapped conversations use the normal CICS API. Application programs and function shipping requests written for LU6.1 operate using mapped conversations when transferred to LU6.2.

Figure 36 gives an overview of the modules involved with the processing of mapped conversations in LU6.2. ISC.

Figure 36. Distributed transaction processing for mapped conversations in LU6.2
 This figure illustrates the modules in distributed transaction processing for mapped conversations in LU6.2, which are described in the text.

The DFHEIP module is described in EXEC interface. This routes all terminal control requests to DFHETC. DFHETC routes all requests relating to an LU6.2 session to DFHETL except for ALLOCATE_TC requests, which are routed to DFHZISP.

In turn, DFHETL calls DFHZARL to process most requests; it calls DFHZISP to handle FREE_TC requests, and DFHZARM to handle the receipt of unrecognized or unsupported IDs. If the request requires that the user conversation state be returned, DFHETL calls DFHZSTAP.

DFHZARL’s processing depends on the type of request; for example, it calls DFHZISP to allocate a TCTTE, DFHZARR to receive data, and DFHZERH for outbound or inbound FMH7 processing. If the request needs to be transaction routed, DFHZARL calls DFHZXRL to route the request to the terminal-owning region (see Transaction routing).

With the exception of DFHZXRL, all these modules are described in detail under Modules.

Unmapped conversations (also known as basic conversations), are used principally for communication with device-level products that do not support mapped conversations, and which possibly do not have an API open to the user. In unmapped conversations, the data passed to and received from the LU6.2 API contains GDS headers.

Figure 37 gives an overview of the modules involved with the processing of unmapped conversations in LU6.2 ISC.

Figure 37. Distributed transaction processing for unmapped conversations in LU6.2
 This figure illustrates the modules in distributed transaction processing for unmapped conversations in LU6.2, which are described in the text.

The DFHEIP module is described in EXEC interface. This passes control to DFHEGL to process GDS commands. DFHEGL routes all GDS conversation-related commands directly to DFHZARL. Some validation of application-provided parameters is performed, and errors are reflected back to the application. If the request requires that the user conversation state be returned, DFHEGL calls DFHZSTAP.

DFHZARL’s processing depends on the type of request; for example, it calls DFHZISP to allocate a TCTTE, DFHZARR to receive data, and DFHZERH for outbound or inbound FMH7 processing. If the request needs to be transaction routed, DFHZARL calls DFHZXRL to route the request to the terminal-owning region (see Transaction routing).

With the exception of DFHZXRL, all these modules are described in detail in the next topic.

[[ Contents Previous Page | Next Page Index ]]