A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Multimédia Distribuídos Computação em Sistemas Distribuídos IST – MEIC 2002/2003 Pedro António M5157.

Apresentações semelhantes


Apresentação em tema: "Sistemas Multimédia Distribuídos Computação em Sistemas Distribuídos IST – MEIC 2002/2003 Pedro António M5157."— Transcrição da apresentação:

1 Sistemas Multimédia Distribuídos Computação em Sistemas Distribuídos IST – MEIC 2002/2003 Pedro António M5157

2 Computação em Sistemas Distribuídos 2002/ Conteúdo Características dos Sistemas Multimédia Audio, Video,... Entrega de dados em Tempo-Real, no momento certo Gestão da Qualidade de Serviço (QoS) Negociação e Garantias de QoS Controlo de Admissão Formato do tráfego Leaky bucket Token bucket Gestão de Recursos Escalonamento de recursos Adaptação à QoS Scaling Filtragem

3 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Palavras Chave

4 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Sistema Multimédia Distribuído Arquitectura típica Processamento de streams de dados (audio, video) Transferência da origem (câmara, microfone) Entrega/Consumo no destino (ecrã, coluna)

5 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Sistemas Multimédia Dados Multimédia Streams contínuas de dados Video e Audio digital Exemplos de Aplicações de Multimédia Distribuídas: BD de Video Telefone via Internet Video-conferências No entanto, a qualidade do audio e video nem sempre é satisfatória... Redes actuais best-effort Sem garantia de largura de banda ou latência Viáveis nas redes e sistemas actuais!

6 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Sistemas Multimédia Exemplo de Aplicações Multimédia mais exigentes: Video conferência de larga escala TV digital TV interactiva Sistemas de Vigilância Exigências: Entrega a tempo das streams Multimédia Streams de video e audio são consumidos em tempo real Sistemas Multimédia são sistemas tempo real Realizar tarefas e devolver resultados de acordo com um escalonamento determinado exteriormente Estão para além das capacidades das redes e tecnologias de SD actuais!

7 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Sistemas Tempo-Real Exemplo de Aplicações Tempo-Real actuais: Aviação Controlo de tráfego aéreo Controlo de processos de produção Área dos telefones Não satisfazer os deadlines pode ser crítico em aplicações Multimédia Serviço de video-on-demand Aplicações de conferência Medicina remota - Qtd de dados reduzida! - Deadlines complicados são pouco frequentes! - Garantir que os requisitos para o pior caso são cumpridos!

8 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Características dos dados O utilizador tem a percepção de dados contínuos Fluxo multimédia Time-based (dados entregues nos momentos exactos) Bulky (transferência de dados em grande quantidade) Compressão (reduzir requisitos de largura de banda) 10x ou 100x GIF, TIFF, JPEG, MPEG-1, MPEG-2, MPEG-4 Codec (Coders/Decoders) Hardware (placas de video) Software (maior flexibilidade) MPEG (Moving Picture Experts Group) Compressão complexa; Descompressão mais simples

9 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Características dos dados Compressão Problema: Largura de Banda limitada Audio Qualidade de CD : amostras por segundo com16 bits por amostra, som stereo 44100*16*2 = Mbps Para uma música de 3 minutos: 1.441*180 = 254 Mb = MB Video Para imagens 320*240 com 24-bit de cor 320*240*24 = 230KB/imagem 15 frames/seg: 15*230KB = 3.456MB Video de 3 minutos: 3.456*180 = 622MB FUNDAMENTAL A EXISTÊNCIA DE COMPRESSÃO!

10 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Características dos dados Taxa de dados (aproximado) Sample/frame frequência tamanho Telefone64 kbps8 bits8000/seg Som CD1.4 Mbps16 bits44,000/seg TV video Standard (descomprimido) 120 Mbps até 640x 480 pixelsx 16 bits 24/seg TV video Standard (MPEG-1 comprimido) 1.5 Mbpsvariável24/seg HDTV video (descomprimido) 1000–3000 Mbps até 1920x 1080 pixelsx 24 bits 24–60/seg HDTV video (MPEG-2 comprimido) 10–30 Mbpsvariável24–60/seg

11 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Gestão QoS Gestão da QoS Gestão e atribuição de recursos de modo a oferecer garantias de entrega a tempo Garantias que os recursos necessários vão ser atribuídos e escalonados nos momentos necessários

12 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Gestão QoS Gerir atribuição de recursos Largura de banda de rede Recursos computacionais Aspectos dinâmicos relacionados com a variação do número de participantes Considerar diversas actividades paralelas (largura de banda video; conversação; processamento de texto; programa de desenvolvimento) Requisitos específicos da Multimédia Sincronização do meio de diversas streams Sincronização externa de video-conferência com outros dados (animações, simulações, whiteboards, documentos partilhados, etc.)

13 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Gestão QoS Responsabilidade do Gestor da QoS Negociação da QoS Aplicações requisitam recursos O gestor QoS concede-os caso estejam disponíveis Caso contrário, tem de haver nova negociação Controlo de admissão Avaliação positiva Recursos reservados (Contrato de Recursos) Contrato de Recursos: Recursos reservados; Tempo limite; etc. Alterações notificação do gestor QoS Diminuição das necessidades Libertar Recursos

14 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Largura de Banda Taxa de fluxo de dados de um componente Latência Tempo necessário para a transferência dum elemento de dados individual numa stream Depende do volume de outros dados existentes no sistemas e de outras características de carga Jitter 1ª derivada da latência Taxa de Perdas Intervalo de tempo no qual se espera que ocorra uma falta Entregas tardias perdem o seu valor Abandonar os dados quando é impossível entregá-los a tempo Ambientes QoS geridos na perfeição não ocorrem perdas Entregas a tempo de todos os dados por vezes não é possível (reserva de recursos que excedem as necessidades)

15 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Estes 3 parâmetros descrevem: As características das streams num determinado ambiente Stream de video (aplicação de video conferência) LB média = 1.5Mbps; Atraso = 150ms; Perdas aceitáveis = 1 em 100 A capacidade dos recursos em transportar streams Rede LB = 64Kbps; Algoritmo de queing – Atrasos < 10ms; Perdas < 1 em 10 6 Especificação dos parâmetros QoS para streams Estabelecidos explicitamente LB: 50 Mbps; Atrado: 150 ms; Perdas: < 1 em 10 3 Estabelecidos implicitamente A LB da rede resulta da compressão da saída de uma câmara

16 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Especificação da Largura de Banda Problemas Compressão depende do conteúdo Diferentes padrões de tráfego (caracterizar Burstiness) Especificar valores máximos, médios e mínimos Burstiness Parâmetro adicional, para além da taxa e do tamanho dos dados N.º máximo de elementos que podem chegar antes do tempo Quantidade de espaço do buffer para evitar perdas Modelo LBAP (linear-bounded arrival processes) N.º máximo de mensagens numa stream durante um intervalo de tempo t = Rt + B (R – taxa; B – burstiness)

17 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Especificação da Latência Streams O processamento de uma frame de uma stream deve acompanhar a taxa de chegada de frames Exceder a capacidade do buffer Aplicações de video-conferência Evitar atrasos inferiores a 150 ms (percepção humana de conversação) Aplicação de stored video Resposta a comandos 500 ms Jitter Variação no período entre a entrega de 2 frames adjacentes Manter uma taxa regular sem variações Resolvido utilizando buffers

18 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Especificação da Taxa de Perdas Mais difícil de especificar Resultados probabilisticos Buffer overflow Mensagens atrasadas Cálculos baseados em piores casos Diferenciar aplicações com a mesma LB e a mesma Latência

19 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Formação de Tráfego Uso de buffers de saída de modo a suavizar o fluxo de dados A LB fornece uma aproximação do padrão de tráfego Quanto mais se aproximar da descrição, melhor se consegue tratar o tráfego Inserir buffer na origem para estabilizar a LB Token generator

20 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Leaky bucket Elimina padrão de tráfego bursty O tamanho do buffer define a quantidade máxima que uma stream pode estar segura sem perder elementos Taxa de saída inferior a um valor máximo A LB é delimitada em qualquer intervalo de tempo Token bucket Tolera bursts maiores quando o tráfego está inactivo Tokens gerados a uma taxa constante Tokens removidos após o envio Dados de tamanho S podem ser enviados se existirem S tokens no balde

21 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Especificação de fluxo Flow spec – conjunto de parâmetros QoS Exemplos: RFC 1363 – 11 valores de 16-bit LB, Atraso, Perdas SRP – burstiness workahead RFC 1190 – Protocolo ST-II (Internet Stream Protocol)

22 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Procedimentos de Negociação da QoS Os componentes de uma stream podem encontrar-se em vários nós (de um Sistema Multimédia Distribuído) Necessário um gestor de QoS em cada nó Origem Destino A origem inicia a negociação enviando um flow spec para o gestor QoS em cada nó O gestor QoS verifica a disponibilidade dos recursos numa BD Se existirem outros sistemas envolvidos na aplicação, o flow spec é encaminhado para o próximo nó onde residem os recursos O flow spec percorre todos os nós até ao destino final Se o sistema conseguir oferecer a QoS requisitada é enviada uma notificação de volta para a origem Negociações concorrentes...

23 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Negociação da QoS Procedimentos de Negociação da QoS Necessidades de QoS dinâmicas das aplicações Em vez de um valor booleano (Sim/Não) Especificar um valor desejado e o pior valor para cada parâmetro QoS Destinos heterogéneos Inapropriado atribuir os mesmos valores de QoS O destino deve receber o melhor QoS possível Protocolos de Negociação Iniciados pelo Emissor SRP (Scalable Resource Reservation Protocol) ST-II (Internet Stream Protocol) RCAP (Real-time Channel Administration Protocol) Protocolos de Negociação Iniciados pelo Receptor RSVP (Resource Reservation Protocol)

24 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Controlo de Admissão Controlar o acesso a recursos: Evitar o seu carregamento Proteger de pedidos que não conseguem satisfazer Violação da garantia de QoS negar pedidos Um esquema de Controlo de Admissão é baseado em conhecimento de: Capacidade total do sistema Carregamento gerado pela aplicação Os requisitos de LB especificados pela aplicação: Máxima, Mínima e/ou Média Recursos com pontos de acesso distribuídos (LAN) Entidade de controlo de admissão central Algoritmo de controlo de admissão distribuído

25 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Controlo de Admissão Reserva de Largura de Banda Requisitar Largura de Banda máxima para uso exclusivo Utilizado por aplicações que não se conseguem adaptar a diferentes níveis de QoS Possibilidade de desperdícios de LB Pedidos cancelados embora pudessem ser satisfeitos Multiplexagem estatística Sub-utilização de recursos... permitir acessos em excesso! Não é baseado no pior caso Garantias estatísticas ou fracas No entanto, podem provocar a falha de um serviço de qualidade Hipótese: Quando uma stream envia uma quantidade grande de dados, existe outra que envia uma quantidade pequena de dados

26 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Gestor de QoS Aplicação especifica a necessidade QoS ao gestor da QoS SimNão SimNão Flow spec Contrato de Recursos Controlo de Admissão Negociação QoS O gestor da Qos avalia as novas necessidades e avalia os recursos disponíveis. SUFICIENTE? Reservar recursos requisitados Permitir a execução da aplicação A aplicação executa-se com os recursos contratados Negociar com a aplicação a redução de recursos necessários. ACORDO? Não permitir que a aplicação se execute A aplicação notifica ao gestor da QoS do aumento das necessidades

27 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Gestão de Recursos Recursos suficientes Desempenho Disponibilidade dos recursos Escalonamento Escalonamento de Recursos Atribuição de recursos por prioridade Capacidade de resposta Imparcialidade Deadlines na entrega de dados Multimédia Algoritmos de escalonamento tempo-real Classes Streaming Stored Audio and Video Streaming Live Audio and Video Real-Time Interactive Audio and Video

28 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Gestão de Recursos Escalonamento de Recursos Escalonamento justo Imparcialidade Prevenir mau funcionamento (consumo excessivo de LB) Round-robin Aplicado a streams da mesma classe Mesma LB a cada stream EDF (Earliest-deadline-first) Um deadline associado a cada um dos items de trabalho O item com o deadline mais cedo vai primeiro Escalonamento óptimo na atribuição de um único recurso Escalonamento RM (rate-monotonic) Prioridades de acordo com a taxa da stream Escalonamento óptimo para situações de LB até 69% A restante LB pode ser atribuída a aplicações não tempo-real

29 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Adaptação à QoS Adaptação às alterações do nível de QoS Desempenho Diversos níveis de qualidade da apresentação Deitar fora pedaços de informação Som amostras independentes (podem ser identificadas) Video Motion JPEG Frames independentes MPEG Frames dependentes (processo de codificação) LB insuficiente + Não deitar fora dados = Mais atrasos Inaceitável em aplicações interactivas

30 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Adaptação à QoS Se a adaptação for realizada no destino da stream A carga em qualquer recurso congestionado no sistema não é reduzida e a sobrecarga persiste Scaling Adaptar uma stream à LB disponível no sistema antes de entrar num recurso congestionado Adapta-se melhor quando as streams são amostras Codificar, comprimir, descomprimir, descodificar

