Gestão de Redes e Sistemas Distribuídos
Arquitectura de Gestão SNMPv1
2003/2004
Teresa Vazão
IST/INESC
Contactos:IST/Tagus-Park
Email: [email protected]
Tel: 214233242
Sumário
 Módulo II
• Arquitectura de Gestão SNMP
•
•
•
•
•
• Conceitos fundamentais
• SNMPv1: Modelo de Informação e de Comunicação
Arquitectura de Gestão OSI/TMN
CORBA como Arquitectura de Gestão
JAVA como Arquitectura de Gestão
Gestão baseada na WEB
Integração de Arquitecturas de Gestão
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
2
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
3
Arquitectura de Gestão Internet-SNMPv1
Normas . Versão 1
IETF
Título
RFC 1155
Structure and Identification of Management
Information for TCP/IP-based networks.
Concise MIB Definition
Management Information Base for Network
Management of TCP-IP-based Internets: MIB-II
Simple Network Management Protocol
RFC 1212
RFC 1213
RFC 1157
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
4
Arquitectura de Gestão Internet-SNMPv1
Características gerais
 Arquitectura Cliente-Servidor
 Gestor contém as aplicações de gestão e faz a interface com o
utilizador
 Agente que é responsável por um conjunto de recursos geridos.
 O Gestor pode monitorizar ou controlar os recursos através
dos Agentes.

TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
5
Arquitectura de Gestão Internet-SNMPv1
Características gerais
 O Agente estrutura a informação de gestão numa MIB.
 Cada objecto da MIB é um objecto escalar, pelo que não há os
conceitos de classes, herança, encapsulamento etc..
 A MIBs Internet definem a estrutura, o significado e a
identificação dos recursos que podem fazer parte da MIB dum
Agente.
 A MIB dum Agente contém apenas os tipos objectos geridos
que podem ser instanciados, nos equipamentos que gere.
 A identificação de objectos é efectuada através da ARI
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
6
Arquitectura de Gestão Internet-SNMPv1
Características gerais
RFCs e
MIBs proprietárias
Ex: Servidor
Agente
Gestor
Ex: Router
Internet MIB
Agente
MIB
Gestor
Regras de
Estruturação
Ex: PC
Internet
Registration
Tree
Agente
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
7
Arquitectura de Gestão Internet-SNMPv1
Árvore
de
Registo
da
Internet
(ARI)
root
itu-t (0)
join iso/itu-t (2)
iso (1)
org (3)
dod (6)
internet (1)
dir- (1)
mgmt (2)
mib -2 (1)
1.3.6.1.2..1
exper. (3)
ATM (41)
priv.(4)
X.25 (44)
recursos nós (36)
empresas (1)
IBM (2)
TMV - 2003
HP (11)
Gestão de Redes e de Sistemas Distribuídos
8
Arquitectura de Gestão Internet-SNMPv1
MIBs proprietárias
 Possibilidade de gerir aspectos específicos dos produtos
 Um Gestor não é capaz de gerir o que não conhece
•
Agente desenvolve uma descrição textual e uma descrição formal da
MIB proprietária
• Gestor carrega e compila a descrição formal, de forma a incluí-la na
sua biblioteca.
• Diferentes Modelos de Informação nas diferentes versões do SNMP
dificultam estas operações
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
9
Arquitectura de Gestão Internet-SNMPv1
Estrutura da MIB - Identificação de objectos
mib- 2
1.3.6.1.2.1
Objecto Escalar
ip
1.3.6.1.2.1.4
iplnReceives
1.3.6.1.2.1.4.3
Tabela
ipRouteTable
1.3.6.1.2.1.4.21
ipRouteEntry
1.3.6.1.2.1.4.21.1
ipRouteDest
1.3.6.1.2.1.4.21.1.1
TMV - 2003
ipRouteNextHop
1.3.6.1.2.1.4.21.1.7
Gestão de Redes e de Sistemas Distribuídos
10
Arquitectura de Gestão Internet-SNMPv1
Sintaxe dos objectos
Dependentes
da Aplicação
Tipos de dados pré-definidos
RFC 1155
Network Address
IpAddress
Time tick
Gauge
Counter
Opaque
Independentes
da Aplicação
Primitivos
INTEGER
OCTECT STRING
OBJECT IDENTIFIER
NULL
Construtores
SEQUENCE
SEQUENCE OF
• Time tick - tempo em centésimos de segundo
• Gauge -contador up-down de 32 bits, números positivos,
que bloqueia quando atinge o valor máximo, até que seja
feito o reset.
• Counter - contador circular de 32 bits, números positivos
• Opaque - transferência de qualquer tipo de dados
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
11
Arquitectura de Gestão Internet-SNMPv1
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
12
Arquitectura de Gestão Internet-SNMPv1
Definição de objectos
Acessos
internos
mib- 2 MIB
Gestor
SNMP
ip
Agente
Counter
Value
iplnReceives
iplnReceives 25
ipRouteDest
9.1.2.3
10.0.0.51
10.0.0.77
…
…
…
…
ipRouteNextHop …
99.0.0.3
…
89.1.1.42
…
89.1.1.42
...
MIB do Agente
TMV - 2003
Grupo
ipRouteTable Tabela
ipRouteEntry Linha
ipRouteDest
ipRouteNextHop
Variável
Instância = tipo de objecto + valor
Gestão de Redes e de Sistemas Distribuídos
13
Arquitectura de Gestão Internet-SNMPv1
Definição de objectos escalares
MACRO OBJECT-TYPE:
• Nome e Identificador
• Sintaxe
• Tipo de acesso
• Estado
• Descrição informal,...
• Localização do ramo na ARI
ipInReceives OBJECT TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
´The total number of input
datagrams received from
interfaces… .´
::= {ip 3}
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
14
Arquitectura de Gestão Internet-SNMPv1
Definição de tabelas
 O Modelo de Informação SMI suporta apenas tabelas
