38
Implantação de Serviços de VoIP [email protected] Introdução ao VoIP Codecs Carlos Gustavo A. da Rocha

Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP [email protected]

  • Upload
    others

  • View
    9

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIPCodecs

Carlos Gustavo A. da Rocha

Page 2: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Relembrando● Telefonia analógica usa frequências captadas como

voz humana na faixa de 0 a 4000Khz● Para digitalizar a voz é necessário obter amostras

como o dobro da maior frequência encontrada (teorema de Nyquist)

● PCM (pulse code modulation) – Conversão analógico digital, com perda desprezível – Codecs mais elaborados irão reduzir o consumo de

banda, inserindo perda de qualidade

Page 3: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● PCM – Codec G.711● µ-law (EUA e Japão), a-law (Europa, Américas)

– Codifica amostras usando 8000 amostras por segundo, e 8 bits em cada amostra, gerando 64kbps

G.711 01101101 ...

Page 4: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Telefonia Tradicional● Conversão analógica ↔ digital nas centrais

– Em cada ligação ativa a voz trafega em um circuito digital dedicado de 64kbps

– Comutação por circuito, sem filas ou atrasos intermediários

G.711 01101101 ...

Page 5: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Telefonia Tradicional● Conversão analógica ↔ digital nas centrais

001101100

Page 6: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Telefonia Tradicional● Vantagens

– Disponibilidade >= 99,9999%– Um bom projeto garante uma taxa de chamadas

completadas virtualmente de 100%– Excelente qualidade de voz (telefonia fixa)

Page 7: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Telefonia Tradicional● Serviços Complementares do PABX

– Chamada em espera– Transferência, encaminhamento– Secretária eletrônica, conferência– Identificação de chamador

Quais são realmente

utilizados?

Page 8: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● A tecnologia de Voz sobre IP● Amostras de voz são acumuladas em datagramas

IP e enviadas pela Internet– De 20 a 100 kbps são necessários para uma chamada

de voz, dependendo de fatores que vão do codec utilizado ao tipo de enlace da rede

– Supressão da transmissão de “intervalos de silêncio” pode reduzir bastante a banda necessária

Page 9: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● A tecnologia de Voz sobre IP

A/D

D/A

Codificador

Decodificador

Buffer / Dejitter

PilhaRTP/UDP/IP

Rede IP

Mic

Phones

Page 10: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● A tecnologia de Voz sobre IP● Um “telefone IP” pode ser desde um software

rodando em um computador até um hardware dedicado– Pacotes estarão sujeitos a filas, retardo, jitter, perdas etc– Cada um destas problemas, ou a sua combinação pode

comprometer a qualidade da ligação

RedeLocal 1

Internet

RedeLocal 2

Page 11: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Cenários de Voz sobre IP

Internet

Page 12: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Cenários de Voz sobre IP

Internet

RTFCPública

Gateway VoIP

Page 13: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Cenários de Voz sobre IP

Internet

Gateway VoIP

PABXInstitucional

Page 14: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Cenários de Voz sobre IP

Internet

Gateway VoIP 1

PABXInstitucional 1

Gateway VoIP 2

RTFCPública

Page 15: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Cenários de Voz sobre IP

Internet

Gateway VoIP 1

Gateway VoIP 2

RTFCPública

RTFCPública

Page 16: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Cenários de Voz sobre IP● O último cenário utiliza a rede VoIP para completar

uma ligação entre dois telefones tradicionais, ambos na rede pública de telefonia– Tecnicamente possível de ser implementada– Considerada ilegal no Brasil, pois por regulamentação

da Anatel apenas as operadoras de telefonia podem completar uma ligação entre dois telefones da rede de telefonia pública

– Existe uma “brecha” legal caso a instituição possua seu próprio PABX, dado que, para a Anatel, os ramais internos não fazem parte da rede de telefonia pública

Page 17: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Vantagens para usuários de Voz sobre IP● Mobilidade

– Telefone pode ser um software instalado em seu computador, podendo ser utilizado de qualquer lugar com conectividade Internet

