Anda di halaman 1dari 43

Fundamentos de Telefona y

Soporte de productos de Telefona


IFX Networks
Enero 2009
Investigacin y Desarrollo
Sebastin Averbuj y Fernando Dorna

Objetivo
Conocer el funcionamiento, arquitectura e
ingenieria global de la implementacion y
funcionamiento de la plataforma V3.

Agenda
Plataforma V3. Que es Hosted PBX?
Componentes de la arquitectura y Funciones
de cada uno de los Servidores.
Servicios brindados con V3.
Ingeniera Global de la solucin.

Plataforma V3
V3 surgi como la nueva plataforma de VoIP de IFX en el ao 2004, ya exista Vanguard y Hablanow como plataformas de voz
que estaban destinadas a tomar el mercado masivo y de partners.
La plataforma V3 con la que se brinda entre otros servicios como Hosted PBX o lneas corporativas, esta diseada para ser
totalmente redundante, cada servidor, dispositivo de acceso, switch o router interviniente esta redundado para obtener una muy
alta disponibilidad de servicio.

La estructura de diseo nos permite brindar un servicio de telefona hosteado altamente confiable y
escalable y su diseo redundante permite obtener un 99.999 % de confiabilidad.
Las caractersticas principales son:

PROVISIONING & BILLING

VOICE APPLICATION
CLUSTER
NAT TRANSVERSAL
CLUSTER

SOFTSWITCH

Interfaz XML para integrar sistemas de IFX con sistemas del Cliente
Credit mngmt, acount mngmt, Fault mngmt, Sist. de Aprovisionamiento

Maneja servicios como VoiceMail, Call Forwarding /Call pick up


Enruta llamadas on net
Soporte de protocolos SIP, MGCP y SCCP
Resuelve problemtica VOIP en entornos de IP Privadas

Realiza enrutamiento de llamadas.


ASR, Fallback Routing
Soporte de protocolos H323, SIP, MGCP, IPDC y SS7

Componentes del Servicio de Telefona

Estos son los tres pilares que


componen el servicio de
telefona de IFX.
Es necesaria la intervencin
de todos ellos para poder
brindar el servicio en forma
correcta.

Que es Hosted PBX?


Hosted PBX es simplemente uno de los servicios que se ofrecen en V3,
al igual que este, existen muchos otros servicios a brindar sobre la
plataforma que estn destinados a distintos segmentos y necesidades
de los clientes.
Hosted PBX es el producto nativo de la plataforma V3, pero debido a la
flexibilidad que nos brinda esta, nos es posible brindar varios servicio y
adaptar desarrollos propios a las necesidades o requerimientos del
mercado.

Componentes
de la
Arquitectura
Enero 2009
Investigacin y Desarrollo
Sebastin Averbuj y Fernando Dorna

Componentes de la Solucin
La siguiente seccin describe y analiza como es el funcionamiento de cada uno de los servidores que componen la solucin
de la plataforma.

Application Servers Realizan el procesamiento y control de las llamadas, provee servicios


avanzados de PBX.
Database Agent Administra y almacena los datos de clientes, rutas, servicios, pbx creadas,
rutas, gateways, etc.
Session Border Controller son el punto de acceso para las redes externas, cumplen
bsicamente 2 funciones:
Brinda servicios de Firewall para proteger los servidores del inside,
Resuelve problemas de Transversal NAT realizando proxy de la sealizacin y el
audio.
Web Server provee soporte para aplicaciones como webportal y voiss assistant.
Streamers Servers proveen funciones como reproduccin de anuncios, grabacin de
mensajes.
DTMF Proxy Servers - generan y traducen los tonos DTMF enviados en el fluyo RTP.
Conference Server provee servicios de conferencias Ad-Hoc y Meet-me.
Rating System.TERAS Lgica externa que realiza funciones de control de saldo y tasacin de llamadas
en tiempo real. Es un desarrollo inhouse.

Application Servers. (AS0 y AS1)


