SNMP-DPI: Simple Network Management Protocol Distributed Program Interface (RFC1228)
Original Publication Date: 1991-May-01
Included in the Prior Art Database: 2019-Feb-11
Internet Society Requests For Comment (RFCs)
G. Carpenter: AUTHOR [+1]
This RFC describes a protocol that International Business Machines Corporation (IBM) has been implementing in most of its SNMP agents to allow dynamic extension of supported MIBs. This is an Experimental Protocol for the Internet community. It does not specify an Internet standard.
Network Working Group G. Carpenter Request for Comments: 1228 B. Wijnen T.J. Watson Research Center, IBM Corp. May 1991
SNMP-DPI Simple Network Management Protocol Distributed Program Interface
Status of this Memo
This RFC describes a protocol that International Business Machines Corporation (IBM) has been implementing in most of its SNMP agents to allow dynamic extension of supported MIBs. This is an Experimental Protocol for the Internet community. Discussion and suggestions for improvement are requested. Please refer to the current edition of the "IAB Official Protocol Standards" for the standardization state and status of this protocol. Distribution of this memo is unlimited.
The Simple Network Management Protocol (SNMP)  Distributed Program Interface (DPI) is an extension to SNMP agents that permits end-users to dynamically add, delete or replace management variables in the local Management Information Base without requiring recompilation of the SNMP agent. This is achieved by writing a so-called sub-agent that communicates with the agent via the SNMP-DPI.
For the author of a sub-agent, the SNMP-DPI eliminates the need to know the details of ASN.1  or SNMP PDU (Protocol Data Unit) encoding/decoding [1, 3].
This protocol has been in use within IBM since 1989 and is included in the SNMP agents for VM, MVS and OS/2.
Potentially useful sample sub-agent code and implementation examples are available for anonymous FTP from the University of Toronto.
The Simple Network Management Protocol  defines a protocol that permits operations on a collection of variables. This set of variables is called the Management Information Base (MIB) and a core set of variables has previously been defined [4, 5]; however, the design of the MIB makes provision for extension of this core set. Thus, an enterprise or individual can define variables of their own which represent information of use to them. An example of a
Carpenter & Wijnen [Page 1]
RFC 1228 SNMP-DPI May 1991
potentially interesting variable which is not in the core MIB would be CPU utilization (percent busy). Unfortunately, conventional SNMP agent implementations provide no means for an end-user to make available new variables.
The SNMP DPI addresses this issue by providing a light-weight mechanism by which a process can register the existence of a MIB variable with the SNMP agent. When requests for the variable are received by the SNMP agent, it will pass the query on to the process acting as a sub-agent. This sub-agent then returns an appropriate answer to the SNMP agent. The SNMP agent eventually packages an SNMP response packet and sends the answer back to the remote network management station that initiated the request.
None of the remote network management stations have any knowledge that the SNMP agent calls on other processes to obtain an answer. As far as they can tell, there is only one network management application running on the host.
THEORY OF OPERATION