MG-SOFT SNMP Software Development Lab

MG-SOFT WinSNMP toolkit


The Windows SNMP API specification defines a programming interface for network management applications running on Microsoft Windows, Linux, Mac OS X and Solaris platforms, enabling those applications to make use of a logically external SNMP engine or service layer.

WinSNMP provides a single interface to which application developers can program and multiple SNMP software vendors can conform. This specification thus defines the procedure calls, data types, data structures, and associated semantics to which an application developer can program and which an SNMP software vendor can implement.

WinSNMP offers these major benefits, all intended to accelerate the development, dissemination, and use of SNMP network management applications:

  • SNMP enabling technology for functional network management applications (i.e., 'hides' ASN.1, BER, and SNMP protocol details).
  • SNMP service provider independence. A WinSNMP application will run against any compliant WinSNMP implementation.
  • Uniform SNMPv1, SNMPv2c and SNMPv3 support.
  • Thread-safe - MG-SOFT WinSNMP API implementation has been designed in a thread-safe manner and can be used from multi-threaded network management applications

MG-SOFT WinSNMP SDK provides an API for developing SNMPv1, SNMPv2c and SNMPv3 SNMP manager and agent applications running on Microsoft's supported 32-bit and 64-bit Windows operating systems (Windows Vista, Windows Server 2008, Windows 7, Windows Server 2012, Windows 8, Windows 10). Additionally, MG-SOFT also offers WinSNMP SDK for Linux (32-bit and 64-bit Intel x86 architectures) and for Apple Mac OS X (universal binaries for Intel x86 and x86_64 platforms). The WinSNMP API implements industry standard WinSNMP specification and provides database functions, communication functions, PDU functions, varbindlist functions, entity/context functions and utility functions. Within that, API supports both sending and receiving SNMP notifications (traps and informs).

The core WinSNMP API was extended with only a few new functions in order to accommodate the SNMPv3 protocol features. For details check the WinSNMP API documentation that installs along with SNMP Software Development Lab package.

WinSNMP API Version 3.0 has been designed in a manner preserving the full compatibility with older WinSNMP API specifications. The same WinSNMP-based application binary utilizing the WinSNMP V2.0 API will run successfully also when utilizing the WinSNMP API Version 3.0. This means that the WinSNMP API Version 3.0 extension is completely orthogonal to older WinSNMP API specifications and that no modifications were made to any of the previously existing WinSNMP API functions that would change their expected behavior.

The main new feature introduced by the SNMPv3 protocol is security, including (a) authentication and privacy, (b) authorization and access control and (c) standards-based remote configuration of the above two (a and b).

The SNMPv3 engine implemented in the MG-SOFT's WinSNMP module conforms to the SNMPv3 specification documents that were published in December 2002 as full Internet Standards:

  • Introduction and Applicability Statements for Internet Standard Management Framework,
    (RFC 3410, Informational, December 2002).
  • An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks,
    (RFC 3411, STD 62, December 2002).
  • Message Processing and Dispatching for the Simple Network Management Protocol (SNMP),
    (RFC 3412, STD 62, December 2002).
  • Simple Network Management Protocol (SNMP) Applications,
    (RFC 3413, STD 62, December 2002).
  • User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3),
    (RFC 3414, STD 62, December 2002).
  • View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP),
    (RFC 3415, STD 62, December 2002).
  • Version 2 of the Protocol Operations for the Simple Network Management Protocol (SNMP),
    (RFC 3416, STD 62, December 2002).
  • Transport Mappings for the Simple Network Management Protocol (SNMP),
    (RFC 3417, STD 62, December 2002).
  • Management Information Base (MIB) for the Simple Network Management Protocol (SNMP),
    (RFC 3418 , STD 62, December 2002).
  • Coexistence between Version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework,
    (RFC 3584, BCP 74, August 2003).
  • The Advanced Encryption Standard (AES) Cipher Algorithm in the SNMP User-based Security Model,
    (RFC 3826, Standards Track, June 2004).

Together with the MG-SOFT WinMIB module and MG-SOFT MIB Compiler, MG-SOFT WinSNMP offers capabilities that fully support developing network management software targeting Windows, Linux, Mac OS X and Solaris operating systems. In addition to that, SNMP EasyAgent SDK provides a straight-forward means for adding SNMP manageability to existing Windows applications.

The MG-SOFT WinSNMP SDK contains many WinSNMP sample applications with full source code in order to illustrate the usage of the WinSNMP API.