• No se han encontrado resultados

DESARROLLO DE SOFTWARE PROXY PBX DE VoIP CON FUNCIONES DE REPORTE DE LLAMADAS

N/A
N/A
Protected

Academic year: 2017

Share "DESARROLLO DE SOFTWARE PROXY PBX DE VoIP CON FUNCIONES DE REPORTE DE LLAMADAS"

Copied!
122
0
0

Texto completo

(1)

1

INSTITUTO POLITECNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERIA

MECANICA Y ELECTRICA

“Unidad Zacatenco”

INGENIERIA EN COMUNICACIONES Y ELECTRONICA

Desarrollo de un Software Proxy PBX de VoIP

con funciones de reporte de llamadas

TESIS

Que para obtener el título de

Ingeniero en Comunicaciones y Electrónica

Presentan:

Liliana Aguilar Hernández

Agustín Moreno Nájera

Asesores:

M. en C. Genaro Zavala Mejía

M. en C. Fernando Noya Chávez

(2)

2

Índice General

Índice de figuras……….……….………. 4

Índice de tablas………..………... 6

Introducción……….. 7

Descripción………... 9

Justificación………... 10

Objetivos……….. 10

Diagrama a bloques……….. 11

Capítulo I Estado del arte ………... 12

1.1PBX………. 12

1.1.1 Antecedentes………. 12

1.1.2 Estado actual de los PBX………... 13

1.2VoIP……… 15

1.2.1 Antecedentes de telefonía convencional……… 15

1.2.2 Estado actual de la Telefonía IP bajo la tecnología VoIP….. 17

Capítulo II Marco teórico ………... 20

2.1PBX……… 20

2.1.1 Definición 2.1.2 IP PBX 2.1.2.1Características ……… 21

2.1.2.2Componentes y funcionamiento……….. 21

2.2Proxy PBX ………. 22

2.2.1 Definición Sistema Proxy……….. 22

2.2.2 Funcionamiento………. 23

2.2.3 Ventajas y desventajas del uso de un Proxy………. 23

2.2.4 Proxy a nivel aplicación: Protocolo SIP……….... 24

2.3VoIP………... 26

2.3.1 Introducción a la VoIP ……….. 26

2.3.2 Definición………... 26

2.3.3 Implementación y funcionamiento………. 27

2.3.4 Control de la comunicación………. 27

2.3.5 Parámetros VoIP………. 28

1.2.5.1 Códec……….. 28

1.2.5.2Protocolos de señalización ………. 28

1.2.5.3Protocolos de transporte de voz y ancho de banda de la voz ……… 29

2.3.6 Ventajas……….. 29

2.4Protocolo SIP ………. 32

2.4.1 Definición ………. 32

2.4.2 Conceptos básicos ………. 33

2.4.3 Mensajes SIP……….. 36

2.4.4 Cabecera SIP……….. 38

(3)

3

2.5.1 Definición……… 39

2.5.2 Encapsulamiento………. 40

Capítulo III Herramientas

………... 42

3.1Sockets ………... 42

3.1.1 Sockets en C# ………. 42

3.1.2 Métodos de la clase socket……….. 43

3.2Desarrollo .NET C#... 44

3.3SDK SIP .NET……… 47

3.3.1Descripcion………. 47

3.4Configuración objeto SIP Core………... 53

3.5Servidor TrixBoX……….. 54

3.6Cliente Softphone……… 54

3.6.1 Descripción………. 54

3.6.2 X-lite……… 55

Capítulo IV Desarrollo………. 59

4.1 Desarrollo de software de comunicación IP usando socket……… 59

4.2 Captura y análisis de Mensajes SIP…….………. 64

4.2.1 Autentificación de Softphone en el PBX VoIP……... 64

4.2.2 Inicio y fin de una llamada VoIP………. 64

4.3 Desarrollo de Software Proxy basado en transacciones SIP………. 67

4.4 Desarrollo de Software Proxy para autentificar Softphone……….. 70

4.5 Desarrollo de Software Proxy para iniciar y finalizar una llamada…. 73 4.6 Desarrollo de Software Proxy para generar reportes de llamadas…. 75

Capítulo V Pruebas……… 76

5.1 Registro de teléfono SIP………. 76

5.1.1 Resultados………... 77

5.2 Establecimiento y liberación de sesión SIP………... 78

5.2.1 Resultados………... 80

5.3 Prueba Reporteador……… 81

5.3.1 Resultados……… 82

5.4 Resultados finales…...……… 82

Conclusiones………

.

84

Glosario…..………...

..

85

Anexos .

……….

86

(4)

4

Índice de figuras

Figura 1. ERICSSON PMBX 1A ………. 12

Figura 2. Telefonía punto a punto mediante cables………..……. 15

Figura 3: Telefonía conectada a central………. 16

Figura 4. Esquema de enrutado en un entorno SIP……… 25

Figura 5. Esquema protocolos……… 26

Figura 6. Trama VoIP……… 26

Figura 7. Ejemplo de llamada SIP (200 llama a 201)………. 34

Figura 8. Ejemplo de llamada SIP con intermediarios (200 llama a 201)……… 34

Figura 9. Proceso de registro... 35

Figura 10. Registro completado... 36

Figura 11. Encapsulamiento RTP... 40

Figura 12. Proceso Cliente/Servidor... 42

Figura 13: Arquitectura general de la Unidad SIP.NET API... 55

Figura 14. SIP Account Settings………. 56

Figura 15. Propiedades de configuración de una cuenta SIP……….. 57

Figura 16. Configuración de cliente SIP... 57

Figura 17. SIP Accounts, cuenta configurada………. 58

Figura 18. Teléfono registrado y autenticado……….. 61

Figura 19. Interfaz de aplicación Servidor TCP……….. 61

Figura 20. Interfaz de aplicación Cliente TCP……… 63

Figura 21: Analizador de tráfico en red, captura de mensajes SIP………. 64

(5)

5

Figura 23. Proceso de autenticación y registro de un UAC……… 66

Figura 24. Transacciones SIP mediante un Proxy……….. 67

Figura 25. Diagrama de transacciones incluidas en el Proxy PBX……… 68

Figura 26. Nodo perteneciente a la clase NodoListaSoftphone………. 71

Figura 27. Proceso de inicio y fin de llamada………. 73

Figura 28. Base de datos Reporteador………. 75

Figura 29. Diagrama de registro de Softphone………... 76

Figura 30. Esquema SIP de registro y autenticación de Softphone………. 77

Figura 31. Softphone registrado... 77

Figura 32. Log de Tramas Register... 78

Figura 33. Diagrama Establecimiento y liberación de sesión SIP………... 79

Figura 34. Esquema SIP de inicio y fin de llamada………. 79

Figura 35. Log de tramas inicio y fin de sesión……….. 80

Figura 36. Softphone2………. 80

Figura 37. Llamada establecida……….. 81

Figura 38. Esquema PROXY PBX……… 81

Figura 39.Prueba Reporteador……… 82

Figura 40. Aplicación PROXY PBX ………... 82

(6)

6

Índice de tablas

Tabla 1. Ejemplos de direcciones SIP……… 33

Tabla 2. Peticiones SIP……….. 36

Tabla 3. Respuestas SIP……… 37

Tabla 4. Conceptos generales……… 51

Índice Sección de Código Sección de Código 1. Creación de aplicación Servidor TCP……….. 61

Sección de Código 2. Creación de aplicación Cliente TCP……… 62

Sección de Código 3. Creación de transacciones SIP………. 69

Sección de Código 4. Definición de estructura de datos asignada a cada usuario dentro de la red……….. 71

(7)

7

Introducción

La telefonía de hoy en día, tal y como la hemos conocido siempre, está llegando a su fin. La era de las nuevas tecnologías, con Internet a la cabeza, le están ganando terreno a grandes consorcios tecnológicos que han permanecido invariables e intocables durante mucho tiempo. El mundo de las comunicaciones por voz es uno de ellos.

Desde la invención del primer teléfono, se han venido produciendo cambios y mejoras en los sistemas de telefonía que han permitido su expansión, llegando prácticamente a todos los hogares y rincones del mundo.

