Você está na página 1de 16

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital

Fernando Luiz de Almeida1, Gldson Elias2, Guido Lemos2 Universidade Federal do Rio Grande do Norte (UFRN) Departamento de Informtica (DIMAp) 59072-970 Natal RN Brasil 2 Universidade Federal da Paraba (UFPB) Departamento de Informtica (DI) 58059-900 Joo Pessoa PB Brasil
1

{falmeida}@larc.usp.br, {gledson, guido}@di.ufpb.br

ABSTRACT
This paper proposes an infrastructure for configuring and managing a digital video distribution service, which has been tested over the backbone of the Brazilian National Research Network (RNP). The proposed infrastructure aims to make simpler, faster, more intuitive and consistent the configuration process, reducing the required effort to keep the digital video distribution service operational.

RESUMO
Este artigo apresenta uma infra-estrutura para configurao e gerenciamento do servio de distribuio de vdeo digital implantado no backbone da RNP. A infra-estrutura proposta tem por objetivo tornar mais simples, rpido, intuitivo e consistente o processo de configurao, reduzindo o esforo requerido para manter operacional o servio de distribuio de vdeo digital.

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP 37

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital

1. Introduo
Avanos nas tecnologias de comunicao e processamento de sinais tm motivado o surgimento de servios e aplicaes multimdia. Como conseqncia, atualmente, possvel conceber, desenvolver, implantar e operar servios de distribuio de vdeo digital na Internet, tanto na abordagem sob demanda quanto ao vivo. Neste contexto, a RNP (Rede Nacional de Ensino e Pesquisa) fomentou a concepo e implantao de um servio de distribuio de vdeo digital, denominado DynaVideo [3][22]. Explorando uma arquitetura hierrquica e distribuda de servidores de vdeo, o DynaVideo adota estratgias de roteamento de fluxos de vdeo com o objetivo de otimizar o trfego na rede, reduzindo a utilizao dos recursos de comunicao em redes de variada abragncia e capacidade, incluindo backbones, redes regionais e redes institucionais. Para descobrir as melhores rotas entre os servidores de vdeo e os respectivos clientes, o DynaVideo explora informaes topolgicas que identificam os ns da rede de distribuio, as conexes existentes entre esses ns, os servidores disponveis, como tambm a alocao de blocos de endereos s redes. No entanto, na prtica, a manipulao direta e manual das informaes topolgicas mostrou ser uma atividade extremamente lenta, tediosa e sujeita os erros, dificultando assim a ampla adoo do servio. Neste sentido, este artigo tem por objetivo propor e apresentar uma infra-estrutura para configurao e gerenciamento do servio DynaVideo, cujo objetivo facilitar e agilizar o processo de configurao das informaes topolgicas, e, principalmente, reduzir as possibilidades de ocorrncia de erro. Desta forma, a infra-estrutura proposta reduz o esforo requerido do administrador para manter operacional a rede de distribuio de vdeo digital. A infra-estrutura proposta explora o conceito de documento de configurao, que usado para manter as informaes topolgicas da rede. O documento de configurao especificado usando uma linguagem baseada em XML, desenvolvida particularmente para representar de forma precisa as informaes topolgicas. Embora o documento de configurao adote uma linguagem bem estruturada, a abrangncia e o tamanho da rede alvo do servio DynaVideo pode tornar a manipulao do documento de configurao XML uma atividade no trivial. Desta forma, para tornar mais simples, intuitivo e consistente o 38 REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

processo de configurao, a infra-estrutura proposta tambm contempla a adoo de uma ferramenta de configurao que esconde do administrador os detalhes da linguagem de especificao do documento de configurao. O restante do artigo est organizado da seguinte forma. A Seo 2 discute alguns trabalhos relacionados. A Seo 3 introduz a arquitetura do servio DynaVideo. A Seo 4 prope a infra-estrutura de configurao e gerenciamento. Em seguida, a Seo 5 detalha a linguagem de especificao do documento de configurao e a Seo 6 introduz a aplicao de configurao. Por fim, a Seo 7 apresenta dois experimentos concretos e a Seo 8 introduz algumas consideraes finais.

