• Nenhum resultado encontrado

Gestão de Home Networks

N/A
N/A
Protected

Academic year: 2021

Share "Gestão de Home Networks"

Copied!
98
0
0

Texto

(1)

Gestão de Home Networks

Wilson Vieira da Silva

Orientador: Salviano Filipe Silva Pinto Soares

Co-orientador:

Pedro Miguel Mestre Alves da Silva

(2)
(3)
(4)

Gestão de Home Networks

Wilson Vieira da Silva

Orientador: Salviano Filipe Silva Pinto Soares

Co-orientador:

Pedro Miguel Mestre Alves da Silva

Dissertação submetida à

Universidade de Trás-os-Montes e Alto Douro Para a obtenção do grau de

Mestre

em Engenharia Electrotécnica e de Computadores, de acordo com o disposto no DR – I série – A, Decreto-Lei n.º74/2006 de 24 de Março e no

Regulamento de Estudos Pós-Graduados da UTAD DR, 2.ªsérie – Deliberação n.º2391/2007

(5)
(6)
(7)

iii

Orientação Científica:

Salviano Filipe Silva Pinto Soares

Professor Auxiliar do

Departamento de Engenharias da Escola de Ciências e Tecnologia da Universidade de Trás-os-Montes e Alto Douro

UTAD

Pedro Miguel Mestre Alves da Silva

Professor Auxiliar do

Departamento de Engenharias da Escola de Ciências e Tecnologia da Universidade de Trás-os-Montes e Alto Douro

UTAD

Trabalho realizado em parceria com estágio curricular realizado na PT Inovação no âmbito do Programa Talento 2008/2009

Acompanhamento do trabalho:

Eng. Alexandre Laranjeira

(8)
(9)

v

À minha família e amigos à UTAD e à PT Inovação

(10)
(11)

vii

Gestão de Home Networks

Wilson Vieira da Silva

Submetido na Universidade de Trás-os-Montes e Alto Douro para o preenchimento dos requisitos parciais para obtenção do grau de Mestre em Engenharia Electrotécnica e de Computadores

Resumo

A evolução da banda larga e a introdução de novos equipamentos especializados em determinado tipo de serviço exigem a adopção de soluções inovadoras que permitam uma gestão e configuração rápida e flexível de acordo com as necessidades específicas de cada equipamento e cliente.

A recente convergência de diversos serviços (voz, dados, wireless e televisão) num mesmo canal de acesso (Triple Play e Quadruple Play) e a profusão de aplicações têm dificultado a gestão, segurança e garantia do QoS (Quality of Service) nas redes, provocando assim a procura de novas soluções.

Garantir a configuração, integridade e despiste de casos de avaria, são nesta altura grandes desafios para os sistemas de suporte à operação dos operadores.

A PT Inovação dispõe de um sistema, o Network Activator, que é responsável pela mediação entre os sistemas de suporte à operação e os equipamentos da rede.

Este trabalho apresenta um módulo de gestão de equipamentos baseado no recente protocolo de gestão remoto CWMP (CPE WAN Management Protocol), com o objectivo de um dia vir a ser integrado à plataforma da PT Inovação.

Palavras-chave: Gestão de Redes, Home Networking, Protocolos de Gestão, CPE

WAN Management Protocol, Simple Network Management Protocol, Universal Plug and Play, Network Configuration, Command Line Interface, BroadBand Forum, Application Programing Interface, Java, API_TR069.

(12)
(13)

ix

Management of Home Networks

Wilson Vieira da Silva

Submitted to the University of Trás-os-Montes and Alto Douro in partial fulfillment of the requirements for the degree of Master of Science in Electrical and Computers Engineering

Abstract

– The broadband evolution and the new specialized equipment

introduction at specific type of service require innovative solutions that enable management and fast and flexible configuration, according to the specific needs of each client and equipment.

The recent convergence of various services (voice, data, wireless and television) in the same channel access (Triple Play and Quadruple Play), and the increase of the number of applications has hindered the management, security and QoS (Quality of Service) in data networks, thus causing a demand for new solutions.

Ensure the configuration, integrity, and screening of cases of failure, are, at this time great challenges in the operation support systems of the operators.

PT Inovação has a system, Network Activator, which is responsible for mediating between operation support systems and network equipment.

This work presents a module equipment management based on recent remote management protocol CWMP (CPE WAN Management Protocol), with the aim of being able to be integrated into the platform of PT Inovação.

Keywords: Network Management, Home Networking, Management Protocols, CPE

WAN Management Protocol, Simple Network Management Protocol, Universal Plug and Play, Network Configuration, Command Line Interface, BroadBand Forum, Application Programming Interface, Java, API_TR069.

(14)
(15)

xi

Agradecimentos

Além das pessoas que aqui vou citar, agradeço também a todas as outras que comigo conviveram não só durante o período de realização deste trabalho, mas durante todos estes meus anos de vida; sem eles o resultado final nunca teria sido o mesmo.

Institucionalmente, os meus agradecimentos ao Magnífico Reitor da Universidade de Trás-os-Montes e Alto Douro, Professor Doutor Mascarenhas Ferreira, ao director da Escola de Ciências e Tecnologia da Universidade de Trás-os-Montes e Alto Douro, Professor Doutor José Afonso Moreno Bulas Cruz, ao director do Departamento de Engenharias da ECT professor doutor Luís Ramos e ao pessoal administrativo, pelas facilidades concedidas e meios colocados à disposição para a realização deste.

Ao Professor Doutor Salviano Filipe Silva Pinto Soares, orientador deste trabalho, por todo o apoio e orientação que me deu, desde o primeiro ao último momento.

Ao Professor Doutor Pedro Mestre, na qualidade de co-orientador, pelas suas sugestões e ideias que viabilizaram e traçaram de forma significativa, o rumo deste trabalho. Ao Engenheiro Alexandre Laranjeira, meu orientador no estágio curricular realizado na PT Inovação, pelo grande conhecimento e experiência que me passou durante este período, tendo sido bastante agradável trabalhar ao lado deste grande profissional. A toda a PT Inovação pela oportunidade de realização deste estágio, pelas óptimas condições que me disponibilizaram durante a realização do projecto e pela grande camaradagem que recebi de todos os profissionais desta empresa.

Finalmente, gostaria de expressar a minha mais profunda gratidão a toda a minha família, sendo eles os grandes responsáveis por tudo aquilo o que sou e tenho.

A todos, muito obrigado.

UTAD, Vila Real Wilson Vieira da Silva

(16)
(17)

xiii

Índice

Resumo……… .. vii Abstract……… .. ix Agradecimentos………. xi Índice………. xiii Índice de Figuras……….... xv

Índice de Tabelas……… xvii

Acrónimos……….. xix 1 Introdução………. 1 1.1 Motivação………... 3 1.2 Objectivos………... 4 1.3 Organização da Dissertação……….... 4 2 Protocolos de Gestão……… 7

2.1 Universal Plug and Play………. 9

2.2 Interface de Linha de Comando………. 10

2.3 Simple Network Management Protocol………. 11

2.4 Network Configuration……….. 13

2.5 CPE WAN Management Protocol………. 14

2.5.1 BroadBand Forum………. 15 2.5.2 Descrição da norma CWMP (TR-069)………. . 16 2.5.3 Funcionalidades……… . 18 2.5.4 Arquitectura..……… . 19 2.5.5 Parâmetros……… . 20 2.5.6 Estabelecimento de Sessões………... 21 2.5.7 Modelo de Comunicação……….. . 22 2.5.8 Métodos RPC………... . 24 2.5.8.1 Métodos CPE……… . 25 2.5.8.2 Métodos ACS………. 27

2.5.9 Integração de TR-069 com UPnP………. . 28

2.5.10 Extensões TR-069……… . 30

(18)

xiv 3.1 Requisitos……….. 34 3.2 Use Cases……… 35 3.2.1 Reboot………. 35 3.2.2 Upgrade de Firmware……….. 36 3.2.3 Configuração de um Serviço……….. 36

3.2.4 Detecção de Falha de Energia………. 37

