Contenu

Introduction

Informations générales

VoIP : bande passante par appel

Explication des termes

formules de calcul de bande passante

Exemples de calcul

Configuration des tailles de charge utile vocale dans Cisco Call Manager et les passerelles Cisco IOS

Effet d’une modification des tailles des charges utiles vocales

Détection d'activité de voix

Compression d'en-tête RTP ou Compressed RTP (cRTP)

Heuristiques de compression

Informations connexes

Introduction

Ce document décrit les calculs et les fonctions de bande passante du codec vocal pour modifier ou conserver la bande passante lorsque la voix sur IP (VoIP) est utilisée.

Informations générales

Un des facteurs les plus importants à considérer quand vous établissez des réseaux voix par paquets est la planification de la capacité appropriée. Dans la planification de capacité, le calcul de la bande passante est un facteur important à considérer quand vous concevez et dépannez des réseaux voix par paquets pour la bonne qualité vocale.

Note: Comme complément à ce document, vous pouvez utiliser l'outil TAC Voice Bandwidth Codec Calculator (clients enregistrés seulement). Cet outil fournit des informations sur la façon de calculer la bande passante nécessaire pour les appels vocaux par paquets.

VoIP : bande passante par appel

Ces hypothèses d'en-tête de protocole sont utilisées pour les calculs :

- 40 octets pour IP (20 octets)/en-têtes Protocole de datagramme utilisateur (UDP) (8 octets)/Protocole de transport en temps réel (RTP) (12 octets).

