Sommario

Introduzione

Premesse

VoIP: larghezza di banda per chiamata

Spiegazione dei termini

Formule di calcolo della larghezza di banda

Esempio di calcolo

Configurazione delle dimensioni del payload vocale in Cisco Call Manager e nei gateway Cisco IOS

Impatto di una modifica sulle dimensioni del payload voce

Voice Activity Detection

Intestazione RTP: compressione o RTP compresso (cRTP)

Euristiche della compressione

Informazioni correlate

Introduzione

Questo documento descrive i calcoli della larghezza di banda del codec voce e le funzionalità per modificare o conservare la larghezza di banda quando si usa il protocollo VoIP (Voice over IP).

Premesse

Uno dei fattori più importanti da considerare quando si creano reti voce a commutazione di pacchetto è un'adeguata pianificazione della capacità. Nell'ambito della pianificazione della capacità, il calcolo della larghezza di banda è un fattore importante da considerare quando si progettano le reti voce a commutazione di pacchetto e se ne risolvono i problemi per ottenere una buona qualità della voce.

Nota: Oltre a questo documento, è possibile utilizzare lo strumento Voice Bandwidth Codec Calculator del TAC (solo per i clienti registrati). Questo strumento spiega come calcolare la larghezza di banda richiesta per le chiamate voce a commutazione di pacchetto.

VoIP: larghezza di banda per chiamata

Per il calcolo si utilizzano i presupposti sull'intestazione del protocollo indicati di seguito:

- 40 byte per le intestazioni IP (20 byte)/UDP (User Datagram Protocol) (8 byte)/RTP (Real-Time Transport Protocol) (12 byte).

- Il protocollo cRTP (Compressed Real-Time Protocol) riduce le intestazioni IP/UDP/RTP a 2 o 4 byte (cRTP non è disponibile su Ethernet).

- 6 byte per l'intestazione MP (Multilink Point-to-Point Protocol) o FRF (Frame Relay Forum).12 livello 2 (L2).

- 1 byte per il flag di fine frame sui frame MP e Frame Relay.

- 18 byte per le intestazioni Ethernet L2, che includono 4 byte di FCS (Frame Check Sequence) o CRC (Cyclic Redundancy Check).

Nota: Questa tabella contiene solo i calcoli per le dimensioni predefinite del payload vocale nei gateway H.323 del software Cisco IOS®. Per calcoli che includono diverse dimensioni di payload voce e altri protocolli, come VoFR (Voice over Frame Relay) e VoATM (Voice over ATM), utilizzare lo strumento Voice Bandwidth Codec Calculator del TAC (solo clienti registrati).

Informazioni sul codec

Calcoli della larghezza di banda

Codec e velocità di trasmissione (Kbps)

Dimensione campione codec (byte)

Intervallo campionamento codec (ms)

MOS (Mean Opinion Score)

Dimensione del payload voce (byte)

Dimensione del payload voce (ms)

Pacchetti al secondo (PPS)

Larghezza di banda MP o FRF.12 (Kbps)

Larghezza di banda con cRTP MP o FRF.12 (Kbps)

Larghezza di banda Ethernet (Kbps)

G.711 (64 Kbps)

80 Byte

10 ms

4.1

160 Byte

20 ms

50

82,8 Kbps

67,6 Kbps

87,2 Kbps

G.729 (8 Kbps)

10 Byte

10 ms

3.92

20 Byte

20 ms

50

26,8 Kbps

11,6 Kbps

31,2 Kbps

G.723.1 (6,3 Kbps)

24 Byte

30 ms

3.9

24 Byte

30 ms

33.3

18,9 Kbps

8,8 Kbps

21,9 Kbps

G.723.1 (5,3 Kbps)

20 Byte

30 ms

3.8

20 Byte

30 ms

33.3

17,9 Kbps

7,7 Kbps

20,8 Kbps

G.726 (32 Kbps)

20 Byte

5 ms

3.85

80 Byte

20 ms

50

50,8 Kbps

35,6 Kbps

55,2 Kbps

G.726 (24 Kbps)

15 Byte

5 ms

20 ms

50

42,8 Kbps

27,6 Kbps

47.2 Kbps

G.728 (16 Kbps)

10 Byte

5 ms

3.61

60 Byte

30 ms

33.3

28,5 Kbps

18,4 Kbps

31,5 Kbps

G722_64k (64 Kbps)

80 Byte

10 ms

4.13

160 Byte

20 ms

