1 Voz sobre IP y Asterisk
2 Tradicionalmente el tráfico de voz y de datos han sido soportados por redes distintas. Las de transporte de voz (telefonía) transportan un tráfico continuo en el tiempo. Se utilizan redes de conmutación de circuitos que asignan recursos a cada comunicación individual durante todo el tiempo para proporcionar un retardo constante. Las de datos, proporcionan un flujo de información intermitente. En este caso la asignación de recursos es dinámica y sólo se consumen recursos cuando existe tráfico que transmitir. Por este motivo las redes de datos son redes de conmutación de paquetes. El retardo es variable debido a las fluctuaciones en el nivel de ocupación de las colas de paquetes. Voz sobre IP
3 En los últimos años el éxito de Internet ha llevado a tratar de integrar todos los servicios sobre una red basada en IP. Sin embargo para poder ofrecer servicios sobre IP es necesario que la red pueda proporcionar calidad adecuada a cada tipo de servicio. Este aspecto es crítico en los servicios multimedia (voz y video) donde las exigencias de retardo son cruciales. Al utilizar redes IP para transmisión de voz es necesario solucionar numerosos problemas: pérdida de paquetes, retardos grandes y muy variables, sobrecarga debido a las cabeceras de los paquetes de voz...
4 Demoras (latency), que incluye la acumulación de la demora de transmisión, la demora de paquetización, la codificación y la memoria buffer. Variación de la demora (jitter). Pérdida de paquetes. Distorsión de codificación. Eco Niveles de señales y sus variaciones. Voz sobre IP
5
6 G.711G.721G.726G.727G.728G.729G.723.1GSM Tipo de codificación PCMADPCM LD- CELP CS- ACELP MP- MLQ/ ACELP RPE- LTP Tasa binaria (Kbits/s) 643216/24/ 32/40 1686,4/5,313 Complejidad (MIPS) 0,11012 332216/182,5 Retardo codificador (ms) 0,125 0,6250,125 1537,520 Calidad (MOS)4,24,0 3,7-3,93,6-3,8 LDCELP - Low-delay code cxcited linear prediction CSACELP - Conjugate structure algebraic code excited linear prediction MPMLQ - Multipulse maximum likelihood quantization ACELP - Algebraic code excited linear prediction Voz sobre IP Codecs
7 Supresión de silencios Es un mecanismo complementario al empleo de códecs compresores para reducir el ancho da banda. Se pretende detectar períodos de silencio durante la conversación (mecanismos VAD, Voice Activity Detection) suprimiendo el envío de paquetes de voz mientras dure la situación. Se pueden obtener reducciones de hasta el 60% en el flujo de paquetes. Para evitar que el interlocutor piense que se ha cortado la comunicación durante los intervalos de silencio se envían periódicamente paquetes de silencio (SID, Silence Insertion Description) durante la pausa. Estos paquetes proporcionan una indicación del nivel de ruido que existe en el origen para que el receptor lo simule en el terminal remoto mediante un generador de ruido. Voz sobre IP
8 Retardo extremo a extremo Existen muchos factores que contribuyen al retardo extremo a extremo: retardo del algoritmo de codificación, tiempo de empaquetado, tiempo de propagación, tiempo de transmisión, tiempos de espera en los nodos de conmutación, tiempo de descompresión,... Debe mantenerse por debajo de un cierto nivel para minimizar dos efectos indeseables: la pérdida de interactividad y el eco. A partir de 150 ms de retardo en un sentido, la persona que habla al percibir que su interlocutor tarda en contestar, repite sus palabras, a la vez que recibe la respuesta procedente del otro extremo. El segundo efecto, el eco, es más molesto cuanto mayor es el retardo ida y vuelta. Al superar 50 ms de retardo, es necesario utilizar mecanismos de supresión o cancelación de ecos. Voz sobre IP
9 Fluctuación de retardo (jitter) El transporte de voz empaquetada no es sensible sólo al retardo extremo a extremo (latencia) sino también a las fluctuaciones o variaciones de ese tiempo de retardo (jitter). Estas variaciones son debidas a la fluctuación en los tiempos de espera de los nodos de la red. Para evitarlo se utiliza un buffer amortiguador en el receptor que almacena los paquetes por orden de llegada extrayéndolos de manera síncrona. Voz sobre IP
10 Pérdida de paquetes Las perdidas de paquetes se producen por errores de transmisión y por congestión en la red, son muy comunes en las redes de datos. Por ejemplo en los emisores de voz, que tienen flujo de tasa fija, el aviso de congestión es inútil porque no pueden reducir la tasa de envío aunque se detecten las pérdidas. En este caso tampoco se pueden aplicar técnicas de retransmisión porque los paquetes serían descartados en el destino por llegar con retardo excesivo. Por este motivo en el caso de VoIP se utiliza el protocolo de transporte UDP en vez de TCP. Las redes IP no tienen ningún mecanismo y sólo pueden ofrecer un servicio best-effort. El problema de la calidad de servicio IP sigue abierto. Voz sobre IP
11 Protocolos de VoIP.
12 RTP (Realtime Transport Protocol) El protocolo RTP es el estándar para el transporte de tráfico (audio o video) en tiempo real sobre Internet. Utiliza UDP - datagramas no confirmados. Sin retransmisiones. Cuando se abre una sesión RTP, al mismo tiempo se abre una sesión RTCP implícita. -RTP utiliza número de puerto par y RTCP el número de puerto impar que corresponde a continuación. RTP permite: Difusión (multicast) Cifrado Mezcladores y Traductores de código Realimentación de QoS con RTCP Voz sobre IP
13 RTCP El RTCP (Real Time Control Protocol) regula el intercambio de mensajes de control entre los participantes en una sesión multimedia. Protocolo de control de los flujos RTP, que proporciona información adicional a los participantes, permitiendo adaptar las fuentes al estado de la red (p.ej. Congestión). Esto se realiza mediante la transmisión periódica de paquetes de control RTPC por cada participante en una sesión RTP, empleando el mismo mecanismo de distribución que los paquetes de datos La información se refiere a la QoS con que se está desarrollando la comunicación: retardo, jitter, tasa de paquetes recibidos y perdidos, etc. En comunicaciones individuales (unicast) no es necesario pero es útil. En difusión, es imprescindible para conocer como reciben los distintos destinatarios y homogeneizar la calidad.
14 Pasarela de Acceso Red IP Pasarela deTránsito Teléfono convencional Puerto X Puerto Y Red de Tránsito Teléfono IP Voz sobre IP Control de la comunicación Los sistemas necesitan: Negociar tipo de codificador Intercambiar parámetros de empaquetado. Intercambiar números de puerto. Solicitar calidad de servicio a la red. ¿Cómo? -- Señalización
15 Voz sobre IP Protocolos de Señalización. En el caso de los protocolos de señalización no existe unidad de protocolos. Los factores que han motivado la multiplicidad de protocolos de señalización se pueden resumir en: Variedad de escenarios a considerar: comunicación directa entre terminales VoIP, interfuncionamiento entre redes VoIP y redes telefónicas convencionales, etc. Diferentes enfoque de los organismos de normalización (IETF e ITU-T). Existen dos grandes familias de protocolos orientadas a dos escenarios diferentes: Protocolos de señalización entre terminales nativos (SIP, H.323). Protocolos de señalización de llamadas telefónicas a través de redes IP.
16 Estándar ITU-T H.323 Conjunto de estándares para comunicaciones multimedia sobre LANs sin QoS garantizado. Arquitectura propuesta por H.323 es muy completa y cubre prácticamente todos los aspectos necesarios para la definición de un sistema de comunicaciones multimedia: tipos y características de los equipos, servicios que soporta y protocolos necesarios en el plano de usuario y en el de control (señalización). Protocols Parte de H.225.0 - RAS, Q.931 H.245 RTP/RTCP Audio/video codecs Voz sobre IP
17 Arquitectura de Protocolos H.323 Voz sobre IP
18 Arquitectura H.323 Voz sobre IP
19 Protocolos H.323 Codecs de audio(G.711, G.723.1, G.728, etc.) y codecs de video(H.261, H.263) Audio y video son transportados sobre RTP/RTCP RTP carries actual media RTCP carries status and control information RTP/RTCP trasportado sobre UDP La señalización es transportada sobre TCP RAS - registration, admission, status Q.931 - call setup and termination H.245 - capabilities exchange Voz sobre IP
20 SIP (Protocolo de Inicio de Sesión) Es un protocolo de Señalización que permite el establecimiento, la modificación y la liberación de sesiones multimedias (voz, video, datos). Definido por el IETF MMUSIC Group RFC 2435 Versión original (Marzo 1999). RFC 3261 Ultima versión (Junio 2002). Proporciona servicios de localización, establecimiento de llamada, gestión de participantes. Características Basado en arquitectura simple textual de respuesta a pedidos similar a HTTP (Hyper Text Transfer Protocol), del cual utiliza además otros aspectos como (modelo Cliente/Servidor, Direcciones URL, códigos de Respuesta) y del protocolo SMTP (Encabezamientos y transmisiones ASCII). Utiliza SDP para la especificación del medio Utiliza RTP para Tx de Voz y Video sobre IP Utiliza RTCP para el control de la Tx de paquetes RTP. Voz sobre IP
21 Elementos funcionales en Arquitectura SIP Voz sobre IP User Agent Client (UAC) Es una aplicación que emite peticiones SIP (inicia las llamadas) User Agent Server (UAS) Es una aplicación que acepta peticiones SIP (responde a las llamadas) Los UAs deben implementar el transporte tanto sobre TCP, UDP, y quizás sobre SCTP. UACs y UASs pueden por si sólos y sin servidores de red, ser capaces de soportar una comunicación básica (modelo de llamada básico) directamente entre puntos extremos.
22 Tres tipos de Servidores: Servidor de Registro, Acepta solicitudes de registro, actualizándose sobre la localización corriente de los usuarios, por lo que también se conoce como servidor de Localización. Servidor Proxy, recibe peticiones y las reenvía a otros servidores. Puede multiplicar peticiones reenviándolas a distintos puntos a la vez y la primera en contestar es la que se conecta al llamante. Servidor de Redirección, recibe peticiones y contesta con la dirección del servidor del siguiente salto. Voz sobre IP User Agent Server
23 Sesión Description Protocol Se utiliza para describir parámetros de sesiones multimedia. Es el contenido de cada uno de los métodos SIP Contiene información sobre: Tipos de Flujos: Nº y tipos Direcciones destino de cada uno de los flujos (pueden ser distinto) Puertos UDP envió/recepción de cada flujo Conjunto de capacidades, formatos a utilizar durante la sesión. Instante de arranque parada Originador, para sesiones de difusión SDP Voz sobre IP
24 MEGACO/H.248 (Media Gateway Control Protocol) Es una especificación común del IETF y el ITU-T aprobada en Abril del 2000 para la comunicación entre MGs y MGCs. La figura de la pasarela (MG) en MEGACO interconecta redes heterogéneas, una de las cuales se presume que es una red IP, ATM o Frame-Relay, proporcionando interconexión y traducción bajo el mando de un MGC. Se puede emplear en arquitecturas SIP y H.323 para la gestión de las pasarelas. Voz sobre IP
25 MEGACO/H.248 (Media Gateway Control Protocol) MEGACO utiliza comandos para controlar las MGs. Existen comandos para crear contextos, añadir terminaciones y modificar el estado de las mismas en los contextos, crear asociaciones MGC-MG, etc. Los comandos se agrupan en transacciones, consistiendo cada transacción en una o más acciones y una acción en un conjunto de comandos que se aplican a un mismo contexto de forma secuencial. Para el transporte de las transacciones se puede utilizar UDP o TCP. Voz sobre IP
26 MEGACO
27 Asterisk
28 ¿Que es Asterisk? Es una PBX VoIP PBX completa basada en software Funciona sobre GNU/Linux Funcionalidades de una centralita tradicional Interoperar con cualquier sistema de telefonía, con el uso de hardware de bajo coste. Servicios de: correo de voz, conferencias, IVR, colas de llamadas... Su nombre proviene del símbolo *.(por su flexibilidad) Asterisk
29 ¿Como se obtiene Asterisk? Las distintas versiones de Asterisk pueden ser descargadas de manera gratuita desde ftp://ftp.asterisk.org. ftp://ftp.asterisk.org También puede ser descargado desde los repositorios CVS localizados en [email protected]@cvs.digium.com ¿ Licencia para Asterisk? Asterisk es distribuido bajo los términos GNU GPL (Global Public License)
30 PBX VoIP y Gateway VoIP - Extensiones: IP : SIP, IAX, H323, MGCP.. Analógicas y digitales - Líneas IP: SIP o IAX Analógicas y digitales Asterisk
31 Historia - Finales 90: Zapata Telephony system Protocolos H323 y SIP - 1999: Surge Asterisk de mano de Mark Spencer. Creación de Linux support Devices, futura DIGIUM. -2000's: Distintas versiones van apareciendo con más funcionalidades. Gran numero de desarrolladores Aplicaciones para Asterisk - Actualmente: Versión actual: 1.2.13 y 1.4.x Asterisk
32 Beneficios y ventajas - Interoperabilidad con sistemas de telefonía tradicional y con sistemas de VoIP -Múltiples funcionalidades - Posibilidad de ampliación de funcionalidades, usuarios y líneas sin tener que cambiar de PBX - Posibilidad de interconexión entre distintas oficinas a través de Internet - Múltiples teléfonos para usar. - Costes menores que en las PBX tradicionales - En constante evolución Asterisk
33 Conexión con otros sistemas de telefonía -Conexión hacia las redes de telefonía tradicional mediante hardware - Líneas analógicas - Líneas digitales BRI -Líneas digitales PRI - Conexión con protocolos de VoIP - SIP - IAX - MGCP - H323 Asterisk
34 Protocolos de VoIP - Asterisk soporta casi todos los protocolos de VoIP: SIP H323 MGCP IAX : Protocolo desarrollado por Digium. Menos ancho de banda que SIP. Datos y señalización por puerto 4569. Transparente a NAT. Ideal para conexión entre PBX Asterisk. SKINNY/SCCP (Skinny Client Control Protocol): Protocolo propietario del equipamiento VoIP de Cisco. UNISTIM: Protocolo propietario del equipamiento VoIP de Nortel. Asterisk
35 Codecs soportados Asterisk soporta diversos códecs de audio: Asterisk
36 Requerimientos del Servidor - Hardware -Arquitectura x86 - Potencia del servidor: Depende de factores como: Numero de conexiones (llamadas) concurrentes Cancelación de eco Carga computacional del dialplan Códecs empleados -Ranuras PCI : conexión de tarjetas de comunicaciones - Disponibilidad: Fuentes redundantes Discos duros redundantes Asterisk
37 Servidor – Sistema Operativo -S.O. GNU Linux -Version de Kernel: 2.4, 2.6 -Distribuciones: Suse Linux Red Hat CentOS Debian Fedora Mandrake Asterisk
38 Tarjetas de Telefonía - Analógicas: DIGIUM Módulos FXO y FXS TDM400P y TDM2400E Asterisk
39 Tarjetas de Telefonía -Digitales: RDSI Básicas (BRI) Asterisk
40 Tarjetas de Telefonía -RDSI Primarios (PRI) 1 PRI, 2 PRI y 4PRI Asterisk
41 Terminales - Teléfonos IP: Protocolo SIP Display Teclas avanzadas Configuración Web - Fabricantes: Linksys SNOM Grandstream, Polycom,.. Asterisk
42 Terminales - Sofphones: Linux, Windows, Mac, Pocket,... Protocolos SIP e IAX Libres o de pago Voz, video, mensajería instantánea - Modelos: X-lite y Eyebeam Idefisk Web : MoxIax Asterisk
43 Arquitectura
44 Asterisk Integración
45 Asterisk Integración
46 Asterisk Configuración Configuración plan de marcado -Llamadas salientes -Llamadas entrantes - Llamadas internas
47 Asterisk Configuración Llamadas salientes: -Operadores tradicionales -Operadores IP -Enrutado inteligente -Prefijos -Enlaces backup
48 Asterisk Configuración Llamadas entrantes: - IVR (Interactive voice response) - Operadora Automática - DISA - Colas y agentes -Horarios - Música en espera - Directorio
49 Asterisk Configuración Llamadas internas: - Llamadas entre extensiones - Buzón de voz - Desvíos, transferencias y aparcado de llamadas - Acceso a funcionalidades - Desvíos - Buzón de voz - Mensajes
50 - Desvío de llamadas - Transferencia de llamadas - Buzón de voz - Salas de conferencias - Directorio - Música en espera - Colas - Agentes - Mensajes configurables - Detalle de llamadas Asterisk Algunas funcionalidades:
51 -AGI (Asterisk Gateway Interface) -AMI (Asterisk Manager Interface) - Aplicaciones avanzadas Asterisk Aplicaciones para Asterisk
52 AGI (Asterisk Gateway Interface) - Interfaz para programas externos que interactúan con Asterisk - Comunicación con bases de datos (PostgreSQL, MySQL) - Aplicaciones que en Asterisk no se pueden realizar - Programación AGI´s: Perl, PHP y Python Asterisk
53 AsterPas es un servidor de script escritos en Object Pascal y basado en FastAGI para la PBX Asterisk. FastAGI es un tipo de AGI implemetado para ser usado a través de la red. A través de esta AGI se puede tomar el control sobre el plan de discado de nuestro Asterisk. Asterisk AsterPas
54 AMI (Asterisk Manager Interface) - Interfaz para programas externos que monitoricen o manejen Asterisk - Aplicaciones fuera de la máquina donde reside Asterisk - Funcionalidades típicas: Aplicaciones de monitorización (FOP) Aplicaciones de configuración y manejo Asterisk
55 Aplicaciones de monitorización (FOP). Flash Operator Manager Interface. Asterisk
56 Asterisk-GUI. Interfaz Web para configuración de Asterisk.
57 Aplicaciones avanzadas: -Text to speech : Festival -Reconocimiento de voz : Sphinx - Reporte metereológico Asterisk
58 All of the major telecommunications manufacturers offer similar-minded products. They don’t want you to have flexibility or choice; they want you to be locked in to their product cycles. Asterisk changes all that. With Asterisk, no one is telling you how your phone system works, or what technology you are limited to. If you want it, you can have it. Asterisk lovingly embraces the concept of standards compliance, while also enjoying the freedom to develop its own innovations. What you choose to implement is up to you-Asterisk imposes no limits. Asterisk
59 Naturally, this incredible flexibility comes with a price: Asterisk is not a simple system to configure. This is not because it’s illogical, confusing, or cryptic; to the contrary, it is very sensible and practical. People’s eyes light up when they first see an Asterisk dialplan and begin to contemplate the possibilities. But when there are literally thousands of ways to achieve a result, the process naturally requires extra effort. Perhaps it can be compared to building a house: the components are relatively easy to understand, but a person contemplating such a task must either a) enlist competent help or b) develop the required skills through instruction, practice, and a good book on the subject.
60 Asterisk Demostración práctica…