Let's understand Mainframe
Home Tutorials Interview Q&A Quiz Mainframe Memes Contact us About us

Module 14: CICS Performance, Security and Advanced Topics


Inter-System Communication (ISC)

Inter-System Communication connects CICS regions on different z/OS systems or different machines. It works over SNA (LU 6.2) or TCP/IP (IPIC).

ISC vs MRO

  • MRO connects regions on the same z/OS image using shared memory (XCF/IRC). ISC connects regions across systems using a network.
  • ISC is slower than MRO because data crosses a network, but it connects data centers in different cities.
  • ISC connections use APPC (LU 6.2) sessions or IPIC over TCP/IP.
  • Choose MRO inside one data center and ISC between data centers.

The four ISC facilities

  • Transaction routing: a terminal on one system runs a transaction on another system. The user does not know the difference.
  • Function shipping: a program on one system accesses a file or queue on another system. Add SYSID to the file command.
  • Distributed program link (DPL): a program on one system LINKs to a program on another system, passing a COMMAREA or channel.
  • Asynchronous processing: a program on one system STARTs a transaction on another system to run later.

Defining an ISC connection

  • Define a CONNECTION with ACCESSMETHOD(VTAM) for APPC or with IPICNTRY for IPIC over TCP/IP.
  • Define SESSIONS with the right MODENAME for APPC so the network allocates suitable sessions.
  • The remote system needs matching definitions pointing back, with compatible session limits.

Example: function shipping a file read

  • Add SYSID to any file command to run it on the remote system that owns the file.
  • WORKING-STORAGE SECTION. 01 WS-ORDER-KEY PIC X(10) VALUE 'ORD0001234'. 01 WS-ORDER-REC PIC X(100). 01 WS-RESPONSE PIC S9(8) COMP. PROCEDURE DIVISION. EXEC CICS READ FILE('ORDFILE') RIDFLD(WS-ORDER-KEY) INTO(WS-ORDER-REC) SYSID('SYSB') RESP(WS-RESPONSE) END-EXEC. IF WS-RESPONSE NOT = DFHRESP(NORMAL) EXEC CICS SEND TEXT FROM('REMOTE READ FAILED') END-EXEC END-IF.
  • SYSID('SYSB') must match a CONNECTION definition for the remote system.
  • The remote file can have a different name. Use the local FILE definition that points to the remote file.





© copyright mainframebug.com
Privacy Policy
MainframeBug Assistant