Universidade Federal de Santa Catarina Departamento de Informática e Estatística Graduação em Sistemas de Informação
Filipi Zimermann
Canal de Retorno em TV Digital: Tecnologias e abordagens para efetivação da
interatividade televisiva
Florianópolis, 2007
2
Universidade Federal de Santa Catarina Departamento de Informática e Estatística Graduação em Sistemas de Informação
Filipi Zimermann
Canal de Retorno em TV Digital: Tecnologias e abordagens para efetivação da
interatividade televisiva
Monografia apresentada à Universidade Federal de Santa Catarina para a obtenção do grau de Bacharel em Sistemas de Informação, sob a orientação do Prof. Dr. Carlos Barros Montez.
Florianópolis, 2007
3
FILIPI ZIMERMANN
CANAL DE RETORNO EM TV DIGITAL:
Tecnologias e abordagens para a efetivação da interatividade televisiva
Esta monografia foi julgada adequada à obtenção do grau de Bacharel em Sistemas de
Informação e aprovada em sua forma final pelo Curso de Sistemas de Informação do Departamento
de Informática e Estatística da Universidade Federal de Santa Catarina – UFSC, Florianópolis/Santa
Catarina.
Florianópolis, 25 de junho de 2007.
Banca Examinadora:
Prof. Dr. Carlos Barros Montez
____________________________________
Orientador do Trabalho
Prof. .Dr. Mário A. R. Dantas
____________________________________
Prof. da Disciplina de Computação Distribuída
Prof. .Dr. Antônio Augusto Fröhlich
____________________________________
Coordenador do Laboratório de Integração de Hardware e Software
4
Agradecimentos
Algumas pessoas foram cruciais para o desenvolvimento deste trabalho: Professor Dr.
Carlos Barros Montez, pelas horas despendidas para dar as orientações, indicações e busca de
materiais; aos Professores Dr. Mário A. R. Dantas e Dr. Antônio Augusto Fröhlich pelas críticas
que também ajudaram a definir os rumos finais deste texto. Agradecimentos especiais ao Professor
Msc. Alex Sandro Roschildt Pinto e a Rafael Moreira Domingues pelo suporte com o conteúdo de
computação distribuída; e à Giovanni Moura de Holanda e Professor Dr. Guido Lemos de Souza
Filho pelo pronto atendimento para solucionar dúvidas sobre suas obras.
Além desses, que tiveram influência direta na elaboração do trabalho, é necessário agradecer
também à todos que dividiram comigo o dia-a-dia das atividades do SBTVD e que, de alguma
forma, contribuíram para minha formação técnica em TV digital: Carlos Alexandre Piccioni,
Valdecir Becker, Günter Herweg Filho, Dalton Silva Ribeiro Filho, Fernando Jordan, Andrés
Codas, equipe do Núcleo de Televisão Digital Interativa (NTDI) da Universidade Federal de Santa
Catarina (UFSC) e equipe do laboratório Laboratório de Aplicações de Vídeo Digital (LAVID) da
Universidade Federal da Paraíba (UFPB).
Por fim, agradecimentos mais que especiais aos meus familiares e amigos, que deram o
suporte e incentivo necessário para a concretização deste trabalho.
5
Resumo
O presente trabalho faz uma revisão bibliográfica sobre os assuntos que envolvem a
comunicação entre os terminais de acesso e provedores de serviços interativos através do canal de
retorno num sistema de TV digital interativa.
O objetivo é fornecer fundamentos para que um arquiteto de sistemas consiga projetar seu
aplicativo, sempre considerando as peculiaridades que a plataforma de TV digital impõe.
É apresentado informações sobre as demandas que os serviços televisivos interativos
deverão atender no ambiente brasileiro; explicado como funciona uma plataforma de TV digital,
desde a transmissão até a utilização do canal de retorno; e finalmente é elucidado algumas técnicas
a serem usadas no provedor de serviços interativos capazes de fornecer a robustez que os sistemas
precisarão para atender as demandas apresentadas.
A revisão não chega aprofundar-se em detalhes que não estão ligados ao canal de retorno
tais como as limitações gráficas que os dispositivos de TV impõem ou sobre o ciclo de vida das
aplicações no terminal de acesso. Mas aprofunda-se nos detalhes do funcionamento do canal de
retorno.
Ao fim de cada capítulo e no final do trabalho são apresentados alguns tópicos que os
arquitetos de sistemas devem estar sempre atentos ao projetarem seus sistemas.
6
Abstract
This work presents a bibliographical revision about subjects that are involved on the
communication between set-top-boxes e interactive service providers using the return channel in a
interactive digital television system.
The objective is to give solid bases to systems architects project their applications always
considering the peculiarities that the digital TV platform imposes.
This text presents information about the demands that the interactive systems will have to
attend in the Brazilian environment; explains how the digital TV platform works, since the
transmission until the usage of the return channel; and finally it shows some techniques that can be
used in the interactive services provider to give the robustness needed to attend the demand
presented previously.
The revision don’t go deeper in details that are not linked to the return channel, details like
graphical limitations of the TV sets or the application’s lifecycle in the TV. But gives lots of details
about how to use the return channel.
At the end of each chapter and at the end of this work are presents some topics that are very
important to be considered by the architect while designing their information systems.
7
Sumário
AGRADECIMENTOS ..................................... .....................................................................4
RESUMO.............................................................................................................................5
ABSTRACT ........................................... ..............................................................................6
SUMÁRIO............................................................................................................................7
ÍNDICE DE FIGURAS........................................................................................................10
ÍNDICE DE TABELAS.................................. .....................................................................11
INTRODUÇÃO ..................................................................................................................12
1. CONCEITOS INICIAIS ..................................................................................................13
1.1 TV Digital ..................................................................................................................................................................13 1.1.1 O que muda com a digitalização..........................................................................................................................13 1.2 Interatividade e TV Interativa.................................................................................................................................14
1.2.1 Tipos de interatividade televisiva ....................................................................................................................14
2. DEMANDA DA TV DIGITAL NO BRASIL................. ....................................................18
2.1 Mapeamento da situação atual ................................................................................................................................18 2.1.1 Distribuição da população ...................................................................................................................................18 2.1.2 Aspectos Educacionais ........................................................................................................................................18 2.1.3 Distribuição de Renda..........................................................................................................................................19 2.1.4 Presença de eletrônicos nos domicílios................................................................................................................20
2.2 Demanda pelos serviços de TV Digital....................................................................................................................21 2.2.1 Expectativas de uso..............................................................................................................................................22 2.2.2 Estimativas de uso ...............................................................................................................................................23
2.3 Considerações............................................................................................................................................................24
3 ARQUITETURA DE SISTEMAS TV DIGITAL............... .................................................25
3.1 Difusão e Acesso........................................................................................................................................................26 3.1.1 Codificação de áudio ...........................................................................................................................................27 3.1.2 Codificação de vídeo ...........................................................................................................................................27 3.1.3 Codificação de dados...........................................................................................................................................27 3.1.4 Camada de transporte...........................................................................................................................................29 3.1.5 Codificação de Canal, Modulação e Transmissão...............................................................................................31
3.2 Terminal de acesso ou Receptor ..............................................................................................................................32 3.2.1 Arquitetura do Terminal de Acesso .....................................................................................................................33
3.2.1.1 Estágio Entrada.............................................................................................................................................33 3.2.1.2 Demultiplexador ...........................................................................................................................................34
8
3.2.1.3 Decodificador de áudio .................................................................................................................................34 3.2.1.4 Decodificador de vídeo.................................................................................................................................34 3.2.1.5 Processador Gráfico......................................................................................................................................34 3.2.1.6 Estágio de saída de vídeo..............................................................................................................................35 3.2.1.7 Estágio de saída de áudio..............................................................................................................................35 3.2.1.8 Estágio de saída de radiofreqüência..............................................................................................................35 3.2.1.9 Núcleo de processamento e controle.............................................................................................................35 3.2.1.10 Interface genérica........................................................................................................................................35 3.2.1.11 Interface para armazenamento de massa.....................................................................................................36 3.2.1.12 Interface de usuário.....................................................................................................................................36 3.2.1.13 Interface para canal de retorno ou canal de interatividade..........................................................................36
3.3 Canal de Retorno ou Canal de Interatividade........................................................................................................36
3.4 Redes de comunicação de dados – Alternativas tecnológicas................................................................................39 3.4.1 PSTN ...................................................................................................................................................................39 3.4.2 IDSN....................................................................................................................................................................40 3.4.3 aDSL....................................................................................................................................................................41 3.4.4 DOCSIS ...............................................................................................................................................................42 3.4.5 WiMAX ...............................................................................................................................................................43 3.4.6 GSM / CMDA (HSPDA / UMTS-TDD / GPRS) ................................................................................................44 3.4.7 RCT .....................................................................................................................................................................44
3.5 Arquitetura de Middleware .....................................................................................................................................45
3.6 Ginga e o GEM..........................................................................................................................................................46 3.6.1 API de canal de retorno .......................................................................................................................................49
3.6.1.1 Interfaces de Canal de Retorno .....................................................................................................................49 3.6.1.2 Obtendo acesso às interfaces de canal de retorno .........................................................................................50 3.6.1.3 Interfaces de canal de retorno baseadas em conexão ....................................................................................51 3.6.1.5 Utilizando o canal de retorno........................................................................................................................53
3.7 Considerações............................................................................................................................................................54
4. PROVEDOR DE SERVIÇOS INTERATIVOS................................................................56
4.1 Definindo conceitos...................................................................................................................................................56 4.1.1 Clusters ................................................................................................................................................................57 4.1.2 Grids ....................................................................................................................................................................57 4.1.3 Aplicações distribuídas ........................................................................................................................................57 4.1.4 Aplicações Paralelas ............................................................................................................................................58 4.1.5 Multiprocessadores e Multicomputadores ...........................................................................................................58 4.1.6 Ambientes de software.........................................................................................................................................59 4.1.7 Protocolos de transporte.......................................................................................................................................62
4.1.7.1 Arquitetura TCP/IP.......................................................................................................................................63 4.1.7.2 Protocolos de alto desempenho.....................................................................................................................64
4.2 Clusters computacionais...........................................................................................................................................65 4.2.1 Interligação de nós...............................................................................................................................................71
4.3 Grids Computacionais..............................................................................................................................................72 4.3.1 Arquiteturas e Topologias....................................................................................................................................73 4.3.2 Portais de grid ......................................................................................................................................................74 4.3.3 Middleware de grids ............................................................................................................................................75
4.4 Considerações............................................................................................................................................................76
CONCLUSÕES .................................................................................................................78
9
Trabalhos Futuros ..........................................................................................................................................................80
REFERÊNCIAS BIBLIOGRÁFICAS ......................... ........................................................82
10
Índice de Figuras
Figura 1 - Mapeamento de aplicações interativas em função da existência de canal de retorno e do relacionamento com o programa....................................................................... 15
Figura 2 - Tipologia de aplicativos interativo relacionando personalização de consumo e instantaneidade do retorno ..................................................................................... 16
Figura 3 - Diagrama do fluxo de informações .................................................................. 26
Figura 4 - Ilustração do funcionamento do carrossel ........................................................ 28
Figura 5 - Entradas e saídas dos codificadores e da camada de transporte.......................... 29
Figura 6 - Processos dos subsistemas de transmissão e recepção ...................................... 32
Figura 7 - Arquitetura de Hardware do terminal de acesso ................................................ 33
Figura 8 - Diagrama simplificado do sistema Canal de Retorno .......................................... 37
Figura 9 - Arquitetura do Canal de Interavidade .............................................................. 37
Figura 10 - Ilustração do funcionamento do splitter numa rede ADSL................................. 41
Figura 11 - Freqüências utilizadas em redes ADSL ........................................................... 42
Figura 12 - Arquitetura de middleware segundo (CPqD, 2006a)......................................... 45
Figura 13 - Arquitetura do Ginga ................................................................................... 47
Figura 14 - Configurações genéricas de multiprocessadores e multicomputadores ............... 59
Figura 15- Esquema geral de funcionamento de um pacote de software SSI ....................... 60
Figura 16 - Arquitetura TCP/IP ...................................................................................... 63
Figura 17 - Paradigmas de retransmissão ....................................................................... 64
Figura 18 - Métricas para classificação de clusters computacionais..................................... 66
Figura 19 - Ambiente de cluster não dedicado ................................................................. 68
Figura 20 - Ambiente de cluster dedicado ligado direto à rede corporativa .......................... 69
Figura 21 - Cluster para aplicação de alta disponibilidade ................................................. 70
Figura 22 - Classificação básica das redes de interconexão ............................................... 71
Figura 23 - Modelo de arquitetura de Grid Computacional................................................. 73
11
Índice de Tabelas
Tabela 1 - Renda média familiar por classe econômica. Fonte (CPqD, 2004). ...................... 20
Tabela 2 - Percentual de domicílios brasileiros dotados de alguns bens duráveis. Fonte (IBGE, 2005). .................................................................................................................. 21
Tabela 3 - Constantes de tipos de interfaces de canal de retorno. Fonte (MORIS e SMITH-CHAIGNEAU, 2005). ............................................................................................... 50
12
Introdução
A TV digital e suas funcionalidades ainda são uma novidade para todos. Apesar da forte
investida por parte do governo para atualizar o sistema televisivo brasileiro, ainda é perceptível a
dificuldade com que este assunto é tratado.
Com este trabalho, pretende-se incentivar a difusão de conhecimento sobre o assunto,
colaborando com a formação de uma massa cada vez maior de críticos e colaboradores com
capacidade de fazer uso desta poderosa ferramenta que é a TV.
Mais especificamente, faz-se uma revisão literária capaz de fornecer subsídios para que um
arquiteto de sistemas de informação faça uso de um dos mais importantes benefícios fornecidos
pela digitalização do sinal televisivo: a interatividade.
Entende-se por interatividade a capacidade do telespectador influenciar diretamente no
conteúdo que ele assiste no aparelho por meio do controle remoto ou outras interfaces. Isto significa
que com a TV digital o telespectador poderá responder a estímulos e enviar informações de volta à
emissora, dando sua contribuição ao programa que ele assiste. Essa comunicação do usuário com a
emissora, na TV digital, é realizada por um meio chamado de “canal de retorno”. Ele compreende
uma série de entidades, tecnologias e protocolos que interagem entre si para “conectar” o
telespectador e o provedor de serviços interativos.
Procura-se apresentar os conceitos de TV digital de forma genérica, não limitando-os à
utilização em um único sistema de TV digital, ou seja, o que for apresentado ao longo deste
trabalho poderá ser aplicado em todos os sistemas de TV existentes atualmente. Ainda assim, será
utilizado o Brasil como cenário de implantação do sistema uma vez que em breve será implantado
no país o sistema de TV digital e que esta implantação exigirá uma demanda por conhecimento
sobre o assunto e produção de sistemas para tal plataforma.
O texto está dividido em 4 partes. A primeira apresenta brevemente os benefícios da
digitalização, conceitua a interatividade no meio televisivo. A segunda mostra o mapeamento da
demanda brasileira pelos serviços da TV Digital. A terceira parte apresenta uma arquitetura
conceitual de um sistema de TV digital, apresentando as entidades envolvidas nas várias partes do
processo de transmissão, recepção e conexão com o canal de retorno. Por fim, a quarta parte foca o
provedor de serviços interativos, apresentando técnicas e tecnologias disponíveis para se montar
uma estrutura computacional capaz de processar a demanda que o sistema brasileiro deverá atender.
13
1. Conceitos iniciais
1.1 TV Digital
Em termos gerais, a TV Digital é a evolução da televisão da forma como conhecemos hoje:
a forma analógica. Ela manterá o intuito de levar aos telespectadores conteúdo áudio-visual e
continuará tendo o sinal transmitido pelos mesmos meios (cabo, terrestre ou satélite). O que difere é
a forma como o conteúdo é modulado, ou seja, a forma como o conteúdo é transformado em
freqüências de rádio ou elétricas e como essas freqüências são transformadas novamente em
imagem e som no aparelho receptor. Na TV Digital, todo o conteúdo televisivo é transformando em
conteúdo digital, binário.
1.1.1 O que muda com a digitalização
O sinal digital proporciona melhorias significativas no conteúdo audiovisual, pois possibilita
a compressão de informação, que, por sua vez, permite enviar mais informações pela mesma faixa
de freqüência por onde é transmitido um canal analógico, ou seja, possibilita aumentar a qualidade e
a resolução do conteúdo enviado. Além disso, a compressão pode ser utilizada para enviar mais
conteúdo simultaneamente, permitindo enviar para um mesmo vídeo, várias faixas de áudio em
diferentes línguas, várias opções de legendas ou vários ângulos diferentes da mesma cena, tudo
passível de configuração do telespectador, para que possa escolher as opções que mais lhe agrade.
O sinal digital também possibilita melhorias na transmissão, pois é possível realizar a
detecção e tratamento de erros provocadas por interferências, evitando os famosos chuviscos ou
fantasmas, bastante comuns em áreas de alta densidade eletromagnética.
Mas dentre todas as mudanças, a mais revolucionária talvez seja a possibilidade agregar
dados ao sinal televisivo, além do conteúdo audiovisual já transmitido. Isto abre um leque enorme
de possibilidades de utilização desse conteúdo. Por exemplo, na TV digital é possível enviar aos
telespectadores informações textuais, que estejam ou não relacionadas com o canal ou programa em
exibição no momento, exemplo: a grade de programação dos canais. Também é possível enviar aos
terminais televisivos aplicativos de software para realizar as mais diversas tarefas, promovendo a
interatividade e fazendo com que o telespectador tome um papel ativo com relação ao conteúdo
televisivo.
14
1.2 Interatividade e TV Interativa
O dicionário Aurélio Século XXI – 1999 – define interatividade como a “capacidade (de um
equipamento, sistema de comunicação ou de computação, etc.) de interagir ou permitir interação”.
E o mesmo dicionário define interação como “Ação que se exerce mutuamente entre duas ou mais
coisas, ou duas ou mais pessoas; ação recíproca”. (BECKER e MONTEZ, 2004) explica que o
conceito de interação é antigo mas o de interatividade é recente e passou a ser cunhado com o
advento da tecnologia em convergência com a arte e a ciência.
O conceito de interatividade desenvolvido e estabelecido na informática é que mais se
assemelha ao que chamamos de mídias interativas. A palavra interatividade batizava o que os
pesquisadores da área entendiam como uma nova qualidade da computação interativa, presumindo a
incorporação de dispositivos como teclado e o monitor de vídeo como unidade de entrada e saída
dos sistemas computacionais. Dessa forma, o conceito enfatizava justamente a diferença e melhora
na qualidade da relação usuário-computador, pela substituição dos anteriores cartões perfurados e
consoles em impressoras.
Na TV, os conceitos de interatividade foram aplicados pela primeira vez com o advento da
indústria de jogos eletrônicos, na década de 1960. Em suma os vídeo-games não são mais que
computadores com funcionalidades limitadas e os mesmos conceitos aplicados aos computadores
também pode ser aplicado nestes aparelhos. Mesmo assim, graças a eles as pessoas passaram a ter
uma forma diferenciada de convívio com a TV, uma vez que deixaram de ser meros expectadores
passivos, vindo a tornar-se atores do conteúdo assistido.
Tanto (BECKER e MONTEZ,2004) quanto (CPqD, 2005) são unânimes ao afirmar que na
TV interativa “a TV deixa de ser unidirecional”, ou seja, “a TV difere de um sucessão linear de
programas de vídeo de radiodifusão” e “permite uma maior participação do usuário na escolha da
formatação do conteúdo”.
1.2.1 Tipos de interatividade televisiva
Conforme explicado em (CPqD, 2005), diversas tipologias podem ser aplicadas para
classificar as diferentes aplicações interativas na TV. Uma delas é a que se baseia na presença de
um canal de retorno – meio físico para envio de resposta do usuário/telespectador ao prestador de
serviço interativo – para a fruição da aplicação. Determinadas aplicações interativas não necessitam
de um canal de retorno, sendo baseadas apenas em nível de interatividade local.
Outra tipologia, dessa vez usando referência ao universo da televisão, é baseada na
vinculação, ou não, das aplicações interativas aos programas que estão sendo exibidos . O primeiro
15
tipo é o que há vinculação, a aplicação interativa enriquece as informações sobre o programa ou
permite a participação do usuário durante o seu desenrolar. Quando não há vinculação, a aplicação
leva o usuário para fora da programação oferecida pela emissora/programadora. Essa tipologia é
interessante para que emissoras/programadoras possam mapear os serviços interativos entre aqueles
que podem ser considerados como extensão, ou enriquecimento, do seu conteúdo tradicional e
aqueles que podem significar oportunidades de novos negócios.
A Figura 1 apresenta um mapeamento bidimensional de diversas aplicações interativas -
conhecidas no cotidiano da internet, e possíveis de serem implementadas na plataforma de TV
Digital – utilizando essas duas tipologias como dimensões, conforme proposto por (CPQD, 2005).
Figura 1 - Mapeamento de aplicações interativas em função da existência de canal de retorno e do relacionamento com o programa
Uma outra tipologia, que tem uma relação mais direta com este trabalho, é apresentada por
(HOLANDA, 2004). Nela é feita um paralelo entre a instantaneidade do retorno e a personalização
do conteúdo para se classificar os diferentes níveis. A Figura 2 ilustra a tipologia.
16
Figura 2 - Tipologia de aplicativos interativo relacionando personalização de consumo e instantaneidade do retorno
Percebe-se com clareza a separação em três tipos de interatividade. Outros autores ainda
adicionariam mais um nível antes da interatividade local que representaria a ausência de
interatividade, também chamada de Tipo 0, nesse nível encaixar-se-ia a TV no formato na qual a
conhecemos hoje.
Interatividade Tipo 1 ou Interatividade local
Caracteriza-se pela ausência de canal de retorno, ou seja, as aplicações deste tipo não
exigem que o telespectador envie respostas para a emissora/programadora. Neste nível existe a
interação usuário-TV, ou seja, o conteúdo sendo exibido na TV pode sofrer interferência do usuário,
mas não existe a interação usuário-emissora, que significa que o conteúdo sendo transmitido para a
TV não deve se modificar de acordo com as ações do telespectador.
Como exemplos de aplicações que se encaixam nesta tipologia podemos citar: estatísticas
em tempo real de jogos esportivos, questionários com resultados pré-estabelecidos; jogos
residentes; visualizações de notícias, catálogos, etc.; escolha de diferentes ângulos de filmagem,
trilhas de áudio ou legendas; entre vários outros.
17
Interatividade Tipo 2 ou Interatividade intermitente
Aplicações deste tipo interatividade são classificadas como da categoria de interatividade
plena, que é caracterizada pela existência da interação usuário-emissora. Isto significa que o
conteúdo que o usuário está recebendo da emissora/programadora pode ser diretamente afetado por
sua resposta (em tempo real ou não). Este tipo de interatividade, demanda a funcionalidade de um
canal de retorno e que este canal de retorno permaneça conectado com o provedor de serviços
interativos (entidade presente no lado oposto ao usuário no canal de retorno e através do qual o
usuário estará ligado à emissora/programadora) apenas o tempo necessário para que sua
resposta/solicitação seja recebida e atendida.
Nesta categoria encaixam-se aplicações tais como: votações, serviços de governo eletrônico
(marcação de consultas médicas – SUS, matrícula em escolas públicas, declaração de imposto de
renda, etc), serviços bancários (visualização de saldo e extratos, transferências, etc), visualização de
e-mail, comércio eletrônico, vídeo sob-demanda, etc.
Interatividade Tipo 3 ou Interatividade permanente
O tipo mais apurado de interatividade é com certeza a interatividade permanente. Nesta
categoria o usuário, diferente do tipo intermitente, muda do papel de receptor-colaborador para o
papel de produtor e emissor de conteúdo, ou seja, a resposta do usuário faz parte do conteúdo
transmitido pela TV. Neste tipo de interatividade é necessário que a conexão com o canal de retorno
seja permanente.
Entre outras, encaixam-se nesta categoria aplicações de bate-papo (chat), videoconferência e
jogos em tempo real.
A utilização da interatividade permanente ainda é considerada de difícil adoção num
primeiro momento no Brasil devido aos seus altos custos e pela própria cultura de uso da TV (o
telespectador brasileiro ainda não está acostumado com a interatividade), apesar de algumas
aplicações poderem ser implantadas assim que o sistema de TV digital for efetivamente implantado.
Sabendo disso, o foco deste trabalho estará voltado para aplicações que se encaixam
principalmente na classe de interatividade intermitente. Aqui apresentaremos algumas
peculiaridades e exigências desse tipo de aplicações e proporemos a utilização de um conjunto de
padrões e ferramentas para tornar realidade tal nível de interatividade.
18
2. Demanda da TV digital no Brasil
O Centro de Pesquisa e Desenvolvimento em Telecomunicações (CPqD) realizou em 2004
um estudo de demanda que reúne as características do mercado brasileiro, objetivando o
delineamento e dimensionamento da sua proposta para o sistema brasileiro de TV digital (SBTVD).
Mesmo não sendo a proposta do CPqD o sistema escolhido para ser implantado no Brasil, o
estudo, em paralelo com dados de trabalhos de outras instituições e pesquisadores, trás informações
relevantes para a realização de projetos de sistemas de TV digital interativa que fazem uso do canal
de retorno. Informações tais como distribuição da população, grau de escolaridade, distribuição de
renda e expectativas do sistema de TV, que podem facilitar a escolha do foco do sistema e formas
de implementação do mesmo.
2.1 Mapeamento da situação atual
Para entender a demanda por TV Digital no Brasil é preciso conhecer um pouco mais do
Brasil como um todo e a penetração que tem a TV na sua população, ou seja, é preciso conhecer
quem estará fazendo uso o sistema de TV digital e por conseqüência dos aplicativos televisivos
interativos.
2.1.1 Distribuição da população
Com dados reunidos em sua própria pesquisa e utilizando fontes secundárias de informação,
(CPqD, 2004) delineou o seguinte quadro: a população brasileira, de acordo com o censo de 2000,
era de 169.799.170 pessoas (com estimativa de 187.885.996 em meados de 2008, de acordo com
[IBGE, 2007]). A grande maioria dessa população residia em áreas urbanas (81,25%) e em
domicílios particulares permanentes (98,4%), sendo 89,4% do tipo casa e 9,6% do tipo
apartamento, com uma média de 3,8 moradores por domicílio.
As áreas de maior densidade demográfica localizam-se na faixa litorânea, que se inicia no
Pará e termina no Rio Grande do Sul, no sul e no sudeste de Minas Gerais, no estado de São Paulo e
em praticamente toda a região Sul. As áreas de menor densidade populacional são as regiões Norte
e Centro-Oeste, com exceção do Distrito Federal. Outra região com baixa densidade populacional é
a área mais interiorana do Nordeste e o norte e noroeste de Minas Gerais.
2.1.2 Aspectos Educacionais
Outro aspecto importante que deve ser considerado nas análises de adoção da TV digital diz
19
respeito à educação, especialmente quando se trata da utilização de novos serviços interativos, que é
nosso foco. Isto se deve ao fato de que a especificação desses novos serviços deve considerar as
habilidades instrucionais da população, para que possam efetivamente contribuir para a inclusão
digital.
O Instituto Paulo Montenegro realiza anualmente pesquisas para avaliar o índice de
alfabetismo funcional no Brasil. A pesquisa realizada em 2005 avaliou a capacidade de leitura e
escrita da população, cuja conclusão é de que 7% da população brasileira entre 15 e 64 anos se
encontram em situação de analfabetismo absoluto; 30% da mesma população se enquadram no
nível 1 de alfabetismo funcional ou “Alfabetizado nível rudimentar”, que corresponde à capacidade
de localizar informações explícitas em textos muito curtos, cuja configuração auxilia o
reconhecimento do conteúdo solicitado. Por exemplo, identificar o título de uma revista ou, em um
anúncio, localizar a data em que se inicia uma campanha de vacinação ou a idade a partir da qual a
vacina pode ser tomada; 38% da população estão no nível 2 ou “Alfabetizado nível básico”,
corresponde à capacidade de localizar informações em textos curtos (por exemplo, em uma carta
reclamando de um defeito em uma geladeira comprada, identificar o defeito apresentado; localizar
informações em textos de extensão média); e 26% da população se encaixam no nível 3 ou
“Alfabetizado nível pleno”, que corresponde à capacidade de ler textos longos, orientando-se por
subtítulos, localizando mais de uma informação, de acordo com condições estabelecidas,
relacionando partes de um texto, comparando dois textos, realizando inferências e sínteses.
Dessa forma pode-se deduzir que a implantação de serviços interativos deve oferecer uma
certa dificuldade para a maior parte da população, especialmente se os serviços não apresentarem
elevado grau de usabilidade, o que pode vir a exigir um tempo para adaptação da população a essa
nova linguagem.
2.1.3 Distribuição de Renda
A distribuição de renda é um fator decisivo na implantação do sistema de TV digital no
Brasil uma vez que será necessária a aquisição de novos aparelhos televisivos ou de aparelhos
decodificadores chamados “set top box” (STB) ou terminal de acesso.
Conforme será visto mais adiante neste trabalho, as especificações de sistemas de TV digital
dão flexibilidade para a construção de terminais de acesso que possuem diferentes configurações e
que, por sua vez, tem capacidade de realizarem tarefas diferentes. As interfaces de acesso ao canal
de retorno é um exemplo de recurso opcional nos sistemas de TV digital.
A inclusão de diferentes recursos têm um custo a ser absorvido por quem virá a comprar os
aparelhos, por isso a importância de se conhecer um pouco como está distribuída a renda no país.
20
O censo demográfico realizado em 2000 pelo IBGE apresentou uma mediana no valor de R$
350,00 para a renda das pessoas de 10 ou mais anos de idade responsáveis pelos domicílios
brasileiros. Esse valor ainda varia de acordo com a característica do local onde os domicílios estão
estabelecidos, obtendo o valor de R$ 400,00 em áreas urbanas e R$ 151,00 em áreas rurais.
A mediana do rendimento do brasileiro também oscila fortemente entre as grandes regiões
geográficas, chegando ao valor de R$ 460,00 na região Sudeste e R$ 151,00 na região Nordeste,
que representam as extremidades da variação e tem o valor de R$ 270,00 na região Norte, R$
350,00 na região Centro-Oeste e R$ 400,00 na região Sul.
O mesmo censo também colheu os valores médios da renda para a mesma população citada
acima, mas cabe ressaltar que o rendimento médio não representa bem a realidade do rendimento da
população por sofrer a influência de poucos valores muito elevados no cálculo da média.
Além de saber quanto recebe o povo brasileiro, é interessante conhecer também como
encontra-se distribuída a renda entre os brasileiros, ou seja, quantas pessoas têm o rendimento
maior ou menor. Para tanto, a população foi dividida seguindo o seguinte critério:
Classes Econômica A1 A2 B1 B2 C D E
Renda média familiar (R$) 7.993 4.648 2.804 1.669 927 424 207
Tabela 1 - Renda média familiar por classe econômica. Fonte (CPqD, 2004).
Nesta classificação observou-se, em 2000 que entre os domicílios urbanos, 0,75%
encontram-se na classe A1, 3,81% na classe A2, 6,34% na classe B1, 11,41% na classe B2, 30,62%
na classe C, 34,39% na classe D e 12,69% na classe E.
Fica clara o exorbitante desequilíbrio da distribuição de renda, onde 10,9% da população
tem o rendimento pelo menos 5 vezes maior que os outros 89,1%. Esse desequilíbrio entre as
classes é constante em quaisquer das grandes regiões geográficas, mas observa-se que há diferenças
entre as regiões tais como a região Sul, que tem 26,5% dos domicílios com renda média nas classes
A1, A2, B1 e B2, enquanto na região Nordeste, apenas 12,75% encontram-se nessas classes.
2.1.4 Presença de eletrônicos nos domicílios
Em (CPqD, 2004) também foi feito um mapeamento dos bens de consumos eletrônicos nos
domicílios, destacando a presença da televisão e a utilização da internet e telefonia como meio de
comunicação. Estas informações incluindo os meios de comunicação são particularmente úteis pois
a presença deles dá possibilidade de difusão rápida da utilização do canal de retorno.
A disparidade das condições da população e dos domicílios, ressaltada no item anterior
também se reflete na posse de bens eletrônicos. Na Tabela 2 é apresentado o panorama geral da
21
posse de bens eletrônicos pela população brasileira, conforme a Pesquisa Nacional por Amostra de
Domicílios (PNAD) de 2005.
Regiões (%) Existência de Brasil (%)
Norte urbana Nordeste Sudeste Sul Centro-oeste
Iluminação Elétrica 97,7 99,1 93,5 99,4 99,0 98,3
Geladeira 88,6 86,3 71,8 95,5 95,7 92,3
Freezer 16,7 14,1 6,5 16,7 33,1 18,4
Máquina de lavar Roupa
36,2 22,4 10,6 47,9 52,5 28,0
Rádio 88,4 76,5 81,1 92,4 94,2 84,7
Televisão 92,0 91,5 83,3 96,1 95,0 91,7
Telefone (celular e/ou fixo)
72,4 64,8 49,5 81,2 83,9 78,8
Microcomputador 18,8 10,0 7,8 24,8 23,1 17,1
Tabela 2 - Percentual de domicílios brasileiros dotados de alguns bens duráveis. Fonte (IBGE, 2005).
A partir dos números desta tabela, nota-se a forte presença da televisão nos domicílios
brasileiros, à frente, inclusive, da geladeira. A alta penetração da televisão é uma característica a ser
destacada, pois revela a importância que a população dá a esse bem, seja como fonte de informação
ou entretenimento.
Também vale ressaltar a penetração do telefone, que - independente da tecnologia adotada –
deve servir um dos possíveis meios de conexão ao canal de retorno com maior facilidade de
implantação e maior abrangência num momento inicial.
Já quando se trata de posse de microcomputador, o número nem sempre está condicionado
ao uso da internet em casa. Mas mesmo assim, a pesquisa verificou que parte da população o faz a
partir de outros locais. Os resultados da Pesquisa Nacional por Amostra de Domicílios (PNAD) de
2005 revelam que em 21% dos domicílios existe pelo menos uma pessoa com 10 anos ou mais que
acessa a internet e em locais como o próprio domicílio ou de outras pessoas, local de trabalho,
escola, centro de acesso gratuito ou pago ou outros locais..
2.2 Demanda pelos serviços de TV Digital
Além do mapeamento da situação do Brasil no tocante a implantação do sistema de TV
digital, também foram realizadas pesquisas para se avaliar as demandas da TV digital no país,
levando em consideração as expectativas da população com relação aos benefícios e problemas que
22
o novo sistema pode trazer.
A síntese dessa pesquisa é feita a seguir considerando os pontos que são relevantes para este
trabalho.
2.2.1 Expectativas de uso
As pesquisas realizadas pelo CPqD trouxeram a tona resultados interessantes e conflitantes.
Duas formas de pesquisa foram aplicadas e as duas colheram resultados diferentes, mas que não se
anulam.
A primeira forma, utilizando métodos para a obtenção de informações qualitativas organizou
alguns grupos focais nas cidades de Curitiba (PR) e Campinas (SP). Tais grupos estavam
subdivididos por sexo, idade e classe social e foram estimulados a darem sua opinião sobre o atual
modelo de TV e sobre o que esperam do novo modelo.
Durante a realização dos grupos focais, diversas críticas foram talhadas, apontando que a
programação atual não responde aos anseios do público pela informação, comunicação e
participação. Mesmo os grupos que assistem muito mais à televisão, como os adolescentes, criticam
a rotina da programação e se interessam pela idéia da TV interativa.
Outro aspecto de difícil concepção, mas que aparece nas discussões dos grupos focais, diz
respeito a convergência. Embora o termo não surja espontaneamente, ele é discutido e provoca
várias reflexões. Como concepção, a idéia de juntar vários formatos distintos (como TV e internet,
por exemplo) parece ser bem aceita.
Diversos serviços que a TV interativa pode oferecer são mencionados, entre eles, os que
trazem benefício ao cidadão, tais como previsão do tempo, informações sobre os horários de ônibus
urbanos, e a possibilidade de enviar e receber e-mails. Outra abordagem de pesquisa, a etnográfica,
também aponta que a interatividade é vista como algo extremamente positivo e que possibilita a
reflexão sobre muitas idéias, as quais repercutem nas expectativas de uso para a TV digital, tais
como:
• Programação de TV planejável – horários e conteúdos de acordo com o interesse do
expectador.
• Usos equivalentes aos da internet: e-mail, jogos, etc. (com a preocupação de fornecer acesso
aos que não possuem).
• Serviços ligados à saúde, como agendamento de consultas e informações, particularmente de
primeiro socorros.
• Serviços relacionados à educação, tanto no contato com as escolhas, matrículas, informações
23
sobre rede pública e cadastro escolar, como programas educativos e interativos, com espaço
para perguntas e respostas.
• Informações locais, como consulta à lista telefônica, serviços de transporte público, previsão
to tempo, trânsito, ofertas culturais e de lazer, etc.
• Serviços e informações sobre segurança pública e sobre judiciário.
• Serviços de defesa ao consumidor.
• Contato e informação com os governos, nas esferas legislativas e executivas, incluindo
orçamento participativo.
• Serviços de compra: supermercados, comércio em geral.
• Serviços bancários.
No geral, tantos os grupos focais (pesquisa qualitativa) quanto as pesquisas etnográficas
revelam grande interesse pela interatividade, trazendo a expectativa de que ela pode vir a suprir
uma demanda por inclusão digital, como formas de acesso a informação e aos serviços públicos.
2.2.2 Estimativas de uso
A forma de pesquisa que utiliza métodos quantitativos para reunir os dados, no entanto,
trouxeram um resultado um pouco diferente. Nesta, as respostas dos entrevistados deram a entender
que eles estão mais preocupados com a melhoria da qualidade dos serviços que o sistema atual de
TV aberta e por assinatura já oferece – tais como mais nitidez na imagem e mais qualidade de som
– e dão menos valor à interatividade.
Esta inversão de interesse pela interatividade pode ser explicado pelo fato de a pesquisa não
proporcionar o amadurecimento de conceitos, como ocorre nas discussões dos grupos focais. A
pesquisa quantitativa foi realizada utilizando questionário em entrevistas pessoais porta a porta,
onde os pesquisados respondiam, entre outras coisas, se tinham interesse e o grau de interesse em
determinados serviços. Não conhecendo o potencial dos serviços que a interatividade pode
proporcionar, estes acabaram tendo um número baixo de preferências.
Entre os números colhidos, o interesse maior da população (que correspondia a 3.127
pessoas, segmentadas entre a cinco classes econômicas – A, B, C, D e E – nas 5 grandes regiões
geográficas brasileiras).estava dividido entre imagem mais nítida (82%), imagem sem chuviscos ou
fantasmas (80%), maior número de canais (74%), melhor qualidade de som (71%) e possibilidade
de gravar programas para assistir em qualquer horário (57%).
Já os serviços que fazem uso da interatividade e do canal de retorno aparecem mais abaixo
na lista. Serviços tais como: possibilidade de acessar a internet pela TV (49%), possibilidade de ter
24
mais informações sobre os programas (44%), possibilidade de votar em programas de TV pelo
controle remoto (37%), escolher o final de um programa de TV (35%), possibilidade de comprar
pela TV (32%) e possibilidade de transmitir o seu vídeo (29%).
É interessante ressaltar também que há uma certa variação entre as classes sociais. Os
serviços interativos, por exemplo, atraem mais a atenção da população pertencente as classes de
renda mais alta. Essa variação pode ser percebida, por exemplo, na possibilidade de acessar a
internet pela TV, que teve a preferência de 70% da população da classe A e apenas 35% da classe
E.
2.3 Considerações
Ao conhecer a abrangência da TV nos lares brasileiros pode-se imaginar o poder de alcance
que os sistemas de informação que irão funcionar numa plataforma de TV digital. Mesmo que o
alcance das redes de comunicação (representado na pesquisa pelo uso de telefones) seja um tanto
menor que a TV, percebe-se que a maior parte do povo brasileiro poderá fazer uso dos sistemas que
utilizam o canal de retorno.
Na contramão deste fato, fica perceptível a dificuldade com que a população deverá usufruir
desse sistemas considerando as limitações educacionais e de renda a qual estão submetidos. A
disponibilidade dos recursos mais interessantes que a TV pode proporcionar exige renda para que
possa ser adquirido o hardware e a infra-estrutura capaz de prover tais recursos (tais como interface
de armazenamento de massa, capaz de gravar programas para serem assistidos posteriormente ou a
própria interface com o canal de retorno). Além disso, os serviços interativos que a TV poderá
prover só farão sentido para aqueles que consigam entendê-lo e utilizá-los. O baixo nível
educacional da população é um fator agravante para a implantação dos sistemas interativos.
Os arquitetos e projetistas de sistemas interativos para TV deverão considerar tais fatos e ter
bem definido o público-alvo de suas aplicações, utilizando os recursos que se conheça a existência
no lado do usuário, além prever no aplicativo a inexistência de tais recursos.
25
3 Arquitetura de sistemas TV Digital
Para se entender o funcionamento do canal de retorno num sistema de TV digital é
necessário entender todo o contexto no qual ele está inserido. Ao se entender como funciona o
sistema como um todo, o foco em um subsistema fica mais nítido e objetivo. Sendo assim, uma
explicação sobre os subsistemas que formam um sistema de televisão digital torna-se então pré-
requisito para a continuação deste trabalho.
Neste capítulo será apresentado uma arquitetura genérica de televisão digital que contém os
componentes básicos necessários para se efetuar a transmissão e a recepção do sinal de TV. Dar-se-
á foco aos componentes que têm relação direta com o subsistema de canal de retorno e chegando
inclusive à apresentar as interfaces de programação utilizadas para se efetuar a conexão entre os
televisores e os provedores de serviços interativos.
Serão apresentadas também algumas alternativas tecnológicas para realizar a conexão entre
o terminal receptor e os servidores de dados. Conhecer tais alternativas são essenciais para conhecer
as limitações e recursos que os sistemas poderão ter à disposição. Além disso, alguns detalhes sobre
o funcionamento do middleware e dos limites que o canal de descida impõem são interessantes ao
se projetar um sistema de TV digital.
A arquitetura aqui apresentada é baseada na especificação proposta pelo CPqD para o
Sistema Brasileiro de TV Digital (SBTVD). No entanto, apenas os conceitos lá apresentados são
incluídos neste trabalho, não delimitando detalhes tecnológicos da proposta do instituto e
possibilitando a utilização dos conceitos aqui apresentados em projeto de aplicativos para qualquer
um dos sistemas de TV digital disponíveis atualmente.
26
Figura 3 - Diagrama do fluxo de informações
A Figura acima ilustra uma visão geral da arquitetura de um sistema de TV digital,
mostrando seus componentes e o fluxo das informações por todo o sistema. Em suma, dois grandes
módulos formam a arquitetura do sistema de TV Digital: a “Difusão e acesso” e o “Terminal de
Acesso” ou Receptor. Para unir esses módulos existem os subsistemas do canal de radiodifusão
(que não será detalhado neste texto) e o canal de retorno.
Os módulos de “Produção de Conteúdo” – que compreende, entre outros, a captura e
geração de conteúdo áudio-visual, textual e aplicativos a serem transmitidos – e “Aplicações
interativas” – que se refere a execução propriamente dita dos aplicativos, middleware e exibição do
conteúdo audiovisual - não necessitam serem explicado para o entendimento deste trabalho, com
exceção das já citadas interfaces de programação para conexão com o canal de retorno.
3.1 Difusão e Acesso
Entre as funcionalidade desempenhadas por esse módulo estão a preparação e difusão das
informações audiovisuais para os terminais de acesso. Por preparação entende-se a codificação dos
dados (audiovisuais e textuais), encapsulamento e modulação.
27
3.1.1 Codificação de áudio
Objetiva reduzir ao máximo a taxa de bits do sinal, utilizando diversas técnicas de
compactação, de forma com que o sinal descompactado e reproduzido seja praticamente
indistinguível do original. Essa funcionalidade se faz necessária pelo fato de “sinais não
compactados exigirem taxas altas demais, considerando e espectro disponível num canal de 6 MHz,
que compreende uma taxa de aproximadamente 19 Mbits/s e a necessidade de ainda se transmitir
vídeo e dados no mesmo canal.
A saída deste componente é o chamado fluxo elementar de informação (ES – Elementary
Stream) de áudio, codificado de acordo com o padrão de codificação de áudio adotado pelo sistema
em vigor.
3.1.2 Codificação de vídeo
Da mesma forma que o codificador de áudio, o codificador de vídeo também busca reduzir
ao máximo a taxa de bits necessária para a transmissão do sinal de vídeo. E como aquele, tem como
saída o fluxo elementar de informação (ES) de vídeo, codificado de acordo com o padrão de
codificação adotado pelo sistema.
3.1.3 Codificação de dados
Para dados textuais e componentes de software, não há a necessidade de compactação como
os anteriores mas sim a adaptação destes para a futura transmissão por difusão. A funcionalidade da
codificação de dados é fragmentar e organizar as entidades de dados para uma futura inserção e
multiplexação nos pacotes de feixe de transporte (TS – Transport Stream).
Em geral, dados de qualquer tipo de protocolo são transmitidos na forma de datagrama. Um
datagrama é uma estrutura lógica que contém toda a informação de definição sobre os dados, isto é,
seu tamanho e conteúdo, o destino e como deve chegar. Na camada de transporte estes dados são
transmitidos dentro de pacote do feixe de transporte que têm comprimento fixo de 188 bytes, o que
faz com que os dados sejam fragmentados no módulo de difusão e acesso e posteriormente
remontado no terminal de acesso.
Conhecer a forma como estes pacotes são criados e enviados para os usuários finais é de
extrema importância para um projetista de aplicativos para TV, uma vez que a forma como a
aplicação será distribuída pode influenciar no tempo carregamento e execução da mesma.
Existe dois mecanismos de transporte para a transmissão dos dados num fluxo de TV digital:
Carrosséis e Encapsulamento Multiprotocolo (MPE – Multiprocol encapsulation).
28
Carrosséis
É um mecanismo de transporte que permite que um servidor de aplicações de um sistema de
difusão de dados apresente, de forma cíclica, um conjunto de dados a um decodificador, repetindo o
conteúdo do carrossel uma ou várias vezes. Se uma aplicação necessitar de um dado em particular o
decodificador deverá esperar a próxima vez em que os dados perdidos são transmitidos.
A Figura abaixo, baseada na explicação de (Andreata, 2006), ilustra o funcionamento de um
carrossel:
Figura 4 - Ilustração do funcionamento do carrossel
Existem dois tipos de carrosséis:
Carrossel de dados, que contém somente dados cujo conteúdo não é especificado ou
identificado, cabendo ao receptor alvo saber como tratar os dados que recebe. São utilizados por
exemplo para atualização remota do software do set-top-box (STB).
Carrossel de objetos, que contém dados que podem ser identificados, tais como imagens,
arquivos de texto ou arquivos executáveis de aplicativos, a partir de uma lista de diretório de todos
os objetos do carrossel.
Encapsulamento Multiprotocolo
O encapsulamento multiprotocolo (MPE) permite que um datagrama de qualquer protocolo
de comunicação seja transmitido na seção de uma tabela privada DSM-CC (Digital Storage Media
– Command and Control – de forma muito simplista, é parte do padrão MPEG que especifica o
sistema de arquivos baseado em fluxos lineares de dados – streams. O Carrossel também faz parte
da especificação DSM-CC) sobre um feixe de transporte (TS) através do mapeamento de uma
estrutura específica definida em tal especificação.
O emprego mais comum para este mecanismo de transporte é o tráfego internet onde o
29
datagrama TCP/IP carrega a informação sobre os endereços lógicos (IP) da origem e do destino,
assim como o endereço alvo do Controle de Acesso ao Meio (MAC), um endereço de rede único.
Pouco mais sobre o transporte de pacotes IP no fluxo de transporte será abordado mais a frente ao
dissertar sobre o RCT, nas alternativas tecnológicas de meio de conexão com o canal de retorno.
A saída do componente de codificação de dados é um feixe de dados acomodados em
estruturas DSM-CC section e disponibilizados através dos mecanismos de carrossel de dados ou
objetos para serem multiplexados.
3.1.4 Camada de transporte
A função principal da camada de transporte é a multiplexação, isto é, a junção dos fluxos
elementares de áudio, vídeo e dados, devidamente codificados e empacotados em uma estrutura
chamada de feixe (ou fluxo) de transporte (TS – Transport Stream) que será posteriormente tratado
e enviado pela camada de codificação de canal, modulação e transmissão.
A arquitetura sistêmica da camada de transporte de uma plataforma de TV digital é
representada pela Figura abaixo:
Figura 5 - Entradas e saídas dos codificadores e da camada de transporte
O multiplexador é representado no bloco intitulado “camada de transporte” e sua
30
implementação envolve dois estágios. No primeiro estágio ocorre a junção dos fluxos elementares
de áudio, vídeo e dados associado a programas (que incluem, legendas, informações adicionais,
etc). O segundo estágio faz a junção dos resultados do primeiro estágio com dados independentes
do conteúdo televisivo sendo transmitido (datacasting) –exemplo: aplicativos interativos, EPG
(Electronic Programming Guide), etc – e ficam disponíveis para todos os usuários (e não para
apenas aqueles que estão sintonizados em um certo programa). Também são adicionados neste
estágio informações relativas ao sinal multiplexado e à rede ou infra-estrutura utilizada para
radiodifusão, bem como eventuais atualizações de software dos receptores.
Outro serviço a ser disponibilizado é composto por dados privativos dos usuários. Tais
dados representam informações enviadas periodicamente para um usuário específico ou respostas a
requisições feitas pelos usuários. Esses dados, devidos a seu caráter confidencial, devem ser
protegidos ou enviados de forma unicast. Uma forma de possibilitar esta funcionalidade é o
endereçamento a ser suportado pelo Terminal de Acesso.
Encapsulamento de dados
A camada de transporte também é responsável pelo encapsulamento dos dados (áudio, vídeo
e informações textuais, aplicativos, etc.) em uma estrutura capaz de realizar o mapeamento dos
sinais fontes diversos que serão transportados. Normalmente existe sincronismo entre cada um
dessas fontes ou fluxos. Essa característica exige que os dados estejam empacotados em estruturas
robusta que suporte, em seu cabeçalho, dados relativos a codificação a apresentação das amostras
contidas nele. Essa estrutura é conhecida como Pacote do fluxo elementar empacotado (Packetized
Emelemntary Stream Packet ou PES Packet).
Para dados de natureza assíncrona, é aplicável a estrutura denominada Data Piping. Aqui,
todo o processamento de inserção e recuperação de informações fonte fica a cargo das pontas
(transmissor e receptor), que pressupõem algum protocolo de nível superior gerando ou terminando
essa informação.
Uma estrutura intermediária, aplicável tanto para sinais síncronos quanto assíncronos é a
Seção (Section). Ela é amplamente utilizada no interfuncionamento com redes de dados (ex.
Internet), além de acomodar a informação específica do programa (Program Specific Information –
PSI) que, entre outras funções, descreve a estrutura de multiplexação, localizando e identificando os
fluxos elementares a serem apresentados para o usuário.
Tipos de dados
Os dados transportados pela Camada de Transporte e sua organização estão sob a
31
responsabilidade das aplicações a qual se destinam. Diferentes tipos de aplicação demandam
diferentes requisitos como sincronismo e fluxo de dados. Por exemplo, uma aplicação de internet
demanda diferentes tipos de dados que uma aplicação de atualização de firmware para um terminal
de acesso.
Esse dados podem então ser agrupados de acordo características de sincronismo,
interatividade e requisitos de transmissão. Abaixo segue algumas classificações de tipos de dados:
Dados de tabelas de informações de sistema: carregam informações de serviço e controle de
programas. São assíncronos e inseridos no pacote de TS através da Seção (Section), definida no
padrão MPEG Systems.
Dados relativos a programação: dão informações sobre o conteúdo sendo transmitido no
momento e futuramente nos vários serviços (canais televisivos). São os conhecidos EPG (Electronic
Program Guide). Precisam ser difundidos com freqüência regular para prover atualização de
horários e conteúdo. A especificação MPEG Systems não provê estrutura para este tipo de dado,
sendo que a EIT (Event Information Table) é comumente utilizada para prover dados adicionais
sobre os programas.
Dados oportunistas: São dados provenientes de outras redes que não a rede televisiva. O
fato de normalmente a banda de fluxo disponível não ser totalmente preenchida apenas com fluxo
de áudio, dados e vídeo, sobra espaço para que sejam transmitidos dados para outros fins. Porém faz
uso de uma banda que não pode ser garantida e, em geral, é pequena. Deve ser utilizado para
aplicativos não tempo-real.
Dados suplementares: Dados que carregam informações que não pertencem a programas,
mas são informações de serviços gerais e variados, prestados pela emissora e/ou prestadora de
serviço e que devem ser enviados aos usuários do sistema de televisão digital de maneira periódica
ou cíclica.
Dados da rede: O feixe de transporte pode ser utilizado para carregar dados que atendam
qualquer tipo de protocolo de rede. Os dados relacionados ao programa televisivo corrente podem
ser entregue sob demanda sobre o sinal transmitido, sem que o usuário note que está acessando uma
página da internet, por exemplo.
3.1.5 Codificação de Canal, Modulação e Transmissão
A função do subsistema de transmissão é receber da estação transmissora o fluxo de
transporte (TS) e processá-lo para promover sua radiação no canal de radiofreqüência, de modo que
possa ser recebido no terminal de acesso, possibilitando a regeneração do fluxo de transporte no
32
lado usuário. Entende-se por processamento do fluxo de transporte o seguinte: 1) maximizar a taxa
líquida de transmissão, que significa transmitir o máximo possível de informação pelo canal
limitado de banda; 2) maximizar a robustez do TS, a fim de contrapor as intempéries introduzidas
no canal de transmissão (obstruções, ruídos, interferências, etc.); 3) minimizar a potência de
transmissão requerida; 4) manter o espectro de freqüência do sinal transmitido confinado no canal
de transmissão, ou seja, não ultrapassar a largura de faixa de transmissão reservado para o serviço
(no Brasil essa largura é de 6 MHz).
A Figura abaixo ilustra os processos envolvidos nos subsistemas de transmissão e recepção
e sua seqüência de ocorrência no tempo.
Figura 6 - Processos dos subsistemas de transmissão e recepção
3.2 Terminal de acesso ou Receptor
O Terminal de acesso pode ser considerado o inverso da “Difusão e Acesso”, ou seja, todo o
trabalho realizado por este para transformar as informações audiovisuais e textuais em radiações
eletromagnéticas para realizar a transmissão será desfeito no terminal, afim de transformar as
radiações novamente em informações audiovisuais e textuais. A diferença é adição neste módulo de
mais dois subsistemas: o canal de interatividade ou canal de retorno (que será nosso objeto de
estudo principal) e o middleware. De acordo com a definição dada por (CPQD, 2006a), ele
“engloba todas as funcionalidades necessárias no lado usuário para a recepção do sinal de um
sistema de televisão digital servindo como suporte para o correto funcionamento dos demais
subsistemas”.
33
3.2.1 Arquitetura do Terminal de Acesso
O terminal de acesso é formado por uma plataforma de hardware e uma de software. A
plataforma de hardware é descrita conforme a estrutura que se segue e a plataforma de software será
posteriormente descrita na seção que fala sobre a arquitetura de middleware.
A Figura 7 apresenta a composição básica do hardware de um terminal de acesso.
Figura 7 - Arquitetura de Hardware do terminal de acesso
3.2.1.1 Estágio Entrada
Faz a recepção dos sinais eletromagnéticos e os transforma novamente em um fluxo de
transporte (TS) adequadamente recuperado, conforme descrito na Figura 6, nos processos que
definem o receptor.
Neste subsistema ocorrem os seguintes processamentos:
Sintonizador – faz a amplificação de baixo ruído (para minimizar a o nível de ruído
adicionado pelo receptor), a conversão do sinal VHF ou UHF em um sinal de freqüência
intermediária (FI), controle de ganho (para manter constante o nível do sinal enviado ao
Demodulador Digital) e filtragem e amplificação do sinal em FI (para remover qualquer
interferência fora da faixa do sinal recebido).
Demodulador digital – recupera o feixe de transporte (TS) a partir do sinal de freqüência
intermediária que este recebe do sintonizador.
34
Decodificador e estimado de canal – são responsáveis por, respectivamente, retirar a
informação redundante e corrigir erros introduzidos no canal, e estimar o comportamento do canal
de transmissão, compensando as distorções presentes no sinal.
3.2.1.2 Demultiplexador
Tem a função de extrair os fluxos elementares de informação (ES) de áudio, vídeo e dados,
bem como as referências de relógio do programa e outros fluxos de dados de controle ou
suplementares.
O demultiplexador representa, no terminal de acesso, a camada de transporte e faz nele o
inverso do descrito na difusão e acesso para tal camada. Suas saídas alimentarão as entradas do
middleware (suportado pelo núcleo de processamento e controle) e decodificadores de vídeo e
áudio.
3.2.1.3 Decodificador de áudio
A função do decodificador de áudio é receber os fluxos elementar de informação de áudio
provenientes do demultiplexador e realizar o processamento necessário para transformar e
disponibilizar, na sua saída, os sinais de áudio não-comprimidos, prontos para serem enviados para
o bloco Estágio de saída de áudio.
3.2.1.4 Decodificador de vídeo
Sua função é receber os fluxos elementares de informação de vídeo provenientes do
demultiplexador, juntamente com as informações de relógio, realizar as etapas de processamento
necessárias para transformar e disponibilizar na sua saída os fluxos de vídeo não-comprimidos,
compostos de unidades de apresentação, prontas para serem enviadas para o bloco de
processamento gráfico.
3.2.1.5 Processador Gráfico
Tem a função de recompor a imagem a partir das informações de vídeo, legendas e objetos
gráficos, por meio de sobreposição (overlay), bem como prover escalonamento das imagens. Em
geral, os objetos gráficos e legendas, por terem origem nos fluxos elementares de dados, são
introduzidos no processador gráfico através das saídas do núcleo de processamento e controle após
o devido processamento, realizado pela camada de software.
35
3.2.1.6 Estágio de saída de vídeo
Sua função é realizar a exteriorização das diversas alternativas de saída do sinal de vídeo
(vídeo composto banda base PAL-M, componente, digital, etc.). Um conjunto mínimo destas saídas
devem possibilitar a reprodução e exteriorização de vídeo (proveniente do processador gráfico) na
tela do televisor.
3.2.1.7 Estágio de saída de áudio
Tem como função a exteriorização das diversas alternativas de saída do sinal de áudio
(monofônico, estéreo, envolvente “Surround” e digital) e realização dos processamentos de
inserção de efeitos de áudio (gerados pelos aplicativos na camada de software) no fluxo de sinal
proveniente do demultiplexador. Um conjunto mínimo destas saídas devem possibilitar a
exteriorização e reprodução de áudio no televisor ou num amplificador externo ao Terminal de
Acesso. Dentre os sub-blocos que realizam tais funções destacam-se o processador de áudio e o
conversor digital-analógico.
3.2.1.8 Estágio de saída de radiofreqüência
Tem a função de receber os sinais de áudio e vídeo em banda base e disponibilizar uma
saída modulada em canal baixo, como por exemplo, o sinal analógico que uma televisão comum
pode captar atualmente.
3.2.1.9 Núcleo de processamento e controle
Desempenha uma papel de relacionamento e interdependência importante com os demais
componentes do Terminal de Acesso, como por exemplo, processar os comandos de usuário
recebidos via interface de usuário, controlar o sintonizador e configurar o dispositivo de conversão
e codificação dos sinais de áudio e vídeo.
Pode ser entendido pela composição de diversos sub-blocos de arquitetura de hardware,
como processador central, memórias, controladores de periféricos, barramentos, controladores. Tais
componentes impactam no Terminal de Acesso por diversos fatores tais como: custo,
funcionalidades, básicas, definição dos serviços e aplicações e pelo software (aplicações residentes,
sistema operacional, middleware).
3.2.1.10 Interface genérica
Sua função é possibilitar a escalabilidade do Terminal de Acesso, permitindo conexão com
36
dispositivos como impressora, joystick ou, eventualmente, na possibilidade de manutenção do
mesmo como atualização de device drivers, middieware e sistema operacional.
3.2.1.11 Interface para armazenamento de massa
Sua funcionalidade é possibilitar o armazenamento de informações, que consiste em permitir
o usuário a gravação e recuperação posterior de programas enviados via radiodifusão. O dispositivo
para realizar esta tarefa pode ser interno ou externo ao terminal e entre os vários tipos de
dispositivos desta categoria, destacam-se os de armazenamento magnéticos (disco rígido) ou óptico
(DVD).
3.2.1.12 Interface de usuário
Permite a interação do usuário com o vídeo, áudio e programas e aplicativos do Terminal de
Acesso. Diversos são os dispositivos que possibilitam receber comandos do usuário, como por
exemplo, controles remotos, teclados, mouses e joysticks.
3.2.1.13 Interface para canal de retorno ou canal de interatividade
Tem como função permitir a conexão com redes de comunicação que estabelece o meio para
a comunicação com as emissoras/programadoras/provedoras de serviço, tornando real a
interatividade nível 2, onde o receptor é capaz de dar o seu feedback ao interlocutor.
Os formato e protocolos utilizados podem variar de acordo com a tecnologia adotada pela
rede de comunicação utilizada pelo subsistema de canal de retorno. Informações mais detalhadas
sobre o subsistema de canal de retorno e redes de comunicação são apresentadas nos próximos
tópicos.
3.3 Canal de Retorno ou Canal de Interatividade
O canal de retorno pode ser definido como o responsável por viabilizar a comunicação das
aplicações interativas, no Terminal de Acesso, com servidores de aplicação do Provedor de
Conteúdo, no lado de Difusão de Acesso / Produção de Conteúdo. Através dele cada
usuário/telespectador pode, individualmente, enviar e receber informações e solicitações.
O Canal de interatividade é formado por dois canais de comunicação: o canal de descida,
onde transitam as informações enviadas da emissora para o usuário; e o canal de retorno, que
estabelece a comunicação do usuário com a emissora. Tais canais são ilustrados na Figura a seguir:
37
Figura 8 - Diagrama simplificado do sistema Canal de Retorno
O Canal de descida estabelece a comunicação no sentido emissora-usuários por meio do
fluxo de transporte, o canal de retorno realiza a comunicação no sentido inverso, ou seja, no sentido
usuário-emissora e é composto por qualquer tecnologia de redes de acesso que estabeleça essa
ligação.
A Figura a seguir representa o mesmo canal de interatividade apresentando seus vários
subsistemas.
Figura 9 - Arquitetura do Canal de Interavidade
Uma das características importantes da arquitetura citada é a diversidade de alternativas
tecnológicas para a implementação do acesso ao canal de retorno. Essa diversidade é muito
38
importante porque oferece soluções para dificuldades técnicas, otimização de recursos e exigências
distintas em adequação aos diferentes cenários geográficos, populacionais, socioeconômico e de
redes de comunicação. Essas tecnologias não são excludentes, admitindo, inclusive, que novas
tecnologias sejam agregadas em complementaridade. Detalhes sobre algumas tecnologias de acesso
relevantes para a maioria do público brasileiro de TV digital serão apresentados no tópico que se
segue.
A arquitetura citada também admite a adoção de sistemas e protocolos adequados para a
implementação de redes privativas virtuais – VPN (do inglês, Virtual Private Networks) que são
“túneis de criptografia” construídos sobre redes de acesso público, tornando possível a criação de
redes privadas sem a necessidade de construí-las fisicamente.
A interface para estabelecer a interconexão do terminal de acesso com as redes de acesso é
realizada por meio de um Modem (modulador/demodulador), adequado à solução de rede adequada.
É um componente não obrigatório para o funcionamento do sistema de TV Digital mas sua ausência
impede o funcionamento do canal de retorno, limitando o usuário à utilização apenas de
interatividade local (que não envia informações de volta à emissora).
Sabendo que o acesso dos usuário será feito pelas mais variadas redes de acesso, no lado da
emissora faz-se necessário a criação de um gateway que faça a convergência dos fluxos de dados
para um servidor de aplicações interativas que, por um link dedicado, segue para o emissor
específico caso necessário.
São, então, componentes do canal de interatividade:
Canal de descida: Utilizado para envio de solicitações e/ou respostas das
emissoras/programadoras aos usuários. Ele está contido no fluxo de transporte do Canal de
Radiodifusão que é um canal de livre acesso.
Canal de retorno: Utilizado para o envio de solicitações e/ou respostas direcionadas dos
usuários para as emissoras/programadoras. Pode ser constituído por qualquer uma das redes de
acesso de comunicações disponíveis. A constituição do Canal de retorno se dá por meio de um
modem, que se interliga ao terminal de acesso, comunicando-se com as redes de comunicação
previstas.
Gateway: Interliga as redes de comunicações com as emissoras/programadoras. Tem a
função de receber os fluxos de dados das mais variadas redes e adaptá-los para um único fluxo
uniforme capaz de ser recebido e processado pelo servidor de aplicações. É fundamental que o
gateway implemente de medidas de segurança para garantir a confiabilidade e integridade das
informações.
Servidor de aplicações: Faz a interpretação e o devido tratamento das informações
39
provenientes dos usuários. Dependendo da demanda e aplicabilidade, o servidor de aplicações pode
fazer busca por informações em outros servidores e fontes de dados, gerar uma resposta
individualiza ao usuário, gerar novo conteúdo ou de aplicação com atualização de informações
enviadas pelos usuários ou com informações solicitadas pelo usuário e armazenar informações em
algum tipo de banco de dados, aplicação, etc.
Unidade de adaptação de Radiodifusão: É responsável pela adaptação das informações de
resposta e/ou demandas a serem transmitidas no feixe de transporte (conexão entre o servidor de
aplicações e a unidade emissora de fluxo de transporte). Dependendo do tipo de interatividade, pode
ser necessário um processamento/gerador de carrossel on-line.
3.4 Redes de comunicação de dados – Alternativas tecnológicas
As tecnologias apresentadas à seguir são algumas alternativas comuns para sistemas de
redes de comunicações de dados. São os métodos que determinam como as informações devem ser
moduladas e demoduladas e os meios pelos quais esses dados irão transitar.
É interessante ressaltar que não se pretende explicar todas os meios possíveis de se
estabelecer a comunicação entre a TV e o provedor de serviços interativos. O pretendido é
apresentar algumas alternativas consideradas viáveis perante a variedade de perfis de usuários de
canal de retorno conforme será visto adiante.
Cada uma das tecnologias que serão apresentadas possuem diferentes potenciais e
características que podem limitar ou até mesmo impossibilitar a execução de algumas aplicações.
Conhecer as redes de comunicação é pré-condição para que possa se planejar a implantar os
aplicativos interativos de TV que fazem uso do canal de retorno.
3.4.1 PSTN
PSTN é o acrônimo de Public Switched Telephone Network, que significa rede telefônica
pública comutada. Segundo (LINFO, 2007) é a coleção de redes de telefonia pública
interconectadas mundialmente e foi criada inicialmente para o tráfego de voz.
Nessas redes, normalmente uma linha telefônica analógica é instalada em uma residência e
conecta-se a uma central. Esta central, por sua vez está ligada a outras centrais ou a outras linhas
telefônicas. Quando um usuário estabelece uma ligação para uma outra linha telefônica, as centrais
nas quais essas linhas estão ligadas comutam seus canais de ligação, criando um canal dedica entre
uma linha telefônica e outra até que a ligação seja terminada.
Para a comunicação de dados, o usuário liga-se à um provedor de serviços de internet (ISP –
40
Internet Service Provider) utilizando um modem (neste caso, presente no terminal de acesso)
conectado à sua linha telefônica. Esse modem é capaz de estabelecer a ligação com o ISP e
transformar as informações em sinais elétricos capazes de transitar pela rede pública de telefonia até
o ISP, numa freqüência que este possa interpretar e encaminhar as solicitações de dados para os
roteadores da rede, que entregarão o pacote ao seu destino e enviarão dados de volta ao modem.
Estas redes, por serem planejadas para transitar apenas voz, tem taxa limite de transmissão
de 64 kilobits por segundo. É uma taxa razoável para enviar pequenas informações textuais (como
um voto, numa votação via canal de retorno), mas insuficiente para algumas aplicações como vídeo
sob demanda.
Vantagens: as redes de telefonia pública têm um alcance bem grande (como será
demonstrado mais adiante neste trabalho) e em muitas cidades de população inexpressiva é o único
meio de acesso à internet.
Desvantagens: tem taxa de transferência baixa; o tempo para estabelecer a conexão com
ISP e iniciar a transferência de dados é grande (até dezenas de segundos); e em alguns casos a
ligação e o tempo de efetuação da ligação com o ISP é cobrado pela empresa de telecomunicações
que fornece a linha telefônica ao usuário.
3.4.2 IDSN
Diferente da PSTN, a ISDN é totalmente digital, inclusive a linha instalada na
residência/organização do usuário. Isto facilita a implementação de serviços de dados nessa rede.
A sigla é a abreviação de Integrated Services Digital Network (Rede digital de serviços
integrados) e como seu nome sugere, este tipo de rede permite que vários serviços como telefonia,
acesso a internet e fax sejam executados simultaneamente sobre uma mesma linha.
O fato de ser totalmente digital dá algumas vantagens deste sistema sobre o PSTN. A
comunicação entre o usuário é desnecessária uma vez que os pacotes de dados estarão formatados
no formato que a rede de dados espera e não no formato analógico necessário para o envio da
informação pelas redes PSTN. Isto também significa que o usuário terá uma conexão permanente
com a rede de dados uma vez que não é necessário estabelecer conexão com o ISP.
Além disso, as redes ISDN têm uma capacidade de transferência de dados maior que as
redes PSTN, com taxas de transferência de 128 kilobits por segundo ou mais. A compressão de
dados, possível devido ao seu formato digital, possibilita o aumento dessa taxa
Vantagens: conexão permanente; alta-taxa de transferência de dado; possibilidade de inter-
operação com outros dispositivos de comunicação.
Desvantagens: baixa penetração e alto custo. O ISDN é um serviço que exige um grande
41
investimento pelo fato da linha que chega das centrais até a residência/organização do usuário
precisa atender as especificações para trafegar dados no formato digital. E devido ao seu alto-custo
impossibilita a implantação desse sistema em massa no mercado.
3.4.3 aDSL
Assymetric Digital Subscriber Line é uma tecnologia mais recente que compete com a
ISDN. Caracteriza-se pro trabalhar em conjunto com as redes PSTN. Nas redes ADSL, as centrais
telefônicas, nas quais as residências e organizações estão conectadas, possuem um aparelho
chamado DSLAM (Digital Subscriber Line Access Multiplexer) e um splitter. As linhas telefônicas
estariam conectadas na central ao splitter. O splitter identificaria o tipo de informação que estaria
chegando do usuário na central. Se fosse um sinal de telefonia, o sinal seria encaminhado para a
rede PSTN. Mas se o sinal fosse de dados, o splitter encaminharia esse sinal para o DSLAM que
processaria esse sinal e o encaminharia para a rede de dados (normalmente redes ATM –
Assynchornous Transfer Mode) de uma forma que a rede de dados “entenda”.
Figura 10 - Ilustração do funcionamento do splitter numa rede ADSL
A linha telefônica que chega até a residência/organização dos usuários é a mesma linha
analógica que já existia para telefonia. O que diferencia os sinais de telefonia e dados são a
freqüência dos sinais. Sinais entre 0 e 4 KHz são sinais de telefonia e entre 25,875KHz e 1104KHz
são sinais de dados. Dos sinais de dados as freqüências de 25,875KHz até 138KHz são usadas para
upstream (envio de dados do usuário para a rede) e as freqüências de 138KHz são usadas para
downstream (recebimentos de dados da rede para o usuário). Essas freqüências garantem uma taxa
de transferência de 1 megabit por segundo para upstream e 8 Megabits por segundo para
downstream.
42
Figura 11 - Freqüências utilizadas em redes ADSL
Na residência/organização deve haver também um modem ADSL capaz de transformar as
informações de dados nas freqüências ilustradas acima afim de conseguir efetuar a comunicação
com o DSLAM na central telefônica, conforme o esperado.
Vantagens: fácil implantação devido a inter-operação com as redes PSTN já instaladas; boa
taxa de transferência de dados.
Desvantagens: necessidade de um modem (que normalmente tem custo elevado
considerando a renda da maioria do povo brasileiro) no lado do usuário; necessidade da existência
do DSLAM na central telefônica (este aparelhos são instalados de acordo com a demanda devido ao
seu alto custo, ou seja, inexiste em lugares de baixa densidade demográfica ou lugares onde a renda
da população não absorve a utilização deste serviço); cobrança de taxas mensais de utilização por
parte de quem administra a rede telefônica.
3.4.4 DOCSIS
Data Over Cable Service Interface Specification é um projeto da organização CableLabs
que tem por objetivos estabelecer e manter as especificações para envio de dados em redes de
transmissão de TV à cabo. Essas redes são bastante úteis para o canal de retorno pelo fato do sinal
televisivo estar chegando pelo mesmo meio pelo qual o retorno será enviado, ou seja, se o usuário
utiliza cabo para receber o sina de TV, ele possui um meio garantido para enviar o retorno.
Para o funcionamento dessa rede é necessário que o usuário tenha um modem de cabo,
capaz de identificar e processar as freqüências utilizadas para a transmissão de dados na rede; e na
outra ponta da rede, no lado da transmissora de sinal de TV à cabo, deve haver um aparelho similar
ao DSLAM das redes aDSL, que faz a interpretação e multiplexação das freqüências e às
encaminha para a rede de dados (se forem provenientes dos usuários) ou para os usuários (se forem
provenientes da rede de dados).
Essas redes têm uma grande capacidade de transmissão, com taxas de 38 megabits por
43
segundo para downstream e 9 megabits para upstream (compartilhados entre todos os usuários da
rede), e são redes bastante confiáveis, com um nível que qualidade de serviço, em geral, bastante
elevado. Essas redes, porém, tem custo muito elevado de implantação e sua administração, no
Brasil, é controlada por empresas privadas, que cobram pela utilização do serviço.
Vantagens: alta taxa de transferência; alto nível de qualidade de serviço; meio utilizado
pelo canal de retorno é o mesmo utilizado para a transmissão do sinal televisivo.
Desvantagens: alto custo para instalação das redes; cobrança de taxas para a utilização do
serviço; instalação sob demanda – algumas localidades só recebem a instalação dos cabos se houver
demanda o suficiente para superar os custos da instalação.
3.4.5 WiMAX
O WiMAX, também conhecido como WirelessMAN ou rede metropolitana sem fio é a
alternativa sem fio para a tecnologia aDSL. Nestas redes, as informações são enviadas por meio de
ondas eletromagnéticos pelo ar. Elas funcionam da seguinte forma: o usuário possui um
modem/transmissor acoplado ao seu terminal de acesso que é capaz de modular e enviar os dados
em formato de ondas eletromagnéticas para uma antena chamada de ponto de acesso (ou access
point), que cobre uma área de alguns kilômetros. Essa antena, de forma análoga ao DSLAM das
redes aDSL, recebe as ondas de todos os usuários da área na qual ela cobre, demodula os sinais e os
multiplexa em um fluxo que é enviado para a rede de dados.
O mesmo ocorre no sentido inverso, ou seja, os dados são enviados pela rede de dados, a
antena modula as informações em ondas eletromagnéticas que são enviadas pelo ar e captadas pela
antena do usuário, no terminal de acesso. O sinal é então demodulado e encaminhado para as
aplicações que fizeram a solicitação.
As redes WiMax chegam a cobrir uma área de até 48 kilômetros e taxas de transferências de
até 70 megabits por segundo (compartilhado entre todos os usuários da rede) em um ambiente
perfeito. No entanto, devido ao alto número de interferências e obstáculos, esse número baixa para
10 megabits por segundo em uma área de 10 kilômemtros. Em áreas urbanas de grande densidade
chega a áreas de 2 kilômetros e velocidade de 10 megabits por segundo.Porém esse números não
são simultaneamente verdadeiros.
Vantagens: o fato de ser um rede sem fios facilita a instalação na residência/organização do
usuário; alta taxa de transferência, porém pode ser limitada se a mesma banda for dividida por um
número muito grande de usuários; possibilita a utilização de canal de retorno em dispositivos
móveis enquanto em movimento.
Desvantagens: a antena no terminal de acesso aumenta o seu custo consideravelmente; é um
44
tipo de rede ainda pouco difundida e o custo de instalação dos pontos de acesso são altos.
3.4.6 GSM / CMDA (HSPDA / UMTS-TDD / GPRS)
As redes de telefonia celular são os meios mais fáceis de implantação para utilização de
canal de retorno, sabendo da sua alta penetração no mercado brasileiro. Atualmente há uma grande
variedade de padrões para estabelecer a comunicação entre os dispositivos e as redes de dados
devido a rápida evolução que estes meios de comunicação vêm apresentando e não convém
apresentar as especificidades de cada um neste trabalho. De qualquer forma, alguns detalhes são
importantes para o planejamento e desenvolvimento de sistemas de informação que fazem uso da
televisão interativa utilizando estes meios para uso do canal de retorno.
As redes de telefonia celular seria uma analogia às redes PSTN porém sem fio. Elas são
mais modernas pelo fato de utilizarem técnicas de digitalização nas transmissões “last mile”
(comunicação entre o dispositivo e a antena transmissora), a contrário das redes de telefonia com
fio que usam meios analógicos para essa comunicação. (entre o dispositivo e a central telefônica).
Como as PSTN, as redes GSM e CDMA se enquadram na categoria de dispositivos de conexão
limitada – que não estão conectados a rede de dados permanentemente – e tem um certo retardo
para o início da transmissão dos dados da aplicação. Esse retardo, porém, é normalmente menor que
o das redes PSTN.
O funcionamento destas redes são similares ao das redes WiMax havendo uma antena,
receptora/transmissora que está conectada à rede de dados, com a qual os usuário que querem
acessar tal rede se comunicam utilizando de ondas eletromagnéticas. Essas ondas são geradas por
um modem/transmissor acoplado ao terminar de acesso do usuário, que é capaz tanto de receber as
ondas enviadas pela antena conectada à rede de dados, tanto quanto enviar ondas para essa rede.
A taxa de transferência nessas redes chega à 15 Megabits por segundo (compartilhada)
sendo que, em média, a taxa de transferência por usuário varia em média de 60 kilobits por
segundo.
Vantagens: rede bastante difundida no mercado brasileiro; baixo custo para instalação;
Desvantagens: baixa taxa de transferência; alto custo de utilização das redes; alto custo da
interface (modem/transmissor) para utilização da rede no terminal de acesso.
3.4.7 RCT
Return Channel Terrestrial é uma tecnologia criada pela Digital Video Broadcasting (DVB
– a entidade que controla o sistema europeu de TV digital) para fornecer um canal de retorno que
faz uso do mesmo meio utilizado pela transmissão dos sinais de televisão comuns. Seria como as
45
redes DOCSIS porém sem cabos.
O funcionamento desta rede é similar as redes WiMax porém os pontos de acesso (access
point) seriam as próprias antenas difusoras do sinal televisivo, ou seja, essas antenas teriam
equipamentos capazes de receberem os sinais eletromagnéticos enviados pelos terminais de acesso,
demodular esses sinais e os enviar para a rede de dados num formato que tal rede utiliza. Os sinais
enviados pela rede de dados ou pelos usuários seriam modulados e enviados para o usuário fazendo
uso de um ou mais canais (faixa de freqüência) exclusivo para esses fins.
O RCT pode oferecer para os usuários taxas de transferência de até 15 kilobits por segundo,
sendo que cada antena seria capaz de coletar dados de todos os usuários numa taxa de até 26 Mbits
por segundo e cobrir uma área de até 60 kilômetros.
Vantagens: a rede ser controlada pelas mesmas entidades que fazem a transmissão do sinal
televisivo – pode facilitar e dinamizar estrategicamente o acesso ao provedor de serviços
interativos; grande área de cobertura; facilidade de instalação.
Desvantagens: baixa taxa de transferência; alto-custo de instalação.
3.5 Arquitetura de Middleware
O objetivo desta seção é apresentar algumas especificidades do ambiente de middleware que
precisam ser levados em consideração no desenvolvimento de aplicativos interativos para TV
digital.
A Figura 12, apresenta uma estrutura conceitual do middleware mas é muito superficial para
demonstrar os subsistemas que compõem o middleware como um todo. A seguir é apresentada a
ilustração extraída de (CPqD, 2006a) e ilustra conceitualmente e de forma mais clara a estrutura que
compõe o middleware.
Figura 12 - Arquitetura de middleware segundo (CPqD, 2006a)
Esta Figura apresenta os seguintes elementos:
46
Tratamento de fluxos elementares – contém os elementos responsáveis por interagir com a
Camada de Transporte, controlando o acesso e o processamento dos fluxos dessa camada. É
composto por:
Sintonização de canal – elemento responsável por selecionar um canal de radiodifusão,
bem como o feixe de transporte que está sendo emitido sobre o canal de radiodifusão selecionado.
Manipulação de fluxos elementares – responsável por identificar os fluxos elementares
presentes no feixe de transporte.
Processamento da tabela de SI – responsável por identificar e disponibilizar as meta-
informações relacionadas aos fluxos elementares presentes no feixe de transporte.
Tratamento de “data broadcasting” – responsável por acessar, processar e disponibilizar
os fluxos elementares de dados tais como carrossel de dados e fluxos IP transmitidos no canal de
radiodifusão.
Interface com o usuário – contém os elementos responsáveis pela interação com o usuário
através da apresentação de elementos audiovisuais e coleta de eventos gerados pelo usuário. É
composto por:
Tratamento de eventos do usuário – responsável por capturar os eventos gerados pelos
usuários, tais como: acionamento de controle-remoto, teclado, mouse, etc.
Apresentação de objetos de mídia – responsável pela apresentação para o usuário dos
fluxos de multimídia e objetos de interface gerados pelo processamento dos aplicativos.
Acesso ao canal de retorno – responsável por disponibilizar o acesso ao canal de retorno.
Armazenamento de informações de modo persistente – responsável por armazenar
informações tais como: preferências do usuário, mensagens e aplicações recebidas, etc.
Gerenciador do ciclo de vida das aplicações – responsável por carregar, configurar e
controlar a execução das aplicações.
Sincronismo de mídia – responsável por controlar a apresentação dos objetos de
multimídia.
Segurança das informação – responsável pela autenticação de aplicações, autenticação e
privacidade nas comunicações via canal de retorno, gerenciamento de certificação entre outros.
Mecanismo de abstração de hardware – responsável por traduzir ou interpretar uma
linguagem abstrata para a linguagem específica do mecanismos sobre a qual atua.
3.6 Ginga e o GEM
Ginga é o nome dado ao middleware desenvolvido por universidades brasileiras para
permitir o desenvolvimento de aplicação interativas para TV digital de forma independente de
47
plataforma de hardware dos fabricantes de terminal de acesso (GINGA, 2007).
Resultado de anos de pesquisas lideradas pela Pontifícia Universidade Católica do Rio de
Janeiro (PUC-Rio) e pela Universidade Federal da Paraíba (UFPB), ele reúne um conjunto de
tecnologias e inovações brasileiras que o tornam a especificação de middleware mais avançada e, ao
mesmo tempo, mais adequada à realidade do país.
A Figura 13 representa a estrutura do Ginga conceituada por (Soares e Souza, 2007). Não
pretende-se com essa Figura explicar cada um de seus componentes mas sim ilustrar forma como o
ginga se encontra dividido.
Figura 13 - Arquitetura do Ginga
As aplicações criadas para serem executadas sobre o Ginga são classificadas em duas
categorias – como é o caso de todas as especificações de middlewares propostos para outros
sistemsa de TV digital - dependendo se o conteúdo inicial da aplicação for de natureza procedural
ou declarativa.
A parte mais clara chamada de Presentation Engine representa o Ginga-NCL, que é o
ambiente declarativo do ginga, que processa as entradas e saídas por meio de uma linguagem
declarativa chamada NCL (Nested Conext Language). Já a parte mais escura da figura, nomeada de
Execution Engine, é a parte procedural do middleware, ou seja processa as entradas e saídas por
meio de procedimentos (neste caso, aplicativos escritos na linguagem Java, mais especificamente a
API de Xlets) e foi nomeado Ginga-J.
O uso de linguagem declarativa não é uma novidade do Sistema Brasileiro de TV Digital.
As plataformas de middleware dos sistemas europeu (MHP), americano (ACAP) e japonês (ISDB)
têm suas especificações de linguagem declarativa, sendo todas elas extensões da linguagem HTML,
já popular na web. O mesmo acontece no caso brasileiro com a NCL. No entanto não há um padrão
de interoperabilidade entre essas linguagens. Isto significa que um aplicativo escrito utilizando uma
dessas linguagens precisarão de um grande esforço para ser portada para qualquer outro sistema.
Já o Ginga-J foi desenvolvido para ser compatível com o GEM (Globally executable MHP).
48
O GEM é fruto de um esforço feito pelas associações e instituições que gerenciam os diferentes
sistemas de TV digital ao redor do mundo afim de criar interoperabilidade das aplicações de TV
interativa. A versão 1.1, publicada em maio de 2007 e disponibilidade em (MHP, 2007), é uma
especificação baseada na especificação 1.1 da MHP (Multimedia Home Platform) e inclui a maioria
dos seus elementos básicos, tendo a remoção principalmente das interfaces de acesso às
Informações de Serviço (do inglês Service Information – SI) – que são específicas para cada sistema
- e as referências para resolução de tela e taxas de quadros, entre outras.
O Ginga-J, para fornecer todas as funcionalidades do middleware, conforme descrito acima,
faz uso das seguintes APIs (Application Programming Interfaces) que compõem o GEM:
• Sun JavaTV API (JSR 927);
• Java Media Framework Spaecification (JMF 1.0);
• Connected Device Configuration (CDC) 1.1 (JSR 218);
• Foundation Profile (FP) 1.1 (JSR 219);
• Personal Basis Profile (PBP) 1.1 (JSR 217);
• DAVIC (API);
• HAVi API;
Além dessas, o Ginga-J ainda inclui algumas APIs específicas que são:
• JMF 2.1.1 (JSR 920) – permite o uso do aparelho de TV para entrada e saída de fluxos de
mídia;
• Uma extensão da API de canal de retorno – permite o envio de mensagens assíncronas;
• Uma extensão API de SI especificada pelo ISDB-ARIB B.23.
• Uma API de multi-usuários – permite interações simultâneas de usuários com o aparelho
televisivo;
• Uma API de integração de dispositivos – da suporte a integração de dispositivos como
PDAs e telefones celulares usando tecnologias de redes locais comuns como Bluetooth, Wi-
fi, PLC e outras.
• E uma API de interoperabilidade com o Ginga-NCL – que provê suporte para controlar
apresentação definidas em NCL
De todas as APIs presentes na especificação do GEM, uma delas é particularmente
importante ao se referir à aplicações que irão lidar com canal de retorno e precisa ser detalhada: a
API de canal de retorno.
49
3.6.1 API de canal de retorno
Conforme visto nas redes de comunicação, o canal de retorno pode utilizar vários meios
para fazer a conexão entre a TV e o provedor de serviços interativos tais como modem PSTN,
ADSL, Ethernet, etc. Mesmo em meio a tanta heterogeneidade, para os desenvolvedores de
aplicativos para TV interativa não é tão complicada devido à API de canal de retorno. Em geral,
usar o canal de retorno num middleware que estende o GEM é praticamente igual a usar uma
conexão IP em qualquer outro aplicativo Java pois todos esses middlewares usam o padrão
estabelecido pelo pacote java.net da linguagem Java.
No entanto, devido às características da TV tais como finalidades de uso, interface de
interação e outras, existem algumas diferenças do uso das APIs de conexão na TV e em
computadores. Uma das diferenças diz respeito ao gerenciamento de sessões. A API java.net
assume que uma conexão permanente com a rede de comunicação está estabelecida, mas este pode
não ser o caso, dependendo do meio de comunicação utilizado no canal de retorno. Desta forma o
GEM define uma extensão no pacote org.dvb.net.rc que permite que a aplicação configure
um modem e estabeleça a conexão com o provedor de serviços interativos.
Na maioria dos casos não será necessário preocupar-se com os detalhes de gerenciamento de
sessão. Ao conectar-se com um dispositivo remoto através de um objeto da classe
java.net.Socket ou java.net.URLConnection , o terminal de acesso fará a conexão
com o canal de retorno automaticamente, utilizando seu provedor de serviços de conexão padrão,
caso o canal de retorno estiver disponível e se o aplicativo tiver permissões para tanto. Da mesma
forma, depois de um certo período de inatividade, o terminal de acesso deverá se desconectar
automaticamente do canal de retorno.
3.6.1.1 Interfaces de Canal de Retorno
Cada interface para os diferentes meios de comunicação utilizados pelo canal de retorno são
representados no middleware por uma instancia da classe org.dvb.net.rc.RCInterface . É
uma classe simples que abstrai – conforme mostrado à seguir - uma série de propriedades básicas
comuns a todas as interfaces: seu tipo (exemplo: PSTN, IDSN, Cable Modem, etc.), e sua taxa de
dados (data rate). E define também uma série de constantes para representar os diferentes tipos de
interface.
public class RCInterface {
public int getType();
public int getDataRate();
}
50
Constante Tipo da interface de canal de retorno
TYPE_PSTN PSTN (modem comum)
TYPE_ISDN ISDN
TYPE_DECT Telefone DECT
TYPE_CATV Cable Modem
TYPE_LMDS Local Multipoint Distribution System (LMDS) – canal de retorno wireless (sem fio)
TYPE_MATV Canal de retorno Master Antenna TV
TYPE_DVB_RCS Canal de retorno DVB-RCS (via satélite)
Tabela 3 - Constantes de tipos de interfaces de canal de retorno. Fonte (MORIS e SMITH-CHAIGNEAU, 2005).
3.6.1.2 Obtendo acesso às interfaces de canal de retorno
O fato de o terminal de acesso permitir a conexão com várias interfaces de canal de retorno
diferentes e também pelo fato de o canal de retorno ser considerado um recurso escasso (ou seja, de
disponibilidade limitada) é necessário ter uma forma de obter a interface correta para o uso da
aplicação e de gerenciar os recursos do canal de retorno.
Essa forma é abstraída pela classe org.dvb.net.rc.RCInterfaceManager . Essa
classe obedece ao padrão de projeto singleton – que permite a existência de apenas uma instância da
classe no sistema – e a aplicação pode obter a instância da classe através do método
getInstance() . Uma vez obtida a referência, é possível obter a interface apropriada para o
canal de retorno de várias formas.
O método getInterfaces() retorna uma lista (array) com todas as interfaces
disponíveis no terminal de acesso, mas essas, no entanto, podem possuir restrições de acesso. Caso
não há nenhuma interface de canal de retorno disponível no terminal de acesso, o método deve
retornar um array vazio.
O método getInterface() , por sua vez, possui algumas variantes e retorna a interface
correta para a conexão, de acordo com o tipo do parâmetro utilizado, que podem ser:
java.net.URLConnection , java.net.Socket ou java.net.InetAddress . Para os
dois primeiros tipos, o middleware assume que a conexão já existe (por exemplo, porque o terminal
de acesso já realizou a conexão automaticamente ao se criar e estabelecer a conexão de tais
objetos). No último caso, o middleware retorna a interface que deverá ser usada para aquela
conexão ou uma referência nula caso não seja possível definir qual interface deve ser utilizada.
Além desses métodos a classe RCInterfaceManager ainda fornece o método
51
addResourceStatusEventListener() , que possibilita registrar classes “ouvintes”
(listeners) de eventos do tipo ResourceStatusEvents , afim de fazer um melhor uso do
recurso, sabendo de sua disponibilidade escassa.
A seguir é apresentado a interface da classe RCInterfaceManager :
public class RCInterfaceManager implements org.davic.resources.ResourceServer { public static RCInterfaceManager getInstance(); public RCInterface[] getInterfaces(); public RCInterface getInterface(java.net.InetAddr ess addr); public RCInterface getInterface(java.net.Socket s ); public RCInterface getInterface(java.net.URLConne ction u); public void addResourceStatusEventListener( org.davic.resources.ResourceStatusListener liste ner); public void remove ResourceStatusEventListener( org.davic.resources.ResourceStatusListener liste ner); }
3.6.1.3 Interfaces de canal de retorno baseadas em conexão
Muitas meios de comunicação utilizados para estabelecer a conexão do canal de retorno têm
a característica de ter a conexão permanente (tais como as tecnologias ADSL ou Cable Modem),
porém isto nem sempre é verdade. Em alguns casos será necessário estabelecer uma conexão com
um provedor de serviços de conexão (tal qual um modem de tecnologia PSTN precisa conectar-se
com um provedor de serviços de internet – ISP – para ter acesso à rede IP).
A classe ConnectionRCInterface é uma extensão da classe RCInterface que
adiciona suporte especial para interfaces de canal de retorno que precisam estabelecer conexão
antes de serem usadas. Ela possui uma série de métodos para lidar com a conexão e desconexão
com o ISP e para reservar acesso ao modem, conforme demonstrado à seguir:
public class ConnectionRCInterface extends RCInterface implements ResourceProxy { public boolean isConnected(); public float getSetupTimeEstimate(); public void reserve( ResourceClient c, Object requestData) throws PermissionDeniedException; public void release();
52
public void connect() throws IOException, PermissionDeniedException; public void disconnect() throws PermissionDeniedException; public ConnectionParameters getCurrentTarget() throws IncompleteTargetException; public void setTarget(ConnectionParameters target ) throws IncompleteTargetException, PermissionDeniedException; public void setTargetToDefault() throws PermissionDeniedException; public int getConnectedTime(); public ResourceClient getClient(); public void addConnectionListener( ConnectionListener l); public void removeConnectionListener( ConnectionListener l); }
Os dispositivos que não possuem conexões permanentes precisam se conectar a um ISP
antes que as aplicações possam utilizar o canal. Para definir qual ISP utilizar, o método
setTarget() deve ser utilizado.
Cada ISP contém uma série de configurações que são encapsuladas na classe
ConnectionParameters . Ela define, conforme mostrado a seguir, os parâmetros mais
importantes para se configurar a conexão tais como número do telefone a ser discado, nome de
usuário e senha que o terminal de acesso deverá utilizar para autenticar a conexão.
public class ConnectionParameters { public ConnectionParameters(String number, String user name, String password); public ConnectionParameters(String number, String user name, String password, InetAddress[] dns); public String getTarget(); public String getUsername(); public String getPassword(); public InetAddress[] getDNSServer(); }
Qualquer modificação no objeto dessa classe irá refletir na conexão que será estabelecida.
Uma vez realizada a conexão, as modificações não farão mais efeito até que seja realizada a
53
desconexão e a re-conexão.
Toda interface de canal de retorno normalmente terá um ISP padrão que uma aplicação pode
utilizar se tiver as permissões necessárias. Isto permite que as aplicações façam uso do canal de
retorno através de provedores comuns, como um provedor parceiro das emissoras televisivas ou do
fabricante do terminal de acesso. Para redefinir as configurações para o provedor de serviços de
conexão padrão deve-se utilizar o método setTargetToDefault() . Se a aplicação não tiver
permissão para utilizar tal funcionalidade, uma exceção do tipo SecurityException será
lançada.
Antes de se definir o ISP, porém, deve ser reservado o uso da interface do canal de retorno
executando o método reserve() de forma com que nenhuma outra aplicação sendo executada no
middleware possa utilizá-lo concorrentemente.
Uma vez que a utilização da interface tenha sido reservada e o ISP seja definido é possível
estabelecer a conexão com esse provedor. O método connect() é utilizado para realizar esta
operação. Após isso, as operações do pacote java.net podem ser utilizadas normalmente.
No caso do uso de canal de retorno sobre redes PSTN, o middleware deve perguntar ao
usuário antes de discar o número estabelecido. Se o usuário permitir a discagem, esse número pode
ser adicionado a uma lista de “números permitidos”, evitando que a pergunta seja realizada
novamente, no entanto isto é uma opção dos implementadores do middleware. Isto acontece quando
o método connect() é executado. Assim, se o usuário não permitir a discagem, um evento do
tipo ConnectionFailedEvent será lançado. Se o usuário no entanto permitir a conexão, um
evento do tipo ConnectionSuccededEvent será lançado. Depois que a comunicação com o
provedor de serviços interativos tenha sido finalizada, o método disconnect() deve ser
executado para desconectar-se com o provedor de serviços de conexão e o método release()
deve ser executado para liberar a utilização do canal de retorno para outras aplicações.
3.6.1.5 Utilizando o canal de retorno
(INTERACTIVE TV WEB, 2007b) propõe o seguinte código para realizar a conexão com o
canal de retorno conforme explicado até aqui. Tal código pode usado como referência para o
desenvolvimento de aplicações e ser ajustado na medida do necessário para obter melhor
performance e uso mais eficiente dos recursos de canal de retorno.
// Inicialmente, obtem-se a instancia de RCInterfac eManager RCInterfaceManager rcm = RCInterfaceManager.getInstance(); // Agora, obtém-se a lista de interfaces de canal d e retorno // disponíveis para a aplicação. Isto retornará tod as as
54
// interfaces disponíveis. RCInterface[] interfaces = rcm.getInterfaces(); // pega-se a primeira interface da lista e verifica -se se é // do tipo ConnectionRCInterface if (interfaces[0] instanceof ConnectionRCInterface) { // se for, ela não possui conexão permanente. Ent ão é // necessário efetuar a conexão. ConnectionRCInterface myInterface; myInterface = (ConnectionRCInterface)interfaces[0 ]; try { // primeiro, faz-se a reserva da interface. myInterface.reserve(); // Configura-se o provedor de serviços de conex ão ConnectionParameters myConnectionParameters; myConnectionParameters = new ConnectionParamete rs ("0199604235697", "username", "password"); // Estabele-se as cinfigurações do provedor na interface myInterface.setTarget(myConnectionParameters); // Solicita-se a conexão myInterface.connect(); // neste ponto nenhum erro ocorreu e pode-se us ar normalmente // as funcionalidades do pacote java.net // uma vez terminado deve-se desconectar do pro vedor de // serviços de conexão e liberar os recursos do canal // de retorno. myInterface.disconnect(); myInterface.release(); } catch (PermissionDeniedException e) { // este erro ocorre caso não se tenha permissão de uso da // da interface de canal de retorno escolhida. return; } } else { // a conexão é do tipo permante, então pode-se us á=la // normalmente com as funcionalidade do pacote ja va.net }
Uma vez estabelecida a conexão com o canal de retorno a aplicação pode utilizá-lo para
qualquer propósito. As aplicações no entanto precisam implementar seu próprio protocolo de alto-
nível para comunicação com o provedor de serviços interativos, já que a especificação do GEM
exige que o middleware implemente apenas os protocolos HTTP e DNS.
3.7 Considerações
É necessário conhecer muito mais além do apresentado aqui para se efetivamente
55
desenvolver um software para ser executado num dispositivo de TV Digital. Detalhes sobre o
funcionamento de outras APIs de programação (tais como as APIs gráficas, APIs de interação com
o usuários, etc.), sobre o funcionamento do carrossel de objetos e toda a especificação DSM-CC,
detalhes sobre o ciclo de vida das aplicações na TV entre outros também são essenciais.
O objetivo esperado deste capítulo era fornecer subsídios para o entendimento da
transmissão de TV digital e apresentar as partes do sistema que estão ligados com a comunicação
entre a TV e o provedor de serviços interativos.
Vale salientar que o arquiteto do sistema deve ter sempre em mente (e prever nos seus
sistemas) a possibilidade de muitos dos recursos apresentados neste capítulo não estarem presentes
no terminal de acesso do telespectador, inclusive as interfaces de acesso ao canal de retorno.
Há rumores na mídia especializada que o governo brasileiro não exigirá, num primeiro
momento, nem mesmo a existência do middleware nos terminais. Sem middleware nenhum tipo de
aplicação poderá ser executada na TV e o nível de interatividade será o mesmo do sistema
analógico atual (modificando apenas a qualidade de imagem, som e transmissão). Apesar de ser
apenas rumores, se eles se confirmarem é provável que demore ainda mais para que se torne
possível a possibilidade de criar sistemas de informação que façam dos aparelhos televisivos
interface para com seus usuários.
56
4. Provedor de Serviços Interativos
O provedor de serviços interativos é o elemento dos sistemas de informação de TV digital
menos discutido nos documentos que tratam sobre o assunto. Mas ao conhecer o cenário no qual o
sistema de TV digital será inserido, não fica difícil de encontrar documentos que fornecem técnicas
e soluções para a maioria dos problemas que o provedor de serviços interativos deverá resolver (tais
como armazenamento e busca de informações em base de dados, processamento de regras de
negócio e provimento de serviços multimídia).
É diversificada a gama de características dos ambientes nos quais os sistemas que farão uso
do canal de retorno nas transmissões de TV digital estarão executando. Cada conjunto dessas
características exige uma configuração diferente por parte da entidade que estará posicionada na
ponta oposta à TV - o provedor de serviços interativos ou servidor de aplicações – a fim de que as
funcionalidades do sistema como um todo sejam mantidas conforme esperado.Ao considerar o
cenário brasileiro de TV aberta, logo imagina-se uma demanda grande de conexões e
processamento, remetendo o provedor de serviços interativos diretamente para a computação
distribuída.
Ao longo deste capítulo, uma série de conceitos e teorias de computação distribuída que
mostram-se importantes para conhecimento do arquiteto de sistemas que pretendem desenvolver
aplicativos que utilizam tais meios. Pretende-se aqui, apresentar os fundamentos teóricos relevantes
para o planejamento da estrutura computacional que representará o provedor de serviços interativos
apresentado no capitulo anterior. Não há intenção de exemplificar uma estrutura funcional mas
apenas apresentar algumas técnicas que o arquiteto de sistemas terá à disposição para implementar
seu sistema.
4.1 Definindo conceitos
(Dantas, 2006) diz que processamento distribuído é um paradigma computacional
interessante sob muitos aspectos. A utilização descentralizada de componentes de hardware, pacotes
de software, e até mesmo o uso de componentes geograficamente dispersos já é uma realidade
computacional para diversos usuários. Diversos projetos comerciais e de pesquisa nos têm indicado
a possibilidade de prover às aplicações recursos (e até funcionalidades) nunca antes imaginados.
Por outro lado, a complexidade envolvida nestes cenários também é bastante grande.
A computação distribuída de alto desempenho, por ser entendida como um segmento da
57
ciência da computação que tem como objetivo a melhoria do desempenho das aplicações
distribuídas e paralelas, utilizando-se de complexas infra-estruturas computacionais – entre elas os
clusters e grids computacionais, que são particularmente importantes para este estudo. Por outro
lado, as aplicações que executam sob esses ambientes são usualmente divididas em duas grandes
classes: as distribuídas e as paralelas.
4.1.1 Clusters
Clusters são caracterizados pelo agrupamento físico considerando-se um pequeno limite
geográfico, ou virtual, de inúmeros computadores para a execução de aplicações. Como
peculiaridades iniciais dos clusters, podemos dizer que, por exemplo, eles podem ser formados por
computadores tipo IBM-PC dedicados e agrupados fisicamente em uma sala. Uma outra maneira de
formar um cluster é a conexão virtual de computadores, de características híbridas, espalhados em
uma rede de computadores disposta ao longo de todo um edifício, por exemplo.
4.1.2 Grids
Já os grids computacionais representam as infra-estruturas com interoperabilidade entre
ambientes computacionais dispersos em uma grande área geográfica. Quanto à abrangência de um
grid, podemos supor os limites de uma organização, de uma cidade, de um estado, de um país, de
um continente ou entre continentes com uma ênfase no compartilhamento de recursos e serviços
específicos. Diferentes dos clusters, que pertencem à uma única organização, os grids
computacionais podem ser vistos como cooperativas de clusters de diferentes organizações com o
objetivo de prover recursos e serviços únicos e diferenciados.
É fácil imaginar a utilização destas duas configurações em conjunto num sistema distribuído
de provimento de serviços interativos para TV. Imagine que uma emissora de nível nacional possua
em cada região geográfica do país (Norte, Nordeste, Centro-Oeste, Sudeste e Sul) uma
distribuidora/retransmissora de sinal. Cada uma destas distribuidoras pode manter um cluster capaz
de atender às solicitações e prover os devidos serviços interativos aos telespectadores da sua região.
Ao fim, a emissora que tem abrangência nacional interliga, por meio de um grid, os clusters das
suas distribuidoras espalhadas pelo país e consegue obter e ter controle sobre as informações
enviadas e solicitadas pelos telespectadores de todo o país.
4.1.3 Aplicações distribuídas
Quanto às classes de aplicações, a primeira, denominada de distribuídas, é aquela
caracterizada pelo uso de recursos distribuídos e que não tem necessariamente relação entre si.
58
(Conceição, 1997) define aplicações distribuídas como “um conjunto de processos de aplicação que
interagem por meio de mensagens”. Podemos visualizar aqui como exemplo, uma aplicação de
votação em tempo-real para um programa de auditório onde o público em casa pode definir os
rumos do programa. Os terminais receptores podem ser vistos como os recursos de processamento
dispersos - coletores de informações dos votantes – que interagem por meio de mensagens que
seguem um certo protocolo com o provedor de serviços interativos – que tem o papel de colher os
dados e fornecer a apuração final à produtora do programa de televisão.
(Dantas, 2006) exemplifica outras aplicações para aplicativos distribuídos tais como o
escalonamento de tarefas para melhor utilização de recursos de processamento ociosos. Tais tipos
de aplicativos são úteis, por exemplo, na formação da estrutura de clusters capazes de receber os
milhares de conexões simultâneas que alguns programas televisivos podem exigir. Distribuir, o
aplicativo de processamento das conexões entre várias máquinas pode diminuir o tempo de resposta
das requisições e aumentar a eficiência do sistema como um todo.
4.1.4 Aplicações Paralelas
Da mesma forma, aplicações paralela são definidas como uma única aplicação que é
subdividida em porções menores e distribuídas entre processadores distintos. Entretanto, neste tipo
de aplicações existe uma relação de interdependência entre as porções distribuídas. Em outras
palavras, ao final as porções são agrupadas para produzir um único resultado, ou conjunto de
resultados.
Podemos encaixar nesta categoria a maioria das aplicações de provimento de serviços
interativos. Afim de aumentar o desempenho das aplicações, faz-se uso das técnicas de paralelismo,
possibilitando que várias tarefas sejam executadas simultaneamente e conseqüentemente,
diminuindo o tempo que seria necessário para executar tais tarefas em série.
4.1.5 Multiprocessadores e Multicomputadores
Dois conceitos muito importantes para o bom entendimento do funcionamento do
processamento paralelo e distribuído diz respeito aos multiprocessadores e multicomputadores:
classes nas quais se encaixam as formas de se interligar os processadores e memórias de
computadores que respeitam a arquitetura Multiple Instruction Multiple Data (MIMD) – para mais
informações sobre outras arquiteturas computacionais, consulte (FLYNN, 1972).
Multiprocessador é uma arquitetura caracterizada por vários processadores compartilhando
uma única memória ou um conjunto de memórias. É conhecida como fortemente acoplada, uma vez
que processadores e memória estão fortemente interligados através do seus sistema local de
59
interconexão (barra ou elemento comutador – switch).
Figura 14 - Configurações genéricas de multiprocessadores e multicomputadores
Podemos afirmar que o elemento diferencia da arquitetura multiprocessada é que a
comunicação entre processadores é efetuada através de instruções de acesso comum à memória (as
operações de carregamento e armazenamento), pois os processadores compartilham a memória de
uma forma global. Por outro lado, o compartilhamento global se reflete na restrição de
escalabilidade de processares, que pode variar de alguns até centenas de processadores.
Nos computadores com arquitetura conhecida como multicomputadores, por sua vez,
diferem-se do anterior pelo fato de que cada processador esta ligada diretamente com sua memória
local, que não é compartilhada com nenhum outro processador. Nesta arquitetura, os processadores
são considerados fracamente acoplados e ela possui uma escalabilidade bastante alta, podendo
alcançar um agregado de milhares de processadores.
Uma vez que os processadores não podem comunicar-se através da leitura da memória, uma
vez que ela não é compartilhada, os processadores desta arquitetura precisa comunicar-se por
intermédio de mensagens enviadas através de um meio de interligação dos processadores, que pode
ser um barramento ou um elemento comutador.
Uma forma simples de ilustrar uma configuração de multicomputador é dizer que nesta
classificação se enquadram vários computadores pessoais interligados por uma rede local
convencional., diferente de um multiprocessador, que necessita de um comutador especial.
4.1.6 Ambientes de software
Três são as grandes classes de pacotes de software que precisam ser citadas para o bom
entendimento dos cluster e grids e para aprofundamento de alguns conceitos citados: middlewares.
ferramentas e ambientes de programação.
Middleware
60
Um ambiente de middleware pode ser interpretado como o paradigma de software projetado
para a utilização amigável das complexas configurações distribuídas e paralelas e que ainda dispõe
de um grande conjunto de ferramentas para programação e gerenciamento do ambiente. Em outras
palavras, o middleware visa que as configurações sejam efetivamente utilizadas através de uma
interface amigável e que os serviços possam ser executados em um nível acima dos sistemas
operacionais, tal qual o middleware do terminal de acesso. O middleware não pode ser entendido
apenas como uma interface de acesso aos recursos de sistema operacional mas sim como um
esforço de facilitar a utilização dos clusters e grids computacionais fazendo uso de complexos
ambientes de programação e ferramentas de software distribuído. Como resultado desta abordagem,
programadores de aplicações não se preocupam com a execução da aplicação nos ambientes
distintos de sistema operacional que formam o cluster.
Os sistemas de imagem única (em inglês, Single System Image – SSI) são um belo exemplo
de middlware que provêem aos usuários dos clusters grande abstração quanto a configuração física
(processadores, memória, discos, etc.) e dos pacotes de software (bancos de dados, compiladores,
software de visualização, etc.) instalados no sistema localmente distribuído. A Figura 15 mostra um
desenho esquemático de um ambiente SSI onde solicitações de serviços são recebidas no
computador A que pode ou não ter os serviços locais. No caso do exemplo, vamos supor que a
solicitação possa ser atendida apenas pelos computadores B a E. Desta forma, a solicitação será
repassada para ser executada remotamente. Quando a solicitação tiver sido atendida, o usuário da
solicitação deverá ser atendido pelo computador A. Desta forma, para o usuário final só existe a
imagem do computador A, embora a solicitação tenha sido atendida por outro computador.
Figura 15- Esquema geral de funcionamento de um pacote de software SSI
61
Quanto às ferramentas, pode-se considerar que são pacotes que se destinam a facilitar vários
aspectos referentes ao desenvolvimento e a execução de uma aplicação em uma configuração
distribuída.ou paralela. De uma maneira mais empírica, podemos imaginar que esses pacotes são
aqueles que auxiliam em aspectos tais como instalação distribuída de aplicativos, gerenciamentos
dos recursos distribuídos, escalonamento das tarefas, balanceamento de carga, monitoração e
visualização de execução de processos. Normalmente são mais específicas e pontuais.
Ferramentas
As ferramentas fazem parte de um escopo maior que seria o middleware. Sob um outro
ângulo, podemos dizer que o middleware nada mais é do que as ferramentas agrupadas e
orquestradas com o objetivo de tornar imperceptíveis as configurações de cluster ou grids,
independente do hardware e sistema operacional.
Como exemplo de ferramenta, podemos citar os RMS (Resource Management Systems – do
inglês, sistemas de gerenciamento de recursos) que tem seu foco voltado para a gerência de tarefas e
recursos geograficamente distribuídos nas configurações dos clusters e grids computacionais.
Normalmente quando consideramos ambientes multiprocessados, cada computador que faz
parte do sistema tem seu próprio sistema operacional e, portanto, um gerenciador de tarefas e
recursos locais. As ferramentas RMS trabalham com a mesma finalidade dos escalonadores dos
sistemas operacionais, só que no âmbito geral do cluster ou grid, afim de cobrir a falta nativa de
cooperação entre os escalonadores locais. Assim, um usuário de uma determinada máquina pode
solicitar a submissão de uma aplicação ao software gerenciador de tarefas e recursos, e esse irá ficar
responsável pelo melhor escalonamento na configuração disponível para o usuário.
Existem inúmeras ferramentas de computação distribuída para os mais variados fins. Eis
alguns exemplos de pacotes RMS Comerciais: LSF – da Platform Computing (PLATFORM, 2007),
Sun Grid Engine - da Sun Microsystems (GRI� D ENGINE, 2007) e Loadlever – da IBM
(LOADLEVELER, 2007); e Não Comerciais: Condor – da Universidade de Wiscosin (CONDOR,
2007), DQS – da Universidade de Florida (DQS, 2007) e NQS – da Universidade de Maryland
(NQS, 2007).
Ambientes de programação
Finalmente, Ambiente de Programação pode ser definido como um conjunto de tecnologias,
ferramentas e políticas de uso que possibilitam o desenvolvimento de aplicações a serem executadas
sobre ambientes computacionais paralelos ou distribuídos. É interessante lembrar que modelos de
programação diferentes devem ser considerados para diferentes arquiteturas de sistemas
computacionais. Citações breves sobre Web services, Parallel Virtual Machines (PVM) e Message
Passing Interface (MPI) serão feitas para exemplificar ambientes de programação para
62
configurações distribuídas e paralelas, respectivamente.
Web services, ou serviços web, são aplicações de serviços que permitem se acesso por
intermédio do uso de protocolos web padrão (HTTP, TCP/IP, etc.). O objetivo dessa abordagem é
assegura interoperabilidade de aplicações executando sobre diferentes redes, plataformas de
hardware e pacotes de software por meio de troca de mensagens no formato XML. Podemos dizer
que o ponto focal e diferencial dos Web Services é a utilização de uma grande quantidade de
padrões largamente aceitos pela comunidade de tecnologia da informação.
Parallel Virtual Machines tem como abordagem prover as facilidades de um ambiente de
programação paralela em adição a um transparente mecanismo de agregar inúmeras máquinas com
arquiteturas homogêneas ou heterogêneas. Desta forma, é esperado que problemas mais complexos
possam ser resolvidos com uma interessante relação de custo-benefício, uma vez que os
computadores que formam a arquitetura computacional podem já existir na organização. Em
resumo, o PVM é composto de dois módulos: a biblioteca para programação paralela, que é a
biblioteca de troca de mensagens que deverá ser usada dentro de uma linguagem de programação; e
o ambiente paralelo computacional, o responsável por disponibilizar um console de interface entre
usuários e configuração paralela, pelas conexões lógicas das máquinas que compõem o ambiente.
E o Message Passing Interface, que é um padrão de troca de mensagens para programação
paralela proposto para que a comunidade de desenvolvedores de aplicações pudesse ter uma maior
interoperabilidade entre diferentes plataformas de hardware e sistemas operacionais, uma vez que é
grande a quantidade de bibliotecas diferentes para esse fim. Difere-se do PVM pelo fato de ater-se
apenas a definir a biblioteca de troca de mensagens, independendo do ambiente computacional
paralelo sobre o qual é executado.
4.1.7 Protocolos de transporte
Este tópico trata de apresentar a variedade de protocolos de transporte para estabelecer a
comunicação entre diferentes computadores. A idéia é apresentar alguns protocolos leves, que
propõem melhoria de desempenho das aplicações num ambiente de computação distribuída.
Como contraponto, apresentaremos também a arquitetura TCP/IP, que sem dúvida engloba
os protocolos mais usados e difundidos hoje em dia. O propósito dessa apresentação é demonstrar
seu funcionamento, pois esses protocolos serão largamente utilizados na comunicação TV –
servidor, mas também demonstrar suas fraquezas, pensando nos problemas que precisam ser
enfrentados por outros protocolos parar fornecer a agilidade que as aplicações executando no
provedor de serviços interativos exigirão.
63
4.1.7.1 Arquitetura TCP/IP
A maior razão da existência do TCP/IP é a internet. Eles estão tão intimamente relacionados
que torna-se uma tarefa difícil falar de um sem citar o outro. Eles foram desenvolvidos juntos, com
o TCP/IP provendo um mecanismo para o funcionamento da internet.
De fato, TCP/IP consiste em um conjunto de protocolos porém desses, apenas alguns são
considerado os protocolos principais, os que definem os maiores objetivos do conjunto. Entre esses
estão o Internet Protocol (IP) e o Transmission Control Protocol (TCP). Esse conjunto de
protocolos foram inicialmente desenvolvidos como parte do projeto de pesquisa de redes do
departamento de defesa do governo dos Estados Unidos (ARPA). O objetivo final era montar uma
rede robusta o suficiente para trocar informações entre as bases militares, mesmo que as redes
sofressem algum ataque inimigo.
Para atingir o nível de robustez necessário, criou-se uma arquitetura de 4 camadas, cada uma
contendo um ou mais protocolos para variados fins. As camadas da arquitetura TCP/IP são
representadas na Figura 16 e apresentadas em seguida.
Figura 16 - Arquitetura TCP/IP
Camada de enlace – representa o local onde os protocolos TCP/IP são transmitidos. Tem
como objetivo providenciar a transmissão de dados para a camada de redes, detectar e, se possível,
corrigir erros que possam ocorrer no meio físico.
Camada de rede – é responsável pelo endereçamento lógico de dispositivos,
empacotamento de dados, manipulação, entrega e roteamento de pacotes. Nesta camada encontra-se
o Internet Protocol (IP) – coração da arquitetura TCP/IP – e outros protocolos tais como ICMP e
protocolos de roteamento (RIP, OSFP, BGP, etc.).
Camada de transporte – o trabalho principal desta camada é facilitar a comunicação fim-a-
fim na rede. Em outras palavras, esta camada permite que seja realizada a conexão lógica entre
dispositivos para que seja possível enviar dados com ou sem garantia de entrega no destino. É
também nesta camada que é realizada a identificação específica da aplicação fonte ou aplicação
64
destino dos dados. Os protocolos que fazem parte desta camada são o Transmission Control
Protocol (TCP) e o User Datagram Protoco (UDP).
Camada de aplicações – é a camada mais acima no pilha de camadas da arquitetura. Nesta
camada são definidos os protocolos específicos para cada aplicação ou finalidade. São esses
protocolos que a maioria dos softwares de rede usam para se comunicar, sendo que esses protocolos
ou o sistema operacional abstraem o uso dos protocolos inferiores. Entre os protocolos mais
comuns dessa camada entram-se o HTTP, o FTP, o SSH, o DNS e outros.
Devido as condições para as quais o protocolo TCP foi projetado, ele foi idealizado como
um protocolo que, fim-à-fim, fornece alta qualidade para as aplicações. Porém torna-se pouco
eficiente quando é utilizado em redes robustas, com boa infra-estrutura de transmissão e baixa
ocorrência de erros.
O processo de hand-shake, que estabelece a conexão entre as partes, é um processo de baixo
desempenho quando utilizado em uma rede de comunicação baseada em satélite, por exemplo.
Devido ao alto custo desse tipo de rede, o demorado processo faz mal uso da banda disponível e
acaba sendo um problema.
Outro problema interessante pode ser visualizado na Figura abaixo, que ilustra o
reconhecimento e a retransmissão de forma como é feita com os algoritmos go-back-n (utilizada
pelo TCP) e a retransmissão seletiva. No go-back-n, quando um erro de transmissão é identificado
devido a perda de um pacote, todos os pacotes subseqüentes ao pacote perdido são retransmitidos,
mesmo que tenham sido recebidos com êxito. Há aqui um desperdício de banda e mal
aproveitamento dos recursos de processamento do receptor, que precisa processar duas vezes o
mesmo pacote.
Figura 17 - Paradigmas de retransmissão
4.1.7.2 Protocolos de alto desempenho
Para realizar uma melhor utilização da largura de banda nas redes de interligação entre os
elementos de um ambiente de computação distribuída. Existem atualmente uma série de protocolos
65
diferentes, com um grau de especialização alta e que garantem a melhoria do desempenho das
arquiteturas das quais farão parte quando se propõem a:
• Minimizar os requerimentos de processamento para a redução dos custos de retransmissão;
• Diminuir o controle de erros para as redes que são consideradas sem erro (error free);
• Melhorar o algoritmo de controle de fluxo.
• Melhorar a gerência de conexão: procedimentos de sinais necessários para a abertura,
manutenção e fechamento de conexão entre entidades de comunicação.
• Efetuar controle de fluxo para evitar congestionamento da rede
• Realiza tratamento de erros, sendo desejável que um algoritmo eficaz seja empregado para
evitar a perda de largura de banda para o controle do tratamento de erro.
Dentre os vários protocolos leves podemos citar o APPN (Advanced Peer-to-peer
Networking), desenvolvido pela IBM e que não dispõe do serviço de tratamento de mensagens,
sendo assim um bom exemplo de protocolo que confia na alta qualidade das camadas inferiores da
rede; o Datakit, que é baseado num serviço orientado a circuito virtual que entrega os pacotes sem
erro e em seqüência e tem como destaque suas funções de controle fim-à-fim de controle de fluxo,
detecção e retransmissão de pacotes perdidos; o Delta-t, que implementa um sistema de
gerenciamento de conexão baseado em tempo, através do qual o protocolo suporta conexões
lightweght com um mínimo de demora de sinalização; o VMTP (Versatile Message Transfer
Protocol), que foi desenvolvido para prover a infra-estrutura de comunicação para um sistema
operacional distribuído, tendo um suporte muito bom a conexões orientadas a transações (RPC, por
exemplo); e o NETBLT (NETwork BLock Transfer Protocol), que é um protocolo projetado para a
transferência de grande quantidade de dados, podendo operado com eficiência em redes com grande
latência.
4.2 Clusters computacionais
O processamento de alto desempenho é um paradigma computacional que tem como um dos
seus principais objetivos a execução de milhares de aplicações ao mesmo instante e ainda o
processamento de várias tarefas paralelas complexas com um elevado grau de sucesso.
Este tipo de processamento tradicionalmente vinha ao longo de vários anos sendo baseado
em computadores paralelos específicos. Atualmente, para uma melhoria no desempenho das
aplicações nas organizações, tem sido verificado o agrupamento físico local e virtual de inúmeros
computadores. Isto porque o custo-benefício deste paradigma tem se mostrado realmente relevante,
considerando custo de computadores paralelos altamente especializados e a grande oferta de
66
computadores pessoais existentes nas instituições.
As configurações conhecidas como clusters computacionais têm como objetivo a agregação
de recursos computacionais para disponibilizá-los para a melhoria de aplicações.
Vale salientar que um ambiente de cluster não é a mera junção de recursos computacionais
de forma descoordenada. Esses ambientes têm características específicas, voltadas para a execução
exclusiva (ou não) de determinadas aplicações, ou seja, existem diferentes configurações de clusters
para diferentes propósitos de execução das aplicações.
(Dantas, 2006) apresenta a classificação dos tipos de clusters através da observação de
alguns de seus aspectos. A seguir é a apresentado a enumeração de aspectos relevantes e algumas
características para uma possível diferenciação.
Figura 18 - Métricas para classificação de clusters computacionais
Limite Geográfico: esta característica não define apenas o local onde os nós do agregado
(nome em português dado aos clusters) estão dispostos mas também a abrangência das políticas de
utilização do mesmo. Experimentos indicam que na maioria das organizações a constituição dos
clusters tem surgido em salas específicas e laboratórios. Do conhecimento adquirido por uma
determinada equipe, a formação do cluster departamental é o próximo passo natural. Finalmente,
67
quando um marco de sucesso é alcançado em um determinado departamento com a utilização do
ambiente de cluster, a organização procura estabelecer condições para propagar o uso deste
paradigma computacional.
Tipos de topologia ou tipos de hardware: os tipos de hardware aplicados em clusters pode
ser classificados como Nows, Cows e Clumps.
As Nows, (Network of workstations) são caracterizadas pelo uso de estações de trabalho de
características diversas distribuídas em uma rede local. As Cows (Clusters of workstations)
diferenciam-se das Nows por serem formadas por máquinas homogêneas (mesma configuração de
hardware) e dedicadas à execução de aplicações específicas, além de disporem de uma rede
específica para a interligação das máquinas. Já os Clumps (Cluster of MPs) caracterizam um
ambiente formado por computadores de arquitetura multi-processada.
Utilização dos nós: é essencial que seja estabelecida a participação dos nós que irão compor
o cluster. Fatores tais como as políticas de gerenciamento, segurança, alta-disponibilidade,
escalonamento de processos, balanceamento de carga e tipo de middleware do sistema de imagem
única estão relacionados diretamente à forma de utilização dos nós. Sendo assim, duas são as
configurações possíveis dos clusters, observando-os sob esta ótica: dedicadas e não-dedicadas.
Em configurações não-dedicadas cada um dos computadores do ambiente agregado tem um
conjunto de aplicativos locais necessários para a execução das tarefas de seu usuário local. Isto
significa que os nós que compõem o cluster não terão seus recursos disponíveis 100% do tempo
para a execução dos aplicativos do agregado.
Nestes ambientes, usualmente um equipamento de rede local (hub ou switch) representa o
dispositivo de interconexão da configuração. A Figura 19 ilustra uma configuração do tipo não-
dedicado, aonde inúmeros computadores compartilham um único meio de comunicação, a rede
local. Mesmo assim, ainda que exista a conectividade dos computadores, naturalmente não existe a
interoperabilidade dos recursos e aplicações do ambiente. Para que o cluster seja formado é
necessário que existam pacotes de software (middleware) instalados em todos os computadores que
deverão ser os componentes do agregado. Como exemplos desses pacotes de software, podemos
citar o Condor (CONDOR, 2007) ou o OpenMosix (OPENMOSIX, 2007).
68
Figura 19 - Ambiente de cluster não dedicado
Ao passo em que as configurações não-dedicadas são atraentes devido seu custo benefício,
pelo fato de reaproveitarem recursos ociosos e uma infra-estrutura provavelmente já existente, ela
pode ser da mesma forma problemática se for considerado o esforço de descoberta de características
dos dispositivos que compõem o agregado e as vezes simplesmente insuficientes para alguns
propósitos.
Sendo assim, configurações dedicadas são a opção mais apropriada para a execução de
aplicações críticas da organização, ou seja, aplicações vitais para o bom funcionamento da
instituição. É o caso da maioria das aplicações que estarão sendo executadas nos provedores de
serviços interativos num sistema de TV digital.
Utilizando-se um cluster dedicado e fazendo uso de uma política de uso coerente, o
middleware, que gerencia os recursos do cluster, pode:
• Efetuar uma melhor escolha na distribuição das aplicações para os processadores
disponíveis, uma vez que existe um prévio conhecimento de como a configuração deve
funcionar e quais os aplicativos devem ter prioridade.
• Proceder de maneira mais eficaz na função de alta-disponibilidade do ambiente, uma vez
que é possível estabelecer quais nodos devem ter outro computador como espelho (ou
imagem).
• Tornar a efetivação da escalabilidade do ambiente mais rápida, uma vez que os outros
dispositivos do cluster são conhecidos facilitando a criação de perfis típicos de nós escravos.
A Figura 20 exemplifica um estudo de caso no qual um cluster dedicado é composto por oito
computadores. Neste exemplo, todos os nodos são interligados por um dispositivo de rede do tipo
69
switch. O dispositivo de rede, juntamente com um sistema de imagem única, pode criar a abstração
do ambiente dedicado separado da rede corporativa da organização.
Figura 20 - Ambiente de cluster dedicado ligado direto à rede corporativa
A principal razão do uso de configurações dedicadas é procurar prover alto desempenho
para as aplicações. No Brasil, várias organizações já empregam clusters de computadores
semelhantes aos exemplos dados acima, para prover alto desempenho para as suas aplicações que
atuam em áreas tais como previsão do tempo, bioinformática, produção e exploração de petróleo,
eletricidade, telecomunicações, aeroespacial, militar, naval e consultoria de modelos financeiros.
Aplicações que requeiram uma maior quantidade de processamento, espaço da ordem de
centenas de GBytes em memória e a capacidade de espaço em disco em torno de dezenas de Tbytes,
além do uso de instrumentos científicos sofisticados, devem considera o uso de máquinas
especialmente clusterizadas por seus fabricantes.
Aplicações Alvo: é comum encontrarmos duas classes principais de aplicações alvo para
clusters: à que necessitam de alto desempenho para sua execução (exigindo mais capacidade de
processamento, mais memória e mais espaço em disco que máquinas comuns não conseguem
atender) e aplicações que não podem sofrer interrupções (denominadas aplicações de alta-
disponibilidade).
70
Figura 21 - Cluster para aplicação de alta disponibilidade
Na Figura 21, é apresentado um exemplo de uma configuração de cluster que foi
especialmente projetado para uma aplicação de banco de dados com facilidade de alta
disponibilidade. Os usuários da rede local fazem acesso ao switch da configuração do agregado. O
cluster é caracterizado por duas estações Mestre I e Mestre II, que possuem três interfaces de rede.
A primeira interface, denominada de Interface de Rede 1, está interligada aos computadores de rede
local. A Interface de Rede 2 faz a ligação dos computadores com o dispositivo de armazenamento,
enquanto que a terceira interface auxilia no controle do funcionamento mútuo das duas estações (se
um nodo para de funcionar, o outro automaticamente assume as funções do nodo problemático –
essa verificação contínua do funcionamento do outro nodo, conhecida como heartbeat, é feito
através da Interface de Rede 3).
Tipos de nós:.com relação aos nós do cluster, eles podem ser classificados em homogêneos
ou heterogêneos considerando a similaridade de software e hardware dos nós.
Clusters homogêneos são formados por computadores de arquitetura semelhantes (PCs, por
exemplo). Eles devem ser a opção para aqueles projetos quando é possível estabelecer esta
configuração. O esforço de interoperabilidade entre os pacotes de software é inexistente e a
reposição de componentes é facilitada uma vez que todos são iguais.
Os clusters heterogêneos – formado por computadores de arquiteturas diversas – são
71
bastante encontrados em instalações que cresceram de forma modular. Neste caso, o esforço do
projetista do ambiente é garantir que a heterogeneidade do ambiente seja transparente para os
usuários da configuração e que o uso das máquinas e pacotes de software compilados sobre
diferentes sistemas operacionais execute de maneira correta.
4.2.1 Interligação de nós
Um aspecto fundamental na formação das configurações de clusters é a maneira através da
qual os componentes do ambiente são interligados. As redes de interconexão são dos dispositivos
responsáveis pelas ligações dos nodos nas configurações do tipo multicomputador,
multiprocessador e clusters. A Figura abaixo apresenta uma classificação básica dos tipos de redes
de interconexão. De uma maneira macro, essas redes são classificadas em compartilhada, ponto-à-
ponto e híbrida.
Figura 22 - Classificação básica das redes de interconexão
A abordagem compartilhada é bastante popular nas redes locais, devido a seu baixo custo e
desempenho satisfatório para as aplicações do ambiente.A topologia compartilhada permite que os
elementos da rede utilizem um canal comum disponível para todos. Existem distintas formas de
efetuar o controle de acesso e uso neste tipo de rede. De uma maneira geral os acessos levam em
72
consideração um protocolo de acesso ordenado (exemplo: Token Ring) ou não ordenado (exemplo:
Ehternet). Exemplos comerciais de redes de interconexão compartilhadas são os hubs e switches,
baseados em tecnologias tais como a Ethernet, Fast-Ethernet e o Token Ring.
A característica diferencial das redes ponto-à-ponto é a existência de um enlace dedicado
entre cada elemento da configuração. Então, nas redes ponto-à-ponto pode-se presumir a
comunicação entre todos os elementos em um determinado instante. A maneira de conexão dos
dispositivos que empregam o mecanismo ponto-à-ponto é subdividida em direta ou indireta. Na
forma direta, como o nome já sugere, existe uma ligação estática direta entre todos os elementos do
ambiente.
Exemplos de redes de interconexão estáticas são a mesh, tree e hypercubo. Por outro lado, a
forma de interligação indireta é caracterizada por prover a conexão ponto-à-ponto de uma forma
dinâmica. As redes do tipo cross-bar, múltiplos estágios e permutação básica são exemplos desse
tipo de solução dinâmica ponto-à-ponto. O custo da facilidade de comunicação simultânea é
proporcional, ou seja, estas redes têm um custo mais elevado quando compradas com as soluções de
rede que utilizam o mecanismo de compartilhamento.
A última forma de classificação das redes de interconexão é denominada de híbrida, uma
vez que possui algumas características semelhantes às redes diretas e outras facilidades encontradas
nas redes indiretas. Exemplos que se enquadram nesta classificação são as redes com barramentos
hierárquicos, redes baseadas em agregados e topologia hipergráfica.
4.3 Grids Computacionais
Grids computacionais podem ser considerados a forma mais recente do processamento
distribuída. A evolução dos serviços web, que por sua vez evoluem dos mainframe. Eles permitem a
criação de serviços distribuídos integrados entre diferentes organizações que desejam compartilhar
dados e aplicações. E são a evolução dos serviços web porque provêem não somente a comunicação
automática entre processos, mas também permitindo que recursos computacionais possam ser
compartilhados.
Podemos entender um grid também como uma plataforma heterogênea de computadores
geograficamente dispersos, onde os usuários fazem acesso ao ambiente através de uma interface
única. A grande diferença entre uma configuração de grid e uma outra caracterizada como
ambiente distribuído convencional é o fato de que o grids focam numa grande oferta de variados
serviços e recursos.
Dos clusters, os grids se diferenciam, além do citado acima – sabendo que os clusters são
altamente especializados num conjunto limitado de aplicações – também pelo fato serem
73
normalmente uma forma “pública” de disponibilizar recursos e serviços, enquanto os clusters tem
um único proprietário e é destinado a resolver os problemas de uma organização.
Foi destacado a palavra pública pois ele nem sempre é de acesso liberado. Normalmente
têm acesso ao grid apenas as organizações que fazem parte da configuração do grid, as chamadas
organização virtuais (OV). No entanto, as organizações virtuais podem ser constituídas por
diferentes departamentos de uma única empresa, por exemplo, cujos recursos computacionais
estejam sob diferentes gerências mas que utilizam o grid para compartilhar serviços e recursos
Os grids podem ser considerados também sob o paradigma de melhoria de alguns aspectos
físicos nas redes de comunicação e computadores tais como: melhor utilização de largura de banda,
utilização agregada de uma grande poder computacional, acesso rápido a dados, pacotes de software
e dispositivos remotos com qualidade de serviço (QoS) e melhor utilização dos processadores
remotos, memórias e espaço em disco.
No fim, o objetivo principal de um grid computacional é alcançar a interoperabilidade entre
as organizações virtuais.
4.3.1 Arquiteturas e Topologias
(Dantas, 2006) apresenta uma arquitetura sob forma de quatro camadas, conforme a Figura
23:
Figura 23 - Modelo de arquitetura de Grid Computacional
Aplicação e serviços – é a camada mais alta de um modelo de grid computacional,
composta por milhares de aplicações diferente que variam de indústria para indústria e por uma
infinidade de serviços tais como funções de gerenciamento, faturamento, contabilidade e medidas
métricas utilizáveis. Neste nível deve ser incluso também as ferramentas de desenvolvimento.
Middleware – fornece protocolos que permitam que múltiplos elementos (servidores,
ambientes de armazenamento, redes e outros elementos) participem em um ambiente de grid
unificado. Diversos protocolos devem ser tratados no middleware para o suporte dos elementos
74
heterogêneos da configuração. A camada é caracterizada pela sua “inteligência”, trazida aos vários
elementos unidos através de software e domínio.
Recursos – este nível é constituído pelo conjunto de recursos que fazem parte do grid,
incluindo servidores primários e dispositivos de armazenamento. Exemplos de configurações que
representam ao nível de recursos são os clusters, serviços de armazenamento e computadores
especiais tais como supercomputadores.
Rede – o nível de rede é a base da conectividade para os recursos de grid. Assim, podemos
imaginar os switches, roteadores e a infra-estrutura de redes de comunicação como exemplos da
camada de rede.
4.3.2 Portais de grid
De uma maneira genérica, os portais são pacotes de software que provêem um único ponto
de acesso para informações e serviços distribuídos. Em adição, os portais são projetados para serem
amigáveis e esconder o máximo de detalhes complexos para seus usuários.
De acordo com (Dantas, 2006) pode-se classificar os partais da seguinte forma:
Horizontais e verticais – na abordagem horizontal a quantidade de informações fornecidas
é muito grande, todavia sem maior detalhamento. Exemplos são o Google e Yahoo que fornecem
uma grande quantidade de indicações em como obter uma informação para as solicitações
processadas, mas não apresentam um detalhamento da informação. Por outro lado, portais ditos
verticais provêem uma detalhamento bastante rico sobre determinado tópico. Exemplos típicos são
os sites da Fifa (FIFA, 2007) ou da DVB (DVB, 2007).
Portais verticais são úteis em vários sentidos num sistema de TV digital uma vez que pode-
se disponibilizar nele uma serie de serviços tais como serviços de assistência ao cidadão, bem
cotado no mapeamento de demanda apresentado anteriormente. Um portal deste tipo foi
implementado pela Universidade Federal de Santa Catarina como parte das pesquisas do SBTVD,
focando em serviços de saúde pública.
Portais de informação – são caracterizados por prover informações de locais aonde é
possível ser encontrada determinada resposta a uma solicitação. Poderíamos classificar o portal
horizontal como um portal de informação.
Portais de grid – são ambientes que fornecem um acesso único aos recursos e serviços
distribuídos e utilizam os serviços de grid sob solicitação dos usuários. São encontrados
normalmente sob dois paradigmas: os portais de usuários de grid, que tem enfoque voltado para o
usuário de uma maneira específica; e os portais científicos, que tem foco em aplicações de áreas
específicas, exemplo portais de química ou de biologia computacional.
75
A natureza dos grids, onde uma grande quantidade de recursos e serviços dispersos
geograficamente são oferecidos, espera-se que existam abordagens distintas de políticas,
autorizações de uso de facilidade e administração das configurações. Isto pode tornar muito
complexa a utilização de um grid para os usuários finais e desenvolvedores de aplicações. Os
portais podem tornar-se um meio de desobstrução e contorno dos obstáculos provenientes da
diversidade dos ambientes, funcionando como uma interface que diminui as complexidades pois
seus usuários não precisam tomar conhecimento de como são efetuadas as negociações para
disponibilizar recursos e serviços.
Os portais que são empregados sobre os pacotes de sistemas distribuídos e infra-estrutura
física visam:
• Facilitar e unifica o procedimento de acesso ao grid;
• Utilizar um mecanismo de escalonamento mais apropriado, adequando de uma maneira mais
eficiente as tarefas para os processadores da configuração.
• Coordenar o balanceamento de uso de facilidades devido às inúmeras solicitações das
aplicações.
• Disponibilizar de uma forma mais amigável os recursos e serviços para usuários e
desenvolvedores de aplicações.
Vários grupos de pesquisa estão trabalhando na área de portais, visando atingir aspectos tais
como: prover uma interface amigável, acesso uniforme, escalonamento e balanceamento
distribuídos. Entre eles, vale citar o GPIR (Grid Portals Information Repository), da Universidade
do Texas; o GridPort, um projeto de código aberto; o Grid Engine, também de código aberto e com
patrocínio de empresas como a Sun Microsystems e CollabNet; e GridShepre, também de código
aberto.
4.3.3 Middleware de grids
Já existe uma gama variada de opções. Em uma simples pesquisa em um portal de busca na
internet pode ser encontrada várias opções para variados propósitos. Abaixo são apresentados
alguns exemplos:
Alchemi – é um framework de código aberto que permite a agregação de computadores
conectados em uma rede formando um ambiente de supercomputador virtual. O ambiente ainda
provê suporte para o desenvolvimento de aplicações para configurações de grid (ALCHEMI, 2007).
Cosm – é um conjunto de protocolos e aplicações projetadas para permitir que
computadores dispersos por todo o mundo possam trabalhar juntos em projetos. Os projetos poder
76
ser dos mais diversos possíveis, desde cálculos matemáticos pesados até programas de animação
(COSM, 2007).
Globus – considerado um dos pacotes mais completos, esse ambiente de software tem como
objetivos prover formas de construção de infra-estruturas de configurações de grid, além de
fornecer suporte ao projeto, desenvolvimento e implementação de aplicações que utilizam serviços
de grid (GLOBUS, 2007).
GridBus –cunhados pelas palavras GRID e BUSiness, visa criar tecnologias que possam dar
suporte às novas abordagens de grid computacional e negócios (business) (GRIDBUS, 2007).
UNICORE – UNiform Interface to COmputing REsources, oferece um ambiente pronto
para execução de sistemas de grid, incluindo software cliente e servidor. O UNICORE efetua a
computação distribuída e disponibiliza facilidades de recursos de dados de uma maneira segura para
as configurações físicas intranets e internet (UNICORE, 2007).
4.4 Considerações
Ao considerar a conjuntura mercadológica atual, estima-se que os grids que hão de serem
formados para atender os sistemas de TV digital tenham proporções menores que os existentes
atualmente nas organizações e centros de pesquisa. Isto pelo fato que tais grids deverão interligar
clusters pertencentes a uma única emissora e é difícil imaginar o intercâmbio de informações entre
as emissoras tendo em vista a acirrada concorrência entre elas pelo “ibope”. De qualquer forma,
eles serão essenciais para que emissoras de abrangência nacional consigam colher com eficiência as
informações provenientes do quatro cantos do país, principalmente se levarmos em consideração as
dimensões do Brasil e sua densidade demográfica.
Considerando as densidade demográfica, é interessante também pensar na necessidade de
clusters para atender a alta demanda que alguns sistemas terão em determinados momentos.
Acredita-se que clusters dedicados serão a melhor opção para atender às conexões dos
telespectadores uma vez que a criticidade de desempenho de processamento será alto na maioria das
aplicações.
Além da questão das demandas que o provedor de serviços interativos deverá atender,
precisamos considerar a facilidade com que as técnicas de computação distribuída fornecem para a
unificação e centralização de serviços. O governo federal brasileiro tem sinalizando a criação de
uma emissora estatal e isto pode ser um fomento para a criação de um grid governamental afim de
unificar em uma interface única os serviços providos à população pelas várias esferas e instituições
governamentais. Desenvolver portais acessíveis pelos dispositivos seria a maneira mais rápida para
se disseminar tais serviços e dar mais eficiência ao trabalho do governo de dar suporte ao povo.
77
78
Conclusões
Desde que iniciaram os estudos para a implantação de um Sistema de TV Digital em
território brasileiro, um novo horizonte tem se formado diante dos olhos daqueles que passam a
entender as dimensões que tal sistema terá na vida do brasileiro à partir das primeiras transmissões.
Para aqueles que se envolveram na pesquisa do Sistema Brasileiro de TV Digital (SBTVD), sem
dúvida, este tem sido um tempo de ansiedade e curiosidade, sendo tamanha as capacidades que esse
sistema tem de atender certos os problemas do seu povo.
A TV digital pode ser a chave para a realização da inclusão digital em massa, sabendo que
são tão limitadas oportunidades de muitos em lidar com os benefícios que a digitalização e os novos
meios de comunicação digital oferecem devido ao seu poderio econômico limitado. A TV digital
também pode ser a chave para a convergência e interoperabilidade digital, onde a função de vários
dispositivos eletrônicos passam a estar disponíveis em um só e onde os vários dispositivos
conseguem comunicar-se e trocar informações uns com os outros, facilitando cada vez mais a vida
de quem os opera.
Boa parte desses benefícios que a TV digital pode oferecer só será possível com a utilização
do canal de retorno. Ao explicar o funcionamento, as entidades e as tecnologias envolvidas na
utilização do canal de retorno em TV digital, este trabalho propunha-se a estimular o
desenvolvimento de aplicações que façam uso desse recursos de forma com que seja tirado o maior
proveito do sistema em prol do povo brasileiro, que é, estatisticamente provado, um povo
fortemente ligado à televisão.
Apesar de ter sido baseado na apresentação da pluralidade de opções para a solução dos
mais variados problemas, ainda vale comentar aqui alguns detalhes a serem considerados por
aqueles que pretendem aventurar-se no mercado de desenvolvimento de aplicativos para TV
Digital:
Rede de comunicação: redes PSTN provavelmente serão as mais utilizadas para a
comunicação via canal de retorno. Apesar de estar presente em apenas 62% dos lares brasileiros
(em contraste com a presença da TV em 90% das residências), é o meio com o menor custo de
implantação ao se comparar com os outros meios apresentados neste trabalho. Portanto, ao
desenvolver aplicativos que façam uso do canal de retorno para a grande massa, é válido considerar
alguns aspectos que essa tecnologia impõem.
Outra rede que pode ter um alto índice de uso em pouco tempo é a GSM devido a alta
incidência e o baixo custo dos aparelhos celulares atualmente. O problemas dessa rede baseia-se no
79
custo de transmissão dos dados, mas é um fator que pode se modificar de acordo com as leis do
mercado de oferta e demanda. A tendência é que redes mais robustas e com maior poder de
transmissão tomem lentamente o lugar das redes PSTN. A velocidade dessa mudança vai depender
apenas do custo envolvido.
Aplicações e usabilidade: ainda é uma incógnita a composição dos terminais de acesso que
serão comercializados no Brasil no que diz respeito a disponibilidade de memória, poder de
processamento, capacidade de armazenamento, conectabilidade, etc. O único fato consumado é que
quanto mais recursos o terminal de acesso ter, maior será o seu preço. Aplicações desenvolvidas
nesse contexto devem prever todo tipo de limitações impostas pela ausência de certos recursos.
Dessa forma, os sistemas devem atender à característica da degradação suave descrita por
(LIPMANN, 1998), alertando ao usuário da incapacidade de efetuar a ação pela ausência de
recursos ou, se possível, nem mesmo iniciar a aplicação caso seja identificado que o set-top-box não
provê os recursos exigidos pela aplicação.
O carrossel, que é o método de transmissão de dados via broadcast, é um sistema de arquivo
lento em proporção com a quantidade de dados que ele contém, ou seja, quanto mais dados
enviados via broadcast, mais lento é o sistema de arquivos. Deve-se tomar cuidado ao usar arquivos
grandes ou muitos arquivos, afim de não tornar o carregamento ou o próprio funcionamento das
aplicações lento. (MORIS e SMITH-CHAIGNEAU, 2005) dá uma série de dicas e informações de
como trabalhar eficientemente com esse tipo de sistema de arquivos.
Além desses, outro fator deve ser observado: televisão não é computador. Mesmo que com a
digitalização a TV passará a ter poder de processamento tal qual os computadores, a cultura atrelada
à utilização da TV difere fortemente da utilização dos computadores. O sucesso das aplicações que
executarão na TV dependerá fortemente ao fator humano, ou seja, a adaptação dos telespectadores
em relação ao uso da aplicação.
Interoperabilidade: dois termos que estão em voga na mídia especializada em tecnologia
da informação (TI) são: convergência e interoperabilidade. A tendência do mercado é que seja feito
um esforço cada vez maior afim de que aplicações diferentes possam se comunicar e colaborar
umas com as outras, criando assim serviços especializados e robustos. Uma em que as aplicações de
TV digital dispõem de recursos para participar dessa interoperabilidade, não há motivos que
impeçam que esses recursos sejam utilizados em prol dessa interoperabilidade, estendendo cada vez
mais a abrangência de vários sistemas informatizados.
Uma das tecnologias que mais tem se destacado no papel de prover essa interoperabilidade
são os web services. É válido utilizar as TV como clientes de serviços web afim de disponibilizar
tais serviços a uma gama maior de usuários. A viabilidade de uso já foi provada pelos aplicativos
80
criados pelo consórcio para o SBTVD uma vez que o GEM exigem que o middleware implementes
os protocolos HTTP e DNS, que são a base dos web servieces. Os padrões da indústria podem
facilmente ser adaptados às limitações dos terminais de acesso e dos dispositivos de televisão,
necessitando apenas dos cuidados que devem ser tomados com relação a possível falta de recursos
já comentada.
Provedores de serviços interativos: é parte essencial dos sistemas que farão uso do canal
de retorno. O bom funcionamento do sistema, em grande parte estará condicionado ao bom
funcionamento do provedor de serviços interativos. Esses provedores deverão ter a capacidade de
processar simultaneamente milhares de conexões - oriundas de diversas partes do país - e trabalhar
com uma quantidade muito grande de dados. As técnicas de computação distribuída, que já atingem
um grau de maturidade bastante elevado, podem atender facilmente a essas situações.
Trabalhos Futuros
Este trabalho tem cunho introdutório ao tema canal de retorno em TV digital. Isto implica na
possibilidade de se realizar inúmeros estudos ao se aprofundar nas várias particularidades que tal
tema apresenta. Entre essas possibilidade alguns despertam a curiosidade do autor deste trabalho
talvez pela falta de oportunidades de implementá-las até então:
• Propor meios de facilitar e automatizar envio de informações entre o provedor de serviços
interativos e o difusor com a finalidade de transmitir em broadcast informações que estão
chegando dos próprios telespectadores via canal de retorno (a apuração de uma votação, por
exemplo).
• Propor uma configuração de clusters e grids capaz de prover serviços interativos, com base
na distribuição demográfica brasileira, para uma emissora de tv de nível nacional,
implementando inclusive um ou vários clusters utilizando as ferramentas que hoje estão
disponíveis no mercado.
• Elaborar e implementar um plano de testes para esses clusters e grids afim de verificar a
capacidade dos mesmos processarem os milhares de conexões que devem atender.
• Explicar os detalhes relacionados à segurança nos aplicativos interativos para TV e propor
uma aplicação que implementa tais detalhes.
81
• Detalhar a montagem de um provedor de serviços de internet (ISP) dedicado ao servidor de
aplicações, que será utilizado pelos aplicativos para obter acesso aos serviços interativos
disponibilizados pelo canal de retorno, explicando as soluções e os problemas que um ISP
dedicado pode oferecer.
82
Referências Bibliográficas
ALCHEMI. .NET Based Enterprise Grid. Disponível em http://www.alchemi.net/. Acessado
em junho de 2007.
ANDREATA, Jomar Alberto. InteraTV : um portal para aplicações colaborativas em TV
digital interativa utilizando a plataforma MHP. Florianópolis, 2006
BECKER, Valdecir; MONTEZ, Carlos. TV digital Interativa – Conceitos, desafios e
perspectivas para o Brasil. 1ª ed. Editora UFSC, 2004.
CDMA. CDMA website. Disponível em
http://www2.rad.com/networks/2003/cdma/index.htm. Acessado em junho de 2007.
CONCEIÇÃO, Sergio Ricardo da. Um Protocolo para Rastreamento de Mensagens em
Sistemas com Checkpointing Assíncrono. São Paulo, 1997. Disponível em
http://www.ime.usp.br/dcc/posgrad/teses/ric/. Acessado em maio de 2007.
CONDOR. Condor Project. Disponível em http://www.cs.wisc.edu/condor/. Acessado em
maio de 2007.
COSM. The Cosm Project. Disponível em http://www.mithral.com/projects/cosm/.
Acessado em junho de 2007.
CPqD. Arquitetura de Referência – Sistema Brasileiro de Televisão Terrestre. Versão AA.
PD 30.12.34A.0001A/RT-13/AA. Campinas, CPqD. 2006a.
CPqD, Especificação Técnica de Referência. Versão AA. PD 30.12.34A.0001A/RT-14/AA.
Campinas, CPqD, 2006b.
CPqD, Mapeamento de demanda – Pesquisas de mercado e análise de tendências. Versão
AA. PD 30.12.36A.0002A/RT-03-AA. Campinas, CPqD, 2004.
83
CPqD. Panorama Mundial de Modelos de Exploração e Implantação. Versão AC. PD
30.12.36A.0002A/RT-04-AC. Campinas, CPqD, 2005.
DANTAS, Mário. Computação Distribuída de alto desempenho – Redes, clusters e grids
computacionais. Axcel Books do Brasil. 2005.
DOCSIS, 2007. DOCSIS – Cable Labs, Revolutionizing Cable Tecnologies. Disponível em
http://www.cablemodem.com/. Acessado em junho de 2007.
DQS. Distributed Queueing System. Disponível em
http://www.techtransfer.fsu.edu/showcase/dqs.html. Acessado em junho de 2007.
DSL. DSL Fórum. Disponível em http://www.dslforum.org/. Acessado em junho de 2007.
DVB. Digital Vídeo Broadcasting. Disponível em http://www.dvb.org/. Acessado em maio
de 2007.
ETSI EN 301 958 v1.1.1 (2002-03). Digital Vídeo Broadcasting (DVB); Interation Channel
for Digital Terrestrial Television (RCT) incorporating Multiple Access OFDM. 2002
FARIA, Gerard; SCALISE, Fabio. DVB-RCT: A standard for interactive DVB-T.
Disponível em http://www.broadcastpapers.com/whitepapers/DVB-RCT-A-standard-for-
interactive-DVB-T.cfm?objid=32&pid=235&fromCategory=53. Acessado em junho de 2007.
FIFA. Fifa.com. Disponível em http://www.fifa.com/. Acessado em maio de 2007.
FLYNN, M. Some Computer Organizations and Their Effectiveness, IEEE Transaction on
Computers, Vol. C-21, pp. 94. 1972.
GINGA. Middleware Ginga. Disponível http://www.ginga.org.br/. Acessado em junho de
2007.
GLOBUS. The Globus Alliance. Disponível em http://www.globus.org/. Acessado em maio
de 2007.
84
GRID ENGINE. Sun Grid Engine 6.1. Disponível em
http://www.sun.com/software/gridware/. Acessado em junho de 2007.
GRIDBUS. The GRIDS Lab and The Gridbus Project. Disponível em
http://www.gridbus.org/. Acessado em junho de 2007.
GPRS. GPRS Tutorial. Disponível em http://www.comtechm2m.com/m2m-
technology/gprs-tutorial.htm. Acessado em junho de 2007.
GSM. GSM World – the website of the GSM Association. Disponível em
http://www.gsmworld.com/index.shtml. Acessado em junho de 2007.
HOLANDA, Giovanni Moura de. Os desafios da TV Digital no Brasil: interatividade e
inclusão. Disponível em
http://www.abtu.org.br/eventos/seminario_tvdigital/Apres_interatividade_CPqD_dez04.pdf.
Acessado em 14 de abril de 2007.
HSPA. High Speed Packet Access – Mobile boradband today. Disponível em
http://hspa.gsmworld.com/. Acessado em junho de 2007.
IBGE, Instituto Brasileiro de Geografia e Estatísitica. Pesquisa Nacional por Amostra de
Domicílios de 2005. Disponível em
http://www.ibge.gov.br/home/estatistica/populacao/trabalhoerendimento/pnad2005/default.shtm.
Brasília. 2005.
IBGE, Instituto Brasileiro de Geografia e Estatísitica. Estimativas Populacionais com data
de referencia em 01 de julho dos respectivos anos e Taxas Médias Geométricas de Crescimento
Anual (%). Disponível em
ftp://ftp.ibge.gov.br/Estimativas_Projecoes_Populacao/Estimativas_1980_2010/Estimativas_e_taxa
s_1980_2010.zip. Acessado em julho de 2007.
INTERACTIVE TV WEB. Globally Executable MHP. Disponível em
http://www.interactivetvweb.org/tutorial/mhp/gem.shtml. Acessado em junho de 2007a.
85
INTERACTIVE TV WEB. Using the return channel : Interactive TV Web. Disponível em
http://www.interactivetvweb.org/tutorial/mhp/returnchannel.shtml. Acessado em junho de 2007b.
IPM, Instituto Paulo Montenegro. INAF – Índice de Alfabetismo Funcional. Disponível em
www.ipm.org.br. Acessado em maio de 2007.
LINFO. The Linux Information Project – PSTN Definition. Disponível em
http://www.bellevuelinux.org/pstn.html acessado em junho de 2007.
LOADLEVELER. Tivoli Workload Scheduler LoadLeveler. Disponível em http://www-
03.ibm.com/systems/clusters/software/loadleveler.html. Acessado em junho de 2007.
MHP. GEM – Globally Executable Multimedia Home Platform. Disponível em
http://www.mhp.org/mhp_technology/gem/. Acessado em junho de 2007.
MORIS, Steven; SMITH-CHAIGNEAU, Anthony. Interactive TV Standards, a guide to
MHP, OCAP and JavaTV. Focal Press, 2005.
NQS. Network Queueing System. Disponível em http://umbc7.umbc.edu/nqs/nqsmain.html.
Acessad em junho de 2007.
OPENMOSIX. An Open Source Linux Cluster Project. Disponível em
http://openmosix.sourceforge.net/. Acessado em maio de 2007.
PLATFORM. Platform Computing – Enterprise Grids Solutions – Grid Computing.
Disponível em http://www.platform.com/. Acessado em junho de 2007.
SOARES, Luiz Fernando Gomes; SOUZA Filho, Guido Lemos de. Interactive Television in
Brazil: System Software and the Digital Divide. Disponível em
http://www.ncl.org.br/documentos/EUROiTV2007.pdf. Acessado em junho de 2007.
TCP/IP GUIDE. The TCP/IP Architecture and the TCP/IP model. Disponível em
http://www.tcpipguide.com/. Acessado em junho de 2007.
86
UIT. ITU-R Document 11-3/3-E. Guide to Digital Terrestrial Television Broadcasting in the
VHF/UHF Bands. Genebra, Suíça. 1996. Disponível em
http://happy.emu.id.au/lab/tut/dttb/dttbtuti.htm - Acessado em fevereiro de 2007.
UMTS. UTMS World – News and information about 3G mobile networks. Disponível em
http://www.umtsworld.com/. Acessado em junho de 2007.
UNICAMP. Recomendações para o modelo de referência do Canal de Interatividade do
Sistema Brasileiro de TV Digital – CI-SBTVD. Versão 1.2. Campinas, Unicamp. 2005.
UNICORE. UniGrids. Disponível em http://www.unigrids.org/wpobjectives.html. Acessado
em junho de 2007.
UNION, Eupean Broadcasting. Digital Video Broadcasting (DVB); Multimedia Home
Platform (MHP) Specification 1.1.3. DVB Document A068 Rev 3. 2007 Disponível em
http://www.mhp.org/mhp_technology/mhp_1_1/. Acessado em junho de 2007.