IBM Network Control Program

The IBM Network Control Program, or NCP, was software that ran on a 37xx communications controller and managed communication with remote devices. NCP provided services comparable to the data link layer and Network Layer functions in the OSI model of a Wide area network.[1]

Overview

edit

The original IBM Network Control Program ran on the 3705-I and supported access to older devices by application programs using Telecommunications Access Method (TCAM). With the advent of Systems Network Architecture (SNA), NCP was enhanced to connect cluster controllers (such as the IBM 3270) to application programs using TCAM and later to application programs using Virtual Telecommunications Access Method (VTAM). Subsequent versions of NCP were released to run on the IBM 3704, IBM 3705-II, IBM 3725. IBM 3720, or IBM 3745 Communications Controllers, all of which SNA defined as a SNA Physical Unit Type 4 (PU4). A PU4 usually had SDLC links to remote cluster controllers (PU1/PU2) or to other PU4s. Polling and addressing of the cluster controllers was performed by the NCP without mainframe intervention.

In 2005 IBM introduced Communications Controller for Linux (CCL), a software product that allows an unmodified NCP to run on the mainframe, eliminating the need for a separate communications controller in some cases.

A local NCP connected to a System/370 channel via single[NB 1] address.

A remote NCP had no direct connection to a mainframe but was connected to a local NCP via one or more high-speed SDLC links.

Notes

edit
  1. ^ However, if NCP was generated with Partitioned Emulation Program (PEP), then the Emulator Program (EP) has its own block of I/O addresses, normally on a different channel from that used by the NCP proper. The EP part of a PEP was often used to communicate with the Message Control Program (MCP) provided by TCAM running in the mainframe as the interface with application programs.

References

edit
  1. ^ Microsoft. "SNA Functional Layers". Retrieved Sep 7, 2012.

Further reading

edit