La téléphonie informatique
L’application téléphonique va rester l’application dominante pendant encore de nombreuses années, en raison notamment de l’émergence de nouveaux et immenses marchés, comme celui de la Chine. Même si la majorité du débit total sur les lignes de télécommunications ne correspond plus à de la téléphonie mais à des applications informatiques, le chiffre d’affaires des opérateurs est très majoritairement dépendant des applications téléphoniques. La parole téléphonique est surtout prise en charge par les réseaux à commutation de circuits, mais une forte concurrence s’exerce avec les réseaux à transfert de paquets, essentiellement de type IP. On peut même dire que le passage vers la téléphonie IP est inéluctable car il permettra d’intégrer les services de données et la téléphonie dans un même réseau. En effet, beaucoup de sociétés essayent d’intégrer leur environnement téléphonique dans leur réseau à transfert de paquets pour, d’une part, faire baisser les coûts des communications et, d’autre part, simplifier la maintenance de leurs réseaux en passant de deux réseaux à gérer (téléphonie et données) à un seul (données). La difficulté de faire de la téléphonie par paquet provient de la contrainte temporelle très forte due à l’interaction entre individus. Le temps de latence doit être inférieur à 300 ms si l’on veut garder une interaction humaine acceptable. Si l’on souhaite une bonne qualité de la conversation, il ne faut pas que la latence soit supérieure à 150 ms. Un cas encore plus complexe se produit lorsqu’il y a un écho, c’est-à-dire un signal qui revient à l’oreille de l’émetteur. L’écho se produit lorsque le signal rencontre un obstacle, comme l’arrivée sur le combiné téléphonique. L’écho qui repart en sens inverse est numérisé par un CODEC et traverse sans problème un réseau numérique. La valeur normalisée de la latence de l’écho étant de 56 ms, pour que l’écho ne soit pas gênant à l’oreille, il ne faut pas que le temps aller dépasse 28 ms, en supposant un réseau symétrique qui prend le même temps de réponse à l’aller et au retour. Il faut donc que, dans les équipements terminaux, les logiciels extrémité soient capables de gérer les retards et de resynchroniser les octets qui arrivent. En règle générale, les équipements modernes, comme les terminaux GSM, possèdent des suppresseurs d’écho évitant cette contrainte temporelle forte.La voix simple en paquet n’est pas aussi contraignante que la parole téléphonique car elle n’implique aucune contrainte temporelle. Dans le cas d’IP, il ne faut donc pas confondre la téléphonie sur IP (ToIP) et la voix sur IP (VoIP). Ce chapitre examine dans un premier temps l’évolution de la téléphonie vers les réseaux Internet et intranet puis aborde l’intégration téléphonie-informatique, aussi appelée CTI (Computer Telephony Integration).
L’application téléphonique
Comme expliqué précédemment, l’application de téléphonie est complexe à prendre en charge en raison de son caractère interactif et de sa forte synchronisation. Rappelons (voir le chapitre 5) les trois opérations successives nécessaires à la numérisation de la parole, qu’elle soit téléphonique ou non : 1. Échantillonnage. Consiste à prendre des points du signal analogique au fur et à mesure qu’il se déroule. Il est évident que plus la bande passante est importante, plus il faut prendre d’échantillons par seconde. C’est le théorème d’échantillonnage qui donne la solution : il faut échantillonner à une valeur égale à au moins deux fois la bande passante. 2. Quantification. Consiste à représenter un échantillon par une valeur numérique au moyen d’une loi de correspondance. Cette phase consiste à trouver la loi de correspondance de telle sorte que la valeur des signaux ait le plus de signification possible. 3. Codage. Consiste à donner une valeur numérique aux échantillons. Ce sont ces valeurs qui sont transportées dans le signal numérique. La largeur de bande de la voix téléphonique analogique est de 3 200 Hz. Pour numériser ce signal correctement sans perte de qualité, puisqu’elle est déjà relativement mauvaise, il faut échantillonner au moins 6 400 fois par seconde. La normalisation a opté pour un échantillonnage de 8 000 fois par seconde. La quantification s’effectue par des lois semi logarithmiques. L’amplitude maximale permise se trouve divisée en 128 échelons positifs pour la version américaine PCM, auxquels il faut ajouter 128 échelons négatifs dans la version européenne MIC. Le codage s’effectue donc soit sur 128 valeurs, soit sur 256 valeurs, ce qui demande en binaire 7 ou 8 bits de codage. La valeur totale du débit de la numérisation de la parole téléphonique s’obtient en multipliant le nombre d’échantillons par le nombre d’échelons, ce qui donne : • 8 000 × 7 bit/s = 56 Kbit/s en Amérique du Nord et au Japon ; • 8 000 × 8 bit/s = 64 Kbit/s en Europe. Beaucoup d’autres solutions ont été développées par rapport aux qualités et aux défauts de l’oreille : • AD-PCM (Adaptive Differential-Pulse Code Modulation), ou MIC-DA (Modulation par impulsion et codage-différentiel adaptatif) ; • SBC (Sub-Band Coding) ; • LPC (Linear Predictive Coding) ; • CELP (Code Excited Linear Prediction). La section suivante fait un tour d’horizon des principaux codeurs audio.
Les codeurs audio
Les codeurs audio associés aux différentes techniques citées précédemment sont nombreux. On trouve notamment les codecs classiques mais aussi de nouveaux codeurs bas débit. La figure 35.1 illustre les vitesses de sortie des différentes normes de codeurs de la voix téléphonique fondées sur un échantillonnage standard à 8 kHz. L’ordonnée représente la qualité du son en réception, qui est évidemment un critère subjectif. Nous avons aussi représenté les codeurs utilisés dans les réseaux de mobiles GSM et les normes régionales Pour l’audio haute définition, on considère une bande passante plus importante puisque l’oreille humaine est sensible aux fréquences de 20 à 20 000 Hz. L’échantillonnage s’effectue sur 40 kHz, et c’est la valeur de 44,1 kHz qui a été choisie. Le codage effectué sur un CD tient sur 16 bits par échantillon, ce qui donne 705,6 Kbit/s. Parmi les nombreux codeurs propriétaires qui existent sur le marché, citons : • StreamWorks à 8,5 Kbit/s ; • VoxWare à 2,4 Kbit/s avec le codeur RT24 ; • Microsoft à 5,3 Kbit/s avec la norme G.723 ; • VocalTec à 7,7 Kbit/s. La recommandation G.711 correspond à la numérisation classique à 64 Kbit/s en Europe ou 56 Kbit/s en Amérique du Nord. G.723 est une compression de la parole utilisée par de nombreux industriels, entre autres Microsoft, qui l’utilise dans l’environnement Windows. Le débit descend à presque 5 Kbit/s. G.726 est la norme adoptée pour la compression de la parole en codage différentiel adaptatif en 16, 24, 32 ou 40 Kbit/s. Les applications PARTIE XII 924 Dans ce cas, au lieu de coder l’échantillon en entier, on n’envoie que la différence avec l’échantillon précédent, ce qui permet un codage sur beaucoup moins d’éléments binaires. G.727 utilise aussi un codage différentiel, qui apporte des compléments au codage précédent. Cette recommandation indique comment changer, en cours de numérisation, le nombre de bits utilisés pour coder les échantillons. Elle est particulièrement utile dans le cadre des réseaux qui demandent à l’application de s’adapter en fonction de la charge du réseau. G.728 est une compression à 16 Kbit/s utilisant une technique de prédiction, qui consiste à coder la différence entre la valeur réelle et une valeur estimée de l’échantillon à partir des échantillons précédents. On comprend que cette différence peut être encore plus petite que dans la technique différentielle. Si l’estimation est bonne, la valeur à transporter avoisine toujours 0. Très peu de bits sont alors nécessaires pour acheminer cette différence. Les standards FS proviennent du ministère américain de la Défense. Les codeurs les plus récents sont G.723.1, G.729 et G.729.A. Le codeur G.723.1 permet un débit compris entre 5,3 et 6,4 Kbit/s. Les deux codeurs G.729 donnent un débit de 8 Kbit/s, mais la qualité de la communication est meilleure. Ce codec a été choisi pour compresser la voix dans l’UMTS. La parole téléphonique est une application très contraignante, comme nous l’avons vu à plusieurs reprises dans cet ouvrage. La première contrainte provient de l’interactivité entre les deux utilisateurs, qui limite le temps aller-retour à une valeur de 600 ms au grand maximum. Les normes de l’UIT-T portent cette valeur à 800 ms. Cependant, pour avoir une bonne qualité de la communication, il faut descendre à 300 ms aller retour. Suivant les protocoles sous-jacents, plusieurs méthodes permettant de satisfaire à ces contraintes ont été développées à la fin des années 90, que nous allons examiner.
La téléphonie sur ATM et le relais de trames
La technique de transfert ATM a été conçue pour transporter de la parole téléphonique de type G.711 à 64 Kbit/s. La raison de la petite taille de la cellule se trouve dans cette fonctionnalité. Les 48 octets de données de la trame sont remplis en 48 fois 125 µs, c’est-à-dire 6 ms, ce qui reste acceptable, même lorsqu’il y a des échos et que le temps de transit doit rester inférieur à 28 ms. Si la parole téléphonique est compressée par un codeur G.729 à 8 Kbit/s, il faut un temps de 48 ms de remplissage des 48 octets de données puisque le signal donne naissance à 1 octet toutes les 1 ms. Cette section examine la technique AAL-2 introduite dans la commutation ATM pour réaliser le transport de la voix téléphonique et plus particulièrement la téléphonie UMTS. Avant d’aborder l’AAL-2, introduisons les techniques préalables, qui sont encore utilisées dans les réseaux ATM. L’émulation de circuit CES (Circuit Emulation Service) a été la première solution pour transporter de la téléphonie en paquet. Cette émulation de circuit utilise l’AAL-1 de l’environnement ATM, et plus précisément le service CBR (Constant Bit Rate), présenté au chapitre 15. Les PABX interconnectés par cette solution utilisent des interfaces E1 normalisées (G.703 et G.704). Le service ATM est de type circuit virtuel permanent. La signalisation sur l’interface est portée dans l’IT16 de l’interface E1.