3.3 Arquitectura……….. .. 38 3.3.1 Actores Externos……… 38 3.3.2 Componentes Internas……… 39 3.4 Diagramas………... 41 3.4.1 Diagrama de Classes……… 41 3.4.2 Diagrama de Sequência……….. 43 3.4.2.1 Reboot……… 44 3.4.2.2 Download de Firmware………. 47

3.4.2.3 Inform não Requisitado ……… 48

4 Implementação da API_TR069………. . 49 4.1 CPE_Entity……….. 49 4.2 CPE Factory………. 50 4.3 Session Manager……….. 50 4.4 Request Client……….. 51 4.5 Connection Manager……… 51 4.6 ACS_Entity……….. 52 4.7 Interfaces Externas……….. 52 5 Testes……….. 55 5.1 Reboot………. 56 5.2 Factory Reset………... 58 5.3 Download……… 59

5.4 Várias Sessões Activas……… 60

5.5 Configuração de Serviço………. 62

5.6 Recolha de Informação e detecção de erros na Comunicação 63 6 Conclusões e Trabalhos Futuros……….. 65

(19)

xv

Índice de Tabelas

1 Camadas protocolares do protocolo CWMP……… 19

(20)
(21)

xvii

Índice de Figuras

1 Ambiente UPnP………. 9

2 Ambiente de gestão SNMP……… 12

3 Ambiente de gestão utilizando o protocolo CWMP……….. 17 4 Exemplo de uma transacção de mensagens numa sessão TR-069………. 23 5 Integração de TR-069 com UPnP……….. 29 6 Conjunto de extensões pertencentes ao âmbito de aplicação do CWMP.. 31 7 Arquitectura e componentes da API_TR069……… . 38 8 Diagrama de Classes da API_TR069………. 41 9 Diagrama de Sequência referente a invocação do método de Reboot…… 44 10 Diagrama de Sequência referente a invocação do método de Download. 47 11 Diagrama de Sequência de um Inform não Requesitado………. 48

(22)
(23)

xix

Acrónimos

ACS – Auto-Configuration Server, servidor responsável pela auto configuração de

CPE.

API – Application Programming Interface, trata-se de um conjunto de rotinas e padrões

estabelecidos por um software.

BEEP – Blocks Extensible Exchange Protocol, geralmente também conhecido por

BXXP, corre tipicamente sobre TCP e possibilita a troca de mensagens (frames). Ao contrário de HTTP e de outros protocolos semelhantes, este permite que ambos os extremos da conexão consigam enviar mensagens a qualquer momento.

CLI – Command-line Interface, mecanismo que permite interagir com um software

através da digitação de comandos para realizar determinadas tarefas.

CPE – Customer-Premises Equipment ou também conhecido por Customer-Provided

Equipment, equipamento localizado nas instalações do cliente e conectado a um canal de uma operadora de telecomunicações.

CWMP – CPE WAN Management Protocol, também bem conhecido por TR-069,

trata-se de um protocolo da camada de aplicação que permite gestão remota de CPE.

EPON – Ethernet PON, tecnologia PON que utilize pacotes Ethernet em vez de células

ATM.

HTTP – HyperText Transfer Protocol, protocolo da camada de aplicação utilizado para

transferir dados por intranets e pela World Wide Web.

HTTPS – HyperText Transfer Protocol Secure, implementação do protocolo HTTP

sobre uma camada SSL ou TLS.

IDE – Integrated Development Environment, trata-se de um ambiente integrado para

desenvolvimento de software.

IETF – Internet Engineering Task Force, grupo internacional cuja função é estruturar

correctamente a evolução da arquitectura da internet e garantir o seu correcto funcionamento.

IP – Internet Protocol, protocolo sob o qual assenta a infra-estrutura da Internet.

IPTV – IPTV ou TVIP trata-se de um método de transmissão de sinais televisivos

utilizando o protocolo IP.

(24)

xx

JDK – Java Development Kit, é um conjunto de utilitários que permitem criar sistemas

de software para a plataforma java. É composto por compilador e bibliotecas.

LAN – Local Area Network, rede de computadores de pequena dimensão, cobrindo por

exemplo a área de uma casa, escritório ou mesmo de um pequeno grupo de edifícios.

MIB – Management Information Base, tipo de base de dados usada para gerir

dispositivos em redes de comunicações.

NAT – Network Address Translation, é uma técnica que consiste em alterar o endereço

IP de origem de um pacote que passa por um router ou firewall de maneira que um computador de uma rede interna tenha acesso ao exterior (rede publica).

NETCONF – Network Configuration, é um protocolo de gestão de redes desenvolvido

pelo IETF.

NGN – Next Generation Networking, termo amplo que descreve as recentes e futuras

evoluções arquitecturais nas redes de telecomunicações.

OSI – Open Systems Interconnection, arquitectura que define uma forma comum de

conectar computadores.

OSS – Operations Suport System, trata-se de sistemas computacionais usados pelos

fornecedores de serviços de telecomunicações para dar suporte aos seus clientes.

PDA – Personal Digital Assistants, é um computador de dimensões reduzidas dotado de

uma grande capacidade computacional.

PON – Passive Optical Network, é a tecnologia que permite transmissão de dados

através de fibra óptica.

QoS – Quality of Service, refere-se a capacidade de fornecer um serviço conforme as

exigências.

RPC – Remote Procedure Call, trata-se de um processo de comunicação que permite

que um programa local invoque remotamente a execução de um outro programa.

SNMP – Simple Network Management Protocol, é um protocolo da camada de

aplicação utilizado para gestão de redes TCP/IP.

SOAP – Simple Object Access Protocol, é um protocolo utilizado para troca de

informações utilizando tecnologias baseadas em XML.

SSL – Secure Sockets Layer, protocolo utilizado para transmitir documentos de forma

segura através da internet.

SSH – Secure Shell, trata-se de um protocolo de rede que permite a conexão com outro

computador na rede de forma a executar comandos remotamente.

STB – Set-Top Box ou conversor, é um termo que descreve um equipamento que se

conecta a um televisor e a uma fonte externa de sinal, e transforma este sinal em conteúdo no formato que possa ser apresentado em uma tela.

(25)

xxi

TCP – Transmission Control Protocol, é um dos protocolos sob os quais assenta o

núcleo da Internet. Ele verifica se os dados são enviados de forma correcta, na sequência apropriada e sem erros, pela rede.

TCP/IP – Corresponde a um conjunto de protocolos utilizados para comunicação entre

computadores em rede.

TLS – Transport Layer Security, tal como o seu predecessor trata-se de um protocolo encriptado que promove uma comunicação segura através da Internet.

TR-064 – Technical Report 64, desenvolvido pelo actual BroadBand Forum,

corresponde a norma que especifica como deverá ser feita a comunicação entre o Residential Gateway e os hosts da LAN.

TR-069 – Technical Report 69, desenvolvido pelo actual BroadBand Forum,

corresponde a norma de especificação do protocolo CWMP.

TR-111 – Technical Report 111, desenvolvido pelo actual BroadBand Forum,

corresponde a norma que define a gestão de dispositivos pertencentes a home network através do protocolo TR-069.

UML – Unified Modeling Language, é uma linguagem que auxilia a visualização do

desenho da comunicação entre objectos.

UPnP – Universal Plug and Play, é um conjunto de protocolos de redes de

computadores que permite conexões directas e simplificadas para implementação de redes em casas e escritórios.

VoIP – Voice over Internet Protocol, tecnologia que permite transmissão de

comunicações de voz sobre redes IP.

WAN – Wide Area Network, rede de computadores que cobre uma grande área.

WS – Web Services, trata-se de sistemas de software desenhados para suportar

inter-operacionalidade e interacção de sistemas computacionais através da rede.

xDSL – Família de tecnologias que fornecem um meio de transmissão digital de dados

(ex: ADSL, HDSL, VDSL, SDSL, UDSL), aproveitando a própria rede de telefonia que chega na maioria das residências.

XML – Extensible Markup Language, é uma linguagem utilizada para facilitar o

(26)

xxii

(27)

1

1

Introdução

