What is a product’s communication ability?

When planning your communication functions between different CICS® systems you must consider:

These questions are examined in the following sections.

The CICS intersystem communication functions

CICS intersystem communication supports five basic functions:

Function shipping
enables an application program running in one CICS system to access data resources (such as files and queues) that are owned by another CICS system.
Transaction routing
enables a terminal connected to one CICS system to run a transaction in another CICS system.
Distributed program link (DPL)
enables an application program executing in one CICS system to link (pass control) to a program in a different CICS system. The linked-to program executes and returns a result to the linking program.
Asynchronous processing
enables a transaction executing in one CICS system to start a transaction in a different system. The two transactions then execute independently of each other.
Distributed transaction programming
enables a transaction running in one CICS system to communicate with transactions running in other systems. The transactions are designed and coded specifically to communicate with each other.

For more information about these functions, see CICS intercommunication functions.

Communication protocols

If two systems are to communicate successfully they must use a common set of rules that both understand. A communications protocol is such a set of rules that defines, for example, a set of standard requests and responses, and the order in which they can be sent.

For CICS products, three communication protocols are important:

SNA LU TYPE 6.2
LU TYPE 6.2 (LU 6.2) is a Systems Network Architecture (SNA) protocol that supports both system-to-system communication and system-to-device communication. LU 6.2 is also known as Advanced Program-to-Program Communications (APPC).

CICS can make use of the AnyNet® product, which allows SNA flows to be transmitted over a TCP/IP network.

All CICS products support the LU 6.2 protocol.

TCP/IP
The Transmission Control Protocol/Internet Protocol (TCP/IP) is a set of protocols that are used for both LANs and Wide Area Networks (WANs).

TCP/IP is supported natively by CICS Transaction Server for Windows, CICS on Open Systems, and versions of CICS Transaction Server for z/OS® from Version 2.2 onwards.

Note:
CICS TS for z/OS Version 2.2 and later support native TCP/IP connections to clients. The CICS External Call Interface (ECI) is supported, but not the External Presentation Interface (EPI) nor the External Security Interface (ESI). See Table 5.

All CICS on System/390® products except CICS TS for VSE/ESA and CICS/VSE 2.3 can make use of the AnyNet product, which allows SNA flows to be transmitted over a TCP/IP network.

NetBIOS
The Network Basic Input/Output System (NetBIOS) is a local area network (LAN) protocol for personal computers. It is supported by CICS Transaction Server for Windows.

You can use IBM® NetBIOS, or another NetBIOS emulator. For example, Novell’s NetBIOS emulator provides NetBIOS flows over its Internetwork Packet eXchange (IPX) protocol.

Synchronization

During CICS interproduct communication, partner transactions may make logically-related updates to their data stores -- data sets, databases, temporary storage, transient data, and so on. Data integrity would be lost if both transactions did not commit (or back out) the updates they made to their resources.

The process used to ensure data integrity is called synchronization. Synchronization has to prevent one transaction completing normally and committing its updates while its partner transaction abends and backs out its updates. Synchronization must also handle situations when network problems prevent the transactions from communicating and informing each other of their actions.

Synchronization levels

SNA APPC architecture defines three levels of synchronization, which it calls NONE, CONFIRM, and SYNCPOINT. CICS refers to these as synchronization levels 0, 1, and 2, respectively.

Level 0
Provides no synchronization support.
Level 1
Allows transactions to exchange confirmation requests which they may use to provide some degree of synchronization. CICS is not involved in this process.
Level 2
Provides system-level syncpoint exchanges.

Synchronization level 2 provides two-phase commit. In a two-phase commit process, one CICS system initiates the syncpointing and acts as coordinator for the operation. The coordinating system:

  1. Asks each connected system to prepare to commit
  2. When each system has signalled readiness, it tells each to commit, or, if any resource manager signals that it cannot commit, it tells each to back out.

The synchronization level that two connected CICS systems can use is established when they first establish the connection. A connection established at synchronization level 2 can support a synchronization level 0, 1, or 2 conversation, and a connection established at synchronization level 1 can support a synchronization level 0 or 1 conversation.

The synchronization level you can use depends upon the capabilities of the particular CICS systems, and the capability of the network that they are using for the connection. The synchronization levels for all pairings of CICS systems is summarized in CICS product communication support.

Data conversion

CICS products use two interchange codes for character data representation, EBCDIC and ASCII. Data in CICS on System/390 products and CICS/400 is held in EBCDIC format. Data in CICS Transaction Server for Windows and CICS on Open Systems is typically held in ASCII format.

Support of an intersystem communication function between two products requires support for any necessary data conversion. For further information, see Data conversion.

Related concepts
Function shipping
Transaction routing
Distributed program link
Asynchronous processing
Distributed transaction programming
Data conversion
Configuring CICS for SNA communications
Related reference
CICS product communication support
[[ Contents Previous Page | Next Page Index ]]