Encaminhamento via SIP de Chamadas E.164 no
fone@RNP: operação e atualização
Paulo Henrique de Aguiar Rodrigues
Abril de 2011
V 4.0
Este relatório apresenta a arquitetura para suporte ao encaminhamento via SIP de chamadas E.164
via SIP, bem como define a operação e cenários de migração para o novo ambiente.
RNP/REF/0204
Sumário
1. Histórico: Motivação para a migração para SIP.................................................................................. 3
2. A nova arquitetura centrada em SIP................................................................................................... 5
3. Princípios do Encaminhamento Nacional ........................................................................................... 8
4. Atualização da arquitetura ................................................................................................................ 10
5. Vantagens da operação com SIP para o serviço fone@RNP........................................................... 10
6. Pacotes para upgrade de versão da arquitetura............................................................................... 11
7. Exemplo de fluxo .............................................................................................................................. 15
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
2
1.
Histórico: Motivação para a migração para SIP
O serviço fone@RNP operou, desde a sua criação até o final de 2007 com o encaminhamento de
chamadas a nível nacional pelo H.323, fazendo uso do DGKRNP. Uma instituição que fizesse parte do
serviço tinha que operar um gatekeeper H.323 (normalmente usando o software livre GnuGK) para
encaminhamento e recebimento de chamadas, ainda que a sua base de usuários fosse SIP.
A arquitetura aberta suportada e recomendada pelo serviço fone@RNP na época é mostrada na
Figura 1.
Figura1 – Ambiente H.323/SIP para o serviço fone@RNP até o final de 2007
As ambientes de software aberto utilizados na arquitetura da Figura 1 eram os seguintes:
o
o
H.323: Gatekeeper GnuGK
SIP: proxy SIP OpenSER, Mediaproxy
o
o
GW de voz e GW H.323/SIP: Asterisk
Banco de dados SQL: PosgreSQL
o
o
Autenticação Radius: FreeRadius
Diretório LDAP: OpenLDAP
Na arquitetura da Figura 1, o gateway de voz que se conectava ao PBX operava com H.323,
recebendo e enviando as chamadas nas quais havia a participação do PBX via H.323. Assim,
chamadas originadas de outras instituições e destinadas ao PBX da instituição local (podendo
eventualmente ser um destino na RTFC do código de área local) eram encaminhadas pelo DGK
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
3
usando a sinalização H.323. Caso o destino fosse um cliente registrado no proxy SIP institucional, a
chamada teria que passar pelo Asterisk local, que funcionava como gateway H.323/SIP.
O Asterisk como gateway H.323/SIP foi avaliado em termos de desempenho e mostrou instabilidade
no canal oh323 quando o número de chamadas excedeu 37. O atraso inserido pelo gateway nas
condições de teste foi da ordem de 61 ms, sem conversão de codecs. Com conversão de codecs, o
atraso tendeu a piorar. O Asterisk local estava sendo utilizado com o canal oh323, por este canal
permitir correlacionar os CDRs do lado SIP com os CDRs do lado H.323. A alternativa ao canal oh323
seria o canal ooh323, mas este último precisaria de ampla modificação no código para possibilitar a
correlação entre os dois ambientes, essencial para a geração de CDRs consolidados.
As versões mais recentes do Asterisk são 1.4.x. Foram testadas as versões 1.4.0 e 1.4.1. Nessas
versões, o canal oh323 não é mais suportado, além de ser um desenvolvimento de terceiros. A
alternativa seria o uso do novo canal h323 nativo, presente nas versões mais atuais. Todavia, este
canal não funcionou corretamente nestas versões testadas.
Pelos fatores expostos, as versões que continuam a ser utilizadas no Asterisk, quando necessário o
suporte a H.323, são as versões 1.2.x com uso do oh323, com os inconvenientes de atraso e
instabilidade já mencionados.
Quando no cenário da Figura 1, dois clientes SIP de diferentes instituições estabelecem uma
chamada, essa chamada passa por dois gateways H.323/SIP, o que acrescenta mais de 120 ms de
atraso adicional, prejudicando a interatividade, e, possivelmente, comprometendo a qualidade da
ligação fim a fim. Quando um cliente SIP de uma instituição tem sua chamada encaminhada para o
PBX de outra instituição, a chamada passa também por dois gateways, um gateway H.323/SIP (do
lado do originador da chamada) e por um gateway H.323/E1 do lado do destinatário da chamada.
Cabe observar que o uso do Asterisk como gateway de voz somente com SIP não apresenta
quaisquer dos problemas relacionados ao H.323. O SIP no Asterisk nas versões mais atuais é estável,
robusto e testado com atrasos extremamente baixos (11 ms) com 60 ligações simultâneas. Testes de
terceiros demonstram que o canal SIP do Asterisk suporta facilmente mais de 120 ligações
simultâneas, sem um limite claro.
Como a maioria das instituições está implantando internamente apenas SIP, a tendência será de que
se tenha a maioria das chamadas sendo originadas em SIP e destinadas também a clientes SIP,
principalmente se os gateways de voz institucionais operarem com SIP.
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
4
2.
A nova arquitetura centrada em SIP
Visando atender ao processo evolutivo do serviço fone@RNP em direção a SIP, o serviço fone@RNP
migrou para a nova estrutura mostrada na Figura 2.
Na Figura 2, observa-se a inclusão do DSER (com uso ENUM e DNS privado) e do gateway
H.323/SIP Asterisk no ambiente nacional, além do já existente DGK. As setas pontilhadas em verde
indicam as interações de sinalização SIP entre os vários equipamentos.
Como pode ser observado na Figura 2, um proxy SIP interage com o DSER e com o Asterisk nacional,
bem como com os outros proxies SIP, que façam parte do serviço. Todos esses elementos são
parceiros (“peers”) ou vizinhos e podem estabelecer sinalização direta entre si.
A FUNÇÃO DO DSER
Na arquitetura da Figura 2, o DSER opera como proxy de sinalização para chamadas originadas dos
proxies SIP e do gateway H.323/SIP Nacional. Sempre que o DSER recebe um INVITE oriundo de um
dispositivo confiável, ele consulta o DNS privado com ENUM para descobrir os proxies ou gateways
que podem receber a chamada.
DSER
DNS
NAPTR
SLONY
vizinhos
prefixos
SLONY
vizinhos
prefixos
CS
I C O IP P H ON E
790 2S ER IE S
1
2
ABC
4
5
Gateway
H.323/SIP
Proxy SIP
“OpenSER”
GHI
7
JK L
6
M NO
7
8
9
PQ RS
T U V
WX Y Z
*
0
#
Gateway
H.323/SIP
Gateway
H.323/SIP
3
DE
F
4
Proxy SIP
“OpenSER”
CS
I C O IP P H ON E
790 2S ER IE S
1
2
ABC
3
DE
F
P
Q
R
S
4
5
6
4
GHI
JK L
M NO
*
7
7
8
9
PQ RS
T U V
W X YZ
*
0
#
P
Q
R
S
*
Cliente A
DNS
SRV
Cliente B
PABX
DNS
SRV
DGK
Gateway
VoIP/RTFC
Gateway
VoIP/RTFC
Gatekeeper
Gatekeeper
PABX
Instituição A
Instituição B
Figura 2 – Ambiente nacional para encaminhamento de chamadas via SIP para o serviço fone@RNP
Na ambiente nacional, existe uma base de dados onde os prefixos e códigos de áreas completados
pelas instituições são anunciados. Estes prefixos e códigos de área se referem aos números VoIP, do
PBX, linhas privadas ou prefixos da telefonia pública. Uma instituição pode anunciar prefixos em mais
de um código de área, sendo uma decisão interna da própria instituição quais prefixos são ou não
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
5
anunciados. Todavia, ao se anunciar um determinado prefixo ou grupo de prefixos, a instituição tem
que se comprometer a completar as chamadas destinadas a estes prefixos.
Todos os anúncios no ambiente nacional são guardados em um banco de dados mestre, que
armazena também todas as características operacionais das instituições. Para maiores informações
sobre as características armazenadas, favor consultar Documentação Técnica fone@RNP:
Homologação de instituições do fone@RNP com encaminhamento nacional via SIP.
PRIORIDADE PARA ENCAMINHAMENTO DE CHAMADAS
Em grandes centros, existe a tendência de a RNP operar seus próprios gateways com a rede de
telefonia pública, garantindo diretamente a qualidade do serviço fone@RNP. Embora nestes centros
possam existir instituições que também completem chamadas para a rede pública de telefonia, estas
instituições normalmente só deveriam receber chamadas do ambiente nacional em segunda
prioridade, sendo os gateways da RNP usados em primeira instância. Em outros centros em que a
RNP não dispõe de gateway de presença, as chamadas para a rede de telefonia pública são
completadas pelas próprias instituições locais que fazem parte do serviço, se assim desejarem.
Mesmo nestes casos, algumas instituições podem ter maior e melhor capacidade para completar as
chamadas, sendo interessante que as chamadas sejam encaminhadas de forma prioritária. Para
atender a priorização, os prefixos anunciados na base de dados nacional são acompanhados de um
valor inteiro positivo, sendo 1 o mais prioritário. Normalmente, a prioridade 1 está associada à RNP.
Quando uma instituição tem que encaminhar uma chamada destinada a outro código de área com
mais de um proxy destino disponível para completamento, uma primitiva INVITE (do SIP) é enviada
pelo proxy de origem ao DSER. Após receber o INVITE, o DSER retorna um REDIRECT para o
originador, indicando os possíveis proxies de destino, com o valor de prioridade associado. As
tentativas de completar a chamada serão feitas de forma seqüencial, seguindo a ordem de prioridade.
Quando dois ou mais destinos estiverem relacionados numa mesma prioridade, eles serão acionados
em paralelo e o primeiro a confirmar receberá a chamada.
Esse papel centralizado do DSER pode facilitar, no futuro, o uso de esquemas de balanceamento de
chamadas mais sofisticados, se necessário. Podem ser utilizadas variações de métrica que levam em
conta outros fatores como prioridade, custo, ocupação dos gateways e duração de chamadas externas
já completadas por uma instituição num determinado período. Essa versatilidade possibilitada pelo
balanceamento centralizado de chamadas depende apenas da manutenção no DSER de informações
atualizadas das instituições. Procedimentos já estão implementados nos gateways Asterisk do
ambiente fone@RNP para que, sempre que uma chamada for estabelecida ou completada, a métrica
que relaciona a capacidade do gateway e os números de chamadas internas e externas em
andamento seja computada em tempo real, através de scripts AGI.
O DSER opera como proxy de sinalização, tanto para as chamadas encaminhadas pelos proxies SIP
como para as chamadas encaminhadas pelo gateway H.323/SIP nacional. Assim, ao receber um
INVITE vindo do gateway H.323/SIP, o DSER retorna o REDIRECT. Importante observar que o canal
SIP do gateway Asterisk não implementa a tentativa de chamar os possíveis destinos
seqüencialmente e/ou paralelamente, efetuando a chamada apenas para a primeira opção.
Chamadas internacionais são realizadas através de um Proxy SIP ou através de Proxy H.323
configurados para receber e encaminhar chamadas SIP ou H.323 externas ao serviço fone@RNP. O
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
6
Proxy SIP externo consulta um banco de dados para identificar qual o tipo de tratamento deve ser
dado para as chamadas oriundas da rede externa. Se a rede externa não possuir um convênio de
serviço com a RNP, então as chamadas somente serão completadas para números internos ao
serviço fone@RNP, bloqueando o completamento das chamadas para a rede pública de telefonia. O
tráfego vindo de redes desconhecidas será aceito no serviço fone@RNP, porém sofrerá a mesma
política de tráfego de rede sem convênio.
No Proxy H.323 externo, todo tráfego recebido de redes conhecidas conveniadas ou não terão
permissão apenas para destinos internos ao serviço fone@RNP, devido a dificuldades em
desenvolver uma programação similar à implementada para SIP.
O PAPEL DO DGK H.323
Na nova arquitetura, o DGK opera como proxy de sinalização H.225 e H.245, sendo configurado como
parceiro do proxy H.323 externo. Somente, excepcionalemnte e em caráter experimental.algum GK
institucional será configurado como parceiro do DGK H.323, visto que o serviço fone@RNP desativou
o encaminhamento nacional via H.323 a patrir de dezembro de 2009.
A TABELA DE VIZINHOS
O banco de dados na RNP está organizado em tabelas mestres que podem ser replicadas e suas
cópias mantidas sincronizadas. A tabela de vizinhos ocupa um papel fundamental na operação do
serviço. Essa tabela é mantida pela RNP e a replicação é feita com uso do software SLONY. Toda
atualização da tabela mestre, como a inserção de uma nova instituição no serviço fone@RNP ou
alteração de instituição já operacional, é repassada para as cópias nas instituições.
Em cada instituição, ao receber uma chamada (primitiva INVITE), o Proxy SIP acessa a tabela de
vizinhos para verificar se a chamada é originada de alguma instituição do serviço fone@RNP. A tabela
de vizinhos contém as associações de um proxy SIP com os prefixos e linhas privadas pelos quais ele
responde. Algumas outras informações pertinentes, como os endereços IPs dos proxies, são também
mantidas nessa tabela.
A tabela de vizinhos é consultada pelo proxy SIP para validar os INVITES que chegam de instituições
do serviço fone@RNP e para descobrir se os destinos de chamadas são co-localizados no mesmo
código de área. Quando o destino é co-localizado, a chamada é enviada diretamente ao proxy de
destino, sem uso do DSER. A tabela de vizinhos é também consultada na consolidação de CDRs,
quando os IPs dos proxies e prefixos alocados permitem identificar a origem e o destino de uma
chamada, possibilitando preencher corretamente os campos do CDR consolidado respectivo.
Para a sinalização SIP, a introdução da tabela de vizinhos torna completamente transparente a
inserção de uma nova instituição no serviço quando já existem outras instituições já operando no
mesmo código de área da nova instituição (chamadas co-localizadas).
A tabela de vizinhos tem também um papel fundamental na atualização de ambiente e na instalação
inicial de uma nova instituição. Para maiores informações, consulte a documentação sobre a
homologação e a reconfiguração de instituições no serviço fone@RNP.
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
7
3.
Princípios do Encaminhamento Nacional
O encaminhamento nacional a partir de dezembro de 2009 está sendo feito exclusivamente por meio
da sinalização SIP, apesar das instituições ligadas ao serviço fone@RNP poderem, internamente,
operar com SIP ou H.323. A operação interna com H.323 é transparente ao serviço fone@RNP e cabe
às instituições a manutenção de gateway interno para conversão para SIP.
Uma instituição participante tem seus prefixos anunciados no DSER e opera com o encaminhamento
nacional via SIP. Assim, se chamadas forem originadas no ambiente H.323 local, elas deverão ser
encaminhadas ao proxy SIP instituciona via gateway H.323/SIP local. O Proxy SIP fará o tratamento
da chamada, decidindo se é destinada ao PBX (sendo repassada ao gateway de voz), se destinada à
cliente IP local, se destinada a uma instituição co-localizada ou se destinada a outro código de área.
Se a chamada for destinada a uma instituição co-localizada, a tabela de vizinhos indicará o proxy SIP
de destino. Nesse caso, a chamada será repassada diretamente ao proxy SIP de destino, sem
necessidade de consulta ao DSER. Procura-se, com esse procedimento, executar rapidamente um
encaminhamento de chamada para destinos em área geográfica próxima.
Caso uma chamada for destinada a um prefixo que somente uma instituição esteja habilitada a
completá-la, a chamada será repassada ao Proxy SIP da instituição diretamente, similar ao
encaminhamento para uma instituição co-localizada.
Se a chamada for destinada a outro código de área e exista mais de uma instituição habilitada a
completá-la, a chamada será encaminhada ao DSER. Caberá ao DSER identificar os possíveis
proxies de destino com consulta via ENUM ao DNS privado. Se a consulta retornar mais de uma
opção de proxy de destino, um REDIRECT será retornado ao proxy remetente, identificando os
proxies de destino e a prioridade de cada um. Os destinos são consultados seqüencialmente em
ordem de prioridade, sendo que destinos de igual prioridade são consultados em paralelo, recebendo
a chamada o destino que enviar a aceitação primeiro ao proxy de origem. Se a consulta à tabela de
vizinhos retornar apenas um proxy de destino, então a chamada será encaminhada diretamente para
esse proxy.
Caso não seja encontrado nenhum destino possível na base local da instituição que realiza a
chamada, a mesma será repassada ao DSER. Caso o destino não seja alcançável pelo serviço
(inexistência de anúncio no banco de dados mestre), a chamada será cancelada.
Na nova arquitetura, somente são repassadas ao gateway H.323/SIP nacional as chamadas
destinadas a redes H.323 externas. Convém aqui salientar que os destinos H.323 externos ao serviço
fone@RNP estão sendo também anunciados no banco mestre.
PROCESSAMENTO DE CHAMADAS ORIGINADAS DO GATEWAY DE VOZ (ORIGEM NO SISTEMA
TELEFÔNICO: PBX OU EM OPERADORA DIRETAMENTE CONECTADA AO GATEWAY DE VOZ)
Se a instituição possuir clientes tanto SIP como H.323, indicando que temos um gateway H.323/SIP e
um GK local, o gateway de voz poderia estar operando tanto com SIP como com H.323. Caso o
gateway de voz estivesse operando com H.323, esta conectividade permitiria que chamadas de
clientes H.323 fossem encaminhadas ao PBX sem passar pelo gateway H.323/SIP local, o que
reduziria o atraso e contribuiria para a qualidade dessas ligações. Todavia, a operação dos canais
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
8
H.323 do Asterisk possui restrições e, por questões de estabilidade, confiabilidade e disponibilidade,
recomenda-se a operação preferencial do gateway de voz Asterisk apenas com SIP.
Supondo o gateway de voz registrado nos dois ambientes, quando uma chamada vinda do PBX for
recebida pelo gateway de voz, este a analisará e recomenda-se que tome as seguintes decisões:
o
Se a chamada for destinada a um número de telefone IP da própria instituição, o número
pode estar registrado, usando um cliente SIP ou H.323. Supondo que o uso preferencial na
instituição seja SIP (afinal a instituição opera apenas com o DSER), o gateway de voz deverá
enviar o pedido de estabelecimento da chamada inicialmente ao SIP. Se o destino não
estiver registrado no SIP, deverá ser retornado um erro e o gateway de voz deverá enviar o
pedido de estabelecimento de chamada ao GK. Se o destino estiver de fato registrado como
um cliente H.323, a chamada será completada, caso contrário, o telefone IP não está
registrado, e a chamada será cancelada.
o
Se o destino da chamada for outra instituição, o gateway de voz deverá encaminhar a
chamada ao proxy SIP, que a processará normalmente, como já indicado acima.
Se o gateway de voz estiver apenas registrado no SIP, como o esperado na arquitetura de referência
do serviço fazendo uso do software Asterisk, o comportamento padrão é encaminhar via gateway
H.323/SIP para o GK caso o destino local não esteja registrado no SIP. Caso também não haja
registro no GK, o comportamento padrão é sempre repassar ao gateway H.323/SIP quando o destino
não for encontrado no H.323. O retorno da chamada ao proxy SIP será detectado como um erro
(destino inexistente) e a chamada será cancelada.
TRÁFEGO SIP DE ORIGEM EXTERNA AO SERVIÇO FONE@RNP
INVITES de origem desconhecida recebidos – a origem não está na tabela de internacional e não faz
parte do serviço fone@RNP – devem ser encaminhados com a inserção de 1 de marcação de
chamada de origem externa se destinados ao PBX local, a números IP ou a linhas privadas da própria
instituição. Se o destino não for local à instituição, então a chamada deve ser cancelada, ainda que
destinada à outra instituição do serviço fone@RNP. A configuração do proxy SIP local na instituição
deverá garantir este comportamento. Embora não haja impedimento técnico para que um INVITE de
origem externa e destinado a outra instituição do serviço fone@RNP seja processado como um
INVITE qualquer, optou-se por não permitir que uma instituição qualquer do serviço possa ser porta de
entrada de tráfego VoIP para outros destinos.
A troca de tráfego SIP com outras redes deve ser realizada preferencialmente através do proxy SIP
externo configurado para recebimento exclusivo de chamadas SIP externas (nacionais ou
internacionais). Este proxy pode dar tratamento diferenciado a cada rede com base em SLA (acordo
de serviço).
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
9
4.
Atualização da arquitetura
A arquitetura do serviço vem sendo constantemente atualizada com novas versões dos pacotes de
instalação, incorporando melhorias e novas facilidades, como é o caso da função de mapeamento de
números, bastante útil para a habilitação de telefones IP com numeração do PBX em substituição a
ramais analógicos convencionais. Normalmente, o processo de migração é semelhante a uma nova
instalação, com a atualização de todo o ambiente. Instituições que tenham configurações especiais
como integração com diretórios corporativos LDAP ou outras, devem procurar analisar bem estas
configurações para sua adaptação ao novo ambiente. O processo de migração de uma instituição não
padrão é único e o quadro técnico da instituição deve sempre estar preparado para operação de
recuperação em caso de falha do novo ambiente e necessidade de retorno ao ambiente original.
5.
Vantagens da operação com SIP para o serviço fone@RNP
Será sintetizado a seguir alguns pontos extremamente favoráveis à adoção preferencial de SIP tanto
pelas instituições como pelo encaminhamento nacional de chamadas E.164.
Do ponto de vista das instituições:
o
O desempenho da arquitetura VoIP institucional com a adoção de gateways de voz Asterisk
com sinalização SIP traz os benefícios de estabilidade do software frente a grandes números
de chamadas ativas simultaneamente e dos atrasos mínimos envolvidos;
o
Para a sinalização SIP, o uso da tabela de vizinhos no proxy SIP torna completamente
transparente a inserção de outras instituições no serviço no mesmo código de área (colocalizadas). Nenhuma reprogramação é necessária. Como algumas instituições possuem
um número muito grande de linhas privadas, a inserção destas instituições como colocalizadas dentro da arquitetura ocorre de maneira trasnparente e imediata.
o
o
O uso de SIP internamente se alinha com as tendências maiores do mercado em suporte a
este protocolo;
Extrema facilidade de programação associada ao mundo SIP, trazendo flexibilidade,
simplicidade para inovação e maior capacidade de integração ao mundo Web, o que
favorece o aparecimento de novos serviços e flexibilidade de gerência e configuração;
o
Os produtos abertos para o mundo SIP, como os softphones, possuem uma interface com o
usuário mais elaborada e com maior apelo. Atualmente, a oferta de produtos SIP é muito
maior que para H.323, favorecendo preços mais baixos;
o
A estabilidade de soluções de PBX IP aliada à queda de preços dos equipamentos VoIP
favorece a migração de soluções de telefonia convencional para a telefonia IP.
Do ponto de vista do serviço fone@RNP:
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
10
o
O uso de SIP no encaminhamento de chamadas E.164, pelas facilidades de programação
que o ambiente SIP apresenta para o estabelecimento e encaminhamento de chamadas,
usufrui de uma implementação simples de mecanismos de balanceamento centralizado.;
o
Com a sinalização SIP, o processo de entrada de co-localizadas é transparente com o uso
da tabela de vizinhos e ocorre de forma automática, sem a necessidade de alteração ou de
inserção manual de regras de reescrita. Alterações de configuração manuais podem deixar
de ser feitas ou podem ser realizadas com erro. O anúncio incorreto de uma co-localizada
pode levar ao completamento de chamadas para o destino co-localizado via rede pública de
telefonia, onerando desnecessariamente os custos de telefonia. O encaminhamento via SIP
com consulta a banco de dados traz uma redução significativa da carga gerencial, técnica e
administrativa gerada pelo serviço fone@RNP;
o
Como a sinalização SIP já foi concebida para uso normal de DNS e alias para os usuários,
além de incorporar facilidades para convivência com NAT/Firewalls, o SIP facilita a gerência
e configuração do serviço;
o
Como a tabela de vizinhos é parte do ambiente SIP e mantida completamente atualizada e
como as informações nesta tabela são essenciais para a geração de CDRs consolidados, o
uso do SIP é uma garantia completa de que o processo de geração de estatísticas será
correto e preciso.
6.
Pacotes para upgrade de versão da arquitetura
Para que haja a atualização para novas versões de pacotes de software foram criados pacotes e
scripts de instalação que facilitam enormemente a atualização/reconfiguração de uma instituição já
operacional ou a ativação de uma nova instituição.
Os pacotes atuais foram desenvolvidos para a distribuição Linux Debian “Etch” 4.0. Um primeiro
objetivo dos pacotes é facilitar a atualização do ambiente, o que é feito de forma extremamente
simples. Um segundo objetivo é o uso de Debian estável em toda a arquitetura recomendada pela
RNP para operação no serviço fone@RNP com software livre. A opção pelo Debian é uma questão de
preferência, mas que pode mudar no futuro em favor de outra distribuição de Linux.
No processo de instalação, é assumido que duas máquinas estão disponíveis somente com o Debian
instalado. A estrutura a ser implantada segue a seguinte estrutura de serviços:
o
Máquina 1 hospedando OpenSER, Asterisk (GW H.323/SIP), GnuGK, MediaProxy e Radius
client.-ng.
o
Máquina 2 hospedando Asterisk (GW PBX), PostgreSQL, Slony, Apache, FreeRadius,
OpenLDAP e Slony.
Os pacotes atuais suportam as seguintes versões de software:
o
Ambiente nacional
openser 1.1.0
pwlib-Mimas_patch2
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
11
openh323-Mimas_patch2
gnugk 2.2.6
postgres 8.1
asterisk-1.2.17
asterisk-oh323-0.7.3
asterisk-ooh323-0.5
slon 1.2.1
bind 9.3.4
o
Ambiente da instituição
Asterisk 1.2.17-labvoip (versão alterada pelo LabVoIP)
Asterisk 1.4.11-labvoip (versão alterada pelo LabVoIP)
Asterisk-oh323 0.7.3-labvoip (versão alterada pelo LabVoIP)
Asterisk-perl 0.10
FreeRADIUS 1.1.6-labvoip (versão alterada pelo LabVoIP)
GnuGK 2.2.6
libmfcr2 0.0.3.1.4
libpri 1.4.7
libsupertone 0.0.2
libunicall 0.0.3.1.4
mediaproxy 1.8.2
OpenLDAP 2.3.32
OpenSER 1.2.0-notls
radiusclient-ng 0.5.2
spandsp 0.0.3
Zaptel 1.4.12
fejeca 0.1.0 (ferramenta de gerência desenvolvida pelo LabVoIP)
Consolida 0.0.4 e Estatística 0.0.3 (softwares utilizados nas estatísticas desenvolvidos
pelo LabVoIP)
O script de consolidação de CDR faz parte do pacote e roda na máquina 2. Para criação inicial de
usuários no LDAP, existe a ferramenta Fejeca, que é disponibilizada como parte do pacote de
instalação.
Foi elaborado um script de instalação que consulta as informações fornecidas previamente pela
instituição e que foram inseridas no banco de dados mestre. São utilizadas as seguintes premissas:
o
Sempre será instalado o ambiente SIP e o encaminhamento nacional via SIP estará
habilitado;
o
O ambiente H.323 local é opcional. Na definição, será especificado se este ambiente será
instalado. A resposta deve ser sim caso a instituição queira suportar clientes H.323. Essa
informação será usada de forma automática na instalação dos pacotes, a partir das
informações da base da RNP.
o
Para o gateway de voz conectado a ramais analógicos, é assumido que será instalada pelo
menos uma placa 4xFXO, sendo que serão definidos, na configuração, quais ramais
operarão como IVR interno (para uso dos ramais do PBX) e quais trabalharão com IVR
externo (podendo receber chamadas externas). Os números de ramais associados a cada
uma das portas FXO e os números de grupo fazem também parte das informações
previamente acordadas com a RNP.
o
Para um gateway de voz conectado a uma placa E1, é suposto que temos apenas uma
placa e um tipo de sinalização (R2 ou ISDN). Parte dos 30 canais disponíveis pode estar
alocada a IVR interno e a outra parte a IVR externo. Esta é uma questão de acerto de
configuração com o PBX. Os números de grupo (ou ramal chave) dos IVRs são também
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
12
configuráveis no PBX. Estas informações precisam constar da base de dados acordada com
a RNP.
Durante a execução do script de instalação, o banco de dados da RNP que contém as informações
previamente acordadas com a instituição antes de sua entrada em serviço é consultado. O banco
contém toda a informação necessária para as configurações de instalação, exceto as informações de
segurança, referentes a senhas locais, que são solicitadas pelo script de instalação em tempo real. A
informação envolvida é referenciada a seguir:
o
Informações constantes do banco da RNP
TABELA INSTITUIÇÕES
• Campo “pk” (integer)
– Identificação única para a instituição
• Campo “nome” (char)
– Sigla da instituição
• Campo “ativo” (boolean)
– Informa se a instituição está ativa
• Campo “responsavel” (char)
– Nome do responsavel da instituição
• Campo “email” (char)
– E-mail do responsável da instituição
• Campo ddd (char)
– Código de área
• Campo “dominio” (char)
– REALM voip da instituição
• Campo “encaminhamento_sip” (boolean)
– Descreve se a instituição faz encaminhamento SIP:
• True -> Faz SIP ; False -> Não faz SIP
• Campo “encaminhamento_h323” (boolean)
– Descreve se a instituição faz encaminhamento H.323:
• True -> Faz H.323 ; False -> Não faz H.323
• Campo “encaminhamento_pstn” (boolean)
– Descreve se a instituição faz encaminhamento H.323:
• True -> Faz encaminhamento para a PSTN ; False -> Não faz
encaminhamento para a PSTN
• Campo “h323_interno” (boolean)
– Descreve se instituição usa H.323 internamente
• True -> H.323 é usado internamente; False -> H.323 não é usado
internamente
• Campo “versão” (integer)
– Descreve versão do sistema:
• 1 -> primeira versão ; 2 -> versão atutal
• Campo “interface_pabx” (char)
– Descreve qual interface utilizada para conexão com o PABX
• R2, ISDN ou FXO
TABELA EQUIPAMENTOS
• Campo “id” (integer)
– Identificação única para o equipamento
• Campo “pk” (integer)
– Identifica a que instituição este equipamento corresponde
• Campo “ip” (inet):
– Endereço IP do equipamento
• Campo “tipo” (integer [ 0 | 1 ] )
– Identifica tipo de equipamento
• 1 para Proxy
• 0 para Gateway
• Campo “descrição” (char)
– Comentário sobre o equipamento
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
13
TABELA PREFIXOS
• Campo “id” (integer):
– Identificação única do prefixo
• Campo “pk” (integer):
– Identifica a que instituição este prefixo corresponde
• Campo “tipo” (integer [ 0 | 1 | 2 ] )
– Identifica tipo de prefixo:
– 2 para Prefixo da linha privada (Podendo ser o número inteiro)
– 1 para Prefixo do PABX (Institucional)
– 0 para Prefixo ip (fone@RNP)
• Campo “ddd” (char)
– DDD desta instituição
• Campo “prefixo” (char)
– Prefixo desta instituição (sem ddd)
TABELA NUMERO_IVR
• Campo “id” (integer):
– Identificação única do prefixo
• Campo “pk” (integer):
– Identifica a que instituição este prefixo corresponde
• Campo “numero” (char)
– Identifica tipo de número IVR:
– 2 para Prefixo da linha privada (Podendo ser o número inteiro)
– 1 para Prefixo do PABX (Institucional)
– 0 para Prefixo ip (fone@RNP)
• Campo “numero” (char)
– Número IVR desta instituição
As informações do banco de dados da RNP são imprescindíveis para a entrada em operação de uma
instituição no serviço fone@RNP. As duas tabelas acima têm que ser preenchidas como parte
preliminar do processo de entrada da nova instituição no serviço fone@RNP. Além disso, as
informações sobre os ramais e números de grupo associados às interfaces analógicas (FXO) e digitais
(E1 R2 ou E1 ISDN) são imprescindíveis para os processos de homologação e auditagem da RNP.
o
Informação de segurança solicitada pelo script de instalação
Senha do LDAP
Segredo do servidor RADIUS
Senha do usuário radius na base de dados
Senha do usuário asterisk na base de dados
Senha do usuário openser na base de dados
Senha do usuário postgres, administrador da base de dados
o
Informação sobre os campos do LDAP existentes na máquina 1 das instituições
uid
cn
userPassword
mail
alias
carLicense
employeeType
callforward
responsável
Nome do usuário
Caminho na árvore LDAP deste usuário
Senha utilizada para um usuário se registrar no OPenSER
E-mail deste usuário
Telefone IP deste usuário
Documento de identificação do usuário
Tipo do usuário na instituição
Número para encaminhamento de chamadas (não implementado ainda)
Nome de um responsável da conta
creditos-periodo
créditos
ipaddress
validade
categoria
H323passwd
Quantidade de créditos utilizados períodicamente no campo créditos
Créditos para ser utilizados em ligações com a PSTN
Limitar o IP que pode se autenticar (Não implementado ainda)
Validade da conta do usuário
Classificação do usuário utilizado para definir quantidade de créditos
Senha para autenticação do usuário no GNUGK
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
14
7.
Exemplo de fluxo
No exemplo a seguir, as linhas pontilhadas representam o caminho da sinalização e as linhas cheias a
rota da mídia de voz, numa comunicação típica entre clientes SIP de duas instituições pertnecentes ao
serviço fone@RNP.
O originador da chamada é o cliente A. O OpenSER originador repassará o INVITE da chamada ao
DSER, que retornará o REDIRECT indicando o proxy destino. Os canais de mídia são então
estabelecidos diretamente entre os clientes SIP, passando pelos proxies de origem e de destino que
operam como proxies de sinalização.
DSER
DNS
NAPTR
mídia
SLONY
pares
prefixos
C ISC O IP PHON E
79 02 SER IE S
1
2
ABC
4
5
GHI
J KL
6
M NO
7
8
9
T UV
WX Y Z
Gateway
H.323/SIP
Gateway
H.323/SIP
3
D E
F
PQ R S
SLONY
pares
prefixos
Gateway
H.323/SIP
Proxy SIP
“OpenSER”
4
7
Proxy SIP
“OpenSER”
C ISC O IP PHON E
79 02 SE RIE S
1
2
ABC
3
DE
F
P
R
Q
S
4
5
6
4
*
0
GH I
#
JK L
M NO
*
7
Q
P
Gateway
VoIP/RTFC
Cliente A
DNS
SRV
8
9
TU V
WX Y Z
*
0
#
DNS
SRV
DGK
Gateway
VoIP/RTFC
7
P QR S
SR
*
Cliente B
C IS C O IP P HON E
7 902 S ER IE S
PABX
1
2
A BC
Gatekeeper
Gatekeeper
4
7
4
5
G HI
J KL
3
DE
F
6
MN O
7
8
9
P Q RS
TU V
W X YZ
*
0
#
Q
SP
R
*
Cliente B
Instituição A
PABX
Instituição B
Figura 3 – Estabelecimento de chamadas entre proxies SIP via DSER
Caso a chamada fosse, na realidade, destinada ao PBX na instituição B, então a mídia seguiria até o
Asterisk operando como gateway de voz, que completaria a chamada para o PBX. Como o Asterisk
opera com atraso bem baixo, a chamada não seria afetada em sua qualidade ao passar por este
elemento adicional.
Por outro lado, o destino da chamada na instituição B pode ser um cliente H.323. Nesse caso, a
chamada passará pelo gateway H.323/SIP local.
Se as duas instituições suportam clientes nos dois tipos de sinalização, então se espera que o
gateway de voz se registre nos dois ambientes.
Encaminhamento via SIP de Chamadas E.164 em SIP no fone@RNP: operação e atualização.
15
Download

Encaminhamento via SIP de Chamadas E.164 no fone