Table of Contents Previous Next PDF


Understanding the Communications Resource Manager

Understanding the Communications Resource Manager
This section discusses the following topics:
Note:
About the Communications Resource Manager
The Communications Resource Manager (CRM) is the component of the Oracle Tuxedo Mainframe Adapter for SNA that manages communications resources. The CRM coordinates the flow of data between applications running on an ATMI platform and applications running on a mainframe. The mainframe applications may use the following protocols:
The CRM runs as a separate native process providing emulation that allows CICS/ESA and IMS protocols to flow into and out of the ATMI environment.
The CRM uses both SNA and TCP communication protocols. TCP protocols always flow between the OracleTuxedo Mainframe Adapter for SNA Gateway and CRM. SNA protocols always flow from the CRM to the mainframe and from either an SNA stack or VTAM on the mainframe to the CRM, depending upon the configuration option.
If the CRM is not running on a mainframe, it must run on the same platform as the SNA stack, but it may run on a different platform from the ATMI system and the OracleTuxedo Mainframe Adapter for SNA Gateway. For a complete list of supported operating systems, refer to the Oracle Tuxedo Mainframe Adapter for SNA Release Notes.
The OracleTuxedo Mainframe Adapter for SNA Gateway provides the configuration for the CRM. The CRM should always be started and monitoring the address specified in the OracleTuxedo Mainframe Adapter for SNA Gateway configuration before the Gateway is brought up.
System Configuration
The OracleTuxedo Mainframe Adapter for SNA system may be configured as either a local configuration or a distributed configuration running on a combination of two operating systems: UNIX, Windows, or a mainframe operating system. For a complete list of operating systems, refer to the Oracle Tuxedo Mainframe Adapter for SNA Release Notes. If the CRM is not run on a mainframe, it must run on the same platform as the SNA stack. For this version of OracleTuxedo Mainframe Adapter for SNA, HP-UX 11.23 on PA-RISC is the only non-mainframe platform for which the CRM is available.
Local Configuration
The local configuration combines the OracleTuxedo Mainframe Adapter for SNA Gateway and the CRM with the stack (PU2.1 server) on the same UNIX machine with the CRM configured to run as a Tuxedo server rather than a standalone process. It employs the IBM proprietary SNA protocol for transactions with the mainframe via the stack.
Figure 2‑1 OracleTuxedo Mainframe Adapter for SNA Local Configuration
Distributed Configurations
In one type of distributed configuration, the CRM is installed on the mainframe. If the CRM is installed on the mainframe, there is no need to install a third-party SNA stack. However, you must specify your Virtual Telecommunications Access Method (VTAM) in the OracleTuxedo Mainframe Adapter for SNA Gateway configuration file. Figure 2‑2 illustrates the distributed configuration architecture.
Figure 2‑2 OracleTuxedo Mainframe Adapter for SNA Distributed Configuration
Another type of distributed configuration separates the CRM from the OracleTuxedo Mainframe Adapter for SNA Gateway on different UNIX or Windows machines. It employs Transmission Control Protocol/Internet Protocol (TCP/IP) connectivity between the OracleTuxedo Mainframe Adapter for SNA Gateway and the CRM, as well as SNA connectivity to the mainframe environment(s). This configuration gives you the flexibility to deploy the Tuxedo server separately from the CRM for installations that require the Tuxedo server on a platform other than the one on which the SNA stack is running. Note that this configuration requires a one-to-one relationship between the local OracleTuxedo Mainframe Adapter for SNA Gateway and the remote CRM.
Figure 2‑3 Non-Mainframe OracleTuxedo Mainframe Adapter for SNA Distributed Configuration
Preparing Mainframe Configurations for CRM Requirements
The CRM runs as a separate native process that provides an emulation allowing CICS/ESA and IMS protocols to flow into and out of the ATMI environment. After you install the OracleTuxedo Mainframe Adapter for SNA product, you must set up your mainframe configurations to allow the CRM to access your CICS or IMS systems.
If the CRM runs on the mainframe, it uses the native SNA networking product, Virtual Telecommunications Access Method (VTAM), to establish its SNA connectivity to the CICS or IMS application environments. If the CRM runs on a UNIX platform, a third-party SNA stack must also be installed on this platform and configured to establish SNA connections with the CRM and target mainframe.
The topics in the following sections cover mainframe configuration requirements for the CRM.
Requirements for Establishing a VTAM Configuration
The following requirements should be considered for establishing a VTAM configuration:
Consult with your CICS/ESA remote domain administrator to obtain key parameters in the VTAM definition that must be included in the SNA stack configuration, as well as in other configuration files in the OracleTuxedo Mainframe Adapter for SNA local domain.
Configuring the CRM for a Third-Party Stack
A basic understanding of the mainframe configuration requirements provides a context for understanding the CRM functions and configuration requirements. The following sections discuss the various configuration considerations and give examples of those configurations.
Note:
Third-Party Stack Configuration
Third-party stack configurations may be set up using stack-specific configuration utilities or by manually creating a configuration file with any text editor. Listing 2‑1 shows an example of an SNA node configuration file. The configuration file is divided into sections for various components of the configuration. Each section defines a component using parameters (or keywords) and values. Some of these keywords and values will affect how your OracleTuxedo Mainframe Adapter for SNA configuration is defined.
Listing 2‑1 SNA Node Configuration File
[define_node_config_file]
major_version = 5
minor_version = 1
update_release = 1
revision_level = 109
olar_supported = YES