2. Trabalhos Relacionados
Atualmente, existem vrias propostas de servios de distribuio de vdeo. Esta sesso descreve brevemente algumas dessas propostas. O ALMADEMVoD [27] dispe de servidores True Video-on-Demand (T-VoD) que adotam polticas de armazenamento de vdeo em disco, facilitando a recuperao dos mesmos. A arquitetura centralizada no permite o uso distribudo de recursos da rede e no define mecanismos para configurar e controlar as rotas adotadas pelos fluxos de vdeo. Adota protocolos de controle prprios e usa aplicao especfica para exibio dos vdeos, tornando-se uma soluo pouco flexvel. O GLOVE (Global Vdeo Environment) [18] um sistema de vdeo sob demanda cujos clientes definem uma memria temporria (cache), que prov contedo para outros clientes. Para tal, os clientes definem um esquema de cooperativa, denominado Cooperative Video Cache (CVC), onde os blocos de vdeo so armazenados temporariamente. Novas requisies so atendidas diretamente pelos clientes, aliviando assim a carga dos servidores. Este esquema torna a arquitetura escalvel, pois no limita o nmero de clientes que podem acessar o servio. No entanto, no dispe de mecanismos para configurar e controlar as rotas seguidas pelos fluxos de vdeo. O Requestcasting [17] um sistema de vdeo sob demanda que adota um switching board para separar redes de requisio e broadcast. O switching board atua como interface entre o servidor e os clientes. O servidor transmite vdeos contnuos em broadcast para o switching board, que, por sua vez, retransmite em unicast para o cliente apenas o vdeo solicitado. Para reduzir o tempo de espera dos clientes na comutao entre as duas bandas passantes PCS EPUSP

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital foram implementados protocolos responsveis em descrever a organizao dos servidores de vdeos, controlar o acesso dos clientes, bem como o uso dos canais de transmisso. O Distributed Vod Systems [11] define um servio de vdeo sob demanda distribudo e hierrquico, que utiliza tcnicas de segmentao e multicasting para melhorar a capacidade. Utiliza a rede de distribuio das TVs a cabo (CATV) para transmitir os fluxos de vdeo aos clientes. No que tange a configurao do servio, apenas foi mencionado o desenvolvimento de tcnicas que controlam o nmero de requisies para um determinado vdeo. O DCSYS [16] define uma arquitetura distribuda destinada a prover um servio de vdeo sob demanda atravs da internet. Apresenta um Cache Agent (CA), responsvel pela busca dos servidores que possuem o vdeo requisitado, bem como pela distribuio do uso dos recursos de rede para melhorar a qualidade do servio. Para que clientes de uma rede possam acessar o servio, um CA deve ser instalado nessa rede. O Bufsharing [24] adota uma tcnica de compartilhamento de buffer que tem como foco principal fazer um balanceamento no uso dos discos dos servidores, bem como maximizar o desempenho dos mesmos. Tambm apresenta um esquema denominado Controlled Buffer Sharing (CBS), responsvel por controlar o fluxo de dados (uso do buffer pelos usurios) e reduzir os requisitos de disco dos frames compartilhados. No dispe de tcnicas que permitem a configurao das rotas adotadas pelos fluxos de vdeo. Um ponto crtico para transmisso de vdeo digital em arquiteturas distribudas a utilizao de estratgias para selecionar as rotas seguidas pelos fluxos de vdeo. Nesse sentido, nenhuma das propostas apresentadas [27][18][11][17][16][24] contempla satisfatoriamente esse aspecto, pois no utilizam mecanismos de configurao e controle das rotas adotadas. Diferentemente, a proposta apresentada neste artigo discute mecanismos que permitem a configurao e controle das rotas adotadas no servio DynaVideo. TVU (TV Universitria da Universidade Federal do Rio Grande do Norte) aos usurios conectados a rede Natalnet [21]. O servio Dynavdeo permite a transmisso de imagens captadas ao vivo ou de acervos gravados em sistemas analgicos ou digitais atravs da Internet. Seu funcionamento realizado atravs de uma placa inserida na fonte de captao que decodifica a imagem em MPEG2, o mesmo utilizado nas transmisses digitais em TVs a cabo. O software capta a imagem decodificada, transmite a um servidor para a distribuio e a recodifica para a linguagem digital ou analgica, conforme o receptor. O servio foi designado para distribuir vdeo independente do seu formato, bem como interagir com diferentes tipos de clientes. Sua principal caracterstica a capacidade de configurao dinmica para uma demanda especfica [13][14]. 3.1. Arquitetura do Servio DynaVideo A arquitetura proposta para o servio de distribuio de vdeo baseia-se em uma estrutura hierrquica e distribuda [3][22], cujo principal objetivo otimizar o trfego na rede, reduzindo assim a utilizao dos recursos de comunicao em backbones, redes regionais e redes institucionais. Como ilustrado na Figura 1, a arquitetura proposta composta por trs planos (publicao, coordenao e distribuio), alm das aplicaes de alto nvel (registro, visualizao e gerenciamento).

Figura 1. Arquitetura de Alto Nvel

3. DynaVideo
O servio Dynavdeo (Dynamic Video Distribution Service ) um sistema de vdeo sob demanda (VoD Vdeo on Demand) que foi desenvolvido no contexto do projeto Natalnet, cujo principal objetivo foi realizar testes em aplicaes multimdia, vdeo sob demanda, ensino a distancia, videoconferncia, como tambm disponibilizar o acervo de vdeo da

O plano de publicao utilizado pelos provedores de contedo para publicar e armazenar rplicas dos seus respectivos vdeos. Caso o vdeo seja ao vivo, o agendamento da transmisso deve ser previamente realizado. Para tal, os provedores de contedo utilizam uma aplicao de registro. No processo de registro, cada vdeo descrito por um conjunto de metadados, que podem ser posteriormente explorados por uma aplicao de visualizao que incorpore facilidades de busca no plano de publicao. Alm disso, o plano de publicao tambm responsvel por indicar aplicao de visualizao quais so as entidades do plano de distribuio que armazenam rplicas permanentes do vdeo requisitado pelo usurio. PCS EPUSP 39

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital O plano de coordenao responsvel por indicar aplicao de visualizao quais entidades do plano de distribuio representam a melhor alternativa para recuperao de um determinado vdeo para um dado cliente. Para tal, as entidades do plano de coordenao coletam informaes operacionais das diversas entidades do plano de distribuio, selecionando aquelas que esto correntemente operacionais e mais prximas do usurio. A adoo do conceito de proximidade dos usurios permite uma melhor utilizao dos recursos da rede, uma vez que otimiza o trfego gerado. O plano de distribuio responsvel pela efetiva distribuio dos vdeos requisitados pelos usurios, respeitando as diretrizes sinalizadas pelo plano de coordenao. Neste processo, uma rplica do vdeo requisitado pelo usurio recuperada de uma ou vrias entidades do plano de distribuio e transportada para a estao do usurio. Embora a arquitetura de alto nvel seja estruturada na forma de planos independentes, internamente, os diversos planos podem trocar informaes e compartilhar recursos. Por exemplo, os servidores que armazenam rplicas dos vdeos so utilizados pelos planos de publicao e distribuio [16]. O repositrio de configurao armazena as informaes de configurao, que so organizadas em dois documentos: configurao e validao. O documento de configurao descreve informaes topolgicas da rede, identificando os ns que compem a rede de distribuio, as redes alocadas em cada n e as conexes existentes entre os ns. Alm disso, o documento de configurao tambm identifica a localizao dos servidores de vdeo na rede e os servios oferecidos por esses servidores. O documento de configurao especificado usando uma linguagem baseada em XML, desenvolvida especificamente para representar as informaes topolgicas. A linguagem proposta apresentada na Seo 5. Por outro lado, o documento de validao define a estrutura da informao que pode ser includa no documento de configurao. O documento de validao especificado em XML Schema e define um vocabulrio que, atravs de regras e restries, sinaliza de forma no ambgua a sintaxe das informaes contidas no documento de configurao. O configurador uma aplicao que permite ao administrador do servio de distribuio de vdeo digital realizar a manipulao das informaes de configurao, que so armazenadas e recuperadas do repositrio de configurao. Para isso, o configurador solicita, atravs de uma conexo TCP ( Transmission Control Protocol ), uma cpia do documento de configurao ao coordenador. Aps recuperar uma cpia do documento de configurao, usando o configurador, o administrador manipula localmente as informaes de configurao. O configurador torna a manipulao das informaes de configurao mais intuitiva, familiar e de fcil uso pelos administradores do sistema. O coordenador tem como principal objetivo otimizar o uso dos recursos da rede. Para tal, explora o documento de configurao para identificar o servidor de vdeo mais prximo do cliente que fez a requisio ao servio. Alm disso, identifica a melhor rota entre o servidor fonte (que possui uma cpia permanente do vdeo) e os servidores intermedirios (que possuem cpias temporrias do vdeo). As informaes contidas no documento de configurao so utilizadas pelo coordenador na construo de um grafo de conectividade, representando os servidores disponveis na rede de distribuio. Aps construir o grafo de conectividade, o coordenador utiliza o algoritmo de menor caminho, proposto por Dijkstra [4], para identificar as melhores rotas entre clientes e servidores.
Figura 2. Infra-Estrutura Proposta