As comunicações electrónicas têm convergido para um modelo de redes de multi-serviço baseadas em tecnologias integradoras, designadas de Next Generation Networking (NGN) [42].

Para os Internet Service Provider (ISP), as actuais redes de acesso de banda larga representam não só um acrescido risco de segurança nas redes dos seus clientes, mas também, uma maior dificuldade em garantir a respectiva QoS (Quality of Service). Tais dificuldades devem-se à associação de quatro factores: elevados débitos disponíveis para cada um dos clientes; elevado número de clientes servidos por cada ISP; permanente solicitação das ligações (xDSL, cabo, fibra, 3G); e a falta de conhecimentos técnicos dos clientes que garanta a correcta gestão da sua rede doméstica.

Ainda que parte das dificuldades actuais já existissem anteriormente, o carácter intermitente das ligações dial-up clássicas e os reduzidos débitos disponíveis, tornavam mais simples aos ISP a tarefa de detectar e controlar situações de risco para as suas redes, para os seus clientes ou terceiros.

A recente convergência de diversos serviços (voz, dados, wireless e televisão) num mesmo canal de acesso (Triple Play e Quadruple Play) e a profusão de aplicações têm

(28)

2

dificultado a gestão, segurança e garantia do QoS nas redes, provocando assim a procura de novas soluções.

Os ISP têm considerado que a gestão e segurança da rede do cliente estão fora da sua esfera de influência, devendo ser administrada autonomamente pelo cliente. Normalmente, os operadores consideram que a sua esfera de influência acaba no seu equipamento de fronteira, sendo responsabilidade do cliente a gestão dos seus próprios equipamentos de home gateway e de tudo o que esteja para lá desses equipamentos. Actualmente as redes Triple e Quadruple Play alteram parcialmente esta perspectiva, passando a ser necessárias e aceites algumas intervenções do operador no interior da rede do cliente, nomeadamente para administrar remotamente set-top box (STB) e gateways de serviço telefónico.

A entrada dos operadores nas redes domésticas tem influenciado que entidades tais como BroadBand Forum [4] e Home Gateway Initiative [16] apostem na normalização das tecnologias que permitem administrar e monitorizar remotamente não só os equipamentos de fronteira home gateway mas também outros equipamentos CPE (Customer Premise Equipment) localizados na rede do cliente.

As principais ferramentas utilizadas pelos administradores das redes para gerir seus equipamentos foram as interfaces de linha de comando CLI, oferecidas pelos fabricantes do equipamento, e o protocolo de aplicação SNMP (Simple Network Management Protocol) desenvolvido pelo IETF [19]. Actualmente tem-se optado pela norma CWMP (CPE WAN Management Protocol), também conhecida como TR-069.

O TR-069 pertence ao âmbito das Broadband Suites do referido fórum, fazendo assim parte de uma família de normas e protocolos extensíveis e orientados para a gestão em ambientes de banda larga.

Esta norma tem vindo a conhecer crescente aceitação, sendo de esperar que seja gradualmente integrada por todas as aplicações de administração, do lado dos operadores, e por todos os equipamentos, no lado dos fabricantes de CPE (em especial routers/modems ADSL e set-top boxes).

A adopção do TR-069, permite que seja relativamente simples ao operador disseminar novas regras e configurações para grupos alargados de utilizadores, em função dos respectivos perfis e equipamentos instalados.

A gestão de configurações é realizada recorrendo a um servidor de auto-configuração (ACS, ou Auto-configuration Server, segundo a terminologia TR-069), que realiza a distribuição de actualizações de software dos CPE, a adição de novos serviços e a gestão dos perfis do ambiente.

Outras tecnologias recentes tais como UPnP (Universsal Plug and Play) e NetConf (Network Configuration) foram também padronizadas para apoiar e responder às actuais necessidades de gestão das redes.

(29)

3

O nosso objectivo principal foi desenvolver uma solução de gestão de equipamentos utilizando o protocolo CWMP que se comporta como servidor ACS para gerir CPE TR-069, permitindo configurar remotamente equipamentos de clientes sem que estes necessitem de possuir conhecimento técnico. Permite também a configuração de equipamentos de variadíssimos fabricantes, desde que suportem as normas TR-069 ou 064 (protocolo que possibilita interacção entre os protocolos UPnP e o standard TR-069).

Deste trabalho resultou um protótipo capaz de gerir equipamentos TR-069 e isolar as especificações deste protocolo de outros sistemas ou utilizadores que virão a utilizar esta ferramenta. Pretende-se que uma versão evoluída desta ferramenta venha a ser integrada na plataforma Network Activator [28] da PT Inovação.

Esta solução trata-se de uma API (Application Programming Interface) desenvolvida na linguagem de programação orientada a objectos Java [33] [24], tendo sido utilizado o software gratuito NetBeans IDE 6.5.1 instalado com a versão 6 do Kit de Desenvolvimento Java (JDK) da Sun [25], como ferramenta de compilação e desenvolvimento da API.

1.1 Motivação

O TR-069 tem-se vindo a tornar cada vez mais como protocolo padrão na gestão e configuração remota de CPE, a sua utilidade suscitou o interesse da PT Inovação para a criação de uma proposta de estágio curricular com o objectivo de implementar um módulo de gestão baseado nesta norma.

A PT Inovação pretende que este módulo desenvolvido seja o ponto de partida para que num futuro próximo a sua plataforma Network Activator conte com uma solução TR-069 de forma a melhor servir os seus clientes.

O projecto desta dissertação de Mestrado foi integrado neste estágio curricular realizado nas instalações da PT Inovação em Aveiro durante o período 1/12/2008 a 1/9/2009.

(30)

4

1.2 Objectivos

Os objectivos projectados no enquadramento desta proposta de dissertação foram os seguintes:

Aquisição/consolidação de Conhecimentos

Estudo da norma TR-069 e aquisição de valências necessárias para a realização do projecto.

Implementação de um ACS

Construção de um módulo de gestão de equipamentos baseado no recente protocolo de gestão remoto CWMP.

Realização de testes com equipamentos da PT Inovação

O ACS implementado deverá ser testado convenientemente.

1.3 Organização da Dissertação

Além deste capítulo introdutório, que visa enquadrar este trabalho, apresentar os objectivos traçados e sua motivação, esta dissertação é composta por mais cinco capítulos.

O capítulo dois, “Protocolos de Gestão”, apresenta a importância da gestão de equipamentos na realidade das redes actuais e futuras, e contem uma descrição de diversas tecnologias de gestão, sendo dedicado especial atenção a tecnologia de gestão remota utilizada na realização deste projecto, o CPE WAN Management Protocol. Os três capítulos seguintes, “Concepção”, “Implementação” e “Testes”, correspondem a uma descrição detalhada das fases do desenvolvimento e funcionamento do módulo de configuração e gestão de equipamentos TR-069 construído.

O capítulo “Concepção”, capítulo três, descreve a análise teórica realizada antes da implementação prática da aplicação. Aqui serão apresentados requisitos, casos de utilização, arquitectura e diagramas de classes e fluxo que explicam o funcionamento da aplicação. Este esboço teórico foi feito, com o intuito de prever as necessidades a ter em conta durante o seu desenvolvimento; a correcta forma de implementação; e o funcionamento e resultado final.

Por outro lado, o quarto capítulo, “Implementação” corresponde a uma análise mais detalhada e a explicação dos procedimentos práticos escolhidos para a implementação do sistema. Aqui será descrito sucintamente o funcionamento do servidor ACS; serão apresentadas as funcionalidades que o sistema suporta e será também explicada a forma como o utilizador ou um sistema interage com a aplicação.

(31)

5

No quinto capítulo, “Testes”, são apresentados os resultados obtidos com a aplicação desenvolvida.

Por último, o capitulo seis, “Conclusões e Trabalhos Futuros”, tal como o nome do capítulo indica, é onde é feita uma apreciação final e global acerca da API_TR069 e são referidos trabalhos que poderão ser realizados ainda no âmbito deste projecto.

No fim do documento são citadas as fontes que me auxiliaram na elaboração deste documento.

(32)

6

