IBM Support

Communications Server ECSA and CSM Storage Usage

Question & Answer


Question

The Communications Server component uses (E)CSA storage for multiple purposes associated with network communication and the applications that use them. It is possible for a system to experience multiple failures to allocate common storage during periods of high TCP/IP or VTAM usage. This can include system 804-08, 80A-08, 878-08, and C78-04 ABENDs, as well as other ABENDs or messages from components making conditional storage requests (S4C5-xxxx2506, IVT5506I, EZZ4362I, EDC8122I, the ENOBUFS errno on socket calls, and FFST probe point IVTSMC05 are some examples).

Cause

The allocation of CSA space (specified in PARMLIB member IEASYSxx, CSA statement) must be large enough to handle the usage from all system components at peak workload. This needs to be at least the size specified for CSM usage (PARMLIB member IVTPRM00, ECSA MAX value), VTAM (Start Options CSALIMIT and CSA24), TCPIP (GLOBALCONFIG ECSALIMIT statement in the TCPIP PROFILE), plus all other users.

Answer

  • Use a system monitoring tool (such as RMF or OMEGAMON) to track ECSA usage in the system.

  • Collect regular reports of CSM usage of ECSA using the DISPLAY NET,CSM command. Especially note the values at the end of the report (message lines IVT5539I and IVT5541I).

  •    DISPLAY NET,CSM
       IVT5508I DISPLAY ACCEPTED
       IVT5529I PROCESSING DISPLAY CSM COMMAND - OWNERID NOT SPECIFIED
       ....
       IVT5532I ------------------------------------------------------
       IVT5536I TOTAL  ALL SOURCES            156K     2572K     2728K
       IVT5538I FIXED MAXIMUM =      120M    FIXED CURRENT =     2361K
       IVT5541I FIXED MAXIMUM USED =     2553K SINCE LAST DISPLAY CSM
       IVT5594I FIXED MAXIMUM USED =     2553K SINCE IPL
       IVT5539I ECSA  MAXIMUM =      120M    ECSA  CURRENT =     1233K
       IVT5541I ECSA  MAXIMUM USED =     1233K SINCE LAST DISPLAY CSM
       IVT5594I ECSA  MAXIMUM USED =     1233K SINCE IPL
       IVT5559I CSM DATA SPACE 1 NAME: CSM64001
       IVT5559I CSM DATA SPACE 2 NAME: CSM31002
       IVT5599I END
  • Collect regular reports of TCPIP usage of ECSA using the DISPLAY TCPIP,stackname,STOR command. If using TN3270 servers (z/OS 1.9 and above, or as stand-alone on earlier releases) or multiple TCP/IP stacks, this needs to be issued against each one. See the TCP/IP Storage Report section (below) for examples from different releases.
  • On z/OS 1.10 systems (and above), a Storage Statistics section has been added to the information collected via SMF 119 TCP/IP Statistics Records (subtype 5). Collection of these records is enabled by the TCPIPSTATISTICS keyword on the SMFCONFIG statement in the TCPIP PROFILE.

  • Collect regular reports of VTAM usage of ECSA using the DISPLAY NET,BFRUSE,BUFFER=SUMMARY command.

  •    DISPLAY NET,BFRUSE,BUFFER=SUMMARY
       IST097I DISPLAY ACCEPTED
       IST350I DISPLAY TYPE = BUFFER POOL DATA
       IST449I CSALIMIT = 240022K, CURRENT = 2300K, MAXIMUM = 2300K
       IST790I MAXIMUM CSA USED = 2362K
       IST1667I SYSTEM CSA LIMIT = 266692K
       IST1831I 90% OF SYSTEM CSA STORAGE REMAINING = 241844K
       IST449I CSA24 LIMIT = NOLIMIT, CURRENT = 59K, MAXIMUM = 59K
       IST790I MAXIMUM CSA24 USED = 61K
       IST595I IRNLIMIT = NOLIMIT, CURRENT = 0K, MAXIMUM = 0K
       IST981I VTAM PRIVATE: CURRENT = 1189K, MAXIMUM USED = 1211K
       IST924I ----------------------------------------------------------
       IST1565I CSA MODULES = 1744K
       IST1565I CSA24 MODULES = 40K
       IST1565I PRIVATE MODULES = 7792K
       IST314I END
  • Note the allocations used during peak periods. Calculate the amount of ECSA used for other components by subtracting the CSM, VTAM, and TCPIP amounts from the recorded total ECSA for the same time frame.

  • Update the IEASYSxx specification of ECSA size and 64-bit common to accommodate the allocations if all of these uses were to have a peak at the same time (plus a growth factor).

  • Specify reasonable limits for CSM, VTAM, and TCPIP ECSA usage based on the above analysis. If some unanticipated event were to cause either one of these to limit communication processing, that would be preferable to having them exhaust ECSA (potentially causing a full system outage).

  • Also note the CSM Fixed storage usage and TCP/IP private Pool storage usage values as well, and adjust their limits as needed.

  • Start the Traffic Regulation Management Daemon (TRMD), even if the system does not have any TCP/IP policies defined. This will report instances of TCP and UDP queues not being processed by their applications.
  • Regularly evaluate these figures, especially after system upgrades or workload increases.
  • Apply the following PTFs for a reduction of CSM usage on typical systems (and especially for systems using VPN protocols):
  • 2.1
    2.2
    2.3