4. Infra-Estrutura Proposta
A infra-estrutura de configurao e gerenciamento proposta neste artigo representa uma alternativa de soluo para o plano de coordenao do DynaVideo. Como ilustrado na Figura 2, a infra-estrutura proposta composta por trs entidades bsicas: configurador, coordenador e repositrio de configurao.

O algoritmo de Dijkstra calcula o menor custo entre PCS EPUSP

40

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital vrtices de um grafo. Inicialmente, escolhido um vrtice como raiz da busca, para posteriormente calcular o menor custo deste vrtice aos demais vrtices do grafo. Este algoritmo simples e rpido, pois parte de uma estimativa inicial de custo e vai atualizando-a sucessivamente. Quando todos os vrtices so percorridos, o valor associado a cada vrtice representa o menor custo entre aquele vrtice e o vrtice raiz [4]. No documento de configurao, as conexes entre ns possuem um atributo que define a taxa de transmisso da conexo. Esse atributo utilizado como peso das arestas do grafo de conectividade. Como o algoritmo de Dijkstra trabalha com a noo de custo, podemos concluir que, quanto maior a taxa de transmisso, menor o custo da respectiva aresta. Desta forma, o custo de uma aresta definido pelo inverso de sua taxa de transmisso. servidor que ir atender a requisio de um cliente, bem como determinar a melhor rota entre o cliente que requisitou o vdeo e o servidor fonte, que contm o vdeo requisitado. De acordo com a arquitetura do servio de distribuio de vdeo, o plano de distribuio o responsvel pela distribuio dos vdeos requisitados pelos clientes, respeitando as diretrizes sinalizadas pelo plano de coordenao. Nesse processo, uma rplica do vdeo requisitado pelo cliente recuperada de uma ou vrias entidades do plano de distribuio e transportada para a estao do cliente. A arquitetura do servio de distribuio de vdeo atualmente suporta dois tipos de servios: sob demanda D-VoD (Distributed Video on Demand) e ao vivo D-Live (Distributed Live). Para que o gerente possa determinar os melhores recursos disponveis ao atendimento de uma requisio, necessrio identificar a localizao (a rede a qual o cliente pertence) do cliente requisitante. No documento de configurao, cada rede cadastrada possui um atributo que descreve os seus blocos de endereos, que so identificados pelo endereo base do bloco e sua respectiva mscara. Esse atributo utilizado para determinar a rede a qual o cliente pertence. Para identificar a localizao de um cliente, o gerente realiza a operao lgica and entre endereo IP do cliente e a mscara de rede dos blocos contidos no documento de configurao. O resultado de cada operao lgica comparado com os blocos de endereos descritos no documento de configurao. Se o resultado da operao igual ao endereo base do bloco, ento o cliente pertence respectiva rede. A Figura 4 ilustra o procedimento para identificar a rede a qual o cliente pertence.

4.1. Coordenador
O coordenador [25] composto por dois componentes bsicos: gerente e monitor. O gerente responsvel por determinar qual servidor ir atender a requisio do cliente, atravs do clculo da melhor rota entre o cliente e o servidor. O monitor responsvel por verificar os estados dos servidores (ativo-inativos), permitindo que o gerente mantenha apenas rotas vlidas. A Figura 3 ilustra a arquitetura bsica do coordenador.

Figura 3. Arquitetura do Coordenador

Quando o servio iniciado, o coordenador busca no repositrio o documento de configurao e constri o grafo de conectividade com base nas informaes contidas nesse documento. Com o grafo totalmente construdo, o algoritmo de Dijkstra executado para calcular a melhor rota entre os clientes e servidores. O grafo alterado sempre que existe a incluso/ excluso de um servidor na rede de distribuio ou ento aps a mudana de estado (ativo/inativo) dos servidores existentes. Aps qualquer modificao no grafo, o algoritmo de Dijkstra novamente executado para calcular a melhor rota entre os clientes e servidores. 4.1.1. Gerente. responsvel por escolher o
Figura 4. Localizao do Cliente

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP 41

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital Aps identificar a localizao do cliente, o gerente identifica a rota a ser adotada entre o servidor fonte (que mantm uma cpia permanente do vdeo requisitado) e o cliente, selecionando possveis servidores intermedirios (que podem manter cpias temporrias de blocos do vdeo requisitado) ao longo da rota. Por outro lado, o cliente requisita o vdeo desejado ao primeiro servidor intermedirio da rota selecionada. Alternativamente, o documento de configurao mantm a noo de servidor default, que usado para atender clientes que no pertenam a redes (blocos de endereos) previamente cadastradas. Neste caso, o gerente identifica a rota entre o servidor fonte e o servidor default. Por outro lado, o cliente requisita o vdeo desejado diretamente ao servidor default, que o primeiro servidor que compe a rota.
Figura 5. Representao do Elemento NetDescr

