Conception VoIP
Ce chapitre s’intéresse à la manière d’optimiser le trafic vocal grâce aux codecs (protocole d’encodage) qui influencent la charge du trafic sur les liaisons, sans oublier le calcul de la surcharge des en-têtes. Il est aussi possible de compresser des en-têtes. Enfin, le chapitre évoque des protocoles sécurisés pour la VoIP.
1. Codecs Définition

Source : Configuration Guide for Asterisk PBX (Flavio E. Goncalves)
Un codec est un dispositif capable de compresser et/ou de décompresser un signal numérique. Ce dispositif peut être un circuit électronique, un circuit intégré ou un logiciel. Le mot-valise « codec » vient de « codage-décodage » (- COde-DECode en anglais). D’un côté, les codecs encodent des flux ou des signaux pour la transmission, le stockage ou le chiffrement de données. D’un autre côté, ils décodent ces flux ou signaux pour édition ou restitution. Les différents algorithmes de compression et de décompression peuvent correspondre à différents besoins en qualité de restitution, de temps de compression ou de décompression, de limitation en termes de ressource processeur ou mémoire, de débit du flux après compression ou de taille du fichier résultant. Ils sont utilisés pour des applications comme la téléphonie, les visioconférences, la diffusion de médias sur Internet, le stockage sur CD, DVD, la télé numérique par exemple.
2. Exemples de codecs/MOS
Le MOS pour Mean Opinion Score évalue la qualité audible de la voix sur une échelle de 0 à 5.
Exemples de codecs devant être disponible sur les UA :
- GSM: 13 Kbps, MOS 3.8
- iLBC: 13.3 Kbps, MOS 4.14
- ITU G.711: 64 Kbps, MOS 4.1
- ITU G.723.1: 5.3/6.3 Kbps MOS3.8
- ITU G.726: 16/24/32/40 Kbps MOS 3.85
- ITU G.729: 8 Kbps MOS 3.92
- ITU G.722: 64 Kbps - High definition MOS 4.13
3. Comment choisir son codec ?

Source : Configuration Guide for Asterisk PBX (Flavio E. Goncalves)
- Qualité du son (MOS – Mean Opinion Score)
- Coût de licence
- Consommation CPU
- Consommation bande passante
- Gestion de la perte de paquets
- Support des périphériques (PBX/Téléphones)
http://www.voip-info.org/wiki/view/Codecs
4. Surcharge d’en-têtes
Un appel G.729 avec un voice payload size of 20 octets (20 ms) :
- 18 octets Ethernet header and trailer +
- 40 octets IP/UDP/RTP headers +
- 20 octets voice payload
= 78 octets
Total packet size (bits) = (78 octets) * 8 bits per octet = 624 bits
PPS = (8 Kbps codec bit rate) / (160 bits) = 50 pps
Note: 160 bits = 20 octets (default voice payload) * 8 bits per byte
Bande passante par appel = voice packet size (624 bits) * 50 pps = 31.2 Kbps
Exercice avec un appel G.711 avec une charge de 160 octets (20 ms).
5. Calcul de bande passante et dimensionnement de lignes
Calculateurs de bande passante
6. Réduction de la bande passante nécessaire
Il y a trois méthodes pour réduire la bande passante nécessaire des appels VoIP
- Compression d’en-têtes RTP (cRTP) : à placer sur des liens WAN sur les routeurs (voir la documentation Cisco).
- Trunk IAX : protocole ouvert (RFC 5456) de signalisation et de transport fournissant des options de compression d’en-tête et de confidentialité.
- VoIP payload : sur les passerelles et PBX on peut augmenter taille par défaut (par codec) de la charge RTP. En faisant cela, on réduit la surcharge en en-tête, on diminue la bande passante utilisé mais on augmente les délais.
7. Intégrité et confidentialité des échanges
Protocoles sécurisés
- 802.1q
- SIPS
- SRTP
- ZRTP
- IAX