GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

79
GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy

Transcript of GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Page 1: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

GERENCIAMENTO DE REDES

Parte 2

Prof. Marcos Argachoy

Page 2: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação• SMISMI

– descreve o cenário no qual a MIB pode ser definida.– identifica os tipos de dados que podem ser empregados.

• escalar e matriz bidimensional.

– especifica como os recursos gerenciados devem ser representados na MIB e como devem ser nomeados.

– define regras de codificação dos valores dos objetos de dados.

• MIBMIB– conjunto de objetos dentro de um Sistema Aberto, onde um

objeto gerenciado corresponde à visão abstrata de um recurso real deste sistema.

Page 3: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP MIB

OBJECT TYPE:

OBJECT TYPE:OBJECT TYPE:

objetos especificados via construção OBJECT-TYPE da SMI

Um módulo MIB é especificado SMI MODULE-IDENTITY

(100 MIBs padronizadas, mais proprietárias)

MODULE

Page 4: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SMIStructure of Management Information

• Baseada em Abstract Syntax Notation.1

• Especificada no RFC 1155

• Regras para descrever informação de gerenciamento

• Descreve:• Onde encontrar os dados - estrutura da

informação• Como interpretá-los - representação dos dados

Page 5: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SMI é um subconjunto da ASN.1

• SMI usa os seguintes tipos básicos:• Integer, Octet String, Sequence, Sequence Of,

Object Identifier, Null

• Outros tipos podem ser construídos a partir destes

• Procura simplificar a implementação do ASN.1, porém cria problemas de compatibilidade com compiladores de mercado!

Page 6: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

OBJECT TYPE MACRO

OBJECT-TYPE MACRO ::=BEGIN

TYPE NOTATION ::= "SYNTAX" type (TYPE ObjectSyntax)

"ACCESS" Access"STATUS" Status

VALUE NOTATION ::= value (VALUE ObjectName)

Access ::= "read-only" | "read-write" | "write-only" | "not-accessible"

Status ::= "mandatory" | "optional" | "obsolete"

END

Page 7: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

A macro Object-Type SMI v2

• Mudanças introduzidas na SMI v2– campos de unidades

• Úteis para medidas

– campo max-access• Acesso máximo permitido, independentemente

de autorização• Não há mais a categoria write-only• Acrescentada a categoria Read-create

– Mudanças no campo de status

Page 8: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SMI v1 Datatypes

• Tipos de dados definidos no SMIv1 (RFC 1155)• Network Address• Counter• Gauge• Timeticks• Opaque

• Todos esses são construídos a partir do sub-conjunto de tipos básicos do ASN.1 permitidos pela SMI.

Page 9: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SMI v2 Datatypes

• Tipos de dados definidos no SMIv2 (RFC )• IP address• MAC address Novo• Unsigned integer - 32-bit Novo• Counter• Counter - 64-bit Novo• Gauge• TimeTicks• Opaque• Etc…

Page 10: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Tipo de dados SMI RFC-1155

• INTEGER Um contador numérico de 32 bits. Pode representar, por exemplo, o estado de uma interface de um rorteador up (1), down (2) ou testing (3). O valor zero (0) não deve ser usado de acordo com ao RFC 1155.

• OCTET STRING Uma string de zero ou mais octetos geralmente usada para representar strings de textos ou endereços físicos.

Page 11: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Tipo de dados SMI RFC-1155

• COUNTER Um contador com valor mínimo de 0 e máximo de 232 - 1 (4.294.967.295). Por exemplo, quando um roteador é ligado ou reiniciado este valor começa com 0, quando o valor máximo é alcançado a contagem é reiniciada com valor 0. Pode ser usado para representar, por exemplo, octetos enviados e recebido em uma interface.

Page 12: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Tipo de dados SMI RFC-1155

• OBJECT IDENTIFIER Uma string decimal separada por pontos que representa um objeto gerenciado na árvore de objetos. Por exemplo, a Cisco é 1.3.6.1.4.1.9.

• NULL Atualmente não utilizado pelo SNMP;• SEQUENCE Define listas que contém 0 ou mais

tipos de dados ASN.1• SEQUENCE OF Define um objeto gerenciado

produzido de um tipo SEQUENCE do ASN.1.

Page 13: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Tipo de dados SMI RFC-1155

• IPADDRESS Representa um endereço Ipv4 de 32 bits.

• NETWORKADDRESS O mesmo do IpAddress, mas pode representar outros tipos de endereços de redes.

