Filipe Neves (IPLeiria) Salviano Soares (UTAD)

Slides:



Advertisements
Apresentações semelhantes
Aula 3 – Transmissão Digital
Advertisements

Técnicas de Modulação Todas as técnicas de modulação envolvem o deslocamento do sinal original, doravante denominado sinal modulador ou modulante, de sua.
Redes de computadores I
Redes de alta velocidade
Barramentos Introdução.
Redes de Computadores Arquitetura de Protocolos
RSVP MPLS. Estratégias para Implantação de QoS Atualmente, duas estratégias de QoS sobre redes IP estão em desenvolvimento: –Serviços Integrados Baseado.
Qualidade de Serviço em Redes IP Mecanismos de QoS
Conversão Analógica/Digital PCM
Oferecendo QOS em Redes IP
MODELO DE REFERÊNCIA OSI
1. SINAIS Contém informações sobre uma variedade de coisas e atividades em nosso mundo físico. PROCESSAMENTO DE SINAIS Ato de extrair as informações necessárias.
Protocolos e Divisão em Camadas
Tolerância a Falhas em redes Intra-Chip
Distribuição de Mídia Contínua Voz sobre IP Jussara M. Almeida Junho 2005.
Prof. Marcelo Diniz Fonte:
Mestrado em Telecomunicações Fim-a-Fim em uma Rede IP
Frame Relay Embora os procedimentos de verificação de erros do X.25 fossem necessários quando as redes de pacotes foram estabelecidas com o uso de linhas.
MODULAÇÃO Conceito de Modulação
Banda passante do meio físico
QoS - Qualidade de Serviço
Redes de computadores Prof. António dos Anjos
TRANSMISSÃO DE INFORMAÇÃO
MODULAÇÃO POR CÓDIGO DE PULSO
Software de Rede Willamys Araújo.
Segurança na Telefonia IP e VoIP
Redes de Computadores e Internet
Tecnologia VOICE OVER IP
Disciplina: Princípios de Redes de Computadores Parte 3
Fundamentos de Análise de Sinais
Fundamentos de Telecomunicações
Universidade do Vale do Rio dos Sinos - São Leopoldo -
Redes de computadores Prof. António dos Anjos
O Modelo OSI Guilherme Guimarães.
QoS Quality of service.
VoIP: O Futuro da Telefonia.
REDES Pacotes.
UNEMAT-FACIEX MODELOS DE REFERÊNCIA Dr. José Raúl Vento 2005.
Índice Modulação Modulação - Portadora Modulação Amplitude Frequência
Universidade do Vale do Rio dos Sinos - São Leopoldo -
Módulo 3 Implantação do IPv6.
Convergência das redes
Modulação Trabalho Realizado por: João Santos Disciplina de:
TRABALHO REALIZADO POR: Ricardo costa
Modelo OSI Apresentação Sessão Transporte Rede Enlace Física Aplicação
Disciplina de: Comunicação de Dados Professor: Carlos Pereira Trabalho Realizado por: João Santos.
Transmissões de Dados 2014/2015 Comunicação de Dados
Administração e Projeto de Redes
Modelo OSI Disciplina: Comunicação de Dados Ricardo Bento 12ºL nº11.
1) A camada de transporte provê comunicação lógica entre hosts.
Transmissão Multimídia: Internet2
6: Multimídia em Redes6b-1 Melhorando a QOS em Redes IP Ø Grupos do IETF estão trabalhando em propostas para prover melhor controle de QOS nas redes IP,
Introdução à camada de rede
Arquitetura TCP/IP Aplicação Transporte Rede Enlace Física.
Modulação Disciplina: Comunicação de Dados Ano lectivo: 2014/2015
Trabalho elaborado por: -Daniel Nº26 -André Nº3. * A camada de rede do modelo OSI é responsável por controlar a operação da rede de um modo geral. As.
Trabalho realizado por: Tiago Freitas Nº7
Capitulo 04 Camada de Enlace Prof. Ricardo de Macedo.
Rede de Computadores MAT164 – Redes de Computadores I Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.
Integrated Services Digital Network
Modelo de referência TCP/IP Redes de comunicação de dados Professor Cristiano José Cecanho.
1 Redes de computadores e a Internet  1.1 Evolução Histórica das Redes de Dados  1.2 Terminologia de Teleprocessamento  1.3 Formas de Utilização do.
Qualidade de Serviço Parametrização de serviços –por causa da heterogeneidade de requisitos vinda de diferentes aplicações distribuídas –flexibilidade.
COMUNICAÇÃO ENTRE OS MÓDULOS PROCESSADORES
Equipamentos de interligação de redes
MODULAÇÃO POR CÓDIGO DE PULSO
Clique para editar o estilo do subtítulo mestre REDES MULTIMÍDIA Redes para Aplicações Multimídia.
Redes de Computadores e Aplicações – Camada de Rede IGOR ALVES.
1 Processamento de Sinais CDESC Rodolfo Araujo Victor RH/UP/ECTEP Aula 1 03/11/2010.
Universidade Federal do Rio Grande do Sul Prof. Dr. Valter Roesler:
Transcrição da apresentação:

