© Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

123
© Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet

Transcript of © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

Page 1: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Paradigmas de Gerenciamento

Internet

Paradigmas de Gerenciamento

Internet

Page 2: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Gerenciamento Segundo a InternetGerenciamento Segundo a Internet

O paradigma de gerenciamento utilizado nas redes com tecnologia internet (TCP/IP) é baseado no protocolo de gerenciamento SNMP.

• SNMP - Simple Network Management Protocol• Utiliza o modelo agente/gerente na comunicação com

os elementos de rede.• O paradigma aplica-se, além dos equipamentos

computacionais convencionais, a equipamentos de comunicações e de telecomunicações

• A família SNMP inclui outros protocolos, como o SNMPv2 e o SNMPv3.

Page 3: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Arquitetura de GerenciamentoArquitetura de Gerenciamento

NetworkElement

SNMPAgent

SNMPManager

NetworkElement

Network Agent

SNMPManager

SNMPManager

(a) One Manager - One Agent Model (b) Multiple Managers - One Agent Model

Page 4: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Arquitetura de GerenciamentoArquitetura de Gerenciamento

Entidadegerenciadora

Estação de Gerenciamento (NMS)

Variáveisda MIB

Entidadegerenciada

SNMP

Page 5: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Arquitetura de GerenciamentoArquitetura de Gerenciamento

Agent / Manager

Managed objects

Agent process

Manager

Figure 3.3 Three-Tier Network Mangement Organization Model

MDB

MDB

MDB Management Database

Page 6: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Arquitetura de GerenciamentoArquitetura de Gerenciamento

ManagedObjects

SNMPManager

RMONProbe

Page 7: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Arquitetura de GerenciamentoArquitetura de Gerenciamento

Non-SNMPManagedObjects

SNMP Manager

ProxyServer

SNMPManagedObjects

Page 8: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Gerenciamento Segundo a InternetGerenciamento Segundo a Internet

Agente de gerenciamento:• Responde a solicitações de informação.• Responde a solicitações de execução de

ações.• Provê informações impotantes, não

solicitadas.• Pode fazer parte de dispositivos, que se

tornam então gerenciáveis.

Page 9: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Gerenciamento Segundo a InternetGerenciamento Segundo a Internet

Estação de gerenciamento ou gerente:• Dispositivo, sistema ou função num sistema

compartilhado.• Serve como interface ao operador ou gerente de

rede - ser humano.

Page 10: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Gerenciamento Segundo a InternetGerenciamento Segundo a Internet

Estação de gerenciamento ou gerente (cont.):• Provê, no mínimo:

– Um conjunto de aplicações para análises de dados, recuperação de falhas, etc.

– Uma interface de operação, para monitoração e controle.

– Capacidade de traduzir solicitações de operadores para os elementos remotos.

– Uma base de dados de informação extraída das bases de dados das entidades gerenciadas

Page 11: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Gerenciamento Segundo a InternetGerenciamento Segundo a Internet

Base de informação de gerenciamento ou MIB - Management Information Base:

• Os recursos da rede são representados como objetos para fins de gerenciamento.

• Cada objeto é essencialmente uma variável de dados que representa um aspecto do recurso gerenciado

• A coleção de objetos é referida como MIB - Management Information Base.

Page 12: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Gerenciamento Segundo a InternetGerenciamento Segundo a Internet

Base de informação de gerenciamento ou MIB - Management Information Base (cont.):

• Os objetos são padronizados para sistemas de uma determinada classe, ex:– Roteadores– Estações de trabalho– Modems– No-break– Multiplexadores

Page 13: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

HistóricoHistórico• Internet Engineering Task Force (IETF)

– 1990 SNMPv1– 1996 SNMPv2– 1998 SNMPv3

• Documentos:

– Request for Comments (RFC)– Standard RFC (STD)– For Your Information RFC (FYI)

Page 14: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

RFC 1067

SNMPManagementDocuments

RFC 1065SMI

RFC 1155STD 16

RFC 1066MIB I

RFC 1156RFC 1098

SNMPv1RFC 1157

STD 15Concise SMIRFC 1212

STD 16

SNMPv1Traps

RFC 1215

RFC 1442

SMIv2RFC 1902

RFC 1443SMIv2 Txt

ConventionsRFC 1903

RFC 1444SMIv2

ConformancesRFC 1904

RFC 1158MIB II

RFC 1213STD 17

RFC 1448SNMPv2

Protocol Ops1905

RFC 1449SNMPv2

Transport Map.RFC 1906

MIB II forSNMPv2

RFC 1907

Figure 4.4 SNMP Document Evolution

Page 15: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Modelo de InformaçãoModelo de Informação

• Define a estrutura e o armazenamento da informação– SMI: define a sintaxe e a semantica da informação de

gerência armazenada na MIB– MIB: base de dados virtual utilizada pelos processos

de agente e gerente para armazenar e trocar informações de gerência

– MDB: banco de dados real que contém os valores medidos ou configurados no elemento de rede

Page 16: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SMISMI

• Sintaxe: formato da informação sendo apresentada

• Semântica: significado da informação associada• Objeto: sintaxe + semântica• SMI define

– sintaxe– semântica– mais informações adicionais como status

Page 17: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

MIBMIB

• Base de informação contendo informações sobre os

objetos

• Organizada por grupo de objetos relacionados

• Define as relações entre objetos

• NÃO é uma base de dados física, mas virtual que é

compilada no módulo de gerência

Page 18: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

MDB vs MIBMDB vs MIB

• Distinção entre MDB e MIB:– MDB é uma base de dados física– MIB é uma base de dados virtual com um

esquema compilado no software de gerência• Um NMS pode automaticamente descobrir o

objeto gerenciado (e.g. hub) quando adicionado a rede

• O NMS pode identificar o elemento a ser gerenciado somente após o MIB schema para o hub é compilado no software do NMS

