The Envoy SNMP toolkit is the leading development and runtime environment supporting v1/v2/v3 and AgentX agents for embedded systems. Icon Labs is the exclusive Value Added Reseller of Envoy for non-VxWorks operating systems including Linux, Solaris, BSD and Windows. Envoy provides a high-performance solution for OEMs and system integrators who require a small, fast SNMP agent, or the basis for a management station product.
Envoy delivers a complete solution for integrated SNMP design. It is independent of the transport protocol or transport API, and it works on sockets, streams, IP/UDP, X.25 or IPX. The Envoy MIB compiler is a powerful tool to create standard or private MIBs and extensions. It translates ASN.1 syntax MIB definition files into C language MIB tree definitions of an agent (mib.c), method routines, code templates, header declarations, OID/name mappings, etc. Envoy supports both SMIv1 and SMIv2 formats.
- SNMP v1/v2c/v3 and AgentX support for Linux, Solaris, BSD and Windows
- Complete source code product
- Native MIB II agent and example SNMP manager
- Integrated MIB compiler
- Multi-lingual agent support
- Creates v1/v2c agents as small as 22K (x86 CPU)
Envoy supports asynchronous operation, simplifies access routine development, and provides improved performance. These integrated functions permit agents to process multiple SNMP requests simultaneously within a single task and eleminate the blocking of single-threaded first-in, first-out protocol data unit processing (PDU). Envoy accomplishes this by using asynchronous interface calls and associating asynchronous functions with the underlying processing.
Full SNMPv3 Security
Envoy offers full support for the security features specified in SNMPv3. Security features provide data integrity checks, message authetication, privacy, and access control. SNMPv3 uses industry-standard protocols such as SHA, DES and message digest 5 (MD5) to secure the communications channel. Envoy allows network managers to specify the level of protection for individual devices in their network.
AgentX is the industry standard for implementing SNMP master/subagent systems. AgentX allows users to create dynamically extensible SNMP agents. AgentX master agents communcate directly with network management stations and subagents dynamically register with master agents. This allows convient managesment of modular extensible systems such as a multiblade switching chassis.
SNMP Proxy is the industry standard for forwarding SNMP traffic. A single SNMP agent forwards requests to get and set SNMP data to multiple independent SNMP agents. A management station sees only the proxy agent, allowing efficient consolidation of SNMP network management functions. Combined with SNMPv3 security, Envoy SNMP Proxy can provide secure access to an existing set of SNMP v1/v2c agents. SNMP Proxy can also de-multiplex many SNMP agents by providing a single, well-known point of entry.
Envoy supports the coexistence standard for SNMP v3 and allows a multilingual SNMP agent to translate between SNMP v1, v2c, and v3 formats. Coexistence support is becoming a requirement for device standards, such as cable modem DOCSIS 1.1. Coexistence also allows an SNMP v3 agent to proxy unsecure LAN SNMP v1 management information securely across the wide area network or the Internet by translating SNMP v1 datagrams into encrypted SNMP v3 datagrams.
This module provides support for the Envoy SNMP agent software to accept IPv4 and IPv6 addresses for transport over IPv4 and IPv6. For IPv6, the Envoy software supports the following capabilities IPv6 over SNMP:
- SNMP data over IPv6 networks
- IPv6-specific MIB data
- SNMP agents for IPv6
- Support for SMI v2 as defined by RFC 1902, 1903, and 1904
- Support for BSD, Linux and Solaris
Support for the following MIBs that update RFC 1213 is provided:
- RFC 1907 – Updated System and SNMP group
- RFC 2011 – Updated UDP group
- RFC 2012 – Updated TCP group
- RFC 2013 – Updated IP Group
- RFC 2096 – new IP Route table
- RFC 2863 – Updated Interface group
Transport Protocol Independent
Envoy supports agents for UDP/IP or alternate transport mappings such as OSI, IPX, or AAL-5. Agents may even support multiple transport layers at the same time.
Envoy Functional Modules
- Decoder: Decodes an SNMP packet. Takes input from a buffer and generates a C data structure representing the contents of the packet.
- Encoder: Generates an SNMP packet. The input to the Encode is a C data structure. The Encoder produces a transport layer independent buffer suitable for transmission.
- MIB Interface: The input to the MIB Interface is a C data structure representing a Get, Get Next, Set, or Get Bulk request PDU. The MIB Interface processes the request, internally produces a C data structure representing the resulting Response PDU, and calls upon the Encoder to build a buffer containing an image of the packet. A customer-extensible data tree conforming to the structure of the MIB controls the interface to the customer’s variables.
- Received Packet Manager: The Received Packet Manager processes a packet received through one of the SNMP ports. This functional unit calls upon the Decoder, MIB Interface, and Encoder to process the packet. The output is a buffer containing a response packet ready for transmission.
- Packet Generator: Constructs SNMP Trap and Request PDUs. The Packet Generator provides tools to construct standard C data structures used to represent SNMP PDUs. The Packet Generator calls upon the Encoder to produce a packet ready for transmission.
Envoy complies to the following RFCs:
RFC 1155 – SNMP and SNMP MIB
RFC 1157 – SNMP version 1
RFC 1212 – Concise MIB definitions
RFC 1213 – MIB II for TCP/IP
RFC 1215 – Convention for defining traps for use with SNMP
RFC 1901 – Introduction to Community-based SNMPv2
RFC 1902 – Convention for defining traps for use with the SNMP
RFC 1903 – Textual Conventions
RFC 1904 – Conformance Statements
RFC 1905 – Protocol Operations
RFC 1906 – Transport Mappings
RFC 1907 – Management Information Base
RFC 1908 – Co-existence between
Version 1 and Version 2
RFC 2257 – Agent Extensibility (AgentX) Protocol Version 1
RFC 2271 – An Architecture for Describing SNMP Management Frameworks
RFC 2272 – Message Processing and Dispatching for SNMP
RFC 2273 – SNMPv3 Applications
RFC 2274 – User-based Security Module (USM) for SNMPv3
RFC 2275 – View-based Access Control Model (VACM) for SNMP
RFC 2742 – Definitions of Managed Objects for Extensible SNMP Agents
RFC 2576 – Coexistence between Version1, Version2, and Version3 of the Internet-standard Network Management Framework