Nesse trabalho adotamos uma metodologia baseada em elementos estruturais UML para representar todos os elementos que definem o documento de configurao, bem como o documento de validao. A Figura 5 ilustra um diagrama descrevendo o elemento principal <netdescr> juntamente com os elementos filhos <Netnodes>, <Connections>, <Blocks>,<Servers>.

4.1.2. Monitor. responsvel por monitorar os servidores da rede, verificando o estado operacional (ativo/inativo) dos mesmos. Um servidor dito ativo quando est operacional. Se um servidor torna-se inativo, o monitor sinaliza a falha ao gerente, que, por sua vez, atualiza o estado deste servidor no documento de configurao e consequentemente o retira do grafo de conectividade. Ao retornar para o estado ativo, o monitor sinaliza o evento ao gerente, que, por sua vez, atualiza o estado deste servidor no documento de configurao e o inclui novamente no grafo de conectividade. Periodicamente, os servidores enviam uma mensagem de sinalizao para o monitor. Esta mensagem identifica o servidor e informa a freqncia de envio de sinalizaes. Aps receber cada sinalizao, o monitor atualiza o estado do respectivo servidor no documento de configurao.

Toda informao contida no documento de configurao deve estar de acordo com as regras impostas pelo documento de validao, necessrias para garantir a consistncia dos dados. O documento de validao especifica a estrutura e os tipos de informaes que estaro contidos no documento de configurao. 5.1. Netnodes O elemento <netnodes> descreve os ns existentes na rede de distribuio de vdeo. Este elemento possui seis atributos: name, local, latitude, longitude, default e hasServer. O atributo name define o nome do n na rede de distribuio. O atributo local descreve a localizao fsica do n na rede de distribuio. Os atributos latitude e longitude definem as coordenadas de latitude e a longitude (em graus) do respectivo n, representando o posicionamento do mesmo no configurador. Os atributos hasServer e default indicam se o n possui servidor de vdeo e se o mesmo o servidor default no servio, respectivamente. Como indicando anteriormente, um servidor default usado para atender clientes cujos endereos no pertencem aos blocos de endereos cadastrados no documento de configurao. A Figura 6 ilustra um exemplo de representao do elemento <netnodes>.

5. Linguagem de Configurao
As informaes topolgicas da rede de distribuio de vdeo digital so especificadas em um documento de configurao que a descreve atravs de elementos e atributos. Esse documento caracterizado por informaes essenciais para o sucesso da estratgia utilizada para distribuio de vdeo. Essas informaes so: ns da rede, conexes existentes entre ns, designao de sub-redes (blocos de endereos) aos ns da rede, servidores e servios disponveis. Com base nessas informaes o coordenador constri um grafo de conectividade entre servidores disponveis no sistema. O documento de configurao reflete as caractersticas da rede de distribuio da RNP e possui toda estrutura definida em um documento de validao, especificado em XML Schema. 42 REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

<netnodes> node name=Parana local=Curitiba latitude =25.25.40.S longitude=49.16.23.W hasServer=no default=no/> </netnodes> Figura 6. Elemento Netnodes

PCS

EPUSP

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital 5.2. Blocks O elemento < blocks > descreve os blocos de endereos alocados aos ns da rede de distribuio. Cada n descrito pelo elemento <range>, cujo atributo name identifica o nome do n. Por sua vez, os blocos de endereos de um determinado n so identificados por diversos elementos <block>, cujos atributos address e mask identificam o endereo base do bloco e a respectiva mscara. Com base nestes atributos, o coordenador descobre a localizao do cliente. Para uma melhor compreenso de como o elemento <blocks> est descrito, a Figura 7 ilustra um pequeno exemplo que descreve o n Paran, juntamente com os endereos base dos seus blocos e suas respectivas mscaras de rede. 5.4. Servers O elemento <servers> representa os servidores disponveis no servio de distribuio de vdeo. composto pelo elemento <pool> que descreve o nome do n que possui servidor instalado, bem como o estado atual do mesmo. Isso descrito atravs dos atributos name e status, respectivamente. O elemento <pool> tambm contm um elemento <server>, cujo atributo ip identifica o endereo IP do servidor. O elemento <service> juntamente com seus atributos name e port define o tipo de servio que um servidor disponibiliza aos clientes ao vivo (D-live) ou sob demanda (D VoD) bem como a porta que o servidor recebe requisies. A Figura 9 ilustra um exemplo de um servidor representado no documento de configurao.
<servers> <poll name=Rio de Janeiro status=online> <server ip=200.159.254.151> <service name=dvod port=9998 /> <service name=dlive port=6500 /> </server> </poll> <servers>

<blocks> <range name=Parana> <block address=200.129.173.0 mask=24 /> <block address=220.132.5.0 mask=20 /> </range> </blocks> Figura 7. Elemento Blocks