50

82,8 Kbps

67,6 Kbps

87,2 Kbps

ilbc_mode_20 (15,2 Kbps)

38 Byte

20 ms

N/D

38 Byte

20 ms

50

34,0 Kbps

18,8 Kbps

38,4 Kbps

ilbc_mode_30 (13,33 Kbps)

50 Byte

30 ms

N/D

50 Byte

30 ms

33.3

25,867 Kbps

15,73 Kbps

28,8 Kbps

Spiegazione dei termini

Velocità di trasmissione codec (Kbps)

A seconda del codec, si tratta del numero di bit al secondo che devono essere trasmessi per gestire una chiamata vocale. (velocità in bit del codec = dimensione campione codec/intervallo campionamento codec).

Dimensione campione codec (byte)

A seconda del codec, si tratta del numero di byte acquisiti dal processore del segnale digitale (DSP) a ogni intervallo di campionamento codec. Ad esempio, il codificatore G.729 opera su intervalli di campionamento di 10 ms, che corrispondono a 10 byte (80 bit) per campione a una velocità in bit di 8 Kbps. (velocità in bit del codec = dimensione campione codec/intervallo campionamento codec).

Intervallo campionamento codec (ms)

Questo è l'intervallo di campionamento in cui opera il codec. Ad esempio, il codificatore G.729 opera su intervalli di campionamento di 10 ms, che corrispondono a 10 byte (80 bit) per campione a una velocità in bit di 8 Kbps. (velocità in bit del codec = dimensione campione codec/intervallo campionamento codec).

MOS (Mean Opinion Score)

Il MOS è un sistema utilizzato per valutare la qualità della voce delle connessioni telefoniche. Con il sistema MOS, numerosi ascoltatori giudicano la qualità di un campione vocale su una scala da uno (pessimo) a cinque (eccellente). Per ottenere il MOS del codec viene calcolata la media dei punteggi.

Dimensione del payload voce (byte)

La dimensione del payload voce rappresenta il numero di byte (o bit) inseriti in un pacchetto. La dimensione del payload voce deve essere un multiplo della dimensione del campione codec. Ad esempio, i pacchetti G.729 possono utilizzare dimensioni da 10, 20, 30, 40, 50 o 60 byte.

Dimensione del payload voce (ms)

