SMI & MIB The Management Information João Neves, 2009 1 A Estrutura da Informação de Gestão (SMI) do SNMPv1 RFC 1155, STD0016 - Structure and Identification of Management Information for TCP/IP-based Internets A SMI é a linguagem formal que permite definir a informação de gestão e a sua sintaxe é um subconjunto da ASN.1 Com a SMI é possível: organizar atribuir nomes descrever a informação de modo a que esta seja acessível Assim uma MIB pode ser definida e construída João Neves, 2009 2 João Neves 1
Structure of Management Information RFC 1155, STD0016 - Structure and Identification of Management Information for TCP/IP-based Internets The SMI has the mechanisms used for describing and naming objects for the purpose of management A SMI prevê que cada objecto gerido tem um nome, uma sintaxe e uma codificação: O nome (object identifier OID) identifica univocamente o objecto; A sintaxe define o tipo dos dados, p. ex. inteiro ou sequência de caracteres; A codificação descreve como a informação associada aos objectos geridos é serializada para a transmissão entre os sistemas, ou seja codifica o valor do objecto. João Neves, 2009 3 SMI Abstract Syntax Notation One (ASN.1) ISO 8824-1 Função da camada de Apresentação do modelo OSI Definir os formatos dos pacotes de informação e controlo (Protocol Data Unit) trocados pelo protocolo de gestão e as regras para combinar os elementos das mensagens. Basic Encoding Rules (BER) ISO 8825-1 Define a codificação para a transmissão dos elementos (traduz os elementos ASN.1 em padrões binários para a transmissão e faz a transferência entre os sistemas). João Neves, 2009 4 João Neves 2
ASN.1 Utiliza termos únicos para definir os seus procedimentos: Definições i de Tipos Valores atribuídos Declaração e utilização de Macros Definições de Módulos A cada objecto que queremos gerir está associado um identificador ASN.1 do tipo OBJECT IDENTIFIER O SNMP utiliza um sub-conjunto do ASN.1, por razões de simplicidade João Neves, 2009 5 O SNMP e ASN.1 O SNMP utiliza um sub-conjunto do ASN.1, por razões de simplicidade INTEGER OCTET STRING OBJECT IDENTIFIER NULL SEQUENCE SEQUENCE OF João Neves, 2009 6 João Neves 3
Tipos O Tipo classifica os dados (declaração SYNTAX): Primitive Types INTEGER, OCTET STRING, OBJECT IDENTIFIER, NULL (todos em maiúsculas) Contructor Types gera listas e tabelas (SEQUENCE e SEQUENCE OF) Defined Types nomes alternativos definidos na SMI para tipos ASN.1 simples ou complexos (normalmente são mais descritivos, por ex. TimeTicks, Counter, Gauge ou o IpAdress que representa um endereço IP de 32 bit) João Neves, 2009 7 Tipos e Valores O Valor quantifica o Tipo. Por vezes é apenas permitido um conjunto limitado de valores. Um valor Inteiro limitado a 8 bits seria INTEGER (0..255) João Neves, 2009 8 João Neves 4
Tipo de Dados: Primitivos INTEGER Número de 32 bit; por vezes é utilizado para especificar tipos enumerados (por ex. o estado de um interface up (1), down (2) ou testing (3)) OCTET STRING Umastring de zero ou mais octetos, normalmente utilizada para representar sequências de caracteres, no entanto também pode representar endereços físicos. OBJECT IDENTIFIER Sequência de decimais separados por pontos que representa o nome de um objecto da árvore de gestão (por ex. 1.3.6.1.4.1.9 éooiddaprivate enterprises da Cisco Systems) NULL Não é usado no SNMP. SEQUENCE Lista de zero ou mais tipos ASN.1 (diferentes ou não) SEQUENCE OF Define um objecto constituído por um conjunto de elementos (todos do mesmo tipo SEQUENCE) João Neves, 2009 9 Tipo de Dados: Definidos Counter Número de 32 bit do intervalo [0, 2 32-1]. Valor incremental, quando atinge o limite faz wrap e começa no 0. Ex. O número de octetos enviados num interface. TimeTicks - Número de 32 bit do intervalo [0, 2 32-1]. Indica o tempo em centésimos de segundo. Gauge - Número de 32 bit do intervalo [0, 2 32-1]. Contrariamente ao tipo counter pode diminuir ou aumentar, por ex. a velocidade de um interface. IpAdress Representa um endereço IPv4 de 32 bit. NetworkAdress O mesmo que IpAdress mas representa o endereço de uma rede. Opaque Armazena quaisquer outros tipos ASN.1 numa OCTET STRING João Neves, 2009 10 João Neves 5
Macro Serve para definir um objecto gerido A declaração de Macro permite a extensão da linguagem João Neves, 2009 11 Declaração de um Objecto 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 } João Neves, 2009 12 João Neves 6
Exemplos de Macros MODULE-IDENTITY MACRO ::= BEGIN TYPE NOTATION ::= "LAST-UPDATED" value(update ExtUTCTime) "ORGANIZATION" Text "CONTACT-INFO" Text "DESCRIPTION" Text RevisionPart END VALUE NOTATION ::= value(value OBJECT IDENTIFIER) RevisionPart ::= Revisions empty Revisions ::= Revision Revisions Revision Revision ::= "REVISION" value(update ExtUTCTime) "DESCRIPTION" Text -- a character string as defined in section 3.1.1 Text ::= value(ia5string) João Neves, 2009 13 Exemplo de uma Tabela iftable OBJECT-TYPE SYNTAX SEQUENCE OF IfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of interface entries. The number of entries is given by the value of ifnumber." ::= { interfaces 2 } João Neves, 2009 14 João Neves 7
Uma Linha de uma Tabela ifentry OBJECT-TYPE SYNTAX IfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry containing management information applicable to a particular interface." INDEX { ifindex } ::= { iftable 1 } IfEntry ::= SEQUENCE { ifindex InterfaceIndex, ifdescr DisplayString, i iftype IANAifType, ifmtu Integer32, ifspeed Gauge32, ifphysaddress PhysAddress, ifadminstatus INTEGER, ifoperstatus INTEGER,... João Neves, 2009 15 Colecção de descrições agrupadas Módulos RMON-MIB MIB DEFINITIONS ::= BEGIN IMPORTS Counter FROM RFC1155-SMI DisplayString FROM RFC1158-MIB mib-2 FROM RFC1213-MIB OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215; -- Remote Network Monitoring MIB rmon OBJECT IDENTIFIER ::= { mib-2 16 } -- textual t conventions OwnerString ::= DisplayString -- This data type is used to model an... END João Neves, 2009 16 João Neves 8
Management Information Base The MIB specification is the core set of managed objects for the Internet suite of protocols Define the variables to manage the TCP/IP protocol suite Managed objects are accessed via a virtual it information store, termed the Management Information Base or MIB Especifica os elementos de dados que um sistema gerível tem que ter, as operações permitidas em cada e qual o significado João Neves, 2009 17 MIB MIB RFC 1212, MIB-II RFC 1213 AMIBII MIB-II é apenas uma extensão da primeira i e, como tal, mantêm o mesmo OID syscontact OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-write STATUS mandatory DESCRIPTION "The textual identification of the contact person for this managed node, together with information on how to contact this person." ::= { system 4 } João Neves, 2009 18 João Neves 9
The COFFEE POT MIB RFC 2325 - Definitions of Managed Objects for Drip-Type Heated Beverage Hardware Devices using SMIv2 The COFFEE POT MIB applies to managed devices that brew, store, and deliver heated coffee beverages Is mandatory for all systems that have such a hardware port supporting services managed through some other MIB The MIB contains objects that relate to physical connections, configuration, storage levels, quality of service, and availability João Neves, 2009 19 COFFEE-POT-MIB coffee MODULE-IDENTITY LAST-UPDATED "9803231700Z" ORGANIZATION "Networked Appliance Management Working Group" CONTACT-INFO " Michael Slavitch Loran Technologies, 955 Green Valley Crescent [ ] " DESCRIPTION "The MIB Module for coffee vending devices." ::= { transmission 132 } João Neves, 2009 20 João Neves 10
Árvore de Nomes * Adicionado pela MIB-II ** Abandonado na MIB-II *** Definido no RFC 1214 João Neves, 2009 21 Nomes: OID da internet... internet OBJECT IDENTIFIER ::= { iso 3 6 1 } iso(1).org(3).dod(6).internet(1) João Neves, 2009 22 João Neves 11
A Hierarquia de Nomes A raiz da sub-árvore para a Internet, administrada pela Internet Assigned Numbers Authority (IANA), é: internet OBJECT IDENTIFIER ::= { iso 3 6 1 } Isto é, a sub-árvore dos OBJECT IDENTIFIERs da Internet começa por: 1.3.6.1 Vários ramos desta parte da árvore são usados para a gestão de redes: mgmt OBJECT IDENTIFIER ::= { internet 2 } experimental OBJECT IDENTIFIER ::= { internet 3 } private OBJECT IDENTIFIER ::= { internet 4 } enterprises OBJECT IDENTIFIER ::= { private 1 } João Neves, 2009 23 Componentes da internet (Sem uso actual) {internet 6} {1.3.6.1.6} 1 6} João Neves, 2009 24 João Neves 12
OID enterprises enterprises OBJECT IDENTIFIER ::= { private 1 } João Neves, 2009 25 OID enterprises A lista de todos os números atribuídos à variável enterprises é gerida pela Internet Assigned Numbers Authority (IANA) e pode ser obtida em: http://www.iana.org/assignments/enterprise-numbers Debaixo da sua árvore privada os fabricantes podem colocar a estrutura que entenderem Por exemplo, a Cisco System tem o enterprises OID 9, ou seja { iso.org.dod.internet.private.enterprises.cisco } ou ainda { 1.3.6.1.4.1.9 } João Neves, 2009 26 João Neves 13
http://www.iana.org/assignments/enterprise-numbersnumbers PRIVATE ENTERPRISE NUMBERS SMI Network Management Private Enterprise Codes: Prefix: iso.org.dod.internet.private.enterprise (1.3.6.1.4.1) Decimal Name References ------- ---- ---------- 0 Reserved Joyce K. Reynolds jkrey@isi.edu 1 NxNetworks Michael Kellen OID.Admin@NxNetworks.com 2 IBM Bob Moore remoore@us.ibm.com 3 CMU Steve Waldbusser sw01+@andrew.cmu.edu 4 Unix Keith Sklower sklower@okeeffe.berkeley.edu 5 ACC Art Berggreen art@salt.acc.com 6 TWG John Lunny jlunny@eco.twg.com (603) 847-4500 7 CAYMAN Beth Miaoulis beth@cayman.com 8 PSI Marty Schoffstahl schoff@nisc.nyser.net 9 cisco Greg Satz satz@cisco.com 10 NSC John Lyman lyman@network.com 11 Hewlett Packard R. Dwight Schettler rds%hpcndm@hplabs.hp.com 12 Epilogue Karl Auerbach karl@cavebear.comcom 13 U of Tennessee Jeffrey Case case@cs.utk.edu 14 BBN Arif Diwan adiwan@bbn.com, bbn-mibs@bbn.com 15 Xylogics, Inc. Jim Barnes barnes@xylogics.com 16 Timeplex Laura Bridge laura@uunet.uu.net 17 Canstar Sanand Patel sanand@hub.toronto.edu 18 Wellfleet Caralyn Brown cbrown@wellfleet.com [...] João Neves, 2009 27 O Grupo system * Adicionado na MIB-II João Neves, 2009 28 João Neves 14
O Grupo system na MIB-I João Neves, 2009 29 O Grupo system na MIB-IIII João Neves, 2009 30 João Neves 15
O Grupo interfaces O Grupo interfaces fornece informação sobre as interfaces de hardware de um sistema gerido; esta informação é organizada segundo uma tabela. O primeiro objecto (ifnumber) indica o número de interfaces do sistema. Para cada interface é criada uma linha na tabela, com 22 colunas. João Neves, 2009 31 O Grupo interfaces ifindex identificador da interface iddescr descrição da interface iftype tipo do interface, ex. ethernetcsmacd(6) ifmtu tamanho da MTU ifspeed ex. 1000 Mb/s ifphyaddress endereço MAC ifadminstatus up, down, testing ifoperstatus up(1), down(2), testing(3), ti unknown(4), dormant(5), notpresent(6), lowerlayerdown(7) iflastchange valor do sysuptime aquando a última alteração Os restantes objectos contêm informação estatística do tráfego João Neves, 2009 32 João Neves 16
Tipos de interfaces (RFC 1573) IANAifType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This data type is used as the syntax of the iftype object in the (updated) definition of MIB-II's iftable. [...] SYNTAX INTEGER { other(1), -- none of the following regular1822(2), hdh1822(3), ddnx25(4), rfc877x25(5), ethernetcsmacd(6), iso88023csmacd(7), iso88024tokenbus(8), iso88025tokenring(9), iso88026man(10), starlan(11), proteon10mbit(12), proteon80mbit(13), hyperchannel(14), fddi(15), lapb(16), sdlc(17), ds1(18), -- DS1/E1 (RFC 1406) [...] João Neves, 2009 33 Tipos de interfaces (cont.) [...] } e1(19), -- obsolete basicisdn(20), primaryisdn(21), proppointtopointserial(22), -- proprietary serial ppp(23), softwareloopback(24), eon(25), -- CLNP over IP (RFC 1070) ethernet3mbit(26), nsip(27), -- XNS over IP slip(28), -- generic SLIP ultra(29), -- ULTRA technologies ds3(30), -- T-3 sip(31), -- SMDS framerelay(32), -- DTE only rs232(33), para(34), -- parallel-port arcnet(35), -- arcnet arcnetplus(36), -- arcnet plus atm(37), -- ATM cells miox25(38), sonet(39), -- SONET or SDH x25ple(40), iso88022llc(41), localtalk(42), smdsdxi(43), framerelayservice(44), -- Frame relay DCE v35(45), hssi(46), hippi(47), modem(48), -- Generic modem aal5(49), -- AAL5 over ATM sonetpath(50), sonetvt(51), smdsicip(52), -- SMDS InterCarrier Interface propvirtual(53), -- proprietary virtual/internal propmultiplexor(54) -- proprietary multiplexing END João Neves, 2009 34 João Neves 17
O Grupo address translation Cada Grupo dos Protocolos tem a própria tabela(s) de conversão de endereços, por isso este grupo tem o status Deprecated. João Neves, 2009 35 A tabela attable atifindex atphysaddres ss atnetaddress 1 aa.bb.cc.dd 2 ee.ff.gg.hh atifindex identifica a interface onde são válidos os endereços atphysaddress poderá ser um endereço MAC atnetaddress por exemplo um endereço IP n ww.xx.yy.zz João Neves, 2009 36 João Neves 18
O Grupo ip João Neves, 2009 37 icmp João Neves, 2009 38 João Neves 19
OG Grupo tcp João Neves, 2009 39 OG Grupo udp João Neves, 2009 40 João Neves 20
O Grupo egp João Neves, 2009 41 O Grupo transmission {1.3.6.1.2.1.10} * Adicionado pela MIB-II João Neves, 2009 42 João Neves 21
Os Objectos DS1/E1 João Neves, 2009 43 Os Objectos DS3/E3 João Neves, 2009 44 João Neves 22
Os Objectos SONET João Neves, 2009 45 Os Objectos Frame Relay DTE João Neves, 2009 46 João Neves 23
O Grupo SNMP João Neves, 2009 47 Informação acerca do Agente João Neves, 2009 48 João Neves 24
MIBs e RFCs João Neves, 2009 49 MIBs e RFCs (cont.) João Neves, 2009 50 João Neves 25
MIBs e RFCs (cont.) João Neves, 2009 51 MIBs de Meios de Transmissão João Neves, 2009 52 João Neves 26
RMON MIB Remote Monitoring (RMON) MIB João Neves, 2009 53 Remote Monitoring (RMON) MIB NMS Sonda RMON Um sistema que implementa a RMON MIB designa-se por Sonda RMON (RMON probe). Alguns nós da rede (p. ex. uma bridge) podem ter implementadas as funções da RMON MIB Sonda RMON João Neves, 2009 54 João Neves 27
Objectivos do RMON STD0059, RFC2819 Off-line operation resolver o problema do polling Proactive monitoring o monitor poderá monitorar e registar constantemente a rede, caso tenha recursos suficientes Problem detection and reporting Value-added-data o monitor analisa informação recolhida na sua sub-rede, libertando assim o NMS Multiple managers a rede pode ter mais do que um NMS, então o monitor poderá ser configurado para dialogar concorrencialmente com os diferentes NMS João Neves, 2009 55 OID da RMON MIB {1.3.6.1.2.1.16} rmon (16) João Neves, 2009 56 João Neves 28
Os Grupos Eh Ethernet RMON Group statistics (1) history (2) alarm (3) host (4) hosttopn (5) matrix (6) filter (7) capture (8) event (9) Description Contains statistics measured by the probe for each monitored interface on this device. Records periodic statistical samples from a network and stores them for later retrieval. Periodically takes statistical samples from variables in the probe and compares them with previously configured thresholds. If the monitored variable crosses a threshold, an event is generated. Contains statistics associated with each host discovered on the network. Prepares tables that describe the hosts that top a list ordered by one of their statistics. The available statistics are samples of one of their base statistics over an interval specified by the management station. Thus, these statistics are rate-based. Stores statistics for conversations between sets of two addresses. As the device detects a new conversation, it creates a new entry in its table. Enables packets to be matched by a filter equation. These matched packets form a data stream that might be captured or might generate events. Enables packets to be captured after they flow through a logical channel. Controls the generation and notification of events from this device. João Neves, 2009 57 Token Ring RMON MIB A RMON MIB para a Token Ring, RFC1513, foi criada adicionando tabelas à RMON MIB da Ethernet. Foi adicionado o décimo grupo tokenring com o OID { rmon 10 } Foram estendidos os grupos statistics e history para permitir recolher dados específicos do protocolo TR (tal como os erros do nível MAC: erros no token, erros na cópia das tramas etc..) João Neves, 2009 58 João Neves 29
O Grupo tokenring OID { 1.3.6.1.2.1.16.10 } Contem quatro sub-grupos Ring Station Group monitoriza os eventos da estação e do anel, tem duas tabelas: a ringstationcontroltable e ringstationtable Ring Station Order Group mantém a topologia da rede, dá a sequencia das estações nos anéis monitorizados, tem a tabela ringstationordertable Ring Station Configuration Group controla a remoção ou a configuração de uma estação do anel, tem duas tabelas: a ringstationconfigcontroltable e a ringstationconfigtable Ring Source Routing Group contem as estatísticas de utilização do SRB, tem a tabela sourceroutingstatstable João Neves, 2009 59 RMON2 As RMON MIBs para as redes Ethernet e TR estavam dirigidas à gestão e à operação das camadas Física e da Ligação Lógica de redes remotas. A RMON2, definida no RFC 2021, estende as capacidades da RMON MIB para as camadas superiores, até à camada da Aplicação, adicionando dez novos grupos { rmon 11 } até { rmon 20 } Protocolos como o TCP/IP ou SPX/IPX podem ser monitorados. João Neves, 2009 60 João Neves 30
SMON Remote Network Monitoring MIB Extensions for Switched Networks Version 1.0, RFC2613 A SMON MIB estende a RMON MIB permitindo a análise das redes comutadas. João Neves, 2009 61 Comparação INTERFACE STATISTICS IP, TCP & UDP STATISTICS SNMP STATISTICS HOST JOB COUNTS HOST FILE SYSTEM INFORMATION MIB-II HOST REPEATE R x x x x BRIDGE LINK TESTING x x x RMON NETWORK TRAFFIC STATISTICS x x x TABLE WITH ALL MAC ADDRESSES x x STATISTICS PER HOST x x João Neves, 2009 62 João Neves 31
Comparação (cont.) HISTORICAL STATISTICS SPANNING TREE PERFORMANCE WIDE AREA LINK PERFORMANCE TRESHOLDS FOR ANY VARIABLE CONFIGURABLE STATISTICS TRAFFIC MATRIX WITH ALL NODES HOST TOP N INFORMATION PACKET / PROTOCOL ANALYSIS DISTRIBUTED LOGGING MIB-II HOST REPEAT ER BRIDGE x x RMON x x x x x x x João Neves, 2009 63 Bibliografia Stallings, William SNMP, SNMPv2, SNMPv3 and RMON 1 and 2 Addison-Wesley Publishing Company, 3rd Ed. (1999) ISBN 0-20-148534-6 João Neves, 2009 64 João Neves 32