Simple Network Management Protocol SNMP



Similar documents
8 Tutorial: Using ASN.1

Simple Network Management Protocol

INTERNET MANAGEMENT PROTOCOLS TUTORIAL STOCKHOLM, SWEDEN 29 OCTOBER 1999 AIKO PRAS UNIVERSITY OF TWENTE THE NETHERLANDS

Network Management. Jaakko Kotimäki. Department of Computer Science Aalto University, School of Science. 21. maaliskuuta 2016

SNMP Basics BUPT/QMUL

SNMP Overview. Jean-Luc Ernandez ESSI 3ème Année 2005/2006

SNMP....Simple Network Management Protocol...

SNMP and SNMPv2: The Infrastructure for Network Management

Outline of the SNMP Framework

SNMP and Network Management

Introduction Network Management Framework Structure of Management Information Names Instances Syntax...

Chapter 15. Network management

SNMP Simple Network Management Protocol

INTRODUCTION TO SNMP AND MIB

System and Network Management

TÓPICOS AVANÇADOS EM REDES ADVANCED TOPICS IN NETWORKS

Managing and Securing Computer Networks INFO-056

TELE9752 Network Operations and Control Lecture 4: Management Protocols

What is it? SNMP. Agenda. Four Basic Elements

SNMP Agent Plug-In Help Kepware Technologies

Chapter 38 Simple Network Management Protocol (SNMP)

SNMP SMI Structure of Management Information

TELE 301 Network Management

ITEC310 Computer Networks II

Network Management (NETW-1001)

Simple Network Management Protocol

SNMP. Simple Network Management Protocol

SNMP Agent Plug-In Help Kepware Technologies

Dave Perkins. September, SNMP MIB User,

The ABCs of SNMP. Info Sheet. The ABC of SNMP INTRODUCTION. SNMP Versions

Simple Network Management Protocol (SNMP) Primer

Simple Network Management Protocol

SNMP Extensions for a Self Healing Network

Table of Contents. Overview...2. System Requirements...3. Hardware...3. Software...3. Loading and Unloading MIB's...3. Settings...

Simple Network Management Protocol

Simple Network Management Protocol (SNMP) Amar J. Desai Graduate Student University of Southern California Computer Science

SNMP. Overview. LabTech

RaneNote SNMP: SIMPLE? NETWORK MANAGEMENT PROTOCOL

Network Monitoring Using SNMP

SNMP GetRows: an effective scheme for retrieving management information from MIB tables

R07. IV B.Tech. II Semester Regular Examinations, April, NETWORK MANAGEMENT SYSTEMS (Information Technology)

Network Management. What is network management?

From SNMP to Web services-based network management. Jeroen van Sloten

Integrated Local Management Interface (ILMI) Specification Version 4.0

Simple Network Management Protocol

Chapter 12: Network Management

Vorlesung Netzmanagement Übung MIB und ASN.1 Seite 1 von 8. Übung MIB und ASN.1

SNMP Driver Help Schneider Electric

Remote Management. Vyatta System. REFERENCE GUIDE SSH Telnet Web GUI Access SNMP VYATTA, INC.

SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP)

AlarmTraq SNMP with Avaya IP Office Version 3.2

October Mapping Simple Network Management Protocol (SNMP) Notifications to SYSLOG Messages

Network Management & Monitoring Introduction to SNMP

SNMP Driver Help Kepware, Inc.

This Lecture. NWEN 403 Advanced Network Engineering. Network Management. Outline. Network management. Qiang Fu

Section 4: Interim Local Management Interface Specification

Chapter 9 Network Management

TUTORIAL SNMP: STATUS AND APPLICATION FOR LAN/MAN MANAGEMENT. Aiko Pras

An Overview of SNMP on the IMG

KwikNet. SNMP Agent. User's Guide. First Printing: February 15, 1999 Last Printing: September 15, Manual Order Number: PN303-9S

Cisco CMTS Router MIB Overview

Chapter 9 Network Management

Vanguard Applications Ware Basic Protocols. SNMP/MIB Management

Chapter 8 Network Management. Chapter 8 outline. What is network management? Chapter 8: Network Management

Simple Network Management Protocol

Network Monitoring & Management Introduction to SNMP

This watermark does not appear in the registered version - SNMP and OpenNMS. Part 1 SNMP.

NETWORK MANAGEMENT CHAPTER 20-1

BEA WebLogic Server. and BEA WebLogic Express. SNMP Management Guide