Page 19: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Modelo de InformaçãoModelo de Informação

Root

Level 1

Level 2

Level 3

Figure 3.7 Generic Representation of Management Information Tree

Page 20: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Modelo de Informação OSIModelo de Informação OSI

iso-itu2

itu0

iso1

org3

dod6

internet1

Figure 3.8 OSI Management Information Tree

Page 21: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Modelo de Comunicação Modelo de Comunicação

• Gerencia como a informação vai ser trocada entre as partes

– Mensagens bi-direcionais com sintaxe bem definida

– Requisições, respostas e notificações/traps

Page 22: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Modelo de ComunicaçãoModelo de Comunicação

• ASN.1

• Regras de codificação (BER)

• Pacotes SNMP

Page 23: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ASN.1 ASN.1

• Linguagem formal definida pela CCITT (ITU) e ISO para definir transferência de dados entre sistemas

• Separa claramente sintaxe abstrata (modelo de informação) da sintaxe de transferência (modelo de comunicação) na camada de apresentação

• Pode ser utilizada para gerar código de máquina: Basic Encoding Rules (BER)

Page 24: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Backus-Nauer Form (BNF)Backus-Nauer Form (BNF)Definition:

<name> ::= <definition>

Rules:

<digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

<number> ::= <digit> | <digit> <number>

<op> ::= + | - | × | /

<SAE> ::= <number> | <SAE> <op> <SAE>

number Example:• 9 is primitive 9• 19 is construct of 1 and 9• 619 is construct of 6 and 19

Page 25: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

BNFBNF

• Construção é definida a partir de primitivas.• O exemplo mostra como números são

construídos a partir da primitiva <digit>.• Expressões Aritiméticas (<SAE>) podem ser

construídas a partir de <digit> e <op>. Por exemplo: 26 = 13 × 2

• BNF é utilizado para definir construções ASN.1 mas as regras de sintaxe precisam ser seguidas

Page 26: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Exemplo de ASN.1Exemplo de ASN.1 Person-Name ::= SEQUENCE {

first VisibleString, middle VisibleString, last VisibleString }

  person-name Person-Name::=

{ first "John",

middle "I", last "Smith" }

Page 27: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ASN.1 ASN.1 • Layout não é significante. • Comentários são delimitados entre -- (par de

hífens) e quebra de linha. • Identificadores (nomes de objetos) e

referência a tipos (nomes de tipos) consistem de letras caixa-alta, caixa-baixa, números, hífens e espaços; identificadores começam com letras caixa-baixa e nomes de tipos começam com letras caixa-alta.

Page 28: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Tipos de Dados PrimitivosTipos de Dados Primitivos

Type Name Set of ValuesBOOLEAN TRUE or FALSEINTEGER 0, positive and

negativeBIT STRING String of 0 or more bits OCTET STRING String of 0 or more bytesNULL Place holder, single

valued

Page 29: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Tipos de DadosTipos de Dados

• Primitivos• Agregados

– Alternativas: CHOICE– Listas: SET, SEQUENCE

• SET é uma lista não ordenada, e SEQUENCE é ordenada

– Repetição (arrays): SET OF, SEQUENCE OF• SET OF é não ordenada, e SEQUENCE OF é

ordenada

Page 30: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

PersonnelRecord ::= SET { Name, title GraphicString, division CHOICE { marketing [APPLICATION 0] SEQUENCE {Sector, Country}, research [APPLICATION 1] CHOICE {product-based [0] NULL, basic [1] NULL}, production [APPLICATION 2] SEQUENCE {Product-line, Country } }}

Figure 3.13 ASN.1 Data Type Definition Example 1

Page 31: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Trade-message ::= SEQUENCE {invoice-no INTEGER, name GraphicString, details SEQUENCE OF SEQUENCE {part-no INTEGER, quantity INTEGER}, charge REAL, authenticator Security-Type} Security-Type ::= SET { … … … }

Figure 3.14 ASN.1 Data Type Definition Example 2

Page 32: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Definição de Módulos em ASN.1

Definição de Módulos em ASN.1

<module name> DEFINITIONS ::= BEGIN

<name> ::= <definition>

<name> ::= <definition>

END

Page 33: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Símbolos ASN.1Símbolos ASN.1Symbol Meaning

::= Defined as

| or, alternative, options of a list

- Signed number

-- Following the symbol are comments

{} Start and end of a list

[] Start and end of a tag

() Start and end of subtype

.. Range

Page 34: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Convenções de Tipos em ASN.1

Convenções de Tipos em ASN.1

Data Types Convention Example

Object name Initial lowercase letter sysDescr, etherStatsPkts

Application data type Initial uppercase letter Counter, IpAddress

Module Initial uppercase letter PersonnelRecord

Macro, MIB module All uppercase letters RMON-MIB

Keywords All uppercase letters INTEGER, BEGIN

Page 35: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Tipos de Dados ASN.1Tipos de Dados ASN.1• Tipos simples:

– PageNumber ::= INTEGER– ChapterNumber ::= INTEGER

• Tipos estruturados:– BookPageNumber ::= SEQUENCE

{ChapterNumber, Separator, PageNumber}

– Exemplo: {1-1, 2-3, 3-39}• Tipos :

– Derivados de outros tipos; é dado um novo tag ID• Outros tipos:

– CHOICE, ANY

Page 36: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

TagTag

• Tag identifica unicamente um tipo• É constituída por class e tag number• Classe:

– Universal– Application– Context-specific – Private (utilizada por empresas)

Page 37: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Inteiro EnumeradoInteiro Enumerado

RainbowColors ::= ENUMERATED

{

violet (0)

indigo (1)

blue (2)

green (3)

yellow (4)

orange (5)

red (6)

}

Page 38: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Codificação BERCodificação BER

Type Length Value

Class(7-8th bits)

