Mediante esta entrada se pretende realizar un resumen esquematizado de los recursos VoIP de tal forma que el lector tenga la capacidad de adquirir los conocimientos básicos sobre dichos recursos.
Glosario previo
PSTN o RTB: Red de conmutación de circuitos empleada por la telefonía. Es orientado a la conexión. La señal se emplea para reservar los recursos entre extremos al comienzo de la llamada. Los recursos se emplean para transmitir el tráfico de voz que se liberan al finalizar la llamada.
VoIP: Tecnología que permite el uso del protocolo IP para transmitir señales de voz.
CMS: Servidor de gestión de llamadas.
Codec: Codificador-decodificador que capaz de transformar un archivo en un flujo de datos y viceversa.
Gateway: Entidad lógica que permite interconectar 2 redes heterogeneas. Ej: VoIP con la red PSTN.
Internet: Red de conmutación de paquetes no orientado a la conexión. Cada paquete se enruta de manera independiente.
MCU: Unidad de control multi-punto
RG: Gateway remoto
RTP: “Realtime Transport Protocol” Empleado por la mayoría de implementaciones de VoIP para el media path. Emplea un flujo encapsulado el cual se puede dividir en la cabecera RTP la cual se antepone a cada paquete de tipo media, así como un flujo separado de control de paquetes RTCP. La comunicación entre ambos extremos es UDP.
SDP: Método de codificación basado en texto para definir sesiones multimedia. Define los flujos de media audio así como la forma y cuando deben de ser enviados.
Motivaciones y motivos para la creación de VoIP
Las principales motivaciones y motivos para la creación de los recursos VoIP fueron los siguientes:
- Ahorro de costes en llamadas de voz, llamadas a larga distancia así como para los proveedores.
- Los proveedores no están regulados y la mayoría de las veces no tienen que pagar licencias.
- Empleo de codes de baja transmisión de BITS (Menores de 20Kbps)
- Se puede optimizar el uso del ancho de banda sin tener que reservarlo como en redes orientadas a la conexión.
- Reducción de mantenimiento (Se pasa de gestionar dos redes a gestionar una única red
- Posibilidad de ofrecer nuevos servicios y aplicaciones
Destacar que las redes IP no están orientadas a la conexión y emplean conmutación de paquetes. En cambio las redes de voz están orientadas a la conexión y emplean conmutación de circuitos.
Retos
Latencias: Pueden ser absolutas (de mas de 200-250ms) que se consideran inaceptables debido a la transmisión real de la voz. Por otra parte existen las latencias relativas (Jitter o retadors variables) que suponen otro gran problema.
Las latencias se pueden producir en el nodo transmisor en el momento de la paquetización, codificación y transmisión. Si se producen en la red pueden ser en el proceso de propagación, procesamiento de cola o en el proceso de transmisión “Switching delay”. Finalmente tenemos las latencias que se pueden producir en el receptor. En este caso se destaca el play-out buffer. El receptor no reproduce los paquetes según llegan. Lo que realiza es almacenar dichos paquetes en el denominado play-out buffer. Cuanto mas grande, menos jitters o retardos variables. Mediante el empleo de está técnica se incrementa el delay absoluto.
Otro reto a tener en cuenta es la pérdida de paquetes. Se puede tolerar una perdida del 5% de los paquetes de voz. La tolerancia depende de los codecs y si se ha implementado PLC “ocultación de pérdida de paquetes”.
Finalmente el ancho de banda disponible es otro factor a tener en cuenta. En VoIP hay que minimizar el uso de ancho de banda mediante el empleo de codecs y periodos de paquetización. De todas formas este factor solo es crítico en redes de tipo Wlan.
Técnicas que permiten transmitir la voz a través de la Red.
Sampling: Mediante muestreos, se convierte partes de la voz transformando las señales analógicas en digitales. El rango de voz tiene que ser menor de 4KHz y el muestreo de 8KHz.
Ecualización: Ajustamiento de las muestras tomadas para tratar de eliminar aquellos factores limitantes como pueden ser los micrófonos.
Cancelación de eco: Eliminar residuos de la voz recibidos de distancias lejanas o del extremo final que pueden ser accidentalmente transmitidas de vuelta al usuario. Estás pueden ser interferencias eléctricas “cancelación de echo de línea” o acoples entre el micrófono y el auricular “cancelación de eco acústico”.
Digit Relay: En VoIP es necesario emplear sistemas de señalización “CCS en el core y CAS en la red de acceso”. Para codes Low bit rate se emplea DTMF. Es decir, técnicas que permiten detectar que se ha pulsado una tecla y que envian esta información fuera de banda.
Detección de actividad de voz: Consiste en detectar cuando hay un discurso activo en la señal. Es necesario evitar la transmisión de voz en los periodos de silencio de voz ahorrando de esta forma ancho de banda.
Redundancia: Permite proteger la comunicación de la perdida de paquetes. Cada paquete contiene información de paquetes previos. Si se pierde un paquete, se pueden emplear otros paquetes posteriores para recuperar la información del paquete perdido.
Paquetización: Técnica que permite agrupar las estructuras del proceso de codificación en paquetes RTP. El periodo de paquetización es un parámetro clave. Cuanto mas grandes son los paquetes, mas eficiente es el sistema pero se producen mas retardos. En el otro extremo es necesario extraer las muestras de los paquetes, decodificarlos y reproducirlos.
Detección de tono: Analizando combinaciones particulares de frecuencias en la señal transmitida, es decir detectar pulsaciones, transmisiones de voz, etc…
Arquitecturas
Existen tres tipos distintos de arquitectura:
- Tipo A
- Tipo B
- Tipo C
Tipo A: Entre dispositivos de tipo Internet. La llamada nunca abandona el dominio IP. Ej: P2P
Tipo B: Entre un dispositivo de tipo Internet y otro de tipo PSTN. Se emplea un gateway el cual se puede clasificar como:
- Funcionalidad “GW de señal, GW media o ambos” El GW de señal garantiza la interconexión mediante el señalamiento VoIP y el PSTN. Traduce comandos entre formatos. Garantiza que la llamada se establezca. Los Media GW aseguran la ruta entre el PSTN y VoIP. Reformatean los paquetes y traducen los codecs.
- Residencial: Desplegados la premisa del cliente. Emplea un conector RJ45 que permite la conexión de una residencia hacia Internet. Permite conectar teléfonos PSTN y hacer llamadas VoIP.
- Pequeña mediana capacidad: Complejos de oficinas
- Trunking Gateways: De gran capacidad y desplegados por proveedores de servicios telefónicos
Tipo C: Entre dos dispositivos PSTN. La llamada viaja como VoIP entre gateways y como conmutación de circuitos de dispositivo a Gateway.
Los pasos necesarios para establecer las llamadas, administrarlas y finalizarlas se denominan señalización de llamada o protocolos de señalización de llamada.
Tipos de protocolos
Centralizados: Es estado de la llamada se mantiene en sitios centralizados dentro de redes IP “Call Agents, Conmutadores de software o MS” Los endpoints (gateways) son los responsables de seguir los comandos de los call agents y reportar los eventos de vuelta a los call agents
Distribuidos: Permiten que el conocimiento del estado de la llamada se comparta entre múltiples entidades. No requieren ninguna entidad centralizada.
Protocolos VoIP
MGCP
Protocolo centralizado que se compone de Gateways remotos y servidores de gestión de llamadas. Permite a los CMS controlar los RG. Un RG puede soportar uno o mas dispositivos terminales de tipo media. Emplea un mail jerárquico de nombres. Emplea mensajes de señalización MGCP. Usa SDP, ASCII y UDP. Cada mensaje tiene un ID
MegaCO
Es un protocolo basado en texto centralizado similar a MGCP. Puede ser tanto UDP como TCP. Usa SDP. Los componentes básicos son terminaciones y contextos.
H323
Estandarizado en 1996 y definido por ITU-T. Fue diseñado tanto para voz como para vídeo. Protocolo distribuido que consta de la siguiente arquitectura:
- Dispositivo terminal
- Gateway
- GateKeeper
- MCU
La terminal es el endpoint. El Gateway establece las conexiones, el gatekeeper traslada el número de teléfono a direcciones IP y administra el ancho de banda. El MCU administra las conferencias multipunto. Las señalizaciones de las llamadas se definen por H225. Los mensajes no se basan en texto y usan TCP. Dicha señalización se encarga de controlar las llamadas así como realizar el registro, gestionar la admisión y el estatus. Emplea funciones adicionales como Maestro-Esclavo y cambios de tipo media.
SIP
Es el actual líder en protocolos de señalización de VoIP. Fue definido originalmente para invitar usuarios a conferencias multimedia. Es un protocolo basado en texto. Emplea tanto TCP como UDP y TLS. Es distribuido y se basa en HTTP y SMTP. Es directo y emplea P2P. Los proxys SIP tienen varias funciones. El SIP endpoint es SIP useragent. Para hacer una llamada basta con conocer la dirección IP o el nombre de usuario relacionado con un proxy. También emplea SDP.
IAX2
Protocolo principalmente empleado por ASTERIX que permite establecer conexiones entre nodos que hacen uso del protocolo IAX. El protocolo ha sido enfocado en búsqueda de la reducción del consumo de ancho de banda a la hora de transmitir voz y vídeo. Dicho protocolo emplea multiplexación de señalización y el intercambio de información se realiza a través de UDP.
Proceso de comunicación
- El mensaje de invitación contiene 2 secciones: Las cabeceras y la descripción de la sesión.
- El proxy reenvia la invitación a la parte llamada. También envía una confirmación al extremo que realiza la llamada para indicar que se está procediendo con la llamada. El extremo al cual se llama es alertado por el user agent “No depende de SIP”. El user agent devuelve con un ack al proxy indicando que la alerta esta teniendo lugar. Cuando la llamada se coge, el user agent envía una respuesta final indicando que la llamada se ha establecido. Se envía al proxy y esta al extremo origen de la llamada. El emisor confirma el formato de tipo media y donde debe de ser enviado exactamente. El emisor confirma el formato de tipo media y donde enviar exactamente los paquetes RTP. La voz no pasa por el Proxy, simplemente pasa entre los dos extremos de la llamada.
- Cuando algún extremo quiere terminar la llamada enviará un mensaje BYE a la otra parte. La otra parte responderá con un 200 OK y la llamada finalizará. Destacar que es necesario confirmación.
Para comentar debe estar registrado.