IBM Advanced Program-to-Program Communication
| Company type | Protocol |
|---|---|
| Industry | Computer networking |
| Founded | 1982 |
| Founder | IBM |
| Products | Network communication protocol |
In computing, Advanced Program to Program Communication (APPC) is a protocol designed to enable interaction between software applications across a computer network. Functioning at the application layer within the OSI model, APPC supports communication among a wide range of systems, including portables, workstations, midrange machines, and mainframe computers. It corresponds to VTAM LU 6.2 (Logical Unit type 6.2).
Introduced by IBM in 1982 as an integral component of its Systems Network Architecture (SNA), APPC offers multiple APIs compatible with programming languages such as COBOL, PL/I, C, and REXX. It is accessible on numerous IBM and third-party operating systems, either embedded or as standalone products. APPC functions as an intermediary layer, translating data formats between applications and network interfaces to facilitate both sending and receiving information.
Primarily deployed within IBM environments, APPC operates on platforms like z/OS (previously MVS/OS/390), z/VM, z/TPF, IBM i, OS/2, AIX, and z/VSE. Additionally, Microsoft provides SNA support through its Host Integration Server. Major IBM software suites such as CICS, Db2, CIM, and WebSphere MQ incorporate APPC capabilities.
Distinct from the typical client-server paradigm found in TCP/IP, APPC functions as a peer-to-peer protocol where applications serve as equals, each able to perform client and server roles. Session responsibilities and multiple simultaneous connections are established via CNOS sessions, while data exchange occurs over configurable 'data sessions' overseen by VTAM administrators.
The architecture of APPC also facilitates remote utilization of operating system services through the Distributed Data Management Architecture (DDM), enabling client-server models for managing files, databases, and other resources. This framework forms the foundation for IBM’s Distributed Relational Database Architecture (DRDA), with various DDM and DRDA solutions developed by IBM and associated vendors.
Despite a reduction in APPC adoption due to the widespread use of TCP/IP, IBM systems frequently rely on translators such as Enterprise Extender (RFC 2353) to transmit APPC communications over IP networks.
It is important to differentiate APPC from IBM’s Advanced Peer-to-Peer Networking (APPN); while APPC governs program-level communication at the application and presentation layers, APPN addresses machine-level networking responsibilities at the transport and network layers.