Los Application Servers (AS) o Call Agents son los encargados de manejar toda la sealizacin para establecer, mantener y
finalizar sesiones multimedia, corren en servidores SUN V240 con Sistema Operativo Solaris 10.
Los Application Servers interactan con todos los servidores (SBCs, Streamers, DTMF Proxys) de la plataforma a travs de un
protocolo propietario de BroadSoft llamado SDCP (Simple Device Control Protocol)
Poseen la inteligencia del enrutamiento y la capacidad de brindar los servicios avanzados de una PBX.
Generan y almacenan los CDRs (Call Detail Record) y el envi de traps para el monitoreo mediante SNMP.
Las funciones de control de la Sealizacin de los AS estn diseadas para soportar varios protocolos para el control de
sesiones de voz y video, entre los que se encuentran:
SIP. Session Initiation Protocol (RFC 3261)
MGCP. Media Gateway Control Protocol (RFC 3435)
SCCP. Skinny Client Control Protocol, propietario de Cisco.

Session Border Controllers. (SBC0 y SBC1)


Los Session Border Controllers o Voice Proxy Firewalls son dispositivos que manejan las sesiones entrantes y salientes a la
plataforma y controlan el acceso delimitando la frontera entre la red externa y la interna.
Estos equipos tienen varias funciones que se explican a continuacin:
Funcionamiento es siempre en cluster 1+1.
SBCs soportan mltiples protocolos de Sealizacin y control de comunicaciones voip (SIP, MGCP, SCCP)
Poltica de BlackList.
Solucionan la problemtica del NAT transversal cuando intervienen firewalls.
Actan como proxy de la sealizacin y el RTP.
Corren en servidores Intel TSRLT2 o TIGPRU2, con S.O. VxWorks que se encuentra cargado en una flash card

Base de Datos. (DB0)


La Base de Datos es el centro de todo el repositorio de informacin de usuarios, servicios, rutas y clientes en la plataforma,
interacta continuamente con los Application Servers para consultas y como fuente de informacin, al igual que los AS, corre en
servidores SUN V240 con Sistema Operativo Solaris 10.
La base de datos utilizada es TimesTen de Oracle y posee las siguientes caractersticas:
Infraestructura de Tiempo Real
Baja latencia, puede manejar un alto volumen de datos, eventos y transacciones
Alta performance y disponibilidad
Usa tecnologa de acceso a memoria para realizar el procesamiento en forma mucho mas dinmica y rpida
Alto throughput y muy bajos tiempos de respuesta

Streamers Servers y DTMF Proxys. (SS y DP)


Los Streamers Servers, son dispositivos que manejan el fluyo RTP para poder realizar funciones como la reproduccin y
grabacin de anuncios, mensajes de voice mail, Do not Disturb o Music on Hold.

Los DTMF Proxys son servidores que se encargan de detectar y traducir los tonos generados por dispositivos CPEs como
telfonos analgicos o IP Phones. Los DP detectan cualquier seal DTMF (Dual Tone Multi-Frecuency) enviada inband en el
fluyo RTP que son codificados usando RFC 2833 o Cisco-RTP y luego enviados a los Application Servers para ser procesada.

Ambos servidores funcionan en pares por redundancia N + 1


Se comunican con los Application Servers a travs protocolo SDCP (Simple Device Control Protocol), propietario de
BroadSoft

Corren en servidores Intel TSRLT2 o TIGPRU2, con S.O. VxWorks que se encuentra cargado en una flash card

Web Server y Voice Mail Server. (WS0 y VM0)


El web server corre en un Apache Tomcat y se encarga de proveer acceso a herramientas web como
webportal y voiss assistant desde las cuales se puede interactuar con la plataforma de telefona para realizar acciones como
realizar y contestar llamadas, escuchar voice mails, configurar features clase 5 como call forward, do not disturb, virtual ring, etc.
El Voice Mail Server realiza principalmente funciones de almacenamiento de los voice mails e interacta con el web server y los
Application Servers para poder revisar los mensajes de voz utilizando un telfono, desde el webportal o directamente va POP3
o IMAP.
El voice mail server usa un servidor Stalker que provee una plataforma para el almacenamiento y redireccionamiento de e-mails
en tiempo real. Una de las principales funciones de Stalker es actuar como un MTA (Mail Transfer Agent), el servidor acepta
mensajes desde varios orgenes y los enva a diversos destinos locales o remotos.

