Você está na página 1de 36

Redes de

Computadores I

Prof. Mateus Raeder

Universidade do Vale do Rio dos Sinos


- So Leopoldo -

Aplicaes Multimdia
Crescimento de aplicaes que recebem e
transferem udio e vdeo pela internet
Aplicaes Multimdia tambm so conhecidas
como aplicaes de mdia de taxa constante

Vdeos de entretenimento
Telefonia IP
Rdio pela Internet
Teleconferncias
Aprendizado a distncia
Etc...

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Aplicaes Multimdia:
udio e vdeo na rede
(mdia contnua)

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Este tipo de aplicao se difere muito das
aplicaes vistas anteriormente

E-mail
Imagens
FTP
DNS

Aplicaes Multimdias so sensveis a atrasos,


mas podem tolerar perdas de dados ocasionais
Modelos de comunicao tradicionais no so uma boa
escolha para estes fins
Overhead em excesso, ocasionando atrasos

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Sensveis ao atraso
Atraso fim a fim
Acmulo de atrasos de processamento, fila, propagao,
transmisso ao longo do trajeto entre origem e destino
Para aplicaes de udio altamente interativas (telefone
por Internet, por exemplo):
Atrasos de menores do que 150 milissegundos no so
percebidos pelo ouvido humano
Atrasos entre 150 e 400 milissegundos so aceitveis (mas
no ideal)
Atrasos maiores que 400 milissegundos podem atrapalhar
consideravelmente a conversao

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Sensveis ao atraso
Jitter
Variao do atraso dos pacotes dentro de um mesmo fluxo
Causados por atrasos aleatrios nas filas dos roteadores
Assim, o tempo entre o momento que o pacote gerado na
fonte e chega no destino pode variar de pacote para pacote
Isto chama-se variao do atraso
Exemplo
2 pacotes consecutivos em uma rajada de voz com 20
milissegundos de diferena entre um e outro
No receptor, este tempo pode ser maior ou menor
Analogia da rodovia

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Sensveis ao atraso
Jitter
Se for ignorada, esta variao pode resultar em nveis
inteligveis de udio
A variao do atraso pode ser removida com a utilizao de
alguns mecanismos
Nmeros de sequncia
Remetente aumenta em 1 o nmero de sequncia para
cada pacote que gera
Marcas de tempo
Remetente marca cada poro com o tempo em que foi
gerada
Atraso de reproduo
Atrasar a reproduo das pores de udio no receptor

Redes de Computadores I Prof. Mateus

Dados acumulados

Variao do atraso (jitter)


transmisso de
udio a uma
taxa constante

recepo do
udio no cliente
atraso
varivel
da rede
(jitter)
atraso de
reproduo

reproduo
do udio a taxa
constante no cliente

tempo

Armazenamento no lado do cliente, o


atraso de reproduo compensa a
variao do atraso (jitter) provocados
pela rede
Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Classes de aplicaes de Multimdia:
1) udio e vdeo de fluxo contnuo (Streams)
armazenados
2) udio e vdeo de fluxo contnuo ao vivo
3) udio e vdeo interativos em tempo real

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Fluxo contnuo, udio e vdeo armazenados
O cliente solicita a qualquer momento arquivos de udio
e vdeos comprimidos que esto armazenados no
servidor
3 caractersticas importantes:
Mdia armazenada: o contedo foi pr-gravado e
armazenado no servidor
Pode pausar, voltar, avanar, etc

Fluxo contnuo: o cliente inicia a reproduo alguns


segundos aps comear a receber os arquivos do servidor

Redes de Computadores I Prof. Mateus

Dados
acumulados

Fluxo Contnuo Multimdia


Armazenada: Como funciona?

2. vdeo
transmitido
1. vdeo
gravado

atraso
da rede

3. vdeo recebido,
reproduzido no cliente
tempo

Fluxo contnuo: neste instante, o cliente


est reproduzindo uma parte anterior do
vdeo, enquanto o servidor ainda est
transmitindo as partes seguintes
Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Fluxo contnuo, udio e vdeo armazenados
O cliente solicita a qualquer momento arquivos de udio
e vdeos comprimidos que esto armazenados no
servidor
3 caractersticas importantes:
Mdia armazenada: o contedo foi pr-gravado e
armazenado no servidor
Pode pausar, voltar, avanar, etc

Fluxo contnuo: o cliente inicia a reproduo alguns


segundos aps comear a receber os arquivos do servidor.
Evita a necessidade de armazenar todo a mdia antes

Reproduo contnua: quando comea a reproduo,