P/C(6th bit)

Tag Number(1-5th bits)

Class 8th bit 7th bitUniversal 0 0Application 0 1Context-specific 1 0Private 1 1

Page 39: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ASN.1 OBJECT-IDENTITY Macro

ASN.1 OBJECT-IDENTITY Macro

mgmt OBJECT-IDENTITY STATUS current DESCRIPTION "the root of the OID sub-tree reserved for

IETF standards track definitions in the network management area."

::= {iso org(3) dod(6) internet(1) 2}

Page 40: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Modelo de Informação SNMPRevisitado

Modelo de Informação SNMPRevisitado

• Structure of Management Information (SMI) (RFC 1155)

• Objetos gerenciáveis– Scalar (de tipos primitivos)– Agregado ou tabular (arrays)

• Management Information Base (RFC 1213)

Page 41: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Object

ObjectInstance

ObjectType

Encoding:BER

Syntax:ASN.1

Name:OBJECT

IDENTIFIER

Figure 4.10 Managed Object : Type and Instance

Page 42: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Object

ObjectInstance 3

ObjectType

Encoding:BER

Syntax:ASN.1

Name:OBJECT

IDENTIFIER

Figure 4.11 Managed Object : Type with Multiple Instances

ObjectInstance 2

ObjectInstance 1

Page 43: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

NomesNomes• Definidos univocamente por DESCRIPTOR e OBJECT

IDENTIFIER• Exemplos:

internet OBJECT IDENTIFIER ::= {iso org(3) dod(6) 1}

internet OBJECT IDENTIFIER ::= {iso(1) org(3) dod(6) internet(1)}

internet OBJECT IDENTIFIER ::= {1 3 6 1}internet OBJECT IDENTIFIER ::= {iso org dod

internet }internet OBJECT IDENTIFIER ::= {iso org dod(6)

internet(1) }internet OBJECT IDENTIFIER ::= {iso(1) org(3) 6 1}

Page 44: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

mgmt(2)

directory(1)

experimental(3)

private(4)

Internet{1 3 6 1}

Figure 4.13 Subnodes under Internet Node in SNMPv1

Page 45: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

enterprises(1)

private(4)

hp(11)

cisco(9)

3Com(43)

Cabletron(52)

Figure 4.14 Private Subtree for Commercial Vendors

Internet{1 3 6 1}

Page 46: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMP ASN.1Data Type

Definedor

Application

Constructor or

Structured

Simpleor

Primitive

Number

Tag

Structure

Class

Universal ApplicationContext-specific

Private

Figure 4.15 SNMP ASN.1 Data Type

Page 47: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Tipos de Dados PrimitivosTipos de Dados Primitivos

Structure Data Type CommentsPrimitive types INTEGER Subtype INTEGER (n1..nN)

Special case: EnumeratedINTEGER type

OCTET STRING 8-bit bytes binary and textual dataSubtypes can be specified byeither range or fixed

OBJECT IDENTIFIER Object position in MIBNULL Placeholder

Page 48: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

NULL em MensagensNULL em Mensagens

• get-request possui NULL nos campos de valor

• get-response possui valores devidamente preenchidos nos respectivos campos

Page 49: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Tipos de Dados de AplicaçãoTipos de Dados de Aplicação

Defined types NetworkAddress Not used IpAddress Dotted decimal IP address Counter Wrap-around, non-negative

integer, monotonically increasing, max 2^32 -1

Gauge Capped, non-negative integer, increase or decrease

TimeTicks Non-negative integer in hundredths of second units

Opaque Application-wide arbitrary ASN.1 syntax, double wrapped OCTET STRING

Page 50: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SEQUENCE, SEQUENCE OFSEQUENCE, SEQUENCE OF

List: IpAddrEntry ::= SEQUENCE {

ipAdEntAddr IpAddressipAdEntIfIndex INTEGERipAdEntNetMask IpAddressipAdEntBcastAddr INTEGERipAdEntReasmMaxSize INTEGER (0..65535)

}Managed Object IpAddrEntry as a list

Table: IpAddrTable ::= SEQUENCE OF IpAddrEntry

Managed Object ipAddrTable as a table

Page 51: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Tipos de Dados e Tags em SNMP

Tipos de Dados e Tags em SNMP

Type Tag

OBJECT IDENTIFIER UNIVERSAL 6SEQUENCE UNIVERSAL 16IpAddress APPLICATION 0Counter APPLICATION 1Gauge APPLICATION 2TimeTicks APPLICATION 3Opaque APPLICATION 4

Page 52: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

OBJECT-TYPE MACRO ::=BEGIN

TYPE NOTATION ::= “SYNTAX” type(TYPE ObjectSyntax)“ACCESS” Access“STATUS” Status

VALUE NOTATION ::= value(VALUE ObjectName)

Access ::= “read-only” | “write-only” | “not-accessible”Status ::= “mandatory” | “optional” | “obsolete”

END

Figure 4.18(a) OBJECT-TYPE Macro [RFC 1155]

Page 53: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

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 }

Figure 4.18(b) Scalar or Single Instance Macro: sysDescr

[RFC 1213]

Page 54: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ArraysArrays

• Grupo de objetos, também chamados de tabular objects

• Podem ser representados como: – Colunas de objetos.– Linhas de instâncias.

• Definem agrupamentos e não são acessíveis.

Page 55: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Como Tabelas são Montadas na MIB?

Como Tabelas são Montadas na MIB?

<name>Entry(1)

<name>Table(t)

<nameAddr><Col-i>(i)

<nameAddr><firstCol>(1)

<nameAddr><lastCol>(c)

Page 56: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

mgmt(2)

directory(1)

experimental(3)

private(4)

Internet{1 3 6 1}

mib-2(1)

Figure 4.26 Internet MIB-II Group

system (1)

interfaces (2)

at (3)

