gtps2m19ACF/SNA Data Communications Reference

TPF/APPC Control Blocks

The concept of a transaction program instance is incorporated in the TPF entry control block (ECB) by storing the transaction control block identifier (TCB ID) in the reserved ECB field EBTCBID. TPF creates a new TCB ID when a remote transaction program initiates a conversation (TPF receives an ATTACH functional management header type 5 [FMH5] record).

TPF checks for an existing TCB ID when a local TPF transaction program initiates a conversation. If a TCB ID does not exist (the ECB field is zero), TPF assigns a new TCB ID to the ECB. If a TCB ID exists, the ALLOCATE request represents an additional conversation controlled by the same transaction program instance.

In addition to the TPF entry control block (ECB), TPF/APPC uses the following control blocks:

TPF/APPC Conversation Control Block

Conversations are controlled and identified by an entry in a conversation control block (CCB). Conversation control blocks are retrieved from and returned to a pool of available CCBs. Entries are created and destroyed as conversations are allocated or deallocated: 1 entry for each conversation. The life of a CCB entry begins when a conversation starts and ends when the conversation ends.

Conversation control block entries are identified to the transaction programs by a unique conversation identifier (CCB ID). The CCB ID is the value returned by the ALLOCATE verb, an INITIALIZE verb, or assigned when an ATTACH is received. The ID is used as the value on the RESID parameter on all subsequent verb requests for this conversation.

Conversation control blocks are used to:

Main storage for the conversation control block is allocated by the TPF initialization component (CTIN) from information provided in the SNA main storage allocation table (MSAT), which is contained in the SNA communications keypoint (CTK2, defined by data macro CK2SN). You specify the information in CTK2 with the SNAKEY macro. Conversation control blocks are written to DASD file storage by cycle-down and soft-IPL processing, and are read back into main storage by the TPF restart components.

TPF/APPC Session Control Block

Sessions are controlled by session control blocks (SCBs). An SCB has 2 parts, SCB1 and SCB2, which are extensions of the 2 areas of the resource vector table, RVT1 and RVT2. SCBs are available only for TPF/APPC sessions (both single and parallel).

Main storage for the session control block is allocated by CTIN during TPF IPL based on the information provided in the SNA main storage allocation table.

1 SCB is initialized and allocated for each remote LU to save session limit information when:

An additional SCB is allocated for each session that is brought up. All parallel session SCBs that belong to the same remote LU are chained together and anchored off the resource vector table (RVT) of the remote LU. SCBs are returned to the SCB list when sessions are deactivated.

Note:
The SCB previously initialized to save session limit information is not returned until a CNOS RESET is done.