Conference Server.
El Convedia CMS-1000 es el dispositivo utilizado en la solucin que realiza funciones de Media Server y Conference Server con
una alta disponibilidad y performance. Posee diversas capacidades de procesamiento como la generacin de anuncios, deteccin
y generacin de DTMF, transcoding, procesamiento de la voz y reproduccin y grabacin de mensajes.
Es controlado por una lgica de servicio que reside en un Call Agent como un Softswitch o un Application Server, en nuestro caso
los AS de V3.
Soporta diversos protocolos como:
SIP (Session Initiation Protocol) o MGCP (Media Gateway Control Protocol)
Voice XML, MSML (Media Sessions Markup Language), MOML (Media Objets Markup Languages)
Tiene la capacidad de manejar hasta 100 canales de voz simultneos para conferencias programadas o ad-hoc.

IPIPGW
El IP to IP gateway es una aplicacin integrada de hardware y software propietarios de Cisco que realiza varias funciones de voz y
video, nos ofrece una solucin simple que provee demarcacin entre redes para el interworking de la sealizacin y el media,
traduccin de direcciones y puertos, seguridad, tasacin, calidad de servicio y administracin de ancho de banda.

Puntualmente el IP to IP usado es un Cisco 2821 con sistema operativo IOS que posee dos interfaces Gigabit Ethernet. Estas dos
interfaces estn conectadas (lgicamente) una al inside de la plataforma y la otra al outside de la misma para que las llamadas
fluyan directamente hacia el IP to IP y este pueda enviarlas a la telco, cliente o ITSP destino.

TERAS. TElephony RAting System & Call Control System


TERAS es un sistema desarrollado inhouse, basado en .NET + MS SQL Server, es el sistema de Rating Telefnico de IFX que
permite autenticar y tasar servicios telefnicos de valor agregado como servicios de Hosted PBX o lneas corporativas. Todos los
servicios son administrados por una cuenta asociada al servicio. Esta cuenta esta compuesta de los planes de pago (Plano,
Prepago, Postpago).
Debido a la arquitectura con la que se desarrollo TERAS y la flexibilidad de su funcionamiento es posible brindar varios tipos de
servicios, entre ellos:
EndPoints
Dialtone
CallingCards
El sistema de control de llamadas es tambin un desarrollo inhouse, realizado ntegramente en lenguaje C que interacta a
travs de una API con la plataforma V3 para manejar todas las transacciones y eventos que desde all se originan y por otro lado
interactuar con TERAS, en base a eso puede tomar decisiones de enrutamiento de las llamadas, bloqueos, colocar anuncios, etc
El sistema de control de llamadas administra el ciclo de vida de una llamada saliente, ya sea on-net o hacia la PSTN, dentro de sus
funciones estn:
Validacin de usuario basada en el ANI o interactuando con esquemas de IVR,
Validacin del estado (activo/suspendido) de los usuarios y el saldo disponible,
Reproduccin de anuncios variados como advertencias de bajo crdito o crdito insuficiente,
Clculo de la duracin mxima de la llamada en base a la lista de precios que tiene aplicada la cuenta,
Generacin de CDRs y modificacin del balance de la cuenta una vez que la llamada fue finalizada,
CDRs con los detalles de la liberacin de cada llamada y remaining balance.

PROVISIONING
SERVER
El Provisioning Server es, al igual que TERAS, un desarrollo inhouse que se creo con la necesidad de poder hacer
mas flexible, til y rpida la configuracin y aprovisionamiento de cada uno de los endpoints que se deben instalar.
ntegramente desarrollado en .NET y utilizando una base de datos MS SQL Server, el Provisioning System nos da la
flexibilidad que necesitamos para poder hacer del aprovisionamiento un paso muy simple.