ip (4)

icmp (5)

snmp (11)

transmission (10)

cmot (9)

egp (8)

udp (7)

tcp (6)

Page 57: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Exemplo de Aggregate Object

Exemplo de Aggregate Object

• Tabela de endereços IP consistindo de:– Endereço IP– Interface– Subnet mask – Broadcast address – Maior datagrama IP que pode ser montado

Page 58: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

IP Address TableIP Address Table

Entity OID Description (brief)ipAddrTable ip 20 Table of IP addressesipAddrEntry IpAddrTable 1 One of the entries in the IP address

tableipAdEntAddr IpAddrEntry 1 The IP address to which this entry's

addressing information pertainsipAdEntIfIndex IpAddrEntry 2 Index value of the entry, same as

ifIndexipAdEntNetMask IpAddrEntry 3 Subnet mask for the IP address of

the entryipAdEntBcastAddr IpAddrEntry 4 Broadcast address indicator bitipAdEntReasmMaxSize IpAddrEntry 5 Largest IP datagram that can be

reassembled on this interface

Page 59: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ExemploExemplo

ipAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF IpAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The table of addressing information

relevant to this entity's IP addresses." ::= { ip 20 }

Page 60: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ExemploExemplo

ipAddrEntry OBJECT-TYPE SYNTAX IpAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The addressing information for one of this

entity's IP addresses." INDEX { ipAdEntAddr } ::= { ipAddrTable 1 }

Page 61: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ExemploExemplo

IpAddrEntry ::= SEQUENCE { ipAdEntAddr IpAddress,

ipAdEntIfIndex INTEGER, ipAdEntNetMask IpAddress, ipAdEntBcastAddr INTEGER, ipAdEntReasmMaxSize INTEGER (0..65535)

}

Page 62: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ExemploExemplo

ipAdEntAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IP address to which this entry's

addressing information pertains." ::= { ipAddrEntry 1 }

Page 63: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ipAdEntAddr (1)

ipAddrEntry(ipAddrTable 1)

ipAdEntReasmMaxSize (5)

ipAdEntBcastAddr (4)

Figure 4.30 IP Address Table

ipAddrTable(ip 20)

ipAdEntIfIndex (2)

ipAdEntNetMask(3)

Legend: INDEX in bold

Aonde estão armazenados os elementos da tabela?

Page 64: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Gerenciamento Segundo a InternetGerenciamento Segundo a Internet

Protocolo de gerenciamento:

• Permite a comunicação agente e estação.

• O protocolo para redes TCP/IP é: SNMP.

• Capacidades do SNMP:– GET: possibilita à estação recuperar o valor de objetos

do agente;– SET: possibilita à estação atribuir valores a objetos no

agente;– TRAP: possibilita a um agente notificar a estação da

ocorrência de eventos significativos

Page 65: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMP ManagerApplication

Get-

Resp

onse

Get-

Request

GetN

ext

-Request

Set-

Request

Tra

p

SNMP Manager

SNMP

UDP

IP

DLC

PHY

SNMP AgentApplication

Get-

Resp

onse

Tra

p

SNMP Agent

SNMP

UDP

IP

DLC

PHY

Physical Medium

Figure 4.9 SNMP Network Management Architecture

Manage-mentData

Get-

Request

GetN

ext

-Request

Set-

Request

Page 66: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ApplicationHeader

IPHeader

UDPHeader

Version Community SNMP PDU

Application PDU

DLCHeader

Transport PDU

Network PDU

ApplicationPDU

TransportPDU

NetworkPDU

Data LinkPDU

Figure 5.5 Encapsulated SNMP Message

DataSNMPPDU

Page 67: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Mensagens SNMPMensagens SNMP

• Get-Request: Enviado pelo gerente para requisitar dados ao agente

• Get-Next-Request: Enviado pelo gerente para requisitar a próxima entidade a entidade especificada

• Set-Request: Inicializa ou modifica valores de entidades do elemento de rede

• Get-Response: Agente responde com dados a comandos Get-*-Request e Set-Request

• Trap: Alarme gerado espontaneamente pelo agente– Genérica, específica ou com time-stamp

Page 68: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

TrapTrap• Genérica

– coldStart– warmStart– linkDown– linkUp– authenticationFailure– egpNeighborLoss– enterpriseSpecific

• Específica: para medidas específicas tais como estatísticas

• Time stamp: tempo passado desde a última inicialização

Page 69: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Comunidades em SNMPComunidades em SNMP

• Segurança em SNMPv1 é baseada em comunidades

• Comunidade: Par de duas entidades de aplicação

• Nome da comunidade: String• Duas aplicações na mesma comunidade

comunicam entre si• Aplicação pode fazer parte de múltiplas

comunidades• String de comunidade em SNMPv1 não é

encriptada

Page 70: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMP Manager

Authentication Scheme

SNMP Manager

Authentication Scheme

SNMP Manager

Authentication Scheme

SNMP Agent

Authentication Scheme

Authentic Messages

Figure 5.1 SNMP Community

Page 71: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Figure 5.2 SNMP Community Profile

SNMP Agent

Object 2

read-only

READ-ONLY

READ-WRITE

SNMP Access Mode

SNMP MIB View

MIB Access

Object 3

write-only

Object 1

not-accessible

Object 4

read-write

Page 72: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Perfil da ComunidadePerfil da Comunidade

• Visão da MIB: Um agente é programado para ver somente um subconjunto dos objetos gerenciados de um elemento de rede

• Modo de acesso: Cada comunidade possui um modo de acesso (read-only e read-write)

• Perfil da comunidade: visão da MIB + modo de acesso• Operações em um objeto são determinadas pelo perfil

da comunidade • Alguns objetos, tais como tabelas e entrada de tabelas

não são acessíveis

Page 73: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Exemplo de Política de Acesso

Exemplo de Política de Acesso

Community 1

Community Profile 1

Community Profile 2

Manager 3(Community 1, Community 2)

Agent 2

Agent 1

Community 2

Community Profile 3

Community Profile 4 Agent 4

Agent 3

Manager 2(Community 2)

Manager 1(Community 1)

Figure 5.3 SNMP Access Policy

Page 74: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ApplicationHeader

IPHeader

UDPHeader

Version Community SNMP PDU

Application PDU

DLCHeader

Transport PDU

Network PDU

ApplicationPDU

TransportPDU

NetworkPDU

Data LinkPDU

Figure 5.5 Encapsulated SNMP Message

DataSNMPPDU

Page 75: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

RFC 1157RFC 1157

PDUs ::= CHOICE { get-request GetRequest-PDU, get-next-request GetNextRequest-PDU, get-response GetResponse-PDU, set-request SetRequest-PDU, trap Trap-PDU }

Page 76: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

RFC 1157RFC 1157

ErrorStatus ::=INTEGER {

noError(0)tooBig(1)noSuchName(2)bad value(3)readOnly(4)genErr(5)

}

Page 77: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

PDUType

RequestIDError

StatusErrorIndex

Figure 5.8 Get and Set Type PDUs

VarBind 1name

VarBind 1value

...VarBind n

nameVarBind n

value

Page 78: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Tipo de PDUTipo de PDU

get-request [0]

get-next-request [1]

get-response [2]

set-request [3]

trap [4]

Page 79: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Trap PDUTrap PDU

VarBind 1name

VarBind 1value

PDUType

EnterpriseAgent

Address...

VarBind nname

VarBind nvalue

GenericTrap Type

SpecificTrap Type

Timestamp

Page 80: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Traps GenéricasTraps Genéricas

Generic Trap Type Description (brief)coldStart(0) Sending protocol entity is reinitializing itself;

agent's configuration or protocol entityimplementation may be altered

warmStart(1) Sending protocol entity is reinitializing itself;agent configuration or protocol entityimplementation not altered

linkDown(2) Failure of one of the communication linkslinkUp(3) One of the links has come upauthenticationFailure(4) Authentication failureegpNeighborLoss(5) Loss of EGP neighborenterpriseSpecific(6) Enterprise-specific trap

Page 81: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Ordem LexicográficaOrdem Lexicográfica

Numerical Order Lexicographic order1 12 11183 1159 12615 1522 234 22115 250126 2509250 3321 3211118 342509 9

Page 82: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

3 91 2

18

1

5

2

6

2 10

9

214

Figure 5.14 MIB Example for Lexicographic Ordering

11.11.1.51.1.181.21.2.622.22.102.10.933.43.219

Page 83: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

T.E.1.1

Figure 5.15 Get-Next-Request Operation for MIB in Figure 5.12

T.E.2.1 T.E.3.1

T.E.1.2 T.E.2.2 T.E.3.2

E

T

Z

A

B

GetRequest ( A )

GetResponse ( A )

GetNextRequest ( A )

GetResponse ( B )

GetNextRequest ( B )

GetResponse ( T.E.1.1 )

GetNextRequest (T.E.1.1 )

GetResponse ( T.E.1.2 )

GetNextRequest (T.E.1.2 )

GetResponse ( T.E.2.1 )

GetNextRequest (T.E.2.1 )

GetResponse ( T.E.2.2 )

GetNextRequest (T.E.2.2 )

GetResponse ( T.E.3.1 )

GetNextRequest (T.E.3.1 )

GetResponse ( T.E.3.2 )

GetNextRequest (T.E.3.2 )

GetResponse ( Z )

GetNextRequest ( Z )

GetResponse ( noSuchName )

ManagerProcess

AgentProcess

Page 84: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

atIfIndex231316

atPhysAddress0000000C3920B40000000C3920AC0000000C3920AF

atNetAddress192.168.3.1172.16.46.1172.16.49.1

GetNextRequest (sysUpTime,atPhysAddress)

GetResponse( (sysUpTime.0 = "315131795"), (atPhysAddress.13.172.16.46.1 = "0000000C3920AC"))

GetNextRequest (sysUpTime,atPhysAddress.13.172.16.46.1)

GetResponse( (sysUpTime.0 = "315131800"), (atPhysAddress.16.172.16.49.1 = "0000000C3920AF") )

GetNextRequest (sysUpTime,atPhysAddress.16.172.16.49.1)

GetResponse( (sysUpTime.0 = "315131805"), (atPhysAddress.23.192.168.3.1 = "0000000C3920B4") )

GetNextRequest (sysUpTime,atPhysAddress.23.192.168.3.1)

GetResponse( (sysUpTime.0 = "315131810"), (ipForwarding.0 = "1") )

Figure 5.16 GetNextRequest Example with Indices

AgentProcess

ManagerProcess

Page 85: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

snmp(mib-2 11)

snmpInPkts(1)

snmpOutPkts (2)

snmpInBadVersions (3)

snmpInCommunityNames (4)

snmpInBadCommunityUses (5)

snmpInASNParseErrors (6)

-- not used (7)

snmpInTooBigs (8)

snmpInNoSuchNames (9)

snmpInBadValues (10)

snmpInReadOnlys (11)

snmpEnableAuthenTraps (30)

snmpOutTraps (29)

snmpOutGetResponses (28)

snmpOutSetRequests (27)

snmpOutGetNexts (26)

snmpOutGetRequests (25)

snmpOutGenErrs (24)

-- not used (23)

snmpOutBadValues (22)

snmpOutNoSuchNames (21)

snmpOutTooBigs (20)

snmpInGenErrs (12)

snmpInTotalReqVars (13)

snmpInTotalSetVars (14)

snmpInGetRequests (15)

snmpInTraps (19)snmpInGetResponses

(18)snmpInSetRequests (17)

snmpInGetNexts (16)

