redes multimídia objetivos do capítulo: entender os requisitos de serviço para redes com...

58
Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar o máximo do serviço de melhor esforço da Internet Aprender como a Internet poderá evoluir para um melhor desempenho dos serviços multimídia Resumo do capítulo: aplicações de rede com multimídia aúdio e vídeo de tempo contínuo armazenados RTSP aplicações interativas de tempo-real Exemplo: telefonia na Internet RTP H.323 e SIP além do melhor esforço programando e verificando serviços integrados serviços diferenciados

Upload: internet

Post on 17-Apr-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Redes Multimídia

Objetivos do Capítulo: entender os requisitos de

serviço para redes com multimídia

atraso taxa de transmissão perda

aprender como aproveitar o máximo do serviço de melhor esforço da Internet

Aprender como a Internet poderá evoluir para um melhor desempenho dos serviços multimídia

Resumo do capítulo: aplicações de rede com

multimídia aúdio e vídeo de tempo contínuo

armazenados RTSP

aplicações interativas de tempo-real

Exemplo: telefonia na Internet RTP H.323 e SIP além do melhor esforço

programando e verificando serviços integrados serviços diferenciados

Page 2: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Multimídia em Redes Características Fundamentais: Tipicamente sensíveis ao

atraso. Mas tolerante a perdas:

perdas esparsas causam pequenas falhas que podem passas desapercebidas.

Antítese de dados (programas , informações bancárias, etc.), que não toleram falhas mas aceitam atrasos sem problemas.

Multimídia também é chamada de “mídia de tempo contínuo”

Classes de aplicações MM: Aúdio e vídeo de tempo

contínuo armazenados Audío e vídeo de tempo

contínuo ao vivo Vídeo interativo em

tempo-real

Page 3: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Multimídia em redes (2)

Aplicações MM com aúdio e vídeo armazenadosClientes solicitam arquivos com aúdio e vídeo de servidores, recebem a informação pela rede e a apresentam Interativo: o usuário pode controlar a operação (similar a um VCR: pause, resume, fast forward, rewind, etc.) Atraso: a partir do pedido do cliente até o início da apresentação pode ser de 1 a 10 segundos

Tempo-real unidirecional: similar à TV convencional, mas

a transferência de informação é feita pela Internet

Não interativo, apenas escutar e ver

Tempo-Real Interativo: Conferência de aúdio ou de

vídeo Mais exigente nos requisitos

de atraso que o tempo real unidirecional por causa da necessidade de interatividade em tempo real

Vídeo: < 150 ms aceitável Aúdio: < 150 ms bom, <400

ms aceitável

Page 4: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Multimídia em redes (3): desafios

Arquitetura TCP/UDP/IP fornece melhor esforço, não garantias sobre o atraso ou sobre a variação de atraso.

Aplicações de tempo contínuo com atrasos inicias de 5-10 segundos são comuns hoje me dia, mas o desempenho deteriora se os enlaces estão congestionados (transoceânicos)

Aplicações Interativas e,m tempo real têm requisitos rígidos para atraso de pacotes e variação de atraso (jitter).

Jitter é a variabilidade do atraso de pacotes dentro do mesmo feixe de pacotes.

Projeto de aplicações multimídia seria fácil se houvesse várias classes de serviço. Mas na Internet pública

todos os pacotes recebem igual tratamento.

Pacotes contendo aúdio e vídelo interativo de tempo real permanecem nas filas, como todos os outros.

Esforços vêm sendo desenvolvidos para prover serviços diferenciados.

Page 5: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Multimídia em redes (4): aproveitando ao máximo o “melhor

esforço”Para reduzir o impacto do

serviço de melhor esforço da Internet, nós podemos:

Usar UDP para evitar o TCP e sua fase de partida lenta…

Armazenar o conteúdo no cliente e controlar a apresentação para remediar o jiter

Podemos acrescentar marcas de tempo nos pacotes para que o receptor saiba quando reproduzí-los.

Adaptar o nível de compressão à taxa de transmissão disponível

Nós podemos transmitir pacotes redundantes para atenuar os efeitos das perdas de pacotes.

Nós discutiremos todos esses “truques”.

Page 6: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Como a Internet deveria evoluir para suportar melhor as aplicações multimídia?

Filosofia de serviços Integrados: Mudar os protocolos da

Internet de forma que as aplicações possam reservar uma banda de transmissão fim-a-fim

Necessita de um novo protocolo que reserva banda de transmissão

Deve modificar as regras de escalonamento nos roteadores para poder honrar às reservas

