SlideShare uma empresa Scribd logo
1 de 10
Baixar para ler offline
1
Capítulo 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
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
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
Multimídia em redes (2)
Aplicações MM com aúdio e vídeo
armazenados
Clientes 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
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.
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”.
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.
2
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?
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.
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 transdutor
de mídia interage com o servidor
WEB através do Web browser
que atua como intermediário.
cliente servidor
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 HTTP
por um meta arquivo
(3) arquivo solicitado é enviado
usando o HTTP
(2) meta arquivo
transdutor
de mídia
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/resposta
para o arquivo descritor
da apresentação
(2) arquivo
descritor
(3) arquivo de aúdio
e vídeo pedido e
enviado
cliente servidores
transdutor
de mídia
servidor
de vídeo
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.
buffer
cliente
área com
vídeo
taxa de chegada
= x(t)
da rede
taxa de leitura
= d
decodificação
e apresentação
3
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
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.
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
media
player
Web
server
media
server
Web
browser
client server
presentation desc.
Transdutor
de mídia
Servidor
de mídia
cliente servidor
descr. apresent.
fluxo de mídia
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>
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.
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
4
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.
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
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
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-fim
acú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
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
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
time
packets
generated
packets
received
loss
r
p p'
playout schedule
p - r
playout schedule
p' - r
pacotes
gerados
pacotes
recebidos
perda
progr. reprodução
p - r
progr. reprodução
p’ - r
tempo
pacotes
5
Atraso de reprodução adaptativo (1)
pacoteésimo-oreceberapósredenaatrasodoestimativa
pacoteésimo-opararededaatraso
receptornooreproduzidépacoteoqualnoinstante
receptorpelorecebidoépacoteoqualnoinstante
pacoteésimodotempodemarca
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).
É 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 de
reprodução é:
iii tpq −=
Para o pacote j no mesmo intervalo de atividade, o pacote deve ser
reproduzido em:
ijj qtp +=
Atraso de reprodução adaptativo (2)
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) 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
2o, esquema FEC
• enviar um fluxo de
menor qualidade como
“carona”
• envia fluxo de aúdio
de menor resolução como
a informação redundante
• por exemplo, um fluxo
PCM nominal a 64 kbps
e um fluxo GSM redun-
dante a 13 kbps.
• Transmissor cria
pacote tomando o bloco
n do fluxo nominal e
anexando 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 antes
do início da reprodução
• Pode também anexar os blocos (n-1) e (n-2) do fluxo
de baixa qualidade
Recuperação de perdas de pacotes (2)
Fluxo original
Redundância
Perda de Pacote
Fluxo reconstruído
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
6
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) 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
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 de
transporte
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.
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.
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.
7
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 Carga
Número de
Seqüência Marca de tempo
Identificador
sincronismo fonte
campos de
miscelânias
Cabeçalho RTP
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)
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.
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 de
multicast.
- 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 o
número de participantes da conferência aumenta.
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.
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.
8
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.
H.323
Visão geral
Terminal H.323
Codificação H. 323
Gatekeeper
Gateway
Codecs de Aúdio
Codecs de Vídeo
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.
Chamadas telefônicas
Chamadas de vídeo
Conferências
Quadros brancos
Todos os terminais
suportando H.323
Internet
Telefone "Ethernet"
MS Netmeeting
NetSpeak WebPhone
Visão Geral (2)
H.323 SS7, Inband
Internet PSTN
Gateway
Gatekeeper
Visão Geral (3) 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/S
tatus) protocolo de canal -
Protocolo para comunicação
com o gatekeeper (se um
gatekeeper está presente)
9
Terminal H.323 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.
Gerando fluxo de pacotes de aúdio no
H.323
Fonte de
Aúdio
Codificação:
ex., G.711
ou G.723.1
encapsulamento
de pacote RTP
porta
UDP
Internet ou
Gatekeeper
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
Fluxos de Informação
Terminal
H.323
Canal de Mídia
1
Canal de Controle
de Mídia
Canal de Mídia
2
Canal de Controle
de Chamada
H.323
Gatekeeper
Canal RAS
TCP
UDP
Terminal
H.323
Canal de sinali-
zação de Chamada
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.
terminaisH.323
Gatekeeper
Rotea
dor
Internet
LAN = “Zona”
RAS
10
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.
Gateway
TerminaisH.323
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
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)
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)
SQCIF
QCIF
CIF
4CIF
16CIF

