Un protocolo es un conjunto de reglas y acuerdos que los computadores y dispositivos deben seguir para que puedan comunicarse entre ellos. Más concretamente, un protocolo de señalización es el que se encarga de gestionar los mensajes y procedimientos utilizados para establecer una comunicación.
Para VoIP existen varios protocolos de señalización, tales como, H323, MGCP, SCCP, SIP y IAX2. Sin embargo, los tres protocolos más extendidos son SIP, IAX2, y H323.
Aunque H323 ha estado muy extendido, ha sido muy utilizado y ha sido el que ha permitido el despegue de la VoIP, existiendo gran variedad de hardware que lo soporta, hoy en día, esta en desuso, ya que uno de los objetivos de SIP era solucionar los problemas que existían en H323, por lo que SIP a desbancado a H323.
Básicamente H323 es un protocolo cliente-servidor en el que básicamente intervienen dos tipos de señalización: Señalización de control de llamada (H225) y Señalización de control de canal (H245), la primera se encarga del registro y localización y la segunda del establecimiento de llamadas.
Respecto a MGCP (Media Gateway Control Protocol), es un protocolo del tipo cliente-servidor, y ya ha quedado obsoleto, aunque IAX2 a adoptado parte de su estructura de funcionamiento.
SCCP (Skinny Client Control Protocol), es un protocolo propietario de Cisco, basado en un modelo cliente servidor que deja toda la inteligencia en manos del servidor, llamado “call manager”, este protocolo se encuentra en activo en muchas corporaciones debido a la garantía y respaldo que Cisco proporciona, aunque es un sistema caro por ser propietario, ya existen interfaces que permiten su conexión a sistema de software libre como Asterisk.
Vamos a continuación a ver más detalladamente los dos más importantes que son además los que vamos a utilizar en nuestra implementación: SIP y IAX2.
a) SIP (Session Initiation Protocol)
Este protocolo está mas integrado con las aplicaciones y servicios de Internet, posee mayor flexibilidad para incorporar nuevas funciones y su implementación es mucho más simple que H323, incluso es parecido a los protocolos HTTP y SMTP.
Las aplicaciones SIP usan el puerto 5060 con UDP (User Datagram Protocol) o TCP (Transmission Control Protocol), para información de señalización y normalmente el rango de puertos de 10000 a 20000, para la transmisión de la voz mediante RTP, más concretamente se usan dos puertos por canal de comunicación.
SIP se ha propuesto como sistema genérico para el soporte de mecanismo de señalizaciones de servicio de telefonía IP. SIP soporta cinco elementos funcionales para el establecimiento y terminación de comunicaciones multimedia:
➢ Localización de Usuarios.
➢ Intercambio y negociación de capacidades de los terminales.
➢ Disponibilidad de Usuarios.
➢ Establecimiento de llamadas.
➢ Mantenimiento de llamadas.
SIP es un protocolo basado en el modelo cliente-servidor. Los clientes SIP envían peticiones aun servidor, el cual una vez procesada contesta con una respuesta. Los terminales SIP, también pueden establecer llamadas de voz directamente sin la intervención de elementos intermedios, al igual que en el caso de H323, funcionando como “peers independientes”.
SIP se estructura con los siguientes componentes:
1. AGENTES DE LLAMADA: Existen dos tipos de Agentes:
➢ User Agent Client (UAC): funciona como cliente iniciando peticiones SIP.
➢ User Agent Server (UAS): funciona como servidor contactando al usuariocuando una petición SIP es recibida, y retornando una respuesta a favor del usuario.
Estos agentes realizan las siguientes acciones:
➢ Localizar a un usuario mediante la redirección de la llamada.
➢ Implementar servicios de redirección como reenvío si no hay respuesta.
➢ Implementar filtrado de llamadas en función de su origen o destino.
➢ Almacenar información de administración de llamadas.
Las workstations, IPphones, gateways telefónicos, call agents, entre otros, son dispositivos que tienen funcionalidades de User Agents dentro de una red SIP.
2. SERVIDORES: Existen tres tipos de servidores, que pueden estar separados o realizar varias funciones.
Servidor Proxy: Se encarga de encaminar peticiones/respuestas hacia el destino final. El encaminamiento se realiza salto a salto de un servidor a otro hasta alcanzar el destino final. Un servidor proxy es una entidad intermediaria en una red SIP que es responsable de reenviar peticiones SIP a un UAS (User Agent Server) de destino o a otro servidor proxy en nombre de otro UAC (User Agent Client). El servidor proxy también interpreta y si es necesario, reescribe partes de los mensajes de petición antes de reenviarlos. También se asegura de poner en funcionamiento las políticas en la red, tales como autenticar a un usuario antes de darle servicio.
Servidor de redirección: Equivalente al servidor proxy, pero a diferencia de este no contesta a la llamada, sino que indica como contactar el destino buscado. Un redirect server, es un UAS (User Agent Server) que se encarga de redireccionar las transacciones SIP generadas por un UAC. Para esto genera respuestas a peticiones SIP con código 300 (mensajes de redirección), dirigiendo al UAS a contactar a un grupo alternativo.
Servidor de registro: Mantiene la localización actual de un usuario. Se utiliza para que los terminales registren la localización en la que se encuentran, facilitando la movilidad del usuario.
[rev_slider captions]
[rev_slider ServerVoip]
Como ya hemos comentado, SIP esta basado en arquitectura cliente/servidor similar al HTTP, con el que comparte muchos códigos de estado y sigue una estructura de petición-respuesta; estas peticiones son generadas por un cliente y enviadas a un servidor, que las procesa y devuelve la respuesta al cliente. El par petición-respuesta recibe el nombre de transacción. Al igual que el protocolo HTTP, SIP proporciona un conjunto de solicitudes y respuestas basadas en códigos, todas ellas recogidas en la RFC 3261.
El protocolo SIP define principalmente seis tipos de solicitudes o peticiones:
➢ INVITE: establece una sesión.
➢ ACK: confirma una solicitud INVITE.
➢ BYE: finaliza una sesión.
➢ CANCEL: cancela el establecimiento de una sesión.
➢ REGISTER: comunica la localización de usuario (nombre de equipo, IP).
➢ OPTIONS: da información sobre las capacidades de envío y recepción.
y seis clases de respuestas:
➢ 1xx: respuestas informativas, como 180, que significa teléfono sonando (ringing).
➢ 2xx: respuestas de éxito.
➢ 3xx: respuestas de redirección.
➢ 4xx: errores de solicitud.
➢ 5xx: errores de servidor.
➢ 6xx: errores globales.
REGISTER.
2. El servidor requiere autentificación (401 unathorized)
3. Se envía la información de registro.
4. Se acepta el registro (200 OK)
5. Se envía la información de registro
6. Y el confirma que se ha recibido.
Una vez que el agente se ha registrado en el servidor, este tiene su información para poder localizarlo y poder redirigir llamadas hacia él. Una vez registrado ya es posible establecer una comunicación con ese agente.
1. El teléfono llamante envía un INVITE.
2. Se solicita autenticación mediante la respuesta 407 (407 Autenticación Proxy Requerida).
3. El teléfono llamante responde con un ACK confirmado.
4. El teléfono al que se llama envía una respuesta informativa 100 (tratando).
5. Cuando el teléfono llamado empieza a sonar envía una respuesta 180 (teléfono sonando).
6. Cuando el receptor descuelga, el teléfono al que se llama envía una respuesta 200 (OK).
7. El teléfono llamante responde con un ACK confirmado.
8. Ahora la voz es transmitida como datos usando RTP.
9. Cuando la persona a la que se llama cuelga, BYE es enviado al teléfono llamante.
10. El teléfono llamante responde con un 200 (OK).
b) IAX (Inter-Asterisk eXchange protocol)
Este protocolo es utilizado para manejar conexiones VoIP ya sea entre servidores Asterisk, o entre servidores y clientes. El protocolo IAX ahora se refiere generalmente al IAX2, la segunda versión del protocolo IAX2.
IAX2 fue creado y estandarizado en Enero de 2004 por Mark Spencer y su empresa Digium, la creadora de Asterisk, y es creado para y por Asterisk. Y surge también, para corregir algunos de los problemas principales del protocolo SIP, estos objetivos son:
✔ Minimizar el ancho de banda usado en las transmisiones de control y multimedia.
✔ Cambiar de protocolo de texto a protocolo binario. Pequeñas cabeceras y bajo consumo de ancho de banda.
✔ Evitar problemas de NAT (Network Address Translation). IAX2 usa UDP sobre un único puerto, el 4569, donde viajan la información de señalización y datos.
✔ Soporte para transmitir planes de marcación (dialplans).
c) SIP Vs. IAX – Comparativa
Las principales diferencias ente IAX y SIP son las siguientes:
•Ancho de banda : IAX utiliza un menor ancho de banda que SIP ya que los mensajes son codificados de forma binaria mientras que en SIP son mensajes de texto. Asimismo, IAX intenta reducir al máximo la información de las cabeceras de los mensajes reduciendo también el ancho de banda necesario.
•NAT : En IAX la señalización y los datos viajan conjuntamente con lo cual se evitan los problemas de NAT que frecuentemente aparecen en SIP. En SIP la señalización y los datos viajan de manera separada y por eso aparecen problemas de NAT en el flujo de audio cuando este flujo debe superar los routers y firewalls. SIP suele necesitar un servidor STUN para estos problemas.
• Estandarización y Uso : SIP es un protocolo estandarizado por la IETF hace bastante tiempo y que es ampliamente implementado por todos los fabricantes de equipos y software. IAX está aun siendo estandarizado y es por ello que no se encuentra en muchos dispositivos existentes en el mercado.
• Utilización de puertos : IAX utiliza un solo puerto (4569) para mandar la información de señalización y los datos de todas sus llamadas. Para ello utiliza un mecanismo de multiplexación o «trunking». SIP, sin embargo utiliza un puerto (5060) para señalización y 2 puertos RTP por cada conexión de audio (como mínimo 3 puertos). Por ejemplo para 100 llamadas simultaneas con SIP se usarían 200 puertos (RTP) más el puerto 5060 de señalización. IAX utilizaría sólo un puerto para todo (4569).
• Flujo de audio al utilizar un servidor : En SIP si utilizamos un servidor la señalización de control pasa siempre por el servidor pero la información de audio (flujo RTP) puede viajar extremo a extremo sin tener que pasar necesariamente por el servidor SIP. En IAX al viajar la señalización y los datos de forma conjunta todo el tráfico de audio debe pasar obligatoriamente por el servidor IAX. Esto produce una aumento en el uso del ancho de banda que deben soportar los servidores IAX sobretodo cuando hay muchas llamadas simultaneas.
• Otras funcionalidades: IAX es un protocolo pensado para VoIP y transmisión de vídeo y presenta funcionalidades interesantes como la posibilidad de enviar o recibir planes de marcado (dialplans) que resultan muy útiles usados junto con servidores Asterisk. SIP es un protocolo de propósito general y podría transmitir sin dificultad cualquier información y no solo audio y vídeo, pero no funciona de manera tan optima como lo hace IAX2.
Tomado de:
Sierra, A. (2008). Instalación de un sistema VoIP corporativo basado en Asterisk (Proyecto fin de Master). Universidad Politécnica de Cartajena, Murcia, España.
Fuente:
http://repositorio.upct.es/bitstream/handle/10317/737/pfm35.pdf;jsessionid=951D111758801A0375EA20D3195A6313?sequence=1
Contactos
Obtén respuestas sobre tu Empresa Voip. Habla con un asesor especializado para despejar tus inquietudes.
ServerVoIP te proporciona todas las herramientas necesarias para que crees y desarrolles tu negocio de comunicación por internet.
Pertenece al Selecto Grupo de Emprendedores que decidieron cambiar su vida invirtiendo en un Server con ServerVoIP.
ServerVoip presenta el mejor server fisico dedicado para telefonia voip que incluye el software de telefonía ip «VoipSwitch» especial para voz sobre ip.
VoipSwitch es la plataforma ideal para que sin necesidad de conocimientos técnicos crees tu propia empresa de Telefonía IP VoIP y encuentres una forma de ganar DINERO en la red siendo carrier de telefonía sobre Ip (Voip).
Te brindamos todas las herramientas para que estés al nivel de las grandes empresas y negocios; puedas obsequiar llamadas gratis como estrategia de marketing en fidelización a tus clientes / free entre tus clientes; el servidor VoIP te permite utilizar múltiples proveedores como nosotros tenemos www.alosip.com. (carrier / routes) para un mismo destino, vender terminación (wholesale), clientes finales (retail), etc.
El software te proporciona todo lo que necesitas; sistema llave en mano: para crear tu empresa de telefonía IP (VoIP) bajo tu propio nombre o marca. Más información en marcaBlanca.servervoip.com
Para que CREES y DESARROLLES tu propia empresa de telefonia por internet, revisa más detalles en VoIPSwitch
¿Quieres Emprender por Internet?
«Ahora Trabajar desde la Comodidad de tu Casa y Ganar Dinero por Internet… Nunca Había Sido tan Fácil, Rápido y con RESULTADOS Impresionantes»
Descubre el NEGOCIO Perfecto y conviértete en un EMPRESARIO de Éxito creando y desarrollando tu Propia Empresa de Telefonía por Internet. Suscríbete y RECIBE FREE: