O documento descreve estudos sobre protocolos de VoIP como H.323, SIP, IAX e MGCP realizados utilizando a plataforma de software livre Asterisk PBX. Detalha as arquiteturas e funcionalidades desses protocolos e mostra como o Asterisk pode ser usado para implementar soluções de voz sobre IP e prover serviços adicionais como caixa postal e conferência.
PROJETO NOVAGENESIS: A CRIAÇÃO DE UMA NOVA INTERNET
Estudo e Desenvolvimento de Soluções de Voz Sobre Ip Baseado Em Software Livre
1. ESTUDO E DESENVOLVIMENTO DE SOLUÇÕES DE VOZ SOBRE IP BASEADO EM
SOFTWARE LIVRE
Leonardo Jacintho
Cerqueira Pucci -
pucci@gee.inatel.br
Thiago Dalle Dias de
Paiva
thiagodalle@gee.inatel.br
Evandro Luis
Brandão Gomes
evandro@inatel.br
Antônio Marcos
Alberti
alberti@inatel.br
Resumo – Este artigo tem como objetivo mostrar os
estudos feitos sobre protocolos de VoIP (Voz sobre
IP), suas arquiteturas, vantagens, desvantagens,
limitações e cenários de implementação. Num pri-
meiro momento estudamos os protocolos possíveis
de serem implementados utilizando a plataforma
Software Livre Asterisk PBX. Também mostrare-
mos as possíveis tecnologias de comunicação que se
integram à plataforma.
Abstract – This article aims to describe VoIP, and
its advantages, disadvantages, limitations and im-
plementation possibilities. The study starts with a
brief description of protocols that can be used with
Asterisk PBX free software. It will also be discussed
technologies that can be integrated with this plat-
form.
Palavras-Chave: VoIP, Internet, IP, H.323, Aste-
risk, SIP, MGCP, MEGACO, IAX, Software Livre.
I. INTRODUÇÃO
Atualmente muito se discute sobre Voz sobre IP,
que é uma tecnologia que tem como principal objetivo
à conciliação do tráfego de voz e do transporte de da-
dos em uma mesma rede de serviços, a Internet. Para
isso utiliza-se novas tecnologias de digitalização de
sons, protocolos de transporte de dados e de sinaliza-
ção, surgindo assim um novo conceito em telefonia. É a
Telefonia IP.
A Telefonia IP proporciona alguns serviços adi-
cionais não encontrados na telefonia convencional, mas
o seu principal atrativo é sem sombra de dúvidas a re-
dução de custos com ligações, e a convergência de da-
dos e multimídia em uma rede já existente e tão difun-
dida como a Internet.
II. PROTOCOLOS
Assim como em qualquer outra nova tecnologia,
para que o VoIP funcionasse corretamente foi necessá-
ria a padronização dos protocolos. Assim sendo, muitas
pessoas interessadas se uniram e sob a ajuda da ITU
(International Telecommunication Union), emitiram a
Recomendação H.323, que consiste em um conjunto de
protocolos que permitem a comunicação entre termi-
nais usando aplicações de áudio, vídeo e dados multi-
mídia. Em meados de 1999 a IETF (Internet Enginee-
ring Task Force) apresenta outra solução denominada
SIP (Session Initiation Protocol), que nada mais é do
que uma forma mais simples e modular de utilizar Voz
Sobre IP. Outro protocolo existente é o MGCP (Media
Gateway Control Protocol) que é o protocolo presente
nos GWs (Gateways) dos sistemas VoIP. Ele foi criado
pela IETF em conjunto com a ITU e tem como princi-
pal função o controle de chamadas, transmissões de
sinalizações e monitoramento de troncos de telefonia,
enviando mensagens de mídia para endereços específi-
cos. Existem diversas outras soluções proprietárias de
protocolos VoIP, mas por possuírem maior destaque e
eficiência comprovada os protocolos H.323, SIP,
MGCP e IAX (utilizado especificamente pelo Software
Livre Asterisk PBX) serão os principais focos desse
artigo.
II.1.H.323
O protocolo H.323 é define uma arquitetura de
telefonia para a Internet. O protocolo H.323 é um pro-
tocolo típico da indústria telefônica. Possuí chamadas
bem definidas, pilha de protocolos completa e definição
de requisitos e limitações da arquitetura.
Existem diversos outros protocolos específicos
referenciados ao H.323, protocolos específicos para:
codificação de voz, configuração de chamadas, sinali-
zação, transporte de dados e outras áreas que permitem
o estabelecimento e controle de uma comunicação mul-
timídia através da Internet.
A arquitetura básica do H.323 é apresentada a-
baixo:
Figura 1. Modelo da arquitetura H.323 para telefonia na
Internet.
II.2.SIP
O SIP (Session Initiation Protocol) foi proposto
pela IETF, e diferentemente do H.323 não é um con-
junto de protocolos completo e sim um único protocolo
2. projetado para trabalhar juntamente com outras aplica-
ções já existentes.
O SIP como sua própria sigla já diz, tem a fun-
ção de iniciar, configurar, gerenciar e encerrar sessões
multimídia, tais como chamadas telefônicas sobre IP ou
conferências multimídia. O SIP atua na camada de a-
plicação da Internet e foi projetado para interagir com
outros protocolos da Internet como TCP, UDP, TLS,
IP, HTTP, SMTP, entre outros. Por esse motivo oferece
grande estabilidade e flexibilidade.
A arquitetura básica do SIP é apresentada abai-
xo:
Figura 2. Modelo da arquitetura SIP para telefonia na
Internet.
II.3.MGCP / H.248 (MEGACO)
O MGCP (Media Gateway Control Protocol) foi
proposto pelo grupo de trabalho IETF (Internet Engine-
er Task Force) objetivando uma integração da arquite-
tura SS#7, adotada em redes de sinalização na telefonia
tradicional, com redes IP, Frame Relay e ATM. Em
uma evolução do MGCP, o trabalho cooperativo de
grupos do ITU-T e do IETF resultou na recomendação
H.248, definida também com o protocolo Megaco (I-
ETF), através do RFC 3015. O protocolo Megaco é um
padrão desenvolvido cooperativamente entre o ITU e a
IETF para permitir que um media gateway controller
(MGC) controle um media gateway (MG). Competindo
com outros protocolos como o MGCP e MDCP, é con-
siderado um protocolo complementar ao H.323 e ao
SIP, no qual o MGC controla os MGs via H.248, mas
poderá comunicar-se via H.323 ou SIP, ou ainda IAX
(utilizando o Asterisk PBX, por exemplo).
II.4.IAX
O IAX (Inter-Asterisk eXchange) foi um proto-
colo criado pelos desenvolvedores do Software Livre
Asterisk PBX, é um protocolo de controle e transmis-
são de dados de mídia em uma rede ponto a ponto. O
IAX tem capacidade de transportar qualquer tipo de
mídia e tem como principal função à sinalização de
chamadas.
Diferentemente do H.323 e do SIP, não utiliza
os protocolos RTP/RTCP para a transmissão de dados,
e sim faz uma multiplexação de diversos fluxos de mí-
dia em um único datagrama UDP, que também é utili-
zado para a sinalização das chamadas.
Todos os datagramas UDP são transmitidos em
uma porta padrão (UDP 4569), podendo dessa forma
unificar as duas atividades (sinalização e transmissão
do fluxo) em um único protocolo. Essa característica
pode ser utilizada com grande eficiência para eliminar
problemas relacionados com o NAT (Network Address
Translation), problemas esses existentes no SIP.
Abaixo mostramos como ocorre o estabeleci-
mento de uma chamada entre dois terminais utilizando
o protocolo IAX:
Figura 3. Múltiplos fluxos multiplexados em um único
canal.
III. PLATAFORMA UTILIZADA
O Software Livre PBX Asterisk é um PBX IP
completo criado pela Digium, empresa de software e
hardware. Roda sobre UNIX e outras plataformas deri-
vadas, como Linux e BSD. Foi projetado e desenvolvi-
do para facilitar a adição e gerenciamento, de forma
consistente, de qualquer componente de telefonia, seja
ele hardware ou software, permitindo assim que o usuá-
rio modele seu PBX IP da forma que preferir.
As diversas tecnologias e interfaces suportadas
pelo Asterisk são divididas em três grupos gerais:
• Interface Pseudo TDM Zaptel: Estas interfaces
permitem a integração com o sistema telefônico digital
e analógico e possuem suporte à Pseudo-TDM Swit-
ching, o que permite a realização de conferências de
vídeo.
• Interface não Zaptel: Estas interfaces permitem
a integração com o sistema telefônico digital e analógi-
co, mas não possuem suporte à Pseudo-TDM Swit-
ching, permitindo somente a realização de chamadas
telefônicas.
• Protocolos de pacotes de voz: São os protoco-
los padrões para a comunicação através de VoIP (SIP,
IAX, H.323, MGCP, etc.), e não necessitam de nenhum
hardware adicional para realizar uma chamada.
• Áudio Codecs: Codificação de Voz utilizando
métodos de codificação de voz que utilizam métodos
adaptativos (alguns codecs suportados pelo Asterisk:
G.711, G.723, G.729, G.728, ADPCM, etc).
3. Os componentes básicos da arquitetura do Aste-
risk são:
• Canais - São equivalentes a uma linha telefô-
nica do STFC (Sistema Telefônico Fixo Comutado);
• Codecs - São os responsáveis por permitir tal
compactação da voz, o que torna realizável a comuni-
cação (em uma única rede de dados com limitação de
banda) entre vários canais, simultaneamente. O Aste-
risk possui também tradutores de codecs, o que permite
que canais que utilizam diferentes codecs (com diferen-
tes taxas de compressão) possam se comunicar.
•Protocolos - SIP, H.323, IAX, MGCP, etc;
•Aplicação - São as funcionalidades adicionais,
em relação a um PABX legado, encontradas no Aste-
risk PBX: como Voice-Mail, videoconferências, Fax-
Mail, entre tantas outras.
A seguir mostramos um diagrama com os com-
ponentes básicos da arquitetura do Asterisk e suas prin-
cipais interações:
Figura 4 – Arquitetura geral da Plataforma Asterisk
IV. APLICAÇÕES
O Asterisk possui todas as características de
uma central telefônica de grande porte, disponibiliza
ainda serviços de Voice-Mail, Fax-Mail, URA (Unida-
de de Resposta Audível) e DAC (Distribuidor automá-
tico de chamadas), etc.
O Asterisk pode ser utilizado em diversas apli-
cações, entre as quais podemos citar:
• Gateway VoIP (MGCP, SIP, IAX, H.323);
• Private Branch eXchange (PBX);
• Servidor URA;
• Softswitch – Atuando como comutador de cir-
cuitos de hardware;
• Centrais de Telemarketing;
• Correio de voz - uma secretária eletrônica ou
caixa de mensagens como as de um telefone celular;
• Sistema de mensagens unificadas - todas as
mensagens, de qualquer espécie, de um usuário são
direcionadas para um mesmo local, como sua caixa de
e-mail, por exemplo;
• Distribuidor automático de chamadas com
controle de filas (DAC);
• Servidor de música em espera;
• Servidor de conferência (vídeo e voz).
• Serviço de presença.
Além destas funcionalidades já esperadas na atua-
lização de um PBX legado pelo Asterisk, existem mó-
dulos de interligação entre o Asterisk e outras tecnolo-
gias:
• Sistema de Anúncio
Recurso muito utilizado em que a secretária anun-
cia um telefonema pelos alto-falantes: “Doutor Claudio
– Ramal 22”. A interligação pode ser feita também com
porteiros eletrônicos e demais sistemas half-duplex e
full-duplex.
• Rádio UHF/VHF/GSM/PTT
Figura 5 – Integração rádio – Asterisk
• Notificação de chamada pela rede
O Asterisk emite um datagrama UDP que sinaliza
no computador uma chamada sendo recebida no telefo-
ne (ramal físico da pessoa).
Figura 6 – Notificação via rede.
• Notificação de chamada por SMS
O usuário do ramal recebe no seu aparelho celular
o número da pessoa que ligou e se ela deixou ou não
recado. Como já existe hoje na rede celular. Só que
implementado no ramal do servidor Asterisk.
• Mobilidade de Ramais
Os ramais podem ser alterados facilmente com o
uso de login e senha. Pode ser configurado um ramal
via Internet. Um funcionário pode levar seu notebook a
um cliente, efetuar o login em seu ramal na empresa
4. pela Internet e receber chamadas como se estivesse
dentro da empresa.
• Fila de Atendimento
Ao ligar para o número desejado, uma gravação
avisa que o chamada está na fila, passando o tempo
estimado para retornar a ligação. Ao ligar novamente o
chamador é atendido na hora ou seu tempo de espera é
atualizado. Assim, não é necessário ficar escutando
uma gravação e aguardando ser atendido. Ao ligar no-
vamente, o chamador continua na fila e não perde: sua
vez, tempo esperando no telefone e ainda pode ligar de
outro número e continuar seu atendimento com o seu
lugar na fila.
• Monitoramento de Call Center
Permite ao administrador do Call Center, verificar
entre outras coisas, quais são os ramais atendendo no
momento, a percentagem de utilização dos ramais, o
tempo médio das ligações atendidas e realizadas, além
da possibilidade de realização de gravações das liga-
ções para uma posterior auditoria.
Figura 7 - Monitoramento de Call Center.
• Discagem Preditiva
Sistema que realiza chamadas automaticamente,
distribuindo-as automaticamente entre os agentes sem-
pre que são atendidas e desloca ligações para números
ocupados, ou que não tenham sido atendidos, para o
final da lista de chamadas a realizar. Valendo-se de
recursos avançados de software, os sistemas de disca-
gem preditiva também dão conta de estimativas do nú-
mero de chamadas a serem realizadas e do número de
agentes disponíveis para lidar com estas ligações.
• Acesso ao PBX Externamente
Permite que um funcionário estando em casa ligue
na empresa, pague preço de “ligação local”, se autenti-
que no PBX e faça chamadas para clientes e demais
ramais da empresa.
• Ligações via Página WEB
Figura 8 – Página web contendo o ramal e número a
serem chamados.
As ligações pela página podem responder tanto
para o ramal interno ou em outro tipo de interação, em
que o cliente acessando seu site resolve obter mais in-
formações e realiza uma chamada entre o site e o seu
servidor VoIP pela Internet. Desta forma, é possível se
acessar o Call Center da empresa. Tudo isto usando o
seu servidor VoIP, seu link de internet e o link do seu
cliente.
V. ESTUDO DE CASO
Abaixo mostramos os dados obtidos em uma li-
gação VoIP usando o protocolo SIP. Estes dados foram
coletados no laboratório do Mestrado e Iniciação Cien-
tífica do INATEL:
A análise de Jitter no nível IP não é realizável
em um ambiente operacional comum. Portanto, reali-
zamos uma análise no nível RTP, utilizando o sistema
operacional UNIX, onde é possível medir o valor mé-
dio de todas as diferenças de atrasos incrementais, do
início de uma conversação, até o pacote final da mes-
ma.
Figura 9 – Cálculo de Jitter em uma chamada VoIP
intra-rede.
5. Realizamos também uma análise do estabeleci-
mento de uma chamada VoIP utilizando SIP até sua
finalização. O resultado é mostrado no diagrama de
tempo da Figura 10. Nesta figura podemos observar os
tempos, codecs e os IPs dos terminais reais envolvidos.
Figura 10 – Diagrama de tempo do SIP em uma cha-
mada VoIP intra-rede.
Além do diagrama temporal do SIP, capturamos
nessa mesma análise o número de pacotes SIP e sua
respectiva função.
Figura 11 – Pacotes SIP em uma chamada VoIP intra-
rede.
VI. CONSIDERAÇÕES FINAIS
Através do presente artigo, apresentamos as
principais características técnicas relativas aos protoco-
los mais utilizados no VoIP, processos de estabeleci-
mento de chamadas e os tipos de dispositivos envolvi-
dos em uma rede VoIP. O que se espera é que o uso do
VoIP cresça cada vez mais devido a fatores como o
crescimento da oferta de serviços com maior largura de
banda e com um preço cada vez mais acessível. Enxer-
gamos na convergência entre a área de Telecomunica-
ções e a de Informática um fator decisivo para a migra-
ção, nas empresas e instituições, de sistemas proprietá-
rios para sistemas abertos utilizando Software Livre.
O estudo de caso realizado de forma prática foi
realizado inserindo a plataforma Asterisk PBX em um
ambiente real, o laboratório da Iniciação Científica do
INATEL, onde realizamos algumas chamadas entre
terminais SoftPhones e assim conseguimos os dados
para análise.
Alguns objetivos não foram possíveis de se al-
cançar, tais como a interligação entre duas redes distin-
tas, a ligação entre o Asterisk e a rede STFC. Isso ocor-
reu em função da burocracia e questões relativas à se-
gurança da rede da Instituição. Esperamos poder reali-
zar até o final dos nossos estudos mais testes significa-
tivos relacionados à implantação de uma possível rede
VoIP dentro da Instituição e/ou ambientes correlatos a
Instituição (filiais e/ou parceiros).
VII. AGRADECIMENTOS
Gostaríamos de agradecer a FINATEL (Funda-
ção Instituto Nacional de Telecomunicações) e a FA-
PEMIG (Fundação de Amparo à Pesquisa do Estado de
Minas Gerais) pelo suporte a este trabalho e, também a
todos que de alguma forma contribuíram para a realiza-
ção do mesmo.
REFERÊNCIAS
[1] TANENBAUM, A. S. Redes de Computadores. 4.
ed. São Paulo: Campus, 2003.
[2] DANTAS, M. Tecnologias de Redes de Comuni-
cação e Computadores. 1. ed. Rio de Janeiro: Axcel
Books, 2002.
[3] NUNES, M. S.; CASACA A. J. “Redes Digitais
com Integração de Serviços”, ed. Presença, 1992.
[4] SPENCER, M.; ALLISON, M.; RHODES, C. The
Asterisk Handbook. 2003. Disponível em: <
http://www.digium.com/handbook-draft.pdf>. Acesso
em: 01 jul. 2007.