31 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Adaptação à QoS Diferentes métodos de scaling e diferentes granularidades (Video) Temporal Reduzir resolução, diminuir n.º de frames por intervalo de tempo Espacial Reduzir o n.º de pixels em cada imagem Frequência Alterar o algoritmo de compressão aplicado à imagem Amplitude Reduzir a profundidade da cor de cada pixel Espaço de cores Reduzir o n.º de entradas no espaço de cores Utilizar combinações destes métodos se necessário!

32 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Adaptação à QoS Sistema com Scaling Processo monitor no destino Processo scaler na origem Funcionamento Monitorização de tempos de chegada de mensagens numa stream no processo monitor Mensagens atrasadas indicam congestionamento (no monitor) O monitor envia de uma mensagem scale-down à origem A origem reduz a LB da stream Após um certo período de tempo, a origem aumenta a scale da stream Se o congestionamento persistir, o monitor detecta o atraso e diminui o scaling da stream Problemas desta abordagem Scale-ups desnecessários Oscilações no sistema

33 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Adaptação à QoS Ilustração Monitor (Destino) Scaler (Origem) Streams Scale-down Reduz LB Aumenta LB (Scale-up)

34 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Adaptação à QoS Scaling As mensagens de scale-down são passadas à origem Assim, todos os destinos ficam com a qualidade degradada No entanto, alguns destinos não teriam problemas em tratar a stream original Filtragem Oferecer a melhor QoS possível a cada destino aplicando o scaling em cada nó relevante Conjunto hierárquico de sub-sistemas Filtrar perto da origem Origem Destino LB Elevada LB Média LB Baixa

35 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Caso de Estudo – Tiger Servidor de ficheiros video – Tiger Microsoft Research Labs Objectivos Video-on-demand para um número elevado de utilizadores Filmes pagos BD de filmes Disponibilidade e Resposta rápida Filmes com grande popularidade QoS Frames a uma taxa constante Jitter – quantidade disponível de buffer no cliente Taxa de perdas reduzida

36 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Caso de Estudo – Tiger Objectivos (Cont.) Escalável e Distribuído Arquitectura extensível Suportar até 10 mil clientes em simultâneo Hardware de custo reduzido Utilizar PCs existentes Tolerância a faltas Não notificar degradações após falhas (de um único servidor) Balanceamento da carga pelos servidores Transferência de streams com LB elevada de discos para a rede

37 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Caso de Estudo – Tiger Arquitectura PCs normais; Placas de rede Ethernet e ATM Controlador: Pedidos dos clientes; Gestão do escalonamento

38 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Caso de Estudo – Tiger Armazenamento Carga Várias streams do mesmo filme Streams de diversos filmes Cada filme está distribuído em vários discos A falha de um disco falta de uma sequência de todos os filmes Striping Filme dividido em blocos (1 segundo; ~500KB) Conjunto de blocos distribuído por vários discos (7 mil 2 horas) Mirroring Dividir cada bloco em várias partes (secundárias) Estas partes são distribuídas (factor decluster = 4 a 8) Tolerância a faltas

39 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Caso de Estudo – Tiger Escalonamento distribuído Lista de slots (bloco do filme) Ler do disco e colocá-lo na rede ATM 1 slot por cada potencial cliente (viewer) Estados Endereço do cliente; Ficheiro que está a ler o filme; Posição no ficheiro; Número de sequência; Informação slot 0 viewer 4 slot 1 free slot 2 free slot 3 viewer 0 slot 4 viewer 3 slot 5 viewer 2 slot 6 free slot 7 viewer 1 block play timeT block service timet state 210

40 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Caso de Estudo – Tiger QoS garantida pelos protocolos de rede ATM Cliente – buffer suficiente para armazenar os 2 primeiros blocos Um bloco que está a ser mostrado Outro que está a chegar pela rede Resultados obtidos 1º protótipo desenvolvido em PCs Pentium 133MHz; 48MB RAM; 3 discos 2GB SCSI; rede ATM; Windows NT 68 clientes 1 falha de um PC (3 discos) taxa de perdas = 0.02% Expansão possível estimada 1000 cubs 30 a 40 mil clientes

41 Pedro António M5157Computação em Sistemas Distribuídos 2002/ Referências Coulouris, Dollimore and Kindberg; Distributed Systems: Concepts and Design; Edition 3, © Addison-Wesley 2001 Capítulo 15: Distributed Multimedia Systems


Carregar ppt "Sistemas Multimédia Distribuídos Computação em Sistemas Distribuídos IST – MEIC 2002/2003 Pedro António M5157."

Apresentações semelhantes


Anúncios Google