bidimensionais.
 As entradas da tabela são objectos escalares.
 A definição de tabelas envolve :
• a utilização dos construtores SEQUENCE e SEQUENCE-OF
• a utilização dum novo campo na macro object-type, o campo
IndexPart.
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
15
Arquitectura de Gestão Internet-SNMPv1
Uma pausa para descobrirem ….
 Como se estrutura uma tabela ?
Utilizar a informação de:
• ARI e ipRouteTable
• Macro que define ipInReceives
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
16
Arquitectura de Gestão Internet-SNMPv1
Definição de tabelas: ipRouteTable
ipRouteTable OBJECT-TYPE
SYNTAX SEQUENCE OF IpRouteEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
<< Tabela de encaminhamento IP >>
::= { ip 21}
IpRouteEntry OBJECT-TYPE
SYNTAX IpRouteEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
<< Rota para um dado destino >>
INDEX {ipRouteDest }
::= { ipRouteTable 1}
TMV - 2003
IpRouteEntry ::=
SEQUENCE {
ipRouteDest IpAddress, ...
ipRouteNextHop IpAddres, ..
}
ipRouteDest OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-write
STATUS mandatory
DESCRIPTION
<< Endereço de destino da rota >>
::= {ipRouteEntry 1}
ipRouteNextHop OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-write
STATUS mandatory
DESCRIPTION
<< Endereço seguinte da rota >>
::= {ipRouteEntry 7}
Gestão de Redes e de Sistemas Distribuídos
17
Arquitectura de Gestão Internet-SNMPv1
Codificação da informação
Mapeamento
Local
Mapeamento
Local
Componente
de Aplicação
MIB
Sintaxe
Abstracta
Componente
de Aplicação
Regras de Codificação
Regras de Codificação
Componente
de
transferência
de dados
Componente
de
transferência
de dados
TMV - 2003
Sintaxe de
Transferência
Gestão de Redes e de Sistemas Distribuídos
MIB
18
Arquitectura de Gestão Internet-SNMPv1
Codificação da informação
 Componente de aplicação (SNMP)
• Representação da informação de forma estruturada
• Sintaxe abstracta (ASN.1)
• Mapeamento local para armazenamento ou visualização
 Componente de transferência de dados (UDP/IP/...)
• Representação da informação de forma não estruturada
• SDUs para comunicação entre camadas adjacentes
• PDUs para comunicação entre camadas pares
• Sintaxe de transferência (ex: ASCII)
 Necessidade de codificação para converter os formatos

TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
19
Arquitectura de Gestão Internet-SNMPv1
BER
Identifier
2
1
5
Tag
P/C
Number
Length
Value
Ex: INTEGER 49 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1
00 – universal
01 – application
10 – context specific
11 – private 0 – primitive
1 – constructed
2 – INTEGER
4 – OCTET STRING
16 – SEQUENCE e
SEQUENCE OF
0 < Length < 128
0
Length
127 < Length < 2 1008
1
K
Length (K octetos)
Number > 30
Tag
TMV - 2003
P/C
11111
1
xxxxxxx
0
xxxxxxx
Gestão de Redes e de Sistemas Distribuídos
20
Arquitectura de Gestão Internet-SNMPv1
Conclusões
Simplicidade de conceitos
• Modelo de Informação
orientado a tipos de dados.
- OGs são folhas da ARI.
- Acesso a OGs através do
Identificador do Objecto
na ARI.
Desenvolvimento rápido
de produtos
TMV - 2003
Vantagens
Modelo não orientado
a objectos:
- não há re-utilização
- não há herança.
Estrutura da ARI:
Desvantagens - não há inclusão
- elevado nº de MIBs
- informação relacionada
em várias sub-árvores.
Gestão de Redes e de Sistemas Distribuídos
21
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
22
Arquitectura de Gestão Internet-SNMPv1
Problema 1
clientTable OBJECT-TYPE
SYNTAX SEQUENCE OF clientEntry
ACCESS not-accessible
STATUS mandatory
:== {exemplo 1}
clientEntry OBJECT-TYPE
SYNTAX clientEntry
ACCESS not-accessible
STATUS mandatory
INDEX {ClientCode}
:== {ClientTable 1}
clientEntry :== SEQUENCE {
clientCode INTEGER,
clientName OCTECT STRING,
clientIpAddress IpAddress,
clientInTraff INTEGER,
clientOutTraff INTEGER,
}
ClientCode OBJECT-TYPE
SYNTAX INTEGER
ACCESS READ-ONLY
STATUS mandatory
:== {clientEntry 1}
TMV - 2003
a) Identificar a chave de pesquisa
b) Representar a parte da árvore de registo,
respeitante a este extracto de MIB
clientIpAddress OBJECT-TYPE
SYNTAX IpAddress
ACCESS READ-ONLY
STATUS mandatory
:== {clientEntry 3}
clientInTraffic OBJECT-TYPE
SYNTAX INTEGER
ACCESS READ-WRITE
STATUS mandatory
:== {clientEntry 4}
clientOutTraffic OBJECT-TYPE
SYNTAX INTEGER
ACCESS READ-WRITE
STATUS mandatory
:== {clientEntry 5}
Gestão de Redes e de Sistemas Distribuídos
23
Arquitectura de Gestão Internet-SNMPv1
Solução 1
clientTable OBJECT-TYPE
SYNTAX SEQUENCE OF clientEntry
ACCESS not-accessible
STATUS mandatory
:== {exemplo 1}
clientEntry OBJECT-TYPE
SYNTAX clientEntry
ACCESS not-accessible
STATUS mandatory
INDEX {ClientCode}
:== {ClientTable 1}
clientEntry :== SEQUENCE {
clientCode INTEGER,
clientName OCTECT STRING,
clientIpAddress IpAddress,
clientInTraff INTEGER,
clientOutTraff INTEGER,
}
ClientCode OBJECT-TYPE
SYNTAX INTEGER
ACCESS READ-ONLY
STATUS mandatory
:== {clientEntry 1}
TMV - 2003
a) Identificar a chave de pesquisa
b) Representar a parte da árvore de registo,
respeitante a este extracto de MIB
clientTable {1}
clientEntry {1}
clientCode {1}
clientName {2}
clientOutTraff {5}
clientInTraff {4}
clientIpAddress {3}
Gestão de Redes e de Sistemas Distribuídos
24
Arquitectura de Gestão Internet-SNMPv1
Problema 2
a) Considerando que dispõem de SNMPv1, desenhe
uma MIB para representar a informação de todos os
Clientes do serviço. Suponha que cada Cliente é
identificado por um campo denominado clientId.
Suponha que pretende desenvolver um serviço, muito simples, de atendimento
automático de chamadas telefónicas. Este serviço deve ser activado sempre que:

o telefone do cliente se encontre ocupado.

O cliente esteja ausente, o que significa que o telefone toca mais do que um dado
número de vezes pré-estabelecido.

a chamada for bloqueada, por problemas internos da rede e não atingir o telefone do
cliente.
Por cada vez que acede ao serviço, o Cliente pode remover ou não as chamadas
memorizadas. Porém, por questões de dimensionamento da rede, cada cliente não pode
ter mais de 30 chamadas memorizadas. Assim sendo, quando uma esta situação limite se
atinge, é removida a primeira chamada do Cliente.
Pretende-se que o cliente tenha acesso a estatísticas referentes ao serviço que lhe está a
ser disponibilizado. Estas estatísticas devem permitir contabilizar:

as situações que originaram o atendimento automático;

número de chamadas memorizado