Figure 5.21 SNMP Group

Page 86: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Diferenças Entre SNMPv1 e SNMPv2

Diferenças Entre SNMPv1 e SNMPv2

• Mensagens para transferências tipo bulk• Mensagens para transferências entre gerentes• Melhorias ao SMI: SMIv2

– Definição de módulos: MODULE-IDENTITY macro– Definição de objetos: OBJECT-IDENTITY macro– Definição de traps: NOTIFICATION-TYPE macro

• Convenções textuais• Melhorias em tabelas• Melhorias na MIB

Page 87: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMPv2

mgmt(2)

directory(1)

experimental(3)

private(4)

Internet{1 3 6 1}

security(5)

snmpv2(6)

Figure 6.1 SNMPv2 Internet Group

Page 88: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMP ManagerApplication

resp

onse

get-b

ulk-

requ

est

get-n

ext-r

eque

st

set-r

eque

st

snm

pV2-

trap

SNMP Manager

SNMP

UDP

IP

DLC

PHY

Physical Medium

SNMP PDU

Figure 6.2 SNMPv2 Network Management Architecture

get-r

eque

st

info

rm-r

eque

st

SNMP AgentApplication

resp

onse

get-b

ulk-

requ

est

get-n

ext-r

eque

st

set-r

eque

st

snm

pV2-

trap

SNMP Agent

SNMP

UDP

IP

DLC

PHY

get-r

eque

st

SNMP ManagerApplication

resp

onse

get-b

ulk-

requ

est

get-n

ext-r

eque

st

set-r

eque

st

snm

pV2-

trap

SNMP Manager

SNMP

UDP

IP

DLC

PHY

get-r

eque

st

info

rm-r

eque

st

SNMP PDU

ApplicationPDU

Physical Medium

ApplicationPDU

Page 89: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Novos Tipos de MensagensNovos Tipos de Mensagens

• inform-request- Mensagem manager-to-manager

• get-bulk-request- transferências de grandes quantidades de

dados• report

- não utilizado

Page 90: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

MODULE-IDENTITY MACRO ::=BEGIN

TYPE NOTATION ::="LAST-UPDATED" value (Update UTCTime)"ORGANIZATION" Text"CONTACT-INFO" Text"DESCRIPTION" TextRevisionPart

VALUE NOTATION ::=value (VALUE OBJECT IDENTIFIER)

RevisionPart ::= Revisions | emptyRevisions ::= Revision | Revisions RevisionRevision ::=

"REVISION" value (UTCTime)"DESCRIPTION" Text

-- uses the NVT ASCII character setText ::= """" string """"

END

Figure 6.7 MODULE-IDENTITY Macro

Page 91: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

isiMIBModule MODULE-IDENTITYLAST-UPDATED "9802101100Z"ORGANIZATION "InfoTech Services Inc."CONTACT-INFO "Mani Subramanian

Tele: 770-111-1111Fax: 770-111-2222email: [email protected]"

DESCRIPTION " Version 1.1 of the InfoTech Services MIB module"Revision "9709021500Z"

DESCRIPTION "Revision 1.0 on September 2, 1997 was a draft version"

Figure 6.8 Example of MODULE-IDENTITY Macro

Page 92: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ObjetosObjetos

• OBJECT IDENTIFIER define a identificação

administrativa de um nó da MIB

• OBJECT-IDENTITY (macro) atribui a um

identificador de objeto um nó da MIB

• OBJECT-TYPE (macro) define o tipo de um

objeto gerenciável

Page 93: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

isiRouter OBJECT-IDENTITYSTATUS currentDESCRIPTION "An 8-slot IP router in the IP router

family." REFERENCE "ISI Memorandum No. ISI-R123 dated January. 20, 1997" ::= {private.enterprises.isi 1}

(a) Example of OBJECT-IDENTITY Macro

Page 94: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

routerIsi123 OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "An 8-slot IP router that can

switch up to 100 million packets per second."

::= {isiRouter 1}

(b) Example of OBJECT-TYPE Macro

Figure 6.10

Page 95: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Expansão de TabelasExpansão de Tabelas

• Expansão de tabelas (augmentation) para uma

tabela dependente adiciona colunas adicionais a

uma tabela existente (tabela base)• Tabelas densas podem ter mais linhas

adicionadas a tabela base• Tabelas esparsas podem suplementar menos

linhas a tabela base

Page 96: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

T1.E1.C1.1

table1(T1)

table1Entry(E1)

T1.E1.C2.1 T1.E1.C3.1

T1.E1.C1.2 T1.E1.C2.2 T1.E1.C3.2

T1.E1.C1.3 T1.E1.C2.3 T1.E1.C3.3

T1.E1.C1.4 T1.E1.C2.4 T.E1.C3.4

table 2(T2)

table2Entry(E2)

T2.E2.C4.1 T2.E2.C5.1

T2.E2.C4.2 T2.E2.C5.2

T2.E2.C4.3 T2.E2.C5.3

T2.E2.C4.4 T2.E2.C5.4

Figure 6.11 Augmentation of Tables

Index: First columnar object in Table 1

Conceptual rows: 1. T1.E1.C1.1 2. T1.E1.C1.2 3. T1.E1.C1.3 4. T1.E1.C1.4

Table 1 Table 2

Page 97: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Convenções TextuaisConvenções Textuais

• Permite a definição de novos tipos

• Faz semântica de tipos de dados consistente e mais legível

• Cria novos tipos de dados a partir de tipos existentes e aplica restrições a estes

• Uma convenção importante em SNMPv2: RowStatus cria e deleta linhas

Page 98: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Textual Convention ExampleTextual Convention Example

DisplayString ::= TEXTUAL-CONVENTIONDISPLAY-HINT "255a"STATUS currentDESCRIPTION "Represents textual