• GAUGE Um contador com valor mínimo de 0 e máximo de 232 – 1 (4.294.967.295). Diferente do COUNTER ele pode incrementar ou decrementar, mas nunca pode exceder o valor máximo. A velocidade de uma interface de um roteador é medida pelo GAUGE.

Page 14: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Tipo de dados SMI RFC-1155

• OPAQUE Permite qualquer notação ASN.1 codificado como OCTET STRING.

Page 15: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Tipo de dados SMI v2

• INTEGER32 O mesmo do INTEGER.

• COUNTER32 O mesmo de COUNTER.

• GAUGE32 O mesmo de GAUGE.

• UNSIGNED32 Representa valores decimais entre de 0 até 232 – 1 (4.294.967.295).

Page 16: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Tipo de dados SMI v2

• COUNTER64 Similar ao COUNTER32, valor mínimo de 0 e máximo de 264 -1 (18.446.744.073.709.551.615). É ideal em situações onde COUNTER32 atinge seu valor máximo em um curto intervalo de tempo.

• BITS - Uma enumeração não negativa chamada bits.

Page 17: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

MIBs - ExemplosysName OBJECT-TYPE

SYNTAX DisplayString (SIZE (0..255))ACCESS read-writeSTATUS mandatoryDESCRIPTION"An administratively-assigned name for thismanaged node. By convention, this is the node’sfully-qualified domain name."

::= { system 5 }

sysLocation OBJECT-TYPESYNTAX DisplayString (SIZE (0..255))ACCESS read-writeSTATUS mandatoryDESCRIPTION"The physical location of this node (e.g.,‘telephone closet, 3rd floor’)."

::= { system 6 }

Page 18: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

MIBs - Exemplo

assocAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION

"MAC address of a Client associated with the Access Point. If the association is pending (that is, the Client is scanning, authenticating or associating), assocAddress contains the MAC address of that Client with the group bit set to indicate that the Access Point is aware of the presence of that

Client. The other objects of the entry will be updated based on the information extracted from the received Probe Requests."

::= { assocEntry 2 }

Page 19: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

A MIB padrão da Internet

• Usando a SMI, os objetos de gerenciamento são descritos e estes objetos são agrupados nas MIBs.

• RFC 1066 descreve a primeira MIB padrão, MIB-I.

• RFC 1158 e 1212 atualizam esta MIB para a MIB-II.

Page 20: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Grupos da MIB-II

• 171 objetos em 11 grupos constituem a MIB-II

– system– interfaces– at– ip– icmp– tcp

– udp– egp– cmot– transmission– snmp

Page 21: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação

Grupos de Variável Tipo de InformaçãoSystem Host ou Gateway

Interfaces Interfaces para Sub-redes

Address Translation Tradução de Endereços (mapeamento ARPe RARP)

IP Protocolo IP

ICMP Protocolo ICMP

TCP Protocolo TCP

UDP Protocolo UDP

EGP Protocolo EGP

Transmission Esquemas de transmissão e protocolos deacesso em interfaces de sistema

SNMP Implementação do SNMP

Page 22: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação

ISO (1)

Org (3)

DoD (6)

Internet (1)

MIB (1)Private(4)

Experim (3)

Directory (1)Mgmt (2)

Enterprises (1)

Chipcom (49)

system (1)

interfaces (2)

address transl (3)

ip (4)

icmp (5)

tcp (6)

udp (7)egp (8)

snmp (11)

transmi (10)

IBM (1)

Cabletron (59)

3Com (43)

Fonte: 3Com

Page 23: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação

ISO (1)

Org (3)

DoD (6)Internet (1)

Experim (3)Mgmt (2)

system (1)

interfaces (2)

address transl (3)

ip (4)

icmp (5)

tcp (6)

udp (7)egp (8)

snmp (11)

transmi (10)

MIB (1)

Private (4)

Directory (1)

tcpConnTable (13)

Page 24: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação

tcpConnState

1.3.6.1.2.1.6.13.1.1

tcpConnLocalAddress1.3.6.1.2.1.6.13.1.2

tcpConnLocalPort1.3.6.1.2.1.6.13.1.3

tcpConnRemAddress1.3.6.1.2.1.6.13.1.4

tcpConnRemPort1.3.6.1.2.1.6.13.1.5

2 10.1.1.9 14 0.0.0.0 0tcp.ConnEntry1.3.6.1.2.1.6.13.1

