RAPPELS SUR L'INTERET DES RESEAUX INFORMATIQUES :
Ce n'est pas un scoop : Internet ne cesse de se développer.
En parallèle à cela, on s'en rend peut-être
moins compte, des réseaux de petite et moyenne taille,
qu'ils soient "fermés" (notion d'Intranet) et/ou
reliés au réseau Internet, se mettent en place
partout dans le monde. De nos jours, une grande proportion
des administrations, des établissements scolaires,
des petites et moyennes entreprises ont franchi le pas ou
s'apprêtent à le franchir pour des utilisations
diverses :
- partager les ressources informatiques.
Cela permet alors depuis chaque poste informatique, d'accéder
à l'ensemble des équipements qui peuvent
être utilisés (disques durs de forte capacité,
imprimantes, scanners, graveurs, lecteurs de CD-ROM ou
de DVD-ROM, ...) sans que celui-ci en soit équipé.
Cela permet alors d'avoir des machines de travail "légères"
et relativement peu coûteuses en concentrant les
périphériques à partager sur un serveur
dédié ou en les répartissant sur
les différents postes du réseau sans qu'il
n'y ait une machine qui soit "prédominante"
- partager des informations, des fichiers entre les
utilisateurs des différents postes raccordés.
Le temps où on se transmettait des fichiers grâce
à des disquettes est révolu. Par
le réseau, des fichiers de grande taille peuvent
transiter rapidement et simplement. On peut également
éviter de transmettre certains documents sous format
papier pour les diffuser, évitant ainsi une accumulation
de "paperasses" difficiles à classer et qui prennent
une place non négligeable. Il existe différents
moyens pour partager des informations au niveau d'un réseau
dit local : la messagerie électronique,
la mise à disposition des fichiers et informations
en question sur un serveur web
accessible depuis un navigateur d'un clic de souris, le
partage de fichiers. Cette dernière possibilité
consiste à ouvrir le disque dur de sa machine en
visibilité pour les autres utilisateurs connectés
au réseau local (avec des droits de lecture seule
pour limiter les risques de suppression de fichiers par
une autre personne ou un accès total en lecture
et écriture afin qu'un document puisse être
mis à jour par plusieurs personnes)
- partager une connexion à Internet. On
permet ainsi à tous les postes du réseau
d'avoir un accès aux ressources innombrables disponibles
sur Internet par le biais d'une
seule connexion à un fournisseur d'accès.
En général, c'est un
routeur qui est utilisé pour effectuer ce
partage. C'est un équipement qui se place sur le
réseau comme une autre machine et qui fait transiter
les informations de façon bi-directionnelle entre
le réseau local et une machine distante reliée
elle aussi à Internet sur laquelle figure un document
à échanger. Cela se fait à travers
la liaison unique (en général) qui le relie
au fournisseur d'accès (ligne RNIS, liaison spécialisée,
ADSL, câble, faisceau hertzien, ...).
L'ensemble des moyens mis en place pour offrir ces services
réseau sont aussi différents que la nature
de l'organisme qui le met en place, ses besoins, ses moyens
financiers, sa volonté d'ouvrir ou non l'accès
au réseau Internet (pas systématique), les
bâtiments utilisés, le type d'activité,
...
LA NECESSITE DE HAUTE-DISPONIBILITE :
Dans tous les cas en revanche, il semble qu'il y ait un
dénominateur commun : à
partir du moment où on prend l'habitude de travailler
en réseau, il est très difficile voire impossible
de s'en passer ! Aussi, les interruptions de
fonctionnement du réseau peuvent, à partir
du moment où la structure qui l'a mis en place est
fortement dépendante de son utilisation, s'avérer
catastrophiques et/ou sources de grosses pertes financières.
C'est pourquoi, à partir d'un certain niveau de
fonctionnement et de dépendance au réseau,
il faut mettre en place des solutions
pour pallier au maximum de sources de problèmes possibles
qui peuvent survenir sur le réseau informatique.
Pour arriver à une "tolérance
0" vis-à-vis de la panne, il existe plusieurs
aspects à prendre en considération. Tous coincident
avec une notion : il faut qu'il y ait une absence
de point unique de panne ("no single point of failure").
Cela revient à dire qu'à l'intérieur
d'un dispositif permettant de faire communiquer un équipement
A et un équipement B, il ne faut pas qu'il y ait
un point unique de passage qui, en cas de rupture, provoquerait
la coupure de la communication. Cela est valable pour tous
les éléments qui interviennent dans la communication
(de la liaison physique aux équipements sur cette
liaison, voire aux machines elles-mêmes). Les systèmes
dits de "haute-disponibilité"
sont mis en place pour pallier aux
cas de pannes mais aussi, et c'est une des plus grosses
causes d'arrêt de services dans un réseau,
pour permettre d'effectuer la maintenance
matérielle et/ou logicielle sur les éléments
constitutifs de ce réseau.
LA HAUTE-DISPONIBILITE POUR LES MACHINES DU RESEAU :
Au niveau des machines utilisées sur le réseau,
il existe un certain nombre de moyens pour permettre un
fonctionnement sans interruption :
- sécurité électrique :
tout équipement informatique de manière
générale nécessite une
alimentation électrique qui doit être
permanente et la plus
stable possible. C'est pourquoi la mise en place
d'onduleurs ou de système équivalent doit
logiquement être adoptée sur la majeure partie
de ces équipements. Il existe des onduleurs qui
ne correspondent qu'à de simples batteries et n'offrent
donc qu'une continuité du fonctionnement pendant
une durée limitée en cas de coupure électrique,
mais il existe aussi des équipements plus performants
qui proposent un système d'alimentation électrique
des équipements raccordés totalement indépendant
du système d'alimentation fourni. Ainsi, toutes
les perturbations (variations de tension, micro-coupures)
qui peuvent être rencontrées sur le "secteur"
sont gommées par ces onduleurs et les machines
ainsi sécurisées peuvent fonctionner au
mieux. Cette sécurité
élémentaire est (étrangement!)
parfois oubliée ou volontairement écartée
car elle génère un coût qui peut être
important sur des systèmes très performants.
Certaines structures estiment que cet investissement n'est
pas justifié mais les coupures électriques
(même de courte durée) sont une cause majeure
de problèmes potentiels au niveau matériel
mais aussi logiciel (un système d'exploitation
peut être fortement mis à mal à cause
d'un arrêt brutal survenu à cause d'une simple
coupure électrique
d'une demi-seconde). Même s'il n'est pas forcément
obligatoire de sécuriser électriquement
tous les postes de travail (surtout à cause du
coût que cela représente), cette
garantie doit au minimum être apportée sur
les serveurs et sur les équipements réseau
pour limiter les désagréments occasionnés.
- sécurité électrique au niveau
de l'équipement lui-même : un ordinateur
fonctionne en général avec une alimentation
unique. C'est pourquoi un dysfonctionnement sur ce transformateur
(tension continue de sortie +/- 5V et +/- 12V en général)
provoque une panne sur cette machine qui peut durer assez
longtemps (on ne dispose pas, en général,
d'alimentation de secours prête à être
mise en service pour chaque poste). Sur les machines "sensibles",
on a donc la possibilité d'utiliser
une double-alimentation. On a ainsi à tout
instant 2 sources de courant pour la machine et l'apparition
d'un problème sur l'une n'interrompt pas le fonctionnement
de la machine. En toute logique, il faut aussi éviter
de connecter ces 2 alimentations sur la même source
électrique mais cela n'est pas toujours réalisable
car cela nécessite alors un doublement du nombre
d'onduleurs...
- RAID : Redudant Arrays of Inexpensive Disks
(Assemblage Redondant de Disques Économiques).
L'idée de base de RAID est de combiner plusieurs
petits disques durs économiques en un assemblage
de façon à obtenir des performances supérieures
à celles d'un disque de grande capacité
et onéreux. Un mode de fonctionnement du RAID permet
de faire travailler de façon
redondante les disques durs d'une machine (par
paire en général). Pour cela, toute donnée
qui doit être écrite sur le disque dur est
automatiquement reproduite sur le 2eme disque associé
qui est ainsi prêt à prendre le relais à
chaque instant en cas de dysfonctionnement de son alter-ego.
- le partage de charge (ou load-balancing) :
ce mode de fonctionnement consiste à répartir
un travail entre plusieurs machines.
Ainsi, si une de ces machines devenait inutilisable, les
autres sont là pour prendre le relais.
- la reprise en cas de panne (ou fail-over) :
ce mode de fonctionnement consiste globalement à
détecter qu'une machine
(ou qu'un service fourni par cette machine) est inopérationnelle,
d'essayer de la relancer
(ou de relancer uniquement le service interrompu sur cette
machine), et si cela n'est pas possible de faire
reprendre son rôle par une autre machine
du réseau (dédiée à cela en
général).
On vient de voir qu'un certain nombre de mesures peuvent
être prises au niveau des machines qui doivent assurer
un service 24h/24, 7j/7. Toutefois, si ces services sont
prévus pour être accessibles par le
réseau, il semble évident que celui-ci
doive également permettre un
fonctionnement sans interruption.
ARCHITECTURE ET TECHNOLOGIE RESEAU ADOPTEES :
En utilisant des technologies courantes en terme de réseaux
locaux (réseau cuivre non-coaxial ou fibre optique
à 10, 100 voire 1000 Mbits/s => connexion "en
étoile" des postes sur des éléments
centraux), lorsque l'on cherche une architecture (on parle
aussi de topologie) à
adopter pour pallier à tout problème de panne,
on pourrait penser qu'il suffit de relier chaque équipement
de concentration (hub) ou de commutation (switch) du réseau
à l'ensemble des autres équipements constitutifs
du réseau (voir schéma 1).
Cette solution qui semble sans reproche comporte pourtant
des imperfections notables : le nombre de ports utilisés
sur chaque équipement uniquement pour le relier aux
autres peut rapidement devenir énorme lorsqu'on atteint
une taille et une compléxité du réseau
importantes (pour 5 switchs, cela bloque déjà
4 ports...). De plus, le nombre de chemins possibles entre
un point A et un point B est tellement important qu'il est
source de complications (il faut que ce chemin soit le plus
efficace, que tous les équipements du réseau
se mettent d'accord pour savoir par où faire transiter
les informations). Et dans un tel choix, on va se rendre
compte qu'une grande partie des liens inter-équipements
est tout simplement inutile.
|
Schéma
1 :
redondance maximum sur un réseau local
(solution qui ne sera jamais retenue)
|
 |