● Flexibilidade– Mudança pode ser imperceptível ao usuário comum– Incorpora os serviços já existentes, possibilita a criação

de novos integrado à Internet

Page 18: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Introdução ao VoIP

● Vantagens para usuários de Voz sobre IP● Tendência tecnológica a médio prazo

– No Brasil é necessário a formação de recursos humanos● Redução de custos

– Tarifas telefônicas de longa distância (DDD e DDI) tem caído, mas ainda são muito caras

Page 19: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Codec = codificador + decodificador● Comprime um fluxo de informação, eliminando

informações consideradas redundantes ou previsíveis

● Pode implementar estratégias avançadas como supressão de silêncio + geração de “ruído de conforto”

A/D

01101101110011000011011011100110

CODEC1110011010101100

Page 20: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Codecs de áudio● Coletam amostras durante um tempo chamado de

tempo de quadro (t_quadro)– Em geral com duração entre 10 a 30ms

● Para melhor compressão precisam analisar um conjunto de amostras (t_amostras)– Codecs complexos requerem muito processamento,

tendem a obter maior compressão, mas geram maiores atrasos. (t_processamento)

Page 21: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Atrasos inseridos pelo codec● Na codificação

– (t_quadro * t_amostras) + t_processamento

● Na decodificação– t_processamento

● A soma dos dois é chamada de atraso do codec

Page 22: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Alguns Codecs de Áudio● G.711

– Duas versões: µ-law (EUA, Japão), A-law (Europa)– Comprime amostras PCM, gerando 64kbps– Por questões históricas e de compatibilização com a

rede de telefonia convencional, é implementado em praticamente todos equipamentos da rede VoIP

Page 23: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Alguns Codecs de Áudio● G.729

– Gera quadros com 2 ou 8 bytes a cada 10ms – Tráfego total de 8kbps

● Conjugate Structure – Algebraic Code-Excited Linear Prediction (CS-ACELP)

– Bastante utilizado

Page 24: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Alguns Codecs de Áudio● G.723.1

– Gera quadros com 24, 20 e 4 bytes a cada 30ms– Quadro de 4 bytes → ruído de conforto– Quadro de 24 bytes → tráfego total de 6,4 Kbps

● Multi-Pulse Maximum Likelihood Quantization (MP-MLQ)

– Quadro de 20 bytes → tráfego total de 5,3 Kbps● Algebraic Code-Excited Linear Prediction (ACELP)

Page 25: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Alguns Codecs de Áudio● ILBC – Internet Low Bit Rate Codec

– Qualidade semelhante ao G.729 com complexidade equivalente

● Tráfego de 13.33kbps (quadros a cada 30ms) ou 15.20kbps (quadros a cada 20ms)

– Iniciativa para implementação de um Codec de código aberto, isento de royalties - http://ilbcfreeware.org

Page 26: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Qualidade da voz● Apesar de um pouco subjetiva existe uma métrica

utilizada a décadas pelas redes de telefonia para medir a qualidade da voz em uma ligação telefônica chamada de “Mean Opinion Score” - MOS– Provê uma indicação numérica da qualidade percebida

pelo usuário por meio de um valor, que varia de 1 a 5– O MOS de um codec é dado pela média dos valores

atribuídos, por um conjunto de usuários, à qualidade da voz percebida quando se escuta uma série de frases

Page 27: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● “Mean Opinion Score” - MOS

MOS Qualidade Perca percebida5 Excelente Imperceptível

4 Boa Perceptível mas não irritante

3 Média Pouco irritante

2 Ruim Irritante

1 Péssima Muito Irritante

Curiosidade – Frases “padrões”em inglês:- You will have to be very quiet.- There was nothing to be seen.- They worshipped wooden idols.- I want a minute with the inspector.- Did he need any money?

Page 28: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Outras medições da qualidade da voz● Avaliações subjetivas

– Mean Opinion Score – MOS

● Avaliações objetivas– E-model (ITU-T G.107)– Perceptual Speech Quality Measure (ITU-T P.861)– Perceptual Evaluation of Speech Quality (ITU-T P.862)

