Dit document biedt een overzicht van de verschillende coder-decoders (codecs) die met Cisco IOS® Voice-over-IP (VoIP) gateways worden gebruikt. In Cisco IOS-softwarereleases eerder dan 12.0(5)T ondersteunen VoIP-gateways alleen de codecs G.729 en G.711 en slechts één spraak/fax-relay-oproep per digitale signaalprocessor (DSP). Dankzij de introductie van Cisco IOS-softwarerelease 12.0(5)T ondersteunen Cisco VoIP-gateways een groter aantal codecs en DSP-modules. Ze kunnen ook tot vier spraak/fax-relay-oproepen per DSP ondersteunen.
Raadpleeg voor meer informatie over DSP’s Spraakhardware: C542 en C549 digitale signaalprocessor (DSP).
Het DSP Calculator (alleen geregistreerde klanten) bepaalt de DSP-vereisten voor de Cisco 1751, 1760, 2600XM, 2691, 2800, 3700 en 3800 Series routerplatforms en biedt PVDM provisioningsuggesties als volgt. Het gereedschap berekent de DSP-vereisten op basis van de interfacemodules, codec-configuraties, transcoderingskanalen en conferentiesessies die als input worden geleverd. Dit gereedschap ondersteunt verschillende Cisco IOS-softwarereleases die geldig zijn voor de Cisco-platforms 1751, 1760, 2600XM, 2691, 2800, 3700 en 3800.
Er zijn geen specifieke vereisten van toepassing op dit document.
Dit document is niet beperkt tot specifieke software- en hardware-versies.
Raadpleeg Cisco Technical Tips Conventions (Conventies voor technische tips van Cisco) voor meer informatie over documentconventies.
Sommige codec-compressietechnieken vereisen meer verwerkingskracht dan andere. De complexiteit van de codec is opgesplitst in twee categorieën, die middelgroot en hoog zijn.
Middelgrote complexiteit stelt de C549 DSP’s in staat om tot vier spraak/fax-relay-oproepen per DSP en C5510 DSP’s te verwerken om tot acht spraak/fax-relay-oproepen per DSP te verwerken.
Hoge complexiteit stelt de C549 DSP’s in staat om tot twee spraak/fax-relay-oproepen per DSP en C5510 DSP’s te verwerken om tot zes spraak/fax-relay-oproepen per DSP te verwerken.
Middelgrote complexiteit (4 oproepen/dsp) | High Complexity (2 oproepen/dsp) |
---|---|
G.711 (A-law en m-law) | G.728 |
G.726 (alle versies) | G.723 (alle versies) |
G.729a, G.729ab (G.729a bijlageB) | G.729, G.729b (G.729-AnnexB) |
Faxrelais | Faxrelais |
Opmerking: Het verschil tussen gemiddelde en hoge complexiteitscodecs is de hoeveelheid CPU-gebruik die nodig is om het codec-algoritme te verwerken, en daarom, het aantal spraakkanalen dat door één DSP kan worden ondersteund. Om deze reden, kunnen alle middelmatige complexiteitscodecs ook in hoge complexiteitsmodus worden uitgevoerd, maar minder (meestal de helft) van de kanalen zijn beschikbaar per DSP.
Opmerking: fax-relay (2400 bps, 4800 bps, 7200 bps, 9600 bps, 12 kbps en 14,4 kbps) kan middellange of hoge complexiteit codecs gebruiken.
Op platforms die de C549 DSP-technologie ondersteunen, wordt de codec-complexiteit geconfigureerd onder de spraakkaart (bijvoorbeeld de 2600/3600/VG-200 spraaknetwerkmodule met hoge dichtheid). Sommige platforms ondersteunen alleen hoge complexiteit, omdat ze genoeg DSP's aan boord hebben om alle T1/E1-kanalen te ondersteunen die de modus met hoge complexiteit gebruiken. Om de calldichtheid en de codec complexiteit te specificeren volgens de codec-standaard die wordt gebruikt, gebruikt u de opdracht van de codec complexiteit in de spraak-kaartconfiguratie.
Een voorbeeld van de complexiteit van de configuratie wordt hier getoond:
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
Op platforms die de C5510 DSP-technologie ondersteunen, is er een extra optie van flex complexiteit beschikbaar. Wanneer u flex complexiteit gebruikt, kunnen tot zestien oproepen per DSP worden voltooid. Het aantal ondersteunde oproepen varieert van zes tot zestien en is gebaseerd op de codec die gebruikt wordt voor een oproep.
Een voorbeeld van de configuratie wordt hier getoond:
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
Dit is een uittreksel van de show in werking stellen-configuratie uitvoer om te bepalen welke complexiteit wordt geconfigureerd:
!voice-card 1 codec complexity high !
Deze tabel toont de codec-ondersteuning voor verschillende Cisco-routerplatforms.
codec | 1751/1760 | 26xx/36xx NM-1V/2V | 26xx/36xx NM-HDV | 3700 | 3810 | AS5300 AS5800 | AS5350 AS5400 | 7200 | 7500 | CMM 24-FXS | CMM 6T1/E1 |
---|---|---|---|---|---|---|---|---|---|---|---|
G.711 A-law en U-law PCM (64 kbps) | 12,0,5XQ1 | Ja | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Ja | 12,0,5XE3 | 12.1.3T | Ja | Ja |
G.726 ADPCM (32, 24,16 kbps) | 12.1.2T | 12,0,5T | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Nee | 12,0,5XE3 | 12.1.3T | Nee | Nee |
G.728 LD-CELP (16 kbps) | Ja | 12,0,5T | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Nee | 12,0,5XE3 | 12.1.3T | Nee | Nee |
G.729 CS-ACELP (8 kbps) | 12.1.2T | Ja | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Nee | 12,0,5XE3 | 12.1.3T | Nee | Nee |
G.729a CS-ACELP (8 kbps) | 12,0,5XQ1 | Ja | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Ja | 12,0,5XE3 | 12.1.3T | Ja | Ja |
G.729 Annex-B (8 kbps) [VAD] | Ja | 12,0,5T | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Nee | 12,0,5XE3 | 12.1.3T | Nee | Nee |
G.729a bijlage-B (8 kbps) | Ja | Ja | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Ja | 12,0,5XE3 | 12.1.3T | Ja | Ja |
G.723,1 MP-MLQ (6,3 kbps) | 12.1.2T | 12,0,5T | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Ja | 12,0,5XE3 | 12.1.3T | Nee | Nee |
G.723.1 ACELP (5,3 kbps) | 12.1.2T | 12,0,5T | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Ja | 12,0,5XE3 | 12.1.3T | Nee | Nee |
G.723.1 Annex-A MP-MLQ (6,3 kbps) | 12.1.2T | 12,0,5T | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Ja | 12,0,5XE3 | 12.1.3T | Nee | Nee |
G.723.1 Annex-A ACELP (5,3 kbps) | 12.1.2T | 12,0,5T | 12,0,5XK1 | Ja | 12.0.7XK | Ja | Ja | 12,0,5XE3 | 12.1.3T | Nee | Nee |
Clear Channel | 12.3(2)XF, 12.3(11)T | Ja | Ja | Ja | 12.3(11)T | Ja | Ja | Nee | Nee |
Codec-compressiemethode |
---|
PCM = Pulse-codemodulatie |
ADPCM = Adaptieve differentiële pulscomodulatie |
LDCELP = lage vertragingscode Uitgebreide lineaire voorspelling |
CS-ACELP = geconjugeerde-structuur Algebraïsche-Code-Uitgebreide lineaire voorspelling |
MP-MLQ = meervoudige puls, kwantificatie op meerdere niveaus |
ACELP = Uitgebreide lineaire voorspelling van algebraïsche code |
Elke codec geeft een bepaalde kwaliteit van de spraak. De kwaliteit van de uitgezonden toespraak is een subjectieve reactie van de luisteraar. Een gemeenschappelijk criterium dat wordt gebruikt om de kwaliteit van het door specifieke codecs geproduceerde geluid te bepalen, is de gemiddelde opiniescore (MOS). Met de MOS beoordeelt een brede reeks luisteraars de kwaliteit van een spraakmonster (wat overeenkomt met een bepaalde codec) op een schaal van 1 (slecht) tot 5 (uitstekend). De scores zijn gemiddeld om de MOS voor die steekproef te leveren. Deze tabel toont het verband tussen codecs en MOS scores.
compressiemethode | Bit Rate (Kbps) | MOS Score | Vertraging compressie (ms) |
---|---|---|---|
G.711 PCM | 64 | 4.1 | 0.75 |
G.726 ADPCM | 32 | 3.85 | 1 |
G.728 LD-CELP | 16 | 3.61 | 3 tot 5 |
G.729 CS-ACELP | 8 | 3.92 | 10 |
G.729 x 2-encodings | 8 | 3.27 | 10 |
G.729 x 3-encodings | 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 |
Hoewel het vanuit financieel standpunt logisch kan lijken om alle oproepen naar lage-bit rate codecs om te zetten om op infrastructuurkosten te besparen, oefen extra zorg uit wanneer u spraaknetwerken met een lage-bit-snelheidscompressie ontwerpt. Er zijn nadelen voor het samendrukken van een stem. Een van de voornaamste nadelen is signaalvervorming als gevolg van meerdere coderingen (zogenaamde tandem encodings). Bijvoorbeeld, wanneer een G.729 spraaksignaal driemaal gecodeerd is, daalt de MOS score van 3.92 (zeer goed) naar 2.68 (onacceptabel). Een ander nadeel is door codec veroorzaakte vertraging met lage bit-rate codecs.
Deze twee secties verduidelijken veel van de gemeenschappelijke compatibiliteitskwesties die te maken hebben met de G.729 (8 kbps) codec-implementatie.
Cisco heeft een G.729-codec (IETF) vrijgegeven voor de standaardinstelling van de G.729-codec. In Cisco IOS 12.0(5)T en hoger wordt de standaardbit-order van de G.729-codec gewijzigd van de pre-IETF-standaard naar het gestandaardiseerde IETF-formaat. De twee indelingen werken niet samen en resulteren in een onbegrijpelijk "schokkend geluid" voor de eindgebruikers.
Voor compatibiliteit met de G.729-implementaties van andere leveranciers, maken Cisco IOS-softwarerelease 12.0.5T en later de standaardinstelling van de gestandaardiseerde implementatie van G.729 mogelijk. Voor compatibiliteit met Cisco IOS-softwarereleases eerder dan Cisco IOS-softwarerelease 12.0.5T, schakelt u de pre-IETF G.729-implementatie met deze opdracht in:
maui-vgw-01(config)#dial-peer voice 100 voip maui-vgw-01(config-dial-peer)#codec g729r8 pre-ietf
De pre-ietf optie in deze opdracht wordt niet ondersteund in Cisco IOS release 12.2 en hoger.
G.729 is een complex algoritme, en G.729A (ook bekend als G.729 Annex-A) is een gemiddelde complexiteitsvariant van G.729 met een licht lagere spraakkwaliteit. Alle platforms die G.729 ondersteunen, ondersteunen ook G.729A.
Op Cisco IOS gateways is de te gebruiken variant (G.729 of G.729A) gerelateerd aan de configuratie van de codec complexiteit op de spraakkaart. Het verschijnt niet expliciet in de codekeuze van de Cisco IOS-opdrachtregel interface (CLI). De CLI heeft bijvoorbeeld geen g729ar8 ("a" code) als codec-optie. Als de voice-card echter wordt gedefinieerd als een gemiddelde complexiteit, dan is de g729r8-optie de G.729A-codec.
Opmerking: Voor de MC3810 is er in Cisco IOS-softwarerelease die eerder dan 12.0.7XK is gepubliceerd, een expliciete CLI-keuze tussen 24 kanalen van G.729A of twaalf kanalen van G.729.
G.729 Annex-B is een complex algoritme, en G.729A Annex-B is een gemiddelde complexe variant van G.729 Annex-B met iets lagere spraakkwaliteit. Het verschil tussen de G.729 en G.729 Annex-B codec is dat de G.729 Annex-B codec ingebouwde IETF spraakactivatie detectie (VAD) en Comfort Noise Generation (CNG) biedt.
Deze G.729 codec combinaties werken samen:
G.729 en G.729A
G.729 en G.729
G.729A en G.729A
G.729 Bijlage-B en G.729A Bijlage-B
G.729 Bijlage-B en G.729 Bijlage-B
G.729A Bijlage-B en G.729A Bijlage-B
Opmerking: Er is geen expliciete manier om G.729A te configureren op Cisco 2600/3600/VG-200 NM-1V en NM-2V (spraaknetwerkmodule) omdat deze spraakmodules niet de "codec complexiteit"-configuratie ondersteunen die wordt ondersteund op de NM-HDV (Spraakmodule met hoge dichtheid). Als echter een G.729A-oproep wordt ingesteld op een ander eindpunt dat eindigt op de NM-1V/2V, is de verbinding met succes voltooid.
Er zijn twee versies van G.723.1, bijlage-A en niet-bijlage-A. Deze versies werken niet samen. G.723.1 Bijlage-A bevat een ingebouwd IETF VAD-algoritme en CNG.
Tevens wordt in Cisco IOS-softwarerelease 12.0(5)T en hoger de G.723.1 codec ondersteund met een snelheid van 5,3 kbps en 6,3 kbps. Wanneer een Cisco VoIP-gateway een oproep tussen apparaten die G723.1 gebruiken, maakt deze zich alleen zorgen dat het end-end G.723.1 gebruikt. Geen van beide zijden heeft te maken met de 5,3 kbps of 6,3 kbps snelheid die door de andere kant wordt ondersteund. Dit betekent dat, ook al is het goed dat beide kanten hetzelfde tarief ondersteunen, het mogelijk is dat één kant uitzendt bij 5,3 kbps en de omgekeerde richting uitzendt bij 6,3 kbps. De snelheid die wordt gebruikt wordt bekeken met de show roepen actieve stem korte opdracht zoals hier getoond wordt:
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
Dankzij de standaard G.723.1 kunnen stations de snelheden tussen 6,3 kbps en 5,3 kbps wijzigen tijdens een aanroep om aanpassing aan netwerkverkeersladingen. De Cisco VoIP-gateways ondersteunen deze functionaliteit niet. Maar ze begrijpen wel als het afstandsapparaat (zoals een Cisco IP-telefoon) met een ander tempo doorgeeft dan aanvankelijk werd onderhandeld.
Deze codec-combinaties van G.723.1 werken samen:
G.723,1 (5,3 kbps) en G.723,1 (6,3 kbps)
G.723,1 (5,3 kbps) en G.723,1 (5,3 kbps)
G.723,1 (6,3 kbps) en G.723,1 (6,3 kbps)
bijlage-A, G.723.1 (5,3 kbps) en G.723.1 (6,3 kbps)
bijlage-A (5,3 kbps) en G.723.1 bijlage-A (5,3 kbps) voor G.723.1
bijlage-A, G.723.1 (6,3 kbps) en G.723.1 (6,3 kbps)
Dankzij de introductie van Cisco IOS-softwarerelease 12.0(5)T ondersteunen Cisco VoIP-gateways de onderhandelingsfunctie van de codec. Deze optie biedt de mogelijkheid voor een Cisco VoIP-poort om verbinding te maken met andere VoIP-apparaten zonder dat u hoeft te weten welke codec voor een CallSetup wordt gebruikt. Ook, deze eigenschap staat Cisco VoIP gateways toe om dynamisch aan veranderingen op afgelegen apparaten aan te passen. Zolang de codec die door het externe VoIP-apparaat wordt gebruikt, overeenkomt met de lijst met functies van de Cisco VoIP-gateway, wordt de VoIP-oproep voltooid. Codec-onderhandeling wordt ondersteund op zowel de C542- als C549-DSP’s. Om een lijst van voorkeurcodecs te specificeren die op een wijzerplaat peer te gebruiken, gebruik de codec voorkeur in de stem-klasse configuratiewijze.
Dit voorbeeld toont hoe te om codec onderhandeling te vormen:
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
De fout %DSPRM-5-SETCODEC is veroorzaakt door een hoge complexiteit codec die is ingesteld op een VoIP dial-peer terwijl de spraakkaart nog is ingesteld voor de standaardinstelling van de gemiddelde complexiteit. Om dit probleem op te lossen, moet u de DS0-groepsconfiguratie van de controller verwijderen waardoor de spraak-poort wordt verwijderd. Nadat u de ds0-groep hebt verwijderd, volgt u de procedures eerder in dit document om de complexiteit te wijzigen.