Glossary Item Box
PowerSNMP is organized as 3 major sub-systems:
Typical applications will drag a Manager or Agent component onto a form and will manipulate the component using a UI element like a button. The Manager provides synchronous blocking methods that return results from each method, as well as asynchronous non-blocking methods that send requests without waiting for a response. In this case the application must use events to capture the results. The Agent, however, can only operate using asynchronous non-blocking techniques. Tools are provided that make it very easy to respond to arriving SNMP requests.
Key to the entire process is the Message.Variables collection. This collection allows the application to easily add or iterate through the variables that are included in each message. Each Variable object typically binds an instance id (IID), provided as a string in ASN.1 notation, to a simple encoded tagged type that is used to provide a value for that IID. The Management Information Base (MIB) provides a definition of what IID value is represented as what kind of tagged type (Integer, Counter, TimeTicks, OctetString, etc.). This representation was designed to be extensible to sequences of tagged types and other complex structures like tables, so Dart includes tools that will convert any MIB file into C# or VB class definitions that can be added to your project.
To summarize, you will probably use the Manager or Agent component as your core component, and will employ it to send and receive SNMP messages that are dynamically encoded/decoded so that you only manipulate the object model of each message. Most of your development time will be spent on the core functionality of your application, with little thought given to the complex byte-level manipulation going on “under the hood”.
Send comments on this topic.
Documentation version 1.2.0.0.
© 2008 Dart Communications. All rights reserved.