• Nenhum resultado encontrado

Gerenciamento de Redes baseado em Web Services

6. GERENCIAMENTO DE REDES ATRAVÉS DE WEB SERVICES

6.2. Gerenciamento de Redes baseado em Web Services

6.2.1. Arquitetura

Conforme mencionado no capítulo 5, Web Services é uma arquitetura de processamento distribuído baseada em XML que atende bem aos requisitos de uma arquitetura orientada a serviços. Uma aplicação de gerenciamento de redes pode ser interpretada como mais um serviço disponibilizado pela rede, que como tal, pode perfeitamente ser implementada e disponibilizada como um Web Service.

Através da utilização da tecnologia Web Services, recursos gerenciáveis de uma rede podem ser gerenciados, remota ou localmente, através de mensagens que obedecem à estrutura de

interfaces bem definidas. A linguagem WSDL, utilizada na definição das interfaces, permite a criação de interfaces bem flexíveis, contendo desde operações simples (como a simples leitura de uma variável) até operações mais complexas, tipicamente necessárias para a configuração de redes ou no gerenciamento de mais alto nível, como serviços e negócios.

O modelo convencional de gerenciamento de redes tipo gerente-agente pode ser facilmente mapeado para Web Services. O agente de software é implementado como um provedor de serviços que oferece operações de gerenciamento sobre o elemento de rede específico representado por ele. As informações de acesso ao serviço dos diversos agentes, assim como os detalhes das interfaces de gerenciamento, são então publicadas em um registro central de serviços, como o UDDI.

O gerente, neste caso atuando como agente consumidor do serviço, pode então identificar no registro de serviços os provedores de serviços de gerenciamento associados aos elementos de rede. Os detalhes necessários para a comunicação com um agente específico, tais como endereço de acesso e operações suportadas, podem então ser obtidas pelo gerente e utilizadas para a comunicação com o agente. A Figura 6-1 a seguir ilustra como os papéis de agentes e gerentes podem ser implementados na arquitetura Web Services.

Figura 6-1: Gerenciamento de redes na arquitetura Web Services.

Esta configuração mostra que um mesmo serviço pode ter múltiplas implementações, havendo “K” serviços publicados no registro central com “N” agentes provendo serviços de gerenciamento. Num caso extremo onde as operações suportadas por todos os agentes sejam comuns e padronizadas pode haver uma única descrição de serviço apontando para os diversos agentes que a implementam.

Os diferentes gerentes representados na Figura 6-1 podem estar organizados hierarquicamente e distribuídos pelos múltiplos domínios de gerenciamento de uma organização. Os domínios de gerenciamento podem ser definidos segundo critérios de localização geográfica, área de gerenciamento (por exemplo, gerenciamento de redes, sistemas, serviços, etc.), centro de custo da empresa, clientes, etc. A Figura 6-2 ilustra o sistema de gerenciamento de uma organização estruturado em três níveis onde um gerente de alto nível coordena dois gerentes de nível intermediário alocados a diferentes domínios sob os quais encontram-se vários agentes.

Agente 1 Agente 2 Agente N Gerente 1 Gerente 2 Gerente M Bind, communicate Publish Find Serviço 1 Serviço 2 Serviço K Registro de serviços Consumidores de serviços Porvedores de serviços

Figura 6-2: Gerenciamento distribuído e hierárquico.

A comunicação necessária entre gerentes organizados hierarquicamente pode também ser suportada por Web Services. A potencialidade de Web Services em permitir a definição de interfaces complexas e flexíveis viabiliza sua aplicação na comunicação entre gerentes que, neste caso, passam também a implementar provedores de serviços de gerenciamento.

6.2.2. Modelo de informações

Sendo uma tecnologia XML, Web Services permite ainda integração natural com a utilização de XML na representação das informações de gerenciamento dos recursos gerenciados.

Como abordado no capítulo 4, vários trabalhos têm sido desenvolvidos no sentido de mapear os modelos de informação correntes, como a MIB-SNMP do IETF e o CIM padronizado pelo DMTF, para XML. O gerenciamento baseado em Web Services pode fazer uso e tirar vantagem destes trabalhos na representação de informações de gerenciamento sendo que, até o momento, não houve concordância pela padronização de um ou outro modelo.

6.2.3. Modelo de comunicação

O modelo de comunicação, equivalente ao suportado por Web Services, é baseado em mensagens SOAP transportadas sobre HTTP em operações definidas pela WSDL. Operações

Gerente nível 1 Gerente nível 2 Gerente nível 2 Agente Agente

RPC implementam facilmente o modelo request-response comumente encontrado em arquiteturas de gerenciamento, ao passo que notificações assíncronas não são originalmente suportadas pelo modelo; trabalhos recentes estão em andamento para a solução desta questão.

6.2.4. Reutilização de código

Outra grande vantagem da utilização de Web Services reside na fácil migração ou adaptação das plataformas existentes, como plataformas SNMP ou plataformas baseadas em XML/HTTP como a JAMAP, para a arquitetura de Web Services. O código legado destas plataformas pode ser reutilizado: stubs e skeletons permitem que agentes e gerentes se comuniquem com mensagens SOAP através de interfaces XML bem definidas. Diversos kits de desenvolvimento auxiliam na criação dos documentos WSDL, assim como dos stubs e skeletons, a partir do código legado dos agentes e gerentes.

A Figura 6-3 ilustra como stubs e skeletons escondem a implementação original de agentes e gerentes permitindo sua comunicação através de mensagens SOAP.

Figura 6-3: Comunicação entre agente e gerente através de stubs e skeletons.

O skeleton implementa o código necessário para receber as mensagens SOAP advindas do gerente e convertê-las em invocações de métodos no código do agente; as respostas são ainda codificadas em mensagens SOAP e enviadas pela rede em resposta às requisições do gerente. Reciprocamente, o stub implementa o código necessário para que o gerente possa enviar pedidos e receber respostas do agente através da rede como se estivesse acessando métodos de um processo local. Código do Agente Código do Gerente Mensagens SOAP Sk el et on St ub