summaryrefslogtreecommitdiff
path: root/ASNMP/asnmp-overview.html
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1997-08-04 08:25:27 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1997-08-04 08:25:27 +0000
commit93b4311ec91b2d008ecc3a26200e4a44481494e8 (patch)
treec8f6ac63d26985c0b40ef84e7611871cfffb0b4b /ASNMP/asnmp-overview.html
parent95433e3dbe5d6d6fc4ba640a14d290b609b90a73 (diff)
downloadATCD-93b4311ec91b2d008ecc3a26200e4a44481494e8.tar.gz
*** empty log message ***
Diffstat (limited to 'ASNMP/asnmp-overview.html')
-rw-r--r--ASNMP/asnmp-overview.html106
1 files changed, 106 insertions, 0 deletions
diff --git a/ASNMP/asnmp-overview.html b/ASNMP/asnmp-overview.html
new file mode 100644
index 00000000000..a70e872ad11
--- /dev/null
+++ b/ASNMP/asnmp-overview.html
@@ -0,0 +1,106 @@
+<html>
+<! by Michael R. MacFaden mrm@cisco.com >
+<title>ASNMP Overview</title>
+
+<h1>ASNMP Overview</h1>
+
+<p>The Another SNMP class library is an Object Oriented programming
+toolkit for using IETF standard network management protocols in the
+Internet. The SNMP protocol is perhaps the most ubiquitous management
+protocol running on most very device or application deployed in the
+modern network today.
+
+<p>ASNMP is targeted to programmers that want to write command and
+control (C&C) applications. C&C Applications communicate with
+a variety of objects:
+<sl>
+<li>network devices such as ATM switches, Internet routers,
+LAN bridges and LAN printers
+<li>Routing protocols such as OSPF
+<li>database servers such as ORACLE or Informix.
+
+<p>ASNMP Version 1 implements a blocking SNMP Version 1 with some
+Version 2c additions (Counter32, Counter64 SMI values). See
+SNMP Version 1 as defined in the IETF Request for Comments (RFC)
+<sl>
+<li>1155
+<li>1157
+<li>1215
+<sl>
+<p>Also see the RFC 1902 spec for new SMI datatypes such as Counter64.
+
+<p>ASNMP is built using the CMU SNMP and HP SNMP++ as the base
+classes then modified for use in the ACE framework. About 10% of the API
+changed during code rework. See ASNMP/asnmp/ChangeLog for details.
+
+<h2>Class Heirarchy</h2>
+
+<pre>
+UdpTarget - defines Collection of attributes(address, timeout, etc) used
+ to define a command session.
+Snmp - A logical session between NM app and agent
+Pdu - Pdu contains a vb list , community string, and a command
+Vb - Varbind. A pdu can have zero, one or more of these
+ consists of an Oid to identify the variable and a datatype
+ of one of the SMI values. The oid/value binding is defined
+ in a MIB file (RFC 1155)
+
+<p>The Structure of Managment Information (SMI) datatypes
+and related types are:
+<ul>
+<li>Address->IpAddress->UdpAddress as well as MAC, IPX, IPXSOCK, Netbios
+<li>Unsigned Integer
+<li>Gauge32
+<li>Integer32
+<li>Counter32
+<li>Counter64
+<li>TimeTicks
+<li>OctetStr
+<li>Oid
+</ul>
+
+<hr>
+
+<h2>Sample program</h2>
+<p>A sample Object to get obtain an Agent's Systems' Description
+given an network address and a community string.
+
+class system_id {
+ public:
+ system_id(UdpAddress addr, OctetStr read_community_string)
+ {
+ UdpTarget tgt;
+ Snmp snmp;
+ Pdu pdu;
+ Oid oid("1.3.6.1.2.1.1.1.0");
+ Vb vb(oid);
+ tgt.set_address(addr);
+ tgt.set_read_community(read_community_string);
+ pdu += vb;
+
+ if (snmp.get(pdu, tgt) == 0) {
+ pdu.get_vb(vb, 0);
+ vb.get_value(desc_);
+ }
+ else
+ desc_ = "<error - no value set>"
+ }
+
+ int get_description(OctetStr& description) {
+ description = desc_;
+ return 0;
+ }
+
+private:
+ OctetStr desc_;
+};
+
+<h1>Future Directions</h1>
+<p>Here are some areas for further work
+<sl>
+<li>Add OO mib parser and mib code generator
+<li>Collapse the CMU/HP code into one set of classes.
+<li>Add full V2c support.
+<li>Size/Speed improvements
+</sl>
+</html>