Link Layer Discovery Protocol and MIB

White Paper Case Study:

INTERNET OF THINGS 1

Configuring SNMP Monitoring

SNMP SNMP Overview CHAPTER

Network Management & Monitoring Introduction to SNMP

Simple Network Management Protocol - SNMP v1, ASN, MIB, BER. Network Management

NEC AMERICA, INC. Product Development Evaluation Division NEAX IPX /NEAX IPS. SNMP Implementation

Simple Network Management Protocol

Lecture 11: SNMPv2 MIB and PDUs

SNMP Reference Manual

Integrating PATROL with SNMP

Oracle WebLogic Server

Network Management in a Telco and its interaction with administrative IT systems

Table of Contents. Cisco Fault Management of ONS Using Simple Network Management Protocol

SolarWinds Technical Reference

SNMP Protocol for Easy Network Management

PA160: Net-Centric Computing II. Network Management

SEVENSTAX-SNMP. User Manual

Configuring Simple Network Management Protocol (SNMP)

Simple Network Management Protocol (SNMP) version 3.4

TECHNICAL NOTES. Technical Notes P/N REV A01. EMC ITOI VoIP Management Suite 8.1. May, 2012

Network Management. Network Management. Copyright and acknowledgments. Acknowledgements. Pag. 1

Transcription:

Kommunikationssysteme (KSy) - Block 7 Simple Network Management Protocol SNMP Dr. Andreas Steffen 2000-2001 A. Steffen, 12.02.2001, KSy_SNMP.ppt 1 Definitions client/server network management application SNMP manager, SNMP agent SNMP management information base (MIB) Message Formats SNMP message format SNMP message types set / get / trap SNMP protocol data units (PDUs) Set- / Get-PDU format Variable-bindings lists Trap-PDU format Object Definitions Predefined SNMP types OBJECT-TYPE macros Table definitions Instance identifiers Standard MIB-II Overview

SNMPv1 IP-based Network Management Management application Application manages object SNMP managed objects GetRequest GetNextRequest SetRequest GetResponse Trap Central MIB GetRequest GetNextRequest SetRequest GetResponse Trap SNMP Manager UDP IP Layer 1 & 2 SNMP Messages Network SNMP Agent UDP IP Layer 1 & 2 A. Steffen, 12.02.2001, KSy_SNMP.ppt 2 Simple Network Management Protocol (SNMP) SNMP is a communication protocol that has gained widespread acceptance since 1993 as a method of managing IP-based networks, including individual network devices. SNMP was developed by the IETF (Internet Engineering Task Force), and is applicable to any IP network, as well as other types of networks. SNMP defines a client/server relationship. The client program (called the SNMP manager) makes connections to a server program (called the SNMP agent) which resides on a remote network device, and serves information to the network manager regarding the device s status. On an abstract level, SNMP can be seen as a service, a management application makes use of, to manage distributed objects. The SNMP manager maintains a central database (called the SNMP Management Information Base or MIB) that is fed by means of queries to the SNMP agents distributed throughout the network. A MIB consists of a standard set of statistical and control values defined by various IETF RFCs and can be extended with values specific to a particular agent through the use of private or vendor MIBs. SNMP Messages SNMP messages are transported using the unreliable UDP protocol. This has the advantage that control connections will not hang indefinitely when an SNMP agent becomes temporarily unavailable or goes off-line altogether. On the negative side messages can get lost, especially in the critical case when networks become congested and management information is most needed. Source: An Introductory Overview of SNMP, diversified data resources, inc., Novato CA, http://www.ddri.com