Aplicação deve fornecer à rede uma descrição do seu tráfego e deve posteriormente respeitar esta descrição.

Exige um novo e complexo software nos hosts e nos roteadores

Filosofia de serviços Diferenciados Exige menos mudanças na infra-estrutura da Internet, embora forneça serviços de primeira e de segunda classe.Datagramas são marcados.Usuários pagam mais para enviar e receber pacotes de primeira classe.ISPs pagam mais aos provedores de backbone para enviar e receber pacotes de primeira classe.

Page 7: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Filosofia Laissez-faire Não há reservas, nem

marcações de datagramas Quando a demanda aumenta,

mais banda de transmissão deve ser provida

Coloque armazenadores de conteúdo nas bordas da rede:

ISPs e provedores de backbone acrescentam caches

Provedores de conteúdo armazenam conteúdo em nós CDN

P2P: escolhe o parceiro mais próximo com o conteúdo desejado

Redes privadas virtuais (VPNs)

Reserva blocos permanentes de banda de transmissão para empresas.

Roteadores distinguem o tráfego de cada VPN usando endereços IP

Roteadores usam esquemas de escalonamento especiais para fornecerem a banda de transmissão reservada.

Como a Internet deveria evoluir para suportar melhor as aplicações multimídia?

Page 8: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Aúdio e Vídeo Armazenados

Mídia de tempo contínuo armazenada:Arquivos de Aúdio e de Vídeo são armazenados em servidores Usuários solicitam os arquivos de aúdio e de vídeo por demanda.Aúdio/vídeo são aprsentandos, digamos, 10 s após o pedido.Interatividade (pausa, deslocamento da apresentação) é permitido.

Transdutor de Mídia (player): remove jitter descomprime correção de erros interface gráfica de

usuário com controles para interatividade

Plug-ins podem ser usados para embutir o transdutor de mídia na janela de um browser.

Page 9: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Informações de tempo contínuo em servidores Web (1)

Os arquivos de aúdio e de vídeo são armazenados em servidores Web

abordagem ingênua browser pede o arquivo com

uma mensagem HTTP do tipo pedido

Servidor Web envia o arquivo na mensagem HTTP do tipo resposta

O cabeçalho “content-type” indica uma codificação apropriada para aúdio e vídeo

browser dispara o transdutor de mídia e passa o arquivo para ele

transdutor de mídia apresenta o arquivo

• Maior problema: o transdutorde mídia interage com o servidorWEB através do Web browser que atua como intermediário.

cliente servidor

Page 10: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Alternativa: estabelecer conexão entre o servidor e o transdutor

browser Web solicita e recebe um meta arquivo (um arquivo descrevendo o objeto) ao invés de receber o próprio arquivo;

O cabeçalho “Content-type” indica uma específica aplicação de aúdio e vídeo

Browser dispare o transdutor de mídia e passa o meta arquivo para ele

Transdutor estabelece uma conexão TCP com o servidor e envia a ele a mensagem HTTP do tipo pedido.

Algumas preocupações: O transdutor de mídia se

comunica usando HTTP, que não foi projetado mpara suportar comandos de controle de apesentação

Pode desejar enviar o aúdio e o vídeo sobre UDP

Informações de tempo contínuo em servidores Web (2)

(1) pedido/resposta HTTPpor um meta arquivo

(3) arquivo solicitado é enviadousando o HTTP

(2) meta arquivo

transdutor de mídia

Page 11: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Obtendo o vídeo de um servidor dedicado

Esta arquitetura permite o uso de outros protocolos (além do HTTP) entre o servidor e o transdutor de mídia

Pode também usar UDP ao invés do TCP

(1) HTTP pedido/respostapara o arquivo descritor

da apresentação

(2) arquivo descritor

(3) arquivo de aúdioe vídeo pedido e

enviado

cliente servidores

transdutor de mídia

servidorde vídeo

Page 12: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Opções ao utilizar um servidor de vídeo

Enviar a uma taxa constante sobre UDP. Para reduzir os efeitos do jitter, armazenar e exibir com uma atraso entre 1 e 10s. Taxa de transmissão = d, igual à taxa de codificação. Taxa de enchimento x(t) é igual a d, ecxeto quando há perdas.

Use TCP, e envie na máxima taxa possível sobre TCP; TCP retransmite quando um erro é encontrado; x(t) agora flutua, e pode tornar-se muito maior que d. Decodificador deve usar um buffer muito maior para compensar a taxa de entrega do TCP.

buffercliente

área comvídeo

taxa de chegada= x(t)

da rede

taxa de leitura = d

decodificaçãoe apresentação