(33)

7

2

Protocolos de Gestão

Desde o aparecimento do primeiro computador no inicio dos anos 60 do século passado, tem-se verificado que tecnologia tem gerado tecnologia a uma velocidade impressionante.

Em particular duas áreas que continuam a registar uma forte evolução tecnológica são as redes de telecomunicações e redes de computadores, encontrando-se ambas actualmente em sentido de convergência. Esta convergência associada aos novos avanços tecnológicos das redes tem levado a que estas duas áreas actuem numa dimensão comum, que é o fornecimento de múltiplos serviços baseados em uma única infra-estrutura.

O conceito de convergência, o "internetwork", que corresponde a um conjunto de dispositivos e procedimentos que permitem a interconexão de redes individuais, formando redes de maiores dimensões e capacidades. Estas redes são baseadas no emprego de computadores e seus recursos de controlo, aliadas à utilização de técnicas de comutação de pacotes e transmissão de dados dos sistemas de telecomunicações, sendo, portanto, uma combinação de ambas as tecnologias.

O grande símbolo desta convergência de tecnologias é a Internet.

Num futuro próximo e de uma forma global todos os nossos equipamentos domésticos (televisão, fogão, microondas, lâmpadas, etc.) serão implementados com interfaces de

(34)

8

rede, possibilitando a sua conexão à Internet. Tudo poderá ser equipado com tais aparelhos de rede, possibilitando uma forma de vida cada vez mais conveniente, indo ao encontro da célebre frase citada por Max Frisch "Tecnologia é a habilidade de organizar o mundo de forma que não tenhamos que senti-lo" [13].

A criação do modelo de referência OSI [15] [44] corresponde a um dos maiores passos dados na gestão de redes. Este modelo promoveu a coordenação e estruturação das comunicações de dados, permitindo redução da complexidade de desenvolvimento de normas; maior flexibilidade e simplicidade de implementação de alterações e funcionalidades nas camadas; incorporação de novas tecnologias e compatibilidade entre fabricantes [41].

Durante muito tempo a existência de um único protocolo padronizado (SNMP) e as interfaces CLI integradas nos equipamentos, foram suficientes para garantir uma correcta gestão e monitorização de equipamentos e serviços nas nossas redes.

No entanto, o SNMP nunca se afirmou como uma solução fiável e segura em termos de configuração e as interfaces de linhas de comando (CLI) sempre se apresentaram mecanismos muito pouco flexíveis, visto certos aspectos funcionais dependerem directamente do fabricante do equipamento.

Se adicionarmos a estes factores o aumento da dimensão das redes IP, concluí-se facilmente que estas ferramentas não atendem às necessidades de configuração das redes modernas actuais, daí a necessidade da criação de soluções de gestão automáticas e capazes de configurar sistemas a partir de protocolos padronizados e extensíveis. Existem várias razões que tornaram o TR-069 como tecnologia padrão na gestão de equipamentos dos clientes dos ISP.

A criação de um protocolo de gestão remota como o CPE WAN Management Protocol (TR-069) representa a possibilidade, de que ISP sejam capazes de aceder remotamente a diferentes equipamentos de diferentes fabricantes, através de uma tecnologia completamente padronizada e através da mesma infra-estrutura.

Apesar do âmbito de aplicação deste protocolo ser de configuração ponto a ponto dentro de uma rede WAN, o mesmo foi desenhado para ser compatível com outras tecnologias, nomeadamente o UPnP, tornando-o assim um protocolo extensível e capaz de chegar também as nossas LAN.

Uma outra característica deste protocolo é a sua flexibilidade: baseia-se em protocolos completamente normalizados e de utilização aberta (SOAP [47], XML [50], HTTP/HTTPS [45], TCP [27]), permitindo assim que os próprios ISP desenvolvam as suas próprias ferramentas de gestão.

Disponibiliza também mecanismos que permitem facilmente instalar novos serviços e software nos equipamentos. Garante ainda uma comunicação bastante segura e fiável entre servidor e cliente TR-069.

(35)

9

Face as limitações de configuração apresentadas pelo protocolo SNMP, o IETF desenvolveu o Network Configuration (NetConf), tratando-se também de um protocolo de configuração e gestão remota baseado em tecnologias abertas e padronizadas.

Relativamente ao TR-069, o NetConf tem como única diferença o facto de permitir ser encapsulado e transportado através de diferentes tecnologias (SOAP, BEEP, SSH). É igualmente bastante seguro em todas as suas implementações.

Neste capítulo iremos falar um pouco de todas estas soluções de gestão, no entanto será dedicado especial atenção ao protocolo de gestão remota CPE WAN Management Protocol ou também conhecido por TR-069.

2.1 Universal Plug and Play

A tecnologia Universal Plug and Play (UPnP) [35] estende do Plug and Play; é constituída por protocolos abertos (TCP/IP [48]) direccionados para a comunicação na Internet e por tecnologias Web; é promulgada pelo UPnP Forum [34]; define uma arquitectura capaz de estabelecer conexão ponto a ponto em redes de dispositivos inteligentes e é projectada para proporcionar fácil utilização e flexibilidade, dado basear-se em padrões de conectividade ad-hoc [36] [37].

Estas redes são pequenas tais como as que temos em nossas casas, pequenos negócios ou mesmo espaços públicos onde poderá existir ou não conexão à internet. Esta tecnologia pretende facilitar a implementação e instalação destas redes, a partilha de dados e comunicações entre dispositivos.

Figura 1 – Ambiente UPnP [18].

A existência desta tecnologia faz com que o conceito futurista “All-IP” (tudo possuirá endereço IP) se torne possível num futuro não muito distante. Podemos imaginar um

(36)

10

despertador activado pela rede que sabe das suas reuniões, verifica o trânsito e a previsão do tempo, calcula quando você precisa acordar e, pela manhã, o informa do horário do seu voo, a previsão do local de destino, e quando você precisa sair. Em direcção ao aeroporto, o seu assistente pessoal digital (PDA) activado pelo UPnP encontra o melhor lugar para estacionar o carro e solicita um jornal para você se informar sobre a actualidade. Enquanto viaja, o seu PDA verifica as suas reuniões, faz as reservas dos restaurantes e hotéis e pede alguns petiscos para quando você chegar a casa. Actualmente estas extravagâncias ainda não existem, mas serão possíveis com a existência do UPnP [11].

Quando os dispositivos que incorporam a tecnologia UPnP são fisicamente conectados à rede conectam-se automaticamente uns aos outros, sem a necessidade de o utilizador configurar ou centralizar serviços e servidores.

A especificação UPnP é baseada em protocolos de rede tais como: IP, TCP, UDP, HTTP e XML. Permitindo assim que os dispositivos comuniquem facilmente entre si, negociem portas e permitam que aplicações UPnP trabalhem de forma transparente sem a necessidade de configuração. Daí a razão pela qual ser chamada de universal pois não necessitar de drivers específicos de dispositivo, usando esses protocolos padrões em seu lugar.

Os dispositivos UPnP podem configurar automaticamente o endereçamento de rede, anunciar sua presença em uma sub-rede e permitir a troca de descrições de serviços e dispositivos. Um computador com o Windows XP ou Windows Vista pode actuar como um ponto de controlo de UPnP, descobrindo e controlando dispositivos através de uma interface de rede.

Basicamente, dispositivos UPnP transmitem as suas capacidades a todos os pontos na rede e permitem que clientes UPnP ajam como pontos de controlo.

Comparativamente aos resultados verificados com a tecnologia Plug and Play, que facilitou as acções de configuração e adição de novos periféricos a um único computador, o UPnP não se apresenta como uma novidade tão revolucionária. No entanto certamente trata-se de um grande e importante passo na evolução das nossas redes.

2.2 Interface de Linha de Comando

Uma interface de linha de comando é um mecanismo que permite o envio de comandos para realizar tarefas em determinado computador ou sistema, possibilitando assim uma interacção com o mesmo [40].

(37)

11

Este mecanismo poderá ser utilizado na gestão de equipamentos, sendo uma técnica amplamente utilizada em todo o universo informático.