La dimensione del payload voce può anche essere rappresentata in termini di campioni codec. Ad esempio, un payload vocale G.729 di 20 ms (due esempi di codec da 10 ms) rappresenta un payload vocale di 20 byte [ (20 byte * / (20 ms) = 8 Kbps ]

PPS

PPS rappresenta il numero di pacchetti che devono essere trasmessi ogni secondo per garantire la velocità in bit del codec. Ad esempio, per una chiamata G.729 con payload voce per pacchetto di 20 byte (160 bit), è necessario trasmettere 50 pacchetti al secondo [50 pps = (8 Kbps)/(160 bit per pacchetto)]

Formule di calcolo della larghezza di banda

Vengono utilizzati i seguenti calcoli:

- Dimensione totale pacchetto = (intestazione L2: MP o FRF.12 o Ethernet) + (intestazione IP/UDP/RTP) + (dimensione del payload voce)

- PPS = (codec bit rate)/(voice payload size)

- Larghezza di banda = dimensione totale del pacchetto * PPS

Esempio di calcolo

Ad esempio, la larghezza di banda richiesta per una chiamata G.729 (velocità bit codec 8 Kbps) con cRTP, MP e i 20 byte predefiniti del payload voce è:

- Dimensione totale del pacchetto (byte) = (intestazione MP di 6 byte) + (intestazione IP/UDP/RTP compressa di 2 byte) + (payload voce di 20 byte) = 28 byte

- Dimensione totale dei pacchetti (bit) = (28 byte) * 8 bit per byte = 224 bit

- PPS = (velocità in bit codec 8 Kbps)/(160 bit) = 50 pps

Nota: 160 bit = 20 byte (payload voce predefinito) * 8 bit per byte

- Larghezza di banda per chiamata = dimensione pacchetto voce (224 bit) * 50 pps = 11,2 Kbps

Configurazione delle dimensioni del payload vocale in Cisco Call Manager e nei gateway Cisco IOS

Le dimensioni del payload vocale per pacchetto possono essere configurate nei gateway Cisco Call Manager e Cisco IOS.

Nota: Se il gateway Cisco IOS è configurato in Cisco Call Manager come gateway MGCP (Media Gateway Control Protocol), tutte le informazioni del codec (tipo di codec, dimensioni del payload, rilevamento attività voce e così via) sono controllate da Cisco CallManager.

In Cisco Call Manager, le dimensioni del payload vocale per pacchetto sono configurabili a livello di sistema. Questo attributo viene impostato in Cisco Call Manager Administration (Servizio > Parametri servizio > select_server > Cisco Call Manager) con i seguenti tre parametri del servizio:

- PreferredG711MillisecondPacketSize - (Impostazione predefinita: 20 ms. Impostazioni disponibili: 10, 20 e 30 ms.)

- PreferredG729MillisecondPacketSize - (Impostazione predefinita: 20 ms. Impostazioni disponibili: 10, 20, 30, 40, 50 e 60 ms.)

- PreferredG723MillisecondPacketSize - (Impostazione predefinita: 30 ms Impostazioni disponibili: 30 e 60 ms.)

In Cisco Call Manager, le dimensioni del payload vocale sono configurate in termini di esempi di millisecondi (ms). A seconda del codec, questa tabella associa alcuni campioni in ms alla dimensione effettiva del payload in byte.

Codec

Dimensione del payload voce (ms)

Dimensione del payload voce (byte)

Commenti

G.711

20 ms (impostazione predefinita)

160 Byte

Si noti che la velocità in bit del codec viene sempre mantenuta. Ad esempio: Codec G.711 = [240 byte * 8 (bit/byte)]/30 ms = 64 Kbps

30 ms

240 Byte

G.729

20 ms (impostazione predefinita)

20 Byte

30 ms

30 Byte

G.723

30 ms (impostazione predefinita)

Per i gateway Cisco IOS, ora il software Cisco IOS versione 12.0 (5)T dispone di una funzione che consente di modificare la dimensione del payload voce (in byte) per i pacchetti VoIP tramite la CLI. La sintassi del nuovo comando è la seguente:

Cisco-Router(config-dial-peer)#codec g729r8 bytes ?

Each codec sample produces 10 bytes of voice payload.

Valid sizes are:

10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120,

130, 140, 150, 160, 170, 180, 190, 200, 210, 220, 230

Any other value within the range will be rounded down to nearest valid size.

<10-230> Choose a voice payload size from the list above

Impatto di una modifica sulle dimensioni del payload voce

Il numero di campioni codec per pacchetto è un altro fattore che determina la larghezza di banda e il ritardo di una chiamata VoIP. Il codec definisce la dimensione del campione, ma il numero totale di campioni inseriti in un pacchetto influisce sul numero di pacchetti inviati al secondo.

Quando si aumenta la dimensione del payload voce, la larghezza di banda VoIP si riduce e il ritardo complessivo aumenta. Vediamo un esempio a proposito.

- Chiamata G.729 con payload voce di 20 byte (20 ms): (40 byte di intestazioni IP/UDP/RTP + 20 byte di payload voce) * 8 bit per byte * 50 pps = 24 Kbps

- Chiamata G.729 con payload voce di 40 byte (40 ms): (40 byte di intestazioni IP/UDP/RTP + 40 byte payload voce) * 8 bit per byte * 25 pps = 16 Kbps

Note:

- In questo calcolo le intestazioni L2 non vengono considerate.

- I calcoli mostrano che, mentre la dimensione del payload è raddoppiata, il numero di pacchetti al secondo richiesto viene dimezzato.

- Come definito nelle specifiche G.114 dell'Unione internazionale delle telecomunicazioni (ITU-T ), il ritardo complessivo unidirezionale consigliato per la voce è 150 ms. Per una rete privata, 200 ms è un obiettivo ragionevole, senza superare 250 ms.

Voice Activity Detection

Con le reti voce a commutazione di circuito, tutte le chiamate vocali utilizzano collegamenti a larghezza di banda fissa a 64 Kbps, indipendentemente dalla quantità di conversazione e dalla quantità di silenzio. Con le reti VoIP, la conversazione e il silenzio sono pacchettizzati. Con la funzione VAD (Voice Activity Detection) è possibile eliminare i pacchetti di silenzio.

Nel tempo e in media su un volume di oltre 24 chiamate, la funzione VAD può offrire fino al 35% di risparmio sulla larghezza di banda. I risparmi non si ottengono su ogni singola chiamata vocale o su una misurazione specifica e puntuale. La VAD non deve essere presa in considerazione a fini di progettazione della rete né di definizione della larghezza di banda, in particolare sui collegamenti che trasportano meno di 24 chiamate vocali contemporaneamente. Diverse funzioni come la musica di attesa e il fax rendono la funzione VAD inefficace. Quando la rete è progettata per impiegare tutta la larghezza di banda per le chiamate voce, tutti i risparmi consentiti dalla VAD sono disponibili per le applicazioni dati.

La funzione VAD fornisce anche la generazione di rumori di comfort (CNG). Poiché è possibile confondere il silenzio con la disconnessione della chiamata, la funzione CNG genera localmente un rumore di fondo, in modo che entrambi gli interlocutori possano percepire che la connessione è attiva. G.729 Annex-B e G.723.1 Annex-A includono una funzione VAD integrata, ma per il resto svolgono rispettivamente la stessa funzione di G.729 e G.723.1.

In Cisco Call Manager, il protocollo VAD può essere abilitato (è disabilitato per impostazione predefinita) con questi parametri del servizio:

- SilenceSuppressionSystemWide: questo parametro consente di selezionare l'impostazione VAD per tutti gli endpoint skinny (ad esempio, telefoni IP di Cisco e gateway Skinny)

- SilenceSuppressionWithGateways: questo parametro consente di selezionare l'impostazione VAD per tutti i gateway MGCP. Non ha effetto sui gateway H.323. Nei gateway H.323, la funzione VAD deve essere disabilitata sul gateway.

Questi parametri del servizio sono disponibili in Amministrazione Cisco Call Manager (Servizio > Parametri servizio > select_server > Cisco CallManager).

Intestazione RTP: compressione o RTP compresso (cRTP)

Tutti i pacchetti VoIP sono costituiti da due componenti: campioni voce e intestazioni IP/UDP/RTP. Sebbene i campioni voce siano compressi dal processore di segnale digitale (DSP) e possano variare di dimensione in base al codec utilizzato, queste intestazioni hanno una lunghezza costante di 40 byte. Rispetto ai 20 byte di campioni voce in una chiamata G.729 predefinita, queste intestazioni costituiscono una notevole quantità di sovraccarico. Con cRTP, queste intestazioni possono essere compresse a due o quattro byte. Questa compressione offre un notevole risparmio di larghezza di banda VoIP. Ad esempio, una chiamata VoIP G.729 predefinita consuma 24 Kb senza cRTP, ma solo 12 Kb con cRTP abilitato.

Poiché cRTP comprime le chiamate VoIP su base link-by-link, entrambe le estremità del collegamento IP devono essere configurate per cRTP.

Nel software Cisco IOS versione 12.0.5T e precedenti, il cRTP è a commutazione di processo, il che limita notevolmente la scalabilità delle soluzioni cRTP a causa delle prestazioni della CPU. La maggior parte di questi problemi è stata risolta grazie a vari miglioramenti delle prestazioni del cRTP introdotti nel software Cisco IOS versioni 12.0.7T e 12.1.2T. Segue un riepilogo delle modifiche.

- Il cRTP è a commutazione di processo nel software Cisco IOS versione 12.0.5T e precedenti.

- Nel software Cisco IOS versione 12.0.7T e quindi nella versione 12.1.1T, sono stati introdotti il supporto della commutazione rapida e il supporto della commutazione Cisco Express Forwarding per cRTP.

- Nel software Cisco IOS versione 12.1.2T sono stati introdotti miglioramenti delle prestazioni algoritmiche.

Quando si sposta il protocollo cRTP nel percorso di commutazione veloce, aumenta in modo significativo il numero di sessioni RTP (chiamate VoIP) che i gateway VoIP e i router intermedi possono elaborare.

Euristiche della compressione

Poiché il protocollo RTP non dispone di un'intestazione del pacchetto distinta, un flusso RTP (per cRTP) si distingue da un flusso UDP (cUDP) per l'uso di euristiche. Le euristiche esatte utilizzate al momento per rilevare la compressione dei pacchetti RTP sono:

- Il numero della porta di destinazione è pari.

- Il numero della porta di destinazione è compreso nell'intervallo 16384-32767 o 49152-65535.

- Il campo versione RTP è impostato su due.

- Il campo estensione RTP è impostato su zero.

Informazioni correlate

- Supporto alla tecnologia vocale

- Supporto ai prodotti voce e Unified Communications

- Risoluzione dei problemi di Cisco IP Telephony

- Supporto tecnico – Cisco Systems