Page 13: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Real Time Streaming Protocol: RTSP

HTTP Projetistas do HTTP tinham

mídias fixas em mente: HTML, imagens, applets, etc.

HTTP não pretende tratar mídia contínua armazenada (isto é, aúdio, vídeo, apresentações SMIL, etc.)

RTSP: RFC 2326 Protocolo de aplicação do

tipo cliente-servidor. Permite ao usuário

controlar apresentações de mídia contínua: voltar ao início, avançar, pausa, continuar, seleção de trilha, etc…

O que ele não faz: não define como o aúdio e

o vídeo é encapsulado para transmissão sobre a rede

não restringe como a mídia contínua é transportada: pode usar UDP ou TCP

não especifica como o receptor armazena o aúdio e o vídeo

RealNetworks Servidor e transdutor

usam RTSP para enviar informações de controle de um para o outro

Page 14: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

RTSP: controle for a da banda

FTP usa um canal de controle “fora-da-banda”:

Um arquivo é transferido sobre um canal.

Informação de controle (mudanças de diretório, remoção de arquivos, trocas de nomes, etc.) é enviada sobre uma conexão TCP separada.

Os canais “dentro-da-banda”e “fora-da-banda”usam diferentes números de portas.

Mensagens RTSP també são enviadas “for a-da-banda”:

As mensagens de controle RTSP usam diferentes números de portas em relação ao fluxo de dados de mídia contínua, e, portanto, são enviados“fora-da-banda”.

O fluxo de dados de mídia contínua cuja estrutura de pacotes não é definida pelo RTSP, é considerada “dentro-da-banda”.

Se as mensagens do RTSP devessem usar os mesmos números de portas do fluxo de mídia contínua, então as mensagens RTSP seriam consideradas como “intercaladas” com o fluxo de mídia contínua.

Page 15: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Iniciação do RTSP e controles de entrega

Cliente obtém uma descrição da apresentação multimídia, que pode consistir de vários fluxos de dados.

O browser chama o transdutor de mídia (aplicação auxiliar) com base no tipo de conteúdo da descrição da apresentação.

A descrição da apresentação inclui referências aos fluxos de mídia usando o método rtsp://

Transdutor envia o comando RTSP SETUP; servidor envia a resposta RTSP SETUP.

Transdutor envia o comando RTSP PLAY; servidor envia a resposta RTSP PLAY.

O servidor de mídia descarrega o fluxo de mídia.

Transdutor envia o comando RTSP PAUSE; o servidor envia a resposta RTSP PAUSE.

Transdutor envia o comando RTSP TEARDOWN; servidor envia a resposta RTSP TEARDOWN.

HTTP GET

SETUP

PLAY

media stream

PAUSE

TEARDOWN

mediaplayer

Webserver

mediaserver

Webbrowser

client server

presentation desc.

Transdutorde mídia

Servidorde mídia

cliente servidor

descr. apresent.

fluxo de mídia

Page 16: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Exemplo de Meta-arquivo

<title>Twister</title> <session> <group language=en lipsync> <switch> <track type=audio e="PCMU/8000/1" src = "rtsp://audio.example.com/twister/audio.en/lofi"> <track type=audio e="DVI4/16000/2" pt="90 DVI4/8000/1" src="rtsp://audio.example.com/twister/audio.en/hifi"> </switch> <track type="video/jpeg" src="rtsp://video.example.com/twister/video"> </group> </session>

Page 17: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Sessão RTSP

Cada sessão RTSP tem um identificador de sessão, que é escolhido pelo servidor.

O cliente inicia a sessão com o comando SETUP, e o servidor responde ao comando com um identificador.

O cliente repete o identificador de sessão em cada comando, até que o cliente encera a sessão com o comando TEARDOWN.

O número de porta do RTSP é 554.

RTSP pode ser usado sobre UDP ou TCP. Cada mensagem RTSP pode ser enviada numa conexão TCP separada.

Page 18: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

RTSP: exemplo de mensagens C: SETUP rtsp://audio.example.com/twister/audio RTSP/1.0 Transport: rtp/udp; compression; port=3056; mode=PLAY

S: RTSP/1.0 200 1 OK Session 4231

C: PLAY rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=0-

C: PAUSE rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=37

C: TEARDOWN rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231

S: 200 3 OK

Page 19: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

RTSP: cache de dados

O cache de mensagens de resposta RTSP faz pouco sentido.

Mas é desejável armazenar fluxos de mídia contínua próximos ao cliente.

Muito do controle de cache do HTTP/1.1 foi adotado pelo RTSP. Cabeçalhos e controle