3 10.1.1.9 99 10.1.2.3 14tcp.ConnEntry1.3.6.1.2.1.6.13.1

5 10.1.1.9 12 89.1.1.7 84tcp.ConnEntry1.3.6.1.2.1.6.13.1

Exemplos de Estado: 2 - Listen - Espera Pedido de Conexão 5 - Established - Conexão Estabelecida

índice índice índice índice

tcpConnTable (1.3.6.1.2.1.6.13)

Page 25: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação

• Exemplo de Especificação da MIB em ASN.1:– tcpConnTable OBJECT-TYPE

SYNTAX SEQUENCE OF TcpConnEntry

ACCESS not-accessible

STATUS mandatory

DESCRIPTION “Contém informações sobre conexões TCP”

::= { tcp 13 }

– tcpConnEntry OBJECT-TYPESYNTAX TcpConnEntry

ACCESS not-accessible

STATUS mandatory

DESCRIPTION “Contém informações sobre uma conexão TCP”

INDEX {tcpConnLocalAddress, tcpConnLocalPort,

tcpConnRemAddress, tcpConnRemPort}

::= {tcpConnTable 1}

Page 26: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação

• Exemplo de Especificação da MIB em ASN.1 (cont):

– TcpConnEntry ::= SEQUENCE {

tcpConnState INTEGER,

tcpConnLocalAddress IpAddress,

tcpConnLocalPort INTEGER (0..65535),

tcpConnRemAddress IpAddress,

tcpConnRemPort INTEGER (0..65535)}

Page 27: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação• A MIB é definida através de:

– Estrutura de Nomeação:Estrutura de Nomeação:• Os objetos são nomeados tomando por base uma hierarquia de

registro.

• Para a MIB-I, foram especificados 8 grupos de variáveis e para MIB-II 10 grupos.

– Sintaxe dos Objetos:Sintaxe dos Objetos:• Especifica o tipo de dado de um objeto, os valores que pode

assumir e sua relação com outros objetos.

• Os tipos de dados especificados para a MIB constituem um subconjunto do ASN.1 (Abstract Syntax One).