El login en el Provisioning Server se realiza desde: http://prov.telco-carrier.com , desde all se puede hacer el
autoaprovisionamiento en forma automtica, para ello debemos tener acceso web contra el endpoint y contra el provisioning
server. Si el endpoint esta dado de alta en forma correcta en el sistema, mediante un pedido HTTP el Provisioning le enviara la
informacin de la configuracin al equipo validndose por la mac address del endpoint.

ABMs en el Provisioning
El sistema cuenta con una estructura que nos permite poder realizar la configuracion de muchos parmetros en los endpoints,
desde usuario/password de registracion, hasta la activacin de servicios avanzados, TOS, DTMF Method, etc.
Todos estos cambios se realizan en forma directa sobre Templates definidos en el sistema, es por ello que cada dispositivo
homologado posee un template en el Provisioning Server que hace referencia a distintas variables que se completan a mano por el
operador, estas variables son bsicamente los datos de usuario/password de registracion de las lneas.

Descripcin de las opciones y funciones en el Provisioning Server,

El sistema nos da la flexibilidad de poder configurar:


Servicios: Se define el nombre y el SIP Server contra el cual sealizaran los endpoints;
Clientes: Se define el cliente, es informacin pasiva, no hace al funcionamiento del servicio;
Reportes: Se pueden listar y exportar reportes de cada uno de los endpoints creados, por servicio y por cliente.

Como funciona el dial-plan en los gateways


Como en todos los gateways de voip, el dial-plan hace referencia al modo de discado que se puede definir, la utilidad de esto es
acotar la posibilidad y disminuir el time-out a la hora de realizar una llamada.
La gran parte de los equipos de voip que estn implementados en la plataforma V3 son Linksys/Sipura y estos equipos manejan un
dial-plan particular que se explicara a continuacin.
El mtodo que se usa es el de acotar los posibles nmeros discados, por ejemplo,
Las llamadas locales en Santiago son del tipo:
2 - 9 + 6 dgitos Ejemplo: 2335000
Por lo que en el dial-plan esa entrada se contemplara de la siguiente forma: [2-9]xxxxxx
Otro ejemplo es el discado a nmeros mviles:
09 + 7,8,9 + 7 dgitos Ejemplo: 09 93214567
Por lo que en el dial-plan esa entrada se contemplara de la siguiente forma: 09[789]xxxxxxx
Otra cosa importante a considerar es el uso de timers y otros caracteres especiales, por ejemplo:
* El uso de la , (coma) es para que el equipo genere un tono de discado directamente. Esto se usa para simular el tono que
entrega una PBX convencional luego de que se marca un digito para realizar una llamada saliente. Ej.:
9, 2335000
* El uso de caracteres como S tienen como funcin agregar o disminuir el time out que se generara para realizar la llamada, y el
motivo de su utilizacin es para diferenciar algunos strings que pueden llegar a ser similares. Ej: 9, 2xxxxxxS1
* Otros caracteres utilizados son:
* como *xx para el uso de *09 (acceso al voice mail)
|| son utilizados para separar cada una de los strings, Ej: (9, [2-9]xxxxxx|9, 09[789]xxxxxxx|0S0)
[ ] son utilizados para agrupar dgitos comunes. Ej: [789]xxxxxxx
( ) se utilizan en el inicio y fin de la cadena completa que forma parte del dial-plan.

Servicios
Brindados
en la
Plataforma
Enero 2009
Investigacin y Desarrollo
Sebastin Averbuj y Fernando Dorna