Este método de gerir um computador, para executar uma determinada tarefa, baseia-se na escrita de um comando na linha de comandos e respectivo envio do comando. O envio desse comando será feito após seja pressionada a tecla “Enter”. Nesse momento o interpretador da linha de comandos recebe, analisa e executa o referido comando [32]. Este interpretador de linha de comandos deverá estar a correr num terminal de texto localmente ou numa janela shell, remotamente como por exemplo um cliente PuTTY. Após a conclusão, o comando geralmente retorna ao utilizador o resultado da execução da operação em formato texto na CLI.

Os fabricantes dos equipamentos de rede (tipicamente Switchs, Routers, Hubs, Bridges) incorporam nos seus equipamentos mecanismos que permitem configura-los através de CLI, proporcionando aos administradores das redes, técnicas fáceis de configuração. No entanto, estas ferramentas variam de fabricante para fabricante. O seu uso representa um elevado custo operacional, associado ao desenvolvimento dos scripts e da sua manutenção. De salientar ainda o facto de o administrador necessitar de conhecer bem o equipamento e os comandos que ele incorpora.

2.3 Simple Network Management Protocol

No início da década de 80, o protocolo Simple Network Management Protocol (SNMP) começou a ser desenvolvido pelo Internet Engineering Task Force (IETF), com o objectivo de disponibilizar uma forma simples e prática de gerir equipamentos numa rede de computadores.

O SNMP é um protocolo de gestão pertencente a camada de aplicação do modelo OSI. Pode ser utilizado tanto para obter informações, como alterar a configuração de equipamentos SNMP que se encontram espalhados numa rede baseada na pilha de protocolos TCP/IP.

Estes equipamentos são denominados de agentes SNMP, enquanto a entidade que gere estes agentes é denominado por gestor.

A informação de gestão dos agentes pode ser acedida através do repositório conhecido por Management Information Base (MIB). Na realidade este repositório não contém qualquer tipo de dados, mas sim a informação acerca de que dados podem ser usados para gerir o agente.

(38)

12

O funcionamento do SNMP é baseado numa troca de informações entre a MIB do agente e a aplicação do gestor. As acções de gestão são realizadas através do envio de pedidos por parte do gerente a um ou mais agentes utilizando o protocolo de transporte UDP (User Datagram Protocol).

Figura 2 – Ambiente de gestão SNMP [39].

Em termos de operações, o SNMP disponibiliza duas operações básicas (SET e GET) e suas derivações (GET-NEXT e TRAP).

A operação SET é utilizada para alterar o valor de determinada variável; o gestor solicita que o agente faça uma alteração no valor da variável.

A operação GET é utilizada para ler o valor de determinada variável; o gestor solicita que o agente obtenha o valor da referida variável.

A operação GET-NEXT é utilizada para ler o valor da variável seguinte; neste caso o gestor fornece o nome de uma variável e obtém o valor e o nome da próxima variável; também utilizado para obter valores e nomes de variáveis de uma tabela de tamanho desconhecido;

A operação de TRAP é utilizada para informar o gestor da ocorrência de determinado evento.

Apesar do SNMP ser um protocolo muito bom em termos de monitorização, o mesmo não se reflecte nas acções de configuração. O facto de utilizar datagramas UDP para transporte da sua informação de gestão, faz dele um protocolo muito pouco fiável e seguro. Devido a estas deficiências, o IETF tem vindo a desenvolver novas versões deste protocolo (SNMPv2 e SNMPv3).

Se adicionarmos a estas lacunas o facto do acesso aos agentes não ser controlado nem registado, e ainda o facto da arquitectura das MIBs variarem entre alguns fabricantes, faz com que o SNMP muito dificilmente se torne um protocolo talhado para a configuração de equipamentos.

(39)

13

Uma especificação completa e detalhada deste protocolo pode ser encontrada no RFC 1157 [10].

2.4 Network Configuration

O Network Configuration (NetConf) trata-se de uma tecnologia de gestão e configuração de rede. A sua implementação foi iniciada em Maio de 2003 e foi publicado em Dezembro de 2006 pelo Internet Engineering Task Force (IETF) [12]. O NetConf disponibiliza mecanismos capazes de instalar, recuperar, manipular e apagar configurações de dispositivos de rede. A sua utilidade é semelhante à utilização de linhas de comando e interfaces Web quando estas são utilizadas como técnicas de configuração de equipamentos de rede. Estas técnicas geralmente são direccionadas à interacção directa do humano com o equipamento e o seu uso é muitas vezes meramente local. O NetConf pode ser utilizado para gerir equipamentos remotamente, e disponibiliza uma interface flexível e programável, fomentando a criação de aplicações automáticas de configuração e monitorização de dispositivos de rede.

Sessões NetConf possibilitam efectuar múltiplas alterações de configuração simultâneas dentro da mesma sessão. Nestas sessões é possível realizar alterações e só depois decidir aplica-las, evitando que operadores de rede cometam erros de configuração.

O grupo de trabalho NetConf preocupou-se em produzir um protocolo adequado à configuração de rede com as seguintes principais características:

• Capaz de fornecer mecanismos que diferenciem dados configuráveis de dados não configuráveis;

• Seja suficientemente extensível para que fabricantes proporcionem acesso a todos os dados de configuração dos dispositivos usando um protocolo único; • Interface aberta e programável;

• Utilize uma representação textual dos dados, de forma a serem facilmente editados, não havendo assim necessidade da utilização de ferramentas complexas de manipulação;

• Permita integração com os actuais métodos de autenticação do utilizador; • Independência a nível de transporte;

• Suporte um conjunto de operações de configuração; • Promova suporte a notificações assíncronas.

Antes do NetConf a opção natural de configuração era o Simple Network Management Protocol (SNMP). Foi largamente difundido entre fornecedores e portanto frequentemente encontrado em dispositivos comerciais. Porém, para ser utilizado concretamente como protocolo de configuração, o utilizador do SNMP precisa levar em

(40)

14

consideração as carências do protocolo, particularmente a nível de fiabilidade e segurança. O SMNP continua a apresentar-se como um excelente protocolo de monitorização, apesar de apresentar as referidas limitações a nível de configuração. Com a criação do NetConf, o IETF apresentou um protocolo de configuração sem as limitações existentes no SNMP, como também um protocolo baseado nas novas tecnologias de Web Services (WS) [49], que têm sido alvo de grande investigação no contexto de gestão de redes.

O objectivo principal do NetConf é unificar a maneira pela qual os dispositivos de rede são configurados, propondo padrões que sejam simples e suficientemente genéricos para abranger diversos tipos de dispositivos.

De forma geral, pode-se dizer que o NETCONF é um conjunto de definições para formação de documentos Extensible Markup Language (XML) de configuração.

Dentre as características dos WS, pode-se citar sua simplicidade e padronização, que contribuem para a obtenção da interoperabilidade entre aplicações. O protocolo largamente utilizado para troca de mensagens WS é o Simple Object Access Protocol (SOAP) baseado em XML e transportado geralmente via HTTP.

O IETF propõe as seguintes formas de transportar o protocolo NetConf: • NetConf encapsulado em mensagens SOAP sobre HTTP [17];

• NetConf encapsulado em mensagens SOAP sobre HTTPS (via SSL-TLS) [1]; • NetConf encapsulado em mensagens SOAP sobre BEEP [14];

• NetConf directamente sobre BEEP (Blocks Extensible Exchange Protocol) [23][29];

• NetConf directamente sobre SSH (Secure Shell) [38].

O princípio de funcionamento do NETCONF é baseado no paradigma RPC (Remote Procedure Call), através do qual é definido um conjunto de operações do protocolo [26]. Basicamente o gerente NETCONF (cliente) codifica uma requisição RPC em XML e a envia ao agente NETCONF (servidor). O agente, ao receber uma mensagem NETCONF, processa a requisição e envia uma resposta RPC de volta ao gerente. Tanto mensagem de pedido como resposta são enviadas em formato XML, e têm as suas estruturas totalmente descritas em schema XML [46], permitindo ao gerente e agente NETCONF validarem as mensagens recebidas.