a duração total das chamadas memorizadas
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
25
Arquitectura de Gestão Internet-SNMPv1
Solução 2
Perguntar ao Ivo !
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
26
Arquitectura de Gestão Internet-SNMPv1
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
27
Arquitectura de Gestão Internet-SNMPv1
Modelo de Comunicação
Agente
Gestor
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
28
Arquitectura de Gestão Internet-SNMPv1
Modelo de Comunicação
Recursos geridos
Trap
GetResponse
Gestor SNMP
Mensagens
SNMP
UDP
SetRequest
GetNextRequest
Trap
Gestor SNMP
Objectos SNMP
GetRequest
Aplicação gere
os objectos
GetResponse
SetRequest
GetNextRequest
GetRequest
Aplicação de Gestão
UDP
IP
IP
Protocolos dependentes da rede
Protocolos dependentes da rede
GESTOR
TMV - 2003
Rede
Gestão de Redes e de Sistemas Distribuídos
AGENTE
29
Arquitectura de Gestão Internet-SNMPv1
Formato das mensagens SNMP
Version
Number
Community
String
PDU SNMP ou Trap PDU
PDUs: GetRequest, GetNextRequest, GetReponse
PDU
Type
Request
ID
Error
Status
Error
Index
Variable bindings
PDU: Trap
Trap Entre Agent Generic Specific Time
prise Address
Trap
Trap
Stamp
Variable
bindings
Variable binding
name1:value1 name2:value2
TMV - 2003
...
Gestão de Redes e de Sistemas Distribuídos
nameN:valueN
30
Arquitectura de Gestão Internet-SNMPv1
Definição SNMP (RFC 1157)
(1)
RFC 1157-SNMP DEFINITIONS ::= BEGIN
IMPORTS
ObjectName,ObjectSyntax,NetworkAddress,IPAddress,TimeTicks
FROM RFC1155-SMI;
Message ::= SEQUENCE {version INTEGER {version-1(0)} - version 1
community OCTET STRING, - community name
data ANY
- if trivial authentication is used
PDUs ::= CHOICE {get-request
get-next-request
get-response
set-request
trap
GetRequest-PDU,
GetNextRequest-PDU
GetResponse-PDU
SetRequest-PDU
Trap-PDU}
GetRequest-PDU
GetNextRequest-PDU
GetReponse-PDU
SetRequest-PDU
PDU
PDU
PDU
PDU
TMV - 2003
::=
::=
::=
::=
[0]
[1]
[2]
[3]
IMPLICIT
IMPLICIT
IMPLICIT
IMPLICIT
Gestão de Redes e de Sistemas Distribuídos
31
Arquitectura de Gestão Internet-SNMPv1
Definição SNMP (RFC 1157)
(2)
PDU :== SEQUENCE {
request-id INTEGER,
error-status INTEGER {
- sometimes ignored
noError(0), tooBig(1), noSuchName(2),
badValue(3), readOnly(4), genErr(5)},
error-index INTEGER
- sometimes ignored
variable-bindings VarBindList
}
Trap-PDU ::= [4] IMPLICIT SEQUENCE {
enterprise OBJECT-IDENTIFIER,
agent-addr NetworkAddress
generic-trap INTEGER {
coldStart(0), warmStart(1), linkDown(2),linkUp(3),
authenticationFailure(4), egpNeighborLoss(5),
enterpriseSpecific(6)}
specific-trap INTEGER,
time-stamp TimeTicks
variable-binding VarBindList
}
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
32
Arquitectura de Gestão Internet-SNMPv1
Definição SNMP (RFC 1157)
(3)
VarBind ::= SEQUENCE {
name ObjectName,
value ObjectSyntax
}
VarBindList ::= SEQUENCE OF VarBind
END
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
33
Arquitectura de Gestão Internet-SNMPv1
Identificação das instâncias dos objectos
Objecto Escalar
1.3.6.1.2.1.4.3.0
mib- 2
1.3.6.1.2.1
ip
1.3.6.1.2.1.4
iplnReceives
1.3.6.1.2.1.4.3
ipRouteTable
1.3.6.1.2.1.4.21
ipRouteEntry
1.3.6.1.2.1.4.21.1
ipRouteDest
1.3.6.1.2.1.4.21.1.1
Objecto Columnar
x. 1. 9.1.2.3
ipRouteDest
9.1.2.3
10.0.0.51
10.0.0.77
…
…
…
…
ipRouteNextHop …
99.0.0.3
…
89.1.1.42
…
89.1.1.42
...
Objecto Columnar
x. 7. 9.1.2.3
ipRouteNextHop
1.3.6.1.2.1.4.21.1.7
X=1.3.6.1.2.1.4.21.1
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
34
Arquitectura de Gestão Internet-SNMPv1
Manipulação de Objectos Escalares
Counter
Leitura
Value
iplnReceives 25
OctectString
Value
Escrita
ifAdminStatus Testing
TMV - 2003
GetRequest (ipInReceives.0)
GetResponse(ipInReceives.0=25)
SetRequest (ifAdminStatus.0= ´Testing´)
GetResponse(ifAdminStatus.0= ´Testing´)
Gestão de Redes e de Sistemas Distribuídos
35
Arquitectura de Gestão Internet-SNMPv1
Manipulação de Tabelas - Monitorização
ipRouteDest
9.1.2.3
10.0.0.51
10.0.0.77
…
…
…
…
ipRouteNextHop …
99.0.0.3
…
89.1.1.42
…
89.1.1.42
...
Leitura
tabela
GetNextRequest (ipRouteDest, ipRouteNextHop)
GetResponse ((ipRouteDest.9.1.2.3=9.1.2.3),
(ipRouteNextHop.9.1.2.3=99.0.0.3))
GetNextRequest (ipRouteDest.9.1.2.3, ipRouteNextHop.9.1.2.3)
GetResponse ((ipRouteDest.10.0.0.51=10.0.0.51),
(ipRouteNextHop. 10.0.0.51 =89.11.4.2))
…
GetNextRequest (ipRouteDest.10.0.0.77, ipRouteNextHop.10.0.0.77)
GetResponse ((ipRouteNextHop.9.1.2.3=99.0.0.3),
(ipNetToMediaIfIndex. 1.3 =1))
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
36
Arquitectura de Gestão Internet-SNMPv1
Manipulação de Tabelas - Controlo
Inserção
de linha
ipRouteDest
9.1.2.3
10.0.0.51
10.0.0.77
…
…
…
…
ipRouteNextHop …
99.0.0.3
…
89.1.1.42
…
89.1.1.42
...
Remoção
de linha
SetRequest ((ipRouteDest.10.0.0.77=10.0.0.77),
(ipRouteNextHop.10.0.0.77 = 89.1.1.42))
SetResponse((ipRouteDest. 10.0.0.77=10.0.0.77),
(ipRouteNextHop. 10.0.0.77 = 89.1.1.42))
SetRequest (ipRouteType.10.0.0.77 =invalid)
SetResponse(ipRouteDest.11.3.3.12=invalid)
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
37
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
38
Arquitectura de Gestão Internet-SNMPv1
Problema 3
1-
Indique a sequência de mensagens SNMPv1 e o conteúdo das mensagens, associado
às seguintes situações:
a) Contagem o número de pacotes IP recebidos nas interfaces de um router.
b) Leitura da tabela de encaminhamento, ipRouteTable, de um router. Considere que a
tabela tem apenas 3 linhas.
c) Alteração o valor da métrica1 referente ao endereço de destino D2.
d) Remoção da linha da tabela de encaminhamento correspondente ao endereço de
destino D2 inoperacional.
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
39
Arquitectura de Gestão Internet-SNMPv1
Solução 3
Perguntar à Tania !
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
40
Arquitectura de Gestão Internet-SNMPv1
Mecanismos de segurança
Agente
Agente
Co
mu
ni
da
de
Agente
TMV - 2003
G
e
s
t
o
r
G
e
s
t
o
r
Definida no Agente
• Identificação através de nome
• Engloba:
• Autenticação
• Controlo de acesso
• Característica do proxy
Autenticação: garantir a proveniência correcta
 nome da comunidade
