Protocolo SIP: Mecanismos, Entidades y Procedimientos de Señalización en Telefonía IP

1. Protocolo SIP

a) ¿Dispone o no de mecanismos de fiabilidad y seguridad? En caso de ser así, ¿de qué manera? Argumente la respuesta.

Sí, dispone de ambos:

  • Mecanismos de fiabilidad: Basados en temporizadores, retransmisiones y ACK.
  • Mecanismos de seguridad: Basados en autenticación, confidencialidad e integridad (TLS, SSL, etc.).

b) ¿Qué tipo de contenidos admite en el cuerpo de sus mensajes?

Admite cualquier sintaxis en el cuerpo de los mensajes.

c) ¿Sobre qué protocolo específico está obligado a ejecutarse? Argumente la respuesta.

Puede ejecutarse sobre UDP, TCP, SCTP, IP, ATM, etc.

  • Puerto por defecto 5060 para UDP, TCP, SCTP (Stream Control Transmission Protocol).
  • Puerto por defecto 5061 para TLS.

No se define ninguno específico obligatoriamente; solo aparece subrayado UDP. Se entiende que este es el mínimo obligatorio para permitir el envío y recepción de mensajes SIP.

d) ¿Cuáles son y qué indican cada uno de los tipos de mensajes de respuesta de este protocolo?

Respuestas provisionales (no finalizan la transacción SIP):

  • 1XX: Informativo. Indica que la solicitud se está procesando y que aún no se ha completado.

Respuestas finales (finalizan la transacción SIP):

  • 2XX: Solicitud exitosa. Ha sido comprendida y aceptada.
  • 3XX: Redireccionado. Otras acciones deben desarrollarse para completar la solicitud.
  • 4XX: Error del cliente. La solicitud es inadecuada o el servidor no puede resolverla.
  • 5XX: Error del servidor. El servidor no puede resolver una solicitud aparentemente válida. Procede reintento.
  • 6XX: Fallo global. La solicitud no puede ser resuelta. No procede reintento.

e) ¿Cuáles de sus mensajes finalizan una transacción?

Las respuestas finales (2XX, 3XX, 4XX, 5XX, 6XX).

f) ¿En qué circunstancia está presente una transacción ACK?

Para confirmar la recepción de una respuesta final a una solicitud INVITE.

g) ¿La lógica SIP obliga a que todos los mensajes de solicitud sean reconocidos/asentidos? Argumente la respuesta.

Toda solicitud debe ser confirmada con la correspondiente respuesta, excepto el método ACK.

h) ¿Para qué la lógica SIP utiliza los contenidos de las cabeceras From, To, Call-ID, CSeq, Via en los mensajes del protocolo?

  • From: Identifica al usuario emisor origen de la solicitud.
  • To: Identifica al usuario receptor destino de la solicitud (excepto en el mensaje REGISTER).
  • Call-ID: Identifica una sesión/llamada de manera global y unívoca.
  • CSeq: Identifica cada solicitud dentro de un diálogo.
  • Via: Permite identificar el origen de la solicitud y registrar la ruta que sigue hasta el UAS (User Agent Server).

2. Redes SIP

a) ¿Cuáles son las entidades funcionales que gestionan la señalización para proveer un servicio de telefonía IP equivalente al servicio telefónico? ¿Cómo interviene, de qué manera, cada una de dichas entidades funcionales?

Agentes de Usuario SIP (UA):

Software de comunicación SIP entre sistemas finales. Actúan como clientes (User Agent Client – UAC) para iniciar llamadas y como servidores (User Agent Server – UAS) para responderlas. La señalización puede ser directa o a través de servidores SIP.

Servidores SIP:

Son servidores de señalización (opcionales). Actúan como facilitadores de la comunicación entre UA mediante la utilización combinada del modelo cliente-servidor. Sus funciones incluyen:

  • Registro de usuarios.
  • Localización de usuarios.
  • Encaminamiento y redireccionamiento de la señalización.
  • Desacople entre direcciones de usuario y direcciones de red.
  • Movilidad de usuarios y terminales.

Servidores de Aplicaciones SIP:

Contienen la lógica o datos para determinados servicios/aplicaciones. Equivalen, de cierta manera, a la infraestructura de servicios inteligentes asociada a la red telefónica.

Pasarelas SIP (Gateways):

