Distribuição de Mídia Contínua C onceitos Básicos

29
Distribuição de Mídia Contínua Conceitos Básicos Jussara M. Almeida Março 2004

description

Distribuição de Mídia Contínua C onceitos Básicos. Jussara M. Almeida. Mar ço 2004. Organização. Mídia Contínua (MC) Características Principais de MC Arquiteturas para Distribuição de MC Redes de Distribuição de Conteúdo (CDN) Arquiteturas Par a Par (P2P) - PowerPoint PPT Presentation

Transcript of Distribuição de Mídia Contínua C onceitos Básicos

Page 1: Distribuição de Mídia Contínua C onceitos Básicos

Distribuição de Mídia Contínua

Conceitos Básicos

Jussara M. Almeida

Março 2004

Page 2: Distribuição de Mídia Contínua C onceitos Básicos

Organização

• Mídia Contínua (MC)

• Características Principais de MC

• Arquiteturas para Distribuição de MC

– Redes de Distribuição de Conteúdo (CDN)

– Arquiteturas Par a Par (P2P)

• Questões Centrais para Distribuição de MC

Page 3: Distribuição de Mídia Contínua C onceitos Básicos

Mídia Contínua

• Objetos transmitidos à taxa de visualização– Vídeo e áudio, principalmente

• Fluxo contínuo (streaming) = sobreposição da reprodução dos dados no receptor com a transmissão do emissor

• Fluxo de áudio e vídeo = sequência de sons ou imagens estendida por um período de tempo

Page 4: Distribuição de Mídia Contínua C onceitos Básicos

Hierarquia do Conteúdo de Mídia Contínua

• Pixels: elemento de figura

• Quadro: grade bidimensional de pixels– Uma amostra da imagem/som em movimento capturada

em um instante específico– Tamanho do arquivo = # pixels em cada dimensão

• Fluxo de vídeo e áudio : sequência de quadros com o passar do tempo

• Sessão: múltiplos fluxos sincronizados (vídeo e áudio)

• Apresentação: conjunto de sessões de multimídia

Page 5: Distribuição de Mídia Contínua C onceitos Básicos

1. Captura

2. Codificação

3. Armazenamento (sob demanda)

4. Remessa

5. Decodificação (cliente)

• Compactação: explorar redundância entre sequência de amostras ou quadros– Redução do tamanho por um fator de 25 ou 100– Vídeo: Real Video, AVI, QuickTime, MPEG– Áudio: RealAudio, WAV, MP3

Estágios de um Fluxo de Mídia Contínua

Page 6: Distribuição de Mídia Contínua C onceitos Básicos

Qualidade de Mídia Contínua• Compromissos quanto a qualidade

– Menor taxa de quadro 24 ou 30 quadros/seg distraem olho humano

– Pequena dimensão• Arquivos com poucas polegadas de altura e/ou

largura

– Resolução inferior• Representação dos pixels ou compactação

• Ser humano mais sensível à qualidade do vídeo– Áudio exige menos largura de banda

Page 7: Distribuição de Mídia Contínua C onceitos Básicos

Características de Mídia Contínua

• Grandes arquivos (10MB – 1GB)

• Demanda por largura de banda alta e sustentada

– Áudio : 64 kbps

– Vídeo: variado• Alta qualidade: 1-4 Mbps (150 MB para vídeo de 5

min)

• Restrições de tempo real para a transmissão

– Atrasos e perdas (a seguir)

• Acesso parcial ou interativo (operações de VCR) – pausa, avanço (rápido), retrocesso (rápido)

Page 8: Distribuição de Mídia Contínua C onceitos Básicos

Características de Mídia Contínua

• Atrasos (jitter)

– Buffers nos clientes

Cliente armazena

dados recebidos

Usuário visualiza primeiro

bloco de dados

Tem

po

Page 9: Distribuição de Mídia Contínua C onceitos Básicos

Características de Mídia Contínua

• Perda de dados

– Uso do protocolo UDP (diferente de HTTP)

• Remessa confiável via protocolo TCP pode introduzir atrasos ainda maiores

– Recuperação:

• Partes de quadro com base nos outros pixels do quadro

– Error concealment

