FACULDADE DE TECNOLOGIA VERIS IBTA
Adalberto Chagas CORREA
André Ramos de SOUZA
Rafael Tosetto PIMENTEL
William Moreira RIBEIRO
CENTRAL PABX IP PARA PEQUENOS NEGÓCIOS
UTILIZANDO FERRAMENTAS OPEN SOURCE
SÃO JOSÉ DOS CAMPOS
2011
Adalberto Chagas CORREA
André Ramos de SOUZA
Rafael Tosetto PIMENTEL
William Moreira RIBEIRO
CENTRAL PABX IP PARA PEQUENOS NEGÓCIOS
UTILIZANDO FERRAMENTAS OPEN SOURCE
Trabalho de Conclusão de Curso,
apresentado à Faculdade de Tecnologia
VERIS IBTA para a obtenção do título de
Tecnólogo em Redes de Computadores.
Orientador: Prof. Antony Leiras
SÃO JOSÉ DOS CAMPOS
2011
Adalberto Chagas CORREA
André Ramos de SOUZA
Rafael Tosetto PIMENTEL
William Moreira RIBEIRO
CENTRAL PABX IP PARA PEQUENOS NEGÓCIOS
UTILIZANDO FERRAMENTAS OPEN SOURCE
Trabalho de Conclusão de Curso,
apresentado à Faculdade de Tecnologia
VERIS IBTA para a obtenção do título de
Tecnólogo em Redes de Computadores.
Aprovado em 27/06/2011
BANCA EXAMINADORA
________________________________________________________
Prof. Antony Leiras
Faculdade VERIS IBTA
_________________________________________________________
Prof. Jordan M. Bonagura
Faculdade VERIS IBTA
__________________________________________________________
Prof. Luís Carlos Fraga e Silva Jr.
Faculdade VERIS IBTA
Dedicamos este trabalho às nossas famílias e amigos, estímulos
que nos impulsionaram a buscar vida nova a cada dia, nossos
agradecimentos por terem aceitado se privar de nossa companhia
pelos estudos, concedendo a nós a oportunidade de nos
realizarmos ainda mais. Também ao Prof. Antony Leiras por
dedicar seu tempo para nos guiar e ajudar a tornar um trabalho
de melhor qualidade.
AGRADECIMENTOS
À Deus pela oportunidade e pelo privilégio que nos foram dados em compartilhar
tamanha experiência e, ao frequentar este curso, perceber e atentar para a relevância de temas
que não faziam parte, em profundidade, das nossas vidas.
Ao nosso Orientador Prof. Antony Leiras pelo incentivo, simpatia e presteza no
auxílio às atividades e discussões sobre o andamento desta Monografia de Conclusão de
Curso.
A todos os professores pelo carinho, dedicação e entusiasmo demonstrado ao longo do
curso.
Aos demais idealizadores, coordenadores e funcionários da Veris Faculdades.
Aos colegas de classe pela espontaneidade e alegria na troca de informações e
materiais numa demonstração de amizade e solidariedade.
E, finalmente, às nossas famílias pela paciência em tolerar a nossa ausência.
“O sucesso é ir de fracasso em
fracasso sem perder entusiasmo.”
Winston Churchill
RESUMO
Esta monografia consiste na implementação de um servidor Central PABX IP com sistema
operacional Linux Debian e utiliza ferramentas Open Source para implementar um serviço de
voz sobre IP, como o Asterisk e FreeBPX, abrangendo sua instalação, configuração e testes
realizados. O trabalho ainda fundamenta conteúdos sobre VoIP, telefonia, Linux, Open
Source, redes de computadores, entre outros. A solução desenvolvida foi motivada pela
dificuldade de acesso para pequenas empresas adquirirem soluções PABX proprietárias,
sendo um sistema que serve como uma alternativa a estes PABX's e que possui
funcionalidades similares.
Palavras chaves: Open Source, Asterisk, PABX IP, Linux, VoIP, Telefonia.
ABSTRACT
This monograph is the deployment of an IP PBX server with operational system Linux
Debian and use Open Source tools to deploy a Voice over IP service, such as Asterisk and
FreeBPX, covering installation, configuration and testing. The work still content about VoIP,
telephony, Linux, Open Source, computer networking, and others. The solution developed
was motivated by the difficulty for small businesses to acquire proprietary PBX solutions,
being a system that serves as an alternative to these PBXs and has similar funcionality.
Keywords: Open Source, Asterisk, IP PABX, Linux, VoIP, Telephony
LISTA DE FIGURAS
Figura 01 - Componentes do sistema telefônico.........................................................................5Figura 02 - PSTN........................................................................................................................5Figura 03 - Arquitetura de um PABX.........................................................................................7Figura 04 - Topologia LAN......................................................................................................11Figura 05 - Topologia MAN.....................................................................................................12Figura 06 - Topologia WAN.....................................................................................................12Figura 07 - Three Way Handshake...........................................................................................16Figura 08 - O modelo arquitetônico do H.323 para telefonia da Internet.................................31Figura 09 - A pilha de protocolos H.323..................................................................................32Figura 10 - O uso de um proxy e de servidores de redirecionamento com o SIP.....................34Figura 11 - Modelo para QoS...................................................................................................41Figura 12 - Exemplo de cenário de implementação..................................................................48Figura 13 - Visão ampla do cenário..........................................................................................49Figura 14 - Configuração inicial do FreePBX..........................................................................52Figura 15 - Ferramenta de administração do FreeBPX............................................................53Figura 16 - Módulo de adição de ramais..................................................................................54Figura 17 - Módulo administrativo do FreePBX......................................................................56Figura 18 - Ramais adicionados................................................................................................57Figura 19 - Registro do softphone.............................................................................................58Figura 20 - Softphone configurado com IP público..................................................................59Figura 21 - Flash Operator Panel............................................................................................60Figura 22 - Chamada estabelecida pelo softphone....................................................................61Figura 23 - Configuração do roteador.......................................................................................62Figura 24 - Primeira execução do Asterisk...............................................................................77Figura 25 - Instalação do FreePBX...........................................................................................78Figura 26 - Acesso ao FreePBX................................................................................................79
LISTA DE QUADROS
Quadro 01 - Comparação PABX Convencional X PABX IP...................................................10Quadro 02 - Camadas do Modelo OSI......................................................................................13Quadro 03 - Classes de endereço IP.........................................................................................19Quadro 04 - Endereços IP privados..........................................................................................19Quadro 05 - Comparação TCP/UDP.........................................................................................20Quadro 06 - Camadas da arquitetura TCP/IP...........................................................................21Quadro 07 - Os métodos do SIP definidos na especificação do núcleo....................................33Quadro 08 - Comparação entre o H.323 e o SIP.......................................................................35Quadro 09 - A rigidez dos requisitos de qualidade de serviço.................................................39Quadro 10 - Tarifação entre São José dos Campos e São Paulo..............................................42Quadro 11 - Tarifação entre VoIP e São Paulo.........................................................................42Quadro 12 - Tarifação entre São José dos Campos e Nova Iorque..........................................43Quadro 13 - Tarifação entre VoIP e Nova Iorque.....................................................................43
LISTA DE ABREVIATURAS E SIGLAS
ACK - Acknowledge
AGI - Asterisk Gateway Interface
APT - Advanced Packaging Tool
ASCII - American Standard Code for Information Interchange
ATA - Analogy Telephone Adapter
CD - Compact Disk
CID - Caller Identification
CRD - Call Detail Record
CRTP - RTP Header Compression
DDD - Discagem Direta a Distância
DID - Destination Identification
DSL - Digital Subscriber Line
EBCDIC - Extended Binary Coded Decimal Interchange Code
FOP - Flash Operator Panel
FTP - File Transfer Protocol
FXO - Foreign eXchange Office
FXS - Foreign eXchange Subscriber
GPL - General Public License
GNU - GNU is Not Unix
GSM - Global System for Mobile Communications
HTML - HyperText Markup Language
HTTP - HyperText Transfer Protocol
HTTPS - HyperText Transfer Protocol Secure
IAX2 - Inter Asterisk eXchange 2
IETF - Internet Engineering Task Force
iLBC - Internet Low Bit Rate Codec
IMAP - Internet Message Access Protocol
IP - Internet Protocol
ISO - International Organization for Standardization
ISP - Internet Service Provider
ITU - International Telecommunication Union
LAN - Local Area Network
MAC - Media Access Control
MAN - Metropolitan Area Network
MGCP - Media Gateway Control Protocol
NAT - Network Address Translation
PABX - Private Automatic Branch eXchange
PBX - Private Branch eXchange
PCM - Pulse Code Modulation
PDA - Personal Digital Assistant
PDU - Protocol Data Unit
PHP - Hypertext Preprocessor
PHP/FI - Personal Home Page / Forms Interpreter
POP3 - Post Office Protocol 3
PSTN - Public Switched Telephone Network
QoS - Quality of Service
RFC - Request For Comments
RJ-45 - Registered Jack - 45
RSVP - Resource Reservation Protocol
RTCP - Real-time Transport Control Protocol
RTP - Real-time Transport Protocol
RTPC - Rede de Telefonia Pública Comutada
SCCP - Skinny Client Control Protocol
SCTP - Stream Control Transmission Protocol
SEQ - Sequence
SIP - Session Initiation Protocol
SMTP - Simple Mail Transfer Protocol
SQL - Structured Query Language
SSH - Secure Shell
SYN - Synchronize
TCP - Transmission Control Protocol
TDM - Time Division Multiplex
TLS - Transport Layer Security
UDP - User Datagram Protocol
URA - Unidade de Resposta Audível
URL - Uniform Resource Locator
VLAN - Virtual Local Area Network
VoIP - Voice over Internet Protocol
WAN - Wide Area Network
SUMÁRIO
1 INTRODUÇÃO......................................................................................................................1
1.1 OBJETIVOS.........................................................................................................................21.1.1 Objetivo Geral............................................................................................................21.1.2 Objetivos Específicos.................................................................................................2
1.2 DELIMITAÇÃO DO TEMA....................................................................................................21.3 RELEVÂNCIA DO TEMA......................................................................................................31.4 ORGANIZAÇÃO DO TRABALHO..........................................................................................3
2 TELEFONIA..........................................................................................................................4
2.1 REDE DE TELEFONIA CONVENCIONAL...............................................................................42.2 REDE DE TELEFONIA DIGITAL...........................................................................................62.3 PABX................................................................................................................................6
2.3.1 PABX Digital.............................................................................................................82.3.2 PABX IP.....................................................................................................................9
3 REDES DE COMPUTADORES........................................................................................11
3.1 TIPOS DE REDE................................................................................................................113.1.1 LAN..........................................................................................................................113.1.2 MAN.........................................................................................................................123.1.3 WAN.........................................................................................................................12
3.2 MODELO OSI...................................................................................................................133.2.1 Camada Física...........................................................................................................143.2.2 Camada de Enlace....................................................................................................143.2.3 Camada de Rede.......................................................................................................143.2.4 Camada de Transporte..............................................................................................143.2.5 Camada de Sessão....................................................................................................143.2.6 Camada de Apresentação..........................................................................................153.2.7 Camada de Aplicação...............................................................................................15
3.3 PROTOCOLOS DE REDE....................................................................................................153.3.1 Protocolo TCP..........................................................................................................163.3.2 Protocolo IP..............................................................................................................173.3.2.1 Classes de Endereço IPv4......................................................................................183.3.3 Protocolo UDP..........................................................................................................203.3.4 Arquitetura TCP/IP...................................................................................................20
3.4 REDE MUNDIAL (INTERNET).........................................................................................21
4 SISTEMAS OPERACIONAIS...........................................................................................22
4.1 LICENÇAS OPEN SOURCE.................................................................................................224.1.1 GPL...........................................................................................................................23
4.2 SISTEMAS OPERACIONAIS OPEN SOURCE........................................................................244.3 PROJETO GNU.................................................................................................................254.4 GNU/LINUX.....................................................................................................................25
4.4.1 Distribuições Linux..................................................................................................25
5 SERVIDORES......................................................................................................................26
5.1 SERVIDORES DE REDE......................................................................................................265.2 SERVIÇOS DE REDE..........................................................................................................26
6 VOZ SOBRE IP (VOIP)......................................................................................................27
6.1 INTEGRAÇÃO....................................................................................................................286.1.1 FXS...........................................................................................................................286.1.2 FXO..........................................................................................................................29
6.2 INFRAESTRUTURA............................................................................................................296.2.1 Telefone IP...............................................................................................................296.2.2 ATA..........................................................................................................................296.2.3 Softphone..................................................................................................................29
6.3 PROTOCOLOS DE SINALIZAÇÃO.......................................................................................306.3.1 IAX2.........................................................................................................................306.3.2 H.323........................................................................................................................306.3.3 SIP............................................................................................................................336.3.4 Comparativo Entre H.323 E SIP...............................................................................35
6.4 CODECS.........................................................................................................................366.4.1 G.711 ulaw/alaw.......................................................................................................376.4.2 G.726........................................................................................................................376.4.3 G.729........................................................................................................................376.4.4 GSM..........................................................................................................................376.4.5 iLBC.........................................................................................................................386.4.6 LPC-10......................................................................................................................386.4.7 Speex........................................................................................................................38
6.5 QUALIDADE DE SERVIÇO.................................................................................................396.6 PROBLEMAS NO VOIP.....................................................................................................406.7 COMPARAÇÃO ENTRE LIGAÇÃO TELEFÔNICA CONVENCIONAL E VOIP...........................42
7 SOFTWARES UTILIZADOS.............................................................................................44
7.1 DEBIAN............................................................................................................................447.2 APACHE...........................................................................................................................447.3 PHP..................................................................................................................................457.4 MYSQL...........................................................................................................................467.5 ASTERISK.........................................................................................................................467.6 FREEPBX.........................................................................................................................477.7 X-LITE.............................................................................................................................47
8 IMPLANTAÇÃO.................................................................................................................48
8.1 DESCRIÇÃO DO CENÁRIO.................................................................................................488.2 VISÃO AMPLA DO CENÁRIO............................................................................................498.3 INSTALAÇÃO DEBIAN SQUEEZE.......................................................................................518.4 INSTALAÇÃO DE PACOTES PRÉ-REQUISITOS...................................................................51
8.5 INSTALAÇÃO E CONFIGURAÇÃO DO ASTERISK................................................................518.6 INSTALAÇÃO DO FREEPBX.............................................................................................528.7 CONFIGURAÇÃO DO FREEPBX........................................................................................52
8.7.1 Criação de Ramais....................................................................................................538.7.2 Configuração de Tronco Externo SIP.......................................................................558.7.3 Configuração de Rota de Saída................................................................................558.7.4 Configuração de Rota de Entrada.............................................................................558.7.5 Criação de Sala de Conferência................................................................................55
8.8 ATUALIZAÇÃO DO FREEPBX...........................................................................................56
9 TESTES................................................................................................................................57
9.1 CRIAÇÃO DE RAMAIS.......................................................................................................579.2 REGISTRO DE RAMAIS INTERNOS....................................................................................589.3 REGISTRO DE RAMAIS EXTERNOS...................................................................................599.4 REALIZAÇÃO DE CHAMADAS INTERNAS..........................................................................619.5 REALIZAÇÃO DE CHAMADAS EXTERNAS.........................................................................629.6 TRANSFERÊNCIA DE CHAMADAS.....................................................................................629.7 CAPTURA DE CHAMADAS DE GRUPO...............................................................................639.8 SALA DE CONFERÊNCIA...................................................................................................63
10 CONSIDERAÇÕES FINAIS............................................................................................64
10.1 SUGESTÃO DE TRABALHOS FUTUROS............................................................................65
REFERÊNCIAS......................................................................................................................67
APÊNDICE A..........................................................................................................................72
A.1 INSTALAÇÃO DOS PRÉ-REQUISITOS PARA COMPILAÇÃO.................................................72A.2 INSTALAÇÃO DO ASTERISK.............................................................................................72A.3 INSTALAÇÃO DOS PRÉ-REQUISITOS DO ASTERISK ADD-ONS..........................................73A.4 INSTALAÇÃO DO ASTERISK ADD-ONS.............................................................................73A.5 CONFIGURANDO O ASTERISK MANAGER........................................................................74
APÊNDICE B..........................................................................................................................75
B.1 PREPARAÇÃO PARA O FREEPBX.....................................................................................75B.2 INSTALAÇÃO E CONFIGURAÇÃO DOS PRÉ-REQUISITOS DO FREEPBX.............................75B.3 INSTALAÇÃO DO FREEPBX.............................................................................................76B.4 ACESSO À INTERFACE DO FREEPBX...............................................................................79B.5 CONFIGURAR O FREEPBX PARA SER EXECUTADO NA INICIALIZAÇÃO...........................79
1
1 INTRODUÇÃO
A comunicação sempre foi algo indispensável na vida dos seres humanos, e está presente
desde os tempos mais remotos de nossa civilização, dando-se de várias formas diferentes.
Com o passar do tempo, as formas de comunicação foram se aprimorando, até que no início
de 1876 Graham Bell patenteou o seu telefone nos Estados Unidos.
Por muito tempo a telefonia se resumiu a uma simples conversa entre dois interlocutores
localizados em pontos remotos. Nas últimas décadas, graças a digitalização da telefonia,
muitos serviços foram agregados, como secretária eletrônica, correio de voz, identificador de
chamadas, conferências, encaminhamento dinâmico, entre outros.
Porém, nem tudo é vantagem. A implementação destes novos recursos podem utilizar
aparelhos caros e uma infraestrutura que nem sempre está ao alcance de todos os negócios.
Por isso, ainda hoje muitos destes recursos se encontram inacessíveis por inúmeras empresas.
Nos últimos anos, não apenas as redes de telefonia evoluíram, mas as redes de computadores
também, disponibilizando aos assinantes de serviços de Internet cada vez mais qualidade e
velocidade em suas conexões. E essa evolução tornou possível a convergência das tecnologias
de transmissão de dados e voz, de modo que, se utilizadas as ferramentas corretas, a voz pode
trafegar através das redes de computadores em forma de dados com qualidade similar àquela
que trafega pelas redes de telefonia convencional.
Com essa tecnologia, os recursos de telefonia até então inacessíveis para pequenos negócios
podem se tornar realidade, pois utilizando a estrutura de rede de computadores já existente, é
possível agregar mais estes serviços, através da utilização de uma Central PABX IP. Essa
Central é considerada de baixo custo, pois utiliza ferramentas Open Source e não requer
equipamentos complexos e nem infraestrutura dispendiosa para que sua implementação seja
realizada. Outra vantagem é a facilidade e relativa simplicidade de instalação e manutenção,
quando comparado à telefonia convencional. Sendo assim, a utilização da voz sobre IP tem
sido cada vez mais difundida.
2
1.1 Objetivos
1.1.1 Objetivo Geral
Esse trabalho apresenta um estudo sobre a tecnologia de transmissão de voz sobre IP a fim de
implantar uma solução com as principais funcionalidades existentes em um PABX
convencional ou proprietário, tendo como objetivo atender às necessidades de pequenos
negócios.
A solução proposta não exige equipamentos de alto desempenho para funcionar, sendo um
sistema de baixo custo, pois utiliza ferramentas Open Source, tal como o Asterisk,
responsável pelo gerenciamento das ligações telefônicas. Por estes motivos acaba se tornando
uma ferramenta alternativa para as soluções existentes no mercado.
1.1.2 Objetivos Específicos
Os objetivos específicos são:
• Apresentar as características e funcionalidades, assim como as vantagens e desvantagens da
adoção de um sistema PABX convencional e PABX IP;
• Realizar um estudo das ferramentas Open Source que agregam as funcionalidades de um
PABX IP, como o Asterisk;
• Projetar, desenvolver e implementar a Central PABX IP, realizando os devidos testes e
validando seu funcionamento.
1.2 Delimitação do Tema
Este trabalho não irá abordar a qualidade de serviço na prática, análise do tráfego de rede
interna, segmentação da infraestrutura entre redes de dados e rede de voz, a infraestrutura
utilizada ou os componentes do equipamento que servirá como servidor da Central PABX IP,
nem se o ambiente possui alta disponibilidade.
A Central PABX IP não fará ligações telefônicas para a telefonia convencional diretamente, a
provedora VoIP ficará encarregada em realizar estas ligações.
3
1.3 Relevância do Tema
Uma solução de PABX IP construída com ferramentas Open Source é interessante para
empresas que não tem grande capacidade financeira para adotar ferramentas proprietárias e
torna possível essas empresas gozarem das mesmas funcionalidades existentes nas
ferramentas proprietárias que as grandes empresas utilizam para telefonia.
Assim, o sistema desenvolvido pode servir como uma solução alternativa aos equipamentos
proprietários existentes no mercado.
1.4 Organização do Trabalho
O capítulo 1 trata sobre a introdução da monografia, os objetivos do tema abordado,
delimitação e relevância do tema.
O capítulo 2 fala sobre rede de telefonia convencional e digital e PABX digital e IP.
No capítulo 3 constam informações sobre fundamentos de redes de computadores, como tipos
de rede, modelo OSI, protocolos de rede, arquitetura TCP/IP e rede mundial.
O capítulo 4 consiste em sistemas operacionais Open Source, licenças Open Source, Linux,
servidores e serviços de rede.
O capítulo 5 detalha VoIP, integração, infraestrutura, protocolos de sinalização, codecs,
qualidade de serviço e problemas no VoIP.
No capítulo 6 mostra informações a respeito das ferramentas utilizadas no trabalho, como
Debian, Apache, PHP, MySQL, Asterisk, FreeBPX e X-Lite.
O capítulo 7 consta informações sobre a implantação de uma Central PABX IP, com a
descrição do cenário, instalação do Debian, pacotes pré-requisitos, configuração do Asterisk e
FreePBX.
No capitulo 8 é mostrado a fase de testes da implantação, com a criação e registro dos ramais
internos e externos, realização das chamadas internas e externas, transferência de chamadas,
captura de chamadas de grupo e sala de conferência.
Por último, as considerações finais e as referências utilizadas neste trabalho.
4
2 TELEFONIA
A primeira transmissão de voz, segundo Davidson et. al. (2008, p.31), foi realizado em 1876
por Alexander Graham Bell, através do uso de um circuito direto, ou seja, uma conexão física
de um telefone diretamente a outro telefone, sem sofrer nenhum desvio. No inicio, as ligações
eram mono direcionais e não era possível duas pessoas conversarem simultaneamente, mas
com o passar do tempo as ligações passam a se tornar bidirecionais, possibilitando duas
pessoas conversarem ao mesmo tempo.
De acordo com Colcher (2005, p.2), Graham Bell fundou a primeira companhia Bell de
telefonia em 1877. Com o crescimento do serviço de telefonia, o uso das conexões diretas
tornou-se complexo, pois cada usuário deveria possuir uma linha telefônica direta e dedicada
para cada telefone existente.
Com isso foi necessário desenvolver uma central de comutação telefônica, onde as ligações
telefônicas eram centralizadas e através de um operador humano era realizado o chaveamento
físico das ligações de forma manual. Com o passar do tempo foi desenvolvido a primeira
central telefônica eletromecânica, em 1891 por Almon Strowger, e dispensava os operadores
humanos. (COLCHER, 2005, p.4)
2.1 Rede de Telefonia Convencional
De acordo com Torezan (2006), o sistema telefônico é composto por quatro componentes
básicos:
• Terminal telefônico: equipamento utilizado para realizar as ligações telefônicas e discar o
número desejado com quem se quer falar. Pode ser um único terminal ou um sistema de
telefonia privado, como o PABX;
• Rede de acesso: meio por onde se interligam os terminais telefônicos até a central de
telefonia pública, utilizando cabos de par metálicos, cabos óticos ou rede de telefonia sem fio,
como celular;
• Central telefônica: realiza a interconexão entre os usuários de forma automática e se
comunica com outras centrais telefônicas;
• Rede de transmissão: possui como função interligar as centrais telefônicas por meio de cabo
coaxial, cabo ótico ou ainda sem fio.
5
A Figura 01 mostra de forma simplificada os componentes de um sistema telefônico:
Figura 01 - Componentes do sistema telefônicoFonte: Adaptado de Torezan (2006, p.16)
Conforme Microsoft (2011), a Rede de Telefonia Pública Comutada (RTPC), também
chamada de Public Switched Telephone Network (PSTN) é comutada por circuitos para
comunicar voz em tempo real e é orientada a conexão, estabelecendo uma conexão fim a fim
entre a origem e destino. O estabelecimento de um circuito acontece em três etapas
(MATIAS; FERNANDES, 2009):
• Estabelecimento do circuito: antes de iniciar a ligação telefônica, é escolhida uma rota entre
os terminais telefônicos para o estabelecimento de um circuito, que aloca um canal dedicado
de 64 Kbps até a finalização da chamada telefônica;
• Transferência da informação: depois de estabelecer um circuito, a conversação pode ser
realizada;
• Finalização do circuito: quando a origem ou o destino colocam o telefone no gancho, a
ligação é finalizada e o circuito é encerrado.
Conforme Roncaglia (2009), a PSTN foi projetada para funcionar em modo analógico, mas
com o passar do tempo tornou-se digital e agregou dispositivos móveis a ela, como celulares.
Na Figura 02 pode-se observar um esquema de ligação telefônica utilizando PSTN:
Figura 02 - PSTNFonte: Elaborado pelos autores
A PSTN faz a interconexão entre os equipamentos telefônicos convencionais. A responsável
pela realização, manutenção e estabelecimento das chamadas telefônicas são as operadoras de
telefonia.
6
2.2 Rede de Telefonia Digital
Segundo Torezan (2006) em meados de 1970 as centrais telefônicas analógicas começaram a
se digitalizar trocando seus núcleos por microprocessadores e, conforme Matias e Fernandes
(2009), a comutação telefônica era realizada a partir de circuitos integrados menores e mais
rápidos, além de serem mais confiáveis e econômicos se comparado com os relés das centrais
eletromecânicas.
Torezan (2006) também diz que com a utilização de equipamentos digitais a sinalização das
ligações passou a ser feita em um canal exclusivo, pois anteriormente a sinalização era feita
juntamente com o canal utilizado na conversação.
Estas mudanças trouxeram a possibilidade de novos serviços, como chamada em espera,
encaminhamento de ligações, conferência, identificação de chamadas, etc (MATIAS;
FERNANDES, 2009).
De acordo com Matias e Fernandes (2009), ao realizar uma ligação telefônica, o sinal
analógico de voz chega até a central telefônica, que é digitalizado e transmitido para outra
central telefônica. Ao chegar lá, a central transforma o sinal digital para analógico novamente
e o leva até seu destino final. Esse processo é possível pois as centrais telefônicas utilizam
modulação Pulse Code Modulation (PCM) para codificar os sinais analógicos para digitais.
Conforme propôs Dotta et. al. (2009) e Matias e Fernandes (2009), quando há necessidade de
se utilizar diversas linhas telefônicas simultaneamente, a central telefônica digital
disponibiliza para este assinante uma linha digital chamada E1, que possui capacidade de 2
Mbps e é dividido em 32 canais de 64 kbps, possibilitando assim a utilização de várias linhas
telefônicas através do mesmo meio físico.
2.3 PABX
Segundo Telnext (2011), PABX é uma central telefônica que realiza comutação privada que
agiliza e racionaliza o fluxo da comunicação telefônica, podendo ser utilizado em empresas e
residências, sendo um equipamento dedicado ao serviço interno de distribuição de chamadas.
Segundo Melo e Viviurka (2007, p.11), uma central PABX é utilizada
em empresas, condomínios e ambientes onde o tráfego interno de ligações é consideravelmente elevado. Um equipamento de PABX interliga-se à rede pública de telefonia através de linhas fornecidas por esta, chamadas de tronco, e as distribui em ramais (internos) bem mais numerosos.
O nome dado ao terminal utilizado pelos usuários se chama ramal e a linha telefônica que faz
a conexão entre o PABX e a operadora de telefonia chama-se linha tronco.
7
A Figura 03 mostra a arquitetura de um PABX:
Figura 03 - Arquitetura de um PABXFonte: Adaptado de Sato (2004)
A arquitetura de um PABX é dividida em:
• Controlador de processo: é o software responsável pelo funcionamento do sistema;
• Endpoins: consiste nos telefones analógicos e digitais;
• Módulos: são placas que interligam os endpoins e estabelecem a conexão com a PSTN;
• Módulo de interconexão: responsável pela conexão entre módulos distintos.
Segundo Dígitro (2011), existem diversos tipos de PABX, cada qual com uma especificação
única.
• PABX analógico: de acordo com Sato (2004), surgiu em meados dos anos 80 e utilizava
tecnologia proprietária, ou seja, a manutenção do equipamento ou a implementação de novos
serviços ficava exclusiva a uma única empresa. Além disso, utiliza sinal analógico para
realizar as ligações telefônicas.
• PABX digital: sucessor do PABX analógico utiliza técnicas de transmissão de sinal digital.
• PABX IP: PABX que funciona a base de comutação de pacotes IP; é o VoIP propriamente
dito.
• PABX Híbrido: possui como característica a capacidade de realizar ligações telefônicas
convencionais e VoIP a partir do uso de sinal digital e da comutação de pacotes IP, ou seja, é
um PABX digital e IP em um mesmo equipamento.
8
2.3.1 PABX Digital
Conforme Matias e Fernandes (2009, p.12) com o avanço dos equipamentos eletrônicos e da
digitalização dos dados, foi possível transmitir o sinal de voz em formato digital até a rede
PSTN.
As vantagens de um sistema digital em comparação com o sistema analógico são (MATIAS;
FERNADES, 2009, p.12):
• Gravação da ligação telefônica: tornou-se possível armazenar as ligações telefônicas em
dispositivos de armazenamento devido à digitalização da voz. Também foi possível introduzir
correio de voz;
• Maior capacidade de ligações: ao utilizar um tronco digital E1 é possível transmitir 30
canais de voz ao mesmo tempo;
• Redução de custo e aumento da confiabilidade: um sistema digital possuía menor consumo
de energia e seus equipamentos ocupam menos espaço físico. Os circuitos digitais utilizados
possuem uma maior confiabilidade e melhor imunidade a ruídos;
• Aumento da distância com melhor qualidade de voz: melhora na qualidade do sinal em
maiores distâncias devido ao melhoramento na imunidade a ruídos;
• Convergência dos dados: o sinal digital permite transmitir voz, dados, imagens, músicas,
entre outros;
• Eliminação do cruzamento de sinais: não existem enlaces físicos em uma comutação digital,
eliminando assim a chance de haver cruzamentos indesejáveis entre ramais e linhas troncos no
sistema;
• Discagem direta para um ramal telefônico: é possível realizar uma ligação a partir de um
terminal telefônico externo a rede diretamente para um ramal interno, sem passar pela
telefonista.
Ainda citando Matias e Fernandes (2009, p.13), um PABX convencional está limitado ao
fabricante do mesmo, pois utiliza tecnologia proprietária. Caso seja necessário realizar uma
manutenção, alteração, modificação na programação ou adição de novas funcionalidades
neste equipamento, será necessário entrar em contato com técnicos do fabricante da central,
que acarretará em custos de operação e manutenção.
9
2.3.2 PABX IP
Segundo Matias e Fernandes (2009) um PABX IP possui as funcionalidades encontradas em
um PABX convencional, porém funcionando na rede de dados baseado em pacotes IP.
Neste meio, um pacote de voz divide espaço com diversos outros pacotes de dados, sendo
necessário um cuidado especial em manter um nível aceitável de qualidade ao implementar
este serviço de voz na redes de computadores.
As características em um PABX IP são (MATIAS; FERNANDES, 2009):
• Redução de custo: em uma ligação telefônica realizada com origem VoIP e destino telefonia
convencional é possível encaminhar a ligação telefônica até a operadora de VoIP mais
próxima do destino e a partir dela a ligação é transferida para uma operadora local de
telefonia convencional até o destino, reduzindo a distância entre os pontos e, por
conseqüência, reduzindo o custo da chamada. Além disso, ao utilizar VoIP, as ligações entre
matriz e filial são gratuitas, independente da distância geográfica;
• Possibilidade de acesso pela Internet: ao acessar o PABX IP por um navegador, é possível
usufruir dos serviços de correio de voz, monitorar, gerenciar e administrar o sistema, sem a
necessidade de instalar plugins;
• Fácil implementação de novos serviços: um PABX IP é baseado em software e possibilita a
implementação e atualização de novas funcionalidades sem haver nenhum impacto do
serviço;
• Compatibilidade: é compatível com qualquer telefone convencional e IP existentes, seja por
hardware ou por software;
• Mobilidade: é possível usufruir dos serviços de telefonia IP a partir de qualquer lugar no
mundo, desde que se tenha conexão com a Internet.
10
O Quadro 01 mostra a comparação entre um PABX convencional e um PABX IP:
Quadro 01 - Comparação PABX Convencional X PABX IP
PABX Convencional PABX IP
Tipo Comutação de circuito Comutação de pacotes
Arquitetura Centralizada Distribuída
Topologia Estrela Espinha dorsal (Backbone)
Instalação
Elétrica (Wiring)
Cada ponto (telefone) precisa de
um par de fios
Cada ponto (telefone) pode ser
qualquer nó da rede TCP/IP
Capacidade
(quantidade de
ramais)
Limitado (depende do hardware)Ilimitado (depende apenas da
largura de banda)
EscalabilidadeComplexo (depende do
hardware)
Fácil (basta adicionar outros
servidores)
ConvergênciaVoz e dados são duas redes
isoladas
Voz e dados se convergem em
uma única rede
Conectividade
com a InternetNão existe
Total, utiliza o mesmo protocolo
da Internet
FlexibilidadePouca. Adicionar ou mover uma
extensão requer mudança física
Grande. Uma extensão funciona
em qualquer nó da rede, inclusive
na Internet
Limitação
(aplicação)
Limitado aos recursos
tradicionais de vozAplicações baseados em software
Novas aplicaçõesNecessita de interfaces ou placas
adicionais
Uma aplicação nova é fácil de ser
implementada
Redundância /
Backup
Não existe. Outro PABX deve ser
configurado como Backup
Outros servidores podem ser
configurados como Backup
Configuração do
sistemaComplicada
Simples e normalmente baseado
em Interface Web
InterligaçãoNão suporta interligação com
outros PABX’s
É fácil interligar diversos PABX
através de VPN/WAN ou pela
Internet
Integração com
computadoresNão existe
Os computadores e telefones são
integrados em uma única rede
Fonte: Adaptado de Matias e Fernandes (2009)
11
3 REDES DE COMPUTADORES
Em uma rede de computadores diversos tipos de informações trafegam na rede, inclusive a
voz, que vem sendo largamente transmitida através de redes IP. Mas, para que esta possa ser
transmitida, segundo Gomes (2005), a voz precisa ser digitalizada para trafegar de um ponto
origem até chegar ao destino. Para ocorrer esta comunicação, é necessário utilizar uma série
de regras, definições e protocolos.
Para um melhor entendimento sobre VoIP, é necessário verificar os conceitos por trás de uma
rede de dados. Será abordado conteúdo sobre arquiteturas e topologias de rede existentes,
protocolos de rede e o modelo de referencia OSI.
3.1 Tipos de Rede
A estrutura de um ambiente de redes de computadores possui diversas arquiteturas, de acordo
com a distância geográfica da rede, variando desde pequenos escritórios, comunicação entre
prédios de uma empresa na mesma cidade ou até mesmo em outro continente.
3.1.1 LAN
De acordo com Farias (2006), uma Local Area Network (LAN) possui uma área geográfica
limitada, podendo ser uma conexão com apenas dois computadores e se expandindo até
centenas de computadores ou periféricos de rede, como câmeras IP, impressoras de rede, etc,
e podendo ocupar diversos andares de um prédio.
A Figura 04 mostra um exemplo de rede local:
Figura 04 - Topologia LANFonte: Elaborado pelos autores
Esta infraestrutura pode variar. Existem LAN’s mais complexas, que abrangem roteadores,
switches, servidores, mainframes, câmeras IP, PABX IP, entre diversos outros tipos de
equipamentos.
12
3.1.2 MAN
Segundo Senger (2011), as Metropolitan Area Network (MAN) são utilizadas para distâncias
intermediárias, como por exemplo, a interligação da rede entre escritórios, prédios ou um
campus universitário dentro de uma mesma cidade.
A Figura 05 mostra um exemplo de rede metropolitana:
Figura 05 - Topologia MANFonte: Elaborado pelos autores
3.1.3 WAN
Redes de longa distância, também conhecidas como Wide Area Network (WAN), tem como
definição a interligação de redes LAN ou MAN, que podem estar localizadas em outro estado
ou país. Logo, a WAN não está limitada a uma área geográfica. (FARIAS, 2006)
De acordo com Senger (2011), as redes WAN costumam ser redes de acesso público ou de
grandes companhias prestadoras de serviço, como a Embratel, e pode envolver o uso de
grande infraestrutura, como cabos óticos, cabos submarinos, sistema de rádio frequência e até
mesmo satélites.
Pode-se dizer que a Internet é uma grande rede WAN, sendo possível realizar troca de e-
mails, comércio eletrônico, ligações VoIP, entre outros.
A Figura 06 demonstra o esquema de uma WAN:
Figura 06 - Topologia WANFonte: Elaborado pelos autores
13
Pode-se observar da Figura 06 três redes LAN e uma rede MAN, que se comunicam entre si
através da WAN. Esta figura representa apenas um exemplo, pois na realidade existem
incontáveis LAN’s e MAN’s conectadas na WAN, sejam redes corporativas, organizacionais,
governamentais ou domésticas.
3.2 Modelo OSI
Segundo Filippetti (2009, p.34), no início das redes de computadores cada fabricante possuía
um padrão de comunicação próprio. Logo era necessário comprar equipamentos de um
mesmo fabricante, pois estes equipamentos se comunicavam somente com o mesmo
fabricante.
Com isso, a International Organization for Standardization (ISO), junto com representantes
dos fabricantes existentes, criaram o modelo de referencia Open Systems Interconnection
(OSI) em 1984, a fim de resolver o problema de compatibilidade entre fabricantes, através da
padronização na comunicação e transporte de dados. (FILIPPETTI, 2009, p.34)
Segundo Northrup e Mackin (2009, p.35) uma camada de rede “são etapas conceituais na
comunicação de rede, realizadas por programas baseados em padrões chamados protocolos”.
O modelo OSI é dividido em grupos lógicos de sete camadas, e cada uma dessas camadas
possui características e protocolos distintos. Segundo Colcher (2005, p.62) o nome dado ao
pacote de informação trocado entre as camadas se chama Protocol Data Unit (PDU).
O Quadro 02 mostra um resumo das camadas do modelo OSI e os respectivos PDU’s:
Quadro 02 - Camadas do Modelo OSI
Camada Descrição Nome da PDU
Aplicação Provê a interface com o usuário. Dados
Apresentação Compressão, criptografia e semântica dos dados. Dados
SessãoEstabelecimento, gerenciamento e finalização das
sessões de rede.Dados
TransporteProvê comunicação fim-a-fim, controle de erros e
controle de fluxo.Segmento
Rede Endereçamento lógico e roteamento. Pacote
Enlace Endereçamento físico, detecção e correção de erros. Quadro
Física Funcionalidades mecânicas, óticas e elétricas. Bit
Fonte: Adaptado de Filippetti (2009, p.41)
14
3.2.1 Camada Física
A primeira camada do modelo OSI é responsável, segundo ISO (1994), por prover as
funcionalidades mecânicas, óticas e elétricas, assim como a ativação, manutenção e
desativação das conexões físicas.
Segundo Colcher (2005), esta camada ainda verifica se a transmissão dos dados é simplex,
half-duplex ou full-duplex, realizando apenas o envio de uma cadeia de bits em um meio
físico. Problemas de erro e transmissão são tratados por camadas superiores.
3.2.2 Camada de Enlace
De acordo com Colcher (2005, p.56) e Farias (2006, p.114) a camada de enlace detecta e
corrige erros de transmissão e realiza controle de fluxo, que evita que a origem envie ao
destino mais dados do que esse tem condições de processar. Além disso, é nessa camada que
se encontra o endereço físico do equipamento, chamado de Media Access Control (MAC).
3.2.3 Camada de Rede
Conforme Filippetti (2009, p.47) a camada de rede é responsável pelo endereçamento lógico
da rede e pelo roteamento dos dados que, de acordo com Farias (2006, p.114), “roteia os
pacotes da origem para o destino” utilizando o melhor caminho para ser trafegado, através da
análise da “condição da rede, prioridade de serviço entre outros fatores.”
3.2.4 Camada de Transporte
Segundo Colcher (2005), a camada de transporte é responsável pela comunicação fim-a-fim,
controle de erros e controle de fluxo. De acordo com Farias (2006, p.113) cabe a esta camada
garantir a entrega dos pacotes da origem até o destino “livres de erro, sem perdas ou
duplicações”.
3.2.5 Camada de Sessão
Conforme propôs Davidson et. al. (2008, p.147) a camada de sessão estabelece, gerencia e
finaliza as sessões de rede. Basicamente uma sessão de rede sincroniza e gerencia “o diálogo
entre duas ou mais entidades” da rede.
15
3.2.6 Camada de Apresentação
De acordo com Filippetti (2009, p.43) a camada de apresentação é responsável por converter
o formato dos dados providos da camada de aplicação para um formato compreendido e
aceitável por outras camadas, como por exemplo ASCII, EBCDIC, PostScript, entre outros.
Esta camada também realiza compressão e descompressão dos dados, além do uso de
criptografia.
3.2.7 Camada de Aplicação
Conforme Colcher (2005, p.62) e Farias (2006, p.113) a camada de aplicação oferece aos
aplicativos que estão sendo utilizados no computador um meio de utilizarem o ambiente de
comunicação OSI, agindo como uma janela onde essas aplicações podem acessar os serviços
de rede. Alguns dos protocolos que trabalham nessa camada são POP3, utilizado em e-mail,
HTTP, utilizado para acessar páginas na Internet, FTP, utilizado para transferência de
arquivos, dentre outros.
3.3 Protocolos de Rede
Para que ocorra a comunicação entre equipamentos em uma rede, é necessário que eles
utilizem a mesma linguagem de comunicação, a fim de prover a conexão necessária para
realizar a transmissão. O protocolo de rede é o meio lógico que os equipamentos utilizam para
comunicarem entre si.
Um exemplo prático para o entendimento do que é protocolo, de acordo com Kurose e Ross
(2006, p.6), é:
Quando se digita a URL de uma página Web no browser... Primeiramente, o computador enviará uma mensagem de requisição de conexão ao servidor Web e aguardará uma resposta. O servidor receberá essa mensagem de requisição de conexão e retornará uma mensagem de resposta de conexão. Sabendo que agora está tudo certo para requisitar o documento da Web, o computador envia então o nome da página Web que quer buscar naquele servidor, com uma mensagem GET.
É dessa maneira que um protocolo de rede é utilizado, para definir “o formato e a ordem das
mensagens trocadas entre duas ou mais entidades comunicantes, bem como as ações
realizadas na transmissão e/ou no recebimento de uma mensagem ou outro evento”
(KUROSE; ROSS, 2006, p.7)
16
3.3.1 Protocolo TCP
O protocolo Transmission Control Protocol (TCP) é um protocolo da camada de transporte,
seguindo o modelo de referência das sete camadas do modelo OSI.
A camada de transporte é responsável (FILIPPETTI, 2009, p44) “pela segmentação e
reconstrução de fluxo de dados provenientes de camadas superiores. Eles provêm
comunicação ponto a ponto e podem estabelecer uma conexão lógica entre a aplicação origem
e a aplicação destino em uma rede”.
Logo, como o próprio nome sugere, o Protocolo de Controle de Transmissão, realiza a
comunicação fim a fim entre equipamentos de rede.
O protocolo TCP é um dos mais confiáveis, pois ao estabelecer uma conexão, é realizado o
Three Way Handshake, conforme Figura 07.
O processo de Three Way Handshake acontece da seguinte forma (INFOSEC INSTITUTE,
2011):
Figura 07 - Three Way HandshakeFonte: Adaptado de InfoSec Institute (2011)
17
1. O cliente contata o servidor usando um pacote de sincronização SYN de valor 1 para iniciar
a conexão. Junto com o pacote SYN, um pacote SEQ, de número de sequência com valor X
também é enviado.
O cliente espera um determinado tempo e, caso o servidor ainda não tenha retornado nenhuma
informação, o cliente reenvia o pacote SYN, e assim sucessivamente até o servidor responder
o pedido;
2. O servidor recebe os pacotes do cliente e responde o pedido através do uso de um pacote
SYN, ACK e SEQ; o pacote ACK contém o número da sequência que o cliente está
esperando, no caso seria x+1. O pacote SEQ contém seu próprio pacote de sequência com um
valor y;
3. O cliente devolve para o servidor um pacote ACK y+1 e um pacote SEQ com o número da
sequência x+1.
Embora seja um dos protocolos mais confiáveis, é também o mais pesado, devido a essa série
de confirmações realizadas para garantir a entrega da informação. Logo, em aplicações
sensíveis ao atraso, como áudio conferência ou vídeo conferência, ela não é ideal, sendo
recomendável o uso do protocolo UDP.
3.3.2 Protocolo IP
Segundo Farias (2006), o protocolo IP é um número que identifica “os hosts e as redes das
quais fazem parte”, sendo um protocolo da camada de rede do modelo OSI, realizando o
endereçamento lógico e seleção de rota.
Conforme propôs Gomes (2005), o IP é um protocolo não-orientado a conexão e não faz
verificação de recebimento do pacote ao destino, deixando essas funções para os protocolos
da camada de transporte, como por exemplo, o TCP.
De acordo com Minasi et. al. (2003), um endereço IP versão 4, ou simplesmente IPv4, possui
um valor de 32 bits, separados em quatro campos, cada um possuindo 8 bits, podendo ser
interpretados por valores decimais que variam de 0 até 255, como o endereço IP a seguir:
• Em binário: 11000000.10101000.00000000.00000001;
• Em decimal: 192.168.0.1.
O número IP em decimal citado anteriormente é obtido através da conversão de binário para
decimal.
18
Para utilizar o endereço IPv4, é necessário o uso da máscara de sub-rede. Segundo Battisti
(2006), ao analisar a máscara de sub-rede é possível descobrir qual parte do endereço IP
representa o número de rede e qual parte representa o número dos hosts. Além disso, em cada
classe de endereço IPv4, que será detalhado a seguir, ”existe um determinado número de
redes possíveis e, em cada rede, um número máximo de máquinas”.
3.3.2.1 Classes de Endereço IPv4
Segundo Minasi et. al. (2003), Farias (2006), Davidson et. al. (2008) e Battisti (2006), um
endereço IP pode pertencer a uma das seguintes classes:
• Classe A: endereços IP que possuem seus 8 primeiros bits configurados para endereço de
rede, e os 24 bits restantes são destinados ao endereçamento dos hosts. O endereço de rede
varia de 0 a 126, possuindo 126 endereços de rede disponíveis. Já o endereço de host pode
alcançar até 16.777.214 endereços;
• Classe B: endereços IP que possuem os 16 primeiros bits configurados para endereço de
rede e os outros 16 bits são usados para endereçamento local. O endereço de rede varia de 128
a 191, possuindo até 16.382 endereços de rede disponíveis e 65.534 endereços de hosts;
• Classe C: Possui os 24 bits mais à esquerda utilizados para endereço de rede, e apenas 8 bits
para endereçamento local. Nota-se que, por dispor de apenas 8 bits para endereçamento local,
só é possível utilizar 254 endereços IP para os hosts, mas em contrapartida possui 2.097.152
endereços de rede disponíveis;
• Classe D: Esta é uma classe especial, onde os endereços são reservados para endereços
multicast, que enviam informações para um grupo específico de endereços;
• Classe E: Outro tipo de classe especial foi alocado para ser usado no futuro.
Para um melhor entendimento, pode-se observar o Quadro 03:
Quadro 03 - Classes de endereço IP
Classe
Primeiro
campo do
endereço
IP
Endereço de rede
(R) e endereço de
host (H)
Máscara de
sub-rede
Número de
redes
Número de
hosts
A 0 até 126 R.H.H.H 255.0.0.0 126 16.777.214
B 128 até 191 R.R.H.H 255.255.0.0 16.382 65.534
C 192 até 223 R.R.R.H 255.255.255.0 2.097.150 254
D 224 até 239 Multicast N/A N/A N/A
E 240 até 255 Experimental N/A N/A N/A
19
Fonte: Adaptado de Russo (2011)
Porém, apesar da distinção de IP’s por classes citada anteriormente, publicações mais recentes
trazem uma nova forma de se tratar este assunto. Northrup e Mackin (2009, p.73) afirmam
que, apesar de ainda se ver endereços /8, /16 e /24 serem relacionados com as classes A, B e C
respectivamente, são termos referentes a um antigo sistema de roteamento, "que não é mais
usado, embora seu vocabulário seja às vezes empregado informalmente". Também dizem que
estes termos "estão tecnicamente obsoletos".
De acordo com Davidson et. al. (2008), um pacote IP possui três modos de envio:
• Unicast: o pacote IP é enviado para um único endereço IP especificado;
• Multicast: o pacote IP é enviado para um grupo específico de hosts, podendo ser enviado
para diversas sub-redes;
• Broadcast: o pacote IP é enviado para todos os hosts da mesma sub-rede. Esse tipo de envio
pode circular por switches e bridges, porém não é aceito ao trafegar por roteadores, sendo
então descartados.
Conforme Rekhter et. al. (1996), dentro de cada classe de endereçamento IP, exceto a classe
D e E, possuem um intervalo de endereços privados e são utilizados na rede local. O Quadro
04 mostra o intervalo dos endereços IP privados de cada classe:
Quadro 04 - Endereços IP privados
Classe Endereço IP inicial Endereço IP final
A 10.0.0.0 10.255.255.255
B 172.16.0.0 172.31.0.0
C 192.168.0.0 192.168.255.255
Fonte: Elaborado pelos autores
3.3.3 Protocolo UDP
Assim como o protocolo TCP, o UDP é um protocolo da camada de transporte, ou seja, provê
a comunicação fim a fim, porém se diferencia do TCP, pois não realiza o Three Way
Handshake e é um protocolo não-orientado a conexão. Logo pode-se considerar que é um
protocolo que não agrega confiabilidade para a conexão.
Segundo Davidson et. al. (2008, p.158) o protocolo UDP é mais simples que o TCP e é
melhor aproveitado “em situações onde os mecanismos de confiabilidade do TCP não são
necessários”. Além disso, o “UDP também não é orientado à conexão e tem um cabeçalho
menor, o que traduz em um overhead mínimo”, resultando assim em uma menor utilização da
largura de banda da rede.
20
O uso do UDP é recomendado em aplicações sensíveis ao atraso, como VoIP, conforme
propôs Davidson et. al. (2008, p.158), pois independente da quantidade de pacotes
descartados na rede, o mesmo não é retransmitido. Caso o TCP fosse utilizado em VoIP, o
atraso “introduzido pelas confirmações e retransmissões iria tornar a qualidade da voz
inaceitável”.
O Quadro 05 mostra um comparativo entre os protocolos TCP e UDP:
Quadro 05 - Comparação TCP/UDP
TCP UDP
Comunicação sequencial Comunicação não-sequencial
Comunicação confiável Comunicação não-confiável
Comunicação orientada à conexão Comunicação não-orientada à conexão
Latência elevada (cabeçalho complexo) Baixa Latência (cabeçalho menor)
Estabelece um circuito virtual Não estabelece um circuito virtual
Fonte: Filippetti (2009, p.133)
3.3.4 Arquitetura TCP/IP
De acordo com Santos (2006), a arquitetura TCP/IP “é um conjunto de protocolos, que é um
conjunto de normas e regras que permitem a comunicação, transporte e serviços em redes,
utilizados como padrão da Internet e separados em camadas.”
Segundo Tanenbaum (2003, p.44) um dos principais objetivos da criação dessa arquitetura era
devido ao crescimento da ARPANET, que era a antecessora da Internet, realizando a
padronização dos protocolos de comunicação das redes existentes, pois na época as
universidades e repartições púbicas da ARPANET possuíam protocolos distintos, dificultando
a comunicação entre elas.
A arquitetura TCP/IP se diferencia do modelo OSI pois possui apenas 4 camadas, conforme
mostra o Quadro 06:
Quadro 06 - Camadas da arquitetura TCP/IP
21
Camada Descrição
Aplicação
Reúne todos os protocolos de alto nível que fornecem serviços de
comunicação ao usuário final. Esses serviços podem ser: Acesso Remoto
(Telnet), correio eletrônico (SMTP, IMAP, POP3), transferência de arquivos
(FTP) ou páginas da Internet (HTTP)
Transporte É a camada responsável por segmentar as mensagens em pacotes
Rede ou
Internet
Responsável por enviar pacotes, verificar qual o caminho por onde serão
enviados os mesmos.
Física Preparam os pacotes para um determinado meio de comunicação.
Fonte: Adaptado de Santos (2006)
De acordo com Tanenbaum (2003, p.52) a arquitetura TCP/IP não é tão detalhada se
comparada com o modelo OSI, que possui três camadas a mais. Além disso, a arquitetura
TCP/IP não abrange outra pilhas de protocolos a não ser o TCP/IP, como por exemplo o
Bluetooth.
3.4 Rede Mundial (INTERNET)
A respeito de Internet, Tanenbaum (2003, p.53) diz que esta "não é de modo algum uma rede,
mas sim um vasto conjunto de redes diferentes que utilizam certos protocolos comuns e
fornecem determinados serviços comuns".
Para um computador se conectar à Internet é necessário um Internet Service Provider (ISP),
empresa responsável por prover uma conexão com a Internet.
Segundo Tanenbaum (2003, p.85), a Internet é útil tanto para empresas como para indivíduos,
pois é uma fonte de serviços, informação e entretenimento.
22
4 SISTEMAS OPERACIONAIS
Para funcionar corretamente, os componentes físicos de um computador, chamados de
hardware, necessitam de um software capaz de gerenciar e controlar seu sistema. O software
que realiza estas funções é o sistema operacional.
Segundo Tanenbaum (2001, p.2), um sistema operacional gerencia os dispositivos de
hardware, como processador, memória principal, discos, impressoras, teclados, monitores,
entre outros dispositivos de entrada e saída, e “fornece aos programas do usuário uma
interface com o hardware mais simples”.
De acordo com Tanenbaum (2001), os sistemas operacionais podem ser classificados como:
• Monousuário: apenas um usuário pode usar o equipamento por vez;
• Multiusuário: diversos usuários podem utilizar o equipamento de forma simultânea;
• Mono tarefa: apenas uma tarefa é processada por vez;
• Multitarefa: várias tarefas podem ser processadas e executadas simultaneamente.
De acordo com Cruz (1998) um Sistema Operacional (SO) pode ser entendido como um
intermediário, que atua entre o usuário e os componentes físicos do computador, fazendo com
que comandos emitidos pelo usuário (através do mouse, teclado e outros dispositivos de
entrada) sejam entendidos e processados pelo computador, e este emitir o resultado para um
dispositivo de saída que será compreendido pelo usuário, como monitor, impressora, caixas de
som, entre outros.
4.1 Licenças Open Source
Segundo opensource.org (2011), a definição de Open Source não se limita apenas ao fato de
ter livre acesso ao código fonte, mas deve seguir alguns critérios, como os seguintes:
1 - Redistribuição livre: o software licenciado sob esta licença não pode ser vendido total ou
parcialmente. Antes deve ser distribuído sem exigir qualquer tipo de royalty ou taxas
adicionais.
2 - Source code: o software que for distribuído deve disponibilizar o seu código fonte, seja
juntamente com o arquivo compilado, seja em algum outro meio público disponível para
download;
3 - Trabalhos derivados: deve-se permitir que outros trabalhos possam ser feitos e distribuídos
sob a mesma licença a partir do código original;
4 - Integridade do código fonte do autor: o código só pode ser modificado, através de path
files, se a licença original o permitir. Essas modificações podem implicar em um novo nome
ou nova versão do software original;
23
5 - Sem discriminação contra pessoas ou grupos: deve ser distribuído sem discriminação a
grupos ou pessoas específicas;
6 - Sem discriminação contra campos de trabalho: todas as pessoas em todas as áreas do
conhecimento devem ter liberdade para utilizar o software, sem restrições específicas;
7 - Distribuição da licença: a licença que for redistribuída deve ser aplicada de igual forma,
assim como a licença original;
8 - Licença não deve ser específica para um produto: a licença não deve depender de outro
programa ser parte de alguma distribuição de software particular, sendo que todas as partes
devem ter o mesmo direito de uso do software original;
9 - Licença não deve restringir outro software: os softwares que porventura sejam distribuídos
com o software licenciado não podem ser restringidos a compartilhar da mesma licença;
10 - Licença deve ser tecnologicamente neutra: o software não deve ser subordinado à
determinada pessoa, tecnologia ou estilo de interface particular.
De acordo com Greve (2007), esta licença possui uma filosofia baseada em quatro liberdades,
como seguem:
1ª liberdade: possibilidade de executar o software para qualquer uso;
2ª liberdade: possibilidade de visualizar o código fonte de um programa e de alterá-lo às suas
necessidades;
3ª liberdade: redistribuir cópias;
4ª liberdade: alterar o código fonte do programa a fim de melhorá-lo e distribuir as
modificações para o público de modo que a comunidade inteira se beneficie da melhoria.
4.1.1 GPL
De acordo com GNU.ORG (1991) a General Public Licence (GPL) é o documento publicado
pela GNU, que é uma organização subordinada à Free Software Foundation, onde está
descrito que quando se fala em free software quer dizer software livre e não software gratuito.
Um software livre significa que ele possui seu código fonte disponibilizado para todos, já o
software gratuito significa que pode ser usado a vontade, porém não possui seu código fonte
liberado.
Segundo Free Software Foundation (2011) a GPL possui como responsabilidade garantir a
liberdade de compartilhamento de softwares e versões e é aplicado tanto em versões
desenvolvidas por instituições ou pessoas físicas.
24
Caso uma pessoa desenvolva um software baseado no sistema operacional Linux, que é um
sistema baseado em licença GPL, deve seguir os requisitos que a GPL define: (GNU.ORG,
1991)
• Deixar o código fonte do software disponível para qualquer pessoa;
• Referenciar sempre quem iniciou este software e os demais que o modificaram;
• Ao modificar um software, indicar o que foi alterado por terceiros para não denegrir a
reputação dos autores originais.
Neste documento também está descrito que os autores não se responsabilizam por qualquer
dano causado tanto de software ou hardware, pois os códigos são acessíveis por qualquer
pessoa e podem ser modificados.
4.2 Sistemas Operacionais Open Source
Para definir que um sistema operacional é Open Source deve-se conhecer o tipo de licença de
software utilizado. Segundo Marques (2009), os tipos de licença de software de um sistema
operacional se dividem em quatro grupos:
• Software Proprietário: este tipo de software não possibilita a visualização de seu código
fonte, copiar, redistribuir ou utilizar sem antes ter a permissão do proprietário, ou comprar
uma licença para utilizar o software. Exemplos de programas proprietários são Microsoft
Windows, Adobe Photoshop, Mac OS, entre outros;
• Software Comercial: basicamente é um software desenvolvido por uma companhia com o
objetivo de lucrar com sua utilização. Entretanto, não é apenas o software proprietário que
pode ser comercializado. Também é possível que um software gratuito seja comercial, ou
seja, gera lucros de forma gratuita;
• Software Livre: o software livre pode ser utilizado sem qualquer tipo de restrição, inclusive
ter seu código fonte disponibilizado (Open Source) para qualquer entidade. Um exemplo de
sistema operacional livre é o Linux.
• Software Gratuito: também chamado de freeware, um software gratuito pode ser usado a
vontade, desde que se cumpra com os termos de uso. Por exemplo, o programa é liberado para
uso pessoal, mas em ambientes corporativos é necessário adquirir a versão empresarial do
software. Além disso, um software gratuito não possui seu código fonte disponibilizado, se
comparado com o software livre.
25
4.3 Projeto GNU
Segundo GNU.ORG (2011), Richard Stallman, fundador da Free Software Foundation (FSF),
que é uma organização sem fins lucrativos, criou o projeto GNU is Not Linux (GNU) em
1983 tendo como objetivo o desenvolvimento de um sistema operacional compatível com
Unix que fosse totalmente gratuito.
Conforme Sery (1998, p.129) diversas ferramentas encontradas no Linux, como os
compiladores gcc, gcc+, os comandos de programação Shell, entre outros, foram
desenvolvidos pelo GNU. O autor cita que “sem a FSF o Linux não existiria da maneira como
conhecemos”.
4.4 GNU/Linux
De acordo com Sery (1998, p.124), o GNU/Linux, ou somente Linux como é popularmente
conhecido, foi criado por Linus Torvalds tendo como base o sistema operacional Minix,
desenvolvido por Dr. Andrew Tanenbaum no final dos anos 80, que por sua vez era um
sistema baseado no Unix, criado pela AT&T em 1969. No início, Linus recebeu suporte de
um grupo pequeno de programadores que o ajudaram a desenvolver um sistema operacional
que fosse multitarefa, multiusuário e que possuía memória virtual.
Então, em setembro de 1991 foi criado a versão 0.01 do Linux, que chamou a atenção de
diversos programadores ao redor do mundo e começaram a desenvolver o sistema, resolvendo
problemas e realizando aperfeiçoamentos nos códigos, utilizando a Internet como meio de
comunicação. Aos poucos foi sendo implementado funções do GNU, tornando o sistema
operacional um software Open Source, de acordo com a GPL. Isso chamou a atenção dos
desenvolvedores da comunidade GNU, que começaram a dar suporte ao Linux. (SERY, 1998,
p.125)
4.4.1 Distribuições Linux
Segundo The Linux Foundation (2011) uma distribuição Linux é um sistema operacional que
possui um conjunto de softwares desenvolvidos a partir do kernel do Linux, podendo ser
destinado para desktops, servidores, liveCDs, entre outros. Existem diversos tipos de
distribuição, cada qual com suas características únicas.
De acordo com The Linux Foundation (2011), as distribuições mais populares e fáceis de
utilizar são: Debian, Ubuntu, openSUSE, Fedora e Mandriva Linux.
26
5 SERVIDORES
Além dos tradicionais computadores pessoais, tanto de mesa quanto portáteis, existe uma
categoria de máquinas um pouco diferente, tanto em sua arquitetura, quanto em sua
finalidade, conhecidos como servidores, que serão abordados a seguir.
5.1 Servidores de Rede
Servidores são computadores mais potentes e redundantes do que aqueles que geralmente são
utilizados na mesa de trabalho ou em casa, e têm como principal objetivo prestar um ou mais
tipos diferentes de serviços aos usuários de determinada rede.
Segundo Baddini (2003, p.19) "a base para uma infraestrutura segura e confiável começa com
a escolha de um bom hardware ... para servidores", pois este será "fundamental para que os
recursos disponibilizados aos usuários sejam confiáveis, alto desempenho" e que sempre
estejam disponíveis quando necessário.
De acordo com Minasi (2003, p.5) existem vários tipos de servidores, como por exemplo,
servidores de arquivo, de impressão, aplicativo, e-mail, terminal, Web, banco de dados,
colaboração, entre outros.
5.2 Serviços de Rede
A razão de um servidor existir é para prestar algum tipo de serviço, como o próprio nome
sugere. E este serviço só fará sentido se alguém puder usufruir dele. Para tanto, um servidor
sempre deve estar ligado à determinada rede, e esta deve possuir clientes que, segundo Minasi
(2003, p.3), são computadores capazes de utilizar os serviços de rede disponibilizados pelos
servidores.
Minasi (2003, p.3) comenta que uma rede pode funcionar na categoria Workgroup, onde
vários computadores são conectados de forma linear e atuam tanto como servidor como
cliente. Esta configuração é muito simples, e pode gerar problemas na hora de gerenciar esta
rede.
Já redes da categoria Domínio fornecem serviços e gerenciamento centralizados, e trazem
mais segurança para a rede, segundo Minasi (2003, p.3).
Sabendo que servidores podem ser classificados de acordo com o tipo de serviço que
oferecem, pode-se ter uma boa noção dos tipos de serviços de rede possíveis observando-se os
servidores citados anteriormente.
27
6 VOZ SOBRE IP (VOIP)
Na época em que o VoIP começou a se popularizar muitos acreditavam que este seria o vilão
da telefonia convencional. Porém, com o passar do tempo o VoIP mostrou-se um aliado, algo
que poderia e deveria ser muito explorado.
O VoIP é uma tecnologia capaz de realizar a transmissão de voz através de redes IP, uma
opção de telefonia que utiliza a rede de dados já existente, possibilitando ao usuário realizar
chamadas telefônicas através de um computador com um microfone e caixas de som, por
exemplo.
O VoIP também é utilizado em Private Automatic Branch Exchange (PABX) para que seja
possível a instalação de ramais telefônicos, fazendo com que muitas empresas evitem altos
gastos com PABX convencionais, substituindo-os por PABX IP.
Para que seja possível o funcionamento do VoIP, este captura a voz, que está em formato
analógico, a converte em digital e depois transforma em pacotes que podem ser trafegados em
redes Transport Control Protocol/Internet Protocol (TCP/IP).
Segundo Alecrim (2005), "o VoIP não é uma tecnologia nova. Ela já era trabalhada antes
mesmo da popularização da Internet e chegou a ser considerada um fracasso", pois precisava
de grandes velocidades de transmissão para uma boa qualidade na ligação, algo muito difícil
antigamente.
Para ter uma ligação VoIP aceitável é necessário uma boa qualidade de serviço, ou Quality of
Service (QoS), e uma das maneiras é o aumento da banda para recepção e transmissão de
dados, algo cada vez mais comum, não só em empresas, mas também nas casas de usuários
comuns.
Porém, como apenas uma banda larga não era suficiente, várias empresas começaram a
investir no desenvolvimento de uma solução, e a mais adotada foi o Real Time Protocol
(RTP), que é um protocolo responsável por receber os pacotes na mesma ordem em que foram
enviados, deixando um intervalo "em branco" no lugar de um possível pacote que venha a
chegar atrasado ou que simplesmente não chegue. Por esse motivo, o RTP torna-se útil para
transmissão de voz e vídeo. Para tanto, de acordo com Alecrim (2005) o RTP funciona
atrelado a outro protocolo, o Real Time Control Protocol (RTCP), que comprime e monitora
os pacotes.
28
Por ser a responsável pelo desenvolvimento do RTP e RTCP, a Internet Engineering Task
Force (IETF) propôs o protocolo Resource Reservation Protocol (RSVP) como uma melhoria
aos protocolos supracitados, fazendo com que através deste, parte da banda disponível fosse
alocada para o VoIP.
Outro recurso importante em VoIP é o Codificador/Decodificador (Codec), responsável por
comprimir os pacotes antes de enviá-los através da rede. Existem vários codecs disponíveis,
sendo que a maioria se difere apenas no algoritmo usado por cada um e na qualidade de voz.
Os mais comuns recomendados pela International Telecommunications Union -
Telecommunications Standardization Sector (ITU-T) são os G.711, G.722, G.723, G.727,
entre outros, que funcionam juntamente com o Compressed Real-Time Protocol (CRTP), que
segundo Alecrim (2005) é o "responsável por melhorar a compressão de pacotes e assim dar
mais qualidade ao VoIP".
Para interligar a rede pública de telefonia comutada, ou Public Switched Telephone Network
(PSTN) a rede VoIP é necessário Gateways, que convertem o sinal analógico em sinal digital,
e vice-versa, e também converte para sinais de chamadas telefônicas. Além deste, existe
também o "Gateway Controller (ou Call Agent), que é responsável por controlar as chamadas
feitas pelo Gateway", de acordo com Alecrim (2005). O Gatekeeper (guardião) é o
equipamento utilizado em ligações de longa distância, sendo responsável por gerenciar vários
outros equipamentos, podendo autorizar chamadas e controlar a largura de banda, por
exemplo.
6.1 Integração
Existem meios de se conectar um telefone IP com a rede de telefonia analógica utilizando
placas com as tecnologias descritas a seguir (PRODESP, 2007).
6.1.1 FXS
O Foreign eXchange Subscriber (FXS) funciona como uma linha telefônica no modo ativo
pois esta interface simula um aparelho telefônico gerando o tom para discagem além da
possibilidade de ocupar um ramal no PABX convencional fazendo assim a integração parcial
entre as duas tecnologias, pois desta pode se fazer ligações para outros ramais analógicos caso
a estrutura telefônica já tenha ramais analógicos ativos.
29
6.1.2 FXO
O Foreign eXchange Office (FXO) é uma interface destinada a entrada de sinais telefônicos,
funcionando como uma linha telefônica no modo passivo, recebendo as ligações em um
PABX IP. O FXO geralmente está conectado diretamente com a rede telefônica analógica e
nesta está configurado um número para que receba ligações. A partir do recebimento do tom
de discagem é possível repassar estas ligações para os terminais IP.
6.2 Infraestrutura
Para realizar uma conversação ao utilizar um sistema VoIP, é necessário utilizar
equipamentos ou softwares para esta função. Dentre eles, pode-se citar o softphone, telefone
IP e ATA, que serão descritos nas próximas seções.
6.2.1 Telefone IP
Segundo Gonzalez (2007, p.49), o telefone IP é um equipamento similar aos telefones
convencionais, porém se diferencia deles por realizar a conversão do sinal digital para
analógico internamente, além de possuir um conector RJ-45 para se comunicar com uma rede
de dados e poder se conectar a um PABX IP. Ainda existem telefones IP wireless, que se
conectam na rede através de um access point.
Muitos telefones IP possuem duas portas ethernet, uma porta para conectar na rede de dados,
enquanto a outra, conectar no computador. Com isso não é necessário adicionar um novo cabo
de rede para ser utilizado no telefone IP.
6.2.2 ATA
De acordo com PRODESP (2007) um Analog Telephone Adapter (ATA) é um equipamento
que permite conectar um cabo de rede e um cabo RJ-11 (telefone) para interligar um telefone
convencional a um servidor PABX IP. No ATA é configurado um ou mais ramais que serão
disponibilizados pelo servidor PABX IP, que por intermédio das placas FXO/FXS do ATA é
possível conectar um telefone convencional em uma rede IP.
6.2.3 Softphone
De acordo com Sousa (2008, p.11), um softphone é um software que realiza ligações VoIP.
Ao instalar este aplicativo em um computador, é exibida uma tela com números para a
discagem telefônica. Os requisitos mínimos para o funcionamento do softphone são uma placa
de som, dispositivo de saída de áudio (caixas de som) e um microfone.
30
6.3 Protocolos de Sinalização
Segundo Keller (2009), os mecanismos de transmissões das conexões VoIP envolvem
diversas sinalizações entre os componentes da conexão, também chamados de endpoints, até
que se estabeleçam os fluxos de mídia, chamados de RTP, um para cada lado, transmitindo
áudio e/ou vídeo da chamada.
Existe uma série de protocolos desenvolvidos para o gerenciamento de sinalização, entre os
mais usados estão o SIP, IAX2 e H.323.
6.3.1 IAX2
O IAX2 foi criado com o objetivo de permitir a comunicação entre servidores Asterisk. É um
protocolo VoIP que transporta a sinalização da chamada e da mídia em uma única porta TCP
ou UDP, fazendo com que sua configuração seja muito mais simples do que outros
protocolos, como SIP, H.323.
Conforme propôs (KELLER, 2009) o funcionamento do IAX2 é baseado na economia de
banda por meio da transmissão de frames completos e mini frames. Basicamente, a chamada é
estabelecida e monitorada pelos frames completos, enviados de tempos em tempos. Mas o
áudio trafega de um ponto a outro por meio de mini frames.
Os frames completos apresentam as seguintes características:
• Possuem somente informações sobre a sinalização da chamada ou sobre a mídia;
• Usados para controlar a inicialização, configuração e encerramento de uma chamada;
• Podem, eventualmente, ser usados para transportar mídia.
Os mini frames apresentam as seguintes características:
• Possuem apenas mídias de uma chamada IAX2 já estabelecida;
• Não são enviados de forma confiável;
• Utilizam um mínimo de sobrecarga de protocolo.
6.3.2 H.323
Assim como qualquer protocolo, o objetivo do H.323, desenvolvido e recomendado pela
International Telecommunication Union (ITU) em 1996, era a padronização de determinado
sistema de comunicação, neste caso a pilha de protocolos utilizados em sistemas de telefonia
da Internet.
Segundo Tanenbaum (2003, p.730), esta recomendação foi intitulada como:
Visual Telephone System and Equipament for Local Area Networks With Provide a Non-Guaranteed Qualit of Service (ou seja, Sistemas e Equipamentos de telefonia visual para redes locais que oferecem uma qualidade de serviço não-garantida).
31
Tanenbaum (2003, p.730) salienta que "a recomendação H.323 é mais uma avaliação da
arquitetura de telefonia da Internet que um protocolo específico". Isso porque se refere a uma
grande quantidade de protocolos específicos exigidos por uma rede de telefonia, que são
necessários para a realização da chamada telefônica, como por exemplo sinalização,
codificação, configuração da chamada, transporte, entre outros.
No modelo arquitetônico a seguir há o gateway, responsável pela conexão entre a Internet
(através do protocolo H.323) e a rede de telefonia convencional (através dos protocolos
PSTN). Os terminais são os dispositivos de comunicação.
Segundo Silva (2007) o gatekeeper é utilizado somente em redes H.323, sendo utilizado para
gerenciar equipamentos de telefonia IP, como terminais IP e gateways.
Dentre suas principais funções pode-se citar (SILVA, 2007):
• Traduzir apelidos (alias) para endereços IP;
• Gerenciamento da largura de banda utilizada;
• Encaminhar chamadas H.323. Caso um endereço IP destino não seja conhecido pelo
gatekeeper, este poderá consultar outros gatekeepers para obter o endereço IP desejado;
• Gerenciamento e controle do acesso dos equipamentos da rede de sua zona;
• Controle de admissão de chamada;
• Localização de gateways.
A Figura 08 exibe o modelo arquitetônico do H.323 para a arquitetura da telefonia pela
Internet:
Figura 08 - O modelo arquitetônico do H.323 para telefonia da InternetFonte: Adaptado de Tanenbaum (2003, p.731)
32
Vários protocolos são necessários para o bom funcionamento de uma rede telefônica, como
protocolos de codificação, decodificação e compactação de voz, controle de canais, taxa de
bits, sinalização, transmissão de dados reais, entre outros. A Figura 09 demonstra o
posicionamento dos protocolos:
Figura 09 - A pilha de protocolos H.323Fonte: Adaptada de Tanenbaum (2003, p.731)
Tanenbaum (2003, p.732) exemplifica o funcionamento destes protocolos propondo o caso de
um host, conectado a uma LAN que possui um gatekeeper, chamando um telefone remoto.
Antes de tudo, o host transmite um pacote de descoberta UDP por difusão para saber quem é
o gatekeeper. Após receber a informação, o host se registra junto ao gatekeeper através de um
pacote UDP que contém uma mensagem Registration, Admission e Status (RAS). Ao ser
aceito pelo gatekeeper, o host envia outra mensagem RAS, desta vez solicitando admissão e
largura de banda, com o objetivo de manter a qualidade de serviço necessária. Por fim, após a
concessão da largura de banda necessária, a configuração da chamada pode ser iniciada.
O host então se conecta ao gatekeeper através do TCP, para que a configuração da chamada
seja iniciada. Depois envia uma mensagem SETUP de Q.931 com o número do telefone ou
endereço IP destino da ligação. Então o gatekeeper envia uma mensagem resposta Q.931
CALL PROCEEDING confirmando o recebimento da solicitação e encaminha para o gateway
a mensagem SETUP.
Agora, uma vez estabelecida a conexão, o gatekeeper sai do loop e os pacotes passam a ser
encaminhados diretamente para o endereço IP do gateway, e as duas partes passam a ter
apenas um canal livre entre si.
Então os parâmetros da chamada são negociados através do protocolo H.245, os recursos são
ajustados, codecs, e o fluxo de dados começam.
Por fim, ao encerrar a chamada, o host que a iniciou envia uma mensagem RAS ao gatekeeper
liberando a largura de banda que estava sendo utilizada, ficando livre para realizar uma nova
chamada.
33
6.3.3 SIP
Descrito na RFC 3261 e projetado pela IETF com o objetivo de ser um protocolo mais
simples e mais modular para a utilização da voz sobre IP, o Session Initiation Protocol (SIP) é
um único módulo (e não um conjunto de protocolos, como o H.323) e vem sendo cada vez
mais utilizado para aplicações que usam voz e vídeo sobre IP, segundo Tanenbaum (2003,
p.733), pois este protocolo possui interoperabilidade com aplicações web já existentes.
O SIP pode definir números telefônicos como se fossem URLs (ex:
sip:[email protected]), permitindo que páginas web contenham esses números em um
link que, quando acessado, inicia uma ligação telefônica.
Tanenbaum (2003, p.734) cita três tipos de sessões que o SIP pode estabelecer, como seguem:
• Sessões de duas partes: ligação telefônica comum;
• Sessões de várias partes: todos podem ouvir e falar;
• Sessões de multidifusão: um transmissor e muitos receptores.
Estas sessões suportam voz, vídeo e dados, sendo que o SIP apenas configura, gerencia e
encerra essas sessões, sendo ele um protocolo da sétima camada do modelo OSI (aplicação),
que opera tanto sobre UDP quanto TCP. Para o transporte de dados são utilizados protocolos
como RTP/RTCP.
O Quadro 07 apresenta os métodos utilizados pelo SIP:
Quadro 07 - Os métodos do SIP definidos na especificação do núcleo
Método Descrição
INVITE Solicita a inicialização de uma sessão
ACK Confirma que uma sessão foi inicializada
BYE Solicita o término de uma sessão
OPTIONS Consulta um host sobre seus recursos
CANCEL Cancela uma solicitação pendente
REGISTE
RInforma um servidor de redirecionamento sobre a localização atual do usuário
Fonte: Adaptado de Tanenbaum (2003, p.734)
Conforme mostra a Figura 10 a seguir a sessão começa a ser estabelecida quando o chamador
cria um pacote UDP ou uma conexão TCP com o chamado através do método INVITE; o
chamado pode aceitar com um código de resposta tipo HTTP, sendo possível fornecer
informações sobre seus recursos, e a conexão é concluída através de um handshake de três
vias (Three Way Handshake), com o chamador respondendo uma mensagem ACK,
finalizando o protocolo.
34
Figura 10 - O uso de um proxy e de servidores de redirecionamento com o SIPFonte: Adaptado de Tanenbaum (2003, p.735)
A sessão pode ser encerrada a qualquer momento através do método BYE enviado por uma
das partes.
Uma máquina pode consultar seus próprios recursos com o objetivo de saber se está apta a se
comunicar usando voz sobre IP através do método OPTIONS.
Já o método REGISTER é útil para que o SIP possa encontrar e conectar um usuário que se
encontra longe de casa, através de um servidor SIP capaz de controlar a localização de cada
usuário. Segundo Tanenbaum (2003, p.735) "esse servidor pode ser consultado mais tarde
para descobrir a localização atual do usuário".
Nesse redirecionamento o chamador envia uma mensagem INVITE ao proxy, que por sua vez
busca o chamado e envia a mensagem para ele. "As mensagens LOOKUP e REPLY não
fazem parte do SIP; qualquer protocolo conveniente pode ser usado, dependendo do tipo de
servidor de localização usado", segundo Tanenbaum (2003, p.735).
35
6.3.4 Comparativo Entre H.323 E SIP
Segundo Tanenbaum (2003, p. 736), há muitas semelhanças entre os protocolos H.323 e SIP,
porém algumas diferenças entre eles podem ser observadas no resumo comparativo
apresentado no Quadro 08:
Quadro 08 - Comparação entre o H.323 e o SIP
Item H.323 SIP
Projetado por ITU IETF
Compatibilidade com PSTN Sim Ampla
Compatibilidade com a Internet Não Sim
Arquitetura Monolítica Modular
CompletezaPilha de protocolos
completa
O SIP lida apenas com
a configuração
Negociação de parâmetros Sim Sim
Sinalização de chamadas Q.931 sobre TCP SIP sobre TCP ou UDP
Formato de mensagens Binário ASCII
Transporte de mídia RTP/RTCP RTP/RTCP
Chamadas de vários participantes Sim Sim
Conferências de multimídia Sim Não
EndereçamentoNúmero de host ou
telefoneURL
Término de chamadasExplícito ou
encerramento por TCP
Explícito ou por
timeout
Transmissão de mensagens instantâneas Não Sim
Criptografia Sim Sim
Tamanho do documento de padrões 1.400 páginas 250 páginas
Implementação Grande e complexa Moderada
StatusExtensamente
distribuído
Boas perspectivas de
êxito
Fonte: Tanenbaum, 2003, p. 736
De acordo com Rodrigues (2011, p.26), o SIP "vem ganhando cada vez mais espaço no
mundo corporativo, por ser aberto e baseado na Internet. Na prática, o SIP é mais simples,
distribuído e amigável, além de oferecer mais recursos". Neste artigo, Rodrigues (2011) diz
que "este protocolo tem a capacidade de ser implantado mais rapidamente por
desenvolvedores de todos os níveis".
36
Ainda citando Rodrigues (2011, p.26),
o H.323, que foi estabelecido pela (ITU) - União Internacional de Telecomunicações, é um padrão proprietário complexo, exigindo mais esforços na implementação. Para realizar uma chamada o H.323, por exemplo, envia 12 pacotes de dados, já o SIP precisa mandar apenas 4 pacotes.
6.4 CODECS
O áudio com qualidade de CD requer uma largura de banda de transmissão de 1,411 Mbps... É claro que é necessária uma compactação significativa para tornar prática a transmissão pela Internet. Por essa razão, foram desenvolvidos vários algoritmos de compactação de áudio. (TANENBAUM, 2003, 720 p.)
Conforme Tanenbaum (2003) existem duas formas de se fazer compactação de áudio: a
Codificação de Forma de Onda, onde é utilizada uma função matemática com o objetivo de
reproduzir o som na outra extremidade de forma precisa, utilizando o menor número de bits
possível; e a Codificação Perceptiva, baseada na ciência da psicoacústica, que explora certas
limitações na audição humana para codificar um sinal que, apesar de diferente no
osciloscópio, é captado de forma bem semelhante no ouvido humano na outra ponta.
Segundo Schroder (2009), codec é um programa ou dispositivo que por meio de algoritmos de
compactação e descompactação altera o formato de um arquivo ou sinal. No caso da telefonia
IP, ao escolher um codec, é necessário verificar se o equipamento do PABX IP terá
processamento suficiente e se o link de Internet terá largura de banda suficiente para suportar
a demanda das ligações. Todos estes aspectos devem ser analisados para definir qual será o
cenário que melhor se adapta a realidade da empresa em que o PABX IP será instalado.
De acordo com Schroder (2009) um codec com maior qualidade de áudio e menor gasto de
tráfego de rede necessita de maior processamento, pois quanto melhor a qualidade, mais
compressão de dados o codec tem, exigindo um maior processamento por parte do servidor e
do cliente que está recebendo a ligação telefônica. Isso causa um maior gasto, pois é
necessário monitorar os equipamentos com maior freqüência. Um codec com pouca
compressão e mesma qualidade de voz que o anterior não necessitará de tanto processamento
mas o custo da alocação na rede será maior.
Segundo Assis (2009) e Pereira (2008), codecs são dispositivos de hardware ou software que
tem a função de codificar e decodificar arquivos, dados ou sinais digitais de determinadas
mídias como imagem, som e vídeo, com o objetivo de compactar estes, ou seja, torná-los
menores, facilitando seu armazenamento ou transmissão e possibilitando que possam ser
descompactados quando necessário.
37
Os codecs podem ser classificados entre dois tipos: os sem perda, conhecidos como lossless,
que são aqueles que conseguem comprimir o conteúdo sem perder a qualidade quando for
descomprimido, e os codecs com perda, ou lossy, que alcançam uma maior compactação,
porém, o arquivo descompactado não possui a mesma qualidade do original.
Nas próximas seções mostra-se um breve descritivo dos codecs que podem ser utilizados em
um PABX IP de acordo com Schroder (2009, p.127):
6.4.1 G.711 ulaw/alaw
O G.711 ulaw/alaw é um codec Open Source, sendo que o ulaw é utilizado nos Estados
Unidos e Japão, enquanto o tipo alaw é utilizado no restante do mundo. Além de ser a
linguagem nativa da rede telefônica digital, esse codec requer menos capacidade de
processamento, mas consome maior largura de banda, sendo 64 Kbps por cada chamada (ida
ou volta), mais 20 Kbps por cabeçalho de pacote.
6.4.2 G.726
O G.726 pode funcionar em taxas de bits diferentes, sendo 16, 24 ou 32 Kbps, além do
cabeçalho adicional de 20 Kbps. O Asterisk possui suporte apenas para 32 Kbps. Tem boa
qualidade de voz, baixo processamento e possui licença Open Source.
6.4.3 G.729
O G.729 é um codec proprietário de alta qualidade, comprimido e econômico na largura de
banda, pois consome somente 8 Kbps além do adicional de 20 Kbps de cabeçalho. A taxa de
licenciamento custa 10 dólares por canal e isto pode ser adquirido pela Digium.
6.4.4 GSM
O Global System for Mobile Communications (GSM) é o codec padrão para comunicações
móveis, especificamente o padrão do telefone celular. É um codec proprietário, mas livre para
ser distribuído, possuindo uma taxa de 13 Kbps, usando 30 Kbps ao todo. O GSM possui uma
qualidade de voz aceitável.
38
6.4.5 iLBC
O Internet Low Bit Rate Codec (iLBC) foi feito para redes com alta perda de pacotes e baixa
largura de banda, tem qualidade de voz superior ao G.729 com os mesmos quesitos de
hardware, utilizando de 20 a 30 Kbps por cada chamada (ida ou volta) e suporta perda de até
10% dos pacotes. É um codec livre de custos e sua licença permite modificações, sendo uma
boa escolha para redes que não são estruturadas e que podem perder pacote de dados
facilmente.
6.4.6 LPC-10
O LPC-10 necessita de pouco processamento e largura de banda, sendo necessários 2,5 Kbps
por chamada, mas é o que tem a pior qualidade de áudio. Foi desenvolvido pelo Departamento
de Defesa dos Estados Unidos, a qualidade de áudio é muito ruim, portanto este codec só é
utilizado caso seja extremamente necessário.
6.4.7 Speex
O Speex é um codec de alta qualidade de áudio com taxa de bits dinamicamente variada com
a desvantagem de necessitar de mais processamento que os descritos anteriormente, mas é
muito flexível e pode ser ajustado para cada necessidade, pois é desenvolvido por uma
comunidade que o mantêm, assim como diversas distribuições do Linux.
39
6.5 Qualidade de Serviço
Muitos aplicativos que utilizam a rede de computadores para executar suas tarefas exigem um
mínimo de desempenho dessa rede para que possam alcançar seus objetivos e executarem
corretamente suas tarefas. Ao iniciarem um fluxo, que segundo Tanenbaum (2003, p.422) é
"uma sequência de pacotes desde uma origem até um destino", os pacotes podem seguir a
mesma rota (quando a rede for orientada a conexões) ou, caso contrário, rotas diferentes.
Quatro parâmetros principais caracterizam as necessidades de cada fluxo, que são:
confiabilidade, retardo, flutuação e largura de banda, e quando juntos definem a Quality of
Service, ou Qualidade de Serviço (QoS) exigida pelo fluxo. O Quadro 09 exibe algumas
aplicações comuns e seus requisitos:
Quadro 09 - A rigidez dos requisitos de qualidade de serviço
Aplicação Confiabilidade Retardo Flutuação Largura de banda
Correio eletrônico Alta Baixa Baixa Baixa
Transferência de arquivos Alta Baixa Baixa Média
Acesso à Web Alta Média Baixa Média
Login remoto Alta Média Média Baixa
Áudio por demanda Baixa Baixa Alta Média
Vídeo por demanda Baixa Baixa Alta Alta
Telefonia Baixa Alta Alta Baixa
Videoconferência Baixa Alta Alta Alta
Fonte: Adaptado de Tanenbaum (2003, p.422)
As primeiras aplicações, por exemplo, não podem ter nenhum bit entregue incorretamente, e
segundo Tanenbaum (2003, p.423) "esse objetivo é alcançado calculando-se o total de
verificação de cada pacote e conferindo-se o total de verificação no destino". Caso algum
pacote não chegue corretamente ele é retransmitido.
De acordo com Tanenbaum (2003, p.424), existem várias técnicas para se alcançar uma QoS
aceitável. Algumas destas serão abordadas a seguir:
• Superdimensionamento: esta técnica consiste em fornecer muito mais recursos e capacidade
de hardware do que o realmente necessário, de forma que as aplicações sempre encontrarão
recursos mais que suficientes para executarem suas funções. Um bom exemplo é a rede de
telefonia convencional, onde é raro não conseguir sinal de discagem ao telefone ser retirado
do gancho.
40
• Armazenamento em Buffers: o receptor armazena os fluxos em buffers antes de serem
entregues. Essa técnica aumenta o retardo, mas não a confiabilidade nem largura de banda,
fazendo apenas com que a flutuação seja amenizada. Exemplos práticos desta técnica são
áudio e vídeo por demanda.
• Moldagem de Tráfego: enquanto a técnica de armazenamento em buffer regulariza o tráfego
no lado do cliente, a moldagem de tráfego procura fazer o mesmo, mas do lado do servidor,
pois caso este esteja manipulando muitos fluxos simultaneamente, os pacotes podem acabar
sendo enviados de modo irregular, congestionando a rede. Para tentar resolver isso, essa
técnica cria um padrão de tráfego, também chamado de Acordo de Nível de Serviço, para
dessa forma tentar reduzir o congestionamento.
• Algoritmo de Balde Furado: trata-se de uma técnica que cria um "enfileiramento de um
único servidor com tempo de serviço constante" (Tanenbaum, 2003, p. 426). Uma vez que a
capacidade máxima desta fila é alcançada o servidor rejeita os próximos pacotes que
chegarem automaticamente.
• Reserva de Fluxo: a técnica de reserva de fluxo tem um nome bem sugestivo, onde os
principais recursos como largura de banda, espaço de buffer e ciclos da CPU são reservados e
liberados, conforme a necessidade.
6.6 Problemas no VOIP
Não há dúvidas que o VoIP é uma interessante alternativa a telefonia convencional. Porém,
para que realmente seja viável a utilização da voz sobre IP, alguns possíveis problemas devem
ser considerados antes da implementação da Central PABX IP, como seguem:
• Qualidade de Serviço (QoS): segundo IsegNet (2011), "o valor da inteligibilidade da
conversação é um componente crítico e importante... em qualquer local onde a comunicação
interpessoal é uma função primária". O ideal para se garantir uma boa inteligibilidade na
conversação em serviços de VoIP é que a Central PABX IP tenha disponível um link dedicado
e exclusivo para a voz, sem que outros usuários estejam navegando por esse mesmo link.
Porém, quando isso não é possível, deve-se aplicar uma adequada política de QoS.
41
De acordo com Silva (2000), o QoS em uma rede que possui tráfego de voz deve "priorizar o
tráfego interativo sensível a retardo, em detrimento ao tráfego referente à transferência de
arquivos, que não é sensível a retardo", conforme exibido na Figura 11:
Figura 11 - Modelo para QoSFonte: Silva (2000)
Se um bom QoS não for aplicado a uma rede que utilize voz e dados no mesmo link, os dados
provavelmente influenciarão na qualidade do fluxo da voz, podendo ocorrer atrasos,
dificultando a comunicação entre os interlocutores.
• Jitter: conforme Pinheiro (2004), "todos os sistemas digitais são sincronizados por
intermédio de um relógio (clock)", que tem por objetivo ordenar a forma como as informações
são armazenadas e enviadas através do meio físico. Caso o clock de origem e destino estejam
dessincronizados, os bits podem chegar de forma desordenada ao destino, caracterizando
assim o jitter, que segundo o mesmo autor "é um desvio ou deslocamento de algum aspecto
dos pulsos de um sinal digital". Esse fenômeno atrapalha e muito as comunicações de voz
sobre IP, pois perde-se a inteligibilidade da conversação. A solução mais simples na maioria
dos casos é a bufferização, que aguarda um bloco de bits chegar, ordena-os e só então exibe as
informações armazenadas, agora todas em ordem. Mas esta solução, apesar de útil na maioria
dos casos, não se aplica com sucesso ao VoIP, pois continuaria prejudicando a comunicação
em tempo real.
• Eco: de acordo com Oliveira e Martins (2005), em se tratando de telefonia através das redes
IP "um de seus maiores problemas é o eco, que atrapalha bastante a comunicação durante uma
conversa através de telefone". As causas para esse problema podem ser várias, desde
problemas com as portas FXS e FXO interligadas ao PABX digital, divisão da banda entre
voz e dados, link de baixa qualidade, entre outros.
Segundo estes mesmos autores, algumas medidas podem ser tomadas para evitar o eco em
ligações VoIP, como gateways apropriados para fazer a interface entre ambientes com voz e
dados, um bom gerenciamento do sistema, aplicação de QoS, segurança implementada no
sistema, de forma que a qualidade da ligação seja comparada à oferecida pela PSTN.
42
6.7 Comparação entre ligação telefônica convencional e VoIP
A seguir, serão mostradas várias comparações de tarifas de operadoras de telefonia
demonstrando o custo de uma ligação convencional de duração de cinco minutos entre São
José dos Campos como origem e São Paulo como destino, como mostra o Quadro 10:
Quadro 10 - Tarifação entre São José dos Campos e São Paulo
Origem: São José dos Campos Destino: São Paulo
Duração: 5 minutos
Código Operadora Plano Preço
15 Telefônica Super 15 DDD = Local R$ 0,48
15 Telefônica Plano Básico LDN R$ 0,62
21 Embratel Plano Básico LDN R$ 0,79
23 Intelig Hora de Ligar-Fim de Semana R$ 0,91
Fonte: Adaptado de Comparatel (2011)
Agora através do uso de VoIP na origem e São Paulo como destino, conforme mostra o
Quadro 11 a seguir:
Quadro 11 - Tarifação entre VoIP e São Paulo
Origem: VoIP Destino: São Paulo
Duração: 5 minutos
Código Operadora Plano Preço
Y26 FcomVoIP Plano Corporativo R$ 0,15
Y25 NetJet VoIP BRW36 - 1000 R$ 0,20
Y3 Skype Skype Básico R$ 0,40
Y15 Terra VoIP Terra Básico R$ 0,75
Fonte: Adaptado de Comparatel (2011)
Os valores demonstrados através do uso de VoIP valem para qualquer lugar do Brasil, desde
que se possua acesso a Internet e a disponibilidade do serviço da operadora de serviços de
VoIP citados acima.
43
Será mostrado no Quadro 12 o preço de uma ligação convencional, porém internacional, entre
São José dos Campos e Nova Iorque:
Quadro 12 - Tarifação entre São José dos Campos e Nova Iorque
Origem: São José dos Campos Destino: Nova Iorque
Duração: 5 minutos
Código Operadora Plano Preço
15 Telefônica Super Hora DDD 15 R$ 1,24
21 Embratel Livre Pós DDD R$ 1,32
41 Tim DDD Tim Fixo R$ 1,33
23 Intelig Plano Básico LDN R$ 1,61
Fonte: Adaptado de Comparatel (2011)
A seguir, o Quadro 13 mostra ligação com origem VoIP e destino Nova Iorque:
Quadro 13 - Tarifação entre VoIP e Nova Iorque
Origem: VoIP Destino: Nova Iorque
Duração: 5 minutos
Código Operadora Plano Preço
Y26 FcomVoIP Plano Corporativo R$ 0,15
Y25 NetJet VoIP BRW36 - 1000 R$ 0,20
Y26 Brasiltelenet Plano 100 R$ 0,20
Y15 Terra VoIP Terra Básico R$ 0,75
Y3 Skype Skype Básico R$ 0,75
Fonte: Adaptado de Comparatel (2011)
Pode-se observar uma notável diferença no preço ao utilizar o VoIP como forma de
comunicação telefônica.
Em relação ao preço entre ligações com origem e destino utilizando VoIP, elas são gratuitas,
pois utilizam totalmente a Internet e logo não possuem custo.
44
7 SOFTWARES UTILIZADOS
Para o desenvolvimento da Central PABX IP foi necessário o uso de ferramentas Open
Source, tais como o Debian, Asterisk, FreeBPX, entre outras.
Essas ferramentas serão detalhadas nas próximas seções.
7.1 Debian
É uma distribuição Linux composta inteiramente por software livre e produzida por
aproximadamente mil desenvolvedores voluntários.
Foi criado em agosto de 1993 por Ian Murdock. Com o passar do tempo e com o apoio de
uma comunidade de desenvolvedores e de usuários, o Debian tornou-se uma das distribuições
mais populares. (DEBIAN, 2004)
De acordo com Rodin (2009), os diferenciais do Debian para com as outras distribuições
Linux são:
• O sistema de manutenção de pacotes permite a atualização do sistema operacional sem a
necessidade de reformatá-lo, reiniciar o sistema, nem a perda dos arquivos de configuração
customizados;
• Diferente das outras distribuições, o Debian tem o suporte de uma grande comunidade de
desenvolvedores, sendo que “mais de 880 mantenedores voluntários de pacotes estão
trabalhando em mais de 29000 pacotes e melhorando o Debian GNU/Linux”;
• As ferramentas existentes para o envio de informações que relatam problemas e bugs fazem
do Debian um sistema confiável, trazendo soluções de forma rápida e segura.
Atualmente, o Debian se encontra na sua sexta versão, Squeeze, disponibilizada desde 6 de
Fevereiro de 2011, e foi utilizado neste trabalho.
7.2 Apache
Segundo Gomes (2011), um Web Server é um computador servidor que provê um software
utilizado para disponibilizar determinados conteúdos na Web.
De acordo com Apache Software Foundation (2011), o Web Server "Apache HTTP Server
Project" é o resultado de um esforço colaborativo de desenvolvedores de software que tem
como objetivo a implementação de um servidor Web com código robusto, comparável a
soluções comerciais, porém Open Source. Este projeto é apoiado por voluntários ao redor do
mundo, que se relacionam através da Internet, desenvolvendo tanto o código quanto a
documentação relacionada com o projeto.
45
Iniciado em 1995, contando com poucos colaboradores de início, o Apache foi se
desenvolvendo, até que em 1999 foi formada a Apache Software Foundation, oferecendo
recursos e apoio legais e financeiros para o projeto.
7.3 PHP
Segundo Ahto et. al. (2011), Hypertext Preprocessor (PHP) é uma linguagem de
programação especial para desenvolvedores voltados à web, geralmente mesclada dentro do
HyperText Markup Language (HTML).
Sua sintaxe é de fácil aprendizado, e se assemelha a Java, C e Perl. Um dos principais
objetivos da linguagem é proporcionar aos programadores um rápido e dinâmico
desenvolvimento de páginas.
Conforme Ahto et.al. (2011), o PHP como é conhecido hoje é resultado de um produto mais
antigo, o PHP/FI (Personal Home Page / Forms Interpreter), que foi desenvolvido em 1995
por Rasmus Lerdorf como simples script Perl para estimar o acesso ao seu currículo online.
Com o passar do tempo, implementações muito maiores em linguagem de programação C
foram implementadas, para suprir a necessidade. Então, Lerdorf resolveu disponibilizar o
código do PHP/FI para que todos pudessem usá-lo, corrigir falhas e melhorar a linguagem.
Em 1997, aproximadamente 50.000 domínios no mundo já reportavam a utilização da
segunda versão da linguagem, o PHP/FI 2.0, e milhares de desenvolvedores contribuíam com
o projeto distribuindo pequenos códigos. (AHTO et.al. , 2011)
Ainda citando Ahto et. al. (2011), o PHP 3.0 agregou várias novas funcionalidades, pois foi
totalmente reescrito por Andi Gutmans e Zeev Suraski para um projeto na faculdade. Entre as
principais características, pode-se citar
sua forte capacidade de extensibilidade, além de oferecer aos usuários finais uma infraestrutura sólida para diversos bancos de dados, protocolos e APIs. Outras características chaves introduzidas no PHP 3.0 foram o suporte à sintaxe para orientação à objetos e uma sintaxe muito mais poderosa e consistente.
As versões 4.0 e 5.0 do PHP continuaram a trazer benefícios para os desenvolvedores e
usuários, o que explica a utilização desta linguagem por cerca de 20% dos domínios da
Internet no início dos anos 2000. (AHTO et. al. , 2011)
46
7.4 MySQL
Conforme Lima (2011) e Macoratti (2011), banco de dados é um sistema computacional que
tem como objetivo o armazenamento de dados referentes a determinado assunto, de forma
ordenada e organizada, registrando e mantendo informações em tabelas, linhas e colunas.
De acordo com Vigazzola et. al. (2011) e Sousa (2009), MySQL é um servidor de
gerenciamento de banco de dados que utiliza a linguagem de programação SQL (Structured
Query Language - Linguagem Estruturada para Pesquisas), muito utilizado, com mais de 10
milhões de usuários no mundo. Esta larga utilização deve-se ao seu bom desempenho, que é
possível graças a sua velocidade de processamento, alta compatibilidade, portabilidade,
facilidade de uso, multitarefa e multiusuário, além da facilidade de integração com a
linguagem PHP.
Outra característica importante do MySQL é o fato de ser um software Open Source e multi-
plataforma, operando em Linux, Windows, MacOS, FreeBSD, Solaris, SunOS, SGI, BSID,
entre outros, é testado com vários compiladores, tabelas com vários tipos de campo e registros
de tamanhos fixos ou variáveis. (MYSQL.COM, 2011)
7.5 Asterisk
Segundo Asterisk.org (2011), o Asterisk é um software gratuito e Open Source através da
licença GLP, podendo ser utilizado em pequenas, médias ou grandes empresas. Possui
funcionalidades de um servidor PABX IP, provendo aplicações de comunicação, como
gateway VoIP, servidor de conferências e correio de voz, sistema para call centers, dentre
outras aplicações que utilizam comunicação em tempo real. O Asterisk foi criado por Mark
Spencer em 1999, que posteriormente, segundo Digium.com (2011) fundou a empresa
Digium, que fornecia o hardware necessário para suportar o Asterisk e prestava suporte para
o sistema.
É suportado pelos sistemas operacionais Linux, FreeBSD, OpenBSD, Mac OS X e Sun
Solaris, provendo recursos avançados encontrados em PABXs proprietários. Além disso,
possui suporte a telefonia convencional através de uma conexão digital E1. Possui suporte a
protocolos VoIP como H.323, SIP, MGCP, Google Talk, IAX2 e Skinny Client Control
Protocol (SCCP) e codecs como G.711, G.726, G.729, GSM, iLBC, LPC-10, Speex, dentre
outros. (ASTERISK.ORG, 2011)
47
Asterisk.org (2011) ainda diz que o Asterisk é uma plataforma de desenvolvimento para
aplicações de comunicação, sendo possível qualquer pessoa desenvolver uma aplicação ou
serviço para este sistema. Atualmente recebe suporte de milhares de programadores ao redor
do mundo, que desenvolvem novas funcionalidades e recursos.
7.6 FreePBX
O FreePBX nada mais é que um aplicativo gratuito Open Source que funciona como frontend
gráfico para o Asterisk Manager, gerenciando e realizando alterações no Asterisk, pois o
mesmo só possui interface de linha de comandos para ser manipulado.
Segundo FreePBX (2011), com o aplicativo é possível visualizar as opções disponíveis no
Asterisk de forma prática e organizada, facilitando o uso para pessoas iniciantes. Ele conta
com uma comunidade online com milhares de desenvolvedores e voluntários.
Para funcionar, o FreePBX precisa basicamente de um servidor com o Asterisk instalado.
7.7 X-Lite
Segundo CounterPath (2011) o X-Lite é um softphone gratuito que realiza ligações de áudio,
vídeo e ainda conta com um mensageiro instantâneo. Possui suporte ao protocolo SIP e para
os sistemas operacionais Linux, Windows e Mac, e necessita de um PABX IP para se conectar
e funcionar. Seus requisitos mínimos são um processador de 2.4Mhz, 1GB de memória RAM
e 50MB de espaço livre em disco.
48
8 IMPLANTAÇÃO
A implantação de uma Central PABX IP consiste na instalação e configuração dos softwares
necessários para o correto funcionamento desta solução. A seguir são descritos os pontos
principais da instalação e configuração do Debian Squeeze, Asterisk, FreePBX, a criação dos
ramais, do tronco externo SIP, das rotas de saída e entrada e da sala de conferência.
8.1 Descrição do Cenário
A Central PABX IP proposta por este trabalho pode ser implementada em inúmeros
ambientes, mas seu principal foco é em pequenos negócios, como o ambiente demonstrado
pela Figura 12 a seguir.
Figura 12 - Exemplo de cenário de implementaçãoFonte: Elaborado pelos autores
Entende-se por pequenos negócios empresas que possuem, de acordo com Sebrae (2011), de
20 a 99 colaboradores em seu quadro de funcionários e que podem não dispor de recursos
suficientes para a instalação de uma Central PABX convencional.
Este negócio pode ser exemplificado através de uma empresa que possua em sua sede uma
estrutura de rede de computadores já instalada e funcionando perfeitamente, um servidor
firewall fazendo o controle de tráfego dos pacotes que entram e saem de sua LAN através de
uma conexão com a Internet provida por um ISP contratado.
49
A partir desta estrutura, a Central PABX IP pode ser instalada. Trata-se de um servidor que
deve estar localizado de tal forma a ser protegido pelo firewall da LAN. Este servidor utilizará
a conexão com a Internet para se comunicar com a operadora VoIP local que deverá ser
contratada pela empresa onde a central está sendo instalada.
Os usuários da Central poderão realizar e receber suas ligações através de telefones IP
conectados diretamente à rede local e por softphones, instalados nos computadores da LAN. A
ligação interna é realizada através da Central PABX IP, que recebe as ligações dos telefones e
as encaminha diretamente para o telefone destino. As ligações externas serão detalhadas na
próxima seção.
8.2 Visão Ampla do Cenário
Ao ampliar o cenário de implantação da Central PABX IP, pode-se observar toda uma
infraestrutura de telefonia complexa, tendo como alcance qualquer lugar do mundo, conforme
mostra a Figura 13 a seguir:
Figura 13 - Visão ampla do cenárioFonte: Elaborado pelos autores
Ao realizar uma ligação de dentro da empresa, primeiramente é estabelecida uma conexão
com a operadora VoIP contratada e esta é responsável por encaminhar a ligação para seu
devido destino.
50
Quando o usuário interno realizar uma ligação, esta poderá ocorrer de uma das seguintes
formas:
• Ligação para outro telefone IP ou softphone fora da empresa: a ligação irá até a Central
PABX IP, que a encaminhará para a operadora VoIP local contratada utilizando a Internet.
Esta, por sua vez, encaminhará até o destino final através da nuvem (caso o destinatário seja
seu cliente) ou encaminhará para a operadora VoIP do destinatário, para que esta conclua a
chamada;
• Ligação local para um telefone convencional: a ligação irá até a Central PABX IP, que a
encaminhará para a operadora VoIP local contratada utilizando a Internet. Então, a ligação
será encaminhada para a operadora de telefonia convencional local, que fará o
encaminhamento da chamada até o destinatário.
• Ligação de longa distância para um telefone convencional: a ligação irá até a Central PABX
IP, que a encaminhará para a operadora VoIP local contratada utilizando a Internet. Após isso,
a operadora VoIP local encaminhará a chamada através da nuvem até a operadora VoIP mais
próxima do destinatário e que seja parceira da operadora VoIP local. A operadora VoIP
parceira fará o encaminhamento da chamada para a operadora de telefonia convencional onde
o destinatário é cliente, e esta concluirá a realização da chamada.
O objetivo das operadoras VoIP serem parceiras umas das outras é fazer com que as
chamadas trafeguem o mínimo possível pela rede de telefonia convencional, utilizando ao
máximo a Internet, pois através desta, praticamente não há diferença se um destinatário está
perto ou longe da origem da chamada, fazendo com que o valor pago para a operadora de
telefonia convencional seja, na maioria das vezes, o de uma ligação local, mesmo que a
distância entre os interlocutores seja de milhares de quilômetros.
Os usuários de smartphones que utilizam o softphone para realizar e receber ligações através
da Central PABX IP de sua empresa devem possuir algum tipo de plano de dados junto a sua
operadora de telefonia móvel, pois será necessário acesso à Internet para que o softphone se
conecte à Central PABX IP, e a partir dali efetue ou receba a chamada.
O recebimento de chamadas destinadas aos ramais IP da empresa que utiliza a Central ocorre
da forma inversa, ou seja, as chamadas originadas de outros telefones IP são encaminhados de
suas respectivas operadoras VoIP para a operadora VoIP contratada e esta encaminha a
chamada até a Central PABX IP, que por sua vez a redirecionará até o ramal desejado. E,
quanto aos telefones convencionais, suas respectivas operadoras de telefonia convencional
encaminharão suas chamadas até a operadora de VoIP contratada, que realizará processo
semelhante ao descrito anteriormente para que a chamada seja realizada.
51
8.3 Instalação Debian Squeeze
Foi instalado um sistema básico do Debian 6 (codinome Squeeze) que consiste em uma
interface em modo texto, ou seja, não foi instalado a parte gráfica no sistema.
É muito importante que a lista de repositórios esteja configurada com os espelhos adicionados
e o sistema já devidamente atualizado para que não ocorram problemas na hora da instalação
devido a pacotes desatualizados.
Para que seja possível fazer o restante da instalação remotamente, ou seja, através de outro
computador, deve ser instalado o servidor Secure Shell (SSH), utilizando o Advanced
Packaging Tool (APT), que é um software que faz a instalação de pacotes baixando-os
diretamente do repositório. Sempre que é necessário instalar um software que está nos
repositórios configurados, é utilizado o APT.
8.4 Instalação de Pacotes Pré-Requisitos
Para que seja possível a compilação e instalação do Asterisk, juntamente com suas
dependências, e o FreePBX, são necessários pacotes de compilação e bibliotecas. São
baixados e instalados os pacotes necessários ao longo da instalação, como o build-essentials,
libncurses5-dev e o libssl-dev.
8.5 Instalação e Configuração do Asterisk
Para que seja possível a instalação do Asterisk é necessário baixar o pacote diretamente do
site do desenvolvedor, o www.asterisk.org, contendo o código fonte e fazer sua compilação.
Para isso deve ser descompactado o arquivo dentro da pasta /usr/srv, que será a pasta onde
serão baixados os códigos fontes para serem compilados, e dar o comando “make” que irá
compilar o código fonte do software e após a finalização, poderá ser feita a instalação
utilizando o comando “make install”. Feito isso o Asterisk já está instalado.
O mesmo processo deve ser feito com o Asterisk Addons, que é um pacote que contém um
número adicional de drivers e utilitários de código aberto, incluindo suporte para reprodução
de mp3, MySQL tempo real, suporte a Registro de Detalhes da Chamada ou Call Detail
Record (CDR), e um controlador alternativo H.323. O código fonte também é encontrado no
mesmo site do Asterisk.
52
8.6 Instalação do FreePBX
Para a instalação do FreePBX deve-se baixar o código fonte no site do desenvolvedor do
projeto e descompactá-lo para que seja possível a execução dos scripts de instalação. O
arquivo contendo o código fonte pode ser baixado através do endereço
http://www.freepbx.org, na área de downloads.
Para o funcionamento, é necessária a hospedagem do FreePBX em um web server. Utilizou-se
o Apache e integrado a ele, o PHP, que faz a interpretação da linguagem utilizada no
desenvolvimento do frontend. Para guardar as informações de configuração, ramais e outras
mais, utilizou-se o MySQL, um servidor de banco de dados encontrado no próprio repositório
do Debian.
Todo o processo de instalação, hospedagem da página e configuração inicial do FreePBX é
feita através da execução de scripts.
8.7 Configuração do FreePBX
Ao instalar o FreePBX, é perguntado o nome do usuário e senha do administrador do
FreePBX e do banco de dados MysQL, além das configurações de endereço IP da aplicação,
como mostra a Figura 14.
Figura 14 - Configuração inicial do FreePBXFonte: Elaborado pelos autores
53
8.7.1 Criação de Ramais
Para se conectar na ferramenta de administração do Asterisk, o FreePBX, é necessário digitar
em um navegador de Internet o endereço IP do servidor onde está instalado o FreePBX, como
mostra a Figura 15. Será necessário digitar o usuário e senha administrativos, que foram
definidos na instalação do FreePBX para se autenticar no servidor.
Figura 15 - Ferramenta de administração do FreeBPXFonte: Elaborado pelos autores
Após a autenticação do usuário administrativo, é exibido a tela principal de administração do
FreePBX, chamado de FreePBX System Status, com as opções iniciais de configuração, assim
como o status do servidor. Ao acessar o menu Extensions, é possível adicionar um ramal
clicando em Submit, que pode ser do tipo SIP, IAX2, entre outros.
54
Conforme mostra a Figura 16, são exibidas as informações necessárias para a configuração
dos ramais. O campo User Extension é o número do ramal propriamente dito, no campo
Display Name é inserido o nome do usuário que será exibido ao realizar a ligação telefônica,
no campo CID Num Alias pode ser adicionado o número de algum ramal interno que, quando
chamado, redirecionará a chamada para este ramal que está sendo configurado, e ambos
passarão a tocar, possibilitando que a chamada seja atendida em qualquer um dos dois.
No campo SIP Alias (apelido) é possível colocar um nome ou número que pode ser discado ao
invés do número do ramal, no campo Secret é informada a senha de acesso para aquele ramal,
permitindo que somente o usuário desejado possua acesso ao ramal.
Figura 16 - Módulo de adição de ramaisFonte: Elaborado pelos autores
55
Depois de entrar com as informações requeridas, esta etapa é concluída através da adição
destas informações em um banco de dados MySQL, que aplica as alterações nos arquivos de
configuração do Asterisk.
8.7.2 Configuração de Tronco Externo SIP
Para a configuração de um tronco externo SIP é necessário adquirir uma conta de uma
operadora VoIP. Para adição do tronco, acesse o menu Trunk. Deve ser escolhido seu tipo, no
caso SIP, informar seu nome de exibição, descrição e número identificador do tronco, que
será exibido em ligações externas, as opções de quais usuários irão utilizar aquele tronco,
além do endereço IP, usuário e senha fornecidos pela operadora VoIP
8.7.3 Configuração de Rota de Saída
Uma rota de saída é responsável por encaminhar chamadas externas através do tronco criado
anteriormente até operadora VoIP, para que esta conclua a chamada.
Para configurar esta rota de saída são necessárias informações como um nome da rota, seu
Caller ID (CID), que é o número da rota que será visualizado pelo softphone que receber a
ligação. É possível adicionar uma senha para maior segurança, evitando sua utilização por
usuários indesejados. Por exemplo, em uma empresa onde a senha está habilitada, somente os
usuários que a conhecem podem fazer ligações externas.
8.7.4 Configuração de Rota de Entrada
Para configurar a rota de entrada necessita-se informar para o sistema um nome para a
descrição da rota, o número do Destination ID (DID), que faz um encaminhamento através da
filtragem de números telefônicos definidos previamente pelo administrador da Central, a fim
de encaminhar estas chamadas de determinadas origens para destinos específicos.
Por exemplo, um fornecedor liga para uma pequena empresa que possui apenas um número de
telefone externo, o DID realiza o encaminhamento para o setor de compras baseado no
número telefônico já cadastrado desse fornecedor, reduzindo a quantidade de atendimentos da
telefonista. Caso a opção DID não seja configurada, todas as chamadas serão destinadas a um
ramal especificado.
8.7.5 Criação de Sala de Conferência
Uma sala de conferência pode ser criada atribuindo-se a esta sala um número que esteja
disponível, um nome descritivo, e esta pode ser acessada pelos usuários através deste número
telefônico, onde é possível centralizá-los para comunicarem entre si.
56
É necessário adicionar a função de sala de conferência a partir do módulo administrativo, pois
não vem instalada por padrão.
8.8 Atualização do FreePBX
A atualização do FreePBX é feita no menu Module Admin, em que pode se adicionar
extensões como o Follow me, que redireciona a chamada de um ramal para o outro, caso este
não atenda, Fax Configuration para encaminhar todas as chamadas que tenham sinal de fax
para um e-mail configurado no servidor. Além destas facilidades, o FreePBX é atualizado
selecionando seus pacotes e extensões e clicando em Process, como mostra a Figura 17.
Figura 17 - Módulo administrativo do FreePBXFonte: Elaborado pelos autores
57
9 TESTES
Ao implantar uma Central PABX IP é necessário realizar testes nas ferramentas para validar e
homologar o sistema, procurando erros e verificando possíveis problemas. Neste capítulo são
descritos os testes realizados na criação dos ramais, o registro dos ramais internos e externos,
realização de chamadas internas e externas, transferência e captura de chamadas de grupo e
sala de conferência.
9.1 Criação de Ramais
Após configurar o FreePBX devidamente, é mostrado no canto superior direito do menu
Ramais os ramais que foram configurados no capítulo de implementação, como mostra a
Figura 18.
Figura 18 - Ramais adicionadosFonte: Elaborado pelos autores
58
9.2 Registro de Ramais Internos
Para registrar um ramal interno pelo softphone é necessário inserir suas informações
correspondentes, como ID do usuário, que é o número identificador do usuário, senha de
acesso para conectar ao ramal, nome de exibição que será visualizado pelas outras pessoas e o
nome de autorização, que é responsável por autenticar-se no servidor. A Figura 19 ilustra o
comportamento do softphone X-Lite durante seu registro.
Figura 19 - Registro do softphoneFonte: Elaborado pelos autores
59
9.3 Registro de Ramais Externos
O registro dos ramais externos acontece de maneira semelhante a do registro interno, com a
diferença que este ramal não se encontra dentro da LAN da empresa. Sendo assim, o acesso é
feito através do IP público da empresa, passando pelo roteador de borda e acessando a Central
PABX IP através deste. A Figura 20 mostra a configuração do softphone com o IP público
configurado no campo Domain.
Figura 20 - Softphone configurado com IP públicoFonte: Elaborado pelos autores
60
Para verificar quais ramais estão registrados, basta acessar o menu Flash Operator Panel
(FOP) a partir da tela inicial do FreePBX, que irá mostrar os troncos, salas de conferência e
ramais ativos, inativos e em ligação, como mostra a Figura 21.
Figura 21 - Flash Operator PanelFonte: Elaborado pelos autores
Pode-se observar que os ramais representados pela cor verde estão disponíveis, os de cor
vermelha estão em ligação, e as cores mais claras são os ramais que estão inativos.
61
9.4 Realização de Chamadas Internas
Uma chamada interna pode ser realizada a partir de um telefone convencional conectado a um
ATA, telefone IP ou softphone devidamente configurado. A Figura 22 mostra o softphone X-
Lite com uma chamada estabelecida.
Figura 22 - Chamada estabelecida pelo softphoneFonte: Elaborado pelos autores
Após registrar o sofphone no servidor, o mesmo já pode realizar ligações para outros ramais.
62
9.5 Realização de Chamadas Externas
Para a realização de chamadas em ambientes externos é necessário que um roteador
encaminhe estas solicitações para a Central PABX IP. A Figura 23 mostra um roteador
configurado para receber chamadas externas.
Figura 23 - Configuração do roteadorFonte: Elaborado pelos autores
No caso de VoIP é necessário encaminhar as portas UDP 5060 e 10.000 à 20.000 das ligações
externas até a Central PABX IP, que irá autenticar o ramal externo e fornecer os mesmos
serviços telefônicos que teria na rede interna. Por exemplo, um funcionário externo deseja
ligar para um ramal interno. O roteador irá detectar a ligação através de uma das portas
citadas anteriormente e encaminhar para a Central, que irá proceder com a chamada.
9.6 Transferência de Chamadas
Na transferência de chamadas é possível transferir uma ligação para outro ramal, que é feita
pressionando a combinação de teclas *2 e logo em seguida será escutado um sinal indicando a
possibilidade da transferência, por último basta inserir o ramal que se deseja transferir a
ligação.
Pode-se observar através do menu FOP, como mostrado na Figura 21 anteriormente, os
usuários disponíveis para transferência.
63
9.7 Captura de Chamadas de Grupo
Para configurar a captura de chamadas de grupo é necessário configurar nas opções de ramal
(Extensions) do usuário um número no campo callgroup e pickgroup. O campo callgroup
pode ser utilizado para se especificar um número que, quando discado, chamará um grupo de
ramais pré-definido. Já o campo pickgroup pode ser utilizado para se atender uma chamada
feita a um grupo do qual o usuário não faz parte.
Para capturar uma ligação de um dos ramais do mesmo grupo é necessário teclar *8. Já para
capturar a chamada de outros grupos, contanto que esteja configurado devidamente no
pickgroup, é necessário teclar *8 mais o número do callgroup desejado. Ao teclar ** mais o
ramal desejado é possível capturar a chamada de qualquer ramal, independente do grupo que
este pertença.
9.8 Sala de Conferência
A sala de conferência é um número definido pelo administrador da Central que os usuários
discam para se conectarem e realizarem uma conferencia. Os usuários que estão conectados
na sala de conferência são exibidos através do FOP.
64
10 CONSIDERAÇÕES FINAIS
Este trabalho explorou uma alternativa à telefonia convencional, utilizando uma Central
PABX IP instalada em uma infraestrutura rede de computadores já existente para trafegar a
voz através desta, descartando a necessidade da instalação de uma nova estrutura física e
lógica para telefonia. Mostrou-se bastante oportuna, em especial para pequenos negócios sem
disponibilidade de recursos para aquisição de sistemas telefônicos proprietários.
Considerando que a Central PABX IP utilize hardware com configurações básicas para que
funcione corretamente e de modo aceitável, a instalação e configuração desta se deu através
do uso de equipamentos de baixo custo com desempenho satisfatório, mas que se mostraram
suficientes para rodar os serviços.
Notou-se uma facilidade na instalação do softphone dos ramais, pois as máquinas já estavam
conectadas à rede local e possuíam periféricos de multimídia, como um simples fones de
ouvido munido de microfone ou microfone e caixas de som separados.
Foi utilizada a estrutura de rede já existente de um pequeno negócio, incluindo sua conexão
com a Internet, para que a Central PABX IP fosse instalada, configurada e conectada à
operadora de telefonia VoIP, e através desta foi possível realizar ligações para telefones
externos convencionais. Estas ligações, assim como os outros recursos oferecidos pela
Central, se mostraram com qualidade comparável à telefonia convencional, sem que o
interlocutor remoto pudesse observar algum comportamento incomum em relação a uma
ligação entre telefones convencionais.
Os recursos de telefonia foram implementados e testados com êxito, e as perspectivas de
expansão da infraestrutura de ramais passou a ser uma realidade, uma vez que basta um ponto
de rede disponível para que um novo ramal seja configurado, seja por softphone, telefone IP
ou telefone convencional ligado à um ATA. A flexibilidade na instalação e manutenção
também se mostrou uma grande vantagem, pois os ramais podem ter seu local físico alterado
sem dificuldades.
A simplicidade na instalação também foi um ponto positivo, a maior parte se deu de forma
lógica pois já havia uma infraestrutura de redes cabeada devidamente e a instalação física
limitou-se a ligar o servidor em seu devido lugar e conectar alguns dispositivos como
telefones IP e ATA na LAN.
65
Ainda que esta central seja um grande avanço em recursos de telefonia para uma empresa que,
antes desta, limitava-se apenas a realização de chamadas simples, sabe-se que ainda há a
possibilidade de se acrescentar novas funcionalidade à Central proposta por este trabalho, e é
interessante notar que estas novas funcionalidades não necessariamente significariam novos
investimentos financeiros, já que estas seriam, em sua grande maioria, novos pacotes e
recursos adicionados à Central de forma lógica, não exigindo novos equipamentos e nem
profissionais especialistas em telecomunicações.
Como pré-requisito para a instalação da Central, notou-se a necessidade de pelo menos um
profissional com conhecimento razoável em informática e Linux, para realizar tanto a
instalação quanto sua manutenção.
Apesar de não abordado profundamente neste trabalho, será necessário implementar QoS em
casos de empresas médias e grandes, ou lugares onde não se possui um link dedicado apenas
para o VoIP.
Conclui-se que a solução de telefonia baseada na Central PABX IP proposta é interessante
não apenas para pequenos negócios, mas para qualquer tipo de empresa que já possua sua
infraestrutura de rede e queira agregar mais estes serviços, sem ter que dispensar grandes
investimentos financeiros para tal e com relativa facilidade e flexibilidade.
10.1 Sugestão de Trabalhos Futuros
Baseando-se no que foi abordado neste trabalho, é possível criar uma Central PABX IP que
supra à maioria das necessidades de telefonia que uma Central PABX convencional atende.
A seguir, sugerem-se alguns trabalhos futuros que podem ser implementados baseados na
Central PABX IP aqui proposta:
• Voice Mail: nem sempre é possível atender a um ramal que esta chamando, seja porque o
usuário esteja ocupado, seja porque está ausente de seu local de trabalho.
Uma solução possível para esse impasse é a utilização de um mural de Voice Mail. A origem,
após determinado tempo chamando o destinatário da ligação, é orientado pelo sistema através
de um atendimento automático, a deixar uma mensagem de voz. Esta mensagem, assim que
concluída, é postada em uma página pessoal do usuário do ramal que se encontrava ausente,
podendo este autenticar e acessar sua página periodicamente para a verificação das mensagens
de voz. Esta mensagem também pode ser automaticamente encaminhada para o e-mail do
usuário;
66
• Tarifação Telefônica: a implantação de um sistema de tarifação telefônica para realizar o
controle das ligações dos funcionários da empresa, como o número do telefone destino e o
tempo de duração da ligação, bem como checar se a conta telefônica no final do mês veio com
os valores corretos.
• Vídeo Conferência: uma das maiores diferenças entre um telefone comum, um computador
ou smartphone que utilizam um softphone é que estes dois últimos possuem um display
colorido, que na maioria das vezes é de alta resolução. Este fato possibilita a utilização de um
recurso inexistente na telefonia comum: vídeo conferência.
Trata-se de um recurso áudio visual onde os interlocutores podem ver e ouvir um ao outro,
através da tela do computador ou do smartphone, desde que estes estejam munidos de
equipamentos de captura de vídeo, como por exemplo uma webcam.
O interessante é que a vídeo conferência não se limita apenas a dois interlocutores, mas pode
ser usada em uma chamada de grupo também, onde todos ouvem, falam e vêem, ou apenas
uma pessoa fala e todos a ouvem e vêem, dependendo da configuração selecionada;
• Distribuição Linux: após a instalação e configuração de todos os aplicativos, dependências,
codecs e protocolos necessários para o funcionamento da Central PABX IP ser concluído,
torna-se interessante a compilação de todas estas ferramentas em uma única e nova
distribuição Linux (Distro), com o objetivo de reunir em apenas uma mídia tudo o que se faz
necessário para a completa implementação da Central PABX IP, facilitando e agilizando a
instalação e o uso desta;
• Implementação de uma Central para Fornecer Serviços SIP: pensando no crescimento e
popularização dos serviços VoIP, pode ser proposto uma ampliação dos serviços oferecidos
pela Central PABX IP, deixando de ser apenas uma central que atende ao cliente interno da
empresa, e passando a ser um provedor de serviços SIP, oferecendo troncos de VoIP para
clientes que possuam Centrais PABX IP e interligando-os à rede de telefonia convencional.
67
REFERÊNCIAS
AHTO, Jouni et. al.. Manual do PHP. Disponível em: <http://www.php.net/manual/pt_BR/preface.php>. Acesso em: 08 mai. 2011.
ALECRIM, Emerson. Tecnologia VoIP. Publicado em: 02 abr. 2005. Disponível em: <http://www.infowester.com/voip.php>. Acesso em: 05 jun. 2011.
ASSIS, Pablo. O que são codecs? Publicado em: 23 abr. 2009. Disponível em: <http://www.tecmundo.com.br/1989-o-que-sao-codecs-.htm>. Acesso em: 07 jun. 2011.
ASTERISK.ORG. About The Asterisk Project. Disponível em: <http://www.asterisk.org/asterisk>. Acesso em: 01 jun. 2011.
AYUSO, Pablo Neira. The netfilter.org project. Disponível em: <http://www.netfilter.org/>. Acesso em: 20 mar. 2011.
BADDINI, Francisco. Windows Server 2003 em Português: Implementação & Administração, 2. ed. São Paulo: Editora Érica, 2003.
BATTISTI, Júlio. Tutorial de TCP/IP. Publicado em: 01 set. 2006. Disponível em: <http://www.juliobattisti.com.br/artigos/windows/tcpip_p3.asp#top>. Acesso em: 07 mai. 2011.
COLCHER, Sérgio et al.VoIP: Voz sobre IP.5. ed. Rio de Janeiro: Elsevier, 2005.
COMPARATEL. Comparação de Tarifas Telefônicas. Disponível em: <http://www.comparatel.com.br/static/>. Acesso em: 27 mar. 2011.
COUNTERPATH. X-Lite welcomes you to the world of softphones!. Disponivel em: <http://www.counterpath.com/x-lite.html>. Acesso em: 07 jul. 2011.
CRUZ, William. Sistema Operacional DOS. Publicado em: 27 mar. 1998. Disponível em: <http://www.brasilescola.com/informatica/ms-dos.htm>. Acesso em: 07 jun. 2011
DAVIDSON, Jonathan et al.. Fundamentos de VoIP. 2. ed. Porto Alegre: Bookman, 2008.
DEBIAN. Uma Breve História do Debian: Capítulo 1 - Introdução -- O que é o Projeto Debian?. 2004. Disponível em: <http://www.debian.org/doc/manuals/project-history/ch-intro.pt.html>. Acesso em: 19 mar. 2011.
DÍGITRO TECNOLOGIA. Glossário Tecnológico. Disponível em: <http://www.digitro.com/glossario_digitro.php>. Acesso em: 12 mar. 2011.
DOTTA, Valmir et. al.. Telefonia IP. Relatório Técnico. Comitê Superior de Tecnologia da Informação, Unesp, São Paulo, 2009.
FARIAS, Paulo César Bento. Curso Essencial de Redes. São Paulo: Digerati Books, 2006.
FILIPPETTI, Marco Aurélio. CCNA4.1: Guia Completo de Estudo. Florianópolis: Visual Books, 2009.
68
FREE SOFTWARE FOUNDATION. GNU General Public License. Disponível em: <http://www.gnu.org/licenses/gpl.html>. Acesso em: 11 abr. 2011.
FREEPBX. FreePBX. Disponível em: <http://www.freepbx.org/freepbx>. Acesso em: 27 mar. 2011.
GNU.ORG. About the GNU Operating System. Disponivel em: <http://www.gnu.org/gnu/about-gnu.html>. Acesso em: 07 jun. 2011
GNU.ORG. GNU General Public License, version 2. Publicado em: jun. 1991. Disponível em: <http://www.gnu.org/licenses/gpl-2.0.html>. Acesso em: 07 mai. 2011
GOMES, Anderson Ferreira. Qualidade de Serviço em VoIP (Voz sobre IP). 2005. 65 f. Dissertação - Curso de Sistemas de Informação, Departamento de Ciência da Computação, Unimontes, Montes Claros, 2005.
GOMES, Daniel. Glossário de Informática e tradução de termos informáticos. Disponível em: <http://visibilidade.net/tutorial/glossario-informatica.html#W>. Acesso em: 02 jun. 2011.
GONZALEZ, Felipe Nogaroto. Estudo e Implantação de Solução de Voz sobre IP Baseadas em Softwares Livres. 2007. 93 f. Dissertação - Sociedade Educacional De Santa Catarina, Joinville, 2007.
IETF. Request for Comments: 2196. 1997. Disponível em: <http://tools.ietf.org/html/rfc2196#section-2>. Acesso em: 19 mar. 2011.
INFOSEC INSTITUTE. Learn about the TCP 3 way handshake. Disponível em <http://www.3wayhandshake.com/>. Acesso em: 06 mar. 2011.
INTERNATIONAL ORGANIZATION FOR STANDARDIZATION. ISO/IEC 7498-1: Information technology - Open Systems Interconnection - Basic Reference Model: The Basic Model. 2. ed, 1994.
ISEGNET. A Importância da Inteligibilidade. Disponível em: <http://www.isegnet.com.br/siteEdit/site/site_antigo/1colunistas.asp?id=7>. Acesso em: 02 jun. 2011.
JÚNIOR, Ronaldo Fonseca Cavalcante. Engenharia Social. Publicado em: 24 ago. 2008. Disponível em: <http://www.webartigos.com/articles/8813/1/Engenharia-Social/pagina1.html#ixzz1KVKtir9b>. Acesso em: 25 abr. 2011.
KELLER, Alexandre. Asterisk: na prática. São Paulo: Novatec, 2009.
KUROSE, James F.; ROSS, Keith W. Redes de Computadores e a Internet: Uma abordagem top-down. 3. ed. São Paulo, SP: Pearson Addison Wesley, 2006.
LIMA, Evandro Cesar. Banco de Dados – Editor do seu Guia de Banco de Dados na Internet. Disponível em: <http://www.sobresites.com/bancodedados/index.htm>. Acesso em: 09 mai. 2011.
69
MACORATTI, José Carlos. Banco de Dados: Introdução. Disponível em: <http://www.macoratti.net/banco.htm>. Acesso em: 09 mai. 2011.
MARQUES, Tiago. Tipos de Licenças de Software. Publicado em: 17 abr. 2009. Disponível em: <http://www.tiagomarques.info/2009/04/tipos-de-licencas-de-software/>. Acesso em: 08 jun. 2011.
MATIAS, Camila Verônica Alves; FERNANDES, Pedro Augusto Domiciano. Asterisk uma Solução em PABX IP. 2009. 87 f. Dissertação - Curso de Engenharia De Computação, Departamento de Computação, Universidade Católica De Goiás, Goiás, 2009.
MELO, Daiane Stelmach De; VIVIURKA, Rafaela De Fátima. Implantação de Central Telefônica PABX Via Software Asterisk. 2007. 57 f. Dissertação - Curso de Tecnólogo em Informática, Universidade Tecnológica Federal do Paraná, Curitiba, 2007.
MICROSOFT. Telefonia PSTN. Disponível em <http://technet.microsoft.com/pt-br/library/cc737738(WS.10).aspx>. Acesso em: 08 mar. 2011.
MINASI, Mark. et. al.. Dominando o Windows Server 2003: A Bíblia. 2. ed. São Paulo: Pearson Makron Books, 2003.
MYSQL.COM. Manual de Referência do MySQL 4.1. Disponível em: <http://dev.mysql.com/doc/refman/4.1/pt/features.html>. Acesso em: 27 Jul. 2011.
NORTHRUP, Tony; MACKIN, J.C. Kit de Treinamento MCTS (Exame 70-642): Configuração do Windows Server 2008 Infra Estrutura de Rede. Porto Alegre: Bookman Companhia Editora, 2009.
OLIVEIRA, Luis Gustavo B. de; MARTINS, Rafael Santos. Eco no uso de VOIP. 2005. 2 f. Curso de Engenharia de Telecomunicações, Universidade Fumec, 2005.
OPENSOURCE.ORG. Open Source Licences. Disponível em: <http://www.opensource.org/licenses/index.html>. Acesso em: 02 jun. 2011.
PEREIRA, Douglas Leandro Entenda por que os codecs são indispensáveis em um computador. Publicado em: 16 dez. 2008. Disponível em: <http://www.tecmundo.com.br/1181-entenda-por-que-os-codecs-sao-indispensaveis-em-um-computador-.htm>. Acesso em: 07 jun. 2011
PINHEIRO, José Mauricio Santos. Dispersão, Jitter e Latência. Publicado em: 01 nov. 2004. Disponível em: <http://www.projetoderedes.com.br/artigos/artigo_dispersao_jitter_latencia.php>. Acesso em: 02 jun. 2011.
PRODESP. Manual Serviço de Voz na Rede IP Multisserviços Versão 3. Publicado em: nov. 2007. Disponível em: <http://www.intragov.sp.gov.br/manuais/Manual%20do%20Servi%C3%A7o%20de%20Voz%20na%20Rede%20IP%20Multisservi%C3%A7os%20v3%20(28.11.07).pdf>. Acesso em: 15 mai. 2011.
REKHTER, Yakov et. al.. RFC 1918: Address Allocation for Private Internets. 1996. Disponível em: <http://datatracker.ietf.org/doc/rfc1918/>. Acesso em: 07 mai. 2011.
70
RODIN, Josip. A FAQ (perguntas freqüentes) do Debian GNU/Linux: Capítulo 1 - Visão geral e definições. 2009. Disponível em: <http://www.debian.org/doc/FAQ/ch-basic_defs.pt-br.html#s-difference>. Acesso em: 20 mar. 2011.
RODRIGUES, Simone. A adoção do VoIP nas empresas. RTI - Redes, Telecom e Instalações: Voz, Dados e Imagem - Instalações e Tecnologias, São Paulo, n. 131, p.24-35, abr. 2011. Mensal.
RONCAGLIA, Adriano. Rede pública de telefonia comutada. 2009. Disponível em: <http://mestreasterisk.com.br/artigos-mestre-asterisk/pstn-rede-publica/>. Acesso em: 08 mar. 2011.
RUSSO, Rafael. Redes: Conheça a classe dos endereços IP. 2011. Disponível em: < http://escreveassim.com.br/2011/01/13/classe-dos-enderecos-ip/ >. Acesso em: 21 abr. 2011.
SANTOS, Jorge Alberto dos. Intranet, Segurança e Internet: Parte V. Publicado em: 25 out. 2006. Disponível em: <http://www.juliobattisti.com.br/tutoriais/jorgeasantos/informaticaconcursos040.asp>. Acesso em: 07 jun. 2011.
SATO, Alberto Mitsuo. PABX IP. 2004. Disponível em: <http://www.teleco.com.br/tutoriais/tutorialpabx/default.asp>. Acesso em: 13 mar. 2011.
SCHRODER, Carla. Redes Linux: Livro de Receitas. Rio de Janeiro: Alta Books, 2009.
SCHULZRINNE, H. et. al.. RTP: A Transport Protocol for Real-Time Applications: RFC 3550. Publicado em: jul. 2003. Disponível em: <http://www.ietf.org/rfc/rfc3550.txt>. Acesso em: 15 mai. 2011.
SEBRAE. Critérios de Classificação de Emprsas - ME - EPP. Disponível em: <http://www.sebrae-sc.com.br/leis/default.asp?vcdtexto=4154>. Acesso em: 09 Jul. 2011.
SENGER, Hermes. Redes Locais, Metropolitanas e de Longa Distância. Pós-Graduação “Lato Sensu” em Redes de Computadores - DC – UFSCar. Notas de aula. Disponível em: <http://www-usr.inf.ufsm.br/~candia/aulas/espec/Aula_2_LAN_MAN_WAN.pdf>. Acesso em: 07 mar. 2011.
SERY, Paul G.. Ferramentas poderosas para redes Linux: dicas e segredos. Rio de Janeiro: Ciencia Moderna, 1998.
SILVA, Adailton J. S. Qualidade de Serviço em VoIP - Parte I. Publicado em: 12 Mai. 2000. Disponível em: <http://www.rnp.br/newsgen/0005/qos_voip1.html>. Acesso em: 02 Jun. 2011.
SILVA, Marcelo Siqueira. Voz sobre IP: QoS e Integração SIP-H.323. 2007. 114 f. Dissertação - Curso de Engenharia Elétrica, Departamento de Engenharia Elétrica, Universidade Federal Do Espírito Santo, Vitória, 2007.
SOUSA, Luís António Pereira de. Avaliação de desempenho do PBX Asterisk. 2008. 62 f. Dissertação (Mestrado) - Curso de Engenharia de Redes de Comunicações, Universidade Técnica de Lisboa, Lisboa, 2008.
71
SOUSA, Rui S. MySQL e o sistema de ficheiros – análise de performance. Publicado em: 18 nov. 2009. Disponível em: <http://www.infotuga.com/74/linux/mysql-e-o-sistema-de-ficheiros-analise-de-performance/>. Acesso em: 09 mai. 2011.
STARLIN, Gorski; CARVALHO, Alan. Tecnologia de Redes para Trainees. Rio de Janeiro: Editora Book Express, 2001.
TANENBAUM, Andrew S. Redes de Computadores, Rio de Janeiro: Elsevier Editora, 2003. Tradução Vandenberg D. de Souza.
TANENBAUM, Andrew S. Sistemas Operacionais Modernos. 2 ed. Rio de Janeiro: Pearson Prentice Hall, 2001.
TELNEXT. O que é um Pabx? Disponível em: <http://www.telnext.com.br/pabx.asp>. Acesso em: 12 mar. 2011.
THE LINUX FOUNDATION. Linux Download Directory. Disponível em: <http://www.linux.com/directory/Distributions>. Acesso em: 05 jun. 2011.
TOREZAN, Eduardo Luiz Dalpiaz. Implementação de Funções Avançadas em um Gateway VOIP. 2006. 57 f. Dissertação - Curso de Engenharia De Telecomunicações, Departamento de Ciências Tecnológicas, Universidade Regional de Blumenau, Blumenau, 2006.
VIGAZZOLA, Gianmassimo et. al.. Manual de Referência do MySQL 4.1. Disponível em: <http://dev.mysql.com/doc/refman/4.1/pt/introduction.html>. Acesso em: 09 mai. 2011.
VIRGOS TECNOLOGIA DA INFORMAÇÃO S/S. Manual de Gerenciamento Sistema VoIP Virgos (Tarifador). Episcopal, 1763 – São Carlos SP, 2010. Disponível em: <http://suporte.virgos.com.br/downloads/manual.pdf>. Acesso em: 22 mar. 2011.
WANDERLEY, Bruno Lima; SANTOS, Renato Moraes dos. Telefonia IP: QoS e Interconexão com a Rede Pública Comutada. Publicado em: 28 ago. 2006. Disponível em: <http://www.teleco.com.br/tutoriais/tutorialtelip2/default.asp>. Acesso em: 18 mai. 2011.
72
APÊNDICE A
A instalação do Asterisk deve ser feita em um sistema mínimo do Debian, ou seja, um sistema
em modo texto, devidamente atualizado.
Todo o processo de instalação deve ser feito utilizando um usuário com direitos
administrativos. Para isso pode-se utilizar o comando “su”, mudando os privilégios do
usuário comum para o de Super Usuário.
A.1 Instalação dos pré-requisitos para compilação
A primeira coisa a se fazer é preparar o ambiente para a compilação e instalação do Asterisk.
Deve-se instalar as dependências, com o comando:
apt-get install build-essential bison flex libncurses5-dev
curl sox libssl-dev subversion linux-headers-`uname -r` mpg123
libxml2-dev
A.2 Instalação do Asterisk
Para que seja feita a instalação do Asterisk, é necessário baixar o código fonte e compilá-lo. O
download deve ser feitos no diretório /usr/src. Utiliza-se o comando a seguir para se chegar
até o diretório:
cd /usr/src/
Deve-se baixar e descompactar o Asterisk através do comando:
wget -c
http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-
1.4.41.tar.gz && tar xzvf asterisk-1.4.41.tar.gz
Uma nova pasta será criada com o nome “asterisk-1.4.41”. Mude o diretório corrente para a
pasta gerada pela descompactação do arquivo, com o comando:
cd asterisk-1.4.41
Para compilar o Asterisk utiliza-se o comando a seguir:
./configure && make
Com o comando abaixo, a instalação será feita.
make install
73
O FreePBX requer a instalação dos arquivos de modelo de configuração (sample). Deve-se
digitar o comando:
make samples
A.3 Instalação dos pré-requisitos do Asterisk Add-Ons
Para que o Asterisk Add-ons funcione, é necessário que seja instalada a biblioteca com o
comando a seguir:
apt-get install libmysqlclient15-devapt-get install libmysqlclient15-dev
A.4 Instalação do Asterisk Add-ons
O FreePBX lê o CDR a partir do banco de dados. Deve ser instalado o módulo cdr_mysql
contido no Asterisk Add-nos.
Deve-se voltar ao diretório padrão para baixar o código fonte:
cd /usr/src/
O download e descompactação são feitos com o comando a seguir:
wget –c
http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-
addons-1.4.13.tar.gz && tar xzvf asterisk-addons-1.4.13.tar.gz
Uma nova pasta será criada com o nome “asterisk-addons-1.4.13”. Deve-se mudar o diretório
corrente de trabalho para a pasta criada. Usa-se o comando:
cd asterisk-addons-1.4.13
Roda-se o script de compilação, com o comando:
./configure && make
Prossegue-se com a instalação, com o comando:
make install
E então é feita a instalação dos arquivos de modelo de configuração (sample), com o
comando:
make samples
74
A.5 Configurando o Asterisk Manager
Para que o Asterisk Manager possa se comunicar com o FreePBX é necessário que seja
habilitado. Deve-se editar o arquivo /etc/asterisk/manager.conf com o comando:
sed -i 's!^enabled = no!enabled = yes!'
/etc/asterisk/manager.conf
Também é necessário criar um usuário, que pode ser adicionado com os comandos a seguir:
echo "[admin]" >> /etc/asterisk/manager.conf
echo "secret = amp111" >> /etc/asterisk/manager.conf
echo "deny=0.0.0.0/0.0.0.0" >> /etc/asterisk/manager.conf
echo "permit=127.0.0.1/255.255.255.0" >>
/etc/asterisk/manager.conf
echo "read = system,call,log,verbose,command,agent,user" >>
/etc/asterisk/manager.conf
echo "write = system,call,log,verbose,command,agent,user"
>> /etc/asterisk/manager.conf
A senha “amp111”, no segundo comando, pode ser trocada por qualquer outra. O usuário
“admin” e a senha escolhida serão utilizados na configuração do FreePBX.
75
APÊNDICE B
B.1 Preparação para o FreePBX
O Asterisk, FreePBX e o ambiente Web devem ser executados com o mesmo usuário. Para
criar o usuário e o grupo, utiliza-se o comando:
addgroup asterisk && useradd -g asterisk -c "Asterisk PBX" -
d /var/lib/asterisk asterisk
Também é possível alterar o caminho do arquivo de identificação do processo do Asterisk
para um melhor controle. Cria-se a pasta para o arquivo dentro de /var/run chamada “asterisk”
com o seguinte comando:
mkdir -p /var/run/asterisk
E edita-se o arquivo /etc/asterisk/asterisk.conf com o comando:
sed -i 's!^astrundir => /var/run!astrundir =>
/var/run/asterisk!' /etc/asterisk/asterisk.conf
Também é necessário alterar as permissões da pasta /var/run/asterisk, com o comando:
chown asterisk.asterisk /var/run/asterisk
Devido a estas mudanças, deve-se alterar as permissões do arquivo de log do Asterisk com o
comando:
chown -Rf asterisk.asterisk /var/log/asterisk
B.2 Instalação e configuração dos pré-requisitos do FreePBX
Para o funcionamento do sistema, deve ser instalado e configurado o banco de dados, que é
necessário para armazenar as informações do Asterisk, como configuração dos ramais,
usuários e informações de ligações.
Para que seja possível a instalação dos módulos do Asterisk e hospedado o software de
configuração (frontend), são necessários softwares adicionais e bibliotecas, como o Apache,
PHP e bibliotecas de conexão com o banco de dados.
Ao executar o comando a seguir, serão instalados o Apache, o PHP e o MySQL, juntamente
com suas bibliotecas adicionais, módulos de conexão entre os softwares e suas dependências.
apt-get install apache2 libapache2-mod-php5 mysql-common
mysql-server-5.1 mysql-client-5.1 php5-mysql php-pear php-db
php5-gd
76
Durante a instalação será solicitada a senha do usuário administrador do banco de dados.
Após a inserção da senha, a instalação irá continuar.
Uma vez instalado, o PHP necessita ser configurado, modificando algumas configurações no
arquivo /etc/php5/apache2/php.ini:
sed -i 's!^magic_quotes_gpc = On!magic_quotes_gpc = Off!'
/etc/php5/apache2/php.ini
Muda-se também o usuário dono do arquivo /var/lib/php5, transformando o usuário asterisk
no novo dono.
chown -R asterisk /var/lib/php5
Para que o rode com o mesmo usuário e grupo do Asterisk, é preciso configurar o arquivo
/etc/apache2/envvars:
sed -i 's!^export APACHE_RUN_USER=www-data!export
APACHE_RUN_USER=asterisk!' /etc/apache2/envvars
sed -i 's!^export APACHE_RUN_GROUP=www-data!export
APACHE_RUN_GROUP=asterisk!' /etc/apache2/envvars
Deve-se reiniciar o serviço do Apache para que as alterações sejam aplicadas:
/etc/init.d/apache2 restart
B.3 Instalação do FreePBX
Para a instalação do FreePBX é necessário baixar e compilar seu código fonte. Deve-se ir ao
diretório padrão de download:
cd /usr/src/
Após, baixar e descompactar o arquivo.
wget -c http://mirror.freepbx.org/freepbx-2.9.0.tar.gz && tar
xzvf freepbx-2.9.0.tar.gz
Uma nova pasta será criada no diretório de download chamada “freepbx-2.9.0” e deverá ser
acessada:
cd freepbx-2.9.0
É necessário a criação de duas bases de dados para o funcionamento do FreePBX. Para isso
deve-se abrir o console do MySQL com o comando:
77
mysql -p
Será solicitada a senha do usuário administrador, definida na hora da instalação.
Já no console do MySQL, execute os comandos:
create database asterisk;
E,
create database asteriskcdrdb;
Executados os comandos, pode-se sair do console com o comando:
exit
Com as bases de dados criadas é necessário configurá-las e inserir os dados nelas.
mysql -p asterisk < SQL/newinstall.sql
E,
mysql -p asteriskcdrdb < SQL/cdr_mysql_table.sql
O MySQL irá pedir a senha do usuário administrador após a execução de cada comando.
Para a instalação do FreePBX é necessário que o Asterisk seja executado para que o FreePBX
se comunique com o Asterisk Manager. Deve-se abrir outro terminal e executar o comando:
asterisk -U asterisk -G asterisk -vvvc
O Asterisk irá carregar seus módulos e sua configuração, então será exibida a mensagem
mostrada na Figura 24:
Figura 24 - Primeira execução do AsteriskFonte: Elaborado pelos autores
78
Já com o Asterisk sendo executado, pode-se iniciar a instalação do FreePBX executando o
script “install_amp”:
./install_amp
Serão feitas algumas perguntas que deverão ser respondidas, como na Figura 25.
Figura 25 - Instalação do FreePBXFonte: Elaborado pelos autores
Onde foi definida a senha “amp109”, deve ser colocada a senha definida na instalação do
MySQL e onde está o endereço IP 192.168.1.126, deve ser colocado o endereço IP do
servidor.
Caso a mensagem de erro “Cannot redeclare __parse_dialrulesfile” apareça, deve ser repetida
a execução do script install_amp como mostrado anteriormente, assim a instalação será
finalizada corretamente.
Além disso, deve-se excluir o arquivo sip_notify.conf, que posteriormente será criado
automaticamente pelo FreePBX.
rm /etc/asterisk/sip_notify.conf
Será necessário alterar o arquivo /usr/sbin/safe_asterisk para que o Asterisk inicie com o
script para usar o BASH ao invés de DASH:
79
sed -i 's!^/bin/sh!/bin/bash!' /usr/sbin/safe_asterisk
Feito isso, executar o comando abaixo para reiniciar o serviço e assim aplicar as alterações:
amportal stop && amportal start
B.4 Acesso à interface do FreePBX
Deve-se acessar o FreePBX, usando o navegador através do endereço “http://<Endereço IP do
Servidor>/admin”. Será aberta uma página como a mostrada na Figura 26.
Figura 26 - Acesso ao FreePBXFonte: Elaborado pelos autores
Deve-se digitar o usuário “admin” e senha “admin” para o acesso ao FreePBX e clicar no
botão laranja “Apply Configuration Changes” no topo da página.
B.5 Configurar o FreePBX para ser executado na inicialização
Para que o FreePBX seja executado na inicialização deve-se fazer os processos descritos a
seguir.
Deve-se baixar o script de inicialização na pasta /etc/init.d/:
cd /etc/init.d/ && wget –c
http://asteriskipcop.berlios.de/fpfa/amportal
Com o comando a seguir, o script se torna executável, necessário para o funcionamento do
processo.
chmod +x amportal
80
E finalizando os processos, deve-se executar o comando abaixo para que seja executado
automaticamente na inicialização do sistema.
ln -s /etc/init.d/amportal /etc/rc2.d/S99amportal
Feito isso, o sistema pode ser reiniciado com o comando:
reboot
Após a reinicialização do sistema, a Central PABX IP estará pronta para o uso.