No obstante en la actualidad, estos sistemas siguen basándose en tecnologías de hace varias décadas, obsoletas y que no son óptimas en muchos sentidos. Por ejemplo, en el uso de la línea telefónica cuando se establece una comunicación: se necesita que exista un canal constantemente abierto o dedicado, con el consiguiente desperdicio de recursos que pudieran ser mejor aprovechados. Hoy en día ya no es necesario dedicar un recurso por completo para mantener una conversación. En la era de Internet, es posible que una conversación telefónica se pueda mantener entre dos puntos cualesquiera, ocupando una simple porción del espectro o ancho de banda de la conexión de área local o hacia Internet. La voz se convierte en paquetes y pasa a denominarse Voz sobre IP o VoIP por sus siglas en inglés (Voice over Internet Protocol).

Si la voz ya no viaja por un circuito dedicado y exclusivo, si no que ahora forma parte de nuestras comunicaciones de datos, se consiguen otro de los beneficios de las grandes tecnologías, la unificación. La voz y los datos viajan por la misma red, y no solo eso, además son tratados y gestionados de forma conjunta y coordinada. Bajo estas condiciones se obtiene un uso óptimo de los recursos.

Gracias al despliegue de nuevas redes de datos, se puede ofrecer ya una gran cantidad de servicios al usuario final, con una calidad óptima y además de manera centralizada: Televisión, Internet y por supuesto, voz. Es decir, ya no será necesario una

“línea telefónica” sino una línea de datos.

(8)

8

La telefonía IP comenzó a principios de las décadas de los 901, aunque la mala calidad de la voz y el impulso que en aquellos momentos estaba tomando la RDSI (Red digital de servicios integrados) hicieron que no pasara de ser solo un experimento. Durante esta década se produjo el auge de Internet, lo que hizo que todos los esfuerzos, tanto de las empresas como de los operadores fueran dirigidos a potenciar su uso y las aplicaciones de navegación Web y correo electrónico, fueron las que más éxito tuvieron, lo que junto al despliegue de las redes móviles dejaron la voz relegada en un tercer plano.

Hasta hace muy poco el freno para el despliegue de la telefonía IP en el mercado lo daba la propia tecnología: la calidad del sonido era bastante defectuosa, lo que disuadía a utilizarla y seguía haciendo uso de la línea telefónica tradicional, a pesar de ser bastante más caro, salvo a esa problemática el sistema se fue abriendo camino. Sus ventajas son múltiples: es un servicio más barato, permite el uso de nomadismo – uso del mismo número telefónico- en cualquier lugar y tiene capacidad multimedia. Además, la calidad del servicio va en aumento, aproximándose a la de la telefonía convencional, con la que se permite la interconexión.

En principio, todo apunta hacia el triunfo definitivo de la telefonía IP, tanto en el segmento residencial como en el empresarial, pero esto solamente se producirá si existe una oferta amplia, con calidad y que represente un costo inferior al de la telefonía convencional, facilitando además los mismos servicios. Así pues, en un futuro no muy lejano, es previsible suponer que casi toda la voz se transportará sobre IP, pero los usuarios no serán conscientes de la tecnología que hay detrás sino que simplemente tendrán unas comunicaciones mas económicas y una terminal multimedia para acceder a ellas, con total movilidad, ya que al no depender de numeración geográfica podrán hacer y recibir sus llamadas en cualquier lugar y momento.

En el plano empresaria, para lograr el enrutamiento de dichas llamadas telefónicas de manera efectiva, es necesaria la implementación de un PBX (Private Branch Exchange), utilizado para permitir la conexión de diversos teléfonos personales y así lograr la ejecución de llamadas internas y la transmisión de llamadas externas.

Mantener redes de comunicación eficientes es prioritario dentro de una empresa, ya que gracias a ellas es posible conocer las necesidades de los clientes, conocer los ofrecimientos de los proveedores y mantener integrada a la organización. El conmutador telefónico es parte de la infraestructura de telecomunicaciones que hace posible cumplir con esa función de comunicación. Hace ya algunos año, era necesario un operador de conmutador quien atendía las llamadas telefónicas entrantes que posteriormente canalizaba con las personas indicadas dentro del establecimiento. Actualmente, se hace uso de diversas funciones programables con capacidad para establecer la comunicación a través de un número variable de líneas y así realizar el enlace de forma automática.

1

(9)

9

Descripción

En base a los conocimientos de programación adquiridos en la carrera de Ingeniería en Comunicaciones y Electrónica se implementará una aplicación Proxy PBX, basada en una tecnología de nueva generación: VoIP. Esta aplicación permitirá capturar y procesar mensajes SIP especificados en el RFC 3261, que estén implicados en una sesión telefónica, esto con el fin de hacer un reporte de llamadas: Inicio de llamadas, duración de llamadas, el número de extensiones telefónicas que intervienen en la llamada, etc.

El desarrollo de un software Proxy PBX estará basado en el entorno de programación Visual Studio C# con la utilización de bibliotecas de sockets, desarrollado para el Sistema Operativo Windows mediante su interfaz gráfica.

Para establecer la comunicación es necesario que exista un cliente y un servidor, donde el servidor tendrá la función de un PBX y podrá almacenar y distribuir las peticiones (llamadas) del cliente a toda la red local. El Proxy PBX es un elemento que se pondrá como intermediario entre el servidor PBX y el cliente Softphone, con la intención de generar los reportes de las llamadas.

Para lograr la comunicación entre el servidor y sus clientes, será necesario hacer uso de diversos protocolos, mediante el modelo OSI. En la capa 1 (Física) se utilizará como medio de transmisión cable UTP categoría 5 utilizado normalmente en redes LAN. En la capa 2 (Enlace de datos) se requerirá un switch para concentrar todas las terminales existentes conectadas al servidor. Siguiendo con la capa 3 (Red) se implementará el protocolo IP y con esto se configurarán los clientes dentro de un dominio para ser visibles por el servidor. Dentro de la capa 4 (Transporte) para que exista transmisión de datos se hará uso del protocolo UDP basado en el envío de datagramas, el cual resulta de mayor factibilidad para transmitir voz en tiempo real. Por último en la capa de aplicación el protocolo SIP tomará un papel importante para lograr la comunicación y reconocimiento de las aplicaciones entre cliente y servidor.

(10)

10

Justificación

Actualmente en México hay poco desarrollo de aplicaciones para el manejo de VoIP, en lo que concierne a la telefonía IP: Softphone, PBX, Reporteador de llamadas y Proxy´s.

Existen muchas aplicaciones para VoIP pero desarrolladas en el extranjero, las aplicaciones que generan reportes de llamadas son a veces incompatibles entre diferentes marcas, son caras y su soporte es en el país extranjero, lo que hace a este tipo de soporte ineficiente.

Se puede adquirir un PBX IP basados en software gratuito, normalmente para Linux, pero rara vez se pueden imprimir reportes.

Por otro lado, en México no se desarrollan aplicaciones en tecnologías que están despuntando, como VoIP, e incluso adquiriendo gran popularidad, lo que nos deja en un plano de atraso tecnológico.

Objetivos

Objetivo General:

Aplicar el lenguaje de programación C# para desarrollar un software Proxy PBX, implementado en una red de área local que utiliza la tecnología VoIP.

Objetivos Particulares:

a) Aplicar los protocolos SIP, IP y UDP para lograr la transmisión y recepción de la información para así manipular los datos según las necesidades del usuario.

b) Programar sockets dentro del entorno de programación Windows C# para el desarrollo de una aplicación que nos permita gestionar las comunicaciones dentro de una red.

c) Establecer comunicación entre nuestra aplicación y teléfonos basados en la tecnología VoIP.

(11)

11 IP

. .

Diagrama a bloques del proyecto y sus alcances

UPD/RTP

. . . . . UAC 1

SIP

PROXY PBX Servidor de

Registro

Reporteador

UAC UAC 2

VoIP Gateway

(12)

12

CAPITULO I. ESTADO DEL ARTE

1.1PBX

1.1.1 Antecedentes

Una de las necesidades fundamentales de las empresas, es el mantener una comunicación eficaz. Esta función actualmente es realizada por el sistema PBX (Private Branch Exchange), es un dispositivo que permite la operación de una red telefónica privada que es utilizada dentro de una empresa. Este sistema dispone de cierto número de líneas, conecta las extensiones internas y al mismo tiempo las conecta con la red pública conmutada, conocida también como PSTN (Public Switched Telephone Network).