[define_node]
cp_alias = LCHP2
description = ""
fqcp_name = BEALAN.LCHP2
node_type = END_NODE
mode_to_cos_map_supp = NO
mds_supported = YES
node_id = <03010300>
max_locates = 100
dir_cache_size = 255
max_dir_entries = 0
locate_timeout = 60
reg_with_nn = YES
reg_with_cds = YES
mds_send_alert_q_size = 100
cos_cache_size = 24
tree_cache_size = 40
tree_cache_use_limit = 40
max_tdm_nodes = 0
max_tdm_tgs = 0
max_isr_sessions = 1000
isr_sessions_upper_threshold = 900
isr_sessions_lower_threshold = 800
isr_max_ru_size = 16384
isr_rcv_pac_window = 8
store_endpt_rscvs = NO
store_isr_rscvs = NO
store_dlur_rscvs = NO
dlur_support = YES
pu_conc_support = NO
nn_rar = 128
max_ls_exception_events = 0
ptf_flags = NONE
cplu_syncpt_support = NO

[define_ethernet_dlc]
dlc_name = ETHER1
description = ""
neg_ls_supp = YES
initially_active = NO
adapter_number = 0

[define_ethernet_port]
port_name = ETSAP1
description = ""
dlc_name = ETHER1
port_type = PORT_SATF
port_number = 0
max_rcv_btu_size = 1033
tot_link_act_lim = 64
inb_link_act_lim = 0
out_link_act_lim = 0
ls_role = LS_NEG
implicit_dspu_services = NONE
implicit_dspu_template = ""
implicit_ls_limit = 0
act_xid_exchange_limit = 9
nonact_xid_exchange_limit = 5
ls_xmit_rcv_cap = LS_TWS
max_ifrm_rcvd = 7
target_pacing_count = 7
max_send_btu_size = 1033
mac_address = <00306E4B25F0>
lsap_address = 0x04
implicit_cp_cp_sess_support = NO
implicit_limited_resource = NO
implicit_deact_timer = 30
implicit_hpr_support = NO
implicit_link_lvl_error = NO
effect_cap = 3993600
connect_cost = 0
byte_cost = 0
security = SEC_NONSECURE
prop_delay = PROP_DELAY_LAN
user_def_parm_1 = 128
user_def_parm_2 = 128
user_def_parm_3 = 128
initially_active = YES
test_timeout = 5
test_retry_limit = 2
xid_timeout = 5
xid_retry_limit = 2
t1_timeout = 5
t1_retry_limit = 5