On trouve principalement deux topologies
qui peuvent être appliquées pour offrir une
redondance au niveau réseau.
La première consiste à utiliser 2
switchs fédérateurs sur lesquels seront
raccordés par 2 liens chacun des autres commutateurs
du réseau (voir schéma 2).
On a ainsi une forte sécurité sur les pannes
éventuelles mais l'inconvénient majeur est
la nécessité d'avoir malgré tout
un nombre important de liaisons inter-switchs qui
peut être un facteur important lorsque les bâtiments
n'offrent pas suffisamment de liaisons à travers
le précablage (n'oublions pas que les switchs peuvent
être séparés par des étages,
voire passer sous des cours, des parkings sous lesquels
on ne dispose pas toujours de plusieurs liens).
|
Schéma
2 :
redondance sur un réseau local avec 2 switchs
fédérateurs
(ici Switch1 et Switch2)
|
 |
La deuxième solution (qui peut aussi être
choisie en complément de la première citée
précédemment, un mixage des 2 topologies est
possible) consiste à mettre
en place une boucle entre les différents équipements
du réseau. En effet, à travers une boucle,
pour aller d'un point à un autre, on a toujours deux
chemins possibles à un instant "t". Dans le
cas où une coupure surviendrait dans la boucle, il
semblerait normal que tout le trafic réseau soit
redirigé par le chemin encore valide. Dans un cas
de figure mettant en scène 5 switchs (commutateurs
Ethernet) reliés en boucle, un
fonctionnement "normal"
fera transiter les informations entre une machine A et une
machine B par un chemin (en général
le plus court ou le plus rapide, voir
schéma 3) et en cas
de coupure de cette liaison "prioritaire", c'est
l'autre partie de la boucle
qui sera mise à contribution (voir
schéma 4).
|
Schéma
3 :
fonctionnement normal sur une boucle établie
à l'intérieur d'un réseau local
|
Schéma
4:
Fonctionnement de secours en cas de problème
sur la boucle |
 |
 |
