Open topic with navigation

TIBCO® Managed File Transfer Platform Server for z/OS 8.1.0

# Class of Service (COS) Definitions

COS entries are defined in the CONFIG DD statement in the same library that defines the node entries.

In the Platform Server COS definitions, you can define the following functions:

- The buffer sizes that are passed between the Platform Server and VTAM/TCP.
- The time of day that transfers can be run.
- For TCP requests, you can throttle transfer of data to or from a node. In other words, you can set a maximum number of bytes per second that can be sent to or received from a node.
  Note: This is only useful for TCP transfers because SNA already has a Class of Service feature that you can use to prioritize data traffic.

COS entries can be enabled at startup if they are contained in the node startup list. Additionally, they can be enabled through the `ENABLE` operator command and disabled through the `DISABLE` operator command.

If a COS entry is defined for a file transfer, and the COS entry is not disabled, the transfer can run as if no COS entry is defined.

Note: If transfers are assigned a COS entry, they are not assigned a priority. The priority defined within the COS entry changes when the time of the transfer changes. A transfer can be assigned a priority of `9` when running early in the morning. If the transfer runs long enough, the priority might be changed to another value based on the parameters in the COS entry.

Additional node parameters are required to perform TCP throttling of data sent and received. For more information, see `BPS_INIT`, `BPS_RECEV`, `BPS_RESP`, `BPS_SEND`, `BPS_TOTAL`, `DEFAULT_COSNAME`.

The COS definitions can be divided to two sections. The first section describes the required parameters and the parameters that define the buffer sizes that are passed between the Platform Server and TCP/VTAM.

See the following table for the parameters in the first section:

Parameter | Description
--- | ---
`TYPE` | Distinguishes between NODE entries and COS entries. This is a required parameter. You must set the value as `COS`.
`SBUFSIZE` | Defines the buffers size in bytes that the Platform Server uses when sending data to VTAM or TCP. This is an optional parameter. Valid values are from `1490` to `9999999`. The default value is `131072`, which is a proper value for most transfers. By specifying a larger value, you save CPU cycles at the cost of using more storage. You might want to specify a value lower than `32000` if you want to throttle transfers to a very slow level. You will not get much benefit from a buffer size greater than`1024000`. Make sure the value defined is less than the system TCP max buff size; otherwise we may use the system default.
`RBUFSIZE` | Defines the buffers size in bytes that the Platform Server uses when receiving data from VTAM or TCP. This is an optional parameter. Valid values are from `1490` to `9999999`. The default value is `131072`, which is a proper value for most transfers. By specifying a larger value, you save CPU cycles at the cost of using more storage. You might want to specify a value lower than `32000` if you want to throttle transfers to a very slow level. You will not get much benefit from a buffer size greater than 1024000. Make sure the value defined is less than the system TCP max buff size; otherwise we may use the system default.

The second section describes the parameters that define the time period when a file transfer can run, and throttle the transfer of data to and from TCP. These parameters must be on the same line in the documented order. You must define all of the parameters.

You can define up to nine lines of the following parameters for a single COS definition. If you attempt to have more than nine entries, an error message is displayed and the COS definition is not enabled. If you do not want to use some of the parameters, you can use the default values as shown in the following sample:

    DAYS=YYYYYYY,STIME=0000,ETIME=2400,PRIORITY=9

This field is broken into four parameters. The first three parameters `DAYS`, `STIME` and `ETIME` are filter parameters, while the fourth parameter `PRIORITY` defines the priority that is used when the current time passes the filters.

See the following table for the descriptions of the four parameters:

Parameter | Description
--- | ---
`DAYS` | Defines the days of the week. This parameter must have 7 digits that are either `Y` or `N`. These digits stand for the days of the week through Sunday to Saturday. When specified as `Y`, it means that this entry is active for that day of the week, and the Platform Server continues checking the `STIME` and `ETIME` parameter.
`STIME` | Defines the start time to check. It is defined in military time from `0000` to `2400`.
`ETIME` | Defines the end time to check. It is defined in military time from `0000` to `2400` and must be greater than the start time.
`PRIORITY` | Defines the priority associated with a file transfer if the current day and time passes all the filter parameters: `DAYS`, `STIME` and `ETIME`. Valid values are the following 10 priorities: `0`: No priority. The transfer cannot run or be started. If a transfer is running and the priority changes to 0, then terminates the transfer and starts again later when the priority is greater than `1`. `1`: Low priority. The transfer cannot be started. If a transfer is running and the priority changes to `1`, then the transfer can continue to run. When throttling transfers, sends the data to the node at 25% of the total number of TCP bytes that can be transferred per second. `2`: Low priority. Transfers can be scheduled. When throttling transfers, sends the data to the node at 25% of the total number of TCP bytes that can be transferred per second. `3`: Low priority. Transfers can be scheduled. When throttling transfers, sends the data to the node at 50% of the total number of TCP bytes that can be transferred per second. `4`: Low priority. Transfers can be scheduled. When throttling transfers, sends the data to the node at 75% of the total number of TCP bytes that can be transferred per second. `5`: Medium priority. Transfers can be scheduled. When throttling transfers, sends the data to the node at 100% of the total number of TCP bytes that can be transferred per second. `6`: Medium priority. Transfers can be scheduled. When throttling transfers, sends the data to the node at 133% of the total number of TCP bytes that can be transferred per second. `7`: Medium priority. Transfers can be scheduled. When throttling transfers, sends the data to the node at 166% of the total number of TCP bytes that can be transferred per second. `8`: High priority. Transfers can be scheduled. When throttling transfers, sends the data to the node at 200% of the total number of TCP bytes that can be transferred per second. `9`: No maximum priority. Transfers can be scheduled. No throttling of transfers is performed.

See the following copy of the `COSDFLT` entry that is provided in the Platform Server `SAMPLIB` library:

    ***********************************************************************
    * SAMPLE COS (CLASS OF SERVICE) ENTRY: COSDFLT                        ************************************************************************
    TYPE=COS                              Defines that this is a COS entry
    SBUFSIZE=32000                        Sets the TCP SEND Buffer Size
    RBUFSIZE=32000                        Sets the TCP RECEIVE Buffer Size ***********************************************************************
    * Parameters that limit file transfer speed                           *
    * Up to 9 lines can be defined per class of service                   *
    * Parameters must be on the same line in the defined order:           *
    * DAYS=xxxxxxxx (Y or N)      Days of the week starting with Sunday   *
    * STIME=xxxx    (hhmm)        Start time (0000-2359)                  *
    * ETIME=xxxx    (hhmm)        End   time (0000-2359)                  *
    * PRIORITY=x    (0-9)         Priority                                ************************************************************************
    *   The following line sets high priority 7 days a week 24 hours/day
    DAYS=YNNNNNY,STIME=0000,ETIME=2359,PRIORITY=9    High priority  7x24
    *   The following lines sets high priority all day Sunday/Saturday
    *   They are currently commented out
    *DAYS=YNNNNNY,STIME=0000,ETIME=2359,PRIORITY=9    High Sun/Sat  7x24
    *   The following lines sets different priorities for Monday-Friday
    DAYS=NYYYYYN,STIME=0000,ETIME=0700,PRIORITY=9    High Mid-7AM
    DAYS=NYYYYYN,STIME=0700,ETIME=0900,PRIORITY=5    Medium 7-9AM
    DAYS=NYYYYYN,STIME=0900,ETIME=1700,PRIORITY=0    Do not Run 9-5pm
    DAYS=NYYYYYN,STIME=1700,ETIME=1900,PRIORITY=5    Medium 5-7pm
    DAYS=NYYYYYN,STIME=1900,ETIME=2359,PRIORITY=9    High 7-12mid

This COS definition sets the send and receive buffer sizes to 32000. The priority is set to `9` (high) for all transfers running on Saturday and Sunday. The last five lines set different priorities for transfers running on Monday through Friday.

- For transfers running between midnight and 7 a.m., the priority is set to `9`.
- For transfers running between 7 a.m. and 9 a.m., the priority is set to `5`.
- For transfers running between 9 a.m. and 5 p.m., the priority is set to `0`.
- For transfers running between 5 p.m. and 7 p.m., the priority is set to `5`.
- For transfers running between 7 p.m. and midnight, the priority is set to `9`.

Subtopics

Copyright © 2003-2021. TIBCO Software Inc. All Rights Reserved.