Servicios Brindados en
V3
La plataforma nos da una gran flexibilidad, esto sumado a la posibilidad que nos ofrece a travs de una API de interactuar con
lgicas o sistemas externos hace que la diversidad de productos y desarrollos a ofrecer sea muy grande.
Los servicios brindados en la plataforma se detallan a continuacin:
1 Hosted PBX. Este servicio es el nativo, a travs de la creacin de PBX virtuales en V3 se brinda este servicio
con el que se ofrecen todas las funcionalidades bsicas de una central tradicional y adems muchos features nuevos
como la integracin y la movilidad.
Ej: CaribeVision (USA), Karibel (Chile)
2 Telefona Residencial. Los servicios residenciales apuntan al segmento masivo, cada cliente dispone de una lnea
independiente.
Ej: PRIMA (Argentina)
3 HablaShop. El servicio de HablaShop se basa en la utilizacin de una web desde la que se pueden
monitorear/administrar cada una de las cabinas de un locutorio. El operador puede ver el detalle de llamadas y el precio
asociado a las comunicaciones realizadas en tiempo real.
Ej: DavidR (Panam)
4 Calling Cards. Este servicio al igual que la telefona residencial tambin esta destinado al segmento masivo. En este
caso las llamadas son validadas por un lgica de control en la que se verifica si el PIN es valido y si el cliente posee el
saldo suficiente para llamar al destino marcado.
Ej: Salcobrand (Chile)
5 Hosted CallCenter. HCC es una aplicacin web que permite monitorear el estado de todos los agentes definidos en el
Call Center, a travs de la API podemos verificar y mostrar cada uno de los eventos de las llamadas que estn ingresando
al Call Center.
Ej: CCC Soporte (Colombia)

Hosted PBX

Servicios Residenciales

Interoffice

HablaShop

CallingCards

Hosted Call Center

Ingenieria
Global
de la
Solucin
Enero 2009
Investigacin y Desarrollo
Sebastin Averbuj y Fernando Dorna

Diagrama de Alto Nivel


En la actualidad, la
plataforma V3 se encuentra
distribuida entre Argentina,
USA y Panama.
En cada POP existe un par
de SBCs (Session Border
Controllers) que son el
punto de conexin entre los
clientes y el M6. Segn la
ubicacin fsica del cliente
se opta por uno u otro
acceso.
Una de las funciones de los
SBCs es la de topology
hiding que consiste en
ocultar toda la
infraestructura de la
solucin detrs de un sola
direccin IP.

Overview M6

Overview M6
En un principio, USA slo
dispona de un par de
SBCs para brindar
servicio a los clientes de
la zona norte (los SBCs
generalmente poxean
audio, a no ser que se
active el feature shortcircuit).
Luego, y por
conveniencia, se
instalaron los siguientes
componentes:
*Server de conferencias
(Convedia CMS-1000).
*IP2IPGW (cisco 2821)
para interfacear con los
carriers de telefona.
*Streamer/DTMF Proxy

Visibilidad entre VRFs

Ingeniera en Detalle

Diagrama Global de Trafico

ANEXO I
Procesos
VOISS.

START / STOP:
[root@v3as0 /]# cd /etc/rc3.d
[root@v3as0 rc3.d]# ls -ltr *voiss
lrwxrwxrwx 1 root other
22 Jul 15 2004 S99voiss -> /etc/init.d/voiss.init*
[root@v3as0 rc3.d]#
Verificando que est corriendo:
[admin@v3as0 admin]$ ps -ef | grep voiss
voiss 15804 260 0 Sep 18 ?
92:21 /usr/voiss/bin/voiss
root 15805 260 0 Sep 18 ?
0:00 /usr/voiss/bin/voiss
root 260 1 0 Sep 13 ?
0:00 /usr/voiss/bin/voiss
UDP.
161 y 162 SNMP
2427 MGCP
5060 y 5062 SIP
29051 control del RP
TCP.
22 acceso SSH
1050 comunicacin contra webportal
29042 sincronizacin entre CAs
29043 debug del CA
2000 SCCP

CDRs.
/usr/voiss/System/CDRFile.frf cierre diario,
escritura doble buffer
Eventos: /usr/voiss/System/EventLog.txt
Errores: /usr/voiss/System/Errlog.log

TimesTen DataBase.
START / STOP:
[root@v3db0 /]# cd /etc/rc2.d
[root@v3db0 rc2.d]# ls -ltr *tt*
lrwxrwxrwx 1 root other
[root@v3db0 rc2.d]#