• Como exemplos, podem-se citar: simples(e.g., integer, contador, listas, tabelas, entre outros.

– Codificação:Codificação:• Emprega o BER (Basic Encoding Rules) associado ao ASN.1.

Page 28: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Exemplo:

MIB-II System Group

• Objetos no grupo System– sysDescr, exemplo: AXI 520 – sysObjectID, exemplo: 1.3.6.1.4.1.173.1.2.4– sysUpTime, exemplo: 6752342– sysContact, exemplo: Bob Evans, engineering– sysName, exemplo: Chicago WAN– sysLocation, exemplo: Bldg 3, Floor 3, Room 5– sysServices, exemplo: 0x48

Page 29: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Exemplo:

Grupo MIB-II Interfaces

• Informação genérica sobre interfaces

• Os dados são armazenados em tabelas

• Alguns exemplos:– ifIndex, exemplo: 2– ifDescr, exemplo: enet0– ifMTU, exemplo: 1500– ifInOctets, exemplo: 13452346

Page 30: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Outras MIBs padrão

• O IETF aceita propostas para MIBs• Devem ser especificadas com SMI v2• Um grande número de MIBs está disponível:

• AppleTalk-MIB• Frame-Relay-DTE-MIB• ISDN-MIB• Printer-MIB• RMON-MIB, RMON2-MIB

Page 31: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Enterprise MIBs

• Fabricantes de equipamentos e sistemas podem acrescentar informações de seu interesse específico embaxio do ramo “private” da árvore de nomeação

iso (1)org (3)

dod (6)

internet (1)

private (4)

enterprises (1)

ibm (2) acc (5) cisco (9) hp(11) 3com(43) at&t(74) .............

Page 32: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Exemplo de MIB : módulo UDP

Object ID Name Type Comments

1.3.6.1.2.1.7.1 UDPInDatagrams Counter32 total # datagrams delivered

at this node

1.3.6.1.2.1.7.2 UDPNoPorts Counter32 # underliverable datagrams

no app at portl

1.3.6.1.2.1.7.3 UDInErrors Counter32 # undeliverable datagrams

all other reasons

1.3.6.1.2.1.7.4 UDPOutDatagrams Counter32 # datagrams sent

1.3.6.1.2.1.7.5 udpTable SEQUENCE one entry for each port

in use by app, gives port #

and IP address

Page 33: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Nomeação de Objetos

questão: como nomear cada possível objeto padrão (protocolos, dados, outros..) em cada possível padrão de rede??

resposta: ISO Object Identifier tree: – nomeação hierarquica de todos os objetos – cada ramificação tem um nome e um número

1.3.6.1.2.1.7.1ISO

ISO-ident. Org.US DoDInternet

udpInDatagramsUDPMIB2management

Page 34: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Examine www.alvestrand.no/harald/objectid/top.html

OSI Object

Identifier Tree

Page 35: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Protocolo SNMP: tipos de mensagens

GetRequestGetNextRequestGetBulkRequest

Mgr-to-agent: “get me data”(instance,next in list, block)

Tipo de Mensagem Função

InformRequest Mgr-to-Mgr: here’s MIB value

SetRequest Mgr-to-agent: set MIB value

Response Agent-to-mgr: value, response to Request

Trap Agent-to-mgr: inform managerof exceptional event

Page 36: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Protocolo SNMP: formatos de mensagens

Page 37: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

O problema de apresentação

Q: uma cópia perfeita dos dados de memória a memória resolve o problema de comunicação entre computadores distintos?

R: nem sempre!

problema: diferentes formatos de dados e convenções de armazenamento

a0000000100000011

a

0000001100000001

test.codetest.x

test.code

test.x

Formato do host 1 Formato do host 2

Page 38: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Resolvendo o problema de apresentação

1. Transladar o formato do host local para um formato independente de host

2. Transmitir os dados num formato independente de host

3. Transladar o formato independente para o formato do host remoto

Page 39: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

ASN.1: Abstract Syntax Notation 1

• ISO standard X.208– usado extensivamente na Internet– é como comer verduras: saber isto “é bom para você”!

• Tipos de dados definidos, object constructors – como SMI

• BER: Basic Encoding Rules– especifica como os dados definidos em ASN.1-devem

ser transmitidos– cada objeto transmitido tem codificação Type, Length,

Value (TLV) encoding

Page 40: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Codificação TLVIdeia: os dados transmitidos são auto-identificáveis

– T: tipo de dados, um dos tipos definidos em ASN.1

– L: tamanho dos dados em bytes

– V: valor do dados, codificado de acordo com as regras do ASN.1

1234569

BooleanIntegerBitstringOctet stringNullObject IdentifierReal

Valor do Tag Tipo

Page 41: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Codificação TLV

exemplo

Valor, 5 octets (chars)Tamanho, 5 bytes

Tipo=4, octet string

Valor, 259(L) Tamanho, 2 bytes

Tipo=2, integer

Page 42: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Base de Informação

SG

SG

SG

SG

Rede deGerenciamen

to

Rede de Comunicação Rede de Comunicação

Rede de Comunicação Rede de Comunicação

Legenda:

SG

- recurso gerenciado- objeto gerenciado- Sistema de Gerenciamento

Page 43: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Definições de Traps

• Não há traps na SMI v1– Ao contrário, os traps são definidos no

SNMP

• SMI v2 introduz traps como objetos– Melhor estrutura– Permite que novos traps sejam definidos

por fabricantes ou outras partes

Page 44: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

IP

UDP

SNMP gerente

Acesso à Sub-rede

Entidade de Gerencia MIB

Rede

Processo de AplicaçãoGerente

UDP

SNMP agente

Acesso à Sub-rede

IP

Entidade de GerenciaMIB

GeralG

etR

equest

GetN

extR

equest

SetR

equest

GetR

esp

onse

Tra

p

GetR

equest

GetN

extR

equest

SetR

equest

GetR

esp

onse

Tra

p

Mensagens

SNMP

Mensagens Aplicação

Page 45: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - O Protocolo

• Protocolo da camada de aplicação– Transportado pelo protocolo UDP

• Outras alternativas são possíveis, mas não são usadas

• Retransmissões são responsabilidade da aplicação

• Segurança• SNMP v1 oferece poucos recursos de segurança,

isto limita a utilizabilidade do protocolo• Melhorado no SNMP v3

Page 46: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

GetRequestPDU

GetResponsePDU

Gerente Agente

GetNextRequestPDU

GetResponsePDU

Gerente Agente

SetRequestPDU

GetResponsePDU

Gerente Agente

TrapPDU

Gerente Agente

(b) Atualização de Dados (c) Notificação

(a) Leitura de Dados

Page 47: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

PDU type request id 0 0 variablebindings

(a) GetRequestPDU, GetNextRequestPDU e SetRequestPDU

PDU type request id errorstatus

error index variable bindings

(b) GetResponsePDU

PDUtype

enterprise

agentaddr

generictrap

specifictrap

timestamp

variablebindings

(c) Trap

version community SNMP PDU

(a) Mensagem SNMP

Page 48: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

Campo Descrição

version versão do SNMP

community informação utilizada como senha para autenticar amensagem SNMP.

request id identificação de pedido.

error status indica o tipo de erro ocorrido no tratatamento dopedido correspondente (e.g., 0 - sem erro, 1 - requestPDU muito longa... (4) - objeto read-only).

error index informação adicional relativa ao erro ocorrido,contendo a indicação da variável da lista que causou doerro)

