universidade federal do rio grande do sulroesler/disciplinas/labredes/05...destino ex: filmar um...
TRANSCRIPT
Latência Tempo entre o início de um evento e o
momento que ele se torna perceptível no
destino
Ex: filmar um relógio numa videoconferência
e ver quantos ms ele atrasa no destino
3
Latência Transmite tela do micro no sistema IVA. Destino envia
de volta. Latência ida e volta (410ms)
5
Latência e Jitter Normalmente a latência varia um pouco nos diversos
pacotes, por causa do Jitter (variação da latência)
6
Skew Diferença do tempo de chegada entre diferentes
mídias que deveriam estar sincronizadas (áudio e vídeo, por exemplo)
7
skew
N. de Pacotes
chegando
t
vídeo áudio
Qual o skew (desalinhamento áudio e vídeo) ACEITÁVEL em uma conferência
ponto a ponto?
< 20ms: imperceptível
~50ms: perceptível que algo está errado, mas sem saber se áudio adiantado ou atrasado
>50ms: causa distração da videoconferência
~1s: usuário foca no áudio e deixa de prestar atenção no vídeo
Voice and Video Conferencing Fundamentals: Scott Firestone, Thiya Ramalingam,
Steve Fry. Cisco Press, 2007. 397p.
8
O mais natural é ver o vídeo um pouco ADIANTADO (voz demora mais para chegar
aos ouvidos que a imagem aos olhos)
9
Protocolo RTP Real-Time Transport Protocol
RFC 3550 – obsoleta a 1889 (RTP e RTCP)
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
MV=2 CCP X PT Número de seqüência
Timestamp
1 2 3
Synchronization Source (SSRC) identifier
Contributing Source (CSRC) identifiers
Localização OSI do RTP Acima do nível 4, no subnível inferior do nível de
aplicação Aplicação
Encapsulamento de
mídia
RTP RTCP
UDP
IPv4 / IPv6
Unicast ou multicast
Ethernet
dados controle
Protocolo RTP (Nível de perdas e ajuste de fluxo)
SEQ=1
SEQ=4
SEQ=5
SEQ=6
SEQ=7
SEQ=8
SEQ=10
SEQ=9
SEQ=2
Perdas=10%
SEQ=3
RTCP monitora QoS da
sessão, e não tem
nada a ver com o QoS
da rede
SEQ=1, tstamp=x
Protocolo RTP (Sincronização intramídia)
SEQ=2, tstamp=x+eq 20ms
SEQ=3, tstamp=x+eq 40ms
SEQ=4, tstamp=x+eq 60ms
SEQ=5, tstamp=x+eq 80ms
Adaptação ao jitter
Fatores de atraso Quais os fatores de atraso na seguinte situação?
Videoconferência ponto a ponto
Computador core2duo 2.1GHz, 2GRAM
400 km de distância
Meio de transmissão é fibra ótica no backbone, e par trançado na rede local
100Mbit/s na rede local, 2Mbit/s até backbone, 1Gbit/s no backbone
Passando por 8 roteadores
Sistema Operacional windows com 3 processos em paralelo
Codecs G.711 e H.264 (transmissão em SD)
14
Atraso de time-sharing Computador core2duo 2.1GHz, 2GRAM
Sistema Operacional windows com 3
processos em paralelo
Dependendo da máquina ou da demanda de
processador dos processos em paralelo, pode
comprometer a capacidade do computador de
codificar vídeo de forma adequada
Custo de processador pode ser minimizado
parametrizando adequadamente codificador
de vídeo 15
É melhor ter um vídeo com menos qualidade, porém sem perdas, do que um vídeo Full HD com perdas
*(processador próximo a 100% gera
perdas)
16
Atraso de captura no hardware Áudio
Placas normalmente capturam em pacotes com amostras
Típico: 64 amostras por pacote
Após amostras efetuadas, gera interrupção e disponibiliza pacote para usuário
Atraso para 8.000 amostras/s, cada uma com 8 bits
64/8000 = 8ms. 64 amostras=64bytes. Total de 125 pacotes de 64 bytes por segundo (1 a cada 8ms)
Atraso para 44.100 amostras / s
64/44.100 = 1,5ms
17
Atraso de empacotamento no encoder Áudio
Alguns codecs necessitam um tempo fixo para processar a codificação
Exemplos:
G.723 – tempos de 30ms + look-ahead de 7,5ms
G.729 – tempos de 10ms + look-ahead de 5ms
Isso gera um atraso de empacotamento de 37,5ms (G.723) ou 15ms (G.729) antes de ir ao encoder
18
Atraso de codificação Obrigatoriamente deve ser menor do que um “time frame”,
senão o codec não estará apto a manter a taxa de entrada
OBS: esse atraso é paralelo ao atraso de captura. Exemplo para G.723.1
8ms 8ms 8ms 8ms
INT INT INT INT
30ms +7,5ms
Encoder
300 bytes
ES Áudio (24B)
t
Δt2
Δt1=40ms
8ms
INT
Atraso na compressão de áudio
Padrão Faixa de
freqüência
Taxa de
transmissão
Comple
xidade
Qualidade
G.711 300 Hz-3.4 kHz 64 kbps 1 Excelente
G.722 50 Hz-7 kHz 48, 56 ou 64 kbps 2
Boa G.722.1 14 kHz 24-32 kbps -
G.722.2 50 Hz-7 kHz 6.6-23.85 kbps -
G.723.1 300 Hz-3.4 kHz 5.3 ou 6.3 kbps 25 Razoável a boa
G.726 300 Hz-3.4 kHz 16,24,32,40 kbps - Boa a razoável
G.728 300 Hz-3.4 kHz 16 kbps 2 Boa
G.729 300 Hz-3.4 kHz 8 kbps 15 Boa
Nyquist: taxa amostragem o dobro ou maior do que a maior freqüência...
Atraso na codificação Codecs G.711 e H.264 (transmissão em
SD)
1ms de atraso no G.711 (rápido)
H.264 SD – vai depender da complexidade do
H.264 (número de opções ativas), bem como
máquina e consumo de CPU dos outros
processos para saber atraso da codificação
em software.
22
Atraso no empacotamento Já contando com cabeçalhos IP, UDP, RTP
Calcule atraso para:
G.729 = 8 kbit/s
G.711 = 64 kbit/s
a) considerando tamanho do pacote = 1000 bytes
R =
b) considerando tamanho do pacote = 100 bytes
R =
Debate sobre as conclusões… Qual o melhor codec?
23
Atraso no meio físico 400 km de distância
Meio de transmissão é fibra ótica no
backbone, e par trançado na rede local
Atraso na fibra ótica?
Atraso no par trançado?
Atraso total = _____
Conclusões
24
Calcule o atraso se fosse satélite 400 km de distância (quase indiferente)
Satélite GEO fica a 36.000km de altitude
Velocidade das ondas eletromagnéticas no
vácuo e no ar?
Atraso = ____
Conclusões
26
Atraso nos eqtos intermediários Switches: pode ser cut-through, store and
forward ou adaptive
Roteadores: store and forward
Calcular custo para 3 roteadores store and forward numa rede de 2Mbit/s. Tamanho do pacote = 125 bytes
R =
Debate sobre as conclusões
27 R R R
Ti1 Td1 Ti2 Td1 Ti3 Td3
Compartilhado Compartilhado
Atraso devido ao tempo de inserção
Calcular inserção de um pacote de 125
bytes para 13 kbit/s, 2Mbit/s e 100Mbit/s
Tempo de inserção ou desinserção = L/T
(L=tamanho do quadro em bits; T=taxa em
bits/s)
13 kbit/s: R =
2Mbit/s: R =
100Mbit/s: R =
28
Atraso nas filas dos roteadores O custo de cada pacote na fila, durante
um congestionamento, é igual ao custo de
uma desinserção de pacote
Ou seja, a rapidez para sair da fila vai
depender da velocidade do link
29
Atraso devido ao Jitter Como o sistema de transmissão
multimídia se adapta ao Jitter?
Através da criação de um buffer no receptor,
que “amortece” a variação na chegada dos
pacotes.
Quanto maior o jitter, mais atraso o sistema
gera.
31
Atraso devido ao reordenamento de pacotes
Como os roteadores fazem balanceamento
de carga?
a) por fluxo
b) por pacote
33
Atraso devido ao reordenamento de pacotes
Balanceamento de carga por fluxo
Todo tráfego com um mesmo IP origem e IP
destino é encaminhado pelo mesmo link
34
3x34Mbit/s
Atraso devido ao reordenamento de pacotes
Balanceamento de carga por pacote
Pacotes são enviados de forma “round robin”
através dos diferentes enlaces
35
3x34Mbit/s
Atraso devido ao reordenamento de pacotes
Como o receptor se adapta a isso?
R. buffer e reordenamento de pacotes interno
ao sistema, o que gera mais atraso.
36
Resumo dos atrasos Time-sharing de processos na máquina
Transmissão física
Codificação de áudio e vídeo
Empacotamento
Equipamentos intermediários (store and forward)
Fila dos roteadores
Inserção e desinserção
Adaptação ao jitter
Adaptação ao skew
Adaptação a pacotes fora de ordem
38
Medida de carga de uma rede Backbone: Acessar
http://www.rnp.br/ceo/trafego/panorama.php
41