En un inicio, se utilizaban centrales manuales de conmutación conocidas como PMBX2 (Figura 1). Este término duro muy poco tiempo en el mercado y hace referencia a época donde las llamadas eran transferidas de un circuito a otro manualmente, conectando cables entre los abonados, este sistema era poco eficiente y tuvo principalmente 2 problemas que impulsaron su evolución.

El primero era que las operadoras podían escuchar las llamadas y la segunda causa fue el error humano, ya que en ocasiones se enlazaban las llamadas a lugares equivocados. La solución, realizar este procedimiento mediante maquinas automáticas.

Figura 1. ERICSSON PMBX 1A

2

(13)

13

A partir de este punto, el avance de la telefonía, estuvo íntimamente ligado al desarrollo de los sistemas de cómputo ya que, aunque los equipos que reemplazaban a los PMBX todavía utilizaban tecnología convencional, su sistema central ya estaba basado en una computadora. Gracias a este avance, se comenzaron a agregar funciones útiles tanto en telefonía pública como en la telefonía corporativa y así, se obtenían cada vez más beneficios, más funcionalidad, mayor capacidad y menor costo.

En el ámbito empresarial, es de suma importancia mantener comunicaciones eficientes. El sistema PBX se desarrolló para proveer a las empresas de funciones mejoradas, que no ofrecían las compañías de telefónicas, en la actualidad existen equipos de conmutación que, de manera automática, registran las llamadas entrantes y salientes, la duración de cada una de ellas y los números troncales y de enlace, entre otras funcionalidades.

1.1.2 Estado actual de los PBX

Una de las tendencias más recientes en telefonía es la telefonía computarizada, paralelo al desarrollo de sistemas telefónicos que transmiten la voz por medio de la red de Internet. Estos llevan el nombre de VoIP PBX ó IP PBX.

Actualmente existen cuatro diferentes opciones de sistemas telefónicos:

PBX

Servicio de PBX Virtual IP PBX

Servicio de IP PBX Virtual

Un IP PBX es un sistema telefónico basado en software que permite a un negocio disfrutar de varias funcionalidades y servicios que son normalmente son muy difíciles y costosos de implementar con las centralitas telefónicas PBX tradicionales.

En la actualidad el registro y direccionamiento de llamadas es administrado mediante software, implementado bajo la tecnología VoIP, que de manera automática suprime el trabajo de una operadora telefónica que registraba la duración de llamadas así como la restricción hacia diversos usuarios.

(14)

14

Poco a poco, esta aplicación se ha convertido en la evolución de las tradicionales centralitas analógicas y digitales permitiendo también la integración de la tecnología más actual: VoIP. Asterisk ha sido un sistema de comunicaciones completo, avanzado y económico en la actualidad.

Este sistema permite realizar labores que hasta el día de hoy lo llevaban realizando sistemas extremadamente costosos y complicados.

(15)

15

1.2VoIP

1.2.1 Antecedentes de la telefonía convencional

En sus inicios, el teléfono, consistía en un aparato con un altavoz y un micrófono, unido mediante un cable con otro aparato semejante situado a cierta distancia (ver figura 2). A través de dicho cable se enviaba y recibía la voz de cada uno de los extremos, lo que permitió mantener conversaciones con personas situadas a distancia.

[image:15.612.218.398.264.392.2]

En la primera etapa (1878), cada terminal debía realizar la unión con los teléfonos remotos mediante un cable, donde si no existía conexión en los dos extremos, era imposible efectuar la comunicación. Eso provocó la aparición de múltiples cables tirados por las ciudades uniendo teléfonos particulares.

Figura 2: Telefonía punto a punto mediante cables

En la segunda etapa (1891), una entidad global se encargó de gestionar los cables, de modo que cada teléfono se unió a una central (ver figura 3). Cuando alguien deseaba realizar una llamada, en la central se unían los cables de ambos teléfonos, lo que permitía hablar con cualquier teléfono que estuviera conectado a la central, sin necesidad de conectar un cable específico con cada teléfono. Para conseguir esto, se hizo necesaria la identificación de cada teléfono mediante un número.

Al principio las centrales eran manuales. Era necesaria la existencia de un operador que realizara la unión de los cables, a través de grandes paneles con múltiples nodos. Con el tiempo, se inventó una central automática, que permitió acelerar el proceso.

(16)
[image:16.612.184.430.60.254.2]

16

Figura 3: Telefonía conectada a central

En cualquier caso, el hecho es que comenzaron a instalarse centrales en distintas ciudades, que luego eran unidas entre sí. Gracias a eso, se pudieron realizar llamadas interurbanas. Para lograrlo, la central origen debía unir el cable del teléfono que realizaba la llamada con el cable que la unía con la central destino. Y ésta, a su vez, debía unir este cable con el del teléfono destino. Para aprovechar el cableado, las uniones entre centrales se multiplexaban, de modo que era posible llevar por el mismo cable más de una llamada. Esto se lograba mediante multiplexación por división de frecuencia (FDM), donde, mediante un sintonizador era posible seleccionar una determinada frecuencia emitida por la central telefónica.

Durante mucho tiempo, toda la red telefónica fue analógica. La información transmitida por los cables era una transformación directa de la voz en voltaje, que era lo que se enviaba y recibía. En su camino desde el origen al destino, la señal atravesaba diversos filtros analógicos, repetidores y amplificadores. Todos estos dispositivos (además de los posibles problemas del cable o interferencia) provocaban la aparición de ruido en el sonido que no podían ser eliminados fácilmente, y que originaban una baja calidad de sonido en el otro extremo.

Con la aparición de la telefonía digital, la comunicación fue más eficiente. Mediante el uso de conversores analógico/digital y digital/analógico, en lugar de enviar la voz convertida en voltaje, se envía esa voz digitalizada. La señal transmitida puede seguir sufriendo ruido e interferencia por culpa de problemas en el medio de transmisión. Pero cuando llega a un punto intermedio de la red (central, repetidor, etc.) la señal original puede ser restaurada completamente, eliminando el ruido de la conversación.

(17)

17

la digitalizan, por lo que no se acumula ruido en el sonido por culpa de la conexión entre centrales.

Esto es posible únicamente gracias a la digitalización de la voz, que permite almacenar partes de la conversación y mandarlas instantes después. Es posible dividir, por ejemplo, cada conversación en secciones de milésimas de segundo que son enviadas a través del cable en mucho menos tiempo aún, pudiendo aprovechar el mismo cable para cientos de conversaciones.

Con el paso de los años, las nuevas tecnologías han adquirido un papel muy importante dentro de las comunicaciones, como lo es la tecnología VoIP que da lugar a la implementación de la telefonía IP que se viene abriendo paso frente a la telefonía convencional.

1.2.2 Estado actual de la Telefonía IP bajo la tecnología VoIP

En la década de los 90, un grupo de personas perteneciente al entorno de la investigación, tanto de instituciones educativas como empresariales, comenzaron a mostrar cierto interés por transportar voz y video sobre redes IP, especialmente a través de intranets corporativas e Internet. Esta tecnología es conocida hoy en día como VoIP y es el proceso de dividir el audio y el video en pequeños fragmentos, transmitir dichos fragmentos a través de una red IP y re ensamblar esos fragmentos en el destino final permitiendo de esta manera que la gente pueda comunicarse.

La idea de la VoIP no es nueva, ya que hay patentes y publicaciones de investigaciones que datan de varias décadas. La VoIP ha tomado un papel central en la autopista de la información (o Internet) para que la red pueda interconectar cada hogar y cada negocio a través de una red de conmutación de paquetes. Fue la posibilidad de un despliegue masivo de Internet la que volvió a reabrir el interés en la VoIP a partir de esos años.

En 1995, una pequeña compañía llamada Vacoltec anunció el lanzamiento del primer teléfono software para Internet. Este software era únicamente útil para entablar una comunicación de PC a PC y para ello necesitaba hacer uso de diversos requisitos hardware tales como micrófono, altavoces, tarjeta de sonido y módem. Básicamente el funcionamiento de este software es igual al de hoy en día, transformar la señal de voz en paquetes IP una vez comprimida. Sin embargo, esta alternativa a la comunicación telefónica tradicional fue comercialmente un fracaso ya que las conexiones a Internet que se disponían ofrecían un ancho de banda muy escaso.

(18)

18

