SNMP MUX protocol and MIB
RFC 1227

Document Type RFC - Historic (May 1991; Errata)
Last updated 2013-03-02
Stream Legacy
Formats plain text pdf htmlized with errata bibtex
Stream Legacy state (None)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state RFC 1227 (Historic)
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                            M. Rose
Request for Comments: 1227       Performance Systems International, Inc.
                                                                May 1991

                       SNMP MUX Protocol and MIB

Status of this Memo

   This memo suggests a mechanism by which a user process may associate
   itself with the local SNMP agent on a host, in order to implement
   portions of the MIB.  This mechanism would be local to the host.

   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.

Table of Contents

   1. Introduction ..........................................    1
   2. Architecture ..........................................    2
   3. Protocol ..............................................    3
   3.1 Tricky Things ........................................    3
   3.1.1 Registration .......................................    4
   3.1.2 Removing Registration ..............................    4
   3.1.3 Atomic Sets ........................................    4
   3.1.4 Variables in Requests ..............................    5
   3.1.5 Request-ID .........................................    5
   3.1.6 The powerful get-next operator .....................    5
   3.2 Protocol Data Units ..................................    6
   3.3 Mappings on Transport Service ........................    8
   3.3.1 Mapping onto the TCP ...............................    8
   4. MIB for the SMUX ......................................    9
   5. Acknowledgements ......................................   12
   6. References ............................................   12
   7. Security Considerations................................   13
   8. Author's Address.......................................   13

1.  Introduction

   On typical kernel/user systems, an agent speaking the SNMP [1] is
   often implemented as a user-process, that reads kernel variables in
   order to realize the Internet-standard MIB [2].  This approach works
   fine as long as all of the information needed by the SNMP agent
   resides in either the kernel or in stable storage (i.e., files).
   However, when other user-processes are employed to implement other

Rose                                                            [Page 1]
RFC 1227                          SMUX                          May 1991

   network services, such as routing protocols, communication between
   the SNMP agent and other processes is problematic.

   In order to solve this problem, a new protocol, the SNMP multiplexing
   (SMUX) protocol is introduced.  When a user-process, termed a SMUX
   peer, wishes to export a MIB module, it initiates a SMUX association
   to the local SNMP agent, registers itself, and (later) fields
   management operations for objects in the MIB module.

   Carrying this approach to its fullest, it is possible to generalize
   the SNMP agent so that it knows about only the SNMP group of the
   Internet-standard MIB.  All other portions of the Internet-standard
   MIB can be implemented by another process.  This is quite useful, for
   example, when a computer manufacturer wishes to provide SNMP access
   for its operating system in binary form.

   In addition to defining the SMUX protocol, this document defines a
   MIB for the SMUX.  Obviously, this MIB module must also be
   implemented in the local SNMP agent.

2.  Architecture

   There are two approaches that can be taken when trying to integrate
   arbitrary MIB modules with the SNMP agent: request-response and
   cache-ahead.

   The request-response model simply propagates the SNMP requests
   received by the SNMP agent to the user process which exported the MIB
   module.  The SMUX peer then performs the operation and returns a
   response.  In turn, the SNMP agent propagates this response back to
   the network management station.  The request-response model is said
   to be agent-driven since, after registration, the SNMP agent
   initiates all transactions.

   The cache-ahead model requires that the SMUX peer, after
   registration, periodically updates the SNMP agent with the subtree
   for the MIB module which has been registered.  The SNMP agent, upon
   receiving an SNMP request for information retrieval, locally performs
   the operation, and returns a response to the network management
   station.  (SNMP set requests are given immediately to the SMUX peer.)
   The cache-ahead model is said to be peer-driven since, after
   registration, the SMUX peer initiates all transactions.

   There are advantages and disadvantages to both approaches.  As such,
   the architecture envisioned supports both models in the following
   fashion: the protocol between the SNMP agent and the SMUX peer is
Show full document text