2.5 CPE WAN Management Protocol

O CPE Wan Management Protocol foi publicado em Maio de 2004 no relatório técnico 69 do DSL Fórum (actual BroadBand Forum), daí o protocolo ser também conhecido

(41)

15

por TR-069. Trata-se de um protocolo de gestão remota de dispositivos e já encontrou ampla aceitação por grandes fabricantes, tais como a Thomson, Alcatel e Cisco, que implementam clientes TR-069 em seus dispositivos [5].

2.5.1 BroadBand Forum

O BroadBand Forum corresponde a um consórcio global constituído por cerca de 200 líderes da indústria das telecomunicações, computação, redes e empresas provedoras de serviços. Fundado em 1994 originalmente com o nome de ADSL Forum e posteriormente DSL Forum. Actualmente é conhecido por BroadBand Forum onde a 18 de Maio de 2009 conseguiu uma forte união com o IP/MPLS Forum.

O IP/MPLS Forum trata-se de uma organização internacional cujos seus membros são entidades tais como: provedores de serviço, fabricantes de equipamentos, centros de teste e utilizadores empresariais. A sua missão é indicar soluções e aplicações direccionadas à correcta utilização de diversas tecnologias de rede.

Com esta união, o BroadBand Forum tornou-se o órgão central para especificações da próxima geração de redes IP.

O BroadBand Forum age em benefício dos seus membros, reconhecendo a competitividade verificada entre eles, e procura definir leis globais que tornem essa competitividade saudável. Com estas leis o BroadBand Forum pretende ainda garantir uma correcta utilização das técnicas especificadas, partilhar as melhores práticas de implementação, promover o mercado da banda larga e facilitar o desenvolvimento interoperacional da banda larga com base em componentes de rede.

Desde 1994, este Forum desenvolveu mais de 100 especificações baseadas na definição da tecnologia DSL (Digital Subscriber Line) para fornecer máxima eficiência de gestão da banda larga. Dado abordar todas as formas da tecnologia DSL, o seu nome foi alterado para DSL Forum em 1999.

Ao longo dos anos, esta organização focou o seu trabalho no desenvolvimento da arquitectura de fibra óptica e em garantir que prestadores de serviço fossem capazes de gerir as suas próprias redes a partir de uma plataforma de endereçamento IP. De modo a realçar esse trabalho desenvolvido, em 2008 o seu nome foi novamente alterado para BroadBand Forum.

Em 2005, foi criado o BroadBandSuite, que agrupou uma serie de soluções técnicas de transporte, gestão da rede digital e apoio ao cliente. Actualmente o BroadBandSuite destaca 3 conjuntos de soluções desenvolvidas pelo BroadBand Forum: rede, administração e especificações orientadas ao utilizador.

(42)

16

Algumas das principais especificações de rede desenvolvidas até ao momento tratam-se soluções para tecnologias tais como ADSL, SHDSL e ADSL2/2plus. Até ao fim de 2009 serão ainda concluídos testes de performance da tecnologia VDSL2.

Para além de trabalhos desenvolvidos associados a este vasto conjunto de tecnologias DSL, tem surgido outros trabalhos associados a outras tecnologias tais como: PON, EPON e desenvolvimento de normas Ethernet ponto a ponto.

O BroadBand Fórum também tem tido preocupações relacionadas com a eficiência energética, tencionando propor medidas que permitam a aderência de indústrias aos compromissos globais de redução de energia.

O trabalho desenvolvido inclui também especificações direccionadas a configuração de redes, aos sistemas de controlo de acesso e aos sistemas de suporte a operações. Estas especificações correspondem a práticas correctas para solucionar problemas em banda larga, incluindo mecanismos de controlo de frames e fornecendo mecanismos de controlo direccionados a operadores remotos de linhas fixas.

O desenvolvimento do protocolo de gestão remota da rede digital doméstica (TR-069) corresponde a um marco importante na história do BroadBand Forum, tornando-se mesmo como protocolo padrão para gestão remota. A capacidade de facilmente adicionar modelos de objectos a novos equipamentos tem contribuído para que provedores de serviço sejam capazes de manter sempre actualizados serviços e aplicações nos dispositivos.

2.5.2 Descrição da norma CWMP (TR-069)

A finalidade da criação deste protocolo foi desenvolver um padrão de gestão de equipamentos em ambiente WAN. Com base nesta plataforma de gestão comum, provedores de serviço são capazes de gerir todos os seus equipamentos através da internet, independentemente do dispositivo ou fabricante. Até aqui nunca tinha existido uma plataforma de gestão semelhante, devido ao facto dos fabricantes de equipamentos criarem seus próprios mecanismos de configuração e não partilharem esses mecanismos com os seus concorrentes.

O TR-069 trata-se de um protocolo da camada de aplicação que proporciona comunicação bidireccional entre determinado equipamento que se pretenda configurar e a respectiva entidade configuradora. Essa comunicação é baseada em mensagens SOAP sobre HTTP e garante uma configuração segura.

O desenvolvimento do padrão TR-069 trata-se de uma resposta à complexidade registada na configuração dos equipamentos do utilizador comum.

(43)

17

O TR-069 é utilizado para gestão/configuração remota de equipamentos domésticos (modems, routers, gateways, set-top box, telefones VoIP) TR-069 do utilizador comum. Sendo a sua grande maioria gateways residenciais, poderá também ser utilizado para a gestão de outros equipamentos não TR-069, visto ser possível a sua integração com a tecnologia UPnP, tornando-o assim capaz de alcançar uma vasta quantidade de dispositivos nas nossas redes.

Num ambiente TR-069, o elemento responsável pela gestão dos equipamentos CPE (Customer Premises Equipment) é o ACS (Auto Configuration Server) que terá duas interfaces de comunicação distintas como se pode observar na figura 3. Uma diz respeito à informação trocada com fornecedores de serviço, sistemas de controlo de acesso e operadores que estarão a utilizar este servidor (esta interface está fora do âmbito de aplicação do TR-069). A outra interface corresponde à comunicação deste servidor com os dispositivos TR-069.

Cada CPE só pode ser gerido por um único ACS, num ambiente multi-provedor. Poderá ser limitativo, dado que toda a configuração de gestão de determinado CPE terá de ser mantida num único ACS que será responsável por resolver todos os conflitos relacionados com a configuração dos dados de configuração e distribuir a configuração para os respectivos dispositivos.

Figura 3 – Ambiente de gestão utilizando o protocolo CWMP [5].

A figura 3 representa um ambiente TR-069 contendo as entidades já referidas.

O TR-069 apresenta vantagens sobre outros protocolos de gestão, tais como SNMP ou NETCONF. Utiliza TCP como protocolo de transporte em vez de datagramas UDP usados no SNMP, aumentando assim a fiabilidade que se trata de uma característica bastante importante num protocolo de configuração.

Outra característica importante do TR-069 trata-se do facto de não usar conexões TCP persistentes entre a aplicação gestora e o equipamento, permitindo assim que o ACS

(44)

18

seja capaz de gerir uma grande quantidade de CPE simultaneamente ao contrário de algumas implementações de NetConf, que necessitam de manter a sua conexão de gestão sempre aberta com o equipamento que está a operar.

Comparativamente ao NetConf, o TR-069 apresenta-se bastante mais flexível visto existirem extensões que o colocam compatível com tecnologias modernas tais como o UPnP, conseguindo assim alcançar equipamentos das LAN e equipamentos não TR-069.

Em termos de flexibilidade de operacionalidade o TR-069 incorpora um mecanismo que proporciona que tanto ACS como CPE sejam capazes de iniciarem o estabelecimento de sessões TR-069.

O TR-069 foi também projectado para promover um elevado nível de segurança e para impedir a manipulação ilícita das operações efectuadas entre um CPE e respectivo ACS. Fornece ainda confidencialidade para essas operações, e permite vários níveis de autenticação.

2.5.3 Funcionalidades

O TR-069 oferece as seguintes ferramentas e funcionalidades de gestão: • Auto-configuração e provisionamento dinâmico de serviço.