Manejan la interconexión con redes y servicios no SIP. Manejan medios y señalización, como:

  • Pasarelas SIP-H.323.
  • Pasarelas SIP-PSTN (para la interconexión con redes fijas).
  • Pasarelas SIP-PLMN (para la interconexión con redes móviles).

b) ¿Por qué se plantea que la no utilización de servidores SIP (modelo de llamada directa entre UA) imposibilita ofrecer un servicio de telefonía IP de carácter público? Argumente la respuesta.

El servidor SIP es el encargado de proveer mecanismos de localización de usuarios y nodos SIP. Sin ellos, es imposible proveer estos servicios, limitando su uso a pequeñas redes LAN corporativas. Requiere que el UA llamante conozca la dirección IP del UA llamado.

3. Conceptos de Transacción, Diálogo y Sesión en SIP

a) Defina cada uno de estos tres conceptos.

  • Transacción SIP: Solicitud y respuesta/s relacionada/s entre dos entidades SIP.
  • Diálogo SIP: Relación peer-to-peer entre dos UA que persiste por algún tiempo. Es el marco en el que se intercambian e interpretan los mensajes SIP. Comprende una o más transacciones SIP.
  • Sesión SIP: Comprende uno o más diálogos SIP entre dos o más UA.

b) ¿Cómo se identifica cada uno, a partir de qué elementos?

  • Transacción: Tiene identificación propia. Se compone de la Solicitud + [Respuesta/s provisional/es] + Respuesta final.
  • Diálogo: Tiene identificación propia mediante un identificador de diálogo (DialogID), compuesto por el Call-ID, el From tag y el To tag.
  • Sesión SIP: Tiene identificación propia mediante un identificador de sesión/llamada (Call-ID).

4. El SIP-URI

a) ¿Qué es?

Es la dirección de usuario, servicio o recurso SIP.

b) ¿Qué indica en un mensaje SIP según en qué parte de este se encuentre?

Indica, en relación con una solicitud:

  • Origen: Como valor de la cabecera From.
  • Destino final: Como valor de la cabecera To.
  • Origen o destino de redireccionado: Como valor de la cabecera Contact.
  • Destino actual o final: Como valor del campo Request-URI de la línea de solicitud. Indica el destino actual para el procedimiento strict-routing o el destino final para el procedimiento loose routing.

5. Uso de la Cabecera Contact en Mensajes SIP

¿Qué mensajes SIP pueden contener una o varias cabeceras Contact? En cada caso (tipo de mensaje) exponga para qué la lógica SIP utiliza el valor de esta cabecera, ¿qué le indica a la lógica SIP?

  • En mensajes REGISTER: Indica el/los SIP-URI alternativo/s donde puede ser contactado el registrante.
  • En mensajes 3XX (Redireccionamiento): Indica la/s dirección/es alternativa/s a donde reenviar la solicitud.

6. Optimización de Señalización: Evitando Proxies mediante Contact

¿Es correcto plantear que la cabecera Contact en determinados mensajes posibilita saltarse u obviar los servidores proxy en el trayecto de la señalización SIP? ¿Cuándo esto es posible y en qué mensaje/s concreto/s debe estar esta cabecera y con qué valor?

Sí, en mensajes de solicitud/respuesta de apertura de un diálogo SIP.

  • Indica el SIP-URI donde UAC/UAS acepta también recibir las siguientes solicitudes del diálogo.
  • En principio, habilita a los UA para saltarse los servidores proxy.

7. Cabeceras Clave para la Ruta de Señalización

a) Explique y argumente qué cabeceras de mensajes SIP permiten que todos los mensajes de una transacción sigan la misma ruta de señalización.

La identificación de transacciones SIP se logra mediante:

  • El nombre del método (mensaje de solicitud) que la origina.
  • Los valores comunes de la cabecera CSeq en los mensajes que la componen. El valor de la cabecera CSeq debe ser diferente para las distintas solicitudes de un mismo diálogo.

b) Explique y argumente qué cabeceras de mensajes SIP permiten que todos los mensajes de un diálogo sigan la misma ruta de señalización.

Las cabeceras Call-ID, From tag y To tag identifican el diálogo SIP y sirven para identificar unívocamente un diálogo dentro de una sesión SIP.

8. Contenido y Procesamiento del Cuerpo de los Mensajes SIP

a) ¿Qué entidades SIP procesan normalmente su contenido?

El contenido es end-to-end, de interés solo para los Agentes de Usuario (UA) y no para los servidores SIP. Los servidores SIP solo necesitan conocer el contenido de la línea de inicio y el valor de algunas cabeceras de mensajes.