information taken from the NVTASCII character set, as defined inpages 4, 10-11 of RFC 854. …."

SYNTAX OCTET STRING (SIZE (0..255) )

Page 99: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Table 6.4 RowStatus Textual Conventions

State Enumer-ation

Description

active 1 Row exists and is operational notInService 2 Operation on the row is suspended notReady 3 Row does not have all the columnar objects

needed createAndGo 4 This is a one-step process of creation of a

row; immediately goes into active state createAndWait 5 Row is under creation and should not be

commissioned into service destroy 6 Same as Invalid in EntryStatus. Row should

be deleted

Page 100: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Row to be created / deleted

entry1

status.1

table1

index.1 data.1

status.2

status.3

index.2

index.3

data.2

data.3

Figure 6.19 Conceptual Table for Creation and Deletion of Row

Page 101: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Figure 6.20 Create-and-Go Row Creation

SetRequest (status.3 = 4,index.3 = 3,data.3 = DefData )

Response (status.3 = 1,index.3 = 3,data.3 = DefData )

ManagerProcess

AgentProcess

ManagedEntity

Create Instance

Instance Created

Page 102: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Figure 6.21 Create-and-Wait Row Creation

SetRequest (status.3 = 5,index.3 = 3 )Response (

status.3 = 3,index.3 = 3 )

ManagerProcess

AgentProcess

SetRequest (data.3 = DefData )

Response (status.3 = 2data.3 = DefData )

SetRequest (status.3 = 1 )

Response (status.3 = 1 )

GetRequest (data.3 )

Response (data.3 = noSuchInstance)

Page 103: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Figure 6.22 Row Deletion

SetRequest (status.3 = 6 )

Response (status.3 = 6 )

ManagerProcess

AgentProcess

ManagedEntity

Delete Instance

Instance Deleted

Page 104: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

ConformidadeConformidade

• Requisitos mínimos para conformidade de SNMPv2 são definidos pela macro MODULE-COMPLIANCE

• Os módulos da MIB reais implementadas no agente são especificadas pela macroAGENT-CAPABILITIES

• Objetos e traps são combinadas nas macros:• OBJECT-GROUP• NOTIFICATION-GROUP

Page 105: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

systemGroup OBJECT-GROUPOBJECTS {sysDescr, sysObjectID, sysUpTime, sysContact, sysName, sysLocation, sysServices, sysORLastChange, sysORID, sysORUptime, sysORDesc}STATUS currentDESCRIPTION "The system group defines objects which are common to all managed systems."::= {snmpMIBGroups 6}

Figure 6.25 Example of OBJECT-GROUP Macro

Page 106: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

snmpBasicNotificationsGroup NOTIFICATION-GROUPNOTIFICATIONS {coldStart, authenticationFailure}STATUS currentDESCRIPTION "The two notifications which an SNMP-2 entity is required to implement."::= {snmpMIBGroups 7}

Figure 6.27 Example of NOTIFICATION-GROUP Macro

Page 107: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

-- compliance statements

snmpBasicCompliance MODULE-COMPLIANCESTATUS currentDESCRIPTION

"The compliance statement for SNMPv2 entities whichimplement the SNMPv2 MIB."

MODULE -- this module MANDATORY-GROUPS {snmpGroup, snmpSetGroup, systemGroup, snmpBasicNotificationsGroup}

GROUP snmpCommunityGroupDESCRIPTION

"This group is mandatory for SNMPv2 entities which support community-based authentication." ::= {snmpMIBCompliances 2 }

-- units of conformancesnmpGroup OBJECT-GROUP ::= {snmpMIBGroups 8}snmpCommunityGroup OBJECT-GROUP ::= {snmpMIBGroups 9}snmpObsoleteGroup OBJECT-GROUP ::= {snmpMIBGroups 10}

… … … …

Page 108: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

routerIsi123 AGENT-CAPABILITIES PRODUCT-RELEASE "InfoTech Router isiRouter123 release 1.0" STATUS current DESCRIPTION "InfoTech High Speed Router" SUPPORTS snmpMIB INCLUDES {systemGroup, snmpGroup, snmpSetGroup, snmpBasicNotificationsGroup } VARIATION coldStart DESCRIPTION "A coldStart trap is generated on all reboots."

SUPPORTS IF-MIBINCLUDES {ifGeneralGroup, ifPacketGroup}

SUPPORTS IP MIBINCLUDES {ipGroup, icmpGroup}

SUPPORTS TCP-MIBINCLUDES {tcpGroup}

SUPPORTS UDP-MIBINCLUDES {udpGroup}

SUPPORTS EGP-MIBINCLUDES {egpGroup}

::= { isiRouter 1 }

Figure 6.30 Example of AGENT-CAPABILITIES Macro

Page 109: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