• Pacotes: remessa de dados redundantes

– Forward Error Correction (FEC)

Page 10: Distribuição de Mídia Contínua C onceitos Básicos

Variable Bitrate vs. Constant Bitrate

• Quadros consumidos à taxa constante– Variable bitrate (VBR)– Para manter tráfego CBR: buffer no cliente

• Para evitar interrupção e compensar variações na taxa de chegada de quadros

• Técnicas para suavização (smoothing)– Escalonamento da transmissão dos pacotes – Aplicadas no servidor origem ou em nó

intermediário– Uso de buffers nos clientes

Page 11: Distribuição de Mídia Contínua C onceitos Básicos

Recuperação de Mídia Contínua

• Via HTTP (protocolo tradicional da Web)

– Vantagem:

• Tratamento semelhante a conteúdo Web tradicional

– Desvantagens:

• Atraso na partida do player de mídia

• Cópia de dados entre o browser e o player

• Intercalação de fluxos de áudio e vídeo

• Overhead do TCP

• Dificuldade de funções de interatividade (pulos)

Page 12: Distribuição de Mídia Contínua C onceitos Básicos

Recuperação de Mídia Contínua

• Contato direto com servidor multimídia

– Cliente contacta servidor usando HTTP

– Servidor retorna URL: mms://media.foo.com/clip

– Browser chama cliente player

– Player contacta diretamente servidor usando protocolo de streaming específico

• RTSP, RTP, RTCP

Page 13: Distribuição de Mídia Contínua C onceitos Básicos

Protocolos para Streaming

• Transporte de dados para um ou mais receptores, tipicamente via UDP

– Real Time Transport Protocol (RTP):

• Pacotes com marca de hora, # de sequência e info sobre emissor

– Real Time Transport Control Protocol (RTCP)

• Feedback do receptor, sincronismo

Page 14: Distribuição de Mídia Contínua C onceitos Básicos

Protocolos para Streaming• Estabelecimento de Sessão

– Real Time Streaming Protocol (RTSP)

• Requisição sob demanda a um servidor multimídia

– Equivalente a HTTP

• Abstração de um controle remoto

– Seleciona mecanismo e protocolo de transporte, e # porta

– Protocolo com estado (operações VCR)

– Session Initiation Protocol (SIP)

• Telefonia sobre IP

– Session Announcement Protocol (SAP)

• Aplicações de difusão (rádio online)

Page 15: Distribuição de Mídia Contínua C onceitos Básicos

Distribuição de Mídia Contínua

• Aplicações:

– Educação à distância, treinamento em empresas– Rádios virtuais, publicidade e notícias– TV Digital, tele-conferencia– Jogos distribuidos e realidade virtual

Internet

Servidor Origem

Page 16: Distribuição de Mídia Contínua C onceitos Básicos

Arquiteturas para Distribuição de Mídia

Contínua• Redes de Distribuição de Conteúdo (CDNs)

– Arquitetura hierárquica– Replicação de conteúdo em servidores intermediários

(proxy) próximo aos clientes

• Sistemas Par a Par (P2P)– Arquitetura descentralizada– Clientes atuam como servidor repassando conteúdo

previamente recebido para outros clientes

• Distribuição:– Sob demanda vs. ao vivo

Page 17: Distribuição de Mídia Contínua C onceitos Básicos

Redes de Distribuição de Conteúdo (CDNs)

Rede Remota

Rede“Loca

l”

Rede“Loca

l”

Rede“Loca

l”

Servidor Origem

Servidor Proxy

Servidor Proxy

Servidor Proxy

Page 18: Distribuição de Mídia Contínua C onceitos Básicos

Sistemas Par a Par

• Gnutella, KaZaa, eDonkey

Page 19: Distribuição de Mídia Contínua C onceitos Básicos

Distribuição de Mídia Contínua ao Vivo em Sistemas Par a

ParServidor Origem

Page 20: Distribuição de Mídia Contínua C onceitos Básicos

Questões Centrais para Distribuição de Mídia Contínua

• Qual protocolo deve ser utilizado para transmissão do conteúdo para os clientes?

– Transmissão independente de fluxos (Unicast)

