M CSCI

This chapter describes the Client Server Communications Interface (CSCI) component.

This chapter covers the following topics:

  • Overview of CSCI

  • Error messages

  • Environmental variables

Installation of CSCI should follow installation of the operating system and installation and configuration of ACSLS.

Note:

For ACSLS to function properly, the START_CSCI_PROCESS configuration variable must be set to TRUE. You do this in Option 1 of acsss_config. See "Setting Variables that Control ACSLS Behavior".

Overview of CSCI

The Client Server Communications Interface (CSCI) is a stand-alone component responsible for the passing of request and response packets between a client system and a server system. CSCI is an optional component that lets MVS or RMLS/CSC clients communicate with ACSLS. If you do not use CSCI, you use CSI by default to communicate with ACSLS.

CSCI Connectivity

CSCI provides IPC and TCP/IP connectivity to link the ACSLS server with MVS clients or RMLS/CSC clients

Architecture and Subsystems

The following figure shows an overall CSCI architecture and subsystems.

Figure M-1 CSCI Architecture and Subsystems

Description of Figure M-1 follows
Description of ''Figure M-1 CSCI Architecture and Subsystems''

The following figure shows how the CSCI system connects with the network interface. On the server-side, the data flows from the network hub through the TCP/IP interface, to the CSCI interface. From here, the data flows through an IPC interface to the ACSLS software in both directions, but in a half duplex mode, for example: one direction at a time.

Figure M-2 CSCI System with Token Ring Interface

Description of Figure M-2 follows
Description of ''Figure M-2 CSCI System with Token Ring Interface''

Error Messages

CSCI installation and configuration error messages relate to the following conditions:

  • Improper ownership

  • Improper access permission

  • Undefined environment variables

  • A variety of miscellaneous conditions

  • Improper CSCI and TCP/IP configuration

Common Error Messages

Communication failure, verb = cmroutine, rc = xx, errno = yyy IPC failure on Socket CSCIzzzzz

Explanation: The read failed on the named connection.

Variable:

  • xx is IBM CPI return code

  • yyy is the UNIX errno value in /usr/include/sys/errno.h

  • CSCIzzzzz is the socket number that was in use

  • cmroutine is the IBM CPI routine name that failed

Read failed for connection: connection_name

Explanation: The read failed on the named connection.

Variable: connection_name is the name of the connection on which the read failed.

Write failed for connection: connection_name

Explanation: The write failed on the named connection.

Variable: connection_name is the name of the connection on which the write failed.

Environmental Variables

CSCI is invoked by csciTcpServer.sh, a Transaction Program Name (TPN) in the /$ACS_HOME/bin directory where ACSLS executables reside. This shell script defines CSCI environment variables.

The following table describes CSCI environment variables for the server subsystem and a shell script similar to the one provided in the distribution of ACSLS/CSCI software. This shell script is started by TCP/IP on the server.

Table M-1 CSCI Server Subsystem Environment Variables

Name Description

START_CSCI_PROCESS

Automatically starts CSCI at ACSLS startup (TRUE or FALSE)

CSCI_TRACE

This variable indicates whether CSCI tracing is ON or OFF.

CSCI_SLEEP_TIME

This variable indicates the PER sleep time at the end of each round-robin loop through the connection table (polling timeout). Default is 100 msec.

CSCI_INITIAL_CONNECTION

This variable indicates the CSCIs' initial connect name to open first. This is the connection service name requiring i/o on initial startup of the CSCI. Clients usually open IPC first; Servers open TCP/IP first.

CSCI_SERVER_NAME

This variable indicates the name of the CSCI Server. It must be set the same for all CSCIs' Clients defined to a single CSCI server. The server name must match its CSCI Clients CSCI_SERVER_NAME. The matching of the Server and Client CSCI_SERVER_NAME provides an end-to-end logical link between machines. Finally, this name is used later for the ”connectionname” in other environment variables. The value assigned to the CSCI_SERVER_NAME must be replicated in the connectionname part of the subsequent variables.

CSCI_connectionname_NET_TYPE

This variable indicates what Network type this CSCI is configured for from the CIF subsystem. The NETTYPE defines the transport layer used by this CSCI. Valid assignments are LU62 or IPC.

CSCI_connectionname_INPUT_
SOCKET

This variable indicates the input socket number to use as input to this CSCI. This number would match the Server or Client application output socket number.

CSCI_connectionname_CON_
TYPE

This variable indicates this CSCI type. This CON_TYPE defines the CSCI to be either a SERVER or a CLIENT.

CSCI_connectionname_
TRANSLATE_TYPE

This variable indicates this CSCI XDR type to be employed during execution. This can be assigned to either XDR or NONE.

CSCI_connectionname_
DESTINATION_SOCKET

This variable indicates destination or output socket number to be used by the CSCI Server. This socket number would be the matching input socket number to the CSCI Server Application.