Vous êtes sur la page 1sur 120

Comment ça marche ?

1/120

COMMENT CA MARCHE
1 Introduction au domaine des réseaux.................................................................................................................................................... 6
1.1 Histoire des Télécommunications ..................................................................................................................................................... 6
1.2 Structure générale des réseaux informatiques .................................................................................................................................. 6
1.2.1 Classification des réseaux ......................................................................................................................................................... 6
1.2.2 Les réseaux de télécommunications......................................................................................................................................... 6
1.2.3 Topologie des réseaux ............................................................................................................................................................... 7
1.2.4 Architectures de réseaux ........................................................................................................................................................... 7
1.2.5 Réseaux locaux .......................................................................................................................................................................... 7
1.2.6 Les réseaux large bande ............................................................................................................................................................ 8
1.2.7 Présentation de l’Internet .......................................................................................................................................................... 8
1.3 Les fondements de communications................................................................................................................................................. 9
1.3.1 Les connexions........................................................................................................................................................................... 9
1.3.2 Les modes de commutation (switching) ................................................................................................................................10
1.3.3 Les différents supports de communication ............................................................................................................................10
1.4 Architecture des réseaux ..................................................................................................................................................................11
1.4.1 L’architecture ISO ...................................................................................................................................................................11
1.4.2 L’architecture TCP/IP .............................................................................................................................................................12
2 Comment marchent les réseaux informatiques ? ..............................................................................................................................14
2.1 Le cable parallèle ..............................................................................................................................................................................14
2.2 Le cable série.....................................................................................................................................................................................14
2.3 Contrôle de parité..............................................................................................................................................................................14
2.4 Les trames..........................................................................................................................................................................................14
2.5 Adresse IP et adresse MAC .............................................................................................................................................................14
2.6 Serveur DHCP...................................................................................................................................................................................15
2.7 Acheminement des données.............................................................................................................................................................15
3 Acheminement des données...................................................................................................................................................................15
3.1 Différentes voies pour acheminer les données...............................................................................................................................15
3.2 Les hubs.............................................................................................................................................................................................15
3.3 Les switchs ........................................................................................................................................................................................15
3.4 Les routeurs.......................................................................................................................................................................................15
3.5 Résumé ..............................................................................................................................................................................................16
3.6 Acheminement des données.............................................................................................................................................................16
3.7 Serveur DNS .....................................................................................................................................................................................16
4 Communication via le RTC (les commandes Hayes ou AT)..............................................................................................................16
4.1 Objectif ..............................................................................................................................................................................................16
4.2 Présentation .......................................................................................................................................................................................16
5 Les différents types de réseaux .............................................................................................................................................................19
5.1 Topologie en bus...............................................................................................................................................................................19
5.2 Topologie en anneau.........................................................................................................................................................................19
5.3 Topologie en étoile ...........................................................................................................................................................................19
6 Protocoles et modèle OSI .......................................................................................................................................................................19
6.1 Qu’est-ce qu’un protocole ?.............................................................................................................................................................19
6.2 Le modèle OSI ..................................................................................................................................................................................20
6.3 Un exemple pour mieux comprendre..............................................................................................................................................20
7 Classe d'adresses IP et masques de sous-réseaux ..............................................................................................................................21
7.1 Adresses IP et classes d'a dresses IP ................................................................................................................................................21
7.1.1 Hôtes et réseaux .......................................................................................................................................................................21
7.1.2 Adressage IP.............................................................................................................................................................................21
7.2 Routage IP de base............................................................................................................................................................................21
7.2.1 Adressage de classe IP et utilisation d'ARP ..........................................................................................................................21
7.3 Le masque de sous-réseau................................................................................................................................................................22
8 Les modes de transmission ....................................................................................................................................................................22
8.1 Qu’est que l’unicast ? .......................................................................................................................................................................22
8.2 Qu’est-ce que le broadcast ? ............................................................................................................................................................23
8.3 Qu’est-ce que le multicast ?.............................................................................................................................................................23
8.4 Représentation des trames envoyées dans les trois cas .................................................................................................................23
9 L'administration de réseaux par SNMP .............................................................................................................................................23
9.1 Les fonctions de l’administrateur réseau ........................................................................................................................................23
9.2 Fonctionnement SNMP....................................................................................................................................................................24
9.3 SMI : Structure of Management Information.................................................................................................................................24
9.4 Extension de la MIB .........................................................................................................................................................................24
Comment ça marche ? 2/120
9.5 Les différents types d’opérations.....................................................................................................................................................24
10 Qu’est-ce qu’un LAN ?...........................................................................................................................................................................24
10.1 Exemple d’architecture ....................................................................................................................................................................25
11 Les Réseaux Privés Virtuels (RPV ou VPN).......................................................................................................................................25
11.1 Introduction .......................................................................................................................................................................................25
11.1.1 Qu’est-ce qu’un VPN ? ...........................................................................................................................................................25
11.1.2 Pourquoi utiliser un VPN ? .....................................................................................................................................................25
11.2 Fonctionnement des VPN ................................................................................................................................................................25
11.2.1 L’interconnexion......................................................................................................................................................................25
11.3 Les concepts de base ........................................................................................................................................................................26
11.3.1 La tunnelisation........................................................................................................................................................................26
11.4 Le chiffrement...................................................................................................................................................................................27
11.5 L’authentification..............................................................................................................................................................................28
11.6 Conclusions.......................................................................................................................................................................................28
12 Les réseaux Ethernet, Token Ring et FDDI .......................................................................................................................................29
12.1 . Présentation d'un réseau local........................................................................................................................................................29
12.2 . LAN Ethernet ..................................................................................................................................................................................30
12.3 . Le Token Ring ................................................................................................................................................................................31
12.4 Comparaison entre Ethernet et Token Ring ...................................................................................................................................32
12.5 FDDI (Fiber Distributed Data Interface) ........................................................................................................................................33
12.6 ATM CHEZ IBM .............................................................................................................................................................................35
12.7 Conclusion.........................................................................................................................................................................................36
13 Faire un plan d'adressage IP.................................................................................................................................................................36
13.1 Pourquoi faut-il choisir des adresses IP spécifiques pour un réseau interne? .............................................................................36
13.2 Si ces adresses ne marchent pas sur Internet, on ne pourra plus surfer! ......................................................................................36
13.3 Quels sont les adresses non-routables?...........................................................................................................................................37
13.4 Comment organiser les adresses dans l'entreprise? .......................................................................................................................37
13.5 Quel adresse doit-on donner à chacun? ..........................................................................................................................................37
14 Comment relier deux ordinateurs entre eux ? Les paramètres Réseaux de Windows...................................................................37
14.1 Le câble série et le câble parallèle...................................................................................................................................................37
14.2 Le modem..........................................................................................................................................................................................37
14.3 Les cartes réseaux .............................................................................................................................................................................37
14.4 Pour trois ordinateurs et plus ...........................................................................................................................................................38
14.5 Les paramètres réseaux sous Windows NT (et Windows 95/98).................................................................................................38
14.6 Les paramètres "Accès réseau à distance" de Windows 98 ..........................................................................................................39
15 Quelques protocoles multicast ..............................................................................................................................................................40
15.1 MTP (Multicast Transfert Protocol)................................................................................................................................................40
15.2 IGMP (Internet Group Management Protocol) ..............................................................................................................................40
15.3 LGMP (Local Group Multicast Protocol).......................................................................................................................................40
15.4 MFTP (Multicast File Transfert Protocol)......................................................................................................................................40
16 Les réseaux locaux...................................................................................................................................................................................42
16.1 . Connaissances préalables...............................................................................................................................................................42
16.2 . Introduction .....................................................................................................................................................................................42
16.2.1 Objectifs des réseaux locaux...................................................................................................................................................42
16.2.2 Caractéristiques des réseaux locaux.......................................................................................................................................43
16.2.3 Les réseaux normalisés............................................................................................................................................................43
16.3 . 802.3 et Ethernet .............................................................................................................................................................................44
16.3.1 Introduction ..............................................................................................................................................................................44
16.3.2 Notation IEEE 802.3 ...............................................................................................................................................................44
16.3.3 La méthode d’accès à la parole : CSMA/CD ........................................................................................................................44
16.3.4 Limitations................................................................................................................................................................................44
16.3.5 Efficacité d’un réseau Ethernet...............................................................................................................................................45
16.3.6 Format de la trame Ethernet V2 .............................................................................................................................................45
16.3.7 Format de la trame 802.3 ........................................................................................................................................................45
16.4 802.5 : Token Ring ...........................................................................................................................................................................46
16.4.1 Introduction ..............................................................................................................................................................................46
16.4.2 Principe.....................................................................................................................................................................................46
16.4.3 Topologie..................................................................................................................................................................................46
16.4.4 Le niveau physique ..................................................................................................................................................................46
16.4.5 Trame........................................................................................................................................................................................46
16.4.6 Le protocole..............................................................................................................................................................................47
16.4.7 Le moniteur ..............................................................................................................................................................................47
16.4.8 Moniteur multiple ....................................................................................................................................................................47
16.4.9 L’autotest matériel ...................................................................................................................................................................47
16.4.10 Notion de priorité ................................................................................................................................................................48
16.4.11 Localisation des coupures de câbles..................................................................................................................................48
16.4.12 Duplication d’adresse..........................................................................................................................................................48
16.4.13 Un mécanisme complexe ....................................................................................................................................................48
16.4.14 Les ponts ..............................................................................................................................................................................48
Comment ça marche ? 3/120
16.4.15 Conclusion ...........................................................................................................................................................................49
16.5 . 802.4 : Token Bus...........................................................................................................................................................................49
16.5.1 . Introduction ............................................................................................................................................................................49
16.5.2 . Principe...................................................................................................................................................................................49
16.5.3 . Le signal .................................................................................................................................................................................49
16.5.4 . La trame..................................................................................................................................................................................50
16.5.5 . Insertion d’une station dans l’anneau ..................................................................................................................................50
16.5.6 . Résolution de contention.......................................................................................................................................................50
16.5.7 . Initialisation............................................................................................................................................................................50
16.5.8 . Suppression d’une station .....................................................................................................................................................50
16.5.9 . Passage du jeton.....................................................................................................................................................................50
16.5.10 . Perte du jeton .....................................................................................................................................................................51
16.5.11 . Duplication du jeton..........................................................................................................................................................51
16.5.12 . Duplication d’adresse........................................................................................................................................................51
16.5.13 . Mode réponse immédiate..................................................................................................................................................51
16.5.14 . Temps de transmission......................................................................................................................................................51
16.5.15 . Gestion des priorités..........................................................................................................................................................51
16.5.16 . Conclusion .........................................................................................................................................................................52
16.6 . ANSI X3T9.5 : FDDI.....................................................................................................................................................................52
16.6.1 . Introduction ............................................................................................................................................................................52
16.6.2 . Le codage 4B/5B NRZI ........................................................................................................................................................52
16.6.3 . Trame FDDI ...........................................................................................................................................................................52
16.6.4 . Principe...................................................................................................................................................................................53
16.6.5 . Circulation du jeton ...............................................................................................................................................................53
16.6.6 . Le jeton simple.......................................................................................................................................................................53
16.6.7 . Le jeton réduit ........................................................................................................................................................................54
16.6.8 . Gestion des priorités..............................................................................................................................................................54
16.6.9 . Gestion des fautes..................................................................................................................................................................56
16.6.10 . Insertion d’une station de classe A ..................................................................................................................................56
16.6.11 . Conclusion .........................................................................................................................................................................57
16.7 . 802.9 : RNIS ...................................................................................................................................................................................57
16.7.1 . Historique...............................................................................................................................................................................57
16.7.2 . Principe...................................................................................................................................................................................57
16.7.3 . Conclusion..............................................................................................................................................................................57
16.8 . CCITT X 25 ....................................................................................................................................................................................57
16.8.1 . Introduction ............................................................................................................................................................................57
16.8.2 . Technologie............................................................................................................................................................................57
16.8.3 . Caractéristiques......................................................................................................................................................................58
16.8.4 . Minitel ....................................................................................................................................................................................58
16.8.5 . Conclusion..............................................................................................................................................................................58
16.9 . Frame Relay ....................................................................................................................................................................................58
16.9.1 . Caractéristiques......................................................................................................................................................................58
16.9.2 . Récupération de bande passante...........................................................................................................................................58
16.9.3 . Fonctionnement .....................................................................................................................................................................58
16.9.4 . Adressage ...............................................................................................................................................................................59
16.9.5 Conclusion................................................................................................................................................................................59
16.10 . ATM.................................................................................................................................................................................................59
16.10.1 Introduction..........................................................................................................................................................................59
16.10.2 Commutation de paquets et circuit virtuel ........................................................................................................................59
16.10.3 Cellules.................................................................................................................................................................................59
16.10.4 Transfert asynchrone ...........................................................................................................................................................60
16.10.5 Adressage ATM...................................................................................................................................................................60
16.10.6 UNI et NNI ..........................................................................................................................................................................60
16.10.7 Cellule ATM ........................................................................................................................................................................60
16.10.8 Catégories de services ATM ..............................................................................................................................................60
16.10.9 Contrôle des taux .................................................................................................................................................................61
16.10.10 Contrôle de flux ...................................................................................................................................................................61
16.10.11 Les connexions ....................................................................................................................................................................61
16.10.12 Classical IP ou ATM (IPoA) ..............................................................................................................................................61
16.10.13 LAN Emulation ...................................................................................................................................................................61
16.10.14 Conclusion ...........................................................................................................................................................................62
16.11 . 802.11 : les réseaux sans fil ...........................................................................................................................................................62
16.11.1 Introduction..........................................................................................................................................................................62
16.11.2 Caractéristiques ...................................................................................................................................................................62
16.11.3 Méthode d’accès..................................................................................................................................................................62
16.11.4 Roaming ...............................................................................................................................................................................62
16.11.5 Conclusion ...........................................................................................................................................................................62
16.12 Introduction à l’administration des réseaux....................................................................................................................................62
16.12.1 Introduction..........................................................................................................................................................................62
Comment ça marche ? 4/120
16.12.2 Objectifs de l'a dministration...............................................................................................................................................63
16.12.3 La normalisation ISO..........................................................................................................................................................63
16.12.4 Le standard SNMP ..............................................................................................................................................................64
16.12.5 Les catégories de téléadministration..................................................................................................................................65
16.12.6 Les équipements concernés ................................................................................................................................................65
16.12.7 Les outils systèmes et réseau « natifs » .............................................................................................................................65
16.12.8 Outils du domaine public ....................................................................................................................................................67
16.12.9 Plates-formes intégrées.......................................................................................................................................................67
16.12.10 Outil matériel .......................................................................................................................................................................67
16.12.11 Conclusion ...........................................................................................................................................................................68
16.13 Systèmes d’exploitation de réseaux ................................................................................................................................................68
16.13.1 Introduction..........................................................................................................................................................................68
16.13.2 Réseaux Client-Serveur ......................................................................................................................................................68
16.13.3 Réseaux poste à poste .........................................................................................................................................................68
17 ADSL : Le haut débit sur le RTC.........................................................................................................................................................69
17.1 Que faut il pour profiter de l’ADSL ?.............................................................................................................................................69
17.2 Qu’est ce peut vous faire réfléchir devant une offre aussi parfaite ? ...........................................................................................69
17.3 Quelques trucs … .............................................................................................................................................................................69
18 Les accès à Internet.................................................................................................................................................................................69
18.1 Réseau Téléphonique Commuté (RTC)..........................................................................................................................................69
18.2 Réseau Numérique à Intégration de Services (RNIS) ...................................................................................................................70
18.3 Asymetric Digital Subscriber Line (ADSL)...................................................................................................................................70
19 Unix ou Linux...........................................................................................................................................................................................71
19.1 Linux détrônera -t'il Windows ?.......................................................................................................................................................71
20 Linux : Installation et administration..................................................................................................................................................72
20.1 Linux : Notion de base et installation .............................................................................................................................................72
20.1.1 Présentation ..............................................................................................................................................................................72
20.1.2 Les concepts de base ...............................................................................................................................................................73
20.2 Administration d'un système Linux ................................................................................................................................................76
20.2.1 Les commandes unix de base .................................................................................................................................................76
20.2.2 Amorçage et arrêt d'un système..............................................................................................................................................77
20.2.3 Le système X-Window............................................................................................................................................................78
20.2.4 Le noyau et les paramètres du noyau .....................................................................................................................................79
20.2.5 Montage des systèmes de fichiers ..........................................................................................................................................79
20.2.6 Installation de logiciel .............................................................................................................................................................79
21 Linux : le réseau et les services .............................................................................................................................................................80
21.1 La configuration du réseau...............................................................................................................................................................80
21.2 Les connections réseau simples.......................................................................................................................................................80
21.3 Network File System ........................................................................................................................................................................81
21.3.1 Conditions préalables ..............................................................................................................................................................81
21.3.2 Le serveur NFS ........................................................................................................................................................................81
21.3.3 Installer un client NFS.............................................................................................................................................................81
21.4 Le serveur FTP..................................................................................................................................................................................81
21.5 Network Information Server............................................................................................................................................................82
21.6 Serveur Http (Apache)......................................................................................................................................................................82
21.7 Domaine Name Serveur (DNS) .......................................................................................................................................................83
21.7.1 Un brin de théorie ....................................................................................................................................................................83
21.7.2 Notre propre domaine..............................................................................................................................................................83
21.8 Partage avec Windows (SAMBA) ..................................................................................................................................................84
22 Programmation Unix ..............................................................................................................................................................................85
22.1 Unix : Introduction et commandes usuelles ...................................................................................................................................85
22.1.1 Introduction ..............................................................................................................................................................................85
22.1.2 Les commandes usuelles .........................................................................................................................................................85
22.2 Programmation Unix : les scripts....................................................................................................................................................87
22.2.1 De la compréhension des scripts ............................................................................................................................................87
23 Programmation Unix : Signaux, processus et tubes .........................................................................................................................91
23.1 UNIX et langage C ...........................................................................................................................................................................91
23.2 Les signaux sous UNIX....................................................................................................................................................................92
23.2.1 Présentation des signaux .........................................................................................................................................................92
23.2.2 L'envoi de signaux ...................................................................................................................................................................92
23.2.3 Le traitement des signaux .......................................................................................................................................................92
23.2.4 Le cas de la fonction "alarm''..................................................................................................................................................93
23.3 Processus ...........................................................................................................................................................................................93
23.3.1 Rappels .....................................................................................................................................................................................93
23.3.2 La création de processus .........................................................................................................................................................93
23.3.3 Primitives du système..............................................................................................................................................................94
23.3.4 Les tubes...................................................................................................................................................................................94
24 Unix : La commande awk ......................................................................................................................................................................95
24.1 La commande awk ............................................................................................................................................................................95
Comment ça marche ? 5/120
24.1.1 Présentation ..............................................................................................................................................................................95
24.1.2 Généralités................................................................................................................................................................................95
24.1.3 Un premier exemple ................................................................................................................................................................95
24.1.4 Variables, fonctions et instructions........................................................................................................................................96
24.1.5 Rappels: les expressions régulières........................................................................................................................................96
24.1.6 La forme générale des programmes transmis à awk.............................................................................................................97
24.1.7 Pour clore sur awk ...................................................................................................................................................................97
24.2 Conclusion.........................................................................................................................................................................................98
25 Programmation Unix : Quelques solutions.........................................................................................................................................98
26 Installation et configuration d'un serveur ....................................................................................................................................... 101
26.1 Installation de samba ..................................................................................................................................................................... 101
26.1.1 Introduction ........................................................................................................................................................................... 101
26.1.2 Installation du serveur .......................................................................................................................................................... 101
26.1.3 Les clients Windows............................................................................................................................................................. 102
26.1.4 Conclusion............................................................................................................................................................................. 102
26.2 Installation de sendmail................................................................................................................................................................. 102
26.2.1 Introduction ........................................................................................................................................................................... 102
26.2.2 Installation du serveur sendmail.......................................................................................................................................... 103
26.2.3 Vérification de la configuration........................................................................................................................................... 105
26.2.4 Un anti-virus.......................................................................................................................................................................... 107
26.2.5 Installation des clients .......................................................................................................................................................... 108
26.3 Installation d'un proxy ................................................................................................................................................................... 109
26.3.1 Introduction ........................................................................................................................................................................... 109
26.3.2 Configuration du serveur...................................................................................................................................................... 109
26.4 Installation d'un serveur DNS....................................................................................................................................................... 110
26.4.1 Introduction ........................................................................................................................................................................... 110
26.4.2 Notre propre domaine........................................................................................................................................................... 110
26.4.3 La zone inversée ................................................................................................................................................................... 112
26.5 Installation de hylafax ................................................................................................................................................................... 113
26.5.1 Introduction ........................................................................................................................................................................... 113
26.5.2 Installation du serveur .......................................................................................................................................................... 113
26.5.3 Les différents clients WINDOWS....................................................................................................................................... 115
26.5.4 Le logiciel W2HFAX ........................................................................................................................................................... 116
26.5.5 Conclusion............................................................................................................................................................................. 118
27 Sécurité................................................................................................................................................................................................... 118
27.1 Unix et sécurité .............................................................................................................................................................................. 118
27.1.1 Introduction ........................................................................................................................................................................... 118
27.1.2 Évolution de la sécurité Unix .............................................................................................................................................. 118
27.1.3 Conception de systèmes sécurisés....................................................................................................................................... 119
27.1.4 Utilisation des journaux de logs unix.................................................................................................................................. 119
27.1.5 Conclusion............................................................................................................................................................................. 120
Comment ça marche ? 6/120

1 Introduction au domaine des réseaux


1.1 Histoire des Télécommunications
Depuis l’antiquité, l’homme n’a pas cessé de chercher les diff érents moyens (parole, gestes de la main, signaux de f umée,
tam-tam, document écrit,...)pour f aire véhiculer le messag e à son correspondant, et donc pour communiquer. Ainsi, l’être
humain, à travers des époques successives, a f ournit ses efforts intellectuels aussi bien que physiques af in de découvrir des
méthodes de communications adéquates.
Le f ruit de ces ef f orts a été couronné, pour la première f ois dans l’histoire des télécommunications, par l’invention de
télégraphe optique (1er réseau de télécommunications). Et, après la découverte de l’électricité, ce télégraphe optique s’est
évolué vers le télégraphe électrique. Et en 1965, une nouvelle technologie voit le jour c’est le téléphone proposé par
F.Bourseul.
En 1870, le britannique J.Maxwell va mener vers de très importants progrès lors de ces études des ondes électromagnétiques
et a démontré que ces ondes voyagent aussi bien dans le vide que dans la matière, à la vitesse de la lumière. Cela a permet
de réaliser les premières expériences de la radio (transmission sans f il) en 1895, par le physicien Marconi .
Au début du XXème siècle, une nouvelle révolution pour les t élécommunications s’amorce, celle de l’électronique. Cette
époque est caractérisée par l’invention des composants et circuits électroniques de base et de bonne qualité : le transistor en
1947, puis les circuits intégrés dans les années 1960.
La naissance du premier ordinateur arriva en 1949, par l’américain Von Neumann : c’est le début de traitement électronique de
l’inf ormation (l’Inf ormatique). Et en 1971, la création du premier microprocesseur permet la miniaturisation des matériels
inf ormatiques et leur émergence dans les techniques de télécommunications mettant à jour un nouveau réseau : le réseau
inf ormatique.
Dès lors, ce progrès a bouleversé, complètement, notre vie sociale et a laissé un impact positif sur le train économique.
Le dynamisme économique provoquée par le secteur de télécommunications, a mené à la création de nouveaux emplois dans
dif f érents secteurs, et par la suite, la baisse du taux de chômage.
Cette mutation n’a pas touché les entreprises et l’économie, en général, mais aussi l’ensemble du tissu social. Ainsi, il s’est
produit un changement sur nos manières de produire, de travailler, de communiquer et ,même, d’utiliser les moyens de
communications. Une telle mutation est positive pour les uns (liberté d’expression, ouverture vers des cultures, démocratie
électronique,...), et négatives pour les autres qui voient que, par exemple, l’effet de la mondialisation perturbe les coutum es et
la culture de la population, ce qui a permet aux certains Etats d’adopter et de reconnaître les vale urs juridiques des
documents.
Ces émergences n’ont pas empêcher l’évolution des nouvelles technologies telles que la radiomessagerie, le téléphone
mobile ou portable, les autoroutes des f ibres optiques et Internet (réseau des réseaux inf ormatiques).
1.2 Structure générale des réseaux informatiques
Un ordinateur est une machine permettant de manipuler des données. On peut f aire relier plusieurs ordinateurs c’est -à-dire
établir un réseau, pour permettre, par exemple :
- le partage des f ichiers, d’applications ;
- la communication entre personnes (grâce au courrier électronique, la discussion en direct ,...) ;
- la garantie de l’unicité de l’inf ormation (bases de données) ;
- etc.
Un réseau inf ormatique est une collection d’objets de télécommunications et d ’inf ormations (ordinateurs, stations de travail,
cartes réseaux, modems, imprimantes réseaux, liaison téléphonique,…). Ces entités sont reliées et connectées entre elles par
l’intermédiaire des lignes physiques appelées lignes de communications qui servent de transport et d’échange des données et
des inf ormations.
L’évolution des schémas de communications des réseaux inf ormatiques se sont succédés depuis le début de l’ère de
l’inf ormatique dont le f acteur des coûts des équipements a été relativement majeur dans la conception.
En passant par un système de traitement centralisé (Mainframe) avec lequel tous les terminaux sont connectés au centre par
un raccordement plus ou moins important, jusqu’à l’apparition des mini-calculateurs qui se sont intégrés dans d es Systèmes
Distribués coexistant au côté des Systèmes Centralisés. Et, dans les années 80 l’inf ormatique personnelle s’impose peu à peu
avec la naissance des micro-ordinateurs qui offrent la possibilité d’être raccordés à un réseau par des interf aces spéc if iques.
1.2.1 Classification des réseaux
Les réseaux inf ormatiques peuvent être classés en se basant sur plusieurs critères, par exemple la distance entre entités
communicantes.
Ainsi, on trouve des réseaux limités à des très courtes distances déterminées par des f ils électriques spéciales à l’intérieur
d’un même ordinateur, ces f ils électriques sont appelés des bus . Cette approche peut être étendue pour atteindre un
environnement local, on parle de RLE (Réseau Local d’Entreprise) ou LAN (Local Area Network). Si la distance est plus
grande, nous parlons de RM (Réseau Métropolitain) ou MAN (Metropolitain Area Network) qui correspond à un réseau de ville.
Enf in, si la distance est très grande nous parlons de RLE (Réseau Longue Distance) ou WAN qui sont des réseaux destinés à
transporter les données à l’échelle d’un pays. Dans ce dernier catégorie on distingue deux sortes : le réseau terrestre
(inf rastructures au niveau sol), et le réseau satellitaire (engins spatiaux).
1.2.2 Les réseaux de télécommunications
Se sont des réseaux utilisés dans l’industrie. La communication s’ef f ectue en temps réel et à des instants très précis.
L’application de base est la téléphonie. Il tient en compte d’un temps de réponse limité à une valeur d’une cinquantaine de
milli-secondes en aller-retour.
Comment ça marche ? 7/120
1.2.3 Topologie des réseaux
Un réseau inf ormatique est constitué d’ordinateurs reliés entre eux grâce à du matériel (câblage, cartes réseaux, ainsi que
d’autres équipements permettant d’assurer la bonne circulation des données). L’arrangement phys ique de ces éléments est
appelé Topologie physique. Il en existe trois :
- la topologie en bus
- la topologie en étoile
- la topologie en anneau
Par symétrie, cette topologie physique doit être complétée par une topologie logique qui correspond à la f açon avec laquelle
les données transitent dans les câbles.
Topologie en bus
C’est l’organisation la plus simple d’un réseau.
Tous les ordinateurs sont reliés à une même ligne de transmission ou bus (ligne
physique) par l’intermédiaire d’une câble (généralement coaxial).

Topologie en étoile
Comme son nom l’indique, une topologie en étoile consiste en la liaison concentrée de
tous les ordinateurs qui convergent vers un système matériel appelé hub ou
concentrateur : c’est une boîte comprenant un certain nombre de jonctions auxquelles
on peut connecter les câbles en provenance des ordinateurs

Topologie en anneau
Dans un réseau en topologie en anneau, les ordinateurs f orment une boucle sur
laquelle chacun d’entre eux va "avoir la parole" successivement.

En réalité, dans une topologie en anneau les


ordinateurs ne sont pas reliés en boucle, mais sont
reliés à un répartiteur (appelé MAU, Multistation Access
Unit) qui gère la communication entre les ordinateurs en
impartissant à chacun d’entre eux un temps de parole.

1.2.4 Architectures de réseaux


Pour réaliser le transport des données d’une extrémité à l’autre, le réseau physique ou matériel doit comprendre une
architecture logicielle spécif iée pour s’assurer de transf ert des données jusqu’au destinataire.
Pour cela, on adopte une architecture qui est, en f ait, spécif ique pour chaque type de réseau, et qui déf init une certaine
hiérarchie à suivre pour expédier les données.
Structure en couches
L’architecture de réseau est, en général, structurée sous f orme de couches qui
dépendent, à leurs tours, du type de réseau. Entre deux couches adjacentes (d’une
même machine) on trouve une interf ace. Cette interface permet de définir un ensemble
d’opérations élémentaires et des services que la couche inf érieure of f re à la
supérieure, et cela après traduction par la couche inf érieure pour le compte de la
supérieure.

Protocole
Chaque couche N d’une machine de réseau gère la conversation
(~ communication) avec la couche N d’une autre machine de ce
même réseau.
Cette conversation est caractérisée par un certain nombre de
règles et conventions qui sont connus sous le nom de protocole
(ou protocole de la couche N).
En réalité, les données de la couche N d’une machine ne sont
pas directement transférées à la couche N d’une autre machine,
mais chaque couche passe les données et le contrôle à la
couche immédiatement inférieure, jusqu’à la plus basse, et cette
dernière couche est appelée la couche physique qui est
responsable , réellement, de la communication.

1.2.5 Réseaux locaux


Introduction
Un réseau local indique une architecture distribuée, localisée géographiquement. On découpe généralement les réseaux
locaux en trois catégories :
(1) les réseaux métropolitains ou MAN (Metroplitan Area Network) ;
Comment ça marche ? 8/120
(2) les réseaux d’établissement ou LAN (Local Area Network) ;
(3) les réseaux départementaux ou structures d’interconnexion locales ou DAN (Departemental Area Network).
Le réseau local a pour objet la transmission de toutes les données informatiques à l’intérieur d’une s ociété. Deux organismes
ont particulièrement contribué aux travaux dans le domaine des réseaux locaux :
- l’IEEE (Institute of Electrical and Electronics Engineers), aux Etats -Unis ;
- l’ECMA (European computer Manuf actures Association) en Europe.
Les constituants matériels d’un réseau local
Les éléments matériels permettant d’interconnecter les ordinateurs sont les suivants :
(a) la carte réseau (parf ois appelé coupleur) : elle permet d’interfacer l’ordinateur au support physique, c’est -à-dire mémoriser
pendant un certain temps les inf ormations passant à travers les lignes physiques ;
(b) Le transmetteur «tranceiver» (appelé aussi adapteur) :il permet d’assurer la transf ormation des signaux circulant sur le
support physique, en signaux logiques manipulables par la carte réseau, aussi bien à l’émission qu’à la réception ;
(c) La prise il s’agit de l’élément permettant de réaliser la jonction mécanique entre la carte réseau et le support physique ;
(d) Le support physique d’interconnexion : c’est le sy stème de câblage qui permet de relier les ordinateurs entre eux. Les
câbles utilisées comme supports de transmission sont les suivants : le câble coaxial, la paire torsadée et la f ibre optique.
Les équipements d’interconnexion
Une organisation comporte généralement plusieurs réseaux locaux reliés entre eux c’est -à-dire interconnectés.
Pour établir une telle interconnexion on déploie les principaux équipements matériels suivants :
- les répéteurs : permettent de régénérer un signal ;
- les ponts (bridges), permettant d’acheminer les inf ormations entre réseaux locaux de même type (c -à-d avec le même
protocole) ;
- les passerelles (gateways), permettant de relier des réseaux locaux de types dif f érents (en créant un pont entre eux) ;
- les routeurs, permettant de relier de nombreux réseaux locaux de telles f açon à permettre la circulation des données d’un
réseau à un autre de la f açon optimale (en trouvant une route à travers les divers ponts pour atteindre la station cible).
Topologies logiques des réseaux locaux
Les dispositifs matériels ne sont pas suf f isants à l’utilisation du réseau local. Il f aut déf inir une méthode d’accès standar d
(selon la normalisation) af in que les ordinateurs connaissent la manière avec laquelle échangent les inf ormations. Cet te
méthode (ou technique) d’accès est appelée topologie logique.
La topologie logique est réalisée par un protocole d’accès. Les protocoles d’accès les plus utilisés sont :
- ETHERNET : comprend des brins de 500 mètres au maximum, interconnectés les uns aux autres par des répéteurs ;
- TOKEN-RING : l’accès au réseau est géré par un jeton (anneau à jeton).
On trouve, aussi, le réseau local FDDI (Fiber Distributed Data Interf ace) qui semble aujourd’hui la principale solution adaptée à
la demande d’interconnexion de réseaux locaux dans un contexte de réseau f édérateur. Les réseaux FDDI utilisent comme
support physique la f ibre optique, et ils reposent sur une topologie en double anneau.
Les réseaux locaux à très haut débit
Dans le cadre des réseaux locaux, le f utur nous réserve des bouleversements prof onds. La partie locale doit prendre en
charge des inf ormations diverses qui doivent parvenir à l’utilisateur (ou en partir).
- Le débit : le débit est la quantité d’inf ormations pouvant être transmises (sur une voie de communication) par unité de
seconde (1 seconde). Son unité est exprimée en bits/s (bits par seconde) ou Mbits/s (mégabits par seconde).
- Commutateurs ou les éléments de commutation : Ils sont des dispositifs physiques ou ordinateurs spécialisés permettant de
sélectionner une ligne de transmission de sortie des données, parmi au moins deux lignes, af in d’expédier les inf ormations.
Ces commutateurs sont appelés parfois "des processeurs d’interface de messages" (en anglais :Interface Message Processor
ou IMP). Quand un message (ou paquet) est envoyé d’un IMP à un autre via un ou plusieurs IMP, le paquet est reçu dans son
intégralité par chaque IMP, stocké jusqu’à ce que la ligne de sortie requise soit libre, puis réexpédié : commutation de paqu et.
- Les réseaux Ethernet 100 Mbits/s et la commutation : Pour satisf aire à la demande des utilisateurs, le débit des réseaux
Ethernet doit augmenter de façon importante. Trois grandes catégories de solutions sont proposées : l'augmentation du débit
du support partagé, l'utilisation plus optimisée du support physique par une commutation ou une commutation partielle, ou
l'ajout de canaux ou voies de transmission.
Les réseaux locaux industriels
Ils sont utilisés dans le domaine industriel, et ils permettent d’interconnecter divers équipements de contrôle et de mesure pour
permettre d’échanger des inf ormations et de les exploiter très rapidement (en temps réel).
1.2.6 Les réseaux large bande
Dans le perspective de l’utilisation de plusieurs applications informatiques, qui demandent, particulièrement, le déploiement de
plusieurs médias telles que la voix, les données, les images animées, le graphisme et des assistances diverses, les
concepteurs dans le domaine des réseaux ont décidé d’évoluer vers des débits plus él evés, et par la suite intégrer la large
bande.
La large bande signifie que le réseau est apte à transporter de très hauts débits en intégrant simultanément voix, données et
image. En outre, le réseau doit tenir compte de la commutation de plusieurs sous -canaux (multi-selection).
Le débit dans ces supports peut atteindre jusqu’à 9953,28 Mbits/s. Parmi les supports de communication utilisés :
- SONET (Synchronous Optical NETwork) ;
- SDH (Synchronous Digital Hierarchy)
Le réseau large bande le plus connu c’est le RNIS (Réseau Numérique à Intégration de Service, ISDN en anglais) qui admet
des connexions à commutation et sans commutation.
1.2.7 Présentation de l’Internet
Histoire
Internet est déf ini comme étant un ensemble de réseaux hétérogènes interconnectés .
Son concept a été développé dans le milieu des années 70 par le DARPA (Defense Advanced Research Agency) c’est -à-dire
l’Agence pour les Projets de Recherches Avancées dans la Déf ense. Ce réseau l’appela, à cette époque Arpanet.
Comment ça marche ? 9/120
À partir de 1979, le DARPA, avec l’implication des chercheurs expérimentés, f onda un comité de coordination appelé ICCB
(Internet Control and Conf iguration Board - Conseil pour la Conf iguration d’Internet et Contrôle).
Le DARPA a démarré Internet en 1980, trois ans après, il établit les protocoles TCP/IP (Transmission Control Protocol/Internet
Protocol) dans les réseaux grande distance. Au même moment Arpanet a été scindé en deux réseaux séparés, un pour la
recherche (ARPANET), et un autre, plus grand, réservé aux militaires (Milnet). Ensuite, après, le protocole TCP/IP s’est
intégré dans la plupart des universités qui utilisaient une version UNIX de l’université de Calif ornie (Unix Berkeley), et ce la a
été f ait par l’intermédiaire de la société Bolt Beramek et Newman.
Fonctionnement de l’Internet
L’Internet est le résultat de l’interconnexion de différents réseaux physiques par l’intermédiaire des passerelles et des rou teurs
en respectant certaines conventions.
Chaque machine de l’Internet possède une adresse IP (Internet Protocol) Cette adresse permet de reconnaître une connexion
au réseau Internet d’un ordinateur donné. L’adresse IP (32 bits) est constitué de deux parties : un identif icateur de réseau et
un identif icateur de la machine pour ce réseau.
Les adresses IP sont réparties sur quatre classes, chacune d’elles permet d’attribuer un code ou numéro pour chaque réseau
comprenant un certain nombre de machines :
- Classe A : 126 réseaux (1.0.0.0 à 126.0.0.0 c’est-à-dire le premier octet représente le réseau, le nombre 127 est réservé et le
réseau 0 n’existe pas) et 16 777 216=224-2 hôtes (c’est-à-dire ordinateurs) ;
- Classe B :16 384 réseaux (128.0.0.0 à 191.255.0.0, c’est-à-dire les deux premiers octets représentent le réseau avec les
deux premiers bits sont 1 et 0) et 65 535=216-2 hôtes ;
- Classe C : 2 097 152 réseaux (192.0.0.0 à 255.255.255.0, c’est-à-dire les trois premiers octets représentent le réseau avec
les trois premiers bits sont 1, 1 et 0) et 254=28-2 hôtes ;
- Classe D : adresses de groupe.
Les adresses IP sont traités par des routeurs qui effectuent le routage en se basant sur le numéro de réseau. Un hôte relié à
plusieurs réseaux aura plusieurs adresses IP. En f ait, une adresse n’identif ie pas simplement une machine mais une
connexion à un réseau.
Les adresses Internet sont attribuées par un organisme central qui s’appelle le NIC. Mais, on peut déf inir nos propres
adresses si on n’est pas connecté à l’Internet.
Les adresses IP f igurantes sur les machines sont des adresses logiques, et c’est le logiciel réseau qui le convertit en adresse
physique utilisée pour transmettre le message (le trame). Cette traduction est effectuée au moyen du protocole ARP (Address
Resolution Protocol) qui permet, de même, de déterminer l’adresse physique destinataire. Pour opti miser le fonctionnement de
ARP chaque machine tient à jour, en mémoire, une table des adresses résolues (mémoire cache).
Il existe aussi un protocole RARP qui permet de faire l’inverse de ARP, c’est -à-dire permet de déterminer l’adresse logique à
partir de l’adresse physique d’une machine (cas de serveur Proxy).
Le routage IP
Internet résulte de l’interconnexion de dif f érents réseaux physiques par des machines appelées routeurs. Chaque réseau,
contenant un ensemble de hôtes, est connecté , éventuellement , à un routeur. Le routeur permet de déterminer l’adresse
physique de destinataire et de f aire circuler les messages (paquets).
Il existe deux types de routage :
- Routage direct : consiste à f aire rattacher deux machines au même routeur.
- Routage indirect : c’est le routage le plus complexe car il consiste à f aire envoyer les messages de routeur en routeur
jusqu’au destinataire en se servant des tables de routage.
Table de routage : c’est une mémoire qui garde l’adresse IP (de l’hôte de destinataire) pour chaque numéro de réseau à
atteindre. Elle peut, également, contenir une adresse de routeur par déf aut.
Notion de masque : un masque est un moyen permettant de reconnaître le numéro de réseau de l’adresse IP en question.
Exemple : pour la classe C le masque, en décimale, est 255.255.255.0 . Mais en réalité, on peut avoir 4 cas de f igures
possibles pour le masque du réseau 194.204.248.130 , et cela pour créer des sous -réseaux:
- Les 2 premiers bits du 4ème octet sont 00 et le masque est 255.255.255.0 ;
- Les 2 premiers bits du 4ème octet sont 01 et le masque est 255.255.255.64 ;
- Les 2 premiers bits du 4ème octet sont 10 et le masque est 255.255.255.128 ;
- Les 2 premiers bits du 4ème octet sont 11 et le masque est 255.255.255.192.
1.3 Les fondements de communications
1.3.1 Les connexions
Pour pouvoir établir une communication entre deux entités de niveau (N) du réseau, il f aut mettre en place une connexion af in
d’émettre ou recevoir les informations. Cette connexion se fait sur demande préalable de la part d’émetteur, et la décision est
laissée soit pour le récepteur, soit pour le gestionnaire de service.
Les modes avec connexion :
Le mode avec connexion consiste à f aire appel à 3 phases distinctes : l'établissement de la connexion, le transfert de données
et la libération de la connexion.
Dans le mode avec connexion, la transmission des données est sécurisée puisque l’émetteur et le récepteur se mettent
d’accord, et par la suite le contrôle est effectué, au moins, au niveau des deux extrémités. En plus, l’émetteur et le récepteur
négocient, sur quelques paramètres définissant les limites admissibles pour le transfert des données : c’est la négociation d e
la qualité de service ou QoS (Quality of Service).
En revanche, le mode avec connexion présente quelques inconvénients :
- la lourdeur de mise en œuvre : temps d’émission plus long,... ;
- la dif f iculté de mise en œuvre de plusieurs requêtes de même nature (exemple : dif f usion de f ichier) : applications
multipoints.
Exemple de réseau en mode connecté est l’ATM (Asynchronous Transf er Mode).
Les modes sans connexion
Comment ça marche ? 10/120
Le mode sans connexion n’a pas besoin de présence, à la f ois et en même temps, des entités communicantes distantes. Il n’y
a pas de négociation entre l’émetteur et le récepteur. Pour mettre en place cette connexion, il faut penser à un logistique af in
de s’assurer du transfert des données : c’est la structure en couches, telle que chaque couche rend service à celle qui est
inf érieure.
La dif ficulté de mode sans connexion réside sur l’établissement du contrôle de communication par le gestionnaire de réseau
qui doit prendre des précautions.
En outre, dans une communication en mode non connecté, les données (ou unités de données) sont connues à l’avance, et
joignes par des informations de contrôle ainsi que l’adresse complète des deux entités c’est -à-dire émetteur et récepteur.
1.3.2 Les modes de commutation (switching)
La commutation est une fonction qui permet de réaliser une liaison temporaire entre l’équipement demandeur (émetteur), et
l’équipement demandé (récepteur), à travers le réseau. Il existe 3 principaux types de commutation :
- Commutation de circuits ;
- Commutation de messages ;
- Commutation de paquets.
Commutation de circuits
Avant d’ef f ectuer une communication entre deux entités, il est établi un circuit entre les deux à travers lequel, durant la
communication, les inf ormations transitent.
Le circuit est libéré dès que les deux abonnés décident d’interrompre la communication, et mettent f in au transmission des
données.
Le problème qui se pose est de pouvoir réserver des ressources (mémoires, f iles d’attente,..) dans le cas ou plusieurs
communications utilisent la même liaison c’est-à-dire le même circuit.
L’application exemple de type réseau est le service téléphonique. Le service offert est orienté connexion où on distingue trois
étapes : l'établissement de la connexion, le transf ert de l’inf ormation et la libération de la connexion .
Commutation de messages
Un message est une suite d’informations constituant un tout pour l’expéditeur et le destinataire (un f ichier complet, une ligne
tapée sur un terminal,...).
Dans ce type de commutation le message transitant sur la ligne, passe à travers des éléments intermédiaires avant d’arriver
au destination. Ces éléments sont appelés les nœuds de commutation qui servent de contrôler et corriger les erreurs des
messages avant qu’ils soient acquittés au nœud suivant. D’où, il faut penser au contrôle du flux des messages et l’introducti on
des politiques de sécurisation des données si, par exemple, une liaison tombe en panne. Donc l’inconvénient est le temps
d’attente qui augmente énormément, par contre l’utilisation meilleure des ressources est un avantage.
Commutation par paquets (packet switching)
Comme nous venons de voir au paragraphe précédente, le temps de réponse sera plus important le cas où les messages sont
très longs. La solution est de découper le message en morceaux appelés paquets dont la longueur maximale est de l’ordre de
1000 ou 2000 bits.
Les paquets sont envoyés indépendamment les uns des autres, et les nœuds de commutations tiennent en compte de cette
situation pour les aiguiller vers la bonne sortie en se servant, par exemple, d’une table de routage.
Plusieurs paquets provenant des messages différents peuvent arriver au même nœud, et pour les f aire sortir on procède au
multiplexage temporelle. Cette technique de commutation est meilleure en temps de réponse et reprise sur erreur, mais le
problème à résoudre est le réassemblage des paquets pour ref ormer le message ori ginal avant de le donner au couche
supérieure.
Note : Internet utilise une commutation de paquets.
Il existe un autre mode de commutation c’est la commutation de cellules qui est une commutation de paquets assez
particulière : les paquets ont une longueur fixe maximale de 53 octets. Chaque cellule possède un certain nombre de champs
d’inf ormations y compris l’en-tête de cellule.
1.3.3 Les différents supports de communication
Les Terminaux
Une liaison physique entre deux entités communicantes est établit par l’intermédiaire des deux organes qui sont connectés.
Ces organes sont appelés Terminaux.
Il existe deux types de terminaux : les ETTD (Equipement Terminal de Transmission de Données) et les ETCD (Equipement
Terminal de Circuit de Données). L’ETTD c’est le terminal dans le sens classique c’est-à-dire l’équipement sur lequel
l’utilisateur travaille. L’ETCD est un dispositif placé à chaque extrémité de support de transmission et il sert d’adaptation de
signal à transmettre.
Les ETTD se regroupent en 4 catégo ries :
- Terminaux lourds : mini-ordinateurs perf ormants ;
- Terminaux légers : se sont des terminaux composées d’un clavier et d’un écran de visualisation ;
- Terminaux intelligents : ils sont plus évolués que les terminaux légers car ils servent d’env oyer vers un centre de traitement
que des inf ormations nécessaires ;
- Postes de travail : ils sont situés entre les terminaux lourds et les terminaux intelligents. Ils possèdent des processeurs
puissants, des disques durs de plusieurs centaines de Moctet s et des entrées-sorties de plusieurs débits.
Tous les équipements terminaux qui comprennent l’ensemble des matériels informatiques pour traitement des données, sont
regroupés sous le vocable de TE (Terminal Equipement).
Les Modems
Un modem permet la transformation des signaux binaires (suite des 0 et des 1)
manipulables par l’ordinateur vers des signaux analogiques indiquant également
des valeurs numériques. Il sert de lien entre deux ordinateurs via la ligne
téléphonique.
Ainsi, le modem module les informations numériques en ondes analogiques et, en
Comment ça marche ? 11/120
sens inverse, démodule les données numériques (Modulateur/DEModulateur).

Les jonctions
Les jonctions sont des points de connexion ou des circuits de liaison qui sont placées dans des zones de communicat ion
spécif iques assurant le transf ert des données.
La jonction V.24 est très utilisée pour f aire communiquer les micro -ordinateurs avec le monde extérieur.
L’avis V.24 normalise les circuits entre l’ETTD et l’ETCD. Chaque circuit de l’avis est identif ié par un numéro et déf init une
f onction ou une commande spécif ique.
Les câblo-opérateurs
On désigne par opérateurs les entreprises et les organismes chargés de mettre en place des réseaux câblés utilisant des
câbles.
Ces câbles sont des supports ou moyens de transmission d’une très grande quantité d’informations (ou signaux) diversif iées
et de bonne qualité comme la parole ou les données (vidéo) en plus des images animées, donc elles sont caractérisées par
des hauts débits.
Ces câbles commencent à être exploitées en numérique (exemple : télévision numérique) alors qu’elles étaient , depuis
longtemps, exploitées en analogique.
Les applications vidéo sont nombreuses : elles vont de la télésurveillance au transport de canaux de télévision en passant pa r
la messagerie d’images vidéo.
Les réseaux câblés, utilisés par les diffuseurs, sont réalisés avec un support de câble coaxial, le CATV (Câble d’Antenne de
TéléVision), qui n’est autre qu’un câble coaxial de 75? dont la largeur de bande avoisine les 400MHz.
La fibre optique
La f ibre optique est de plus en plus utilisée, elle est devenue concurrentielle en prix et en connecteurs (coût d’installatio n).
La bande passante de la f ibre optique est beaucoup plus importante c’est-à-dire qu’elle permet de transf érer une très grande
quantité d’inf ormations.
La f ibre optique présente une f aible encombrement. Un autre avantage c’est qu’elle est moins sensible aux bruits et évitable
aux interf érences électromagnétiques ce qui entraîne une minimisation du taux d’erreurs d e transmission.
Le support physique comporte des composants extrémités suivants :
- Une diode électroluminescente (DEL) qui ne comporte pas de cavité laser ;
- Une diode laser (DL) ;
- Un laser modulé.
Le satellite
La transmission par satellite a déb uté dans les années 80, et le premier satellite qui a été lancé portait le nom de Telstar.
Les satellites de télécommunications tournent avec une vitesse angulaire égale à celle de la rotation de la Terre sur elle -
même, et cela dans un chemin circulaire appelé orbite. Mais, les satellites apparaissent immobiles pour un observateur
terrestre, on dit qu’elles sont géostationnaires. La distance Terre-orbite est d’environ 36000 km.
Les liaisons satellites sont plus ou moins rapides, et les transmissions s’ef f ectuent via des lignes téléphoniques (par des
modems par exemple).
Les stations terrestres communiquent entre elles via le satellite, et pour éviter tout encombrement, des politiques d’accès o nt
été adoptées pour permettre une utilisation maximale de canaux. Ces politiques d’accès regroupent les techniques qui sont
classées en trois grandes catégories :
1) les politiques de réservation ;
2) les politiques d’accès aléatoire ;
3) les politiques de réservation par paquet.
1.4 Architecture des réseaux
Pour assurer le transf ert des données d’une extrémité à l’autre il f aut implanter une architecture logicielle permettant
d’ordonner la transmission des inf ormations.
L’architecture logicielle peut être défini par un ensemble de règles suivant une normalisation m ondiale. Ainsi, deux grandes
architectures sont concurrents :
- Architecture de la normalisation ISO (Interconnexion des Systèmes Ouverts – OSI = Open System Interconnection) ;
- Architecture de l’environnement TCP/IP ;
- Le modèle UIT-T (Union Internationale des Télécommunications).
1.4.1 L’architecture ISO
L’architecture ISO f orme le modèle de réf érence pour les autres architectures. Ce modèle comporte 7 couches :
- la couche Physique ;
- la couche Liaison de données ;
- la couche Réseau ;
- la couche Transport ;
- la couche Session ;
- la couche Présentation ;
- la couche Application.
Chaque couche est située dans un niveau (N), et qui rend un service (N) (ensemble d’actions, d’événements et de primitives)
en respectant un ensemble de règles nécessaires déf inissant les mécanismes qui vont permettre de transporter les
inf ormations d’un niveau (N) à un autre niveau (N) : c’est le protocole de niveau (N) ou , tout simplement, protocole (N).
L’interf ace ou frontière couche (N+1)/N sert d’échanges de dif f érents paramètres pour la réalisation des services (N). Ces
échanges s’effectuent dans des points particuliers appelés les points d’accès au service (N) ( (N)- Service Access Point) ou
les (N)-SAP. Un service (N) peut être f ourni et accompli par un ensemble d’unités appelées entités (N). Chaque entité (N)
interagit avec son homologue (par un protocole (N)) ou avec une entité (N+1) aux points d’accès aux services (N).
Comment ça marche ? 12/120
L’ensemble des données provenant de l’interf ace avec la couche (N) sont déf inies sous f o rme une unité de données de
service (N) ou (N)-SDU ((N)- Service Data Unit). À celle-ci, elles sont rajoutées des inf ormations de contrôle (N) ou (N)-PCI
((N)- Protocol Control Inf ormation) qui proviennent des entités (N), pour enfin, aboutir à une unité d e données de protocole (N)
ou (N)-PDU ((N)- Protocol Data Unit).
La couche physique
C’est la première couche de l’architecture OSI. Elle a pour objectif de conduire les éléments binaires (suite des 0 et des 1) sur
le support physique.
La couche physique est constituée, principalement, du matériel qui f ournit des moyens nécessaires pour l’activation et la
désactivation des connexions physiques destinées à la transmission des éléments binaires. Elle est f ormée d’une logique
câblée et microprogrammée (partie logicielle). On trouve, en particulier :
- les interf aces de connexions ou jonctions ;
- les modems ;
- les multiplexeurs qui permettent à concentrer plusieurs émissions sur une seule ligne ;
- les nœuds de commutation ;
- divers équipements ou supports spécif iques au réseau, comme un satellite, dans le cas d’une communication par voie
hertzienne.
La couche Liaison
La couche Liaison, comme son nom l’indique, est chargée de partager et de lier le support physique unique entre plusieurs
stations pour l’envoi des informations. Donc, elle doit s’occuper du maintien, de libération des connexions et du transf ert des
unités de données de service liaison.
En outre, cette couche liaison a pour but de corriger les erreurs produites au niveau 1.
La couche Réseau
Le rôle de la couche Réseau est de permettre l’acheminement des paquets d’informations jusqu’à l’utilisateur f inal. Et, cela, en
passant par des nœuds de commutations intermédiaires, ou par des passerelles.
Par ailleurs, la couche réseau f ournit des moyens nécessaires pour changer entre les entités de niveau transport, des unités
de données du service réseau.
Le niveau 3 de la couche réseau possède trois f onctions principales :
- le contrôle de f lux des paquets ;
- le routage ;
- l’adressage des paquets.
Deux philosophies peuvent être choisies :
- le mode connecté ;
- le mode non connecté.
La couche Transport
C’est l’ultime niveau qui s’occupe qui s’occupe de l’acheminement de l’inf ormation.
Cette couche doit assurer le transf ert des données entre les entités de niveau session.
Ce transport doit être transparent c’est-à-dire indépendant des éléments binaires transportés. Le service transport doit
optimiser l’utilisation des inf rastructures pour avoir un bon rapport qualité/prix.
La couche Session
Comme son nom l’indique, la couche session a pour but d’ouvrir et f ermer des sessions entre les utilisateurs.
Pour cela, il f aut s’assurer que l’utilisateur ou au moins son représentant (exemple : boîte aux lettres électronique) est bi en
présent. Donc, cette couche est considérée comme la première couche de l’architecture de réseau hors de la communication
proprement dite.
Pour ouvrir une connexion avec une machine distante, la couche session doit posséder un langage compréhensible de l’autre
extrémité. Et pour en f aire, le passage par la couche Présentation, avant d’ouvrir une session, est obligatoire.
La couche session a la possibilité de gérer quelques fonctionnalités telles que la resynchronisation (reprise d’échange à par tir
des points précis) et la gestion des interruptions.
La couche Présentation
Les dif férentes machines connectées ne possèdent pas la même syntaxe pour exprimer les applications qui doivent être
ef f ectuées. Et, c’est la couche Présentation qui se charge de la syntaxe des inf ormations et procure un langage syntaxique
commun à l’ensemble des utilisateurs connectés , ou bien, aux entités d’application communicantes.
La couche Application
La couche application est la dernière du modèle de réf érence ISO. Elle contient toutes les f onctions nécessaires pour
communiquer entre dif f érents systèmes. Cette couche application s’occupe de la sémantique.
Pour mettre en place cette communication, on associe au niveau de cette couche un processus d’application ou AP
(Application Process) qui peut être vu comme étant un ensemble d’entités d’application ou AE (Application Entity). Ces entités
, provenant des applications différentes, communiquent entre elles en faisant appel à des éléments de service d’application o u
ASE (Application Service Element). L’entité application contient un ou plusieurs ASE. La coordination entre différents ASE est
gérée par le composant Objet d’Association Unique ou SAO (Single Association Object) qui contrôle la communication durant
toute la vie de cette associatio n.
1.4.2 L’architecture TCP/IP
Comment ça marche ? 13/120
Comme c’est déjà vu, l’architecture TCP/IP a été
sollicité par la déf ense américaine (DOD). Cette
architecture est conçue dans le but de f aire
communiquer plusieurs machines dif f érentes et
incompatibles. Les couches, qui sont représentées
par des protocoles, sont les suivantes :
- La couche d’interf ace réseau (Network Interf ace
Layer);
- La couche Internet (Internet Layer) ;
- La couche Transport hôte-à-hôte (Host-to-Host
Transport Layer) ;
- La couche Application.

Architecture TCP/IP par rapport au modèle ISO

Couche interface réseau


Cette couche est responsable de la transmission
des paquets TCP/IP sur le support physique. Les
supports physiques peuvent être tels que Ethernet , Token Ring et les réseaux WAN (Wide Area Network) comme X.25 ou
Relayage de Trames(voir plus loin).
Couche Internet
Cette couche a pour f onction d’adressage des paquets et le routage. Les protocoles de cette couche sont les suivants :
- IP(Internet Protocol) : protocole responsable d’adressage, f ragmentation et réassemblage des paquets ;
- ARP(Address Resolution Protocol) : protocole chargé de la résolution de l’adresse de couche Internet telle que l’adresse
physique ;
- ICMP(Internet Control Message Protocol) : son rôle est d’exécuter les fonctions de diagnostic et d’établir un rapport d’erreurs
suite au transmission des paquets IP ;
- IGMP(Internet Group Management Protocol) : responsable de la gestion des groupes IP multicast ou multipoint.
Couche Transport
La couche transport (aussi connue sous le nom de la couche transport hôte à hôte) permet de faire communiquer à la couche
Application par une session les datagrammes.
Cette couche f ournit les protocoles suivants :
- TCP : TCP f ournit un service avec connexion de bout en bout. Cette connexion s’effectue par l’intermédiaire de passerelles
(gateways) qui prennent en compte le protocole IP comme niveau supérieur. Cela est schématisé par :

TCP permet le recouvrement des paquets perdus durant la transmission ;


- UDP (User Datagram Protocol) : c’est un alternatif de protocole TCP, il f ournit un service en mode non connecté. UDP utilise
Internet Protocol (IP) pour échanger entre applications des datagrammes (unités de données de taille variable gérées par le
logiciel). Pour cela, UDP utilise la notion de PORT pour distinguer les dif f érentes applications (PORT source et PORT
destination). UDP est non f iable puisqu’il f onctionne sans reprise sur erreur et n’ef f ectue aucun contrôle de f lux.
Couche Application
La couche Application fournit les f onctionnalités et les moyens nécessaires pour accéder aux autres couches, et elle définit les
protocoles pour que des applications échangent les données. Il existe plusieurs protocoles et les plus répandus sont les
suivants :
- HTTP (HyperText Transf er Protocol) : utilisé pour le transfert des fichiers méttant à jour les pages Web de World Wide Web ;
- FTP (File Transf er Protocol) : pour le transf ert interactif des f ichiers ;
- SMTP (Simple Mail Transf er Protocol) : pour le transf ert des courriers élec troniques ;
- TELNET : protocole d’émulation Terminal, il est utilisé pour la communication à distance aux hôtes des réseaux.
Et, pour f aciliter l’utilisation et la gestion de réseaux TCP/IP, la couche Application dispose des protocoles suivants :
- DNS (Domain Name System) : utilisé pour convertir le nom de l’hôte en adresse IP ;
- RIP (Routing Inf ormation Protocol) : utilisé par les routeurs pour échanger l’information de routage sur le réseau Internet IP ;
- SNMP (Simple Network Management Protocol) : utilisé entre la gestion de console et les composants de réseau (routeurs,
ponts et hubs intelligent) pour collecter et échanger l’inf ormation gérée par le réseau
Parmi des exemples des interf aces de couche Application on trouve les Sockets Windows et le NetBios.
Comment ça marche ? 14/120
2 Comment marchent les réseaux informatiques ?
Justement, en passant par Internet, vous utilisez le plus grand réseau du monde. Comment les machines discutent? Ou plutôt,
comment les hommes discutent à travers les machines? Il n'y a rien de sorc ier, le principe est même assez simple.
On prend deux ordinateurs et on veut passer un message d'un ordinateur à un autre. Ok! Let's see what we can do...
Le plus simple pour commencer est de voir le principe de "discussion" entre un ordinateur et... une imprimante!
2.1 Le cable parallèle
Vous savez sans doute que les ordinateurs fonctionnent uniquement avec des 0 et des 1, regroupés par 8, ce qui donne des
octets. Le cable qui relie l'ordinateur à l'imprimante est un cable parallèle. Il contient beaucoup de f ils, mais on va supposer,
puisque ce n'est que le principe qui nous interesse, qu'il n'a que 9 f ils.
Imaginons que l'on veuille faire passer un octet à l'imprimante, soit "01100111" par exemple. L'octet utilisera 8 fils, chaqu e bit (
0 ou 1 ) sera sur un f il distinct. Allons-y, envoyons notre octet...
Aucun f il n'a de courant pour l'instant. On envoie du courant dans le 9ème f il. L'imprimante détecte ce courant et sait que c ela
veut dire "Je vais envoyer un octet". Ensuite si on veut envoyer un 0, on ne met pas de courant sur le f il concerné, et si on
veut envoyer 1, on met du courant.
Pour envoyer "01100111", on n'envoie pas de courant sur les fils 1, 4 et 5, et on envoie du courant dans les fils 2, 3, 6, 7 et 8.
Et voilà! L'imprimante n'a plus qu'à regarder sur les fils si il y a du courant ou pas : on vient de f aire passer des inf ormations
d'une machine à une autre. L'octet envoyé sera ensuite traité par la machine comme elle l'entend ( comme si une machine
entendait... ).
2.2 Le cable série
Il y a beaucoup moins de fils et pour cause : l'octet passe sur un seul fil. Le principe est le même, sauf qu'au lieu d'avoir 1 f il
par bit ( 0 ou 1 ), ils passent tous par le même.
L'ordinateur envoie du courant sur un autre f il. Cela signif ie "Je vais envoyer un octet".
A l'autre bout, l'autre ordinateur se prépare et regarde sur le f il de réception. Il attend une seconde, regarde sur le fil, y'a t'il du
courant? Si oui, c'est un 1, sinon, c'est un 0. Il attend une seconde, regarde une nouvelle f ois, et ainsi d e suite.
Les 0 et les 1 sont envoyés les uns à la suite des autres, et c'est pour cela que le cable série est réputé pour être très lent.
Dans la réalité, ce n'est évidemment pas en secondes que se compte les temps d'attente...
2.3 Contrôle de parité
Dès lors qu'on envoie des données d'un endroit à un autre, on aime vérifier que ce qu'on a envoyé est identique à ce qu'on a
reçu. Pour cela, on peut utiliser le contrôle de parité. Ce système est quelquef ois utilisé sur les modems.
D'ailleurs, au passage, un modem (Modulation-Démodulation) est juste un petit ordinateur qui sait envoyer et recevoir des
données par une ligne de téléphone classique.
Pour vérif ier les données, on calcule la parité. C'est à dire qu'on compte le nombre de 1 de l'octet. Si ce nombre est pair, on
envoie 0, si ce nombre est impair, on envoie 1.
Par exemple, pour "01100111" on envoie 1 (5 uns donc impair) comme bit de parité.
Celui qui envoie l'octet envoie aussi le bit de parité qu'il a calculé.
Celui qui reçoit l'octet f ait le même calcul et regarde si il a le même résultat.
Si le résultat n'est pas le même, il demande simplement à l'expéditeur de recommencer à envoyer l'octet parce qu'il y a eu un e
erreur. Cette solution ne couvre pas toutes les erreurs, mais en détecte une majorité... Il est rare d'avoir 2 bits mauvais dans
un seul transf ert d'octet, et c'est la condition pour que le contrôle de parité ne f onctionne pas.
2.4 Les trames
Le but est d'envoyer des informations d'une machine à une autre, et on sait maintenant comment f ai re avec le cable parallèle
ou série. Il ne reste plus qu'à être capable de les envoyer partout à travers le monde et de voir comment les ordinateurs du
monde entier se comprennent même si il ne sont pas identiques...
On envoie donc une suite de 0 et 1, il ne reste plus qu'à tout mettre dans le bonne ordre.
Ce qu'on envoie sur le réseau, cette suite de 0 et de 1 qui concerne une communication à une moment donné est appelé
trame.
Pou en apprendre un peu plus sur la f açon dont les trames sont organisées, vous pouvez allez f aire un tour à la page "Qu'est-
ce qu'un protocole"... Le modèle OSI est égalment expliqué.
2.5 Adresse IP et adresse MAC
Maintenant que nous savons ce qu'on envoie, il f aut que le destinataire le reçoive...
Cela f onctionne comme une ligne de téléphone : votre voix doit être amenée rapidement vers votre interlocuteur, quelque soit
l'endroit du monde où il se trouve... Pour cela, chaque ordinateur à deux adresses : une adresse IP et une adresse MAC.
L'adresse IP est en quelque sorte le nom de votre ordinateur sur un réseau. Avec cette adresse, on peut situer votre
ordinateur dans le monde car on sait à quel réseau il appartient.
L'adresse MAC est l'adresse physique de l'ordinateur : c'est son nom, quelque soit l'endroit où il est. Ainsi, une f ois que le
réseau est trouvé grâce à l'adresse IP, l'adresse MAC permet d'être repéré de f açon unique.
On associe donc un nom de réseau ( adresse IP ) et une adresse sur ce réseau ( adresse MAC ) pour envoyer les
inf ormations au bon destinataire.
Ainsi, si quelqu'un veut vous parler, il envoie un message du style "Est -ce que quelqu'un a vu l'ordinateur d'adresse IP
xxx.xxx.xxx.xxx?" et vous lui répondez en lui envoyant votre adresse MAC pour qu'il sache physiquement où vous êtes.
Ainsi, tout se passe comme quand quelqu'un vous cherche et qu'il ne vous connait pas : il commence par chercher la pièce où
vous êtes et demande à voix haute : "Est-ce que X est là?" et vous lui répondez...
Comment ça marche ? 15/120
2.6 Serveur DHCP
Lorsque vous passez par un opérateur quelconque pour vous connecter, il arrive souvent que vous n'avez pas d'adresse IP
f ixe. En fait, à chaque fois que vous vous connectez, le serveur DHCP vous attribue une adresse IP pour la connection et
vous l'enlève quand vous vous déconnectez.
2.7 Acheminement des données
Lorsqu'on envoie une trame, il y a des boitiers intermédiaires qui savent dans quelle direction il f aut envoyer la trame. Ces
boitiers peuvent être des routeurs, des switchs, des hubs et autres. Dif f érentes techniques sont utilisées pour que votre
message soit envoyé vers le bon ordinateur!
Si voulez en savoir plus, allez sur la page acheminement des données.

3 Acheminement des données


On sait maintenant que les ordinateurs discutent entre eux, qu’ils s’envoient des petits messages et qu’ils ont une adresse
personnelle.
Si vous avez lu la partie "Qu’est qu’un protocole ?", vous savez également comment les données sont placées dans les
trames. Si vous ne l’avez pas lu, je vous conseille de le lire maintenant, et en particulier la partie sur le modèle OSI... où vous
risquez de ne pas tout comprendre de ce qui va suivre !*
3.1 Différentes voies pour acheminer les données
Bien sûr, Internet est absolument immense. Mais ce dont je vais parler ici existe aussi dans un RLE** ( réseau local
d’entreprise )... Il existe beaucoup de réseaux dif f érents, mais le principe est toujours le même et il y a trois types de «
machines » utilisées pour acheminer les données : les hubs (« concentrateurs » en f rançais, mais personne n’utilise ce mot),
les switchs (commutateurs en f rançais, même remarque) et les routeurs.
3.2 Les hubs
C’est ce qu’il y a de plus simple. Ca se présente comme une petite boîte allongée (genre multiprise en li gne) avec pleins de
prises « RJ45 » (mais si, vous voyez bien, c’est les petites prises qu'il y a sur les cartes réseaux) côte à côte. Il y a qua nd
même une prise de courant, mais c’est à peu près tout. Chaque ordinateur est connecté à une des prises.
Les hubs sont souvent utilisés quand il s’agit de relier quelques ordinateurs ensemble pour un petit réseau local. Le principe
est simple, dès que quelque chose arrive sur une des prises, il est automatiquement répéter sur toutes les autres prises. C’e st
pour cela qu’en f rançais, on appelle ça un répéteur...
Ainsi, dès qu’un ordinateur dit quelque chose, tout le monde l’entend et l’ordinateur concerné traite l’inf ormation... C’est pour
cette raison que ce système ne peut être utilisé que lorsqu’il n’y a que p eu d’ordinateurs, car s’il y a 100 ordinateurs qui parlent
en même temps et que tout le monde entend tout ce que tout le monde dit, ça devient vite le b... comme le montre le schéma
suivant :

Donc, pour pouvoir connecter plus d’ordinateurs, on a inventé les switchs...


3.3 Les switchs
Les switchs sont un peu plus intelligents. C’est déjà un peu plus gros qu’un hub parce qu’on commence à mettre des choses
dedans...
Il y a toujours ce principe de prises où sont connectés les différents ordinateurs (mais on peut aussi mettre d’autres switchs,
ou des hubs, ou ce que l’on veut...). La dif f érence avec le hub, c’est que le switch sait quels sont les ordinateurs qui sont
autour de lui. Ainsi, si il reçoit une trame pour l’ordinateur X, il ne l’envoie qu’à l’ordinateur X et pas aux autres. Il commute (il
branche) l’entrée des données vers la sortie où est l’ordinateur concerné. C’est pour cela qu’on appelle ça un commutateur en
f rançais...
A noter malgré tout que les switchs font beaucoup de progrès ces temps-ci, ils sont maintenant presque aussi doués que les
routeurs (que l’on va voir juste après). Leur f onction première reste quand même celle décrite ci -dessus.
3.4 Les routeurs
C’est ce que l’on f ait de mieux pour acheminer les données. Le routeur est quasiment un ordinateur à part entière. Il est
capable de décoder les trames jusqu’à retrouver l’adresse IP et de diriger l’information dans la bonne direction. On peut aus si
déf inir dans les trames le chemin où doit passer la trame, le routeur peut comprendre tout cela... Le fait de définir ou de diriger
une trame s’appelle « router » une trame. C’est pour cela qu’on les appelle des routeurs.
Ainsi, vous pouvez donner des informations de routage aux informations que vous envoyez et les faire passer par Hong -Kong
puis San Francisco si ça vous amuse*** !
Comment ça marche ? 16/120
3.5 Résumé
Les hubs ne regardent pas ce qu’il y a dans les trames, ils se contentent de répéter l’inf ormation. Comme il n’y a aucune
analyse du contenu de l’inf ormation, on dit qu’ils travaillent au niveau 1 (physique) du modèle OSI.
Les switchs sont capables d’analyser un peu l’information contenue dans la trame, de repérer l’adresse MAC de la destination
et d’envoyer la trame vers le bon ordinateur. On dit que les switchs travaillent au niveau 2 du modèle OSI.
Pour les routeurs, retenez simplement qu’ils sont assez puissants et qu’ils travaillent jusqu’au niveau 3 du modèle OSI. Ils sont
capable d’analyser le contenu des trames.
On appelle ces machines des éléments réseaux. On distingue les éléments actif s (les switchs et les routeurs puisqu’ils
analysent le contenu des trames) et les éléments passif s (hubs : pas d’analyse).
Nous voilà donc avec nos hubs, nos switchs et nos routeurs (les éléments du réseaux) dispersés à travers le monde... Mais
comment diable f ont-ils pour savoir qui est où ?
C’est ce qu’on va essayer de voir maintenant...
3.6 Acheminement des données
Les ordinateurs et les éléments du réseaux ont tous une passerelle par déf aut. Qu’est-ce que c’est ? C’est là où on va
lorsqu’on ne sait pas où aller... Vous envoyez quelque chose sur le réseau. On commence par demander à ces voisins si c’est
à eux qu’on écrit. Si ce n’est pas le cas, on va vers la passerelle par défaut qui est généralement le routeur le plus proche. Le
routeur regarde l’adresse IP, et la compare avec les adresses qu’il connait. S’il ne connait pas, il les envoie vers sa passe relle
par déf aut à lui qui est sans doute un autre routeur plus important. Il f aut noter malgré tout que les routeurs stockent des
inf ormations sur les adresses et là où elles sont. De plus, le routeur est capable d’analyser une partie de l’adresse, et si
l’adresse est, par exemple, 193.152.0.36 et qu’il ne connait exactement cette adresse, peut-être a t’il malgré tout une
inf ormation sur 193.152.x.x ou 193.x.x.x et sait donc où envoyer la trame...
Ainsi, de routeurs en routeurs, de switchs en switchs puis de hubs en hubs (mais il y a aussi d’autres éléments), les trames se
balladent jusqu’à atterir dans les bras de celui qui l’attendait avec impatience !
Il est également à noter que une f ois que le destinataire a été trouvé une première f ois, tout le monde note dans ces f ichier s
l’endroit où il est pour que les autres trames de la communications soient rapidement envoyées.
3.7 Serveur DNS
Juste un petit mot sur le DNS (domain name server). C'est un serveur (un ordinateur très demandé par les autres) qui est
capable d'associer un nom à une adresse IP.
Vous tapez sous Netscape ou Internet Explorer "www.yahoo.fr". Le serveur DNS reconnaît le nom et associe l'adresse IP à
laquelle il f aut envoyer l'information. C'est un peu comme un annuaire: si vous dites "Monsieur Dupont", vous ne savez pas où
envoyer la lettre. Vous regardez dans l'annuaire (le DNS) et vous avez l'adresse qui est associée au nom. Si le premier server
DNS que vous rencontrez ne connait pas Monsieur Dupont, il demande simplement à un collègue un peu plus inf ormé !
Le premier serveur DNS qui reconnaît le nom vous renvoie l’adresse IP associée et le tour est joué!
Et voilà... J’espère que c’est compréhensible et que vous êtes maintenant incollable sur les éléments du réseaux...

4 Communication via le RTC (les commandes Hayes ou AT)


4.1 Objectif
Pour interconnecter deux ordinateurs distants le moyen le plus simple est d’utiliser le Réseau Téléphonique Commuté (RTC).
Il f aut utiliser un MODEM (MOdulateur-DEModulateur) pour permettre à un ordinateur d’accéder au réseau analogique.
L’objectif de la prochaine série de manipulations est de découvrir les principales commandes de conf iguration d’un modem.
Les manipulations seront explicités pour Windows.
4.2 Présentation
Dans les applications courantes, après conf iguration, le modem est totalement transparent pour les utilisateurs. Pour sa
conf iguration on utilise un protocole normalisé : le protocole HAYES.
Nous allons utiliser deux ordinateurs, deux modems, et deux accès au réseau de France Télécom pour établir une connexion
via le RTC.
Cette mise en œuvre de modems se déroulera en trois deux phases:
1. Explication des principales commandes HAYES.
2. Utilisation des commandes HAYES, pour f aire dialoguer deux ordinateurs.
I. Installation d'un modem externe
Le but de cette partie est d'installer un modem de manière manuelle sous Windows . Il est possible de laisser le système
d'exploitation réaliser cette installation de manière automatique mais la manipulation est beaucoup moins pédagogique et il
arrive f réquemment que Windows ne choisissent pas les bons drivers (programmes permettant l' utilisation du Modem). La
première étape consiste à installer le driver du modem pour lui permettre de dialoguer avec le système d’exploitation.
1. Brancher le modem sur un port COM.
2. Cliquer sur le « Menu Démarrer », puis « Paramètres » et sélectionnez « Panneau de Conf iguration »
3. Double cliquer sur l’icône « Modem » puis "Ajouter".
4. Activer l’option « Ne pas détecter mon modem, sélection dans une liste »
5. Cliquer sur « Suivant »
6. Cliquer sur « Disquette f ournie »
7. Insérer la disquette de driver (par exemple, « OLICOM Windows » pour l’OLITEC 33600)
8. Sélectionner le modèle dans la liste (par exemple « OLITEC self memory 33600 » pour l’OLITEC)
9. Choisir le port de communication (COM1 ou COM2)
10. Cliquer sur « Terminer »
Comment ça marche ? 17/120
Remarque :
Si votre MODEM est Plug & Play, il est possible de le conf igurer automatiquement. Il suf f it à l’étape 3 de la conf iguration
manuelle de désactiver l’option « Ne pas détecter mon modem, sélection dans une liste » puis de f aire « Suivant ».
Le PC détecte un MODEM standard sur le port com X si aucun modem OLITEC n’a été installé précédemment, et un Olitec
Self Memory 33600 sur le port com X dans le cas contraire. Il f aut noter que lors d’une suppression de modem les f ichiers de
drivers ne sont pas supprimés du disque mais seulement non utilisés par le système.
Cette conf iguration n’est pas recommandée dans le cas du modem Olitec car le PC ne détecte pas le bon driver. Néanmoins
ce dernier f onctionne correctement dans la plupart des applications classiques d’ un modem.
II. Explication sur les commandes HAYES
Après avoir installé le modem et son driver, on s'intéressera aux commandes Hayes. Ces commandes permettent de
dialoguer directement avec votre modem via le port COM du PC. Ces commandes s'appellent également commandes AT car
elles sont toutes précédées des caractère AT.
1. Décrocher - Engager une connection (sans appel) : ATA
2. Détection automatique du terminal : ATB
3. Engager une connection (avec appel) : ATDT (Dial Tone = f réquence vocale) ou ATDP (Dial Pulse = impulsions).
4. Raccrochage : ATH
5. Lecture et écriture d'une valeur dans un registre : ATSn? (lecture) et ATSn=N (ecriture de la valeur N dans le registre n)
6. Initialisation du modem : ATZ
7. Reconf iguration avec les paramètres par déf aut : AT&F
III. Echanges d'informations entre deux PC
Installer un deuxième modem et réaliser une communication entre les 2 PC en saisissant les commandes suivantes sur
chaque PC.
Sur le PC source et destination
1. Ouvrir l'application HyperTerminal (Menu Démarrer, Accessoires, HyperTerminal). L'application s'ouvre, et une f enêtre
apparaît au milieu de l'écran, Cliquer sur Annuler. Taper "AT" puis "Entrer".
2. Le modem répond à l'écran "OK" (Sinon, il y a problème dans les branchements, ou la conf iguration initiale des modems.
Vérif ier les connexions et le port COM1. Par ailleurs, il f aut indiquer à HyperTerminal quel est le modem utilisé.
3. Pour repartir avec une configuration de base du modem, recharger la configuration usine. Mettre les modems en détection
de terminal automatique.
4. Le modem doit répondre « OK ». Ceci enclenche la détection automatique des paramètres de dialogue entre deux modems.
Ils choisiront, entre autre, la plus haute vitesse de transmission possible.
A. Connexion Manuelle
Sur le PC source
Appeler le modem distant en utilisant la commande de connexion avec appel du numéro (ATDT0247484950 pour appeler le
02 47 48 49 50)
Sur les PC source et destination
Sur l'écran du P.C. Destination, on voit s'af f icher RING, RING, RING…
On constate que ça sonne à l'autre bout, mais il n’y a pas de réponse. En soit, on a déjà un modem qui prend la ligne, et qui
compose le numéro tout seul. L'autre modem étant conf iguré en manuel, il ne décrochera pas tout seul.
Sur le PC destination
Taper la commande de décrochage (qui f era au passage une détection de porteuse) : ATA
Sur le PC source et destination
1. Le modem distant décroche. En fait, ils évaluent par l'émission et la réception successives de plusieurs messages leurs
vitesses optimales de transmission. Cette phase doit s'achever par l'af f ichage de "CONNECT 33600" (par exemple). Tout
caractère saisi au clavier est directement transmis par le modem. Les caractères saisis ne sont pas af f ichés sur l’écran loca l.
Nous allons donc modif ier la conf iguration actuelle d'HyperTerminal.
2. Aller dans le menu Fichier- Propriétés- onglet Configuration, et cliquer sur Configuration ASCII. Une f ois dans cette f enêtre,
cliquer sur "Envoyer les fins de lignes avec retour à la ligne" et sur "Reproduire localement les caractères entrés" puis OK; OK.
3. Maintenant, on peut aussi voir ce que l'on écrit, mais ça se mélange avec ce que le voisin écrit. Faire des essais en
dévalidant des options d'un coté puis les remettre, en supprimer une,… En constater les ef f ets en mode connecté.
4. Dévalider complètement les deux options sur les deux postes.
5. Pour terminer une communication, il faut dire au modem de raccrocher. Mais pour lui dire de raccrocher, il faut d'abord qu 'il
écoute. Et ce n'est plus le cas depuis que la liaison entre les deux ordinateurs a été ouverte. Les modems sont passés
automatiquement en mode transparent: ils transmettent ce qu'ils reçoivent, et n'interceptent plus les commandes. Pour leur
indiquer qu'on va leur transmettre une commande, on tape une séquence spéciale de caractères "+++", suivie de la
commande de raccrochage "ATH".
6. Sur l'un des PC, taper la commande de retour en mode terminal, puis la commande de raccrochage. Le modem distant
af f iche « NO CARRIER » à l’écran.
7. Les trois plus indiquent au modem qu'une commande HAYES va suivre. Si après le dernier plus il ne trouve pas de
commande HAYES, il va continuer en mode transparent.
B. Décrochage automatique
Sur le PC source et destination
1. Un modem possède une certaine "intelligence". Il contient des registres qui permettent de le conf igurer. On va s'intéresser
au registre S0. Pour l'instant, on se contente de lire la valeur qu'il contient.
2. Taper la commande de lecture du registre S0, soit "ATS0?". Le modem doit répondre par "000", et en dessous "OK"
3. Ce registre représente le nombre de sonneries d'attente avant un décrochage automatique. Quand il est à zéro, le modem
ne répond pas automatiquement. Pour avoir une réponse automatique, il suffit de le conf igurer à une autre valeur ("ATS0=2"
par exemple).
Comment ça marche ? 18/120
Sur le PC source
Appeler le MODEM distant.
Sur le PC destination
Conf igurer S0 à une autre valeur.
Sur le PC source et destination
Le modem distant répond au bout de 2 sonneries.
Comment ça marche ? 19/120

5 Les différents types de réseaux


Il y a trois types dif f érents de réseaux : on appelle ça les dif f érentes topologies…

5.1 Topologie en bus


Le bus, un segment central où circulent les informations, s’étend sur toute la longueur du réseau, et les machines viennent s’y
accrocher. Lorsqu’une station émet des données, elles circulent sur toutes la longueur du bus et la station destinatrice peut les
récupérer. Une seule station peut émettre à la f ois. En bout de bus, un « bouchon » permet de supprimer déf initivement les
inf ormations pour qu’une autre station puisse émettre.
L’avantage du bus est qu’une station en panne ne perturbe pas le reste du réseau. Elle est, de plus, très f acile à mettr e en
place. Par contre, en cas de rupture du bus, le réseau devient inutilisable. Notons également que le signal n’est jamais
régénéré, ce qui limite la longueur des câbles.
Cette topologie est utilisée dans les réseaux Ethernet 10 Base 2 et 10 Base 5.
5.2 Topologie en anneau
Développée par IBM, cette architecture est principalement utilisée par les réseaux Token Ring. Token Ring utilise la techniqu e
d’accès par « jeton ». Les inf ormations circulent de stations en stations, en suivant l’anneau. Un jeton circ ule autour de
l’anneau. La station qui a le jeton émet des données qui font le tour de l’anneau. Lorsque les données reviennent, la station
qui les a envoyées les élimine du réseau et passe le jeton à son voisin, et ainsi de suite…
Cette topologie permet d’avoir un débit proche de 90% de la bande passante. De plus, le signal qui circule est régénéré par
chaque station. Par contre, la panne d’une station rend l’ensemble du réseau inutilisable. L’interconnexion de plusieurs
anneau n’est pas f acile à mettre en œuvre. Enf in, cette architecture étant la propriété d’IBM, les prix sont élevés et la
concurrence inexistante.
Cette topologie est utilisée par les réseaux Token Ring et FDDI.
5.3 Topologie en étoile
C’est la topologie la plus courante. Toutes les stations sont reliées à un unique composant central : le concentrateur. Quand
une station émet vers le concentrateur, celui-ci envoie les données à toutes les autres machines (hub) ou à celle qui en est le
destinataire (switch).
Ce type de réseau est f acile à mettre en place et à surveiller. La panne d’une station ne met pas en cause l’ensemble du
réseau. Par contre, il f aut plus de câbles que pour les autres topologies, et si le concentrateur tombe en panne, tout le rés eau
est anéanti. De plus, le débit pratique est moins bon que pour les autres topologies.
Cette topologie est utilisée par les réseaux Ethernet 10 et 100 Base T et par le 100 VG AnyLAN
Une f ois que vous avez accès à un réseau à commutation de paquets, il s'agit ensuite de pouvoir retrouver la mach ine

6 Protocoles et modèle OSI


6.1 Qu’est-ce qu’un protocole ?
Le but des réseaux est de faire communiquer plusieurs ordinateurs ensemble. Si les hommes communiquent entre eux grâce
aux dif férentes langues, les ordinateurs utilisent différents protocoles. Les communications sont souvent internationales, et
comme pour les hommes, il n'existe pas de protocole universel. Certains sont plus utilisés que d'autres, il en existe cependa nt
un très grand nombre, chacun cherchant à imposer sa propre norme.
Comment expliquer clairement ce qu'est un protocole? Supposons que quelqu'un veuille envoyer une lettre à quelqu'un
d'autre. On va placer cette lettre dans une enveloppe et on y notera l'adresse. Pour l'acheminement du courrier, le contenu d e
la lettre n'est d'aucune utilité. Les dif f érents services de la poste regardent les dif f érents champs de l'adresse et dirigent
l'enveloppe, donc son contenu dans la bonne direction.
Il en est de même quand un ordinateur veut envoyer des données à un autre ordinateur. Les données s ont enf ermées (on dit
encapsulées) dans une enveloppe qui contient les informations permettant l'acheminement des données. Un protocole, c'est la
f açon dont l'adresse est écrite sur l'enveloppe, le fait de mettre d'abord le nom, puis la rue et enf in la vil le. Un autre protocole,
c'est aussi le f ait de mettre le lieu et la date en haut à droite et la signature en bas.
Finalement, un protocole est une description formelle de règles et de conventions à suivre dans un échange d'inf ormations,
que ce soit pour acheminer les données jusqu'au destinataire ou pour que le destinataire comprenne comment il doit utiliser
les données qu'il a reçues.
Comment ça marche ? 20/120
6.2 Le modèle OSI
Pour s'y retrouver plus f acilement dans l'ensemble des protocoles, l'International Standard Organization ( ISO) a déf ini un
modèle de base appelé modèle OSI. Ce modèle définit 7 niveaux dif f érents pour le transf ert de données. Ces niveaux sont
également appelés couches.
Le septième niveau, la couche Application, gère le transfert des informations entre programmes. Le sixième niveau, la couche
Présentation, s'occupe de la mise en f orme des textes et des conventions d'af f ichage. Le cinquième niveau, la couche
Session, s'occupe de l'établissement, de la gestion et coordination des communications. Le quatrième nive au, la couche
Transport, gère la remise correcte des inf ormations.
Vient ensuite le niveau trois, la couche Réseau, qui détermine les routes de transport et qui s'occupe du traitement et du
transf ert de messages. Le niveau deux, la couche Liaison de données, s'occupe du codage, de l'adressage, et de la
transmission des inf ormations. Le premier niveau, la couche physique, gère les connections matérielles.
A chacun de ces niveaux, on encapsule un en-tête et une f in de trame qui comporte les inf ormations néc essaires en suivant
les règles définies par le protocole utilisé. Sur le schéma ci-dessous, la partie qui est rajoutée à chaque niveau est la partie sur
f ond blanc. La partie sur fond grisé est celle obtenue après encapsulation du niveau précédent. La dernière trame, celle qu'on
obtient après avoir encapsulé la couche physique, est celle qui sera envoyée sur le réseau

6.3 Un exemple pour mieux comprendre


L’exemple qui suit n’a aucune valeur réel. Il est juste f ait pour mieux comprendre ce qu’est un protocole et ce qu’est le modèle
OSI.
Imaginons simplement que vous souhaitiez jouer à un jeu de carte quelconque par un réseau comprenant plusieurs
ordinateurs. Lorsque vous jouez une carte, la machine de votre adversaire doit savoir quelle carte vous avez jouée af in de
l’af f icher sur son écran.
Admettons que vous jouiez le roi de cœur. On peut imaginer que la représentation de cette carte pour la machine sera “RCo”,
et que le f ait de jouer la carte se notera “j”. Donc, il f aut f aire parvenir l’inf ormation “jRCo” à l’ordinateur de l’adversaire.
Notons déjà que le simple fait de décider que “j” signifie “joue”, “R” signifie “Roi” et “Co” signifie “Cœur” est déjà un pro tocole.
Si l’ordinateur adverse n’utilise pas la même représentation des cartes, aucune chance de se comprendre! Un protocole est
donc un ensemble de règle qui régie les échanges.
Pour f aire parvenir l’information “jRCo”, vous pouvez pas envoyer ces caractères directement sur le réseau. Si vous le f aîtes,
les autres machines du réseau vont regarder cette inf ormation et dire : “euh… comprend pas”.
Il f aut préciser, par exemple, pour l’ordinateur qui recevra l’information, quelle est le processus (ou programme) qui utilis e cette
inf ormation, car plusieurs programmes sur la machine peuvent utiliser le réseau. On va donc ajouter l’inf ormation “jc1” pour
dire “jeu de cartes, f enêtre 1”. Les inf ormations seront rajoutées devant les données (et parf ois derrière dans certains
protocoles). Ce qui donne “jc1jRCo”.
Une autre inf ormation intéressante serait de dire que les caractères envoyés sont en ASCII, noté “ascii” par exemple. On aura
donc “asciijc1RCo”. On peut ensuite donner l’adresse du destinataire qui peut se présenter sous la f orme du n om de
l’ordinateur. Votre adversaire s’appelle Paul, envoyons donc “Paul”. Ceci donne “Paulasciijc1RCo”. Et ça n’est absolument pas
lisible, sauf lorsque l’on sait comment les inf ormations ont été ajoutées les unes aux autres!
Le protocole permet, pour chaque niveau, de définir comment les informations vont être écrites. Le modèle OSI permet de dire
dans quel ordre ces dif f érents protocoles doivent être ajoutés.
Sur Internet, IP (Internet Protocol) permet de savoir comment on doit écrire les adresses au niveau 3 du modèle OSI, et tous
les ordinateurs d’Internet les écrivent de la même f açon.
Comment ça marche ? 21/120
7 Classe d'adresses IP et masques de sous-réseaux
7.1 Adresses IP et classes d'adresses IP
7.1.1 Hôtes et réseaux
L'adressage IP est basée sur le concept d'hôtes et de réseaux. Un hôte est tout ce qui peut envoyer ou recevoir des trames IP
sur le réseau, comme une station de travail ou un routeur. Il ne f aut pas confondre avec un serveur : clients et serveurs son t
tous des hôtes IP.
Les hôtes sont connectés entre eux par un ou plusieurs réseaux. L'adresse IP de n'importe quel hôte est le rassemblement de
deux choses : l'adresse du réseau où il se trouve et son adresse personnelle sur ce réseau.
La taille de la partie adresse de réseau et de la partie adresse de l'hôte dépend du t ype de réseau où l'on est.
7.1.2 Adressage IP
Une adresse IP f ait 32 bits de long et est composée de deux parties: le numéro de réseau, et le numéro d'hôte. Par
convention, il est exprimé en quatre nombres décimaux séparés par des points, comme par exemple "200.1.2.3". Une adresse
valide est dans la plage allant de 0.0.0.0 à 255.255.255.255, un total de 4.3 milliards d'adresses. Les premiers bits indique nt la
classe à laquelle appartient l'adresse :
Classe Préfixe Numéro de réseau Numéro d'hôte
A 0 bits 1-7 bits 8-31
B 10 bits 2-15 bits 16-31
C 110 bits 3-24 bits 25-31
D 1110 Multicast Multicast
E 1111 Réservé Réservé
Les plages d'adresses pour les dif f érentes classes peuvent être déduites :
Plage de numéros de
Classe Plage de numéros d'hôte
réseau
A 0 à 126 0.0.1 à 255.255.254
B 128.0 à 191.255 0.1 à 255.254
C 192.0.0 à 223.255.255 1 à 254
N'importe quelle adresse commençant par 127 est une adresse de particulière et ne devrait jamais être utilisée par autre
chose que le serveur central. Un numéro d'hôte composé uniquement de 1 (en binaire) indique une émission à l'attention de
l'ensemble des machines du réseau (broadcast). Par exemple, 200.1.2.255 indiquerait une émission pour toutes les machines
du réseau 200.1.2. Si le numéro d'hôte est 0 (en binaire), il indique "le réseau même". Tous les bits réservés et adresses
réservées réduisent sévèrement les adresses IP disponibles (4,3 milliards). La plupart des utilisateurs reliés à l'Internet s e
verront assignés des adresses de classe C, puisque l'espace devient très limité. C'est la raison principale du développement
d'IPv6, qui aura 128 bits d'espace adresse.
7.2 Routage IP de base
7.2.1 Adressage de classe IP et utilisation d'ARP
Soit un réseau interne TCP/IP comprenant un segment Ethernet et trois machines. Le numéro de réseau IP de ce segment est
200.1.2. Les numéro d'hôte pour A, B et C sont 1, 2 et 3 respectivement. Ce sont des adresses de classe C, ce qui permet
d'avoir 254 machines sur ce segment.

Supposons que A veuille envoyer un paquet à C pour la première f ois, et qu'il connait l'adresse IP de C. Pour envoyer ce
paquet sur ce brin Ethernet, A aura besoin de connaître l'adresse MAC (ou adresse Ethernet) de C. Le protocole ARP
(Address Resolution Protocol) est utilisé pour trouver dinamyquement cette adresse.
ARP garde une table interne d'adresses IP et d'adresses MAC correspondantes. Quand A essaye d'envoyer un paquet IP à C,
le module d'ARP consulte sa table d'adresses IP et ne découvrira aucune entrée pour C. ARP envoie alors un paquet spécial
reçu par tous (broadcast), demandant l'adresse MAC correspondant à l'adresse IP qu'il connait. S'il n'y a pas de "time -out",
cela signifie que la machine C a répondu en incluant son adresse MAC dans sa réponse, et le tour est joué. A met à jour sa
table d'adresse (ou table d'hôte) et peut envoyer son paquet.
Considérons maintenant 2 réseaux Ethernet séparés et reliés par la machine C, f onctionnant comme un routeur.
Comment ça marche ? 22/120

La machine C agit comme un routeur entre ces deux réseaux. Un routeur est un élément qui choisit différentes directions pour
les paquets en fonction de l’adresse IP. Comme il y a deux segments Ethernet séparés, chaque réseau a son propre numéro
de réseau de classe C. Ceci est indispensable car le routeur ne connaît à des interf aces qui sont associés à un numéro de
réseau.
Si A veut envoyer un paquet à E, il doit d’abord l’envoyer à C qui peut faire suivre le paquet à E. Cec i est possible car A utilise
l’adresse MAC de C et l’adresse IP de E. C va donc recevoir le paquet destiné à E et va le f aire suivre en utilisant l’adress e
MAC de E, soit parce qu’il la connaît, soit en f aisant une requête ARP comme décrit précédemment.
Si E reçoit le même numéro de réseau que A, soit "200.1.2", A essayera d’atteindre E de la même f açon qui atteint C, par
exemple, en envoyant une requête ARP et en attendant la réponse. Quoiqu’il en soit, comme E est physiquement sur un f il
dif f érent, il ne verra jamais la requête ARP et le paquet ne pourra pas être délivré. En spécif iant que E est sur un réseau
dif f érent, le module IP de A saura que E ne peut être atteint sans avoir été f ait suivre par un nœud (élément reliant deux
réseaux dif f érents comme un routeur) de son réseau.
7.3 Le masque de sous-réseau
Nous avons vu qu’une adresse IP était constitué d’un numéro de réseau et d’un numéro d’hôte. Cela dit, les masques de
sous-réseaux permettent de diviser les réseaux de classe A, B ou C en sous -réseaux. En ef f et, en admettant que tous les
hôtes d’un réseau de classe A soit sur le même sous-réseau, le réseau serait très rapidement saturé, ne serait-ce que par les
broadcast qui sont destiné à tous les hôtes du même réseau.
Les réseaux sont donc diviser en sous-réseaux et le masque permet de les déterminer. Par exemple, pour un réseau de
classe C, on a coutume d’utiliser 255.255.255.0 comme masque de sous -réseau. Cela signifie que dans l’adresse IP, la partie
numéro de réseau sera les trois premier nombre et que la partie numéro d’hôte sera le quatrième.
En f ait, pour savoir dans une adresse IP quelle est la partie numéro de réseau et numéro d’hôte, il suf f it d’écrire l’adresse IP
en binaire et d’écrire dessous le masque de sous-réseau, également en binaire. Soit l’adresse IP 192.168.2.53 et le masque
255.255.255.0…On obtient, en binaire :
11000000.10101000.00000010.00110101
11111111.11111111.11111111.00000000
La partie correspondante aux 1 du masque de sous-réseau correspond au numéro de réseau et la partie correspondante au 0
correspond au numéro d’hôte.
Ainsi, dans ce cas, avec un masque de 255.255.255.0, on peut avoir 254 hôtes dif f érents sur le sous -réseau 192.168.2.0…
Essayons maintenant avec un masque de sous-réseau 255.255.255.224, on obtient :
11000000.10101000.00000010.00110101
11111111.11111111.11111111.11100000
La partie numéro de réseau devient donc 192.168.2.32 et le numéro d’hôte est 21. Ainsi, avec le masque 255.255.255.224, on pe ut diviser
le réseau 192.168.2.0 en 8 sous-réseaux différents. Les numéros d'hôte dans ce cas ne peuvent aller que de 1 à 31, la machine d'adresse IP
192.168.2.65 ne fera donc pas partie du même réseau.

8 Les modes de transmission


8.1 Qu’est que l’unicast ?
C’est le principe le plus utilisé et le plus simple. Les ordinateurs possédant chacun une adresse IP, on peut envoyer les trames
en spécifiant l’adresse IP de l’ordinateur à qui on veut envoyer les inf ormations. Les éléments actif s et passif s du réseau (
commutateurs, répéteurs, routeurs, ... ) dirigent l'inf ormatio n dans la bonne direction pour que les trames arrivent au bon
endroit. Seule la machine ayant l’adresse contenue dans la trame regarde et traite l’inf ormation.
Il existe 3 classes d'adresses unicast :
La classe A : Adresses comprises entre 1.0.0.x et 127.255.255.x
Comment ça marche ? 23/120
La classe B : Adresses comprises entre 128.0.0.x et 191.255.255.x
La classe C : Adresses comprises entre 192.0.0.x et 223.255.255.x
8.2 Qu’est-ce que le broadcast ?
Le principe du broadcast est d'envoyer une inf ormation à tous les ordinateurs du réseau où l'on est. Au lieu d’envoyer en
unicast vers l’adresse IP de la chaque machine (ex. 193.169.1.37 avec un masque 255.255.255.0), on envoie la trame à tous
les ordinateurs du sous-réseau en utilisant l'adresse de broadcast (ici, 193.169.1.255). Cet te adresse est réservée à cet
usage. Chacun des ordinateurs du sous-réseau regarde et traite la trame comme si elle leur était personnellement adressée.
Les trames de broadcast ont une caractéristique particulière : c’est de ne pas pouvoir passer les rout eurs puisqu'il s'adresse
uniquement à tous les ordinateurs d'un même sous -réseau.
8.3 Qu’est-ce que le multicast ?
Plutôt que d’envoyer les f ichiers du serveur vers chacune des machines clientes (unicast) on peut n’envoyer l’inf ormation
qu’une seule f ois et chaque ordinateur client la récupère. En effet, dans un réseau Ethernet par exemple, toutes les trames qui
circulent passent par tous les ordinateurs. C’est le principe du multicast : on envoie l’inf ormation à une adresse et tous le s
clients écoutent cette adresse.
Chaque client multicast s’enregistre avec une adresse IP multicast de classe D (entre 224.0.0.0 et 239.255.255.255 sauf
224.0.0.0 non utilisée et 224.0.0.1 qui correspond au "broadcast du multicast"). C’est sur cette adresse que les inf ormations
vont être envoyées.
Les clients écoutent ce qui arrive sur cette adresse et suivent la procédure décrite par le protocole multicast implémenté.
8.4 Représentation des trames envoyées dans les trois cas

9 L'administration de réseaux par SNMP


9.1 Les fonctions de l’administrateur réseau
L’administrateur réseau est celui qui est chargé de la lourde tâche de s’occuper... du réseau. Ca paraît simple, mais son tra vail
regroupe beaucoup de choses, et c’est pour ça qu’il court to ujours partout ! L'ISO (International Standard Organisation) a
même déf ini l’étendue du travail d’administration et en a conclu qu’il f aut :
- Surveiller et réparer les anomalies comme un câble coupé ou autre…
- S’occuper de toutes les conf igurations, que ce soit sur les postes ou sur les éléments du réseau.
- Gérer toute la sécurité du réseau (mots de passe, f irewalls…).
Comment ça marche ? 24/120
- Mesurer et analyser les perf ormances du réseau.
L’administrateur réseau doit donc contrôler ce qui se passe sur le réseau pour en optimiser son f onctionnement.
9.2 Fonctionnement SNMP
Le protocole SNMP (Simple Network Management Protocol) a été développé pour permettre à l’administrateur du réseau
d’interroger les éléments de son réseau sans se déplacer. Le principe de SNMP est très simple : sur chacune des machines,
on installe un petit programme : l’agent SNMP. Cet agent enregistre en permanence des informations relatives à la machine. Il
stocke ces inf ormations dans une MIB (Management Inf ormation Base), une base de données.
Ainsi, de son ordinateur, l’administrateur peut interroger chacune de ses machines et obtenir les inf ormations qu’il souhaite,
comme par exemple le nombre d’octets reçus et envoyés... Il peut aussi modif ier certaines inf ormations.
Le protocole SNMP fonctionne au niveau 7 du modèle OSI, mais se situe directement au-dessus d’UDP. Il f onctionne sur un
modèle client-serveur, où il n’y a qu’un seul client, la station d’administration (NMS = Network Management Station) et
beaucoup de serveur (chaque agent SNMP), le client interrogeant les serveurs pour récupérer les inf ormations.
Chaque agent est placé sur un nœud du réseau qui est dit administrable (MN : Managed Node). Ces nœuds peuvent être soit
des hôtes (stations de travail ou serveurs), soit des éléments d’interco nnexion (switchs, hubs, routeurs), soit des supports
physiques (câbles).
9.3 SMI : Structure of Management Information
Pour se retrouver dans la foule d’informations proposées par chaque
agent, on a déf ini une structure particulière pour les inf ormations
appelée SMI. Chacune des inf ormations de la MIB peut être
retrouvée soit à partir de son nom de variable, soit à partir d’un arbre
de classif ication. Cela revient à parcourir des sous -dossiers et
dossiers d’un disque dur…
Supposons que vous souhaitiez consulter la variable System d’un
hôte, vous pouvez soit lui demander la variable System directement,
soit lui demander la variable ayant pour OID (Object IDentif ication)
1.3.6.1.2.1.1… correspondant à l’arborescence de la variable (ISO,
Identif ied Organization, dod, Internet, Management, MIB2, System).
Ca parait très lourd à première vue, mais le nombre de variable étant
important, on ne peut se souvenir de chaque nom. Par contre, il
existe de nombreux logiciel permettant d’explorer la MIB de f açon
conviviale, en utilisant cette classif ication.

9.4 Extension de la MIB


Au bout d’un moment, les variables choisies pour la MIB (puis la MIB2)
se sont avérées insuffisantes pour plusieurs applications. On va donc trouver deux autres types de MIB que sont les Priva te
MIB et les MIB R-MON (Remote network MONitoring).
Les Private MIB, représentées en 1.3.6.1.4 dans la classif ication SMI, permettent aux entreprises de rajouter des variables
pour une implémentation particulière des agents SNMP. Cela leur permet d’ajout er de nouvelles variables en f onctions des
applications qu’elles veulent développer.
Les MIB R-MON permettent par exemple de placer des agents SNMP sur des supports physiques. Sur un câbles, on peut
connecter une sonde R-MON qui va enregistrer tout se passe et que le l’administrateur pourra interroger pour avoir des
inf ormations sur les collisions, les débits à un endroit précis.
9.5 Les différents types d’opérations
Deux situations sont possibles pour les échanges de données. Soit l’administrateur réseau demande une inf ormation à un
agent et obtient une réponse, soit l’agent envoie de lui-même une alarme (trap) à l’administrateur lorsqu’un événement
particulier arrive sur le réseau.
Il est donc possible que l’agent prévienne l’administrateur de son propre c hef si un incident survient.
On se retrouve avec 4 types d’opérations dif f érentes :
- get-request / get-response : l’administrateur interroge une variable particulière de la MIB.
- get-next-request / get-response : l’administrateur interroge toute une table de la MIB.
- set-request / get-response : l’administrateur met une valeur à jour dans la MIB.
- trap : l’agent prévient l’administrateur qu’un événement particulier s’est produit.
Le f ormat des trames peut être retrouvé dans la section "protocoles", "f amille TCP/IP"...

10 Qu’est-ce qu’un LAN ?


L’acronyme LAN (Local Area Network) est traduit en f rançais par RLE (Réseau Local d’Entreprise).
Le but d’un réseau local est de partager, dans un domaine privé (communications gratuites en interne), des ressources d’une
organisation (f ichier, imprimante, serveur…). Une connexion à Internet permettra également à tous les utilisateurs d’avoir
accès aux services de messagerie (emails).
Par déf inition, un réseau local n’excède pas quelques kilomètres d’envergure. Il a l’avantage d’avoir généralement des débits
d’au moins 10 Mégabits par seconde.
Comment ça marche ? 25/120
10.1 Exemple d’architecture
Il existe différents types de réseau. Le plus courant est le réseau Ethernet 10 Base T. Il nécessite d’avoir quelques appareils
d’interconnexion (hubs ou switchs), des cartes réseaux sur chaque station de travail, et du câble reliant le tout. Généraleme nt,
le protocole utilisé est TCP/IP. Ce qui donne à peu près ça :

11 Les Réseaux Privés Virtuels (RPV ou VPN)


11.1 Introduction
11.1.1 Qu’est-ce qu’un VPN ?
Un VPN (Virtual Private Network) est une liaison sécurisée entre 2
parties via un réseau public, en général Internet. Cette technique
assure l’authentif ication des 2 parties, l’intégrité des données et le
chif f rage de celles-ci.
Les 3 grands cas d’utilisation de VPN sont les suivants :
- Raccordement de télétravailleurs ou travailleurs mobiles. Ceux -ci
se raccordent aux ressources de l’entreprise par modem, RNIS ou
xDSL
- Interconnexion de succursales. Des sites distants d’une même
entreprise partagent les même ressources sans avoir recours à
des lignes spécialisées (LS).
- Exploitation de réseaux extranets. Ce segment trouve sa
justif ication dans l’essor probable du commerce électronique.
La f igure ci-cintre illustre le principe des VPN

11.1.2 Pourquoi utiliser un VPN ?


La principale raison pour implémenter un VPN est l’économie
supposée par rapport à tout autre type de connexion. Bien que les VPN nécessitent l’acquisition de produits matériels et
logiciels supplémentaires, le coût à terme de ce genre de communication est moindre. L’entreprise ne paye que l’accès à
l’Internet via son ISP (tarif local) et non une communication nationale dans le cas d’une liaison RNIS ou un f orf ait dans le cas
d’une Liaison Spécialisée. La technologie VPN procure de même la sécurité lors des connexions d’utilisateurs distants au
réseau interne de l’entreprise.
11.2 Fonctionnement des VPN
11.2.1 L’interconnexion
Une connexion VPN met en jeu les composants suivants :
Serveur VPN

Un ordinateur qui accepte des connexions VPN de clients VPN. Un serveur VPN peut f ournir une connexion VPN accès
distant ou une connexion VPN routeur à routeur.
Client VPN
Comment ça marche ? 26/120
Un ordinateur qui initie une connexion VPN vers un serveur VPN. Un client VPN peut être un ordinateur individuel qui obtient
une connexion VPN accès distant ou un routeur qui obtient une connexion VPN routeur à routeur.
Tunnel
La portion de connexion dans laquelle les données sont encapsulées.
La connexion VPN
La portion de connexion dans laquelle les données sont chiff rées. Pour des connexions VPN sécurisées, les données sont
chif f rées et encapsulées dans la même portion de la connexion.
Note : Il est possible de créer un tunnel et d'envoyer les données dans le tunnel sans chif f rage. Ce n'est pas un e connexion
VPN car les données privées sont envoyées au travers d'un réseau partagé ou public sous une f orme non chif f rée et
f acilement lisible.
Protocoles
Les premiers standards utilisés f urent propriétaires à l’image de L2F (Layer 2 Forwarding) de Cis co et Shiva (Intel), PPTP
(Point to Point Tunneling Protocol) de Microsof t et 3Com et L2TP (Layer 2 Tunneling Protocol), f usion des 2 précédents.
Cependant, le standard actuel de niveau 3 est IPsec promulgué par IETF (Internet Engineering Task Force).

Ses composantes assurent :


1. la gestion et l’échange des clés entre 2 passerelles VPN (IKE : Internet Key Exchange)
2. le chif f rement des paquets IP (ESP : Encapsulating Security Payload)
3. l’authentif ication (AH : Authentication Header)
De plus l’utilisation de ce protocole ouvert assure, en théorie, l’interopérabilité d’équipements hétérogènes. La f igure suivante
schématise une connexion VPN entre 2 sites d’une société :

11.3 Les concepts de base


- Tunnelisation
- Chif f rement
- Authentif ication
11.3.1 La tunnelisation
C’est la méthode utilisée pour faire transiter des informations privées sur un réseau public. Les tunnels sécurisés garantiss ent
la conf identialité et l’intégrité des données ainsi que l’authenticité des 2 parties.
Dans cette méthode dite d’encapsulation, chaque paquet est complètement chiffré et placé à l’intérieur d’un nouveau paquet.
Les standards de la couche 2 sont PPTP (Point to Point Tranf ert Protocol) et L2F (Layer 2 Forwarding) qui ont convergé vers
un protocole unique, L2TP (Layer 2 Transf ert Protocol).
Le protocole de niveau 3 est standardisé : il s’agit de la norme prescrite par l’IETF pour IP V6 et compatibles IP V4, IPsec.
Il existe 2 modes de transport distincts :
- Mode Transport : il protège le contenu d’une trame IP en ignorant l’en-tête. Ce mode de transport est généralement utilisé
entre les points terminaux d’une connexion.
- Mode Tunnel : plus performant, il crée des tunnels en encapsulant chaque trame dans une enveloppe qui protège tous les
champs de la trame. Il est utilisé entre 2 équipements dont au moins un n’est pas un équipement terminal. Les données
peuvent être chif f rées (mode ESP) ou pas ( mode AH).
Voici le détail des 3 principaux composants d’IPsec :
AH (Authentication Header) : ce module garantit l’authenticité des trames IP en y ajoutant un champ chiffré destiné à vérif ier
l’authenticité des données renf ermées dans le datagramme.
AH - Mode Transport :
Comment ça marche ? 27/120
AH - Mode Tunnel :

ESP (Encapsulating Security Header) : ce procédé assure la conf identialité et l’authenticité des inf ormations en générant
des données chif f rées sur une nouvelle trame, à partir de la trame d’origine.

Les avantages de la tunnelisation sont multiples. Elle permet de cacher la topologie du réseau, de router des réseaux non -
routables au travers d’internet et de f aire cohabiter des solutions VPN et pare-f eu au niveau de la couche applicative.
IKE (Internet Key Exchange) : Protocole destiné à permettre le partage d'une clé de chiffrage entre émetteur et destinataire,
dans le cadre du protocole IPsec. (cf 2.2.3 L’authentif ication)
11.4 Le chiffrement
Le chif frement recommandé par l’IETF est basé sur le standard US, le DES. Celui-ci présente 3 variantes, se distinguant les
unes des autres par le nombre de bits utilisés :
- 56-bit DES : simple, craqué en quelques minutes
- 112-bit DES (double DES) : craqué par une attaque en ligne concerné, sans complexité supplémentaire que le 56 -bit
- 168-bit DES (triple DES) : basé sur 3 clés indépendantes mais pas aussi difficile à craquer qu’un systèm e à clé de longueur
triple.
Aucun chif frement cependant n’est sûr à 100%. Le Gouvernement a décidé de relever le seuil de chiffrage dont l'utilisation es t
libre, de 40 bits à 128 bits.
Le protocole DES, quelqu’en soit le type, est symétrique, c’est-à-dire que la même clé de session (ou la même suite de 3 clés
dans le cas triple DES) est utilisée par les 2 entités communicantes. Cette clé est changée de manière aléatoire au bout d’un
certain temps qui correspond à la durée de vie de cette clé.
Cependant, le problème réside dans l’échange de la valeur de la clé entre les 2 entités. On le résout grâce au protocole de
Dif fie-Hellman. Celui-ci permet la négociation d’une clé unique, de manière commune. Chaque entité détermine une moitié de
la clé et envoie les paramètres permettant de calculer la moitié manquante à l’autre entité.
Ce protocole étant asymétrique, il se base sur une paire de clés, une « privée » et une « publique ».
On imagine 2 entités (A et B) et leur jeu de clés privée et publique.
A calcule la moitié de la future clé commune et fournit à B les paramètres permettant de calculer cette moitié. Il utilise la clé
publique de B pour chif f rer ces paramètres et les envoie à B. Ce dernier déchif f re le paquet reçu grâce à sa clé privée et
calcule la moitié de clé qui lui manque. Il f ait une opération similaire de manière à f ournir à A sa moitié de clé.
Ainsi, les 2 entités disposent d’une clé commune de session.
La f aiblesse de ce type d’échange réside dans la validité de la clé publique. Il s’agit de contrôler l’origine de l’entité qui envoie
la clé publique, il f aut l’authentif ier.
Comment ça marche ? 28/120
Il est important de noter qu’un chiffrement basé sur une solution matérielle (Asic dédié) se révèle beaucoup plus rapide que
son équivalente logicielle.

11.5 L’authentification
Elle est obtenue en f ournissant la preuve de son identité auprès de son interlocuteur. Il existe plusieurs technologies dont voici
les 3 principales :
Les certificats digitaux
Un certif icat est constitué d'une clef publique et d'un certain nombre de champs d'identif ication, le tout signé par un tiers
certif icateur. En plus, un certif icat contient des inf ormations de gestion (numéro de série, une date d'expiration, etc.).
Ils se basent sur les recommandations X509 et permettent de f açon sûre d’authentif ier une personne, à la manière d’un
passeport. On f ournit à une autorité de certif ication les inf ormations et celle-ci retourne un certif icat digital.

Ces certif icats sont composés de 2 parties : les informations concernant l’entité (nom, clé publique, adresse physique...) et un
résumé chif fré de ces informations. Le résumé de ces inf ormations est ef f ectué par un algorithme de hachage tel MD5 ou
SHA-1 qui retourne un numéro unique, numéro qui est ensuite chif f ré.

Lorsqu’un certif icat est transmis à une entité qui veut vérif ier l’authenticité d’une autre, elle procède en 4 étapes :

- elle sépare les inf ormations de l’entité et le résumé chif f ré,


- elle déchif f re le résumé chif f ré,
- elle recalcule un résumé en utilisant le même algorithme (MD5... )
- elle compare le résumé calculé par ses soins et le résumé déchif f ré : si les résultats correspondent, l’authenticité est
prouvée.
La f igure suivante illustre ces propos :

L’autorité de certification peut être de 2 types. Elle peut être propriétaire et f ournie par le constructeur ou bien elle peut être
externe. C’est alors une société tiers à qui l’on délègue la gestion de sa PKI (Public Key Infrastructure). Les sociétés les plus
connues sont actuellement Entrust, Verisign...
Phrase challenge
Le processus est similaire à celui utilisé dans le cas des certif icats digitaux. La dif f érence réside en l’absence d’autorité de
certif ication ; les entités doivent elles même générer leurs certificats digitaux. La signature est alors chif f rée par une ph rase
challenge commune aux 2 entités. Il f aut donc que celle-ci soit entrée dans tous les équipements désirant communiquer.
Radius
Ce système utilise un serveur d’authentification RADIUS. Lors d’une demande de connexion d’un client sur un équipement
VPN, ce dernier demande le mot de passe et l’identifiant RADIUS du client. Ensuite, l’équipement VPN utilise sa clé secrète
pour vérif ier l’authentif ication auprès du serveur RADIUS.
11.6 Conclusions
De cette succincte étude, on peut dégager quelques critères de sélect ion concernant les solutions VPN à étudier :
- longueur des clés utilisées au chif f rement
- algorithmes de chif f rement
- algorithmes de hachage
- chif f rement matériel/logiciel
- nombre de connexions simultanées
- type d’authentif ication (si certif icats, interne ou externe)
- évolutivité du matériel...
On considère en général qu’un matériel inf ormatique doit être amorti sur une durée de 2 années.
Si l’on se réf ère à l’économie réalisée par rapport aux prix pratiqués par France Télécom (0,50 F HT la min), le matériel est
amorti. En revanche, si on se base sur l ‘économie réalisée par rapport aux prix de Télé2 par exemple (0,24 F HT la min),
l’amortissement n’est pas atteint.
L’investissement demandé par l’implémentation d’un réseau de type VPN semble trop important et ne sera pas amorti dans le
temps imparti. La chute du prix des communications nationales et le maintien de celui des communications locales relativisent
Comment ça marche ? 29/120
l’intérêt de ce type de réseau dans le cas d’une liaison RNIS.
Cependant, dans le cas d’un réseau d’entreprises réparties sur un territoire national ou à l’international et interconnectées par
liaisons Transf ix, les économies sont substantielles.
Cette conclusion sera à corriger dés l’ouverture ef f ective de la boucle locale et de la con currence. Elle est d’ores et déjà
sujette à discussion avec l’arrivée de l’ADSL.

12 Les réseaux Ethernet, Token Ring et FDDI


Introduction
L'histoire des réseaux et des télécommunications pourrait se résumer à une perpétuelle course au débit ou à ce que l'o n
appelle aussi largeur de bande. Pour supprimer la distance, il faut transporter une quantité toujours plus grande d'informati ons
sur des distances de plus en plus importantes. Or, on constate que plus les distances sont grandes plus les débits disponible s
sont f aibles. Les informations se déplacent plus vite dans un ordinateur que dans sa périphérie, plus vite dans sa périphérie
qu'entre deux étages, plus vite entre deux étages qu'entre deux bâtiments, plus vite entre deux bâtiments qu'entre deux
villes...
Abolir les distances, c'est lutter contre ces lois et pénaliser le moins possible le débit. Et réaliser le vieux rêve des rés eaux :
transf érer aussi vite des informations entre deux ordinateurs situés à 200 km l'un de l'autre qu'à l'intérieur d'un ordin ateur !
Le principe du réseau local est apparu dans les années 70 pour interconnecter les équipements de mini -inf ormatique
(terminaux, imprimantes, disques ...). En ef f et, la plupart des échanges de données dans une entreprise s'ef f ectuent
localement, voire par groupes de travail. C'est pourquoi, avec la généralisation des micro-ordinateurs à la f in des années 80, le
réseau local a af f irmé sa vocation.
C'est pourquoi, nous étudierons les différents types de réseaux locaux tels que le LAN Ethernet, le Token Ring et FFDI. Enf in
nous verrons l'utilisation de ces interf aces adaptées par IBM pour f onctionner avec ATM.

12.1 . Présentation d'un réseau local


Le réseau local, en anglais LAN (Local Area Network) ou en f rançais RLE (Réseau Local d'Entreprise), est une inf rastructure
de communications reliant des équipements informatiques et permettant de partager des ressources communes sur une aire
limitée à quelques centaines de mètres.
I.1. Caractéristiques du réseau local
Les réseaux locaux sont des inf rastructures complexes et pas seulement des câbles entre stations de travail. Et, si l'on
énumère la liste des composants d'un réseau local, on sera peut-être surpris d'en trouver une quantité plus grande que prévue
:
* Le câblage constitue l'inf rastructure physique, avec le choix entre paire téléphonique, câble coaxial et f ibre optique.
* La méthode d'accès décrit la f açon dont le réseau arbitre les communications des diff érentes stations sur le câble : ordre,
temps de parole, organisation des messages. Elle dépend étroitement de la topologie et donc de l'organisation spatiale des
stations les unes par rapport aux autres. La méthode d'accès est essentiellement matérialisée dans les cartes d'interfaces, q ui
connectent les stations au câble.
* Les protocoles de réseaux sont des logiciels qui "tournent" à la f ois sur les dif f érentes stations et leurs cartes d'interf aces
réseaux.
* Le système d'exploitation du réseau (ou NOS pour Network Operating System), souvent nommé gestionnaire du réseau,
réside dans les différentes stations du réseau local. Il f ournit une interface entre les applications de l'utilisateur et les f onctions
du réseau local auxquelles il f ait appel par des demandes à travers la carte d'interf ace.
* Le ou les serveurs de fichiers stocke et distribue les f ichiers de programmes ou les données partageables par les
utilisateurs du réseau local. Il résulte d'une combinaison de matériel et de logiciel qui peut être spécif ique.
* Le système de sauvegarde est un élément indispensable qui f onctionne de diverses manières soit en recopiant
systématiquement tous les f ichiers du ou des serveurs, soit en f aisant des sauvegardes régulières, éventuellement
automatisées.
* Les ponts, les routeurs ou les passerelles constituent les moyens de communication qui permettent à un de ses
utilisateurs de " sortir " du réseau local pour atteindre d'autres réseaux locaux ou des serveurs distants.
* Le système de gestion et d'administration du réseau envoie les alarmes en cas d'incidents, comptabilise le traf ic,
mémorise l'activité du réseau et aide le superviseur à prévoir l'évolution de son réseau.
I.2. Le câblage
Le câblage des réseaux locaux tend aujourd'hui à se banaliser, et à ne pas se distinguer du câblage inf ormatique et
téléphonique général de l'entreprise. Trois médias sont aujourd'hui utilisés dans les réseaux locaux :
* La paire torsadée téléphonique, peu chère, assez f acile à poser, elle est aujourd'hui le support le plus répandu pour les
réseaux locaux.
* Le câble coaxial, nettement plus cher, est en perte de vitesse après avoir été le support par excellence des premiers
réseaux locaux qui fonctionnaient en mode large bande (bande passante découpée en plages de f réquence, chacune étant
attribuée à un canal). Aujourd'hui, la plupart des réseaux locaux f onctionnant en bande de base (toutes les stations émettent
sur un même canal occupant la totalité de la bande passante), le câble coaxial est moins nécessaire et on l'emploie presque
uniquement pour l'interconnexion de dif f érents réseaux locaux.
* La fibre optique, encore nettement plus chère, parce qu'elle permet des débits élevés et est insensible aux parasites,
commence à f aire une percée dans les réseaux locaux à gros besoins de bande passante (calcul technique, CAO), mais sert
surtout pour interconnecter plusieurs réseaux locaux.
I.3. La topologie
Il f aut distinguer la topologie de câblage de la topologie d'accès : la première représente l'implantation des câbles, la sec onde
la logique de connexion des stations et donc le cheminement qu'empruntent réellement le s signaux.
Comment ça marche ? 30/120
En matière de topologie physique, on utilise principalement le bus et l'étoile. Dans un bus, le câble relie les stations
directement les unes aux autres, comme un réseau de distribution d'eau. Il f aut donc une terminaison à l'extrémité du bus. Une
variante du bus est l'arbre qui hiérarchise différents sous-bus comme des branches, autorisant parfois plusieurs chemins pour
aller d'une station à l'autre.
Dans l'étoile, les câbles sont tous concentrés en un point central, le concentrateur ou hub. Souvent, on superpose plusieurs
étoiles, l'extrémité d'une branche pouvant être le centre d'une nouvelle étoile de niveau inf érieur, on parle alors de
répartiteurs. C'est ce type de câblage qui est le plus employé, plus facile à configurer et à gérer : on p eut f acilement ajouter
une branche à l'étoile pour relier une nouvelle station.
En matière de topologie d'accès, on trouve le bus, l'étoile et l'anneau.

Les anneaux ne sont jamais câblés comme tels : on emploie un câblage en étoile par paires de f ils ; le premier f il d'une paire
correspondant à une station est relié, dans le répartiteur, au second fil de la paire de la station voisine, et ainsi de suit e pour
créer un anneau " logique ".
Les concentrateurs et les répartiteurs ou hubs sont souvent des dispositifs actif s, en pratique des cartes électroniques dans
des racks, qui gèrent les raccordements, détectent l'arrivée du signal, les ruptures... Ils jouent un rôle important dans
l'administration du réseau et supportent de plus en plus souvent d'autres équipements (ponts, routeurs...)
I.4. La méthode d'accès
Pour "mettre de l'ordre" dans un réseau local, où toutes les stations peuvent prendre l'initiative des envois de messages, il faut
une règle respectée par tout le monde. C'est la méthode d'accès. On distingue deux méthodes principales, la contention et le
jeton. Elles distinguent les deux principales f amille de réseaux locaux : Ethernet (voir Partie II, LAN Ethernet), qui utilise la
contention, et l'anneau à jeton (Token-Ring) (voir Partie III, Token Ring), méthode "déterministe" (non aléatoire).
Les deux méthodes sont normalisées dans le cadre de l'association IEEE américaine (comité 802), normalisation reprise dans
le cadre de l'ISO. Si l'on se réf ère au modèle OSI, ce qui distingue les méthodes d 'accès se situe bien entendu dans la couche
1 Physique, puisque les médias et les topologies sont différents, mais surtout dans une sous-couche inférieure de la couche 2
Liaison de données appelée Mac (Medium Access Control). La méthode Ethernet CSMA/CD est normalisée sous l'appellation
802.3 et l'anneau à jeton sous 802.5.
L'autre sous-couche de la couche 2, LLC (Logical Link Control), est tout simplement empruntée au protocole HDLC (LAP B) et
est commune à toutes les f amilles de réseaux locaux, avec quelques variantes : elle déf init donc des trames qui sont
identiques à celles des terminaux synchrones et des réseaux X25.
12.2 . LAN Ethernet
Le principe du réseau Ethernet est apparu à la f in des années 70 dans les milieux de chercheurs aux Etats-Unis. Ce réseau, le
plus répandu des réseaux locaux, est né des expériences complémentaires de DEC, Intel et Xerox, bien avant les avancées
de la normalisation. Ce qui signif ie que l'essentiel des protocoles des couches supérieures n'est pas spécif ié.
La méthode utilisée est la contention, tout le monde peut prendre la parole quand il le souhaite. Mais alors, il f aut une règle
pour le cas où deux stations se mettraient à " parler " au même moment. La principale méthode de contention en réseaux
locaux est le CSMA/CD (Carrier Sense Multiple Access), avec détection de collision (CD). C'est celle d'Ethernet.
Elle consiste pour une station, au moment où elle émet, à écouter si une autre station n'est pas aussi en train d'émettre. Si
c'est le cas, la station cesse d'émettre et réémet son message au bout d'un délai fixe. Cette méthode est aléatoire, en ce sens
qu'on ne peut prévoir le temps nécessaire à un message pour être émis, transmis et reçu. Voyons l'évolution d'Ethernet
II.1. Ethernet, IEEE 803.3 10 Base 5
La version 10 Base 5 (10Mbps en bande de base sur câble coaxial d'une longueur maximale par segment de 500 mètres) est
la version d'origine d'Ethernet, elle est représentée ci-dessous :

Chaque station est équipée d'une interf ace " Ethernet " (NIC, Network Interface Card) généralement appelée carte
transporteur ou carte " Ethernet ". Cet équipement assure l'adaptation physique et gère l'algorithme CSMA/CD.
Le drop cable est constitué de paires torsadées et peut avoir une longueur maximale de 50 mètres. Le câble coa xial est un
câble épais de couleur jaune (Ethernet jaune) d'un demi-pouce de diamètre. La longueur totale du réseau peut atteindre 2,5
kilomètres.
Comment ça marche ? 31/120
Cette version d'Ethernet n'est pratiquement plus utilisée que dans les environnements compromis (rayonnement
électromagnétique) ou lorsque l'on veut garantir la conf identialité des échanges (pas de rayonnement du câble coaxial).
II.2. Ethernet, IEEE 802.3 10 Base 2
Une version économique a été réalisée avec du câble coaxial f in (Thin Ethernet).
Ce type de réseau Ethernet est représenté ci-dessous :

Cette architecture physique de réseau est recommandée pour la réalisation de petits réseaux d'une dizaine de machines, c'est
la plus économique
II.3. Ethernet, IEEE 802.3 10 Base T
Compte-tenu des problèmes de câblage, AT&T a imaginé de réutiliser le câblage téléphonique préexistant dans les immeubles
de bureaux pour la réalisation de réseau. Cela imposait deux contraintes : l'une de débit, l'autre de distance. Le réseau ain si
réalisé f onctionnait à 1Mbps, les stations étaient connectées sur des concentrateurs répéteurs (hub) et la distance entre le hub
et une station était limitée à 250 mètres. Cette architecture (802.3 1 base 5 ou Starlan) complètement obsolète aujourd'hui a
évolué vers une version 10MBps (802.3 10 base T). La f igure suivante présente le réseau 10 base T.

En résumé, la vitesse normalisée d'Ethernet est de 10 Mbps. Pour le média, si un câble coaxial particulier avait été déf ini p ar
la normalisation originale (câble " jaune " en bus), on trouve aujourd'hui d'autres câbles à meilleur prix, notamment un câble
coaxial fin (dit câble " noir ") et surtout plusieurs solutions de câblage sur paires torsadées téléphoniques. La plus répand ue
d'entre elles, 1OBase T, permet un câblage en étoile, plus f acilement administrable. Grâce à ces nouvelles possibilités,
Ethernet demeure la plus répandue des inf rastructures de réseaux locaux et connaît une véritable seconde jeunesse.
Depuis fin 1992, les comités de standardisation ont travaillé à un nouveau réseau E thernet à 100 Mbps baptisé Fast-Ethernet.
Deux écoles se sont af f rontées, l'une voulant conservé la méthode d'accès CSMA/CD et la compatibilité avec les cartes
adaptateurs existantes, tandis que l'autre préconise un tournant plus radical avec une technologie déterministe proche de celle
de l'anneau à jeton ou FDDI.
12.3 . Le Token Ring
L'autre méthode, celle du jeton (matérialisé par un ensemble de données, ou trame, affecté à cet usage), est dite déterminist e
puisqu'en fonction des caractéristiques du réseau (nombre de stations et longueur du câble), on peut déterminer le temps
maximal que prendra un message pour atteindre son destinataire.
Dans le jeton, on devra attendre son tour, matérialisé par le passage d'une conf iguration particulière de bit appelée je ton.
III.1. Description générale de l'anneau à jeton ou Token Ring
La norme IEEE 802.5 spécifie un réseau local en boucle : chaque station est reliée
à sa suivante et à sa précédente par un support unidirectionnel.

Publiée en 1985, la norme IEEE 802.5 f ut implémentée par IBM dès 1986. IBM est
resté le principal acteur du monde Token Ring. L'implémentation d'IbM dif f ère
quelque peu de la norme d'origine. Notamment, la topologie physique a évolué vers
une étoile pour gérer la rupture de l'anneau. Les stations sont reliées à des
concentrateurs (MAU Multiple Access Unit). La f igure suivante représente ce type
de réseau.
Comment ça marche ? 32/120

Les spécifications du Token Ring sont contraignantes au niveau de l'installation. Les possibilités de connexion, distance et
nombre de postes, dépendent du type de câble utilisé. Avec du câble 1 ou 2 (dans la terminologie IBM, paires torsadées
blindées d'impédance 150 Ohms) la longueur maximale de l'anneau principal est de 366 mètres, l'anneau principal peut
comporter jusqu'à 260 stations, la distance maximale station/MAU est de 101 mètres.
Les spécifications des éléments actifs ont évolué afin de supporter les pré-câblages d'immeubles à 100 Ohms. Le connecteur
spécif ique IBM dit " hermaphrodite " est aujourd'hui généralement remplacé par des prises RJ45.
III.2. Principe général du Token Ring
Le droit d'émettre est matérialisé par une trame particulière " le jeton ou Token ". Celui-ci circule en permanence sur le réseau.
Une station qui reçoit le jeton peut émettre une ou plusieurs trames (station maître). Si elle n'a rien à émettre, elle se contente
de répéter le jeton (station répéteur). Dans un tel système, les informations (trames) transitent par toutes les stations act ives.
Chaque station du réseau répète ainsi le jeton ou le message émis par la station maître, il n'y a pas de mémorisation du
message, un bit reçu est immédiatement retransmit. Le temps alloué à une station pour la répétition d'un bit correspond à un
temps bit (possibilité de modifier bit à bit le message). Chaque station provoque ainsi un temps bit de retard dans la dif f usion
du message.
Notons que le jeton n'a nullement besoin de contenir l'adresse d'un destinataire, le destinataire est la station qui suit
physiquement celle qui le détient (technique du jeton non adressé).
III.3. Gestion de l'anneau
Quatre octets spécif iques de la trame MAC 802.5 identif ient des f onctions et gèrent l'anneau. Ce sont :
* L'octet de contrôle d'accès (Access Control)
* L'octet ce contrôle de trame (Frame Control)
* L'octet de f in de trame (End Delimiter)
* L'octet d'état de la trame (Frame Status)
L'octet de contrôle d'accès

L'octet de contrôle d'accès comporte quatre champs.


* Le bit T : l'état du jeton est matérialisé par la valeur du bit T/
* Le bit M : le bit M est toujours à zéro dans un jeton libre et dans le message émis par la station émettrice. Il est positionné à
un par une station particulière, le moniteur. Cette station a pour rôle de surveiller qu'un message ne boucle pas sur le rése au.
* Les bits PPP et RRR : la norme 802.5 prévoit huit niveaux de priorité. Lorsqu'une station veut émettre, elle attend le jeton. Si
celui-ci est occupé, elle le réserve en positionnant les bits RRR.
L'octet ce contrôle de trame
L'octet ce contrôle de trame du réseau 802.5 déf init le type de trame qui circule sur l'anneau. Les deux premiers bits
distinguent les trames d'inf ormation (trames LLC) des trames de gestion de l'anneau (trames MAC)
L'octet de fin de trame
L'octet délimiteur de fin de trame a, dans Token Ring, une f onction p articulière. Le bit I, informe le destinataire qu'une trame de
même origine suit celle reçue ou que la trame est unique. Quant au bit E, il permet de détecter une erreur.
L'octet d'état de la trame
L'octet d'état de la trame est le dernier octet de la trame. Il n'est pas protégé par le FCS, en conséquence, les inf ormations
qu'il comporte sont dupliquées.
12.4 Comparaison entre Ethernet et Token Ring
Lorsque l'on compare deux types de réseau, les critères à retenir sont principalement :
* Les perf ormances en terme de débit et temps d'accès
* Les types de transf erts et applications inf ormatiques envisageables
* L'inf rastructure requise et les distances maximales admissibles
IV.1. En termes de débit et temps d'accès
Lorsqu'il s'agit de déf inir le débit d'un réseau il y a deux critères à retenir :
* Le débit nominal (débit physique)
* Le débit vu des applications
Comment ça marche ? 33/120
Le premier est ef fectivement lié au choix du réseau, le second dépend non seulement du débit physique mais aussi de la
charge du réseau et des protocoles empilés. Seuls nous intéressent ici les débits nominaux et la tenue en charge du réseau.

La f igure ci-dessus superpose l'évolution des débits en f onction de la charge de chaque réseau. Il est intéressant de constater
qu'à f aible charge, les réseaux de type Ethernet présentent, vis-à-vis des couches supérieures, une meilleure ef f icacité. En
ef f et, en Ethernet, si le traf ic est faible, dès qu'une station veut émettre, elle émet. En Token Ring, même à f aible charge, la
station doit attendre le Token.
Cependant à f orte charge dans le réseau Ethernet, les collisions se multiplient et le débit s'ef f ondre, alors que pour Token
Ring, même si le débit moyen de chaque station diminue, le débit utile sur le support atteint le débit nominal.
IV.2. En termes d'application
Le réseau Ethernet est qualifié de probabiliste, c'est-à-dire qu'il est possible de déterminer, en fonction d'un trafic modélisé, la
probabilité pour qu'une station puisse émettre. Il est impossible de borner ce temps.
Dans le cas du Token Ring, il est toujours possible de déterminer le laps de temps au bout duquel on est certain qu'une station
obtiendra le jeton, le réseau est dit déterministe.
Cependant, même si le temps d'obtention du jeton peut être borné, même si le Token Ring met en œuvre un mécanisme de
priorité, il ne peut garantir un intervalle de temps constant entre deux obtentions du jeton pour une même station. Par
conséquent, le Token Ring est impropre au transf ert isochrone (voix, vidéo, temps réel).
Les deux types de réseaux sont utilisés pour des applications de type conversationnel. Le Token Ring, pouvant garantir une
bande minimale, pourra être utilisé pour des transferts sous contrainte temporelle moyennement sévère (transfert synchrone).
Mais en principe, aucun des deux ne satisfait au transfert isochrone. En pratique, des essais ont montré qu'il était possible,
sous f aible charge, de réaliser de tels transf erts, à condition d'admettre des pertes d'inf ormations pour assurer une
compensation temporelle.
IV.3. En termes d'infrastructure
Si on ne considère que l'implémentation la plus utilisée sur Ethernet : le 10 base T, la topologie physique de câblage est
similaire pour les deux types de réseaux. Les distances couvertes sont du même ordre. Ces deux réseaux permettent d e
couvrir des immeubles relativement vastes en utilisant les techniques de réseaux f édérateurs.
Bien que le réseau Token Ring ait des performances intrinsèquement supérieures, le marché lui a préféré Ethernet.
12.5 FDDI (Fiber Distributed Data Interface)
V.1. De Token Ring à FDDI
L'anneau à jeton, dont la norme, pour l'essentiel, a été définie par IBM au début des années 80 sous le nom de Token -Ring, a
tenté de détrôner la prédominance d'Ethernet grâce à une offre de plus en plus large et des succès dans les réseaux locaux
bureautiques. Il reste qu'Ethernet s'est imposé pour relier les stations de travail techniques, les mini -ordinateurs, en particulier
dans l'univers Unix. Mais l'influence d'IBM sur le marché a f avorisé l'essor continu de l'anneau à jeton. Celui-ci est normalisé
pour deux débits compatibles de 4 ou de 16 Mbps. Un projet de norme à 100 Mbps, se confondant ou presque avec FDDI, a
été mise en chantier ces deux dernières années.
Le f onctionnement de Token-Ring comme celui de FDDI repose sur l'utilisation d'un " jeton " qui, en quelque sorte, gère le
droit de parole sur le réseau. Dans Token-Ring, ce jeton de trois octets circule en permanence de station en station : une
station qui veut émettre bascule l'un de ces octets en position " occupée " et émet son ou ses paquets immédiatement à la
suite (en f onction d'un taux d'occupation maximal et de règles éventuelles de priorité). La station destinataire reconnaît so n
adresse dans l'en-tête, il lit son message et remet le jeton à l'état " libre " ; au bout d'un tour d'anneau, la station émettrice voit
ainsi repasser son jeton libre et sait que le message a été reçu. Le temps maximal du tour d'anneau est déterminé et le
remplissage de l'anneau peut ainsi être optimal. Lorsqu'une station se déconnecte de l'anneau, celui-ci est automatiquement
ref ermé par un dispositif situé au point de concentration des stations, le MAU (Multistation Access Unit) situé sur le répartiteur
(concentrateur ou hub).
V.2. Présentation de FDDI
FDDI est un réseau en anneau (double anneau), il utilise la fibre optique multimode, le débit nominal est de 100 Mbps et la
distance maximale couverte de 100 kilomètres. FDDI supporte jusqu'à 1000 stations distantes l'une de l'autre de moins de 2
kilomètres.
Une version de FDDI sur paire torsadée existe (TPDDI, Twisted Pair Distributed Data Interface), elle autorise des débits de
100Mbps sur 100 mètres.
La méthode d'accès est similaire à celle du réseau IEEE 802.5 version 16 MBps (ETR, Early Token Release). Pour accéder
au support, une station doit posséder le jeton. Elle émet ses données et génère un nouveau jeton. Chaque station retire de
l'anneau les données qu'elle y a déposées. Plusieurs trames de données issues de stations dif f érentes peuvent circuler sur
l'anneau, mais il n'y a qu'un seul jeton.
Comment ça marche ? 34/120
Les dif f érences essentielles, par rapport au Token Ring, sont :
* Il n'y a pas de station monitrice, chaque station participe à la surveillance de l'anneau.
* La distance maximale inter-station (2 km) ainsi que la longueur totale de l'anneau FDI ne permettent plus la synchronisation
des stations à partir d'une horloge unique. Chaque station possède sa propre horloge ; un mémoire tampon (buf f er élastique,
EB Elasticity Buffer) permet de compenser les écarts entre l'horloge de réception et c elle d'émission. c'est la capacité du
tampon mémoire qui limite la taille de la trame à 4500 octets.
* Les données sont séparées en deux f lux, les données urgentes à contrainte de débit (classe synchrone) et les données
sporadiques, sans contrainte particulière de débit (classe asynchrone). Lorsqu'une station possède le jeton, elle peut toujours
émettre des données synchrones et, si, et seulement si, le jeton est en avance (jeton temporisé) elle peut alors émettre des
données asynchrones.
V.3. Architecture du réseau FDDI

Le schéma ci dessus modélise l'architecture du réseau FDDI. La couche physique est scindée en deux sous couches, l'une
(PMD, Physical Medium Dependent) est chargée d'adapter les caractéristiques des organes d'émission (transducteurs
optiques, connecteurs, ...) en fonction du support physique utilisé (type de f ibre optique, paires torsadées); l'autre gère le
protocole physique (PHY, PHYsical layer protocol), elle est chargée du codage des données et de la synchronisation. La
couche MAC est chargée des fonctions habituelles (gestion du jeton, temporisation,...). Un protocole spécifique (SMT, Station
ManagemenT) gère l'insertion et le retrait des stations, la conf iguration du réseau et le traitement des erreurs.
V.4. Aspects Physiques du FDDI
FDDI distingue deux types de stations : les
stations à simples attachements (SAS,
Single Attachment Station) et celles à
double attachements (DAS, Double
Attachment Station). Les stations à double
attachements sont reliées directement à
l'anneau principal, celles à attachement
simple utilise un concentrateur qui peut
être un simple ou double attachement
(SAC : Single Attachement Concentrator,
DAC : Double Attachment Concentrator).

La f igure ci-dessus représente la topologie


du réseau FDDI. Le double anneau autorise, en cas de défaillance d'un nœud FDDI, le rebouclage sur l'anneau secondaire.
Pour les stations à simple attachement, cette f onction est assurée par le concentrateur.
V.5. Fonctionnement général du réseau
A l'initialisation, sur détection d'inactivité, une station émet une requête d'initialisation (Claim Token). La trame Claim Token
comporte l'indication du TTRT revendiqué. Chaque station recevant cette trame compare la valeur du TTRT avec celle qu'elle
désire. Si la valeur requise est inférieure à la valeur proposée, la station substitue au TTRT proposé la valeur Qu'elle désire,
sinon elle mémorise la valeur et répète la trame. La station qui voit revenir sa proposition est considérée comme gagnante et
elle génère le premier jeton.
Une station qui a des données a émettre attend la réception d'un jeton. La station qui reçoit un jeton, le répète jusqu'au
délimiteur de début ( jeton tronqué), puis insère des symboles Idle. Elle émet une ou plusieurs trames et régénère un jeton
valide.
Comment ça marche ? 35/120
De manière similaire au Token Ring, c'est la station qui a émis qui retire ses données de l'anneau. A cet ef f et, quand une
station reçoit une trame, elle examine le champ Adresse Source, si elle reconnaît sa propre adresse, elle cesse sa fonction d e
répéteur et insère des symboles Idle. La trame tronquée (champ PA, SD, FC, DA, SA et quelques symboles Idle) ainsi que le
jeton tronqué seront retirés de l'anneau par la station détentrice du jeton qui durant son émission cesse sa f onction de
répéteur.
Une version de FDDI sur paire torsadée est disponible (TPDDI, Twisted Pair Distributed Data Interface). Cette
implémentation autorise des débits de 100Mbits sur 100 mètres.
V.6. Evolution de FDDI : FDDI-II
FDDI garantit une bande passante minimale aux données des différentes stations (classe synchrone) mais ne garantit pas une
récurrence temporelle entre les différentes émissions. De ce f ait, FDDI-I n'est pas susceptible d'assurer des transf erts de
données de type isochrone (voix, vidéo).
FDDI-II superpose sur un même support, l'anneau FDDI, une voie asynchrone et synchrone (f onctionnement en mode paquet)
et une voie isochrone (f onctionnement en mode circuit).
Une station maître (Cycle Master) génère une trame toutes les 125 microsecondes, une trame représe nte 16 canaux dans
lesquels les stations déposent leurs données. FDDI-II est incompatible avec FDDI-I.
V.7. En résumé...
Issue du monde des réseaux locaux privés, la norme FDDI (Fiber Distributed Data Interface) est une norme de "super réseau"
local à hauts débits (100 Mbps), f onctionnant sur f ibre optique et selon une topologie de double anneau sécurisé :
* un anneau transportant les données dans un sens,
* le second servant normalement de réseau de secours en cas de rupture
On peut toutefois dans certaines configurations l'utiliser pour doubler le débit global. Son mode de f onctionnement est assez
proche des réseaux locaux, en particulier de l'anneau à jeton (Token Ring).
Sa gamme de services est assez large, puisqu'on peut l'utiliser comme support p our de petits réseaux entre stations à hautes
perf ormances, comme anneau f édérateur d'autres réseaux locaux et même comme réseau " métropolitain ", puisqu'il peut
supporter jusqu'à 500 stations à une distance dépassant les 150 kilomètres. En revanche, FDDI ne permet ni le transport de la
voix ni celui de la vidéo. Cette lacune devrait être comblée avec la version FDDI-II supportant les applications isochrones.
Mais, les deux versions sont incompatibles. Et, si elles peuvent utiliser la même inf rastructure, elles nécessitent des
équipements d'accès dif f érents. Ce qui amène certains spécialistes à condamner FDDI-II avant même qu'elle ait vécu.
La norme FDDI définit deux types de stations, de classe A, se connectant aux deux anneaux, ou de classe B, connectées à un
seul anneau. Les coûts des matériels, assez élevés à l'origine, ont nettement baissé au cours des dernières années grâce à
une of f re commerciale aujourd'hui mature et très concurrentielle.
L'arrivée sur le marché de concentrateurs permettant à plusieurs stations de partager un accès physique a encore abaissé le
seuil économique d'accès au réseau. Les perspectives d'une connectique d'accès à base de paires de cuivre (l'anneau restant
bien entendu en f ibre optique) élargissent encore les possibilités, avec baisse de prix. Soutenue activement par les grands
constructeurs de l'inf ormatique, FDDI apparaît maintenant comme une norme admise dont plus personne ne conteste la
viabilité pour des installations privées. Son rôle dans l'interconnexion de réseaux à plus grande distance reste un point
d'interrogation, quoique les premiers essais soient plutôt encourageants.
Il est évident que les architectures " publiques " planifiées à base d'ATM prévoient de proposer une interf ace FDDI comme
interf ace d'accès. Mais on peut dire autant de bien d'autres interf aces, dont le MAN-DQDB, le RNIS bande étroite et les
réseaux locaux aujourd'hui les plus courants sur le marché, l'ATM se présentant avant tout comme un grand rassembleur. La
question est de savoir ce qu'il devra rassembler.
12.6 ATM CHEZ IBM
VI.1. Quelques éléments sur l'existence d'ATM
Une question se pose : s'agissant des méthodes de transmission de l'information, faut -il conserver la commutation de circuits,
bien adaptée à la voix et à l'image, ou la commutatio n de paquets, qui l'est davantage aux données ?
Faut-il en outre proposer des services en mode connecté, c'est-à-dire où l'on établit puis libère le circuit après utilisation, ou en
mode non connecté où le message, toujours associé à son adresse de destination, est aiguillé sans délai ?
Les ingénieurs ont tenté de rapprocher ces quatre formules et d'en cumuler les avantages en mettant au point une f amille de
techniques dite de commutation de paquets rapides (FPS, Fast Packet Switching), dont la plus prometteuse est l'ATM
(Asynchronous Transfer Mode).
Il s'agit d'une commutation de paquets, mais comme certains doivent absolument être envoyés dans des délais très courts
(pour les applications isochrones, comme la voix), on définira des paquets de taille fixe et suffisamment petite pour commuter
à des cadences élevées. Un paquet de longueur fixe est appelé cellule, d'où le nom de relais de cellules (Cell Relay) qui est
parf ois donné à l'ATM.
La normalisation a déf ini des paquets de 53 octets, contenant une en-tête de 5 octets. Calqué sur la technique de
commutation X25 (Transpac en France), cette en-tête comporte l'adresse du destinataire et des inf ormations d'identif ication
de circuits virtuels. En effet, comme dans X25, on définira des circuits virtuels, où l'acheminement des cellules sera ef f ectué
de f açon logique par les commutateurs, en lisant l'en-tête. Vu de l'utilisateur, ces circuits apparaîtront comme des circuits
commutés. Cette technologie est asynchrone, car l'on n'envoie les cellules qu'à la dema nde des terminaux et on alloue
dynamiquement, selon la bande passante disponible, les différents débits nécessaires. Un équipement ayant besoin d'un gros
débit transmettra plus de cellules et plus souvent qu'un équipement à f aibles débits.
Comme l'ATM supprime en grande partie le contrôle d'erreurs en comptant sur la bonne qualité des nouveaux réseaux à f ibre
optique, on peut commuter à une vitesse suffisante pour admettre une très large gamme de débits. De plus, les en -têtes de
cellules contiennent deux niveaux d'adressage virtuels, le VCI (Virtual Channel Identifier) et le VPI (Virtual Path Identif ier). Ce
mécanisme permet ainsi de regrouper plusieurs canaux virtuels (VC) dans un seul f aisceau virtuel (VP).
Cette technologie ATM, développée notamment à l'origine par le CNET en France au début des années 80, a connu un essor
soudain depuis plus de cinq ans. En effet, elle se développe plus rapidement que prévu dans les réseaux locaux plutôt que
dans les inf rastructures télécoms.
Comment ça marche ? 36/120
VI.2. L'utilisation des interfaces FDDI et Token Ring (par IBM)
Nos multiples démarches chez IBM
Pour répondre aux questions posées par le sujet à propos de l'adaptation des interf aces Token Ring et FDDI par IBM pour
ATM : notre première réaction a été de consulter le site web d' IBM à www.ibm.com.
Ce site nous est apparu essentiellement comme un site commercial, lieu de présentation des divers produits proposés par
IBM. De ce f ait, nous n'avons trouvé aucune information pouvant répondre aux questions, bien que les mots FDDI, Token Ring
et ATM apparaissent f réquemment.
Nous avons par la suite contacté le webmaster qui nous a donné le numéro de téléphone d'IBM SERVICE. Ce numéro nous a
apporté six numéros de sociétés de service et sous -traitants d'IBM.
Aucun de ces numéros n'a eu de suite, hormis celui de Mr. Lucien Geay qui nous a même proposé un rendez-vous af in de
nous présenter IBM et de tenter de répondre à nos questions. Malheureusement, la Société étant située sur Grenoble, il nous
était difficile de concrétiser un déplacement. Par ailleurs, la communication par email s'est avérée inf ructueuse et inef f icace
car il ne souhaitait pas répondre par ce média.
Nous avons même contacté les services Hotline Hardware et Sof tware d'IBM pour avoi r un entretien avec un technicien.
Malheureusement, il nous a été impossible d'obtenir un interlocuteur correspondant à nos recherches.
Nous avons alors appelé le standard d'IBM qui nous a orienté vers le service des renseignements. Et là, une personne no us a
donné, de manière très exceptionnelle et confidentielle, trois noms d'ingénieurs commerciaux, ainsi que le moyen d'obtenir
leurs emails...Conseil que nous nous sommes empressés de suivre.
Nous avons ainsi pu écrire à ces trois ingénieurs ainsi qu'a d 'autres employés : techniciens, ingénieurs, manager... Seuls
quelques uns d'entres eux nous ont répondu (vous trouverez leurs réponses en annexes). Mais aucune réponse n'a répondu à
nos questions correctement.
Les réponses que nous allons apportés aux questions sont donc le résultat de tous les renseignements recueillis au cours de
notre périple.
Pourquoi avoir adapté ces technologies pour ATM ?
De nos jours, tous les diff érents types de réseaux sont amenés à communiquer ensemble. De ce f ait, la plupart des liens
interréseaux utilisent l'ATM, une possibilité of f rant aussi bien un très bon débit qu'une très bonne qualité de service.
Du f ait de son essor soudain ces dernières années, il semble qu'il faille à présent le prendre en considération comme standa rd
incontournable des hauts débits. Et donc, les trames FDDI et Token Ring développées par le passé par IBM, ont tout intérêt
de passer par des réseaux ATM. Il f aut alors bien développer des interf aces pour f aire passer les types de données qui se
trouvent dans les trames FDDI et Token Ring dans des trames ATM et ainsi d'être capable d'encapsuler des trames FDDI et
Token Ring dans de l'ATM.
Pourquoi ces interfaces sont-elles vouées à l'échec ?
Cependant, Token Ring et FDDI sont voués à l'échec... c'est un fait... et ce dû à leur problème de rapport débit/prix. Et même
si les solutions apportées par le jeton sont meilleures que le principe Ethernet : " j'envoie sur le réseau et j'espère que ç a
passe ", ces méthodes sont concurrencées par celui-ci qui, sur câble, atteint à présent le Gigabit de débit, et ôtent ainsi toutes
chances aux solutions sur f ibre optique de FDDI.
Par ailleurs, la nouvelle norme FDDI-II semble déjà être considéré comme " mort-né ". Il apparaît que les abandons de Token
Ring et FDDI soient plus liés à des erreurs de stratégie commerciale de la part d'IBM qui n'a pas été capable d'étendre son
système de jeton. Et ce comme le montre par exemple le 100VG AnyLAN (également soutenu par IBM), sans doute le meilleur
protocole du monde pour les réseaux locaux, mais qui est lui aussi voué à un échec et abandon certains.
12.7 Conclusion
Après près de trois semaines de recherches approfondies sur les interfaces FDDI et Token Ring adaptées par IBM pour ATM,
ce n'est que maintenant que nous commençons à prendre du recul sur ce sujet.
Il est clair que de nombreux protocoles ont été mises au point, dans dif f érentes versions plus ou moins stables.
Mais visiblement, mettre au point de tels systèmes ne suffit pas. En ef f et, il semble évident qu'IBM est parm i les leaders au
niveau des compétences techniques (même si personne n'a su répondre à nos questions ; -) ). Cependant, cela s'avère inutile
si ces systèmes ne sont pas commercialisés à leur juste valeur.

13 Faire un plan d'adressage IP


13.1 Pourquoi faut-il choisir des adresses IP spécifiques pour un réseau interne?
Sur Internet, on repère les dif f érents ordinateurs connectés grâce à une adresse IP (voir section " Comment ça marche").
Cependant, chaque adresse IP sur Internet est unique et représente un et un seul ordinateur. Sinon, comment pourrait -on
savoir de qui il s'agit? On ne peut par conséquent pas utiliser n'importe quel adresse IP pour aller surf er.
Cependant, il existe des adresses IP qui ne marche pas sur Internet, c'es t à dire que les appareils de relais ref usent de
transporter les trames si elles contiennent une de ces adresses interndites sur Internet (typiquement les routeurs, voir la
section "Acheminement des données"). On qualifie ces adresses de non-routables et ce sont ces adresses qui permettent
d'adresser un réseau interne.
13.2 Si ces adresses ne marchent pas sur Internet, on ne pourra plus surfer!
En f ait, ces adresses présentent des avantages non négligeables. En effet, en n'étant pas routables sur Internet, ces adresses
permettent d'éviter à quelqu'un qui est sur Internet d'accéder aux machines étant à l'intérieur de l'entreprise : c'est un sécurité
contre les éventuels "hackers"... Si vous ne pouvez pas accéder à l'extérieur di rectement, il ne peut pas accéder à votre
ordinateur.
L'accès à Internet, dans ce cas, se f ait aussi de f açon transparente pour l'utilisateur. Losque vous essayerez d'aller sur
Internet, le routeur ou le serveur (comme un provider) vous donne une autre ad resse IP qui, elle, est routée par Internet. En
quelque sorte, il sert de relais entre vous et le monde extérieur, et donc il vous protège sans que vous vous rendiez compte de
rien!
Comment ça marche ? 37/120
Sur un routeur, on appelle ça faire de la "translation d'adresse". C'est à dire que chaque f ois que vous essayer d'atteindre
Internet, il remplace votre véritable adresse IP à l'intérieur de l'entreprise par une autre adresse IP qui marche sur Intern et.
Dans le cas d'un serveur, on peut aussi faire de la translation d'adresse, mais la plupart du temps, on distribue directement
une nouvelle adresse grâce au protocole DHCP (voir "Comment ça marche").
13.3 Quels sont les adresses non-routables?
Dans le cas d'un réseau de petite taille, les adresses no n routables sont celles qui sont du type 192.168.x.y.
Elles appartiennent à la classe C (voir "les modes de transmission").
13.4 Comment organiser les adresses dans l'entreprise?
A partir d'un certain nombre d'ordinateur (une vingtaine, par exemple), on va séparer le réseau interne en plusieurs sous -
réseaux.
Typiquement, on va f aire un réseau particulier pour le personnel de l'administration, un autre pour la partie "recherche et
développement", un autre pour la partie production, etc...
Ces dif f érentes catégories seront bien sûr dépendante de l'architecture physique du réseau : chaque brin du réseau va
constituer un sous-réseau... Le f ait de définir des catégories remets donc en cause l'architecture physique existante... Si cette
architecture est déjà f aite et dif f icile à changer, il suf f it de considérer que chaque brin du réseau sera un sous -réseau.
Sinon, il s'agit ici de définir des classes d'utilisateurs qui sont souvent amenés à discuter entre eux où qui appartiennent à une
même catégorie et qui sont physiquement près les uns des autres. Dans une école, par exemple, on déf inirait les sous -
réseaux "élèves", "prof esseurs" et "administration"...
Le f ait que deux personnes ne soient pas sur le même sous-réseau ne les empêche pas de discuter, mais permet d'éviter que
trop de trames n'arrivent sur tous les câbles du réseau : le f ait que les élèves passent beaucoup de temps sur Internet
n'empêche pas les professeurs de travailler... Bien sûr, il existe des techniques pour empêcher les personnes d'un réseau de
passer sur un autre réseau : on admettra que le réseau "professeurs" sera de préférence coupé du réseau "élèves" pour éviter
qu'un hacker en herbe ne voit les sujet d'examen avant les autres...
Il f aut donc définir des catégories d'utilisateurs : dans le cas où il y a plusieurs salles, on peut par exemple constituer un
sous-réseau pour chaque salle. Notez bien que ce sont les machines qui auront une adresse et pas les utilisateurs, les
ordinateurs utilisés par plusieurs catégories d'utilisateurs pourront par exemple être mise sur un sous -réseau "libre service".
13.5 Quel adresse doit-on donner à chacun?
Une f ois que vous avez défini les différents sous-réseaux, vous aller les numéroter par x de 1 à 255... Chaque machine sur le
sous-réseau sera numérotée par y de 1 à 254, et le tour est joué! Vous n'avez plus qu'à attribuer l'adresse 192.168.x.y... avec
un masque de sous-réseau de 255.255.255.0 (le masque permet de dire que toutes les machines ayant le même numéro x
apppartiennent au même réseau).

14 Comment relier deux ordinateurs entre eux ? Les paramètres Réseaux de Windows
Vous avez deux ordinateurs chez vous et vous voulez les relier entre eux pour échanger des fichiers, partager une connexion
internet ou que sais-je encore... Voici les dif f érentes solutions, mais qui ne permettent pas f orcement de tout f aire. Les
solutions exposées sont explicités pour les systèmes d'exploitation Windows. Si quelqu'un sait comment les mettre en oeuvre
sous Linux, je serais ravi qu'il nous le dise. Je completerai cet article au f ur et à mesure des questions qui me sont posées.
14.1 Le câble série et le câble parallèle
Avec un câble série NullModem (disponible à 25 f rancs dans n'importe quel supermarché) ou un câble parallèle, vous pouvez
échanger des f ichiers d'un ordinateur à l'autre. Pour cela, reliez vos deux ordinateur avec le câble par l'intermédiaire des ports
séries (COM). Ensuite, vous devez installer un composant Windows 98. Vous pouvez l'ajouter par l'intermédiaire de
"Ajout/suppression de programmes", "Composants Windows". Dans la section "Communications", choisissez "Connexion
directe par câble". Il se peut aussi qu'il faille aller dans le "Panneau de conf iguration" et selectionner "Modem", pour ajou ter
celui qui correspond à la connexion NullModem. Choisissez "Ne pas détecter" et "Types de modem standards". Vous avez
alors le choix entre câble série et parallèle.
14.2 Le modem
Le modem permet uniquement d'acceder par la ligne téléphonique classique (RTC) à un autre ordinateur muni d'un modem.
La solution du modem est très peu utilisée pour relier deux PC. Elle ne permet pas de faire grand chose. Cela dit, vous pouvez
vous connecter à une autre machine par ce moyen pour discuter en direct ou échanger des f ichiers. Pour cela, il vous suf f it,
sur le premier ordinateur et sur le deuxième, d'ouvrir l'HyperTerminal dans Programmes/Accesssoires/Communications. Un
des deux ordinateurs doit appeler l'autre. Cela nécessite que les deux PC aient un modem et une ligne téléphonique. Cela dit,
cette solution ne ressemblera pas à un accès TCP/IP comme Internet.
14.3 Les cartes réseaux
C'est le meilleur moyen de connecter les machines entre elles, mais c'est aussi le plus cher si vous n'avez pas le matériel
adéquat. Il vous f aut 2 cartes réseaux (Cartes Ethernet 10 Mbps : 150 f rancs) et un câble RJ45 croisé pour relier les deux PC.
Un câble RJ45 classique ne pourra pas fonctionner. Dans ce cas, si TCP/IP et Netbeui sont installés, vous avez accès aux
voisinnages réseaux des deux côtés et vous pouvez accéder aux f ichiers d'un côté et de l'autre. Seule cette solution permet
de partager un accès à Internet par l'intermédiaire d'un proxy ou d'un logiciel spécialisé qui sera installé sur l'ordinateur ayant
l'accès à Internet. Ces protocoles sont installés par défaut sur Windows 95 et 98, mais doivent être installés pour Windows NT.
Vous devez ensuite conf igurer les paramètres Réseaux de l'ordinateur, et notamment les adresses IP. Les adresses IP
doivent impérativement appartenir au même réseau. Généralement, on choisit les adresses 192.168.0.1 et 192.168.0.2 avec
un masque de 255.255.255.0. Netbios ne demande aucun paramétrage particulier, mais les noms des deux ordinateurs
doivent être dif f érents.
Comment ça marche ? 38/120
Cela dit, il se peut que le réseau ne f onctionne pas. Pour vous en assurer, vérifiez que les cartes réseaux fonctionnent. Ouvez
une f enêtre de commandes DOS, et tapez "ping 192.168.0.1" et "ping 192.168.0.2" sur chacun des deux ordinateurs. Si les
deux commandes fonctionnent (ie il ne répond pas que le délai est dépassé), cela signifie que tout marche. Si seule l'adresse
IP de l'ordinateur ou l'on est fonctionne des deux côtés, cela veut dire que les cartes réseaux fonctionnent et que le problè me
vient du câble. Cela permet de f aire un premier disgnostic.
14.4 Pour trois ordinateurs et plus
A partir de trois ordinateurs, il va f alloir utilisé un hub, avec des
cartes réseaux et des câbles RJ45 classiques (ie non croisés).
La manipulation est la même, il suf f it d'installer à chaque f ois
Netbeui et TCP/IP avec une adresse IP différente. La commande
DOS "ping @IP" permet de vérif ier que les liens TCP/IP
f onctionnent.
Le schéma ci-contre illustre ces possiblités.

14.5 Les paramètres réseaux sous Windows NT (et Windows 95/98)


Selectionnez "Réseau" dans le panneau de configuration. Nous allons voir les différents paramètres. Pour Windows 95 et 98,
les paramètres sont sensiblement les mêmes mais ne sont pas présentés de la même f açon.
Nom d'ordinateur : c'est le nom qui sera repris par Netbios, donc celui que vous verrez apparaitre dans votre voisinnage
réseau.
Domaine : dans le cadre d'un réseau important, il y a un serveur qui gère les dif f érents utilisateurs, etc... Dans ce cas, les
ordinateurs sont regroupés dans un domaine. Pour un réseau de quelques machines chez vous, il suffit de prendre un groupe
de travail.
Services : c'est onglet permet de voir les services
of f erts par le réseau Microsof t. Il peut s'agir d'un
acccèss de réseaux distants, par exemple. Vous ne
serez sans doute pas amené à le modif ier chez vous.
Protocoles : c'est l'onglet que vous aller devoir
connaitre. On y trouve 3 protocoles principaux que l'on
peut installer. Netbeui permet aux ordinateurs Windows
d'avoir accès au voisinnage réseau. TCP/IP permet
d'utiliser les applications IP et notamment Internet. IPX
est utilisé par certains jeux en réseau.
Cartes : Ce sont les différentes cartes réseaux installés
sur votre PC. Vous pouvez avoir plusieurs cartes
réseaux, ce qui peut permettre à votre ordinateur de
servir de routeur. Chaque carte à sa propre
conf iguration pour le protocole TCP/IP.
Liaison : permet d'activer ou de désactiver les liaisons.
Cet onglet ne devrait pas vous servir.
Comment ça marche ? 39/120

Les paramètres TCP/IP de l'onglet "Protocoles" sont ceux


que vous allez être amenés à modif ier. Ces paramètres
sont réglables pour chacune des cartes réseaux lorsque
c'est proposé.
Adresse IP : spécif iez l'adresse IP de la machine et le
masque de sous-réseau. La passerelle par déf aut sera
typiquement l'adresse de la machine ayant l'accès
Internet. Cela dit, il peut ne pas y avoir de passerelle si
vous travaillez avec un hub ou s'il n'y a pas de connexion
Internet.
DNS : le nom d'hôte sera le même que celui de la
machine. Laissez le domaine sans nom si vous êtes chez
vous. Ajoutez les adresses DNS que vous a f ourni votre
f ournisseur d'accès dans le bon ordre.
Adresse WINS : Si vous appartenez à un domaine, il se
peut qu'il y ait un serveur de nom WINS (Windows Name
Server). Chez vous, inutile de préciser d'adresse sauf si
elle est f ounie par votre f ournisseur d'accès. La résolution
DNS pour Windows n'est pas indispensable et le f ichier
lmhosts n'a d'intérêt que si vous l'avez conf iguré au
préalable. Il permet d'assicié directement sur votre
machine des noms et des adresses IP.
Routage : activez cette options si votre ordinateur sert de
routeur (ie vous avez deux cartes réseaux avec des
adresses de sous-réseaux dif f érentes).

14.6 Les paramètres "Accès réseau à


distance" de Windows 98
Pour chacune de vos connexions disponibles dans la partie "Accès réseau à distance", vous pouvez changer certains
paramètres en choisissant "Propriétés" après avoir cliqué avec le bouton droit de la souris. Je ne vous engage pas à tout
modif ier, sauf si vous savez ce que vous f aîtes... : -)

Quatre onglets vous sont présentés. Dans l'onglet


"Général", vous trouverez le numéro de téléphone appelé
et le modem utilisé pour cela. C'est l'onglet "Types de
serveur" qui va nous intéresser ici.
La plupart du temps, c'est une connexion PPP qui est
utilisée, vers un serveur NT. Regardez la section
Protocoles réseaux pour avoir plus d'inf ormations sur
cette laison. Il peut s'agir d'un autre type de serveur
comme un serveur Unix ou un serveur Novell.
Les options avancées parlent d'elles-mêmes. On peut
choisir différents paramètres qui permettent de sécuriser
la liaison avec le f ournisseur d'accès. Ces paramètres
jouent uniquement sur les informations qui passent sur la
ligne téléphonique entre votre modem et votre f ournisseur
d'accès, et non celle qui est utilisée sur Internet.
Ensuite, on peut choisir les protocoles qui sont activés. Ici,
ils le sont tous, mais seul TCP/IP sera utilisé par la suite
sur Internet.
Dans les paramètres avancés de TCP/IP, vous obtenez
les mêmes paramètres que ceux explicités plus haut pour
Windows NT : l'adresse IP, les adresses DNS et WINS.
On peut également choisir de compresser l'en-tête IP et
d'utiliser d'envoyer toutes nos requêtes IP vers le serveur
distant (passerelle par déf aut).
Comment ça marche ? 40/120

15 Quelques protocoles multicast


Voici quelques protocoles multicast et la raison pour laquelle je les présente :
- MTP parce qu’il est le premier à être apparu et donc la réf érence des autres protocoles,
- IGMP parce que c'est le plus connu qui permet d’utiliser le multicast sur les réseaux distants (comme Internet),
- LGMP parce que c'est le seul dont j'ai trouvé les sources sur Internet,
- MFTP parce que c’est celui que j'ai eu l'occasion d'implémenter, donc celui que je connais le mieux.
Mis à part MFTP, les autres ne sont décrits que succinctement.
Je donne également quelques adresses pour rechercher des informations supplémentaires sur le multicast : un comparatif des
dif f érents protocoles existants et une page de liens, le tout en anglais...

15.1 MTP (Multicast Transfert Protocol)


MTP est le premier protocole multicast qui soit apparu. Les autres protocoles multicast s’appuient en grande partie sur celui -ci.
Il est décrit dans la RFC 1301. Les RFC (Request For Comment) sont des documents contenant toutes les spécif ications des
protocoles réseaux.
Ce protocole n’a pas pour vocation d’être rapide et d’obtenir des taux de transfert exceptionnels. Il est surtout fait pour ne pas
saturer le réseau.
Dans MTP, il y a un ordinateur maître qui joue le rôle de chef-d’orchestre. Les autres membres peuvent être tour à tour ceux
qui envoient les données et ceux qui les reçoivent. Une personne peut devenir membre à tout moment si sa requête est
acceptée par l’ordinateur maître.
Le maître donne la parole à ceux qui la demandent. Il vérif ie que toutes les données d’un transf ert aient été envoyées et
reçues, puis autorise le membre suivant qui le demande à envoyer ses données. Les clients qui ont mal reçu les données f ont
une requête auprès de l’ordinateur maître.
On déf init un intervalle de temps appelé « battement de cœur ». C’est un intervalle de temps en millisecondes qui permet au
client de se repérer dans la réception des données. Un battement de cœur intervient toutes les 160 - 200 ms, soit toutes les 17
- 20 trames de données (la RFC prévoit une trame toutes les 8.4 ms).
Ce protocole n’est pas d’une grande ef f icacité, mais comme je le disais au début du paragraphe, les principes de
f onctionnement qu’il propose ont été repris pour développer de nouveaux protocoles plus perf ormants.

15.2 IGMP (Internet Group Management Protocol)


Ce protocole est défini dans la RFC 1112 (Host Extensions for IP Multicasting). Cette RFC décrit les spécifications qu’un cli ent
doit suivre pour pouvoir devenir membre d’un groupe multicast sur un réseau IP.
Il spécif ie non seulement la marche à suivre pour rejoindre ou quitter un groupe multicast, mais également comment se
déclarer membre multicast auprès du routeur le plus proche pour que les trames multicast parviennent jusqu’à lui.
Tous les routeurs ne supportent pas le multicast, ceux qui le supportent sont appelés routeurs multicast et sont conformes aux
spécif ications IGMP.
Il n’est pas obligatoire de supporter IGMP et les spécifications de la RFC 1112 pour envoyer des datagrammes en multicast, ni
pour les recevoir dans un réseau local. Cependant, s'il y a un routeur entre la source et la destination, les données ne pourront
arriver que si le client et le routeur supportent IGMP.
Pour un travail en local, il n’y a donc aucune obligation d’implémenter ce protocole. Cependa nt, pour des utilisations
ultérieures du multicast, ce serait un plus si les clients supportaient IGMP : il n’y aurait dès lors aucune restriction à l’ utilisation
du multicast sur les réseaux distants et notamment sur Internet.
Il n’y a que deux types de messages IGMP concernant les clients. Le premier est la recherche des membres multicast (« Host
Membership Query »), qui est envoyée par le routeur à l’adresse 224.0.0.1 (tous les clients multicast) avec un TTL de 1. Le
deuxième est la réponse du membre multicast (« Host Membership Report ») au routeur en lui spécif iant le ou les groupes
(adresses) multicast dont il est membre.
Lorsque cette phase est achevée, les membres multicast peuvent recevoir les trames multicast venant de réseaux distants et
ayant un TTL (Time To Live) suf f isamment important pour arriver jusqu’à eux.
15.3 LGMP (Local Group Multicast Protocol)
LGMP est le seul protocole implémenté que j'ai trouvé. C’est également un protocole qui f ait beaucoup parler de lui dans le
domaine du multicast.
En ef f et, au cours d’une recherche sur les protocoles multicast, celui-ci était décrit comme conçu pour les réseaux locaux et
destiné aux transfert de fichiers et aux flux de données. Autant dire qu’il correspondait exactement à ce que nous cherchions...
Je vous en donne l'adresse si vous êtes intéressé. Celui qui s'occupe de ce développement, Markus Hoff man, est un homme
remarquable qui vous inf ormera mieux que moi à son sujet.
Local Group Multicast Protocol - Markus Hof f man - http://www.tascnets.com/mist/doc/LGMP.html
15.4 MFTP (Multicast File Transfert Protocol)
MFTP n’est pas décrit dans une RFC classique, mais est décrit dans un document disponible sur Internet (internet -draf t) qui
donne donc l’état d’avancement d’une recherche. MFTP est soumis à la propriété intellectuelle et appartient à Starburst
Communications Corporation.
Adresses privées et adresses publiques
MFTP spécif ie deux types d’adresse, les adresses privées et publiques.
Comment ça marche ? 41/120
Les serveurs annoncent les fichiers qu’ils vont envoyer sur une adresse multicast publique. Ces annonces sont des trames
contenant entre autres les informations suivantes : le nom du fichier, l’adresse multicast où le fichier va être envoyée et l a taille
des données.
Tous les clients écoutent les annonces sur cette adresse. Si un client est intéressé par les données qui vont être envoyées, il
f ait une requête auprès du serveur pour être autorisé à rejoindre l’adresse multicast privée où les données vont être envoyées.
De cette f açon, le serveur sait en permanence qui reçoit quoi. Cela permet en quelque sorte au serveur de f aire des
statistiques sur les clients. Il a le droit de refuser un client s'il estime qu’il n’a pas les ressources nécessaires pour gé rer tous
les clients ou s'il est clairement spécif ié que tel client n’a pas le droit de recevoir ces données.
Lorsque le serveur a f ini la phase d’annonce, lui et les clients qu’il a acceptés se retrouvent sur une autre adresse, l’adre sse
privée spécifiée dans l’annonce. C’est à cette adresse que le serveur envoie le fichier en suivant un algorithme qui sera décrit
ultérieurement.
Ce principe d’annonces est très intéressant non seulement pour le transf ert de f ichier, mais également pour les f lux
multimédia. On peut imaginer qu’un même serveur puisse envoyer plusieurs flux audio ou vidéo. Il f ait l’annonce sur l’adresse
en spécifiant le f ormat des données (par exemple, données d’un f ichier wav au f ormat 44100 kHz, 16 bits, Stéréo). Ainsi, le
client peut rejoindre quand il le veut le f lux multimédia et sait le f ormat des données qu’il reçoit. Le serveur n’a plus qu ‘à
envoyer des données « brut » sur l’adresse multicast privée.
Ce principe serait le même qu’une radio avec une f réquence réservée où
circuleraient en permanence les inf ormations « France Inf o : 104.5, RFM :
100.1, etc... ». C’est ce qu’on cherche à faire dans le cadre de l’application «
f lux multimédia ».
Envoi d’un fichier sur une adresse privée
Le f ichier est divisé en blocs qui sont eux même div isés en DTU (Data
Transf ert Unit). Le nombre de DTU par bloc et le nombre de blocs par fichier
n’est pas explicitement donné dans les spécif ications.
L’algorithme suivi par le serveur pour envoyer le f ichier à l’adresse privée
est le suivant. Il est divisé en plusieurs temps, chaque temps est appelé «
Pass ».
Pass 1 : Tous les DTU sont envoyés dans l’ordre, soit (Bloc 1, DTU 1), puis
(Bloc 1, DTU 2), jusqu’au dernier DTU du dernier bloc.
A la f in de chaque bloc, le serveur demande un rapport de réception aux clients. Ceux qui ont bien reçu les données ne
répondent pas à cette requête. Ceux qui ont mal reçu ou pas reçu un DTU envoient un message au serveur en spécif iant le
numéro de bloc et le numéro de DTU qu’il doit envoyer à nouveau.
Quand une trame est perdue pour un client, il y a de fortes chances qu’il ne soit pas le seul à l’avoir mal reçue. Pour éviter que
tous les clients n’envoient la même réponse de trame perdue au serveur, les clients s’écoutent les uns les autres et seules l es
trames perdues que personne n’a signalées sont redemandées au serveur.
Cela évite au serveur d’être débordé par les réponses des clients.
Pendant ce temps, le serveur continue d’envoyer la suite du fichier sans s’occuper des réponses des clients. Il les récupère et
les garde dans un coin en attendant la f in du « Pass 1 ».
Lorsqu’un client a reçu tout le f ichier sans faute, il envoie au serveur un message « Done » et le serveur sait que ce client à
tout reçu correctement.
A la f in du Pass 1, l’ensemble du fichier a été envoyé. Le serveur regarde alors les réponses des clients. S’il a des messages
« Done » de tous les clients, ceux-ci ont tout reçu correctement. Sinon, commence le « Pass 2 ».
Pass 2 : Le serveur regarde les trames manquantes rapportées par les clients et les réexpédie. A la f in ou au cours de la
retransmission des trames manquantes, qui gardent leur numéro de bloc et de DTU d’origine, il demande à nouveau aux
clients un rapport de réception. S’il n’obtient que des réponses « Done », cela signif ie que le transf ert est terminé, sinon, il
examine les réponses qui lui reviennent, commence le Pass 3, etc...
La transmission est terminée lorsque tous les clients ont répondu « Done » ou au bout d’un temps déf ini sans réponse de la
part des clients.
Format des trames
MFTP est placé directement au-dessus de UDP, et est séparé en trois parties :
- L’en-tête du message
- Les paramètres du message
- Les données (s'il y en a)
En-tête du message

Elle a une taille f ixe de 12 octets et est présente dans toutes les trames MFTP.

Version du protocole : la version étudiée ici est la version 1.


Type de message : il en existe 16 qui sont définis dans les spécifications, je ne citerai que ceux dont on a parlé : le messa ge
de données (« Data Transf er » 0x0005), le message d’annonce (« Announce » 0x0004), la demande du rapport de réception
(« Status request » 0x0006) et le message de f in de transf ert (« Done » 0x000B).
Longueur du message : c’est la longueur du message (y compris l’en-tête MFTP) en octets.
Comment ça marche ? 42/120
Checksum : normalement, il devrait être identique à celui de UDP, mais il est spécifié que lorsque les messages sont envoyés
sur UDP, il est laissé à zéro et n’est pas utilisé. Il est inutile de f aire deux f ois le même calcul.
Identif iant de transmission : c’est un nombre unique qui identifie la transmission en cours et qui restera le même pendant toute
la durée du transf ert. Pour chaque f ichier, ce nombre doit changer.
Les paramètres du message et les données
Les paramètres sont précisés pour chaque message. Nous verrons ici, à titre d’exemple, les paramètres du message de
transmission de données (DTU).
Pour les DTU, il y a 4 paramètres :
- Numéro de Pass (Pass Number)
- Numéro de Bloc (Block Number)
- Numéro de DTU (DTU Number)
- Nombre d’octets du f ichier déjà envoyés (Product Data)
Chaque paramètre est codé au moins sur 8 octets et est codé sur un nombre d’octets multiple de 4.
Les 2 premiers octets donnent le type de paramètre, les deux octets suivants donnent sa longueur en octets :
- Numéro de Pass : type 0x0117, longueur 4 octets.
- Numéro de Bloc : type 0x0103, longueur 4 octets.
- Numéro de DTU : type 0x010A, longueur 4 octets.
- Nombre d’octets envoyés : type 0x0119, longueur variable (généralement 8 octets).
Les données suivent directement les p aramètres. Ce qui donne par exemple, pour les messages de transf ert de données
(DTU), le message suivant :

On pose ce message sur une trame UDP et on l’envoie. Le poste client récupère le message et le découpe de la même f açon
pour retrouver les données et les paramètres.

16 Les réseaux locaux


16.1 . Connaissances préalables
Le but de ce cours est de présenter les dif f érents réseaux locaux normalisés, leurs caractéristiques, avantages et
inconvénients.
Cette présentation rapide s’appuie sur quelques connaiss ances :
- Modèle OSI BRN et ses 7 couches
- Aperçu de TCP/IP
- Topologie physique et logique des réseaux
- Supports de transmission des réseaux
- Codage et multiplexage du signal
- Equipements de connexion et d’interconnexion (Répéteurs et HUB, Pont et Spanning Tree, B-Routeur et Routeur,
Passerelle)
16.2 . Introduction
16.2.1 Objectifs des réseaux locaux
Un réseau est un dispositif qui permet d’interconnecter différents matériels informatiques. Les réseaux Locaux appelés aussi
LAN (Local Area Network) dif f èrent des MAN (Metropolitan Area Network) et des WAN (World Area Network) de par leurs
objectif s et caractéristiques.
Bien que pour les LAN ce soit la technique qui ait précédé les besoins (au départ on ne savait pas que faire d’une telle vite sse
de transmission et on ne pensait vraiment pas pouvoir un jour les saturer) l’objectif était clair dès le départ. En ef f et le but
premier d’un RL est économique : il permet de partager les ressources matérielles et logicielles entre les dif f érents postes et
Comment ça marche ? 43/120
utilisateurs.
L’avantage du partage des ressources matérielles est évident, les besoins en imprimantes, disques et même processeurs sont
amoindris. Celui des ressources logicielles est moins flagrant sans être pour autant négligeable : on peut partager un f ichier de
conf iguration et ainsi gagner du temps d’administration, on peut aussi partager les logiciels af in de ne pas acheter autant d e
licences que de postes.
Les autres objectifs, communiquer à hauts débits, répartir les traitements, connecter tout le monde, e tc. découlent de cet
objectif principal : le partage pour l’économie. L’amélioration du rendement est en f ait une conséquence de cet objectif .
Un LAN se distingue donc d’un WAN (ex : Internet) par son objectif radicalement dif f érent.
16.2.2 Caractéristiques des réseaux locaux
Les caractéristiques suivantes sont communes à tous les réseaux locaux et permettent d’atteindre les objectif s f ixés.
Liaison multipoint symétrique
Dans les RL on parle de liaison multipoint symétrique : multipoint est en opposition avec les liaisons point à point qui
permettent de relier uniquement deux équipements comme deux ponts distants reliant deux RL d’une entreprise qui possède
plusieurs bâtiments par exemple. Multipoint signifie qu’il y a plusieurs entrées sur la liaison. Symétri que signif ie que l’on veut
que tous les équipements reliés puissent discuter directement entre eux et non comme dans les réseaux où il y a un poste
principal dit contrôleur et où un poste désirant communiquer avec un autre s’adresse au contrôleur qui passe le message au
destinataire. Cette notion de symétrie implique donc d’établir des méthodes d’accès à la parole pour que chacun puisse parler.
Distance limitée
Les RL, pour obtenir des débits élevés, limitent leurs tailles de quelques dizaines de mètres à une dizaine de kilomètres.
L’objectif étant de partager des équipements, cette distance est suf f isante.
Haut débit global
Les WAN ont des débits relativement bas (Numéris de France Télécom : 64 Kbps), ils n’excèdent pas 2 Mbps. Par contre un
LAN s’ef f orce d’obtenir des débits élevés, par exemple Ethernet : de 10 Mbps à 1 Gbps.
Remarque : ATM, qui est une technologie naissante devrait amener du 155 Mbps sur un WAN.
Faible délais
Le partage des fichiers nécessite des accès aux disques distants rapides s inon l’utilisateur transfère sur son disque le f ichier,
le modif ie et le renvoie sur le disque partagé. Ceci pose un problème de cohérence lorsque plusieurs utilisateurs veulent
accéder à un f ichier. Avec un LAN, les temps d’accès au disque sont proches des temps d’accès à un disque local.
Faible taux d’erreur
Taux d’erreur d’un bus interne de PC : 10 e–15
Taux d’erreur d’un LA N : minimum 10 e–9
souvent 10 e–12
Le taux d’erreur correspond au nombre de bits qui s’inversent sur le nombre de bits transmis. Un taux de 10 –9 signifie qu’1 bit
sur un milliard s’inverse. Ce chif f re paraît impressionnant mais sur Ethernet 10 Mbps cela correspond à plus d’une erreur
toutes les 2 minutes.
Pour obtenir de hauts débits on ne peut pas se permettre d’émettre et de demander un accusé de réception, il f aut émettre en
continu en supposant que la réception est bonne. D’où l’importance d’avoir des taux d’erreur aux alentours de 10 -12 qui
correspondent à moins d’une erreur toutes les 27h.
Diffusion
Lorsqu’un poste d’un RL émet tous les autres l’entendent. Si un poste entend un message qui n’est pas pour lui, il l’ignore.
Privé
Les RL doivent être administrés par leurs propriétaires : on ne passe pas par un opérateur.
Grand nombre d’utilisateurs
Les RL sont évidemment conçus pour accueillir un grand nombre de postes.
16.2.3 Les réseaux normalisés
Les organismes
Ce sont eux qui créent les normes qui permettent la compatibilité des matériels inf ormatiques.
- AFNOR : Association Française pour la NORmalisation
- ECMA : European Computer Manuf acturer Association (Une trentaine de f abricants de matériel inf ormatique)
- ANSI : American National Standard Institute (Equivalent américain de l’AFNOR)
- IEEE : Institute of Electrical and Electronics Engineers (Participe à l’ANSI, il est à l’origine des normes des RL)
- EIA : Electronic Industries Association (Participe à l’ANSI, il est à l’origine des RS 232,…)
- ISO : International Standard Organisation (Chapeaute les organisations nationales)
- UIT : Union Internationale des Communications
- CCITT : Chapeaute l’ensemble
Les normes IEEE
802.3 Bus logique sur un bus ou une étoile physique, c’est l’équivalent d’Ethernet
802.6 Bus logique sur un anneau physique
802.5 Anneau logique sur un anneau ou sur une étoile physique (Tok en Ring et FDDI)
802.4 Anneau logique sur un bus physique (Token Bus utilisé pour les RL industriels)
802.9 Réseaux numériques
802.11 Réseaux sans f il
Remarque : 802.1 décrit le contexte général
802.2 décrit la couche LLC (partie supérieure de la couc he 2 de l’OSI BRN) commune aux dif f érents RL
Comment ça marche ? 44/120
16.3 . 802.3 et Ethernet
16.3.1 Introduction
Historiquement, c’est le premier réseau local et c’est aussi le réseau le plus utilisé à l’heure actuelle ( ? 85% des réseaux
locaux ). Ethernet V1 a été inventé par Rank Xéro x vers le milieu des années 70, à cette époque la micro n’existait pas encore
et les ordinateurs communiquaient à 64 Kbps. Ethernet, avec son Mbps était donc vraiment un outil de luxe qu’on ne pensait
jamais saturer.
Son principe est basé sur la diffusion des messages sur un bus logique qui peut être un bus ou une étoile physique. C’est à
dire une station qui parle, envoie une trame contenant le message, sa propre adresse et l’adresse du destinataire sur le bus.
Toutes les stations voient passer cette trame mais seule celle qui se reconnaît comme étant le destinataire la lit.
Par la suite IEEE a normalisé ce réseau et l’a nommé 802.3. Le nom Ethernet est une marque déposée par Digital, Rank
Xérox et Intel. Nous trouverons donc deux types de réseaux compatibles et extrêmement proches : 802.3 et Ethernet V2 (V1
incompatible avec 802.3 a été abandonné en 82).
Avec ce type de réseaux on peut relier des dizaines, voir des centaines de stations avec un débit de 1,10 ou 100 Mbps et
même aujourd’hui de 1 Gbps.
Remarque : au début des années 80 une carte Ethernet coûtait 10 000 F d’époque, aujourd’hui une carte coûte environ 100 F.
16.3.2 Notation IEEE 802.3
Les réseaux Ethernet se nomment 10Base5, 10BaseT, 10Broad36,etc. Ce sont des notations IEEE, elles dépendent du d ébit
utilisé, du mode de transmission et du câblage utilisé.
Les débits possibles sont 1,10,100 Mbps et 1 Gbps.
Les modes de transmission sont :
- Bande de base (BaseBand), transmission numérique
- Large Bande (BroadBand), transmission analogique
Les cables utilisés sont :
- Gros coax
- coax f in (cheapernet ou ethernet f in)
- UTP (unshielded twisted pair) 3 et 5, c’est à dire paire torsadée téléphonique et paire torsadée de meilleur qualité
- Fibre Optique MMF (Multi Mode Fiber) et SMF (Single Mode Fiber)
La distance maximale entre deux répéteurs (IRL : Inter Repeater Link) dépend de l’atténuation du signal et donc de la qualité
du support.
Voici les réseaux que l’on trouve :
- 10 Base 5 : 10 Mbps sur un gros coax avec 500 m max
- 10 Base 2 : 10 Mbps sur un coax f in avec 185 m max
- 1 Base 5 : 1 Mbps sur UTP 3 avec 250 m max
- 10 Base T : 1 Mbps sur UTP 3 avec 100 m max
- 10 Broad 36 :10 Mbps sur un gros coax avec 1800 m max
- 10 Base F : 10 Mbps sur f ibre optique (MMF) avec 2000 m max
- 100 Base TX : 100 Mbps sur 2 paires UTP 5 avec 100 m max
- 100 Base FX : 100 Mbps sur 2 f ibres optiques (MMF) avec 1000 m max
- 100 Base T4 : 100 Mbps sur 4 paires UTP 3 avec 100 m max
- 1000 Base SX : 1 Gbps sur f ibre optique (MMF) avec 500 m max
- 1000 Base LX : 1 Gbps sur f ibre optique (SMF) avec 3000 m max
- 1000 Base CX : 1 Gbps sur 4 paires UTP5 avec 25 m max
Un RL peut bien sûr mélanger plusieurs de ces réseaux. On trouve souvent par exemple du 10Base5 qui relie plusieurs
10BaseT. Mais dans tous les cas, il ne f aut pas que les deux stations les plus éloignées doivent traverser plus de 5 segments
dont au plus 3 en gros coax.
16.3.3 La méthode d’accès à la parole : CSMA/CD
On a vu que le principe d’Ethernet est que lorsqu’une station émet, où qu’elle soit tout le monde l’entend. Ce principe permet
de ne pas avoir à ef fectuer de routage : l’information est diffusée partout. L’inconvénient majeur est qu’étant donné que sur un
support un seul signal peut se propager à la f ois, il f aut que les stations parlent les unes après les autres.
Dans 802.3 et Ethernet la méthode choisie est CSMA (Carrier Sens Method Acces). Son principe est celui de la politesse : on
ne parle que quand personne ne parle.
Lorsque la station veut émettre, elle écoute. Si personne d’autre n’émet, elle emet. Si une autre station émet, elle attend.
Ensuite soit elle réessaye plus tard (CSMA non persistant, la méthode n’est plus utilisée), soit elle écoute et lorsque c’est libre
elle émet (CSMA persistant).
Cette méthode a un inconvénient : lorsque deux stations attendent, elles vont émettre en même temps. Les deux signaux vont
se superposer et être incompréhensibles. On appelle cela une collision. Pour résoudre ce problème on va ef f ectuer une
détection des collisions (CD : Collisio n Detection). D’où le nom de CSMA/CD.
Pour reconnaître une collision l’émetteur écoute son echo, si il correspond à ce qu’il émet c’est bon, sinon c’est qu’il y a une
collision. Il émet alors un « JAM » pour avertir tout le monde qu’il y a eu une collision. Ensuite les stations qui voulaient parler
calculent un nombre aléatoire et se mettent en veille pendant un temps proportionnel à ce nombre. Et ainsi de suite jusqu’à c e
qu’elles puissent parler.
16.3.4 Limitations
Malgré la méthode de détection des collisions, certaines pourraient passer inaperçues. Par exemple si les stations A et B sont
éloignés sur le RL, A peut émettre une trame très courte, écouter son écho et penser que tout est bon. Cependant il est
possible que de l’autre coté B écoute, que la trame d e A ne soit pas encore arrivée et donc émette. Une collision va se
produire alors que A aura cru que tout s’était bien passé, sa trame serait perdue. Pour éviter cela, la norme impose une tail le
Comment ça marche ? 45/120
de trame minimum de 512 bits. Si le message n’est pas assez long, on rajoute des bits pour arriver à cette taille. Cependant
ce n’est pas suf f isant : si la taille du réseau n’est pas limitée, le problème peut toujours se produire.
On limite donc la taille du réseau en f onction du temps de retournement (Round Trip D elay) de la trame minimum et du débit.
C’est à dire en f onction du temps que mettent 512 bits à faire l’aller retour entre les deux points les plus éloignés du rése au,
puisqu’il faut pour détecter une collision qu’avant que la station ait fini d’émettre ses 512 bits le signal du premier bit soit arrivé
au bout et que si une station du bout a émis un bit à ce moment, il ait eu le temps d’arriver. Donc, en résumé, il f aut que l e
temps d’émission de 512 bits soit supérieur au temps d’un aller-retour du signal sur le réseau (Round Trip Delay).
Exemples :
En 10Base5
Temps d’émission de 512 bits à 10 Mbps = 512 / 107 = 51.2*10-6s
Le Round Trip Delay doit donc être inf érieur à 51.2*10-6s.
Sur un gros coax, le signal se propage à environ 6*107 m/s.
L’aller retour doit donc être inf érieur à 6*107 m/s * 51.2*10-6s, soit un peu plus de 3000m. Donc une distance maximum de
1500 m.
En 10Base2
Temps d’émission de 512 bits à 10 Mbps = 512 / 107 = 51.2*10-6s
Le Round Trip Delay doit donc être inf érieur à 51.2*10-6s.
Sur un coax f in, le signal se propage à environ 2*107 m/s.
L’aller retour doit donc être inf érieur à 2*107 m/s * 51.2*10-6s, soit un peu plus de 1000m. Donc une distance maximum de
500 m.
En 10BaseF
Temps d’émission de 512 bits à 10 Mbps = 512 / 107 = 51.2*10-6s
Le Round Trip Delay doit donc être inf érieur à 51.2*10-6s.
La vitesse de la lumière dans une f ibre optique est de 2*108 m/s.
L’aller retour doit donc être inf érieur à 2*108 m/s * 51.2*10-6s, soit un peu plus de 10000m. Donc une distance maximum de
5000 m.
Une autre limitation est imposée pour stabiliser les conditions électriques du support et pour réinitialiser les processus li és aux
couches 1 et 2. C’est le délai entre deux émissions de trame. Il est f ixé en bit time, qui signifie le temps d’émission d’un bit. Le
bit time sur un 10Base5 est de 0,1 micro seconde puisqu’en 1 seconde on émet 10 Mbits. Le délai étant fixé à 96 bits time, su r
10Base5 le délai inter trame est de 9.6 micro seconde, sur un 100BaseF de 0.96 micro seconde, …
16.3.5 Efficacité d’un réseau Ethernet
La méthode d’accès étant non déterministe (on ne peut prédire précisément le temps qu’une station attendra avant de parler),
ce réseau est inadapté aux applications temps réels.
Il f aut aussi remarquer qu’un réseau Ethernet ne sup porte pas la charge : sur un 10Base5 si le débit demandé par les stations
est inf érieur à 3Mbps, le réseau f onctionne bien et le débit effectif sera d’environ 3 Mbps. Par contre si le débit demandé e st
supérieur à 3 Mbps, le nombre de collisions va aller croissant et le réseau va saturer. Le débit effectif pourra alors avoisiner le
0 Mbps. Pour palier à ce problème, si le réseau sature trop souvent l’administrateur devra ajouter des ponts pour limiter les
domaines de collisions. Les perf ormances s’accroîtro nt encore plus si l’on utilise des switch qui limitent encore plus les
domaines de collision.
Ceci dit Ethernet est quand même un réseau performant, rapide, peu coûteux et facile à mettre en œuvre. C’est certainement
pour cela qu’il est utilisé dans la p lupart des RL.

16.3.6 Format de la trame Ethernet V2

Préambule : 1010101010….1010
SOF : 10101011
Type : à quelle service réseau est destiné le message (IP, Novell,…)
CRC : Calcul ef f ectué sur les bits de la trame pour vérif ier si la transmission s’est f aite sans erreur.
16.3.7 Format de la trame 802.3

Préambule : 1010101010….1010
SOF : 10101011
Long : longueur du champs des données
Données : Dans les données sont intégrées les inf ormations sur le service réseau à contacter.
PAD : Bourrage d’octet si la trame n’a pas assez de bits pour atteindre la taille minimale.
CRC : Calcul ef f ectué sur les bits de la trame pour vérif ier si la transmission s’est f aite sans erreur.
Comment ça marche ? 46/120
16.4 802.5 : Token Ring
16.4.1 Introduction
Token Ring est le protocole promu par IBM pour se démarquer d’Ethernet. Au départ ce réseau avait un débit de 4 Mbps,
aujourd’hui c’est du 16 Mbps. On a vu avec Ethernet que l’organisation pour l’accès à la parole était assez anarchique :
chacun parle quand il veut, sa méthod e de détection des collisions est basée sur le principe qu’on laisse se produire des
erreurs et qu’on les traite quand elles arrivent. IBM n’a pas apprécié cette philosophie et à inventé l’anneau (RING) à jeton
(TOKEN) où chacun parle quand on lui donne la parole.
16.4.2 Principe
Un jeton tourne, va de station en station. Lorsque l’on veut parler on attend que le jeton passe. Si il est libre on le marqu e
occupé et on parle. Lorsque l’on reçoit un message on marque la trame pour signaler qu’on l’a lue et on la la isse continuer.
L’émetteur reçoit donc la trame qu’il a émise en sachant si le destinataire l’a lue. Il libère le jeton et le passe à son voi sin.
Comme il n’y a qu’un jeton en circulation sur l’anneau une seule station peut transmettre à un instant donné. Ceci évite
l’émission simultanée de plusieurs trames et résout le problème de l’accès multiple.
Il est plus lent sur de faibles charges qu’Ethernet mais plus rapide qu’Ethernet (même 100 Mbps) sur de lourdes charges car i l
ne s’écroule pas sous les collisions.
Lorsque le traf ic est faible, le jeton passe la plupart de son temps à circuler sur l’anneau. De temps en temps une station e n
prend possession et émet sa trame. Par contre lorsque le traf ic s’intensifie de sorte que chaque station possède des trames en
attente d’émission, dès qu’une station libère le jeton, la suivante le prend immédiatement. Le droit d’émettre se déplace de
station en station suivant l’ordre de connexion physique.
16.4.3 Topologie
En topologie logique c’est un anneau. C’est à dire que c e n’est pas un simple réseau à dif f usion mais une succession de
liaisons point à point f ormant un cercle.
Par contre sa topologie physique (qui peut aussi être un anneau) est souvent une étoile. L’étoile permet en f ait d’ajouter un e
station sur le réseau en f onctionnement et d’assurer le bon f onctionnement de l’anneau en cas de panne d’une station.
Le TR était assez novateur pour le câblage car il utilise du matériel actif équivalent au HUB Ethernet et ceci bien avant 10b ase
T. Ce matériel qui donne la configuration en étoile est nommé MAU (Medium Acces Unit) et c’est lui qui permet de détecter
une coupure dans l’anneau et de la réparer immédiatement. C’est aussi cet équipement qui permet d’ajouter une station à «
chaud ». Il est possible d’avoir un anneau d’étoiles en reliant plusieurs MAU ensemble. Le TR peut compter jusqu’à 256
stations.
16.4.4 Le niveau physique
Au niveau physique la norme recommande d’utiliser des paires torsadées blindées bien qu’en théorie on puisse aussi utiliser
du coax ou de la f ibre optique.
Les signaux de transmission sont en Bande de Base et utilisent les règles du codage Manchester Dif f érentiel : un bit à 1
correspond à une transition en début de l’intervalle temps du bit, un bit à 0 est caractérisé par l’absence de transition. Ce tte
méthode de codage est plus complexe mais of f re une meilleure immunité aux bruits.
Remarque : les cartes TR sont prévues pour pouvoir émettre en même temps qu’elles reçoivent. En effet si l’anneau est court
et que la trame est longue il se peut très bien que les premiers octets de la trame reviennent avant que les derniers ne soient
émis.

16.4.5 Trame
Marqueur début et fin : codage erroné du Manchester Différentiel en oubliant la transition au milieu de l’intervalle temps bit.
Sur TR des 0 et des 1 sont transmis en permanence, ainsi c’est l’absence de signal cohérent pendant 2 bits puis un bit à 0,
encore 2 bits incohérents et enfin 3 bits à 0 qui signale le début. La f in d’une trame est signalée par 2 bits incohérents, u n bit à
1, 2 bits incohérents puis 3 bits à 1.
On notera qu’il n’y a pas de préambule comme dans Ethernet. Ceci s’explique naturellement par le f ait que le préambule (suite
de 1 et de 0) permet aux différentes stations de synchroniser leurs horloges de lecture des bits. Or, sur TR on transm et en
permanence des 1 et des 0, les horloges sont donc en permanence synchronisées.
Comment ça marche ? 47/120
Le champs Control est utilisé pour gérer le droit à la parole. Il y a un bit pour signif ier si le jeton est libre ou non et 7 autres
dont on verra l’utilité précise par la suite : 1 bit de supervision dit bit moniteur, 3 bits de priorité (de 0 à 7) et 3 bits de
réservation.
Frame Control est le champs qui permet de déterminer le type de trame, c’est à dire de distinguer les trames de données des
trames diverses de commande du réseau.
Les adresses sont par défaut celles inscrites par le constructeur sur la carte (chacune est unique au monde), elles sont sur 6
octets. En local on peut redéf inir les adresses sur uniquement 2 octets. Ceci permet de gagner 4 octets par trame.
Le champ données peut être aussi long que l’on veut. Ceci dit étant donné que chaque station a un temps maximum de
maintient du jeton, la taille des données maximales sera limitée par le nombre maximal de bits que peut émettre la station
pendant ce temps.
CRC : détection d’erreurs de transmission.
Le champs frame status contient 2 inf ormations : les bits A et C. A est mis à 1 lorsqu’un MAU reconnaît l’adresse destinatair e
comme étant celle d’une des stations lui étant reliée. C est mis à 1 lorsque la station destinataire ef f ectue une copie de la
trame.
16.4.6 Le protocole
La base du protocole est la capture du jeton lorsque l’on veut transmettre. Lorsque le jeton est capturé , la station peut le
conserver pendant le « temps de maintient du jeton » (THT : Token Holding Timer) dont la valeur est paramétrable. Par défaut
elle est de 10 ms. Pendant ce temps la station doit émettre une grande trame, plusieurs trames ou relâcher le jeton si elle n ’a
plus rien à émettre.
Le principe étant basé sur un jeton, il est important de le surveiller. Si le jeton est perdu, par exemple à cause d’une
perturbation électrique ou de la panne d’une station, plus personne ne pourra parler. Il se peut aussi qu’une trame tourne
indéf iniment sur le réseau si l’émetteur de cette trame to mbe en panne avant de la retirer.
Il y a donc une station sur le réseau appelée moniteur. Elle va surveiller et gérer les problèmes susceptibles de se produire . Le
moniteur vérif ie notamment que la structure du jeton est correcte et qu’une trame orpheline ne circule pas sur l’anneau.
Lorsqu’une situation anormale est constatée, le moniteur purge l’anneau et y injecte un nouveau jeton.
Méthode pour surveiller la présence du jeton : le moniteur réinitialise un timer à chaque passage du jeton, si le timer arrive au
bout avant que le moniteur ne voit passer le jeton, il émet une trame de purge (PRG) qui f ait le tour de l’anneau. Ensuite, i l
émet un jeton neuf .
Méthode pour surveiller une trame qui boucle : lorsqu’une trame passe devant le moniteur, il met le bit moniteur de l’octet
contrôle d’accès de la trame à 1. Ainsi si le moniteur voit arriver une trame avec ce bit M à 1 c’est que la trame a déjà f ai t plus
d’un tour. Le moniteur la supprime donc comme si il en était l’émetteur et émet un jeton vide.
16.4.7 Le moniteur
Le moniteur a donc un rôle essentiel dans le réseau. Il aurait donc était impensable de dédier un poste à ce rôle : le réseau
aurait entièrement dépendu du bon fonctionnement de ce poste. Une panne du câble, du poste ou du logiciel du poste aurait
paralysé tout le réseau. Le principe choisi a donc était que chaque station du réseau puisse jouer le rôle du moniteur. La
première connectée au réseau se déclare moniteur, si cette station vient à défaillir, elle est remplacée immédiatement par un e
autre station ( toutes les stations en ayant la capacité). Puisqu’il y aura des candidatures multiples, un protocole particulier
désigne l’une des stations comme moniteur.
Protocole de détection de l’absence de moniteur : le moniteur en f onction émet régulièrement une trame AMP (Active Monitor
Present). Chaque station possède un timer qu’elle réinitialise au passage de la trame AMP. Si le moniteur cesse d’émettre
cette trame, les timers vont arriver au bout. La première station dont le timer arrive à terme lanc e le protocole d’élection d’un
nouveau moniteur.
Il reste néanmoins un risque : si le moniteur émet une trame AMP et meurt. La trame AMP va tourner en boucle, personne ne
s’apercevra qu’il n’y plus de moniteur. De plus, étant donné que la trame AMP possèd e le jeton, plus personne ne parlera.
Pour régler ce problème le moniteur attend un temps minimum entre deux émissions d’AMP et chaque station possède un
deuxième timer réinitialisé au passage d’un AMP. Si la trame AMP arrive avant que ce timer n’arrive à terme dans une station,
cette dernière détruit la trame AMP et lance la procédure d’élection d’un nouveau moniteur.
Protocole d’élection d’un nouveau moniteur : pour l’élection d’un nouveau moniteur on va choisir la station ayant l’adresse l a
plus grande.
La première station qui détecte l’absence de moniteur actif, c’est à dire dont le premier timer arrive à terme avant le passa ge
de la trame AMP ou dont le deuxième timer n’est pas arrivé à terme au passage de cette même trame, lance une trame
particulière appelée Claim Token qui contient son adresse. Lorsqu’une station reçoit un claim Token elle en émet un autre
avec comme adresse la plus grande entre celle reçue et la sienne. Cette procédure au bout du compte arrive au f ait que la
station ayant l’adresse la plus grande reçoit un claim Token avec sa propre adresse. A ce moment elle se déclare moniteur.
Seulement, à cet instant, elle est seule à savoir qu’elle est moniteur, elle émet alors une trame qui signale qu’elle a prit le rôle
de moniteur.
16.4.8 Moniteur multiple
Bien sûr, si la présence d’un moniteur est indispensable, il ne f aut absolument pas qu’il y en ait plusieurs. Cela provoquera it un
retrait de trame non justifié. Par exemple le premier moniteur, en voyant passer la trame mettrait le bit M à 1, l e second croirait
que la trame vient de boucler et la supprimerait.
Pour éviter cela, le moniteur va surveiller les trames AMP, si il lui en arrive une qu’il n’a pas émis, c’est qu’il y a un au tre
moniteur. Il lance alors la procédure d’élection d’un nouv eau moniteur.
16.4.9 L’autotest matériel
Nous avons vu qu’en cas de trame qui boucle le moniteur purge l’anneau avec une trame PRG. La purge est en f ait utilisée à
chaque f ois qu’un problème apparaît, cependant il arrive que la purge ne règle pas le problème. D ans ce cas les stations du
réseau, voyant qu’une trame PRG est passée mais que le problème persiste, élisent un nouveau moniteur qui tente à son tour
Comment ça marche ? 48/120
de purger l’anneau. Si le problème persiste encore, on entre dans la phase d’autotest. C’est à dire que to ute les stations du
réseau se déconnectent et se font un test matériel complet. Ensuite, seules les stations s’étant reconnues comme saines se
reconnectent et élisent un nouveau moniteur.
16.4.10 Notion de priorité
En plus du f ait que le protocole de TR soit déterministe au contraire d’Ethernet, il est doté d’un mécanisme pour la notion de
priorité des trames.
Jusqu’à présent, on a décrit le fonctionnement en supposant que toutes les trames avaient la même priorité, hors TR prévoit 8
niveaux de priorité, de 0 (trame courante) à 7 (trames exceptionnelles et urgentes).
En f ait, lorsqu’une station veut émettre une trame, soit il n’y a pas de trafic et elle va pouvoir prendre immédiatement le j eton
libre (dans ce cas le niveau de priorité désiré est sans importance) soit il y a du traf ic et elle va voir passer plusieurs trames
avant que le jeton ne lui revienne. Dans ce cas elle va utiliser le champ réservation de la trame qui passe devant elle en lu i
mettant son niveau de priorité (les 3 bits permettent d’inscrire une priorité de 0 à 7).
Si une autre station veut aussi émettre une réservation, elle ne pourra le f aire que si son niveau de priorité est supérieur. Dans
ce cas elle remplace l’ancienne réservation par la sienne.
Ainsi lors d’un tour, c’est la plus prioritaire qui a inscrit son niveau de priorité.
La station qui a émis cette trame va relâcher à la f in de l’émission un jeton libre. Mais avant cela, elle aura copié le nive au de
réservation dans le champs priorité (également 3 bits).
Les stations qui verront passer ce jeton libre ne pourront le prendre que si leur niveau de priorité est égal ou supérieur à celui
indiqué dans le jeton. Par contre elles peuvent toujours ef f ectuer des réservations avec les mêmes contraintes.
Bien sûr, ce n’est pas forcement celle qui avait effectué la plus forte réservation qui va prendre le jeton puisque si une station
pendant le tour du jeton est apparu avec une priorité plus forte, elle prendra le jeton qu’elle ait effectué ou pas une réservation
!
16.4.11 Localisation des coupures de câbles
Dans TR si un câble est défaillant c’est tout le réseau qui est affecté contrairement à Ethernet où ce ne sont que les statio ns
branchées sur ce câble qui sont coupées du réseau. Il f allait donc un mécanisme pour parer à cette éventualité. De même si
une station s’arrête alors qu’elle était connectée sur le réseau, il ne f aut plus lui envoyer de trame car sinon, l’anneau se rait
ouvert. C’est le MAU qui règle tout cela.
En f ait les stations ne sont pas vraiment en étoile comme on l’a vu précédemment, elles sont connectées à un MAU qui simule
l’anneau.
Celui-ci étant en liaison permanente avec les cartes TR, dès que l’une d’elles ne répond plus, il l’a court -circuite pour f ermer
l’anneau.
Il en est de même pour des coupures de câbles : c’est le MAU qui va court-circuiter le câble déf aillant. Avant cela il f aut
détecter l’endroit de la panne. Pour cela les stations ont un protocole bien défini : quand un câble de l’anneau est sectionn é,
très vite, plus personne ne reçoit rien. Les stations émettent alors des trames appelées BCN (Beacon) pour signaler qu’elles
ne reçoivent plus rien. Une Beacon contient au départ l’adresse de la station émettrice. Une station qui reçoit une Beacon la
retransmet et arrête d’émettre les siennes. Ainsi ne circuleront très rapidement sur le réseau que les Beacons de la station qui
se situe juste après la coupure puisque ce sera la seule à ne rien recevoir. Le MAU sait alors où se situe la coupure grâce à
l’adresse située dans ces Beacons. Il l’isole en ref ermant l’anneau par un autre chemin.
16.4.12 Duplication d’adresse
Le TR étant prévu pour fonctionner avec des adresses sur 2 octets définies par l’administrateur, il est possible que dû à une
erreur humaine deux stations aient la même adresse.
Ceci est gênant donc, quand une station se connecte au réseau, elle commence par émettre une trame DAT (Duplicate
Adresse Test).
Cette trame a comme particularité d’avoir comme adresse destinataire l’adresse source.
Ainsi lorsque cette trame revient si le frame status indique que la trame a été lue, c’est qu’il y a une autre station avec la même
adresse.
TR le signale immédiatement au système du réseau. Ces derniers réagissent de façons complètement dif f érentes : certains
ref usent de se connecter, d’autres se contentent de le signaler et certains envoient un ordre de déconnexion pour l’autre
station !
16.4.13 Un mécanisme complexe
Les erreurs qui sont susceptibles de détruire le f onctionnement de l’anneau sont nombreuses.
Nous n’avons pas traité tous les cas prévus par la norme : nous n’av ons pas parlé des émissions continues, des pertes du
signal, des erreurs de f réquence et de transmission, des pertes de trames, des modif ications du jeton, de la non
reconnaissance des délimiteurs…
La méthode d’accès à la parole qui paraissait simple au d épart et posant moins de problèmes que CSMA/CD est en f ait un
vrai casse tête dû au f ait que la moindre perturbation doit au moins être suivie d’une purge de l’anneau.
Il f aut donc tout prévoir et avoir du matériel très f iable.
16.4.14 Les ponts
On peut bien sûr relier plusieurs TR par des ponts.
Ces ponts ont les mêmes f onctionnalités que les ponts Ethernet mais utilisent un principe f ondamentalement dif f érent.
Les ponts Ethernet sont dits transparents et le routage se f ait de pont en pont.
Sur TR on parle de routage à la source et les stations ont parf aitement « conscience » de la présence des ponts.
Rappels sur les ponts Ethernet :
Comment ça marche ? 49/120

Les stations A, B, C et D peuvent être sur un même réseau physique. Le pont limite l’encombrement en ne laissant passer que
les trames nécessaires. Pour situer les stations, le pont observe les adresses sources des trames et en cas de doute, il
dif f use.
Lorsque la station A envoie une trame à la station D : A dif f use la trame et ne se soucie pas du travail des ponts qui vont
amener la trame à bon port. Pour régler le problème du chemin lorsqu’il y en a plusieurs, les ponts Ethernet utilisent
l’algorithme du Spanning Tree :
Son principe est par étapes :
1 -- On choisi un pont racine, ce sera celui dont l’adresse est la plus petite.
2 – Sur chaque réseau on choisi un pont désigné qui le raccorde à la racine : on prend celui qui a le plus court accès (en
nombre de ponts) à la racine. Donc le pont racine est le pont désigné pour chacun des réseaux auxquels il est raccordé. Si i l y
a des ex æquo on prend celui qui a la plus petite adresse.
Les ponts TR :
Leur système est beaucoup plus simple : ils ne f ont rien !
En f ait les stations ont « conscience » qu’il peut y avoir des ponts et donc le gère.
Lorsqu’une station veut parler à une autre, elle va d’abord essayer de lui parler sur son anneau.
Si personne ne lit la trame, elle pense que la station est sur un autre anneau relié par un pont. Elle la recherche en envoya nt
une trame discovering. Quand un pont voit passer une trame de ce type il se note dedans et la renvoie de l’autre côté. Si un
pont voit passer une trame discovering où il est déjà il l’a jette. Quand le destinataire la reçoit, il l’a renvoie en suivan t le
chemin inverse. Ainsi la station de départ connaît le chemin d’accès au destinataire et le notera dans chaque trame qu’elle lui
enverra.
Il y a plusieurs politiques applicables : soit on prend le premier qui revient, soit celui qui a traversé le moins de ponts,…
Le principe de noter le chemin dans chaque trame est appelé routage à la source.
16.4.15 Conclusion
Au niveau ef f icacité le TR est une réussite puisque le débit effectif suit à peut près le débit soumis et en tout cas ne s’éc roule
jamais. De plus il gère parf aitement les niveaux de priorité, ce qui le rend conf orme aux utilisations temps réels.
Cependant, il n’a pas réussi à s’imposer car sa technologie est trop chère et que la méthode d’accès est f inalement assez
complexe. De plus son principe ne se prête pas à l’utilisation des switch qui permettent d’isoler les serveurs sur des parties à
hauts débits.
Il reste néanmoins d’actualité chez IBM et dans les applications temps réel et son principe est toujours utilisé pour les rés eaux
f édérateurs FDDI.
16.5 . 802.4 : Token Bus
16.5.1 . Introduction
Le principe ici est le même que pour TR : on partage la ressource de communication en se passant un jeton. Seulement ici les
stations se trouvent sur un bus logique (comme pour Ethernet, on peut très bien avoir en physique un bus ou une étoile). Le
principe du jeton a l’avantage de garantir un temps maximum entre deux accès à la parole. Pour utiliser le jeton on doit déf inir
un anneau logique. Pour cela à un instant donné une station n’a qu’un prédécesseur et un successeur. Le jeton viendra du
prédécesseur et sera transmis au successeur.
16.5.2 . Principe
Le bus assure la dif f usion des signaux vers toutes les stations. Le jeton détermine un accès séquentiel des stations à la
parole, évitant ainsi les collisions.
Les stations connectées au réseau f orment un anneau logique en étant rangées par ordre décroissant de leurs adresses. La
station ayant la plus petite adresse considère comme son successeur la station ayant la plus grande adresse, ainsi une boucle
est f ormée. Chaque station connaît l’adresse de son successeur et celle de son préd écesseur. Une seule station possède le
jeton, elle émet ses trames pendant un temps maximum puis envoie une trame « jeton » à sa station successeur. Ainsi le jeton
passe par toutes les stations et personne ne parle en même temps. L’emplacement physique n’i ntervient pas dans le passage
du jeton.
16.5.3 . Le signal
Les signaux sont transmis sur du câble coaxial de façon analogique (ce qui induit l’utilisation de modems) sous forme d’ondes
porteuses modulées. Deux techniques de modulation de fréquence peuvent être utilisées, elles déterminent le débit : 5 ou 10
Comment ça marche ? 50/120
Mbps. Il existe aussi une méthode de transmission numérique (avec un codage Manchester) mais le fait qu’elle limite le débit à
1 Mbps le rend impopulaire. La distance maximale couverte par le câblage est de 3.7 Km.
16.5.4 . La trame

Préambule: c’est une suite de 1 et de 0 émise pendant une durée minimum qui correspond à 1 Mbps à l’émission d’1 octet. Il
permet de synchroniser les horloges.
SD : Start Delimiter, c’est NN0NN000 avec N qui est un signal analogique qui ne représente ni un 1 ni un 0.
FC : Frame Control permet de connaître le type de trame, c’est à dire trame de données ou de commande (Claim Token, jeton
libre, etc.). Il contient aussi les priorités.
SA et AD : Adresse source et destination sur 2 ou 6 octets comme pour TR.
ED : End Delimiter, c’est NN/NN/IE avec / qui signifie qu’on peut mettre un 1 ou un 0. I est à 1 si la station émettrice a en core
des trames à émettre, à 0 sinon. E est mis à 1 par un répéteur si il n’a pas réussi à réamplif ier cor rectement le signal.
16.5.5 . Insertion d’une station dans l’anneau
Dès que l’anneau logique a été établi, chaque station gère en permanence les adresses de la station prédécesseur et de la
station successeur.
Périodiquement, la station qui détient le jeton transmet une trame de type recherche successeur (Solicit-Successor-1) af in de
f aire appel aux stations non partenaires de l’anneau à cet instant et qui souhaitent le rejoindre. Cette trame précise l’adre sse
de la station émettrice et celle de son successeur sur l’anneau. Seules les stations dont la valeur de l’adresse est comprise
entre les adresses mentionnées ont le droit de rejoindre l’anneau logique. Ce protocole permet de conserver facilement l’ordre
décroissant des adresses des stations sur l’anneau logique. Si aucune station ne se porte candidate dans l’intervalle de temps
(f enêtre de réponse) qui suit l’émission de cette trame, la fenêtre de réponse est fermée et le processus normal de circulati on
du jeton reprend. Si une seule station se porte candidate en émettant une trame Set-Successor, elle s’insère sur l’anneau et
devient la prochaine station destinataire du jeton.
Si deux ou plusieurs stations se portent candidates, leurs trames seront victimes de collisions. La station qui détient le je ton
exécute alors un algorithme d’arbitrage commençant par la diffusion d’une trame résolution de contention destinée à initialiser
le processus de résolution de contention.
Bien sûr, la station qui a la plus petite adresse du réseau (on la nomme lowest adress) c e comporte un peu différemment : elle
ne va pas ouvrir une f enêtre de réponse mais deux successives en émettant une trame Solicit -Successor-2. Pendant la
première f enêtre, seules les stations ayant une plus petite adresse que celle de l’émettrice peuvent r épondre. Pendant la
seconde, ce sont les stations qui ont une adresse supérieure à celle du successeur de l’émettrice qui peuvent répondre. Si
une réponse est effectuée dans la seconde fenêtre alors qu’une réponse a déjà était faite pendant la première ell e est ignorée.
Les problèmes de collision se règlent aussi par l’algorithme de résolution de contention.
16.5.6 . Résolution de contention
Lorsqu’une station qui a émis une trame de recherche successeur détecte une collision, elle émet une trame Resolve -
Contention qui indique aux candidates qu’il y a eu une collision. Puis elle ouvre 4 f enêtres de réponse successives. Les
stations candidates, à la réception de la trame Resolve-Contention, arment un timer qui vaut 0, 1, 2 ou 3 * TC (TC = temps
d’ouverture d’une fenêtre de réponse). Avant de répondre, les stations attendront le temps de ce timer. Ainsi, les stations vont
se répartir dans les différentes f enêtres de réponse. La première réponse qui sera seule dans sa f enêtre sera acceptée. Pour
choisir le timer qui sera déclenché, les candidates au premier essai utilisent les 2 bit de poids faible de leurs adresses (0, 1, 2
ou 3). A partir du deuxième essai (si il y a eu plusieurs réponses dans les 4 fenêtres), les candidates tireront aléatoiremen t ce
chif f re entre 0 et 3.
16.5.7 . Initialisation
L’initialisation de l’anneau logique est un cas particulier du processus d’appel à candidature. Quand la première station devient
active, elle constate après un délai d’observation suffisant, qu’il n’y a aucun traf ic sur le support de transmission. Sur cette
constatation, la station transmet une trame Claim Token. N’obtenant pas de réponse, elle constitue un anneau logique dont
elle est l’unique station.
Ensuite, périodiquement elle déroule le processus d’appel à candidature (au d épart, elle est forcement la station lowest adress
et ouvre donc deux fenêtres, une pour celles qui ont une adresse plus petite qu’elle et une pour celles qui ont une adresse
plus grande que celle de son successeur, c’est à dire elle même). Les autres stat ions s’insèrent au f ur et à mesure qu’elles
deviennent actives selon le processus décrit au paragraphe précédent.
16.5.8 . Suppression d’une station
Quitter l’anneau est très f acile. Lorsqu’une station veut quitter l’anneau, elle attend le jeton. Quand il arriv e, elle émet une
trame Set-Successor à sa station prédécesseur pour lui indiquer son nouveau successeur. Cette dernière préviendra ensuite
celui-ci qu’elle est son nouveau prédécesseur. La station qui veut quitter l’anneau est donc libre dès qu’elle a prév enu son
successeur. Nous verrons plus tard que même si elle n’a pu effectuer ce processus (à cause d’un arrêt brutal par exemple) les
stations actives règleront seules ce problème.
16.5.9 . Passage du jeton
Lorsqu’une station libère le jeton, elle émet une trame à destination de son successeur, lui indiquant qu’il est à présent le
possesseur du jeton. Puis elle surveille que celui ci l’a bien reçu. Pour cela elle observe le bus, si une trame (jeton libre ou
données) apparaît, c’est qu’il l’a bien reçu, sinon, elle retente la procédure de passage du jeton. Si cette procédure échoue de
nouveau, elle va considérer que son successeur est mort et va donc chercher à joindre le successeur de son successeur en
Comment ça marche ? 51/120
envoyant une trame « qui suit mon successeur ? » (Who -Follows), qui contient l’adresse du successeur supposé mort. Les
stations, en recevant cette trame vérif ient leurs prédécesseurs. Celle qui se reconnaît répond en donnant son adresse:
l’anneau est ainsi reconstitué.
16.5.10 . Perte du jeton
Lorsqu’une station ne possède pas le jeton, elle écoute en permanence le bus. Premièrement pour détecter un signal lui étant
adressé deuxièmement pour surveiller la perte du jeton. En effet, en f onctionnement normal, des signaux doivent être émis
régulièrement sur le bus, que ce soit le passage du jeton ou des trames de données. Une absence de signal pendant un
certain temps (supérieur au temps de 4 f enêtres de réponse et de propagation sur le bus) est donc signif icatif de la perte du
jeton.
La première station qui détecte cette perte du jeton émet une trame Claim Token dont la longueur dépend de son adresse. Les
stations repérant un Claim Token vont en émettre à leur tour. Chaque station va émettre des Claim Token successif s jusqu’à
ce que lorsqu’un Claim Token ait fini d’ être transmis et que la station écoute le bus elle entende un signal (Claim Token des
autres). Dans ce cas, elle abandonne la compétition pour la régénération du jeton. Très vite la plupart des stations
abandonnent donc et une seule entend un silence après la transmission de son Claim Token . Après plusieurs itérations d’un
Claim Token suivi d’un silence, la station considère avoir gagné le droit de régénérer le jeton. Ensuite elle reprend le
processus normal.
16.5.11 . Duplication du jeton
Une station qui est dans l’état recherche de successeurs ou qui a envoyé une trame Who -Follows et qui entend sur le bus une
trame de données ou un jeton comprend qu’une autre station est active. Elle abandonne donc son jeton. La situation redevient
ainsi normale.
16.5.12 . Duplication d’adresse
Quand une station voit passer une trame qu’elle n’a pas émise dont le CRC est valide avec comme adresse source sa propre
adresse, elle comprend qu’il y a une duplication d’adresse et se déconnecte. Ensuite elle va entrer dans le processus de
candidature à l’anneau.
Tant que la station ayant la même adresse sera présente sur l’anneau logique, elle ne pourra se reconnecter puisqu’il ne sera
jamais proposé d’intervalle incluant son adresse : l’intervalle proposé par une station va de l’adresse strictement i nférieure à la
sienne à l’adresse strictement supérieure à celle de son successeur.
16.5.13 . Mode réponse immédiate
Dans le FC se trouve un bit qui permet d’envoyer une trame dite en mode réponse immédiate. C’est à dire lorsqu’une station
reçoit une trame avec ce bit à 1 c’est qu’elle peut et doit répondre immédiatement sans attendre le jeton. C’est une sorte de
délégation temporaire du jeton. Ce mode permet de demander un accusé de réception immédiat ou de donner la parole à une
station qui n’est pas sur l’anneau. Par exemple lors d’une recherche de successeur la trame adressée aux candidates est de
ce mode af in qu’elle puisse répondre bien qu’elle n’ait pas le jeton.
En pratique ce mode est aussi utilisé pour f aire du contrôle centralisé éventuellement multima ître. Dans ce cas seuls les
maîtres f ont partie de l’anneau (un esclave ne parlant que sur l’ordre d’un maître), mais tous les maîtres et esclaves sont
connectés au même bus. Lorsqu’un maître demande une tache à un esclave il lui envoie une trame en mode r éponse
immédiate.
16.5.14 . Temps de transmission
Chaque f ois qu’une station acquière le jeton, elle peut transmettre pendant une durée de temps limité avant de devoir passer
le jeton à son successeur. Le temps maximum de transmission appelé Hi Pri Token Hold Ti me est conf iguré par
l’administrateur après analyse des contraintes du système.
L’appel de nouvelles stations ne doit pas interférer avec le temps de rotation maximum du jeton. Une station déclenche donc
un timer à chaque passage du jeton et lance la procédure d’insertion d’une station que si le jeton a f ait un tour rapide (ce qui
correspond à une f aible activité du réseau).
De plus, même si le réseau a une f aible activité il n’est pas utile de lancer l’appel à candidature à chaque tour. Chaque sta tion
a donc un compteur (Inter Solicit Count) qui lui permet de lancer l’appel à candidature que tous les X tours du jeton.
16.5.15 . Gestion des priorités
Le bus à jeton déf ini quatre niveaux de priorité réf érencés 0, 2, 4 et 6. Le niveau 0 est le plus f aible, 6 le pl us f ort.
Le principe est assez simple, chaque station va émettre en priorité ses trames de f orte priorité et a plus de temps pour
transmettre les trames de priorité 6 que celles de 0 de sorte que le trafic des trames de priorité 0 laisse de la bande passa nte
pour les priorités plus élevées.
Mécanisme : on déf init une valeur TTRTi (Target Token Rotation Time) pour chaque priorité i. TRT6 indiquera le temps de
rotation maximum du jeton et on aura TRT6>TRT4>TRT2>TRT0. Chaque station a quatre timer : TRT6, TRT4, TRT2 et TRT0.
Ces timers sont initialisés à chaque passage du jeton à respectivement TTRT6, TTRT4, TTRT2 et TTRT0 (TTRTi -
TRTi=Temps de rotation du jeton). Avant d’initialiser TRTi à TTRTi à l’arrivée du jeton d’autres timers (HTi) sont initialisé s à
TRTi. Ce procédé a pour but que les TRT commencent à décompter le temps de rotation du jeton et que les HT indiquent
combien de temps on peut émettre dans la priorité i.
Ensuite, chaque timer (TRTi et HTi) continue à décompter le temps. Une station peut émettre en priorité 6 tant que HT6 >0,
puis si HT4 est encore >0 elle peut émettre pendant HT4 et ainsi de suite.
Voyons un exemple pour bien comprendre le mécanisme :
Pour l’exemple suivant on prendra TTRT6=100, TTRT4=80, TTRT2=50 et TTRT0=30. Les trames s ont toutes de même
longueur avec un temps d’émission de 20. Au départ, la station doit émettre une trame de chaque priorité.
Le jeton a mis 40 pour f aire le tour, on a donc TRT6=60, TRT4=40, TRT2=10 et TRT0= -10.
Comment ça marche ? 52/120
A l’arrivée du jeton on positionne donc HT6=60, HT4=40, HT2=10 et HT0=-10 puis TRT6=100, TRT4=80, TRT2=50 et
TRT0=30.
HT6 étant supérieur à 0 la station émet sa trame de priorité 6. On a donc TRT6=80, TRT4=60, TRT2=30, TRT0=10, HT6=40,
HT4=20, HT2=-10 et HT0=-30.
HT4>0 donc la station émet sa trame de priorité 4, on a alors TRT6=60, TRT4=40, TRT2=10, TRT0= -10, HT6=20, HT4=0,
HT2=-30 et HT0=-50.
HT2<0 la station ne peut donc pas émettre sa trame de priorité 2, elle libère le jeton.
Le jeton met cette f ois 20 à f aire le tour.
A l’arrivée du jeton on a donc TRT6=40, TRT4=20, TRT2=-10 et TRT0=-30, la station réinitialise ses compteurs. Ce qui donne
TRT6=100 , TRT4=80, TRT2=50, TRT0=30, HT6=40, HT4=20, HT2= -10 et HT0= -30.
La station aurait pu émettre des trames de priorité 6 et 4 mais supposons qu’elle n’ait que des trames de priorités 0 et 2. Dans
ce cas elle est obligée de passer directement le jeton.
Le jeton met de nouveau 40 pour f aire le tour.
A son retour on a donc TRT6=60 , TRT4=40, TRT2=10, TRT0= -10. La réinitialisation donne TRT6=100 , TRT4=80, TRT2=50,
TRT0=30, HT6=60, HT4=40, HT2=10 et HT0=-10.
La station peut donc émettre une trame de priorité 2 mais d’une durée uniquement de 10.
Cette méthode permet de laisser sur le réseau la priorité aux trames de forte priorité et de limiter le débit des trames de f aible
priorité.
16.5.16 . Conclusion
Ce type de réseau à l’avantage d’être déterministe et de ne pas s’écrouler sous les collisions. Cependant la nécessité d’avoi r
des équipements comme des modems et du câble coaxial le rend relativement co ûteux.
Il est de moins en moins utilisé mais encore d’actualité dans les réseaux industriels. GIXInet et Arcnet ont été les premiers à
utiliser cette méthode. TORNAD (le réseau du TGV) et HSDB, Hight Speed Data Bus (réseau militaire) sont des exemples de
Token Bus.
16.6 . ANSI X3T9.5 : FDDI
16.6.1 . Introduction
FDDI : Fiber Distributed Date Interf ace
Né au début des années 80, son principe est celui d’un double anneau à 100Mbps sur f ibre optique. Son rôle principal est
celui des réseaux f édérateurs (Backbone), à plat il peut s’étendre sur 100 km et accepter jusqu’à 1000 stations. Ses trames
maximales sont de 45 Ko. On le trouve encore beaucoup sur des sites où un backbone à 100 Mbps était nécessaire avant
l’arrivé du 100BaseT, mais FASTETHERNET et le Gigabit Ethernet sont en train de causer sa perte. Sa norme n’est pas de
l’IEEE, elle vient de l’ANSI et est nommée X3T9.5. Certaines installations tournent à 200 Mbps mais elles sont instables, on
utilise le réseau secondaire pour transmettre 200 Mbps.
16.6.2 . Le codage 4B/5B NRZI
Ce codage est basé sur NRZI qui code un 1 par une transition et un 0 par une absence de transition plus le f ait qu’on code 4
bits par une suite de 5 ne comprenant jamais plus de trois 0 à la suite, un 0 au début et deux 0 à la f in. Ceci permet d ’avoir au
moins une transition tous les 3 bits.

16.6.3 . Trame FDDI

La trame ressemble à celle du TR, il y a un préambule car on n’émet pas en permanence. Le Start Delimiter (SD) et le End
Delimiter (ED) sont des codes particuliers ne correspondant à rien d’autre :
Comment ça marche ? 53/120
SD : 1100010001
ED : 01101 si jeton vide
0110101101 si c’est une trame
On remarquera qu’il n’y a pas de champs Access Control, c’est le champs FC qui permet de dire si le jeton est libre ou non.
Il n’y a pas non plus de champs priorité, réservation, ni de bit M.
Une autre particularité : dans le FC, un bit indique si on utilise les adresses sur 2 ou 6 octets, ainsi les deux adressages
peuvent cohabiter.
Les trames sont lues puis régénérées complètement dans chaque station.
16.6.4 . Principe
Etant donné sa taille importante, le délai de propagation peut atteindre 1ms. Cela suffit seul à expliquer qu’il ait fallu modifier le
protocole 802.5. En effet, s’il fallait attendre le retour de l’entête d’une trame pour réemettre un jeton, cela induirait un e perte
de bande passante importante. C’est donc la longueur qui a poussé les concepteurs de FDDI à modif ier le protocole de
gestion du jeton et les mécanismes de priorité.
16.6.5 . Circulation du jeton
Comme dans le TR, une station qui souhaite émettre des données doit attendre le jeton libre. Lorsque celui-ci arrive, la station
peut émettre dans tous les cas une trame dite synchrone puis en f onction de l’algorithme que nous verrons ensuite, des
trames dites asynchrones pendant une durée limitée. Ensuite le station réemet le jeton. Contrairement à TR on n’attend pas le
retour de ses trames avant de réemettre le jeton, le délai serait trop long. Il peut donc y avoir sur l’anneau plusieurs tram es en
simultané mais un seul et unique jeton. Le f ait que l’on n’attende pas le retour de ses trames pour réemettre le jeton explique
le f ait qu’on ne puisse utiliser le même principe de priorité que dans TR.
Les trames sont ensuite retirées de l’anneau par la station qui les a émises, néanmoins les dépouilles de trames continu ent à
circuler puisqu’une station ne reconnaît sa trame qu’à l’adresse source. Etant donné qu’il n’y a pas de bit M, ces dépouilles et
les trames dont l’émetteur serait déconnecté avant de les retirer pourraient tourner indéfiniment. Ce problème est réglé par le
f ait que toutes les stations sont des répéteurs (puisqu’elles réemettent la trame qu’elles reçoivent) sauf celle qui est en t rain
d’émettre . Cette dernière purge donc tout ce qui lui arrive en amont. Cette méthode simple a quand même un inconvénien t :
une station peut recevoir plusieurs f ois le même message, il f audra donc régler ce problème au niveau supérieur.
16.6.6 . Le jeton simple
Le principe utilisé par FDDI vise à partager de manière aussi équitable que possible la bande passante de l’anneau entr e les
diverses stations tout en privilégiant les messages urgents.
Les stations d’un réseau transmettent généralement leurs données selon deux f lux dif f érents. Une petite partie est émise
régulièrement et le reste ponctuellement.
Sur FDDI, chaque station est sûre de pouvoir émettre à chaque passage du jeton libre une petite quantité de données et est
sûre que le jeton libre revient relativement rapidement et régulièrement.
Les trames qu’on est sûr de pouvoir émettre sont dites synchrones. Ensuite, selon la disponibilité du réseau, la station pourra
peut être encore émettre plusieurs trames dites asynchrones.
Fonctionnement
A l’initialisation d’une station sur le réseau, on lui attribue deux valeurs :
- TTRT : Target Token Rotation Timer, qui sert à déterminer le temps maximal de transmission autorisé.
- Si : c’ est un pourcentage de TTRT, qui sert à déterminer le temps maximal d’émission de trames synchrones (Si * TTRT).
La somme des Si des stations du réseau est inf érieure à 100%, de sorte que si toutes les stations émettent pendant leur
temps maximum (Si * TTRT) en mode synchrone le jeton libre mettra au plus TTRT pour f aire un tour. De plus, chaque station
possède 2 timers :
- TRT: Target Rotation timer, qui permet de décompter le temps ef f ectif de rotation du jeton libre.
- THT : Token Hold Timer, qui permet de mesurer le temps disponible pour la transmission asynchrone.
Voyons comment une station se comporte :
o Etat initial : TTRT= 100ms
Si=20% soit 20ms de transmission synchrone.
TRT=TTRT=100ms.
o Instant t : Arrivée du jeton libre
La station n’a rien à dire, elle laisse passer le jeton mais déclenche quand même TRT.
o Instant t+60 ms : Nouvelle arrivée du jeton libre
TRT=100-60=40ms.
Cette f ois, la station a des trames à émettre en mode synchrone et asynchrone. THT se positionne à TRT soit 40ms et TRT se
repositionne à TTRT soit 100ms. La station transmet ses trames synchrones.
o Instant t+80 ms : La station a épuisé son crédit temps pour l’émission des trames synchrones.
TRT vaut 80ms et THT toujours 40ms.
La station commence à émettre ses trames asynchrones.
o Instant t+120 ms : La station a épuisé son THT et n’a donc plus le droit de transmettre en asynchrone.
THT vaut donc 0 et TRT 40ms.
Elle libère le jeton.
o Instant t+160 ms : Le jeton n’est pas revenu mais le TRT est arrivé au bout.
La station met un booléen, AT (Arrivée Tardive) à 1.
Elle remet le TRT à TTRT.
o Instant t+180 ms : Le jeton revient de nouveau.
Le f ait que le bit AT soit à 1 interdit à la station d’émettre des trames asynchrones cette f ois.
L’arrivée du jeton provoque la remise à 0 du bit AT.
Comment ça marche ? 54/120
TRT vaut 80ms.
La station peut émettre pendant 20ms des trames synchrones.
o Instant t+200 ms : La station cesse d’émettre ses trames synchrones et libère le jeto n.
o Instant t+230 ms : Le jeton revient.
Le TRT vaut 30 ms.
THT passe donc à 30 ms et TRT est réinitialisé à 100 ms.
La station peut émettre en synchrone pendant 20ms puis asynchrone pendant 30 ms.
o Et ainsi de suite…
Cette méthode permet qu’un jeton libre ne puisse pas mettre plus de 2 * TTRT à revenir. Ceci permet non seulement de
détecter un problème sur l’anneau mais aussi d’assurer à chaque station qu’elle pourra émettre en mode synchrone au moins
tous les 2 * TTRT.
16.6.7 . Le jeton réduit
Le jeton réduit est un processus qui permet à un groupe des stations de se réserver pendant un temps tout le traf ic
asynchrone, pour transmettre par exemple, un f lot de données important.
Lorsqu’une station décide d’utiliser cette méthode, elle attend un jeton libre, en mode synchrone, elle prévient les stations qui
doivent f aire parti de son groupe puis libère non pas un jeton normal mais un jeton réduit.
Avec ce type de jeton, les stations qui n’ont pas été invitées au groupe ne peuvent plus émettre du tout en mode asynchrone,
ce qui laisse de la bande passante pour celles du groupe.
Cette méthode n’altère pas la transmission synchrone. Lorsque les stations du groupe ont transmis toutes leurs données, la
station du départ, lorsqu’elle a récupéré le jeton, libère un jeton simple et le f onctionnement du réseau redevient normal.
16.6.8 . Gestion des priorités
Dans FDDI, la notion de priorité ne s’applique pas uniformément. En fait, les transmissions de trames synchrones sont les plus
prioritaires puisque ce sont les seules que l’on est sûr de pouvoir transmettre. Cependant, parmi ces trames, toutes ont la
même priorité. La notion de priorité s’applique donc uniquement sur la transmission asynchrone et en dehors de la notion de
jeton réduit.
Nous avons déjà vu que le jeton mettait au plus 2 * TTRT pour f aire le tour de l’anneau, mais que pour pouvoir transmettre des
trames asynchrones il fallait que ce dernier fasse le tour en moins de TTRT. La notion de priorité induit quelques contrainte s
supplémentaires au sujet du droit de transmettre des trames asynchrones.
FDDI prévoit 8 niveaux de priorité, le niveau de priorité (de 0 à 7) sera noté i. Pour le calcul du droit de transmettre des trames
asynchrones, les stations utilisent une f onction Pri qui est inversement proport ionnelle à i :

d’émettre une trame asynchrone n’est pas uniquement d’avoir le THT > 0, il f aut que le THT soit supérieur au résultat de Pri( i)
, i étant le niveau de priorité de la trame à émettre. De plus, la station n’aura pour cette trame que le temps de THT – Pri(i). Il
f aut donc prévoir si on aura le temps ou pas d’émettre cette trame. Pour cela, les stations calculent le temps d’émission de la
trame et vérif ient l’inégalité suivante : THT – Pri(i) ? Dm avec Dm qui indique le temps de transmission de la trame.
Voyons un exemple d’organigramme de calcul de droit d’émettre pour une station qui aurait dans sa pile trois trames : m1, m2
et m3 de priorités respectives 5, 7 et 0.
Après cet exemple dans une station, voyons le comportement du réseau avec un exemple simplif ié.
Nous prendrons un anneau comportant 5 stations notées A, B, C, D et E. Le TTRT du réseau est 100ms. Af in de simplifier, les
durées d’émission d’un jeton et tous les délais physiques sont négligés. Toutes les trames sont supposées avoir la même
longueur et un temps d’émission de 5ms. Le trafic synchrone (Si) est équitablement réparti entre toutes les stations, chacune
dispose de 5% soit 5ms (donc 1 trame). On suppose qu’une station veut émettre des trames qui ont toutes la même priorité et
qu’elle veut à chaque passage du jeton émettre le même nombre de trames :
A veut émettre une trame synchrone et 5 asynchrones de priorité 0
B veut émettre une trame synchrone et 1 asynchrone de priorité 1
C veut émettre une trame synchrone et 1 asynchrone de priorité 5
Comment ça marche ? 55/120
D veut émettre une trame synchrone et 2 asynchrones de priorité 0
E veut émettre une trame synchrone et 4 asynchrones de priorité 0
La f onction Pri(i) est déf inie comme ceci :
Pri(0) = 40
Pri(1) = 30
Pri(2) = 25
Pri(3) = 20
Pri(4) = 17.5
Pri(5) = 15
Pri(6) = 13.75
Pri(7) = 12.5
Voici les TRT et THT de chacune des stations durant
les deux premiers tours de jeton. (Au départ, aucun

traf ic n’avait été écoulé en synchrone et asynchrone


pendant les rotations précédentes du jeton). Le tableau nous permet de voir le mécanisme des limitations : certaines stations
n’ont pu émettre toutes leurs trames.

Le tableau suivant décrit le même exemple sur 8 tours de jeton en ne reportant que le nombre de trames asynchrones
transmises

On voit bien sur cet exemple, même si il est simpliste que le mécanisme de limitation fait tourner le solde de bande passante
disponible entre les diff érentes stations ayant des trames de même priorité tout en laissant disponible la bande pas sante
nécessaire aux trames de plus f ortes priorités.
Comment ça marche ? 56/120
16.6.9 . Gestion des fautes
Dans FDDI, on a pas de signal continu ni de moniteur comme dans TR. Il f aut donc d’autres moyens pour gérer les f autes.
On a déjà vu que le problème de la trame qui boucle est réglé par le f ait que la station émettrice purge ce qui lui arrive en
amont.
Pour la disparition du jeton, on utilise le f ait qu’il soit censé passer au moins tous les 2 * TTRT. En clair, si le jeton n’ est pas
arrivé lorsque TRT arrive à 0 et que le bit AT vaut 1, on sait que le jeton est perdu. La première station qui s’en aperçoit émet
une trame Claim Token avec son adresse et son TTRT. Un station qui reçoit un Claim Token avec un TTRT supérieur le
retransmet, s’il est égal, elle le retransmet si l’adresse source de l’émetteur est plus grande que la sienne. Dans les autres cas,
elle émet son propre Claim Token. Quand une station reçoit son Claim Token, c’est qu’elle est celle qui a la plus grande
adresse de celles qui proposent le plus grand TTRT. C’est à elle d’émettre un nouveau jeton et de prévenir les autres stations
du TTRT à utiliser.
Ce mécanisme induit qu’on a sur le réseau le TTRT le plus grand paramétré dans les stations et permet de changer ce dernier
en cours de f onctionnement. Il est néanmoins incontestable que l’on perd du temps à chaque perte de jeton.
Pour détecter une coupure on s’appuie sur ce mécanisme. En effet, une coupure induit une perte de jeton et donc l’émission
d’une trame Claim Token. Si on ne reçoit pas un Claim Token après un c ertain temps on sait qu’il y a une coupure. On émet
alors des trames Beacon à la f açon TR pour localiser la panne.
Les stations sont réparties dans deux classes de connexion. La classe A regroupe les stations ayant un réseau secondaire, en
cas de problème on reboucle donc sur ce réseau et la station reste connectée. Les stations de la classe B sont connectées
avec un seul réseau au concentrateur. En cas de problème le concentrateur la déconnecte.
16.6.10 . Insertion d’une station de classe A
Lorsque l’on insère une station de classe A dans un FDDI, on parle de croissance. Imaginons un cas où 3 stations de classe A
sont reliées à un concentrateur.

Lorsque la station B est débranchée les stations A et C utilisent leurs


réseaux secondaires comme dans la f igure ci-dessous :

Lorsque B est branché deux sous anneaux se créent reliant A et B d’un


coté, B et C de l’autre :

Ensuite, ces deux sous anneaux se relient en un seul pour relier A, B et C


:

Enf in, une des stations, A ou C raccorde l’anneau ABC au grand réseau :
Comment ça marche ? 57/120

Pour terminer, les stations vont se brancher uniquement sur le réseau


primaire :

16.6.11 . Conclusion
FDDI est une sorte de TR à hauts débits. Il est utilisé en tant que réseau
f édérateur par sa capacité à transmettre l’information rapidement sur de grandes distances. On le voit encore sur de nombreux
sites mais les réseaux modernes comme ATM sont en train de le remplacer.

16.7 . 802.9 : RNIS


RNIS signif ie Réseau Numérique à Intégration de Service. Numéris de France Télécom est un exemple de RNIS.
16.7.1 . Historique
Au départ, le téléphone effectue des transmissions analogiques : le microphone transforme l’onde sonore en onde électrique
qui est directement propagée sur le câble. La qualité de la voix est donc médiocre et il n’y a pas la possibilité de véhiculer des
inf ormations supplémentaires. Autre inconvénient majeur : au niveau inf ormatique, on ne peut pas transmettre 3500 bps. Les
modems, par codage ont permis quand même une amélioration limitée à 33 400 bps.
Aujourd’hui, en utilisant en partie Numéris (au niveau interne de France Télécom) et les modems de la norme X2, on peut
transmettre à une vitesses de 57 600 bps.
16.7.2 . Principe
On veut numériser le signal d’un bout à l’autre. Pour numériser la voix (q ui va de 300 à 3400 Hz) selon les techniques
traditionnelles il f aut 64 kbps (il f aut 8000 échantillons par seconde codés chacun sur 8 bits).
Le RNIS prévoit 3 canaux logiques sur un câble : 2 canaux dits « B » à 64 kbps et 1 dit « D » à 16 kbps. Pour sép arer ces
canaux le RNIS ef f ectue un multiplexage temporel fixé ; c’est à dire que sur 9 unités de temps, les 4 premières unités sont
réservées au premier canal B, les 4 suivantes aux 2ème canal B et la dernière au canal D. On dit que ce multiplexage est f i xé
parce que même si un canal est libre, les autres n’y ont pas accès. Les canaux B servent à transporter la voix, un fax ou aut re.
Le canal D sert à l’inf ormation du réseau (connexion, déconnexion, inf o sur l’appelant,…).
Le RNIS f onctionne sur un bus « S » qui accepte 8 appareils (f ax, téléphone, micro ordinateur,…) et une régie (standard
Numéris).
La régie reçoit l’appel et l’envoie sur le bus, les informations transitant sur un canal B, l’utilisateur peut recevoir une t élécopie
en même temps qu’une communication. On peut aussi transmettre à 2 * 64 kbps en utilisant les 2 canaux entre 2 ordinateurs.
Ce débit ne peut être utilisé pour Internet qui ne sait pas répartir le débit sur les 2 canaux (mais 64 kbps c’est toujours m ieux
que 56 kbps).
16.7.3 . Conclusion
RNIS a été normalisé en 1985, 10baseT n’existait pas encore, c’était alors des débits acceptables. Aujourd’hui 128 kbps
paraissent ridicules, on s’oriente donc vers le RNIS large bande (sur base ATM) qui permet des débits beaucoup plus élevés
et plus de communications en parallèle.
16.8 . CCITT X 25
16.8.1 . Introduction
X25 est un protocole de transport sur de longues distances avec un plan de numérotation international mis en place par le
CCITT.
On parle de WAN ou de réseau de transport par paquets en mode connecté. Transpac est une société de transport de
l’inf ormation basé sur X25.
X25 a beaucoup était utilisé dans les années 80 mais le f ait qu’il ne soit pas adapté aux hauts débits et à la f ibre optique f ait
qu’il arrive à bout de souffle. On va tout de même en parler ici pour deux raisons ; la première est que pour parler d’ATM, il
vaut mieux connaître X25 et Frame Relay ; la seconde est que X25 correspond au réseau minitel encore largement utilisé.
16.8.2 . Technologie
X25 déf init un réseau téléphonique pour ordinateurs. L’appelé peut ref user la communication, reconnaître l’adresse de
l’appelant, accepter un PCV, …
Comment ça marche ? 58/120
Dans la suite on appellera DCE (Data Communication Equipement) les modems et commutateurs X25.
En bref , dans X25, le DTE initie un appel via un numéro, le réseau route ensuite ce paquet d’appels et crée un circuit virtuel
(CV). Ce protocole est orienté connexion, c’est à dire que les équipements le long du chemin vont mémoriser le CV et réserver
des ressources pour la ligne.
Ce système permet une connexion avec un temps de réponse garanti et un contrôle d’erreurs tout au long du CV. Un autre
avantage est qu’après le paquet d’appels, on ne transmet plus l’adresse du destinataire mais seulement le numéro de CV. Par
contre si une ligne est coupée, il f aut se reconnecter.
16.8.3 . Caractéristiques
Le réseau X25 est basé sur de vieilles technologies et donc a un taux d’erreurs élevé. C’est ce qui le caractérise le plus ap rès
le f ait qu’il soit orienté connexion avec l’établissement d’un circuit virtuel.
En f ait, les taux d’erreurs élevés ont imposés un protocole qui limite énormément les débits. En effet, sur de longues distances
avec les taux d’erreurs de l’époque un paquet n’avait presque aucune chance d’arriver intacte à l’autre bout du réseau, il fa llait
donc absolument que les commutateurs discutent entre eux pour se renvoyer les trames (si on avait laissé ce rôle aux
stations, elles n’auraient jamais rien reçu). Leur dialogue qui prend une bonne partie de la bande passante consiste à ce que
le récepteur dise si il a bien reçu (RR : Receive and Ready), si il a bien reçu mais qu’il n’est pas prêt à en recevoir d’autres
(RNR : Receive but Not Ready) ou si il n’a pas bien reçu (REJ : Reject). Ce protocole est appliqué au niveau 2 et 3. De plus,
pour permettre d’avoir moins de chance qu’un paquet soit erroné, X25 le segmente et le réassemble à l’arrivée. Toute cette
gestion des f autes ralenti énormément le débit qui se trouve limité à 9600 bps par CV et 2 Mbps par ligne.
Remarque : La norme X25 est une description de l’interface à un réseau mais laisse libre le f onctionnement interne qui peut
très bien être du Frame Relay ou de l’ATM.
16.8.4 . Minitel
Le minitel n’a aucune notion de X25, il établit une liaison RCT asynchrone avec un PAD en f aisant un numéro comme 3614 ,
3615, …
Un PAD (Assembleur Désassembleur de Paquet) gère l’accès au kiosque Minitel par un réseau X25 ; c’est à dire qu’au départ
c’est lui qui gère l’affichage du minitel et les saisies. Ainsi il récupère un Mnémonique (METEO, VERIF,…) qu’il transf orme en
numéro Transpac correspondant au serveur visé. Ensuite, il établit un CV avec ce serveur. Par la suite c’est donc le serveur
qui va gérer l’af f ichage de l’écran Minitel, le PAD lui, gère la saisie et envoie les caractères f rappés vers le serveur.
16.8.5 . Conclusion
X25 est un vieux réseau qui a été normalisé avant l’arrivée des réseaux locaux mais il est toujours utilisé.
Transpac (qui est le grand utilisateur d’ X25) proposait des services de liaisons réservés à 64 kbps puis à 256 kbps en 1991.
En 1997, les débits proposés vont quand même sur X25 jusqu’à 2 Mbps.
Remarque : Le prix d’une connexion permanente avec un débit fixe entre Paris -Marseille reste « raisonnable » jusqu’à 2 Mbps
: en 1998 environ 15 000 F pour 64 Kbps et 70 000 F pour 2 Mbps par mois. Au delà, cela se fait mais pas en X25 : une liaison
à 34 Mbps reviendrait environ 900 000 F par mois mais est ce utile ?
16.9 . Frame Relay
Ce protocole de la même f amille qu’ X25 connaît un certain succès aux USA. Il est beaucoup moins lourd qu’ X25 puisqu e
normalisé à la f in des années 80, il se base sur des taux d’erreurs beaucoup plus f aibles.
16.9.1 . Caractéristiques
FR, comme X25 est basé au départ sur l’établissement d’un CV. Seulement en 89-90, les taux d’erreurs sont passés de 10-5
(en 80) à 10-8, ce qui permet d’alléger nettement le protocole. En premier lieu, FR n’effectue plus de segmentation, ensuite il
n’ef f ectue plus de contrôle entre les commutateurs. Le seul contrôle qui reste est le CRC qui est effectué au niveau matériel et
ne prend donc pas de temps. En cas de CRC erroné, le commutateur jette simplement la trame sans prévenir personne. La
gestion des erreurs se f era directement au niveau des stations dans les couches supérieures.
16.9.2 . Récupération de bande passante
En plus du f ait d’alléger le protocole FR offre la possibilité d’utiliser une partie de la bande passante libre. Pour cela, lorsqu’on
ouvre une ligne on donne deux débits ; le CIR (Commited Information Rate) et le EIR (Excess Information Rate). En fait le CIR
détermine le débit réservé, c’est à dire le débit qu’on est sûr de pouvoir transmettre. EIR détermine l’excès que l’on peut se
permettre : si on émet à plus de CIR+EIR les trames seront jetées par le premier commutateur. Entre CIR et CIR+EIR, on peut
transmettre mais on a aucune garanti que toutes les trames soient transmises.
16.9.3 . Fonctionnement
Physiquement, on ne varie pas la vitesse d’émission d’un bit, les variations de débit se font par l’insertion de silence. En fait, le
premier commutateur va vérifier la cadence d’émission, c’est à dire qu’il va se donner un laps de temps et compter les bits
transmis pendant ce laps de temps. La station pourra donc soit émettre des bits régulièrement soit envoyer d’un coup un gros
paquet puis observer un silence.
Pour le contrôle des débits, le premier commutateur sait donc dans quelle tranche se trouve une trame. Si elle est dans la
tranche CIR, il va l’envoyer directement sur le réseau. Si elle est entre CIR et CIR+EIR, il va l’envoyer en notant un bit no mmé
DE à 1. Si elle est au delà de EIR, il va la jeter directement.
Ce procédé permet ensuite dans le réseau de gérer les « embouteillages ». Lorsqu’un commutateur est saturé (ou plutôt avant
qu’il ne le soit), il jette toutes les trames ayant le bit DE à 1. Ainsi il se libère et peut transm ettre les trames obligatoires. Pour
ce processus, les débits CIR des CV cumulés sont en f ait réservés et correspondent à la capacité des commutateurs donc on
est sûr si on ne traite qu’eux de pouvoir les transmettre. Par contre, si on ajoute les EIR certai ns commutateurs ne pourraient
plus assurer, en f ait les débits CIR+EIR ne sont utilisables que si tous les CIR ne sont pas utilisés. C’est de la récupérati on de
bande passante, on permet aux stations de parler plus si les autres n’ont rien à dire.
Comment ça marche ? 59/120
Le principe donc est d’émettre à un débit CIR puis d’essayer un peu plus, puis encore un peu plus et ainsi de suite jusqu’à
émettre à un débit CIR+EIR ou jusqu’à recevoir une indication de congestion envoyée par un commutateur qui jette les trames
au bit DE=1. A ce moment, on revient à un débit de CIR et on reprend le processus. Revenir à CIR a deux intérêts.
Premièrement, les trames ne seront plus jetées et deuxièmement le débit du CV baisse brusquement, ce qui soulage le
commutateur qui était proche de saturer.
Ceci permet par exemple pour la voix de réserver un canal à 50 kbps de CIR avec 10 kbps d’EIR. On paiera donc moins cher
la ligne, on aura une voix mal transmise, hachée lorsque le réseau est saturé mais une voix très claire lorsqu’il est libre.
On peut aussi avoir une ligne avec 64 kbps de CIR et 32 kbps d’EIR qui permet d’avoir une bonne transmission de voix qui
devient d’une qualité exceptionnelle quand le réseau est libre. Ceci permet aussi pour la transmission de données régulières
mais pas constantes de ne pas bloquer une ligne sur laquelle on ne transmet presque rien. Pour des données, on va plutôt
prendre un CV du genre 4kbps de CIR et 156 kbps d’EIR (si l’opérateur accepte) ce qui permet d’effectuer de gros transf erts.
Pour la f acturation, il y a divers contrats, certains au débit réservé, d’autres à celui à utiliser,…
16.9.4 . Adressage
C’est un inconvénient pour FR, il n’y a pas de norme. En X25, on utilise la norme universelle du téléphone (préfixe, code pay s,
opérateur, adresse par secteur géographique, adresse station) qui permet d’avoir un lien X25 inter-opérateurs, inter-pays. En
FR certains opérateurs utilisent la norme du téléphone, mais d’autres pas. Il est donc dif f icile d’avoir une communication FR
internationale.
16.9.5 Conclusion
Ce mode de fonctionnement arrange finalement tout le monde puisque l’utilisateur paie moins et peut utiliser des débits plus
élevés qu’en X25 et l’opérateur peut vendre plus de débit que sont réseau peut assumer. FR est un réseau de transf ert de
données, de liaison de RL bien pensé mais ATM qui arrive avec des débits à 155 Mbps pour une technologie de même coût
f ont que FR ne sera certainement pas plus exploité que ce qu’il est aujourd’hui.
16.10 . ATM
16.10.1 Introduction
ATM = Asynchronous Transf er Method
Cette technologie est représentée depuis quelques années comme la technologie du futur. Elle permet de transporter à la f ois
voix, vidéo et données à des hauts débits (25, 155 et 650 Mbps) et cela sur de grandes distances. Au départ, seuls les
opérateurs ont utilisé cette technique qui ne peut vraiment pas se comparer à Ethernet ou TR (de niveaux 1 et 2) car ATM
représente presque tous les niveaux à lui tout seul.
En ef f et, beaucoup d’utilisateurs n’ayant que faire du transport de voix et de vidéo se sont satisf aits de 100 Base T. Mais 155
Mbps de débit garanti intéresse de plus en plus d’industriels dont les installations sont dépendantes du réseau informatique et
on trouve de plus en plus de réseaux ATM reliant des bus Ethernet. En fait, au niveau fonctionnalités si l’on veut l e comparer
avec un autre système, il faut parler de TCP + IP + Ethernet par exemple. En ef f et, IPv6 sur 100 Base T peut se comparer à
ATM puisqu’il peut transporter de la vidéo, mais à l’ heure actuelle on utilise Ipv4 qui n’est pas capable de transf érer
correctement de la vidéo en temps réel.
16.10.2 Commutation de paquets et circuit virtuel
Si l’on veut classer les techniques de communication, on a d’un coté la commutation de circuit où on réserve une ligne
physique pour une communication (RTC) et de l’autre la commutation de paquets où l’on envoie paquet par paquet.
Dans cette seconde technique, on distingue 2 f amilles :
- les datagrammes (IP) où les paquets suivent dif f érents chemins
- les circuits virtuels où on établit une connexion puis les paquets suivent toujours le même chemin .
Dans les circuits virtuels ou Gigabit Ethernet il y a encore 2 f amilles :
- La première transporte des paquets de longueur variable (X25 et FR)
- La seconde des paquets de longueur f ixe et courte : c’est ATM.
16.10.3 Cellules
Dans ATM, on parle de commutation de cellules (et pas de paquets) car on transmet les inf ormations par lots de 53 octets.
Ce chif fre de 53 octets a été choisi pour faire un compromis entre Américains (qui voulaient 64) et Européens (qui voulaient
32) on a donc pris 48 octets plus 5 octets d’entête.
Le choix de transmettre les données par petits lots de taille fixe est une caractéristique essentielle d’ATM, c’est le princi pe sui
permet d’augmenter de façon importante les débits. En effet, cette petite taille p ermet de réduire énormément les temps de
transit.
Prenons un exemple pour illustrer ce gain de temps :
Soit 2 stations reliées par 2 commutateurs. Prenons un débit de 10 Mbps et un temps de propagation entre commutateurs et
stations de 10ms.
Dans le premier cas, on transmet une trame de 100 Mo qui met donc 10s à être émise. Le premier commutateur f ini de
recevoir la trame après 10,1 s et la renvoie, le second a f ini de recevoir à 20,2s, puis la renvoie. La station destinataire a donc
reçu toute la trame au bout de 30,3s.
Dans le second cas, on transmet 100 trames de 1 Mo qui mettent donc 0,1s à être émises. Le premier commutateur a f ini de
recevoir la première trame à 0,2s puis la réemet. Il a reçu les 100 trames à 10,1s. Jusque là il n’y a pas de différence. Mais les
trames ayant été émises au f ur et à mesure, le second commutateur a tout reçu à 10,2s et le destinataire a tout reçu à 10,2
secondes.
On a donc d’un coté une transmission qui a pris 30,3 secondes et de l’autre 10,3 seconde !!
Comment ça marche ? 60/120
Un autre avantage est que les priorités sont prises en compte immédiatement : dans le cas où l’on transmet 100 Mo, même si
une trame de priorité supérieure arrive, elle doit attendre la f in de la trame soit 10s à 10 Mbps. Dans le cas de cellules de 53
octets, l’attente est de 41,2 micro secondes à 10 Mbps.
Enf in, le troisième avantage important est que le découpage f ixe des cellules permet un traitement Hardware qui est
quasiment instantané contrairement à un traitement logiciel qui prend un temps important.
16.10.4 Transfert asynchrone
ATM signif ie transf ert asynchrone, non pas parce que les stations et commutateurs ne sont pas synchronisés mais par
opposition à RNIS.
En ef f et, en RNIS, on f ait du multiplexage temporel fixe, c’est à dire qu’on découpe la bande passante touj ours de la même
f açon, de f açon synchrone. En ATM qui doit parler parle et peut parler pendant plusieurs intervalles de temps.
16.10.5 Adressage ATM
Les cellules étant de 53 octets, il est compréhensible qu’on ne pouvait se permettre d’avoir des adresses sur tro p d’octets.
Le principe de circuit virtuel permet de résoudre ce problème. Au départ une station qui veut parler à une autre doit se
connecter. Pour cela chaque station possède une adresse sur 20 octets. La station commence par envoyer une cellule avec
l’adresse de destination, les commutateurs routent cette cellule dans le réseau en créant au f ur et à mesure un circuit virtuel
entre chaque commutateur traversé et lui attribue un n° de CV différent entre chaque commutateur (sur 3 octets). Ceci permet
dans chaque commutateur d’avoir plus de 16 millions d’entrées et autant de sorties. La station ensuite n’indiquera dans la
cellule que les 3 octets du n° de CV la reliant au premier commutateur. Ensuite c’est chaque commutateur qui connaît les CV
à emprunter selon la provenance de la cellule. En fait le n° de CV est divisé en VPI et VCI. Le VPI est le n° du « conduit » à
utiliser (sur 1 octet donc 256 conduits peuvent être branchés). Le VCI est le n° de voie dans le conduit (sur 2 octets).
16.10.6 UNI et NNI
UNI : User Network Interf ace
NNI : Network Node Interf ace
UNI est la norme qui décrit l’interf ace de la station au premier commutateur, NNI celle qui décrit l’interf ace entre les
commutateurs. Il ne f aut pas confondre avec FR : NNI en FR signif ie Network to Netwo rk Interf ace et décrit l’interf ace entre
opérateurs.
Remarque sur VPI/VCI : au paragraphe précédent nous avons dit que VPI est sur 1 octet, ceci est vrai en UNI mais en NNI,
VPIcompte 12 bits ce qui monte le nombre de CV possibles à plus de 250 millions.
16.10.7 Cellule ATM

VPI : en UNI, 4 bits ne sont pas utilisés


PT : il indique le type de traf ic
1 bit indique le type de cellule : 0 = données et 1 = réseau
1 bit sert à indiquer une congestion éventuelles
1 bit est libre pour les évolutions ou pour les sys tèmes
CLP : c’est l’équivalent du bit DE de FR
HEC : c’est un CRC capable de corriger une erreur
Il n’y a pas de préambule car des cellules sont transmises en permanence (si il n’y a rien à dire, on transmet des cellules
vides) et les commutateurs sont réglés avec des horloges qui se décalent au maximum de 1ms tous les 3 ans. Mais il peut se
produire un décalage du câble ou autre. Dans ce cas, le HEC sera f aux plusieurs fois d’affilé. Les commutateurs se recaleront
par tâtonnement jusqu’à obtenir un HEC juste.
16.10.8 Catégories de services ATM
En introduction, on a dit rapidement que ATM avait pour vocation de transporter l ‘inf ormation au sens large : son, vidéo,
données inf ormatiques,… Chacun de ces domaines demande des contraintes différentes : la vidéo et la voix des délais faibles
et une vitesse constante, l’interconnexion de RL des débits élevés mais des temps élastiques, le transf ert de données des
temps élastiques et des débits corrects ponctuellement,… De plus, les taux d’erreurs doivent être beaucoup plus bas pour la
transmission de données inf ormatiques que pour celle de voix ou de vidéo.
ATM prévoit donc 5 services dif f érents selon ce que l’on veut transmettre :
- CBR (Continuous Bit Rate) : Traf ic à débit fixe avec des contraintes temporelles. Permet de f aire de l’émulation de circuit,
parf ait pour la vidéo.
- VBR – RT (Variable Bit Rate – Real Time) : Traf ic de débit variable avec contraintes temporelles. Tolère de petites variations
de délais, convient à la voix ou à la vidéo compressée.
- VBR – NRT (Variable Bit Rate – Non Real Time) : Traf ic de débit variable sans contrainte temporelle. On négocie un débit
moyen assuré. Idéal pour interconnecter des FR ou il f aut garantir le CIR.
- ABR (Available Bit Rate) : Traf ic de débit variable sans contrainte temporelle. On garantit optionnellement un minimum de
débit mais pas de bande passante permanent. Convient à l’interconnexion des RL.
- UBR (Unspecif ied Bit Rate) : Aucune garantie de service. Peut correspondre au transf ert de données.
En f ait en CBR et VBR, il y a réservation de ressources, pas en ABR ni UBR. Lorsque l’on se connecte au réseau on choisie
donc la qualité de service que l’on veut en f onction de ce que l’on doit faire. Mais ça ne suffit pas, il faut choisir les de scripteurs
de traf ic :
- PCR (Peak Cell Rate) : Débit en pointe maximal autorisé.
- SCR (Sustainable Cell Rate) : Débit moyen autorisé.
- MBS (Maximum Burst Size) : Nombre de cellules maximum autorisées à émettre d’af f ilé au PCR.
Comment ça marche ? 61/120
- CDV (Cell Delay Variation) : Flexibilité maximum autorisée au réseau.
- Max et Min CTD (Cell Transf er Delay) : Max et min du temps de transf ert.
- CLR (Cell Lost Ration) : Taux de cellules perdues.
- CER (Cell Error Rate) : Taux de cellules erronées.
16.10.9 Contrôle des taux
En f ait, le contrôle des taux se fera dans la station émettrice (TRAFFIC SHAPING qui permet de ne pas envoyer de cellule
quand on en a pas le droit) et dans le premier commutateur (TRAFFIC POLICING qui permet de tagger les cellules – bit CLP -
). Pour le contrôle des taux, on ap plique le GCRA (Generic Cell Rate Algorithm) appelé aussi l’algorithme du sceau.
Voyons un exemple de f onctionnement :
En CBR par exemple, le PCR représente le débit qui est sensé être constant à CDVT près. En f ait en CBR, le PCR
représentant le débit continu les cellules doivent être émises tous les 1/PCR. CDVT indique la variation maximale : on peut
émettre une cellule 1/PCR – CDVT après une autre mais pas systématiquement, il f aut qu’en moyenne les cellules soient
émises tous les 1/PCR.
Dans la technique du seau on note I le paramètre principal, 1/PCR et L la variation CDVT.Le seau a une capacité de L+I et il
ne doit jamais déborder. A chaque cellule émise, il se remplit de I (on ne peut donc pas émettre quand son niveau dépasse L).
L et I sont exprimés en ??qui représente le temps d’émission d’une cellule (I=4 signifie que 1/PCR=4 donc qu’on doit émettre
une cellule tous les 4 * temps d’émission d’une cellule). Le seau se vide automatiquement de 1 tous les ?.
Dans l ‘exemple on prend I=4,5 ? et L=3,5 ?.
Donc, au départ on émet une cellule, le seau
se remplit jusqu’à 4,5 ( I ) ; à la f in de
l’émission de la cellule le seau s’est déjà vidé
de 1 et donc son niveau est de 3,5. On peut
donc émettre tout de suite une seconde cellule
mais si on le f ait le seau sera rempli jusqu’au
bord (8) et il f audra attendre 4,5 ? (donc 5)
puisqu’on ne peut émettre que sur un temps
plein. Si on n’émet pas de cellule, le seau sera
vide au bout de 4,5 ?, ce qui correspond au
rythme normal. L’algorithme se résume par
l’organigramme suivant :
x : niveau du seau
L +I : Taille maximum du seau
L : Limite d’autorisation
LCT : Heure d’arrivée de la dernière cellule
Ta : Heure d’arrivée de la cellule actuelle

16.10.10 Contrôle de flux


Comme dans FR, les commutateurs signalent aux stat ions concernées lorsqu’il y a une congestion et jettent les cellules
tagguées de plus, le commutateur jette aussi les cellules UBR. Il y a un autre mécanisme qui permet de jeter toutes les
cellules d’un paquet si une cellule du paquet a été jetée (ce n’est pas la peine de transmettre des cellules d’un paquet qui sera
de toute f açon retransmis puisqu’il manque une cellule). Au niveau de la régulation des stations il y a plusieurs procédés :
- Le commutateur demande explicitement à la station de se mettre à un débit de tant ou simplement de ne pas augmenter.
- Le commutateur indique la congestion et la station réagit. Dans ce cas, la station augmente régulièrement son débit d’un petit
pourcentage, lors d’une congestion, elle le descend brutalement.
16.10.11 Les connexions
Au départ, les CV sont des connexions point à point non symétriques donc quand 2 stations discutent, elles créent 2 CV, 1
aller et 1 retour. Sur ATM on peut aussi créer des connexions point à multipoint (toujours non symétriques). Le CV au départ
est unique puis se duplique dans certains commutateurs pour arriver dans les dif f érentes stations. Il y a aussi un protocole
pour qu’une f euille (destinataire d’une liaison point à multipoint) s’ajoute. Elle crée un CV jusqu’à l’émetteur et lui deman de de
s’ajouter. Le défaut majeur de cette technique c’est que la plupart des réseaux ont des adresses de groupe et de broadcast
(tout le monde). Sur ATM, on comble ce manque en installant un serveur MARS qui est connecté avec une liaison point à
multipoint avec toutes les stations du réseau. Lorsque l’on veut « broadcaster » ou « multicaster » on lui transmet les cellules
et lui les dif f use.
16.10.12 Classical IP ou ATM (IPoA)
Prévu pour IPv4, c’est un protocole qui permet d’utiliser les protocoles IP sur ATM. Il permet de simuler les requêtes ARP, de
f aire du subnetting,… On peut donc utiliser directement IP sur ATM bien qu’ATM représente à lui tout seul toutes les couches.
16.10.13 LAN Emulation
Ce protocole consiste à faire croire aux couches supérieures que l’on est sur un réseau Ethernet. Pour cela sur le réseau ATM
sont installés 2 serveurs : un LES (LAN Emulation Serveur) qui a une table de correspondance adresses Ethernet – adresses
ATM et un BUS (Broadcast and Unknown Serveur) qui joue le même rôle qu’un serveur MARS. E nsuite, dans chaque station
une application (LEC) communique avec ces 2 serveurs et construit (et convertit) des trames Ethernet. Pour les niveaux
supérieurs, tout se passe comme si on était sur Ethernet. On peut donc utiliser Novell, IPx, IP ou autres. On peut même
connecter un switch Ethernet à un réseau ATM avec LAN Emulation. Le switch possède un LEC qui construira les trames
Ethernet pour le vrai réseau Ethernet, il s’enregistre auprès du LES comme adresse inconnu. Quand une station du LAN
Comment ça marche ? 62/120
Emulation ATM voudra parler à une station du réseau Ethernet l’adresse Ethernet du destinataire sera inconnue du LES et
sera donc envoyée au switch qui f era le reste.
Le procédé est très puissant puisqu’il permet de faire fonctionner tous les systèmes d’exploitation aux débits ATM. De plus, il
permet de composer plusieurs réseaux Ethernet sur un même réseau physique, ce qui a l’avantage dans des bureaux de
constituer les RL en f onction de l’utilité et non de la géographie.
16.10.14 Conclusion
La norme ATM f aite par ATM Forum permet d’obtenir des débits de 25, 155 et 650 Mbps. ATM permet d’être un réseau
f édérateur puissant, d’interconnecter toute sorte de RL de f açon transparente et rapide. ATM peut aussi être un réseau
métropolitain. Les réseaux publics utilisent aussi ATM q ue ce soit en tant que tel ou pour relier des réseaux FR (ou X25) ou
intra opérateurs. ATM permet aussi de faire des RL surtout si ceux-ci ont des vocations temps réel haut débit ou multimédia.
Bref , ATM est rapide, perf ormant, f iable et adapté à tous les transports d’inf ormations. C’est pour cela que l’on parle de
technologie du f utur.
Exemple d’ATM : la télévision câblée (en grande partie).
16.11 . 802.11 : les réseaux sans fil
16.11.1 Introduction
Ce réseau utilise des techniques similaires aux réseaux des GSM, mais cette norme décrit un réseau local qui a donc des
besoins et des contraintes différentes des réseaux GSM à vocation WAN. Ils sont peut utilisés car ils présentent peu d’intérê t
si ce n’est d’être impressionnants. Il est vrai que ça fait « pro » de se co nnecter au réseau avec son portable sans brancher
aucun f il ou d’avoir sur son bureau un écran et un clavier sans f il, cela dit les câblages réseaux dans les bureaux sont
relativement discrets passant par des rampes ou faux plafonds. De plus, même si on a pas de câblage réseau, il f aut tout de
même des câbles d’alimentation, on est pas a un f il près !!
Un exemple de transmission sans fil sans intérêt sont les souris que SUN a sorties pour ses machines. Elles transmettent
l’inf ormation par infra rouge. Ces souris, pour f onctionner correctement ont besoin d’un tapis spécial qui élimine les parasites
et d’un f il qui les relie au clavier pour l’alimentation! Si on considère en plus qu’elles ont un taux de panne 10 f ois plus élevé
qu’une souris classique, leur seul intérêt est vraiment de dire qu’elles transmettent l’inf ormation par inf rarouge.
16.11.2 Caractéristiques
La norme déf initive est très récente, elle date de 1998. On parle de réseau d’égal à égal, c’est à dire qu’il y a une discuss ion
bilatérale dans la zone de couverture. C’est un réseau d’accès à un réseau câblé via un point d’accès qui sert de répéteur
pour le réseau sans f il et de passerelle vers le réseau f ixe.
La f onction répéteur : Quand 2 stations du réseau veulent discuter, soit elles se trouvent proches et peuvent discuter
directement soit elles sont éloignées et utilisent donc 2 point d’accès différents qui f onctionnent alors comme des répéteurs .
C’est à dire que la première station va émettre une trame que va capter le point d’accès. Si il repère que la station destinataire
n’est pas parmi les stations qu’il gère, il va la transmettre au bon point d’accès (via le câble) qui va lui réemettre la tra me. La
station destinataire pourra alors capter et lire cette trame.
La f onction passerelle : Un tel réseau est en f ait un mélange d’un réseau câblé (Ethernet, TR,…) et d’un 802.11. Ces 2
réseaux utilisent des trames différentes donc les ponts d’accès se comportent en passerelle quand une station du réseau
câblé et une station du 802.11 veulent discuter en ef f ectuant une conversion des trames.
16.11.3 Méthode d’accès
La méthode d’accès à la parole se rapproche de celle d’Ethernet, on utilise le CSMA/CA. C’est à dire qu’on conserve le
principe d’écouter avant de parler pour voir si c’est libre (CSMA), mais l’écoute étant impossible pendant l’émission, on gère
les collisions de f açons dif f érentes.
16.11.4 Roaming
Ce Roaming est la fonction essentielle sur les GSM. C’est le fait que les stations peuvent être mobiles et donc changer le po int
d’accès. Dans 802.11 le Roaming n’est pas normalisé, chaque constructeur f ait comme il veut. Deux protocoles sont
principalement utilisés ; soit les stations se signalent régulièrement aux points d’accès, soit les points d’accès observent les
adresses sources des trames émises.
16.11.5 Conclusion
Le 802.11 a un débit potentiel de 10 Mbps, mais les bruits et la limite dus à la distance f ont qu’on utilise des débits de 1 à 2
Mbps avec des portées de 100 à 200m. Ceci dit, c’est une technologie qui plait et qui est f ortement étudiée. Une norme
hyperlan est en projet et devrait permettre des débits à 20 Mbps.
16.12 Introduction à l’administration des réseaux
16.12.1 Introduction
Le terme administration de réseaux recouvre l'ensemble des fonctions qui sont nécessaires pour l'exploitation, la sécurité, l e
suivi et l'entretien du réseau. II est nécessaire de pouvoir initialiser de nouveaux services, installer de nouvelles stations
raccordées au réseau, superviser l'état du réseau global et de chacun de ses sous ensembles, suivre de manière f ine
l'évolution des performances, évaluer et comparer diverses solutions, mettre fin à des situations anormales. L'administrateur a
besoin de trois grands types d'actions pour agir et suivre son réseau :
- Des actions en temps réel pour connaître l'état de fonctionnement de son réseau (surveillance et diagnostic des incidents,
mesure de la charge réelle, maintenance, contrôle, inf ormation aux utilisateurs,...) et agir sur celui -ci (réparation, ajout de
nouveaux utilisateurs, retraits,...), assurer la sécurité (contrôler les accès, créer/retirer des droits d'accès,...).
- Des actions dif f érées pour planif ier, optimiser, quantif ier et gérer les évolutions du réseau (statistiques, comptabilité,
f acturation, prévention, évaluation de charges,...).
Comment ça marche ? 63/120
- Des actions prévisionnelles qui lui permettent d'avoir une vision à moyen et long terme, d'évaluer des solutions alternatives,
de choisir les nouvelles générations de produits, d'envisager les configurations, de décider du plan d’extension, de vérif ier la
pertinence de la solution réseau pour un problème donné…
L'ensemble de ces objectifs ne peut être satisfait par un outil unique. I1 est nécessaire de f aire appel à plusieurs techniqu es
de l'inf ormatique et des mathématiques pour répondre à ces divers besoins. Nous distinguerons les fonctions liées à la gestion
au jour le jour du réseau, communément appelées outils d'administration (ou LAN manager), les outils de conf iguration et les
outils d'analyse et de mesure (analyseurs de protocoles, simulation et théorie des f iles d'attentes).
16.12.2 Objectifs de l'administration
Le rôle de l'administration du réseau est indissociable de la structure d'organisation de l'entreprise. Les f onctions assurée s par
un groupe d'utilisateurs (micro-ordinateurs, robots,...) sont de première importance dans la déf inition du service qui doit leur
être f ourni. L'administration du réseau doit posséder une bonne connaissance des entités réseau qu'il contrôle et une
compréhension claire de la manière dont le réseau local est utilisé. Cette connaissance est nécessaire pou r permettre des
actions efficaces: réponses rapides aux questions posées par les utilisateurs, suivi précis de l'utilisation ef f ective du rés eau,
évolution des logiciels, matériels, protocoles, applications.
La qualité de l’administration du réseau peut g énéralement être jugée en f onction de la disponibilité (i.e. durée de
f onctionnement sans interruption) et du temps de réponse.
Pour ef f ectuer une bonne administration, l’administrateur a besoin de procédures d'interventions et d'outils adaptés aux
conditions d'exploitation du réseau.
Dans un environnement réseau les procédures les plus f réquemment citées sont :
Sauvegardes
Gestion de l’espace disque
Implantation de logiciel
Implantation de nouvelles versions
Modif ication de conf iguration
Rechargement de f ichier
Gestion des droits d’accès

Dans ces procédures, nous devons distinguer ce qui concerne spécif iquement le réseau et ce qui est du domaine des
applications. II y a bien sûr un lien étroit entre ces deux domaines. Par exemple, l’implantation d'un logiciel est du domaine des
applications mais est liée à la définition de son adresse réseau. Les types de services liés aux applications sont dépendants
des systèmes d'exploitation des stations du réseau, par contre certaines fonctions sont spécifi ques au réseau et doivent rester
transparentes aux utilisateurs :
- méthode de conf iguration du réseau (nom et adresse des stations, localisation, . . . )
- initialisation du réseau
- détection, localisation et réparation des f autes qui peuvent se produire dans le réseau
- gestion et diffusion du logiciel: outil assurant la diffusion des logiciels réseau par transf ert de f ichiers et mémorisation des
versions disponibles sur chacun des postes du réseau
- gestion des erreurs et des incidents: outils déterminant la cause des incidents, il faudra pouvoir sélectionner les applications
et les objets concernés, af f icher les erreurs, les historiques, les états, et lancer des procédures de test
- la visualisation de la conf iguration et de l'état du réseau
- la visualisation des éléments de statistiques ou mesures des dif f érents éléments du réseau; il f aut mesurer la charge des
ressources réseau (canal, segment du réseau, nombre de messages, taille des messages, couples source -destination,
f réquence,...) pour améliorer leur utilisation et prévoir les extensions possibles; de même, il f audra mesurer les temps de
réponse (moyen, maximum, en f onction de l'heure de la journée, en fonction de la charge du canal, du coupleur), déterminer la
conf iguration optimale en f onction de la charge du réseau, et mesurer la réserve de puissance ainsi que la capacité
d'extension
- quantité de trafic allant d'un sous réseau à un autre sous réseau. Nombre de messages traversant les ponts, les routeurs,
délai de traversée,. ..
- surveillance: outil de visualisation en temps réel de la disponibilité du réseau; I'alerte sera donnée par des critères
paramétrables tels que le taux d'occupation du canal, la taille des f iles d'attente, le nombre de messages par seconde, etc.
- protection des inf ormations et vérif ication des sources et des destinataires des requêtes
- authenticité et validation du nom de la station, codif ication/identif ication et administration des mots de passe.
Toutes les f onctions précédentes nécessitent un transport d' informations entre le gestionnaire du réseau et les entités qui le
composent Une base de données d'informations d'administration sera constituée sur un site spécialisé à cet ef f et qui collecte
et distribue les informations relatives à l'ensemble du réseau. L'accès à cette base de données est ef f ectué par un ensemble
de f onctions accessibles soit uniquement par l'administrateur, soit par n'importe quel utilisateur du réseau selon le type de
f onction.
L’administrateur peut accéder par l’intermédiaire des fonctions administration à tous les paramètres réseaux de tous les sites.
Chaque utilisateur peut accéder à une partie de la base de donnée via les f onctions qui lui sont of f ertes.
16.12.3 La normalisation ISO
L'administration de réseaux, compte tenu de sa complexité et de la confusion qui régnait a été normalisée par l'ISO au niveau
de la "couche application" du modèle OSI
Cependant, le succès de TCP-IP développé pour INTERNET f ait office de standard et a généré un autre protocole de gestion
de réseaux relativement simple appelé SNMP (que nous verrons ensuite).
CMISE: Common Management Inf ormation System Element est le nom du système d'administration de réseau ISO. Au niveau
application un processus appelé MAP (Management Application Process) réalise les fonctions d'administration. II est constitué
au minimum:
Comment ça marche ? 64/120
- d'un gestionnaire local, LSM (Local System Manager) qui permet d'accéder à la base de données MIB (Management
Inf ormation base) locale. Celle-ci est constituée des mesures ef f ectuées localement et d'inf ormations d'état ou de routage.
- d'un agent d'administration global appelé SMAE (System Management Application Entity) qui gère entre autre les
interactions entre les SMAE, les interf aces humaines. SMAE utilise les services ISO, ROSE (Remote Operation Servi ce
Elements) et ACSE (Association Control Service Elements). SMAE est donc, au sens de la couche application un AE
(Application Element) et est constitué d'un ensemble d'ASE (Application Service Element). Chaque ASE of f rant lui même un
ensemble de primitives pour l'administration du réseau.
L'exécution d'une primitive est faite par invocation d'appels de procédures (ASE) distants appelés RO (Remote Operation) par
l'ISO. Pour ces appels l'ISO préconise l'utilisation d'associations d'application mises en oeuvre à travers l'ACSE (Application
Control Service Element). La communication sur ces associations, donc entre deux processus d'administration, est régie par le
protocole CMIP (Common Management Inf ormation Process), CMIP est largement inspiré des travaux et implémentations de
DECnet.
Les services actuellement déf inis pour CMISE sont:
- M-INITIALISE: établit une association avec une entité de gestion homologue. Le service ISO est un service sur connexion
avec conf irmation.
- M-TERMINATE: termine une association.
- M-EVENT-REPORT: permet à un utilisateur de CMISE de signaler un événement d'administration à l'entité distante.
- M-GET et M-SET: permettent respectivement de lire ou d'écrire des inf ormations d'administration. Les inf ormations
d'administration sont appelées MIB dans chaque site. Elles peuvent par ces deux primitives être lues ou modifiées à distance,
- M-ACTlON: permet à distance d'activer une f onction d'administration sur un site local. Par exemple lancer un test de
réf lectométrie sur un réseau local distant, invoquer le service d'écho,...
- M-CREATE et M-DELETE: permettent de créer ou tuer à distance une nouvelle instance d'un objet d'administration
(programme, variable, donnée,. . . ).
Cet ensemble de primitives permet de construire les services d'administration de réseaux utiles. II sera possible avec ces
primitives de construire les services de conf iguration, test et diagnostique: gestion des f autes, maintenance, mesure de
perf ormances, sécurité, gestion de répertoires, comptabilité,...
Associé aux primitives précédentes, CMIP décrit le protocole de dialogue entre les SMAE. CMIP est basé sur le service sur
connexion offert par ROS (Remote Operation System). Ceci peut apparaître lourd alors que dans de nombreux cas un service
à datagramme serait suff isant ou même plus pratique (dif f usion). Le choix du service sur connexion est cohérent avec la
philosophie du travail ISO qui s'appuie essentiellement sur des services sur connexion.
La normalisation ISO déf init 4 niveaux dans une administration de réseaux :
- le niveau f onctionnel,
- le niveau organisationnel,
- le niveau inf ormationnel,
- le niveau communication.
Le niveau fonctionnel
Le niveau f onctionnel intègre les f onctionnalités suivantes :
- la gestion de la conf iguration,
- la gestion des anomalies,
- la gestion des perf ormances,
- la gestion de la sécurité,
- la gestion f inancière.
Le niveau organisationnel
Le niveau organisationnel décrit la répartition de l'administration de réseaux OSI entre :
- agent et rôle d'agent,
- manager et rôle manager,
- partition des activités de l'administration.
Les activités d'administration sont réalisées au travers de la manipulation des objets gérés. Les interactions entre AE
(Application Entities) utilisent les services et les opérat ions.
Le niveau informationnel
Le niveau inf ormationnel prend en compte la base d'information d'administration mise à disposition par la MIB qui est une base
de données qui réf érence l'ensemble des objets déf inis et gérés dans le réseau.
Le niveau communication
Le niveau communication permet l'interaction entre l'application manager / agent et l'application agent / manager au travers du
service CMIS et du protocole CMIP qui le véhicule.
16.12.4 Le standard SNMP
La grande diffusion et l'utilisation du standard de transport de données TCP-IP ainsi qu’ INTERNET ont permis de développer
un standard d'administration de réseaux relativement simple mais qui diffère de la normalisation ISO. SNMP devenu standard
f onctionne aussi avec les protocole appletalk et ipx.
Une architecture SNMP se compose de :
- un ensemble de nœuds gérés (agent SNMP),
- une station de gestion centralisée (manager SNMP),
- un protocole de gestion pour l'échange entre la station et les nœuds de réseaux.
- une sécurité par authentif ication et appartenance au prof il de communauté SNMP.
Dans SNMP, chaque agent recense les informations dans la base de gestion (appelée comme dans le modèle OSI : MIB) et
échange des données avec le manager. La base de gestion est un ensemble de données et d’éléme nts prédéf inis :
- type de noeud (hôte, passerelle,....),
- l'adresse IP du nœud,
Comment ça marche ? 65/120
- le mécanisme de routage,
- le nombre de paquets reçus,
- le nombre de paquets erronés en émission,
- le temps de transmission minimal.
La structure de ces objets est appelé SMI (Structure of Management Inf ormation).
L’agent administrateur se contente ensuite d’effectuer des set (met une valeur dans une MIB) et des get (lit une valeur dans
une MIB) sur les dif f érentes MIB distantes.
16.12.5 Les catégories de téléadministration
Gestion des conf igurations
La gestion des configurations intègre les outils de télé exploitation sur le réseau af in de réaliser les inventaires techniqu es de
composition des équipements, les télé conf igurations, les paramétrages et mise en exploitatio n depuis le poste central.
Gestion d'exploitation des réseaux
Elle comprend les outils permettant la télé exploitation sur le réseau af in de permettre :
o le pilotage des ressources à distance,
o la surveillance du f onctionnement en temps réel et l'aid e au diagnostic de pannes.
Gestion des perf ormances
La gestion des performances comprend les outils permettant la télé exploitation sur le réseau af in de remplir les f onctions
d'aide à la planif ication des évolutions.
Elle consiste à mesurer l'activité des ressources réseaux, d'analyser les évolutions probables comparées à celles prévues
(montée en puissance du réseau en nombre de postes et d'applications etc..) en ef f ectuant des simulations.
Gestion de la sécurité
La gestion de la sécurité comprend les outils permettant la télé exploitation sur le réseau af in de remplir les f onctions de
gestion technique et de sécurité :
- Sécurité physique du réseau (déf auts d'alimentation, de câblage, d'accès aux ressources contrôlées),
- Contrôle d'accès logique à l'architecture du réseau (authentif ication des utilisateurs),
- Conf identialité et intégrité des données, des programmes et de la prise en main à distance,
- Analyse de la vulnérabilité du réseau, et dispositif s de back -up assurant la continuité de service.
Gestion administrative
La gestion administrative comprend les outils permettant la télé exploitation sur le réseau af in de remplir les f onctions de
gestion du parc des équipements matériels et logiciels installés, des activités liées et de la mainte nance associée.
La gestion des moyens comprend :
- la liste des équipements, services avec tri multi-critères,
- les modèles de conf igurations automatique,
- la localisation géographique et suivi dans le temps,
- la gestion des contrats de maintenance, des commandes, livraisons,
- le suivi de changement de version,
- la planif ication, gestion des délais, des tests et analyse statistique d'activités.
La gestion des incidents comprend :
- la gestion des anomalies, de leur suivi et de l'historique,
- l'analyse statistique avec un tableau de bord de qualité de service.
La gestion f inancière des équipements comprend :
- la gestion du parc installé et des stocks,
- l'af f ectation budgétaire des équipements,
- l'analyse statistique f inancière des équip ements.
16.12.6 Les équipements concernés
Les équipements concernés comprennent l'ensemble des éléments matériels et logiciels concourant à l'exploitation du réseau
et susceptibles de subir des modifications, de la maintenance ou toutes autres interventions nécessaires à la maîtrise globale
du réseau, ils incluent :
- l'inf rastructure de câblage,
- les réseaux logiques comprenant les couches ISO de 1 à 4 (HUB, Ponts, routeurs),
- les serveurs et périphériques (Netware, unix),
- les postes de travail connectés (P.C., machines apple, station de travail unix),
- les applications (principalement sur serveur),
- les services applicatif s (DNS, messagerie, …).
16.12.7 Les outils systèmes et réseau « natifs »
Les outils dits systèmes et réseaux natifs, sont en f ait des commandes mis à la disposition de l’administrateur (parf ois même
aux utilisateurs) directement par le système d’exploitation du réseau. Il existe bien sûr des outils perf ectionnés, mais bien
souvent l’administrateur doit utiliser ces commandes pour analyser et administrer son réseau.
Les commandes suivantes sont pour la plupart relatives à Unix mais se retrouvent souvent.
If conf ig
Sous IP, pour utiliser une interf ace, il f aut la rendre active et lui assigner une adresse Internet, c’est un des rôles de la
commande If conf ig. Elle permet en plus de modif ier cette conf iguration et d’en lister les caractéristiques.
If conf ig interf ace f amille_protocole [adresse [destination]][option]
If conf ig –a|-au|-ad
L’option –a af f iche toutes les interf aces, -au celles actives et –ad celles inactives.
Route
C’est la commande qui permet de manipuler la table de routage.
Comment ça marche ? 66/120
Route [-f ] [-n] [commande]
-f provoque le vidage de la table de routage.
-n f ait que l’af f ichage se f ait par les adresses IP et non par les noms symboli ques.
Les commandes sont nombreuses, il y a add pour ajouter une route, delete pour en enlever une, monitor pour af f icher les
changements, …
Ex : route add def ault nom.du.rou.teur 1
Ici on indique à la station que par déf aut (si elle n’a pas de route ex plicite pour envoyer un paquet) elle envoie à
nom.du.rou.teur qui est à une distance de 1 routeur.
Netstat
Netstat permet d’af f icher un certain nombre d’éléments et de statistiques concernant l’activité sur un réseau.
Netstat –i | -s | -a | -r | -n | -p | -m | -f
Les statistiques vont de la liste des connexions établies aux tables de routage en passant par le nombre de collisions,
l’occupation de la mémoire du module de réseau, l’activité des interf aces, le nombre de paquets émis, l’utilisation des
protocoles TCP, UDP, ARP, IP, ICMP,...
Ping
La commande Ping utilise le protocole ICMP (inclus dans TCP/IP).
Ping [-f ] adresse
Le principe est que la commande envoie un paquet vers l’adresse d’une machine. Cette dernière doit le renvoyer. Ainsi on
peut vérif ier non seulement que la machine de telle adresse est bien présente sur le réseau, mais en plus on peut voir le
temps d’un aller retour sur le réseau d’un paquet. L’option –f permet de faire un f lood ping, un paquet est envoyé soit quand on
reçoit une réponse soit au bout de 1 centième de seconde et un point s’af f iche à l’écran.
A chaque réponse un point est effacé, ce qui f ait que les points restant à l’écran sont les requêtes sans réponse. Une telle
commande est bien sûr dangereuse pour le réseau puisq u’on le sature de paquets ping.
Spray
Cette commande est une sorte de f lood ping un peu plus évolué. Un ensemble de paquets est envoyé par f lot vers une
machine, en réponse on obtient le nombre et le pourcentage de paquets non reçus mais aussi le taux de transf ert maximal.
Attention c’est une commande à utiliser avec parcimonie, des « virus réseau » se sont basés dessus en lançant à une date
précise un programme reproduit auparavant sur plusieurs machines qui lancent un spray en boucle.
Etherfind
Cette commande SUN OS permet de tracer les trames qui circulent sur le câble, de visualiser les protocoles utilisés et
d’analyser leur contenu en hexa. Sachant que des protocoles comme ftp ou telnet utilisés couramment transportent par déf aut
les login et mots de passe non cryptés, un simple Etherf ind peut permettre de pirater des mots de passe.
Snoop
C’est l’équivalent de Etherf ind sous Solaris.
Tcpdump
C’est l’équivalent de Etherf ind et snoop sous BSD.
nslookup
nslookup interroge des serveurs de noms sur les ressources (adresse IP et nom d’une machine, serveur de messagerie, …)
d’un domaine particulier en ouvrant une session interactive, ce qui permet de demander un grand nombre d’inf ormations et
d’ef f ectuer de multiples consultations.
Host
Cette commande a un comportement similaire à nslookup mais peut collecter des informations complémentaires. De plus sa
commande debug permet de tracer les requêtes émises.
Rup
La commande rup envoie une demande d’information en diffusion et affiche les réponses collectées par ordre d’arrivée avec le
nom des stations, leurs charges, et le temps écoulé depuis leur dernière mise en route.
Rusers, users ou who –q
Ces commandes semblables donnent la liste des utilisateurs pour l’ensemble des machines du sous réseau auque l on
s’adresse.
Wall ou Rwall
Ces commandes permettent d’envoyer un message à l’ensemble des utilisateurs loggés sur des machines choisies du réseau.
Peut être utilisé par exemple pour prévenir de reboot d’une machine !
Nfsstat
Nf sstat affiche les statistiques d’appel aux procédures NFS (serveur de f ichier), celles réussies, celles qui ont échoué, …
Showmount
Showmount est aussi une commande relative à NFS mais plus de vérification. Elle est destinée à être utilisée sur les serveurs
af in de connaître les dossiers exportés, ceux qui sont montés par des clients ainsi que les noms de ceux -ci !!!
Ruptime
La commande Ruptime donne pour l’ensemble des machines du sous -réseau le temps écoulé depuis la mise en marche ou
l’arrêt , le nombre d’utilisateurs logés ainsi que le nombre de processus présents dans la queue d’exécution dans la dernière
minute , les 5 dernières minutes et le dernier quart d’heure. Ruptime permet aussi de connaître les utilisateurs inactif s dep uis
plus d’une heure !!
At
Le rôle de la commande At est simplement de lire un f ichier censé contenir des commandes et de l’enrober des inf ormations
nécessaires pour que le gestionnaire des taches puisse le lancer à l’heure dite.
Lpq, lprm et lpstat
Lpq permet de voir les travaux dans la f ile d’attente d’une imprimante, lprm permet de les supprimer. Bien sûr un utilisateur n’a
le droit de supprimer que ses propres impressions, seul l’administrateur a le droit de tout supprimer. Lpstat et cancel
permettent de voir et supprimer les impressions en cours.
Comment ça marche ? 67/120
Last
La commande last rapporte les dates et heures de connexion et déconnexion d’un utilisateur !
Fstat
Cette commande liste les fichiers ouverts (les f ichiers de données mais aussi les binaires donc les programmes en cours
d’utilisation !) et les répertoires associés.
Il y a bien sûr encore un grand nombre de commandes, le mieux est soit d’avoir une documentation avec une bonne table des
matières, soit de demander conseil à des gens d’expérience le moment venu !!
16.12.8 Outils du domaine public
Les outils suivants sont eux aussi fortement liés au système d’exploitation mais issus du domaine public. C’est à dire qu’il sont
utilisés sur quasiment tout les systèmes, à l’inverse des précédents qu’on trouve sous Unix.
Traceroute
Traceroute est une commande qui permet de connaître la liste des routeurs traversés lorsque l’on veut atteindre une machine
distante.
Fping
Fping est un peu l’équivalent de ping –f , il permet de tester l’accessibilité de plusieurs machines distantes.
Whois
Whois permet d’interroger une base de données contenant des inf ormations sur les réseaux et leurs routeurs (nom de
domaine, adresse des serveurs, nom de l’administrateur, son adresse e-mail, tél, fax, adresse postale, politique de routage,
système utilisé, …). Pour cela il f aut lui donner en paramètre une adresse de serveur :
rs.internic.net réseaux hors Europe
whois.ripe.net réseaux européens
whois.nic.f r réseaux f rançais
C’est l’administrateur qui est en charge de s’enregistrer et de maintenir à jour la base de donnée.
Lsof
C’est l’équivalent de f stat d’ Unix dans le domaine public.
Tcpdump
Nous l’avons déjà vu sous BSD, c’est un outil qui permet d’observer les trames qui circulent sur le câble. Il existe aussi tcpview
qui permet de f aire la même chose mais qui est un outil graphique bien plus exploitable.
Ttcp
C’est un outil d’évaluation des performances en terme de débit très gourmand en bande passante lorsqu’il teste les capacités
du réseau.
Nnstat
Nnstat est un outil d’analyse statistique qui permet l’accès aux données classiques mais qui ne les met pas en f orme. Les
résultats sont brutes et assez dif f iciles à traiter.
Netman
Cet outil permet d’avoir une vue instantanée du trafic et d’obtenir des analyses. Il permet aussi de voir les concentrations de
connexions et d’analyser les paquets qui circulent.
Internet rover
Internet rover permet de surveiller la présence des équipements sur le réseau (comme ping en plus évolué) et de vérif ier la
disponibilité des services de messagerie, de nom, f tp, …
CMU SNMP, MIT SNMP toolkit
Permet d’utiliser directement le protocole snmp en effectuant les get et les set afin de vérif ier et de modif ier l’état d’un agent
snmp.
16.12.9 Plates-formes intégrées
Certes nous venons de voir que l’administrateur a à sa disposition beaucoup d e commandes lui permettant d’analyser et d’agir
sur le réseau, mais celles ci ne sont pas forcément adaptées a ses besoins et faciles d’utilisation. La première solution souvent
utilisée est d’écrire des scripts qui à partir de ces commandes réalisent les actions voulues avec des noms explicites. Mais il
f aut savoir qu’il existe aussi des plates-f ormes intégrées qui permettent une administration simple et conviviale :
Solstice Enterprise Manager (SUN): supporte de nombreux packages ( Cisco, Novell, Sun, PC compatibles, …)
HP Openview (HP): Ensemble de logiciels assez complet et peut être même trop, mais donne de bon rapports statistiques.
Existe chez IBM, Sun, HP et d’autres.
Systemview (sous NT) : est issu de Netview 6000 (lui même issu de HP Openview) et de Tivoli. Existe chez IBM, Sun, HP et
Cabletron sous Unix.
Spectum (Cabletron) : Ensemble très complet, il nécessite néanmoins une station d’administration puissante. Gère la plupart
des matériels rencontrés y compris Appletalk.
ISM – OpenMaster (Bull) : C’est une plate-forme orientée objet (comme spectrum). Fonctionne sur SCO, Sun solaris et HPUX
avec windows NT.
SNMPc : Ne tourne que sur PC (Dos ou Windows) mais a l’avantage d’être peu coûteux et d’avoir un panel de f onctionnalités
simple mais ef f icace.
16.12.10 Outil matériel
Jusqu’à présent on a parlé des outils logiciels mais il ne f aut pas oublier les outils matériels.
Les analyseurs de réseaux
Les analyseurs de réseaux se branchent sur le réseau comme une station classique. Leur f onction est en fait de récupérer tout
ce qu’ils voient passer sur le support. Les RL f onctionnant par diffusion, l’analyseur va pouvoir observer tout le traf ic du sous
réseau et of f rir sur son écran la possibilité de visualiser plusieurs type d’inf ormation :
- l’af f ichage des trames collectées
- une sélection de trames selon un f iltre
Comment ça marche ? 68/120
- la datation exacte du passage d’un message
- le comptage des paquets et leur taille moyenne
- le nombre de collision
-…
De plus, l’analyseur peut déclencher l’analyse par rapport à une heure mais aussi par rapport à un évènement ou une suite
d’événements.
Avec un tel outil il est simple d’obtenir les taux d’utilisation de réseaux (utile et réel), les débits générés et reçus par chaque
station, … et de les visualiser directement avec des courbes bien plus lisibles que les suites de chif f res.
L’analyseur est aussi essentiel dans l’administration par ses fonctionnalités de simulation : il va pouvoir générer un traf ic avec
des débits contrôlés, des longueurs de trames contrôlées, ….
Son inconvénient majeur est qu’il se limite au sous réseau qu’il observe.
Pont et routeur
Les ponts et les routeurs sont par déf initions raccordés aux dif f érents sous réseaux et de ce f ait placés idéalement pour
collecter les mesures. Il a donc été naturel d’ajouter à ces équipements des f onctions d’analyseurs de réseau !!
16.12.11 Conclusion
Administrer un réseau, c'est tirer le meilleur parti de la structure que l'on utilise. C'est un système dual car la conceptio n d'une
administration dépend étroitement de la structure gérée mais le comportement futur de cette structure dépendra f ortement de
son administration.
L’administrateur réalise la configuration des systèmes d’exploitation et veille au bon f onctionnement du matériel. Il met à l a
disposition des utilisateurs un environnement fiable, convivial et homogène (soit en utilisant la télédistribution pour installer sur
tous les postes des versions identiques soit en utilisant des terminaux qui ne f ont qu’afficher les applications qui se dérou lent
sur le serveur). Il permet aussi à l’entreprise d’économiser les investissements matériels inutiles (en partageant les
imprimantes par exemple). Il tient un rôle essentiel dans l’entreprise.
L'entreprise nécessite l'information instantanée et n'hésitera pas à surdimensionner son architecture physique. Cependant ce
n'est pas une solution pour réduire la congestion de trafic souvent due au manque d'outils et de compétences pour la gestion
et l'optimisation des réseaux. C’est finalement quel que soit le support utilisé, des compétences et souvent de l’expérience de
l’administrateur que dépendront les perf ormances d’un réseau !!!
16.13 Systèmes d’exploitation de réseaux
Déf initions : logiciel qui sert à contrôler l’ensemble des activités du réseau.
16.13.1 Introduction
Les PC sont restés assez longtemps sans réseau, il a f allu attendre la f in des années 80 pour voir une société (Novell)
proposer enfin des serveurs de fichiers et d’impressions (Netware) et des couches réseaux sur les PC en MSDOS. Ensuite
Microsof t et IBM ont proposé leurs solutions (Netbios et Lan Manager) avec un serveur sous OS/2.
Maintenant on trouve deux types de réseaux, le poste à poste et le client -serveur.
16.13.2 Réseaux Client-Serveur
Son principe est basé sur le fait que la plupart des stations du réseau sont des postes d e travail qui n’offrent pas aux autres de
service mais qui sont « clients » d’un ou plusieurs serveurs qui proposent par exemple un disque réseau avec les f ichiers
communs.
Les deux systèmes d’exploitation de réseaux les plus connus sont NT serveur et Net ware.
Windows NT serveur
C’est un système fiable et performant qui connaît actuellement un succès croissant. Les ordinateurs clients dans ce réseau
doivent utiliser soit Windows 95, 98 ou NT soit MacOs soit unix ou un de ses dérivés.
Novell Netware
C’est certainement le plus utilisé. Netware arrivé dans le tout début des années 90 a l’avantage qu’un simple PC sous DOS
permette d’administrer le réseau. Il peut accueillir jusqu’à 500 utilisateurs concurrents et accepte comme clients de multipl es
plates-f ormes :
DOS seul, DOS + Wf W, Windows 95, 98, NT, OS/2, MacOs, Unix et ses dérivés, …
Il utilise les protocoles IPX/SPX et fourni aux développeurs des API et autres outils pour le développement réseau. Il a été le
premier système modulaire : les NLM (Netware Loadable Module) représentent sous f orme de modules les dif f érentes
applications réseau, elles sont chargeables et déchargeables dynamiquement.
Dans ces deux systèmes, l’utilisateur se connecte au serveur depuis son poste avec un login et un mot de pas se. Ensuite il
peut accéder aux données du serveur selon les droits que lui a accordé l’administrateur. Les choses se compliquent lorsqu’il y
a plusieurs serveurs, il faudrait se connecter plusieurs fois avec éventuellement des logins et mots de passe dif f érents. Pour
cela, on a ajouté un niveau, Novell appelle cela NDS (Network Directory Service) alors que Microsof t parle de domaine. Tout
cela correspond au NIS (pages jaunes) d’Unix, un serveur central accèpte les connexions des utilisateurs et va transmet tre
l’inf ormation aux autres serveurs. Il suf f it donc d’une connexion pour avoir accès aux imprimantes, aux f ichiers, …
16.13.3 Réseaux poste à poste
Beaucoup de sites n’ont pas les moyens ni les compétences de dédier un poste serveur et d’y installer un système
d’exploitation de réseau. Le réseau poste à poste permet en f ait à chaque poste de partager son imprimante, ses f ichiers,…
Ce partage se f ait en principe sur un mot de passe.
Il est bien évident que ce genre de réseaux ne convient que pour un petit réseau (<10 PC), non seulement pour les
perf ormances mais aussi pour les mots de passe à retenir qui peuvent être plusieurs par poste ! Ce type de réseaux a aussi le
désavantage de non sécurité avec des mots de passe f aciles à casser présents sur les stations. Les produits Microsof t
récents, Windows 95 et 98 ont cette possibilité par défaut (à l’époque de DOS +Windows 3.11 il f allait installer WfW : Windows
Comment ça marche ? 69/120
f or Worksgroup). En bref ce type de réseau permet à quelques ordinateurs d’échanger des données, de partag er une
imprimante,… mais en aucun cas d’établir un véritable réseau !

17 ADSL : Le haut débit sur le RTC...


Si vous utilisez régulièrement Internet sur votre ligne de téléphone je suis sur que vous avez dû râler plus d’une fois contre les
lenteurs d’af fichage des pages, et que pour vous, le téléchargement de logiciel sur Internet se limite aux environs de 20 à 30
Mo. Bien sur, la solution simple de plus en plus courante, est de vous abonner au câble : la ligne de téléphone reste libre e t
pour 300 à 500 F/mois vous obtenez des débits 10 f ois plus élevés que sur le RTC. Mais aujourd’hui, l'ADSL arrive en f orce
sur le marché. L’ADSL (Asymetric Digital Suscriber Line) est une nouvelle technologie qui permet le transport de données à
hauts débits sur les fils de cuivre classique du téléphone. Avec l’ADSL vous pouvez obtenir sur le RTC des débits équivalents,
voire 2 f ois plus élevés que sur le câble (soit de 500 à 1000 Kbps), tout en conservant la ligne de téléphone disponible
pendant les connexions (L’ADSL utilise des fréquences différentes de celles du RTC). Alors pourquoi hésiter plus longtemps ?
17.1 Que faut il pour profiter de l’ADSL ?
D’abord il f aut se trouver dans un rayon de moins de 5 Km d’un relais ADSL de France Télécom, donc si vous êtes dans une
grande ville (Nice, Antibes, Sophia Antipolis, Strasbourg, Marseille, Lyon, Villeurbanne, Le Mans, Paris, …), ça devrait aller,
sinon, il va f alloir patienter mais sachez que même au terme du déploiement, seulement 65 % de la population sera couverte.
Pour savoir si vous pourrez profiter de cette technologie n’hésitez pas à appeler France Télécom (1014). C’est gratuit et il vous
dirons tout !
Ensuite il vous faut avoir une ligne de téléphone classique. Numéris n’est pas compatible avec l’ADSL. Il vous f aut aussi u ne
carte réseau Ethernet classique.
Enf in il f aut s’abonner chez France Télécom à Netissimo 1 ( même débit que le câble ) ou Netissimo 2 ( double du câble ) et
prendre un accès Internet ADSL chez un provider quelconque.
Les principaux avantages sont donc des débits élevés (par exemple en téléchargement 10 Mo en 3mn, un CD de 640 Mo en 3
h avec Netissimo 1), une connexion f orf aitaire et la ligne de téléphone toujours disponible (on peut donc rester connecter
presque 24h/24). Et par rapport au câble, il n’y a aucune limitation en téléchargement …
17.2 Qu’est ce peut vous faire réfléchir devant une offre aussi parfaite ?
En premier lieu, comme je l’ai dit précédemment vous ne pouvez pas f orcément y accéder (5km du relais ADSL).
En second le prix, bien que raiso nnable, il f aut réf léchir à son utilité :
Pour l’ADSL il faut prévoir l’abonnement à Netissimo (265 F / mois pour le 1 ou 700 F / mois pour le 2) avec un engagement
sur 1 an minimum, la location du modem ADSL (45 F / mois) et l’accès Internet ADSL chez un provider comme Wanadoo,
Club Internet, … qui varie selon le provider entre 120 F et 220 F / mois. Free a arreté son of f re ADSL gratuite car France
Telecom (incontournable) ne leur of frait aucune garanti de service. Au total c’est donc environ 450 F / mois pour 500 Kbps et
900 F / mois pour 1 Mbps /s sur 1 an. De plus à la mise en service, il f aut acheter une carte réseau entre 100 et 200 F (si o n
en a pas déjà une !) et payer l’installation par France Télécom d’un montant de 775 F. Avec 1 budget de 6300 F la première
année, on peut rester connecter un bon moment avec un accès classique, c’est donc la volonté de rapidité sur Internet et
surtout de téléchargement illimité qui doit guider votre choix pour l’ADSL.
Enf in, plusieurs détails liés au f ait que ce service soit nouveau : interruption régulière des serveurs, mauvais taux de transf ert
par période, débit non assuré par France Télécom, aucune garantie que le téléchargement ne sera pas limité dans le f utur, …
Je pense qu’il vaut mieux réf léchir encore un peu avant de se jeter sur l’ADSL si on n’a pas l’utilité absolu d’avoir des temps de
téléchargement très court !
17.3 Quelques trucs …
L’ADSL c’est déjà rapide, plus rapide que ce que l’on a jamais vu, mais comme toujours on en veut encore plus. Voici donc
quelques trucs pour améliorer votre connexion ADSL.
- Modif ier la base des registres (à f aire avec précaution) :
L’ouvrir avec regedit et rechercher la clé HKEY_LOCAL_MACHINE \SYSTEM\CURRENTControlSet\Services\VxD\MSTC
Puis ajouter l’entrée Def aultRCVWindo w, taper STRING VALUE et af f ecter la valeur 64240 (pour Windows 95) ou 256000
(pour Windows 98)
- Si ce n’est déjà f ait passer votre carte réseau en mode half duplex (sur l’icône réseau du panneau de conf iguration).
- Installer un ou plusieurs de ces sharewares qui permettent même d’améliorer les connexions classiques.
o DownloadAccelerator, MassDownloader, Getright sur www.telecharger.com
o f tp.grolier.f r/pub/simtelnet/win95/inet/mboost21.zip
o hulkmaximyser et hulkreconnector sur www.multimania.com/popcorn99
Si vous souhaitez en savoir plus sur l’ADSL, le mieux est de se renseigner directement chez France Telecom ou chez les
Providers.

18 Les accès à Internet


Internet est donc simplement constituer de plusieurs réseaux reliés entre eux (Inter-Networks). Pour avoir accès à Internet, il
f aut que votre poste de travail, isolé, trouve un moyen de se relier au reste du réseau. Il existe trois possibilités dif f érentes sur
le plan technique, le RTC, RNIS et l’ADSL.
18.1 Réseau Téléphonique Commuté (RTC)
Comment ça marche ? 70/120

Il s’agit tout simplement d’utiliser la ligne téléphonique classique que chacun à chez soi pour se connecter, par l’intermédiaire
d’un modem, à Internet. Ainsi, votre ordinateur utilise le modem, puis le réseau téléphonique, pour appeler un f ournisseur
d’accès, qui n’est ni plus, ni moins, qu’un ordinateur relié à Internet. Cette liai son téléphonique permet de f aire passer des
données entre vous et le f ournisseur d’accès, et ainsi de pouvoir prof iter du plus grand réseau du monde.
18.2 Réseau Numérique à Intégration de Services (RNIS)
RNIS, apparu en France avec Numéris en 1980, souffre maintenant d’une désuetude qui était loin d’être évidente à sa sortie. Il
s’agit simplement d’un câble vous raccordant à France Télécoms, et permettant, au lieu d’un accès analogique à 56 kbps avec
un modem et le RTC, d’avoir un accès entièrement numérique à 144 kbps avec un ERBDB (voir plus haut).

Utilisant la technique du multiplexage de canaux vue plus haut, Numéris consiste à avoir 3 canaux dif f érents en numérique,
deux canaux B à 64 kbps (8 bits à 8 kHz) pour les données, et un canal D de 16 kbps pou r la signalisation. Un canal de
service sert pour le contrôle et la synchronisation du tout. Il n’est pas comptabilisé dans le débit utile. Le débit réel de Numéris
est 192 kbps.
18.3 Asymetric Digital Subscriber Line (ADSL)

L’ADSL, lui, utilise le multiplexage de fréquence vu plus haut. L’idée de l’ADSL est de f aire passer plus d’inf ormations que
prévu sur une simple ligne téléphonique en utilisant des techniques de théorie du signal. Le canal téléphonique classique est
conservé (de 300 à 3400 Hz). Le canal de l’abonné vers le réseau est plus petit que le canal allant du réseau vers l’abonné.
Cela se justif ie car la plupart du temps, on reçoit plus d’inf ormations que l’on en envoie.
Comment ça marche ? 71/120

19 Unix ou Linux
19.1 Linux détrônera-t'il Windows ?
La création de Linux a été lancée en 1991 par un f inlandais, Linus Torvalds, qui avait alors 20 ans. Linux a été développé
grâce à la collaboration de milliers de programmeurs issus d’Internet. C’est un système d’exploitation de la f amille des Unix ,
développé dans le but de remplacer Windows. C’est un logiciel libre : son code source est disponible gratuitement et
modifiable à volonté. On peut bien sûr se procurer une version de l’OS gratuitement sur le net ou dans des magazines, mais il
est quand même plus pratique d’installer une « distribution » (OS et logiciels prêts à être installés et livrés avec un manuel)
qui, elles, sont payantes (de 200 à 600 F).
En milieu prof essionnel, Linux est principalement utilisé sur les serveurs et en particulier sur les serveurs qui of f rent des
services de base (échange de fichiers, fax, partage d’imprimantes,…). Mais il peut être aussi utilisé comme serveur Internet ou
serveur de messagerie. Il possède même des f onctions puissantes de sécurité lui permettant de jouer le rôle de FireWall.
Maintenant, on trouve aussi des distributions permettant de l’installer en tant que serveur d’applications client-serveur, la quasi
totalité des logiciels de base de données étant disponibles (DB2, Oracle, …). Les distributions courantes supportent des
clients tournant sous les principaux OS : Mac, Windows, Unix, … et heureusement pour Linux qui n’a pas encore réussi à
s’implanter sur les postes de travail. Cette dif f iculté à s’implanter à ce poste est due au manque encore important
d’applications : même si la star office offre des outils de bureautique puissants, il manque encore des outils comme autocad,
3D Studio, etc.
En f ait, Linux séduit peu à peu les responsables informatiques, les SSII le préconisent de plus en plus, et ce au dépend des
systèmes commerciaux classiques. Sa gratuité et ses perf ormances de plus en plus reconnues en f ont ef f ectivement un
concurrent réel de Windows NT et d’Unix, bien qu’à l’heure actuelle, on compte quand même environ 30 f ois plus d’utilisateurs
de Windows que de Linux. Ce chiffre est compréhensible sachant qu’il y a encore 3 ans, installer Linux était un pari audacieux
pour une entreprise. Il f allait télécharger les versions d’Internet et assurer sa maintenance soi -même. Il était quand même plus
sûr pour un responsable informatique d’installer un produit Microsoft ou IBM et de se retourner contre eux en cas de problème.
Mais aujourd’hui, la crédibilité de Linux n’est plus à démontrer, et de plus en plus de SSII proposent des versions complètes
avec un contrat de télémaintenance. De p lus, le passage de gros systèmes comme Télécom Paris sous des serveurs Linux
met de plus en plus en conf iance les responsables inf ormatiques.
Si le coût de Linux le met largement devant ses concurrents (et permet de convaincre les responsables f inanciers de migrer
vers Linux), ce n’est pas le critère principal qui décide les responsables inf ormatiques. Un des critères importants est celu i
décrit précédemment de l’existence de sociétés effectuant de la télémaintenance sur Linux, mais celui qui est peut être le plus
déterminant est le f ait que la migration reste entièrement transparente pour l’utilisateur. En ef f et, comme nous l’avons vu,
Linux supporte tous les protocoles de communication classiques et accepte des clients de tous les horizons (Mac, Windows,
IBM, …). Le dernier point qui achève de convaincre les décideurs hésitants sont ses performances qui soulagent souvent les
réseaux pour un coût très faible et la multitude d’applications (messagerie, sécurité,…) qui sont livrées avec les distributi ons
Linux. Enf in, de nombreux décideurs qui sont passés à Linux avouent que c’est le « ras le bol » des plantages Windows qui
les a décidés à rechercher autre chose.
Pour conclure, on peut dire qu’aujourd’hui toute entreprise peut migrer vers Linux grâce aux SSII assurant l’installation et la
maintenance du produit, mais que si une entreprise peut en interne maîtriser Linux, elle n’a aucune raison valable de s’en
passer.
Voici des exemples de réalisations
Par exemple un réseau de 15 postes clients sous Windows 98 nécessitant un partage de fichier, un partage de
2 imprimantes et un accès Internet pour les mails correspond à l’investissement suivant pour le serveur :
PC PIII 500 avec 128 Mo de mémoire vive, un système de sauvegarde DAT, une carte réseau et 2 disqu es
durs SCSI de 4Go installé avec la distribution Red Hat 6.0 installé et paramétré en FireWall. 19 000 F
Routeur numéris zyxel 2 500 F
Total 21 500 F

Un autre exemple est un réseau de 10 postes clients sous Windows 98 nécessitant un partage de f ichier ,
d’impression et un accès Internet via un serveur Proxy. Sur ce réseau on installera aussi la gestion industrielle
(GPAO), la gestion commerciale et la paie des employés. Le tout correspond à l’investissement suivant pour
les serveurs :
PC PII 350 avec 192 Mo (serveur pour la gestion industrielle) avec Red Hat 6.0 18 000 F
PC PII 200 avec 64 Mo (serveur pour la comptabilité) avec Red Hat 6.0 11 000 F
PC Pentium 166 avec 64 Mo ( Proxy Web Linux ) 9 000 F
Total 38 000 F

Encore un exemple d’utilisation de Linux, la reconversion des vieux PCs d’un parc en analyseur de réseau,
f irewall, serveurs de test, … coût pour chaque serveur : 200 F pour la version 5.2 de Red Hat.
Si vous souhaitez en savoir plus sur linux, vous pouvez allez f aire un tour sur www.linux-center.org/fr , c’est la partie f rançaise
du site central de linux. Vous pouvez aussi allez voir le site de l’association française des utilisateurs de linux ( www.af ul.org)
qui organise régulièrement des démonstrations d’installation et d’utilisation dans toutes les régions de France.
Comment ça marche ? 72/120
20 Linux : Installation et administration
20.1 Linux : Notion de base et installation
L'objectif de cet article est d'acquérir les compétences et les méthodes de travail pour être rapidement indépendant, et pour
continuer à progresser. Dans les différents chapitres, je ne donne pas d'exercices précis mais j'explique le fonctionnement d es
logiciels et leurs interactions.
L'ensemble des parties possèdent une aide en ligne telles que les pages de manuels (man), les f ichiers How-To (répertoire
/usr/doc/howto/fr/html/), vous pourrez donc y f aire appel à tout moment pour compléter les explications de ce document.
Dans cette première partie, nous allons voir comment installer un système linux sur notre machine, il n'est pas question ici de
mettre en place des services particuliers, ou une conf iguration spécif ique, mais d'installer un système de base.
20.1.1 Présentation
Vu sur le plan technique, Linux est un système d'exploitation Unix librement disponible possédant des capacités multi -
utilisateurs et multitâches. Ce sont les PC dotés de processeurs x86 (Intel, AMD, Cyrix), à partir du 386, qui constituent la
plate-f orme la plus répandue.
Linux se conf orme de très près au standard POSIX. Il collabore pour le mieux avec les systèmes d'exploitation traditionnels de
Microsof t, Novell et Apple et ouvre le monde de l'Internet.
Le nom Linux - dérivé de celui de "l'inventeur du système" Linus Torvalds - ne désigne en f ait que le noyau mais il est
couramment employé pour désigner l'ensemble du système, y compris les applications.
Voici ce qui constitue aujourd'hui le monde Linux:
Logiciels système - que vous souhaitiez programmer vos propres logiciels, mettre en place un serveur WWW, un serveur de
news ou de mails, un routeur RNIS ou tout simplement un serveur de fichiers ou d'applications - Linux met à votre disposition
tous les outils dont vous avez besoin.
Applications - de nombreux logiciels libres - certains sous une forme bien testée qui a f ait ses preuves une multitude de f ois
dans la pratique mais certains aussi à un stade bêta initial - complétés par une palette de plus en plus variée de logiciels
commerciaux portés sous Linux.
Des équipes de développement, dispersées dans le monde entier, accroissent et améliorent constamment les
f onctionnalisés de Linux et le rendent disponible pour de nouvelles plates -f ormes.
Sans oublier les centaines de milliers d'utilisateurs enthousiastes - étudiants et amateurs intéressés, petites entreprises
qui utilisent Linux comme serveur Internet économique et flexible. Même de grandes sociétés telles que Sixt et IKEA, réalisen t
avec Linux des applications d'entreprise destinées à résoudre des problèmes complexes.
C'est en réseau que Linux peut jouer ses atouts majeurs. Comme pour tous les autres systèmes Unix, une très grande
aptitude au f onctionnement en réseau f ait partie des caractéristiques standards de Linux. Mais à la dif f érence d'autres
systèmes d'exploitation, Linux sait convaincre par son extrême f lexibilité. Que vous ayez l'intention d'utiliser une machine
Linux comme serveur dans un réseau Unix, dans un environnement Netware ou dans un réseau Windows, vous trouverez
tous les outils nécessaires. Avec samba , vous pourrez transformer votre machine Linux en serveur de fichiers et d'impression
pour votre réseau Windows (3.11, Win95/98, WinNT). Avec le paquetage marsnwe, vous pourrez émuler un serveur Netware
complet! Même la mise en oeuvre d'une machine Linux comme serveur de fichiers et d'impression dans un réseau Apple ne
pose aucun problème grâce à netatalk.
Linux supporte NFS (Unix), SMB (LAN-Manager, Wf W, W95/98), Appletalk (Mac) et NCP (Novell-Netware). Il est possible
aussi bien d'importer que d'exporter des systèmes de f ichiers.
Linux se charge également du service de noms de domaines (DNS) et les fichiers répartis peuvent être gérés par le biais du
service d'inf ormation du réseau (NIS).
Dès qu'il est question d'interconnecter plusieurs réseaux, Linux séd uit par ses capacités de routeur. Il supporte les cartes
Ethernet (100 et 10 MBits), Arcnet et Tokenring. Outre le routage pur et simple, il est possible d'effectuer des enregistreme nts
à des f ins de comptabilisation et de règlement.
Que ce soit dans un réseau Intranet propre à une entreprise ou dans le réseau mondial Internet, Linux est la plate-f orme
adéquate pour votre serveur WWW. Linux inclut le serveur Web apache. Un serveur sur deux environ utilise sur Internet ce
serveur Web puissant et polyvalent qui, doté d'un très grand nombre de fonctionnalités et offrant de très larges possibilités de
conf iguration, vous aide à réaliser pratiquement tous vos désirs.
Linux démontre aussi sa force comme serveur de mails et de news. Il convient de noter que Linux peut également être utilisé
comme serveur dans des réseaux hétérogènes. Il vous est même possible de continuer à utiliser le paquetage Microsof t -
Exchange sur un client Windows.
Linux of fre un support pour l'IP-Masquerade. Une machine (routeur) se charge alors de la répartition correcte du trafic réseau.
Linux protège votre réseau contre les visiteurs indésirables par un pare-f eu. Le f iltre intégré dans le noyau vous permet de
vous adapter, de façon flexible, aux critères locaux. Il vous est possible d'imp oser des limites aussi bien au traf ic IP sortant
qu'au traf ic IP entrant.
Outre la ligne de commande (shell), Linux met bien sûr aussi à votre disposition une interf ace utilisateur graphique. Le
système X Window (ou plus simplement X ou X11), qui est l'interf ace graphique standard sous Unix, a connu un
développement suivi et conséquent et a été porté sur les systèmes Unix pour PC par l'équipe du projet Xf ree86TM . Les
programmes d'application sont ce que l'on appelle les clients X qui communiquent directem ent avec le serveur.
Linux peut sans problème être installé parallèlement à d'autres systèmes d'exploitation tels que DOS, Windows 3.11/95/98/NT
ou OS/2 sur une même machine. Comme Linux peut aussi être installé sur une partition étendue, aucune complicat ion n'est à
craindre tant que l'on ne depasse pas la limte des 1024 premiers cylindres du disque. Avec lilo, le chargeur de Linux, vous
pouvez choisir lors de l'amorçage le système d'exploitation que vous souhaitez. Si vous travaillez sous DOS ou Windows
95/98, vous n'aurez même pas besoin de réamorcer pour pouvoir lancer Linux - le programme loadlin vous permet de le lancer
directement à partir de la ligne de commande DOS.
En raison de la popularité de plus en plus grande qu'il connaît dans le monde entier, Linux, développé à l'origine pour une
mise en oeuvre sur PC, est maintenant disponible pour presque tous les types de plates -f ormes matérielles. Linux peut être
Comment ça marche ? 73/120
utilisé, entre autre, sur les stations Alpha, Sparc et Ultra-Sparc (Sun), les architectures m68k (Amiga, Atari, divers systèmes
Motorola) les PowerPC et Apple PowerMacintosh ainsi que pour les systèmes basés sur ARM (par exemple Acorn RiscPC).
20.1.2 Les concepts de base
Nomenclature des partitions sous Linux
Linux utilise un système de f ichiers beaucoup plus poussé, plus stable et moins contraignant, il a été baptisé ext2.
Pour déf inir les partitions, le système Linux utilise une combinaison de lettres et de chiffres (hda1, hdb2, sda4, sdc2, etc. ) qui
peut paraître déroutante pour les nouveaux utilisateurs, mais qui se révèle beaucoup moins contraignante lorsque l'on a
assimilé son principe. Les deux premières lettres indiquent le type de périphérique sur lequel est installée la partition. Po ur les
disques durs IDE, on utilise hd et pour les disques durs SCSI, on utilise sd. La lettre suivante indique le périphérique (je parle
de disque dur, mais je pourrais très bien parler de lecteur ZIP ou de lecteur de CDROM (dans ce cas, pas de partition), etc.)
sur lequel est installée la partition. Pour une partition installée sur le premier disque dur IDE, on utilise /dev/hda (/dev/hdb pour
le second disque, ...).
Pour une partition installée sur le premier disque dur SCSI, on utilise /dev/sda (/dev/sdb pour le second disque, ...). Le ch if f re
désigne la partition. Les quatre premières partitions (primaires) sont numérotées de 1 à 4. Les partitions logiques sont
numérotées à partir de 5. Exemple, pour la troisième partition (primaire ou étendue) du premier disque dur IDE, on utilise
/dev/hda3.
NOTE : Dans le cas d'un lecteur de CDROM qui ne dispose que d'une seule et unique partition, on ne mentionne pas de
chif fre. Ainsi, pour un lecteur de CDROM se trouvant en position esclave sur le premier contrôleur, on utilisera /dev/hdb.
Exemple :
- hda1 pour la première partition du premier disque dur IDE
- hda2 pour la deuxième partition du premier disque dur IDE
- hdb1 pour la première partition du deuxième disque dur IDE
- sda4 pour la quatrième partition du premier disque dur SCSI
- Etc.
Grâce à ce système, plus de problème. Vous pouvez ajouter le nombre de disques durs et de partitions que vous désirez, rien
ne changera de place sans votre intervention.
Sous Linux, il en est tout autrement : il utilise un système de montage/démontage et de répertoires. Petite explication : Après
avoir créé les partitions et après les avoir f ormatées, vous devez maintenant les “monter”. Cela paraît peut -être compliqué,
mais c'est en f ait très simple. N'ayant pas d'affectation automatique comme pour DOS, il f aut les af f ecter vous -même. Mais
Linux ne se sert pas de lettres pour déf inir les partitions, il les af f ecte à des répertoires. On dit qu'il les monte dans un
répertoire. Ainsi, une partition, où qu'elle se trouve, pourra être montée dans n'importe quel répertoire de l'arbores cence. Un
tel répertoire sera également appelé point de montage.
Il est nécessaire pour le programme d'installation de savoir où Linux doit être installé. Pour cela, il est nécessaire de déf inir
des points de montage pour la ou les partitions où Linux sera installé. Vous pouvez aussi créer et/ou ef f acer des partitions à
ce moment là.
La conf iguration minimum comporte une partition racine assez vaste, et une partition de swap.
Les fichiers
Sous Unix un f ichier est :
- toujours désigné par un nom.
- possède un unique inode (certaines inf ormations concernant le f ichier).
Un f ichier peut être :
- ordinaire (on utilise parf ois le terme "normal") (-)
- un répertoire (d)
- un lien symbolique (l)
- un pseudo-f ichier :
accès caractère par caractère (c)
accès par bloc (b)
dispositif de communication (p)
Fichier ordinaire
Un f ichier ordinaire est caractérisé par :
- son contenu vu comme une suite d'octets (i.e. caractères).
- écriture en f in de f ichier ayant pour ef f et l'extension du f ichier.
Noms de f ichiers :Unix fait la différence entre les majuscules et les minuscules (la casse). En théorie tous les caractères du
clavier sont autorisés. En pratique, il vaut mieux s'abstenir pour certains (comme * ou ?) . Le caractère - est déconseillé au
début d'un nom de f ichier (certaines commandes pourraient l'interpréter comme une option).
Les inodes
Un ext2 est toujours muni d'une table des inodes.
Comment ça marche ? 74/120

Tout f ichier possède son unique inode. L'inode contient la totalité des informations sur le f ichier, sauf l e nom. Les inodes sont
tous de même taille.
Les inf ormations des inodes
- Type de f ichier : -,d, l, c, p, b.
- Droits d'accès : par exemple : rwxr-x---
- Nombre de liens (physiques) : correspond au nombre de réf érences c'est à dire au nombre de noms.
- UID : ef f ectif du processus créateur ou af f ecté par chown.
- GID : ef f ectif du processus créateur, af f ecté par chgrp ou hérité du répertoire.
- Taille du f ichier.
- atime :date de la dernière lecture.
- mtime :date de la dernière modif ication.
- ctime :date de la dernière connexion.
- Adresse du f ichier.
Remarque : Un f ichier peut avoir plusieurs liens donc plusieurs noms. Il suffit pour cela qu'ils pointent sur le même inode (celui
du f ichier).
Adressage des blocs de données
Une liste de 13 adresses :
- Direct pour les 10 premières adresses.
- Indirect pour la onzième entrée.
- A deux niveaux d'indirection pour la douzième entrée.
- A trois niveaux d'indirection pour la dernière entrée.
Un bloc de données peut contenir jusqu'à 128 adresses.
Les répertoires
Comme tout f ichier, un répertoire possède son inode.
Le contenu du répertoire représente la correspondance entre les noms de fichiers et les inodes. Les noms " . " et " .. "f igur ent
dans tout répertoire. " . " correspond au répertoire co urant et " .. " au répertoire supérieur (ou répertoire parent).
Nom Numéro d'inode
.
2
..
2
bin
3
dev
5
home
9
...
Commande pour ajouter un nouveau lien : ln nom nom_supplémentaire
ln ancien nouveau = création d'un nouveau lien
cp ancien nouveau = copie de f ichier
mv ancien nouveau = renomme ancien en nouveau (déplacement)
Représentation logique du système de fichiers
C'est une arborescence, plus généralement un graphe orienté sans cycle.
Comment ça marche ? 75/120

Convention : le système de f ichier commence à l'inode 2.


- A chaque passage dans la table des inodes on trace un arc.
- La désignation d'un chemin peut être :
- absolu :on écrit " / " à chaque passage dans la table des inodes. Par exemple : /home/linf 0/dir.
- relatif :par exemple : si le répertoire courant est /home il suf f it de taper linf 0 pour accéder à /home/linf 0.
Droits d'accès
La commande ls -l permet d'avoir une liste détaillée indiquant, entre autres, les droits d'accès.

Fichier Répertoire
Lecture de la totalité du répertoire possible mais en absence de ce
r Lecture autorisée droit, on peut accéder à une entrée individuelle. Ainsi on peut lire un
f ichier dans un répertoire privé du droit de lecture.
w Ecriture autorisée On peut créer ou supprimer les f ichiers du répertoire.
En absence de ce droit, aucun accès au répertoire et a la sous
x Exécution autorisée
arborescence issue du répertoire n'est possible.
Un programme
Sticky executable sera maintenu
Un f ichier du répertoire ne peut être supprimé que par son propriétaire.
Bit en zone de swap après la
f in de son exécution.
Set GID si le f ichier est
Les f ichiers (y compris les répertoires) créés dans le répertoire héritent
Set GID exécutable sinon
du GID du répertoire.
verrouillage obligatoire.
Set UID si le f ichier est Les f ichiers (y compris les répertoires) créés dans le répertoire héritent
Set UID
exécutable. du UID du répertoire.
Normalement l'UID d'un processus est l'UID du créateur.
- Si Set UID=1 alors l'UID du processus engendré à partir d'un f ichier est l'UID du f ichier.
- Si Set UID=0 alors c'est l'UID du root (administrateur système).
Pour modif ier des droits on utilise la commande chmod :
- Options :
-r descente récursive d'une sous-arborescence.
-f f onctionnement silencieux.
- Mode :
numérique : codage en octal de bits de permission (SetUID +3 f ois les droits r=4, w=2, r=1).
symbolique : | u | g | o | a | + | - | = | r | w | x | S | l | t |
Système de fichiers

df : commande utile pour les systèmes de f ichiers.


mount : pour ajouter ("gref f er ") un système de f ichiers supplémentaire.
Remarque : " Gref f er " sur un répertoire non-vide f ait perdre l'accès au
contenu.
Le montage peut être:
- manuel (mount)
- automatique (automount). Connexion à distance à autre machine par
exemple.
Un numéro de système de fichier + un numéro d'inode = un fichier unique.
Remarque : Un ext2 correspond à une partition.
Installation de Linux
Comment ça marche ? 76/120
Dans cette partie nous allons installer un système linux sur notre machine. Il n'est pas question ici de mettre en place des
services particuliers, mais plutôt une conf iguration de base suf f isante pour mettre en place ultérieurement des services
spécif iques.
Avant toute installation de linux,il faut vérifier que le matériel utilise est supporte par linux. Ce qui est notre cas (proc esseur
,carte graphique, cdrom, disque dur, carte réseau) et il f aut aussi connaître les conf igurations - surtout pour les cartes ISA (
adresse 1/0 ). La situation est simple, nous allons "booter" la machine avec le premier cdrom .
Tout d'abord il faut « booter »la machine à partir du cd 1. Suite au premier message, le système démarre un noyau de base
comprenant un maximum de driver de périphérique, ce qui permet une reconnaissance automatique du matériel.
Ensuite il suf f it de répondre simplement aux questions du système.
La premiere étape délicate sera le partitionnement du disque ainsi que le f ormatage des partitions.
Attention si la création d'un compte utilisateur n'est pas délicate, il est important de de f aire attention au mot de passe
administrateur (root).
Le disque dur étant préparé, il s'agit de déterminer quels logiciels vous désirez installer. Yast vous demande maintenant un
peu de patience: les données des séries et paquetages doivent être lus a partir du support d'installation. Lors de la sé lection
des « packages » laisser la sélection par déf aut. Avant toute chose il f aut savoir que sous SuSE linux les packages
correspondent à des logiciels ou des librairies, ils sont regroupes en séries ( ex: la série n pour network contient le serve ur de
messagerie, le serveur hhtp, les serveurs ftp, etc... ). Attention à la dépendance entre les logiciels (certains on besoin d'a utres
pour f onctionner).
Puis le système vas détecter les périphériques à installer. Il suf f it de déf inir les paramètres adéquates pour la carte réseau.
Ensuite pour que le noyau soit pris en compte au démarrage de la machine il faut configurer lilo. Ce petit programme permet
de selectionner le noyau à charger au démarrage mais aussi de gérer le multi -boot avec Windows.
Nous disposons donc actuellement d'un OS de base et théoriquement l'ensemble des périphériques de l'ordinateur sont
reconnus. Une f ois cette premier étape franchi il nous faut configurer la machine. C'est la partie administration d'un systèm e
linux.
Unix est un système d'une telle complexité que nous ne pouvons tenir compte ici que des aspects essentiels.
20.2 Administration d'un système Linux
20.2.1 Les commandes unix de base
A ce moment, nous disposons de 6 terminaux virtuel sur lesquels on peut se « loguer ». Ils sont accessibles en appuyant sur
Ctrl + Alt + F1 à F6. Sur chacun de ces terminaux vous pouvez vous connecter et lancer des applications.
Les commandes
Man : Aide en ligne sur la commande
syntaxe : man <cmd>
Il suf f it alors de naviguer dans l'aide avec les touc hes <Page Up> et <Page Down> et <q> pour quitter.
Ls : liste le contenu d'un répertoire.
Syntaxe : ls -options <répertoire a lister>
option : a : montre les f ichiers cachés
l : f ormat long (droit, propriétaire, groupe, date,...)
r : récursif
d : ne pas lister le contenu des répertoires.
Pwd : Af f iche le répertoire actuel.
Cd : change de répertoire
syntaxe : cd <chemin>
chemin absolue : /rep1/srep1/srep2
chemin relatif : ../../srp2 (on remonte de 2 répertoires dans l'arborescence avant d'accéder au répertoire srep2)
mkdir : Création d'un répertoire.
Syntaxe : mkdir -options <répertoire>
option : p : permet la création de toute une arborescence.
Cp : Copie de un ou plusieurs f ichiers / répertoires.
Syntaxe : cp -option <source> <destination>
option : r : récursif ( nécessaire pour la copie de répertoires)
a : copie (récursive) avec préservation des droits et propriétaires.
Rm : suppression de f ichiers ou de répertoires.
Syntaxe : rm -option <f ichier ou répertoires>
option : r : récursif (nécessaire pour supprimer un répertoire).
Important: La commande rm n'a pas de 'undelette', de plus en tant que « root » on passe outre tous les droits sur les fichiers et
répertoires.
Mv : déplacement (cp +rm ) d'un f ichier ou d'un répertoire.
Ln : permet de créer un lien sur un f ichier.
Ln <target> <nom du lien> => deux fichier pointant sur le même inode.(attention les deux doivent être sur le même système de
f ichier)
Ln -s <target> <nom du lien> => lien symbolique(allias)
tail : Af f ice « en temp réel » le contenu d'un f ichier.
Tail -f /var/log/messages (Ctrl + C pour quitter)
grep : recherche d'une chaîne de caractère dans un f ichier.
Grep root /etc/passwd
option : -v toutes les entrées qui ne contiennent pas la chaîne de caractère.
Tar : (gzip) compression des f ichiers
tar cvzf <nom du f ichier> <f ichier à inclure>
Comment ça marche ? 77/120
tar xvzf <nom du f ichier> -C <destination>
option : c création
x decompression
z utilisé gzip
f f orce
C destination de la décompression sinon .
Les caractères spéciaux des commandes
* comme sous DOS est un joker.
; permet de f aire suivre les commandes sur une même ligne. Ex: cmd1; cmd2; cmd3
& à la f in d'une commande la lance en tache de f ond et rend la mains en indiquant le numéro de processus
correspondant.
| permet de renvoyer la sortie standard (écran) sur l'entrée standard de la commande suivante.
L'éditeur vi
A la base de l'administration sous Unix on trouve l'éditeur vi. Cet éditeur de texte en mode terminal d'apparence très basiqu e a
une multitude d'avantages.
Le but des manipulations suivantes, est de vous familiariser avec les commandes de base de l'éditeur vi. Nous allons l'utiliser
tant que l'interf ace graphique n'auras pas été mise en place.
vi <nom du fichier a éditer>
Pour insérer du texte il suffit de déplacer le curseur la ou on le désire d'appuyer sur Esc puis sur i et on peut insérer du texte,
à la f in de l'insertion on appuie sur Esc. De même on peut rajouter du texte avec a, supprimer un caractère avec x, supprimer
un mot avec dm (delete word) ou encore remplacer un mot cw (change word). Si l'on tape un nombre x avant la commande
celle-ci sera répétée x f ois.
Quand on désire quitter l'application il f aut taper :q si aucune modif ication n'a été apporte, :q! pour ne pas enregistrer les
modif ication en quittant, :wq pour quitter en enregistrant et enf in :wq! Pour quitter et f orcer l'enregistrement du f ichier.
Un recherche de mot se fait avec /<mot recherché>, pour répéter la dernière commande il suffit de taper . Et pour integrer un
f ichier il suf f it de f aire :r <nom du fichier>
Même si cet éditeur semble antique, il rend d'immense service en cas de problème, c'est le seul éditeur capable de
f onctionner avec un environnement minimal. On prend conscience de son importance, la première fois qu'il vous « sauve la vie
».
Les utilisateurs
Tout d'abord il est primordial de savoir comment est identif iée une personne. Cela se passe dans le f ichier /etc/passwd qui
est f ormé d'une suite de lignes, f ormatées de la f açon suivante :
login:Password crypté:UID:GID :commentaires:Répertoire personnel:shell
- Le login est l'identif iant de la personne.
- Le password est dans tout les cas un x car le password crypté est contenu que dans /etc/shadow avec des informations sur
l'âge du password et sa durée de vie. /etc/shadow n'est en lecture/écriture que pour root alors que /etc/passwd est en lecture
seul pour tout le monde.
- L'uid est l'identif iant numérique de la personne et le GID l'identif iant numérique du groupe d'appartenance.
- Les commentaires permettent de rajouter des inf ormation concernant la personne.
- Le répertoire personnel est le répertoire de base de l'utilisateur.
- Le shell est la commande qui sera exécute lorsque la personne se sera connectée. Il existe différents shell sous unix, le plu s
basique est sh qui est commun à tous les unix. A cote on trouve des shell tel que csh, tcsh, ksh. Sous linux le shell par def aut
est le BASH (Bourne Again Shell).
Les groupes sont définis dans le f ichier /etc/group est possèdent un f ichier /etc/gshadow ou sont conservé les password
cryptés des dif f érents groupes.
Les fichiers de logs
Tout les process tournant sous linux peuvent envoyer des informations sur leur f onctionnement grâce a un process nommée
syslog. Celui-ci se configure avec le f ichier /etc/syslog.conf. Il redirige l'ensemble des messages vers un f ichier désigné.
mail.* -/var/log/mail
Ici l'ensemble des inf ormations de mail seront envoyé dans le f ichier /var/log/mail.
De plus il f aut savoir que l'ensemble des inf ormations du système *.* sont envoyé dans l e f ichier /var/log/messages.
Pour suivre le f onctionnement d'un process on peut suivre sont f onctionnement grâce a la commande : tail -f
/var/log/messages | grep <process>
20.2.2 Amorçage et arrêt d'un système
Une machine sous Linux ou tout OS a besoin d'être arrêter proprement, pour cela on utilise la commande halt qui permet un
arrêt des dif f érents services . La commande reboot ajoute un redémarrage de la machine.
L'amorçage et l'initialisation d'un système UNIX est une phase importante. Ce chapitre est une brève introduction au concept
de démarrage de Linux. Ce concept est plus complexe mais aussi plus souples que celui de la plupart des autres systèmes. Il
est basé sur le concept d'amorçage d'une station de travail moderne sytem V.
Suite a la lecture des inf ormations contenu sur le secteur d'amorçage du disque (mis en place par lilo) le noyau linux va être
lu. Le noyau prend les commandes de la totalité du matériel du système. Il vérif ie et installe la console pour lire ensuite l es
conf igurations dans le BIOS et initialise les interf aces élémentaires de la carte mère. Au cours des phases suivantes, les
dif férents pilotes - qui font partie des éléments qui constituent le noyau - 'testent' le matériel présent pour l'initialiser le cas
échéant.
Après le 'contrôle des partitions' et le montage du système de f ichier racine, le noyau lance le programme /sbin/init qui
démarre le système proprement dit avec ses nombreux programmes utilitaires et leur configuration. Le noyau continue à gérer
la totalité du système, c'est à dire le temps CPU des dif f érents programmes et leur accès au matériel.
Comment ça marche ? 78/120
Le processus /sbin/init est le processus responsable de l'initialisation du système; il est le père de tous les processus' du
système. Pour tous les programmes, init joue un rôle particulier: il est lancé directement par le noyau et il est immunisé contre
le signal 9 avec lequel on peut normalement 'tuer' tout processus. Les autres processus sont lancés soit par lui -même, soit
par l'un de ses 'processus f ils'.
Init est configuré centralement au moyen d'un f ichier /etc/inittab; c'est ici que les 'runlevels' (niveaux d'exécutions) sont
déf inis et qu'il est déterminé ce qui doit se passer à chaque niveau.
En f onction des entrées du fichiers /etc/inittab, différents scripts, regroupés pour plus de clarté dans /etc/rc.d, sont lancés par
init.
Le démarrage complet du système - et bien sur aussi son arrêt - est ainsi piloté par le seul processus init. On peut donc
considérer le noyau comme un 'processus en arrière plan' chargé de gérer les processus qui tournent, de leur allouer le temps
CPU, d'autoriser et de contrôler l'accès au matériel.
Les niveaux d'exécutions
Sous Linux, il existe dif f érents niveaux d'exécutions (runlevel) qui déf inissent l'état que doit avoir le système. Le niv eau
d'exécution par défaut dans lequel le système démarre au moment de l'amorçage est déterminé dans le f ichier /etc/inittab par
l'entrée initdefault. Habituellement c'est 2 ou 3.
Run Level Signif ication
0 Arrêt (Commande halt)
S Mode mono-utilisateur ou mode maintenance (console d'administration)
1 Multi-utilisateur sans la couche reseau
2 Multi-utilisateur avec reseau
3 Multi-utilisateur avec reseau et xdmcp
4 Libre
5 Libre
6 Réamorcage (commande reboot)
Pour passer ultérieurement à un autre niveau d'exécution, on peut tout simplement lancer la commande init avec le numéro
du niveau d'exécution correspondant. Bien entendu, le passage dans un autre niveau ne peut être requis que par
l'administrateur du système (root).
Pour cela il suf f it de taper la commande init <numéro de runlevel>
Vous pouvez tester cette commande en basculant entre les runlevels S,1 et 2. Évitez l'init 3 si vous n'êtes pas sur et certain du
bon f onctionnement de votre interf ace graphique, tout comme les runlevel 4 et 5 qui ne contiennent rien.
Ces niveaux d'exécutions permettent aussi de sélectionner diff érentes conf igurations. Vous pouvez voir les scripts dans le
répertoire /etc/rc.d. Vous avez ici une liste de tous les scripts qui peuvent être lancés au démarrage du systèm e. Les
répertoires rcx.d contiennent des liens vers les scripts qui seront lancés lorsque qu'un runlevel sera invoqué.
Ainsi dans /etc/rc2.d/rc2.d le script S05network indique que le script /etc/rc.d/network sera lancé (S Start /K Kill) en cinq uieme
position (05) lorsque le niveau 2 sera invoqué.
Récapitulatif de la séquence de démarrage

20.2.3 Le système X-Window


Le système X-Window est pratiquement devenu le standard d'interface graphique pour les systèmes Unix. Et même bien plus
encore car X11 est un système basé sur le réseau. Les applications qui tournent sur une machine peuvent être af f ichées sur
une autre si les deux ordinateurs sont connectes via un réseau. Ce réseau peut être local ou étendu comme Internet.
Il est bon de faire la différence entre serveur X qui ne sert qu'a afficher les graphiques et le window manager qui s'occupe de
la gestion des f enêtres et de l'af f ichage à l'intérieur de celles ci.
Il existe un serveur X pour une carte graphique mais plusieurs window manager dont les plus connus sont KDE, Gnome,
Enlightement, WindowMaker , CDE,etc...
Actuellement il existe trois f açon de conf igurer le serveur X :
xf 86conf ig : une version en ligne de commande très peu esthétique mais extremement ef f icace.
XF86Setup: Interactif en mode graphique simple mais ef f icace.
saX : Interactif mais encore en cours de développement.
Comment ça marche ? 79/120
Avant tout si l'on ne connaît pas les caractéristiques de la carte graphique il existe une commande pour voir si le matériel est
reconnu, il s'agit de SuperProbe qui va essayer de déterminer les caractéristiques de la carte graphique.
Nous allons pour notre part utiliser SaX2. L'avantage est que le matériel est détecté automatiquement. Il est donc simple de
conf igurer X- Window . Après avoir lancé sax2 , il suffit de 'cliquer' sur continuer après avoir vérifier que le matériel sélectionné
est bien le bon. Si tel n'est pas le cas, on sélectionne manuellement dans la liste. Pour le moniteur une résolution 16 bits en
1280x1024 donne de bon résultats. Une f ois la conf iguration f aite (création du f ichier /etc/X11/XF86Conf ig).
Si un problème survient il suffit d'appuyer sur Ctrl + Alt + Backspace pour arrêter le serveur X et rebasculer en mode consol e.
Une f ois la conf iguration validée il ne reste plus qu'a tester le f onctionnement d e X-WINDOW en le lançant grâce a la
commande startx.
Maintenant vous pouvez explorer les différents menus de KDE qui est le window-manager par défaut sur SuSE Linux. A vous
de découvrir les dif f érents outils mis a votre disposition dans les barres de menus.
Ensuite nous allons mettre en place le login graphique. Pour cela on lance kdmconfig dans un terminal ou directement à partir
de la barre de tache. Les paramètres sont assez parlant, les modifier si nécessaire. Pour tester le bon fonctionnement du log in
graphique, il faut quitter X-Window et lancer rcxdm (init 3) après avoir déf init la bannière KDE comme bannière de login par
déf aut (yast). Se loguer et revenir en runlevel 2(Cf chapitre précèdent). Il ne reste plus ensuite qu'a déf inir que le login doit
toujours se faire en mode graphique. De plus en mode graphique on peut toujours accéder à l'un des six terminaux virtuel en
utilisant Ctrl + Alt + F1 à F6 et revenir au mode graphique avec Alt + F7.
20.2.4 Le noyau et les paramètres du noyau
Le noyau présent actuellement sur le système - et que l'on retrouve dans /boot/vmlinuz - est conf iguré de telle manière qu'il
supporte une gamme étendue de matériel.
Ce noyau n'est donc pas construit spécialement pour votre système et il est plus avantageux - bien que ce ne soit pas
absolument indispensable! - de générer un noyau.
Pour la création d'un nouveau noyau, il existe déjà des procédures qui permettent d'automatiser presque entièrement la
compilation. Seules les questions posées au sujet du matériel que doit suppo rter le noyau doivent être traitées en mode
interactif .
Pour construire un nouveau noyau, il est nécessaire d'avoir installé aussi bien les sources du noyau que le compilateur C et
les f ichiers 'include' pour le compilateur C. Les sources du noyau se situe dans le répertoire /usr/src/linux.
Pour compiler le noyau il f aut d'abord ouvrir un terminal, se rendre dans le répertoire /usr/src/linux. Ensuite entrer la
commande make xconf ig qui va permettre de conf igurer le noyau. Les options disponibles sont
m : module du noyau
y : integrer dans le noyau.
n : n'est pas present.
Ensuite on revient au menu précèdent en sélectionnant Main Menu et on 'clique' sur save and exit. Après il ne reste plus qu'a
rentrer la commande make dep clean bzImage qui correspond à la vérif ication des dépendances, l'effacement des f ichiers qui
ne sont plus nécessaires et la compilation. Ensuite exécuter la commande make modules modules -install qui va créer les
modules et les installer dans le répertoire /lib/modules/<version de linux>. Ensuite il suffit de faire un make bzlilo pour obtenir
une nouvelle version du noyau directement dans répertoire /boot.
Avant d'installer le nouveau noyau il est bon de f aire une copie de sauvegarde de l'ancien. Pour cela allez dans le répertoir e
/boot et copiez vmlinuz.old en vmlinuz.org.
Ensuite nous allons lancer YaST et aller dans Administration Système puis Conf iguration du noyau et amorçage puis
conf igurer LILO pour créer une nouvelle entrée dans lilo. Cette nouvelle entrée s'appellera rescue et prendra un noyau
optionnel qui sera notre noyau de sauvegarde /boot/vmlinuz.org. Ceci est nécessaire et permet en cas de dysf onctionnement
du nouveau noyau de redémarrer avec un noyau valide. Ensuite il suffit de valider et de quitter yast. Maintenant il ne reste plus
qu'a copier notre nouveau noyau dans le répertoire /boot avec un simple cp /vmlinuz /boot/vmlinuz et de lancer la commande
lilo pour que lilo soit mis à jour. Il suf f it de redémarrer la machine pour vérif ier que le nouveau noyau marche et f onc tionne
bien.
20.2.5 Montage des systèmes de fichiers
Les systèmes de fichiers sous unix ne sont pas comme sous windows représentes par une lettre mais ils sont montés sur un
répertoire c'est a dire que l'on ne voit que des répertoires. Donc dans notre cas il f aut comprendre comment linux voit les
partitions de la machine.
La commande pour le montage de périphériques :
mount -t <type de filesystem> <partition> <point de montage>
ou le type de f ilesystem peur être ext2 (linux), msdos (DOS 8+3), vf at (DOS ) avec les noms longs), iso9660 (CR-ROM).
Attention les types de filesystem doivent être déclaré dans le noyau. Pour démonter le système de f ichiers il suf f it de taper
umount <point de montage>.
Par exemple pour monter une disquette il f aut entrer la commande :
mount -t ext2 /dev/f d0 /f loppy
et umount /f toppy pour la démonter .
Les entrées peuvent être f aites automatiquement grâce au fichier /etc/fstab qui contient la liste de répertoires à monter. Da ns
le f ichier f stab actuel que vous pouvez éditer, il existe une entrée pour la disquette donc il suf f it en f in de compte de taper la
commande mount /f loppy pour monter la disquette (les autres paramètres étant lu dans le f ichier f stab).
20.2.6 Installation de logiciel
Il existe 3 méthodes pour installer des logiciels sous linux.
La première est la mise en place de logiciels contenus dans le cd de la distribution. Pour cela il suf f it de lancer yast,
determiner/démarrer l'installation et de sélectionner les packages à ajouter ou à enlever.
Comment ça marche ? 80/120
La seconde est la mise en place de packages pré-compilé et mis au format rpm. Il suff it d'utiliser la commande rpm
pour installer le package.
Rpm -<option> nom du package
option : i install
e erase
U update
v verbose
--nodeps sans vérif ication des dépendances.

La troisième est la compilation des sources mis à disposition.


La plupart du temps les sources sont au f ormat .tar.gz, il f aut d'abord décompresser le f ichier : Tar xvzf fichier.tar.gz
-C /tmp
Ensuite, il f aut aller dans le répertoire créé pour lancer la commande ./conf ig ure.
Attention : on peut définir des options à la commande conf igure; pour en savoir plus tapez ./conf igure --help. Cette
commande va vérifier que l'ensemble des librairies nécessaires sont présente sur le système et mettre à jour le f ichier
Makef iles en fonction. Ensuite lancer la compilation avec make et si tout se passe bien il suf f it de lancer en tant que
root la commande make install.

21 Linux : le réseau et les services


21.1 La configuration du réseau
La conf iguration du réseau peut être activée en passant par l'utilitaire YaST.
Dans le reste de ce chapitre on considère que le réseau est en place et f onctionne correctement. Pour vérif ier que la carte
réseau à bien été reconnue par le noyau il suffit de taper la commande dmesg pour vérifier qu'il existe une entrée avec eth0.
Dmesg | grep eth0
eth0: RealTek RTL-8029 found at 0xe800, IRQ 11, 00:00:B4:5F:CC:6C

Ensuite on peut vérif ier que la carte est bien conf igurée avec la commande ifconfig.
eth0 Link encap:Ethernet HWaddr 00:00:B4:5F:CC:6C
inet addr:213.56.242.100 Bcast:213.56.243.255 Mask:255.255.252.0
UP BROADCAST NOTRAILERS RUNNING MTU:1500 Metric:1
RX packets:8119 errors:0 dropped:0 overruns:0 frame:0
TX packets:288 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:11 Base address:0xe800
Enf in les routes par la commande route.
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
loopback * 255.0.0.0 U 0 0 0 lo
default * 0.0.0.0 UG 0 0 0 eth0
Les quatre f ichiers importants que l'on va retrouver tout au long de ce chapitre sont /etc/hosts, /etc/inetd.conf , /etc/services et
tcpd.
/etc/hosts : permet d'associer à une adresse ip un ou plusieurs nom(s)de machine ce f ichier est constituer de la f açon
suivante:
xx.xx.xx.xx <nom machine> <autre nom machine>
/etc/sevices sert a associer un nom de service à un numéro de port :
f tp-data 20/tcp # File Transf er [Def ault Data]
f tp 21/tcp # File Transf er [Control]
/etc/lnetd.conf sert a associer à un service un daemon spécif ique. Par exemple
f tp stream tcp nowait root /usr/sbin/tcpd prof tpd
Tcpd sert a permettre ou non l'accès a certains services en f onction de la provenance de la requête. Pour cela il utilise deux
f ichiers de conf iguration: host.allow (permission) et host.deny (interdiction).
21.2 Les connections réseau simples
La premiere étape est de verifier le bon f onctionnement du réseau. Pour cela il suffit de faire un ping sur une des machines du
réseau.
Ping -c 4 xx.xx.xx.xx
Ensuite nous pouvons réaliser une connexion via telnet (pas de cryptage) ou ssh (cryptage). Pour cela il suf f it d'entrer la
commande telnet <ip de la machine à contacter > ou ssh <ip de la machine> -l >nom d'utilisateur distant> dans un terminal, et
ensuite son login et son passwd sur la machine distante (qui n'est peut être pas lié à celui sur la machine locale). Les
commandes sont exécutées sur la machine distante et les résultats s'af f ichent sur la machine locale dans le terminal.
Maintenant on va définir, que l'affichage (DISPLAY) s'eff ectue non plus sur la machine distante mais sur la machine locale.
Pour cela on exporte la variable DISPLAY par:
export DISPLAY=<ip local>:0.0
Ensuite si on exécute une commande tel que netscape sur la machine distante on obtient un message d'erre ur comme quoi
Comment ça marche ? 81/120
Xlib ref use la connexion. pour corriger cette erreur il f aut déclarer que la machine distante a le droit d'af f icher en local. Pour
cela il suf f it dans un terminal local de taper la commande xhost +<nom de la machine distante>.
Pour vérif ier les ports « écoutant » il suf f it de taper la commande : netstat -lpd
Et pour voir les connections actives : netstat -nt
21.3 Network File System
NFS permet le partage de fichiers via le réseau. Le montage sur un poste client se f ait comme si l'on montait une partition
locale sur un répertoire.
21.3.1 Conditions préalables
Tout d'abord il faudra compiler un noyau avec le système de fichiers NFS (soit compilé dans le noyau, soit disponible sous
f orme de module).
Pour que nf s fonctionne sur la machine il est nécessaire que le daemon portmap soit actif sur le client et le serveur. On peut le
verif ier en tapant la commande
ps ax | grep portmap
21.3.2 Le serveur NFS
Pour exporter des f ichiers vers une autre machine il suf f it de modif ier le f ichier /etc/exports comme suit :
<répertoire à exporter> <machine> (option)
option: rw en lecture/écriture (par déf aut en lecture seule).
No-all-squash pas de transf ormation de l'utilisateur en nobody.nogroup.
No-root-squash pas de transf ormation de root en nobody.nogroup.
et une f ois le f ichiers modif ié il f aut relancer le daemon par la commande rcnfsserver restart.
Exemple de f ichier exports.
/export/BE-linux
/export/BE2 <machine>(rw ,no-all-squash)
La ligne ci-dessus donne aux machines un accès en lecture sur /export/BE-linux et un accès en lecture/écriture à <machine>.
L'option no-all-squash est spécifique à la SuSE qui par défaut transforme tous clients en nobody.nogroup (y compris root).
21.3.3 Installer un client NFS
Maintenant, à l'invite (prompt) de root, entrer la commande mount appropriée et le système de fichiers apparaîtra. Continuons
avec l'exemple suivant :
mount <machine>:<répertoire distant> <répertoire local>
<machine>étant le nom que vous avez donnez au serveur dans votre f ichier hosts.
Le système de fichiers est maintenant disponible et nous pouvons exécuter les commandes cd, ls et regarder les f ichiers
individuellement. Vous remarquerez que ce n'est pas aussi rapide qu'avec un système de f ichiers local, mais beaucoup plus
pratique que f tp. Si, au lieu de monter le système de fichiers, mount renvoie un message d'erreur comme mount failed, reason
given by server: Permission denied alors le f ichier /etc/exports est incorrect, ou vous avez oublié de lancer rcnf sserver apr ès
avoir modifié le fichier exports. S'il dit mount: clntudp update: RPC: Program not registered cela signifie que nfsd ou mountd ne
tourne pas sur le serveur .
Pour vous débarrasser du système de f ichiers, vous pouvez f aire :
umount <répertoire local>
21.4 Le serveur FTP
Le plus classique des services prop osé est le FTP. Nous allons mettre en place proftpd
Pour la mise en place du service il suffit de modifier le fichier de conf iguration /etc/proftpd.conf. Ce f ichier est relativement
complet en ce qui concerne sa conf iguration grâce aux commentaires qu'il contient. De plus vous avez un complément
d'inf ormation dans /usr/doc/package/proftpd.
Récapitulatif de la chaîne pour un serveur f tp :
Comment ça marche ? 82/120

21.5 Network Information Server


"NIS était f ormellement connu sous le nom de Yellow Pages (YP) (Pages Jaunes) mais le nom Yellow Pages(tm) est une
marque enregistrée au Royaume Uni par British Telecom et ne peut être utilisée sans autorisation."
NIS est l'abréviation pour Network Inf ormation Service (Service d'Information Réseau). Son but est de fournir des informations,
qui doivent être connues sur l'ensemble du réseau, à toutes les machines connectées. Les inf ormations susceptibles d'être
distribuées par NIS sont :
• noms de login, mots de passe, répertoires d'ouverture (/etc/passwd)
• renseignements sur les groupes d'utilisateurs (/etc/group)
Par exemple, si votre mot de passe et les inf ormations s'y rattachant sont enregistrés dans la base de données NIS, vous
pourrez vous loguer sur toutes les machines du réseau sur lesquelles un client NIS est lancé.
A l'intérieur d'un réseau, il doit y avoir au moins une machine f aisant of f ice de serveur NIS maître.
Les serveurs esclaves n'ont qu'une copie de la base de données et la reçoivent du serveur NIS maître lorsque des
changement sont effectués dans la base de données. En fonction du nombre de machines et de la f iabilité de votre réseau,
vous pouvez décider d'installer un ou plusieurs serveurs esclaves. Lorsqu'un serveur NIS tombe en panne ou bien s'il est trop
long pour répondre aux requêtes, un client NIS connecté à ce serveur va alors essayer d'en trouver un en état de marche.
Les bases de données NIS sont au f ormat DBM, un dérivé des bases de données ASCll. Par exemple, les f ichiers
/etc/passwd et /etc/group peuvent être directement convertis dans le format DBM en utilisant un programme de conversion
ASCll-to-DBM (makedbm est inclus dans les programmes du serveur). Le serveur NIS maître devrait avoir les deux types: la
base ASCll et la base DBM.
Les serveurs esclaves seront avertis de tout changement dans les tables NIS (g râce au programme yppush et ef f ectueront
automatiquement les changements nécessaires pour synchroniser leurs bases de données. Les clients NIS n'ont pas besoin
d'ef fectuer cette opération puisqu'il communiquent tout le temps avec le serveur NIS pour lire l es inf ormations rangées dans
les bases de données DBM.
Dans le cas d'un serveur, nous allons juste transformer la machine en tant que serveur maître NIS. Pour cela il f aut déf inir un
nom de domaine par la commande domainname nis.domain. Ensuite on va créer notre domaine par la commande
/usr/lib/yp/ypinit -m (l'option -m définit le serveur NIS maître. Le f ichier Makef iles situé dans le répertoire /var/yp déf init les
f ichiers qui seront exportés par NIS. Il ne reste plus qu'a lancer le serveur NIS avec la co mmande rcypserv start.
Dans le cas d'un client, vous n'aurez besoin que des programmes clients (ypbind, ypwhich, ypcat, yppoll, ypmatch). Le
programme le plus important est ypbind. Ce démon doit toujours être lancé, c'est-à-dire qu'il doit toujours apparaître dans la
liste des processus. Comme c'est un démon, il doit être lancé au démarrage de votre machine dans le f ichier de démarrage (
rcypclient ) . Dès que ypbind f onctionne, votre système devient un client NIS.
Vous pouvez également lancer rpcinf o -u localhost ypbind. Cette commande devrait alors produire :
program 100007 version 2 ready and waiting
Vous devriez alors être capable d'utiliser les programmes clients tels que ypcat, etc. Par exemple, ypcat -k passwd vous
donne la liste des mots de passe ( chif f rés !) de la base de données NIS.
Ensuite pour intégrer notre machine dans un ensemble NIS il suffit de lancer yast, administration du système, conf iguration
réseau, conf igurer le client yp et de remplir les deux champs.
Le f ichier nsswitch.conf quand a lui déf init l'ordre dans lequel on ef f ectue les recherches.
# passwd: db files nis
# shadow: db files nis
# group: db files nis
passwd:, compat
group: compat
hosts: files nis dns
networks: files nis dns
services: db files nis
protocols: db files nis
rpc: db files
ethers: db files netmasks: files
netgroup: files nis
bootparams: files
automount: files nis
aliases: files
Dans ce f ichier on voit apparaître un paramètre qui s'appelle automount. Il permet grâce à un f ichier /etc/auto.master de
déf inir un point de montage automatique. C'est à dire que le montage est effectuer seulement au moment ou l'on accède à ce
répertoire.
21.6 Serveur Http (Apache)
Apache est le serveur http classique sous Linux. Il se configure grâce au f ichier de configuration /etc/httpd/httpd.conf qui est
commenté. Il est divisé en 3 partie.
• La première concerne le serveur apache et ses paramètres.
• La seconde déf init les paramètres du serveur de base tel que DocumentRoot (racine du document), les alias,...
• La troisième concerne les serveurs virtuels.
Pour que les modif ications soient prises en compte il f aut relancer le serveur avec la commande rcapache restart.
De plus vous pouvez déf inir des password en créant un f ichier .htaccess dans le répertoire voulu et en y ajoutant :
Comment ça marche ? 83/120
AuthUserFile .htpasswd
AuthName ByPassword
AuthType Basic
<Limit GET>
require user toto
</Limit>
Ensuite il ne reste plus qu'a aller dans /usr/local/httpd (à moins que vous ayez modif ier l'emplacement des f ichiers de
conf iguration de apache) , à lancer la commande htpasswd -c .htpasswd toto et à rentrer le password pour toto.
Il suf fit de lancer netscape et de mettre comme adresse le nom de la machine ou le serveur tourne. Vous pouvez aussi activer
les alias de vérif ication de apache.
21.7 Domaine Name Serveur (DNS)
21.7.1 Un brin de théorie
Le service DNS est un système organisé de manière hiérarchique, sous f orme d'arbre. La racine est désignée par "." et
s'appelle "la racine". En dessous de . se trouvent un certain nombre de TLD (Top Level Domains); les plus connus sont ORG,
COM, EDU, NET et FR, mais il yen a beaucoup d'autres. Tout comme un arbre, il a une racine avec des branches qui en
partent. Si vous avez des connaissances en inf ormatique f ondamentale, vous reconnaîtrez dans le DNS un arbre de
recherche, avec des noeuds, des branches et des f euilles.
Lorsque vous recherchez une machine, la question est posée récursivement dans toute la hiérarchie depuis la racine. Lorsque
vous voulez trouver l'adresse IF de prep.ai.mit.edu, votre DNS doit trouv er un serveur de noms pour le domaine edu. Votre
DNS demande d'abord à un serveur de noms de. (il possède déjà les adresses des serveurs pour ., elles sont dans le f ichier
root.hints), et le serveur pour . donne une liste des serveurs d'edu.
21.7.2 Notre propre domaine
Maintenant, nous allons déf inir notre propre domaine bien à nous. Nous allons créer le domaine linux.bogus et y déclarer
quelques machines. C'est un nom de domaine totalement f actice, af in d'être sur de ne déranger personne dans le Vaste
Monde.
Remarque importante: tous les caractères ne sont pas admis dans les noms de machines. On ne doit utiliser que les
caractères de l'alphabet anglais (a-z), les nombres (0-9) et le tiret "-". Les majuscules et les minuscules ne sont pas
dif f érenciés: pat.uio.no est identique à Pat.UiO.No.
En f ait, nous avons déjà commencé à créer notre propre domaine avec cette ligne dans /etc/named.conf :
zone "0.0.127.in-addr.arpa" {
type master;
file "pz/127.0.0";
};
Notez bien l'absence de "." à la f in des noms de domaine de ce f ichier. Elle signifie que nous allons déf inir la zone 0.0.127.in-
addr.arpa, que nous sommes son serveur principal et que tout est stocké dans un f ichier appelé 127.0.0.db On a déjà vu ce
f ichier, il se présente comme ceci :
@ IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
1 ; Serial
8H ; Refresh
2H ; Retry
1W ; Expire
1D) ; Minimum TTL
NS ns.linux.bogus.
1 PTR localhost.
Notez bien le « . » à la f in de tous les noms de domaine complets de ce f ichier , contrairement au f ichier named.boot .
Certaines personnes aiment commencer chaque f ichier déf inissant une zone par une directive $ORIGIN, mais en f ait c'est
superf iu. L'origine (l'emplacement dans la hiérarchie du service DNS) d'un fichier de zone est indiquée dans la zone section du
f ichier named.conf . Dans notre cas, c'est 0.0.127.in-addr.arpa.
Ce "f ichier de zone" ("zone f ile") , contient 3 "ressource records" (RRs ) : un SOA RR, un NS RR et un PTR RR. SOA est
l'abréviation de "Start Of Authority" (Origine de l'Autorité). Le "@" est une notation spéciale qui désigne l'origine. Et comme la
colonne "domain" de ce f ichier donne 0.0.127 .in-addr .arpa, la première ligne signif ie donc :
NS est le "resource records" pour le serveur de noms (NS = Name Server) , il n'y a pas de @ au début de la l igne, il est
implicite, puisque la ligne d'avant commence avec un "@". Alors, faites-vous une f leur en omettant ce caractère. Donc, la ligne
NS peut aussi s'écrire comme suit 0.0.127.in-addr.arpa. IN NS ns.linux.bogus
Elle dit au service DNS quelle machine est le serveur de noms pour le domaine 0.0.127.in-addr.arpa, c'est ns.linux.bogus. ns
est le nom habituel des serveurs de noms, tout comme www. pour les serveurs Web, mais c'est simplement une habitude, on
peut choisir n'importe quel nom.
Et f inalement le PTR dit que l'adresse 1 dans le sous réseau 0.0.127.inaddr.arpa, donc 127.0.0.1 est appelé localhost.
Le champ SOA est le préambule de tous les fichiers de zone, et il doit yen avoir exactement un dans chaque f ichier de zone.
Ce champ SOA décrit la zone, son origine (une machine appelée ns.linux.bogus), qui est responsable de son contenu
(hostmaster@linux.bogus, vous devriez mettre votre adresse email à cet endroit), de quelle version du fichier de zone il s'ag it
(serial : 1), et quelques autres paramètres pour le cache et les serveurs DNS secondaires. Quant aux champs restants
(ref resh, retry, expire et minimum) utilisez les valeurs données dans ce HOWTO et tout se passera certainement très bien.
Maintenant, relancez votre named (avec la commande rcnamed restart) et utilisez nslookup pour regarder le résultat :
Comment ça marche ? 84/120
$ nslookup
Default Server: localhost
Address: 127.0.0.1
>127.0.0.1 Server: localhost Address: 127.0.0.1
Name: localhost Address: 127.0.0.1
Tout va bien, on arrive à obtenir localhost à partir de 127.0.0.1. Maintenant, pour le sujet qui nous préoccupe, le domaine
linux.bogus, insérez une nouvelle zone dans le f ichier named.conf :
zone "linux.bogus" {
notify no;
type master;
file "linux.bogus.db";
};
Notez qu'encore une f ois il n'y a pas d e "." à la f in des noms de domaine dans le f ichier named. conf .
Dans le f ichier de zone linux.bogus, nous allons mettre quelques données totalement f actices :
;
; Zone file for linux.bogus
;
; The full zone file
;
@ IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
199802151 ; serial, todays date + todays serial #
8H ; refresh, seconds
2H ; retry, seconds
1W ; expire, seconds
1D ) ; minimum, seconds
;
NS ns ; Inet Address of name server
MX 10 mail.linux.bogus ; Primary Mail Exchanger
MX 20 mail.friend.bogus. ; Secondary Mail Exchanger
;
localhost A 127.0.0.1
ns A 192.168.196.2
mail A 192.168.196.4
Il y a deux choses à noter à propos du champ SOA. ns.linux.bogus doit absolument être une vraie machine possédant un
champ A. n n'est pas légal d'avoir un champ CNAME pour la machine mentionnée dans le champ SOA.
Il n'est pas nécessaire que son nom soit "NS", ce peut être tout autre nom valide. La deuxième chose à noter c'est que
hostmaster.linux.bogus doit se lire comme hostmaster@1inux.bogus. Ce doit être un alias de mail, ou une véritable boîte aux
lettres électronique, et la personne qui maintient le DNS doit la lire régulièrement. Tous les mails concernant l'administrat ion
du domaine seront envoyés à cette adresse. n n'est pas obligatoire que le nom soit "hostmaster", vous pouvez mettre votre
adresse e-mail personnelle, mais il serait bon que l'adresse "hostmaster" f onctionne aussi.
Il y a un nouveau RR (Resource Record) dans ce f ichier, c'est le MX, pour Mail eX changer. n indique aux systè mes de
gestion du courrier électronique à quelle machine envoyer le mail adressé à someone@linux.bogus, dans notre cas à
mail.1inux.bogus ou mail.friend.bogus. Le nombre devant chaque machine est sa priorité vis-à-vis du champ MX, le RR avec
le numéro le plus f aible (10) correspond à la machine à laquelle le courrier doit être adressé en priorité. En cas d'échec, il peut
être adressé à la machine qui a le numéro de priorité immédiatement supérieur, c'est -à-dire mail.friend.bogus qui a une priorité
de 20 dans notre cas.
Il ne reste plus qu'a tester votre DNS après avoir relance named par la commande rcnamed restart.
21.8 Partage avec Windows (SAMBA)
Samba permet de partager des fichiers et des imprimantes via le reseau avec des machines windows 9x, NT et 2000. Il est
même possible (même si cela est encore en développement: samba tng) de transformer la machine linux en serveur NT (PDC,
BDC, serveur autonome).
Conf iguration du f ichier /etc/smb.conf.
La conf iguration de Samba sur une machine Linux (ou sur un autre Unix) est contrôlée par un seul f ichier, /etc/smb.conf. Ce
f ichier indique quelles ressources système que vous désirez partager avec le monde extérieur, et quelles restrictions vous
désirez imposées.
Puisque les chapitres suivants vont traiter du partag e de f ichiers et d'imprimantes avec des machines Windows, le f ichier
smb.conf présenté dans ce chapitre est aussi simple que possible, en guise d'introduction.
Chaque partie du f ichier commence par une entête, comme par exemple [global], [homes], [printer s], etc...
La section [global] déf init quelques variables communes pour le partage de toutes les ressources.
La section [homes] permet à un utilisateur distant d'accéder à son répertoire d'accueil (et uniquement au sien) sur la machin e
Linux locale. C'est-à-dire que si un utilisateur Windows essaye de se connecter à ce répertoire partagé depuis sa machine
Windows, il sera connectê sur son répertoire d'accueil personnel.
Le f ichier smb.conf suivant donné en exemple permet à des utilisateurs distants d'acc éder à leur répertoire home sur la
machine locale et d'écrire dans un répertoire temporaire. Pour qu'un utilisateur Windows puisse voir ces partages, il f aut qu e
l'hôte Linux soit sur le réseau local. Ainsi l'utilisateur connecte un lecteur réseau depuis le gestionnaire de fichiers Windows ou
Explorateur .
Comment ça marche ? 85/120
Assurez vous de relancer le serveur après avoir fait des changement dans ce fichier (smb stop puis smb start ou encore par
rcsmb restart).
/etc/smb.conf
[global]
; autoriser les invités ( comptes "guest") à se connecter
; guest account = nobody
log file = /var/log/samba-log.%m
lock directory = /var/lock/samba
share modes = yes
[homes]
comment = Répertoire homes browseable = no
read only = no
create mode = 0750
[tmp]
comment = Espace disque temporaire
path = /tmp
read only = no
public = yes
En éditant ce f ichier /etc/smb.conf vous pouvez lire les différents commentaires qui vous donnerons plus d'informations sur l es
dif f érentes options de conf iguration de SAMBA.ll ne reste plus qu'a relancer samba avec la commande rcsmb restart.
De plus vous bénéficiez des commandes samba vous permettant de dialoguer avec une machine windows. Ces commandes
sont :
• smbclient -L <nom netbios> -u toto qui permettent de voir les partages windows (f ichiers et imp rimantes)
• smbmount //<serveur>/<nom de partage> <repertoire de montage local> -u toto qui permet de monter un point
de partage windows sur un répertoire local. A noter que si le support smbf s est compilé dans le noyau linux vous
pouvez f aire de même avec la commande mount.
Mount -t smbfs //<serveur>/<nom de partage> <repertoire de montage local> -o username=toto
• smbpasswd et smbprint permettent quand à eux de changer de password et d'imprimer en utilisant un serveur
windows NT.

22 Programmation Unix
22.1 Unix : Introduction et commandes usuelles
22.1.1 Introduction
Ce bureau d'études est consacré à l'utilisation et à la manipulation de shells (sous UNIX, un shell n'est rien d'autre qu'un
interpéteur qui cherche à comprendre les commandes que vous entrez au clavier par exemple).
Steve Bourne a donné son nom au premier shell utilisé sous UNIX, le Bourne-Shell: sh. D'autres shells existent tels que le rsh
(Restricted Shell), le csh (C-Shell, un shell dérivé du langage C) le ksh (Korn-Shell) et le bash (Bourne Again Shell). C'est ce
dernier que nous étudierons plus précisément dans ce bureau d'étude.
22.1.2 Les commandes usuelles
Remarque: le BOURNE AGAIN SHELL, très convivial, est lancé par défaut sur vos machines au démarrage (si tel n'était pas
le cas, il aurait f allu taper bash pour lancer un tel shell.)
Rappel de la liste des commandes usuelles

Commande Descriptif
ls af f ichage du contenu du répertoire
mkdir création d'un répertoire (make directory)
cd changement de répertoire courant (change directory) cd .. ressort du répertoire.
pwd af f ichage du répertoire courant (print working directory)
rm suppression d'un f ichier (remove)
rmdir suppression d'un répertoire vide (remove directory)
mv changement du nom d'un f ichier (move)
cp copie de f ichier (copy)
cat concaténation de f ichiers (aussi visualisation d'un f ichier à l'écran)
more af f ichage d'un f ichier à l'écran
ln génération d'un lien sur un f ichier
cmp comparaison de deux f ichiers
chmod changement des droits sur un f ichier (chmod 700, chmod 400...)
ps af f ichage de l'état des processus
df af f ichage de l'espace libre sur disque (disk f eel)
du af f ichage détaillé de l'utilisation du disque (disk use)
Si on ne se souvient plus du f onctionnement d'une commande, f aire man <nom de commande>.
Comment ça marche ? 86/120
Ainsi, la commande ls, peu bavarde renverra par exemple
essai1 essai2 essai3 fichiers
Alors que la commande ls -l af f ichera
- r w - r - - r - - 1 schang users 5 sep 10 14:55 essai1
- r w x - - - - - - 1 schang users 5 sep 10 14:56 essai2
- - - - - - - - - - 1 schang users 5 sep 10 15:00 essai3
d r w x r - x r - x 2 schang users 1024 sep 10 15:01 f ichiers
Le copier-coller sous UNIX
Imaginons que l'on souhaite f aire du copier-coller de la chaine who am i dans une f enetre XTERM. Suivez les étapes
suivantes:
sélectionner la zone à copier (clic sur le bouton de gauche de la souris en balayant la zone)
cliquer sur la f enêtre XTERM pour l'activer
cliquer sur le bouton du milieu de la souris
Appuyez sur RETURN pour obtenir le résultat.
Remarque: tout comme sous Word par exemple, on peut sélectionner un mot unique en double-cliquant dessus.
Essayez un copier-coller d'une commande bien curieuse: ddate...
Une touche bien pratique
Pour gagner du temps lorsque l'on tape des commandes, on peut utiliser la touche de tabulation: par exemple tapez his puis
pressez une f ois sur la touche de tabulation. L'ordinateur essaie de compléter au mieux.
Cela f onctionne à n'importe quel moment. Cependant, si il y a ambiguité, l'ordinateur ne sait que répondre. Essayez par
exemple de taper x puis la touche de tabulation. Rien ne s'af f iche car de nombreuses commandes commençant par le
caractère ``x'' existent. A présent réappuyez sur la touche de tabulation, l'ordinateur vous affichera toutes les possibilité s. De
manière générale, en appuyant 2 f ois sur la touche de tabulation, l'ordinateur nous propose toutes les complétions possibles.
Essayez à présent de taper tout de suite 2 fois sur la touche de tabulation: l'odinateur vous affiche alors toutes les possib ilités.
Une manipulation très pratique
Classiquement, vous lancez nedit sur un f ichier java; exemple: nedit fichier.java. Un problème qui en découle: vous ne
pouvez plus lancer de commande dans la fenêtre depuis laquelle vous avez lancé le nedit; cette dernière est bloquée (vous
avez beau taper javac fichier.java, dans la f enêtre, elle ne répond plus).
Deux solutions s'offrent à vous: 1ère solution: a) vous tapez CTRL+Z (ceci stoppe le processus: essayez de rentrer quelque
chose dans la f enêtre nedit, vous verrez qu'elle est bloquée),
b) vous rendez la f enêtre nedit à nouveau active en entrant au clavier: bg (souvenez-vous du cours, ceci permet de passer
l'application courante en arrière-plan)2ème solution: vous lancez votre commande directement en arrière plan par nedit
fichier.java & (dans ce cas aucun problème de blocage...).Création d'un fichier texte
Af in de créer un f ichier texte, qui pourra jouer le rôle de script, au moins 2 solutions sont possibles:
f aire un nedit <nom de f ichier>
ou
f aire cat > <nom de f ichier> <RETURN>
...taper le contenu de votre f ichier...
une f ois que vous avez f ini de taper le contenu, f aire <CTRL> + D
Remarque: de nombreuses autres solutions existent. Ainsi l'usage de l'éditeur vi qui est certes relativement pauvre mais
présente l'avantage de fonctionner même si l'environnement est sensiblement dégradé (nous manipulerons brièvement vi
dans la suite de ce bureau d'études).
Création d'une arborescence
Avant de créer cette arborescence, voyons comment utiliser les touches de curseur Haut et Bas pour gagner du temps:
pressez plusieurs f ois sur le curseur vers le haut, à présent sur celui du bas...
Dès lors qu'une commande vous intéresse, vous pouvez utiliser les curseurs Droit et Gauche af in de modif ier la ligne en
cours.
Rappels sur les droits des f ichiers:
On utilise la commande chmod,
prenons le cas d'un f ichier essai dont les droits seraient par exemple r w x r - x r - -
le premier ``r'' tout à gauche désigne le droit un lecture pour le propriétaire,
le premier ``w'' tout à gauche désigne le droit un écriture pour le propriétaire,
le premier ``x'' tout à gauche désigne le droit un exécution pour le propriétaire,
la séquence suivante de 3 caractères désigne les droits pour le groupe auquel appartient l'utilisateur,
f inalement, les derniers 3 caractères désignent les droits pour un utilisateur quelconque (ici, ce dernier n'aura qu'un droit
en lecture),
ainsi, pour octroyer de tels droits sur le f ichier essai, il suffit d'avoir f ait au préalable un chmod 754 car la décompositi on
des droits se fait bit à bit par paquets de 3 bits (Propriétaire, Groupe, Utilisateur quelconque). Exemple pour les droits 754
:
7=4+2+1rwx
5=4+0+1r-x
4=4+0+0r--
Remarque: les droits d'un répertoire se manipulent comme ceux d'un f ichier, seul le premier bit sera postionné à ``d'' par
déf aut pour indiquer qu'il s'agit d'un (d)irectory comme dans l'exemple suivant:
d r w x r - x r - x 2 schang users 1024 sep 10 15:01 rep
Créer l'arborescence suivante en respectant les droits :
droits autres attributs
-rw-r--r-- 1 schang users 5 sep 10 14:55 essai1
Comment ça marche ? 87/120
-rwx------ 1 schang users 5 sep 10 14:56 essai2
---------- 1 schang users 5 sep 10 15:00 essai3
d rwxr-xr-x 2 schang users 1024 sep 10 15:01 rep

22.2 Programmation Unix : les scripts


22.2.1 De la compréhension des scripts
A partir des commandes shell, chaque utilisateur peut créer ses propres f ichiers de commandes appelés scripts.
Variables et substitution
Les chaînes peuvent être délimitées par les trois caractères ', " et `. Ces délimiteurs se différencient par le type de substitions
qui sont réalisées à l'intérieur des chaînes qu'ils délimitent.
le caractère '(simple quote) : tous les caractères à l'intérieur d'une chaîne délimitée par ce caractère sont considérés
comme protégés, c'est-à-dire perdent, s'ils en ont un, leur aspect spécial. Le seul caractère qui ne peut appartenir à une
chaîne ainsi délimitée est le caractère ' lui même. Plus aucune substitution n'a donc lieu dans une chaîne délimitée par ce
caractère;
le caractère "(double quote) : à l'intérieur d'une telle chaîne, les caractères $ anti-slash ' ` sont encore des caractères
spéciaux. Cela signifie que la substitution des variables (rôle du caractère $) est réalisée et l'évaluation des commandes
également (rôle du caractère `). Une chaîne ainsi délimitée peut contenir le caractère ": il suffit en effet de la faire précéder
du caractère \ pour indiquer qu'il ne doit pas être interprété comme délimiteur.
le caractère `(anti quote) : une chaîne délimitée par ce caractère est interprétée comme une commande (après réalisation
des substitutions des valeurs aux variables) et le résultat de la commande lui est substitué.
Les commandes suivantes vous permettront de bien appréhender le rôle du caractère spécial ` pou r la substitution et la
manipulation des variables shell. $ a=schmilblick
$ echo $a
$ echo a
$ echo pwd
$ echo `pwd`
$ dir=pwd
$ echo dir
$ echo $dir
$ dir=`pwd`
$ echo $dirAffichage des principales variables d'environnement
Af f icher le contenu des variables réservées du shell suivantes (attention aux majuscules...) :

Nom Descriptif
HOME Nom du répertoire courant de l'utilisateur
LOGNA
Nom de connexion de l'utilisateur
ME
PATH Liste des répertoires explorés par le système pour rechercher une c ommande
PS1 Prompt d'invitation à entrer une commande
SHELL Nom du shell utilisé
TERM Nom du terminal
Redéf inissez votre prompt de la manière que vous souhaitez.
Premier script simple
Taper l'exemple suivant dans le f ichier dddate: date
dddateRendre le f ichier dddate executable...
Lancer ensuite la commande dddate. Pour stopper un programme qui boucle, il suffit de presser simultanément sur les
touches <CTRL> et <C>.
Les paramètres des scripts
La variable de nom * (interrogeable avec echo $* par exemple !) est interne au shell et a pour valeur la liste des variables de
position, c'est à dire des paramètres transmis lors d'un appel à un f ichier de commandes (ou script). Chacun de ces
paramètres peut être désigné par sa position dans la liste : les v aleurs de ces paramètres étant : $1, $2, etc. De plus, $0 est le
nom de la commande exécutée. Enf in, le nombre de paramètres est donné par la valeur $# de la variable #.
Taper le script com_bash1 suivant : echo la commande a $# paramètres
echo liste des paramètres: $*
echo nom de la commande : $0
echo paramètre 1 : $1
echo paramètre 13 : $13Puis entrer: $ ls -l com_ksh1
r w x r - x - - - 1 schang ens 115 Nov 10 : 07 com_ksh1
$ com_ksh1 a b c d e f g h i j k l m n o
la commande a 15 paramètres
liste des paramètres : a b c d e f g h i j k l m n o
nom de la commande : com_ksh1
paramètre 1 : a
paramètre 13 : m
Quelques remarques et règles de programmation en shell
Comment ça marche ? 88/120
La structure de contrôle if/then/else
La structure de cette commande est la suivante: if expression1
then commande1
else commande2
fi!!! Attention, il est très important de placer un retour chariot entre les lignes if expression1 et then commande1 par exemple.
A la limite, il vaut mieux trop de retours chariot que pas assez comme dans l'exemple suivant qui f onctionne bien: if
expression1
then
commande1
else
commande2
fi
Le Korn Shell et le Bourne Again Shell étant de véritables langages, ils permettent d'ef f ectuer des tests, des structures de
contrôle portant sur des expressions conditionnelles. Ces expressions sont de la f orme test expression. Le tableau suivant
présente quelques types d'expressions.
Expression Vraie si
-a ref ref existe
-d ref ref est un répertoire
-f ref ref est un f ichier
-s ref ref existe et est de taille non nulle
-n chaine chaine est de longueur non nulle
-z chaine chaine est de longueur nulle
num1 -eq num2 égalité numérique (equal)
num1 -ne num2 inégalité numérique (non equal)
num1 -gt num2 supérieur numérique (greater than)
num1 -ge num2 supérieur ou égal numérique
num1 -lt num2 inf érieur numérique
num1 -le num2 inf érieur ou égal numérique
chaine1 = chaine2 égalité alphanumérique
chaine1 != chaine2 inégalité alphanuméerique
chaine1 > chaine2 supérieur alphanumérique
chaine1 < chaine2 inf érieur alphanumérique
La commande test évalue une expression et positionne un code de retour à 0 si la condition est vraie et à 1 si la condition est
fausse.
Utiliser la commande test af in d'écrire un script appelé what. Ce script teste si un nom est un répertoire ou non
Dans le cas où c'est est un répertoire, le contenu de ce dernier devra être listé. Si c'est un f ichier, il f audra que le scri pt indique
la nature de ce f ichier (utiliser la commande file <nom du fichier>).
Remarque 1
Les structures de contrôle conditionnelles utilisent le code de retour de la dernière commande exécutée.
Remarque 2
La variable shell ? (accessible par $? donc !) contient le code de retour de la dernière commande exécutée.
Essayer l'exemple suivant: $ date
$ echo $?
$ ddddate
$ echo $?Remarque 3
La commande exit n termine un script avec un code de retour égal à n (Si n n'est pas précisé, le code de retour du script est
celui de la dernière commande exécutée).
Tester cette remarque à l'aide d'un petit script que vous inv enterez.
Solution
Remarque 4
La commande read lit une ligne sur l'entrée standard. Créer le script essai suivant: read entree
echo $entreeEcrire une commande équivalente (1 ligne!) à ces 2 lignes intitulée equiv, elle ne doit utiliser de read. Vous
pourrez tester votre commande avec la phrase : equiv ok l'exemple fonctionne qui af f ichera alors à l'écran la chaîne ``ok
l'exemple f onctionne''. Si vous ne trouvez pas au bout de quelques minutes voici la solution...
Solution
Règle 1
Chaque commande possède par déf aut:
une entrée standard : le clavier,
une sortie standard : l'écran,
une sortie d'erreur: l'écran.
Règle 2
L'entrée et les sorties standard d'une commande peuvent être redirigées vers un f ichier spécial ou ordinaire. Symbole de la
redirection en entrée: <
Symbole de la redirection en sortie: >Exemple: $ date > fichier
$ cat fichierLe symbole >> permet d'ajouter quelque chose à un f ichier déjà existant
Règle 3
Comment ça marche ? 89/120
Le symbole | (dénommé ``tube'' en f rançais et ``pipe'' en anglais) permet de connecter la sortie standard d'une commande à
l'entrée standard de la commande suivante. Exemple: $ ls -l | wc -lImaginez un script (2 lignes suf f isent!) permettant de
réaliser exactement la même commande en utilisant les symboles de redirection < et >.
Solution
Compteurs
Tapez le script compt suivant : i=0
i=$i+1
echo $i
let i=0
let i=i+1
echo $iLancez le.
Calculs mathématiques
Que f ait la f onction factor ? Essayez avec factor 12 et factor 144... factor 149.
La primitive expr <argument> permet l'évaluation d'expressions mathématiques. Les dif f érents termes de l'expression sont
des arguments de la commande et en tant que tels doivent être séparés les uns des autres par un espace ou une tabulation
(au moins). Il est possible par cette commande de manipuler des nombres entiers quelconques (les nombres négatif s sont
reconnus).
Essayer par exemple: $ expr 12 + 5
$ expr 12 / 5{Si expr permet d'effectuer d'autres calculs, comme vous pouvez le voir, elle est cependant assez pauvre. Aussi,
Korn-Shell et le Bash-shell proposent une commande bien plus puissante qui est bc. bc dispose entre autre des opérateurs
suivants:
nature opérateur(s)
opérateurs arithmétiques + - * / % ^ (puissance)
opérateurs d'incrémentation ++ -
opérateurs relationnels == != < > <= >=
opérateurs d'af f ectation = =+ =- =* =/ =%
calcul de la racine carrée sqrt
Tester cet interpréteur avec les commandes: $ bc -l
4+5
x=4.5
y=3.2
x+y
sqrt(2)
etc...
quit
$Avec un copier-coller (le coller se f aisant avec le 3ème bouton de la souris) créer le f ichier fonctions qui reprend ce que
vous venez de taper ci-dessus sous bc.
Solution
Interpréter tout le f ichier en le passant à bc.
Solution
La structure de contrôle while/do
La structure de cette commande est la suivante: while expression
do commande
done1°) Créer un f ichier texte essai quelconque de 5 lignes.
2°) Créer un script lecture qui va lire ce f ichier et en afficher le contenu. L'appel au script se fera par: $ cat essai | lectureUne
piste: utilisez la commande ``read'' qui lit normalement son entrée au clavier. Ici de toute façons, le script lecture sera trompé
car son entrée est f ournie par la sortie du f ichier essai...
Solution
La structure de contrôle for/do
La structure de cette commande est la suivante: for variableinmot1 mot2 ...
do commande
doneObservez la liste de commandes suivantes qui va nous servir pour le script ci-après: $ i=1
$ echo $i
$ echo ${i}fooEcrire un script qui va créer dans votre répertoire shell les 10 fichiers suivants dont le contenu sera par exemple
la date de création :
#f oo $f oo &f oo (f oo -f oo ;f oo >f oo <f oo [f oo ]f oo
Solution
Un script simple
Ecrire un script shell récursif compte <n> en shell (donc pas en C) qui af f iche les n premiers nombres dans l'ordre
décroissant.
Solution
Le script de la factorielle
Ecrire un script shell factorielle <n> qui calcule la f actorielle du nombre n.
Solution
Un peu de détente avant d'attaquer la suite...
Nous allons tester la commande at avec par exemple $ at now + 1 minute
at> ls -l
Comment ça marche ? 90/120
at> CTRL+DAu bout d'une minute, vous pourrez taper mail pour récupérer le résultat: taper <RETURN> ou 1 pour voir le
contenu du mail
taper d ou d 1 pour supprimer ce mailOn peut également essayer at now + 400 months...
Essayer les commandes suivantes: $ tty donne le nom complet de votre ligne de connexion.
$ who
$ wPour communiquer avec l'un de vos collègues utiliser la commande: $ write <nom de login>
bonjour
CTRL+DPour recevoir (respectivement ne plus recevoir) de messages, il suf f it de taper $ mesg y
ou
$ mesg nLe f ait de taper mesg vous renvoie l'état de votre drapeau de communication.
La commande talk <login d'un collègue> f onctionne encore mieux (normalement... ?!?)
En cas de crise d'amnésie, pensez à taper l'une des trois commandes suivantes: $ who am i
$ id
$ lognameEnf in la commande clear f ait...
Un détour par un traitement de texte sous UNIX
Essayez l'éditeur de textes vi par: $ vi essssai
taper quelque chose
pour sortir, il f aut utiliser la séquence ``Esc'' + ``:wq'' (ne pas oublier le ``: '').
si on rappelle le f ichier par vi essssai, on pourra passer en mode insertion en appuyant d'abord sur la touche ``i''. Pour
supprimer une ligne, utiliser la séquence ``Esc + dd''...La convivialité n'est pas au rendez-vous mais vi peut rendre certains
services.
Un traitement de texte ?
Nous allons à présent créer un document sous LaTeX. Ce traitement de texte (gratuit) fait partie en standard d'une majorité d e
distributions LINUX.
récupérer le document suivant et le sauveg arder dans votre répertoire sous le nom premier.tex.
\documentclass[a4paper,french]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\pagestyle{plain}
\usepackage{babel}
\usepackage{color}
\makeatletter
\newcommand{\LyX}{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\spacefactor1000}
\makeatother
\begin{document}
{\centering {\LARGE BUREAU D'ETUDE PROGRAMMATION UNIX}\LARGE \par}
{\centering \textbf{\small Durée:} 8 heures\par}
{\centering \textbf {\small G. Desgeorge et D. Schang}\par}
\vspace*{1cm}
{\centering -----------------------------------------------------\par}
\textbf{\small Objectifs:} posséder les principales commandes UNIX ainsi que
de bonnes bases en programmation UNIX.
{\centering -----------------------------------------------------\par}
\bigskip{}
\vspace*{1cm}
\tableofcontents
\newpage
%====================================================================
\section{Introduction}
%====================================================================
Ce bureau d'études est consacré à l'utilisation et à la manipulation de
\textit{shells} (sous UNIX, un \textit{shell} n'est rien d'autre qu'un interpéteur
qui cherche à comprendre les commandes que vous entrez au clavier par exemple).
Steve Bourne a donné son nom au premier shell utilisé sous UNIX, le Bourne-Shell:
\textit{sh}. D'autres shells existent tels que le \textit{rsh} (Restricted Shell),
le \textit{csh} (C-Shell, un shell dérivé du langage C), le \textit{bash} (Bourne
Again Shell), le ksh (Korn-Shell). Ce sont ces deux derniers que nous étudierons
plus précisément dans ce polycopié.
\section{Les commandes usuelles}
{\noindent Pour lancer un KORN SHELL taper la commande :}\\
\textbf{/bin/ksh} ou \textbf{ksh}.\\
{\noindent Pour lancer un BOURNE AGAIN SHELL taper la commande :}\\
\textbf{/bin/bash} et \textbf{bash}.\\
{\noindent Remarque: le BOURNE AGAIN SHELL est plus convivial sur vos machines,
cela tombe bien, il est lancé par défaut sur vos machines au démarrage.}
\subsection{Rappel de la liste des commandes usuelles}
\vspace{0.3cm}
{\centering \begin{tabular}{|l|l|}
\hline
Commande&
Comment ça marche ? 91/120
Descriptif\\
\hline
\hline
\textbf{ls}&
affichage du contenu du répertoire\\
\hline
\textbf{mkdir}&
création d'un répertoire (make directory)\\
\hline
\end{tabular}\par}
\vspace{0.3cm}
\end{document}
jeter un oeil à son contenu (oui, il s'agit bien d'une partie du ``source'' de ce bureau d'études...)
$ latex premier.tex on compile le document!
$ latex premier.tex on recompile afin d'avoir une table des matières correcte
$ xdvi premier.dvi
$ dvips premier.dvi crée le fichier postcript premier.ps
$ kghostview premier.ps
La contre-partie à cette complexité du source du document se trouve dans le f ait que LaTeX gère de manière très puissante
les f ormules mathématiques. Enfin, des moulinettes autorisent des conversions f aciles; essayez: $ latex2html premier.tex
$ cd premier
$ ls -l
$ netscape premier.html
Autres scripts
L'argument est-il numérique ?
On se propose d'écrire un script numeric <paramètre> qui permet de tester si le paramètre qui lui est passé est numérique
ou non. Idéalement, le script devrait f onctionner comme ceci: $ numeric 12
Ok
numeric a
ErrDes idées pour l'écrire?!
Si vous avez quelques dif f icultés, voici une piste à suiv re:
L'idée est de f aire un calcul mathématique avec l'argument qui a été passé (en utilisant expr par exemple). Bien entendu
si ce n'est pas un nombre, une erreur se produira et la variable $? qui contient le code de retour de la dernière commande
aura une valeur dif f érente de 0.
Il suf f ira donc de tester cette valeur et de renvoyer le bon message en conséquence.
Un problème substiste cependant: la sortie standard est ``polluée'' par le résulat du calcul de expr, qu'il soit bon ou
mauvais (par un message d'erreur dans ce dernier cas). La solution consiste alors à rediriger la sortie standard et la sortie
en erreur de expr par expr ...... 1>/dev/null 2>/dev/null
Ecrivez à présent le script complet.
Solution
Le script carre
Ecrire un script carre qui calcule et affiche les carrés des nombres entiers compris entre m et n, ces derniers étant passés en
paramètres du script.
Le script saison
Ecrire un script saison permettant de connaître la saison courante. Voici quelques pistes:
regardez ce que renvoie la commande date
utilisez la commande case,
pour simplif ier commencez par traiter une saison (l'été par exemple),
enf in dernier détail, voici les dates de début des saisons:
l'été commence le 21 juin,
l'automne commence le 21 septembre,
l'hiver commence le 21 décembre,
le printemps commence en avance: le 20 mars.

23 Programmation Unix : Signaux, processus et tubes


23.1 UNIX et langage C
Rappel: la commande cc -o prog prog.c correspond à la demande de construction d'un binaire exécutable de nom prog à
partir du f ichier source prog.c.
Au vu de la très f orte imbrication qui existe entre le langage C et UNIX il est parf ois très utile de pouvoir passer à un
programme C des paramètres.
Quand on appelle le maindu programme C, deux arguments lui sont passés en f ait:
le premier, baptisé conventionnellement argc signifiant nombre d'arguments (en anglais: argument count) représente le
nombre d'arguments de la ligne de commande qui a appelé le programme,
le second, baptisé conventionnellement argv signifiant vecteur d'arguments (en anglais: argument vector) est un pointeur
sur un tableau de chaînes de caractères qui contiennent les arguments, à raison de 1 par chaîne.
L'entête du programme sera donc celle-ci:
Comment ça marche ? 92/120
main (int argc, char *argv[]) {
}
Prenons un exemple, imaginons que votre programme s'appelle essai.c et qu'il a été appelé de la manière suivante sous
UNIX: essai bonjour, maître. Par convention, argv[0] est le nom par lequel le programme a été appelé (ici: essai) et, par
conséquent, argc vaut au moins 1. Si argc vaut 1, cela signifie qu'il n'y a aucun argument après le nom du programme sur la
ligne de commande. Dans l'exemple ci-dessus, argc vaut 3 et argv[0], argv[1] et argv[2] valent respectivement ``essai'',
``bonjour,'' et ``maître''. Le premier argument optionnel est argv[1] et le dernier est argc-1; de plus, la norme spécif ie que
argv[argc] doit être un pointeur nul.
Tout ceci étant précisé, on vous demande d'écrire un tel programme C qui affiche la liste des arguments qui lui sont passés en
paramètres. Si le programme ne reçoit aucun paramètre, le programme renverra un message du type ``pourriez-vous me
donner quelques paramètres s.v.p ?!?''
Solution
Mettre par exemple dans le f ichier essai: exit 12Lancer essai.
Rajouter au f ichier essai la ligne : exitVérif ier qu'en relançant le script essai, on obtient bien la valeur 12.

23.2 Les signaux sous UNIX


23.2.1 Présentation des signaux
Sous UNIX, les processus peuvent s'envoyer des messages appelés sig naux. Ces derniers ont des origines diverses, ils
peuvent être :
retransmis par le noyau : division par zéro, overf low, instruction interdite,
envoyés depuis le clavier par l'utilisateur ( touches : CTRL+Z, CTRL+C,... )
émis par la commande kill depuis le shell ou depuis le C par l'appel à la primitive kill.
Pour voir la totalité des messages envoyables sous UNIX, f aites:
kill -l
On peut remarquer que tous les signaux ont leur nom qui commence par ``SIG''. Descriptif de quelques signaux:
SIGFPE : une erreur arithmétique est survenue.
SIGKILL : signal de terminaison. Le processus qui reçoit ce signal doit se terminer immédiatement.
SIGINT : f rappe du caractère int sur le clavier du terminal: (CTRL + C).
SIGUSR1 et SIGUSR2 : signaux qui peuvent être émis par un processus utilisateur.
SIGSTP : f rappe du caractère de suspension sur le clavier: (le f ameux CTRL +Z).
SIGCONT : signal de continuation d'un processus stoppé: lorsque vous tapez bg après avoir f ait un CTRL +Z
SIGHUP : le processus leader de votre session est terminé: typiquement, lorsque vous vous loggez, un processus vous
concernant est crée; les autres processus qui sont crées ensuite dpéendent de celui-ci. Une f ois que le processus leader
de votre session est terminé (par un logout par exemple), le message SIGHUP est envoyé à tous ses f ils qui vont se
terminer à leur tour.
23.2.2 L'envoi de signaux
{En shell: kill -num_du_signal num_du_processus
{En langage C: #include <signal.h>
int kill (pid_t pid, int sig);
valeur de pid: si >0, le signal ira en direction du processus de numéro pid (nous laisserons de côté ici les cas pid =0,
pid<0...)
retour du kill:
renvoie 0: l'appel s'est bien déroulé
renvoie -1: l'appel s'est bien déroulé
valeur de sig:
<0 ou >NSIG: valeur incorrecte
0: pas de signal envoyé mais test d'erreur: sert à tester l'existence d'un processus de numéro pid par exemple
sinon: signal de numéro sig
23.2.3 Le traitement des signaux
Le destinataire du signal peut exécuter une f onction à la réception d'un signal donné. Ainsi, un appel à
signal(num_du_signal,fonction) récupère un signal de numéro num_du_signal.
{Remarque: sur les UNIX de la f amille Berkeley, par exemple Solaris de Sun, après exécution de la fonction spécifique définie
par l'utilisateur, l'option par déf aut est rétablie. Si on veut conserver l'option spécif ique il f aut rappeler signal(num_sig,
fonction) dans f onction. Voici un exemple que vous pouvez tester en:
lançant le programme puis en pressant sur (CTRL + C),
supprimant la ligne : /* ligne 1 */ et retester le programme pour bien comprendre la remarque.
#include <signal.h>
void trait_sig_int () {
printf("Bien reçu SIGINT, mais je m'en moque \n");
signal (SIGINT,trait_sig_int); /* ligne 1 */
}
main () {
signal (SIGINT,trait_sig_int);
while (1);
}
Exercice 1 : écrire un programme qui ignore tous les signaux. Piste pour l'écrire:
Comment ça marche ? 93/120
...
printf("Coucou, recu signal %d ! mais je l'ignore !\n", Numero);
...
for (Nb_Sig = 1; Nb_Sig < NSIG ; Nb_Sig ++)
...
Solution
Lui envoyer des signaux depuis une autre f enêtre par la commande UNIX:
kill -num_signal num_processus.
Ce programme les ignore-t-il tous ?
Exercice 2 : écrire un programme qui :
Af f iche son numéro (pid) via l'appel à getpid(),
Traite tous les signaux par une f onction f onc qui se contente d'af f icher le numéro du signal reçu.
Traite le signal SIGUSR1 par une f onction f onc1 et le signal SIGUSR2 par f onc2.
f onc1 affiche le numéro du signal reçu et la liste des utilisateurs de la machine (appel à who par system("who"))
f onc2 affiche le numéro du signal reçu et l'espace disque utilisé sur la machine (appel à df . par system("df ."))
Lancer le programme et lui envoyer des signaux, dont SIGUSR1 et SIGUSR2, depuis une autre f enêtre, à l'aide de la
commande kill.
23.2.4 Le cas de la fonction "alarm''
La primitive alarm unsigned int alarm (unsigned int secondes)demande au système d'envoyer au processus
courant le signal SIGALRM après la durée secondes. Le comportement du processus à la réception du signal SIGALRM est le
suivant:
if secondes=0 then annuler la demande antérieure
if handler associé à SIGALRM non déf ini then terminer le processus
Exercice 1
Ecrire un programme alarm qui demande à l'utilisateur de taper un nombre. Af in de ne pas attendre indéf iniment, vous
utiliserez le signal SIGALRM pour que le programme ne soit pas bloqué plus de 5 secondes.
#include <signal.h>
#include <stdio.h>
#include <unistd.h> /* pour la fonction alarm */
...
Solution
Exercice 2
Écrire un programme qui affiche la succession des lettres de l'alphabet de telle sorte qu'une nouvelle lettre apparaisse toutes
les secondes.
Solution
23.3 Processus
23.3.1 Rappels
La commande ps af f iche la liste de vos processus en cours.
La commande ps -x détaille davantage cette liste.
La commande top effectue, en temps réel un af fichage encore plus précis de l'ensemble des processus en cours d'exécution.
Créer le script essai dont le contenu est le suivant: date
sleep 2
essaiLancer le script essai par essai &. Le caractère & permet de lancer le processus en arrière-plan (background), c'est-à-
dire qu'il se déroulera en tâche de f ond. Essayez pour vous amuser à taper d'autres commandes telles que ls -l, etc. Vous
verrez alors, qu'imperturbable, le script essai vous af f ichera toutes les 2 secondes la date et l'heure.
Pour terminer le processus essai qui ne s'arrête avec aucune combinaison de touches du clavier, voyons une solution: Taper
fg
le processus revient alors en avant plan (f g pour f oreground).
il suf f it ensuite de faire CTRL + C pour arrêter le processus.A présent, tapez: ps puis ps -x. Enfin, relancez le processus essai
en background.
On pourrait dès lors imaginer une autre solution pour tuer le processus essai qui consisterait à: 1°) retrouver le numéro de PID
(processus identity) associé au processus essai,
2°) tuer ce processus par kill -9 <bon numéro de processus>.!!! Attention, ici, on a malheureusement du mal à retrouver le
bon processus à tuer. Aussi ne f aites pas de kill à la légère car si vous vous trompez de numéro de PID, vous risquez d'être
purement et simplement coincé... si cela arrive, appelez nous. Bref, il semble plus sage de revenir à la solution du passage en
avant-plan pour venir à bout de ce processus.
23.3.2 La création de processus
La primitive fork
Af in de créer des applications plus évoluées reposant sur le système d'exploitation, il plus f acile d'écrire un programme en C
qui réalise éventuellement des appels système.
La primitive fork permet la création dynamique d'un nouveau processus qui s'exécute de façon concurrente avec le processus
qui l'a crée. Tout processus UNIX, excepté le processus originel (de numéro 0), est crée par un appel à cette primitive.
Relisez le détail du cours portant sur la primitive fork.
Rappels de base pour l'écriture de programmes en C
Programme de saisie et de réaffichage d'un double: main()
{
Comment ça marche ? 94/120
double d;
scanf("%d'',&d); /* bien passer une adresse avec le &*/
printf("%d",d);
}Premier programme
Af in de bien comprendre le f onctionnement de la primitive fork, tapez l'exemple suivant dans le f ichier prog.c et executez le
(rajoutez les anti-slash ``n'' où il f aut car ils se sont perdus sous html): #include <stdlib.h>
#include <stdio.h>
main() {
pid_t pid;
switch(pid=fork()){
case -1: perror("Création de processus");
exit(2);
case 0:
/* on est dans le processus fils */
printf("FILS valeur de fork =%d ",pid);
printf("FILS je suis le processus %d de père %d",getpid(), getppid());
printf("FILS fin du processus fils");
exit(0);
default:
/* on est dans le processus père */
printf("PERE valeur de fork = %d ",pid);
printf("PERE je suis le processus %d de père %d",getpid(), getppid());
printf("PERE fin du processus père");
}
}Quelques commentaires:
perror : sert à renvoyer un message d'erreur plus explicite que celui qui serait généré avec un simple printf.
Dans certains cas, le processus fils renvoie 1 comme valeur de numéro père alors que visiblement le numéro de son père
n'est pas 1. La raison en est simple: si le père a f ini son exécution avant le f ils, le système octroie alors le numéro du
premier processus crée qui vaut 1.
Compilez ce programme. Exécutez le.
Synchronisation du père et du fils
Etant donné que le processus père et le processus f ils se déroulent de manière concurrente, il se peut très bien que le f ils
termine son exécution avant celle du père.
1°) Modifier le précédent programme en introduisant une temporisation af in que le f ils termine après le père quoi qu'il arriv e.
2°) A présent, on souhaite que quoi qu'il advienne, le processus père doit f inir après le fils tout en conservant la temporisation
qui se trouve dans le ``case'' du f ils.
Pour ce f aire, nous allons utiliser la commande wait:
pid_t wait(int *pointeur_status); pid_t est un type qui assure la portabilité d'une platef orme UNIX à l'autre (dans la pratique
son type se conf ond souvent avec le type int).
La sémantique de cette primitive est la suivante:
si le processus ne possède aucun f ils, la primitive renvoie la valeur -1,
si le processus appelant possède des fils mais aucun fils zombi, le processus est alors bloqué jusqu'à ce que l'un de ses
f ils devienne zombi.
A l'aide de cette nouvelle commande modifier votre programme afin que le père termine après le f ils quoiqu'il se produise dans
la partie ``case'' du f ils.
Solution
Signaux et fork
Exercice: réaliser un programme reposant sur les fork tel que le processus père envoie un signal SIGUSR1 à son processus
f ils après avoir testé son existence.
N'oubliez pas d'#include!
Solution
23.3.3 Primitives du système
Il est possible depuis un programme C de demander l'exécution d'une commande shell par un appel à la f onction standard:
system (const char *chaine_commande);Créez un tel programme qui lancera la commande nedit ou lancera le script top.
23.3.4 Les tubes
Introduction
Les tubes ordinaires (ou non nommés) constituent un mécanisme permettant à des processus de se communiquer des
inf ormations d'un volume signif icatif .
Le principe est le suivant:
on crée un tube,
ce tube f ournit un mécanisme de communication unidirectionnel entre deux processus. Ainsi, une fois le tube crée entre
deux processus, il sera possible à un processus A d'écrire à une extrémité du tube tandis qu'un autre processus B pourra
lire à l'autre extrémité ce qui a été écrit.
Ainsi qu'on va le voir tout de suite, les tubes permettent une synchronisation entre deux processus: le processus B devant
attendre par exemple que le processus A ait écrit dans le tube.
La primitive de création : pipe
Comment ça marche ? 95/120
Un appel à la primitive int pipe (int p[2]);crée un tube p : p[1] correspond au descripteur pour écrire dans le tube et p[0]
permettra de lire dans le tube. Si le tube a bien été crée, la valeur de retour de la fonction pipe sera 0, dans le cas contraire, la
f onction renverra -1.
Voici un programme qui illustre le f onctionnement des tubes: #include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int p[2];
char ch[10]; /* buffer qui servira à envoyer ou recevoir des données
main() {
if (pipe(p) == -1) {
perror("Creation du tube");
exit(2);}
printf("Ecrivons dans le tube");
write(p[1],"1234",4); /* 4 : longueur de ce qui est écrit dans le pipe */
read(p[0],&ch,4); /* lire lau maximum 4 caractères dans le pipe */
printf("A l'autre extremite, chaine recue : %s",ch);
}
write(p[1],"1234",4);
Remarques:
on lit/écrit dans le tube des caractères ou chaines de caractères,
read(p[0],&buf,TAILLE_BUF); correspond à une demande de lecture d'au plus TAILLE_BUF caractères,
write(p[0],buf,TAILLE_BUF); écriture des TAILLE_BUF premiers caractères de buf .
Ce qui vous est demandé:
Tester cet exemple.
Modifier le programme précédent. Il s'agit d'utiliser la notion de pipe et de fork pour f aire en sorte qu'un processus père
envoie à son f ils des inf ormations, le f ils af f iche alors à l'écran ce qu'il a reçu.
Utiliser la notion de pipe et de fork pour faire en sorte que le jeu de morpion joue tout seul contre lui même. On peut ainsi
imaginer créer 2 processus: un processus père, un processus fils. Ces deux processus joueront ensemble en s'inf ormant
mutuellement des coups joués par le biais de deux pipe.
Attention aux phénomènes de blocage. En effet, un processus qui tente de lire dans un tube où rien ne se trouve sera bloqué
jusqu'à ce que des inf ormations à lire s'y trouvent...

24 Unix : La commande awk


24.1 La commande awk
Cette section ne s'adresse qu'aux plus rapides!
24.1.1 Présentation
Cette commande permet d'appliquer un certain nombre d'actions sur un f ichier. La syntaxe est ins pirée du C. L'utilitaire awk
emprunte son nom à l'identité de ses trois auteurs (Aho, Weinberger et Kernighan). Il s'agit d'un véritable langage permettan t
l'écriture de f iltres. En effet, il permet d'extraire parmi les lignes d'un fichier des informations sélectionnées et offre la possibilité
de réaliser des comparaisons et des calculs sur des champs et de réorganiser les lignes. Il permet l'écriture rapide de tels
f iltres pour exploiter les résulats de programmes et ne nécessite aucune compilation.
24.1.2 Généralités
La syntaxe de la commande est la suivante:
awk [-F] car [-f ref_prog] [ref...]
l'option -F: par déf aut, le séparateur lorsque vous tapez une commande UNIX est l'espace. Ainsi, si vous tapez echo
bonjour, le séparateur entre ``echo'' et ``bonjour'' est bien l'espace. Si on revient à awk, il faut bien comprendre que cette
commande va ef f ectuer des recherches dans les f ichiers, en utilisant par exemple l'espace comme séparateur.
Cependant, dans certains fichiers comme celui des mots de passe, les seuls séparateurs que l'on trouve sont f ormés de
``:''. On utilisera alors l'option -F ":" pour analyser le f ichier de mots de passe suivant :
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/bash
daemon:x:2:2:daemon:/sbin:/bin/bash
lp:x:4:7:lp daemon:/var/spool/lpd:/bin/bash
games:x:12:100::/tmp:/bin/bash
l'option -f et [ref...]: les filtres que l'on applique à un f ichier sont parfois relativement longs à taper comme ça en ligne. Dès
lors il est plus simple de taper le f iltre dans un f ichier que l'on passera en argument à la commande awk. Ainsi, awk -f
prog.awk demo.txt va appliquer le f iltre contenu dans prog.awk au f ichier demo.txt (qui joue ici le rôle du paramètre
[ref...]).
24.1.3 Un premier exemple
Un f ichier soumis à un programme awk est découpé en enregistrements logiques (par déf aut des lignes) eux mêmes
découpés en champs. Un enregistrement (respectivement un champ) est une suite de caractères consécutifs délimitée par un
caractère distingué (un délimiteur) qui, par défaut est le caractère de fin de ligne (respectivement un caractère d'espacement
Comment ça marche ? 96/120
<SPACE>) De façon générale, $1, $2, ... désignent le premier champ, le second champ, ... de l'enregistrement courant et $0
cet enregistrement en totalité.
Voyons un petit exemple: créez le f ichier eleves.txt suivant:
BOBY 18 5
ZELYNOU 6 11
ANTIN 8 4
BOB 16 8 15
IZEL 16 18 12
Créez le f ichier awk.prg suivant:
{ print $1 " moyenne " ($2 +$3)/2 }
Enf in, lancez la commande suivante et voyez le résultat :
awk -f awk.prg eleves.txt
Explication: le traitement de chaque ligne se fait par une commande écrite entre accolades { et } . A présent, modifiez le f ichier
awk.prg comme suit et testez à nouveau par awk -f awk.prg eleves.txt (les commentaires sont précédés d'un #). { print $1
printf (" moyenne %5.2f antislash_n",($2+$3)/2 ) } # f in de traitement de la ligne courante
24.1.4 Variables, fonctions et instructions
Awk met à la disposition du programmeur des variables:
nom de la variable résultat
NF nombre de champs de l'enregistrement courant
NR numéro de l'enregistrement en cours de traitement,
en particulier NR aura comme valeur tout à la f in
le nombre total d'enregistrements
FILENAME nom du f ichier ouvert
Awk met à la disposition du programmeur un nombre considérable de fonctions dont voici un extrait des plus utiles :
nom de la f onction résultat
length(s) retourne la longueur de la chaine s
index(s1,s2) donne la position de la première occurence de s2 dans s1.
La valeur est 0 si il n'y a aucune occurence
gsub(r,s,t) sur la chaine t, remplace toutes les occurences de r par s
sub(r,s,t) comme gsub, mais remplace uniquement la première occurence
substr(s,i,n) retourne la sous chaine de s commençant en i et de taille n
Exercice: écrire un f ichier awk.prg qui permettra d'obtenir le résultat suivant à partir du fichier eleves.txt (le rôle de ce f iltre est
de remplacer toute lettre ``Z'' par la lettre ``a'' :
BOBY 18 5
aELYNOU 6 11
ANTIN 8 4
BOB 16 8 15
IaEL 16 18 12
Awk dispose enf in d'instructions : $$
Conditionnelles if (expr) instructionelse instruction $$
Itérations while (expr) instructionou for (expr,expr,expr) instructionou for (varintableau) instructionOn dispose également de:
=: af f ectation
++: incrémentation de 1
+=: incrémentation variable
exemple :
while( i*i < n ) { i++ }
f or (i=a;i<=b;i+=2) {
if (i*i==n) { print "trouvé" }
else { print i n i*i }
} # f inpour i
Awk initialise automatiquement les variables. Ainsi i est automatiquement initialisé à 0 au départ.
A présent, il ne nous reste plus qu'à revoir les expressions régulières ainsi que la syntaxe générale d'un f ichier awk et nous
pourrons dès lors écrire pratiquement n'importe quelle commande du type awk.
24.1.5 Rappels: les expressions régulières
Une expression régulière est une chaîne de caractère déf inie par des caract ères, des répétititions de caractères ou des
positions de caractères. Après les caractères, on peut mettre *: pour indiquer la répétition 0 f ois ou plus
+: pour indiquer la répétition 1 f ois ou plus
?: pour indiquer la répétition 0 f ois ou 1 f oisAinsi A*B correspond à B ou AB ou AAB ou AAAB etc.
On dispose aussi des symboles : [ : indicateur du début de la déf inition d'un ensemble de caractères
] : indicateur de la f in de la déf inition d'un ensemble de caractères
. : désigne un caractère quelconque excepté le caractère de f in de ligne
^ : pour indiquer le début de chaîne (si se situe derrière un [, il signif ie complément de l'ensemble correspondant
$: pour indiquer la f in de ligneVoici quelques expressions régulières et leur signif ication: ^B: chaîne qui commence par B
B$: chaîne qui f init par B
Comment ça marche ? 97/120
^.$: chaîne qui a un seul caractère
[AEIOU]: chaîne avec une seule voyelle majuscule
^[ABC]: chaîne qui commence par A ou B ou C
^[^a-z]$:chaîne à un seul caractère qui n'est pas une minusculeExercice : écrire les expressions régulières suivantes.
ensemble de tous les caractères alphanumériques
ensemble complémentaire du précédent
lignes qui ne contiennent que des lettres minuscules, c.à.d du premier au dernier caractère
chaîne non nulle avec seulement des chif f res.
Solution
24.1.6 La forme générale des programmes transmis à awk
Pour simplif ier, un programme ou un f iltre awk est divisé en trois sections, (don't panic, un exemple suivra):
La section initiale BEGIN {actions}
Les actions de cette section seront exécutées avant l'examen de la première ligne du f ichier à examiner. Le corps est
constitué d'une suite de couples de la f orme { actions }
ou
/ motif / { actions }
Dans le premier cas: { actions }, on traite toutes les lignes. C'est ce que l'on faisait jusqu'à présent. Dans le second cas:
motif { actions }, awk va lire le f ichier texte ligne par ligne à la recherche de certains motif s particuliers (dans notre cas,
des expressions régulières). Dès qu'il aura trouvé un certain motif (matching d'un motif ), il f era une action.La section
finale END {actions}
Les actions de cette section seront exécutées après l'examen de la dernière ligne du f ichier à examiner.
Essayez les deux exemples suivants sur le f ichier eleves.txt :
Exemple 1 qui n'utilise pas de motifs:
END {
printf ("Votre f ichier contient %d lignes",NR)
{}
Exemple 2:
BEGIN {
printf ("Af f ichage des lignes du f ichier %s contenant du texte en majuscules
antislash_n",FILENAME)
}
Exercices
Recherche d'une chaîne de caractères
Ecrire un f iltre awk1.prg qui af f iche toutes les lignes du f ichier eleves.txt qui contiennent la chaîne BO
Solution
Numérotation des lignes d'un fichier
Ecrire un f iltre awk2.prg qui numérote toutes les lignes du f ichier eleves.txt. Le résultat de l'exécution sera de la f orme:
1 BOBY 18 5
2 ZELYNOU 6 11
3 ANTIN 8 4
4 BOB 16 8 15
5 IZEL 16 18 12
Solution
Recherche d'une chaîne de caractères particulière
Ecrire un f iltre awk3.prg qui affiche toutes les lignes du f ichier eleves.txt qui contiennent une lettre ``E'' suivie d'un nombre
quelconque de lettres puis impérativement le chif f re 1
Solution
24.1.7 Pour clore sur awk
Motifs
L'expression / motif / { actions } n'est pas la seule possible pour engendrer une action. On peut f aire des choses du type:
expression / expression_régulière / actions }
ou
expression ! / expression_régulière / actions }Les deux premiers types d'expression relationnelles indiquent respectivement
que l'expression gauche (ici: expression) doit ou ne doit pas contenir de motif satisf aisant l'expression régulière droite. Par
exemple, l'expression $2 / a[0-9]*b$/ spécif ie que le second champ de l'enregistrement courant doit commencer par le
caractère a, se terminer par le caractère b, les caractères intermédiaires devant être des chif f res (en nombre quelconque,
éventuellement nul).
De la puissance de awk
Si les exemples que nous avons vus sont relativement succincts, il faut bien comprendre que awk est en f ait une commande
très puissante qui est d'ailleurs très utilisée par l'un de nos administrateurs système dans la maison (parlez-lui de Linux ou de
awk, ça lui f era plaisir ;-) )
Voici un exemple succint pour contrôler que tous les enregistrements d'un f ichier ont le même nombre de champs que le
premier enregistrement. Faites un copier coller du programme qui suit et testez le par:
awk -f awk.prg -F ":" /etc/passwd # début de la section initiale
BEGIN { printf ("Contrôle du f ichier%s antislash_n",FILENAME);
nberr=0;
}# début du corps
{
Comment ça marche ? 98/120
if (NR == 1) { nb=NF;
printf ("Chaque enregistrement doit comporter %d champs antislash_n",nb); }else if (nb != NF) { printf ("L'enregistrement %d a
%d champs antislash_n",NR,NF);
nberr++;}}
# début de la section terminale
END { printf ("Le f ichier a %d enregistrements antislash_n",NR);
if (nberr!=0) printf ("Il comporte %d enregistrements erronés antislash_n",nberr);else printf ("Tous les enregistrements sont
corrects antislash_n");}
24.2 Conclusion
Au terme de ce bureau d'étude, vous êtes donc opérationnel sous UNIX. Si vous êtes amenés dans la suite de votre cursus à
manipuler des commandes inconnues vous pouvez toujours faire un man nom_commande ou encore consulter la bible de la
programmation UNIX : La programmation sous UNIX

25 Programmation Unix : Quelques solutions


Solution du paragraphe Remarque 3
Mettre par exemple dans le f ichier essai: exit 12Lancer essai.
Rajouter au f ichier essai la ligne : exitVérif ier qu'en relançant le script essai, on obtient bien la valeur 12.

Solution du paragraphe Remarque 4


Mettre dans le f ichier essai echo $1 en sachant qu'il suf f it de l'appeler par essai <chaine de caractères>

Solution du paragraphe Règle 3


$ ls -l | wc -l
équivalente à:
$ ls -l > fichier
$wc -l < fichier
Solution du paragraphe Calculs Mathématiques
Réalise la décomposition en f acteurs premiers du nombre passé en paramètre.

Solution du paragraphe Calculs Mathématiques


Interpréter tout le f ichier en le passant à bc par
cat fonctions | bc -l

Solution du paragraphe La structure while/do


read ligne
while test $? -eq 0
do echo $ligne
read ligne
done

Solution du paragraphe La structure for/do


for i in '#' '$' '&' '(' '-' ';' '>' '<' '[' ']'
do
date >${i}foo
done

Solution du paragraphe Un script simple


Une solution parmi d'autres : taper dans le f ichier essai: echo $1
if test $1 -eq 0
then echo fini
else
let temp=$1-1
essai $temp
fi

Solution du paragraphe Le script de la factorielle


L'énoncé ne stipule pas que le script de la f actorielle doit être récursif, cela tombe bien car ça ne me semble pas évident à
réaliser a priori.
Solution: let n=$1
let res=1
while test $n -ne 1
do let res=res*n
let n=$n-1
Comment ça marche ? 99/120
done
echo $res

Solution du paragraphe L'argument est-il numérique ?


expr $1 + 0 1>/dev/null 2>/dev/null
if test $? -eq 0
then echo Ok
else echo erreur
fi

Solution du paragraphe Unix et le langage C


#include <stdio.h>
/* écho de la ligne des arguments de le la ligne de commande */
main(int argc, char *argv[]) {
int i;
if (argc == 1) printf("pourriez-vous me donner quelques paramètres s.v.p ?!?\n");
else
for (i=1; i<argc; i++)
printf("%s%s",argv[i],(i<argc-1) ? " " : "");
printf("\n");
return 0;
}

Solution du paragraphe Les signaux sous Unix


#include <signal.h>
void Traite_Sig (int Numero)
{
printf("Coucou, recu signal %d ! mais je l'ignore !\n", Numero);
signal (Numero,Traite_Sig); /* !!!!!!!!! */
}
main()
{
int Nb_Sig ;
for (Nb_Sig = 1; Nb_Sig < NSIG ; Nb_Sig ++)
{
signal (Nb_Sig,Traite_Sig);
}
while(1); /* Attendre des signaux */
}

Solution paragraphe Le cas de la fonction alarm


Exercice 1
#include <signal.h>
#include <stdio.h>
#include <unistd.h> /* pour la fonction alarm */
int nombre;
void traite_alarme() {
nombre=100;
printf("Le nombre entré vaut:%d\n",nombre);
printf("Veuillez entrer un AUTRE nombre:");
scanf ("%d",&nombre);
printf("Le NOUVEAU nombre entré vaut:%d\n",nombre);
}
main()
{
alarm(3);
signal(SIGALRM,traite_alarme);
printf("Veuillez entrer un nombre:");
scanf ("%d",&nombre);
printf("Le nombre entré vaut:%d\n",nombre);
}
Exercice 2
#include <signal.h>
#include <stdio.h>
#include <unistd.h> /* pour la fonction alarm */
int i='a';
int j;
void traite_alarme() {
Comment ça marche ? 100/120
printf("caractère suivant: %c \n",i);
i++;
signal(SIGALRM,traite_alarme);
if (i<='z') alarm(1);
else exit(0);
}
main()
{
signal(SIGALRM,traite_alarme);
alarm(1);
while (1);
}

Solution du paragraphe Synchronisation du père et du fils


Il suf f it de rajouter la commande sleep 1 par exemple juste avant la
case (pid_t)0:
/* on est dans le processus fils */
printf("valeur de fork =%d ",pid);
printf("je suis le processus %d de père %d ",getpid(), getppid());
sleep 1
printf("fin du processus fils");
exit(0);Pour réaliser la synchronisation avec la commande wait, rajouter les deux lignes en italique:
#include <stdlib.h>
#include <stdio.h>
main() {
pid_t pid;
int status;
switch(pid=fork()){
case (pid_t)-1: perror("Création de processus");
exit(2);
case (pid_t)0:
/* on est dans le processus fils */
printf("valeur de fork =%d ",pid);
printf("je suis le processus %d de père %d ",getpid(), getppid());
sleep (1);
printf("fin du processus fils");
exit(0);
default:
/* on est dans le processus père */
printf("valeur de fork = %d ",pid);
printf("je suis le processus %d de père %d",getpid(), getppid());
wait(&status);
printf("fin du processus père");
}
}

Solution du paragraphe Signaux et fork


#include <stdio.h>
#include <unistd.h>
#include <signal.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
main() {
pid_t pid;
int status;
switch(pid=fork()){
case -1: perror("Création de processus");
exit(2); break;
case 0: /* processus fils bouclant*/
while (1); break;
default: /* on est dans le processus père */
sleep(5);
if (kill(pid,0)==-1)
printf ("FILS %d inexistant\n",pid);
else {
printf (" envoi de SIGUSR1 au processus %d\n",pid);
kill(pid,SIGUSR1);
Comment ça marche ? 101/120
}
}
}

Solution du paragraphe Rappels : les expressions régulières


1. [a-zA-Z0-9]
2. [ a-zA-Z0-9]
3. [a-z]*$
4. [0-9]+$

Solution du paragraphe Exercices


Exercice de substition de ``Z'' en ``a'':
{ gsub("Z","a",$0);
print $0
}
Exercice 1:
BEGIN {
print "Voici toutes les lignes qui contiennent la chaîne BO"
}
/BO/ { print FILENAME , FNR , $0 }
Exercice 2:
{ print NR, $0 }
Exercice 3:
/.*[Ee].*1/ { print FILENAME , FNR , $0 }
END { print "Vous avez vu les lignes qui contiennent un e "
print "puis des caractères quelconques puis un 1 " }

26 Installation et configuration d'un serveur


26.1 Installation de samba
26.1.1 Introduction
Le logiciel Samba est un outil qui permet aux utilisateurs de Windows de pouvoir accéder aux postes sous Linux. Il permet le
partage des fichiers et des imprimantes de la même manière que sous un réseau Windows. Une brève description du réseau
en place va nous permettre de comprendre le f onctionnement que l’on souhaite du poste Linux.
Supposons que le réseau de la société soit composé de postes sous Windows (9x, NT Workstation), d’un routeur pour
accéder à Internet, et d’un serveur d’impression. Ce réseau est géré par Windows NT4 serveur. Le réseau est séparé en deux
groupes de travail : UTILISATEURS et BUREAU. Tous les utilisateurs f ont partie du groupe de travail UTILISATEURS al ors
que les serveurs sont dans le groupe BUREAU. Le serveur Linux doit donc s’intégrer dans le groupe de travail BUREAU.
26.1.2 Installation du serveur
Tous les paramètres de gestion du serveur Samba sont inclus dans un f ichier smb.conf. Ce f ichier est lu lors du démarrage de
Samba.
Le fichier /etc/smb.conf
Ce f ichier décrit l’ensemble des paramètres nécessaires à la mise en réseau du poste sous Linux. Il est séparé en plusieurs
parties. La première définit les paramètres globaux du serveur samba. Les autres d éf inissent les dif f érents accès que les
utilisateurs peuvent avoir sur le serveur Linux. Le f ichier suivant correspond à la conf iguration mise en place au sein de la
société. Les lignes préf ixées d’un dièse (#) correspondent aux commentaires.
# Le groupe de travail dans lequel va se situer le poste Linux s’appelle : bureau.
[global]
workgroup = bureau
keep alive = 30
os level = 2
socket options = TCP_NODELAY
map to guest = Bad User
# Les lignes suivantes précisent que l’authentification des utilisat eurs se fait au niveau du
serveur, que # l’adresse IP de ce poste est 192.98.1.1 et que les mots de passe ne sont pas
cryptés.
security = server
password server = 192.98.1.1
encrypt passwords = no
# Précise que le poste n’est pas le contrôleur primaire du domaine.
local master = no
# Donne l’adresse IP du poste Linux ainsi que son masque de sous-réseau.
interfaces = 192.98.1.68/255.255.255.0
# Désactive la résolution de nom Wins.
wins support = no
Comment ça marche ? 102/120
# Le premier paramètre spécifie que lors d’une ouv erture de session l’utilisateur accède à
son répertoire # home sur le disque Linux et que le nom de ce répertoire est le nom sous
lequel il est connecté sur le # réseau.
[homes]
comment = %U
browseable = no
read only = no
create mode = 0750
# Les deux zones suivantes donnent à tous les utilisateurs les accès aux répertoires
spécifiés. Ce qui est # entre crochets correspond au nom que l’utilisateur va voir de son
poste windows lorsqu’il explorera le # serveur Linux.
[cdrom]
comment = Linux CD-ROM
path = /cdrom
read only = yes
locking = no
[disque_c]
comment = ntserver2
path = /disque_c
read only = yes
locking = no
Démarrage du service
Lorsque le f ichier /etc/smb.conf est fait, il faut démarrer le service pour offrir l’accès aux utilisateurs. Les dif f érents f ichiers de
lancement ou de redémarrage se trouvent dans le répertoire /etc/rc.d/init.d/. Mettez-vous dans ce répertoire en f aisant cd
/etc/rc.d/init.d/. Lancez le logiciel en tapant : smb start. Le serveur Samba possède son f ichier de log : log.smb dans le
répertoire /var/log/ ce qui permet de vérifier que le service est bien démarré et sans erreur. Chaque f ois que le fichier smb.conf
est modif ié, il f aut relancer le service. Pour ce f aire, il existe deux commandes : smb restart ou smb relo ad.
Lorsque toutes les erreurs dans le f ichier de log sont supprimées, les clients Windows peuvent alors accéder au poste Linux.
26.1.3 Les clients Windows
Les utilisateurs
Pour que les clients Windows puissent avoir accès au poste Linux, il f aut leur créer un compte d’utilisateur. On peut utiliser les
mêmes noms d’utilisateur que sur le réseau Windows. La commande à exécuter est : useradd dont voici un exemple :
useradd –m moi1
L’option –m permet de créer un répertoire au nom de l’utilisateur dans le répertoire home lorsque celui-ci n’existe pas. Le mot
de passe de chaque compte est bloqué à la création. Pour le débloquer, sous root, on peut utiliser la commande :
passwd –u moi1
puis pour enregistrer le nouveau mot de passe :
passwd moi1
Une invite de commande demande l’enregistrement du nouveau mot de passe puis la conf irmation de ce dernier.
Suite à des erreurs de paramétrages, il peut être utile de supprimer un utilisateur. La commande suivante permet de supprimer
l’utilisateur moi1 ainsi que son répertoire de travail /home/moi1 grâce à l’option –r.
userdel –r moi1
L’accès aux répertoires partagés
A partir du poste sous Linux, on peut souhaiter pouvoir entrer dans les différents répertoires sur le serveur. L’objectif peu t être
de pouvoir stocker des informations sur le disque du serveur pour pouvoir y accéder depuis les postes sous Windows. On
pourrait utiliser les possibilités du serveur NFS (Network File System) mais ceci n’est pas toujours intéressant si le disque dur
n’est pas suffisamment grand pour stocker les données. Il f aut alors « monter » les répertoires du serveur Windows sur le
serveur Linux avec la commande suivante :
smbmount //SERVERNT4/xavier /mnt/xavier –U moi1
SERVERNT4 est le nom du serveur NT de la société. xavier est un répertoire du disque partagé. /mnt/xavier est un répertoire
du disque Linux. L’option –U déf init le nom d’utilisateur (moi1) utilisé pour se connecter au serveur. L’exécution de cette
commande retourne un prompt pour la saisie du mot de passe réseau de l’utilisateur. Une f ois saisie, toutes les données sont
stockées en local dans le répertoire /mnt/xavier sur le serveur Linux.
Lorsque du poste Linux, il n’y a plus de données à transférer sur le serveur NT, on peut « démonter » le répertoire utilisé p our
f aire les transf erts. Pour supprimer l’accès au répertoire /mnt/xavier, on utilise la commande suivante :
smbumount /mnt/xavier ou umount /mnt/xavier
26.1.4 Conclusion
Le logiciel Samba est indispensable à la mise en réseau d’un poste Linux dans un réseau Windows. Linneighborhood est un
logiciel sous Linux qui possède le même type d’interface graphique que le Voisinage Réseau sous Windows. Il peut être très
utile pour vérif ier que le poste est accessible sur le réseau. Le logiciel samba permet aussi de partager des imprimantes sur le
réseau.
26.2 Installation de sendmail
26.2.1 Introduction
Le but de cette documentation n’est pas de f ournir des recettes, mais d’expliquer les dif f érentes tâches et dif f icultés
rencontrées lors de l’installation des programmes nécessaires à une lecture et rédaction of f -line de courrier électronique. Le
but est de permettre une installation et une utilisation « simple » de sendmail. Seuls les détails pertinents seront donc abo rdés.
Comment ça marche ? 103/120
On considérera notamment que tous les programmes cités ont été install és sur la machine. Le système possède une
connexion Internet via un routeur xcell.
Pour tous les exemples, on supposera que :
- Le courrier est récupéré sur la machine pop.mail.fr
- Les messages sont postés en utilisant le protocole SMTP sur la machine smtp.mail.fr.
- Le nom de mon serveur est server2 et mon domaine est domaine.f r. Le nom complet de ma machine est donc
server2.domaine.fr.
- Les comptes d’utilisateurs sur ma machine serveur sont du type moix où x correspond à un utilisateur quelconque. Le
compte de courrier chez mon hébergeur de courrier est egox avec le mot de passe passwordegox.
- Ma connexion est établie via le routeur lorsque je récupère et/ou poste les nouveaux messages.
26.2.2 Installation du serveur sendmail
Introduction
Sendmail utilise un autre programme pour délivrer le courrier qui lui est arrivé. Sous Linux, ce programme est le plus souvent
procmail. De plus, il f aut bien « alimenter » sendmail avec les nouveaux messages qui sont sur le serveur POP de notre
hébergeur de courrier. Là encore, un autre programme entre en jeu, il s’agit de f etchmail.
En résumé, une utilisation typique sera :
1. écriture de courrier of f -line ;
2. connexion à notre hébergeur de courrier
3. expédition avec sendmail des courriers écrits of f -line ;
4. récupération des nouveaux courriers avec f etchmail auprès du serveur POP de l’hébergeur de courrier ;
5. Déconnexion ;
6. Lecture des nouveaux courriers of f -line.
On notera que les points 2 à 5 seront regroupés en un seul script. D’autre part, il f aut comprendre que sendmail intervient à
chaque f ois qu’il y a transport de courrier. Ainsi, lorsqu’un utilisateur écrit un courrier destiné à l’extérieur et qu’il l’ envoie en
étant déconnecté, c’est sendmail qui se charge de le mettre dans une f ile d’attente. C’est le contenu de cette f ile qui sera
envoyé au point 3. Lorsque fetchmail récupère les nouveaux courriers au point 4, c’est sendmail qui les dirige vers la boîte aux
lettres en utilisant procmail. Normalement, sendmail s’installe sous /usr/sbin/ quant à procmail, il se trouve dans le répertoire
/usr/bin. Ces deux programmes appartiennent à l’utilisateur root et au groupe mail. Ils sont de plus suid et sgid.
Récupération des courriers
La première chose à f aire est de vérifier que l’on peut bien récupérer les courriers sur le serveur POP distant. On verra après
ce qu’il convient de f aire de ceux-ci.
Le programme utilisé s’appelle fetchmail. Pour nos besoins, la conf iguration est très simple. Elle consiste à créer un f ichie r
.f etchmailrc. Ce f ichier sera lu à chaque exécution du programme et doit donc contenir les options globales d’utilisation.
Depuis la version 4.5.0, le programme fetchmailconf, interface graphique sous X disposant de deux modes (novice et expert),
permet de créer ce f ichier. Le f ichier .f etchmailrc typique pour notre conf iguration est le suivant :
# Configuration created Mon Jul 17 08:45:53 2000 by fetchmailconf
set postmaster "postmaster"
set bouncemail
set properties ""
poll pop.mail.fr
user 'ego1' there with password 'passwordego1' is moi1 here warnings 3600
antispam 571 550 501 554
user 'ego2' there with password 'passwordego2' is moi2 here warnings 3600
antispam 571 550 501 554
- La ligne « poll » demande à f etchmail de scruter le serveur pop.mail.f r ;
- La ligne suivante indique que le compte sur le serveur POP est ego1 avec le mot de passe passwordego1 et que les
messages reçus venant de ce serveur et de ce compte sont pour le compte moi1 de ma machine.
On remarquera que le mot de passe de chaque compte POP est écrit en clair dans ce f ichier. Il ne doit donc être lu que par
l’administrateur du système. Si ce n’est pas le cas, f etchmail ref usera de s’exécuter.
Ce f ichier créé, on va tester la récupération en f aisant en sorte de laisser les messages récupérés sur le serve ur car, par
déf aut, f etchmail les supprime du serveur distant. Pour ce f aire, j’ai travaillé sous le compte root pour s’af f ranchir des
problèmes de droits liés à la connexion.
La commande à exécuter est :
fetchmail –k
L’option –k (keep) indique qu’il f aut laisser les messages lus sur le serveur.
Avec cette commande, on voit s’il y a du courrier dans les comptes POP et le nombre de messages récupérés. Il se peut qu’il
y ait des messages d’erreurs indiquant que le courrier ne peut être délivré localement, ceci est dû au f ait que sendmail n’a pas
été installé ou conf iguré.
Création du fichier /etc/sendmail.cf
Connecté en tant qu’utilisateur root, j’ai créé un f ichier conf ig.mc dans le répertoire /usr/share/sendmail/cf / pour une
distribution SUSE. Ce f ichier se bornera à donner des valeurs à certaines constantes et à déf inir certaines options. Enf in, je
compilerai ce f ichier pour qu’il génère /etc/sendmail.cf .
Sous le compte root, je me suis mis dans le répertoire /usr/share/sendmail/cf / et, à l’aide d’un éditeur de texte, j’ai créé le
f ichier conf ig.mc suivant :
include(`../m4/cf.m4')dnl
OSTYPE(`linux')dnl
define(`SMTP_MAILER_FLAGS',`e9')dnl
FEATURE(redirect)dnl
FEATURE(nocanonify)dnl
Comment ça marche ? 104/120
FEATURE(always_add_domain)dnl
FEATURE(local_procmails)dnl
GENERICS_DOMAIN(server2.domaine.fr server2 localhost)
FEATURE(masquerade_envelope)dnl
FEATURE(relay_entire_domain)dnl
FEATURE(accept_unresolvable_domains)dnl
define(`confCF_VERSION', `Xavier BERTHELOT - 16/06/2000')dnl
define(`confCON_EXPENSIVE', `True')dnl
define(`confME_TOO', `True')dnl
define(`confCOPY_ERRORS_TO', `Postmaster')dnl
define(`confDEF_CHAR_SET', `ISO-8859-1')dnl
define(`confMIME_FORMAT_ERRORS', `True')dnl
define(`SMART_HOST', `smtp8:[Mailhost.lnet.fr]')dnl
define(`confRECEIVED_HEADER', `from wanadoo.fr
by wanadoo.fr ($v/$Z)$?r with $r$. id $i$?u
for $u; $|;
$.$b')
define(`confTO_QUEUEWARN', `24h')dnl
MAILER(local)
MAILER(smtp)
Il faut ensuite renseigner tous les utilisateurs du système pour qu’il puisse envoyer des messages avec un e adresse connue
de notre hébergeur de compte de courrier. Les adresses connues de notre hébergeur de courrier sont du type :
ego1@domaine.fr. J’ai donc créé le fichier /etc/mail/genericstable suivant :
moi1: ego1@domaine.fr
moi2: ego2@domaine.fr
moi3: ego3@domaine.fr
Il est indispensable de mettre une tabulation après les « : ».
J’ai ensuite modifié le fichier /etc/nsswitch.conf pour que chacune de ses entrées ne contienne que l’option f iles, sauf l’en trée
hosts qui contiendra : f iles dns.
J’ai édité le f ichier /etc/aliases :
MAILER-DAEMON: postmaster
postmaster: moi1
root: moi1
moi2: moi3,moi4
moi5: moi6,moi7
Ceci pour dire que tous les messages destinés à l’utilisateur MAILLER-DAEMON doivent être mis dans la boîte aux lettres de
postmaster. Les messages à destination de postmaster iront dans la boîte aux lettres de moi1.
L'étape suivante consiste à vérif ier le contenu du f ichier /etc/hosts qui doit comporter une ligne ressemblant à cela :
127.0.0.1 server2.domaine.fr localhost server2
Quelques explications ou remarques :
Remarque 1
La ligne include (‘../m4/cf .m4') demande l'inclusion dans le f ichier des macros m4, nécessaires au traitement.
Remarque 2
La ligne OSTYPE(‘...') provoque l'inclusion des spécificités d'un système d'exploitation particulier (ce qui se trouve entre ‘ et '
doit être un nom de f ichier ayant l'extension .m4 et présent dans /usr/share/sendmail/ostypes/.
Le f ichier linux.m4 définit le chemin permettant à sendmail de retrouver le programme procmail utilisé pour délivrer localement
le courrier. Le f ichier linux.m4 contiendra :
divert(0)
VERSIONID(`@(#)linux.m4 8.7 (Berkeley) 5/19/1998')
define(`PROCMAIL_MAILER_PATH', `/usr/bin/procmail')dnl
define(`STATUS_FILE', `/var/log/sendmail.st')dnl
Remarque 3
Les lignes def ine servent à af f ecter des valeurs sous f orme de chaînes à des variables qui seront prises en compte par
sendmail. Ici, nous utilisons les variables :
SMTP_MAILER_FLAGS.
contient e (expensive) pour indiquer que les courriers envoyés par smtp sont « coûteux » car destinés à l'extérieur
(exactement comme une lettre destinée à l'étranger coûte plus cher à af franchir qu'un courrier local). On peut aussi combiner
les options : `e9' rajoute l'option 9 qui f orce la conversion 8 vers 7 bits sur le contenu du texte .
confCF_VERSION.
contient des inf ormations sur la version du sendmail.cf qui sera généré.
confCON_EXPENSIVE.
est ici mis à vrai pour f orcer la mise en f ile d'attente des mails considérés comme « coûteux » donc de tous les courriers
destinés à une autre machine que la nôtre.
confME_TOO.
est positionné pour que les messages envoyés à une liste de dif f usion dont on f ait partie nous soient aussi expédiés.
confCOPY_ERRORS_TO.
indique à qui les messages d'erreurs doivent être copiés. Normalement, sur une machine isolée, le Postmaster est root (voir le
f ichier /etc/aliases), c'est donc lui qui recevra ces messages.
confDEF_CHAR_SET.
indique au destinataire comment est codé notre courrier, ce qui lui permettra de le décoder correctement. ISO -8859-1 est le
Comment ça marche ? 105/120
standard pour la France : appelé aussi ISO-LATIN-1, il utilise les 128 dernières combinaisons du code ASCII sur 8 bits pour
coder les accents nationaux.
confMIME_FORMAT_ERRORS.
est mis à vrai pour que les courriers d'erreurs (destinataire non trouvé, par exemple) soient au f ormat Mime.
SMART_HOST.
donne le protocole et le serveur qui sera utilisé pour résoudre les adresses. Ici, on utilise SMTP8 (Simple Mail Transf er
Protocol) permettant d'envoyer à smtp.mail.f r des courriers contenant des caractères c odés sur 8 bits.
TO_QUEUEWARN.
modifie le temps que mettra sendmail pour envoyer un message prévenant que des messages sont bloqués dans la f ile
d’attente. Par déf aut, ce délai est de 4 heures ce qui peut s'avérer trop court dans le cas d'une connexion é pisodique.
Remarque 4
Les lignes FEATURE servent à fixer certaines caractéristiques du fonctionnement de sendmail. Ici, nous utilisons les suivantes
:
redirect.
automatise l'émission d'indication de redirection.
nocanonify.
pour que sendmail ne tente pas de transf ormer l'adresse du destinataire en « adresse canonique » (de la f orme
dupont@truc.f r).
always_add_domain.
pour que toutes les adresses locales soient suf f ixées par le nom de notre domaine.
local_procmails.
pour que sendmail utilise procmail pour délivrer les messages locaux. (cf paragraphe anti-virus page 22)
masquerade_envelope.
pour que le champ From de l'enveloppe soit correct. En f ait, pour que l'enveloppe elle-même soit masqueradisée. Cette
caractéristique est employée de concert avec la caractéristique genericstable qui la précède.
relay_entire_domain.
ce qui permet à sendmail d'accepter les mails venant des postes du réseau privé appartenant au domaine privé.
accept_unresolvable_domains.
si le PC sous Linux est off-line, pas moyen d'envoyer un mail d'un PC sous Windows vers le PC sous Linux ; par contre dès
qu'on passe on-line ce paramètre devient parf aitement inutile.
Remarque 5
Les lignes MAILER servent à spécifier les protocoles utilisés pour transporter notre courrier. Ici , on indique que l'on utilise le
transport local et via smtp.
A partir de ce f ichier, j’ai alors généré le f ichier /etc/sendmail.cf. En me plaçant dans le répertoire /usr/share/sendmail/c f /, j’ai
tapé la commande :
m4 config.mc > /etc/sendmail.cf
J’ai enf in vérifié par un ls -l /etc/sendmail.cf que ce fichier possédait les permissions suivantes : -rw-------, qu'il appartenait à
l'utilisateur et au groupe root.
Transformation des adresses de l’expéditeur
Passons maintenant au f ichier /etc/mail/genericstable : le rôle de celui-ci est lié à la caractéristique genericstable. Celle-ci
permet aux adresses d'expéditeurs locaux d'être réécrites sous une autre f orme : lorsque moi1 postera un message, l'adresse
de l'expéditeur sera moi1@server2.domaine.fr et on conçoit que celle-ci risque fort d'être ref usée par certains serveurs car il
s'agit d'une adresse invalide (server2.domaine.fr n'est pas valide en dehors de chez nous...). Qui plus est, l'utilisateur mo i1
n'existe que sur la machine server2. Pour Internet, il s'appelle ego1@domaine.f r.
Pour ef fectuer cette transformation de moi1.machine.domaine.f r en ego1@domaine.f r, sendmail procède en deux temps.
Il vérif ie que l'adresse de l'expéditeur appartient à l'un des domaines spécif iés par la macro GENERICS_DOMAIN si c'est le
cas, il recherche une entrée correspondant à cet expéditeur dans la table générée à partir de /etc/mail/genericstable.
Ici, donc, server2.domaine.fr faisant partie des GENERICS_DOMAIN, l'entrée moi1 est recherchée dans la table et remplacée
par ego1@domaine.fr. On notera que le même effet aurait été obtenu avec une adresse d'expéditeur égale à moi1@server2,
moi1@localhost ou, tout simplement moi1... Dans ce dernier cas, un mécanisme supplémentaire a lieu : moi1 étant une
adresse non qualifiée, elle est considérée comme locale et la caractéristique always_add_domain commence par lui rajouter le
nom du domaine et on se retrouve donc dans le premier cas...
Pour des raisons d'efficacité, la table de réécriture doit être transformée en un f ormat plus rapidement accessible à sendmail
qu'un simple fichier texte. La commande permettant de générer la table au format voulu à partir du fichier texte est la suiva nte
:
/usr/sbin/sendmail -bi -oA/etc/mail/genericstable
Cette commande produit un fichier /etc/mail/genericstable.db. Elle doit être exécutée après chaque modification du fichier texte
original.
De même, si le f ichier /etc/aliases est modifié, il faut alors utiliser la commande newaliases pour regénérer la base des ali as.
26.2.3 Vérification de la configuration
Ce travail ef f ectué, il reste à tester la conf iguration : plusieurs solutions s'of f rent à nous. Chacune d'elles n'excluant pa s
l'utilisation des autres.
Vérification de l‘installation
Commençons d'abord par vérif ier que sendmail a été correct ement installé :
/usr/sbin/sendmail -d0.1 -bt < /dev/null
doit répondre quelque chose comme :
Comment ça marche ? 106/120
Version 8.9.3
Compiled with: MAP_REGEX LOG MATCHGECOS MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETUNIX NEWDB
NIS QUEUE SCANF SMTP USERDB
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = server2
(canonical domain name) $j = server2.domaine.fr
(subdomain name) $m = domaine.fr
(node name) $k = server2
========================================================
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
Test d’envoi de courrier local
J’ai créé un f ichier test.mail contenant les lignes suivantes :
Subject: test local
Premiere ligne de mon message
(avec une ligne vide).
et connecté en tant qu’utilisateur moi2, j’ai lancé :
/usr/sbin/sendmail -v moi1 < test.mail
les lignes suivantes doivent s’af f icher :
moi1... Connecting to local...
moi1... Sent
J’ai exécuté la commande mail pour vérif ier que le message a été reçu et qu’il contient les lignes suivantes :
From ego2@domaine.fr Tue Jul 25 11:48:23 2000
Sender: root@server2.domaine.fr
Date: Tue, 25 Jul 2000 11:48:22 +0000
From: <ego2@domaine.fr>
To: moi1@server2.domaine.fr
Subject: test local
Premiere ligne de mon message
Ce simple petit test nous permet de constater que sendmail est bien capable d'acheminer le courrier en local et qu'il a su
réécrire l'adresse de l'expéditeur moi2 en ego2@domaine.f r selon la règle de réécriture décrite dans le f ichier
/etc/mail/genericstable
Test des règles d’écriture
Ces tests consistent à vérifier qu'une adresse E-mail sera correctement reconnue et transf ormée par sendmail. J’ai tapé la
commande suivante :
/usr/sbin/sendmail -bt
Le prompt obtenu ressemble à celui-ci :
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
>
J’ai alors entré les deux lignes suivantes :
/tryflags ES
/try smtp moi1
Plusieurs lignes s'affichent pour énumérer les règles que sendmail met en œuvre pour transformer l'adresse de l'expédit eur :
Trying envelope sender address moi1 for mailer smtp
rewrite: ruleset 3 input: moi1
rewrite: ruleset 96 input: moi1
(...)
rewrite: ruleset 61 returns: moi1 < @ *LOCAL* >
rewrite: ruleset 94 input: moi1 < @ *LOCAL* >
rewrite: ruleset 93 input: moi1 < @ *LOCAL* >
rewrite: ruleset 3 input: ego1 @ domaine . fr
(...)
rewrite: ruleset 4 input: ego1 < @ domaine . fr >
rewrite: ruleset 4 returns: ego1 @ domaine . fr
Rcode = 0, addr = ego1@domaine.fr
Ce qui est important, ici, est que sendmail reco nnait que moi1 est une adresse locale et qu'il la transf orme en une adresse
connue sur Internet. On notera que l'adresse f inale a été construite en utilisant le contenu de /etc/mail/genericstable.
Utilisation de réflecteurs et envoi du courrier
Un réf lecteur est une machine qui reçoit nos messages et nous les renvoie après avoir copié l'en-tête de notre message tel
qu'il a été reçu. Ceci est plus sûr que de s'envoyer un message à soi-même car sendmail peut très bien avoir réécrit cet en-
tête. Une réponse d'un réf lecteur prouve que la chaîne de messagerie f onctionne : on peut émettre et recevoir.
Plusieurs réf lecteurs existent tels que echo@cnam.fr et echo@univ-rennes1.f r. Le mieux est de tester les deux. J’ai écrit un
message à l'adresse echo@cnam.fr, et, toujours déconnecté, je l’ai envoyé. Ce message s’est placé dans /var/spool/mqueue.
En f ait, il y est représenté par deux f ichiers : l'un constitue « l'enveloppe » et l'autre le « contenu ».
À tout moment, la commande mailq donne l’état de la f ile d’attente qui, ici, indique qu'un message à destination
d'echo@cnam.f r est en attente. J’ai ensuite invoqué la commande suivante avec l'option -q qui oblige sendmail à tenter
d'envoyer tous les messages en attente :
/usr/sbin/sendmail -q
Comment ça marche ? 107/120
En f aisant un f etchmail sur le serveur pop de notre hébergeur de courrier, j’ai récupéré le message qui m’était renvoyé par le
réf lecteur. Le contenu ressemblait à ceci :
------ Le serveur echo du domaine cnam.fr
------ a recu votre message le mar 25 jul 15:54:20 MET DST 2000
------ Ci-dessous les en-tetes et le corps de votre message
> From ego1@domaine.fr Tue Jul 25 15:54:19 2000
> Received: from oneida.lnet.fr (root@oneida.lnet.fr [195.25.252.194])
> by fermi.cnam.fr (8.8.8/jpm-301097) with ESMTP id PAA10804
> for <echo@cnam.fr>; Tue, 25 Jul 2000 15:54:18 +0200 (MET DST)
> Return-Path: <ego1@domaine.fr>
> Received: from server2.domaine.fr (Poitiers-9-191.abo.wanadoo.fr [164.138.146.191])
> by oneida.lnet.fr with ESMTP id PAA17898
> for <echo@cnam.fr>; Tue, 25 Jul 2000 15:57:19 +0200
> Posted-Date: Tue, 25 Jul 2000 15:57:19 +0200
> Received: from wanadoo.fr
> by wanadoo.fr (8.9.3/8.9.3/Xavier BERTHELOT - 16/06/2000) with SMTP id PAA01613
> for <echo@cnam.fr>; Tue, 25 Jul 2000 15:50:59 GMT
> Received: by localhost with Microsoft MAPI; Tue, 25 Jul 2000 16:00:01 +0200
> Message-ID: <01BFF651.63B2A860.ego1@domaine.fr>
> From: <ego1@domaine.fr>
> To: "'echo@cnam.fr'" <echo@cnam.fr>
> Subject: test
> Date: Tue, 25 Jul 2000 15:59:59 +0200
> Return-Receipt-To: ego1 <ego1@domaine.fr>
> X-Mailer: Messagerie Internet de Microsoft/MAPI - 8.0.0.4211
> MIME-Version: 1.0
> Content-Type: text/plain; charset="us-ascii"
> Content-Transfer-Encoding: 7bit
------
>
> test
>
------ Fin de votre message
Ce qu'il est important de noter est la première ligne, dite « From d'enveloppe », commençant par From (et qu'il ne f aut surtout
pas confondre avec la ligne d'en-tête commençant par From : ). Elle doit contenir l’adresse configurée pour l'enveloppe, et, en
aucun cas, l'adresse de notre machine (celle qui apparaît dans la dernière ligne received), sinon certains serveurs la
rejetteront.
Automatiser l’ensemble
On a vu comment récupérer les messages via f etchmail, comment les mettre dans la f ile d'attente via sendmail et comme nt
envoyer les messages en attente dans cette file via sendmail -q, il reste à tout mettre ensemble af in d'automatiser tout cela.
Je parlerais plus tard de la configuration des lecteurs/éditeurs de messages : tout ce qu'ils ont besoin de savoir est que c' est
sendmail qui s'occupe de l'envoi des messages et que ceux-ci seront lus à partir de la boîte aux lettres /var/spool/mail/moix.
La connexion chez notre hébergeur de courrier s’effectuant grâce à un routeur, il f allait à horaire régulier interrogé les comptes
des utilisateurs chez pop.mail.f r
Pour ceci, j’ai créé un script de connexion dont le contenu est le suivant :
#!/bin/sh
/usr/sbin/sendmail -q &
/usr/bin/fetchmail &
exit 0
La ligne f etchmail effectue la récupération des messages en attente, alors que la ligne sendmail –q envoie tous les mails chez
notre hébergeur de boîtes aux lettres. Avec une tâche cron, j’ai paramétré l’exécution de ce script de 6 à 21 heures toutes l es
heures du lundi au vendredi et de 8 à 13 heures le samedi.
26.2.4 Un anti-virus
Après avoir paramétré la messagerie, j’ai mis en place une solution permettant la détection des virus. Pour ef f ectuer ceci, j ’ai
installé sur le serveur Linux l’anti-virus de messagerie scanmails. Scanmails demande à ce qu’un anti-virus sur les f ichiers
(MacAf ee, par exemple) ainsi qu’un outil de décompression de f ichiers de type Mime (metamail) soient aussi installés. Des
modif ications sont alors à ef f ectuer dans la conf iguration de sendmail : il f aut lui préciser qu’il doit utiliser scanmails.
Dans le f ichier config.mc, il faut changer local_procmail en local_scanmails et, dans le répertoire /usr/share/sendmail/domain,
créer le f ichier local_scanmails.m4 de la manière suivante :
divert(0)
VERSIONID(`@(#)local_scanmails.m4 8.11 (Berkeley) 5/19/1998')
divert(-1)
define(`LOCAL_MAILER_PATH',
ifelse(_ARG_, `',
ifdef(`SCANMAILS_MAILER_PATH',
SCANMAILS_MAILER_PATH,
`/usr/sbin/scanmails'),
_ARG_))
Comment ça marche ? 108/120
define(`LOCAL_MAILER_FLAGS', `SPfhn9')
define(`LOCAL_MAILER_ARGS', `scanmails -Y -a $h -d $u')
Le serveur de messagerie est alors paramétré pour passer tous les messages à l’anti -virus.
26.2.5 Installation des clients
Après avoir installé le serveur de messagerie grâce à sendmail, il m’a f allu paramétrer les clients sur les postes Windows. L es
outils utilisés par mes utilisateurs étaient nombreux, je ne vais faire un descriptif de l’installation que sur le logiciel Microsof t
Outlook et sur Netscape Communicator.
Configurer la messagerie sous Microsoft Outlook
Pour paramétrer la messagerie sous Outlook, il f aut que
les services de messagerie de Outlook soient installés
pour plusieurs types de serveur pop et non pas
uniquement pour les clients de Microsof t Exchange. Une
f ois cette installation correctement ef f ectuée, il ne reste
plus qu’à paramétrer la boîte aux lettres du client.
Dans le menu « outils » de la barre d’outils, il f aut aller sur
« services », cliquer sur le bouton « ajouter » et choisir «
messagerie internet ». Dans l’onglet « général », il f aut
saisir le nom que l’on souhaite donner à ce service, et
paramétrer l’adresse de messagerie du client (celle que
nous a donné l’hebergeur ce boîte aux lettres :
ego1@domaine.fr). Ensuite dans l’onglet « serveurs », j’ai
donné le nom d’ordinateur de mon poste sous Linux :
mail.migc.fr tel que décrit ci-dessous. C’est le poste Linux
qui servira de serveur pop et smtp pour tous les
utilisateurs locaux. J’ai ensuite paramétré le nom du
compte et le mot de passe de l’utilisateur. Ces
inf ormations sont identiques à celle qu’il f aut saisir pour
ouvrir une session sur le poste Linux. Après avoir coché
l’option « se souvenir du mot de passe », j’ai f ermé cette
f enêtre. Tous les autres paramètres des onglets «
connexion » et « avancé » sont restés tels qu’ils étaient
lors de l’installation par déf aut.
Pour que les modifications soient prises en compte, il ne
reste plus qu’à relancer Outlook.

Configurer la messagerie avec Netscape Communicator


Dans le menu « Edition » de
la barre d’outils, il f aut aller
sur « préf érences », cliquer
sur le plus de « courrier et
f orums », sélectionner «
identité ». Il f aut renseigner
les paramètres comme
indiqués dans la f enêtre
suivante :

Dès que tous ces


renseignements sont saisis,
il reste alors à préciser le
nom du poste qui va f aire
of fice de serveur pop (pour
Comment ça marche ? 109/120
les courriers sortants) et de serveur SMTP. Le nom de l’utilisateur de la boîte de messagerie correspond à celui créer sur la
machine Linux avec son mot de passe sur cette même machine. En cliquant à partir de la f enêtre précédente sur « serveur de
courrier », on peut alors renseigner tous ces champs comme le montre la f igure qui suit :

26.3 Installation d'un proxy


26.3.1 Introduction
Squid est un logiciel qui sert à mettre en place un serveur proxy. Un serveur proxy, c'est un serveur qu i stocke les pages
HTML (pages, images...) qui sont téléchargées sur le Web. Ainsi, lorsque quelqu'un les redemande, squid les a déjà en
mémoire d'où le gain de temps considérable et surtout le gain d’argent. Les fournisseurs d’accès à Internet sont les premiers
utilisateurs de ce type de serveur pour accélérer l'accès aux pages Web.
26.3.2 Configuration du serveur
Comme tous les logiciels fournis sous Linux, Squid lit un f ichier de configuration squid.conf dans le répertoire /etc. J’ai, dans
un souci de simplicité, supprimé les lignes qui n’était pas utilisées pour la configuration. Le f ichier simplif ié se présente donc
de la manière suivante.
# Ce paramètre spécifie le numéro de port pour se connecter au serveur proxy.
http_port 3128
# Quantité de mémoire alloué aux objets à télécharger.
cache_mem 4096 MB
# Taille maximum des objets stockés sur le disque.
maximum_object_size 600 KB
# Spécifie le répertoire où stocker les fichiers, la taille maximale en Mo, et le nombre de
répertoires de
# premier niveau (16) ainsi que le nombre de répertoires dans les répertoires de premier
niveau (256).
cache_dir /var/squid/cache 100 16 256
# Spécifie le nom du fichier d’enregistrement de l’activité des clients.
cache_access_log /var/squid/logs/access.log
# Spécifie le nom du fichier de log pour les informations générales sur le cache.
cache_log /var/squid/logs/cache.log
# Spécifie le répertoire où se trouve l’exécutable de recherche de dns.
cache_dns_program /usr/sbin/dnsserver
# Spécifie le nombre de jours pendant lesquels les objets restent dans le cache du disque. Si
aucun
# utilisateur n’accède à ces fichiers pendant un mois, ils sont effacés du répertoire de
cache.
reference_age 1 month
Comment ça marche ? 110/120
# Spécifie le temps pendant lequel le serveur attend avant d’envoyer u n time-out aux
utilisateurs
# lorsqu’il est redémarré et qu’il y a des clients qui accèdent aux objets du cache.
shutdown_lifetime 30 seconds
# Définit la liste des utilisateurs contrôlés. Précise que les utilisateurs locaux localhost
# appartiennent au réseau 192.98.1.0.
acl manager proto cache_object
acl localhost src 192.98.1.0/255.255.255.0
acl all src 0.0.0.0/255.255.255.255
# Spécifie que les utilisateurs manager et localhost peuvent accéder au serveur proxy sur le
port
# 3128. L’accès à tous les autres est interdit.
http_access allow manager localhost
http_access deny all
# Spécifie les utilisateurs qui peuvent répondre aux requêtes
icp_access allow localhost
# Oblige les clients à utiliser le cache du serveur Linux et non pas celui d’un parent.
miss_access allow localhost
# Adresse mail de la personne à prévenir au cas où le cache disparaîtrait.
cache_mgr postmaster
# Définit le nom d’utilisateur et le groupe à partir desquels Squid sera lancé.
cache_effective_user squid
cache_effective_group squid
# Précise qu’il ne faut pas mettre l’adresse IP des postes locaux dans les fichiers de logs
des
# hébergeurs de sites.
forwarded_for off

26.4 Installation d'un serveur DNS


26.4.1 Introduction
Le DNS est le Domain Name System. C'est l'ensemble des règles utilisées par les machines et les logiciels pour établir, entre
autres choses, la correspondance entre les noms de machines et les adresses IP, dont chaque machine sur le net est
pourvue. Ce document explique comment définir ces correspondances à l'aide d'un système Linux. Une correspondance est
tout simplement une relation entre deux objets, un nom de machine et l'adresse IP de cette machine.
Le service de résolution de nom sous Linux est assuré par un programme appelé named. Il f ait partie du paquetage « bind ».
named est inclus dans la plupart des distributions de Linux. Le service DNS est une base de données à l'échelle du réseau
tout entier.
26.4.2 Notre propre domaine
J’ai déf ini le propre domaine de l’entreprise : guill.net et y est déclaré quelques machines. Celui-ci ne sera pas publié sur
Internet car nous n’y étions pas autorisés et ceci nous était inutile. Il nous servira uniquement comme serveur de nom intern e.
J’ai commencé à créer le domaine guill.net avec cette ligne dans /etc/named.conf :
______________________________________________________________________
zone "0.0.127.in-addr.arpa" {
type master;
file "pz/127.0.0";
};
______________________________________________________________________
L'absence de « . » à la f in des noms de domaine de ce fichier signifie que nous allons déf inir la zone 0.0.127.in-addr.arpa et
que tout est stocké dans un f ichier appelé pz/127.0.0. Ce f ichier se présente comme ceci :
______________________________________________________________________
0.0.127.in-addr.arpa. IN SOA ns.guill.net support.guill.net. (
6 ;Serial
108000 ; Refresh
36000 ; Retry
4320000 ; Expire
38400 ) ; Minimum TTL
NS ns.guill.net.
1 PTR localhost.
______________________________________________________________________
Notez bien le « . » à la f in de tous les noms de domaine complets de ce fichier. L'origine (l'emplacement dans la hiérarchie du
service DNS) d'un fichier de zone est indiquée dans la zone section du fichier named.conf . Dans notre cas, c'est 0.0.127.in -
addr.arpa.
Ce « f ichier de zone » (« zone f ile »), contient 3 « resource records » (RRs) : un SOA RR, un NS RR et un PTR RR.
SOA est l'abréviation de « Start Of Authority » (Origine de l'Autorité).
NS est le « resource records » pour le serveur de noms (NS = Name Server). La ligne NS ns.guill.net. dit au service DNS
quelle machine est le serveur de noms pour le domaine 0.0.127.in-addr.arpa, c'est ns.guill.net. ns est le nom habituel des
Comment ça marche ? 111/120
serveurs de noms, tout comme www pour les serveurs Web, mais c'est simplement une habitude, on peut choisir n'importe
quel nom.
Et f inalement le PTR dit que l'adresse 1 dans le sous réseau 0.0.127.in-addr.arpa, donc 127.0.0.1 est appelé localhost.
Le champ SOA est le préambule de tous les fichiers de zone, et il doit y en avoir exactement un dans chaque f ichier de zone.
Ce champ SOA décrit la zone, son origine (ici, une machine appelée ns.guill.net), qui est responsable de son contenu
(support@guill.net), de quelle version du fichier de zone il s'agit (serial : 6), et quelques autres paramètres pour le cache et les
serveurs DNS secondaires.
J’ai relancé le service named (avec la commande ndc restart) et j’ai regardé le résultat avec la commande nslookup :
$ nslookup
Default Server: localhost
Address: 127.0.0.1
> 127.0.0.1
Server: localhost
Address: 127.0.0.1
Name: localhost
Address: 127.0.0.1
Je suis arrivé à obtenir localhost à partir de 127.0.0.1. Maintenant, pour le sujet qui nous préoccupe, le domaine guill.net, j’ai
inséré une nouvelle zone dans le f ichier named.co nf :
______________________________________________________________________
zone "guill.net" {
notify no;
type master;
file "pz/guill.net";
};
______________________________________________________________________
J’ai ensuite décrit le f ichier de la zone guill.net :
______________________________________________________________________
guill.net. IN SOA ns.guill.net. support.guill.net. (
2004
108000
36000
4320000
38400 )
NS ns
MX 10 mail.guill.net. ;serveur de mail de guill.net
;
localhost A 127.0.0.1
mail A 192.98.1.68
ns A 127.0.0.1
www A 195.25.252.194
_____________________________________________________________________
Il y a deux choses à noter à propos du champ SOA. ns.guill.net doit absolument être une vraie machine possédant un champ
A. Il n'est pas légal d'avoir un champ CNAME pour la machine mentionnée dans le champ SOA. La deuxième chose à noter
est que support.guill.net doit se lire comme support@guill.net. Ce doit être un alias de mail ou une véritable boîte aux lett res
électroniques, et la personne qui maintient le DNS doit la lire régulièrement. Tous les mails concernant l'administration du
domaine seront envoyés à cette adresse.
Il y a un nouveau RR (Resource Record) dans ce fichier, c'est le MX, pour Mail eXchanger. Il indique aux systèmes de gestion
du courrier électronique à quelle machine envoyer le mail adressé à someone@guill.net, dans notre cas à mail.guill.net. Le
nombre devant chaque machine est sa priorité vis-à-vis du champ MX, le RR avec le numéro le plus f aible (10) correspond à
la machine à laquelle le courrier doit être adressé en priorité.
Le site Internet www.guill.net est hébergé par une société située au Canada et possédant une adresse IP f ixe. Pour notre
réseau interne, le site www.guill.net devait faire partie de notre réseau, aucune de nos machines dans notre réseau privé ne
pouvait avoir accès à notre site Internet. J’ai donc dû redirigé tous les appels à www.guill.net vers l’adresse IP de l’héber geur
de notre site Web. La ligne www A 195.252.252.194 permet de f aire cette redirection.
J’ai relancé named en tapant ndc restart et examiné le résultat avec nslookup :
> nslookup
Default Server: localhost
Address: 127.0.0.1
> set q=any
> guill.net
Server: localhost
Address: 127.0.0.1
guill.net
origin = ns.guill.net
mail addr = support.guill.net
serial = 2004
refresh = 108000 (1d6h)
retry = 36000 (10H)
expire = 4320000 (7w1d)
minimum ttl = 38400 (10h40m)
Comment ça marche ? 112/120
guill.net nameserver = ns.guill.net
guill.net preference = 10, mail exchanger = mail.guill.net
guill.net nameserver = ns.guill.net
ns.guill.net internet address = 127.0.0.1
mail.guill.net internet address = 192.98.1.68
Voyons ce que cela donne avec www.guill.net :
> www.guill.net
Server: localhost
Address: 127.0.0.1
www.guill.net internet address = 195.25.252.194
guill.net nameserver = ns.guill.net
ns.guill.net internet address = 127.0.0.1
La moitié du travail est f aite, il f aut maintenant déf inir la zone inversée qui ef f ectuera le travail inverse de celui que no us
venons de f aire.
26.4.3 La zone inversée
Maintenant, on a besoin d'une zone inversée pour que l'on puisse retrouver le DNS à partir de l'adresse. Ce nom est utilisé par
dif férents types de serveurs (FTP, IRC, WWW et autres). Pour un accès complet aux services sur Internet, l a zone inversée
est indispensable.
L’adresse IP de mon réseau étant 192.98.1.0, j’ai alors mis ceci dans mon f ichier named.conf :
______________________________________________________________________
zone "1.98.192.in-addr.arpa" {
notify no;
type master;
file "pz/192.98.1";
};
______________________________________________________________________
C'est exactement comme pour le 0.0.127.in-addr.arpa et le contenu est similaire :
______________________________________________________________________
1.98.192.in-addr.arpa. IN SOA ns.guill.net support.guill.net. (
6
108000
36000
4320000
38400 )
NS ns.guill.net.
68 PTR mail.guill.net.
______________________________________________________________________
J’ai redémarré le service named (ndc restart) et examiné le travail avec nslookup :
______________________________________________________________________
> 192.98.1.68
Server: localhost
Address: 127.0.0.1
Name: mail.guill.net
Address: 192.98.1.68
______________________________________________________________________
J’ai ensuite regardé en détail pour m'en assurer :
______________________________________________________________________
> ls -d 1.98.192.in-addr.arpa
[localhost]
$ORIGIN 1.98.192.in-addr.arpa.
@ 10h40m IN SOA ns.guill.net support.guill.net. (
6 ; serial
1d6h ; refresh
10H ; retry
7w1d ; expiry
10h40m ) ; minimum
10h40m IN NS ns.guill.net.
68 10h40m IN PTR mail.guill.net.
@ 10h40m IN SOA ns.guill.net support.guill.net. (
6 ; serial
1d6h ; refresh
10H ; retry
7w1d ; expiry
10h40m ) ; minimum
Comment ça marche ? 113/120
26.5 Installation de hylafax
26.5.1 Introduction
Dans cette partie, je vais décrire l’installation du serveur de f ax hylaf ax. Du point de vue du client, le service se comport e
exactement comme une impression en réseau. L’installation de ce serveur de fax suppose l’utilisation d’une distribution SUSE
mais ceci est probablement applicable à toutes les distributions en changeant simplement les répertoires de configuration. Le s
normes de communication pour envoyer les f ax sont f ournies en Annexe 4 ainsi que des explications sur les classes de
modem.
26.5.2 Installation du serveur
Configuration de hylafax
Le modem est configuré sur le port COM1 sous DOS soit ttyS0 sous Linux. Un lien a été créé de /dev/modem vers /dev/ttyS0
pour des questions de commodités. La première partie de l’installation consiste à réussir à envoyer des fax à partir du serveur.
La conf iguration du serveur de f ax hylaf ax se f ait grâce à l’utilitaire f axsetup.
Utiliser faxsetup pour configurer le serveur
Pour pouvoir utiliser le logiciel hylafax, il faut au préalable exécuter le script faxsetup. Ce script interactif vérifie l’installation du
logiciel hylafax et apporte une variété de petites questions qui préparent le système à l’utilisation. Il écrit les inf ormati ons de
conf iguration dans deux f ichiers : conf ig et conf ig.modem dans la zone de spool /var/spool/f ax/ de hylaf ax. Le f ichier
/etc/setup.cache de la zone de spool contient les paramètres d’installation utilisés par les scripts de commande d’hylafax al ors
que le f ichier /etc/setup.modem contient les scripts de commande pour communiquer avec les modems.
Les f ichiers setup.cache et setup.modem doivent être présents pour que hylaf ax f onctionne correctement. Si ces f ichiers
n’existent pas, les applications du serveur hylaf ax se termineront avec un message d’erreur.
En suivant les renseignements qui lui sont f ournis, f axsetup crée un f ichier de conf iguration pour le lancement de certains
processus en tache de f ond tel que f axqclean et f axcron mais crée aussi un f ichi er de conf iguration pour chaque modem
installé sur le serveur.
Enf in, les processus du serveur hylafax sont démarrés ou redémarrés si une installation précédente avait déjà été ef f ectuée.
Utiliser faxaddmodem pour configurer les modems
Le script interactif faxaddmodem permet de configurer les nouveaux modems ou de reconfigurer ceux dont l’installation n’était
pas correcte. Il peut être lancé directement dans une f enêtre shell ou via f axsetup.
Configuration des paramètres d’envoi et de réception de fax
Dans une f enêtre shell, à l'invite de commande, j’ai tapé f axaddmodem modem où modem correspond à un lien vers le
modem. Le fichier de configuration du scheduler d’hylafax : /var/spool/fax/etc/config est automatiquement lu pour récupérer l es
paramètres par défaut notamment le code de région. Le script pose alors à l’utilisateur une série de questions tel que décrit ci -
après. Les réponses par déf aut du script sont placées entre les crochets. Les paramètres que j’ai saisis manuellement se
situent après le point d’interrogation. Les explications sur la signif cation des questions sont précédées d’un dièse (#).
# Code du pays (code 1 par défaut)
Country code [1]?
# Le code de zone ne peut être vide (code 510 par défaut)
Area code [510]?
# C’est le numéro de téléphone associé au modem. Ce numéro peut aussi apparaître sur les
pages de # garde.
Phone number of fax modem [+1.999.555.1212]? 0549726387
# La chaîne d’identification de la machine locale. Si ce champ est vide, le serveur utilise
le numéro de # téléphone du modem.
Local identification string (for TSI/CIG) [""]?GUILL
# Ces deux paramètres précisent les numéros à composer pour les appels internationaux et
longues # distances.
Long distance dialing prefix [1]?
International dialing prefix [011]?
# Le fichier de string rules maintient les règles utilisées pour convertir les chaînes de
connexions des # utilisateurs (i.e. numéro de téléphone) dans un format canonique et prépare
les chaînes de caractères à # passer au modem.
Dial string rules file (relative to /var/spool/fax) [etc/dialrules.sf-ba]?
# Les deux paramètres contrôlent les log des processus du serveur.
Tracing during normal server operation [1]?
Tracing during send and receive sessions [11]?
# Le paramètre par défaut sélectionné ici rend accessible les fax reçus uniquement à
l’utilisateur. Il peut être # intéressant de mettre ce paramètre à 644 pour que tout le monde
puisse voir les fax reçus.
Protection mode for received facsimile [0600]?
# Ces paramètres spécifient les permissions du fichier de log des utilisateurs.
Protection mode for session logs [0600]?
# Si des informations sensibles telles que les codes de carte de crédit sont fournies par les
utilisateurs, ils # seront visibles dans le fichier de log enregistré sur le serveur. Pour
cette raison, le code de protection par # défaut du fichier de log le protège des accès
publics.
Protection mode for ttym2 [0600]?
# Ce paramètre spécifie le nombre de sonneries avant de se mettre en réception de fax.
Rings to wait before answering [1]?
Comment ça marche ? 114/120
# Désactive le haut parleur du modem.
Modem speaker volume [off]?
# Ce paramètre est utile pour les appels entrants. Les paramètres précisés manuellement sont
spécifiques à # la distribution SUSE.
Command line arguments to getty program ["-h %l -x %s"]? –r –b –s %s %l
# Le fichier TSI de contrôle d’accès peut être utilisé pour interdire certains numéros de fax
entrants. Le # paramètre par défaut accepte tous les appels entrants.
Pathname of TSI access control list file (relative to /var/spool/fax) [""]?
# Définit la police à utiliser pour les « tag line » (lignes qui sont insérées en haut du
fax)
Tag line font file (relative to /var/spool/fax) [etc/lutRS18.pcf]?
# Les Tag lines sont optionnelles. Elles permettent de mettre une ligne de texte en haut des
fax sortants. # L’option %%l précise de qui provient le fax, %c précise l’heure et la date
d’envoi, %%p donne le numéro # de la page en cours alors que %%t donne le nombre total de
pages
Tag line format string ["From %%l|%c|Page %%p of %%t"]?
# Ce paramètre contrôle le temps mis par le serveur HylaFAX avant de déplacer un fichier UUCP
bloqué.
Time before purging a stale UUCP lock file (secs) [30]?
# Pourcentage de lignes correctes pour accepter le fax durant la vérification de la qualité
de la télécopie.
Percent good lines to accept during copy quality checking [95]?
# Nombre de mauvaises lignes à accepter pendant la vérification de la télécopie
Max consecutive bad lines to accept during copy quality checking [5]?
# Nombre maximal de pages lors de la réception d’un fax.
Max number of pages to accept in a received facsimile [25]?
# Ces paramètres sont relatifs aux fax entrants.
Syslog facility name for ServerTracing messages ["daemon"]?
# Ce paramètre est uniquement valable si vous instal lez le modem sur un système Silicon
Graphics.
Set UID to 0 to manipulate CLOCAL [""]? No.
Un résumé de ces différents paramètres permet de vérifier la configuration de l’envoi et la réception de f ax puis d’enregistr er
celle-ci.
Configuration des caractéristiques du modem
f axaddmodem recherche ensuite le type et les fonctionnalités du modem. Il va parcourir le bloc tty pour conf igurer le type de
modem qui y est attaché. Le modem doit être câblé et allumé.
Probing for best speed to talk to modem: 38400 OK.
Hmm, this looks like a Class 1 modem.
Product code (ATI0) is "56000".
Other information (ATI3) is "V1.120HY-K56_DLS".
Le protocole de contrôle de f lux est xonxof f au niveau logiciel ou rtscts au niveau logiciel. Le paramètre def ault permet
l’installation appropriée au modem.
DTE-DCE flow control scheme [default]?
Command to enter Class 1 [AT+FCLASS=1]?
Extra bytes in a received HDLC frame [4]?
Maximum time to wait for OK after aborting a receive (ms) [200]?
Maximum wait for initial identification frame (ms) [40000]?
Delay before sending post-page message (ms) [75]?
Delay between sending TCF and ack/nak (ms) [75]?
Delay before sending DCS and TCF (ms) [75]?
Delay after failed training (ms) [1500]?
Un petit résumé est alors af f iché pour valider les paramètres du modem.
The modem configuration parameters are:
Class1Cmd: AT+FCLASS=1
Class1FrameOverhead: 4
Class1RecvAbortOK: 200
Class1RecvIdentTimer: 40000
Class1SendPPMDelay: 75
Class1SendTCFDelay: 75
Class1TCFMaxNonZero: 10
Class1TCFMinRun: 1000
Class1TCFResponseDelay: 75
Class1TrainingRecovery: 1500
Are these ok [yes]?
Dès qu’un modem a été installé avec faxaddmodem, l’ordonnanceur d’hylafax doit être informé de sa présence. Ceci peut être
ef f ectué de deux manières. Si un système est utilisé uniquement pour transmettre des fax alors l’ordonnanceur est inf ormé en
lançant la commande « f axmodem modem ». Sinon, si un modem est utilisé pour les f ax entrants et sortants, le programme
f axgetty doit alors être réinstallé pour contrôler le mo dem. Si un modem était précédemment conf iguré, le processus du
serveur hylaf ax remarquera le nouveau f ichier de configuration, et utilisera automatiquement son contenu. Si faxaddmodem a
été démarré à partir de f axsetup, alors f axsetup f init la conf iguratio n sur le serveur automatiquement.
Comment ça marche ? 115/120
Démarrage du service d'envoi
L'envoi des fax est effectué grâce au programme faxq. Il y a un processus faxq pour chaque modem configuré sur la machine.
Le programme faxq écoute les messages qui arrivent dans le fichier FIFO qui se trouve dans le répertoire de spool du serveur.
Ces messages peuvent provenir de deux sources : du programme f axmodem qui est utilisé pour activer manuellement le
modem ou du processus f axgetty qui est conf iguré pour chaque bloc tty où un modem f ax est installé.
f axmodem est utilisé lorsque hylaf ax doit f onctionner en envoi uniquement. Dans le cadre de mon stage, c’est cette
f onctionnalité qui a été retenue car il existait une machine fax connectée sur la ligne spécifique au f ax. Un modem spécifi é par
f axmodem est identif ié par le bloc tty auquel il est attaché.
Installer l’accès au client
Les applications clientes d’hylafax telles que sendfax, respond, w2hfax ne communiquent pas directement avec les processus
du serveur tels que f axq ou faxgetty. Elles communiquent avec le programme hf axd gérant le protocole client serveur. Cette
architecture isole les applications clientes de la structure interne du serveur, en leur f ournissant un environnement plus so lide.
Hf axd est normalement démarré lorsque le programme f axsetup est lancé. Faxsetup s’arrange aussi pour que hf axd soit
démarré chaque f ois que le serveur est redémarré. Hf axd peut être démarré en mode autonome ou à partir du programme
inetd. Quand hf axd est démarré, les arguments de la ligne de commande spécifient quel type de protocole client serveur sera
of f ert. Habituellement, hf axd peut supporter trois protocoles :
- La version 4.0 du protocole client serveur d’hylaf ax,
- Les versions du protocole client serveur d’hylaf ax antérieur à 4.0,
- le Simple Network Pager Protocol (SNPP) qui est utilisé pour soumettre une requête alphanumérique.
Quand il f onctionne en mode autonome, les options de la ligne de commande spécifient le protocole supporté et les ports sur
lesquels les services sont fournis. Le port pour le nouveau protocole est spécif ié dans le f ichier /etc/services avec la ligne :
hylaf ax 5555/tcp #HylaFAX client-server protocol.
Le port 5555 avec le protocole TCP sera utilisé pour la communication client -serveur. Une autre ligne précise le port pour le
protocole SNPP. Elle est inutile car à chaque démarrage, hfaxd force hylafax à communiquer sur le port 444. Les processus
du serveur peuvent être démarrés à chaque redémarrage de la machine. Il faut pour cela mettre la variable START_HYLAFAX
= yes dans le f ichier /etc/rc.config. Si le serveur f onctionne uniquement en réception, il f aut taper « f axmodem modem » à
chaque redémarrage de la machine.

Il est nécessaire de spécif ier quelles machines clientes et quels utilisateurs vont avoir accès au serveur hylaf ax. Ceci est
spécifié par le contenu du fichier /var/spool/fax/etc/hosts du serveur. Ce f ichier qui est installé avec hylafax, permet à n’ importe
qui d’avoir un accès à travers l’interf ace réseau de localhost. Le f ichier des hôtes contient :
localhost
127.0.0.1
Le f ichier /etc/hosts de la zone de spool doit appartenir à l’utilisateur f ax et doit avoir le code d’accès 0600 sinon hf axd ne
permettra pas l’accès des clients au serveur. Avec ces deux lignes, tous les utilisateurs se conn ectant avec un nom de la
f orme moi1@localhost auront accès au serveur de fax. Chaque f ois que le f ichier des hôtes est modif ié, il f aut relancer les
processus du serveur.
26.5.3 Les différents clients WINDOWS
Après avoir installé et configuré hylaf ax pour pouvo ir envoyer des f ax depuis le serveur, il f allait donner accès aux clients
Windows de mon réseau local. J’ai donc f ait une étude de plusieurs outils pour voir lequel pouvait le mieux convenir aux
utilisateurs de l’entreprise.
Le logiciel respond pour les clients Windows
Pour que le service de fax puisse être utilisé, il est nécessaire de conf igurer correctement les stations clientes qui veulen t
pouvoir utiliser ce service. Concrètement, il est nécessaire d’installer une nouvelle imprimante et le programme respond qui se
charge d’écouter les connexions du serveur pour obtenir de l’utilisateur les informations supplémentaires. Ce programme doit
être exécuté automatiquement au démarrage de la session sur la machine cliente pour que le service soit disponible. La
nouvelle imprimante s’appellera « serveurf ax ».
Installation du programme respond
Une f ois que le document a été envoyé à « serveurf ax », il
f aut connaître le numéro de fax du destinataire du document.
Pour cela, j’utilise le programme respond. Ce programme
s’exécute sur les stations clientes et, quand elles envoient
un f ax à l’imprimante fax, le service de f ax se met en contact
avec la station cliente grâce à ce programme pour obtenir
les inf ormations supplémentaires nécessaires. Pour installer
le programme, il suffit de copier l’exécutable sur la machine
cliente. Pour que le programme respond s’exécute au
démarrage de la session, il f aut placer un raccourci dans le
groupe de démarrage de Windows. La conf iguration du
programme respond s’ef f ectue avec le programme appelé
conf ig. Cet autre programme permet de spécif ier le numéro
de port sur lequel la communication avec le serveur va
s’établir. Le protocole client-serveur s’établit par exemple sur
le port 5555. Le délai d’envoi est nul, c’est-à-dire que l’envoi
du f ax se f ait aussitôt après l’appui sur le bouton « OK ».
L’interf ace graphique de ce programme est montrée ci-
contre.
Comment ça marche ? 116/120

Configuration de samba
Pour que le service de fax soit le plus transparent possible pour tous les utilisateurs, il f aut crée r une imprimante partagée
avec Samba, à laquelle les utilisateurs pourront envoyer leurs documents qu’ils veulent envoyer en tant que f ax.
Pour créer une telle ressource partagée, j’ai ajouté les lignes suivantes dans le f ichier de conf iguration de samba
(/etc/smb.conf ) :
[fax]
printable = yes
writable = yes
postscript = yes
comment = Serveur de Fax
print command = (/usr/bin/printfax-1_5_0.pl %I %s %U %m; rm %s)
path = /mnt/fax
Les paramètres relatif s à ce service sont les suivants :
print command
Spécifie la commande à exécuter lorsque le serveur reçoit le f ichier à imprimer (à f axer). Il est possible que Samba n’ef f ace
pas le f ichier à imprimer après avoir exécuté l’envoi. Il est donc nécessaire de le f aire manuellement avec la commande « rm
%s » où %s est le f ichier à envoyer.
path
Indique le répertoire dans lequel les f ichiers à envoyer sont stockés lorsqu’un client Windows veut envoyer un f ax. Ce
répertoire doit avoir les droits d’écriture pour tous les utilisateurs.
Le programme printf ax.pl se charge de se mettre en contact avec le client Windows, pour solliciter les inf ormations
nécessaires pour envoyer le f ax (numéro de fax du destinataire, adresse de courrier électronique pour envoyer la confirmation
d’envoi, etc.). Dès que toutes ces informations sont obtenues, le f ax est envoyé (spoolé) dans la f ile d’attente en attendant
l’activation du démon d’envoi. printfax.pl est un script développé en langage perl qui doit se personnaliser pour indiquer le s
répertoires de travail.
Installation du service fax comme une impression locale
Le service de f ax se comporte comme une impression PostScript. Pour cela, il est nécessaire d’installer une nouvelle
imprimante. Quand le client désire envoyer un f ax, il imprime alors le document sur l’imprimante déf inie précédemment. Le
serveur Samba n’est pas configuré pour proposer le driver d’impression nécessaire directement depuis le serveur. Il est donc
nécessaire d’installer le driver manuellement grâce au CD du système d’exploitation. Pour installer l’impr imante, il f aut aller
dans le voisinage réseau, entrer sur le serveur Linux (ici server2) et f aire un double clique sur l’imprimante « f ax ». Dans la
f enêtre de dialogue qui s’ouvre, donner un nom au serveur de f ax. Ensuite, il f aut installer le driver pou r l’imprimante
PostScript, une LaserWriter du constructeur Apple f ait parf aitement l’af f aire.
Installation des messages de retour
Les notif ications d’envoi et d’erreur sur le service de f ax sont réalisées grâce aux messages provenant de Windows. Sur
Windows 9x, il faut que le programme winpopup soit exécuté au démarrage de la session. Dans le cas de Windows NT ceci
n’est pas nécessaire, car les messages sont directement gérés par le système.
Utilisation du service
Comme je l’ai dit précédemment, pour envoyer un f ax, il faut
imprimer le document sur l’imprimante créée dans la
première partie de l’installation. Il apparaît sur la station
cliente la f enêtre de dialogue suivante (le programme
respond doit être en train de s’exécuter) :

Dans ce f ormulaire, le champ f ax-number doit


obligatoirement être renseigné. Les champs Sender-User et
Sender-Name sont optionnels, ils sont seulement utilisés
pour la comptabilité du service et pour les messages de
conf irmation. Lorsque le champ f ax-number n’est pas
renseigné ou lorsque l’utilisateur annule l’envoi, le f ax est
détruit

26.5.4 Le logiciel W2HFAX


Introduction
Ce client f onctionne grâce à une librairie Active-X écrite dans le langage Python. Cette librairie peut aussi être utilisée pour
envoyer des fax à travers les logiciels de la suite Microsoft Office, Acrobat Reader et bien d’autres. Le client Windows en lui -
même est développé en Visual Basic.
Comment ça marche ? 117/120
Installation du programme
L’installation de ce programme se f ait
de la même manière que n’importe
quelle installation de logiciel sous
Windows. Pour que le programme
f onctionne correctement, il f aut installer
le logiciel Python 1.52 ainsi que le
logiciel Python Win32 Extensions.
Pour minimiser la place prise par le
logiciel sur le disque dur, j’ai choisi
d’installer uniquement le composant «
Python interpreter and library » comme
le montre la f igure ci-contre. Ce
composant est amplement suf f isant
pour l’utilisation que nous allons f aire
de ce logiciel
Dès que l’installation de python est
terminée, il nous f aut réaliser
l’installation des extensions 32 bits
pour ce logiciel. On prendra soin de
l’installer dans le même répertoire pour
ne pas être ennuyé lors de la
désinstallation.
Il f aut enf in installer un redirecteur de
port qui nous permettra de rediriger les
f ax vers le serveur de f ax. Le logiciel
que nous utilisons est Redmon dans sa version 1.3. L’utilisation de ce redirecteur de port sera vue dans la section
paramétrage de l’imprimante pour le f ax.

Installation du service
Pour installer le service sur le client Windows, il f aut
enregistrer l’objet de communication grâce au f ichier
hf axcom.py qui se trouve dans le répertoire d’installation
de W2HFAX. Dans le cadre de l’utilisation dans
l’entreprise, j’ai ef f ectué quelques modif ications sur ce
f ichier, notamment le numéro de port sur lequel la
communication entre le client et le serveur va s’établir
ainsi que le nom de l’utilisateur et son mot de passe. Le
f ichier de conf iguration se trouve en Annexe de ce
document.
J’ai ensuite enregistré de la même manière le f ichier
hf axcom.py. Il n’y avait aucune modif ication à f aire sur
celui-ci car sa f onction principale était d’enregistrer l’objet
de communication dans la base de registre. L’exécution de
ces deux f ichiers a créé deux nouveaux f ichiers avec des
extensions.pyc : hf axcom.pyc et hf axlib.pyc.
Le logiciel d’envoi de f ax peut maintenant f onctionner,
nous pouvons envoyer des f ax à partir de celui-ci.
L’interf ace graphique de la page principal de ce nouveau
client est ci-contre.

Par déf aut lors de l’ouverture, la page af f ichée est celle donnant les
indications sur la liste des fax contenus dans la file d’attente. Mais là où
l’installation d’un système comme celui-ci est intéressant lorsque les
utilisateurs peuvent envoyer des fax de n’importe quelles applicat ions.
Pour ce f aire, nous allons installer une imprimante sur chaque
poste client.
Installer une nouvelle imprimante
J’ai installé une nouvelle imprimante en local sur le poste
Windows. J’ai choisi les mêmes pilotes que pour l’installation
du programme respond.exe. En fait, l’imprimante installée est
une laserWriter du constructeur Apple. Pour f inir de configurer
le logiciel, il f aut rediriger les envois de documents à
l’imprimante vers le serveur. Pour ceci, j’ai utilisé le
redirecteur de port Redmon.

Lorsque la redirection a été effectuée, il suf f it de préciser au


port créé le logiciel qu’il doit exécuter. Dans le cadre de notre
Comment ça marche ? 118/120
application cliente, le logiciel W2HFAX se trouve dans le répertoire précisé ci-dessous. L’argument “printdialog” af f iche une
f enêtre permettant à l’utilisateur de saisir le numéro de télécopie du destinataire.

Lorsque tous ces logiciels sont mis en place, l’utilisateur peut imprimer à partir de n’importe quelle application Windows en
envoyant ses documents sur la nouvelle imprimante.
26.5.5 Conclusion
D’autres clients Windows existent mais le client W2HFAX était amplement suffisant pour l’utilisation au sein de l’entreprise. J’ai
été ennuyé avec le logiciel Respond car il ne me donnait pas d’accusé d’envoi de fax. Le logiciel Hylafax permettait l’envoi par
mail d’accusé d’envoi mais un mauvais paramétrage de l’outil procmail m’a causé quelques soucis que j’ai réussi à résoudre
dans les derniers jours de mon stage. J’ai aussi eu quelques problèmes car je devais passer par un PABX e t composer le 0
pour appeler à l’extérieur de l’entreprise. En étudiant les pages de manuel d’hylaf ax, je me suis aperçu qu’il y avait la
possibilité de paramétrer ce numéro et qu’il attendait alors d’obtenir la tonalité. Avec le logiciel W2HFAX, j’avais e n plus la
possibilité de visualiser si des télécopies étaient arrivées en réception

27 Sécurité
27.1 Unix et sécurité
27.1.1 Introduction
Le présent exposé se veut un relevé de l’existant en matière de la sécurité des réseaux. Le choix est porté sur Unix pour des
raisons historiques mais aussi pour son omniprésence sur le marché : ef f ectivement, Unix est à la base de l’internet qui a
connu la plus grande attaque informatique de tous les temps en 1988. Pour traiter de f açon réaliste des sujets de sécurité,
Unix est devenu incontournable.

Le présent rapport est structuré comme suit : La première partie relate les f ailles célèbres d’unix et l’histoire du piratage de
l’internet. La deuxième partie énonce des principes généraux de conception de systèmes sécurisés. L’avant dernier chapitre
met l’accent sur l’importance de l’audit de sécurité et les possibilités offertes par Unix dans ce domaine. Enfin, nous concl uons
avec une liste de voies à explorer pour sécuriser un réseau et répondre aux attaques.
27.1.2 Évolution de la sécurité Unix
Bref historique
Le système Unix est, historiquement, le point de départ de l’internet, donc à la base même de sa conception. Il demeure le
système le plus utilisé car il est présent sur toutes les gammes d’ordinateurs (du micro aux supercalculateurs). C’est aussi un
système ouvert qui a permis à des milliers de chercheurs et d’étudiants de lui apporter des modifications et des extensions ; et
c’est de la même que proviennent les f uites. Mais cela ne signif ie pas que la sécurisation d’un système né cessite une
conception secrète.
Quelques failles célèbres d’unix [1]
Les premières versions d’unix étaient vulnérables à travers quelques utilitaires bien connus tels que : lpr , core, mkdir .
-lpr : cet utilitaire possède une option qui permet d’effacer un f ichier après son impression. On pouvait donc ef f acer le
f ichier des mots de passe.

-core : un intrus pouvait lier core (un f ichier du catalogue courant) au f ichier de mots de passe. L’attaquant provoquait
un cliché de l’image mémoire d’un programme setuid que le système écrivait dans core. Le système ef f açait ainsi le
f ichier des mots de passe et permettait à l’intrus de le remplacer par ses propres commandes.

-mkdir : c’est un programme setuid détenu par la racine. Par exemple mkdir TOTO commence p ar créer un nœud à
l’aide de l’appel système mknod ; ensuite, il remplace le UID de la racine par celui de l’utilisateur (le propriétaire de
TOTO). L’utilisateur pouvait entre mknod et le shown, retirer le nœud d’information du catalogue et créer un lien entre
TOTO et le f ichier des mots de passe. Lorsque mkdir effectuait le shown , l’utilisateur devenait le proriétaire du f ichier
des mots de passe. En plaçant les commandes requises dans un script shell , on pouvait les exécuter jusqu’à ce que
l’astuce f onctionne.
Lever Internet [2]
Le 2 novembre 1988 , Robert Tappan Morris , étudiant à l’université de Cornell , a introduit un ver qui a touché des milliers
d’ordinateurs du réseau internet . Cet événement est considéré comme la plus grande f aille inf ormatique de tous les temps.
L’étudiant a découvert deux bogues dans la versions Berkley d’unix. Il écrivit alors un programme, appelé ver, qui exploita c es
erreurs et se dupliqua en quelques secondes sur les machines auxquelles il pouvait accéder et provoqua leur ef f ondrement.
Le ver est constitué de deux programmes : l’amorce et le ver lui-même.
L’amorce (L1.c) est un programme de 99 lignes. Écrit en C et compilé sur le système attaqué. En cours d’exécution , elle se
connectait à la machine d’où elle provenait, transfère le ver et l’exécute. Le ver cache son existence puis examine les tables
de routage pour identif ier les machines accessibles et essaie de dif f user l’amorce.
Trois méthodes étaient mises en œuvre pour atteindre de nouvelles machines. Il s’agit des utilitaires rsh , f inger et sendmail .
Utilisation de rsh
rsh permet d’exécuter l’interpréteur de commande d’une machine distante qui lui f ait conf iance. Si cela réussit, l’interpréte ur
charge le ver et continue d’attaquer les autres machines…
Utilisation de finger
f inger nom@site : autorise tout utilisateur sur internet à af f icher des inf ormations sur un utilisateur telles que le nom,
l’identif icateur de session (login), l’adresse, le téléphone, etc…
Comment ça marche ? 119/120
Sur chaque site , le processus d’arrière plan , d émon finger, s’exécute pour traiter les requêtes provenant du réseau internet .
Le ver appelle f inger en passant en paramètre une chaîne de caractères de 536 octets. Cette chaîne provoque un
débordement du tampon du démon et écrase sa pile. Le
démon ne contrôle pas ce débordement : cela constitue son bogue. En sortant de la procédure de traitement de la requête, le
démon ne revenait pas dans main mais dans une procédure située dans la chaîne de 536 octets se trouvant dans la pile.
Cette procédure exécute /bin/sh . Si cela réussit, le ver possède un interpréteur de commande (shell) sur la machine attaquée.
Utilisation de sendmail
Un bogue de sendmail permettait au ver d’envoyer une copie de l’amorce et de l’exécuter. Le ver s’installe et tente de
décrypter les mots de passe des utilisateurs. Pour chaque mot de passe décrypté, le ver pouvait accéder aux machines où
l’utilisateur possédait un compte.
Pour réaliser tout cela, l’étudiant Morris, prit possession d’un article écrit, une dizaine d’années auparav ant, par son père et
son collègue Thomson (spécialistes dans le
décryptage des codes) [3].
L’affaire Morris
Morris f ût découvert lorsqu’un de ses amis a tenté de convaincre un journaliste (John Markof f du New York Times) qu’il
s’agissait d’un accident , que le ver était inoffensif et que son auteur était désolé [4]. Par mégarde , il révéla que l’identificateur
de connexion (login) de l’auteur était rtm…
Le reste f ût l’af f aire de f inger . On ne sait pas si la version du 2 novembre était un test. On ne co nnaît pas non plus les
motivations de Morris…Mais, on pense à un défi technique qui lui a échappé suite à une erreur de programmation. Il a été jugé
par la cour f édérale, condamné à une amende de 10 000 dollars, à trois ans de probation et 400 heures de se rvice pour la
communauté. Ses f rais de justice dépassent les 150 000 dollars.
27.1.3 Conception de systèmes sécurisés
Les f ailles citées ci-dessus ont été corrigées , mais les attaquants en découvrent chaque jour. Néanmoins , pour protéger un
système , on peut engager une équipe de pénétration pour procéder aux tests suivants [5] :
Tests de sécurité
Les auteurs ont mis sur pied un groupe d’étudiants pour tenter de prendre en défaut la sécurité des systèmes. Au f il des ans ,
ils ont mis en évidence un certain nombre de points f aibles par le biais des attaques suivantes :
• Demander des pages autorisées en lecture seulement , puis les récupérer au moyen d’un programme qui examine
l’espace mémoire utilisateur. Cela est possible car de nombreux systèmes ne les effac ent pas avant de les réallouer.
• Essayer des appels systèmes non autorisés , des appels permis avec des paramètres non autorisés et même des
appels avec des paramètres acceptés mais déraisonnables.
• Se connecter au système puis taper DEL , RUBOUT ou BREAK au milieu d la séquence de démarrage. Dans certains
systèmes , cela a pour effet de tuer le programme de contrôle des mots de passe et permettre la connexion directe.
• Tenter de modif ier les champs relatif s à la sécurité dans les descripteurs de f ichiers.
• Duper l’utilisateur en écrivant un programme qui affiche ‘’login’’ à l’écran et qui attend. Nombreux sont les utilisateurs
qui donneront , alors , leur nom d’usager et leur mot de passe.
• Rechercher dans les manuels les phrases de type ‘’ne pas faire X’’ et essayer le plus de variantes possibles avec X.
La conception d’un système doit tenir compte au moins des attaques de cette nature.
Principes généraux de conception [6]
• Supposer que l’intrus ne connaît pas le système est une illusion
• Ref user l’accès en cas de doute
• Vérif ier les droits d’accès régulièrement et non seulement au moment de la connexion (un utilisateur qui laisse un
f ichier ouvert pendant une semaine continuera à l’utiliser même si les droits d’accès ont changé entre temps)
• Donner à chaque processus le moins de privilèges possibles
• Le mécanisme de protection devrait être simple et implémenté dans les couches les plus basses du système (la
sécurité comme l’exactitude ne doit pas être un ajout)
• Le mécanisme choisi doit être psychologiquement acceptable (utilisable sans ef f ort)
27.1.4 Utilisation des journaux de logs unix
L’audit régulière des systèmes permet de faire le point sur l’ensemble des activités de ces derniers et donner une image de
leur état de santé. En matière d sécurité, l’exploitation des f ichiers de logs est incontournable. Les sections suivantes
présentes le cas d’unix [7]. Sous unix, le démon service qui journalise les événements est syslogd . Son f ichier de
journalisation est /var/log/messages . Plusieurs programmes utilisent les services de syslogd.
Les fichiers de journalisation et leur contenu
Par déf aut, unix utilise le répertoire /var/log pour journaliser les événements du système. Les dif f érents f ichiers utilisés sont
conf igurés dans /etc/syslog.conf . les versions récentes utilisent quatre f ichiers séparés : messages, secure, maillog, et
spooler.
/var/log/messages :
récupère tout (copie des messages écrits sur la console, des messages système écrits dans le tampon du journal interne du
du noyau, de tous les messages produits par les programmes qui utilisent l’appel système syslog() tels que named , sendmail
et login).
/var/log/secure :
Contient le rapport de tous les logins (root, utilisateur, tentatives sues d’autres utilisateurs, tentatives de connexion d’a utres
systèmes et les échecs de login root au niveau du démon système).
/var/log/mailog :
Contient un enregistrement du traf ic du courrier entrant et sortant et du statut du serveur.
/var/log/spooler :
Contient les messages d’erreur des démons uccp et serveur d e news (innd).
Comment ça marche ? 120/120
Configuration de syslog
Étant donné que les messages logs ne sont pas tous d’égale importance, unix nous laisse la possibilité d’adapter le résultat du
journal en f onction des besoins, on peut rediriger ou dupliquer les messages du système vers d’autres f ichiers journaux af in
d’établir des catégories selon leur importance ou sujet.
Le f ichier /etc/syslog.conf nous permet de le f aire. Une entrée dans ce f ichier spécif ie une f acilité (catégorie liée au sous
système qui la produit ), sa priorité et l’endroit où écrire les messages.
Les journaux peuvent écrits dans des périphériques tels que la console, dans des f ichiers ordinaires et même dans des
machines distantes.
Les fichiers log distants
La possibilité de journaliser dans une machine d istante peut s’avérer une option judicieuse de sécurité. Elle présente au moins
deux avantages :
• Les f ichiers logs sont regroupés sur une seule machine f acilitant la surveillance des entrées au journal.
• L’inf ormation est protégée si l’un des serveurs est compromis.
27.1.5 Conclusion
Des ef forts en matière de conception des systèmes ainsi que les précautions d’usage pour la sécurité demeurent nécessaires
mais toujours insuf f isants lorsqu’on considère le nombre, sans cesse, croissant des attaques.
Il nous paraît très réaliste d’envisager la détection d’intrusion avec plus de rigueur . Par détection d’intrusion , on entendra
surtout une réponse en temps réel à une attaque et non un simple constat de viol.
En ef f et , la possibilité, pour unix, de journaliser dans une machine distante est un acquis très important. Pour cela Il f audra,
alors, déterminer ce minimum d’information d’audit à conserver sur celle-ci pour pouvoir les analyser rapidement. Aussi, à
quelle f réquence raisonnable , on devrait ef f ectuer ce trans f ert de données et sur quel type de support écrire?
Également, la machine distante ne devrait , en aucun cas être accessible à l’intrus. Le seul processus d’application qui devr ait
y accéder serait le processus de transf ert des données d’audit.
Par ailleurs , les inf ormations de logs pourraient être analysées au moyen de techniques modernes comme les algorithmes
génétiques.
Bibliographie
[1] Andrew Tannenbaum :Systèmes d’exploitation pp202-211 . Dunod 1994
[2] Spasf ord : The internet worm - Cricis and Af termath , Commun.of the ACM , vol 32 pp678-687 , juin 1989.
[3] R.Morris et K. Thomson : Password security - Acase history , commun.of ACM vol 22 , pp594-597 , novembre 1979.
[4] K.Haf ner et J. Markof f : Cyberpunk , New York : Simon and shuster , 1991.
[5] B.Hebbar et al : A penetration analysis of the Michigan Terminal System , operating system review , vol 14 pp7-20 , janvier
1980.
[6] J.H Salzter etM.D Schroeder : The protection of inf ormation in computer system, Proc IEEE , vol63 pp1278 -1308 ,
septembre 1975.
[7] Robert L. Ziegler : Linux securités pp298-302 et p371. CampusPress, mai 2000.

Vous aimerez peut-être aussi