variablebindings lista de variáveis e seus valores.

enterprise tipo do objeto que origou o trap.

agent addr endereço IP do objeto que gerou o trap.

generic trap tipo de trap

specific trap código que especifica a natureza do trap.

time-stamp tempo decorrido entre a última reniciação da entidadeque emitiu o trap e a generação de trap.

Page 49: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

Page 50: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

• GetRequest PDUGetRequest PDU– operação atômica: só é efetuada se puderem ser lidos os

valores de todas as variáveis contidas na lista.– Exemplo:

• GetRequest (tcpConnState, tcpConnLocalAddress= 10.1.1.9, tcpConnLocalPort=14, tcpConnRemAddress= 0.0.0.0, tcpConnRemPort=0)

• Get Request (1.3.6.1.2.1.6.13.1.1, 1.3.6.1.2.1.6.13.1.2= 10.1.1.9, 1.3.6.1.2.1.6.13.1.3=14, 1.3.6.1.2.1.6.13.1.4=0.0.0.0, 1.3.6.1.2.1.6.13.1.5=0).

• GetResponsePDUGetResponsePDU– Exemplo:

• GetResponse (tcpConnState=2, tcpConnLocalAddress= 10.1.1.9, tcpConnLocalPort=14, tcpConnRemAddress= 0.0.0.0, tcpConnRemPort=0).

Page 51: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

• SetRequest PDU SetRequest PDU – operação atômica: só é efetuada se puderem ser atualizados os

valores de todas as variáveis contidas na lista.– é usada para atualizar variáveis e inserir ou remover a linha de

uma tabela (depende da implementação).– Exemplo:

• SetRequest (tcpConnState=1, tcpConnLocalAddress= 0.0.0.0, tcpConnLocalPort=21, tcpConnRemAddress= 0.0.0.0, tcpConnRemPort=0).

• SetRequest (1.3.6.1.2.1.6.13.1.1=1, 1.3.6.1.2.1.6.13.1.2=0.0.0.0, 1.3.6.1.2.1.6.13.1.3=21, 1.3.6.1.2.1.6.13.1.2=0.0.0.0, 1.3.6.1.2.1.6.13.1.3=0).

e obtém como resposta:• GetResponse (1.3.6.1.2.1.6.13.1.1=1, 1.3.6.1.2.1.6.13.1.2=0.0.0.0,

1.3.6.1.2.1.6.13.1.3=21, 1.3.6.1.2.1.6.13.1.2=0.0.0.0, 1.3.6.1.2.1.6.13.1.3=0).

Page 52: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP - Protocolo de Gerenciamento

• Trap PDU - TiposTrap PDU - Tipos (generic trap)::– coldStart (0): indica a ocorrência de reiniciação da

entidade emissora devido a uma falha.– warmStart (1): indica a ocorrência de reiniciação rotineira

da entidade emissora.– linkDown (2): sinaliza a falha de um enlace de

comunicação do agente.– linkUp (3): sinaliza a reativação de um enlace de

comunicação do agente.– authenticationFailure (4): indica que foi recebida uma

mensagem com problema de autenticação.– egpNeighborLoss (5): informa a perda de comunicação

com gateway (EG)vizinho.– enterpriseSpecific (6): indica a ocorrência de algum evento

específico descrito no campo specific trap.

Page 53: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP v1 Formatos de Mensagens

Version Community PDU Type Req. ID Error Status Error StatusError Status

Object ID Value Object ID ValueObject ID

VariableBindings

• GetRequest

1 public get 12345 00VariableBindings

• Formato geral

NULL 1.3.6.1... NULL1.3.6.1...

