aspectos para o desenvolvimento de sistemas hipermídia ...

  • Published on
    10-Jan-2017

  • View
    218

  • Download
    3

Embed Size (px)

Transcript

  • ASPECTOS PARA O DESENVOLVIMENTO DE

    SISTEMAS HIPERMDIA DISTRIBUDOS

    4.1 - INTRODUO Sistemas hipermdia utilizam tanto mdias discretas (como texto e grficos) quanto mdias

    contnuas (como udio e vdeo). Os dados de mdia contnua (ou dados baseados no tempo) so

    gerados a uma determinada taxa e devem ser reproduzidos nessa mesma taxa, ou seja, existe um

    prazo (deadline) para que o dado seja exibido sem perda na qualidade [Buf94a]. Por exemplo, se

    uma aplicao deseja exibir quadros de vdeo a uma taxa de 30fps e em algum momento da

    transmisso (imaginando que a exibio remota) essa taxa cai, ocorrero tremores na imagem

    (jitter) que est sendo exibida. As tecnologias atuais encontram algumas dificuldades em suportar

    essas caractersticas de tempo real dos dados de mdia contnua, de forma que muitas pesquisas

    tm sido feitas no sentido de superar essas dificuldades provendo um gerenciamento eficiente

    desses dados.

    Este captulo discute vrios aspectos importantes para o desenvolvimento de sistemas

    hipemdia distribudos, que so: qualidade de servio, servio de vdeo sob demanda, problemas

    dos sistemas operacionais convencionais para suportar multimdia, problemas das redes

    convencionais para suportar multimdia, armazenamento e acesso a dados multimdia, busca e

    recuperao de dados e distribuio de objetos

    4.2 - QUALIDADE DE SERVIO Servidores de dados multimdia devem suportar transmisso a clientes heterogneos e

    garantir que o vdeo seja apresentado com a mesma qualidade com a qual foi gerado. Isto requer

    parmetros de qualidade de servio (Quality of Service - QoS). Qualidade de servio a

    parametrizao, para o sistema, da vontade ou necessidade do usurio [Nah95]. Por exemplo, se

    4

  • Aspectos para o Desenvolvimento de Sistemas Hipermdia Distribudos

    32

    um cliente deseja transmitir um vdeo no formato NTSC, a taxa de frames deve ser de 30fps, e os

    sistemas devem garantir que essa taxa seja mantida.

    Os parmetros de QoS podem estar relacionados com a aplicao, com o sistema

    operacional, com a rede ou com o dispositivo (figura 4.1) [Taw93].

    Servios de negociao e traduo so necessrios para realizar comunicao de

    parmetros de QoS. A negociao visa estabelecer valores de parmetros comuns entre os

    servios do usurio e do fornecedor e garantir acesso (atravs de reserva de recursos e testes de

    admisso [Buf94a]) a recursos escassos, reservando somente a demanda real [Nah95]. A traduo

    necessria pois diferentes clientes possuem diferentes parmetros de QoS [Nah95].

    O gerenciamento de QoS para aplicaes de mdia contnua pode ser subdividido em 2

    esquemas de controle: Esttico e Dinmico [Buf94a]. No esquema de controle esttico, o

    usurio simplesmente especifica o nvel de QoS no momento da criao de uma determinada

    sesso, sendo que esse nvel ser mantido at o final da mesma. Por outro lado, o esquema de

    controle dinmico permite que o sistema ou o usurio modifique o nvel de QoS durante o

    andamento da sesso. Essa mudana pode ser solicitada pelo gerente de QoS - quando a

    disponibilidade dos recursos do sistema torna-se baixa - ou pela aplicao do usurio - quando o

    mesmo deseja melhorar (aumentar) seu nvel de QoS ou at mesmo degrad-lo.

    Figura 4.1 - Nveis de QoS [Taw93].

  • Aspectos para o Desenvolvimento de Sistemas Hipermdia Distribudos

    33

    4.3 - SERVIO DE VDEO SOB DEMANDA Aplicaes de vdeo sob demanda (Video-on-Demand - VOD) incluem televiso interativa

    (ITV - Interactive TeleVision) e aplicaes corporativas/educacionais. O foco da ITV a

    apresentao de vdeo a partir de uma coleo restrita de vdeos. O foco das aplicaes

    corporativas/educacionais a apresentao aleatria de dados de vdeo, selecionados de uma

    grande coleo com vdeos de tamanhos variados. Devido ao grande volume desses dados para

    armazenamento, um sistema VOD tipicamente usa uma combinao de discos magnticos com

    armazenamento tercirio [Ber95].

    No desenvolvimento de um sistema VOD, pesquisadores tm que resolver muitos

    problemas. Primeiro, o sistema deve estar apto a localizar um vdeo desejado. Segundo, o sistema

    deve armazenar e gerenciar uma grande coleo de dados de vdeos estruturados. Terceiro, o

    sistema deve transportar um vdeo selecionado para o usurio final e execut-lo [Ber95].

    Para localizar um vdeo desejado, uma interface amigvel deve ser criada. A interface ir

    suportar pesquisas em uma base de metadados (seo 4.7), e ento ajudar o usurio a encontrar o

    vdeo no repositrio. O projeto da interface de pesquisa deve considerar quais tipos de pesquisas

    devem ser suportadas e como as pesquisas devem ser especificadas.

    O armazenamento e o gerenciamento de vdeo digital difcil devido ao enorme tamanho

    desse material e do custo resultante desse armazenamento. Similarmente, o transporte e a

    execuo de dados de vdeo requer um certo custo por stream porque os dados de vdeo

    requerem entrega em tempo real e consomem considervel largura de banda de rede quando

    transmitidos [Ber95].

    Os aspectos de localizao, armazenamento, gerenciamento e transporte so discutidos em

    mais detalhes nas prximas sees desse captulo.

    Servios de vdeo interativo so similares ao servio de difuso de TV. A diferena que a

    interface da TV foi projetada para suportar muitos canais simultneos sobre um mesmo banco de

    dados. No sistema de TV tradicional, cada estao realiza a sua programao simultaneamente

    com outras estaes, e o usurio seleciona um canal especfico. Em contraste, um sistema

    interativo faz com que toda a programao seja apresentada ao usurio sem nenhuma restrio. O

    usurio pode selecionar qualquer parte da programao a qualquer hora [Lit94].

  • Aspectos para o Desenvolvimento de Sistemas Hipermdia Distribudos

    34

    De acordo com o nvel de interatividade, os servios de vdeo podem ser classificados em

    [Flu95]:

    Servios Broadcast (No-VOD), similar aos canais de televiso, em que o usurio um

    participante passivo e no possui nenhum controle sobre a sesso.

    Servio Pay-Per-View (PPV), em que o usurio paga por uma programao especfica,

    similar ao servio existente em CATV (Cable TV).

    Servio Quasi Video-On-Demand (Q-VOD), em que os usurios so agrupados pelo

    interesse comum que possuem. Os usurios possuem um controle rudimentar, ativado

    por chaveamento para os diferentes grupos.

    Servios Near Video-On-Demand (N-VOD), em que funes de avanar e voltar so

    simuladas por transies em um intervalo de tempo discreto (da ordem de 5 minutos).

    Isto feito utilizando vrios canais que possuem a mesma programao, porm em

    tempos diferentes.

    Servio True Video-On-Demand (T-VOD), em que o usurio possui total controle

    sobre a apresentao. O usurio tem todas as funes de VCR (Video Cassete

    Recorder), incluindo avanar, voltar, congelar e posicionar diretamente. T-VOD aloca

    para cada usurio um canal exclusivo; com isso, o nmero de usurios do servio fica

    limitado pelo nmero de canais disponveis. T-VOD necessita de um sinal bidirecional

    entre o usurio e o controle central. Servios T-VOD so essenciais para aplicaes

    como jogos interativos, onde todas as aes de um jogador so vistas pelos outros

    jogadores.

    Os servios interativos podem ser usados nas mais diversas aplicaes, como visto na

    tabela 4.1.

    Aplicao Descrio Movies-on-Demand (Filmes sob Demanda)

    O cliente pode selecionar e ver o vdeo com total capacidade de interao.

    Vdeo Game Interativo Pode-se jogar sem ter que adquirir uma cpia do jogo. Noticirio de TV interativo O cliente capaz de selecionar uma notcia bem como seu nvel de

    detalhe. Catlogos interativos O cliente pode examinar e comprar produtos . Aprendizado a distncia Um estudante se inscreve em um curso, remotamente e pode ter

    preferncias e horrios individuais.

    Tabela 4.1 - Aplicaes de servios interativos [Flu95].

  • Aspectos para o Desenvolvimento de Sistemas Hipermdia Distribudos

    35

    Um sistema VOD pode receber acessos simultneos de centenas de usurios com

    diferentes preferncias. O sistema deve ser capaz de garantir uma qualidade de servio satisfatria

    a todos os clientes. Um cenrio tpico de um VOD consiste em um banco de dados local,

    conectado a uma casa por uma rede de comunicao. Na casa do usurio, h uma interface de

    rede e um monitor. A interao do usurio com o sistema pode ser feita atravs de um controle

    remoto ou um teclado de computador. Esse sistema consiste na informao/arquivo de

    programao armazenada em um servidor central. Essa informao transmitida a servidores

    regionais atravs de uma rede de alta velocidade (a rede de alta velocidade interliga os servidores

    regionais), ficando disposio dos usurios. Os usurios ligam-se aos servidores regionais.

    Sesses VOD so geralmente longas e requerem alta banda passante para transmisso,

    utilizando por isso tcnicas de compresso de vdeo para diminuir o nmero de bits a serem

    transmitidos. Algoritmos e tcnicas para compresso de vdeo (como por exemplo MPEG, JPEG,

    H.261) foram discutidos no captulo 2.

    4.4 - SISTEMA OPERACIONAL O sistema operacional controla todos os componentes de um sistema computadorizado,

    como por exemplo CPU, memria principal, armazenamento e todos os dispositivos de entrada e

    sada. Ele fundamental para que um sistema multimdia tenha um bom desempenho. Sistemas

    operacionais convencionais foram projetados para oferecer um uso justo dos recursos do sistema

    entre os programas concorrentes, porm, tais sistemas sofrem a falta de servios de tempo real.

    Por exemplo, a abstrao de processo UNIX [Tan93] um conceito muito til do ponto de vista

    de programao, mas a troca de contexto dos processos demanda um custo de tempo muito alto

    para aplicaes de mdia contnua. Esse alto custo leva a escolha de pacotes de threads do nvel

    do usurio que possuem uma troca de contexto mais suave [Tan93, Cou94].

    4.4.1 - PROBLEMAS COM OS SISTEMAS OPERACIONAIS CONVENCIONAIS

    Os sistemas operacionais convencionais apresentam problemas para o suporte de

    aplicaes de mdia contnua. Segundo Buford [Buf94a] tais problemas so:

  • Aspectos para o Desenvolvimento de Sistemas Hipermdia Distribudos

    36

    Latncia de Interrupo. A grande latncia das interrupes uma das razes pelas quais

    os sistemas operacionais convencionais no suportam muito bem atividades de tempo real.

    Aplicaes de mdia contnua produzem um nmero freqente de interrupes no kernel

    resultando em pesadas trocas de contexto.

    Todo kernel no preemptivo prov latncia de interrupo muito grande. O

    processamento dos eventos de tempo real que disparam uma nova thread (ou um novo processo)

    deve esperar at que o processamento atual do kernel termine, e isto demora vrios

    milissegundos.

    Existem trs abordagens para reduzir a latncia de interrupes no kernel. A primeira

    torna o kernel altamente preemptivo modificando sua estrutura interna. A segunda adiciona um

    conjunto de pontos de preempo no kernel existente. A terceira abordagem converter o kernel

    atual em um programa do usurio e execut-lo no topo de um microkernel.

    Gerenciamento de Inverso de Prioridades. Quando um programa de tempo real

    compartilha os mesmo recursos com um programa no tempo real, ocorrem casos onde o

    primeiro deve esperar pelo trmino do segundo. Por exemplo, em aplicaes que

    compartilham o mesmo servidor de rede, um pacote de alta prioridade pode ter que

    esperar at que todos os pacotes de menor prioridade, que j estavam na fila, completem

    sua execuo. Essa inverso de prioridade causa um tempo de espera no previsvel

    acarretando problemas como o jitter.

    Gerenciamento de Deadline e Recuperao. Ao contrrio de aplicaes de tempo

    real, muitas aplicaes de mdia contnua possuem um deadline inerentemente mais suave.

    Por exemplo, pode-se prosseguir uma videoconferncia mesmo que a imagem de vdeo

    mais recente no possa ser processada a tempo. A perda de um deadline no leva ao caos

    total, porm a notificao da perda uma informao importante, pois baseada nessa

    informao a aplicao pode querer mudar o nvel de QoS. Quando a aplicao perde um

    deadline devido sobrecarga ou a erros de hardware ou software, o programa do usurio

    deve estar apto a tomar uma deciso. A deciso geralmente uma recuperao que,

    freqentemente, deve executar com uma prioridade maior que a atividade principal, logo

    necessita aumentar sua prioridade primeiro.

  • Aspectos para o Desenvolvimento de Sistemas Hipermdia Distribudos

    37

    Gerenciamento de Qualidade de Servio e Controle de Admisso. Sistemas

    operacionais convencionais no possuem um mecanismo para manter um nvel de QoS

    para aplicaes de mdia contnua ou esquemas de gerenciamento e preveno de

    sobrecarga (atravs de tcnicas de controle de admisso), o que pode acarretar problemas

    de espera (delay) no predizvel e jitter [Buf94a, Ste95a].

    4.4.2 - GERENCIAMENTO DE RECURSOS

    Num sistema multimdia, as garantias de tempo para o processamento de mdia contnua

    devem considerar todo o sistema de software e hardware ao longo de toda a rota de

    comunicao. Os requerimentos dependem do tipo de mdia e da natureza das aplicaes. Em um

    sistema multimdia distribudo, vrias aplicaes competem por recursos, os quais merecem uma

    alocao cuidadosa. O gerenciamento do sistema deve ento empregar algoritmos de

    escalonamento apropriados para garantir que os recursos sejam devidamente alocados s

    aplicaes de acordo com suas necessidades.

    Uma possvel realizao de alocao e gerenciamento de recursos baseia-se na interao

    entre clientes e seus respectivos gerentes de recursos. O cliente seleciona o recurso e requisita a

    alocao do mesmo declarando suas necessidades atravs de uma especificao de QoS.

    Primeiramente, o gerente de recursos checa a utilizao de seu recurso e decide se a solicitao de

    reserva pode ser atendida ou no. Todas as reservas existentes so mantidas e, caso seja

    necessrio, h negociao com outros gerentes de recurso (atravs de protocolos de reserva de

    recurso, como ST-II) [Ste95].

    4.4.3 - SUPORTE ARQUITETURAL

    Existem dois modelos de arquitetura para o ncleo de um sistema operacional: o kernel

    monoltico e o microkernel. O kernel monoltico (como o UNIX) mantm todos os servios

    oferecidos pelo sistema em seu interior. J um microkernel implementa apenas os servios bsicos

    como gerncia de espao de endereamento, memria virtual, ciclos de processador e

    interrupes. Todos os outros servios, como servio de arquivos e interface com o usurio,

    esto implementados fora do kernel, no espao do usurio [Tan93, Cou94].

  • Aspectos para o Desenvolvimento de Sistemas Hipermdia Distribudos

    38

    Uma caracterstica chave no projeto de um sistema distribudo a flexibilidade [Cou94,

    Mul93]. Um microkernel tem a vantagem de ser altamente modular: existe uma interface bem

    definida para cada servio, e todo servio igualmente acessvel para qualquer cliente,

    independente de sua localizao. Alm disso, fcil instalar, remover ou depurar novos servios,

    sem a necessidade de parar o sistema para reinicializar o kernel (como o caso do kernel

    monoltico). essa habilidade de adicionar, retirar ou modificar servios que prov ao

    microkernel flexibilidade [Tan93]. Essa flexibilidade, aliada extensibilidade e facilidades...

Recommended

View more >