z/OS BDT Installation
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


BDTNODE—Define Session Characteristics between Home and Remote Nodes

z/OS BDT Installation
SC14-7582-00

This form of the BDTNODE statement defines characteristics of the communication sessions between the home node (the node you are at) and remote nodes (nodes at other BDT subsystems). The BDTNODE statement can define a pacing rate, a checkpoint interval, data compression type, the use of automatic session startup and restart, the number of VLUs available, and other characteristics.

This form of the BDTNODE statement may be used for file-to-file or SNA NJE nodes.

How Many Allowed: 1-100 BDTNODE statements (home and remote combined) per initialization stream.

How Many Required: One or more BDTNODE statements are required to define sessions with remote nodes (one BDTNODE statement for each remote file-to-file or SNA NJE node).

Placement: Between the ENDRBAM and ENDINIT statements, before or after the SNABUF and SYSID statements.

BDTNODE Statement for Sessions with Remote Nodes

Defaults:
BDTNODE,N=remote-node-name,APPL=lu-name
     [,A={YES|NO}]
NO
     [,ASR={YES|NO|restart- limit}]
YES
     [,BUFNO=num-buffs]
2
     [,BUFSZ=buff-size]
1024
     [,CKPT=K-bytes]
40
     [,CS={NJEDUP|REPDUP|(NJEDUP,REPDUP)}
No compress
     [,L=logmode]
Standard
     [,LU=({num-vlus}, {fence-from},{fence-to})]
     [,PIN=receive-password]
8 blanks
     [,POUT=send-password]
8 blanks
     [,T=LOCAL]
Remote local
     [,TYPE={FTF|NJE}]
FTF
N=remote-node-name
specifies a remote file-to-file or SNA NJE node. You must name each remote node that will establish a session with the home node. Users and operators at the home node will use this name to direct commands, file-to-file transactions, and SNA NJE jobs to the remote node. You must use a different name for each remote node. No remote node may have the same name as your home node.

Specified As: One to eight alphanumeric characters, the first of which must be alphabetic.

Default: None.

Related Parameters: For SNA NJE installations, be sure that remote-node-name is the same as the name specified on the NAME parameter of the corresponding JES3 NJERMT statement. Do not use the names ALL, NJE, or FTF.

APPL=lu-name
is the name that VTAM uses for the remote node being defined by this BDTNODE statement.

Specified As: One to eight alphanumeric characters.

Default: None.

Related Parameters: lu-name must match the name (label) of the VTAM CDRSC definition statement at the home node and the name (label) of the VTAM APPL definition statement at the remote node.

[A={YES|NO}]
defines whether BDT at the home node is to automatically start a session with BDT at the remote node named on this statement.
YES
instructs BDT to automatically start a session with the remote node each time the operator at the home node starts BDT and activates the BDT SNA manager.
NO
makes the operator responsible for starting the session.

Default: NO.

[ASR={YES|NO|restart-limit}]
defines whether BDT automatically tries to restart a failed session with the remote node. BDT can try to restart failing sessions with the remote node with the exception of sessions that failed because they were canceled by the BDT CANCEL command, and sessions that could not start because of a negotiable bind disagreement between the home node and the remote node.
YES
requests that BDT try automatic session restart an unlimited number of times.
NO
requests that BDT not attempt automatic session restart.
restart-limit
requests that BDT try automatic restart up to restart-limit number of times before giving up. restart-limit may be a decimal number from 1 to 32767.

Default: YES.

Related Parameters: The ASRTIME parameter of the OPTIONS statement specifies the time delay between restart attempts. This time delay applies to all sessions for which ASR is specified in the BDTNODE statement.

[BUFNO=num-buffs]
defines the pacing rate for communication that takes place between the remote node and the home node.

Each time the home node sends data to a remote node, it does so by sending the data in a data buffer. The home node retains a copy of this buffer until the remote node acknowledges receipt of the buffer. If a node has several VLUs actively sending data, each VLU could have sent one or more buffers for which an acknowledgment has not been received. Each of these buffers will occupy virtual storage until the acknowledgment is received.

The pacing rate defines the maximum number of data buffers that each home node VLU can send to the remote node before the remote node must acknowledge receipt of the buffer. If a VLU has sent the maximum number of buffers without receiving an acknowledgment, the VLU stops sending data buffers. The VLU resumes sending data buffers only after it receives the proper acknowledgment from the remote node.

The pacing rate that you define at your node may be different from the pacing rate defined at the remote node. If this happens, BDT uses the slower pacing rate (the smaller num-buffs value).

When selecting a pacing rate, you must consider the amount of virtual storage required for the buffers versus BDT’s performance. Initially, you should start with a pacing rate of 2 (the default). You should increase this value only if doing so improves the data throughput of BDT.

Specified As: A decimal number from 1 to 255.

Default: 2.

Related Parameters: If num-buffs exceeds the number of buffers specified on the SNABUF statement, BDT abend BD615 could occur. For example, if you defined BUFNO=30 on the BDTNODE statement and PRI=10,SEC=0 on the SNABUF statement, and if the 10 primary buffers were sent with no pacing response, the buffer pool could become exhausted.

File-to-File Consideration: For inbound VLUs, BDT receives and queues up to the value of num-buffs because that is the maximum that can be sent prior to an acknowledgment. For outbound VLUs, BDT allows up to the value of num-buffs+1 SNA buffers to be queued for transmission for each VLU, and transmits up to the value of num-buffs until an acknowledgment is received.

As an example of the requirements for outbound SNA buffers, consider a connection that has five VLUs defined—one control VLU and four data transfer VLUs (two outbound and two inbound)—and BUFNO=3. Then six is the maximum number of SNA buffers that can be sent by each side of the session before receiving acknowledgment from the other side.

A slow receiver generally results in an accumulation of SNA buffers at the receiving side of the session, because the SNA buffers used at the sending side are released when the VTAM SEND completes, not when the BDT acknowledgment is received from the receiving VLU. The SNA buffers at the receiving side remain allocated and in use until the receiving side actually processes the data. Therefore, for the above example, and with a slow receiver, up to 15 SNA buffers may be in use at any given time. This includes up to eight outbound buffers (even though a maximum of six can be sent) as well as six inbound buffers and a control VLU buffer.

SNA NJE Consideration: For SNA NJE nodes, the communication VLU sends and receives data, and half of the data transfer VLUs send data and half receive data. So the total number of SNA buffers this session can use is (((num-buffs/2)+1) x (num-vlus+1)), where num-vlus is the number of VLUs specified on the LU parameter of this BDTNODE statement.

[BUFSZ=buff-size]
defines the data buffer size (in bytes) that is to be used for communication between the remote node and the home node. These buffers are allocated from the pool of buffers that you define on one or more SNABUF statements.

Specified As: A number of bytes. For file-to-file nodes, buff-size may be a decimal number from 0 to 4096. For SNA NJE nodes, buff-size may be a decimal number from 300 to 4096.

Default: 1024.

Related Parameters: buff-size must not exceed the largest SIZE parameter specified on a SNABUF statement. If it does, initialization will terminate.

When selecting a buff-size value, you should match the value to the speed of the communication line. For slow speed lines, use a buff-size value of 512 bytes or less. Increase the size only for high speed lines or if a larger size improves data throughput. A buff-size value that is too large may delay communication traffic and increase the use of virtual storage.

The amount of available space within a SNA buffer where BDT can store data for file transfers is reduced by one byte for each negotiated VLU present on the connection. This space is used to transfer BDT acknowledgments. The negotiated VLU corresponds to the smaller of the two values specified in the LU parameter of the BDTNODE statements for the two nodes in session.

In addition, a small amount of space within the SNA buffer is used for control information on each transfer, and is not available for transferring user file data. The reserved space varies with the logical record size being transferred.

In general, to calculate the amount of space available for transfer of file data within a SNA buffer, reduce the value of buff-size by 3, and subtract one byte for each negotiated VLU and two bytes for each logical record contained within the buffer. The above formula is an average, and the control information may vary somewhat at the start of a file transfer.

For instance, if a given connection has 30 VLUs defined at both nodes, buff-size is 256 bytes, and the length of the logical records is 80, the amount of file transfer data that could fit within each SNA buffer is 217, or 256 – (3+(1x30)) = 223 – (3 logical records x 2) = 217.

Note the following for cross-domain and channel-to-channel transmission:
  • For cross-domain transmission: The value obtained by adding buff-size plus the length of the VTAM path information unit (PIU) header must be less than or equal to the value specified on the MAXDATA parameter of the VTAM PCCU macro for the network control program (NCP).

    The computation of (MAXBFRU x UNITSZ), which are the two parameters on the NCP HOST macro, must be equal to or greater than the largest PIU that can flow in the network. Therefore, an installation must ensure that, when specifying these values for the NCP, the product of the two is at least as large as the largest buff-size + space for the TH and RH portions of the PIU, for any connection that may go through that NCP.

    The MAXBFRU and UNITSZ operands on the NCP HOST macro are used in other VTAM parameter calculations (such as IOBUF size and XPANPT for the IOBUF pool). Consult VTAM publications for additional information.

  • For channel-to-channel transmission: buff-size must be less than or equal to the value obtained by multiplying the MAXBUFRU parameter on the GROUP statement for a CTC link group times the size of the VTAM I/O buffer.
[CKPT=K-bytes] (file-to-file nodes only)
Periodically, BDT takes a checkpoint of sequential data set transfers. If the transfer fails and has to be restarted, the checkpoint information that BDT records enables BDT to restart the transfer from the last checkpoint. If the checkpoint were not taken, BDT would have to retransfer the entire data set. K-bytes defines how many 1K-byte blocks should be transferred before BDT checkpoints sequential data set transfers. (For a partitioned data set, BDT automatically takes a checkpoint after copying each member. You need not take any action.)

Specified As: A decimal number from 8 to 32767, indicating 1K-byte blocks of uncompressed data before the transfer.

Default: 40.

When you select a checkpoint frequency, try to match the frequency to the speed of the communication link. For slower speed links, you should take checkpoints more frequently than you take them for faster links. Each time BDT takes a checkpoint, communication takes place between the local node and the global node. Therefore, frequent checkpoints on fast links could create excessive communication traffic and adversely affect the performance of the link.

[CS={NJEDUP|REPDUP|(NJEDUP,REPDU P)}] (file-to-file nodes only)
defines the type of data compression, if any, that the home node will allow for file-to-file sessions with the remote node specified on this BDTNODE statement. Data compression removes duplicate strings of characters from data sets to be transferred. The character strings are removed before the data sets are transferred.
NJEDUP
requests compression of 3 to 63 duplicate characters (2 to 63 if the characters are blanks).
REPDUP
requests compression of 3 to 127 duplicate characters.
(NJEDUP,REPDUP)
requests compression of 3 to 127 duplicate characters (2 to 127 if the characters are blanks).

Default: If the CS parameter is not specified, compression does not take place.

The actual compression that takes place is determined by the CS parameter specified at this node, the CS parameter specified at the partner node, and the CSOPT transaction parameter specified by the user, according to the following table.
Table 1. CSOPT Transaction Parameters
CS Parameter Specified at the Home Node CS Parameter Specified at the Remote Node CSOPT Transaction Parameter Specified by the User Compression Used
(NJEDUP,REPDUP) (NJEDUP,REPDUP) NJEDUP NJEDUP
(NJEDUP,REPDUP) (NJEDUP,REPDUP) REPDUP REPDUP
(NJEDUP,REPDUP) (NJEDUP,REPDUP) None None
NJEDUP (NJEDUP,REPDUP) NJEDUP NJEDUP
NJEDUP (NJEDUP,REPDUP) REPDUP None
NJEDUP (NJEDUP,REPDUP) None None
REPDUP (NJEDUP,REPDUP) NJEDUP None
REPDUP (NJEDUP,REPDUP) REPDUP REPDUP
REPDUP (NJEDUP,REPDUP) None None
None (NJEDUP,REPDUP) NJEDUP None
None (NJEDUP,REPDUP) REPDUP None
None (NJEDUP,REPDUP) None None
REPDUP NJEDUP NJEDUP None
REPDUP NJEDUP REPDUP None
REPDUP NJEDUP None None
[L=logmode]
identifies the entry in the logmode table that VTAM is to use when the remote node named on this BDTNODE statement and the home node try to establish a session.

Specified As: One to eight alphanumeric characters. The first character must be alphabetic.

Default: If this parameter is not specified, VTAM uses the first entry from the standard IBM-supplied logmode table.

Related Parameters: Before you code logmode, ensure that the named entry has been defined in the ACF/VTAM logmode table associated with the VTAM APPL definition statement at the node defined by this BDTNODE statement.

[LU=({num-vlus},{fence-from},{fence- to})]
defines the number of virtual logical units (VLUs) that are available for communication between the remote node and the home node. The number of VLUs determine how many concurrent data transfers can take place between the remote node and the home node. This parameter also defines, for file-to-file transfers, how these VLUs are to be fenced.
num-vlus
is the total number of VLUs that are to be available. The first VLU (the communication VLU) always transfers control information. The remaining VLUs transfer data.

For File-to-File Nodes, Specified As: A decimal number from 1 to 255. The first VLU transfers control information and the remaining VLUs (up to 254) transfer data sets.

Default for File-to-File Nodes: 7.

For SNA NJE Nodes, Specified As: 5, 9, 13, 17, 21, 25, or 29. The first VLU transfers control information and the remaining VLUs (up to 28, divided into groups of four) transfer jobs and SYSOUT. Each group has one VLU for handling jobs received, one for jobs sent, one for SYSOUT received, and one for SYSOUT sent. See Table 2 for a summary of SNA NJE VLU allocation.

Default for SNA NJE Nodes: 5.
Table 2. Number of SNA NJE VLUs for Each num-vlus Value
num-vlus Value Number of Communication VLUs Number of VLUs for Jobs Received Number of VLUs for Jobs Sent Number of VLUs for SYSOUT Received Number of VLUs for SYSOUT Sent
5 1 1 1 1 1
9 1 2 2 2 2
13 1 3 3 3 3
17 1 4 4 4 4
21 1 5 5 5 5
25 1 6 6 6 6
29 1 7 7 7 7
When you allocate VLUs, keep in mind that:
  • It may take only a few active VLUs to saturate the capacity of a communication line.
  • If the total number of VLUs active across all sessions is too large, the storage capacity of BDT private virtual storage may be exceeded.
  • Transferring a data set that has a large block size uses more private virtual storage than does transferring a data set of a smaller block size.
fence-from (file-to-file nodes only)
fence-to (file-to-file nodes only)
Many file-to-file transactions, each wishing to transfer data in the same direction, could enter the system. These transactions could monopolize the VLUs for some time. During this time, other transactions wishing to transfer data in the other direction would be unable to do so. Whether this situation would ever occur at your node depends on the number and characteristics of the transactions that users submit. You can prevent this situation from happening, however, by fencing VLUs.

Fencing is a way of reserving some VLUs for transactions that will transfer data in a specific direction. You can fence VLUs for transactions that will send data to another node; you can also fence VLUs for transactions that will receive data from another node.

For example, assume that you define nine VLUs and that you fence four in the “from” direction and two in the “to” direction. BDT may pair the four “from” VLUs only with transactions that are to receive data from the remote node and the two “to” VLUs only with transactions that will send data to the remote node. BDT may pair the remaining VLUs with any transaction.

You may fence VLUs only for a remote node that is local with respect to the home node. The remote node is local if this BDTNODE statement does not contain the T=LOCAL parameter.

fence-from defines the number of VLUs that may be used only to receive data from the remote node. fence-to defines the number of VLUs that may be used only to send data to the remote node.

Specified As: Each parameter may be a decimal number from 0 to 254.

Default: 0.

The sum of the values of fence-from and fence-to must be at least 1 less than the value of num-vlus. This is because BDT uses one VLU to pass control information and this VLU is unavailable for data transfers.

[PIN=receive-password]
[POUT=send-password]
For each remote node you may define a pair of passwords. When the home node and the remote node try to establish a session, BDT checks the passwords. If either the home node or the remote node has failed to provide the correct password, BDT will not allow the session.

receive-password is the password that the home node expects to receive from the remote node. send-password is the password that the remote node expects to receive from the home node.

Specified As: Each parameter may be one to eight alphanumeric characters.

Default: A character string of eight blanks (hex 4040404040404040).

[T=LOCAL] (file-to-file nodes only)
defines the global-local relationship between the home file-to-file node and a remote file-to-file node.
The global-local relationship determines which of the two nodes schedules and manages work that takes place between the nodes. Before you decide which node should be global, consider that:
  • All transactions are queued and scheduled at the global node.
  • The operator at the global node generally needs to be more experienced than the operator at the local node.

A given node may be global in its relationship with one remote node and local in its relationship with a different remote node.

In a JES3 complex, the BDT global-local relationship has no relationship to the JES3 global-local relationship.

See Step 1. Plan Global and Local Relationships (File-to-File Customers Only) for more information.

Specified As: T=LOCAL if the home file-to-file node (the node at which this BDTNODE statement will execute) is local with respect to the remote file-to-file node (the node defined by this BDTNODE statement), code T=LOCAL. If the home file-to-file node is global with respect to the remote file-to-file node, omit this parameter.

Default: If you omit this parameter from a file-to-file initialization stream, the home node is defined as global with respect to this remote node. You should omit this parameter from a SNA NJE initialization stream, although if you specify it will be ignored.

Related Parameters: T=LOCAL and fencing (specified by the LU parameter) cannot be specified on the same BDTNODE statement; fencing is not allowed from a local node to a global node.

You must ensure that you and the system programmer at the remote node define the same global-local relationship. If you define your node as the global node, the system programmer at the remote node must also define your node as the global node; if you define your node as the local node, the other system programmer must do likewise. If you and the other system programmer fail to define the same global-local relationship, the home node and the remote node will be unable to establish a session.

[TYPE={FTF|NJE}]
specifies the type of data transfers that may occur between the home node and the remote node specified on this BDTNODE statement.
FTF
specifies that the home and remote BDT nodes may send and receive only data sets. This parameter corresponds to the BDT File-to-File feature.
NJE
specifies that the home and remote BDT nodes may send and receive only SNA NJE jobs and SYSOUT. This parameter corresponds to the BDT SNA NJE feature for JES3 installations.

Default: FTF.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014