Page 54: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP v1 Formatos de Mensagens

• Set

1 netman set 00VariableBindings

public getresponse 00VariableBindings

• GetResponse

1 12345

Object ID up 1.3.6... 11.3.6….

Object ID 2345 1.3.6... up1.3.6….

Page 55: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Formato das Mensagens SNMPv1

SNMP-Message::= SEQUENCE { version INTEGER { version-1 (0) } community OCTET STRING data ANY}

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

GetRequest-PDU::=[0] IMPLICIT SEQUENCE { request-id RequestID, error-status ErrorStatus, error-index ErrorIndex, variable-bindings VarBindList}

Detalhamento dos Campos:version: versão do protocolo utilizadacommunity: grupo de máquinas gerenciadasrequest-id: inteiro de 4 bytes que associa comando e respostaerror-status: sinalizador de erros (valor 0 nos pedidos)error-index: código de erro (valor 0 nos pedidos)VarBindList: lista de variáveis cujo valor é solicitado

Page 56: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Formato das Mensagens SNMPv1

RequestID ::= INTEGERErrorStatus ::= INTEGER { noError (0) tooBig(1), no SuchName(2), badValue(3), readOnly(4), genErr(5)}

ErrorIndex ::= INTEGER

VarBind ::= SEQUENCE { name ObjectName, value ObjectSyntax }

VarBindList ::= SEQUENCE OF VarBind

IMPORTS ObjectName, ObjectSyntax, NetworkAddress, IpAddress, TimeTicks FROM RFC1155-SMI;

Acesso a objetos escalares : o nome do objeto na MIB deve ser seguido por um 0, na forma x.0 em todos os acessos a este tipo de objeto

Page 57: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Acesso a tabelas da MIB-2a) Tabela ifTable

O campo ifIndex é usado como um índice para a tabela. Assim o campo ifType é definidocomo o objeto: 1.3.6.1.2.1.2.2.1.3. Para acessarmos este objeto na interface com ifIndex = 2usa-se o identificador de objeto: 1.3.6.1.2.1.2.2.1.3.2

b) Tabela atTable

c) Tabela ipAddrTable

d) Tabela ifRoutingTable

Os campos atIfIndex e atNetAddress são usados como índice para esta tabela. Por exemplo,para encontrar o endereço físico associado com o endereço IP 89.1.1.42 na interface 3deve ser usado o identificador de objeto: athysAddress.3.1.89.1.1.42

O campo ipAdEntAddr é usado como índice da tabela

O campo ipRouteDest é usado como índice para a tabela

e) Tabela tcpConnTableOs campos tcpConnLocalAddress, tcpConnRemoteAddress, tcpConnLocalPort e tcpConnRemotePort são usados como índices para esta tabela. Por exemplo, suponhaque deseja-se saber o estado da uma conexão TCP entre o endereço local 89.1.1.42, na porta 21, e o endereço remoto 10.0.0.51 na porta 2059, a desejada instância do objetoserá identificada por: tcpConnState.89.1.1.42.21.10.0.0.51.2059

Page 58: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Exemplo de Acesso a Tabelas

Tabela de Endereços IP de uma Máquina:

ipAddrTable::= SEQUENCE of IpAddrEntryIpAddrEntry ::= SEQUENCE { ipAdEntAddr IpAddress, ipAdEntIfIndex INTEGER, ipAdEntNetmask IpAddress, ipAdEntBcastAddr IpAddress, ipAdEntReasmMaxSize INTEGER (0..65535) }

ipAddrTable = 1.3.6.1.2.1.4.20ipAddrEntry = {ipAddrTable 1}ipAdEntBcastAddr = {ipAddrEntry 4}

Para acessar o endereço de broadcast da interface com endereço IP 128.10.2.3, usa-seo seguinte identificador de objeto na mensagem SNMP:

1.3.6.1.2.1.4.20.1.4.128.10.2.31.3.6.1.2.1.4.20.1.4.128.10.2.3

Page 59: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Operação GetNextRequest

• Todos os objetos na árvore da MIB são ordenados de forma lexicográfica

• O grupo “interfaces” segue o grupo “system” • O objeto 1.3.6.1.2.1.1.7 segue (vem depois) do objeto

1.3.6.1.2.1.2.1

• GetNext returna o nome do próximo objeto (e seu valor) em relação ao objeto solicitado– Permite caminhar através da árvore da MIB,

