• No se han encontrado resultados

4   Materiales y Métodos 99

4.3   Diseño y desarrollo de arquitectura IMS y servicios habilitadores 107

4.3.2   Protocolos 111

IETF [160], que se pueden diferenciar en tres grandes grupos:   Autenticación, Autorización y Contabilización (Authentication, Authorization and  Accounting, AAA): ofrece garantías para el establecimiento de una comunicación  segura entre el usuario y sus servicios empleando el protocolo “Diameter” [161]. 

Señalización: El control de la sesión es soportado por los protocolos Session  Initiation Protocol (SIP) [162] y Session Description Protocolo (SDP) [163]. La  señalización de IMS se realiza mediante el protocolo SIP, que permite el control  de sesión, un control dinámico del tráfico multimedia en las sesiones mediante  SDP, y negociación de QoS.  

Transporte de multimedia: Además de los protocolos SIP y SDP, IMS emplea  otros protocolos estándar de Internet para la provisión de servicios multimedia,  como: RTP (Real Time Protocol) [164], RTCP (Real Time Control Protocol) [165] o  H.323 para el transporte de flujos IP multimedia en el plano de usuario, RSVP  (Resource Servation Protocol) [166] y DiffServ para asegurar la QoS extremo a  extremo, etc. 

4.3.2.1 SIP:SessionInitiationProtocol

Session  Initiation  Protocol  (SIP),  es  un  protocolo  de  señalización  que  permite 

establecer, mantener, modificar y finalizar sesiones multimedia en una red IP. El  funcionamiento de SIP se basa en Hyper Text Transfer Protocol (HTTP) [167][168] y 

Simple Management Protocol (SNMP) [169][170] permitiendo que la comunicación se 

realice mediante solicitudes o peticiones (requests) y respuestas (responses) entre  cliente y servidor. SIP no es un protocolo que se integre de manera vertical pudiendo  trabajar así con otros protocolos como: Real Time Protocol (RTP), Session Description  Protocol (SDP), H.323, etc. Los mensajes SIP se agrupan en transacciones que engloban  una petición y todas las respuestas a la misma (una petición puede estar seguida por  más de una respuesta). Estos mensajes SIP se transportan mediante protocolo UDP  (User Datagram Protocol) o TCP (Transmission Control Protocol). 

4.3.2.1.1 Agentes SIP

En el protocolo SIP se definen varios tipos de agentes como aquellas entidades que  participan en la creación, envío y recepción de mensajes SIP: 

User Agent (UA): Un UA es un dispositivo final que soporta la señalización SIP y  es capaz de establecer sesiones multimedia. 

Presence Agent (PA): Un PA es una entidad capaz de recibir peticiones de  suscripción y generar notificaciones de eventos SIP.  

Back to Back User Agent (B2BUA): Un B2BUA es un agente SIP que recibe una  petición (request),  la modifica y reenvía posteriormente como una petición  nueva.  

4.3.2.1.2 Servidores SIP

Son servidores que aceptan peticiones SIP y dan respuestas a ellas. Podemos distinguir  varios tipos de servidores SIP: 

Proxy SIP Servers: reciben peticiones SIP de un UA o de otro proxy y actúan de  parte del UA reenviando o respondiendo a la petición. 

Redirect Server: Se tratan de entidades que re‐direccionan mensajes SIP pero no  tienen capacidad de reenvío  

Register  Server:  Es  un  servidor  que  acepta mensajes  SIP  REGISTER  de  los  usuarios que se quieren registrar en la red, en este caso red IMS 

4.3.2.1.3 Mensajes SIP

A  continuación  se  expone  con  más  detalle  el  contenido  de  los  mensajes  SIP  diferenciándolos entre peticiones y respuestas. 

4.3.2.1.3.1 Peticiones (Requests)

Son  mensajes  en  los  que  el  receptor  llevará  a  cabo  una  determinada  acción.  Originalmente, en la especificación básica de SIP (RFC 3261), se definen 6 mensajes de  peticiones diferentes: 

INVITE: solicita la presencia de otra parte en una sesión y se emplea para  establecer sesiones multimedia entre dos o más agentes usuarios (UA). Permite  negociar los parámetros de la sesión, QoS y seguridad..  