Técnicas de Reconstrução de Voz e a Melhoria da Qualidade em Comunicações VoIP Filipe Neves (IPLeiria) Salviano Soares (UTAD) Pedro Assunção (IPLeiria)

Tópicos Conceitos básicos Codificação de voz e normas VoIP Medidas de desempenho Algoritmos de reconstrução Resultados experienciais Trabalho futuro

Conceitos básicos Amostragem do sinal em instantes de tempo regulares Quantificação e codificação Nota: sinais de voz telefónica: amostragem a 8 kHz, 8 bits/amostra=64 kb/s Quantificação não uniforme (lei A e Lei ) Compressão Opcional

Teorema de Nyquist Um sinal de banda limitada Bs < Bmax [Hz] amostrado em instantes de tempo regulares a uma frequência de amostragem fs, pode ser reconstruído sem perdas (resultando no original) desde que verifique a condição: fs  2 x Bmax

Teorema de Nyquist – exemplo aplicado a voz telefónica Ouvido humano: 20-20.000 Hz Voz humana: 200-9.000 Hz Voz telefónica: 300-3400 Hz Gama com suficiente fidelidade para permitir inteligibilidade Na prática usa-se Bmax 4.000 Hz fs=8.000Hz Uma amostra a cada 125 s 160 amostras a cada 20 ms 80 amostras a cada 10 ms

Amostragem do sinal analógico fS = 2 x Bmax Resulta num sinal PAM (Pulse Amplitude Modulation) Sinal original Sinal PAM

Quantização da amostra Confrontação do sinal PAM com uma escala segmentada Esta escala mede a amplitude ao sinal PAM e atribui um inteiro de 8 bits para definir essa amplitude Consiste numa escala formada por 8 grandes divisões Espaçadas desigualmente Há maior finura junto à origem Para menor distorção em sons com menor nível de energia (para que relação sinal/ruído de quantização seja constante) Cada divisão dividida em 16 degraus Igualmente espaçados

Codificação Representação das amostras quantificadas em binário (que tem uma correspondência a decimal-nºs inteiros) PCM (Pulse Code Modulation) –resultado de 3 operações Amostragem Quantificação Codificação Regra geral: quantificação de sinais de voz não é uniforme; o sinal quantificado não é uma função linear do sinal original (há “distorção”)

Quantização da amostra Segmento nº Pormenor Polaridade Codificação uniforme Segmento

Codificação de voz e normas Conceitos genéricos Técnicas de codificação (e compressão) Normas ITU-T