– Compartilhamento de fluxos (Multicast)

• Qual conteúdo deve ser replicado em cada servidor proxy (ou nos clientes de rede P2P)?

– Políticas de replicação ou caching

• Como o conteúdo deve ser armazenado nos discos?

– Métodos para armazenamento em disco

Page 21: Distribuição de Mídia Contínua C onceitos Básicos

• Quantos servidores proxy devem ser instalados e onde eles devem ser instalados?

– Localização dos servidores

• Para qual servidor as requisições de cada cliente devem ser enviadas?

– Seleção dos servidores

• Qual rota deve ser tomada pela resposta (vídeo/áudio) do servidor ao cliente?

– Roteamento das respostas

Questões Centrais para Distribuição de Mídia Contínua

(cont.)

Page 22: Distribuição de Mídia Contínua C onceitos Básicos

• Transmissão de Fluxos Independente

– Unicast

– Crescimento linear na demanda por largura de banda do servidor e da rede

– Baixa escalabilidade

• Ex: 1 arquivo MPEG de 1 hora: 1.5 Mbps

1500 fluxos simultâneos : 2.25 Gbps

Transmissão de Mídia Contínua

Page 23: Distribuição de Mídia Contínua C onceitos Básicos

• Transmissão com Compartilhamento de Fluxos

– Multicast

• Um único fluxo enviado para múltiplos clientes• IP ou a nível de aplicação

– Redução significativa na demanda por largura de banda

– Melhora QoS (qualidade observada pelos clientes)

– Duas Classes

• Técnicas baseadas em difusão

• Técnicas orientadas às requisições dos clientes– Distribuição sob demanda

Transmissão de Mídia Contínua

Page 24: Distribuição de Mídia Contínua C onceitos Básicos

Compartilhamento de Fluxos: Técnicas Baseadas em Difusão

• Periodic Broadcast

• Princípio Básico

– Cada fluxo é dividido em segmentos que podem ser simultaneamente transmitidos periodicamente em um conjunto de k canais diferentes

• Largura de banda fixa, independente da taxa de chegada de requisições

– Eficiente para carga alta

• Diversas variações do protocolo

Page 25: Distribuição de Mídia Contínua C onceitos Básicos

Compartilhamento de Fluxos: Técnicas Orientadas às Requisições dos

Clientes

Janela batching

Fluxo multicastcom objeto

requisitado por r0-r3

r0 r1 r2 r3

TempoDados

rece

bid

os

pelo

s cl

iente

s• Batching

• Cliente recebe apenas um fluxo• Introdução de atrasos adicionais para os usuários• Nao provê distribuição sob demanda verdadeira

Page 26: Distribuição de Mídia Contínua C onceitos Básicos

Compartilhamento de Fluxos: Técnicas Orientadas às Requisições dos

Clientes• Piggybacking

– Mudança dinâmica da taxa de transmissão e exibição para permitir que um fluxo possa alcançar e se juntar a outro fluxo

– Baseado em stream merge

Page 27: Distribuição de Mídia Contínua C onceitos Básicos

Piggybacking

Stream merge

Servidor acelera s1

Servidor retarda s0

r0

s0

r1

s1

Tempo

Dad

os

rece

bid

os

pelo

s cl

ien

tes

Page 28: Distribuição de Mídia Contínua C onceitos Básicos

Compartilhamento de Fluxos: Técnicas Orientadas às Requisições dos

Clientes• Piggybacking

– Provê vídeo sob demanda verdadeiro

– Cliente escuta/recebe apenas um fluxo

– Nao introduz atrasos adicionais

– Requer hardware especialiado para suportar mudanças dinâmicas na velocidade do canal

– Eficiência limitada pela mudança máxima tolerada por um usuário (± 5%)

Page 29: Distribuição de Mídia Contínua C onceitos Básicos

Compartilhamento de Fluxos: Técnicas Orientadas às Requisições dos

Clientes• Patching e Hierarchical Stream Merging

• Princípio comum:

– Cliente escuta a mais de um fluxo simultaneamente

– Dados recebidos em um fluxo são visualizados imediatamente

– Dados recebidos no outro fluxo são armazenados para visualização futura

• Requer buffer no cliente