ACK: confirma una nueva conexión y se envía para asentir respuestas finales a  una solicitud INVITE.  

OPTIONSpermite obtener información sobre las capacidades de un UA o un  servidor Proxy. 

REGISTEReste tipo de peticiones son enviadas específicamente a un servidor de  registro  para  añadir,  eliminar  o  consultar  información  de  ubicación  de  un  usuario. 

BYE: se utiliza para terminar una sesión previamente establecida. 

CANCELse emplea para cancelar una petición anterior.  

Más tarde aparecieron las extensiones de SIP que se encuentran definidas en las RFC  3262 [171], 3265 [172], 3311 [173], 3428 [174], 3515 [175], 3680 [176], 3856 [177] o  3903 [178], y que introducen siete nuevas peticiones:  

REFER: se emplea para transferir al UA receptor del mensaje hacia otro recurso  identificado. 

SUBSCRIBE: es utilizado cuando un UA solicita la recepción de avisos al ocurrir  determinados eventos en otro agente SIP. 

NOTIFYes utilizado por un UA para transmitir información sobre la ocurrencia  de  un  cierto  evento.  Las  peticiones NOTIFY  contienen  una  cabecera  Event  indicando el tipo de evento notificado. 

MESSAGE: permite el envío de mensajes instantáneos entre usuarios en tiempo 

real. Este mensaje SIP puede transportar varios tipos de contenidos basándose  en la codificación Multipurpose Internet Mail Extensions (MIME) [179]. 

UPDATE: es un método que se utiliza para cambiar el estado de una sesión sin  modificar el estado del diálogo, p.ej. silenciar la llamada o poner la llamada en  espera. 

INFOpermite enviar informaciones de señalización durante una llamada (dígitos  DTMF, tasación de una llamada, etc.). 

PRACK desempeña  el  mismo  rol  que  un  ACK  pero  solo  para  respuestas  provisionales. Al contrario que ACK, la petición PRACK tiene su propia respuesta. 

4.3.2.1.3.2 Respuestas (Responses)

Un mensaje SIP tipo “response” lo origina un agente SIP como respuesta a una petición  request. Existen seis grupos de “responses” que se listan en la Tabla 4. Los grupos o  clases de respuestas se identifican con un número de tres cifras, donde la primera nos  indica el grupo al que pertenecen.  

Rango  Significado  Descripción 

1XX  Información  Indica el estado de la llamada antes de que se complete 

2XX  Éxito  La solicitud se ha completado con éxito 

3XX  Redirección  El servidor ha cambiado de localización con lo que el 

cliente ha de dirigir la solicitud a otro servidor 

4XX  Error en el cliente  La solicitud ha fracasado por fallo en el cliente. El cliente 

puede intentar hacer otra solicitud 

5XX  Error en el servidor  La solicitud ha fracasado  por fallo en el servidor. La 

solicitud puede ser redirigida a otro servidor. 

6XX  Error global  Indica que el servidor sabe que la petición fallará allá 

donde  se  intente.  Como  consecuencia,  no  debería 

reintentarse a otras direcciones. 

Tabla 4: Identificación mensajes de respuesta SIP 

4.3.2.2 SDP:SessionDescriptionProtocol

SDP es un protocolo a nivel de aplicación cuyo fin es describir sesiones IP multimedia 

en tiempo real. En cada sesión ambos usuarios indican toda la información necesaria 

para establecer una sesión (capacidades de sus dispositivos, los protocolos multimedia  empleados  y  sus  puertos  de comunicación). Este  intercambio  de  información se  pueden realizar en el momento de la negociación de la sesión o cuando la sesión está  en curso. 

El uso de SDP en SIP se encuentra especificado en la RFC 4566 [163] y se trata de una  sintaxis de descripción de propiedades de sesión en forma de texto. Se incorpora  dentro del cuerpo de los mensajes SIP que establecen la sesión, como pueden ser  INVITE o ACK.  

4.3.2.3 Diameter

Diameter  es un  protocolo desarrollado  por  el  IETF  para  lograr  las  funciones  de  Authentication, Authorization and Accounting (AAA). En IMS es usado para garantizar  una comunicación y señalización segura entre algunos componentes de la arquitectura  IMS. También, es empleado para realizar conexiones AAA entre el S‐CSCF y el UE.