Conceitos genéricos Codificação do sinal digital resulta em compressão dos dados que representam o sinal Codificação Com perdas (eliminação de redundância perceptual) Sem perdas (eliminação de redundância estatística) De fonte De canal Pretende-se Reduzir largura de banda ocupada para transmitir o sinal Dar maior robustez ao sinal o sinal Espaço em disco para o armazenar Em geral um canal de comunicação pode transportar várias sessões telefónicas

Codificação de voz PCM (Pulse Code Modulation) DPCM (Diferential PCM) G.711 (ITU) Amplitude do sinal é amostrado a 8.000 Hz e quantizado a 8 bits Usa lei-A ou lei- para redução de SNR DPCM (Diferential PCM) Codifica a diferença entre a amostra corrente e o valor precalculado (com base na amostra anterior) Quantização a 2, 3, 4 ou 5 bits ADPCM (Adaptative DPCM) Predição adaptativa da amostra seguinte, por inferência da última Varia o tamanho do degrau de quantificação, para uma dada SNR Gera palavras de 4 bits redução do nº de bits/s

Codificação de voz CELP (Code Excited Linear Prediction) São transmitidos um valor de excitação e um conjunto de settings de filtros predictivos lineares As transmissões dos settings são menos frequentes que os valores de excitação e são enviados com base nas necessidades LD-CELP (Low Delay Code Excited Linear Prediction) G.728 16 kbit/s ; 5 amostras de atraso (625 s) CS-ACELP G.729 8 kbit/s; AMR Adaptive Multi-Rate Usado em GSM A modulação e a codificação adaptam-se às condições do link de rádio (perdas, interferências, sensibilidade do receptor…)

VoIP (1) Telefonia tradicional Rede IP desenhada para dados Comutação de circuitos garante Um circuito dedicado Atraso limitado Rede IP desenhada para dados Comutação de pacotes “best effort”, e multipercurso não garante Atraso máximo tolerável Atraso constante  “jitter” Entrega por ordem e atempada de todos os pacotes Entrega de todos os pacotes

VoIP (2) Sem medidas de QoS (Quality of Service), os pacotes de voz são tratados como os pacotes de dados! Sem assegurar Atraso máximo, jitter máximo, dentro de valores aceitáveis… …não se pode fornecer a qualidade de telefonia a que os utilizadores se habituaram com a comutação de circuitos

Perda de pacotes Uma rede IP descarta pacotes face a Congestão da rede Demasiada variação de atraso Má qualidade da rede, em geral

Atraso (1)  Tempo entre TX enviar pacote e RX receber Em excesso, dessincroniza interlocutores Recomendação ITU G.114 0-150 ms: aceitável para a maior parte das aplicações 150-400 ms: aceitável desde que haja cuidado com o tempo de transmissão > 400 ms: inaceitável. (aceitável em casos excepcionais)

Atraso (2) Componente fixa Atraso de codificação (para um dado codificador) (2,5 a 10 ms) Tempo necessário para o DSP codificar um bloco de amostras PCM Tempo de empacotamento (< 30 ms) Tempo necessário para preencher o campo de dados de um pacote (“Tempo de acumulação”: as amostras acumulam-se num buffer antes de serem libertadas) Serialização (colocação no meio) (G.711; 32 ms voz; 282 B; 10 Mb/s: 0,2256 ms. 5 ms (64 kbps)) Recomendado usar em projecto: 20 ms = f (LB do link, tamanho do pacote) Atraso de propagação no meio Depende de muitos factores 6 s/km (ITU G.114) Total tipicamente: 40 ms (fixo) + 25 ms (variável) = 65 ms Factores atraso: Codificação Empacotamento Acesso Serialização Propagação Queuing Dejitter

Atraso (3) Componente variável Acesso ao meio (e.g.: CSMA/CD) Tempo nas filas (“Queuing”, “Dejitter”) (8 ms, típ.) Espera das frames de dados já em processamento Espera de outras frames de voz Depende do estado da fila Dejitter: acomoda os atrasos variáveis num atraso fixo (45 ms, típ.) Factores atraso: Codificação Empacotamento Acesso Serialização Transmissão Queuing Dejitter

