Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Gerenciamento e Interoperabilidade de Redes
Gerenciamento Web, Web Services e NETCONF/YANG
Prof. João Henrique Kleinschmidt
Gerenciamento baseado na Web
• Web browser• Acesso ubíquo• Interface Web vs Gerenciamento baseado na Web• Gerenciamento baseado na Web
• Interface de gerenciamento Desktop• Gerenciamento XML• Web-based enterprise management - WBEM
Interface Web
NMS
SNMP Manager
Managed Objects SNMP Agent
Web Server
Web Browser
NMS Console
Desktop PC
Figure 14.1 SNMP NMS with Web Interface
SNMP
HT
TP
Web-Based Element Management(Browser Management)
Web-Based Element Management(Browser Management)
• EWS - Servidores Web Embarcados nos dispositivos
• Acesso as informações e configuração via browser
• Vantagens :
– interface simples e amigável;
– acesso através de firewalls
• Desvantagens :
– Não escalável; configurar centenas de dispositivos individualmente via
browser é uma tarefa inviável
– Não oferece informações integradas sobre o funcionamento da rede
XML
• Extensible Markup Language
• XML é uma linguagem genérica e auto-descritiva utilizada para formatação de documentos– As aplicações lêem os dados, analisam e sabem exatamente o
significado de cada parte do documento
• Um documento XML é um “arquivo texto com estrutura”– Fácil compreensão
– Fácil de analisar
– Fácil de depurar
• Padrão amplamente adotado– http://www.w3c.org/xml
Por que XML?
• Dispositivos de rede geram grandes volumes de dados estruturados
– Arquivos de configuração
– Tabelas de roteamento
– Interfaces físicas e lógicas
– Arquivos de bilhetagem
• XML é apropriado para descrever dados hierárquicos de maneira padronizada
Elementos XML
• Seis construções principais
– Open tags: <tag>
– Close tags: </tag>
– Data: <tag>data</tag>
– Empty tags: <tag/>
– Attributes: <tag foo=“bar” goo=“gar”/>
– Namespaces:<home>
<address>123 Main Street</address>
<network xmlns:ns2=“my.identifying.string”>
<ns2:address>10.0.0.1</ns2:address>
</network>
</home>
<?xml version="1.0" encoding="UTF-8"?>
<route>
<destination>10.3.1.1/32</destination>
<route-entry>
<current-active/>
<protocol-name>BGP</protocol-name>
<preference>170</preference>
<age seconds="1749">00:29:09</age>
<local-preference>100</local-preference>
<learned-from>10.17.136.2</learned-from>
<as-path>1403 170 39 I</as-path>
<nh>
<selected-next-hop/>
<to>192.168.1.254</to>
<via>ge-0/0/0.0</via>
</nh>
</route-entry>
</route>
Exemplo XML
DTDs e XML Schemas
• Ferramentas que definem documentos XML
– Document Type Definitions (DTDs)
• Lista os elementos que podem aparecer em um documento XML e as suas relações hierárquicas
– XML Schemas
• Define o conteúdo e a semântica além das relações entre elementos
• Tipos de dados simples e complexos, faixa de valores, expressões regulares e documentação
Gerenciamento baseado em XML
Gerenciamento baseado em XML
• O grande potencial do XML na representação e manipulação
de informações logo chamou atenção da comunidade de
gerenciamento de redes, que passou a apontá-la como uma
possível solução para algumas deficiências do SNMP
• Padrões vinculados a representação e manipulação dos dados
• Grupos de Trabalhos relacionados
WBEM – Web Based Enterprise Management
• DMTF (Distributed Management Task Force)
– Consórcio de empresas líderes no mercado de redes, que visa desenvolver um
padrão não proprietário para o gerenciamento de redes
• Modelo de Informações – CIM (Common Information Model)
– Modelo Orientado a Objetos
– Oferece mecanismos para representação de informações e as relações entre elas e
as operações e interfaces suportadas
– É possível representar entidades lógicas e serviços do sistema
• CIM to XML mapping
– Define a utilização de XML Schema para a descrição em XML dos objetos CIM
• CIM operations over HTTP
– Define como as operações CIM são codificadas em XML no protocolo HTTP
– Define sintaxe e semântica das operações request e response
Web-Based Enterprise Management - WBEM
Web Client
SNMP
Managed ObjectsDMI
Managed Objects
DMI ProviderSNMP Provider
CIM
Object Manager
(CIMOM)
CIM
Schema
Management
Applications
Web Browser
Desktop PC
HTTP HTTP
HTTP
SNMP RPC
CIM
Managed Objects
HTTP
Figure 14.8 WBEM Architecture
SNMP Agent
DMI Agent
CIM Agent
Gerenciamento de Redes com Web Services
• Gerenciamento baseado em XML propõe novo padrão de
representação e manipulação de informações de gerenciamento
• Embora a tecnologia XML permita uma arquitetura de
gerenciamento distribuída e hierárquica, sua simples utilização
(como visto anteriormente) não implementa essas funcionalidades
• Utilização de operações HTTP para acesso a MIB-XML limita seu
uso em tarefas e operações mais sofisticadas, alem de restringir a
possibilidade de extensão para soluções de gerenciamento
integrado de redes, serviços e negócios.
Web Services
⚫ Baseados no conceito de arquitetura orientada a serviços (SOA).
⚫ Serviços web são componentes de software fracamente acoplados
usados sobre tecnologias padrões da Internet.
⚫ Modelo de aplicação distribuída a ser utilizado para aplicações
baseadas em web de negócio-para-negócio (B2B - business to
business) e para integrar sistemas distribuídos já existentes que
precisam interagir com a Internet.
⚫ Tecnologia aberta, independente de linguagem e plataforma.
Arquitetura SOA
Modelo Convencional de Gerenciamento mapeado para Web Services
Gerenciamento de Redes com Web Services
• Web Services no Gerenciamento - Arquitetura de processamento
distribuído baseado em XML pode facilmente endereçar arquitetura
atual do Gerenciamento de Redes
• Aplicação de Gerenciamento de redes pode ser interpretada como um
serviço web
• Recursos Gerenciáveis de uma rede podem ser gerenciados
localmente ou remotamente obedecendo uma estrutura de interfaces
definidas
• Paradigma Gerente-Agente pode ser mapeado para Web Services
onde o lado agente pode ser considerado um Provedor de Serviços e
o lado gerente como um Consumidor de Serviços
Gerenciamento de Redes com Web Services
• WSDL – permite a definição de interfaces, contendo desde operação de simples leituras de variáveis (como no SNMP) até operações complexas de configuração de dispositivos, possibilitando a integração com outros serviços e negócios
• UDDI – Registro Central de Serviços, no caso de gerenciamento, onde seriam publicados todos os serviços de gerenciamento disponibilizados pelos recursos gerenciáveis da rede
• Modelo de Informações – Toda a tecnologia de WebServices baseia-se em XML. A representação das informações de gerenciamento do recursos gerenciáveis (tais como as MIBs SNMP) são endereçadas em XML. Existem várias propostas de padronização dessas informações, mas ainda não há um modelo definitivo.
• Modelo de Comunicação – Mensagens SOAP transportadas sobre HTTP em operações WSDL. SOAP – Protocolo de mensagem baseado em XML para o transporte de conteúdos entre serviços web e seus programas clientes.
Arquitetura SOAP
• SOAP é um protocolo aberto que permite uma forma uniforme de realizar RPCs utilizando HTTP comoprotocolo de comunicações e XML para a serialização dos dados
• Na versão mais simples, uma mensagem SOAP é enviada através de um comando POST HTTP
Padrões relacionados
• OASIS
– WSDM - Web Services DistributedManagement• Padronização da utilização de Web Services para gerenciamento
Padrões relacionados
– Ws-Management• Descreve um protocolo baseado em SOAP para gerenciamento de sistemas tais
como PCs, Servidores, Dispositivos de Redes, WebServices, Aplicações em Geral e outras Entidades gerenciáveis
– Para promover a interoperabilidade entre aplicações de gerenciamento e os recursos gerenciados a especificação identifica um conjunto de funções e operações padrão para o gerenciamento de qualquer sistema :
• DESCOBRIR a presença de recursos gerenciáveis e navegar entre eles;
• CRIAR e APAGAR objetos que representem recursos gerenciáveis, assim comoLER e ESCREVER nesses objetos.
• ENUMERAR o conteúdo de coleções ou contêineres tais como logs e tabelas
• SUBSCREVER a eventos emitidos pelos recursos gerenciados
• EXECUTAR métodos de gerenciamento específicos com parâmetros de entrada e saída fortemente tipados
Tecnologias de Gerenciamento de RedesComparação de alguns aspectos básicos
Tecnologias de Gerenciamento de RedesComparação de alguns aspectos técnicos
Network Configuration Group (NETCONF)
• Objetivo : Padronizar aspectos específicos de configuração de redes através de XML
• NETCONF é o protocolo padrão desenvolvido pelo IETF e YANG é a linguagem de modelagem de dados associada
• Protocolo Netconf
• Por que NETCONF?
• Gerenciamento de configuração
– SNMP “falhou” no ger. configuração;
– CLI é usado na maioria das vezes (interface de linhas de comando)
• Modelo de transação robusto
• Transações “network-wide” (mudanças em vários dispositivos serão feitas apenas se todos tiverem sucesso)
• Modelagem de dados avançada com YANG
• Operações de protocolo definidas com YANG
• Baseado em XML
• Mecanismo de roll back
• Aplicar e testar uma configuração
• Testar e rejeitar uma configuração
NETCONF
NETCONF: Conteúdo
NETCONF: Operações
NETCONF: Mensagens
NETCONF: Transporte
NETCONF
Nomeação de dados
Tradução de dados
• Tradução entre SMIv2 (SNMP) e YANG definidas na RFC 6643
• Tabelas SMIv2 podem ser traduzidas para YANG
• Provê uma tradução padrão read-only de dados SMIv2 que podemser recuperados com NETCONF
NETCONF <hello>
• Uma sessão começa com a troca de lista de capacidades
• O servidor anuncia todas suas capacidades e atribui um ID de sessão
• O cliente anuncia a versão do protocolo que suporta– Todas as características do servidor e módulos de informação YANG
suportados podem ser descobertos pelo cliente
Datastores (bases de dados)
• running: representação obrigatória da configuração atual sendoexecutada
• candidate: opcional usado para coletar edições de configuração para aplicar all-or-none
• startup: representação opcional não-volátil da configuração que seráusada na próxima inicialização (reboot)
RPC (Chamada de Procedimento Remoto)
• Cada mensagem NETCONF deve ser um documento válido XML
• Todas as operações usam um mecanismos de RPC específico do NETCONF
• Todas as operações são definidas com declarações “rpc” YANG
Operações básicas do protocolo
Exemplo de operação
Configurar MTU da interface Ethernet em 1500
Aplicando configuração em vários dispositivos simultaneamente (transação network-wide)
- Trocar capacidades (hello) entre os dispositivos
- Limpar os data stores candidates dos dispositivos
- Travar (lock) os data stores candidates
- Travar (lock) os data stores running
- Copiar running para candidates
- Editar os candidates
- Validar os candidates
- Fazer o commit dos candidates para running
- Destravar (unlock) os candidates
- Usar confirm-commit
Estrutura de um módulo YANG
Exemplo:OSPF
Representação XML do YANG