Page 29: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Comparação de Codecs

Codec Processamento Taxa MOSG.711 desprezível 64Kbps 4.1

G.729 alto 8Kbps 3.9

G.723.1 médio 5,3Kbps 3.9

ILBC alto 13,33Kbps 3.9

Page 30: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Transporte da voz fim-a-fim● Saída do Codec é enviada usando a pilha

RTP/UDP/IP– Cabeçalho RTP = 12 bytes– Cabeçalho UDP = 8 bytes– Cabeçalho IP = 20 bytes– → Overhead é MUITO grande ←

Eth26 bytes

IP20 Bytes

UDP8 Bytes

RTP12 Bytes

G.723 (dados)24 Bytes

Situação com apenas um quadro de voz por datagrama:

Eth4 Bytes

Page 31: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Protocolo RTP● RTP e RTCP (RFC 3550) são usados para

transporte e controle de mídias usadas por aplicações multimídia– RTP = Real Time Protocol– RTCP = Real Time Control Protocol

● RTP e RTCP não evitam nem corrigem atrasos, jitter, perdas etc, mas fornecem parâmetros suficientes para que uma aplicação possa compensar os seus efeitos

Page 32: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Protocolo RTP● Principais funcionalidades

– Sincronismo entre origem e destino através de timestamps

– Sequenciamento de pacotes– Identificação do tipo de mídia transportada– …

● Como os fluxos RTP normalmente transportam mídias de tempo real, é preferível o uso de UDP na camada de transporte

Page 33: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Protocolo RCTP● Provê informações sobre

– Quantidade de bytes enviados– Número de pacotes recebidos e esperados (permite

estimar a perda)– Jitter entre chegadas de pacotes– Atraso total de ida e volta (RTT)

● Aplicações utilizam estas informações para ajustar dinamicamente seu funcionamento com base do estado da rede

Page 34: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Fatores impactantes da qualidade

● Perda de pacotes– Insere falhas na conexão– Em alguns codecs a perca de 2 pacotes seguidos já

implica na diminuição da qualidade da voz– Percas isoladas são bem melhores que em “rajadas”– Ideal é < 1%, alguns codecs suportam < 2%

Page 35: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Fatores impactantes da qualidade● Atrasos → inseridos por (devem ser somados):

– Processo de codificação– Buffers de compensação de jitter– Filas em roteadores– Propagação no meio físico– … – O ITU-T G.114 especifica um atraso máximo de 150ms

(em cada direção) para uma conversa interativa

Page 36: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Fatores impactantes da qualidade● Variação de atraso (jitter)

– Variação máxima tolerável entre 20 e 50ms, dependendo do codec

– Impacto depende dos buffers de compensação● Largura de Banda

– Baixo consumo, variando em função do codec

Conclusão: mecanismos de QoS nas camadas 2 e 3 são essenciais, principalmente em links lentos

Page 37: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Consumo real de banda● Para o enlace ethernet

– G.711 → ≈ 93kbps

– G.729 → ≈ 37kbps

● Por razões de segurança a mídia pode (deve) ser criptografada– Necessário processamento e banda extras– Insere novos atrasos

Page 38: Introdução ao VoIP Codecs - diatinf.ifrn.edu.brdiatinf.ifrn.edu.br/prof/lib/exe/...voip:2-introducao_ao_voip_-_codecs.pdf · Implantação de Serviços de VoIP carlos.rocha@ifrn.edu.br

Implantação de Serviços de [email protected]

Codecs

● Protocolos de sinalização VoIP● ITU-T → H.323

– Padronizado pela comunidade de telecomunicações– Preocupação com interoperabilidade (com a rede de

telefonia convencional), controle, tarifação etc● IETF → SIP (Session Initiation Protocol)

– Padronizado pela comunidade da Internet – RFC 3261– Preocupação com flexibilidade e facilidade de integração

com outros serviços da Internet● Outros → Skype, MGCP, IAX