Jitter  Variação de atraso Para compensar: “buffers” de “jitter” Dão um valor constante ao atraso Podem, no entanto, encher instantaneamente  diferença de tempos de atraso entre pacotes no mesmo fluxo (“stream”) de voz Factores atraso: Codificação Empacotamento Acesso Serialização Transmissão Queuing Dejitter Pacote 1 123456789012345678 123456789012345678901234567890 12345 12345678901234567890123456789012345678901234567890123456789012345 12345678 1234567890 1234567890 1234567890 123456789012345 Pacote 2 123456789012345678 123456789012345678901234567890 12345 12345678901234567890123456789012345678901234567890123456789012345 1234567812345678 1234567890 1234567890 1234567890 123456789012345

Técnicas conjuntas para garantir QoS “Queuing” e escalonamento Compressão de cabeçalho Fragmentação Reordenamento de pacotes Algoritmos de Reconstrução

“Queuing” Organização dos pacotes dando prioridades específicas, consoante a sua natureza (voz, vídeo, dados) Diffserv Tráfego classificado por endereços origem e destino, tipo, e atribuído a uma classe de serviço específica Usa prioridades explícitas no cabeçalho do PDU IP

A redução de cabeçalhos com o Compressed RTP Transporte de voz: RTP dentro UDP dentro dum pacote IP Nº de protocolos  cabeçalhos tornam-se consideráveis CRTP pode comprimi-los baseado na premissa de que a maior parte dos cabeçalhos IP/UDP/RTP não se alteram, ou que as suas alterações são predictíveis Um cabeçalho de 40 Bytes (RTP+UDP+IP) pode passar a 2 Bytes Especialmente benéfico em “payloads” de áudio comprimido entre 20 e 50 Bytes ligações de baixa largura de banda (< 2 Mb/s) Consome recursos de processamento IP UDP RTP Payload (20 ms) Sem CRTP 20 Bytes 8 Bytes 12 Bytes 20 a 240 Bytes Com CRTP Com CRTP 2 20 a 240 Bytes

RSVP  Resourse Reservation Protocol Permite à rede fornecer níveis diferenciados de serviço para fluxos de dados específicos Para os dados da aplicação os hosts pedem um certo QoS à rede Routers propagam esses requisitos e são feitas reservas Após reserva, WFQ (Weighted Fair Queuing) fornece espaço na fila em cada dispositivo

Fragmentação Define o tamanho máximo para um pacote de dados Previne atraso de serialização excessivo em ambiente de voz Tempo de colocação dos bits num interface Ex: pacotes de 1500 Bytes e link: 64 kbps  atraso de serialização: 187,5 ms Demasiado tempo para um pacote de voz esperar Com fragmentação, voz misturados com dados, esperam menos tempo

Reordenamento de Pacotes de voz (1) Pacotes podem seguir caminhos diferentes Cada caminho com seu comprimento e velocidade  diferentes tempos de percurso; fora de ordem Cabe ao RTP a reordenação antes de os passar ao DSP

Reordenamento de Pacotes de voz (2) Levado a cabo pelo RTP UDP/IP não ordenam pacotes Solução RTP Numeração de sequência Permite detectar perdas e desordens Identificação do tipo de payload “time stamping” Permite acomodar variações de atraso Monitorização de entrega

Principais protocolos VoIP (1) Prevê Um esquema de endereçamento Escolha do melhor caminho UDP Faz a segmentação do stream de áudio Introduz pouco overhead Sem controlos de fluxo, entrega

Principais protocolos VoIP (2) RTP É um protocolo “multicast” “ media streaming” Engloba funções para transportar por rede, dados em tempo real (e.g.: voz) Identificação do tipo de tráfego (“payload”) Númeração de sequência “time stamps” Monitorização de entrega Reordena pacotes; não pede retransmissão em caso de perda Corre sobre o UDP, donde usa serviços de Multiplexação “Cheksum” Usa portos pares [16.384 - 32.767]

