IBM Advanced Program-to-Program Communication

Last updated

In computing, Advanced Program to Program Communication or APPC is a protocol which computer programs can use to communicate over a network. APPC is at the application layer in the OSI model, it enables communications between programs on different computers, from portables and workstations to midrange and host computers. APPC is defined as VTAM LU 6.2 ( Logical unit type 6.2 )

APPC was developed in 1982 as a component of IBM's Systems Network Architecture (SNA). [1] Several APIs were developed for programming languages such as COBOL, PL/I, C or REXX.

APPC software is available for many different IBM and non-IBM operating systems, either as part of the operating system or as a separate software package. APPC serves as a translator between application programs and the network. When an application on your computer passes information to the APPC software, APPC translates the information and passes it to a network interface, such as a LAN adapter card. The information travels across the network to another computer, where the APPC software receives the information from the network interface. APPC translates the information back into its original format and passes it to the corresponding partner application.

APPC is mainly used by IBM installations running operating systems such z/OS (formerly MVS then OS/390), z/VM (formerly VM/CMS), z/TPF, IBM i (formerly OS/400), OS/2, AIX and z/VSE (formerly DOS/VSE). Microsoft also includes SNA support in Microsoft's Host Integration Server. Major IBM software products also include support for APPC, including CICS, Db2, CIM and WebSphere MQ.

Unlike TCP/IP, in which both communication partners always possess a clear role (one is always server, and others always the client), APPC is a peer-to-peer protocol. The communication partners in APPC are equal, every application can be both server and client equally. The role, and the number of the parallel sessions between the partners, is negotiated over CNOS sessions (Change Number Of Session) with a special log mode (e.g. at IBM, 'snasvcmg'). Transmission of the data is made then by 'data sessions', their log modes can be determined in detail from the VTAM administrator (e.g. length of the data blocks, coding etc..).

It was also apparent to the architects of APPC that it could be used to provide operating system services on remote computers. A separate architecture group was formed to use APPC to enable programs on one computer to transparently use the data management services of remote computers. For each such use, an APPC session is created and used in a client–server fashion by the Conversational Communications Manager of Distributed Data Management Architecture (DDM). Message formats and protocols were defined for accessing and managing record-oriented files, stream-oriented files, relational databases (as the base architecture of Distributed Relational Database Architecture (DRDA)), and other services. A variety of DDM and DRDA products were implemented by IBM and other vendors.

With the increasing prevalence of TCP/IP, APPC has declined, although many IBM systems have translators, such as Enterprise Extender (RFC 2353), to allow sending APPC-formatted traffic over IP networks. [2]

APPC should not be confused with the similarly named APPN (Advanced Peer-to-Peer Networking). APPC manages communication between programs, operating at the application and presentation layers. By contrast, APPN manages communication between machines, including routing, and operates at the transport and network layers.

Related Research Articles

<span class="mw-page-title-main">IBM 3270</span> Family of block-oriented display terminals and printers made by IBM

The IBM 3270 is a family of block oriented display and printer computer terminals introduced by IBM in 1971 and normally used to communicate with IBM mainframes. The 3270 was the successor to the IBM 2260 display terminal. Due to the text color on the original models, these terminals are informally known as green screen terminals. Unlike a character-oriented terminal, the 3270 minimizes the number of I/O interrupts required by transferring large blocks of data known as data streams, and uses a high speed proprietary communications interface, using coaxial cable.

<span class="mw-page-title-main">MVS</span> Operating system for IBM mainframes

Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unrelated to IBM's other mainframe operating system lines, e.g., VSE, VM, TPF.

<span class="mw-page-title-main">VSE (operating system)</span>

VSEn is an operating system for IBM mainframe computers, the latest one in the DOS/360 lineage, which originated in 1965. It is less common than z/OS and is mostly used on smaller machines.

z/OS 64-bit operating system for IBM mainframes

z/OS is a 64-bit operating system for IBM z/Architecture mainframes, introduced by IBM in October 2000. It derives from and is the successor to OS/390, which in turn was preceded by a string of MVS versions. Like OS/390, z/OS combines a number of formerly separate, related products, some of which are still optional. z/OS has the attributes of modern operating systems but also retains much of the older functionality originated in the 1960's and still in regular use—z/OS is designed for backward compatibility.

<span class="mw-page-title-main">OS/390</span> Operating system for IBM mainframes

OS/390 is an IBM operating system for the System/390 IBM mainframe computers.

Systems Network Architecture (SNA) is IBM's proprietary networking architecture, created in 1974. It is a complete protocol stack for interconnecting computers and their resources. SNA describes formats and protocols but, in itself, is not a piece of software. The implementation of SNA takes the form of various communications packages, most notably Virtual Telecommunications Access Method (VTAM), the mainframe software package for SNA communications.