5.3. Connections O elemento <connections> representa as conexes fsicas existentes entre os ns da rede de distribuio. O elemento <source> identifica as conexes originadas a partir de um determinado n, especificado pelo atributo name. O elemento <target> descreve o n de destino da conexo, identificado pelo atributo name. Os atributos rate e unit descrevem a taxa de transmisso e sua respectiva unidade de medida (bps, Kbps, Mbps e Gbps), respectivamente. Para uma melhor compreenso de como o elemento <source> est descrito no documento de configurao, a Figura 8 ilustra o n Parana, bem como suas respectivas conexes como os ns: Sao Paulo (155 Mbps), Rio de Janeiro (155 Mbps) e Santa Catarina (80 Mbps).

Figura 9. Elemento Servers

6. Configurador
Essa sesso apresenta o prottipo da aplicao desenvolvida para configurao e gerenciamento das informaes contidas no documento de configurao do servio de distribuio de vdeo. O configurador foi desenvolvido usando a linguagem Java, favorecendo a sua interoperabilidade e portabilidade com diversas plataformas. O configurador possui uma interface principal que permite a configurao e o gerenciamento das informaes contidas no documento de configurao. A interface principal pode ser visualizada na Figura 10.

<connections> <source name=Parana> <target name=Sao Paulo rate=155 unit=Mbps /> <target name=Rio de Janeiro rate=155 unit=Mbps /> <target name=Santa Catarina rate=80 unit=Mbps /> </source> </connections> Figura 8. Elemento Connections

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP 43

Figura 10. Configurador

O configurador ilustra os ns, conexes e servidores (ativos e inativos) que compem a rede de distribuio. A partir desta interface principal possvel ativar outras interfaces que permitem a manipulao das informaes contidas no documento de configurao atravs de operaes de insero, remoo, alterao e consulta, proporcionando um conjunto consistente de componentes de interface com o usurio. Para manipular as informaes contidas no documento de configurao, o administrador pode usar as funcionalidades providas na barra de menus ou apenas clicar o boto direito do mouse sobre o n, servidor ou conexo a ser manipulado. Utilizando essas funcionalidades, o administrador pode incluir, remover, modificar ou consultar informaes do documento de configurao. A seguir sero descritas algumas funcionalidades providas pelo configurador. 6.1. Gerenciamento de Ns e Servidores O configurador prov mecanismos que permitem ao administrador do servio de distribuio de vdeo obter informaes sobre os ns e identificar o estado operacional dos servidores existentes na rede de distribuio. O estado ativo/inativo dos servidores j

explicitamente representado na interface principal adotando diferentes cores. Entretanto, como complemento, o configurador tambm oferece uma alternativa para a obteno manual do estado operacional de cada servidor. As funcionalidades de gerenciamento de ns e servidores so ativadas clicando o boto direito do mouse sobre a representao do n desejado. A Figura 11 ilustra as informaes bsicas referentes a um n disponvel no documento de configurao, como nome, localizao e suas respectivas coordenadas geogrficas.

Figura 11. Informao de um N

44

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital 6.2. Configurao de Ns Os ns so referncias para qualquer manipulao de informao no documento de configurao. Para inserir novas redes (blocos de endereos), servidores ou conexes no documento de configurao, um n existente deve ser selecionado para posteriormente ser editado. Para inserir um novo n no documento de configurao, o administrador deve ativar a interface de insero de um n. Para tal, deve clicar o boto direito do mouse na posio que deseja inserir o n e selecionar a opo Insert/Netnode. A Figura 12 ilustra o procedimento que ativa a interface de insero de n. Aps selecionar a opo de insero de um n, a interface ilustrada na Figura 13 apresentada ao administrador. O campo Name identifica o nome do n, que geralmente representa um ponto de presena (POP) ou instituio que faz uso do servio de distribuio de vdeo. O campo Local identifica a localizao fsica do n, geralmente indicada pela cidade onde o mesmo se encontra. O valor aproximado da localizao do n (latitude/longitude) calculado automaticamente pela aplicao a partir das coordenadas do ponto selecionado. Vale ressaltar que o configurador valida todos os campos de entrada usando o documento de validao, obtido do repositrio de configurao. Utilizando procedimentos anlogos, o administrador tambm dispe de operaes de remoo, alterao e consulta de ns.

Figura 12. Insero de um N

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP 45

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital mesmo est definido como servidor default no sistema de distribuio de vdeo. Um n pode ter vrios servidores com diferentes servios. Um servio pode ser adicionado ao servidor atravs da opo Service/Add, que disponibiliza as opes dvod e dlive, representando os servios de vdeo sob demanda e ao vivo, respectivamente. Utilizando procedimentos anlogos, o administrador tambm dispe de operaes de remoo, alterao
Figura 13. Interface de Insero de um N

6.3. Configurao de Servidores e Servios Servidores e seus respectivos servios somente podem ser associados a ns previamente definidos no documento de configurao. Para inserir um novo servidor em um determinado n, o administrador deve clicar o boto direito sobre o n e selecionar a opo Server/Add, ativando a interface de adio de servidores e servios, ilustrada na Figura 14.
Figura 15. Descrio de um Servidor

6.3.1 Adio de um servio no documento de configurao Para associar um servio a um determinado servidor o administrador deve clicar o boto direito sobre o n desejado, selecionar um servidor disponvel nesse n e, atravs da opo Services/<Lista de servidores>/Add, adicionar um novo servio no servidor anteriormente selecionado. A Figura 16 ilustra os procedimentos necessrios para insero de um novo servio no documento de configurao.

Figura 14. Insero de um Servidor

Como pode ser observado, o procedimento de insero de servidor tambm permite definir seus servios associados. A Figura 15 ilustra a interface que permite descrever o servidor que ser adicionado. O campo name corresponde ao nome do n que ter um servidor, IP Address representa o endereo IP deste servidor, enquanto que os campos status e default correspondem ao estado operacional do servidor e se o

Figura 16. Procedimento de insero de um servio no documento de configurao

46

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP

De acordo com o exemplo da Figura 16, o n Distrito Federal dispe de um servidor associado a ele com endereo IP 200.19.119.112. Dessa forma, desejase ento adicionar um novo servio a esse servidor. A interface que permite adio de um novo servio em um servidor previamente selecionado pode ser visualizada atravs da Figura 17.

Figura 18. Insero de um Servidor

6.5 Mover Blocos de endereos IP para outro n Para mover blocos de endereos IP para outros ns, o administrador dispe de duas opes, atravs da interface ilustrada pela Figura 19, ou ento clicando com o boto direito do mouse sobre o n que contm o bloco de endereo que se deseja mov-lo. A opo Blocks/Move permite e visualizao da lista de blocos alocados ao n que o administrador deseja mov-los. Aps selecionar o bloco de endereo que ser movido, a lista de ns disponveis no documento de configurao para receber os blocos disponibilizada ao administrador. A Figura 19 ilustra os procedimentos necessrios para mover um bloco de endereo IP para outro n disponvel no documento de configurao.

Figura 17. Insero de um servio no documento de configurao

No exemplo da Figura 17, o administrador est inserido um servio ao vivo (dlive), rodando na porta 6500, no servidor 200.150.119.60, associado ao n Distrito Federal. 6.4 Funcionalidade de zoom sobre o cenrio utilizado pelo configurador A funcionalidade de zoom permite ao administrador aumentar a imagem utilizada pelo configurador em uma quantidade indefinida de vezes. Essa funcionalidade de grande utilidade para o administrador tanto para um melhor posicionamento dos pontos (preciso) na tela, como tambm para uma melhor visualizao de uma quantidade relativamente grande de pontos em uma mesma regio. Vale ressaltar que cada clique sobre o boto de aumento de zoom, representa um aumento de 10% em relao ao tamanho atual. O mesmo vale quando o administrador clicar no boto de reduo do zoom, a cada clique, o cenrio ser diminudo de 10%. A Figura 18 ilustra a funcionalidade de zoom, a imagem aumentada e o reposicionamento dos ns.

Figura 19. Movendo um bloco de endereo IP para outro n

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP 47

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital No exemplo ilustrado pela Figura 19, o administrador do sistema est movendo o bloco de endereo 200.136.30.0, com mscara de rede 27, alocado ao n So Paulo, n de origem do bloco, para o n Paran, selecionado para receber como n de destino do bloco de endereo acima mencionado. 6.6 Consultar informaes refinadas aos ns existentes no Documento de Configurao Alm das informaes visuais que a aplicao disponibiliza ao administrador, este pode a ativar a interface apenas para consulta de informaes dos ns existentes no documento de configurao. Essa interface de consulta trs todas as informaes referentes aos ns, blocos de endereos, conexes existentes, servidores e servios associados aos mesmos. Para ativ-la, o administrador deve utilizar a funcionalidade de clique duplo do mouse sobre o n que se deseja consultar. Esta funcionalidade pode ser melhor visualizada na Figura 20, a qual ilustra os ns que possuem conexo com o n Rio de Janeiro. O campo Source descreve o n que origina a conexo (Rio de Janeiro), no campo Target descrito a lista de ns que possuem conexo com o n Rio de Janeiro, enquanto que os campos Rate e Unit descrevem a velocidade da conexo (622) e a unidade da mesma (Mbps), respectivamente. De acordo com o n selecionado no campo Target, os campos Rate e Unit sero automaticamente atualizados com as respectivas informaes da conexo em questo.

7. Estudos de Caso
Essa seo descreve estudos de caso onde foram realizados experimentos reais de configurao da rede de distribuio utilizando a infra-estrutura proposta. 7.1 SBRC/WRNP 2004 Esse estudo de caso descreve um experimento nacional para transmisso ao vivo do Workshop da RNP, realizado durante o SBRC 2004 em Gramado (RS). Neste experimento, o sinal de vdeo foi gerado por uma cmera SDTV (Standard Definition TV) conectada a um codificador. O servidor SBRC atua como a fonte do fluxo de vdeo para os demais servidores intermedirios disponveis na rede de distribuio. A Figura 21 ilustra a arquitetura de interconexo utilizada para essa transmisso.

Figura 21. Experimento SBRC/WRNP 2004

Figura 20. Consulta as conexes existentes com o n Rio de Janeiro

A Figura 22 ilustra os trechos XML do documento de configurao, que foi manipulado pelo configurador durante o experimento. Para realizar a configurao do experimento, inicialmente, foi necessrio incluir no documento de configurao os ns SBRC e Sao Paulo, e, em seguida, criar uma conexo entre os mesmos. Para representar os clientes locais, o bloco 192.168.0.0/24 foi associado ao n SBRC. Por fim, o servidor 200.231.123.1 e o servio dlive na porta 9999 foram configurados para o n SBRC.

48

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP

<netDescr> <netnodes> <node name=SBRC local=Rio Grande do Sul latitude=30.01.59.S longitude=51.13.48.W default=no hasServer=yes /> <node name=Sao Paulo local=So Paulo latitude=23.32.51.S longitude=46.38.10.W default=no hasServer=yes /> </netnodes> <connections> <source name=SBRC> <target name=So Paulo rate=155 unit=Mbps /> </source> </connections> <blocks> <range name=SBRC> <block address=192.168.0.0 mask=24 /> </range> </blocks> <servers> <poll name=SBRC status=online> <server ip=200.231.123.1> <service name=dlive port=9999 /> </server> </poll> </servers> </netDescr >

O servidor SuraVide atua como a fonte do fluxo de vdeo para os demais servidores intermedirios disponveis na rede de distribuio. A Figura 23 ilustra a arquitetura de interconexo utilizada para essa transmisso. A Figura 24 ilustra os trechos XML do documento de configurao, que foi manipulado pelo configurador durante o experimento. Para realizar a configurao do experimento, inicialmente, foi necessrio incluir no documento de configurao os ns SuraVide e Rio de Janeiro, e, em seguida, criar uma conexo entre os mesmos. Para representar os clientes locais, o bloco 220.230.240.0/24 foi associado ao n SuraVide. Por fim, o servidor 200.231.123.1 e o servio dlive na porta 9999 foram configurados para o n SuraVide.