b) ¿Qué información porta y en qué mensajes concretos normalmente?

Contiene, en texto claro o cifrado:

  • Descripción de la sesión relativa a medios con SDP (Session Description Protocol), generalmente en transacciones INVITE. Esto incluye el tipo de medio (audio/vídeo), códecs, puertos y direcciones IP para RTP, etc.
  • Cualquier otro contenido no específico de SIP, de interés para UA u otras entidades (en texto plano, texto HTML, etc.).

c) ¿En qué tipo de transacción se suele utilizar y para qué el protocolo SDP?

El SDP se utiliza para la descripción de la sesión relativa a medios (audio/video) en las siguientes transacciones:

  • Establecimiento de llamada: Transacción INVITE y ACK.
  • Finalización de llamada: Transacción BYE.
  • Establecimiento fallido de llamada: Transacción INVITE.

9. Uso Específico del Protocolo SDP

¿En qué tipo de transacción SIP se suele utilizar y para qué el protocolo SDP?

Se suele emplear en la transacción INVITE, utilizándose para la descripción de la sesión relativa a medios (audio/video).

10. Procedimiento de Registro en Redes SIP

a) ¿Para qué se requiere?

Para registrar la ubicación actual de un usuario en servidores de localización por intermedio de un servidor de registro.

b) ¿A través de qué mensaje/s y por intermedio de qué entidades funcionales se lleva a cabo?

Se lleva a cabo mediante el mensaje REGISTER, asociando el identificador SIP de usuario (SIP-URI) con la dirección donde puede ser contactado (IP, puerto, protocolo de transporte).

c) ¿Es posible como resultado de este procedimiento establecer la ruta de señalización para las llamadas dirigidas a usuarios registrados en un dominio SIP? Argumente/explique la respuesta.

Sí, ya que cada proxy que reenvía el mensaje REGISTER añade una cabecera Path con su propio SIP-URI (si desea permanecer en la ruta de señalización hacia el UA).

11. Procedimiento de Redireccionamiento en Redes SIP

a) ¿Cuándo se desarrolla?

Se desarrolla cuando un servidor SIP responde a un INVITE con un mensaje 3XX.

b) ¿Para qué es utilizado?

Se utiliza como mecanismo de escalabilidad en grandes redes SIP y cuando el SIP-URI destino de la solicitud INVITE ha cambiado temporal o permanentemente, pertenece a otro dominio SIP o tiene asociadas diferentes direcciones.

c) ¿Mediante qué mensaje/s se desarrolla?

Se desarrolla mediante mensajes de respuesta 3XX, especialmente: 300, 301, 302, 305, 380.

d) ¿Qué cabecera de mensaje está particularmente ligada a este procedimiento?

La cabecera Contact.

12. Procedimiento de Intermediación en Redes SIP

a) ¿Para qué se requiere y mediante qué entidades SIP se lleva a cabo?

Se requiere para el encaminamiento de señalización a través de uno o varios Proxy SIP. Se lleva a cabo mediante servidores Proxy SIP.

b) ¿En qué se diferencian los servidores proxy sin estado y con estado? Exponga posibilidades del segundo respecto al primero.

  • Un Proxy sin estado solo reencamina y reenvía mensajes.
  • Un Proxy con estado, además, mantiene información de estado respecto a las transacciones SIP. Puede gestionar aspectos de las transacciones, generar registros de llamadas, seleccionar rutas y distribuir la carga de tráfico.

13. Señalización Directa entre UA mediante Contact

¿Cómo y cuándo, con la utilización de la información contenida en cabeceras Contact, es posible que dos UA puedan señalizar de manera directa sin la mediación de servidores SIP?

La cabecera Contact, como mecanismo de optimización, habilita la señalización directa entre UA obviando los servidores proxy. Para ello, la cabecera Contact en el mensaje de solicitud desde el UAC indica al UAS que puede responder directamente al SIP-URI contenido en dicha cabecera.

Lo pueden utilizar cuando los servidores proxy no indican permanecer en el trayecto de señalización SIP para las siguientes solicitudes. Los UA pueden señalizar de manera directa una vez que ambos disponen de la dirección del otro.

14. Mantenimiento de la Ruta de Diálogo

¿A través de qué cabeceras es posible que todos los mensajes de un diálogo SIP sigan la misma ruta de señalización entre un par de UA? Explique cuál es la operativa de cada entidad SIP involucrada que permite esto.