deve prosseguir normalmente, com srias restries aos
atrasos
Devem ser recebidos a tempo de serem reproduzidos

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
udio e vdeo de fluxo contnuo ao vivo
Semelhante transmisso de rdio e televiso
Permite que sejam recebidas transmisses de qualquer
parte do mundo
Como o fluxo no armazenado, no se pode adiantar o
programa que est sendo recebido
Entretanto, os dados so armazenados localmente
Pausa, retrocesso podem ser realizadas em algumas
aplicaes

Mesma idia da reproduo contnua


Atrasos causam danos mais severos do que em mdia
armazenada

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Vdeo e udio interativos em tempo real
Permite comunicao entre as pessoas em tempo real
Telefonia pela Internet
Videoconferncias

Usurios podem se mover ou falar a qualquer instante


Os atrasos devem ser menores do que algumas
centenas de segundos

Redes de Computadores I Prof. Mateus

Multimdia Sobre a Internet Atual


TCP/UDP/IP: servio de melhor esforo

sem garantias sobre atrasos, perdas


As aplicaes MM na Internet atual usam
tcnicas da camada de aplicao para minimizar
(da melhor forma) efeitos de atrasos e perdas
Enviar udio e vdeo por UDP
Retardar a reproduo no receptor
Marcas de tempo para saber quando devem ser
reproduzidos
Enviar informaes redundantes para diminuir efeitos de
perda

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Aplicaes de udio e vdeo de fluxo contnuo
tornaram-se popular
Custo de armazenamento em disco muito baixo
Mais multimdia armazenada na Internet

Melhorias na infra-estrutura na Internet


Acesso domstico de alta velocidade, por exemplo

Clientes solicitam arquivos de udio e vdeo


residentes no servidor
Podem ser servidores Web comuns
Podem ser servidores de fluxo contnuo especiais para
fluxo contnuo

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Servidor, ento, envia o arquivo desejado
Antes de enviar o arquivo de udio/vdeo
Arquivo segmentado
Os segmentos so encapsulados em cabealhos
especiais para trfego de udio e vdeo
RTP um protocolo padro para este encapsulamento

Quando comea a receber o arquivo, o cliente comea a


reproduo
Com interatividade (pausa, avano, retrocesso, etc)
Esta interatividade necessita um protocolo especfico
RTSP responsvel pela interatividade com o usurio

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Geralmente, solicitado atravs de um cliente Web
Ou seja, um browser

A reproduo no est integrada com estes clientes Web


Necessidade de uma aplicao auxiliar separada para
reproduzir
Comumente chamada de transdutor
Real Player, Windows Media Player, etc

Desempenham algumas funes:

Descompresso
Remoo da variao do atraso
Correo de erros
Interface grfica de usurio com botes de controle

Podem ser utilizados programas especiais para inserir a interface


do transdutor dentro da janela do browser
Plug-ins

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Acesso a udio e vdeo a partir de um servidor Web
Quando um udio est no servidor Web, ele um objeto
normal dentro do sistema de arquivos (como HTML e JPEG)
Usurio quer um arquivo de udio

Conexo TCP criada


Envia requisio HTTP para o objeto
Servidor anexa o arquivo e responde
Cabealho indica a
codificao especfica
Browser analisa o tipo e chama
o transdutor correspondente
Transdutor reproduz o arquivo

Objeto inteiro deve ser armazenado


Atraso inaceitvel

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Assim, o servidor deve enviar o arquivo de udio/vdeo
diretamente para o transdutor
Uma conexo direta entre o servidor e transdutor
Utilizao de um metarquivo
Contm informaes sobre o arquivo a ser entregue

Redes de Computadores I Prof. Mateus

Aplicaes Multimdia
Usurio sobre o hiperlink do arquivo de udio/vdeo
Este link no aponta para o objeto, mas sim para um
metarquivo
Contm a URL do arquivo
Mensagem de resposta HTTP contm um tipo que identifica a
aplicao especfica (transdutor)

Browser examina o tipo e passa o metarquivo para o


transdutor
Transdutor estabelece uma conexo TCP com o servidor
HTTP
Solicitando o arquivo

Arquivo enviado dentro de uma resposta HTTP


Comunicao realizada
via HTTP, logo, TCP

Redes de Computadores I Prof. Mateus

Fluxos a partir de um servidor de fluxo


contnuo

Esta arquitetura permite o uso de protocolos no-HTTP


entre o servidor e o reprodutor de mdia (transdutor)
Tambm pode usar UDP ao invs do TCP

Redes de Computadores I Prof. Mateus

RTSP
(Protocolo de fluxo contnuo em tempo real)
Usurios querem controlar a reproduo da mdia
Avanar, pausar, reposicionar em outro ponto, etc

RTSP (real-time streaming protocol) permite este


interao
Controle da transmisso pelo transdutor

Funciona fora da banda


Mensagens RTSP so enviadas fora da banda
Corrente de mdia dentro da banda
Usa a porta 544 (roda sobre TCP ou UDP)