de cache podem ser acrescentados às mensagens RTSP SETUP, sejam comandos ou respostas:

• If-modified-since: , Expires: , Via: , Cache-Control:

O servidor de cache pode manter somente segmentos de um dado fluxo de mídia.

O servidor de cache pode começar a servir um cliente com dados do seu cache local, e então conectar o servidor para obter material complementar, se possível sem introduzir pausas indevidas no cliente.

Quando o servidor original está enviando um fluxo de dados de mídia contínua para um cliente e este fluxo passa por um servidor de cache, o servidor pode usar o TCP para obter os dados; mas o servidor intermediário ainda envia as mensagens de controle RSTP para o servidor original.

Page 20: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Aplicações interativas em tempo-real

telefone PC-a-PC PC-a-telefone

Dialpad Net2phone

videoconferência Webcams

Vamos agora examinar um produto do tipo telefone PC-a-PC da Internet em detalhes

Page 21: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Telefonia Internet sobre melhor-esforço (1)

Melhor esforço atraso de pacotes, perdas

e variação de atraso (jitter)Exemplo de telefone Internet agora vamos examinar

como atrasos de pacotes, perdas e jitter são muitas vezes tratados num exemplo de telefonia IP.

As aplicações de telefonia na Internet geram pacotes durante momentos de atividade da voz

taxa de bits é 64 kbps nos intervalos de atividade

durante os intervalos de atividade a aplicação produz um bloco de 160 bytes a cada 20 ms (8 kbytes/s * 20 ms)

cabeçalho é acrescentado ao bloco; então bloco mais cabeçalho sáo encapsulados num pacote UDP e enviados

alguns pacotes podem ser perdidos e o atraso de pacote irá flutuar.

receptor deve determinar quando reproduzir um bloco e determinar o que fazer com um bloco faltante

Page 22: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Telefonia Internet (2)

perda de pacotes O segmento UDP é

encapsulado num datagrama IP

datagrama pode ser descartado por falta de espaço num roteador

TCP pode eliminar perdas, mas

retransmissões aumentam o atraso

O controle de congestio-namento do TCP limita a taxa de transmissão

Pacotes redundantes podem ajudar

atraso fim-a-fimacúmulo dos atrasos de trans-

missão, propagação, proces-samento e atrasos de filas

mais que 400 ms de atraso fim-a-fim compromete a interatividade; quanto menor o atraso melhor

variação de atraso considere dois pacotes

consecutivos num intervalo de atividade

espaçamento inicial é de 20 ms, mas o espaçamento no receptor pode ser maior ou menor que 20 ms

removendo o jitter número de seqüência marcas de tempo atrasando a reprodução

Page 23: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Telefonia Internet (3): atraso de reprodução fixo

Receptor tenta reproduzir cada bloco exatamente q ms depois que o bloco é gerado. Se o bloco tem marca de

tempo t, receptor usa o bloco no instante t+q .

Se o bloco chega após o instante t+q, receptor o descarta.

Números de seqüência não são necessários.

Estratégia permite pacotes pedidos.

Escolha do valor de q: q grande: menos perda

de pacotes q pequeno: melhor

controle da interatividade

Page 24: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Telefonia Internet (4): atraso de reprodução fixo

Transmissor gera pacotes a cada 20 ms durante os intervalos de atividade.

Primeiro pacote é recebido no instante r Primeira programação de reprodução: começa em p Segunda programação de reprodução: começa em p’

packets

tim e

packetsgenerated

packetsreceived

loss

r

p p '

playout schedulep - r

playout schedulep' - r

pacotesgerados

pacotesrecebidos

perda

progr. reproduçãop - r

progr. reproduçãop’ - r

tempo

pacotes

Page 25: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Atraso de reprodução adaptativo (1)

pacote ésimo- oreceber após rede na atraso do estimativa

pacote ésimo- o para rede da atraso

receptor no oreproduzid é pacote o qual no instante

receptor pelo recebido é pacote o qual no instante

pacote ésimo do tempode marca

id

itr

ip

ir

it

i

ii

i

i

i

• Estima o atraso da rede e ajusta o atraso de reprodução no início de cada intervalo de atividade.

• Intervalos de silêncio são aumentados e diminuídos.

• Blocos ainda são gerados a cada 20 ms nos intervalos de atividade.