[define_ethernet_ls]
ls_name = ZOS4HP2
description = Link to lczos4
port_name = ETSAP1
adj_cp_name = ADCD.ADCDSSCP
adj_cp_type = LEARN_NODE
mac_address = <0002B3C008C8>
lsap_address = 0x04
auto_act_supp = NO
tg_number = 0
limited_resource = NO
solicit_sscp_sessions = YES
pu_name = <0000000000000000>
disable_remote_act = NO
default_nn_server = NO
dspu_services = NONE
dspu_name = <0000000000000000>
dlus_name = <0000000000000000000000000000000000>
bkup_dlus_name = <0000000000000000000000000000000000>
hpr_supported = NO
hpr_link_lvl_error = NO
link_deact_timer = 30
use_default_tg_chars = YES
ls_attributes = SNA
adj_node_id = <03010300>
local_node_id = <00000000>
cp_cp_sess_support = NO
effect_cap = 3993600
connect_cost = 0
byte_cost = 0
security = SEC_NONSECURE
prop_delay = PROP_DELAY_LAN
user_def_parm_1 = 0
user_def_parm_2 = 0
user_def_parm_3 = 0
target_pacing_count = 7
max_send_btu_size = 1033
ls_role = USE_PORT_DEFAULTS
max_ifrm_rcvd = 0
dlus_retry_timeout = 0
dlus_retry_limit = 0
initially_active = NO
restart_on_normal_deact = NO
react_timer = 30
react_timer_retry = 65535
test_timeout = 5
test_retry_limit = 2
xid_timeout = 5
xid_retry_limit = 2
t1_timeout = 5
t1_retry_limit = 5

[define_local_lu]
lu_alias = Z4HP2A
list_name = ""
description = ""
lu_name = Z4HP2A
lu_session_limit = 20
pu_name = <0000000000000000>
nau_address = 0
default_pool = NO
syncpt_support = YES
lu_attributes = NONE
sscp_id = 0
disable = NO
sys_name = ""
timeout = 60
back_level = NO

[define_partner_lu]
plu_alias = ""
description = (Auto defined - default LU)
fqplu_name = ADCD.LCZOS4
plu_un_name = <0000000000000000>
parallel_sess_supp = YES
max_mc_ll_send_size = 0
conv_security_ver = NO

[define_partner_lu]
plu_alias = TMACICS
description = ""
fqplu_name = ADCD.TMACICS
plu_un_name = TMACICS
parallel_sess_supp = YES
max_mc_ll_send_size = 0
conv_security_ver = NO

[define_mode]
mode_name = SMSNA100
description = ""
max_neg_sess_lim = 256
plu_mode_session_limit = 10
min_conwin_src = 5
min_conloser_src = 0
auto_act = 0
receive_pacing_win = 4
max_receive_pacing_win = 0
default_ru_size = YES
max_ru_size_upp = 1024
max_ru_size_low = 0
cos_name = #CONNECT

[define_directory_entry]
resource_name = ADCD.LCZOS4
resource_type = ENCP_RESOURCE
description = ""
parent_name = <0000000000000000000000000000000000>
parent_type = ENCP_RESOURCE

[define_directory_entry]
resource_name = ADCD.LCZOS4
resource_type = LU_RESOURCE
description = (Auto defined - default LU)
parent_name = ADCD.LCZOS4
parent_type = ENCP_RESOURCE

[define_directory_entry]
resource_name = ADCD.ADCDSSCP
resource_type = ENCP_RESOURCE
description = ""
parent_name = <0000000000000000000000000000000000>
parent_type = ENCP_RESOURCE

[define_directory_entry]
resource_name = ADCD.TMACICS
resource_type = LU_RESOURCE
description = ""
parent_name = ADCD.ADCDSSCP
parent_type = ENCP_RESOURCE

[define_directory_entry]
resource_name = ADCD.ADCDSSCP
resource_type = LU_RESOURCE
description = (Auto defined - default LU)
parent_name = ADCD.ADCDSSCP
parent_type = ENCP_RESOURCE
 
VTAM Cross Platform Definitions
The examples of cross platform definitions discussed in the following sections allow the VTAM network to communicate with your stack using the SNA protocol.
XCA Major Node Defines the LAN Adapter for SYS1
This definition is set up for use with an emulated IBM 3172 Interconnect Controller for connecting an APPN network node to another APPN node. Note that the definition is for an Ethernet LAN, and the SAPADDR specified must be the same as the LSap specified for the local link station.
Listing 2‑2 XCA Major Node
XETH2LP1 VBUILD TYPE=XCA ** EXTERNAL COMMUNICATION ADAPT**
PORTE2 PORT ADAPNO=1, ** 3172 RELATIVE ADAPTER NUMBER**
CUADDR=E22, ** CHANNEL UNIT ADDRESS **
MEDIUM=CSMACD, ** LAN TYPE=ETHERNET **
SAPADDR=8, ** SERVICE ACCESS POINT ADDRESS**
TIMER=120 ** CHANNEL ACTIVATE RESP TIME **
*
G1ETH2 GROUP DIAL=YES, ** YES required for putype 2 **
DYNPU=YES,
CALL=INOUT,
ANSWER=ON,
ISTATUS=ACTIVE
LETH20 LINE
PETH20 PU
LETHE3 LINE
PETHE3 PU
LETHF3 LINE
PETHF3 PU
 
