Señalización IP: Estos equipos interceptan todas las comunicaciones entre el teléfono SIP del cliente y el servidor SIP Proxy, examinan los paquetes de señalización SIP y modifican su contenido para que el teléfono SIP del otro extremo envíe los paquetes de voz RTP hacia el SBC. Al igual que hacen los servidores TURN, los SBC también realizan la función de relay retransmitiendo los paquetes de voz hacia el teléfono SIP a través del NAT ya que se aprovechan de que previamente ha habido una conexión saliente desde el teléfono SIP hacia el SBC.
Para poder establecer la llamada es imprescindible que funcione la fase de señalización y que luego circulen sin problemas los paquetes de voz.
El protocolo SIP (Session Initiation Protocol) permite el establecimiento de sesiones multimedia entre dos o más usuarios. Para hacerlo se vale del intercambio de mensajes entre las partes que quieren comunicarse.
El protocolo SIP define principalmente seis tipos de solicitudes:
» 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: comunica la información acerca de las capacidades de envío y recepción de teléfonos SIP.
y seis clases de respuestas:
» 1xx: respuestas informativas, tal como 180, la cual significa teléfono sonando.
» 2xx: respuestas de éxito.
» 3xx: respuestas de redirección.
» 4xx: errores de solicitud.
» 5xx: errores de servidor.
» 6xx: errores globales.
En una llamada SIP hay varias transacciones SIP. Una transacción SIP se realiza mediante un intercambio de mensajes entre un cliente y un servidor. Consta de varias peticiones y respuestas y para agruparlas en la misma transacción esta el parámetro CSeq.
Usuario A Proxy SIP Usuario B
Ilustración 2 intercambio de mensajes fuente: http://www.voipforo.com/SIP/SIPejemplo.php
• Las dos primeras transacciones corresponden al registro de los usuarios. Los usuarios deben registrarse para poder ser encontrados por otros usuarios. En este caso, los terminales envían una petición REGISTER, donde los campos from y to corresponden al usuario registrado. El servidor Proxy, que actúa como Register, consulta si el usuario puede ser autenticado y envía un mensaje de OK en caso positivo.
• La siguiente transacción corresponde a un establecimiento de sesión. Esta sesión consiste en una petición INVITE del usuario al proxy. Inmediatamente, el proxy envía un TRYING 100 para parar las retransmisiones y reenvía la petición al usuario B. El usuario B envía un Ringing 180 cuando el teléfono empieza a sonar y también es reenviado por el proxy hacia el usuario A. Por ultimo, el OK 200 corresponde a aceptar la llamada (el usuario B descuelga).
• En este momento la llamada está establecida, pasa a funcionar el protocolo de transporte RTP con los parámetros (puertos, direcciones, codecs, etc.) establecidos en la negociación mediante el protocolo SDP.
• La última transacción corresponde a una finalización de sesión. Esta finalización se lleva a cabo con una única petición BYE enviada al Proxy, y posteriormente reenviada al usuario B. Este usuario contesta con un OK 200 para confirmar que se ha recibido el mensaje final correctamente.
No hay comentarios.:
Publicar un comentario