tecnología VoIP, por lo que algunas empresas importantes se lanzaron al mercado ofreciendo productos y servicios relacionados con esta tecnología. Durante el año 1998 la tecnología VoIP alcanzaba ya el 1% del tráfico total de voz: su carrera había comenzado.

En 19993, compañías dedicadas a las redes de datos tales como CISCO crearon las primeras plataformas destinadas a empresas capaces de tratar con tráfico VoIP. Esto supuso un nuevo impulso a la VoIP ya que comenzó a implantarse en muchas empresas. La consecuencia directa fue que la VoIP alcanzara en el año 2000 más del 3% del tráfico total de voz.

Las redes de datos siguieron mejorando en años venideros, y alrededor del año 2005 ya era fácil para cualquier persona de países desarrollados conseguir una conexión a Internet que cumpliera los requisitos mínimos para ofrecer una buena calidad de voz y una comunicación fiable a través de VoIP, reduciendo al mínimo las posibles interrupciones que se pudieran producir durante la conversación.

Esto supuso otro gran impulso a la VoIP y provocó que al día de hoy existan muchas soluciones que hacen uso de esta tecnología. Un ejemplo claro es Asterisk, una centralita telefónica de software libre que se distribuye bajo licencia GPL. Este producto, soportado comercialmente por Digium, se ha convertido en pocos años en una de las soluciones IP más extendidas en diversos ámbitos, como el empresarial o el educativo. Otro ejemplo destacable de producto VoIP es Skype, que fue creado por dos jóvenes universitarios en el año 2003. A diferencia de Asterisk, Skype hace uso de un protocolo privado que no está basado en un estándar, lo que a largo plazo se piensa que limitará a sus usuarios. Al día de hoy Skype se puede emplear en multitud de plataformas y su uso se encuentra también ampliamente extendido.

De un modo u otro, a finales del año 2008 se esperaba que el negocio relacionado con la VoIP llegara a la impresionante cifra de 5000 millones de dólares. El bajo costo de las llamadas a distancia y las nuevas funcionalidades que se están implementando son sólo dos de los alicientes que están provocando esta revolución.

Aunque VoIP puede definirse abreviada como una tecnología que aprovecha el protocolo TCP/IP para ofrecer conversaciones de voz, lo cierto es que es mucho más que esto. VoIP puede ser usada para reemplazar la telefonía tradicional en un entorno empresarial, en un pequeño negocio o en una casa, o simplemente para añadir ventajas a un sistema de telefonía tradicional.

3

(19)

19

El proceso de convergencia ha seguido un camino pausado. No es sencillo invertir en nuevos equipos o infraestructura como lo demanda el actual ritmo de crecimiento en materia de TICs, por tanto se tiende a seguir un modelo híbrido donde conviven PBX tradicionales y PBX habilitados con soporte para redes IP. Hoy en día la industria de las telecomunicaciones ha decidido apostar fuerte por una plataforma común sobre el Protocolo de Internet aunque, como hemos mencionado anteriormente, ha decidido hacerlo con visión de largo plazo. Para muchas organizaciones, incluyendo instituciones de educación, la convergencia significa la oportunidad de fusionar las aplicaciones existentes con nuevas herramientas de comunicación y nuevos modelos de transmisión de la información cuyas posibilidades son infinitas.

En este rubro, México ocupa uno de los primeros lugares a nivel América Latina en el uso de la telefonía IP. Cada vez, más organizaciones están optando por los beneficios de la convergencia al mundo IP. El mercado de la telefonía por Internet ha crecido constantemente en los últimos años y seguirá con esta tendencia en el futuro próximo.

(20)

20

CAPÍTULO II. MARCO TEÓRICO

2.1PBX

2.1.1 Definición

Una central privada automática de conmutación para aplicaciones telefónicas, denominado generalmente PABX (Private Automatic Branch Exchange) o, últimamente, solo PBX ya que se entiende que todas son automáticas, es un equipo que tiene control por software y proporciona funciones de conmutación a los usuarios a ella conectados. El PBX permite conmutar las llamadas internas sin necesidad de acceder a la red pública de conmutación.

A continuación se explica el significado del acrónimo PABX:

 Private. Debido a que este tipo de sistemas e instalaciones tienen un uso privado cuyos servicios no se encuentran disponibles desde otras redes de telefonía de acceso público.

 Automatic. Se refiere al modo de conmutación que desde hace ya mucho tiempo es automático para todos los equipos por lo que normalmente en vez de decir PABX se dice PBX.

 Branch. Sugiere que los equipos conectados a estas redes privadas se comportan en realidad como una ramificación de las grandes redes de acceso público.

 Exchange. Debido a que estos sistemas permiten intercambiar información, es su caso esta información son sobre todo llamadas telefónicas.

2.1.2 IP PBX

Actualmente existe una gran diversidad de modelos de centrales telefónicas: centrales con mayor o menor número de extensiones para pequeñas o grandes empresas, de más o menos prestaciones, con mayor o menor funcionalidad, totalmente analógicas, semi-digitales, completamente semi-digitales, híbridas o completamente IP.

Un PBX IP, es un equipo telefónico diseñado para ofrecer servicios de comunicación de voz y/o video a través de las redes de datos mediante tecnología VoIP e interactuar con la red PSTN, tanto RTB, como RDSI y móvil.

(21)

21

2.1.2.1Características

Una centralita telefónica IP PBX permite comunicación de voz y/o video a través de las redes de datos, utilizando tecnología VoIP así como interactuar con las líneas telefónicas convencionales PSTN o RTC (Red Telefónica Conmutada), tanto analógicas RTB (Red Telefónica Básica) como digitales RDSI (Red Digital de Servicios Integrados) y móviles GSM/GPRS/UMTS.

Una centralita telefónica IP PBX trabaja internamente con el protocolo IP, utilizando infraestructuras de comunicaciones de datos basadas en IP, como Internet, LAN (Local Area Network, Red de área local), WLAN (Wireless LAN, Wireless Local Area Network, Red de área local inalámbrica) y WAN (Wide Area Network, Red de área amplia).

Una IP PBX puede tener las siguientes características, de acuerdo a su funcionamiento:

 IP PBX hardware: la centralita existe como dispositivo físico de hardware. Normalmente, cada uno de estos tipos se basa en un hardware específico con su propio procesador integrado que les permite soportar y manejar sus características específicas de señalización.

 IP PBX software (también llamada Soft IP PBX): la centralita consiste en un sistema de software.

 IP Centrex (también llamado Virtual IP PBX o Hosted IP PBX): la compañía telefónica proporciona virtualmente el servicio simulado de IP PBX.

 PBX con soporte VoIP (también llamada PBX híbrida): la mayoría de PBX tradicionales pueden disponer de las funciones de una centralita IP PBX conectando módulos donde se incorpora la tecnología VoIP.

2.1.2.2Componentes y funcionamiento

A continuación, se describen los principales componentes de una centralita telefónica IP PBX y su funcionamiento:

La centralita telefónica IP PBX es el núcleo del sistema de comunicación telefónica de la empresa, esta se conecta a la red LAN, que debe disponer de suficiente ancho de banda para el transporte de datos, voz y video.

(22)

22

Las PC’s de la red, tanto con conexión cableada como Wi-Fi, pueden acceder a la centralita telefónica IP PBX a través de la LAN, realizando llamadas mediante Softphones registrados en el IP PBX.

Un gateway VoIP o ATA (Analog Telephone Adapter), permite conectar con equipos estándar, como teléfonos analógicos, faxes o teléfonos inalámbricos DECT.

La telefonía VoIP permite extender la red telefónica privada a través de Internet, integrando de ese modo oficinas remotas en la infraestructura de comunicaciones de la empresa. Los usuarios acceden a los servicios que proporciona la centralita PBX IP a través de diversos dispositivos, entre los cuales se encuentran los teléfonos IP, Softphones, Fax, mensajería instantánea, sistemas de videoconferencia, dispositivos móviles, etc.

2.2Proxy PBX

2.2.1 Definición de un Sistema Proxy

Un sistema proxy proporciona acceso a Internet a un solo anfitrión, o a un número pequeño de anfitriones, aunque parece que lo proporciona a todos. Los anfitriones que si tiene acceso actúan como proxy para las máquinas que no lo tienen, haciendo lo que estas últimas quieren que se haga.