Switched Network (SWNET) Definitions
VTAM Switched Major Node (SWNET) definitions define and link together physical units (PU) and logical units (LU). Each workstation connected to a network must be represented on the network as a PU and each PU can have one or more LUs. The VTAM SWNET definition defines how the PUs and LUs communicate with a server.
The switched network definition example in this section (Listing 2‑3) specifies the VTAM PU, representing the local link stations that expect to connect with the host machine. The IDBLK and IDNUM definitions are provided to support 3270 traffic and must be unique, as well as match the values specified in the local link definition.
Listing 2‑3 SWNET Major Node
SWNETH2 VBUILD TYPE=SWNET,MAXNO=3,MAXGRP=3
P390ETH2 PU ADDR=04,
IDBLK=019,
IDNUM=10092,
PUTYPE=2,
NETID=BEALAN,
CPNAME=SUN2,
MAXPATH=3,
DWACT=YES,
CONNTYPE=APPN,
CPCP=YES,
DYNLU=YES
* -------------------------------------------------
* SNA SAP & SUN2 MAC ADDRESS BIT REVERSED FOR TRFMT
* -------------------------------------------------
PATH01 PATH DIALNO=00081000043EE20A,
GRPNM=G1ETH2
LUSUN2A LU LOCADDR=0
LUSUN2B LU LOCADDR=0
LUSUN2C LU LOCADDR=0
 
Configuring the CRM for the z/OS Platform
VTAM must be configured to allow the CRM to communicate with CICS or IMS using the SNA protocol.
The APPLID definition shown in Listing 2‑4 shows an example of a VTAM stack configuration to run the CRM on z/OS.
Listing 2‑4 APPLID Definition (z/OS)
BEASNA VBUILD TYPE=APPL
BEAAPPL1 APPL ACBNAME=BEAAPPL1,
AUTH=(ACQ,PASS),
APPC=YES,
SYNCLVL=SYNCPT,
PARSESS=YES
 