mgmt(2

directory(1)

experimental(3)

private(4)

Internet{1 3 6 1}

security(5)

snmpv2(6)

snmpdomains(1)

snmpProxys(2)

snmpModules(3)

Figure 6.31 SNMPv2 Internet Group

snmpMIB(1)

mib-2(1)

system(1)

snmp(11)

snmpMIBConformance(2)

snmpMIBObjects(1)

Page 110: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

MIB no SNMPv2MIB no SNMPv2

• Adiciona controle e monitoração da segurança

• Grupo sistema: Uma tabela sysORTable lista os recursos que o agente monitora e controla

• Grupo SNMP: A maior parte dos objetos do SNMPv1 tornaram-se obsoletos

Page 111: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

snmp(mib-2 11)

snmpInPkts(1)

snmpInBadVersions (3)

snmpInBadCommunityNames (4)

snmpInBadCommunityUses (5)

snmpProxyDrops (32)

snmpSilentDrops (31)

snmpEnableAuthenTraps (30)

Figure 6.33 SNMPv2 SNMP Group

snmpInASNParseErrors (6)

1,3,6,30,31,32 snmpGroup4,5 snmpCommunity Group7,23 not used2,8-23, 24-29 snmpObsoleteGroup

SNMP Group Objects

Page 112: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

authenticationFailure (5)

snmpMIBObjects(snmpMIB 1)

snmpSet(6)

snmpTraps(5)

snmpTrap(4)

snmpTrapOID(1)

snmpTrapEnterprise(3)

coldStart (1)

warmStart (2)

snmpSetSerialNo(1 )

linkUp (4)

linkDown (3)

Figure 6.34 MIB Modules under snmpMIBObjects

Page 113: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Figure 6.37 SNMPv2 PDU (All but Bulk)

PDUType

RequestIDError

StatusErrorIndex

VarBind 1name

VarBind 1value

...VarBind n

nameVarBind n

value

Page 114: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Table 6.11 Values for Types of PDU and Error-status Fields inSNMPv2 PDU

Field Type ValuePDU 0 Get-Request-PDU

1 GetNextRequest-PDU2 Response-PDU3 Set-Request- PDU4 obsolete5 GetBulkRequest-- PDU6 InformRequest- PDU7 SNMPv2 - Trap- PDU

Error Status 0 noError1 tooBig2 noSuchName3 badValue4 readOnly5 genErr6 noAccess7 wrongType8 wrongLength9 wrongEncoding10 wrongValue11 noCreation12 inconsistentValue13 resourceUnavailable14 commitFailed15 undoFailed16 authorizationError17 notWritable18 inconsistentName

Page 115: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Figure 6.38 SNMPv2 GetBulkRequest PDU

PDUType

RequestIDNon-

RepeatersMax

RepetitionsVarBind 1

nameVarBind 1

value...

VarBind nname

VarBind nvalue

Page 116: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

T ZA B

1.1

Figure 6.39 MIB for Operation Sequences in Figures 6.40 and 6.41

E

1.2

1.3

1.4

2.1

2.2

2.3

2.4

3.1

3.2

3.3

3.4

Page 117: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Figure 6.40 Get-Next-Request Operation for MIB in Figure 6.39

T.E.1.1 T.E.2.1 T.E.3.1

T.E.1.2 T.E.2.2 T.E.3.2

E

T

Z

A

B

T.E.1.3 T.E.2.3 T.E.3.3

T.E.1.4 T.E.2.4 T.E.3.4

GetRequest ( A,B )

GetNextRequest (T.E.1.T.E.2,T.E.3)

GetResponse (T.E.1.1,T.E.2.1,T.E.3.1)

GetNextRequest (T.E.1.1,T.E.2.1,T.E.3.1)

GetResponse (T.E.1.2,T.E.2.2,T.E.3.2)

GetResponse (T.E.1.3,T.E.2.3,T.E.3.3)

GetNextRequest (T.E.1.3,T.E.2.3,T.E.3.3)

GetResponse (T.E.1.4,T.E.2.4,T.E.3.4)

GetResponse (T.E.2.1,T.E.3.1,Z)

ManagerProcess

AgentProcessGetResponse (A,B)

GetNextRequest (T.E.1.4,T.E.2.4,T.E.3.4)

GetNextRequest (T.E.1.2,T.E.2.2,T.E.3.2)

Page 118: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

T.E.1.1

Figure 6.41 Get-Bulk-Request Operation for MIB in Figure 6.39

T.E.2.1 T.E.3.1

T.E.1.2 T.E.2.2 T.E.3.2

E

T

Z

A

B

GetBulkRequest ( 2,3,A,B,T.E.1, T.E.2, T.E.3 )

Response ( A, B,T.E.1.1, T.E.2.1, T.E.3.1T.E.1.2, T.E.2.2, T.E.3.2

T.E.1.3, T.E.2.3, T.E.3.3 )

GetBulkRequest ( 0,3,T.E.1.3, T.E.2.3, T.E.3.3 )

Response ( T.E.1.4, T.E.2.4, T.E.3.4, Z , " endOfMibView" )

T.E.1.3 T.E.2.3 T.E.3.3

T.E.1.4 T.E.2.4 T.E.3.4

ManagerProcess

AgentProcess

Page 119: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

PDU para SNMPv2 Trap e Inform-Request

PDU para SNMPv2 Trap e Inform-Request

PDUType

RequestIDError

StatusErrorIndex

VarBind 1sysUpTime

VarBind 1value

...

VarBind 2snmpTrapOID

VarBind 2value

• Inform-request comporta-se como uma trap porque a mensagem vai de um gerente a outro. O gerente que recebe a mensagem responde ao gerente que a solicitou.

Page 120: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMPv1Agents

Bilingual Manager

SNMPv1Interpreter

SNMPv2Interpreter

AgentProfile

SNMPv2Agents

Figure 6.45 SNMP Bilingual Manager

Page 121: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMPv1Agents

SNMPv2 Manager

ProxyServer

SNMPv2Agents

Figure 6.46 SNMPv2 Proxy Server Configuration

Page 122: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

Pass-Through

Pass-Through

SNMPv2 Manager SNMPv1 Agent

GetNextRequest

GetRequest

Pass-ThroughSetRequest

Set: 1. non-repeaters = 0 2. max-repetitions = 0

GetBulkRequest

Pass-ThroughException: For 'tooBig' error, contents of variable-bindings

field removed .Response

Prepend VarBind: 1. sysUpTime.0 2. snmpTrapOID.0

SNMPv2-Trap

GetRequest

GetResponse

GetNextRequest

SetRequest

GetNextRequest

Trap

SNMP v2-v1 Proxy Server

Figure 6.47 SNMP v2-v1 Proxy Server

Page 123: © Departamento de Ciência da Computação - UFMG Paradigmas de Gerenciamento Internet.

© Departamento de Ciência da Computação - UFMG

SNMPv3SNMPv3

Texto distribuído em sala