Neste cenrio, o servidor associado ao n SBRC foi definido como produtor do fluxo de vdeo (servidor fonte). Este servidor recebe requisies para transmisses ao vivo (d-live). Por outro lado, o servidor associado ao n Sao Paulo atua como intermedirio para os demais servidores instalados na rede de distribuio. Os clientes locais recebem o fluxo de vdeo gerado diretamente pelo servidor fonte. Por outro lado, os demais clientes recebem fluxos atravs dos servidores intermedirios mais prximos deles.

7.2 SURA/ViDe 2005


Esse estudo de caso descreve um experimento internacional para transmisso ao vivo de vdeo de alta definio (MPEG-2) entre Brasil e Estados Unidos da conferncia SURA/ViDe, realizada em Atlanta (EUA) em maro de 2005. Neste experimento, o sinal de vdeo foi gerado por uma cmera HDTV (High Definition TV) conectada a um codificador MPEG-2. A sada do codificador alimenta o TS Processor Tandberg, que, por sua vez, encapsula o fluxo de vdeo em pacotes IP e os envia para o servidor J.D-Live atravs do protocolo UDP.

Figura 23. Experimento SURA/ViDe 2005

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP 49

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital rede e reduzindo atrasos na distribuio. A infraestrutura proposta contempla a definio, descrio e identificao das informaes como: ns da rede, blocos de endereos, conexes existentes, taxas de transmisso, localizao fsica, bem como servidores e servios disponveis. Alm disso, a infra-estrutura proposta tambm contempla uma aplicao grfica para configurao e gerenciamento dessas informaes relativas rede de distribuio de vdeo digital. O servio de distribuio de vdeo digital j se encontra em funcionamento na rede de distribuio da RNP, atendendo a diversas entidades espalhadas pelo Brasil e pelo mundo.

<netDescr> <netnodes> <node name=SuraVide local=Atlanta latitude=33.76.N longitude=84.4.W default=no hasServer=yes /> <node name=Rio de Janeiro local=Rio de Janeiro latitude=22.54.10.S longitude=43.12.27.W default=yes hasServer=yes /> </netnodes> <connections> <source name=SuraVide> <target name=Rio de Janeiro rate=155 unit=Mbps /> </source> </connections> <blocks> <range name=SuraVide> <block address=220.230.240.0 mask=24 /> </range> </blocks> <servers> <poll name=SuraVide status=online> <server ip=200.231.123.1> <service name=dlive port=9999 /> </server> </poll> </servers> </netDescr>

9. Referncias Bibliogrficas
[1] Altova XML SPY 2005. XML Editor. <http://www. altova.com/products_ide.html>. ltimo acesso em Julho 2005. [2] Apache. Xerces2 Java Parser Readme. <http:// xml.apache.org/xerces2-j/>. ltimo acesso em Agosto 2004. [3] Batista, C. E. C. F.; Salmito, T. L.; Leite, L. E. C.; Lemos, G. and Elias, G. Big Videos on Small Networks: A Hierarchical and Distributed Architecture for a Video on Demand Distribution Service. Proceedings of the 1ST IEEE International Conference on Multimedia Services Access Networks (MSAN2005). June 2005. [4] Boaventura, N. P.; Grafos: Teoria, Modelos, Algoritmos. Edgar Blcher. 1996. [5] Boshart, M. A; Kosa, M. J. Growing a GUI from XML Tree. Proceedings of the 8TH Annual Conference on Innovation and Technology in Computer Science Edutacion (ITiCSE03). June 30 - July 2, 2003. [6] Campbell, C; Eisenberg, A. XML SCHEMA, ACM SIGMOD Record, Volume 32. Issue 2. Pages 96-101. June 2003. [7] GTVD Grupo de Trabalho de Vdeo Digital. Rede Nacional de Ensino e Pesquisa (RNP). <http:// girafa.natalnet.br/gtvd/index.jsp>. ltimo acesso em Junho 2005. [8] W3CSchools. XML Schema Tutorial. <http://www. w3schools.com/>. ltimo acesso em July 2003.

Figura 24. Configurao SURA/ViDE 2005

Neste cenrio, o servidor associado ao n SuraVide foi definido como produtor do fluxo de vdeo (servidor fonte). Este servidor recebe requisies para transmisses ao vivo (d-live). Por outro lado, o servidor associado ao n Rio de Janeiro atua como intermedirio para os demais servidores instalados na rede de distribuio. Os clientes locais recebem o fluxo de vdeo gerado diretamente pelo servidor fonte. Por outro lado, os demais clientes recebem fluxos atravs dos servidores intermedirios mais prximos deles.

