Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
La VoIP es una tecnología de comunicación que hace posible que la voz
digitalizada viaje a través de Internet empleando el protocolo IP (Internet Protocol)
en lugar de hacerlo de forma analógica a través de circuitos dedicados.
Como la aplicación más común de la VoIP es la telefonía (Telephony over IP, ToIP),
casi nunca se habla de ToIP sino que hablamos de VoIP refiriéndonos a la
posibilidad de realizar llamadas telefónicas a través de Internet ahorrando en costes
de establecimientos de llamada, tarificaciones por uso de la red telefónica, costes
por roaming, etc.
Por no hacer este apartado demasiado extenso, vamos a contar la historia de la
telefonía de manera muy resumida…
Todo empieza en 1871 cuando Antonio Meucci (y no Graham Bell como mucha
gente piensa) inventa el teléfono, un dispositivo capaz de transmitir voz entre dos
extremos separados por un material conductor (un cable). Pronto el invento iría
ganando la atención de empresarios y gran público apareciendo los primeros
enlaces de telefonía por hilos. Las conexiones al principio eran punto a punto así
que por cada destino al que quisiéramos llamar tendríamos que tener un cable
directamente conectado con dicho destino. Como esta solución era inviable, se
trabajó en desarrollar una solución que permitiera dirigir las llamadas punto a
multipunto con lo que aparece la centralita telefónica manual.
Con el tiempo, fuimos consiguiendo que las cosas funcionaran de manera
automática y aparecieron las primeras centralitas telefónicas de conmutación
automática que aprovechaban la marcación de los usuarios para dirigir las llamadas
al destino deseado. ¿Qué tiene de particular esta solución? Pues que reservan
recursos de la red ya que cada llamada requiere un enlace directo entre el origen y
el destino. Las compañías telefónicas eran las propietarias de la los cables por los
que se enviaban las llamadas enrutadas.
Con el desarrollo de las redes de ordenadores, empezamos a enviar información
entre equipos situados a mucha distancia y no se tardó en plantear la posibilidad
de enviar paquetes de datos de voz para “simular” el comportamiento de las redes
telefónicas tradicionales. La diferencia principal entre esta solución y la telefonía
tradicional es que ya no se reservarían recursos en la red por lo que ésta quedaría
más descongestionada y se podrían reducir los costes de las llamadas. Cada
paquete con voz digitalizada sabe cuál es su destino, y la red simplemente se
encarga de que se reciban los paquetes de voz. Cuando uno de los extremos no
habla, simplemente no se envía nada, y la red no se satura con canales que no se
utilizan. Aunque al principio, sólo podíamos contar con soluciones propietarias que
a su vez eran bastante caras e incompatibles entre sí, con la aparición de los
sistemas multimedia, y en concreto las tarjetas de sonido y su bajada de precios, se
llegó a una situación en la que cualquier ordenador tenía la capacidad de trabajar
con VoIP.
Pues dos factores fundamentales: Por un lado, La aparición en 1999 de una
plataforma de telefonía de código abierto creada por Mark Spencer, conocida como
Asterisk y que no tardó en convertirse en la solución de telefonía por IP de
referencia a nivel mundial. Y por otro lado, la aparición de proveedores de VoIP y
servicios de telefonía IP que han simplificado el esquema de funcionamiento de
cara a los usuarios finales y que han conseguido en países como Francia cuotas de
mercado que superan el 40% de la telefonía total del país.
Para entender cómo funciona la VoIP tenemos que entender qué es un protocolo
de comunicaciones porque a fín de cuentas la VoIP es un intercambio de
información entre dos equipos.
Para no dar demasiados rodeos, podemos decir que un protocolo de
comunicaciones se define como un conjunto de reglas y/o de normas que permiten
que dos o más equipos se comuniquen entre ellos. El símil más sencillo es una
conversación entre dos personas. Para que la comunicación sea efectiva, ambas
personas tienen que hablar el mismo lenguaje y hacerlo de manera pausada,
respetando los espacios entre palabras, los silencios al final de cada frase y las
entonaciones adecuadas. En un protocolo de comunicaciones ocurre exactamente
lo mismo. No vale de nada que un equipo le diga a otro: “te estoy enviando datos”
sin que el otro equipo se haya enterado de que hay alguien que quiere comunicarse
con él. Y en el caso de la VoIP esta comunicación es crucial puesto que la voz debe
transmitirse en tiempo real y con la mayor calidad posible.
Ahora sí podemos entender por qué cuando usamos un protocolo de
comunicaciones hablamos de dos tipos de datos: Por un lado tenemos los datos
que marcan las reglas sobre cómo tiene que hacerse el intercambio de información
(‘señalización’) y por otro lado tenemos la información útil con los datos voz que es
lo que realmente queremos comunicar.
Paquetes de Voz
Los paquetes de voz van a viajar siempre sobre el protocolo de transporte UDP
(User Datagram Protocol) que es un protocolo que no está orientado a conexión y
no es fiable aunque sí que es mucho más rápido que TCP. Además, al no importar
que algunos paquetes se pierdan, no se retransmite información lo cual también
supone una ventaja a la hora de transmitir datos de voz.
Dentro de UDP, lo normal es que los paquetes de voz se encapsulen en tramas
RTP (Real-Time-Protocol) pero no vamos a profundizar este punto. Simplemente
tenemos que tener claro que va a existir un flujo de paquetes de voz que llegan al
destino. Si algún paquete se pierde por el camino no hacemos nada por recuperarlo
porque con la información que nos llega del resto de paquetes podemos
“recomponer” la señal de voz. En el apartado de Códecs desarrollaremos mejor
este punto.
El protocolo H.323 es una recomendación de la ITU (International
Telecommunication Union) y define el conjunto de reglas que tienen que seguirse
para proveer sesiones de comunicación audiovisual en red. Se suele utilizar para
ToIP y videoconferencias y es una parte de la serie de protocolos H.32X, los cuales
también dirigen las comunicaciones RDSI, RTC ó SS7. No garantiza una calidad de
servicio y el transporte de datos puede, o no, ser fiable. Fue el primer protocolo que
se utilizó para la VoIP y aunque sigue en uso, cada vez se utiliza menos.
También conocido como Protocolo de Inicio de Sesiones (Session Initiation
Protocol), es un protocolo desarrollado por el IETF con la intención de ser el
estándar de referencia para la iniciación, modificación y finalización de sesiones
interactivas de usuario donde intervienen elementos como el vídeo, la voz, la
mensajería instantánea, etc. Es un protocolo parecido a HTTP y SMTP ya que
existía un fuerte interés por que la telefonía se convirtiera en un servicio más en
Internet. Entre sus desventajas, la más importante es que SIP da muchos
quebraderos de cabeza cuando una comunicación pasa a través de un dispositivo
NAT (Network Address Translation) ya que está pensado para transportar la
señalización de una llamada pero no el transporte del audio. Así, mientras que la
señalización utiliza unos puertos fijos y estandarizados (el 5060 normalmente), el
encargado de enviar el audio (RTP) usa puertos elegidos al azar entre el 10.000 y el
20.000 lo que lleva a que muchos firewalls/NAT no sean capaces de asociar el
enlace establecido en la señalización con el flujo de audio dentro de una llamada.
El protocolo IAX (Inter-Asterisk eXchange protocol), recogido en la RFC-5456, fue
diseñado como protocolo de conexiones VoIP entre servidores de Asterisk aunque
hoy en día también se utiliza para conexiones entre clientes. Es un protocolo mucho
más ligero, simple y compacto que H.323 y que SIP ya que la señalización no se
hace fuera de banda sino que señalización y datos viajan en los mismos paquetes.
Esta característica permite reducir el número de conexiones simultáneas y es la
más adecuada para entornos en los que firewalls y NATs nos pueden dar
problemas. Entre sus inconvenientes, el más importante es que IAX2 no es un
estándar con lo que no está implementado en muchos dispositivos que están en el
mercado. Otro inconveniente es que si utilizamos un servidor SIP, la señalización de
control pasa siempre por el servidor pero la información de audio puede viajar
extremo a extremo sin tener que pasar necesariamente éste. En IAX, al viajar la
señalización y los datos de forma conjunta, todo el tráfico de audio debe pasar
obligatoriamente por el servidor IAX, por lo que se produce un aumento en el uso
del ancho de banda que deben soportar los servidores IAX sobretodo cuando hay
muchas llamadas simultáneas.
Como la primera versión de IAX se quedó corta casi al principio, apareció una
segunda versión (IAX2) que es la que se utiliza hoy en día.