Network Management Protocol Description
The Tnm Tcl extension includes
an implementation of the Simple Network Management Protocol (SNMP) which
is used to monitor and control devices on the Internet. The Tnm extension
supports SNMP version 1 (SNMPv1) as defined in RFC
1157, community based SNMP version 2 (SNMPv2c) as defined in RFC
1905, RFC 1906 as
well as SNMP version 3 (SNMPv3) as defined in RFC
2272 and RFC 2274.
The Tcl commands described
here follow the conventions defined in the SNMPv2/SNMPv3 standards. The
differences between SNMPv1, SNMPv2c and SNMPv3 are hidden as far as possible
from the user of this extension by applying automatic conversions where
possible (RFC 2089).
All SNMP messages are sent
or received by using so called SNMP sessions. SNMP sessions are lightweight
objects that keep information about the transport address of the SNMP peer
entity, the authentication mechanism and parameters in use as well as some
parameters that control the behaviour of the SNMP protocol engine itself.
The Tnm extension supports
four different SNMP session types that correspond to SNMP applications
as defined in the architecture for describing SNMP management frameworks
(RFC 2271). A “generator”
SNMP session is used to initiate SNMP get/getnext/getbulk
or set requests and a “listener” SNMP session
is used to receive event notifications (either unacknowledged traps or
acknowledged informs). “Generator” and “listener” SNMP sessions can be
used to implement traditional SNMP manager.
SNMP session receives incoming get/getnext/getbulk or set requests, processes
them and returns response messages. Finally, “notifier”
SNMP sessions allow sending notifications as either SNMP traps or informs.
The combination of “responder” and “notifier” SNMP sessions is traditionally
called an SNMP agent.
The SNMP commands described
in this manual page are often used in combination with the Tnm::mib
command, which allows retrieving information from Management Information
Base (MIB) definitions. The implementation of the SNMP protocol engine
also makes internal calls to the MIB module in order to resolve names or
to apply conversions.
This software is copyrighted
by Juergen Schoenwaelder, the Technical University of Braunschweig, the
University of Twente and other parties. The following terms apply
to all files associated with the software unless explicitly disclaimed
in individual files.
The authors hereby grant
permission to use, copy, modify, distribute, and license this software
and its documentation for any purpose, provided that existing copyright
notices are retained in all copies and that this notice is included verbatim
in any distributions. No written agreement, license, or royalty fee
is required for any of the authorized uses. Modifications to this
software may be copy-righted by their authors and need not follow the licensing
terms described here, provided that the new terms are clearly indicated
on the first page of each file where they apply.
IN NO EVENT SHALL THE AUTHORS
OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL,
OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION,
OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
THE AUTHORS AND DISTRIBUTORS
SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
AND NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN “AS IS” BASIS,
AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGA-TION TO PROVIDE MAINTENANCE,
SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.