Title: Simple Network Management Protocol SNMP
1 Simple Network Management Protocol (SNMP)
2SNMP Simple Network Management Protocol
- Network management of a TCP/IP internet consists
of network management stations (managers)
communicating network elements (hosts, routers,
terminal servers) - TCP/IP network management - 3 entities
- Management Information Base(MIB) specifies what
variables are maintained - Structure of Management Information (SMI) - A set
of common structures and identification - SNMP - The protocol between manager and element
3 What is SNMP ?
- In today's complex network of routers, switches,
and servers, it can seem like a daunting task to
manage all the devices on your network and make
sure they're not only up and running but
performing optimally. This is where the Simple
Network Management Protocol (SNMP) can help. SNMP
was introduced in 1988 to meet the growing need
for a standard for managing Internet Protocol
(IP) devices. - SNMP provides its users with a "simple" set of
operations that allows these devices to be
managed remotely.
4SNMP Protocol Overview
- A network manager is a person responsible for
monitoring and controlling the hardware and
software systems that comprise an internet. - A manager works to detect and correct problems
that make communication inefficient or impossible
and to eliminate conditions that will produce the
problem again.
5SNMP History
6SNMP Goals
- UBIQUITY
- PCs
- INCLUSION OF MANAGEMENT SHOULD BE INEXPENSIVE
- SMALL CODE
- LIMITED FUNCTIONALITY
- MANAGEMENT EXTENSIONS SHOULD BE POSSIBLE
- NEW MIBs
- MANAGEMENT SHOULD BE ROBUST
- CONNECTIONLESS TRANSPORT
7SNMP Structure
8SNMP Structure
9Standards
- SMI
- STRUCTURE OF MANAGEMENT INFORMATION
- RFC 1155
- MIB
- MANAGEMENT INFORMATION BASE
- RFC 1213
- LARGE NUMBER OF ADDITIONAL MIBs EXIST
- SNMP
- SIMPLE NETWORK MANAGEMENT PROTOCOL
- RFC 1157
- NAME IS USED IN A MORE GENERAL SENSE
- NEW VERSIONS SNMPv2 SNMPv3
10Protocol
- As the creator of SNMP wanted it to be really
simple, they had - to build it over an uncomplicated transport
protocol. They need - to keep the number of protocol messages type
small and also a - simple type like integer and string .
- UDP has been chosen and recommended for SNMP
transport - protocol. This is fine because at the beginning,
SNMP was - targeted at managing Internet nodes and the
predominant - Internet protocol suite TCP/IP
11Use of UDP Port Numbers
- UDP application port numbers are used to
- identify the origin and the destination endpoints
of a - message. Most standard service operate out of
well- - known ports, their port number are predefined so
- that their partner know where they are. Many
client - applications take a port number out of a pool of
- available port numbers, and they let it free when
- they are done with it.
12SNMP use of UDP port numbers
13The Message Format
- The five SNMP Â Protocol Data Units (PDU) are in
SNMP V.1 - Get-request is used to request the values of
one or more MIB variables. - Get-next-request is used to read the values
of variables in the MIB but sequentially. It is
often used to read though a table of values.
After a first read with the get-request,
get-next-request are used to read through the
remaining rows. - Set-request is used to update one of the MIB
values. - Get-response is returned as an answer to a
get-request, a get-next-request or set-request
message. - Trap is used to support significant events
(e.g. a cold or a warm restart or a link that has
gone down).
14Format of the five SNMP messages
IP datagram
UDP datagram
SNMP message
variables to get/set
common SNMP header
get/ set header
PDU type (0-3)
IP
UDP header
error status (0-5)
Version (0)
request ID
error index
...
community
name
name
value
value
header
20 bytes
8 bytes
PDU type (4)
agent addr
trap type (0-6)
time stamp
specific code
...
name
enterprise
value
trap header
Interesting variables
15PDU types for SNMP messages PDU Type Name
0 get-request 1 get-next-request
2 get-response 3
set-request 4 trap The
community is a character string that is a
clear-text password between the manger and agent.
A common value is the 6-character string public.
16 Structure of Management Information A set of
common structures and identification scheme used
to reference the variables in the MIB. SNMP uses
only a few different types of data. INTEGER OCTE
T STRING DisplayString OBJECT
IDENTIFIER IpAddress PhysAddress TimeTicks SEQ
UENCE
17 Object Identifiers An object identifier is a
data type specifying a named object. An object
identifier is a sequence of integers separated by
decimal points These integers traverse a tree
structure, similar to the DNS or a Unix
filesystem. For example, the name corresponding
to the object identifier 1.3.6.1.2.1 is
iso.org.dod.internet.mgmt.mib-2.
18Structure of the Managed Objects
The main ISO/CCITT Tree
19MIB
- Each device (node) maintains one or more
variables that - describe its state. In the SNMP literature, these
variables are - called objects. The collection of all possible
objects in a - network is given in a data structure called the
MIB - (Management Information Base). MIB is a set of
named - items that an SNMP agent understands. To monitor
or control a - remote computer, a manager must fetch or store
values to MIB - variables (objects).
20Interactions between a manager and an agent
21Messages sent between a manager and an agent
22Development of the MIB Node
The MIB node and its object identifiers
23Encoding
- Formal specification of SNMP uses Abstract Syntax
Notation 1 (ASN.1) - describes data and its
properties - The ASN.1 definition of datatype IpAddress looks
like - IpAddress Application 0
- IMPLICIT OCTET STRING (SIZE(4))
- Actual encoding of bits uses Basic Encoding Rules
(BER) - An integer such as 64 takes 3 bytes using BER.
One byte says value is integer, how many bytes to
store, and final one is binary value
24- NET-SNMP
- Various tools relating to the Simple Network
Management Protocol - including
- An extensible agent (snmpd)
- An SNMP library
- Tools to request or set information from SNMP
agents - (snmpget, snmpset, snmpgetnext, snmpwalk,
) - Tools to generate and handle SNMP traps
- A version of the unix 'netstat' command using
SNMP - A Tk/Perl mib browser
- These tools are provided on Linux 2.4.x.
25The snmpget command can be used to retrieve data
from a remote host given its host name,
authentication information and an OID. As a
simple example snmpget -c demopublic -v 2c
test.net-snmp.org system.sysUpTime.0 system.
sysUpTime.0 Timeticks (586731977) 67 days,
214839.77 To set the data on a remote host
snmpset -c demopublic -v 2c test.net-snmp.org uc
dDemoPublicString.0 s PFITC
26- SNMP network management software
- NetView for AIX,
- HP OpenView,
- SunNet Manager,
- Novell NetWare Management System