Home
About NuDesign
Sales
Support
Eval Download
Partners
Testimonials
SNMP Links
Tutorials

 

Overview of NuDesign's SNMP / HTTP / CLI Agent  - download SNMP / HTTP / CLI Console Sample Agent or view its ReadMe file.

The Multiprotocol SNMP Agent is constructed with NuDesign's Visual xAgent Builder for C++.  The developer uses the SNMP MIB grammar to build the Management Information Base objects (using, for example, NuDesign's Visual MIBuilder), then using the Visual xAgent Builder for C++ generates the agent's instrumentation code and chooses the desired access protocol agents.

Supported today are: SNMP v1/v2c, SNMP v1/v2c/v3, HTTP and CLI, command line interface access libraries.  If CLI access beyond MIB objects is desired then using NuDesign’s CLI Code Generation Framework developer generates hierarchical CLI interface with operational and configuration commands that expose access to system functions beyond SNMP.

The Multiprotocol SNMP Agent consists of the following main components:

Figure 1 The Management Information Agent Architecture

The product supports libraries for the following target platforms: MS Windows (98/Me/NT/2000 and XP), MS Windows CE.NET, QNX, Linux, UNIX brands, OSE, VxWorks and other embedded OSs / RTOSs (please call for information on RTOS-specific ports).  These libraries are supplied in a form of xAgent Builder or CLI framework SDK's.

The generated instrumentation code is OS / RTOS independent.  Only the standard ANSI C++ is used, allowing for simple port of the Multiprotocol SNMP Agent to various target platforms.

The resulting Agent can support any combination of supported access protocols, for example, it could be SNMP v1/v2c/v3 only, or HTTP (the tool will generate the basic HTML pages derived from the MIB) or hierarchical CLI access only.  Some other embedded device might require support of all currently available access protocols: SNMP v1/v2c/v3, HTTP and CLI interfaces.

For security, access to MIB variables is controlled by Access Control Module, same for any supported Access Protocol Agents.  The View-Based Access Control (VACM) model of SNMP v1/v2c/v3 has been adopted.

MIB Handler maintains the list of subtree handlers.  Their code is created by code generator and is protocol independent, i.e. access to MIB variables is the same no matter which protocol agent dispatched the request.  This allows for simple extension of Agent with yet another access protocol agent.  The new access protocol agent simply has to register with MIB Handler to receive IMIB interface and MIB data could be accessed by that protocol.

The architecture of SNMP Agent is shown in Figure 2.  The SNMP Agent is implemented using NDSnmp SNMP C++ framework.

Figure 2 The SNMP Agent Architecture

The agent contains: a Command Responder Application that provides access to management data, a Notification Originator Application that initiates asynchronous messages and optionally a Proxy Forwarder Application that implements Proxy MIB as per rfc3413.  The Proxy functionality can be added at code generation time by instructing the NuDesign's wizard to do so.

The Access Control Subsystem is used by MIB Handler module, and it is common to any protocol agent that is part of Multiprotocol SNMP Agent.  The access control model used is the View-Based Access Control Model (VACM) of SNMP v1/v2c/v3, specified in RFC 3415.

The Web Agent consists of extensible Web Server.  Different HTTP request processors are implemented using the defined API (BGI).


Figure 3 The Web Agent Architecture

The web access to management data is provided through Server Side Includes (SSI) and a set of predefined SHTML files.

Under construction is a SOAP processor, with xSNMP service (XML SNMP, NuDesign defined SNMP for XML/SOAP).  It will be added for more versatile access to management data.


 

<   Previous