gtps2m27 | ACF/SNA Data Communications Reference |
The RVT is a TPF/SNA control block structure located in main storage that contains information about the resources defined in the TPF system. Therefore, each entry in the RVT can be referred to as a resource definition. A resource definition includes information about a resource, such as the following:
Each processor in the TPF system has its own unique RVT. Therefore, resource definitions are not necessarily consistent across all of the processors in a loosely coupled TPF system. For more information about creating resource definitions, see Defining SNA Resources to the TPF System.
There are a number of other control block structures located in main storage that are used to access the RVT. These control block structures include:
The following information describes these control block structures and the RVT in more detail.
The RVT is divided into the following sections:
Define the size of the RVT using the MAXRVT parameter in the SNAKEY macro. Define the size of the non-LU section using the NUMALS parameter in the SNAKEY macro. The size of the LU section is implicitly defined by the difference of these two values. For more information about the SNAKEY macro, see TPF ACF/SNA Network Generation.
Each entry in the RVT is assigned an RID after the SNA fresh load function is performed during SNA restart. The RID is a direct index into the RVT. For example, RID 3 always corresponds to the third entry in the RVT.
Initially, RIDs are consistent across all of the processors in a loosely coupled TPF system. However, as new SNA resources are defined using the ZNDYN ADD command or dynamic LU support, the RIDs will no longer be consistent. For example, an LU resource can be assigned RID 5 on processor B and a different LU resource can also be assigned RID 5 on processor C.
Spare entries can exist in both the non-LU section and LU section of the RVT. A spare entry is an entry that is not currently being used for a resource definition. These entries are used to create resource definitions for resources that are defined using the following:
Figure 84 shows a simplified example of the RVT and how it is organized.
In Figure 84:
The following processor-unique control block structures are used to access the entries in the RVT, which is also a processor-unique control block structure. These control block structures are located in main storage and are built during SNA restart.
Define the number of RNHPT hash buckets in the TPF system using the MAXPRIM parameter in the SNAKEY macro. See TPF ACF/SNA Network Generation for more information about the SNAKEY macro.
The RVT available list is a linked list of the RNHET entries for all of the available (or spare) RVT entries in the LU section of the RVT. When a new LU resource is defined to the TPF system, an RNHET entry is removed from the RVT available list, assigned to the LU resource, and placed on the RNHET synonym chain in the appropriate RNHPT hash bucket. The RNHET entry contains the RID and address of the RVT entry that will be used to create the resource definition.
Spare entries in the non-LU section of the RVT are not placed on the RVT available list. When new non-LU resources are defined to the TPF system, the TPF system sequentially searches the non-LU section of the RVT for a spare entry. If no spare entries exist in the non-LU section of the RVT, the TPF system uses the RVT entry of an ALS resource that is no longer active, as long at that non-LU resource was not defined using the OSTG program. Once an RVT entry is found for the new non-LU resource, the TPF system places the RNHET entry for that RVT entry on the RNHET synonym chain in the appropriate RNHPT hash bucket.
The RNHET synonym chain is a linked list of the RNHET entries that are assigned to a particular RNHPT hash bucket. One RNHET synonym chain exists for each RNHPT hash bucket.
The RVT termination list is a linked list of the RNHET entries for all of the LU resources that were defined using dynamic LU support and are no longer in session. (These resources are called dynamic LU resources.) When a dynamic LU resource ends its session, its RNHET entry is placed on the RVT termination list. (If the dynamic LU resources is an LU 6.2 resource, its RNHET entry is placed on the RVT termination list only when the last session for that LU 6.2 resources is ended.) If a session is started again with that dynamic LU resource, its original RNHET entry is removed from the RVT termination list and reused. Because the RNHET entry contains the RID and address of the RVT entry for that dynamic LU resource, its original RVT entry is also reused.
If the original RNHET entry for a dynamic LU resource is no longer on the RVT termination list (that is, the RNHET entry was already reused by another dynamic LU resource), the TPF system uses the oldest RNHET entry on the RVT termination list. In doing so, the dynamic LU resource is assigned a new RVT entry and, therefore, a new RID as well.
Figure 85 contains a simplified example of the RNHCT, RNHPT, and RNHET.
Figure 85. RNHCT, RNHPT, and RNHET Example. The RVT1 delimiters are not included in this figure.
In Figure 85:
The TPF system determines the RNHPT hash bucket for a particular resource using the DHASHC macro, which is a hashing function that is based on the name of the resource. See TPF System Macros for more information about the DHASHC macro.
Enter the ZNDYN DISPLAY command to display the RNHET entry for a particular resource, the RNHET synonym chain for a particular resource, or statistical information about the RNH tables. See TPF Operations for more information about the ZNDYN DISPLAY command.