Un servidor proxy para un protocolo o para un conjunto de protocolos determinados se ejecuta en un anfitrión con doble a acceso o con un anfitrión bastión: algún anfitrión con el que pueda establecer comunicación con el usuario, que pueda, a su vez, comunicarse con

el mundo exterior. El programa cliente del usuario se comunica (“habla”) con este servidor

proxy en lugar de hacerlo directamente con el servidor “real” que está en Internet. El

servidor proxy evalúa solicitudes del cliente y decide cuales pasar y cuáles no. Si una petición es aprobada, el servidor proxy habla con el servidor real en nombre del cliente (de ahí el término “proxy”, que significa representante en español) y procede a transmitir las solicitudes del cliente al verdadero servidor y a transmitir las respuestas de éste de nuevo al cliente.

Para el usuario, hablar con el servidor proxy es como hablar directamente con el verdadero servidor. En cuanto a éste último, habla con un usuario en el anfitrión que ejecuta el servidor proxy; no sabe que el usuario en realidad está en otro lugar.

(23)

23

2.2.2 Funcionamiento

Los detalles de cómo funciona un proxy varían de un servicio a otro. Algunos servicios proporcionan un proxy fácil o automáticamente; para esos servicios, un proxy se instala al realizar cambios de configuración a los servidores normales. Sin embargo, para la mayoría de los servicios la instalación de un proxy requiere de un software apropiado para servidor proxy del lado del servidor. De lado del cliente, necesita uno de los siguientes:

Software cliente personalizado

Con este enfoque, el software debe saber cómo ponerse en contacto con el servidor proxy en lugar de con el verdadero servidor cuando un usuario hace una solicitud, y cómo decirle al servidor proxy con cual servidor real conectarse.

Procedimientos personalizados de usuario

Con este enfoque, el usuario utiliza el software cliente estándar para hablar con el servidor proxy y le dice que se conecte con el verdadero servidor, en lugar de conectarse con el verdadero servidor directamente.

2.2.3 Ventajas y desventajas del uso de un Proxy

 Ventajas

Los servicios Proxy son buenos para la contabilidad del sistema

Debido a que los servidores Proxy comprenden el protocolo de niveles inferiores, permiten que se lleve la contabilidad del sistema de una forma muy efectiva.

 Desventajas

Los servicios Proxy podrían requerir servidores diferentes para cada servicio

Quizá necesite un servidor Proxy para cada protocolo, por que el servidor Proxy debe comprender el protocolo para determinar que permite y que no, y para hacerse pasar como cliente ante el verdadero servidor y como el verdadero servidor ante el cliente proxy. Coleccionar, instalar y configurar todos estos servidores puede requerir mucho trabajo.

(24)

24

2.2.4 Proxy a nivel de aplicación: Protocolo SIP

Un proxy a nivel de aplicación es el que sabe sobre la aplicación específica para la cual está proporcionando servicios proxy; comprende e interpreta los comandos en el protocolo de la aplicación. Por otro lado, un proxy a nivel de circuito es el que crea un circuito entre el cliente y el servidor sin interpretar el protocolo de la aplicación.

Aunque “a nivel de aplicación” y “a nivel de circuito” son términos utilizados a menudo, con mayor frecuencia distinguimos entre los servidores proxy “dedicados y “genéricos”. Un servidor proxy dedicado es el que sirve a un solo protocolo; un servidor proxy genérico es el que sirve a varios protocolos.

Dentro de la arquitectura de VoIP, es necesario el uso de ciertos elementos que permitan ordenar el tráfico telefónico y a la vez poner en contacto a los diferentes usuarios de las redes implicadas.

Tal y como trabajan los routers con los datos en general, recibiendo y enviando peticiones desde y hacia otras maquinas, los diferentes protocolos IP necesitan igualmente que alguien o algo encamine sus peticiones hacia los usuarios finales, a fin de establecer una conversación. Esta tarea la realiza un servidor proxy o enrutador, encargándose de rutar la señalización hacia los sitios adecuados en función de las indicaciones pertinentes que cada protocolo implementa.

En este contexto, un Proxy SIP, es una entidad intermediaria que actúa como un servidor y un cliente con el propósito de hacer peticiones en nombre de otros clientes. Un servidor proxy principalmente juega el papel de enrutamiento, lo que significa que su trabajo es asegurarse de que una solicitud se envía a otra entidad "más cercana" a los dirigidos del usuario. Los proxys son también útiles para la aplicación de la política (por ejemplo, asegurarse de que un usuario se le permite hacer una llamada). Un Proxy interpreta, y si es necesario, reescribe partes específicas de un mensaje de solicitud antes de enviarlo.

De esta forma, los Proxy´s se clasifican en 2, de la siguiente manera:

 Stateful Proxy: Es una entidad lógica que mantiene el estado de las transacciones durante el procesamiento de las peticiones. Permite división de una petición en varias, con la finalidad de la localización en paralelo de la llamada y obtener la mejor respuesta para enviarla al usuario que realizó la llamada.

 Stateless Proxy: Una entidad lógica que no mantiene el estado de las transacciones durante el procesamiento de las peticiones, únicamente reenvían mensajes.

(25)

25 Los Proxy’s SIP, son elementos que enrutan peticiones SIP al agente de usuario servidores y las respuestas SIP a los agentes de usuario clientes. La solicitud puede

atravesar varios Proxy´s en su camino a un UAS. Cada uno hará en el enrutamiento, la modificación de la solicitud antes de enviarlo a la siguiente elemento. Las respuestas recorrerá el mismo conjunto de Proxy´s que la solicitud atravesó, en el orden inverso.

Al ser un proxy es una función lógica para un elemento de SIP. Cuando una solicitud de llega, un elemento que puede desempeñar el papel de un primer indicador decide si es necesario responder a la solicitud por su propia cuenta. Por ejemplo, la solicitud puede ser incorrecta o el elemento puede necesitar credenciales del cliente antes de actuar como un proxy. El elemento puede responder con cualquier código de error apropiado. Al responder directamente a una solicitud, la elemento es el papel de un UAS.

[image:25.612.133.511.276.461.2]

(26)

26

2.3 TECNOLOGÍA VoIP

2.3.1 Introducción a la VoIP

Tradicionalmente, las redes de área local se vienen utilizando para la transmisión de datos, pero conforme las aplicaciones tienden a ser multimedia y los sistemas de comunicaciones en vez de ser elementos independientes y aislados para atender un determinado tipo de comunicación, son servidores de un conjunto más complejo, se tiende a transmitir cualquier tipo de información sobre los medios existentes. Así, sobre la LAN corporativa y sobre Internet, unos medios extendidos por la mayor parte de las empresas, mediante la adopción de ciertos estándares y la incorporación de algunos elementos, es posible enviar voz y vídeo, con la gran ventaja y ahorro que supone el utilizar la infraestructura existente.

Sin embargo y mientras que los datos no son sensibles al retardo, a la alteración del orden en que llegan los paquetes, o la pérdida de alguno de ellos, ya que en el extremo lejano se reconstruyen, la voz y la imagen necesitan transmitirse en tiempo real, siendo especialmente sensibles a cualquier alteración que se pueda dar en sus características. Requieren por tanto de redes que ofrezcan un alto grado de servicio y garanticen el ancho de banda necesario

2.3.2 Definición

VoIP (Voice Over Internet Protocol) es la posibilidad de enviar paquetes de voz en tiempo real, conjuntando técnicas y tecnologías que nos permiten, digitalizar la voz y acondicionarla para que pueda ser transmitida a través de redes de datos basadas en el protocolo de Internet (IP). VoIP es un grupo de recursos que permiten utilizar las redes IP para aplicaciones de voz, tales como telefonía, teleconferencias, etc.

Lo que permite tener conversaciones con personas a través de la red, en lugar de utilizar la telefonía tradicional. La principal ventaja de VoIP es la reducción de costos en las llamadas realizadas.

2.3.3 Implementación y funcionamiento de telefonía IP

La telefonía IP reúne la transmisión de voz y de datos, lo que posibilita la utilización de las redes informáticas para efectuar llamadas telefónicas. Además, ésta tecnología al desarrollar una única red encargada de cursar todo tipo de comunicación, ya sea de voz, datos o video, se denomina red convergente o red multiservicios.

(27)

27

a) Interoperabilidad con las redes telefónicas actuales: Donde se dispone de dos tipos de Interconexión a la red de telefonía pública, desde una central telefónica IP y directamente desde una tradicional.