SNMPv1 Protocol Data Units I General Message Format (RFC 1157) version community data Message ::= SEQUENCE { version INTEGER {version-1(0)}, community OCTET STRING, data PDUs } PDUs::= CHOICE { get-request [0] IMPLICIT PDU, get-next-request [1] IMPLICIT PDU, get-response [2] IMPLICIT PDU, set-request [3] IMPLICIT PDU, trap [4] IMPLICIT Trap-PDU } A. Steffen, 12.02.2001, KSy_SNMP.ppt 3 SNMP Message Format The SNMP message format is defined using the abstract syntax notation #1 (ASN.1) and encoded for transmission over UDP using the Basic Encoding Rules (BER). SNMP Message Fields version SNMP exists in three versions: SNMPv1 and SNMPv2, both of which are concurrently used by SNMP managers depending on the capabilities of a particular SNMP agent. SNMPv3 introduced a certain number of security concepts (secure authentication / encryption) that had been neglected in the earlier versions. Due to its complexity and experimental status SNMPv3 is still not widely used. community The community name designates a management zone controlled by a SNMP management application. It is used primarily as a password, offering a rudimentary protection against unauthorized read/write access to SNMP information. The default values are public for get requests and private for set requests. data The data part consists of a Protocol Data Unit (PDU) whose format depends on the particular SNMP message to be sent. SNMP Message Types get-request requests the current values of one or several objects get-next-request fetches the next object in lexigraphical order and is used to traverse MIB tree structures and/or MIB tables. get-bulk-request (v2 only) allows to fetch a MIB subtree or a MIB table with a single request message. set-request used to set the values of one or several objects. Rarely used due to security reasons. get-response contains either the result of a get-request or is used as an acknowledgement for a set-request. trap is sent by an SNMP agent to one or several pre-configured SNMP manager when exceptional events like e.g. alarms or failures occur.

SNMPv1 Protocol Data Units II PDU Format (RFC 1157) requestid errorstatus errorindex variable-bindings PDU ::= SEQUENCE { request-id INTEGER, error-status INTEGER { noerror (0), toobig (1), nosuchname(2), badvalue (3), readonly (4), generr (5) }, error-index INTEGER, variable-bindings VarBindList } A. Steffen, 12.02.2001, KSy_SNMP.ppt 4 PDU Format request-id used by an SNMP manager to correlate incoming responses with outstanding requests. In cases where an unreliable datagram service is being used, the request-id also provides a simple means of identifying messages duplicated by the network. error-status a non-zero instance of error-status in a get-response is used to indicate that an exception occurred while processing a request. error-index in case of an non-zero error-status, the error-index variable may provide additional information by indicating which variable in the variablebindings list caused the exception. variable-bindings - a variable binding, or VarBind, refers to the pairing of the name of a MIB variable to the variable's value. A VarBindList is a simple list of variable names and corresponding values. Some PDUs are concerned only with the name of a variable and not its value (e.g., the GetRequest-PDU). In this case, the value portion of the binding is ignored by the protocol entity. However, the value portion must still have valid ASN.1 syntax and encoding. It is recommended that the ASN.1 value NULL be used for the value portion of such bindings. Source: RFC 1157 A Simple Network Management Protocol (SNMP)

SNMPv1 Protocol Data Units III readonly error-code got lost in RFC 1157 (1) If, for any object named in the variablebindings field, the object is not available for set operations in the relevant MIB view, then the receiving entity sends to the originator of the received message the GetResponse-PDU of identical form, except that the value of the error-status field is nosuchname, and the value of the error-index field is the index of said object name component in the received message. (2)... badvalue... (3)... toobig... (4)... generr... -- SNMPv2 introduces notwritable A. Steffen, 12.02.2001, KSy_SNMP.ppt 5 readonly error code not used due to editor s error in RFC 1157 When a set-request tries to overwrite a read-only MIB variable, the resulting get-response is expected to contain a readonly(4) error-code. Instead the nosuchname(2) error-code is usually returned by the SNMP agent. The reason for this strange behaviour is due to a mishap that occurred in the final draft for RFC 1157. The paragraph describing the use of the readonly error-code got inadvertently deleted by the editor. After acceptance of RFC 1157 this could not be corrected any more, so the error-code nosuchname was selected as a work-around value. SNMPv2 introduced a new error-code notwritable(17) to cover the readonly error case.

SNMPv1 Protocol Data Units IV Variable-Bindings Format (RFC 1157) var-bind 1 name value var-bind 2 name value... var-bind n name value VarBindList ::= SEQUENCE OF VarBind VarBind ::= SEQUENCE { name ObjectName, value ObjectSyntax } ObjectName ::= OBJECT IDENTIFIER ObjectSyntax ::= CHOICE { simple SimpleSyntax, application-wide ApplicationSyntax } A. Steffen, 12.02.2001, KSy_SNMP.ppt 6 VarBindList A VarBindList is an ASN.1 sequence containing a variable number of variablebindings. VarBind A variable-binding or VarBind is an object name / object value pair. The object name is specified using an ASN.1 object identifier (OID) and the corresponding object value is either of a simple type or an application-specific type.

