En este documento se proporciona una descripción general de los diversos codificadores-descodificadores (códecs) utilizados con las gateways Cisco IOS® Voz sobre IP (VoIP). En Cisco IOS Software Releases anteriores a 12.0(5)T, las gateways VoIP son compatibles sólo con los códecs G.729 y G.711 y sólo con una llamada de relé de voz/fax por procesador de señal digital (DSP). Con la introducción de Cisco IOS Software Release 12.0(5)T, las gateways Cisco VoIP soportan un mayor número de códecs y módulos DSP, además de soportar un máximo de cuatro llamadas de voz/fax-relay por DSP.
Para obtener más información sobre los DSP, refiérase a Hardware de Voz: Procesador de señal digital (DSP).
La herramienta Calculator DSP (sólo clientes registrados) determina los requisitos DSP para las plataformas de routers de las series 1751, 1760, 2600XM, 2691, 2800, 3700 y 3800 de Cisco y proporciona sugerencias de aprovisionamiento PVDM como resultado. La herramienta calcula los requisitos de DSP en función de los módulos de interfaz, las configuraciones de códec, los canales de transcodificación y las sesiones de conferencia proporcionadas como entrada. Esta herramienta admite diferentes versiones del software Cisco IOS válidas para las plataformas Cisco 1751, 1760, 2600XM, 2691, 2800, 3700 y 3800.
No hay requisitos específicos para este documento.
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
Algunas técnicas de compresión codec requieren más energía de procesamiento que otras. La complejidad de los códecs se divide en dos categorías denominadas media y alta complejidad.
La complejidad media permite que los DSP C549 procesen hasta cuatro llamadas de relé de voz/fax por DSP y los DSP C5510 procesen hasta ocho llamadas de voz/fax por DSP.
La alta complejidad permite que los DSP C549 procesen hasta dos llamadas de relé de voz/fax por DSP y los DSP C5510 procesen hasta seis llamadas de voz/fax por DSP.
Complejidad media (4 llamadas/dsp) | Alta complejidad ( 2 llamadas / dsp) |
---|---|
G.711 (a-law y m -law) | G.728 |
G.726 (todas las versiones) | G.723 Todas las versiones |
G.729a, G.729ab (anexo B G.729a) | G.729, G.729b (G.729-anexo B) |
Relé de fax | Relé de fax |
Nota: La diferencia entre los códecs de complejidad media y alta es la cantidad de utilización de CPU necesaria para procesar el algoritmo de códec y, por lo tanto, la cantidad de canales de voz que pueden ser soportados por un solo DSP. Por este motivo, todos los códec de complejidad media también pueden funcionar en el modo de complejidad alta, pero en tal caso habrá menos canales (generalmente la mitad) disponibles por DSP.
Nota: El relé de fax (2400 bps, 4800 bps, 7200 bps, 9600 bps, 12 kbps y 14,4 kbps) puede utilizar códecs de complejidad media o alta.
En las plataformas que admiten la tecnología DSP C549, la complejidad del códec se configura en la tarjeta de voz (por ejemplo, el módulo de red de voz de alta densidad 2600/3600/VG-200). Algunas plataformas soportan solamente una alta complejidad porque tienen suficientes DSP incorporados para soportar todos los canales T1/E1 que utilizan el modo de alta complejidad. Para especificar la densidad de llamada y la complejidad del códec de acuerdo con el estándar de códec que se utiliza, utilice el comando codec en el modo de configuración de la tarjeta de voz.
A continuación se muestra un ejemplo de la configuración de complejidad:
Cisco-router #configure terminal Enter configuration commands, one per line. End with CNTL/Z. Cisco-router(config)#voice-card 1 Cisco-router(config-voicecard)#codec complexity ? high Set codec complexity high. High complexity, lower call density. medium Set codec complexity medium. Mid range complexity and call density. <cr> Cisco-router(config-voicecard)#codec complexity high
En las plataformas compatibles con la tecnología DSP C5510, existe una opción adicional de complejidad flexible. Cuando utiliza la complejidad flexible, se pueden realizar hasta 16 llamadas por DSP. El número de llamadas admitidas varía de seis a dieciséis y se basa en el códec utilizado para una llamada.
Aquí se muestra un ejemplo de la configuración:
Cisco-router#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Cisco-router(config)#voice-card 1 Cisco-router(config-voicecard)#codec complexity ? flex Set codec complexity Flex. Flex complexity, higher call density. high Set codec complexity high. High complexity, lower call density. medium Set codec complexity medium. Mid range complexity and call density. <cr> Cisco-router(config-voicecard)#codec complexity flex
Este es un extracto del resultado show running-config para determinar qué complejidad se configura:
!voice-card 1 codec complexity high !
Esta tabla enumera el soporte de códecs para varias plataformas de router de Cisco.
Códec | 1751/1760 | 26xx/36xx NM-1V/2V | 26xx/36xx NM-HDV | 3700 | 3810 | AS5300 AS5800 | AS5350 AS5400 | 7200 | 7500 | CMM 24FXS | CMM 6T1/E1 |
---|---|---|---|---|---|---|---|---|---|---|---|
PCM G.711 a-law y u-law (64 kbps) | 12.0.5XQ1 | Yes | 12.0.5XK1 | Yes | 12.0.7XK | Yes | Yes | 12.0.5XE3 | 12.1.3T | Yes | Yes |
ADPCM G.726 (32, 24,16 kbps) | 12.1.2T | 12.0.5T | 12.0.5XK1 | Yes | 12.0.7XK | Yes | No | 12.0.5XE3 | 12.1.3T | No | No |
G.728 LD-CELP (16 kbps) | Yes | 12.0.5T | 12.0.5XK1 | Yes | 12.0.7XK | Yes | No | 12.0.5XE3 | 12.1.3T | No | No |
G.729 CS-ACELP (8 kbps) | 12.1.2T | Yes | 12.0.5XK1 | Yes | 12.0.7XK | Yes | No | 12.0.5XE3 | 12.1.3T | No | No |
G.729a CS-ACELP (8 kbps) | 12.0.5XQ1 | Yes | 12.0.5XK1 | Yes | 12.0.7XK | Yes | Yes | 12.0.5XE3 | 12.1.3T | Yes | Yes |
Anexo B G.729 (8 kbps) [VAD] | Yes | 12.0.5T | 12.0.5XK1 | Yes | 12.0.7XK | Yes | No | 12.0.5XE3 | 12.1.3T | No | No |
G.729a Anexo B (8 kbps) | Yes | Yes | 12.0.5XK1 | Yes | 12.0.7XK | Yes | Yes | 12.0.5XE3 | 12.1.3T | Yes | Yes |
G.723.1 MP-MLQ (6,3 kbps) | 12.1.2T | 12.0.5T | 12.0.5XK1 | Yes | 12.0.7XK | Yes | Yes | 12.0.5XE3 | 12.1.3T | No | No |
ACELP G.723.1 (5,3 kbps) | 12.1.2T | 12.0.5T | 12.0.5XK1 | Yes | 12.0.7XK | Yes | Yes | 12.0.5XE3 | 12.1.3T | No | No |
G.723.1 Anexo A MP-MLQ (6,3 kbps) | 12.1.2T | 12.0.5T | 12.0.5XK1 | Yes | 12.0.7XK | Yes | Yes | 12.0.5XE3 | 12.1.3T | No | No |
G.723.1 Anexo A ACELP (5,3 kbps) | 12.1.2T | 12.0.5T | 12.0.5XK1 | Yes | 12.0.7XK | Yes | Yes | 12.0.5XE3 | 12.1.3T | No | No |
Borrar canal | 12.3(2)XF, 12.3(11)T | Yes | Yes | Yes | 12.3(11)T | Yes | Yes | No | No |
Método de compresión de códec |
---|
PCM = Modulación de código de pulso |
ADPCM = Modulación de código de pulso diferencial adaptable |
LDCELP = Predicción lineal activada por código de retraso reducido |
CS-ACELP = Predicción lineal de estructura conjugada con código de argelino |
MP-MLQ = Cuantificación de pulsos y niveles múltiples |
ACELP = Predicción lineal activada por código argelino |
Cada códec proporciona una cierta calidad de voz. La calidad del discurso transmitido es una respuesta subjetiva del oyente. La calificación promedio de opinión (MOS) es una referencia común que se usa para determinar la calidad de sonido producido por códecs específicos. Con MOS, una amplia gama de oyentes juzgan la calidad de una muestra de voz (corresponde a un códec particular) en una escala de 1 (malo) a 5 (excelente). Se miden los puntajes para proporcionar el MOS para ese ejemplo. Esta tabla muestra la relación entre los códecs y las puntuaciones MOS.
Método de compresión | Velocidad de bits (kbps) | Puntuación MOS | Retraso de compresión (ms) |
---|---|---|---|
PCM G.711 | 64 | 4,1 | 0.75 |
ADPCM G.726 | 32 | 3,85 | 1 |
G.728 LD-CELP | 16 | 3,61 | 3 a 5 |
G.729 CS-ACELP | 8 | 3,92 | 10 |
Codificaciones G.729 x 2 | 8 | 3.27 | 10 |
Codificaciones G.729 x 3 | 8 | 2.68 | 10 |
G.729a CS-ACELP | 8 | 3.7 | 10 |
G.723.1 MP-MLQ | 6.3 | 3,9 | 30 |
G.723.1 ACELP | 5.3 | 3.65 | 30 |
Aunque puede parecer lógico desde el punto de vista financiero convertir todas las llamadas en códecs de baja velocidad de bits para ahorrar en costes de infraestructura, tenga cuidado adicional al diseñar redes de voz con compresión de baja velocidad de bits. Existen desventajas al comprimir la voz. Una de las principales desventajas es la distorsión de la señal causada por codificaciones múltiples (llamadas codificaciones en tándem). Por ejemplo, cuando una señal de voz G.729 se codifica en tándem tres veces, la puntuación MOS baja de 3.92 (muy buena) a 2.68 (inaceptable). Otra desventaja es el retraso inducido por el códec con códecs de baja velocidad de bits.
Estas dos secciones aclaran muchos de los problemas de compatibilidad comunes relacionados con la implementación del códec G.729 (8 kbps).
Cisco presentó una implementación de codec anterior al Grupo de trabajo en ingeniería de Internet (IETF) G.729 antes de que se estandarizara el codec G.729. En Cisco IOS 12.0(5)T y versiones posteriores, el orden de bits predeterminado del códec G.729 se cambia del estándar anterior a IETF al formato estándar IETF. Los dos formatos no interactúan y dan lugar a un "sonido de barrido" ininteligible para los usuarios finales.
Para la compatibilidad con las implementaciones G.729 de otros proveedores, la versión 12.0.5T y posteriores del software del IOS de Cisco tienen como valor predeterminado la implementación estandarizada de G.729. Para la compatibilidad con versiones anteriores del software Cisco IOS anteriores a la versión 12.0.5T del software Cisco IOS, habilite la implementación previa de IETF G.729 con este comando:
maui-vgw-01(config)#dial-peer voice 100 voip maui-vgw-01(config-dial-peer)#codec g729r8 pre-ietf
La opción pre-ietf en este comando no se soporta en Cisco IOS Release 12.2 y posteriores.
G.729 es un algoritmo de alta complejidad, y G.729A (también conocido como Anexo A G.729) es una variante de complejidad media de G.729 con una calidad de voz ligeramente inferior. Todas las plataformas que soportan G.729 también soportan G.729A.
En las gateways Cisco IOS, la variante que se debe utilizar (G.729 o G.729A) está relacionada con la configuración de complejidad del códec en la tarjeta de voz. No se muestra explícitamente en la opción de códec de interfaz de línea de comandos (CLI) de Cisco IOS. Por ejemplo, la CLI no muestra g729ar8 ("a" code) como una opción de códec. Sin embargo, si la tarjeta de voz se define como de complejidad media, entonces la opción g729r8 es el códec G.729A.
Nota: Para MC3810, en las versiones anteriores a 12.0.7XK del software del IOS de Cisco, hay una opción CLI explícita entre veinticuatro canales de G.729A o doce canales de G.729.
El Anexo B G.729 es un algoritmo de alta complejidad y el Anexo B G.729A es una variante de complejidad media del Anexo B G.729 con una calidad de voz levemente inferior. La diferencia entre el códec G.729 y G.729 Anexo-B códec radica en que el códec G.729 Anexo-B cuenta con detección de actividad voz IETF incorporada (VAD) y Generación de Ruido de Apaciguamiento (CNG).
Estas combinaciones de códecs G.729 interoperan:
G.729 y G.729A
G.729 y G.729
G.729A y G.729A
Anexo B G.729 y Anexo A G.729A
G.729 Annex-B y G.729 Annex-B
G.729A Annex-B y G.729A Annex-B
Nota: No hay una forma explícita de configurar G.729A en el Cisco 2600/3600/VG-200 NM-1V y NM-2V (módulo de red de voz), ya que estos módulos de voz no admiten la configuración de "complejidad de códec" admitida en el NM-HDV (Módulo de red de voz de alta densidad). Sin embargo, si otro terminal configura una llamada G.729A que termina en el NM-1V/2V, la llamada se conecta correctamente.
Hay dos versiones de G.723.1 denominadas Anexo A y no Anexo A. Estas versiones no interoperan. G.723.1 El anexo A incluye un algoritmo IETF VAD integrado y CNG.
Además, en Cisco IOS Software Release 12.0(5)T y posteriores, el códec G.723.1 se soporta con una velocidad de 5.3 kbps y 6.3 kbps. Cuando un gateway VoIP de Cisco configura una llamada entre dispositivos que utilizan G723.1, sólo le preocupa que el extremo lejano utilice G.723.1. Ninguno de los lados está preocupado por la velocidad de 5,3 kbps o 6,3 kbps que soporta el otro lado. Esto significa que, aunque es beneficioso que ambos lados admitan la misma velocidad, es posible que un lado transmita a 5,3 kbps y la dirección inversa transmita a 6,3 kbps. La velocidad que se utiliza se ve con el comando show call active voice brief, como se muestra aquí:
Cisco-router# show call active voice brief 47 : 494514hs.1 +473 pid:0 Answer active tx:210/5040 rx:219/4380 IP 5.5.0.1:16534 rtt:3ms pl:890/0ms lost:0/0/0 delay:70/70/70ms g723r63 47 : 494514hs.2 +473 pid:1 Originate 4750001 active TX:230/1840 rx:230/8280 Tele 2/0:0 (35): TX:6870/2290/0ms g723r63 !--- In this example the G.723.1 is operating at 6.3 kbps. noise:0 acom:0 i/0:-79/-5 dBm
El estándar G.723.1 permite a las estaciones cambiar las velocidades entre 6,3 kbps y 5,3 kbps durante una llamada para ajustarse a las cargas de tráfico de red. Los gateways VoIP de Cisco no admiten esta funcionalidad. Pero sí saben si el dispositivo remoto (como un teléfono IP de Cisco) transmite a una velocidad diferente a la que se negoció originalmente.
Estas combinaciones de códecs G.723.1 interoperan:
G.723.1 (5,3 kbps) y G.723.1 (6,3 kbps)
G.723.1 (5,3 kbps) y G.723.1 (5,3 kbps)
G.723.1 (6,3 kbps) y G.723.1 (6,3 kbps)
Anexo A G.723.1 (5,3 kbps) y anexo A G.723.1 (6,3 kbps)
Anexo A G.723.1 (5,3 kbps) y anexo A G.723.1 (5,3 kbps)
Anexo A G.723.1 (6,3 kbps) y anexo A G.723.1 (6,3 kbps)
Con la introducción de Cisco IOS Software Release 12.0(5)T, los gateways VoIP de Cisco soportan la función de negociación de códecs. Esta característica hace posible que una gateway VoIP de Cisco se conecte a otros dispositivos VoIP sin conocer necesariamente qué codec es utilizado para establecer una llamada. Además, esta función permite que los gateways de VoIP de Cisco se ajusten dinámicamente a los cambios de los dispositivos remotos. Siempre que el códec utilizado por el dispositivo VoIP remoto coincida con la lista de capacidades de la gateway de VoIP de Cisco, se completa la llamada VoIP. Los DSP C542 y C549 admiten la negociación de códecs. Para especificar una lista de códecs preferidos para utilizar en un par de marcado, utilice el comando codec preference en el modo de configuración de clase de voz.
Este ejemplo muestra cómo configurar la negociación de códec:
Cisco-router# configure terminal Cisco-router(config)# voice class codec 1 !--- This sets up class 1 to be assigned to the dial peer. Cisco-router(config-class)#codec preference 1 g723r63 Cisco-router(config-class)#codec preference 2 g729br8 Cisco-router(config-class)#codec preference 3 g711ulaw Cisco-router(config-class)#codec preference 4 g726r32 bytes 240 !--- These commands define the preferred codec list using 1,2,3, !--- and 4 to set the preference. Cisco-router(config)#dial-peer voice 1 voip Cisco-router(config-dial-peer)#voice-class codec 1 !--- This assigns voice-class codec 1 to the dial-peer Cisco-router(config-dial-peer)#destination-pattern 4723155 Cisco-router(config-dial-peer)#session target ipv4:192.168.100.1
El error %DSPRM-5-SETCODEC se debe a un códec de alta complejidad configurado en un dial-peer VoIP mientras todavía tiene la tarjeta de voz configurada para el valor predeterminado de complejidad media. Para solucionar este problema, debe quitar la configuración ds0-group del controlador, lo que hace que se elimine el puerto de voz. Después de eliminar el ds0-group, siga los procedimientos anteriores en este documento para cambiar la complejidad.