b) Calidad de Servicio Garantizada a través de una red de alta velocidad: En Telefonía IP el concepto de calidad incluye aspectos como:

- Red de alta disponibilidad que ofrece hasta de un 99,99% de recursos. - Calidad de voz garantizada (bajos indicadores de errores, de retardo, de eco, etc.)

c) Servicios de Valor Agregado: como el actual prepago, y nuevos servicios como la mensajería unificada.

Este modo de telefonía hace uso de un tipo especial de teléfono denominado Softphone, es un software que hace una simulación de teléfono convencional por computadora. Es decir, permite usar la computadora para hacer llamadas a otros Softphones o a otros teléfonos convencionales usando un VSP.

Normalmente, un Softphone es parte de un entorno Voz sobre IP y puede estar basado en el estándar SIP/H.323 o ser privativo.

2.3.4 Control de la comunicación

Al igual que ocurre en cualquier red, las redes de voz sobre paquetes requieren de una serie de normas que especifican las funcionalidades y servicios que este tipo de redes deben proveer en todas y cada una de sus dimensiones. Estas normas son los protocolos, y un aspecto muy importante es que tengan carácter abierto y que sean internacionalmente aceptados con el fin de garantizar la interoperabilidad entre productos de distintos fabricantes, facilitando la elección de los usuarios y disminuyendo los precios de los equipos al fabricarse estos en mayor escala.

Una vez justificada la necesidad de protocolos, el paso siguiente es determinar que ámbitos de las redes de voz sobre paquetes deben estandarizarse. Para ello, se analizara a detalle los pasos implicados en el establecimiento de una llamada.

(28)

28

2.3.5 Parámetros VoIP

Uno de los principales problemas a los que se enfrentan tanto VoIP como todas las aplicaciones que se integran al protocolo IP, es el garantizar la calidad de servicio sobre Internet, ya que puede tener limitaciones de ancho de banda en la ruta y por lo tanto no existe un aprovechamiento óptimo de los recursos que nos provee la red mundial de la Internet.

2.3.5.1Códec

La voz ha de codificarse para poder ser transmitida por la red IP. Para ello se hace uso de códecs que garanticen la codificación y compresión del audio o del video para su posterior decodificación y descompresión antes de poder generar un sonido o imagen utilizable. Según el Códec utilizado en la transmisión, se utilizará más o menos ancho de banda. La cantidad de ancho de banda utilizada suele ser directamente proporcional a la calidad de los datos transmitidos.

Entre los códecs utilizados en VoIP encontramos los G.711, G.723.1 y el G.729 (especificados por la ITU-T). Estos Códecs tienen este tamaño en su señalización:

 G.711: bit-rate de 56 o 64 Kbps.  G.722: bit-rate de 48, 56 o 64 Kbps.  G.723: bit-rate de 5,3 o 6,4 Kbps.  G.728: bit-rate de 16 Kbps.  G.729: bit-rate de 8 o 13 Kbps.

2.3.5.2Protocolos de señalización

(29)

29

2.3.5.3Protocolos de transporte de voz y ancho de banda de la voz

[image:29.612.142.479.200.366.2]

Son las normas que definen como debe realizarse la comunicación entre los extremos por un canal de comunicaciones previamente establecido. Los protocolos de transporte más empleados son RTCP, RTP, UDP y TCP.

Figura 5. Esquema protocolos.

Encapsulamiento de una trama VoIP

Una vez que la llamada ha sido establecida, la voz será digitalizada y entonces transmitida a través de la red en tramas IP. Las muestras de voz son primero encapsuladas en RTP (Protocolo de Transporte en tiempo Real) y luego en UDP o TCP antes de ser transmitidas en una trama IP. La siguiente figura muestra un ejemplo de una trama VoIP sobre una red LAN y WAN.

[image:29.612.153.493.536.606.2]
(30)

30

2.3.6 Ventajas

VoIP tiene también algunas desventajas, sin embargo, las ventajas que puede aportar superan claramente a éstas. A continuación se mencionan algunos de los beneficios asociados al uso de VoIP y se ve cómo podría mejorar la comunicación por voz:

 Ahorrar Dinero. En una línea RTC, tiempo significa dinero. VoIP emplea Internet como medio de transporte, donde el único costo que se tiene es la factura mensual de Internet a tu proveedor de servicio o ISP. Hoy en día el servicio de Internet más común es una ADSL que se puede emplear de forma ilimitada y conlleva a un costo fijo al mes. De esta forma, si el ADSL tiene una velocidad razonable, podrá hablar a través de VoIP con una buena calidad de llamada y el coste seguirá siendo siempre el mismo.

 Más de dos personas. En una línea de teléfono convencional, únicamente dos personas pueden hablar al mismo tiempo. Con VoIP, se puede configurar una conferencia que permite a un grupo de personas comunicarse en tiempo real. VoIP comprime los paquetes durante la transmisión, algo que provoca que se pueda transmitir una cantidad mayor de datos. Como resultado, se pueden establecer más llamadas a través de una única línea de acceso.

 Hardware y software baratos. El único hardware adicional además de una computadora y conexión a Internet será una tarjeta de sonido, unos altavoces y un micrófono. Todo este material hasta hoy en día bastante barato. Existen diferentes paquetes de software descargables desde Internet que emplean VoIP y que sirven para establecer comunicaciones por voz, algunos con ciertas restricciones, teniendo que invertir en licencias para habilitar llamadas a cualquier parte del mundo. Lo que se debe tomar en cuenta es que para comenzar a emplear VoIP no es necesario un teléfono con todo el equipamiento asociado a este, algo que podría resultar más caro. Además en la mayoría de los casos no será necesario hacer nuevas instalaciones de cableado telefónico, ya que VoIP se integra con la red de datos existente en la gran mayoría de empresas y hogares.

 Prestaciones abundantes, interesantes y útiles. Usar VoIP también significa beneficiarse de sus prestaciones abundantes, que pueden hacer la experiencia de emplear VoIP mucho más rica y sofisticada, tanto en el hogar como en el trabajo. En general, ofrece un mayor equipamiento para la gestión de llamadas. Se podrá, por ejemplo, hacer llamadas en cualquier lugar del mundo a cualquier destino del mundo únicamente empleando una cuenta VoIP. De esta forma, la VoIP pasar a ser un servicio tan portable como el e-mail, es decir, no limita la movilidad del abonado. Otras prestaciones que ofrece VoIP son el reconocimiento de llamada, posibilidad de crear números virtuales o el contestador automático, por poner algunos ejemplos.

(31)

31

a la vez que la voz. De esta forma, se puede hablar con alguien a la vez que se le envían archivos o incluso a la vez que se le observa a través de una webcam.

 Uso más eficiente de ancho de banda. Se sabe que el 50% de una conversación de voz es silencio. VoIP rellena estos espacios de silencio con datos de forma que el ancho de banda de los canales de comunicación no sean desaprovechados. La compresión y la posibilidad de eliminar la redundancia cuando se transmite voz serán también factores que elevarán la eficiencia de uso del ancho de banda de la conexión.

 Esquema de red flexible. La red que encontramos bajo VoIP no necesita tener un esquema o topología en concreto. Esto hace posible que una organización pueda hacer uso de la potencia de las tecnologías que elijan, como ATM, SONET o Ethernet.

Cuando empleamos VoIP, la complejidad de la red inherente en las conexiones RTC es eliminada, creándose una infraestructura flexible que puede soportar muchos tipos de comunicación. El sistema estará más estandarizado, requerirá menos equipamiento y su tolerancia a fallos será mayor.

 Teletrabajo. Si trabajas en una organización que emplea una intranet o extranet, todavía se podrá acceder a una oficina de trabajo desde casa a través de VoIP. Se puede convertir el hogar en una parte de la oficina y usar remotamente la voz, el fax o los servicios de datos del lugar de trabajo a través de la intranet de la oficina. La naturaleza portátil de la tecnología VoIP está provocando que gane popularidad, ya que proporciona una gran cantidad de comodidades impensables hace unos años. La portabilidad tanto de hardware como de servicios se está convirtiendo cada día más normal, y en ese contexto VoIP encaja perfectamente.

 Fax sobre IP. Los problemas de los servicios de fax sobre RTC son el alto costo que conllevan para largas distancias, la atenuación de la calidad en las señales analógicas y la incompatibilidad entre algunas máquinas cuando se comunican. La transmisión por fax en tiempo real sobre VoIP simplemente utiliza una interfaz de fax para convertir los datos en paquetes y asegura que éstos serán entregados completamente y de forma segura.

