Page suivante - Page précédente - Table des matières

4. Le modem

Le rôle du modem est d'adapter les signaux rectangulaires de données, que le réseau téléphonique ne peut pas transmettre tels quels, en signaux transmissibles par ce réseau.

Il a en fait deux fonctions :

  • un rôle d'adaptation du signal aux lignes du réseau utilisé, c'est-à-dire de modulation et de démodulation ;
  • un rôle de dialogue avec l'équipement informatique auquel il est relié.

Il tient donc exactement le même rôle fonctionnel qu'une couche de communication (TCP, par exemple). Il possède une interface permettant un dialogue avec un utilisateur se trouvant à un niveau supérieur. Ici il s'agit d'une interface physique (y compris électrique). Il communique avec une entité paire (un autre modem) selon un protocole.

La structure interne d'un modem est décrite ci-dessous :

+-----+      +--------+         +-------------+       +----------------+
|  J  +----->| codeur +-------> |  modulateur +------>|                |
|  O  |      +--------+         +-------------+       |                |
|  N  |                                               |                |
|  C  |                                               | transformateur |
|  T  |                                               |                |
|  I  |                                               |     ligne      |
|  O  |      +----------+       +--------------+      |                |
|  N  |<-----+ decodeur |<------+ demodulateur |<-----|                |
+-----+      +----------+       +--------------+      +----------------+

Les paramètres caractérisant un modem sont :

  • le débit d'information en bits/s ;
  • le mode de transmission : synchrone ou asynchrone ;
  • le support de transmission utilisé : réseau ou ligne spécialisée ;
  • le mode de couplage à la ligne : électrique ou acoustique.

Nous aborderons assez rapidement l'ensemble de ces paramètres, selon l'utilisation que nous aurons à en faire. La notion de débit devrait maintenant être assimilée.

Penchons-nous rapidement sur les modes et les supports de transmission utilisés. Voyons ensuite plus précisément le rôle d'adaptation du signal du modem, puis le dialogue qui met en jeu la jonction et la ligne.

Commençons par définir un vocabulaire commun.

4.1 Vocabulaire

Un avis est une recommandation édictée par l'U.I.T (Union Internationale des Télécommunications), organisation intergouvernementale compétente en télécommunications. Les avis ont valeur de norme au sein de l'Europe, puisque les organismes de Télécom nationaux ont encore le monopole. Les recommandations sont issues de travaux de diverses commissions d'études et sont adoptées lors des assemblées pleinières (délai de l'ordre de neuf mois, étant donné l'évolution rapide des technologies). La section Etat actuel de la normalisation décrit les différents avis actuellement en vigueur.

Dans sa normalisation, l'U.I.T définit l'équipement informatique comme un ETTD (Équipement Terminal de Traitement de Données) et le modem comme un ETCD (Équipement Terminal de Circuit de Données). La connexion d'un équipement informatique à un modem, par exemple, est réalisée par l'intermédiaire d'une jonction ou interface.