Mediante las cabeceras Record-Route y Route.

  • La cabecera Record-Route: La agrega cada proxy que requiere permanecer en el trayecto de señalización. El UAS recibe el mensaje de solicitud con una lista de cabeceras Record-Route y copia esta lista en la respuesta, de modo que el UAC también dispone de ellas.
  • La cabecera Route: Encaminará subsiguientes solicitudes por la misma ruta que la solicitud que inició el diálogo. Para las siguientes solicitudes, tanto el UAC como el UAS incorporan una lista de cabeceras Route basada en la lista Record-Route recibida.

15. Establecimiento Explícito de la Ruta de Señalización

¿A través de qué cabecera de mensajes es posible que la lógica de operación SIP indique de manera explícita a una entidad SIP la ruta de señalización hacia un UA? Explique cómo es la operativa SIP que posibilita esto.

Se realiza a través de la cabecera Path. La operativa es la siguiente:

  1. Un UA se registra. El servidor de registro recibe el mensaje REGISTER con una lista de cabeceras Path.
  2. El servidor de registro asocia la lista de cabeceras Path al SIP-URI del UA objeto de registro.
  3. Cuando el servidor de localización es consultado, devuelve la dirección actual del usuario más la lista de cabeceras Path.
  4. La entidad SIP que consulta al servidor de localización utiliza los valores de la lista de cabeceras Path recibida para conformar la lista de cabeceras Route, la cual indica la ruta de señalización hacia el UA.

16. Servidores Outbound Proxy e Incoming Proxy

a) ¿Cómo los define usted atendiendo el papel que desempeñan en la señalización SIP?

  • El Outbound Proxy es un servidor que recibe las solicitudes de un UAC y se encarga de reenviarlas al destino de dicha solicitud. El destino puede ser de su mismo dominio (dirección de un proxy o un UA) o de otro dominio, en cuyo caso la reenvía a un Incoming Proxy.
  • El Incoming Proxy es el servidor perteneciente al dominio SIP destino, el cual se encarga de reenviar la solicitud que ha recibido al UAS.

b) ¿Cómo la lógica SIP obtiene, mediante qué procedimiento, las direcciones IP de estos proxies?

  • La dirección del Outbound Proxy puede obtenerse mediante la cabecera Service-Route, o mediante configuración manual o automática del UA con DHCP y DNS.
  • Para conocer la dirección del Incoming Proxy, el Outbound Proxy consulta el servicio DNS.

c) ¿Están obligados SIEMPRE a permanecer en la ruta de señalización SIP entre un par de UA una vez establecida una sesión/llamada? Argumente la respuesta.

No, ya que para garantizar que toda la señalización SIP se encamine a través de estos proxies, se emplea la cabecera Record-Route (para que permanezcan en el diálogo) y esta es opcional.

17. Encaminamiento de INVITE por el Outbound Proxy

Explique cómo procede la lógica de un outbound proxy para reenviar un mensaje INVITE en función del dominio SIP destino del mensaje.

  • Destino en el propio dominio: Cuando un Outbound Proxy recibe una solicitud INVITE destinada a un UA del propio dominio, el proxy consulta el servicio de localización de su propio dominio y recibe la dirección a donde reenviar la solicitud.
  • Destino en otro dominio: Si la solicitud INVITE tiene como destino un UA de otro dominio, el Outbound Proxy requiere la dirección de un Incoming Proxy en el dominio destino, la cual obtiene consultando el servicio DNS.

18. Entidades Involucradas en el Encaminamiento de INVITE

¿Por intermedio de qué entidades (SIP y no SIP) se obtiene información para encaminar una solicitud INVITE hacia un UA llamado?

Las entidades que intervienen son:

  • Entidades SIP: UAC, UAS y Servidores Proxy.
  • Entidades No SIP: Bases de datos (servicios de localización) y DNS.

19. Determinación de la Ruta Interna por Registro

¿Es posible que la información correspondiente al registro de un usuario (en un servidor de localización) determine la ruta de señalización (proxy intermedios) hacia dicho usuario en el contexto de su propio dominio SIP? Argumente/explique la respuesta.

Sí, ya que cuando un servidor de localización es consultado en relación a un usuario registrado, este devuelve la dirección actual del usuario, más la lista de cabeceras Path asociadas a dicho registro. Estas cabeceras son empleadas por una entidad SIP para conformar la lista de cabeceras Route, que indica la ruta de señalización hacia el UA dentro del dominio.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.