Mais conteúdo relacionado

Mais procurados

Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoSRedes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoSMauro Tapajós
 
RC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteRC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteUFPB
 
Camada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumCamada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumWellington Oliveira
 
Protocolos de Transporte RTSP
Protocolos de Transporte RTSPProtocolos de Transporte RTSP
Protocolos de Transporte RTSPnelsonalm
 
FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaFISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaMauro Tapajós
 
Multimídia: Protocolos de transmissão de áudio e vídeo
Multimídia:  Protocolos de transmissão de áudio e vídeoMultimídia:  Protocolos de transmissão de áudio e vídeo
Multimídia: Protocolos de transmissão de áudio e vídeoFernando Costa
 
Alta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores LinuxAlta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores Linuxelliando dias
 
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Felipe Alex
 
DENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_ComunicacaoDENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_ComunicacaoDenis Storti da Silva
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicaçãoJoel Saramago
 
Serviços e protocolos
Serviços e protocolosServiços e protocolos
Serviços e protocolosDayane Sousa
 
Redes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteRedes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteWellington Oliveira
 

Mais procurados (20)

Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoSRedes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS
 
ARTIGO CLUSTER DE ALTA DISPONIBILIDADE EM SISTEMAS LINUX
ARTIGO CLUSTER DE ALTA DISPONIBILIDADE EM SISTEMAS LINUXARTIGO CLUSTER DE ALTA DISPONIBILIDADE EM SISTEMAS LINUX
ARTIGO CLUSTER DE ALTA DISPONIBILIDADE EM SISTEMAS LINUX
 
RC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteRC - SL03 - Camada de Transporte
RC - SL03 - Camada de Transporte
 
Camada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumCamada de Transporte Redes Tanenbaum
Camada de Transporte Redes Tanenbaum
 
Protocolos de Transporte RTSP
Protocolos de Transporte RTSPProtocolos de Transporte RTSP
Protocolos de Transporte RTSP
 
Apresentação de sd2
Apresentação de sd2Apresentação de sd2
Apresentação de sd2
 
FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaFISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
 
Multimídia: Protocolos de transmissão de áudio e vídeo
Multimídia:  Protocolos de transmissão de áudio e vídeoMultimídia:  Protocolos de transmissão de áudio e vídeo
Multimídia: Protocolos de transmissão de áudio e vídeo
 
Core Network e MPLS
Core Network e MPLSCore Network e MPLS
Core Network e MPLS
 
Alta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores LinuxAlta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores Linux
 
Aula10
Aula10Aula10
Aula10
 
Rede de Transporte
Rede de TransporteRede de Transporte
Rede de Transporte
 
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
 
Trabalho camada de transporte
Trabalho camada de transporteTrabalho camada de transporte
Trabalho camada de transporte
 
DENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_ComunicacaoDENIS_Comparacao_de_Protocolos_de_Comunicacao
DENIS_Comparacao_de_Protocolos_de_Comunicacao
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicação
 
Redes de Comunicacao-Camada de transporte
Redes de Comunicacao-Camada de transporte Redes de Comunicacao-Camada de transporte
Redes de Comunicacao-Camada de transporte
 
Serviços e protocolos
Serviços e protocolosServiços e protocolos
Serviços e protocolos
 
Aula introdutoria parte 2
Aula introdutoria   parte 2Aula introdutoria   parte 2
Aula introdutoria parte 2
 
Redes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteRedes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de Transporte
 