On appelle half-duplex (bidirectionnel à l'alternat), une transmission s'effectuant dans un seul sens à la fois. On appelle full duplex (bidirectionnel simultané), une transmission pouvant s'effectuer dans les deux sens en même temps. Ces transmissions peuvent avoir lieu indifféremment sur liaison 2 ou 4 fils.

4.2 Le mode de transmission

Une transmission de donnée est toujours liée au facteur temps. Dans les transmissions en série qui constituent la majorité des transmissions, l'émetteur et le récepteur doivent travailler à la même cadence. Dans le mode synchrone, ils sont calés sur le même rythme grâce à des signaux d'horloge émis avant la transmission. Dans le mode asynchrone, l'horloge du récepteur n'est déclenchée puis arrêtée que sur réception de bits de début et de fin. On les appelle bits de start et de stop. Ce mode, bien que moins performant, est le plus utilisé actuellement dans les communications à travers le réseau public.

4.3 Le support de transmission ou ligne

Un modem est utilisable principalement sur deux types de supports : le réseau commuté ou la ligne spécialisée. Sur chaque type de support, les liaisons peuvent être à deux ou quatre fils.

Dans le cas qui nous intéresse, le modem est relié au réseau téléphonique commuté et la liaison est à deux fils. Nous l'utilisons soit en half duplex, soit en full duplex selon l'avis (voir définition de ce mot au paragraphe Vocabulaire.

A ce propos, réfléchissons un peu sur l'utilisation qui est faite actuellement du Réseau Téléphonique Commuté (appelé aussi RTC). Nous l'utilisons bien souvent en full duplex sur liaison deux fils (avis V.32 ou V.34). Lorsqu'on utilise des lignes à quatre fils, il est facile d'imaginer que l'on consacre deux fils à chaque sens de transmission. Pour chaque sens, considérant les vitesses de modulations maximales possibles, on conçoit qu'il faut combiner plusieurs types de modulations pour obtenir des débits maintenant courants de l'ordre de 28800 bits/s.

Or le RTC n'utilise que deux fils. Pour travailler en full-duplex à des débits relativement faibles (en fait jusqu'à l'avis V22 bis), il était possible de partager la bande de fréquence en deux moitiés, une pour chaque sens. Avec les débits employés actuellement ce n'est plus possible. Pour travailler en full-duplex à d'importants débits, il est fait appel à des algorithmes complexes dits "de suppression d'écho" (proche et lointain). Imaginez le travail à réaliser : chaque modem reçoit les données envoyées par le distant mélangées à ses propres données. Le tout est encore pollué par de l'écho ! Et pour compliquer le tout, tout ceci varie dans le temps, et bien sûr d'une communication à l'autre.

Vous comprendrez donc qu'avec une telle utilisation du RTC, les modems soient continuellement soumis à rude épreuve pour ce qui est de la correction, ceci pouvant conduire à des débits variables selon le moment.

4.4 L'adaptation du signal

Nous avons vu aux sections précédentes ce qu'étaient une modulation et un débit. Rassemblons maintenant un peu toutes ces idées. Bien souvent, c'est sur ce point délicat que les esprits se perdent. Nous avons vu que la rapidité de modulation est une caractéristique essentielle de la bande passante. Plus cette rapidité est grande, plus la bande passante demandée est large. Sur le réseau téléphonique, la bande maximale officielle est de 3100 hertz (300 à 3400 Hz). Dans les centraux téléphoniques modernes, elle va jusqu'à 3500 Hz.

Pour bien comprendre le mécanisme de l'adaptation du signal, imaginez maintenant que nous disposions d'un appareil électrique capable d'émettre quatre niveaux de tensions possibles.

Les données à transmettre sont quant à elles toujours présentées sous forme d'un flot ininterrompu (ou presque) d'informations binaires.

L'idée serait de regrouper les bits deux par deux et de les faire passer par ce dispositif, afin d'obtenir en sortie le niveau de tension correspondant. Un tel signal en sortie est dit de valence 4. Plus généralement, la valence d'un signal est le nombre d'états qu'il peut prendre. Cette transformation du signal est appelée codage.

Afin d'adapter ce signal de sortie au support, il faut maintenant le moduler, par exemple en choisissant d'effectuer une modulation de phase. Etant donnée sa valence, nous avons besoin de quatre décalages de phase.

A chaque fois que deux bits se présentent, il est possible d'effectuer une modulation. A l'autre bout, l'équipement est capable de regénérer deux bits. Le débit (en bits/s) est donc bien double de la vitesse de modulation (exprimée en bauds).

Exemple

Vous configurez un modem à 4800 bits par seconde (V.27 ter). Que va-t-il se passer  ? Selon cette norme, le modem va réaliser une modulation de phase différentielle octovalente. Il va donc regrouper les bits par trois (tribits) pour moduler le signal. La vitesse de modulation est donc de 1600 bauds et le débit de 4800 bits/seconde. Pour obtenir un débit de 9600 bits par seconde, il faudra combiner un autre type de modulation. La section Débits et modulations présente l'essentiel des modulations utilisées dans les différentes normes actuelles.

Résumé

L'adaptation du signal peut se faire de trois manières :

  • par une simple modulation appropriée ;
  • par un codage puis une modulation ;
  • par un simple codage. Ce type d'adaptation est présent dans certains modems dits "bande de base" qui transmettent directement ce code sur la ligne. Ce ne sont pas ceux que nous utilisons couramment.

La rapidité de modulation s'exprime en bauds. Elle correspond au nombre de changements d'états du signal par seconde sur la ligne de transmission. Une rapidité de b bauds ne correspond pas forcément à b bits/s sur la ligne. Une configuration binaire (un ou plusieurs bits selon la valence) correspond à un état du signal.

4.5 Le dialogue

Intéressons-nous maintenant au dialogue entre l'équipement informatique et la jonction.

La jonction série

La jonction spécifie les caractéristiques mécaniques, électriques et fonctionnelles des signaux. Bien entendu ces jonctions sont normalisées (voir plus loin les tableaux récapitulatifs sur l'état actuel de la normalisation) et celle qui nous intéresse plus particulièrement est référencée sous le nom V.24 par l'U.I.T, sensiblement équivalente de la norme RS-232C définie par l'E.I.A

Electronic Industries Association.
.

Voici une description des signaux de l'interface V.24 les plus couramment utilisés :

+------+-----------+-----------+--------+------+--------------------------------+
| Code | No broche | No broche | RS-232 | V.24 |        Signification           |
|      | ISO  2110 |   DB 9    |        |      |                                |
+------+-----------+-----------+--------+------+--------------------------------+
| 101  |     1     |           |  PG    | TP   |  Terre de protection           |
|      |           |           |        |      |                                |
| 102  |     7     |    5      |  SG    | TS   |  Terre de signalisation        |
+------+-----------+-----------+--------+------+--------------------------------+
| 103  |     2     |    3      |  TD    | ED   |  Emission de donnees           |
|      |           |           |        |      |                                |
| 104  |     3     |    2      |  RD    | RD   |  Reception de donnees          |
+------+-----------+-----------+--------+------+--------------------------------+
| 105  |     4     |    7      |  RTS   | DPE  |  Demande pour emettre          |
|      |           |           |        |      |                                |
| 106  |     5     |    8      |  CTS   | PAE  |  Pret a emettre                |
|      |           |           |        |      |                                |
| 107  |     6     |    6      |  DSR   | PDP  |  Poste de donnees pret         |
|      |           |           |        |      |                                |
| 108  |    20     |    4      |  DTR   | TDP  |  Terminal de donnees pret      |
|      |           |           |        |      |                                |
| 109  |     8     |    1      |  DCD   | DS   |  Detection du signal de ligne  |
+------+-----------+-----------+--------+------+--------------------------------+
| 125  |    22     |    9      |  RI    | IA   |  Indicateur d'appel            |
+------+-----------+-----------+--------+------+--------------------------------+
Brochage des prises côté soudures :
 +-----------+          +---------------------------------------+
 | 5 4 3 2 1 |          | 13 12 11 10 9  8  7  6  5  4  3  2  1 |
 \  9 8 7 6  /          \  25 24 23 22 21 20 19 18 17 16 15 14  /
 `---------'            `-------------------------------------'
 DB 9                              ISO IS 2110

Le dialogue proprement dit

Prenons deux postes de travail équipés d'un modem chacun et souhaitant communiquer.

Nous passerons rapidement sur le fait que les équipements doivent être reliés à la masse. Ceci est réalisé grâce au circuit 101. D'autre part, il est nécessaire de définir une référence de signalisation : c'est le rôle du circuit 102.

Dès sa mise sous tension, l'ETTD présente un état logique "1" sur le circuit 108 : Terminal de Données Prêt (DTR). Dès la mise sous tension de l'ETCD, celui-ci présente l'état Poste de Données Prêt (DSR) correspondant à un état logique "1" sur le circuit 107, assurant ainsi que le modem est sous tension et connecté à la ligne.

L'ETTD ayant des données à émettre, demande à émettre. Il présente sur la jonction l'information Demande Pour Émettre (RTS) sur le circuit 105. Ceci valide le modulateur de l'ETCD qui émet alors une porteuse.

Du coté appelé, l'ETCD détecte la présence de la porteuse sur la ligne de transmission et le signale à l'ETTD sur le circuit 109 : Détection de signal (porteuse). Les circuits 107 et 108 auront été initialisés au préalable comme ci-dessus.

L'ETTD ayant signalé son intention d'émettre sur le circuit 105 reçoit en réponse peu de temps après le signal Prêt À Émettre (CTS) sur le circuit 106.

Les données peuvent ensuite circuler via les circuits 103 et 104.

Le contrôle de flux

Lorsqu'un émetteur émet de façon systématique plus de données que le récepteur ne peut en accepter, il se pose alors un problème qui ne peut être résolu que grâce au mécanisme de contrôle de flux.

Le contrôle de flux peut être de différents types :

logiciel

Le modem insère des caractères de contrôles dans le flot de données circulant entre l'ETCD et l'ETTD : XOFF pour arrêter l'envoi et XON pour le reprendre.

matériel

Généralement appelé CRTSCTS, il met en oeuvre l'emploi des circuits 105 (RTS) et 106 (CTS). Ce symbole est en fait le nom donné à la constante du fichier d'inclusion termios.h.

Le fonctionnement du contrôle de flux matériel pendant la transmission peut se résumer ainsi :

Avant d'émettre, le terminal doit lever son signal RTS (Request To Send). À partir de ce moment, le modem, s'il est en mesure d'émettre, lève le signal CTS (Clear To Send). Lorsque le buffer du modem est plein, le modem descend CTS. Il le remonte ensuite. Dans l'autre sens de transmission, lorsque le buffer du terminal est plein, le terminal descend RTS.

4.6 La connexion au réseau téléphonique commuté

Maintenant, plusieurs questions se posent, et j'imagine que parmi celles que vous vous posez il y a :

  • et sous Linux, le fonctionnement est-il identique ?
  • à quel moment le numéro du correspondant a t-il été composé ?
  • mon modem est configuré en réception/émission, comment ça marche ?
  • etc.

Nous allons maintenant tenter de répondre.

Eclaircissons un peu les choses. Le dialogue que nous venons de voir concerne le dialogue théorique ETTD-ETCD et ETCD-ETTD sans se soucier d'éventuelles contraintes pouvant provenir du système d'exploitation. Il est toujours vrai. Néanmoins, il ne suffit pas forcément pour qu'une communication soit établie, notamment via le RTC. Nous allons étudier ce fonctionnement point par point en prenant un bon système d'exploitation (Linux, mais ce n'est qu'un exemple), un bon port série et du courage. Vous continuez ?

Tout d'abord, nous avons vu qu'une communication commençait toujours par le premier échange DTR/DSR, ou si vous préférez 108/107. La montée du circuit 108 est réalisée sous Linux à l'ouverture du port série (ex.  fopen ("/dev/ttyS0", ...)). Cela se voit très bien sur un modem externe, le voyant TR est allumé. La réponse du modem par le circuit 107 est un peu différente. Dans la section Le dialogue proprement dit, pour des raisons de simplicité, nous supposions que le modem répondait sur le circuit 107 après un délai très bref, c'est-à-dire qu'il était instantanément connecté à la ligne.

Cette réponse est maintenant conditionnée par la connexion à la ligne via le réseau téléphonique commuté.

Initialisation du modem

En général, c'est juste après l'ouverture du port série que le modem est initialisé. Cela se fait grâce aux commandes AT que nous ne détaillerons pas. Simplement, ces commandes sont envoyées au modem (par l'intermédiaire du circuit 103) (ex.  write sur le descripteur de fichier du périphérique) et interprétées par lui, lorsque :

  • le circuit 108 est fermé (état "1") ;
  • le modem est en mode commande.

Établissement de la connexion

L'une des commandes d'initialisation permet la composition d'un numéro. Le modem décroche (eh oui, ce terme barbare veut dire que suite à la fermeture du relais, le central local envoie une tonalité à la fréquence de 440 Hz :-)) puis compose le numéro.

Sur l'équipement distant, le circuit 108 est également monté. Le modem appelé détecte l'appel. Le signal d'indication d'appel (circuit 125) est utilisé en interne pour mémoriser l'appel, le modem réalisant donc lui-même la connexion à la ligne. Cette mémorisation est maintenue par DTR (jusqu'à déconnexion).

À ce moment précis, le modem appelé répond en validant son modulateur qui émet la porteuse.

Le modem appelant, en état de décrochage et attendant la porteuse, met son émetteur en service. Après négociation, le circuit 109 (DCD) est alors validé. Du côté de l'appelé, le circuit 109 est également validé. La prise de contact est terminée. Les circuits 107 (DSR) des deux modems sont alors montés en réponse à DTR (asservissement des circuits 107-109).

Réponse automatique ou manuelle

Du côté de l'appelé, il est possible de mettre le modem en mode réponse automatique. Il répond alors tout seul à l'appel après quelques sonneries. Le registre S0 des modems est généralement réservé à la configuration de ce mode.

Lorsque ce registre contient la valeur 0, (ATS0=0), le modem est en réponse manuelle. Sous Linux, c'est assez souvent l'option choisie, et c'est le logiciel (notamment getty) qui gère l'appel. En effet les gestionnaires, de tty tels que getty préfèrent prendre en charge la connexion : ce n'est pas au modem à répondre à un appel mais à getty lui même. Lorsque le modem reçoit un appel, il émet simplement le message RING (bien sûr, si le mode verbeux est bien configuré : ATE1). Sur ce, getty envoie la commande ATA qui valide le mode réponse et la porteuse.

Enfin, à la fermeture du port, les signaux 108/107 repassent à l'état 0.

Voici à titre d'information l'organigramme d'un appel :

 +---------------------------------------+
 | Detection de l'invitation a numeroter |
 +---------------------------------------+
 |
 +--------------------------+
 |       Numerotation       |
 +--------------------------+
 |
 +---------------------------------+
 | Emission de la tonalite d'appel |
 +---------------------------------+
 |
 +--------------------------+
 +------- NON -----|   Detection de tonalite  |- OUI
 |                 +--------------------------+    |
 |                    |                            |
 |         +--------------+            +--------------------------+
 |         |   Occupe     |            |     Retour d'appel       |
 |         +--------------+            +--------------------------+
 |           |                                     |
 |           |                         +--------------------------+
 +------------------------- NON -------| Detection arret tonalite |
 |           |                         +--------------------------+
 |           |                                     |
 |           |                      +-------------------------------+
 |           |    +-------- NON ----| Detection tonalite de reponse |
 |           |    |                 +-------------------------------+
 |           |    |                                |
 |           |    |                   +--------------------------+
 |           |    |            +-NON--| Prise de contact aboutie |
 |           |    |            |      +--------------------------+
 |           |    | NO         |                   |
 TIMEOUT |     BUSY  |    | ANSWER     | TIMEOUT           | CONNECT
 +--------------------------+   +-------------+  +--------------------------+
 |    Appel infructueux     |   | Deconnexion |  | Transmission de donnees  |
 +--------------------------+   +-------------+  +--------------------------+

Déconnexion

Plusieurs méthodes permettent de mettre fin à un appel :

  • Mode commande. Mettre le modem en mode commande et envoyer la chaîne +++ATH ;
  • Perte de porteuse. L'une des causes est la déconnexion normale de l'autre modem ;
  • Ouverture du circuit 108 (DTR). C'est la méthode la plus couramment employée.


Page suivante - Page précédente - Table des matières