http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 2 of 23
Contents
1 Overview and Basic Concepts
2 Management Information Base (MIBs)
2.1 Abstract Syntax Notation One (ASN.1)
3 SNMP Basic Components
3.1 SNMP Architecture
3.1.1 Master Agent
3.1.2 Subagent
3.1.3 Management Station
3.2 SNMP Protocol
3.2.1 SNMPv1 and SMI-Specific Data Types
3.2.1.1 Simple data types
3.2.1.2 Application-wide data types
3.2.2 SNMPv1 MIB Tables
3.2.3 SNMPv2 and Structure of Management
Information
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 3 of 23
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 4 of 23
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 5 of 23
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 6 of 23
1. Managed devices
2. Agents
3. Network-management systems (NMSs)
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 7 of 23
SNMP Architecture
The SNMP framework consists of master agents, subagents and
management stations.
Master Agent
A master agent is a piece of software running on a SNMP-
capable network component, for example a router that responds
to SNMP requests from the management station. Thus it acts as
a server in client-server architecture terminology or as a daemon
in operating system terminology. A master agent relies on
subagents to provide information about the management of
specific functionality.
Subagent
A subagent is a piece of software running on a SNMP-capable
network component that implements the information and
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 8 of 23
Management Station
The manager or management station is the final component in
the SNMP architecture. It functions as the equivalent of a client
in the client-server architecture. It issues requests for
management operations on behalf of a administrator or
application and receives traps from agents as well.
SNMP Protocol
SNMPv1 and SMI-Specific Data Types
The SNMPv1 SMI specifies the use of a number of SMI-specific
data types, which are divided into two categories:
Three simple data types are defined in the SNMPv1 SMI, all of
which are unique values:
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 9 of 23
31
1. The integer data type is a signed integer in the range of -2
31
to 2 -1.
2. Octet strings are ordered sequences of 0 to 65,535 octets.
3. Object IDs come from the set of all object identifiers
allocated according to the rules specified in ASN.1.
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 10 of 23
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 11 of 23
units (PDUs):
Typically, SNMP uses UDP ports 161 for the agent and 162 for
the manager. The Manager may send Requests from any
available ports (source port) to port 161 in the agent (destination
port). The agent response will be given back to the source port.
The Manager will receive traps on port 162. The agent may
generate traps from any available port.
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 12 of 23
SNMPv3
Simple Network Management Protocol version 3 is defined by
RFC 3411–RFC 3418 (also known as 'STD0062'). Simple
Network Management Protocol version 3 primarily added
[2]
security and remote configuration enhancements to SNMP.
SNMPv3 is the current standard version of SNMP as of 2004.
The IETF considers earlier versions as "Obsolete" or
"Historical". In December 1997 the "Simple Times" newsletter
published several articles written by the SNMPv3 RFC editors
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 13 of 23
[3]
explaining some of the ideas behind version 3 specifications.
[4]
SNMPv3 provides important security features:
Message integrity to ensure that a packet has not been
tampered with in transit.
Authentication to verify that the message is from a valid
source.
Encryption of packets to prevent snooping by an
unauthorized source.
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 14 of 23
Version 2
Version 2 was not widely adopted due to serious disagreements
over the security framework in the standard.
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 15 of 23
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 16 of 23
Proxy Agents
A SNMPv2 agent can act as a proxy agent on behalf of SNMPv1
managed devices, as follows:
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 17 of 23
Version 3
The IETF recognizes Simple Network Management Protocol
version 3 as defined by RFC 3411–RFC 3418 (also known as
STD0062) as the current standard version of SNMP as of 2004.
The IETF considers earlier versions as "Obsolete" or
"Historical".
Usage Examples
Monitoring device uptimes (sysUpTimeInstance)
Inventory of OS versions (sysDescr)
Collect interface information (ifName, ifDescr, ifSpeed,
ifType, ifPhysAddr)
Measuring network interface throughput (ifInOctets,
ifOutOctets)
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 18 of 23
Negative Impact
SNMP implementations vary across platform vendors. In some
cases, SNMP is often an added feature, and not an element of the
core design. SNMP's tree structure and linear indexing may not
always mate well with the internal data structures that are
elements of a platform's basic design. Using SNMP to query
certain data sets may result in high CPU utilization that has
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 19 of 23
Index Shifting
Modular devices may renumber their indexes whenever slotted
hardware is added or removed. Index values are typically
assigned at boot time and remain fixed until the next reboot.
Hardware added while the device is 'live' may have their indexes
assigned at the end of the existing range, only to be reassigned at
the next reboot, causing a massive shift for all hardware objects
that are polled *after* the new addition. Network inventory and
monitoring tools may then experience corruption and mismatch
polled data, if unable to account for this behaviour.
Security Implications
1. Because they do not implement encryption, versions 1 and
2c are subject to packet sniffing of the clear text community
string from the network traffic
2. Because they do not implement a challenge-response
handshake, all versions are subject to bruteforce and
dictionary attacks for guessing the community
strings/authentication strings
3. Although SNMP works over TCP and other protocols, it is
most commonly used over UDP which is connectionless and
vulnerable to IP spoofing attacks. Thus, all versions are
subject to bypassing access lists that might have been
implemented to restrict snmp access.
4. Providing configuration/write features that are mostly
overlooked in favor of the read/reporting features, the
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 20 of 23
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 21 of 23
See also
Management information base (MIB)
Object identifier (OID)
Remote monitoring (RMON)
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 22 of 23
AgentX
Simple Gateway Monitoring Protocol (SGMP)
Common management information protocol (CMIP)
Common management information service (CMIS)
CMIP over TCP/IP (CMOT)
Net-SNMP
External links
SimpleWeb
Description of the SNMP packet breakdown
SNMP FAQ part 1
SNMP FAQ part 2
Implementations
Net-SNMP (Net-SNMP: Open source SNMP
implementation)
Netsnmpj: Open source SNMP for Java
OpenSNMP: multi-threaded SNMPv3 engine
PySNMP: pure-Python module, BSD license
TinySNMP: an easy to configure minimal SNMPv1 agent
.SNMPv3 for .NET
versatile-serializing.net, .NET library, contains a SNMP
V2C implementation
References
1. ^ W. Stallings SNMP, SNMPv2, SNMPv3, and RMON 1 and
2 3rd Edition, Addison Wesley, 1998. ISBN 978-
0201485349
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07
Simple Network Management Protocol - Wikipedia, the free encyclopedia Page 23 of 23
http://en.wikipedia.org/w/index.php?title=Simple_Network_Management_Protocol&printabl... 12/7/07