principalmente no caso em que o número de instâncias de um objeto é desconhecido

– Permite verificar se um determinado objeto está implementado

Page 60: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP v1 Traps

• No SNMP v1 e SMI v1• Traps genéricos = mensagens especiais• Enterprise traps = apontam para objetos da MIB

• No SMI v2, os traps genéricos são parte da MIB padrão

Enter-prise

VariableBindings

Object ID 23 1.3.6... up1.3.6….

Agent address

Generic Trap

Specific Trap Timestamp

Page 61: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

SNMP v1 Ambiente de Segurança

• Informações de gerenciamento precisam ser protegidas em relação a acessos não autorizados.

• SNMP é fraco a este respeito

• SNMP v1 usa um campo denominado “community”

• Texto aberto é transmitido entre o agente e o gerente, desta forma a captura de dados é relativamente simples para quem tenha acesso á rede

• O efeito é que o SNMP v1 é usado principalmente para monitoração, mas não para controle

Page 62: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Abstract Syntax Notation 1

• Linguagem abstrata independente de máquina

• Definida pela ISO• Consiste de

– Modulos– Tipos– Valores– Macros

RFC1213-MIB DEFINITIONS::= BEGIN

IMPORTS

mgmt, NetworkAddress, IpAddress, Counter, Gauge, TimeTicks

FROM RFC1155-SMI

OBJECT-TYPE

FROM RFC-1212;

mib-2 OBJECT IDENTIFIER::={mgmt 1}

DisplayString::=OCTET STRING

PhysAddress::=OCTET STRING

system OBJECT IDENTIFIER::={mib-2 1}

.

.

.

Page 63: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Características do ASN.1

• Blocos Básicos– Modules– Types– Values– Macros

• Tipos– Integer – Octet String– Object Identifier– Real– Sequence– Sequence Of

Page 64: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

ASN.1 Basic Encoding Rules

• ASN.1 define a sintaxe de dados de forma abstrata, independente de realização

• Basic Encoding Rules (BER) define a sintaxe para transferência de informação entre sistemas abertos

• Uma mesma sintaxe abstrata pode permitir várias sintaxes de transferência, mas no SNMP é utilizada somente uma forma limitada do BER

Page 65: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

ASN-1: regras básicas de codificação

O Modelo OSI define um conjunto de regras a serem utilizadas nasintaxe de transferência de mensagens da camada de aplicação. Esteconjunto denomina-se BER (Basic Enconding Rules) e baseia-se naregra TLV: Type, Length, Value

Tipo Tamanho Valor

Tipo Tamanho Valor Tipo Tamanho Valor

A técnica de codificação é recursiva, podendo ser usada um númeroindefinido de vezes.Um tipo que possui outro tipo no seu campo de valor é chamado“construído”, caso contrário, o tipo é “primitivo”

Page 66: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Codificação do Campo TIPO

8 7 6 5 4 3 2 1

CLASSE DOIDENTIFICADOR00 - Universal01 - Aplicação10 - Contexto11 - Privado

ANINHAMENTO0 - Primitivo1 - Construído

TAG

1 BOOLEAN2 INTEGER3 BIT STRING4 OCTET STRING5 NULL6 OBJECT IDENTIFIER16 SEQUENCE17 SET18 NUMERIC STRING22 IA5 STRING

TAGs para Tipos Universais:

Page 67: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMONRemote Network Monitoring

• Introduz um recurso de gerenciamento hierárquico na estrutura do SNMP

• Objetivos do RMON• Operação offline • Monitoração preemptive• Detecção de problemas e informação • Dados de valor adicionado• Múltiplos gerenciadores

• RMON é uma MIB (RFCs 1757, 2021)

Page 68: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

A Filosofia da MIB RMON

• A MIB RMON permite a configuração remota do monitor

• Contém grupos de dados e de controle• Grupos de controle são usados para configurar a

operação do monitor remoto• Grupos de dados são usados para armazenar os dados

coletados

• Existem duas versões de RMON• RMON 1, Camadas 1-2 no modelo OSI • RMON 2, Camadas 3 para cima no modelo OSI

Page 69: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON

Roteador

Roteador

Roteador

Rede de Longa Distância

Roteador

RMON

RMON

RMON

Estação Gerente

RMON

Page 70: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON

• Os principais objetivos do RMON são:

– reduzir a quantidade de informações trocadas entre a rede local gerenciada e a estação gerente conectada a uma rede local remota.

