z/OS MVS Setting Up a Sysplex
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Message buffer pools

z/OS MVS Setting Up a Sysplex
SA23-1399-00

Having determined the optimal size for the individual message buffer, the next thing to do is select an upper limit for the amount of virtual storage to be allocated to the message buffer pool. The message buffer space is virtual storage used by XCF to store the message buffers which are being processed, sent or received.

Most of the virtual storage used for this purpose is backed by fixed central and expanded storage. The storage to hold LOCAL buffers (for communication within the processor) is DREF storage which is backed by central storage. LOCAL buffers are used for messages within groups which are on the same MVS™ image. Currently APPC and JES3 are the only known IBM® exploiters of local messages but OEM applications can choose to take advantage of LOCAL message processing.

XCF only uses the amount of storage it needs; but to insure there are no surprises, the installation can use the MAXMSG parameter to place an upper limit on the amount of storage which can be used for this purpose.

Storage is associated with the transport class, the outgoing paths, and the incoming paths, so MAXMSG can be specified on the CLASSDEF, PATHIN and PATHOUT definitions, or more generally on the COUPLE definition. MAXMSG is specified in 1K units. The default values are determined in the following hierarchy:
           OUTBOUND                           INBOUND   
 ----------------------------------|------------------------------
  PATHOUT - not specified, use     |   PATHIN - not specified, use 
    CLASSDEF - not specified, use  |     COUPLE 
      COUPLE                       |

The default for MAXMSG is 500 in OS/390® R1 and prior releases. In OS/390 R2 and higher, the MAXMSG default is 750. By not specifying the default parameter, you will automatically get the most current default size as you migrate to newer releases. If you do want a larger value than the default, specify it at the lowest level of the hierarchy as appropriate.

The total amount of storage used by XCF on a single system is the sum of:
  • Sum of MAXMSG for all classes multiplied by the number of systems in the sysplex
  • Sum of MAXMSG for all PATHOUTs
  • Sum of MAXMSG for all PATHINs
Consider the example shown in Figure 1.
Figure 1. Example: XCF Path Statistics
                     XCF PATH STATISTICS
-------------------------------------------------------------------
         OUTBOUND FROM JC0                     INBOUND TO JC0
-------------------------------------------------------------------
        T FROM/TO                                 T FROM/TO
TO      Y DEVICE, OR      TRANSPORT       FROM    Y DEVICE, OR
SYSTEM  P STRUCTURE       CLASS           SYSTEM  P STRUCTURE 
JA0     S IXCPLEX_PATH1   DEFAULT         JA0     S IXCPLEX_PATH1
        C C600 TO C614    DEFSMALL                C C600 TO C614
        C C601 TO C615    DEFSMALL                C C601 TO C615  
        C C602 TO C616    DEFSMALL                C C602 TO C616  
JB0     S IXCPLEX_PATH1   DEFAULT         JBO     S IXCPLEX_PATH1
        C C600 TO C614    DEFSMALL                C C600 TO C614
        C C601 TO C615    DEFSMALL                C C601 TO C615 
        C C602 TO C616    DEFSMALL                C C602 TO C616  
If a MAXMSG of 1000 was specified on the CLASSDEF parameter and MAXMSG was not specified on the other parameters, the maximum storage which could be used by XCF is 22M:
  • 2 classes * 3 systems * 1M = 6M
  • 8 PATHOUTs * 1M = 8M
  • 8 PATHINs * 1M = 8M
Note: This implies if you add additional transport classes, signaling paths or systems, you will be increasing the upper limit on the size of the message buffer pool.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014