Sistemas Multimídia Distribuídos Projeto Carlos A. G. Ferraz cagf@di.ufpe.br

Preview:

Citation preview

Sistemas Multimídia Distribuídos

ProjetoCarlos A. G. Ferraz

cagf@di.ufpe.br

ProjetoO projeto de SMD requer análise de

infra-estrutura de comunicações e redes gerência de caching compressão/descompressão mecanismos de indexação

Redes e Comunicações

Independência de localização Protocolos de rede e funções de

comunicação Independência de rede

Independência de Localização

Deve ser possível mover uma aplicação para outra localização sem ter que reconfigurar estações ou a rede

Referências para objetos usados pela aplicação devem ser livres da localização física exata do objeto

Independência de localização (cont.)

Independência é conseguida criando-se uma camada de abstração no endereçamento de objetos

Os usuários não devem se preocupar com onde os objetos se localizam, quantas cópias existem, ou se sempre acessam a mesma cópia do objeto

Protocolos e Funções

Padrões bem-definidos são necessários para interfaces da camada de rede, protocolos e funções de comunicação a importância disso se dá pelo fato da existência

de diferentes dispositivos, por exemplo

Independência de Rede Essencial para um sistema multimídia

distribuído de larga escala Muitas aplicações podem executar sobre uma

combinação de redes Ethernet 10/100 Mbps Token Ring 16 Mbps ATM 155/622 Mbps FDDI 100-300 Mbps

Gerência de cache

Área de estágio temporário O tamanho da cache e a duração da

permanência dos dados (ex.: imagens) dependem dos níveis de atividade de uma aplicação

Aplicação de imagens médicas

Cache para as seguintes atividades: scanning indexação e garantia de qualidade apresentação

Exemplo (cont.) Em aplicações onde scanning é realizado como uma função

separada de grande volume, os requisitos de desempenho e armazenamento são os seguintes (exemplo):

10.000 imagens por dia armazenamento por 2 dias para permitir análises sobre imagens recentes

compressão 30:1 armazenamento por imagem comprimida

a 300 dpi - 50 Kbytes a 400 dpi - 80 kbytes

descompressão e apresentação dentro de 3 seg.

O armazenamento precisa de aproximadamente 1,6 Gbytes por 2 dias (2 x 10.000 x 80 Kbytes) - em discos magnéticos de alta velocidade

A cache é uma área que armazena temporariamente as imagens antes que sejam checadas (qualidade), indexadas e arquivadas (em discos óticos)

em alguns casos o controle de qualidade e a indexação são realizados durante a fase de scanning

Exemplo (cont.)

Uso de cache por objetos multimídia

Desempenho de mídia ótica é menor que o de mídia magnética por isso ainda há problemas na apresentação de

mídias contínuas uma cache (em meio magnético) permite prefetching para melhorar o desempenho

A cache é usada para minimizar atrasos percebidos pelo usuário

Caching (cont.) Localização da cache é um aspecto

importante do ponto de vista de desempenho são necessários grandes volumes de discos de

alta velocidade pode-se localizar em um servidor de cache

central ou no nó da captura ou no nó da base de dados

Compressão Uma imagem não comprimida (400 dpi - 3300x4400

(14,96 milhões) pixels ~1,87 Mbytes) pode levar ~10seg para ser transmitida em uma rede Ethernet

Esta mesma imagem comprimida para ~100KB leva menos de 1seg - um desempenho aceitável

os efeitos são ainda melhores quando se considera esquemas de compressão com perda como JPEG e MPEG

Compressão (cont.) A localização do hw/sw de compressão /

descompressão é uma importante decisão no projeto de sistemas multimídia distribuídos normalmente a compressão é feita na entrada dos

dados a compressão pode ser feita durante a captura (“on the

fly”) ou por um servidor de compressão separado

Compressão (cont.) Compressão “on the fly”

o dispositivo de entrada deve esperar que o sistema complete a compressão para iniciar a nova sessão de captura

se o hw de compressão não puder manter a velocidade, pode-se perder informação deixando o fluxo ininteligível

observa-se que este esquema não é apropriado para fluxo de vídeo

Compressão (cont.)

Servidor de compressão armazena grande quantidade de informação não

comprimida (“buffer”) para então comprimi-la atraso inicial como servir bem a vários clientes?

Descompressão

Pode-se dar nos seguintes locais: estação de trabalho com facilidades de

descompressão por hw ou sw servidor de objetos multimídia servidor de descompressão dedicado

Compressão (cont.)Considerações sobre caching e armazenamento

Caching objetos comprimidos x descomprimidos: razões para comprimir:

objetos multimídia podem ser muito grandes objetos podem ficar na cache por mais tempo transmissão não causa impacto na rede

não-comprimidos: desempenho estações clientes podem não ser equipadas com hw e sw de

descompressão

Indexação

Um índice é muito menor do que um objeto e pode ser procurado/encontrado rapidamente

Tipos de indexação: Identificação de objeto Baseada em conteúdo

Indexação por Identificação de Objeto

Localiza um objeto multimídia que pode ser incluído em um documento hipermídia

A identificação pode consistir de um nome de arquivo único

O documento container só precisa ter uma referência para o servidor do objeto e a ID do objeto naquele servidor (como em páginas Web)

Indexação baseada em Conteúdo Marcadores podem ser colocados no início de uma seção

ou para marcar um local de interesse especial Os marcadores são armazenados como uma parte do

objeto multimídia no mesmo objeto ou em um objeto de referência

Vendo os índices (marcadores) o usuário pode recuperar apenas a seção que lhe interessa, e não o objeto como um todo - muito útil para gravações de áudio, voz e vídeo Ex: sistema de anotação

Sincronização de Áudio e Imagem Além dos fluxos de entrada serem

separados, o armazenamento de componentes de som e vídeo pode ser separado para otimizar o playback dos dois tipos de objetos uma justificativa é o fato de que componentes

de som e imagem usam diferentes algoritmos de descompressão e hardware diferentes

Recommended