– permitir o gerenciamento pró-ativo da rede, diagnosticando e registrando eventos que possibilitem detectar o mal funcionamento e prever falhas que interrompam a sua operação.

– detectar, registrar e informar à estação gerente sobre situações de erro e eventos significativos da rede.

– realizar análise e levantar informações estatísticas sobre os dados coletados em uma sub-rede, liberando a estação gerente desta tarefa.

– enviar informações de gerenciamento para múltiplas estações gerentes.

Page 71: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON

RMON2RMON2

RMON 1RMON 1GerenciamentoGerenciamentode Operaçõesde Operações

GerenciamentoGerenciamentode Negóciosde Negócios

Enlace

Física

Aplicação

Transporte

Rede

Arquitetura InternetFonte: 3Com

Page 72: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON 1 - MIB

• Aquisição de Estatísticas de Tráfego

– Estatístico (statistics)

– Histórico (history)

– Hosts

– Classificação de n Hosts (hostTopN)

– Matriz

– Token Ring

• Detecção e Resolução de Situações Críticas e de Erro.

– Alarme (alarm)

– Filtro (filter)

– Captura de Pacote (packet capture)

– Evento (event)

Page 73: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON 1 - MIB

ISOOrg

DoD

InternetMgmt

MIB

RMON

MIB I

MIB II

Private

1. Statistics

9. Event

7. Filter

8. Packet Capture

6. Matrix

5. Host Top N

4. Hosts

3. Alarm 2. History

10. Token Ring Fonte: 3Com

Page 74: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON 1 - MIB

• A RMON 1 -MIB é subconjunto da MIB II. Foram especificados dez grupos básicos de variáveis. Tais grupos incluem:– Estatístico (statistics): mantém estatísticas de utilização, tráfego

e taxas de erros ocorridos em um segmento de rede. – Histórico (history): permite definir intervalos de amostragem de

informações do grupo estatístico e registrar tais informações para fins de análise da tendência de comportamento de uma rede, oferecendo subsídios para o gerenciamento pró-ativo da rede.

– Alarme (alarm): possibilita estabelecer condições limites de operação de uma rede que devem provocar a geração de alarmes.

– Hosts: contém informações relativas ao tráfego entrante e sainte dos hosts conectados através da referida rede.

Page 75: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON 1 - MIB• Classificação de N hosts (hostTopN): permite classificar os hosts

segundo critérios pré-definidos, como por exemplo, determinar quais os hosts conectados através da rede geram maior tráfego em um dado período do dia;

• Matriz (matrix): contém informações de utilização da rede e taxa de erros na forma de matriz, que associa pares de endereços MAC (Medium Access Control) de elementos da rede. Isto facilita a obtenção de informações em relação à comunicação entre um par qualquer de estações.

• Filtro (filter): define condições associadas a pacotes trafegados pela rede, que uma vez satisfeitas implica na captura de tais pacotes pelo elemento RMON ou no registro de estatísticas baseadas nos mesmos;.

Page 76: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

RMON 1 - MIB

– Captura de Pacotes (packet capture): determina como devem ser capturados os dados dos pacotes, trafegados pela rede, a serem enviados aos gerentes. Definem-se quais informações desses pacotes devem ser armazenadas e como são controlados os respectivos buffers de armazenamento. Como default, são, normalmente, capturados os 100 primeiros bytes dos pacotes filtrados pelo elemento RMON.

– Evento (event): define todos os eventos que implicam no envio de informações do elemento RMON aos gerentes.

– Token Ring: define as informações específicas que devem ser coletadas no caso de um segmento de rede Token Ring.

Page 77: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Grupos na MIB RMON-1

• Ethernet Statistics• History Control

• Ethernet History

• Alarm

• Host

• HostTopN

• Matrix

• Filter

• Packet Capture

• Event

Page 78: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Grupos na MIB RMON-2

• protocolDir• protocolDist• addressMap• nlHost• nlMatrix

• alHost• alMatrix• userHistory• probeConfig• rmonConfiguration

Page 79: GERENCIAMENTO DE REDES Parte 2 Prof. Marcos Argachoy.

Exemplo: Uso do RMON

RMON Probe

RMON Probe

Router

Router

Manager

RMON Probe

Bridge

RMON Probe

Monitores (probes) RMON podem ser implementados de forma standalone ou como parte de elementos de rede

Monitores (probes) RMON podem ser implementados de forma standalone ou como parte de elementos de rede