Controlo de acesso: diferenciar o acesso à MIB
 Perfil da comunidade
- visão da MIB (objectos visíveis)
- modo de acesso a cada elemento
Características do proxy de cada dispositivo
 visão da MIB e modo de acesso
Gestão de Redes e de Sistemas Distribuídos
41
Arquitectura de Gestão Internet-SNMPv1
Modelo de Comunicações - conclusões
Operações simples
Desenvolvimento produtos:rápido, realizável em recursos simples
Divulgação generalizada
Autenticação trivial
Ineficiência na transmissão de grandes volumes de informação
Informação tem de ser sempre requisitada pelo Gestor
Eventos assíncronos pré-definidos e em nº limitado
Suporte em UDP
Totais : 3
TMV - 2003
5
!!!
Gestão de Redes e de Sistemas Distribuídos
42
Resumo da aula
• Características gerais
• Normas
• Características gerais
• Árvore de Registo Internet
• MIBs e sinatxe dos objectos
• Modelo de Informação
• Definição de objectos escalares
• Definição de tabelas
• Codificação de informação
• Modelo de Comunicação
• Formato das mensagens
• Manipulação de objectos escalares
• Manipulação de tabelas
•
TMV - 2003
Gestão de Redes e de Sistemas Distribuídos
43
Download

aula7