Capacidade de reconfigurar e permitir recolha de informação de CPE TR-069.

• Download Software / Firmware.

Oferece ferramentas de gestão de download do software CPE bem como a actualização de ficheiros de firmware. Coloca ainda ao nosso dispor mecanismos para identificação da versão, iniciação do download, e notificação acerca do sucesso ou falha de download.

Quando o Download é iniciado pelo ACS, o ACS fornece ao CPE a localização do arquivo a ser transferido. O CPE, em seguida, efectua a transferência, e notifica o ACS. No entanto estas transferências podem ser opcionalmente iniciadas pelo próprio CPE. Nesse caso, o CPE envia um pedido de download de um determinado tipo de arquivo ao ACS. O ACS responde iniciando o download seguindo os mesmos passos como se fosse o ACS a fazer o download.

(45)

19

Proporciona suporte a CPE de forma a tornar disponível informação com a qual o ACS poderá usar para monitorar o estado e performance do CPE. Também define um conjunto de mecanismos que permite que o CPE notifique o ACS de alterações no seu estado.

• Diagnóstico

Promove suporte a CPE de forma a tornar disponível informação com a qual o ACS poderá usar para diagnosticar e resolver problemas de conectividade ou serviços, bem como a habilidade de executar definidos testes de diagnóstico.

2.5.4 Arquitectura

O CPE WAN Management Protocol contém mecanismos exclusivos, no entanto o seu funcionamento baseia-se no uso de diversos protocolos padrão.

A tabela 1 mostra as camadas protocolares no qual o protocolo CWMP é constituído.

Camada Descrição

CPE/ACS Application

Aplicações CWMP usadas nas entidades CPE e ACS. A aplicação é localmente definida e não faz parte do CPE WAN Management Protocol

RPC Methods Métodos RPC especificados na norma do CPE WAN Management Protocol

SOAP Uma norma baseada em sintaxe XML utilizada para codificar RPC Methods. Especificamente SOAP 1.1

HTTP HTTP 1.1

SSL/TLS

Padrão do Internet Transport Layer Security Protocols. Especificamente, SSL 3.0 (Secure Socket Layer) ou TLS 1.0 (Transport Layer Security).

TCP/IP Padrão TCP/IP.

Tabela 1 – Camadas protocolares do protocolo CWMP.

O uso de SSL / TLS para transporte do CWMP é recomendado, embora o protocolo pode ser utilizado directamente sobre uma conexão TCP. Se SSL / TLS não for utilizada, alguns aspectos da segurança serão sacrificados. SSL / TLS fornece confidencialidade e integridade dos dados e permite autenticação em ambos os terminais.

(46)

20

Determinadas restrições sobre a utilização de SSL / TLS e TCP são definidas na norma do CWMP [5].

O funcionamento básico deste protocolo de configuração baseia-se em troca de mensagens SOAP transaccionadas entre CPE e ACS através de HTTP 1.1, onde o CPE comporta-se como cliente HTTP e ACS como servidor HTTP. No entanto o protocolo contém também um mecanismo de pedidos de conexão que permite ao ACS comportar-se como cliente e CPE por sua vez como comportar-servidor.

As operações e informações CWMP enviadas nas mensagens SOAP são emitidas em formato textual e codificadas na linguagem de transporte XML.

Um ACS é capaz de configurar e monitorar um CPE através de uma série de métodos RPC (Get, Set, Inform, Download, Upload, Reboot entre outros) disponibilizados pelo protocolo.

Este protocolo possibilita que programadores com base em ferramentas de desenvolvimento, construam de uma forma aberta aplicações de configuração seguras, dinâmicas e escaláveis.

2.5.5 Parâmetros

O CPE WAN Management Protocol define mecanismos através dos quais um ACS é capaz de ler, alterar ou mesmo apagar parâmetros internos dos equipamentos, atribuindo-lhe assim capacidades tais como configuração, monitorização e edição/adição fácil de novos serviços aos equipamentos. Parâmetros de diferentes tipos de CPE são definidos em normas separadas.

TR-106: Modelo de Dados para Equipamentos TR-069 [7].

TR-098: Modelo de Dados para Internet Gateway Device TR-069 [3]. TR-104: Modelo de Dados para VoIP CPE [8].

Cada parâmetro consiste num par nome/valor. O nome identifica um determinado parâmetro, e possui uma estrutura hierárquica semelhante para arquivos num directório, com cada nível separados por um "." (ponto). O valor de uma Parâmetro pode ser uma definição de diversos tipos de dados.

Os parâmetros podem ser definidos como de leitura ou leitura e escrita. Parâmetros só de leitura podem ser utilizados pelo ACS para determinar características específicas do funcionamento de determinado CPE, observar o estado actual do dele ou reunir dados estatísticos.

(47)

21

Parâmetros que possibilitem leitura e escrita, permitem que um ACS seja capaz de personalizar vários aspectos do funcionamento do CPE de forma a melhorar e corrigir o seu desempenho.

Apesar de certos parâmetros serem passíveis a alteração, contém informação confidencial (por exemplo passwords de determinado utilizador); nessas situações, caso seja pretendida a leitura desses valores, será retornado um valor vazio. O valor de alguns parâmetros de escrita podem ser modificáveis por outros meios, por exemplo via alguma auto-configuração existente na LAN. Daí a necessidade de precaução na implementação dos mecanismos de auto-configuração tanto do lado WAN como LAN.

2.5.6 Estabelecimento de Sessões

O CPE WAN Management Protocol tem definido mecanismos que permitem que o CPE se conecte ao ACS em diversas condições, garantindo assim que a comunicação CPE – ACS ocorra com alguma frequência mínima.

Conhecendo previamente o endereço do ACS, CPE poderá a qualquer momento estabelecer sessão com o ACS, essa sessão entre os dois terminais é iniciada após o CPE enviar ao ACS uma mensagem Inform num POST HTTP. Este Inform trata-se de um método RPC invocado pelo CPE e executado no ACS, e é utilizado para estabelecer as sessões de transacção entre CPE e ACS. A invocação deste método contém informação relevante acerca do equipamento e informa o ACS das razões pela qual ele pretende estabelecer sessão.

O CPE inicia comunicação com ACS em diversas situações tais como o momento em que é ligado à rede após a sua instalação inicial; sempre que seja ligado ou reiniciado ou mesmo quando ocorrem eventos que devam ser comunicados ao ACS (como por exemplo quando o endereço IP do CPE é alterado). Além destas condições é ainda definido no CPE um período de tempo no qual estabelece comunicação periódica com o ACS sobre uma base de tempo contínua. Caso a mensagem de Inform se trate de uma invocação periódica deste método, a mensagem SOAP deverá indicar na estrutura de eventos a ocorrência do evento PERIODIC.

Este protocolo contém, no entanto, um mecanismo que permite estabelecimento assíncrono de sessões. Cada CPE TR-069 possui um serviço HTTP suportando autenticação do tipo digest no qual o ACS poderá actuar como cliente HTTP, podendo assim informar o CPE de que se pretende comunicar com ele. Uma vez que o CPE receba um pedido de conexão enviado pelo ACS, irá responder nos próximos 30 segundos com a invocação do método Inform, indicando a ocorrência do evento de CONNECTION REQUEST.

(48)

22

exclusivamente através da informação de fabrico (serial number), de modo ao ACS conhecer o CPE com quem se esta a comunicar e possa responder de forma correcta.

2.5.7 Modelo de Comunicação

A comunicação estabelecida pelo protocolo TR-069 corresponde a uma troca bidireccional de pedidos e respostas RPC. Esta transacção é concluída quando ambos os terminais não tem mais mensagens para enviar. O CPE é responsável por estabelecer e terminar as sessões TR-069.

De modo a possibilitar uma troca sequencial de operações numa única sessão, o CPE deverá manter a conexão TCP durante toda sessão.

A figura 4 contém um exemplo de uma transacção entre CPE e ACS e demonstra o fluxo da comunicação e como a mesma ocorre em ambos os sentidos. Neste exemplo o ACS invoca no CPE os métodos GetParameterValues e SetParameterValues, e recebe do CPE as respostas das invocações desses métodos.