Redes de Computadores I Prof. Mateus

Exemplo RTSP
Cenrio:

metarquivo enviado para o browser web


browser inicia o tocador/transdutor
Tocador/transdutor estabelece uma
conexo de controle RTSP e uma conexo
de dados para o servidor de mdia contnua

Redes de Computadores I Prof. Mateus

Operao do RTSP

Redes de Computadores I Prof. Mateus

Exemplo de Metarquivo
<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>
Redes de Computadores I Prof. Mateus

Perda de Pacotes
FEC (Correo de erros e repasse)
Corrente
Original

Redundncia

Corrente
Recebida

Corrente
Reconstituda

Perda

Redes de Computadores I Prof. Mateus

Perda de Pacotes
Intercalamento
Corrente
Original

10

11

12

Corrente
Intercalada

10

11

12

10

Perda

12

10

Corrente
Recebida

Corrente
Reconstituda

Redes de Computadores I Prof. Mateus

12

Protocolo de Tempo Real (RTP)

RTP = Real Time Protocol


RTP especifica uma
estrutura de pacote para
pacotes que transportam
dados de udio e de
vdeo
RFC 1889.
Pacote RTP prov
Identificao do tipo da
carga
Numerao da
seqncia de pacotes
Marca de tempo

RTP roda nos sistemas


terminais.
Pacotes RTP so
encapsulados em
segmentos UDP
Interoperabilidade: Se
duas aplicaes de
telefone Internet
rodarem RTP ento elas
podero trabalhar em
conjunto

Redes de Computadores I Prof. Mateus

RTP roda sobre UDP


Bibliotecas RTP provm uma interface
da camada de transporte que estende o
UDP:
nmeros de portas, endereos IP
verificao de erro atravs de
segmentos
identificao do tipo da carga
numerao da seqncia de
pacotes
marca de tempo

Redes de Computadores I Prof. Mateus

RTP e QoS
RTP no prov nenhum mecanismo
para garantir a entrega em tempo dos
dados nem nenhuma outra garantia de
qualidade de servio.
O encapsulamento RTP visto apenas
nos sistemas finais no visto por
roteadores intermedirios.
Roteadores provendo o servio tradicional
Internet de melhor esforo no fazem
nenhum esforo adicional para garantir que
os pacotes RTP cheguem ao destino em
tempo.
Redes de Computadores I Prof. Mateus

Cabealho RTP
Cabealho RTP
Tipo da carga til (7 bits): Usado para indicar o tipo de codificao que est
sendo usada. Se o transmissor modificar a codificao no meio de uma
conferncia, o transmissor informar o receptor atravs do campo do tipo de
carga til.
Nmero de Seqncia (16 bits): O nmero de seqncia incrementado de
um para cada pacote RTP enviado; pode ser usado para detectar a perda de
pacotes e para restaurar a sequncia de pacotes.

Redes de Computadores I Prof. Mateus

Cabealho RTP (2)


Cabealho RTP

Campo de marca de tempo (32 bits). Reflete o


instante de amostragem do primeiro byte no pacote de
dados RTP.

Campo de identificador de sincronizao da fonte


(SSRC) (32 bits). Identifica a fonte de um fluxo RTP.
Cada fluxo numa sesso RTP deve possuir um SSRC
distinto.

Redes de Computadores I Prof. Mateus

Protocolo de Controle de Tempo Real


(RTCP)

Real-Time Control Protocol


Trabalha em conjunto com o
RTP.
Cada participante numa
sesso RTP periodicamente
transmite pacotes de
controle RTCP para todos os
demais participantes.
Cada pacote RTCP contm
relatrios do transmissor
e/ou receptor
relatam estatsticas teis
para as aplicaes.

Estas estatsticas incluem o


nmero de pacotes
enviados, o nmero de
pacotes perdidos, jitter
entre chegadas, etc.
Esta realimentao de
informao para as
aplicaes pode ser usada
para controlar o
desempenho
O transmissor pode
modificar as suas taxas de
transmisso baseadas na
realimentao.

Redes de Computadores I Prof. Mateus

RTCP - Continuao

Para uma sesso RTP h


tipicamente um nico
endereo multicast; todos os
pacotes RTP e RTCP
pertencentes sesso usam o
endereo multicast.
Pacotes RTP e RTCP so
diferenciados uns dos outros
atravs do uso de nmeros de
portas distintos.
Para limitar o trfego, cada
participante reduz o seu
trfego RTCP medida que
cresce o nmero de
participantes da conferncia.

Redes de Computadores I Prof. Mateus

Exerccios
As figuras a seguir apresentam trs esquemas
para fluxo contnuo de mdia armazenada. Quais
as vantagens e as desvantagens de cada
esquema?

Redes de Computadores I Prof. Mateus