pabx ip utilizando ferramentas open source

144
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

Upload: william-ribeiro

Post on 26-Oct-2015

148 views

Category:

Documents


1 download

DESCRIPTION

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.

TRANSCRIPT

Page 1: PABX IP Utilizando Ferramentas Open Source

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

Page 2: PABX IP Utilizando Ferramentas Open Source

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

Page 3: PABX IP Utilizando Ferramentas Open Source

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

Page 4: PABX IP Utilizando Ferramentas Open Source

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.

Page 5: PABX IP Utilizando Ferramentas Open Source

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.

Page 6: PABX IP Utilizando Ferramentas Open Source

“O sucesso é ir de fracasso em

fracasso sem perder entusiasmo.”

Winston Churchill

Page 7: PABX IP Utilizando Ferramentas Open Source

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.

Page 8: PABX IP Utilizando Ferramentas Open Source

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

Page 9: PABX IP Utilizando Ferramentas Open Source

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

Page 10: PABX IP Utilizando Ferramentas Open Source

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

Page 11: PABX IP Utilizando Ferramentas Open Source

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

Page 12: PABX IP Utilizando Ferramentas Open Source

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

Page 13: PABX IP Utilizando Ferramentas Open Source

VoIP - Voice over Internet Protocol

WAN - Wide Area Network

Page 14: PABX IP Utilizando Ferramentas Open Source

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

Page 15: PABX IP Utilizando Ferramentas Open Source

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

Page 16: PABX IP Utilizando Ferramentas Open Source

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

Page 17: PABX IP Utilizando Ferramentas Open Source

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.

Page 18: PABX IP Utilizando Ferramentas Open Source

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.

Page 19: PABX IP Utilizando Ferramentas Open Source

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.

Page 20: PABX IP Utilizando Ferramentas Open Source

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.

Page 21: PABX IP Utilizando Ferramentas Open Source

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.

Page 22: PABX IP Utilizando Ferramentas Open Source

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.

Page 23: PABX IP Utilizando Ferramentas Open Source

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.

Page 24: PABX IP Utilizando Ferramentas Open Source

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.

Page 25: PABX IP Utilizando Ferramentas Open Source

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.

Page 26: PABX IP Utilizando Ferramentas Open Source

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)

Page 27: PABX IP Utilizando Ferramentas Open Source

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.

Page 28: PABX IP Utilizando Ferramentas Open Source

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

Page 29: PABX IP Utilizando Ferramentas Open Source

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)

Page 30: PABX IP Utilizando Ferramentas Open Source

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.

Page 31: PABX IP Utilizando Ferramentas Open Source

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)

Page 32: PABX IP Utilizando Ferramentas Open Source

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)

Page 33: PABX IP Utilizando Ferramentas Open Source

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.

Page 34: PABX IP Utilizando Ferramentas Open Source

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

Page 35: PABX IP Utilizando Ferramentas Open Source

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.

Page 36: PABX IP Utilizando Ferramentas Open Source

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

Page 37: PABX IP Utilizando Ferramentas Open Source

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.

Page 38: PABX IP Utilizando Ferramentas Open Source

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;

Page 39: PABX IP Utilizando Ferramentas Open Source

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.

Page 40: PABX IP Utilizando Ferramentas Open Source

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.

Page 41: PABX IP Utilizando Ferramentas Open Source

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.

Page 42: PABX IP Utilizando Ferramentas Open Source

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.

Page 43: PABX IP Utilizando Ferramentas Open Source

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.

Page 44: PABX IP Utilizando Ferramentas Open Source

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.

Page 45: PABX IP Utilizando Ferramentas Open Source

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.

Page 46: PABX IP Utilizando Ferramentas Open Source

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).

Page 47: PABX IP Utilizando Ferramentas Open Source

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)

Page 48: PABX IP Utilizando Ferramentas Open Source

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.

Page 49: PABX IP Utilizando Ferramentas Open Source

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.

Page 50: PABX IP Utilizando Ferramentas Open Source

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).

Page 51: PABX IP Utilizando Ferramentas Open Source

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".

Page 52: PABX IP Utilizando Ferramentas Open Source

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.

Page 53: PABX IP Utilizando Ferramentas Open Source

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.

Page 54: PABX IP Utilizando Ferramentas Open Source

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.

Page 55: PABX IP Utilizando Ferramentas Open Source

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.

Page 56: PABX IP Utilizando Ferramentas Open Source

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.

Page 57: PABX IP Utilizando Ferramentas Open Source

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.

Page 58: PABX IP Utilizando Ferramentas Open Source

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.

Page 59: PABX IP Utilizando Ferramentas Open Source

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.

Page 60: PABX IP Utilizando Ferramentas Open Source

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.

Page 61: PABX IP Utilizando Ferramentas Open Source

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)

Page 62: PABX IP Utilizando Ferramentas Open Source

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)

Page 63: PABX IP Utilizando Ferramentas Open Source

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.

Page 64: PABX IP Utilizando Ferramentas Open Source

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.

Page 65: PABX IP Utilizando Ferramentas Open Source

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.

Page 66: PABX IP Utilizando Ferramentas Open Source

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.

Page 67: PABX IP Utilizando Ferramentas Open Source

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.

Page 68: PABX IP Utilizando Ferramentas Open Source

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

Page 69: PABX IP Utilizando Ferramentas Open Source

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.

Page 70: PABX IP Utilizando Ferramentas Open Source

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

Page 71: PABX IP Utilizando Ferramentas Open Source

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.

Page 72: PABX IP Utilizando Ferramentas Open Source

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

Page 73: PABX IP Utilizando Ferramentas Open Source

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

Page 74: PABX IP Utilizando Ferramentas Open Source

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

Page 75: PABX IP Utilizando Ferramentas Open Source

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

Page 76: PABX IP Utilizando Ferramentas Open Source

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.

Page 77: PABX IP Utilizando Ferramentas Open Source

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.

Page 78: PABX IP Utilizando Ferramentas Open Source

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.

Page 79: PABX IP Utilizando Ferramentas Open Source

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.

Page 80: PABX IP Utilizando Ferramentas Open Source

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.

Page 81: PABX IP Utilizando Ferramentas Open Source

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;

Page 82: PABX IP Utilizando Ferramentas Open Source

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.

Page 83: PABX IP Utilizando Ferramentas Open Source

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.

Page 84: PABX IP Utilizando Ferramentas Open Source

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.

Page 85: PABX IP Utilizando Ferramentas Open Source

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.

Page 86: PABX IP Utilizando Ferramentas Open Source

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.

Page 87: PABX IP Utilizando Ferramentas Open Source

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.

Page 88: PABX IP Utilizando Ferramentas Open Source

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

Page 89: PABX IP Utilizando Ferramentas Open Source

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

Page 90: PABX IP Utilizando Ferramentas Open Source

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.

Page 91: PABX IP Utilizando Ferramentas Open Source

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

Page 92: PABX IP Utilizando Ferramentas Open Source

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:

Page 93: PABX IP Utilizando Ferramentas Open Source

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

Page 94: PABX IP Utilizando Ferramentas Open Source

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:

Page 95: PABX IP Utilizando Ferramentas Open Source

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

Page 96: PABX IP Utilizando Ferramentas Open Source

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.