Principais protocolos VoIP RTCP Fornece informação (“out-of-band”) de controlo para o fluxo do “streaming” RTP Permite aos correspondentes trocar informação sobre condições da sessão: monitorização, controlo A cada fluxo RTP corresponde um fluxo RTCP com estatísticas acerca da chamada Pacotes transmitidos Pacotes perdidos Atraso “Jitter“ entre chegadas Usado para relatórios QoS No porto ímpar acima do usado pelo RTP [16.384 - 32.767]  Cada chamada; 4 portos: 2x(RX+TX)

Impacto do tamanho de payload na largura de banda (1) Amostra de voz  saída do DSP a encapsular num PDU 20 ms, tipicamente Mais amostras/PDU  conservação de Largura de banda  maior risco, em caso de perca dum PDU Atraso variável “Buracos” graves Bytes/amostra=tamanho_amostra*LB_codec Ex: G.711: Nº_Bytes =20 ms x 64 kb/s = 160 Bytes

Impacto do tamanho de payload na largura de banda (2) G.711 G.729 Payload (ms) Payload (Bytes) PDU (Bytes) Overhead 20 160 200 40 (20%) 32 256 296 40 (13%) 64 512 552 40 (7%) 100 800 840 40 (4,7%) Payload (ms) Payload (Bytes) PDU (Bytes) Overhead 20 60 40 (66%) 32 72 40 (56%) 64 104 40 (38%) 100 140 40 (28%)

Outros “Overheads” Camada de Ligação de Dados “Tunneling” Ethernet II: 18 Bytes (MAC Add: 12, tipo: 2, CRC: 2) MLPPP: 6 Bytes (flag:1, endereço: 1, controlo: 2, CRC: 2) FRF.12*: 6 Bytes: (DLCI: 2, FRF.12: 2, CRC: 2) “Tunneling” IPSec: 50 a 57 Bytes L2TP/GRE: 24 Bytes MLPPP: 6 Bytes MPLS: 4 Bytes X.25 sobre TCP/IP; IPv6 sobre IPv4, … * Método de fragmentar frames FR com vista a QoS quando vários VCs

Cálculo da LB para uma chamada VoIP Maior LB do codec  maior LB total Maior “overhead” (OSI2)  Maior LB ttl Maior tamanho de amostra  Menor LB ttl Compressão do RTP  Menor LB ttl LB_ttl=[(overhead_OSI2 + overhead_IP_UDP_TCP+Tamanho_Amostra)/Tamanho_amostra]*LB_codec Ex: G.729 com tamanho_amostra=20 Bytes, FR; sem CRTP LB_ttl=[(6+40+20)/20]x8.000 = 26,4 kb/s

Standards ITU de codificação de voz Nome Codec Técnica de compressão Elimina Redund Débito binário LB sinal (fs ) G.711 PCM Estatíst 64 kbit/s 4 kHz G.726 DPCM 16, 24, 32 kbit/s G.728 LD-CELP Percept 16 kbit/s G.729 CS-ACELP 8 kbit/s Consoante os serviços a prestar

Medidas de desempenho Objectivas Subjectivas

Medida da qualidade de voz – Objectiva “Peak Signal Noise Ratio” (PSNR) MSE Mean Square Error f(i)  sinal original g(i) sinal degradado n  num de bits/amostra N  num de amostras

Medida da qualidade de voz – Subjectiva Mean Opinion Score (MOS) Medida estatística Opiniões de 1 (Pior) a 5 (Melhor) Perceptual Speech Quality Measurment (PSQM) Standard ITU P.861 Maior objectividade que MOS Escala: 0 (melhor) - 6.5 (pior) Implementado com equipamento de teste e sistemas de monitorização, que compara o sinal transmitido com o original e produz uma classificação

