3 LA VoIP.

Anuncio
3 LA VoIP.
El protocolo de Voz sobre IP es un estándar desarrollado para poder realizar comunicaciones de voz en tiempo real a través de redes IP, inicialmente desarrolladas para el
transporte de datos. Las redes IP han evolucionado desde la transmisión de datos únicamente, hasta realizar las funciones de una red tradicional de conmutación de circuitos.
La mayor parte de las redes de conmutación que existen en la actualidad serán remplazadas por redes de conmutación de paquetes en un futuro. Esta transición supone no
sólo una reducción de los costes, sino que proporcionará también el desarrollo de una
serie de nuevos servicios para voz y datos que no hubiesen sido posible con las redes de
conmutación de circuitos tradicionales.
En este apartado se describirán los elementos del estándar de VoIP, así como una descricpión de la arquitectura y funcionamiento del software, de carácter libre, utilizado
para implementar la central de conmutación.
Las enormes posibilidades que tiene la VoIP de convertirse en la opción de telefonía
dominante del futuro, debido tanto a su reducido coste como a su exibilidad, será otro
tema tratado en este apartado.
3.1.
INTRODUCCIÓN.
La convergencia de las redes de telecomunicaciones actuales supone encontrar la tecnología que permita hacer convivir en la misma red voz y datos. Esto obliga a establecer
un modelo o sistema que permita encapsular la voz para ser transmitida junto con los
datos sobre la misma red. Teniendo en cuenta la importancia y desarrollo de Internet,
el desarrollo de una tecnología universal nos lleva a pensar en el protocolo IP (Internet
Protocol) y a encontrar un método que nos permita la transmisión de voz sobre dicho
protocolo. Esto se consigue con el estándar VoIP (Voice Over Internet Protocol).
14
3 LA VoIP.
Dicho estándar, regula el transporte de los datos de voz a través de redes IP en forma
de paquetes de datos. El interés de transportar la voz por este tipo de redes, en lugar
de por las redes de conmutación de paquetes tradicionales, se debe a ciertas limitaciones
de éstas últimas y a las ventajas aportadas por las redes de conmutación de paquetes:
Limitaciones de las redes de conmutación de circuitos:
1. Uso ineciente de los recursos. Cada llamada telefónica utiliza un canal de 64
kbps, independientemente de tráco que haya en cada momento. Además todos
los elementos de conmutación se designan para conmutar canales de 64 kbps independiente de la cantidad de tráco que llegue al conmutador en cada instante.
2. Son cerradas e poco exibles.
3. Mantenimiento caro.
Ventajas de las redes de conmutación de paquetes:
1. Soportan un mayor volumen de tráco gracias a que aprovechan mejor el ancho de
banda disponible.
2. Son redes abiertas.
3. Al no tener que reservar canales exclusivos para cada llamada, permite la reducción
drásticas de costes de taricación de llamadas.
4. Integración de nuevos servicios y unicación de la estructura de red.
Aunque las redes IP parece aportar excepcionales ventajes al mundo de la telefonía, la
integración de éstas con las redes de telefonía tradicional es un reto difícil y ,actualmente,
presentan ciertas limitaciones. Hay que tener en cuenta que los principios de diseño que
dieron lugar a la red de telefonía que actualmente conocemos, son casi los opuestos a los
que originaron la red IP. Mientras que IP proporciona un servicio de tipo "Best-Eort"
mediante ancho de banda compartido, la red telefónica proporciona un servicio garantizado mediante reserva de capacidad. La industria de las telecomunicaciones empezó con
15
3 LA VoIP.
una aplicación especíca: la telefonía, y construyó una red adaptada a sus necesidades.
Internet, por otro lado, comenzó exactamente en el extremo opuesto: creó una nueva
tecnología de red y buscó, con éxito, aplicaciones que pudieran hacer uso del servicio
ofrecido.
IP cuenta con varias limitaciones, que se han hecho más evidente conforme la red aumenta de tamaño. El aumento del tráco tradicional, se ha venido solventando mediante
la solución obvia de incrementar la capacidad de los medios de transmisión. Sin embargo, el tráco por la red no sólo ha cambiado en volumen, sino también ha cambiado en
naturaleza. Existen muchos nuevos tipos de trácos, de múltiples aplicaciones nuevas,
cuyos requirimientos operacionales varían enormemente.
Entre estas nuevas aplicaciones, la telefonía se destapa como una de las más exigentes.
El mantenimiento de una conversación bidireccional en tiempo real es posiblemente una
de las aplicaciones más difíciles de satisfacer. A pesar de ser una aplicación multimedia,
sus requisitos de ancho de banda son muy escasos, apenas 8 Kbytes por segundo en cada
sentido. De modo que la capacidad no es problema, el problemas más bien es la latencia
durante la comunicación.
Para la telefonía IP, y en general para muchas otras aplicaciones bidireccionales y en
tiempo real, los requisitos de temporización son mucho más restrictivos que los de capacidad. El retardo de tránsito, y las pérdidas de paquetes debido a congestiones momentáneas de la red, resultán en una pérdida apreciable de la calidad de la comunicación. Un
incremento del ancho de banda es una primera solución para los problemas de latencia,
sin embargo, el tráco en Internet aumenta en la misma proporción que el incremento de
ancho de banda una vez que éste es añadido, de manera que esto no supone una salida.
Son imprescindibles nuevas medidas que aseguren cierta calidad del servicio prestado.
En los siguientes apartados se irán viendo los elementos necesarios utilizados por la
tecnología VoIP para transportar la voz sobre redes IP.
3.2.
TRANSMICIÓN DE VOZ SOBRE REDES IP.
Este capítulo describe los pasos necesarios llevados a cabo para transmitir la voz a través
de redes IP, desde que ésta es capturada en el origen de la comunicación hasta que es
reproducida en el otro extremo.
16
3 LA VoIP.
El empaquetamiento de la voz dentro de datagramas IP, la transmisión de la misma a
traves de la red, la recepción y la reconstrucción digitalizada de la voz es llevado a cabo
dentro de caminos virtuales establecidos entre el origen y el destino a través de la red
IP, comunmente conocidos como canales.
3.2.1.
MUESTREO Y DIGITALIZACION
La técnica por la cual la voz humana es convertida de su forma de onda natural al
formato digital nal empleado por la tecnología de VoIP para su transmisión a traves
de red, se le conoce como DAC (Digital-to-Analog Conversation). En el mundo de la
telefonía tradicional, el proceso es bastante simple, ya que las variaciones de dichas
técnicas vienen impuestas según los diferentes tipos de enlaces de datos y dispositivos,
y según los estándares regionales empleados.
Sin embargo, estos procesos de digitalización en la tecnología VoIP no están exclusivamente ligados al tipo de enlace de dato. Diferentes técnicas de digitalización y compresión son usadas en circunstancias diferentes. No siempre las propiedades de los enlaces
de datos, tales como capacidad o latencia, son factores decisivos en la elección de estas
técnicas. Esta conversión de la señal a formato digital es llevada a cabo tanto en el mundo IP como en la telefonía tradicional, donde los sistemas de comunicación transportan
los datos mediante multiplexación de ujos de voz digitalizados.
DAC incluye digitalización de la voz, cuantización de la señal digital, ltrado para preservar el ancho de banda y compresión de la señal para una mejor eciencia del ancho
de banda. La técnica de muestreo más común para convertir señales audibles a señales
digitales es la Modulación por Implusos Codicados (MIC), donde la señal analógica será
muestreada a la vez que su amplitud será discretizada y codicada en formato binario.
Para establecer una llamada telefónica, un teléfono tradicional, sea analógico o digital,
requirirá un enlace con suciente capacidad como para transportar un ujo de datos de
64 Kbps. Ésta es la velocidad jada para cualquier línea de teléfono tradicional. Tanto
sistemas de telefonía analógica como digital ofrecen una claridad del sonido similar, ya
que operan en el mismo rango de muestreo de la señal de voz: 8000 Hz. Esta frecuencia
combinada con una resolución de muestreo de 8 bits, da lugar a un régimen binario de
64kbps.
17
3 LA VoIP.
En el mundo de la telefonía tradicional cada conversación de voz concurrente, tanto
digital como analógica, requirirá un ancho de banda de 64kps, es por ello que este valor
representa un dato útil a tener en cuenta en el dimensionamiento de una red VoIP.
3.3.
EL PROCESO DE CODIFICACIÓN DE LA
VOZ.
3.3.1.
EMPAQUETADO
El empaquetado de la voz es el proceso, en tiempo real, por el cual un ujo de voz digitalizada es dividida en trozos manejables y de igual tamaño para su adecuado trasnporte
sobre la red.
Figure 3.1: Señal discretizda.
18
3 LA VoIP.
No como ocurre en una línea analógica, en VoIP la señal de sonido es transmitida y
recibida mediante terminales IP. Esto hace que la señal sea más manejable para ser
transportadas a traves de circuitos tradicionales de voz, tales como E1 o RDSI. Pero a
diferencia del sistema de telefonía digital RDSI, la señal de voz en una llamada a través
de una red IP es empaquetada, esto signica que dicha información es transportada a
través de la red en unidades que también son usadas para transportar otros tipos de
datos. En el caso de VoIP, dichas señales se encapsulan en datagramas UDP.
3.3.2.
MULTIPLEXACIÓN.
La red de telefonía tradicional (RTC) ofrece una forma de proveer una mayor capacidad de llamadas que la que provee la linea telefónica tradicional. A través de una línea
compuesta por dos pares de hilos conductores, a diferencia de la línea tradicional, compuesta por un sólo par de hilos, puede transmitirse hasta 24 llamadas simultáneas. Esta
tecnología de alta densidad es llamada E1 y es a menudo usada a modo de enlace para
unir centrales telfónicas (PBX). La técnica usada para aprovechar mejor los recursos
de la red se llama multiplexación. Diversos niveles de multiplexación de canales de voz,
proveen una mayor densidad de llamadas a través de un mismo medio. Por contra, la
adquisición de estos cirtcuitos tiende a ser bastante cara y es por ello que suelen emplearse exclusivamente como enlaces entre centrales telefónicas, o bien, en aplicaciones
de datos, suelen ser usados por los proveedores de servicio a Internet (ISP) que necesitan
ofrecer una alta capacida de conexión a Internet.
3.3.3.
COMPRESIÓN.
VoIP provee una forma más económica de compartir el medio de transmisión. Para ello
emplea técnicas de compresión sobre las muestras de sonido usadas para representar la
voz en la red, de tal forma que una menor cantidad de enlaces físicos son requeridos
para transmitir la misma información. Es posible reducir el régimen binario de 64 kbps,
usados en una conversación telefónica tradicional, por debajo de los 44 kbps, sin llegar
a notar pérdida de calidad en la señal de voz reconstruida en el extremo receptor. Los
algoritmos usados por VoIP para codicar los datos de sonido o para decrementar los
requerimientos de ancho de banda son conocidos como codec.
19
3 LA VoIP.
3.3.4.
CODECS.
Los codecs, llamados así por la función que desempeñan tanto en el transmisor, como
codicadores de la señal, como en el receptor, como decodicares de la misma, son
algoritmos usados para empaquetar ujos de datos multimedia (voz y/o audio), que
posteriormente serán retransmitidos por la red en forma de streaming o bien serán
transportados en tiempo real sobre la misma. Existen docenas de codecs para audio
y video, pero aqui sólo describiremos los que son más comunes en las redes VoIP.
La mayoría de estos codecs usados en redes VoIP son denidos por recomendaciones
de la ITU-T, áquellas pertenecientes a la variedad G ( Trasmision system and media).
Dentro del grupo de codec denidos por la ITU-T, pueden distinguirse dos tipos: los que
van destinados a aplicaciones que requieren una alta delidad como puede ser la difusión
de música a través de la red, y aquellos que van destinados a la codicación de señales
de voz que serán transmitidas en tiempo real. Será sobre estos últimos sobre los que nos
centraremos posteriormente.
Los codecs de audio para aplicaciones de telefonía, así mismo, se dividen en dos grupos:
aquellos que se basan en la modulación por impulsos codicados para transmitir la señal
de audio, y aquellos que restructuran la representación digital de la señal PCM en un
formato más adecuado. Así estos dos grupos de codecs de telefonía son los codec PCM,
que son los codecs básicos de 64 kbps, y los vocoders, los cuales van un paso más alla del
algoritmo PCM. Por último, puede considerarse un tercer grupo de codecs, los codecs
híbridos, que reunen las ventajas de los anteriores.
Codecs PCM o basados en forma de onda:
Transmiten información sobre la forma de onda de la señal de voz. Este grupo
de codecs se caracterizan por tener una tasa de bit de 64 kbps, siendo el más
representativos de todos ellos el codec G.711. Esta tasa es muy elevada para las
posibilidades de algunas partes de la red, por lo que cada vez se utilizan menos
este tipo de codecs.
En este grupo también se encuentran los codecs predictivos, que comparan a codicar con las anteriores y codican sólo la señal de error, con una menor cantidad
de bits y también mediante forma de onda. Se usan menos bits ya que la señal de
error es más pequeña que la muestra en sí, tiene un menor rango dinámico. Con
20
3 LA VoIP.
estos codecs se puede reducir la tasa de error hasta los 18 kbps, a cambio de perder
un poco de calidad.
Vocoders:
Estos codecs aprovechan las características de la señal de voz humana. Toman
muestras de intervalos de la señal de voz de diferente duración (10ms , 20ms o
30ms), según el tipo de codec. Una vez con estas muestras, la analizan mediante
determinados algoritmos para sacar los coecientes del ltro vocal ( que hará el
papel del tracto vocal de la persona que habla) y para crear la señal de excitación
( que simula el impulso del aire que pasa por las cuerdas vocales al hablar). Con
estos datos de excitación y ltro se puede reconstruir posteriormente la voz en el
receptor.
Estos codecs comprimen bastante la información a transmitir y alcazan tasas de
transmisión muy bajas, por contra la voz reproducida suena muy sintetizada, poco
natural y la calidad es bastante a inferirio a la de PCM.
Codecs híbridos:
Estos codecs tienen las ventajas de los vocoders, en cuanto a que se basan en
el modelo de excitación, más un ltro vocal para conseguir bajas tasas de bit
a transmitir, y además poseen las ventajas de los predictivos, en cuanto a que
comparan la muestra generada mediante la señal de excitación y ltro calculados,
con la original, para así transmitir también el error cometido con muy pocos bits y
conseguir más naturalidad en la voz reproducida en el destino. Dicho error puede
ser codicado bien mediante índices o por forma de onda, según el codec, y se
transmite junto con los coecientes del ltro vocal y la señal de excitación. Con
esto se consiguen tasas de transmisión también muy bajas y además una calidad
de escucha bastante buena.
Dentro de este grupo, podemos encontrar a los codecs: G.729 y G.723.1, estandarizados por la ITU-T, y a GSM y sus variantes, estandarizados por el ETSI.
A continuación se describen brevemente los codecs más comunes usados en la
telefonía IP:
21
3 LA VoIP.
•
G.711.
Este codec es un algoritmo de codicación/decodicación de 64 kbps que usa
8 bits para codicar las muestras de señales de audio muestreadas a 8 khz.
Se trata de una señal de audio de buena calidad. Este codec presenta un
bajo procesamiento para ser implementado y es el esquema de codicación
usado por los circuitos de telefonía digital tradicional, como E1. Este codec
no provee ninguna compresión.
Existen dos variantes de las técnicas de digitalización PCM usadas en el
codec G.711: uLaw y ALaw. La primera utiliza una escala de digitalización
logarítmica para discretizar los niveles de amplitud, mientras la otra usa una
escala lineal. Entre ellos no son compatibles y deben ser transcodicados si
cada uno de los extremos de la conversación están utilizando uno de ellos.
uLaw suele ser usado en Norte America y parte Asia, mientras que ALaw
prevalece en el resto del mundo.
•
G.721, G.723, G.726, G.728 y G.729A
Estos codecs hacen un mejor uso de la capacidad de la red, permitiendo la
reproducción de sonido de alta calidad a una tasa de bit de 8 a 32 kbps. Este
grupo de codecs usa los algoritmos ADPCM ( Adaptatice dierential Pulse
Code Modulation) o CELP ( Code Excited Linear Predition) para reducir los
requerimientos de ancho de banda.
•
G.722.
Este codec tiene ocupa un gran ancho de banda, ya que hace un muestreo de
la señal de audio al doble de valor normal: 16 Khz. El efecto es que el sonido
tiene mucha mayor calidad que el resto de los codecs usados para VoIP. Por
lo demás, es idéntico al codec G.711.
•
GSM.
Este codec, usado en el sistema de telefonía movil global, ofrece una tasa de
13 Kbps. Como muchos otros codec salido de las recomendaciones de la ITUT, hace uso del algoritmo CELP para lograr una alta escala de compresión y
,a su vez, presenta un procesamiento mucho menor.
22
3 LA VoIP.
•
ILBC.
El Internet Low Bitrate Code, es un codec de audio que puede adquirirse
gratuitamente. Presenta características similares, en cuanto a consumo de
ancho de banda e intesidad de procesamiento, a las del codec G.729A, pero
con un mejor comportamiento ante la pérdida de paquetes.
•
Speex.
Este codec presenta una tasa de muestreo comprendida entre 8 y 32 kHz,
además de una tasa binaria variable. Speex permite cambiar la tasa binaria
en medio de la transmisión, sin tener que establecer una nueva llamada, lo
que puede ser útil en situaciones de congestión de la red. Se trata de un codec
disponible gratuitamente y con implemenataciones bajo código abierto.
Cada uno de estos codecs tiene sus ventajas e inconvenientes. G.711 es adecuado en
enlaces donde hay suciente capacidad y presentan poca latencia, como es el caso de
Ethernet. Éste presenta un buen comportamiento ante los errores, pero, por ejemplo, no
sería adecuado su uso en un enlace Frame Relay de 56 kbps, ya que no se dispondría del
suciente ancho de banda. Recíprocamente, los codecs que proveen una algún tipo de
compresión, lo hacen a costa de degradar la calidad de la señal
3.3.5.
TASA DE PAQUETIZACIÓN DE LOS CODECS.
Además de los bits que representan los datos de audio, todos los paquetes transportan
otros bits usados para funciones de rutaje, corrección de errores, etc. Esta sobre carga de
bits no representa ningún benecio para la aplicación de VoIP, más que permirtir a los
niveles inferiores transmitir cabeceras ethernet, cabeceras IP o cualquier otra información
necesaria para el transporte del paquete a través de la red. Cuanto mayor sea la cantidad
de datos de audio transmitidos por paquete, menos sobrecarga de cabeceras se transmite
por la red, ya que hacen falta menos paquetes para transportar el mismo sonido, y por
tanto mejor se aprovecha la capacidad del canal.
Como se ha comentado anteriormente, la clave para reducir la sobrecarga en una red
de VoIP es reducir el número de paquetes por segundo usado para transmitir la señal
de audio. Pero esto incrementa el impacto de los errores sobre la llamada telefónica.
23
3 LA VoIP.
Así que se necesita llegar a un compromiso entre un valor de sobrecargar aceptable y
un aceptable nivel de resistencia a los errores. En esta parte es donde la elección de
un determinado codec puede ayudar, ya que cada uno proporciona distintas tasas de
transmisión de paquetes por segundo y distintos cantidades de cabeceras.
Los diferentes tipos de codecs usan diferentes tasas de paquetes. Al espacio entre los
paquetes transmitidos se le conoce como intervalo entre paquetes, y es expresado en
relación a la tasa de paquetes. Algunos codecs, especialmente aquellos que usan algoritmos CELP avanzados, requieren una mayor cantidad de audio ( 20 ms, 30 ms) en un
mismo tiempo, para poder realiazar la codicación y decodicación. El intervalo entre
paquetes tiene un efecto directo sobre la sobrecarga. Cuanto mayor es éste, menor será
la sobrecarga requerida para transmitir los datos de audio, y viceversa. Pero por contra,
el aumento del mismo provoca un aumento directo de la latencia o retraso de los datos,
es decir, la diferencia de tiempo entre el momento en el que el sonido fue originado hasta
que éste fue codicado, transportado, decodicado y reproducido en el extremo receptor,
será mayor. Ya que un paquete IP no será transmitido hasta que éste sea totalmente
construido, una trama de audio no podrá viajar a través de la red hasta que éste esté
totalmente codicado. Esta latencia afecta negativamente a la calidad de la llamada,
percibida en el receptor.
Pero la latencia no es el único inconveniente que se deriva de tener un intervalo entre
paquetes grandes: cuanto mayor sea la duración de sonido transportada por cada paquete, mayor será la porbabilidad de que el extremo receptor note un efecto negativo en el
sonido si un paquete es perdido debido a una congestión u error de la red. La pérdida de
un paquete que transporta 20ms de audio es apenas imperceptible con el codec G.711,
pero no así la pérdida de 60 ms de audio, que puede ser bastante molesto. El principal
motivo por el que el sonido es transmitido bajo datagramas UDP, es porque ofrece un
servicion no able y no orientado a conexión, de tal forma que aquellos paquetes perdido
no serán retransmitidos. El hecho de implementar el protocolo de VoIP sobre el TCP,
implicaría que todos los paquetes que se notiquen como perdidos serían retrasmitidos.
Este efecto haría que los paquetes en el extremo receptor llegasen completamente fuera
de secuencia, con la consecuente perdidad de calidad que esto conlleva.
Si se considera un muestreo de 8khz para una señal de audio básica con 8 bits por muestra, y se asume un intervalo entre paquetes de 20ms, puede verse que la cantidad de datos
de audio, utilizando el codec G.711, transportada es de 1.280 bits. Si a estos se le añade
24
3 LA VoIP.
los bit de cabecera introducidos por cada protocolo que encapsula el mensaje, resulta
1.904 por trama, suponiendo que se utiliza ethernet como tecnología de transimisión.
Figure 3.2: Trama de voz sobre tecnología Ethernet.
3.3.6.
SISTEMAS DE TRANSIMISIÓN DTX/VAD/CNG.
Además de la conversión analógico-digital, el codec intenta comprimir lo máximo posible
la información a transmitir, para que así los requerimientos de ancho de banda necesarios
para llevar a cabo la comunicación sean los menores posibles.
Una forma importante de reducir ancho banda, además del que se consigue al comprimir
la señal, es el uso del sistema DTX / VAD / CNG. Se trata de un sisitema de transmisión
discuntínua ( Discontinous Transmision, DTX), que se emplea conjuntamente con un
detector vocal ( Vocal Activity Detector, VAD) y un generador de ruido de fondo (
Confort Noise Generator, CNG). Dicho sistema consiste en no enviar paquetes de datos
durante los silencios de las conversaciones. En estos silencios, aunque no se hable, seguirá
habiendo ruido de fondo, por lo que será necesario transmitir algún tipo de información
que sirva para reproducir el ruido de fondo en el receptor y no perder así la naturaleza
25
3 LA VoIP.
de la conversación. Este tipo de tramas con información para el ruido se conocen como
tramas SID ( Silence Insertion Descriptor) y son de poco tamaño comparadas con las
tramas de datos. El elemento del codec encargado de generar el ruido de fondo a partir
de la información de las tramas SID, es el generador de ruido de fondo ( CNG).
Utilizando el sistema de transmisión discontínua se ahorra mucho ancho de banda. Este
algoritmo DTX, también es menos sensible a los errores de transmisión que en un sistema
en el que se enviaran las tramas activas de datos constántemente, ya que si se pierden
tramas tramas SID, se cogen los parámetros de las anteriores para generar el ruido
actual, de manera que afecte poco esa pérdida. En el caso en que se pierda la primera
trama SID de un tramo de silencio, durante la fases de habla se van estimando también
dichos parámetros para su posterior reprodución.
Para que este sistema funcione es fundamental el buen funcionamiento de los detectores
de actividad vocal. Estos analizan intervalos de conversación de una determinada duración y concluyen si en este fragmento analizado ha habido voz ( tramo de "active voice"),
o no ( tramo de "inactive voice"). En los tramos de voz activa se envia información útil,
y en los tramos de voz inactiva, se mandan tramas SID, para que el decodicador pueda
generar un ruido de fondo adecuado, o , incluso, no se envía nada. Las tramas SID sólo
se envian si el ruido ha cambiado desde la última trama transmitida.
Para determinar si estamos ante un tramo de voz inactica o activa, los VAD's se basan
en diferentes medidas, tales como:
Los coecientes del ltro LP de esa trama de voz.
La energia de la banda de frecuencias completa.
La energía de la banda de frecuencias que va desde 0 hasta 1 khz.
La tasa de cruces por cero de la señal de voz.
3.4.
EL ESTANDAR VoIP.
Este apartado describe los estándares de señalización de llamadas en una red de VoIP.
También se describe la forma en la que estos estándares compiten y se complementan.
26
3 LA VoIP.
3.4.1.
PROTOCOLOS DE SEÑALIZACIÓN DE VoIP.
Un protocolo se señalización es un lenguaje común hablado por teléfonos, servidores
de administración de llamadas (por ejemplo, centrales telefónicas implementadas via
software), PBX tradicionales y por cualquier otro elemento que pueda interferir en una
comunicación telefónica, a través del cual pueden comunicarse para establecer, negociar
y nalizar llamadas.
La tecnología de voz sobre IP, provee una familia de protocolos de señalización. La mayor
parte de los protocolos de señalización tienen en común una serie características:
Sus propósitos son señalizar, registrar y facilitar los eventos claves de una llamada:
el comienzo, el nal de llamada y cuándo los usuarios están intentando usar una
serie de servicios de telefonía como transferencia de llamada o conferencia.
Aunque las llamadas de señalización suelen establecerse usando UDP como protocolo de transporte, no son vistas como tráco en tiempo real, como ocurre con la
transmisión de los datos de voz.
El patrón de tráco que sigue la señalización cuando ésta es transmitida por la red,
suele ser de poca duración y a ráfagas, en oposición al tráco de voz que tiende a
ser consistente y de larga duración.
La mayoría de estos protocolos de señalización no suelen estar implementados
simultáneamente en un mismo dispositivo IP.
Actualmente, existen dos importantes protocolos de señalización en el mundo de la telefonía IP: el Protocolo de Inicio de Sesión (SIP), desarrollado por el IETF ( Internet
Engeneering Task Force); y H.323, desarrollado por la ITU-T. Existen otra serie de protocolos de señalización, desarrollado por compañias privadas, como pueden ser: SCCP,
desarrollado por Cisco Company, o IAX, propiedad de la empresa Digium.
Entre todos los estándar de señalización que existen, aquellos que han sido elaborados
por organismos públicos, como son SIP y H.323, nos aportarán una mayor exibilidad
y extensibilidad, ya que se encuentran bajo libre disposición, distribución y modicación para toda la comunidad de Internet. Entre estos dos principales éstandares existen
27
3 LA VoIP.
sustanciales diferencias, en cuanto a los distintos tipos de caminos por donde pueden
establecer las llamadas telefónicas. H.323, hace posible establecer una comunicación entre central de conmutación y central de conmutación, entre la RTC y una central de
conmutación, y entre terminales y centrales de conmutación. Esto signica que H.323
posee una interfaz que le permite establecer una llamada con los sistemas de telefonía
tradicionales, especialmente con la RTC. Comparativamente, SIP es mucho más limitado
en cuanto a su alcance dentro de la red. Éste no soporta la comunicación con ningún
terminal tradicional, sea analógico o digital. Fue diseñado para permitir una comunicación entre terminales IP. Sin embargo, una gran ventaja de SIP es su exibilidad para
soportar aplicaciones de caracter no telefónico, tales como mensajería instantánea, video conferencias, etc. Dicha propiedad es la principal característica de SIP y la mayor
carencia de H.323.
Familia de protocolos
Escenarios de señalizacion
Mantenedor
H.323
Telefonía y video.
ITU-T
SIP
Telefonía, video y mensajeria instantánea.
IETF
IAX
Telefonía.
Digium Inc.
SCCP
Telefonía( conmutadores<>terminales)
Cisco System
MEGACO/H.248
Telefonía(control de gateway's)
ITU-T
MGCP
Telefonía(control de gateway's)
IETF
3.4.2.
EL PROTOCOLO H.323.
H.323, actualmente en su versión 2, es una recomendación de la ITU-T para un estilo
de señalización basada en PBX que soporta transmición sobre redes de conmutación de
paquetes. H.323 no tiene que ser entregado completamente usando una red IP. Ciertas
subrecomendaciones de H.323 permiten a las redes de telefonía tradicional ser integradas, por medio de la señalización, con todos los dispositivos que intervienen en una
comunicación. Por ejemplo, H.323 permite la señalización sobre las líneas de teléfonos
tradicionales de la RTC, a través de las recomendaciones H.320 y H.324.
Mientras que el estándar H.323 se encuentra en un estado bastante maduro y bien documentado por la ITU-T, éste ha sido implementado en partes especícas por cada
fabricante que no son, desafortunadamente, totalmente interoperables. Esta incompatibilidad de las implementaciones de H.323 es un problema cuando se pretende enlazar
28
3 LA VoIP.
sistemas de distintos fabricantes. Para conseguir este objetivo, se hace uso de dispositivos trandicionales, tales como E1, como elemento intermediador, ya que la mayoría de
las implementaciones de los protocolos de telefonía tradicional de cada fabricante son,
casi siempre, compatibles entre sí.
Los paquetes de mensajes H.323 son compactos, y la señalización H.323 es muy rápida,
especialmente comparada con SIP, el cual usa mensajes más largos y basados en texto
plano. El diseño de H.323 está basado en los fundamentos del diseño de la Red Telefónica
Conmutada: brevedad y disponibilidad. La red es usada tan poco como sea posible para
transportar la señalización de la llamada, y tanto como sea posible para transporta el
sonido.
3.4.2.1.
3.4.2.1.1.
ARQUITECTURA .
GATEKEEPER H.323.
El gatekeeper es un equipo de la red que provee monitorización, centralizada de llamadas y capacidades de señalizacón hacia terminales H.323. El alcance de un gatekeeper
puede ser un segmento particular de una LAN o , incluso, todo un continente.
Al alcance de red dentro del cual un gatekeeper opera se le denomina "zona". Puede
haber sólo un gatekeeper por zona y una zona por gatekeeper. Es normal referirse a un
gatekeeper H.323 como una central software de conmutación, una softPBX.
Tanto los terminales H.323 como los gateways, para que puedan ser accesibles a las
aplicaciones de telefonía, deben llevar a cabo un proceso de registro ante el gatekeeper.
Esto quiere decir que cada terminal H.323 debe informar al gatekeeper de cuáles son
sus características únicas que lo identican: número de telefóno, dirección IP, etc. Este
proceso puede ser autenticado si se desea.
En la conguración de cada terminal hay que indicar la dirección IP o el nombre de
dominio del gatekeeper de la zona a la que pertenezca el terminal. También existe la
posibilidad de descubrir la precencia de un gatekeeper usando un IP multicast a la
dirección y puerto: 224.0.1.41:1718.
El proceso de registro es llevado a cabo mediante el protocolo RAS: Resgistration, Admission y Status. Este protocolo sólo govierna el proceso de registro y no el establecimiento
29
3 LA VoIP.
de llamadas. Sin la presencia de un gatekeeper en una red H.323 no se podría establecer mucho más que canales dedicados con otro terminal, se perderían, entre otras, las
funciones de rutaje de mensajes.
De acuerdo a las recomendaciones de la ITU-T, un gatekeeper debe proveer:
Resolución de direcciones via un estándar llamado E.164.
Registro y autenticación.
Control de ancho de banda.
Zona de administración de registro y llamada.
Señalización de las llamadas de control.
Monitorización de las llamadas.
El proceso que sigue un terminal H.323 cuando se registra, es el siguiente:
1. El terminal envía un mensaje RRQ ( Registration Request) al gatekeeper, que
consiste en la dirección IP y puerto del terminal, su dirección E.164 y un alias
para ser usado como identicador cuando éste efectue una llamada.
2. El gatekeeper guarda toda la información proveida por el terminal en memoria,
para posterior uso cuando autentique al terminal, junto con un hash, que es
usado para asegurar la identidad del terminal, evitando posibles suplantaciones de
identidad.
3. El gatekeeper responde al terminal con un mensaje RCF ( Registration Request
Conrm), indicando que está listo para realizar y recibir llamadas en la red.
30
3 LA VoIP.
3.4.2.1.2.
TERMINALES H.323.
Cada terminal H.323, ya éste implementado en software o hardware, contiene una pila
de elementos software que le permiten cubrir diferentes aspectos del proceso de llamada:
H.245, el cual le provee de capacidades de negociación, que le permiten estar seguro
de saber si existe en ambos extremos de la comunicación una aplicación y codecs
compatibles.
H.225, el cual le provee servicios de taricación y monitorización necesarios para
el establecimiento able de llamadas y contabilidad de las mismas.
RTP, el estándar del IETF para la transmisión de datos mulitmedia en tiempo
real.
Selección de uno o más codecs de audio.
Opcionalmente, un terminal H.323 puede ofrecer T.120, un protocolo para habilitar
aplicaciones interactivas.
3.4.2.1.3.
GATEWAY H.323.
El propósito de un gateway es hacer de interfaz entre los canales de voz basados en IP
y las tecnología tradicionales de señalización y transportes tales como FXO, FXS, RDSI,
E1, etc. Este elemento es requerido sólamente cuando se pretende hacer interoperar la
red de VoIP con una red de telefonía tradicional.
Un gateway H.323 ofrece una convergencia especializada de los protocolos de señalización
que soportan ciertos tipos de circuitos tradicionales:
H.320 soporta paquetización de la voz sobre circuitos RDSI y E1.
H.324 soporta paquetización de la voz sobre líneas de teléfono analógicas usando
el codec G.711.
Los gateways también deben registrarse con el gatekeeper para la zona en la que ellos
sirven, si las llamadas van a ser rutadas a través de sus interfaces.
31
3 LA VoIP.
3.4.2.1.4.
UNIDAD DE CONTROL MULTIPUNTO.
Una MCU, es un dispositivo H.323 que tiene un único propósito: poder establecer una
multiconferencia entre tres o más canales de voz. Ésta puede ser implementada en un
servidor dedicado, o bien, ser integrada como parte de un terminal H.323.
Una MCU está formada por dos componentes fundamentales: MP (mulipoint processing)
y MC (multipoint controller). La primera de ellas, es el elemento software dentro de
la MCU encargado de llevar a cabo las accciones de un DSP, para agregar canales
multimedia a una multiconferencia. El controlador multipunto o MC, es el encargado
de gestionar las negociaciones H.245 entre todos los terminales para determinar las
capacidades comunes para el procesado de audio y datos. También controla los recursos
de la conferencia para determinar cuáles de los ujos, si hay alguno, serán multipunto
(multicast). Las capacidades son enviadas por el MC hacia todos los extremos de la
conferencia, indicando los modos en los que pueden transmitir.
3.4.2.2.
TORRE DE PROTOCOLOS .
H.323, es recomendación que impone los protocolos a utilizar para la comunicación.
Figure 3.3: Torre de protocolos H.323
32
3 LA VoIP.
Algunos protocolos, como RTP ( Real Time Protocolo) y RTCP (Real Time Control
Protocol), ya existían cuando se denió la recomendación y fueron reutilizados directamente. Otros, como H.225.0 y H.245, derivarón del ITU-T H.320, H.221 y H.242, y
algunos otros, como el protocolo RAS, fue diseñado especícamente para H.323.
Como se describe más adelante, cada protocolo o conjunto de ellos en H.323 tiene como
objetivo ofrecer un servicio a las capas superiores:
Direccionamiento.
RAS: protocolo utilizado para la búsqueda de un gatekeeper por parte de un terminal, para establecer un registro en la zona que éste controla.
Señalización:
H.225.0: protocolo que describe cómo el audio, los datos y la información de control, en una red de conmutación de paquetes, pueden ser usados para proporcionar
servicios telefónicos. Se encarga de la señalización de las llamadas. Los mensajes
H.225.0 siguen el estándar Q.931 y son del tipo: mensaje de establecimiento de llamadas, mensajes de información de la fase de la llamada, mensajes de terminación
de la llamada y otros.
H.245: protocolo de control para especicar mensajes de apertura y cierre de cánales lógicos para comunicaciones de voz, para realizar las negociaciones de los
parámetros y establecer conexiones UDP.
Los mensajes siguen la sintaxis ASN.1. Consisten en un intercambio de mensajes
que pueden ser del tipo: peticiones, respuestas, comandos y mensajes de indicación.
Información de audio:
Todos los terminales deben soportar el codec G.711. También pueden utilizarse
cualquiera de los codecs G.7xx estandarizados por la ITU-T.
Información de vídeo:
En el caso que los terminales H.323 soporten vídeo llamada o vídeo conferencia,
serán utilizados los protocolos H.261 y H.263, que dene la manera de transportar
ujos de videos utilizando RTP.
33
3 LA VoIP.
Envio de datos entre terminales H.323.
Funcionaliadad opcional, que en el que caso de que sea soportada será implementada por los protocolos de la familia T.12x.
Transporte de los paquetes:
UDP: la transimición de los paquetes de datos en VoIP se suele realizar sobre
paquetes UDP, que aunque no ofrezca integridad a los datos, el aprovechamiento
del ancho de banda es mayor que con TCP.
RTC: protocolo que proporciona funciones de transporte convenientes para aplicaciones que transmiten en tiempo real. Maneja los aspectos relativos a la temporización, marcando los paquetes UDP para un reordenamiento de los mismo en el
receptor.
Control de la transmisión:
RTCP: protocolo de control de RTP. Se utiliza principalmente para detectar situaciones de congestión en la red y tomar acciones correctoras. Se basa en la
transmisión periódica de paquetes de control a todos los participantes en la sesión,
usando el mismo mecanismo de distribución que los paquetes de datos.
Servicios suplementarios.
A través de los protocolos de la familia H.450.x se ofrence servicios tales como:
llamada en espera, intrusión de la llamada, etc.
3.4.2.2.1.
INTERCAMBIO DE MENSAJES DURANTE EL PROCESO DE
SEÑALIZACIÓN.
Hay cinco pasos generales, a seguir por cada extremo de la llamada, para llevar a
cabo el proceso de señalización de la misma: establecimiento/nalización, negociación de
capacidades, establecer canales de audio y/o video, llevar a cabo la llamada y liberación
de la llamada.
1. Establecimiento/nalización:
34
3 LA VoIP.
Para iniciar una llamada se hace uso del protocolo H.225. Durante este paso, cada
terminal involucrado en la llamada es puesto al día del estado en que se encuentra
la llamada, a través de uno de los posibles estados que dene H.225:
En proceso: esto signica que el terminal de origen está intentando establecer
una conexión de red con el terminal de destino.
Alerta: esto signica que el extremo receptor está siendo noticado de que
alguién está intentando alcanzarle. En otras palabras, que el extremo receptor
está sonando, y que el terminal que originó la llamada está recibiendo una
indicación de ello.
Conectar: esto signica que el receptor ha aceptado la llamada y que un canal
de audio/video puede ser establecido.
Liberar: esto signica que uno de los extremos de la llamada ha señalizado
en nal de la misma. Cuando este estado es indicado, la llamada pasa a ser
nalizada.
2. Negociación de capacidades
Después de establecer la llamada, se hace uso del protocolo H.245 para negociar
los requerimientos de aplicación de la llamada y seleccionar el codec apropiado.
H.245 determina:
Qué tipo de apliacación multimedia puede cada terminal soportar: audio,
video u otras.
Cuáles son los codecs disponibles para cada terminal y cuáles son sus preferencias.
Cómo los canales serán estructurados y qué tipo de intervalo será usado.
Qué terminal jugará el papel de maestro y cuál de esclavo durante la duración
de la llamada. Los papeles de maestro y esclavo hacen referencia a quién
actuará como cliente o servidor en el proceso de envio de señales durante la
llamada, se trata exclusivamente de una formalidad del protocolo.
35
3 LA VoIP.
Cómo debe noticarse al terminal que inició la llamada si la negociación falla.
Normalmente, el terminal mostrará un mensaje de error mientras suena una
señal de ocupado.
3. Establecer canales de audio/video.
Una vez que se ha llevado a cabo la negociación de capacidades, RTCP ( RTP
Control Protocol) es utilizado para establecer un canal UDP donde tendrá lugar
la transmisión de audio/video. Tras abrir el canal UDP, un ujo de paquetes UDP,
que encapsulan al protocolo RTP, atravesará a la red usando el codec e intervalo
entre paquetes negociados anteriormente.
4. Llevar a cabo la llamada.
Una vez que la llamada esté en progreso, RTCP, que se ejecuta junto a RTP en
puertos UDP consecutivos, puede guardar ventanas del canal de comunicación, que
permanecerán intactas hasta el n de la llamada.
5. Liberación
Al nalizar la llamada, H.225 entra en su estado de liberación, señalizando el
nal a los canales multimedia, a la sesión H.245 de negociación de capacidades
y al proceso de taricación llevado a cabo por el gatekeeper. Dependiendo de los
terminales, ambos podrán oir un tono o una señal de ocupado.
Figure 3.4: Señalización directa, sin Gatekeeer.
36
3 LA VoIP.
En la anterior gura puede verse el proceso de señalización que tiene lugar cuando un
terminal H.323 intenta establecer una llamada con otro terminal via un gatekeeper:
1. El llamante envía un mensaje de petición de admisión, ARQ, al gatekeeper de su
zona, identicándose a sí mismo y a la dirección E.164 del terminal con el que
quiere establecer la llamada. Este mensaje es parte del protocolo RAS.
2. El gatekeeper contesta con una conrmación ARQ (ACF). Esto conrma al llamante que la petición de sesión ha sido recibida por el gatekeeper.
3. El llamante envía un mensaje de establecimiento de llamada al otro extremo de la
llamada.
4. El receptor envía un mensaje provisional H.225 "Call Proceeding". Se trata de un
mensaje provisional porque el receptor debe vericar la autenticidad del llamante
antes de proseguir con la llamada.
5. El receptor envía un mensaje "Called Party ARQ Adminsion Request" al gatekeeper, preguntándole si la llamada es legítima. En este punto, el gatekeeper debería
tener una copia de la petición de registro del llamante para validar la llamada.
6. Si el gatekeeper tiene una copia de este registro, devuelve el mensaje "Called Party
ACF" al receptor, dando paso a que el receptor comienze a sonar.
7. El receptor, una vez que comienza a sonar, envía en mensaje H.225 "Alerting",
indicando al extremo que originó la llamada que el receptor está sonando.
8. Una vez que el receptor conteste a la llamada, éste envía un mensaje H.225 "Connect" al otro extremo de la comunicación. Esto deja paso a que el proceso H.245,
de negociación de capacidades, comienze.
La diferencia entre señalización basada en gatekeeper y señalización directa entre terminales, es el papel que juega éste en las sesiones H.225, sin inuir en el camino que
seguirán los datos multimedia a través de la red.
37
3 LA VoIP.
Figure 3.5: Señalización a través gatekeeper.
3.4.2.3.
ESQUEMA DE DIRECCIONES E.164 .
E.164 es una convención para asignar números de teléfonos a terminales en una red de
VoIP. E.164, permite a los terminales de una red de VoIP registrar dinámicamente sus
números de direcciones E.164 desde una lista de números almacenados en una base de
datos en el gatekeeper.
Esta base de datos es una lista de direcciones MAC Ethernet, cada una de las cuales
corresponden a una o más direcciones E.164. De esta forma se controla que terminal va
a usar un determinado número, permitiéndo así una fácil movilidad de los terminales en
la red: no importará a qué lugar vaya el terminal H.323, su dirección E.164 siempre será
la misma.
Pero exiten una serie de incovenientes usando direcciones MAC como enlaces hacia una
dirección E.164: dicultad a la hora de memorizarlas e imposibilidad de cambiar su valor.
Existen mejores formas de manejar la asignación de alias a los terminales H.323, ya que
basarse en este método, es intrínsicamente basarse en la tecnología Ethernet. Esto es
unos de los grandes inconvenientes de H.323 en comparación a SIP.
38
3 LA VoIP.
3.4.3.
EL PROTOCOLO SIP.
El Protocolo de Inicio de Sesión, fue desarrollado por el IETF, como una forma de
señalización multiusuario de telefonía distribuida y de aplicaciones de mensajerias en
una red IP.
Los deberes y escenarios de SIP son los mismos que los de H.323. Es decir, hay terminales
de VoIP de distintas capacidades y servidores que participan en el proceso de señalización
y establecen políticas para la red de VoIP. Sin embargo, SIP es más exible que H.323,
puede considerarse más que un conjunto de protocolos de telefonía para audio y video. Se
trata entorno de trabajo para todos los tipos de aplicaciones basadas en el intercambio de
mensajes, desde aplicaciones de telefonía hasta mensajería instantánea u otros servicios.
SIP, en vez de usar una estructura de mensajes compacta y orientada a la máquina,
como H.323, usa cabeceras de gran longitud y codicadas en texto plano, como es el
caso de SMTP o HTTP, lo que permite, de forma más cómoda, la solución de problemas
y una mayor aceptación.
SIP, se encuentra acutalmente en su versión 2.0 y su denición completa se encuentra
recogida en las RFC's 3261-3265. El propósito denido de SIP es coordinar y facilitar
la monitorización de sesiones multimedia en la red. Éste soporta una variedad de esquemas de direccionamiento y es diseñado tanto para una topología centralizada como
distribuida.
39
3 LA VoIP.
Figure 3.6: Torre de protocolos SIP.
3.4.3.1.
ARQUITECTURA.
SIP sigue el modelo cliente/servidor. En el entorno SIP, tanto servidores como los puntos
nales de una comunicación, son llamados "nodos". Un telefóno SIP, es un nodo, y como
cada nodo, puede comunicarse directamente con cualquier otro para, de esta forma,
poder establecer sesiones multimedias, tal y como los terminales H.323 pueden establecer
canales directos entre ellos. Pero la conguración más usual es usar servidores SIP, a los
cuales el resto de los teléfonos SIP deberán noticar su presencian, es decir, deberán
registrarse, una vez que empiecen a funcionar.
Los elementos funcionales en la arquitectura SIP son:
1. Agentes de Usuario ( User Agent, AU).ññ
2. Servidores de red.
Los agentes de usuario son aplicaciones que residen en los nodos terminales SIP, y contienen dos componentes: Agentes de Usuario Clientes ( User Agent Client, UAC) y Agentes
40
3 LA VoIP.
de Usuario Servidores ( User Agent Server, UAS). Los UAC originan las peticiones SIP
, y los UAS responden a estas peticiones, es decir, originan respuestas SIP asociadas al
extremo que recibe la llamada. Los UA's deben implementar el transporte tanto sobre
TCP como UDP.
Los UA's y UAS's pueden establecer, por sí solos, una comunicación. No obstante, la
potencialidad de SIP se aprovecha con el empleo de los servidores de red. Los servidores
de red, se clasican desde el punto de vista logico, de la siguiente manera:
Servidores de redirección.
Servidores Proxy.
Servidores de Registro.
3.4.3.1.1.
SERVIDORES DE REDIRECCIÓN.
Se encargan de procesar mensajes INVITE, que son solicitudes SIP emitidas por la
parte que origina la llamada, y retornan la dirección , o direcciones, de la parte llamada,
es decir la URL de la parte llamada, o cómo contactar con ella. En caso contrario,
rechazan la llamada enviando una respuesta de error. Análogamente a H.323, juegan el
papel de gatekeeper.
Cuando un servidor SIP responde a la solicitud INVITE, enviada por la parte que origina
la llamada, con una respuesta 3xx, el servidor SIP está redireccionando a dicha parte
hacia otro servidor SIP. Posteriormente, el nodo SIP debe contactar con el nuevo servidor
SIP a través de otra solicitud SIP. Esta característica no está implementada en todos
los sistemas que soportan SIP, y suele ser propia de entornos extensos que operan bajo
redes exclusivamente SIP.
3.4.3.1.2.
SERVIDORES PROXY.
Ejecutan un programa intermediario que actúa como servidor y cliente: desde al punto
de vista del llamante se comporta como un servidor y desde el punto de vista del receptor
como un cliente. Un servidor proxy puede reenviar solicitudes hasta el destino nal sin
efectuar cambio alguno en ellas, o cambiar alguna parámetro si se requiere.
41
3 LA VoIP.
Los servidores proxy desarrollan el rutaje de los mensajes de solicitudes y respuestas
SIP, y pueden ser del tipo "stateful" o "stateless".
Los servidores proxy statefull retienen información dela llamada durante el proceso que
dure el establecimiento de ésta, no así los servidores stateless, que procesan un mensaje
SIP y entonces olvidan todo lo referente a la llamada hasta que vuelvan a recibir otro
mensaje asociado a la misma. Las implementaciones stateless proveen buena escalabilidad, pues los servidores no requieren mantener información referente al estado de la
llamada una vez que la transacción ha sido procesada. Además, esta relación es muy
rubusta, dado que el servicio no necesita recordar nada en relación a la llamada. Sin
embargo, no todas las funcionalidades pueden ser implementadas por un servidor stateless, algunas como: contabilización, taricación de llamadas,etc, pueden requerir que se
le sigua el rastro a todos los mensajes y estado de una comunicación.
3.4.3.1.3.
SERVIDORES DE REGISTRO.
Se encargan de registrar las direcciones SIP, formato URL, y sus direcciones IP asociadas. Es decir, se encargan de mappear direcciones SIP en direcciones IP, y típicamente
se encuentran implementados junto con los servidores proxy o servidores de redirección.
También se les denominan servidores de localización ( Location Server), pues son utilizados por los servidores proxy y de redirección para obtener información de la localización
de la parte llamada. Realmente los servidores de localización, no son entidades propias
del sistema SIP, sino más bien, base de datos que pueden formar parte de arquitecturas
que utilicen SIP. Entre éstos y cualquier servidor SIP, sea proxy o de redirección, no se
utiliza el protocolo SIP, sino protolos típicos de bases de datos o servicios de directorio,
como por ejemplo LDAP.
La información registrada en los servidores de registros, no es permanente, sino que
requiere ser refrescada periódicamente, de lo contrario el registro correspondiente será
borrado.
Usualmente, un servidor SIP implementa una combinación de los diferentes tipos de
servidores SIP ya comentados.
42
3 LA VoIP.
Figure 3.7: Escenario SIP.
3.4.3.2.
DIRECCIONAMIENTO SIP: SIP-URI.
Los nodos SIP son referenciado usando URI ( Uniform Resources Indicator), con la
siguiente estructura
sip:usuario@servidor_sip
Esta convención indica tanto el usuario al que quiere alcanzarse como el servidor SIP ,
que se espera que conozca la dirección SIP del usuario nal. Aquellas conecciónes que
requieren una encriptación para la señalización usaran el prejo "sips", en lugar de "sip"
en la descripción de sus URI's. La encriptación de dichas señales hará uso de la capa de
transporte seguro (SSL).
3.4.3.3.
MÉTODOS SIP Y RESPUESTAS.
Los mensajes de señalización SIP, solicitudes y respuestas, emplean el formato de mensaje
genérico establecido en la RFC 822, esto es:
43
3 LA VoIP.
Una línea de inicio.
Uno o más campos de cabeceras (header).
Una línea vacía indicando el nal del campo cabeceras.
Cuerpo del mensaje.
Figure 3.8: Formato de un mensaje SIP.
Mientras que H.323 usa la sintaxis ASN.1 para la descripción del formato de los mensajes,
SIP se basa en texto plano.
Las solicitudes SIP se clasican dentro de diez categorías, llamadas métodos. Cada método lleva a cabo una función diferente dentro de la arquitectura SIP:
1. INVITE: este método es usado para establecer sesiones y anunciar las capacidades
de los nodos SIP.
2. ACK: es usado para conrmar que el cliente solicitante ha recibido una respuesta
nal desde un servidor a una solicitud INVITE, reconociendo la respuesta como
armativa.
3. OPTIONS: es usado para preguntar a un nodo SIP por sus capacidades, sin que
ningún canal multimedia haya sido establecido aún.
4. BYE: este método ocurre cuando la llamada es completada, es decir, cuando alguna
de los extremos involucrados en la comuniacación desea nalizar la llamada.
5. CANCEL: cancela una solicitud pendiente, pero no afecta a una solicitud ya completada. Este método naliza una solicitud de llamada incompleta.
44
3 LA VoIP.
6. REGISTER: notica al servidor SIP en qué terminal SIP un usuario puede ser
alcanzado.
7. INFO: es usado para trnasmitir señales de aplicación de telefonía a través del canal
usado por la señalización SIP. Tales señales pueden ser dígitos marcados, etc.
8. PRACK: este método es usado en lugar de ACK para noticar al otro extremo
que se está estableciendo una llamada.
9. SUBSCRIBE: este método provee una forma de establecer manejadores de eventos
dentro de aplicaciones de telefonía SIP.
10. NOTIFY: este método entrega mensajes entre estremos SIP, tales como eventos
ocurridos durante la llamada.
Cuando una llamada debe ser establecida, nalizada o alterada, un evento SIP es empleado. Los eventos precedentes son similares en concepto a los métodos de HTTP:
GET y POST; y como en HTTP, SIP espera códigos de respuestas cuando un método
es enviado. Los códigos de respuestas SIP son clasicados en seis categorias:
1xx: informativo. Solicitud recibida, se continua para procesar la solicitud.
2xx:solicitud exitosa. La solicitud fue recibida de forma adecuada, procesada y
aceptada.
3xx: re-direccionamiento. Más acciones deben ser consideradas para completar la
solicitud.
4xx: error del cliente. La solicitud contiene mal la sintaxis o no puede ser resuelta
en este servidor.
5xx: error de servidor. El servidor no ha podido resolver una solicitud aparentemente válida.
6xx: fallo global. La solicitud no puede ser resuelta en servidor alguno.
Los mensajes 1xx, son respuestas provisionales y no terminan la transacción SIP, a
diferencia de lo que ocurre en el resto de las categorias.
45
3 LA VoIP.
Figure 3.9: Intercambio de mensajes SIP.
3.4.4.
EL PROTOCOLO IAX.
IAX, Inter-Asterisk Exchange Protocol, actualmente en su segunda versión, es un protocolo de señalización para redes VoIP, tal y como ocurre con H.323 y SIP. La principal
diferencia con estos últimos es que IAX no implementa RTP como mecanismo de paquetezación, sino que éste tiene su propia forma de empaquetar los datos de voz codicada.
IAX es un protocolo a prueba de NAT, donde cientos de llamadas simultáneas origindas desde detrás de un rewall con enmascaramiento funcionarán correctamente, como
ocurre con HTTP.
IAX es implementado de forma más simple y menos exhaustiva que SIP o H.323. A
diferencia de estos últimos, que son más extensibles, IAX va dirigido exclusivamente a
aplicaciones de telefonía.
Mientras que un ciclo completo de registro, señalización de llamada, transmisión de
voz y nalización, puede usar varios puertos TCP y UDP, en el caso de SIP o H.323, el
protocolo IAX maneja todas estas funciones usando un único puerto UDP. Tanto cuando
el cliente IAX, terminal, se registra con el servidor o proxy IAX, así como cuando una
llamada es establecida o se trasnmite tramas de voz, se utiliza el mismo puerto UDP.
La forma que IAX utiliza para distinguir las distintas funcionalidades llevadas a cabo
46
3 LA VoIP.
durante la llamada, es la inclusión de cabeceras y meta-datos en cada paquete, que
denen cuál es el propósito de éste y si lleva datos adjuntos.
La documentación del protocolo IAX describe el orden de estas cabeceras y los metadatos, tales como tramas de control, meta-tramas y elementos de información, cada uno
de los cuales tiene su propia sintaxis. IAX no está codicado usando ASCII, ni ASN.1,
en vez de esto, usa un esquema propietario de codicado binario más orientado a la
interfaz máquina-máquina.
Al contrario que ocurre con H.323 y SIP, IAX no es una recomendación estándar, sino
más bien un protocolo independiente creado por Mark Spencer. Aunque propietario, la
especicación de IAX es abierta y ha sido aceptada por la comunidad VoIP.
Funciones/Características
SIP
47
H.323
IAX
3 LA VoIP.
Localización de terminales
Método SIP
y admisión
REGISTER
Establecimiento y
Método SIP INVITE
Protocolo RAS
Tramas de control
IAX REG
Protocolo H.225
liberación de llamada
Tramas de control
IAX NEW y
HANGUP
Negociación de capacidades,
Protocolo de
codecs y puertos para datos
Denición de Sesión
Protocolo H.245
Información de
multimedias
Paquetización y transmisión
Meta-trama de
Capacidades IAX
Protocolos
de muestras de sonido
RTP/RTCP
Streaming de video y
Protocolo RTSP
audio grabado
Protocolos
Tramas IAX
RTP/RTCP
VOICE/DATA
Ninguno
Ninguno
recomendado
recomendado
Codicación de trama
ASCII
ASN.1
Binario
Simulitud de mensajes
HTTP
RDSI/Q.931
Propietario
Rutaje de llamada descrito
Proxy
Gatekeeper-
Software PBX
como
Dipositivo de referencia
rutado
Registrar
Gatekeeper
Servidor
Redirect
Señalización
Señalización
directa
directa
Gateway H.323
Ninguna
para el rutaje de llamadas
Ruta de llamada
independiente
Interfaz RDSI
Ninguna
recomendada
Identicación de terminales
SIP-URI, dirección
recomendada
Dirección E.164
de email, dirección
SIP-URI,
dirección de
E.164 o alias
email, dirección
E.164 o alias
Conexión a traves de
cortafuegos
Redirección a través
de Proxy/softPBX
Redirección a
No se necesita
traves de Gate-
Proxy
keeper/SoftPBX
Puertos UDP
5060/5061
48
1503,1720,1731
5036
3 LA VoIP.
3.4.5.
LOS PROTOCOLOS MEGACO Y SIGTRAN
Estos dos protocolos surgieron con la aparición, como consecuencia de la liberación del
servicio telefónico, de escenarios que permiten el tránsito de llamadas entre terminales
telefónicos de la RTC, a través de una red IP. En estos escenarios no exiten terminales
VoIP nativos conectados directamente a la red IP. La solución se basa en el empleo de
pasarelas VoIP conectadas entre sí a través de una red dorsal IP, y localmente, a una o
más centrales telefónicas.
Con objeto de que las pasarelas que proporcionan el inter-funcionamiento entre la red la
red telefónica y la red IP sean lo más sencillas posibles, el proceso de llamada y el manejo
de la señalización se realizan en un servidor de llamadas (controlador de pasarelas). De
esta forma, las pasarelas sólo tienen que encargarse del manipulado físico de los ujos
de voz: codecs, empaquetado, control de jitter, cancelación de ecos, etc.
Pasarela de medios (MG):
1. Conmutación de ujos de voz, bajo las órdenes de su controlador.
2. Conversión de medios: codecs a usar, cancelación de ecos, etc. Controlado por
el MGC
3. Detección de eventos básicos: colgar, descolgar, marcación de dígitos, etc.
Controlador de pasarelas (MGC):
1. Procesos de llamadas: encaminamiento, etc.
2. Controlar a las pasarelas de medios (MG): codecs a utilizar, establecer conexiones, etc
3. Recibir noticaciones de diversos eventos desde las pasarelas.
Esta arquitectura da lugar a dos protocolos, que deben coexistir:
1. MEGACO/H.248: protocolo del tipo cliente/servidor denido conjuntamente por
el IETF y la ITU-T, para el control remoto de las pasarelas de medios desde el
controlador de las mismas. Una MGC controlará a varios MC a través del protocolo
H.248, y se comunicará con otras MGC a través del protocolo SIP o H.323.
49
3 LA VoIP.
2. SIGTRAN: familia de protocolos del IETF que permite el transporte de la señalización telefónica sobre la red IP hasta el servidor de llamadas, MGC
Figure 3.10: Integración de las redes RTC e IP.
50
Descargar