Semelhante a Cap06a

Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesRedes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesMauro Tapajós
 
WebTV: Um novo método para assistir TV.
WebTV: Um novo método para assistir TV.WebTV: Um novo método para assistir TV.
WebTV: Um novo método para assistir TV.Rafael Macedo
 
02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdfedsonjcg
 
Iptv 2009
Iptv 2009Iptv 2009
Iptv 2009tiag
 
IntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresIntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresLinaKelly3
 
Linux network administration | Curso de Redes | 3Way Networks
Linux network administration | Curso de Redes | 3Way NetworksLinux network administration | Curso de Redes | 3Way Networks
Linux network administration | Curso de Redes | 3Way Networks3Way Networks
 
Ginga - Solisc 2010
Ginga - Solisc 2010Ginga - Solisc 2010
Ginga - Solisc 2010Bruno Ghisi
 
Video Streaming - o que é ABR (Adaptive Bitrate Streaming)
Video Streaming - o que é ABR (Adaptive Bitrate Streaming) Video Streaming - o que é ABR (Adaptive Bitrate Streaming)
Video Streaming - o que é ABR (Adaptive Bitrate Streaming) Jair Szapiro
 
Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1SoftD Abreu
 
S2 B 2007 Infra Aula 01 V1.00
S2 B 2007   Infra   Aula 01 V1.00S2 B 2007   Infra   Aula 01 V1.00
S2 B 2007 Infra Aula 01 V1.00doctorweb
 
M4 tarefa video
M4 tarefa videoM4 tarefa video
M4 tarefa videogonxalox
 

Semelhante a Cap06a (20)

Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesRedes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
 
Camada de aplicação parte1
Camada de aplicação parte1Camada de aplicação parte1
Camada de aplicação parte1
 
RI-8.pdf
RI-8.pdfRI-8.pdf
RI-8.pdf
 
Cap2a
Cap2aCap2a
Cap2a
 
Cap 02.pdf
Cap 02.pdfCap 02.pdf
Cap 02.pdf
 
WebTV: Um novo método para assistir TV.
WebTV: Um novo método para assistir TV.WebTV: Um novo método para assistir TV.
WebTV: Um novo método para assistir TV.
 
02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf
 
Iptv 2009
Iptv 2009Iptv 2009
Iptv 2009
 
IntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresIntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadores
 
IntroducaoRedesInternet.ppt
IntroducaoRedesInternet.pptIntroducaoRedesInternet.ppt
IntroducaoRedesInternet.ppt
 
Modelo TCP/IP
Modelo TCP/IPModelo TCP/IP
Modelo TCP/IP
 
Intro_redes.pdf
Intro_redes.pdfIntro_redes.pdf
Intro_redes.pdf
 
Parte2b
Parte2bParte2b
Parte2b
 
Linux network administration | Curso de Redes | 3Way Networks
Linux network administration | Curso de Redes | 3Way NetworksLinux network administration | Curso de Redes | 3Way Networks
Linux network administration | Curso de Redes | 3Way Networks
 
Ginga - Solisc 2010
Ginga - Solisc 2010Ginga - Solisc 2010
Ginga - Solisc 2010
 
Video Streaming - o que é ABR (Adaptive Bitrate Streaming)
Video Streaming - o que é ABR (Adaptive Bitrate Streaming) Video Streaming - o que é ABR (Adaptive Bitrate Streaming)
Video Streaming - o que é ABR (Adaptive Bitrate Streaming)
 
Cirrus
CirrusCirrus
Cirrus
 
Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1
 
S2 B 2007 Infra Aula 01 V1.00
S2 B 2007   Infra   Aula 01 V1.00S2 B 2007   Infra   Aula 01 V1.00
S2 B 2007 Infra Aula 01 V1.00
 
M4 tarefa video
M4 tarefa videoM4 tarefa video
M4 tarefa video
 

