I have sent a large number of transfers from XCOM for z/OS to XCOM for Windows and only about half of them arrived successfully.

Document ID : KB000024114
Last Modified Date : 14/02/2018
Show Technical Document Details

Question: 

I have JCL that transfers a large number of files to my Windows server simultaneously. About 30 of them seem to transfer correctly with no problem, but then the rest do not transfer. Is there a limitation somewhere that I need to change either on the mainframe or on my Windows server?

Answer: 

Depending on the size of your Windows box, it cannot generally process a very large number of transfers simultaneously. There is a parameter for XCOM for Windows that sets the maximum number of simultaneous incoming transfers that will be accepted. It is the Maximum Client Range set in the GUI in Global Parameters->TCP/IP tab. Any simultaneous transfers after that number are refused. However, this is not the best option for managing transfers, because transfers are refused and error messages are created.

The best way to handle this is to create a destination member on the mainframe which controls the maximum number of transfers that can be active simultaneously to Windows. You can still use exactly the same JCL, with one change to refer to the destination member, instead of the IPNAME and XCOM takes care of managing the session limit.  

The destination members are stored in a PDS dataset that is specified in the XCOM server JCL. It generally has a low level qualifier of XCOMCNTL.

  1. Add a member to this PDS with a name of WINSERV, for example (or whatever you want).
        *****************************************************************    *  XCOM WINDOWS server    ***********************************************************************    TYPE=DEST              *THIS IS DEST MEMBER    IPNAME=123.45.678.9    TCPSESS=20
  2. Then, in your JCL, you put IPNAME=WINSERV instead of IPNAME=123.45.678.9.
  3. The purpose of the destination member is to store override parameters for a particular destination. In this case, you would be specifying the parameter TCPSESS=20 for the Windows server. This limits active transfers to 20 at a time. As they finish new transfers will be started automatically. You may be able to specify a limit higher than 20, but it depends on your environment.

  4. Edit the START member in the XCOM server JCL to enable (turn on) this dest member when the XCOM server comes up.  Determine the name of the START member by examining the beginning of the XCOMLOG and finding the START= parameter. It indicates the name of the PDS member you will need to edit, for example, START=XCOMSTRT.

Additional Information:

For transfers from other platforms, such as Unix or Linux, you can control this by configuring the number of simultaneous outgoing transfers in the xcom.ses file.
Please refer to FAQ282210.