SNMP Agent Studio for Desktop Linux
download eval of Visual Embedded xAgentBuilder 9 for C++
review this Tutorial first
NuDesign C++ SNMP Agent Studio for PC Linux line of products allows developers to quickly create 32bit or 64bit Multiprotocol SNMP Agents with SNMPv1/v2c, SNMPv3, optional HTTP and simple CLI, development console access to managed information. The core Studio product, Visual Embedded xAgentBuilder for C++ wizard generates standalone SNMP Agent or Master Agent and dynamically loadable extensions or Remote Subagents as required. Two remote subagent protocols are supported, a lightweight remote subagent based on UDP communications and SNMP BER encoding, or the TCP communications based, IETF Agent Extensibility (AgentX) standard, based on rfc2741. The SNMP standard over IPv6 / IPv4 networks is fully supported.
The product is management objects centric, enabling the creation of new or re-use of existing instrumentation code, for access by SNMP and/or web-based applications. The wizard also generates MIB-specific Web pages that can be modified for a custom look and feel. A MIB-II and Host MIB subagents are included with the product. Please also see Command Line Interface (CLI) agent code generation tools and how they integrate together with SNMP access.
First, the developer creates an SNMP MIB, for example using NuDesign’s Visual MIB Builder. This or any other MIB can then be used for generating a complete Multiprotocol SNMP Agent project using NuDesign’s Visual Embedded xAgentBuilder for C++, SNMP Agent code builder. This tool comes in the form of a wizard that is run within Microsoft’s Internet Explorer, under Windows 8/8.1 / 7 / Vista / XP / Server 2008 & 2003 (or as a command line utility under Linux).
Figure 1. Overview of Visual Embedded xAgentBuilder for C++
Figure 2. Visual Embedded xAgentBuilder for C++ Defining Host and Target
The developer builds the SNMP agent project under the Visual Embedded xAgentBuilder for C++ wizard then moves the project and the SDK for Multiprotocol SNMP Agent for Desktop Linux into Desktop Linux development environment for compile and linking.
Included in the SDK for Multiprotocol SNMP Agent for PC Linux are access protocol libraries (SNMP v1/v2c/v3, HTTP and simple CLI, development console access), Desktop Linux include files, a sample SNMP agent (NDSNMP), MIB-II and Host Resources MIB subagent libraries for your development use. The sample agent also uses these MIB extension subagents.
NuDesign’s SDK for Multiprotocol SNMP Agent for PC Linux libraries have been produced using the gcc 3.4.x compiler and tool chain. If the intended development computer has gcc installed below release 3.4.x you may have to upgrade to or install a secondary tool chain with gcc 3.4.x in order to create SNMP agents or sub agents using the NuDesign’s SDK for Multiprotocol SNMP Agent for Desktop Linux libraries and Visual Embedded xAgentBuilder for C++ code generator.
The only difference for producing code with an alternate tool chain is that you will need to make small changes to the project makefiles produced by Visual Embedded xAgentBuilder for C++, to identify the alternate compiler tools that you want to use for the make, as well as set specific paths for the include directories and libraries for the alternate compiler. NuDesign developers will be happy to make recommendations about any modifications to Makefiles that may be required.
The resulting Multiprotocol SNMP Agent code has been tested on a variety of current distributions which employ both 2.4.x and 2.6.x kernels, including:
- Knoppix (Debian)
- Red Hat Enterprise WS / Desktop
- Basilisk (Fedora)
The agent can be tested using appropriate management application (for example NuDesign’s Visual MIB Browser for SNMP access or regular web browser for HTTP access).
For simple CLI, development console access, the agent code generator makes use of the Get/Set MIB objects API infrastructure, extending standard Desktop Linux console application with Get/Set MIB object commands thus offering simple console access to the MIB. If full feature, hierarchical CLI is required then NuDesign’s CLI Builder Studio tool can be used to generate appropriate CLI application with a comprehensive set of configuration and operational modes and commands.
NuDesign’s agent technology relies on the Linux POSIX thread (pthread) library. Most current distributions of Linux include this. If yours doesn’t, you’ll need to acquire it in order to use C++ SNMP Agent Studio for Desktop Linux.
NuDesign’s agent technology also relies on the Open SSL library. Most current distributions of Linux include this. If yours doesn’t, you’ll also need to acquire it in order to use C++ SNMP Agent Studio for Desktop Linux.
The Visual Embedded xAgentBuilder for C++, along with SDK for Multiprotocol SNMP Agent for Desktop Linux produces a multithreaded agent that can be built as either, an executable “standalone” SNMP agent or as an extension (subagent) to a standalone SNMP agent.
Agent extension is accomplished at run time, by loading one or more extension subagents to a standalone “core” agent.
For more information please view the Visual Embedded xAgentBuilder for C++ Help File.
Other of NuDesign’s SNMP Agent Studio products generate agent code with SNMP v1/v2c, SNMP v1/v2c/v3, HTTP and simple CLI, development console access, including generation of Project Files (source code, headers and Make files) for respective IDE’s for these environments:
- MS Windows & Windows Embedded – Visual Studio
- QNX Neutrino® – Momentics IDE
- Desktop & Embedded Linux distributions – GNU Make files
- MontaVista Linux – DevRocket IDE
- ENEA OSE – ENEA development environment
- WindRiver VxWorks – Tornado and Eclipse IDE
- other embedded and desktop OS/RTOS targets
For a more detailed understanding of our Multiprotocol SNMP Agent and our SNMP Agent Development Tools please read here.