Otra ventaja de este sistema es que ni siquiera se necesitará una maquina fax para enviar y recibir fax.

(32)

32

2.4 Protocolo de aplicación SIP

2.4.1 Definición

El protocolo SIP es un protocolo de señalización a nivel de aplicación encargado de la iniciación, modificación y terminación de sesiones multimedia, las cuales se llevan a cabo de manera interactiva. Por sesiones multimedia se refiere a aplicaciones de mensajería instantánea, aplicaciones de video, audio, conferencias y aplicaciones similares.

SIP se definió en el RFC 2543 en marzo de 1999 por el grupo de trabajo MMSC perteneciente a la IEFT. En junio del 2002, el IETF publicó una nueva revisión del SIP con el RFC 3261.

El protocolo SIP posee 4 características que lo hacen muy recomendable para cumplir esta función:

Localización del usuario. SIP posee la capacidad de poder conocer en todo momento la localización de los usuarios. De esta manera no importa en qué lugar se encuentre un determinado usuario. En definitiva la movilidad de los usuarios no se ve limitada

Negociación de los parámetros. Posibilidad de negociar los parámetros necesarios para la comunicación: puertos para el tráfico SIP así como el tráfico Media, direcciones IP para el tráfico Media, códec, etc.

Disponibilidad del usuario. SIP permite determinar si un determinado usuario está disponible o no para establecer una comunicación.

Gestión de la comunicación. Permite la modificación, transferencia, finalización de la sesión activa. Además informa del estado de la comunicación que se encuentra en progreso.

(33)

33

´

2.5.1 Conceptos básicos

El protocolo es similar al HTTP por la forma en que funciona (protocolo basado en texto) y es similar a SMTP en la forma en la que se especifican las direcciones SIP.

Las direcciones SIP identifican a un usuario de un determinado dominio. A estas direcciones SIP habitualmente se les llama URI (Uniform Resource Identifier). Una URI se puede especificar de las siguientes maneras:

sip:usuario@dominio[:port] sip:usuario@direcciónIP[:port]

El dominio representa el nombre del proxy SIP que conoce la dirección IP del terminal identificado por el usuario de dicho dominio. El puerto por defecto para SIP es 5060, aunque es posible especificar otros adicionales si es necesario.

En la tabla 1 se pueden ver algunos ejemplos de direcciones SIP.

Tabla 1. Ejemplos de direcciones SIP

Nota: en la nomenclatura usuario@direcciónIP, la dirección puede referirse a la IP del usuario, en un momento determinado, o a su dominio.

Es por tanto posible hacer uso de una dirección IP si no disponemos de un dominio registrado para este propósito.

2.5.3 Elementos SIP

Para una comunicación SIP es necesaria la intervención de varios elementos, donde cada uno desempeña su papel. Los elementos de la comunicación son:

Los agentes de usuario (User agent), o de manera abreviada UA, manejan la señalización SIP. Se pueden dividir en dos categorías:

Descripción Dirección SIP

Usuario “200” perteneciente al dominio “esime.ipn.mx” [email protected]

Usuario “200” perteneciente al dominio con dirección IP 192.168.1.120

(34)

34  User agent client (UAC). Es un elemento que realiza peticiones SIP y acepta respuestas SIP provenientes de UAS. Un ejemplo de UAC es un teléfono VoIP ya que realiza peticiones SIP.

User agent server (UAS). Es el elemento encargado de aceptar las peticiones SIP realizadas por el UAC y enviar a este la respuesta conveniente. Un teléfono VoIP también es un ejemplo de UAS, ya que acepta peticiones de inicio de comunicación enviadas por otro teléfono UAC.

Figura 7. Ejemplo de llamada SIP (200 llama a 201).

Los intermediarios necesarios para que la comunicación entre dos UA sea posible:

[image:34.612.163.449.526.690.2]

Servidor Proxy. Es el elemento encargado de reenviar las peticiones SIP provenientes de un UAC al UAS destino que corresponde, así como de encaminar las respuestas de UAS destino del UAC origen. Podemos hacer una similitud con el encaminamiento que realizan los router con los paquetes a nivel IP, es decir, sería como el encargado de enrutar los paquetes SIP. Para enrutar, lo que hace es una traducción de la dirección destino dada de la forma usuario@dominio a la forma usuario@direcciónIP donde dirección IP es la dirección IP que tiene en ese momento el teléfono de destino.

(35)

35

En la figura 8 se observa la función más importante de un proxy SIP, la de enrutar los mensajes SIP estableciendo así la señalización SIP pertinente.

[image:35.612.138.477.264.554.2]

Registrar-location server. Acepta las peticiones de registro de los UAC, guardando toda la información referente a la localización física del UAC, para que si posteriormente llega una petición con destino el UAC, sea posible localizarlo. En el ejemplo de la figura 9, para que 200 llame al usuario 201 es necesario que previamente ambos teléfonos se hayan registrado en servidor de registro. Esto es necesariamente así porque el proxy SIP necesita conocer la dirección IP del teléfono 201 para enviarle la petición de inicio de conversación y del mismo modo necesita la dirección IP del teléfono 200 para que pueda enrutarle las respuestas SIP generadas por el teléfono 201.

Figura 9. Proceso de registro

Una vez que los teléfonos se han registrado dentro de servidor, estos pueden entonces realizar y recibir llamadas entre sí ya que el proxy SIP conoce sus direcciones IP

físicas/reales (mediante consultas). Habitualmente, el proxy SIP y el servidor de “registro

-localización” se encuentran juntos en el mismo software por lo general. Con esto, la llamada será realizada con éxito.

Redirect Server. Su funcionamiento es similar al servidor proxy anterior, con la diferencia que cuando este resuelve la dirección, esto es, realiza la traducción,

Servidor Proxy

Servidor registro - localización

(36)

36

[image:36.612.173.454.114.286.2]

informa al UAC que realizó la petición SIP para que sea este mismo el que la envíe hacia el UA destino. Un servidor de redirección actúa realmente como un UAS.

Figura 10. Registro completado

Back – to – back user agent (B2BUA). Es una entidad intermediaria que procesa peticiones SIP entrantes comportándose como un UAS, y responde a estas actuando como un UAC regenerando por completo la petición SIP entrante en una nueva petición SIP que va a ser enviada.

2.4.5 Mensajes SIP

El dialogo entre clientes y los servidores SIP se basa en el intercambio de mensajes de texto. Estos mensajes se clasifican en 2, Peticiones y respuestas.

Los mensajes de petición son enviados por las entidades cliente a las entidades servidor. Generalmente toda petición tiene asociada una respuesta del servidor, excepto el ACK que no requiere respuesta. Toda respuesta SIP tiene asociado un código numérico que indica el resultado del intento de servir la aplicación del cliente.

Petición SIP Descripción

INVITE Es la petición SIP que se envía a un usuario cuando queremos establecer con él comunicación, en este caso una llamada.

ACK Esta petición es enviada por el usuario origen que envió la petición INVITE para hacer saber al usuario destino que su respuesta OK ha sido recibida. Es el momento en que ambos pueden empezar a enviar tráfico Media.

(37)

37

establecida anteriormente con INVITE.

CANCEL Se utiliza para cancelar una petición, por ejemplo INVITE, que se encuentra en progreso. Por ejemplo si el teléfono destino está sonando pero aún no ha sido descolgado y el teléfono origen cuelga, se envía un CANCEL a diferencia de un BYE que se enviará si el teléfono destino hubiera sido descolgado previamente y por tanto la comunicación establecida unos instantes.

OPTIONS Un UA puede enviar peticiones OPTIONS a un UAS para solicitar cierta información sobre este.

REGISTER Un UAC envía peticiones REGISTER a un servidor de registro-localización para informar de la posición actual en la que se encuentra en un momento determinado. Esto hace posible que el UAC pueda ser localizado haciendo uso de su misma dirección user@dominio sin importar donde el UAC se encuentre físicamente.

Tabla 2. Peticiones SIP

Respuesta SIP Descripción

1xx Indican el estado temporal de la comunicación. 2xx Informan del éxito de una petición SIP.