Estimativa dinâmica do atraso médio no reeptor:

)()1( 1 iiii trudud

onde u é uma constante fixa (ex., u = 0,01).

Page 26: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

É também usual estimar a variância média do atraso, vi :

||)1( 1 iiiii dtruvuv

As estimativas de di e vi são calculadas para cada pacote recebido, embora elas sejam usadas apenas no início de um intervalo de atividade.

Para o primeiro pacotes de um intervalo de atividade, o instante de reprodução é:

iiii Kvdtp

onde K é uma constante positiva. Para este mesmo pacote, o atraso dereprodução é:

iii tpq

Para o pacote j no mesmo intervalo de atividade, o pacote deve serreproduzido em:

ijj qtp

Atraso de reprodução adaptativo (2)

Page 27: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Como saber se um pacote é o primeiro de um intervalo de atividade: Se nunca houvesse perdas o receptor poderia simplesmente olhar

nas marcas de tempo sucessivas. Se a diferença de marcas de tempo sucessivas for

maior que 20 ms, então temos o início de um intervalo de atividade.

Mas porque as perdas são possíveis, o receptor deve olhar tanto as marcas de tempo como os números de seqüência dos pacotes. Se a diferença de marcas de tempo sucessivas for

maior que 20 ms e não há pulos nos números de seqüência então tem-se o início de um intervalo de atividade.

Atraso de reprodução adaptativo (3)

Page 28: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Recuperação de perdas de pacotes (1)

Perdas: pacote nunca chega ou chega depois do seu tempo de reprodução programado

correção de erro de envio (FEC): esquema simples

para cada grupo de n blocos cria um bloco redundante realizando uma operação OU exclusivo entre os n blocos originais

envia os n+1 blocos, aumentando a banda passante por um fator de 1/n.

pode reconstruir os n blocos originais se houver no máximo um bloco perdido nos n+1 blocos enviados

Atraso de reprodução precisa ser definido para receber todos os n+1 pacotes

Compromisso: aumentar n, menor

disperdício de banda aumentar n, maior

atraso de reprodução aumentar n, maior a

probabilidade que dois ou mais blocos sejam perdidos

Page 29: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

2o, esquema FEC• enviar um fluxo demenor qualidade como“carona” • envia fluxo de aúdiode menor resolução comoa informação redundante• por exemplo, um fluxoPCM nominal a 64 kbpse um fluxo GSM redun-dante a 13 kbps.• Transmissor cria pacote tomando o blocon do fluxo nominal eanexando a ele o bloco(n-1) do fluxo redun-dante

• Sempre que ocorre perda não-consecutiva, o receptor pode esconder a perda. • Apenas dois pacotes precisam ser recebidos antesdo início da reprodução• Pode também anexar os blocos (n-1) e (n-2) do fluxode baixa qualidade

Recuperação de perdas de pacotes (2)

Fluxo original

Redundância

Perda de Pacote

Fluxo reconstruído

Page 30: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Intercalação blocos são quebrados em

unidades menores por exemplo, 4 blocos de

5 ms cada

intercalar os blocos como mostrado no diagrama

pacote agora contém unidades menores de diferentes blocos

Remontar os blocos no receptor

Se o pacote é perdido, ainda resta mais de cada bloco

Recuperação de perdas de pacotes (3)

Fluxo original

Fluxo intercalado

Perda de pacote

Fluxo reconstruído

Page 31: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Recuperação pelo receptor de fluxos de aúdio danificados

produzir uma substituição para um pacote perdido que seja similar ao pacote original

pode produzir bons resultados para baixas taxas de perdas e pacotes pequenos (4-40 ms)

estratégia mais simples: repetiçãon

estratégia mais complexa: interpolação

Recuperação de perdas de pacotes (4)

Page 32: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Real-Time Protocol (RTP) RTP especifica uma

estrutura de pacotes que transportam dados de aúdio e vídeo: RFC 1889.

pacote RTP oferece identificação do tipo de

carga numeração da seqüência

de pacotes marcas de tempo

RTP roda nos sistemas terminais.

os pacotes RTP são encapsulados em segmentos UDP

Interoperabilidade: se duas aplicações de telefonia IP usam RTP, então elas podem ser capazes de trabalhar juntas

Page 33: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

RTP roda em cima do UDP

As bibliotecas do RTP fornecem uma interface de camada de transporte que extendem o UDP:

• número de portas, endereços IP• verificação de erros dentro dos segmentos• identificação do tipo de carga • numeração da seqüência de pacotes• marcas de tempo Aplicação

Enlace

Física

camada detransporte

Page 34: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

RTP: Exemplo

Considere enviar 64 kbps de voz codificada em PCM sobre RTP.

A aplicação reúne dados codificados em blocos, por exemplo, a cada 20 ms = 160 bytes por bloco.

O bloco de aúdio, junto com o cabeçalho RTP forma o pacote RTP, que é encapsulado num segmento UDP.

O cabeçalho RTP indica o tipo de codificação de aúdio em cada pacote, os transmissores podem mudar a codificação durante a conferência. O cabeçalho RTP também contém os números de seqüência e marcas de tempo.

Page 35: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

RTP e QoS

RTP não fornece nenhum mecanismo para assegurar a entrega dos pacotes e dados no tempo correto, nem fornece outras garantias de qualidade de serviço.

O encapsulamento RTP é visto apenas nos sistemas finais -- ele não é percebido pelos roteadores intermediários.

Roteadores fornecem o serviço de melhor-esforço tradicional da Internet. Eles não fazem nenhum esforço especial para assegurar que os pacotes RTP cheguem no destino no momento correto.

A fim de fornecer QoS para uma aplicação, a Internet deve prover um mecanismo, tal como o RSVP, para que a aplicação possa reservar recursos da rede.

Page 36: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Fluxos RTP

RTP permite atribuir a cada fonte (por exemplo, uma câmara ou um microfone) o seu próprio fluxo de pacotes RTP independente. Por exemplo, para uma

videoconferência entre dois participantes, quatro fluxos RTP poderiam ser abertos: dois fluxos para transmitir o aúdio (um em cada direção) e dois fluxos para o vídeo (novamente, um em cada direção).

Contudo, algumas técnicas de codificação populares, incluindo MPEG1 e MPEG2 -- reúnem o aúdio e o vídeo num único fluxo durante o processo de codificação. Quando o aúdio e o vídeo são reunidos pelo codificador, então apenas um fluxo RTP é gerado em cada direção.

Para uma sessão multicast do tipo muitos-para-muitos, todos os transmissores e receptores tipicamente enviam seus fluxos RTP na mesma árvore de multicast com o mesmo endereço de multicast.

Page 37: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Cabeçalho RTP

Tipo de Carga (7 bits): Usado para indicar o tipo de codificação que está sendo usado no momento.

Se um transmissor muda o tipo de codificação durante uma conferência, o transmissor informa o receptor através deste campo de tipo de carga.

•Tipo de carga 0: PCM mu-law, 64 Kbps•Tipo de carga 3, GSM, 13 Kbps•Tipo de carga 7, LPC, 2.4 Kbps•Tipo de carga 26, Motion JPEG•Tipo de carga 31. H.261•Tipo de carga 33, MPEG2 video

Número de Seqüência (16 bits): O número de seqüência é incrementado de um a cada pacote RTP enviado; pode ser usado para detectar perdas de pacotes e para recuperar a seqüência de pacotes.

Tipo de CargaNúmero de Seqüência Marca de tempo

Identificadorsincronismo fonte

campos de miscelânias

Cabeçalho RTP

Page 38: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Campo de marca de tempod (32 bytes). Reflete o instante de amostragem do primeiro byte no pacote de dados RTP. O receptor pode usar esta marca de tempo para remover o jitter do pacote e para obter o sincronismo de reprodução. A marca de tempo é derivada do relógio de amostragem no transmissor. Como exemplo, para aúdio o relógio de marca de tempo

incrementa de um a cada intervalo de amostragem (por exemplo, cada 125 us para uma taxa de amostagem de 8 KHz); se a aplicação de aúdio geram blocos contendo 160 amostras codificadas, então a marca de tempo do RTP aumenta de 160 para cada pacote RTP quando a fonte está ativa. O relógio de marca de tempo continua a aumentar numa taxa constante mesmo quando a fonte está inativa.

campo SSRC (identificador de sincronismo fonte) (32 bits). Identifica a fonte do fluxo RTP. Cada fluxo numa sessão RTP deve ter um SSRC distinto.

Cabeçalho RTP (2)

Page 39: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Real-Time Control Protocol (RTCP)

Trabalha em conjunto com o RTP.

Cada participante de uma sessão RTP transmite periodicamente pacotes de controle RTCP para todos os outros participantes. Cada pacote RTCP contém relatórios do transmissor e/ou do receptor que são úteis para a aplicação.

As estatísticas incluem o número de pacotes enviados, número de pacotes perdidos, variação de atraso entre chegadas, etc.

Esta informação de realimentação para a aplicação pode ser usada para controle do desempenho e para fins de diagnóstico. O transmissor pode

mudar suas transmissões com base nestas informações de realimentação.

Page 40: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

RTCP - Continuação

- Para uma sessão RTP existe tipicamente um único endereço de multicast todos os pacotes RTP e RTCP pertencentes à sessão usam este endereço demulticast.

- Os pacotes RTP e RTCP são distintos um dos outros pelo uso de números de portas diferentes.

- Para limitar o tráfego, cada participante reduz seu tráfego RTCP quando onúmero de participantes da conferência aumenta.

Page 41: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Pacotes RTCP

Pacotes de relatório do receptor:

fração de pacotes perdidos, último número de seqüência, variância média do atraso entre chegadas.

Pacotes de relatório do transmissor:

SSRC do fluxo RTP, o tempo corrente, o número de pacotes enviados e o número de bytes enviados.

Pacotes de descrição da fonte:

endereço de e-mail do transmissor, o nome do transmissor, o SSRC do fluxo RTP associado. Esses pacotes fornecem um mapeamento entre o SSRC e o nome do usuário ou do host.

Page 42: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Sincronização de Fluxos

RTCP pode ser usado para sincronizar diferentes fluxos de mídia numa sessão RTP.

Considere uma aplicação de videoconferência para a qual cada transmissor gera um fluxo RTP para aúdio e um para vídeo.

As marcas de tempo nestes pacotes são vinculadas aos relógios de amostragem de vídeo e de aúdio, mas não são vinculadas a um relógio de tempo real (isto é, a um relógio de parede).

Cada pacote relatório-do-transmissor RTCP contém para o último pacote gerado no fluxo RTP associado, a marca de tempo do pacote RTP e o instante de tempo real no qual o pacote foi criado. Desta forma o pacote RTCP relatório-do-transmissor associa o relógio de amostragem com o relógio de tempo real.

Receptores podem uar esta associação para sincronizar a reprodução de aúdio e de vídeo.

Page 43: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Controle de Banda do RTCP

O RTCP procura limitar seu tráfego a 5% da banda passante da sessão.

Por exemplo, suponha que existe um transmissor enviando vídeo com uma taxa de 2 Mbps. Então o RTCP procura limitar seu tráfego a 100 Kbps.

O protocolo dá 75% desta taxa, ou 75 kbps, para os receptores; ele dá os 25% restantes da taxa, isto é, 25 kbps, para o transmissor.

Os 75 kbps dedicados aos receptores são divididos de forma igual entre todos os receptores. Assim, se existem R receptores, cada receptor consegue enviar tráfego RTCP a uma taxa de 75/R kbps e o transmissor envia tráfego RTCP a uma taxa de 25 kbps.

Um participante (um transmissor ou receptor) determina o período de transmissão de pacotes RTCP dinamicamente calculando o tamanho médio do pacote (durante toda a sessão) e dividindo o tamanho médio do pacote RTCP pela sua taxa alocada.

Page 44: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

H.323

Visão geral Terminal H.323 Codificação H. 323 Gatekeeper Gateway Codecs de Aúdio Codecs de Vídeo

Page 45: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Visão Geral (1) Base para conferência de

aúdio e de vídeo através de redes IP.

Objetiva comunicação de tempo real (ao invés de por demanda)

Recomendação quarda-chuva do ITU-T.

Escopo largo: equipamentos

isolados (ex., telefones Web)

aplicações em PCs conferências ponto-a-

ponto e multiponto

A especificação H.323 inclui: Como os equipamentos

terminais fazem e recebem chamadas.

Como os equipamentos terminais negociam codificações comuns de aúdio e vídeo.

Como os blocos de aúdio e vídeo são encapsulados e enviados para a rede.

Como o aúdio e o vídeo são sincronizados entre si.

Como os equipamentos terminais se comunicam com seus respectivos gatekeepers.

Como os telefones IP e os telefones PSTN/ISDN convencionais se comunicam.

Page 46: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Chamadas telefônicas Chamadas de vídeo Conferências Quadros brancos

Todos os terminais suportando H.323

Internet

Telefone "Ethernet"

MS NetmeetingNetSpeak WebPhone

Visão Geral (2)

Page 47: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

H.323 SS7, Inband

Internet PSTNGateway

Gatekeeper

Visão Geral (3)

Page 48: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Terminais H.323 Devem Suportar:

G.711 - padrão do ITU para compressão de voz

RTP - protocolo para encapsular blocos de dados de mídia em pacotes

H.245 - Protocolo de controle “fora-da-banda” para controlar a mídia entre os terminais H.323.

Q.931 - Um protocolo de sinalização para estabelecer e encerrar chamadas.

RAS (Registration/Admission/Status) protocolo de canal - Protocolo para comunicação com o gatekeeper (se um gatekeeper está presente)

Page 49: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Terminal H.323

Page 50: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Codificação H.323

Aúdio: Terminais H.323 devem

suportar o padrão G.711 para compressão de voz e transmissão a 56/64 kbps.

H.323 está considerando exigir a codificação G.723 = G.723.1, que opera a 5.3/6.3 kbps.

Opcionais: G.722, G.728, G.729

Vídeo Capacidade de vídeo para

um terminal H.323 são opcionais.

Qualquer terminal H.323 com capacidade de vídeo deve suportar o formato QCIF H.261 (176x144 pixels).

O suporte a outros esquemas da recomendação H.261 é opcional: CIF, 4CIF e 16CIF.

H.261 é usado com canais de comunicação cuja taxa de transmissão é múltipla de 64 kbps.

Page 51: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Gerando fluxo de pacotes de aúdio no H.323

Fonte deAúdio

Codificação:ex., G.711 ou G.723.1

encapsulamentode pacote RTP

portaUDP

Internet ouGatekeeper

Page 52: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Canal de Controle H.245

O fluxo H.323 pode conter múltiplos canais para diferentes tipos de mídia.

Um canal de controle H.245 por sessão H.323.

O canal de controle H.245 é um canal confiável (TCP) que transporta mensagens de controle.

Principais tarefas: Abrir e fechar canais

de mídia. Troca de informações

de capacidades: antes de enviar dados os terminais devem concordar sobre o algoritmo de codificação

Nota: H.245 para conferência multimedia é análogo ao RTSP para mídia contínua armazenada

Page 53: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Fluxos de Informação

TerminalH.323

Canal de Mídia1

Canal de Controlede Mídia

Canal de Mídia2

Canal de Controlede Chamada

H.323Gatekeeper

Canal RAS

TCP

UDP

TerminalH.323

Canal de sinali-zação de Chamada

Page 54: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Gatekeeper 1/2

• O gatekeeper é opcional. Pode oferecer aos terminais:• translação de endereços para endereços IP• gerenciamento de banda-passante: pode limitar o total de banda-passante consumida pelas conferências de tempo real

• Opcionalmente, as chamadas H.323 podem ser roteadas através do gatekeeper. Conveniente para bilhetagem.• Protocolo RAS (sobre TCP) para comunicação entre terminal-gatekeeper.

term

inai

s H

.323

Gatekeeper

Roteador

Internet

LAN = “Zona”

RAS

Page 55: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Gatekeeper 2/2

Terminal H.323 deve se registrar com o gatekeeper na sua zona. Quando a aplicação

H.323 é chamada no terminal, o terminal usa o RAS para enviar seu endereço IP e apelido (alias) fornecido pelo usuário ao gatekeeper.

Se o gatekeeper está presente numa zona, cada terminal da zona deve contacta-lo para pedir permissão para realizar uma chamada.

Uma vez que ele obtém a permissão, o terminal pode enviar ao gatekeeper um endereço de e-mail, um nome de referência (alias) ou uma extensão de telefone. O gatekeeper translada o nome de referência num endereço IP. Se necessário, o

gatekeeper poderá consultar outros gatekeepers em outras zonas para resolver um endereço IP. O processo varia entre os fornecedores.

Page 56: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Gateway

Ter

min

ais

H.3

23

Gatekeeper

Router Internet

LAN = “Zona”

RAS

Gateway

PSTN

• Ponte entre a zona IP e as redes PSTN (ou ISDN).• Terminais se comunicam com gateways usando H.245 e Q.931

Page 57: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Codecs de Aúdio

Codec Bandwidth[kbit/s]

MOS Complexidade[MIPS]

Packetização(tamanho)

[ms]

G.711 64 4.5 - -

G.721 (ADPCM) 32 4.4 6.5 -

GSM 13 3.8 4 20

G.729 8 4.1 15 10

G.723 6.4/5.3 4.0 20 30

Qualidade comercial

interlocutor reconhecível

intelegível

problemas de inteleg.

5

4

3

2

1

MOS (Mean Opinion Score)

MOS (Mean Opinion Score)

Page 58: Redes Multimídia Objetivos do Capítulo: entender os requisitos de serviço para redes com multimídia atraso taxa de transmissão perda aprender como aproveitar

Codecs de Vídeo

• H.261 (p x 64 kbit/s)– Vídeo sobre ISDN– Resoluções : QCIF, CIF

• H.263 (< 64 kbit/s)– Comunicação de baixa taxa de

bits– Resoluções: SQCIF, QCIF,

CIF,4CIF, 16CIF (128 x 96)(176 x 144)(352 x 288)(704 x 576)(1408 x 1152)

SQCIFQCIF CIF 4CIF16CIF