8. Concluses
A configurao e a otimizao de redes de distribuio so primordiais para o sucesso de aplicaes e servios que envolvam distribuio e transmisso de dados multimdia. Neste sentido, a concepo de estratgias para distribuio eficiente de dados uma tendncia fortemente verificada em aplicaes multimdia. Tais estratgias devem identificar as rotas de distribuio e considerar aspectos como proximidade e capacidade de transmisso das redes. Neste contexto, a infra-estrutura proposta para configurao e gerenciamento do servio de distribuio de vdeo da RNP promove um melhor atendimento aos clientes, otimizando o trfego na 50 REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital [9] Harold, E. R. Processing XML with Java: A Guide to SAX, DOM, JDOM, JAXP and TrAX. <http://www. cafeconleche.org/books/xmljava/>. ltimo acesso em Outubro 2005. [10] Harren, M; Raghavachari, M; Shmuele, O; Burke, M; Sarkar, V; Bordawekar, R; XJ: Integration of XML Processing into Java. Proceedings of the 13th International World Wide Web Conference. May 2004. [11] Kaiva, H; Furnt, B; Techniques for Improving the Capacity of Vdeo-on-Demand Systems. Proceedings of the 29th Annual Hawaii Intemational Conference on System Sciences (HICSS-29). 1996. [12] Lee, S; Young, K; Moon, Y, Song,Y; Dynamic Buffer Allocation in video-on-Demand Systems . Proceedings of the 2001 ACM SIGMOD International Conference on Management of Data. Pages 343354. 2001. [13]Leite, L. E, Lemos, G. Alves, R. Batista, T. DynaVideo:a dynamic video distribution service. Proceedings of the sixth Eurographics workshop on Multimedia 2001. Manchester, Pages: 95 106, 2002. ltimo acesso em Julho 2005. [14] Lemos, G. Lima, P. J. A. Paula, V. C. C. Especificao e implementao do DynaVideo VoD. Boletim bimestral sobre tecnologia de redes produzido e publicado pela RNP Rede Nacional de Ensino e Pesquisa. Volume 5, nmero 4, julho de 2001. [https://www1.rnp.br/noticias/imprensa/2001/ not-imp-010625.html]. ltimo acesso em Julho 2005. [15] Ma, H; Shin, K, G. Multicast Video-on-Demand Services, ACM SIGCOMM Computer Communication Review. Volume 32. Issue 1. Pages 31-43. January 2002. [16] Miyazaki, Y; Nahrstedt, K; Dynamic Coordination of Movie According to Popularity Index and Resources Availability within a Hierarchical VoD System . Proceedings of the IEEE TENCON - Speech and Image Technologies for Computing and Telecommunications, 1997. [17] Pochueva, J; Munson, E; Pochueva, D; Optimizin Video-On-Demand though Requestcasting. Proceedings of the 7st ACM International Conference on Multimedia (ACM Multimedia 1999). November 1999. [18] Pinho, L, B; Ishikawa, E; GLOVE A Distributed Environment for Scalable Vdeo-on-Demand Systems. The International Journal of High Performance Computing Applications. Volume 17. Pages 147-161. 2003. [19] RFC 1519. Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy. <http://www.faqs.org/rfcs/rfc1519.html>. Julho 2002. [20] RNP Rede Nacional de Ensino e Pesquisa. Operao de Backbone. Disponvel em < http://www. rnp.br/backbone/index.php>. ltimo acesso em Julho 2005. [21] RNP Rede Nacional de Ensino e Pesquisa. Especificao e implementao do DynaVideo VoD. Disponvel em <http://www.rnp.br/newsgen/0107/ dynavideo_vod.html>. ltimo acesso em Julho 2005. [22] Salmito, T.; Farias, J. P, Elias, G.; Lemos G; Leite, L. Uma Arquitetura Hierrquica e Distribuda para um Servio de Distribuio de Vdeo sob Demanda. 10 Simpsio Brasileiro de Sistemas Multimdia e Web (WebMedia 2004). Ribeiro PretoSP. 2004. [23] Sheu, JP; Wang, HL; Chang, CH; Tseng, YC; A Fast Video-on-Demand Broadcasting Scheme for Popular videos. IEEE Transactions on Broadcasting. Volume 50. Number 2. June 2004. [24] Shi, W; Ghandeharizadeh, S; Buffer Sharing in Video-On-Demand Servers. ACM SIGMETRICS Performance Evaluation Review. Special Issue on Multimedia Storage Systems. Volume 25. Issue 2. Pages 13-20. September 1997. [25] Silva, L. O. Servio de Coordenao de Servidores de Vdeo. Trabalho de Concluso de Curso (Bacharelado em Cincia da Computao). Departamento de Informtica e Matemtica Aplicada (DIMAp). Universidade Federal do Rio Grande do Norte (UFRN). Natal RN. 2003. [26] Suzuki, J; Yamamoto, Y. Managing the Software Design Documents with XML. Proceedings of the 16th Annual International Conference on Computer Documentation. Pages 127-136. July 1998. [27] UFMG Projetos de Video sob Demanda,

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP 51

Uma Ferramenta de Configurao e Gerenciamento de Servios de Distribuio de Vdeo Digital <http://www.vod.dcc.ufmg.br/vod/docs/descricao/ dccvod.html >. ltimo acesso em Julho 2005. [28] W3CSchools. XML Tutorial. <http://www. w3schools.com/>. ltimo acesso em Julho 2003. [29] 3COM. Understanding IP Addressing: Everything You Ever Wanted To Know. <http://www.3com.com/ other/pdfs/infra/corpinfo/en_US/501302.pdf >. ltimo acesso em Julho 2005.

Informaes Sobre os Autores:


Fernando Luiz de Almeida, Mestre pela Universidade Federal do Rio Grande do Norte (UFRN - 2005), Bacharel em Cincia da Computao pela Unipar (Universidade Paranaense 2002), atualmente atua como pesquisador/bolsista pelo LARC e doutorando em Engenharia de Computao e Sistemas Digitais. Gldson Elias da Silveira, Doutor pela Universidade Federal de Pernambuco, atua como professor (Graduao e Ps Graduao) pela Universidade Federal da Paraba, trabalhando em projetos de pesquisa baseados em Componentes. Guido Lemos de Souza Filho, Doutor pela Pontifcia Universidade Catlica do Rio de Janeiro (PUC-RIO), atua como professor (Graduao e Ps Graduao) pela Universidade Federal da Paraba, na rea de redes de computadores, trabalhando em projetos de TV Digital, TV interativa. Este trabalho est inserido no contexto do projeto GTTV Grupo de Trabalho de Vdeo Digital, fomentado pela RNP Rede Nacional de Pesquisa e Ensino.

52

REVISTA DE ENGENHArIA DE COMPUTAO E SISTEMAS DIGITAIS

PCS

EPUSP