3xx Informan que la petición SIP ha de ser reenviada a otro UAS. 4xx Indican errores en el cliente SIP.

[image:37.612.77.528.62.306.2]

5xx Corresponden a errores en el servidor SIP. 6xx Informan de errores generales.

Tabla 3. Respuestas SIP

Cabecera SIP

Las cabeceras que aparecen en los mensajes SIP dependen del tipo de mensaje y de los parámetros necesarios en cada uno de ellos. Se indican a continuación los campos mas frecuentes con su significado:

 Accept – Contact: Especifica a que URI debe reenviar el proxy la petición.

 Allow – Events: Lista los eventos soportados.

 Call- ID: Identifica unívocamente.

 Contact: Transporta una URI que identifica el recurso solicitado o al recurso llamante.

 Content-Encoding: Indica el tipo de codificación aplicada al cuerpo del mensaje.

(38)

38  Content –Type: Indica el tipo de flujo de información transportada en el cuerpo del

mensaje.

 CSeq: Identifica unívocamente transacciones dentro de un dialogo.

 Event: Indica subscripción o notificación a un evento.

 From: Indica el origen de la solicitud.

 Max-Forwards: Limita el número de saltos en un método

 Reason: Indica la razón de finalización de la sesión.

 Refer-To: Contiene el URI o URL referenciado.

 Referred-By: Contiene información sobre el emisor de un mensaje de tipo REFER.

 Reject-Contact: Indica el URI al que el proxy no puede hacer llegar la petición.

 Require: Contiene la enumeración de características que debe soportar un servidor.

 Subject: Indica el asunto de la sesión multimedia.

 To: Inndica el receptor de la petición.

(39)

39

2.5 Protocolo RTP

2.5.1 Definición

PROTOCOLO DE TRANSPORTE EN TIEMPO REAL. RTP

RTP (Real- Time Transport Protocol) es el estándar que define las comunicaciones de audio y video en tiempo real sobre redes IP, asumiendo, por tanto, la existencia de pérdidas y retardos y la posibilidad de variación dinámica de las características de la red en el transcurso de la comunicación. Suministra funciones de transporte extremo a extremo y ofrece servicios tales como identificación del tipo de carga, numeración de secuencia, timestamping, etc. No garantiza la entrega de tráfico en tiempo real pero sí suministra los recursos para que éste se entregue de manera sincronizada. Como su nombre indica, está orientado a la transmisión de información en tiempo real, como la voz o video.

Las aplicaciones interactivas en tiempo real, incluidas la telefonía IP y la videoconferencia, prometen controlar gran parte del crecimiento futuro de Internet. Por tanto, organismos de estandarización como IETF e ITU han estado ocupados durante muchos años en el establecimiento de estándares para esta clase de aplicaciones. Disponiendo de los estándares apropiados para las aplicaciones interactivas en tiempo real, empresas independientes podrán crear nuevos y convincentes productos que interoperen entre sí.

2.5.2 Funcionamiento

Dentro de un proceso de comunicación en tiempo real, el lado emisor de una aplicación multimedia añade campos de cabecera a los fragmentos de audio/video antes de pasarlos a la capa de transporte. Estos campos de cabecera incluyen números de secuencia y marcas de tiempo. Dado que la mayoría de las aplicaciones multimedia de red pueden hacer uso de los números de secuencia y de las marcas de tiempo (TTL), es conveniente disponer de una estructura de paquete estandarizada que incluya campos para los datos de audio/video, los números de secuencia y las marcas de tiempo, así como otros campos potencialmente útiles. RTP, definido en el documento RFC 3550, es este estándar. RTP puede emplearse para transportar formatos comunes como PCM, GSM y MP3 para sonido y MPEG H. 263 para video. Actualmente RTP disfruta de una amplia implementación en centenares de productos y prototipos de investigación. Además es complementario de otros importantes protocolos interactivos de tiempo real, como SIP y H.323.

(40)

40

2.5.3 Encapsulamiento

Cada paquete RTP incluye una cabecera fija y puede incluir también campos de cabecera adicionales, específicos de la aplicación. La figura ilustra la cabecera fija. Los primeros doce octetos están siempre presentes y se componen de los siguientes campos:

 Versión (2 bits): la versión actual es 2.

 Relleno (1 bit): indica si los octetos de relleno aparecen al final de la carga útil. Si es así, el último octeto de la carga útil incluye una cuenta del número de octetos de relleno. El relleno se utiliza si la aplicación requiere que la carga útil sea un número entero, múltiplo de alguna longitud, por ejemplo 32 bits.

 Extensión (1 bit): si se establece, la cabecera fija viene seguida por exactamente una cabecera de extensión, la cual se emplea para ampliaciones experimentales de RTP.

 Cuenta CSRC (4 bits): el número de identificadores CSRC que siguen a ala cabecera fija.

0 4 8 9 16 31

V P X CC M Tipo de carga

útil

Número de secuencia

Marca de Tiempo

Indicador de fuente de sincronización (SSRC) Identificador de fuente de contribución (CSRC)

. . .

Identificador de fuente de contribución (CSRC)

Figura 11. Encapsulamiento RTP

(41)

41  Marcador (1 bit): la interpretación del bit marcador depende del tipo de carga útil,

normalmente se utiliza para indicar un punto señalado en el flujo de datos.

 Tipo de carga útil (7 bits): identifica el formato de la carga útil RTP, que va a continuación de la cabecera.

 Número de secuencia (16 bits): permite la detección de pérdidas y la secuenciación de paquetes en una serie de paquetes que tengan la mima marca de tiempo.

 Marca de tiempo (32 bits): corresponde al instante de generación del primer octeto de datos de la carga útil. Las unidades de tiempo de este campo dependen del tipo de carga útil. Los valores han de ser generados desde un reloj local situado en la fuente.

 Identificador de fuente de sincronización: un valor generado aleatoriamente que indica de manera exclusiva cual es la fuente dentro de una sesión.

(42)

42

Capítulo III Herramientas

3.1 Sockets

Se denomina socket a un punto de comunicación a través del cual un proceso puede comunicarse con otro. Los procesos que intercambian información a través de sockets pueden encontrarse en sistemas diferentes.

3.1.1 Sockets en C#

El entorno de programación C#, proporciona un extenso conjunto de métodos y propiedades para las comunicaciones en red. Dentro de este, se incluye la biblioteca de

clases “sockets” que permite realizar transferencias de datos síncronos y asíncronos

mediante cualquiera de los protocolos de comunicación.

La clase sockets sigue el modelo de nomenclatura de .NET Framework, proporciona un extenso conjunto de métodos y propiedades para las comunicaciones en red y permite realizar transferencias de datos síncronos y asíncronos mediante cualquiera de los protocolos de comunicación.

[image:42.612.151.466.415.680.2]

Esta comunicación se basa en un esquema donde interactuan cliente y servidor, haciendo uso de diferentes funciones como se muestra en la figura 12.

Figure

Figura 2: Telefonía punto a punto mediante cables
Figura 3: Telefonía conectada a central
Figura 4. Esquema de enrutado en un entorno SIP
Figura 6. Trama VoIP
+7

Referencias

Documento similar

En un estudio clínico en niños y adolescentes de 10-24 años de edad con diabetes mellitus tipo 2, 39 pacientes fueron aleatorizados a dapagliflozina 10 mg y 33 a placebo,

• Descripción de los riesgos importantes de enfermedad pulmonar intersticial/neumonitis asociados al uso de trastuzumab deruxtecán. • Descripción de los principales signos

Abstract: This paper reviews the dialogue and controversies between the paratexts of a corpus of collections of short novels –and romances– publi- shed from 1624 to 1637:

Social Media, Email Marketing, Workflows, Smart CTA’s, Video Marketing. Blog, Social Media, SEO, SEM, Mobile Marketing,

Por lo tanto, en base a su perfil de eficacia y seguridad, ofatumumab debe considerarse una alternativa de tratamiento para pacientes con EMRR o EMSP con enfermedad activa

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

• For patients with severe asthma and who are on oral corticosteroids or for patients with severe asthma and co-morbid moderate-to-severe atopic dermatitis or adults with

Administration of darolutamide (600 mg twice daily for 5 days) prior to co-administration of a single dose of rosuvastatin (5 mg) together with food resulted in approximately