(49)

23

Figura 4 – Exemplo de uma transacção de mensagens numa sessão TR-069 [5].

• A sessão inicia com o estabelecimento da conexão TCP.

• Estabelecimento e activação de SSL e respectiva activação do mecanismo de segurança.

• Neste momento o CPE envia um POST HTTP invocando o método Inform para inicializar a transacção de operações com o ACS.

• O ACS responde com InformResponse, indicando ao CPE de que o Inform enviado foi recebido com sucesso e que o CPE foi autenticado com sucesso. • No seguimento da chegada do InformResponse o CPE entrega ao ACS um

POST HTTP vazio indicando que a sessão foi estabelecida com sucesso e que esta pronto a receber pedidos de invocação de métodos RPC.

• Em resposta ao POST vazio, o ACS responde invocando no CPE uma operação, sendo neste caso do exemplo apresentado na imagem, um GetParameterValues.

(50)

24

• O CPE responde num novo POST com o GetParameterValuesResponse retornando o resultado à invocação do referido método.

• O ACS opta por invocar nova operação, desta feita um SetParameterValues. • O CPE retorna o resultado dessa operação no SetParameterValuesResponse. • O ACS envia uma mensagem vazia ao equipamento informando que não

pretende invocar mais operações.

• O CPE termina sessão e de seguida irá iniciar uma conexão do tipo “standby” podendo vir a ser aproveitada novamente pelo ACS assim que pretenda.

2.5.8 Métodos RPC

O CPE WAN Management Protocol, utiliza um mecanismo bidireccional de chamada de procedimentos remotos (RPC) que permite que uma aplicação utilize serviços de uma outra aplicação a correr numa maquina remota. A aplicação que invoca a execução dos procedimentos envia mensagens contendo indicação do procedimento a executar e os dados necessários para a execução remota do programa. Uma vez executados, os respectivos resultados serão enviados à aplicação que fez a chamada dos procedimentos. O equipamento CPE deverá suportar uma série de métodos RPC, que poderão ser invocados pelo servidor de auto-configuração ACS, por outro lado o próprio CPE poderá invocar chamadas de procedimentos no ACS.

Na tabela 2 estão listados os métodos requeridos e opcionais existentes em ambos os lados, conforme é especificado na norma TR-069 [5].

(51)

25

Tabela 2 – Métodos TR-069 [5].

2.5.8.1 Métodos CPE

A invocação destes métodos será unicamente da responsabilidade do ACS. Contudo existe a excepção do método de Reboot, no qual, o próprio equipamento poderá em situações pontuais decidir iniciar a execução própria desse método.

Os seguintes métodos correspondem as principais operações que podem ser executadas em equipamentos TR-069.

 GetRPCMethods

Este método será utilizado para conhecer o conjunto de métodos suportados pelo CPE. A invocação deste método não terá qualquer tipo de argumentos e a resposta a sua invocação será uma lista dos nomes dos métodos que o CPE incorpora.

(52)

26  SetParameterValues

Este método deverá ser chamado pelo ACS de modo a modificar o valor de um ou mais parâmetros do CPE. A invocação deste método necessita ter como parâmetros de entrada uma lista de pares nome – valor, onde o nome corresponderá ao nome do parâmetro e o valor será o valor que se pretende atribuir ao parâmetro. A resposta a invocação deste método informa se todos os parâmetros foram validados e aplicados com sucesso ou todos os parâmetros foram validados mas alguns ainda não aplicados.

 GetParameterValues

Este método deverá ser chamado pelo ACS de modo a obter o valor de um ou mais parâmetros do CPE. A invocação deste método necessita ter como parâmetros de entrada uma lista com os nomes dos parâmetros que pretendemos conhecer. A resposta a sua invocação será uma lista de pares nome – valor contendo o nome e o respectivo valor do parâmetro.

 GetParameterNames

Este método deverá ser chamado pelo ACS de modo a obter os parâmetros acessíveis em determinado CPE. A invocação deste método necessita ter como parâmetros de entrada um apontador e um booleano. O apontador apontará para um nó da hierarquia de parâmetros, correspondendo assim ao directório completo de um parâmetro ou uma parte parcial desse directório. Caso o apontador seja vazio o apontador fica a apontar para o topo da hierarquia.

Caso o booleano seja falso, a resposta deverá conter todos os parâmetros cujo nome contenha o apontador passado. Caso verdadeiro a resposta deverá conter somente os nós filho do apontador passado.

A resposta além de conter a informação dos nomes dos parâmetros que se pretendem visualizar, contem também a indicação se o parâmetro é só de leitura ou de leitura e escrita.

 Reboot

Este método provoca que o CPE se reinicie. A invocação deste método é mais destinada a ser feita do lado do CPE do que ACS, visto ser rara a situação em que após uma alteração da configuração do CPE, seja necessário efectuar um Reboot ao equipamento, e quando isso acontece o próprio CPE deverá executar o seu próprio Reboot. Contudo opcionalmente poderá também ser implementado do lado do ACS.

O uso do método no entanto é bastante simples, unicamente é usado um parâmetro vazio na sua invocação, sendo a resposta também vazia.

(53)

27  Factory Reset

Este método repõe a configuração do equipamento no estado em que foi definido pelo fabricante.

 Download

Este método deverá ser usado pelo ACS para fazer com que o CPE inicie determinado download a partir de um URL designado pelo ACS. Para a invocação deste método são necessários bastantes mais parâmetros comparativamente aos outros métodos ate aqui falados, fazendo dele, um dos métodos mais complexos do CWMP. De entre todos esses parâmetros convêm salientar os mais importantes, tais como uma indicação do tipo de download que pretendemos que o CPE efectue (Firmware Upgrade Image, Web Content ou Vendor Configuration File). Uma indicação do URL onde se encontra localizado o ficheiro. Dados de utilizador e palavra-chave, necessários para autenticação no servidor onde se encontra o ficheiro (caso não seja necessária autenticação, estes dados deverão ser vazios). Deverá ser ainda especificado o nome e tamanho do ficheiro em bytes.

Em resposta à invocação deste método o CPE indica se o Download foi ou não completado e aplicado com sucesso, o momento em que iniciou o download e o momento em que terminou essa acção.

2.5.8.2 Métodos ACS

A invocação destes métodos será unicamente da responsabilidade dos CPE.

Os seguintes métodos correspondem as principais operações que podem ser invocadas num ACS.

 GetRPCMethods

Este método será utilizado para conhecer o conjunto de métodos suportados pelo ACS. A invocação deste método não terá qualquer tipo de argumentos e a resposta a sua invocação será uma lista dos nomes dos métodos que o ACS incorpora.

Imagem

Figura 1 – Ambiente UPnP [18].
Figura 2 – Ambiente de gestão SNMP [39].
Figura 3 – Ambiente de gestão utilizando o protocolo CWMP [5].
Tabela 1 – Camadas protocolares do protocolo CWMP.
+7

Referências

Documentos relacionados

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

Corograpliiu, Col de Estados de Geografia Humana e Regional; Instituto de A lta C ultura; Centro da Estudos Geográficos da Faculdade de Letras de Lisboa.. RODRIGUES,

Foi apresentada, pelo Ademar, a documentação encaminhada pelo APL ao INMETRO, o qual argumentar sobre a PORTARIA Nº 398, DE 31 DE JULHO DE 2012 E SEU REGULAMENTO TÉCNICO

Neste trabalho avaliamos as respostas de duas espécies de aranhas errantes do gênero Ctenus às pistas químicas de presas e predadores e ao tipo de solo (arenoso ou

O objetivo do curso foi oportunizar aos participantes, um contato direto com as plantas nativas do Cerrado para identificação de espécies com potencial

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Apesar dos esforços para reduzir os níveis de emissão de poluentes ao longo das últimas décadas na região da cidade de Cubatão, as concentrações dos poluentes

Box-plot dos valores de nitrogênio orgânico, íon amônio, nitrito e nitrato obtidos para os pontos P1(cinquenta metros a montante do ponto de descarga), P2 (descarga do