Medida da qualidade de voz - Subjectiva Perceptual Analysis Mesurement System (PAMS) British Telecom, 1998 Algoritmo predictivo Prediz métodos subjectivos, como o MOS, quando a fidelidade é afectada por factores como codecs, certas dependências de locutor (e.g. língua, tom,…) Inclui normalização automática de níveis

Medida da qualidade de voz – Objectiva Perceptual Evaluation of Speech Quality (PESQ) Standard ITU P.862 Original de “KPN Research e BT” Combina PSQM com PAMS Ferramenta de medição objectiva Prediz resultados de testes de medida subjectivos (e.g. MOS)

Algoritmos de reconstrução Admitimos sempre sinais de banda limitada É possível agrupá-los em duas classes Dimensão máxima Dimensão do problema=Nº amostras total Ex: Papoulis-Gerchberg Dimensão mínima Dimensão do problema=Nº amostras perdidas Interpolação no domínio do tempo ou frequência

Resultados experienciais Papoulis-Gerchberg Palavra “OLÁ” Corrupção duma janelas de 10% das amostras contíguas (pior situação) Corrupção das amostras pares Corrupção de amostras múltiplas de 3 Corrupção de amostras múltiplas de 3 e múltiplas de 2

Corrupção de amostras Contíguas (1) Sinal original, x

Corrupção de amostras Contíguas (2) DFT do sinal original

Corrupção de amostras Contíguas (3) DFT do sinal original, após filtragem

Corrupção de amostras Contíguas (4) Sinal observado x (filtrado com LPF)

Corrupção de amostras Contíguas (5) Sinal Corrompido y=Dx janela corrompida: 10 ms (80 amostras, 3% da palavra)

Corrupção de amostras Contíguas (6) DFT do sinal y corrompido, filtrado

Corrupção de amostras Contíguas (7) z no tempo, de y corrompido e filtrado

Corrupção de amostras Contíguas (8) Amostras emergentes devido a filtragem de y (corrompido)

Corrupção de amostras Contíguas (9) RMSE1,5x10-8 RMSE1,1x10-3

Corrupção de amostras Contíguas (10) Sinal original Sinal corrompido Sinal reconstruído

Corrupção de amostras Contíguas (11)

Corrupção de amostras Contíguas (12) janela corrompida: 1,25 ms (10 amostras)

Corrupção de amostras Contíguas (13)

Corrupção de amostras Contíguas (14)

Corrupção de amostras Contíguas (15)

Corrupção de amostras Contíguas (16) RMSE10-6 RMSE4,810-4

Corrupção de amostras pares (1) Sinal original, x

Corrupção de amostras pares (3) DFT do sinal original

Corrupção de amostras pares (3) DFT do sinal original, após filtragem

Corrupção de amostras pares (2) Sinal observado (x filtrado com LPF)

Corrupção de amostras pares (2) Sinal Corrompido y=Dx

Corrupção de amostras pares (4) DFT do sinal y corrompido

Corrupção de amostras pares (5) DFT do sinal y corrompido, filtrado

Corrupção de amostras pares (5) Amostras emergentes devido a filtragem de y (corrompido)

Corrupção de amostras pares (10) Sinal original Sinal corrompido Sinal reconstruído

Corrupção de amostras pares (11) RMSE=4,4x10-18 RMSE=4,5x10-4

Corrupção de amostras múltiplas de 3 Sinal original Sinal corrompido Sinal reconstruído Relativo a corrupção de amostras pares

Corrupção de amostras múltiplas de 2 e de 3 Sinal original Sinal corrompido Sinal reconstruído Relativo a corrupção de amostras mult. 3 Relativo a corrupção de amostras pares

Trabalho futuro Utilização do algoritmo de reconstrução de voz Estudo de outros algoritmos Implementação de um sistema real Realização de testes Utilização do algoritmo de reconstrução de voz Implementação de um sistema real (A ver como funciona) Implementação em Hardware seria útil