- Le protocole cRTP (Compressed Real-Time Protocol) réduit les en-têtes IP/UDP/RTP à 2 ou 4 octets (cRTP n'est pas disponible sur Ethernet).

- 6 octets pour le l'en-tête MLPPP (Multilink Point-to-Point Protocol) ou Forum Frame Relay (FRF).12 couche 2 (L2).

- 1 octet pour l'indicateur de fin de trame les trames MP et Frame Relay.

- 18 octets pour les en-têtes Ethernet de couche 2, y compris 4 octets pour la séquence de contrôle de trame (FCS) ou pour le contrôle de redondance cyclique (CRC).

Note: Ce tableau contient uniquement les calculs des tailles de charge utile vocale par défaut dans les passerelles H.323 du logiciel Cisco Call Manager ou Cisco IOS®. Pour les calculs supplémentaires, qui incluent les différentes tailles de charge utile vocale et d’autres protocoles, tels que la voix sur le relais de trames (VoFR) et la voix sur ATM (VoATM), utilisez l’outil calculateur codec de bande passante voix TAC (pour les clients enregistrés uniquement).

Informations Codec

Calculs de la bande passante

Codec et débit binaire (Kbps)

Taille d'échantillon Codec (octets)

Intervalle d'échantillon Codec (ms)

Note moyenne d'opinion

Taille de la charge utile vocale (octets)

Taille de la charge utile vocale (ms)

Packets par seconde (PPS)

Bande passante MP ou FRF.12 (Kbps)

Bande passante avec cRTP MP ou FRF.12 (Kbps)

Bande passante Ethernet (Kbps)

G.711 (64 Kbps)

80 octets

10 ms

4.1

160 octets

20 ms

50

82,8 Kbps

67,6 Kbps

87,2 Kbps

G.729 (8 Kbps)

10 octets

10 ms

3.92

20 octets

20 ms

50

26,8 Kbps

11,6 Kbps

31,2 Kbps

G.723.1 (6,3 Kbps)

24 octets

30 ms

3.9

24 octets

30 ms

33.3

18,9 Kbps

8,8 Kbps

21,9 Kbps

G.723.1 (5,3 Kbps)

20 octets

30 ms

3.8

20 octets

30 ms

33.3

17,9 Kbps

7,7 Kbps

20,8 Kbps

G.726 (32 Kbps)

20 octets

5 ms

3.85

80 octets

20 ms

50

50,8 Kbps

35,6 Kbps

55,2 Kbps

G.726 (24 Kbps)

15 octets

5 ms

20 ms

50

42,8 Kbps

27,6 Kbps

47,2 Kbps

G.728 (16 Kbps)

10 octets

5 ms

3.61

60 octets

30 ms

33.3

28,5 Kbps

18,4 Kbps

31,5 Kbps

G722_64k (64 Kbps)

80 octets

10 ms

4.13

160 octets

20 ms

50

82,8 Kbps

67,6 Kbps

87,2 Kbps

ilbc_mode_20 (15.2 kbit/s)

38 octets

20 ms

S. O.

38 octets

20 ms

50

34,0 kbit/s

18,8 Kbps

38,4 kbit/s

ilbc_mode_30 (13.33 kbit/s)

50 octets

30 ms

S. O.

50 octets

30 ms

33.3

25,867 Kbps

15,73 kbit/s

28,8 Kbps

Explication des termes

Débit binaire Codec (Kbps)

Selon le codec, il s’agit du nombre de bits par seconde qui doivent être transmis afin de fournir un appel vocal. (débit binaire codec = taille d'échantillon codec/intervalle d'échantillon codec).

Taille d'échantillon Codec (octets)

Basé sur le codec, c'est le nombre d'octets captés par le processeur de signal numérique (DSP) à chaque intervalle d'échantillon codec. Par exemple, le codeur G.729 fonctionne selon des intervalles d’échantillonnage de 10 ms, ce qui correspond à 10 octets (80 bits) par échantillon à une vitesse de transmission de 8 kbit/s. (débit binaire codec = taille d'échantillon codec/intervalle d'échantillon codec).

Intervalle d'échantillon Codec (ms)

C'est l'intervalle d'échantillonnage auquel opère le codec. Par exemple, le codeur G.729 fonctionne selon des intervalles d’échantillonnage de 10 ms, ce qui correspond à 10 octets (80 bits) par échantillon à une vitesse de transmission de 8 kbit/s. (débit binaire codec = taille d'échantillon codec/intervalle d'échantillon codec).

Note moyenne d'opinion

Le MOS est un système utilisé pour noter la qualité vocale des connexions téléphoniques. Un grand nombre d'utilisateurs évaluent la qualité de la voix avec une échelle de 1(mauvais) à 5 (excellent). Les scores sont calculés en moyenne afin de fournir le MOS pour le codec.

Taille de la charge utile vocale (octets)

La taille de la charge utile vocale représente le nombre d'octets ou de bits contenus dans un paquet. La taille de la charge utile vocale doit être un multiple de la taille d'un échantillon du Codec. Par exemple pour G.729 les paquets peuvent avoir une charge utile vocale de 10, 20, 30, 40, 50 ou 60 octets.

Taille de la charge utile vocale (ms)

La charge utile vocale peut également être exprimée en échantillons Codec. Par exemple, une charge utile vocale G.729 de 20 ms (deux échantillons de codec de 10 ms) représente une charge utile vocale de 20 octets [ (20 octets * / (20 ms) = 8 Kbits/s ]

PPS

PPS représente le nombre de paquets par seconde devant être transmis pour assurer le débit binaire du Codec. Par exemple pour une communication G.729 avec une charge utile vocale par paquet de 20 octets (160 bits), 50 paquets par seconde devront être transmis pour respecter le débit de 8 Kbit/s [50 pps = (8 Kbps) / (160 bits par paquet) ].

formules de calcul de bande passante

Les calculs suivants sont utilisés :

- Taille totale de paquet = (en-tête L2 : MP ou FRF.12 ou Ethernet) + (en-tête IP/UDP/RTP) + (taille de la charge utile vocale)

- PPS = (début du Codec)/(taille de la charge utile vocale)

- Bande passante = taille totale du paquet * PPS

Exemples de calcul

Par exemple, la bande passante requise pour un appel G.729 (débit binaire de codec s’établissant à 8 kbit/s) avec cRTP, MP et la charge utile vocale s’établissant par défaut à 20 octets est comme suit :

- Taille totale paquet (octets) = (En-tête MP (6 Octets)) + ( En-tête IP/UDP/ RTP compressé (2 Octets) + (charge utile vocale (20 octets) = 28 octets

- Taille totale paquet en bits = (28 octets) * 8 bits par octet = 224 bits

- PPS = (Débit du Codec 8Kbit/s)/(160 bits) = 50 paquets par seconde

Note: 160 bits = 20 octets (charge utile vocale par défaut) * 8 bits par octet

- Bande passante par communication = taille du paquet voix (224 bits) * 50 PPS = 11,2 Kbps

Configuration des tailles de charge utile vocale dans Cisco Call Manager et les passerelles Cisco IOS

La taille de la charge utile vocale par paquet peut être configurée dans Cisco Call Manager et les passerelles Cisco IOS.

Note: Si la passerelle Cisco IOS est configurée dans Cisco Call Manager en tant que passerelle MGCP (Media Gateway Control Protocol), toutes les informations de codec (type de codec, taille de la charge utile, détection de l'activité vocale, etc.) sont contrôlées par Cisco CallManager.

Dans Cisco Call Manager, la taille de la charge utile vocale par paquet peut être configurée sur l'ensemble du système. Cet attribut est défini dans Cisco Call Manager Administration (Service > Service Parameters > select_server > Cisco Call Manager) avec ces trois paramètres de service :

- PreferredG711MillisecondPacketSize - (paramètre par défaut : 20 ms. Paramètres disponibles : 10, 20, et 30 ms.)

- PreferredG729MillisecondPacketSize - (paramètre par défaut : 20 ms. Paramètres disponibles : 10, 20, 30, 40, 50 et 60 ms.)

- PreferredG723MillisecondPacketSize - (paramètre par défaut : 30 ms. Paramètres disponibles : 30 et 60 ms.)

Dans Cisco Call Manager, la taille de la charge utile vocale est configurée en échantillons de millisecondes (ms). Basé sur le Codec, le tableau suivant donne la correspondance entre les échantillons en millisecondes et la taille de la charge utile en octets.

Codec

Taille de la charge utile vocale (ms)

Taille de la charge utile vocale (octets)

Commentaires

G.711

20 ms (par défaut)

160 octets

Notez que le débit binaire du Codec est toujours maintenu. Exemple : Codec G.711 = [240 octets * 8(bits/octets)]/30 ms = 64 Kbps

30 ms

240 octets

G.729

20 ms (par défaut)

20 octets

30 ms

30 octets

G.723

30 ms (par défaut)

Dans les passerelles Cisco IOS, une fonctionnalité est ajoutée dans Cisco IOS logiciel version 12.0(5)T qui permet de modifier la taille de la charge utile vocale (en octets) pour que les paquets VoIP soient modifiés via l’interface de ligne de commande. La nouvelle syntaxe de commande est :

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

Effet d’une modification des tailles des charges utiles vocales

Le nombre d'échantillons de Codec par paquet est un autre facteur déterminant la bande passante et le délai d'une communication VoIP. Le Codec définit la taille de l'échantillon, mais le nombre total d'échantillons placés dans un paquet affecte le nombre de paquets transmis par seconde.

Quand vous augmentez la taille de la charge utile vocale, vous réduisez la bande passante VoIP et vous augmentez le délai global. Cet exemple illustre ce principe :

- Communication G.729 avec une charge utile vocale de 20 octets (20 ms) : (40 octets d'en-tête IP/UDP/RTP + charge utile vocale 20 octets) * 8 bits par octet * 50 PPS = 24 Kbps

- Communication G.729 avec une charge utile vocale de 40 octets (40 ms) : (40 octets d'en-tête IP/UDP/RTP + charge utile vocale de 40 octets) * 8 bits par octet * 25 PPS = 16 Kbps

Remarques :

- Les en-têtes couche 2 ne sont pas considérés dans ce calcul.

- Les calculs montrent que si la taille de la charge utile est doublée, le nombre de paquets par seconde requis est ensuite réduit de moitié.

- Conformément aux spécifications G.114 du Secteur de la normalisation des télécommunications de l’ITU (ITU-T), le délai d’attente unidirectionnel global recommandé pour la voix est de 150 ms. Pour un réseau privé, 200 ms est un délai raisonnable, et 250 ms doit être le maximum.

Détection d'activité de voix

Avec les réseaux voix à commutation de circuits, toutes les communications voix utilisent une bande passante de 64 Kbps sans tenir compte des silences. Avec les réseaux VoIP, toutes les conversations et tous les silences sont paquétisés. Avec la détection d'activité voix (la VAD), les paquets de silences sont supprimés.

L'expérience a montré que pour un volume de communications supérieur à 24, la VAD fournit en moyenne un gain de 35 pourcent de bande passante. Les gains ne sont pas obtenus par communication voix ou à un point de mesure spécifique. Pour les besoins de conception des réseaux et de l'ingénierie de bande passante, la VAD ne doit pas être prise en compte, notamment pour les liaisons qui transportent simultanément moins de 24 communications voix. Certaines fonctionnalités comme les musiques d'attente et le fax rendent la VAD inefficace. Quand le réseau est conçu en tenant compte de la bande passante totale utilisée par les communications voix, tous les gains de bande passante autorisés par la VAD sont disponibles pour les applications de type données.

La VAD permet aussi la génération d'un bruit de confort (CNG - Comfort Noise Generation). Comme on peut interpréter un silence comme une déconnexion, la génération de bruit de confort produit un bruit blanc pour que les interlocuteurs n'interprètent pas le silence comme une déconnexion. G729 Annexe-B et G.723.1 Annexe-A ont les mêmes fonctionnalités que G.729 et G.723.1 mais intègrent une fonction de détection d'activité voix.

Dans Cisco Call Manager, VAD peut être activé (il est désactivé par défaut) avec les paramètres de service suivants :

- SilenceSuppressionSystemWide - ce paramètre sélectionne le paramètre VAD pour tous les terminaux légers (par exemple, les téléphones IP Cisco et les passerelles recourant au protocole Skinny).

- SilenceSuppressionWithGateways - ce paramètre sélectionne le paramètre VAD pour toutes les passerelles MGCP. Ceci n'a pas d'effet sur les passerelles H.323. La VAD sur passerelles H.323 doit être désactivée sur la passerelle.

Vous pouvez trouver ces paramètres de service sous Cisco Call Manager Administration (Service > Service Parameters > select_server > Cisco CallManager).

Compression d'en-tête RTP ou Compressed RTP (cRTP)

Tous les paquets VoIP sont constitués de deux composants : les échantillons voix et les en-têtes IP/UDP/RTP. Bien que les échantillons voix soient compressés par le DSP (le traitement de signal numérique) et qu'il puissent varier de taille selon le Codec utilisé, les en-têtes ont une taille constante de 40 octets. Comparés aux échantillons voix de 20 octets dans une communication G.729 par défaut, ces en-têtes constituent un surdébit très important. Avec l'utilisation de cRTP, ces en-têtes peuvent être compressés en deux ou quatre octets. Cette compression permet des économies de bande passante significatives. Par exemple, une communication VoIP G.729 par défaut consomme 24 Kb sans cRTP activé et seulement 12 Kb lorsque le cRTP est activé.

Comme le cRTP compresse les communications VoIP liaison par liaison, les deux extrémités de la liaison IP doivent être configurées pour le cRTP.

Dans les versions logicielles 12.0.5 T ou antérieures de Cisco IOS, cRTP est à commutation de processus, ce qui limite sérieusement l’évolutivité des solutions cRTP en raison des performances du processeur. La plupart de ces questions ont été résolues par diverses améliorations des performances du cRTP introduites dans le logiciel Cisco IOS versions 12.0.7T à 12.1.2T. Voici un récapitulatif de l'historique.

- Le cRTP est un processus commuté dans le logiciel Cisco IOS version 12.0.5T et antérieure.

- Dans le logiciel Cisco IOS Version 12.0.7T, puis dans 12.1.1T, la commutation rapide et la prise en charge de la commutation Cisco Express Forwarding pour cRTP sont introduites.

- Dans le logiciel Cisco IOS version 12.1.2T, les performances de l'algorithme ont été améliorées.

Lorsque vous déplacez cRTP dans le chemin de commutation rapide, cela augmente considérablement le nombre de sessions RTP (appels VoIP) que les passerelles VoIP et les routeurs intermédiaires peuvent traiter.

Heuristiques de compression

Comme le protocole RTP ne possède pas d’en-tête de paquet distinct qui lui est propre, un flux RTP (pour cRTP) se distingue par l’utilisation d’heuristiques d’un flux de données UDP (cUDP). Les heuristiques précise utilisées actuellement pour détecter les paquets RTP sont :

- Le numéro du port de destination est pair.

- Le numéro du port de destination est compris dans la plage 16384-32767 ou 49152-65535.

- Le champ de la version RTP est défini à deux.

- Le champ de l'extension RTP est défini à zéro.

Informations connexes

- Assistance technique concernant la technologie vocale

- Assistance concernant les produits vocaux et de communications unifiées

- Dépannage des problèmes de téléphonie IP Cisco

- Support technique - Cisco Systems