Configuring the CICS/ESA LU
Before you can connect the CRM to the remote stack, the CICS/ESA LU (logical unit) configuration must be established. To establish the configuration, create connection definitions, create session definitions, and install resource definitions.
Creating Connections at the Remote Host
If a remote connection definition file is not already in place, work with the mainframe support personnel to create one. When placed on the remote host, the definition provides a connection with the local domain. Note the following example of an OracleTuxedo Mainframe Adapter for SNA connection definition file:
DEFINE CONNECTION(BEA) GROUP(BEACONN)
DE(EAM EXAMPLE RDO CONNECTION)
ACCESSMETHOD(VTAM) PROTOCOL(APPC)
NETNAME(**VTAM NETWORK NAME OF REMOTE SYSTEM**)
ATTACHSEC(LOCAL) AUTOCONNECT(NO)
Defining the Session at the Remote Host
If a session definition is not already in place, work with the mainframe support personnel to create one. When placed on the remote host, the session definition defines the logical links by which the local domain communicates with the remote host. Note the following example of an OracleTuxedo Mainframe Adapter for SNA session definition:
DEFINE SESSION(BEATEST) GROUP(BEACONN)
CONNECTION(BEA)
DE(EAM EXAMPLE RDO SESSION)
PROTOCOL(APPC) AUTOCONNECT(YES)
MODENAME(**MODE**) MAXIMUM(**SESSNBR**,**WINNER**)
The arguments and options in this example are defined in the following way:
AUTOCONNECT
Indicates how the activation of the session is negotiated.
YES
Enables the CICS/ESA host to negotiate its own winner sessions when a conversation is allocated.
MODENAME
Indicates either a CICS/ESA-supplied mode name, such as SMSNA100, or your own defined mode name. If another set of session definitions exists for the BEA connection, this mode name must be unique among all sets defined to the connection. The mode name corresponds to the VTAM LOGMODE name.
MAXIMUM
Defines the total number of sessions in the set and the total number of winner sessions. The total number of winner sessions must include those for the host and the remote stack. The WINNER number plus the number of remote sessions should equal the SESSNBR.
Installing Resource Definitions
To install the resource definitions, put them on the host in a separate group. Use the CEDA INSTALL command.
For example:
CEDA INSTALL GROUP(BEACONN)
Viewing Connection and Session Status
After you have installed the resource definitions, you can view the status of connections and sessions using the following CICS/ESA system commands:
CEMT I CONN(BEA) **view the status of the connection
CEMT I NET(**NETNAME**) **View the status of the sessions
CEMT I MODENAME(**MODE**) **View the status of the mode
Putting It All Together
The topics in the following sections cover examples of configurations for cross-platform definitions. These examples are for reference only and do not represent all configuration possibilities. Consult with your system administrator for specific information about your system.
Example of Windows or UNIX Cross-Platform Definitions
Before installing OracleTuxedo Mainframe Adapter for SNA software, review Table 2‑1 for an example of Windows or UNIX cross-platform definitions. Consult with your VTAM system administrator to obtain the value indicated in the Name column and make the corresponding entries shown in the Needed In column.
Note:
Listing 2‑5 shows the corresponding OracleTuxedo Mainframe Adapter for SNA Gateway configuration file. Refer to the Oracle OracleTuxedo Mainframe Adapter for SNA User Guide for information about setting up the Gateway configuration.
.
SNA Network ID
(e.g.
SNANET1)
and VTAM Host ID
(e.g. VTAMHOST)
Example:
fqcp_name=SNANET1.SPARC1
adj_cp_name=
SNANET1.VTAMHOST
fqplu_name=SNANET1.CICSSYN
CICS Sessions Definition:
Example:
MODENAME(SNA62)
DCL-based Stack Configuration:
Example:
mode_name=SNA62
GWSNAX Configuration:
Example:
DM_SNALINKS
MODENAME="
SNA62"
DCL-based Stack Configuration:
Example:
fqcp_name=SNANET1.SPARC
cp_alias=
SPARC1
CICS CONNECTION definition:
Example:
NETNAME(L0F0024A)
DCL-based Stack Configuration:
Example:
lu_name=L0F0024A
lu_alias=L0F0024A
GWSNAX Configuration:
Example:
DM_SNASTACKS
LOCALLU="
L0F0024A"
DCL-based Stack Configuration:
Example:
fqplu_name=SNANET1.CICSSYN
plu_alias=CICSSYN
GWSNAX Configuration:
Example:
DM_SNALINKS
RLUNAME="
CICSSYN"
DCL-based Stack Configuration:
Example:
node_id=<05000002>
DCL-based Stack Configuration:
Example:
[define local_lu]
syncpt_support=CONFIRM
GWSNAX Configuration:
Example:
DM_SNALINKS
MAXSYNCLVL=1
DCL-based Stack Configuration:
Example:
Sna_tps
<404040...hex representation of 64 EBCDIC spaces...404040>
TYPE=QUEUED
TIMEOUT=-1
USERID=authorized_user_here
GROUP=authorized_group_here
LUALIAS=LOF0024A
GWSNAX Configuration:
Example:
DM_LOCAL_SERVICES
RNAME=”DPL1SVR”
GWSNAX Configuration:
Example:
DM_REMOTE_SERVICES
RNAME=TOUPPER
Listing 2‑5 Corresponding DMCONFIG File
#================================================================

*DM_LOCAL_DOMAINS
simpsnad GWGRP=GROUP2
TYPE=SNAX
DOMAINID="simpsnad"
BLOB_SHM_SIZE=1000000
DMTLOGDEV=/home/qctest/dmlog

*DM_REMOTE_DOMAINS

SIMPSNAG TYPE=SNAX
DOMAINID="SIMPSNAG"

*DM_SNACRM

simpcrm SNACRMADDR="//myhost:6000
NWDEVICE="/dev/tcp"
LDOM="simpsnad"

*DM_SNASTACKS

simpstk SNACRM="simpcrm"
STACKTYPE="HP62"
LOCALLU="L0F0024A"
LTPNAME="*"
STACKPARMS="myhost"