Ce dispositif qui semble assez évident dans la
théorie n'est pas toujours
facile à mettre en place dans la pratique
et certaines précautions devront
être suivies :
- il faut éviter au maximum que
2 liens reliant des éléments entre eux passent
physiquement par le même chemin. Dans l'exemple,
si les liens sw1/sw5 et sw3/sw4 passent au même
endroit dans un mur d'un bâtiment et qu'un coup
de marteau piqueur malheureux soit donné juste
à cet endroit (ou qu'un rongeur ait décidé
de s'installer à proximité), on aura une
rupture totale de la boucle
et les deux parties seront totalement isolées.
L'idéal (ce n'est pas toujours simple) est que
les 2 liens de la boucle constituée empruntent
des cheminements les plus
distincts possibles afin
qu'une perturbation ne puisse pas gêner les 2.
- le fait que l'on mette en place une boucle dans le
réseau est, en soi, perturbateur car à
tout instant une information circulant sur celui-ci aurait
deux chemins possibles. S'il y avait effectivement 2 chemins
empruntés par les mêmes informations entre
les mêmes machines, cela provoquerait des doublons
dans les informations qui rendraient en fait impossible
la communication et provoquerait en quelques secondes
une saturation complète de la boucle et un blocage
potentiel des équipements qui y sont reliés.
En réalité, lorsque l'on met en place de
telles boucles dans le réseau, il est absolument
nécessaire d'utiliser du
matériel adéquat qui soit correctement configuré
pour qu'il gère lui-même, de façon
automatique et en permanence, un point de rupture de la
boucle. Ainsi, les équipements (dans notre
exemple, les switchs) communiquant entre eux et sous la
responsabilité d'un matériel décideur
(et assisté d'un secondaire en cas de problème
sur le premier) vont provoquer eux-mêmes une cassure
en fonctionnement normal (dans le schéma
3, en estimant que c'est le switch1 qui soit "décideur"
et le switch2 son secondaire, le lien sera coupé
entre sw3 et sw4 au niveau de sw4). En cas de problème
sur une partie de la boucle, les switchs feront en sorte
de rouvrir cet accès pour que les communications
puissent continuer à transiter par le réseau
(cette phase de transition prend tout de même quelques
dizaines de secondes pendant lesquelles le réseau
ne sera plus totalement opérationnel). Cette fonctionnalité
repose sur le Spanning Tree
qui, pour gérer ces effets de bouclages, est constitué
de :
- un algorithme de calcul
de la meilleure route en fonction de différents
critères tels que le nombre d'intermédiaires,
la nature des liens qui relient ces intermédiaires
- un protocole de communication
STP (pour Spanning Tree Protocol, IEEE 802.1D) qui
provoque les changements dans la topologie réseau
utilisée en fonction des conditions) permettant
de gérer ces effets de bouclage
- pour permettre un accès permanent d'un serveur
sur un tel réseau, il est de plus possible de s'orienter
vers une utilisation de 2 cartes réseau qui
seront connectées à 2 switchs différents
de cette boucle avec une liaison réellement utilisée
en fonctionnement normal et l'autre qui reste en attente
("standby", donc non active). Ainsi, si l'équipement
auquel est relié le serveur par sa liaison principale
venait à tomber en panne, la 2eme liaison prendrait
le relais en quelques secondes afin que la coupure de
service soit la plus courte possible.
Un grand nombre de technologies et notions abordées
ici brièvement (mais aussi celles qui ont été
volontairement écartées), étant particulièrement
complexes, pourront faire l'objet d'un ou de plusieurs articles
dans les prochains numéros de Rése@ux.74
tant le sujet est complexe et vaste.