SNMPv1 Protocol Data Units V Predefined SNMP Types (RFC 1155) SimpleSyntax ::= CHOICE { number INTEGER, string OCTET STRING, object OBJECT IDENTIFIER, empty NULL } ApplicationSyntax::= CHOICE { address NetworkAddress, counter Counter, gauge Gauge, ticks TimeTicks, arbitrary Opaque } NetworkAddress::= CHOICE { internet IpAddress } A. Steffen, 12.02.2001, KSy_SNMP.ppt 7 Predefined SNMP Types Simple Types SNMP uses a subset of the available ASN.1 simple types. Allowed are INTEGER [UNIVERSAL 2] OCTET STRING [UNIVERSAL 4] OBJECT IDENTIFIER [UNIVERSAL 6] NULL [UNIVERSAL 5] Predefined SNMP Types Constructed Types SNMP uses only the SEQUENCE and SEQUENCE OF constructed types, making parsing at the receiver much easier by banning the SET and SET OF constructs SEQUENCE [OF] [UNIVERSAL 16] Predefined SNMP Types Application-Wide Types RFC 1155 defines the following application-wide types: IpAddress [APPLICATION 0] Counter [APPLICATION 1] Gauge [APPLICATION 2] TimeTicks [APPLICATION 3] Opaque [APPLICATION 4]

SNMPv1 Protocol Data Units VI Application-wide SNMP Types (RFC 1155) IpAddress ::= [APPLICATION 0] IMPLICIT OCTET STRING (SIZE (4)) 160.85.128.1 A0 55 80 01 Counter Gauge ::= [APPLICATION 1] IMPLICIT INTEGER (0..4294967295) ::= [APPLICATION 2] IMPLICIT INTEGER (0..4294967295) 0 2 31 0 2 31 TimeTicks ::= [APPLICATION 3] IMPLICIT INTEGER (0..4294967295) 0 0 1 10 2 20 [ms] Opaque ::= [APPLICATION 4] IMPLICIT OCTET STRING A. Steffen, 12.02.2001, KSy_SNMP.ppt 8

SNMPv1 Protocol Data Units VII Trap-PDU Format (RFC 1157) Trap-PDU ::= SEQUENCE { enterprise OBJECT IDENTIFIER, agent-addr NetworkAddress, generic-trap INTEGER { coldstart (0), warmstart (1), linkdown (2), linkup (3), authenticationfailure(4), egpneighborloss (5), enterprisespecific (6) }, specific-trap INTEGER, time-stamp TimeTicks, variable-bindings VarBindList } -- enterprise OID equals sysobjectid A. Steffen, 12.02.2001, KSy_SNMP.ppt 9 Trap-PDU Format enterprise contains value of the standard MIB object sysobjectid uniquely identifying the manufacturer and model of the managed network entity that generated the trap. agent-addr Network address of the network entity that generated the trap. generic-trap any of the standard trap causes listed above. specific-trap details the trap cause in case of an enterprisespecific(6) trap. time-stamp - time elapsed between the last (re)initialization of the network entity and the generation of the trap. variable-bindings - The significance of the variable-bindings component of the Trap-PDU is implementation-specific.

SNMPv2 Defining Objects The OBJECT-TYPE Macro (RFC 1212) system(1) sysdescr(1) sysobjectid(2) sysuptime(3) syscontact(4) sysuptime OBJECT-TYPE ObjectSyntax SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "The time (in hundredths of a second) ObjectName since the network management portion of the system was last re-initialized." ::= { system 3 } A. Steffen, 12.02.2001, KSy_SNMP.ppt 10 ASN.1 Macros In order to facilitate the use of tools for processing the definition of the MIB, the OBJECT-TYPE macro is used for specifying MIB objects. This macro permits the key aspects of an object type to be represented in a formal way.

SNMPv2 Defining Tables I Table of Network Interfaces (RFC 1213) interfaces(2) ifnumber(1) iftable(2) ifentry(1) ifindex(1) ifdescr(2) iftype(3) ifmtu(4) ifspeed(5)... iftable ifentry ifindex, ifdescr, etc ifnumber head of table rows of table columns of table number of rows A. Steffen, 12.02.2001, KSy_SNMP.ppt 11 MIB Table Objects Two-dimensional table objects must be used if several instances of an object must be managed. Since ASN.1 object identifiers are organized as nodes in a hierarchical tree. Table rows representing the object instances are the leaves attached below a node defining the table column standing for a MIB object type. A typical example for a MIB table object are the parameters of a variable number of network interfaces.