Cap06a

  • 1. 1 Capítulo 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 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 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 Multimídia em redes (2) Aplicações MM com aúdio e vídeo armazenados Clientes 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 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. 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”. 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.
  • 2. 2 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? 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. 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 transdutor de mídia interage com o servidor WEB através do Web browser que atua como intermediário. cliente servidor 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 HTTP por um meta arquivo (3) arquivo solicitado é enviado usando o HTTP (2) meta arquivo transdutor de mídia 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/resposta para o arquivo descritor da apresentação (2) arquivo descritor (3) arquivo de aúdio e vídeo pedido e enviado cliente servidores transdutor de mídia servidor de vídeo 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. buffer cliente área com vídeo taxa de chegada = x(t) da rede taxa de leitura = d decodificação e apresentação
  • 3. 3 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 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. 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 media player Web server media server Web browser client server presentation desc. Transdutor de mídia Servidor de mídia cliente servidor descr. apresent. fluxo de mídia 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> 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. 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
  • 4. 4 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. 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 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 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-fim acú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 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 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 time packets generated packets received loss r p p' playout schedule p - r playout schedule p' - r pacotes gerados pacotes recebidos perda progr. reprodução p - r progr. reprodução p’ - r tempo pacotes
  • 5. 5 Atraso de reprodução adaptativo (1) pacoteésimo-oreceberapósredenaatrasodoestimativa pacoteésimo-opararededaatraso receptornooreproduzidépacoteoqualnoinstante receptorpelorecebidoépacoteoqualnoinstante pacoteésimodotempodemarca 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). É 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 de reprodução é: iii tpq −= Para o pacote j no mesmo intervalo de atividade, o pacote deve ser reproduzido em: ijj qtp += Atraso de reprodução adaptativo (2) 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) 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 2o, esquema FEC • enviar um fluxo de menor qualidade como “carona” • envia fluxo de aúdio de menor resolução como a informação redundante • por exemplo, um fluxo PCM nominal a 64 kbps e um fluxo GSM redun- dante a 13 kbps. • Transmissor cria pacote tomando o bloco n do fluxo nominal e anexando 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 antes do início da reprodução • Pode também anexar os blocos (n-1) e (n-2) do fluxo de baixa qualidade Recuperação de perdas de pacotes (2) Fluxo original Redundância Perda de Pacote Fluxo reconstruído 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
  • 6. 6 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) 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 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 de transporte 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. 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. 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.
  • 7. 7 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 Carga Número de Seqüência Marca de tempo Identificador sincronismo fonte campos de miscelânias Cabeçalho RTP 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) 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. 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 de multicast. - 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 o número de participantes da conferência aumenta. 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. 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.
  • 8. 8 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. H.323 Visão geral Terminal H.323 Codificação H. 323 Gatekeeper Gateway Codecs de Aúdio Codecs de Vídeo 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. Chamadas telefônicas Chamadas de vídeo Conferências Quadros brancos Todos os terminais suportando H.323 Internet Telefone "Ethernet" MS Netmeeting NetSpeak WebPhone Visão Geral (2) H.323 SS7, Inband Internet PSTN Gateway Gatekeeper Visão Geral (3) 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/S tatus) protocolo de canal - Protocolo para comunicação com o gatekeeper (se um gatekeeper está presente)
  • 9. 9 Terminal H.323 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. Gerando fluxo de pacotes de aúdio no H.323 Fonte de Aúdio Codificação: ex., G.711 ou G.723.1 encapsulamento de pacote RTP porta UDP Internet ou Gatekeeper 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 Fluxos de Informação Terminal H.323 Canal de Mídia 1 Canal de Controle de Mídia Canal de Mídia 2 Canal de Controle de Chamada H.323 Gatekeeper Canal RAS TCP UDP Terminal H.323 Canal de sinali- zação de Chamada 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. terminaisH.323 Gatekeeper Rotea dor Internet LAN = “Zona” RAS
  • 10. 10 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. Gateway TerminaisH.323 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 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) 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) SQCIF QCIF CIF 4CIF 16CIF