<span class="mw-page-title-main">VM (operating system)</span> Family of IBM operating systems

VM is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers.

<span class="mw-page-title-main">CICS</span> IBM mainframe transaction monitor

IBM CICS is a family of mixed-language application servers that provide online transaction management and connectivity for applications on IBM mainframe systems under z/OS and z/VSE.

Systems Application Architecture (SAA), introduced in 1987, is a set of standards for computer software developed by IBM. The SAA initiative was started in 1987 under the leadership of Earl Wheeler, the "Father of SAA". The intent was to implement SAA in IBM operating systems including MVS, OS/400 and OS/2. AIX—IBM's version of the UNIX operating system—was not a target of SAA, but does have interoperability with the SAA family.

Virtual Telecommunications Access Method (VTAM) is the IBM subsystem that implements Systems Network Architecture (SNA) for mainframe environments. VTAM provides an application programming interface (API) for communication applications, and controls communication equipment such as adapters and controllers. In modern terminology, VTAM provides a communication stack and device drivers.

Remote job entry, or Remote Batch, is the procedure for sending requests for non-interactive data processing tasks (jobs) to mainframe computers from remote workstations, and by extension the process of receiving the output from such jobs at a remote workstation.

Logical Unit 6.2 is an IBM-originated communications protocol specification dating from 1974, and is part of IBM's Systems Network Architecture (SNA).

IBM Advanced Peer-to-Peer Networking (APPN) is an extension to the Systems Network Architecture (SNA) "that allows large and small computers to communicate as peers across local and wide-area networks."

<span class="mw-page-title-main">IBM TPNS</span> Test automation tool developed by IBM

Teleprocessing Network Simulator (TPNS) is an IBM licensed program, first released in 1976 as a test automation tool to simulate the end-user activity of network terminal(s) to a mainframe computer system, for functional testing, regression testing, system testing, capacity management, benchmarking and stress testing.

Data-Link Switching (DLSw) is a tunneling protocol designed to tunnel unroutable, non-IP based protocols such as IBM Systems Network Architecture (SNA) and NBF over an IP network.

A clustered file system (CFS) is a file system which is shared by being simultaneously mounted on multiple servers. There are several approaches to clustering, most of which do not employ a clustered file system. Clustered file systems can provide features like location-independent addressing and redundancy which improve reliability or reduce the complexity of the other parts of the cluster. Parallel file systems are a type of clustered file system that spread data across multiple storage nodes, usually for redundancy or performance.

<span class="mw-page-title-main">IBM 3745</span>

The IBM 3745 is the latest and last of a 37xx family of communications controllers for the IBM mainframe environment. As of mid-2009 there were an estimated 7,000+ of the larger 3745 models still in active production status, down from 20,000 or more in 2007. The 3745 and associated 3746 models were once heavily used within financial, insurance and retail industries as well as within government agencies globally. However, today most organizations have migrated away from the use of 3745s. IBM's Enterprise Extender and the Communication Controller for Linux on System z (CCL) have largely displaced the older 3745s. IBM announced in September 2002 that it would no longer manufacture new 3745s, but IBM continues to support the hardware by providing worldwide maintenance service, by providing microcode releases and by supporting the associated software including NCP and the virtual telecommunications access method (VTAM). IBM has announced end-of-service dates for Japan, Europe and the Middle East, but has not yet announced end-of-service for the Americas and parts of Asia.

<span class="mw-page-title-main">Distributed Data Management Architecture</span> Open, published architecture for creating, managing and accessing data on a remote computer

Distributed Data Management Architecture (DDM) is IBM's open, published software architecture for creating, managing and accessing data on a remote computer. DDM was initially designed to support record-oriented files; it was extended to support hierarchical directories, stream-oriented files, queues, and system command processing; it was further extended to be the base of IBM's Distributed Relational Database Architecture (DRDA); and finally, it was extended to support data description and conversion. Defined in the period from 1980 to 1993, DDM specifies necessary components, messages, and protocols, all based on the principles of object-orientation. DDM is not, in itself, a piece of software; the implementation of DDM takes the form of client and server products. As an open architecture, products can implement subsets of DDM architecture and products can extend DDM to meet additional requirements. Taken together, DDM products implement a distributed file system.

IBM Enterprise Extender (EE) is a standard internet transport protocol for IBM Systems Network Architecture (SNA) High Performance Routing traffic over IP. Enterprise Extender is analogous to, but independent of, Transmission Control Protocol (TCP). EE and TCP traffic can be carried over the same connections.

References

  1. IBM Corporation (27 January 2006). "Advanced Program-to Program Communications (APPC)". IBM Knowledge Center. Retrieved Nov 20, 2018.
  2. IBM Corporation (27 January 2006). "Enterprise Extender". IBM Knowledge Center. Retrieved Nov 19, 2018.