This document, "DECnet-Plus for OpenVMS Programming," is a November 1996 manual (Part Number AA-Q195E-TE) for programmers designing applications using network communication services on OpenVMS systems.
It is divided into four main parts:
DECnet Programming (Parts I & II):
- Interprocess Communication ($IPC) System Service: Describes how to design and write applications that use $IPC for interprocess communication within a single OpenVMS system, across OpenVMS clusters, or between DECnet-Plus and Phase IV nodes. It covers establishing and terminating associations and connections, exchanging messages (including segmented and expedited data), and managing information like protocol towers and node names. $IPC uses Interprocess Communication Blocks (IPCBs) and Network Item Lists.
- Queue Input/Output ($QIO) System Service: Details how to perform network operations like retrieving node status, communicating with remote command terminals, accessing remote files, and performing task-to-task communication. It introduces both transparent (device-independent) and nontransparent (network-specific features, mailboxes) modes of task-to-task communication. Notably, for Phase V applications, Digital recommends using $QIO or the X/Open Transport Interface (XTI) over $IPC. It also supports 64-bit virtual addresses on Alpha systems.
- OpenVMS OSI Transport Service: Explains how to use OpenVMS system services ($ASSIGN, $DASSGN, $QIO, $QIOW) to communicate with OSI transport services. This includes establishing transport connections, exchanging data, and negotiating protocol classes and options. It highlights differences in NCB format, user data limits, and task identification compared to general DECnet-Plus.
CMISE API (Part III):
- Common Management Information Service (CMISE) Application Programming Interface: Provides information on how to use the CMISE API, which implements the ISO 9595 CMIS specification. This includes management association services (M-Initialize, M-Terminate, M-Abort), management operation services (M-Get, M-Set, M-Action, M-Create, M-Delete, M-Cancel-Get), and management notification services (M-Event-Report). It details the data structures, parameters, and status codes for these services.
The manual is intended for experienced programmers familiar with the OpenVMS operating system, its system services, a programming language, packet switching (X.25), and general communications theory. It includes reference calls, programming guidelines, and examples for each service.