Improving Performance for TCP/IP Transfers with XCOM for z/OS
search cancel

Improving Performance for TCP/IP Transfers with XCOM for z/OS


Article ID: 9377


Updated On:


XCOM Data Transport XCOM Data Transport - z/OS XCOM Data Transport - Linux PC XCOM Data Transport - Windows


Configuring parameters to increase performance with XCOM for z/OS.


Component: XCOM Data Transport for z/OS


Set the following parameters to improve throughput for TCP/IP transfers:

  1. Set MAXPACK=1023000 in the default table or config member or destination member or use the largest packet size that your network can handle.
  2. Specify PACK=LENGTH and RECSEP=NO in the SYSIN01 parameters or the destination member for the partner to improve performance. If you are using the panels to submit the transfer,
Record Separators (Y/N)---: N
Pack Data Records(N/C/L): L

on the "Send MVS File To Another System" panel.

In most cases, this can cause dramatic performance improvements. These performance improvements are obtained because you are changing from sending a record at a time to sending large packed buffers. PACK=LENGTH supports both text and binary files.


Specifies that the records are to be packed into fixed-size data transfer blocks. Each record begins with a 2-byte long prefix that indicates the length of the record and determines how many records can be packed into a block. The default block size is 2K but it can be increased to 31K by using the MAXPACK parameter in the XCOM Data Transport Default Options Table or in the XCOM Data Transport control library member. When transferring a text file to a partner that supports record separators (for example, CRLF (0D0A) on NT and LF (0A) on UNIX), record separators will be inserted. No separators are inserted in binary files transferred with PACK=LENGTH.


If PACK=LENGTH is coded, then you must also code RECSEP=NO since PACK=LENGTH processing inserts record separators during processing. You will receive an error message if you specify RECSEP=YES with PACK=LENGTH. Platforms that support PACK=LENGTH are IBM's AS/400 i5/OS, Windows systems, UNIX, Linux-based systems and z/OS systems. See the appropriate documentation for the platform to see if this value is supported.

Large packing is not turned on until you actually specify PACK=LENGTH and RECSEP=NO in the SYSIN01 or panel parameters or put these values in a destination member for the partner and enable it.

Packing is not dependent on the block size. It is dependent on the LRECL. The smaller the LRECL and the larger the packing size, the better the performance.

Additional Information

Also test with COMPRESS=NO

Disable any user exits if possible.

Online documentation for XCOM Data Transport for z/OS 12.0:
Configure for Optimal Performance