❚ Configuration Management
❙ Keeping track of device settings and how they function
❚ Fault Management
❙ Dealing with problems & emergencies in the network
❚ Performance Management
❙ How smoothly is the network running?
❙ Can it handle the workload it currently has?
❚ Security Management
❙ Unwanted access restriction & encryption
❚ Accounting Management
❙ Cost management and chargeback assessment
02/18/09 2
The Three Parts of SNMP
❚ Structure of Management Information (SMI)
❙ Rules specifying the format used to define objects managed
on the network that the SNMP protocol accesses
❚ SNMP Protocol
❙ Defines format of messages exchanged by management
systems and agents.
❙ Specifies the Get, GetNext, Set, and Trap operations
02/18/09 3
Languages of SNMP
❚ Abstract Syntax Notation One (ASN.1)
❙ Used to define the format of SNMP messages
and managed objects (MIB modules) using an
unambiguous data description format
02/18/09 4
SMI v1 & v2
❚ SMI v2 is in current use. Defined in RFC 2576, 2578, 2579 & 2580
❚ Defines different types of MIB Objects, like integers, strings, and more
complex data types
❚ Provides hierarchical structure for naming MIB objects, with a unique name
for each object
02/18/09 5
MIB Attributes wrt SMI v2
❚ Object Name: Unique name to identify the objects
❚ Object Syntax: Defines the data type of information that the object
contains
❙ Regular or Base Data Types, e.g. Integers or strings
❙ Tabular Data Types having a collection of multiple data elements
02/18/09 7
SMIv2 Access Values
Max-Access-Value Description
read-create
Object can be read, written or created
02/18/09 8
SMIv2 Object Definition Example
sysLocation OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The physical location of this node (e.g., 'telephone closet,
3rd floor'). If the location is unknown, the value is the zero-length string."
::= { system 6 }
02/18/09 9
MIB as Database
02/18/09 10
SNMP MIB Hierarchy
02/18/09 11
RFC 1213 or MIB 2 (Part)
sysDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-only
STATUS mandatory
DESCRIPTION "A textual description of the entity. This value should include the full name and version
identification of the system's hardware type, software operating-system, and networking software.
It is mandatory that this only contain printable ASCII characters."
::= { system 1 }
sysObjectID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
ACCESS read-only
STATUS mandatory
DESCRIPTION "The vendor's authoritative identification of the network management subsystem
contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and
provides an easy and unambiguous means for determining `what kind of box' is being managed.
For example, if vendor `Flintstones, Inc.' was assigned the subtree 1.3.6.1.4.1.4242, it could assign
the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'." ::= { system 2 }
sysUpTime OBJECT-TYPE
SYNTAX TimeTicks
ACCESS read-only
STATUS mandatory
DESCRIPTION "The time (in hundredths of a second) since the network management portion of the
system was last re-initialized." ::= { system 3 }
02/18/09 12
MIB vs OID
02/18/09 13
What is SNMP?
❚ SNMP is a protocol that facilitates for remote and
local management of items on the network
including servers, workstations, routers, switches
and other managed devices.
❚ Comprised of Agents and Managers
02/18/09 14
SNMP Manager-Agent
SNMP Management System SNMP Managed System
Managed
Resources
Respons
Respons
Objects
Get
Get
Event
Event
Nex
Nex
Get
Get
Get
Set
Set
e
Get
t
t
e
IP IP
Link Link
Communication Network
02/18/09 15
Nodes
❚ Management nodes
❙ Typically a workstation running some network management & monitoring software
❚ Managed nodes
❙ Typically runs an agent process that services requests from a management node
02/18/09 16
Managed Objects & MIB
02/18/09 17
SNMP’s Client-Server Architecture
02/18/09 18
What are Traps?
❚ Traps can provide the date, time and event message associated with
the events
02/18/09 19
SNMP Versions
❚ SNMPv1
❙ Community based (Read/Write)
❙ Read Operations: Get & Get Next Operators
❙ Write Operations: Set Operators
❚ SNMPv2c
❙ Community Based (Read/Write)
❙ Improved efficiency & Performance: Get Bulk Operator
❙ Richer error handling: Errors & Exceptions
❙ Confirmed event notifications: Inform Operator
❚ SNMPv3
❙ Access restriction based on Users & Views (USM & VACM)
❙ Access restriction using MD5 (Message Digest Algorithm) &
SHA (Secure hash Algorithm)
02/18/09 ❙ Higher Security by utilizing DES (Data Encryption Standard ) 20
SNMPv3 User Security Model
(USM)
❙ Modification of information
❙ Masquerade
❙ Disclosure
02/18/09 21
SNMP v3 USM Configuration
02/18/09 22
SNMP v3 USM Levels
❚ noAuthnoPriv - No security applied
02/18/09 23
SNMPv3 View-Based Access
Control Model (VACM)
02/18/09 25
SNMP Basic Operations
02/18/09 26
SNMP v1 Message Format
02/18/09 27
SNMP v1 PDU Format
02/18/09 28
SNMP v1 Trap-PDU Format
(=4)
02/18/09 29
SNMP v2c Message Format
02/18/09 30
SNMPv2c/v3 PDU Format
02/18/09 31
SNMP v3 Message Format
02/18/09 32
Ports & UDP
Ethernet
Frame IP CRC
Packet
UDP
SNMP Message
Datagram
02/18/09 33
SNMP Evolution
SNMPv1 SNMPv2c
SNMPv3
Plaintext Community Strings Yes Yes No
02/18/09 34
SNMP Implementation for
Router & Switches
SNMP can help determining:
❚ Device faults through Traps and Polls
❚ Device Interface Errors, like;
❙ Interface Collision
❙ Interface I/O Errors
❙ Interface CRC Errors, etc
❚ Device Performance Status notifications, like;
❙ CPU Utilization,
❙ Memory Utilization,
❙ Hard Disk Usage etc
❚ Traffic Inflow/Outflow Statistics
❙ Interface I/O Packets/sec
❙ Interface I/O Discards
02/18/09 35
SNMP Implementation for
Router & Switches
❚ Device Configuration, like;
❙ Installation of new Software
❙ Tracking changes in control configuration
❙ Change Management, etc
❚ Inventory Control
❙ Hardware
❘ Components
❘ Identity
❘ Location
❙ Software
❘ Version
02/18/09 36
SNMP Implementation in
Routers & Switches
❚ Enable SNMP
02/18/09 37
Thank You !!!
02/18/09 38