Gen 8.6 GUI client with CICS server application using the Gen CICS Multi Sockets Server Listener (TISRVMSL/TIML).
Currently trying to setup TLS for our connections.
Would like to introduce a new port for the TLS connection and retain current non-TLS TCP/IP port as backup, both of which need to connect to the same CICS region .
The existing non-TLS port is already setup with the default value TIML as the listener transaction id.
When discussing the new port with CICS Infrastructure support, they advised that it is one port per listener, which means that for the new TLS port, they are expecting new listener transaction id to be specified other than TIML used by the existing port.
Can a different listener transaction id other than TIML be used and is using parallel multiple ports applicable?
Gen 8.6 CICS Multi Sockets Server Listener
More than one TISRVMSL listener in the region can be used as long as each has a separate port number.
The transaction identifier can be something other than TIML but the same name must be used in the EZACONFG file and in the CICS definition.
Please see the Gen 8.6 documentation page Customize Middleware under section "Customize for TCP/IP > CICS > CICS Multi Sockets Server" i.e.
*****
DEFINE TRANSACTION(TIML*)
DESCRIPTION(Gen CICS Multi Sockets Server Listener Transaction)
PROGRAM(TISRVMSL)
TASKDATALOC(ANY)
TASKDATAKEY(CICS)
...
* This transaction identifier can be something other than TIML. The EZACONFG file and the CICS definition must use the same name.
*****
Q1.Is there a way to tell what percentage (high water mark) of sockets are used by the listener? How to determine if an additional listener is needed?
A1. The maximum number of sockets allocated for each listener is managed by the NUMSOCK parameter in the EZAC configuration for that listener transaction (https://www.ibm.com/docs/en/zos/3.1.0?topic=environment-building-configuration-data-set-ezacicd)
Also CICS parameter MAXSOCKETS limits the total number of sockets that a CICS domain can manage concurrently (https://www.ibm.com/docs/en/cics-ts/6.x?topic=parameters-maxsockets)
To check active socket usage for each listener port the Netstat command can be used (https://www.ibm.com/docs/en/zos/3.1.0?topic=network-netstat)
Q2. How to divide up the client connections if using multiple listeners?
A2. If using multiple listeners just divide up the total client connections across the listeners i.e. configure an equal number of clients to connect to each specific listener port.
Alternatively having an external load balancer at the front end which all clients initially connect to would allow a more dynamic choice of which listener the client connection is forwarded on to.