21 Aug 10 06:21 S90tt_ifx_v3 -> /etc/init.d/tt_ifx_v3*

Verificando que est corriendo:


[root@v3db0 rc3.d]# ps -ef | grep Times
root 192 189 0 Aug 10 ?
0:01 /opt/TimesTen/ifx_v3/bin/timestensubd -verbose -id 2 -facility user
root 190 189 0 Aug 10 ?
0:01 /opt/TimesTen/ifx_v3/bin/timestensubd -verbose -id 0 -facility user
root 189 1 0 Aug 10 ?
0:08 /opt/TimesTen/ifx_v3/bin/timestend -initfd 13
root 191 189 0 Aug 10 ?
0:01 /opt/TimesTen/ifx_v3/bin/timestensubd -verbose -id 1 -facility user
root 193 189 0 Aug 10 ?
1:04 /opt/TimesTen/ifx_v3/bin/timestensubd -verbose -id 3 -facility user
root 194 189 0 Aug 10 ?
0:01 /opt/TimesTen/ifx_v3/bin/ttcserver -verbose -id 4 -p 15102 -facility user
DB Agent Software.
START / STOP:
[root@v3db0 rc2.d]# cd /etc/rc3.d
[root@v3db0 rc3.d]# ls -ltr S*apa*
lrwxrwxrwx 1 root other
24 Aug 10 06:35 S98apache -> /etc/init.d/apachetomcat*
[root@v3db0 rc3.d]#
Verificando que est corriendo:
[root@v3db0 rc3.d]# ps -ef | grep java
root 274 1 0 Aug 10 ?
193:44 /usr/j2sdk1.4.2_06/bin/java -server -Xmx512M -Xms384M -Xrs -XX:+UseParallelGC [root@v3db0 rc3.d]#

UDP
-123 ya que acta como NTP server para el resto de los equipos
TCP
-29047 conexiones locales para administracin de opciones de la DB
-29044 conexiones desde ambos CAs para sincronizar informacin.
-80 Para Admin GUI
-22 acceso al server via SSH
-15100 y 151022 para TT DB
Logs tiles
Errores de TimesTen: /var/adm/syslog/syslog.log
Provisionamiento: /usr/voiss/dbagent/serviceslog
Errores DB Agent: /usr/voiss/dbagent/dbagentlog
Apache Tomcat.
START / STOP:
[[root@v3ws0 /]# cd /etc/rc3.d
[root@v3ws0 rc3.d]# ls -ltr S*apa*
lrwxrwxrwx 1 root other
24 Aug 10 09:05 S98apache -> /etc/init.d/apachetomcat*
[root@v3ws0 rc3.d]#
Verificando que est corriendo:
[root@v3ws0 /]# ps -ef | grep java
root 251 1 0 Aug 10 ?
8:26 /usr/j2sdk1.4.2_06/bin/java -server -Xmx512M -Xms384M -Xrs -XX:+UseParallelGC [root@v3ws0 /]#

Stalker (mail server)


START / STOP:
[root@v3vm0 /]# cd /etc/rc2.d
[root@v3vm0 rc2.d]# ls -ltr S*Commu*
lrwxrwxrwx 1 root other
24 Aug 10 09:35 S88CommuniGate -> ../init.d/STLKCGPro.init*
[root@v3vm0 rc2.d]#
Verificando que est corriendo:
[root@v3vm0 rc2.d]# ps -ef | grep CG
root 175 1 0 Aug 10 ?
11:19 /opt/CommuniGate/CGServer --Base /var/CommuniGate --Daemon
[root@v3vm0 rc2.d]#
TCP.
22 acceso SSH
25 SMTP
143 IMAP
1050 comunicacin con v3ws0
8010 Stalker Admin

Contactos
Fernando Dorna
Director I+D
fdorna@ifxcorp.com
+54 11 5031 2405
Sebastian Averbuj
Systems Engineer
saverbuj@ifxcorp.com
+54 11 5031 2422

Anda mungkin juga menyukai