El documento describe VoIP con calidad de servicio (QoS). Explica que VoIP divide el audio en paquetes para transmitirlo por una red IP, pero que esta red no garantiza la entrega ordenada ni los valores máximos de retardo. Por lo tanto, es necesario considerar parámetros críticos como el retardo, jitter y pérdida de paquetes para garantizar la QoS en VoIP. También describe la arquitectura de una red VoIP, incluyendo terminales, gateways y gatekeepers, así como los protocolos como RTP y SIP/H.323 neces
2. Introducción.
• VoIP, en términos simples, corresponde al proceso de
dividir audio o video en pequeños paquetes, transmitir
dichos paquetes sobre una red IP y reensamblarlos en el
extremo receptor, con el fin de lograr una comunicación
multimedial.
2
3. Introducción.
• Además, dado que la red IP está diseñada bajo una
filosofía de mejor esfuerzo, no garantiza la llegada en
orden de los paquetes, ni de valores máximos de retardo.
• Por esto, se hace imprescindible la utilización de
esquemas que garanticen cierto nivel de QoS.
• Y para garantizar QoS enVoIP, es necesario considerar
algunos parámetros críticos.
3
4. Parámetros de QoS enVoIP.
1. Retardo (Delay, Latency):
• El retardo se define como el tiempo que tarda un paquete
en llegar desde la fuente a su destino.
• Debiera ser inferior a 150[ms] (según ITU-T G.114), dado
que el oído humano es capaz de detectar latencias de unos
250[ms].
• Es la característica de QoS más exigente.
4
5. Parámetros de QoS enVoIP.
2. Jitter:
• Se define como la variación en el tiempo en la llegada de
los paquetes.
• Puede ser causada por congestión de red, pérdida de
sincronización o por las diferentes rutas seguidas por los
paquetes para llegar al destino.
• El jitter entre el punto inicial y final de la comunicación
debiera ser ser inferior a 100[ms].
5
6. Parámetros de QoS enVoIP.
2. Jitter:
• Para compensar el jitter se utilizan jitter buffers. En ellos se
almacenan los paquetes recibidos con “adelanto”y se van
sirviendo con un pequeño retraso. Los paquetes con “retraso”
se descartan.
• Si el jitter buffer es muy pequeño, se descartarán muchos
paquetes; si es muy grande, se agregará mucho retardo a la
comunicación. Por lo tanto, hay un compromiso. Usualmente el
retardo está entre 30 y 50[ms].
6
7. Parámetros de QoS enVoIP.
3. Pérdida de paquetes:
• Debido a que el protocolo UDP no es orientado a la
conexión, si existen pérdidas de paquetes, estos no se
reenvían. Además se deben considerar aquellas pérdidas
producidas por descarte.
• La tasa admitida enVoIP debe ser menor al 1%. Sin
embargo, este valor es fuertemente dependiente del
códec utilizado.
• Para minimizar este problema, se utiliza la técnica de
supresión de silencios.
7
8. Parámetros de QoS enVoIP.
• Si no es posible cumplir con dichos parámetros, aún se puede
tratar de evitar estos problemas, en forma preventiva.
• Para evitar o subsanar estos problemas existen variadas
soluciones, cuyas implementaciones dependen de muchos
factores, como le red en que serán implementados. Algunos de
ellos son:
• Reserva de recursos: Con esto se busca asegurar en BW a lo largo del
canal antes de que se curse la llamada. Sólo aplicable a redes
privadas, no a Internet.
• Priorización: Se marcan los paquetes con un valor de prioridad,
luego los routers deciden si pueden cumplir con la petición.
8
9. Parámetros de QoS enVoIP.
• Hasta el momento se han analizado los parámetros que
VoIP debe satisfacer para cumplir con cierta QoS.
• Pero para comprender mejor la naturaleza de esta
tecnología, a continuación se presentará su arquitectura.
9
10. Arquitectura deVoIP.
• Una red IP que entregue un servicio deVoIP, debe poseer
algunos componentes adicionales a los comúnmente usados.
• Estos componentes son fundamentalmente tres:
• Terminales: Son los sustitutos de los teléfonos actuales. Se
implementan tanto en hardware como en software.
• Gateways: Corresponden a la interfaz entre la red IP y la red de
telefonía tradicional.
• Gatekeepers: Las nuevas centrales telefónicas (PBX). Se
implementan usualmente en software.
10
11. Arquitectura deVoIP.
• Terminal:
Existen dos tipos de terminales usadas:
• Softphones:
• Se define como el software necesario para realizar una llamada
telefónica usando un computador ordinario. Se diseña para que
funcione como un teléfono tradicional.
• Estos, a su vez, se pueden subclasificar en:
1. Libre elección del proveedor: Se pueden configurar los servidores SIP
proxy o gatekeepers y elegir el proveedor deVoIP que más nos interese.
11
12. Arquitectura deVoIP.
2. Clientes preconfigurados: Son los programas que permiten hablar con
otros usuarios que tengan el mismo programa.
3. Programas tipo messenger conVoz: Los programas de chat de toda la
vida pero en los que actualmente puedes hablar también.
12
13. Arquitectura deVoIP.
• Terminal:
• Hardphones:
• Se define como el equipo físico usado para hacer llamadas en redes
VoIP.
• No necesitan un software o una conexión a un computador, sino que
se enchufan directamente al router y cursan las llamadas como en
una línea telefónica tradicional.
13
14. Arquitectura deVoIP.
• Gateway:
• Dispositivo que convierte llamadas de voz, en tiempo
real, entre la telefonía pública conmutada (PSTN) y
redes IP. Las funciones de una gateway IP incluyen
compresión/descompresión de voz, paquetización,
ruteado de llamadas y señalización de control. Puede,
además, incluir funciones de interfaz con
controladores externos, como Gatekeepers o Proxy,
sistemas de facturación y sistemas de control de red.
14
15. Arquitectura deVoIP.
• Gatekeeper:
• Entidad de control central que ejecuta las funciones de
gestión en una redVoIP o en aplicaciones multimedia
como conferencias de video. Los Gatekeepers proveen
inteligencia de red, incluyendo resolución de direcciones,
autorización, servicios de autenticación, gestión de CDRs
(Call Detail Record) y comunicación con la red. Los
Gatekeepers controlan el ancho de banda, proveen
compatibilidad entre sistemas y monitorizan la red para
servicios de ingeniería, control en tiempo real y balanceo
de carga.
15
16. Arquitectura deVoIP.
• En la figura se observan los
dispositivos antes mencionados.
• Nótese la interacción entre la red
de telefonía tradicional y la de
VoIP.
• La interfaz entre ambas la
componen los Gateways.
• Los Gatekeepers se encargan de
la administración de las llamadas.
16
17. Arquitectura deVoIP.
• Se ha visto la arquitectura que compone una red para
ofrecerVoIP. Además, se han señalado sus principales
componentes, y el rol que desempeñan dentro de
dicha arquitectura.
• Sin embargo, aun no se ha visto cómo se cursa una
llamadaVoIP sobre la red.
• A continuación se describe el proceso completo de
establecimiento de una llamada tipo.
17
18. Establecimiento de una llamada.
1. Un usuario disca un número de acceso a un servicio de telefonía sobre IP.
2. La llamada es ruteada a un conmutador de telefonía IP.
3. El gateway solicita al usuario que indique el número al que llamará. Este número es enviado al
gatekeeper.
4. El gatekeeper determina la dirección IP del destino, basado en el número de teléfono del
destino. Un paquete IP requiriendo información de status (disponibilidad) del gateway de
destino es enviado al gatekeeper del destino.
5. El gatekeeper de destino responde la solicitud, dando información de disponibilidad y la
dirección IP del gateway de destino. El gatekeeper de origen transfiere esta información al
gateway de origen.
18
19. Establecimiento de una llamada.
6. El gateway de origen establece un canal de comunicación con el gateway de destino. Este
canal es identificado por una variable de referencia de llamada (CRV), que será utilizada
durante toda la llamada para identificar los paquetes IP que corresponden a dicha
llamada.
7. El gateway de destino elige un troncal de salida para la PSTN y envía una señalización a la
red pública para que inicie una llamada con el número solicitado.
8. Si la llamada puede ser completada con éxito, un mensaje de señalización IP es enviado
por el gateway de destino al gatekeeper de destino y por éste al gatekeeper de origen.
Éste último señaliza al gateway de origen y a su vez, el gateway de origen encamina hacia
la PSTN de origen que el destino está siendo llamado (tono de llamada). Luego la
conversación es sostenida mediante los gateway’s.
19
20. Establecimiento de una llamada.
• Como se ha visto, los pasos para lograr una comunicación
exitosa requieren de la intervención de varios dispositivos
(gateways, gatekeepers, terminales, etc.).
• Pero para que dichos dispositivos puedan establecer y
mantener una llamada, se requieren los protocolos.
20
21. Protocolos enVoIP.
• El objetivo principal deVoIP, es la comunicación mutimedial (audio o video) entre dos
terminales (PC’s, teléfonos, etc.).
• Pero para ello, además del hardware descrito en la sección precedente, se hace
necesario, a nivel de software, el uso de protocolos de comunicación.
• Muchos protocolos intervienen en la generación, establecimiento y mantención de una
llamada, pero existen dos clases de ellos que son primordiales:
• Protocolo de transmisión de audio y video: El protocolo más ampliamente utilizado
actualmente en redesTCP/IP es el RTP (Real-timeTransport Protocol).
• Protocolo para encontrar y negociar parámetros con otro dispositivo remoto:También
llamados protocolos de señalización de llamada. Los dos más utilizados en transmisiones
VoIP en redes IP son: H.323 y SIP (Session Initiation Protocol).
• En términos simples, H.323/SIP es el encargado de ubicar al dispositivo remoto
llamado y establecer la comunicación, mientras que RTP debe ocuparse del
mantenimiento de dicha comunicación.
21
22. Protocolos enVoIP.
• RTP
• Protocolo de capa de aplicación.
• Definido en la RFC 3550.
• Especifica:
• Formato de la carga (payload) para los Codecs.
• Orden de los paquetes.
• Mecanismos de ayuda para solucionar delay y jitter.
• Si se desea agregar seguridad a la transmisión, se puede utilizar Secure RTP, que
provee encriptación, autenticación e integridad en cada paquete.
• A continuación se muestra un paquete tipo usado por RTP, con sus respectivos
campos.
22
23. Protocolos enVoIP.
• RTP
• RTP numero de versión (V - version
number): 2 bits. La versión definida por
la especificación actual es 2.
• Relleno (P - Padding): 1 bit. Si el bit del
relleno está colocado, hay uno o más
bytes al final del paquete que no es
parte de la carga útil. El byte más
último en el paquete indica el número
de bytes de relleno. El relleno es usado
por algunos algoritmos de encriptación.
• La extensión (X - Extension): 1 bit. Si el
bit de extensión está colocado,
entonces el encabezado fijo es seguido
por una extensión del encabezado. Este
mecanismo de la extensión posibilita
implementaciones para añadir
información al encabezado RTP.
23
24. Protocolos enVoIP.
• RTP
• Conteo CSRC (CC): 4 bits. El número
de identificadores CSRC que sigue el
encabezado fijo. Si la cuenta CSRC es
cero, entonces la fuente de
sincronización es la fuente de la
carga útil.
• El marcador (M - Marker): 1 bit. Un
bit de marcador definido por el perfil
particular de media.
• La carga útilType (PT): 7 bits. Un
índice en una tabla del perfiles de
media que describe el formato de
carga útil. Los mapeos de carga útil
para audio y video están
especificados en el RFC 1890
24
25. Protocolos enVoIP.
• RTP
• El numeroTelefónico: 16 bits. Un
único número de paquete que
identifica la posición de este en la
secuencia de paquetes. El número
del paquete es incrementado en uno
para cada paquete enviado.
• Timestamp: 32 bits. Refleja el
instante de muestreo del primer byte
en la carga útil.Varios paquetes
consecutivos pueden tener el mismo
timestamp si son lógicamente
generados en el mismo tiempo - por
ejemplo, si son todo parte del mismo
frame de video.
25
26. Protocolos enVoIP.
• RTP
• SSRC: 32 bits. Identifica la fuente de
sincronización. Si la cuenta CSRC es
cero, entonces la fuente de carga útil
es la fuente de sincronización. Si la
cuenta CSRC es distinta a cero,
entonces el SSRC identifica el
mixer(mezclador).
• CSRC: 32 bits cada uno. Identifica las
fuentes contribuyentes para la carga
útil. El número de fuentes
contribuyentes está indicado por el
campo de la cuenta CSRC; Allí puede
haber más de 16 fuentes
contribuyentes. Si hay fuentes
contribuyentes múltiples, entonces
la carga útil son los datos mezclados
de esas fuentes.
26
27. Protocolos enVoIP.
• H.323
• Está compuesto de una familia de protocolos usados para realizar el
control de la llamada. Los más importantes son H.225 y H.245, que
configuran, administran y terminan la llamada.
• Básicamente, funciona así:
• Inicia la llamada hacia un punto terminal con H.225 a través de un puerto
TCP, con señalización Q.931.
• Una vez establecida la llamada, se inicia la administración, por parte del
H.245, por un canal diferente al usado por H.225, asignado dinámicamente
en los puertosTCP durante la fase H.225.
• Los canales para transporte de audio y video se designan también
dinámicamente, con un procedimiento H.245 llamado OpenLogicalChannel.
• Los mensajes más comunes de Q.931/Q.932 usados como mensajes de
señalización H.323 son:
27
28. Protocolos enVoIP.
• H.323
• Setup. Es enviado para iniciar una llamada H.323 para establecer una conexión
con una entidad H.323. Entre la información que contiene el mensaje se
encuentra la dirección IP, puerto y alias del llamante o la dirección IP y puerto
del llamado.
• - Call Proceeding. Enviado por el Gatekeeper a un terminal advirtiendo del
intento de establecer una llamada una vez analizado el número llamado.
• - Alerting. Indica el inicio de la fase de generación de tono.
• - Connect. Indica el comienzo de la conexión.
• - Release Complete. Enviado por el terminal para iniciar la desconexión.
• - Facility. Es un mensaje de la norma Q.932 usado como petición o
reconocimiento de un servicio suplementario.
28
29. Protocolos enVoIP.
• SIP
• SIP es un protocolo de señalización a nivel de aplicación para
establecimiento y gestión de sesiones con múltiples participantes. Se
basa en mensajes de petición y respuesta y reutiliza muchos conceptos de
estándares anteriores como HTTP y SMTP.Trabaja sobreTCP/UDP.
• Funciona en la parte de señalización y control de la comunicación,
transportando al SDP (Session Descripton Protocol) que describe el
contenido multimedial de la sesión (puertos IP usados, Codecs, etc.).
• Envía invitaciones para crear sesiones, las que contienen información
sobre los parámetros multimediales a usar. Con esto, los posibles
participantes pueden o no aceptar dicha invitación.
• Utiliza servidores proxy para rutear los requerimientos hacia el usuario,
autentificar y autorizar servicios para los usuarios e implementar políticas
de ruteo de llamadas.
29
30. Protocolos enVoIP.
• SIP
• Para implementar estas funcionalidades, existen varios componentes. Los
dos principales son los agentes de usuario (UA) y los servidores, que pueden
ser de tres tipos: Proxy, Register y Redirect.
• Agentes de Usuario:
• Consisten en dos partes distintas, el User Agent Client (UAC) y el User Agent
Server (UAS).
• UAC es una entidad lógica que genera peticiones SIP y recibe respuestas a esas
peticiones.
• UAS es una entidad lógica que genera respuestas a las peticiones SIP.
• Ambos se encuentran en todos los agentes de usuario, así permiten la
comunicación entre diferentes agentes de usuario mediante comunicaciones de
tipo cliente-servidor.
30
31. Protocolos enVoIP.
• SIP
• Para implementar estas funcionalidades, existen varios componentes. Los
dos principales son los agentes de usuario (UA) y los servidores, que pueden
ser de tres tipos: Proxy, Register y Redirect.
• Servidores - Proxy Server:
• Retransmiten solicitudes y deciden a qué otro servidor deben remitir, alterando
los campos de la solicitud en caso necesario.
• Es una entidad intermedia que actúa como cliente y servidor con el propósito de
establecer llamadas entre los usuarios.
• Este servidor tienen una funcionalidad semejante a la de un Proxy HTTP que tiene
una tarea de encaminar las peticiones que recibe de otras entidades más
próximas al destinatario.
31
32. Protocolos enVoIP.
• SIP
• Para implementar estas funcionalidades, existen varios componentes. Los
dos principales son los agentes de usuario (UA) y los servidores, que pueden
ser de tres tipos: Proxy, Register y Redirect.
• Servidores - Register Server:
• Es un servidor que acepta peticiones de registro de los usuarios y guarda la
información de estas peticiones para suministrar un servicio de localización y
traducción de direcciones en el dominio que controla.
.
32
33. Protocolos enVoIP.
• SIP
• Para implementar estas funcionalidades, existen varios componentes. Los
dos principales son los agentes de usuario (UA) y los servidores, que pueden
ser de tres tipos: Proxy, Register y Redirect.
• Servidores - Redirect Server:
• Es un servidor que genera respuestas de redirección a las peticiones que recibe.
• Este servidor reencamina las peticiones hacia el próximo servidor.
.
33
34. Protocolos enVoIP.
• SIP
• Finalmente, dado que SIP es un protocolo basado en mensajes tipo
solicitud/respuesta, se mostrarán los mensajes más usuales en una llamada:
• Solicitud: Existen seis métodos básicos SIP (definidos en RFC 254) que describen
las peticiones de los clientes:
• INVITE: Permite invitar un usuario o servicio para participar en una sesión o para
modificar parámetros en una sesión ya existente.
• ACK: Confirma el establecimiento de una sesión.
• OPTION: Solicita información sobre las capacidades de un servidor.
• BYE: Indica la terminación de una sesión.
• CANCEL:Cancela una petición pendiente.
• REGISTER: Registrar al User Agent.
34
35. Protocolos enVoIP.
• SIP
• Finalmente, dado que SIP es un protocolo basado en mensajes tipo
solicitud/respuesta, se mostrarán los mensajes más usuales en una llamada:
• Respuesta: El código de la respuesta está compuesto por tres dígitos que
permiten clasificar los diferentes tipos existentes. El primer dígito define la clase
de la respuesta.
• 1xx - Mensajes provisionales.
• 2xx - Respuestas de éxito.
• 3xx - Respuestas de redirección.
• 4xx - Respuestas de falla de método.
• 5xx - Respuestas de fallas de servidor.
• 6xx - Respuestas de fallas globales.
35