*DM_SNALINKS

simplk1 STACKREF="simpstk"
RDOM="SIMPSNAG"
LSYSID="BEA"
RSYSID="TEST"
RLUNAME="CICSSYN"
MODENAME="SNA62"
SECURITY="LOCAL"
STARTTYPE="COLD"
MAXSESS=10
MINWIN=5
MAXSYNCLVL=2

*DM_LOCAL_SERVICES

DPL1SVR LDOM="simpsnad"
CONV=N
RNAME="DPL1SVR"
INBUFTYPE="STRING"
OUTBUFTYPE="STRING"

*DM_REMOTE_SERVICES

TOUPPER AUTOTRAN=N
LDOM="simpsnad"
RDOM=SIMPSNAG
CONV=N
RNAME="TOUPPER"
INBUFTYPE="STRING"
OUTBUFTYPE="STRING"
FUNCTION="DPL"

*DM_ROUTING
 
Example of z/OS Definitions
Before installing OracleTuxedo Mainframe Adapter for SNA software, review Table 2‑2 for an example of SNA definitions when the CRM runs on the z/OS platform. Consult with your system administrator to obtain the value indicated in the Name column and make the corresponding entries shown in the Needed In column.
Listing 2‑6 shows the corresponding OracleTuxedo Mainframe Adapter for SNA configuration file. Refer to the Oracle OracleTuxedo Mainframe Adapter for SNA User Guide for information about setting up the Gateway configuration.
.
CICS CONNECTION definition:
Example:
NETNAME(BEAAPPL1)

VTAM Configuration:
Example:
BEASNA VBUILD TYPE=APPL
BEAAPPL1 APPL ACB=BEAAPPL1,
APPC=YES,
PARSESS=YES

GWSNAX Configuration:
Example:
DM_SNASTACKS
LOCALLU="
BEAAPPL1"
CICS Sessions Definition:
Example:
MODENAME(SNA62)

GWSNAX Configuration:
Example:
DM_SNALINKS
MODENAME="
SNA62"

VTAM Configuration (not required):
Example:
MODEENT=SNA62
GWSNAX Configuration:
Example:
DM_SNALINKS
RLUNAME="
CICSSYN"
VTAM Configuration:
Example:
SYNCLVL=CONFIRM
GWSNAX Configuration:
Example:
DM_SNALINKS
MAXSYNCLVL=1
GWSNAX Configuration:
Example:
DM_REMOTE_SERVICES
RNAME=TOUPPER
Listing 2‑6 Corresponding DMCONFIG File
#================================================================

*DM_LOCAL_DOMAINS
simpsnad GWGRP=GROUP2
TYPE=SNAX
DOMAINID="simpsnad"
BLOB_SHM_SIZE=1000000
DMTLOGDEV=/home/qctest/dmlog

*DM_REMOTE_DOMAINS

SIMPSNAG TYPE=SNAX
DOMAINID="SIMPSNAG"

*DM_SNACRM

simpcrm SNACRMADDR="//mymainframe:6000
NWDEVICE="/dev/tcp"
LDOM="simpsnad"

*DM_SNASTACKS

simpstk SNACRM="simpcrm"
STACKTYPE="VTM28"
LOCALLU="BEAAPPL1"
LTPNAME="*"
STACKPARMS="mymainframe"

*DM_SNALINKS

simplk1 STACKREF="simpstk"
RDOM="SIMPSNAG"
LSYSID="BEA"
RSYSID="TEST"
RLUNAME="CICSSYN"
MODENAME="SMSNA100"
SECURITY="LOCAL"
STARTTYPE="COLD"
MAXSESS=10
MINWIN=5
MAXSYNCLVL=2

*DM_LOCAL_SERVICES

DPL1SVR LDOM="simpsnad"
CONV=N
RNAME="DPL1SVR"
INBUFTYPE="STRING"
OUTBUFTYPE="STRING"

*DM_REMOTE_SERVICES

TOUPPER AUTOTRAN=N
LDOM="simpsnad"
RDOM=SIMPSNAG
CONV=N
RNAME="TOUPPER"
INBUFTYPE="STRING"
OUTBUFTYPE="STRING"
FUNCTION="DPL"

*DM_ROUTING
 

Copyright © 1994, 2017, Oracle and/or its affiliates. All rights reserved.