Updating:

  • Changes in the IEASYSxx PARMLIB member require an IPL to take effect. The relevant specifications are:
    • CSA=(csasize,ecsasize) to control CSA. The defaults used if not specified will vary depending on the sizes of other parts of common storage, see the description of the keyword for more details.
    • For z/OS 1.10 and above, HVCOMMON=(size) for the 64-bit common area size. The default if not specified is 64G.

  • CSM usage limits may be adjusted dynamically with the MODIFY vtamname,CSM command. Permanent changes should be made in the IVTPRM00 PARMLIB member.

  • TCP/IP limits on ECSA usage can be adjusted dynamically by performing a VARY TCPIP,stackname,OBEYFILE command specifying a data set containing a GLOBALCONFIG statement with the desired ECSALIMIT (or POOLLIMIT) value. Permanent changes should be made in the TCPIP PROFILE input.

  • VTAM limits on ECSA usage can be adjusted dynamically by performing a MODIFY vtamname,CSALIMIT command. Permanent changes should be made in the VTAM start options.


TCP/IP Storage Reports:

  • For z/OS 1.10 and earlier, these displays will have the following.
      DISPLAY TCPIP,,STOR
      EZZ8453I TCPIP STORAGE
      EZZ8454I TCPCS    STORAGE    CURRENT   MAXIMUM     LIMIT
      EZZ8455I TCPCS    ECSA         8944K    10004K   NOLIMIT
      EZZ8455I TCPCS    POOL         9061K     9099K   NOLIMIT
      EZZ8459I DISPLAY TCPIP STOR COMPLETED SUCCESSFULLY
      NOTE: On z/OS 1.9 systems, the value reported for the limit of POOL storage is incorrect (it will be the same as the ECSA limit). This is a known problem that is documented by APAR PK59309. The NETSTAT CONFIG command can be used to show the actual configured limit. All of the other values reported in this display will be correct.

  • On z/OS 1.11 systems, another line has been added to the report to reflect control blocks being placed in 64-bit common storage (addresses above 7FFFFFFF, also called above the bar). This is simply a report of the usage, there is no configuration item to limit that storage in TCPIP.
      EZZ8453I TCPIP STORAGE
      EZZ8454I TCPCS    STORAGE         CURRENT   MAXIMUM     LIMIT
      EZZ8455I TCPCS    ECSA              9700K    10782K   NOLIMIT
      EZZ8455I TCPCS    POOL              8507K     8512K   NOLIMIT
      EZZ8455I TCPCS    64-BIT COMMON        1M        1M   NOLIMIT
      EZZ8459I DISPLAY TCPIP STOR COMPLETED SUCCESSFULLY
  • On z/OS 1.12 systems, another line has been added to the report listing the space used for load modules resident in ECSA separately from control blocks in ECSA. The ECSA used for the load modules no longer counts against the ECSALIMIT on the GLOBALCONFIG statement, so you may want to adjust the size specified accordingly.
      EZZ8453I TCPIP STORAGE
      EZZ8454I TCPCS    STORAGE         CURRENT   MAXIMUM     LIMIT
      EZZ8455I TCPCS    ECSA              2729K     2729K   NOLIMIT
      EZZ8455I TCPCS    POOL              8426K     8426K   NOLIMIT
      EZZ8455I TCPCS    64-BIT COMMON        1M        1M   NOLIMIT
      EZZ8455I TCPCS    ECSA MODULES      7451K     7451K   NOLIMIT
      EZZ8459I DISPLAY TCPIP STOR COMPLETED SUCCESSFULLY
  • On z/OS 1.13 systems (and above), the report has been rearranged to show separate sections for below the bar and above the bar storage. Plus POOL has been renamed to be PRIVATE.
      EZZ8453I TCPIP STORAGE
      EZZ8454I TCPCS    STORAGE         CURRENT   MAXIMUM     LIMIT
      EZD2018I 31-BIT
      EZZ8455I          ECSA              2698K     3153K   NOLIMIT
      EZZ8455I          PRIVATE           8491K     8491K   NOLIMIT
      EZZ8455I          ECSA MODULES      8571K     8571K   NOLIMIT
      EZD2018I 64-BIT
      EZZ8455I          HVCOMMON             1M        1M   NOLIMIT
      EZZ8455I          HVPRIVATE            6M        6M   NOLIMIT
      EZZ8455I          TRACE HVCOMMON    2579M     2579M     2579M
      EZZ8459I DISPLAY TCPIP STOR COMPLETED SUCCESSFULLY

[{"Product":{"code":"SSSN3L","label":"z\/OS Communications Server"},"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Component":"All","Platform":[{"code":"PF035","label":"z\/OS"},{"code":"PF025","label":"Platform Independent"}],"Version":"1.6;1.7;1.8;1.9;1.10;1.11;1.12;1.13;2.1;2.2;2.3","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
15 June 2018

UID

swg21216034