SNMPv2 Defining Tables II Definition of objects iftable and ifentry iftable OBJECT-TYPE SYNTAX SEQUENCE OF IfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A list of interface entries" ::= { interfaces 2 } ifentry OBJECT-TYPE SYNTAX IfEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An interface entry containing objects" INDEX { ifindex } ::= { iftable 1 } A. Steffen, 12.02.2001, KSy_SNMP.ppt 12 Elements of a Table iftable is the root node of the table. It cannot be directly accessed. ifentry contains the column definition of the table and defines how the index is formed to access a specific row or object instance. It cannot be directly acces

SNMPv2 Defining Tables III Definition of type IfEntry IfEntry ::= SEQUENCE { ifindex INTEGER, ifdescr DisplayString, iftype INTEGER, ifmtu INTEGER, ifspeed Gauge,...... } A. Steffen, 12.02.2001, KSy_SNMP.ppt 13 Elements of a Table Column Definition The variables contained in the sequence defined by the IfEntry type define the names and types of the table columns.

SNMPv2 Defining Tables IV Definition of column objects ifindex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A unique value for each interface, ranging between 1 and the value of ifnumber." ::= { ifentry 1 } ifdescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory DESCRIPTION "A textual string containing information about the interface." ::= { ifentry 2 } A. Steffen, 12.02.2001, KSy_SNMP.ppt 14

SNMPv2 Defining Tables V Instance Identifiers for iftable cells iftable (1.3.6.1.2.1.2.2) 1 2 3 "ATM0" "Ethernet0" "Serial0" 39 6 22 4470 1500 1500 ifentry (1.3.6.1.2.1.2.2.1) ifentry (1.3.6.1.2.1.2.2.1) ifentry (1.3.6.1.2.1.2.2.1) ifindex (x.1) ifdescr (x.2) iftype (x.3) ifmtu (x.4) x = 1.3.6.1.2.1.2.2.1 OID of ifentry (1.3.6.1.2.1.2.2.1.4.3) oder (x.4.3) INDEX A. Steffen, 12.02.2001, KSy_SNMP.ppt 15 Table Access using Instance Identifiers The generic table addressing structure in order to access a particular instance of a column object is <OID of table root>.<table column definition>.<relative column OID>.<row index> 1.3.6.1.2.1.2.2. 1. 4. 3

SNMPv2 Defining Tables VI Instance Identifiers for tcpconntable cells tcpconntable (1.3.6.1.2.1.6.13) 10.0.0.2 2553 10.0.0.3 110 tcpconn Entry(x) 0.0.0.0 80 0.0.0.0 0 tcpconn Entry(x) 160.85.20.50 23 160.85.128.3 1070 tcpconn Entry(x) tcpconn LocalAddress (x.2) tcpconn LocalPort (x.3) tcpconn RemAddress (x.4) tcpconn RemPort (x.5) (x.5.?) (x.5.160.85.20.50.23.160.85.128.3.1070) x = 1.3.6.1.2.1.6.13.1 OID of tcpconnentry A. Steffen, 12.02.2001, KSy_SNMP.ppt 16 Composite Instance Identifiers Instead of using a dedicated index column object acting as a primary key, the index identifying a particular instance can also be formed by a concatenation of the instance values of several column objects.

SNMPv2 Defining Tables VII Definition of object tcpconnentry tcpconnentry OBJECT-TYPE SYNTAX TcpConnEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Information about a particular current TCP connection. An object of this type is transient, in that it ceases to exist when (or soon after) the connection makes the transition to the CLOSED state." INDEX { tcpconnlocaladdress, tcpconnlocalport, tcpconnremaddress, tcpconnremport } ::= { tcpconntable 1 } A. Steffen, 12.02.2001, KSy_SNMP.ppt 17 Composite Index Definitions This example of a table listing all current TCP/IP connections uses the local and remote network addresses and ports to uniquely identify a particular connection instance.

SNMP v2 Standard MIB-II (RFC 1213) system (1) : overall information about the system interfaces (2) : information about each system interface at (3) : description of address-translation table (deprecated) ip (4) : information related to IP on this system icmp (5) : information related to ICMP on this system tcp (6) : information related to TCP on this system udp (7) : information related to UDP on this system egp (8) : information related to EGP on this system transmission (10) : information about transmission schemes and access protocols at each system interface snmp (11) : information related to SNMP on this system A. Steffen, 12.02.2001, KSy_SNMP.ppt 18