A PCRE internal error occured. This might be caused by a faulty plugin
 


====== Partie 1 : Présentation Générale ======




===== 1 - Principe Technologique =====

==== Historique ====
**1956 : le premier disque dur**
* 50 disques de 24 pouces
* 10 000 dollars
{{:expose:1956.png|}}


**1984 : IDE (Integrated Drive Electronics)**

* Véritable nom est ATA, a la base conçu pour connecter un lecteur et un contrôleur directement sur le bus PC AT, puis sur un bus ISA (IBM). Aux fil des années le contrôleur est intégrer au disque, IDE devient une norme générique.
* Pas réellement de norme précise.
* 16 bits était transmis simultanément par le câble d'interface

**1986 : Westren digitale et compaq**

* premier disque dur à interface IDE de type ATA
* premier brochage 40 broches
* premier lecteur CDC Wren II 40 Mo avec un contrôleur intégrer Western qui équiper les compaq 386
* toujours pas de réelle norme

**1988-90 : création d'un standard**

* commission ANSI (American National Standards Institute) publie une norme correspondant à l'interface ATA
* regroupement de fabricants pour mettre en conformité leurs produits, afin d'éliminer les problèmes de compatibilité
* mais le standard n'est pas précis sur les commandes et les fonctions intégrer, qui sont propres aux fabricants, par exemple pour effectuer un formatage de bas niveau, il fallait par exemple télécharger sur le site web du fabricant le logiciel de formatage

**1994-aujourd'hui : les standard ATA**

* La commission établies des standard informatiques :


• ATA-1 (1988-1994);
• ATA-2 (1996, également nommée Fast-ATA, Fast-ATA-2 ou EIDE);
• ATA-3 (1997);
• ATA-4 (1998, également nommée Ultra-ATA/33);
• ATA-5 (1999 jusqu’à aujourd’hui, également nommée Ultra-ATA/66);
• ATA-6 (2000 jusqu’à aujourd’hui, également nommée Ultra-ATA/100);
• ATA-7 (2001 jusqu’à aujourd’hui, également nommée Ultra-ATA/133);
• ATA-8 (Ultra-ATA/133 ou ATA série).

{{:expose:hdd_1.png|}}

* création nappe 80 fils pour éliminer les parasites : nappes 40 broches + 40 broches de masses

{{:expose:hdd_2.png|}}

* depuis la normes ATA-5 : sélection par câble maître et esclave
{{:expose:hdd_3.png|}}


* ATA-6 permet des transfert plus efficaces des grands fichiers

* ATA-7 permet des transferts de données de l'ordre de 133 Mo/s et surtout de formater un périphériques en plusieurs secteurs logiques

<note>La plupart des lecteurs ATA offrent un taux de transfert stable maximal moyen de 60 Mo/s, alors que les nouveaux lecteurs ATA-6 sont capables de transféré 133 Mo/s, ainsi passer de 100 à 133 ne changent pas grand chose, le taux de transfert du support et bien plus importante que celui de l'interface. Les données voyagent depuis les disques magnétiques par les têtes à une vitesse inférieur à la moitié de ce taux de transfert</note>

**depuis octobre 2000**

* limite de câble à 46 cm pour 40 broches et 61 cm pour un 80 fils
* Éviter les câbles ronds qui créé des interférences et du bruit


**fin 2000 : Serial ATA**

* envoie sur le câble 1 bit à la fois : diminution de la grosseur du câble
* l'envoie de données à des vitesses supérieurs à 133 Mo/s
* Nouvelle interface à 7 broches de 1 m maximum, ne permettant la prise en charge que d'un périphériques
* Spécifications du standard :

{{:expose:hdd_4.png|}}

* AHCI (Advanced Host Controller Interface) interface logicielle étendue.
AHCI définit une interface normalisée à haute performance pour les pilotes et les systèmes d’exploitation pour leur permettre de découvrir et de mettre en oeuvre des fonctionnalités SATA avancées telles que la gestion des files d’attente de commandes (command queuing ou CQ), le branchement à chaud et la gestion de l’énergie. Pilotes AHCI ne sont pas inclus par défaut dans Windows XP car le développement est ultérieur à la sortie de XP. Vous pouvez régler l’adaptateur hôte SATA en mode de compatibilité ATA (AHCI désactivé) dans le setup du BIOS mais vous risqueriez de manquer certaines performances proposées par le SATA II avancé.


==== Principe de fonctionnement ====


{{:expose:hdd_5.png|}}

* 3 grands sous ensembles :
- plateaux en aluminium (ou en verre pour les plus récents)
- bloc bras/têtes
- contrôleur de disaue

=== plateaux ===

* soumis aux facteurs de formes : 3.5 ou 2.5 pouces (existe aussi en 5.25 et 1.8)
* Chaque face du disque est composée de pistes concentriques sur lesquelles sont stockées les données. Le nombre de pistes par plateau varie selon les modèles : d'une dizaine à plus de mille. Les pistes sont numérotées, en partant de zéro, de l'extérieur vers l'intérieur du disque. Chaque piste est divisé en secteurs.

{{:expose:hdd_6.png|}}


=== bloc bras/têtes ===

* Le second élément physique de base d'un disque dur est constitué du bloc bras/tête(s) de lecture-écriture. Le procédé d'accès aux données est similaire à celui d'un tourne-disque : un moteur fait tourner les plateaux à une vitesse constante et les têtes (au nombre de deux par plateaux) viennent se positionner au dessus de la piste à lire ou à écrire. Les plateaux n'étant pas constitués d'un microsillon comme sur les disques vinyl, un second moteur est nécéssaire pour déplacer les bras. Ces derniers sont solidaires d'un même axe ce qui implique le déplacement de toutes les têtes simultanèment. Ainsi, à un instant donné, toutes les pistes situées sous les têtes portent le même numéro. C'est ce que l'on appelle un cylindre : il s'agit en fait du cylindre virtuel passant par toutes les pistes de même numéro. Cette notion de cylindre a un effet non négligeable : si un fichier ne peut être écrit sur une même piste, il sera intéressant qu'il se trouve sur un même cylindre. En effet, l'accès aux données de ce fichier sera plus rapide puisqu'il n'y aura pas de mouvement des bras.

Une autre différence importante avec le tourne-disque est dû à la vitesse de rotation des plateaux. Celle-ci étant de l'ordre de plusieurs milliers de tours par minute (3600 à 7200 tpm), la tête ne doit en aucun cas être en contact avec le plateau sous peine d'échauffement et de destruction du revêtement magnétique (crash). Par conséquent, les têtes flottent sur un coussin d'air provoqué par la rotation des disques (le vent créé est de l'ordre de 250km/h). La hauteur de vol est d'environ 0,2 microns alors qu'une simple empreinte digitale mesure plus de 0,5 microns.

=== Principe de lecture/écriture ===

* Deux de types de têtes :
- inductive
- double

== Tête inductive ==

* technologie classique
* C'est la même tête qui se charge de lire et écrire
* La tête est composée d'une bobine magnétique enroulée sur un entrefer. Lorsque le bobinage est sous tension, la tête inductive produit un champ magnétique. Ce champ a pour effet d'orienter les particules magnétiques situées dans l'entrefer.
Lors de l'écriture, ce sont les particules aimantées qui produisent un champ magnétique et, au passage de la tête, un courant induit est créé dans le bobinage. Ensuite, le système interprêtera les résultats en fonction du sens du courant.
L'inconvénient de cette tête inductive a lieu lors de la lecture. En effet, le positionnement au dessus de la piste doit être très précis et la charge ne doit pas passer trop vite au dessous de la tête.

== Tête double ==

* cette technologie beaucoup plus récente utilise, comme son nom l'indique, deux têtes : l'une pour l'écriture -identique à la précédente- et l'autre pour la lecture qui est magnétorésistive. Cette dernière exploite la propriété de certains alliages dont la résistance électrique varie avec le champ magnétique auquel ils sont soumis. Cette technologie à l'avantage d'un positionnement beaucoup plus aisé de la tête de lecture et la vitesse de passage de la charge n'a que peu d'importance.
===== 2 - Les modes d'enregistrements =====

Les modes d'enregistrement principalement utilisés sur disques magnétiques sont au nombre de quatre :


FM (Frequency Modulation) - Modulation de Fréquence : cette technique d'enregistrement est plus connue sous l'appellation de simple densité et est la plus ancienne. Le principe en est simple, il y a polarisation dans un sens à chaque signal d'horloge et à chaque information de type 1 logique. À la lecture, il y aura donc apparition de deux signaux pour le 1 et d'un seul pour le zéro,

MFM (Modified Frequency Modulation) - Modulation de Fréquence Modifiée: cette technique, plus récente est plus connue sous le nom de double densité. Il y a polarisation au milieu du temps de base, à chaque information de type 1 et si deux 0 se suivent il y a polarisation au signal d'horloge pour les séparer,

M2FM (Modified MFM) - Modulation de Fréquence Modifiée 2 fois : ce codage réduit encore le nombre des transitions à l'enregistrement des informations. Les débuts des temps de base sont enregistrés uniquement en cas de 0 suivant des cellules sans transition.

RLL (Run Lenght Limited) - Code à Longueur Limitée) : c'est à ce jour le système de codage le plus efficace. Il permet d'augmenter de 50 %, par rapport au MFM, la densité d'informations sans augmenter la densité des transitions. Il existe également un mode ARLL (Advanced RLL). Actuellement RLL est le plus répandu.

PRML (partial Response Maximum Likelihood) [1990] est une technique de lecture qui améliore la qualité du signal en réduisant l'interférence signal-bruit, ce qui autorise des taux de transfert élevés. La méthode PRML autorise une lecture plus rapide que la méthode classique de détection de pics (Peak Detection Read Channel) en éliminant la plupart des parasites et bruits captés par la tête de lecture. Le signal est lu comme un signal analogique puis converti en numérique.
===== 3 - Les formats d'enregistrements =====

En plus des données à mémoriser, les pistes et les secteur d'un disque doivent contenir les informations necessaires au système pour exploiter ces données.
Certaines pistes ou certains secteurs de disque sont ainsi réservé au système pour repérer quels sont les secteurs disponible pouvant enregistrer des informations, quels fichier sont présent sur le média et quels sont leurs caractéristiques.
Chaque secteurs et lui même porteur de certaines informations, un secteurs pourra ainsi fournir les éléments suivant:
*Intervalles de secteurs
Il sert de marque de **début** et de **fin** de secteur
*Marqueur de label
Il annonce le Label.
*Label du secteur
Cette zone permet de reconnaître l’adresse de l’information recherchée. Le secteur
désiré est ainsi parfaitement localisé sur le disque.
*Le code de détection d'erreur
Produit un algorithme particulier, il permet d’assurer le contrôle des labels et des données.
Deux octets CRC sont calculés par matériel au moment de
l'écriture et sont écrits à la suite des données. À la lecture, les octets CRC des données lues sont calculés
(également par matériel) et comparés à ceux du disque.
*Synchronisateur final
Cette zone permet le passages de la fonction lecture d'adresse a celle d'écriture d'informations et transmet au contrôleur des informations permettant de synchroniser les "top horloges" afin d'assurer un bon découpages de la zone enregistrée, permettant de reconnaître ainsi les données codées sur le disques.
*gap
Un gap est un espace entre les champs. Il sert de zone tampon séparant deux champs qui
peuvent être écrits séparément. La dimension du gap influence l'intégrité des enregistrements
: si le gap est trop court, il y a danger que l'écriture dans un champ de données déborde
dans le champ d'identification suivant si le disque tourne trop vite. En revanche, des gaps
trop longs diminuent la capacité du disque.
*Marqueur de données
*Zone de données


===== 4 - Capacité de Stockage =====

==== Capacité d'un disque dur ====
A chaque secteur de disque sont associées des information autres que les données, il convient donc de faire la distinction entre **capacité théorique** et **capacité pratique** d'un disque.
Pour atteindre les informations stocké sur le disque dur il est nécessaire de connaitre certaines valeurs qui sont:
**Cylindre**, **tête**, **secteur**
C'est la **géométrie du disque**

On rencontre donc historiquement différentes techniques d'adressages :

*<fc #0000FF>CHS ou mode normal</fc>
Le mode CHS (Cylinder Head Sector), ou mode normal dans le BIOS Setup est le plus ancien.
L'interruption 13h du Bios est chargée de gérer les accés disques.
Le passage des paramètres CHS à cette interruption ce fait sur 24 bits, qui fixe les limites de l'adressage :
>10 bits pour le numéro du cylindre | soit 1024 cylindres (2<sup>10</sup>)
>8 bits pour la tête de lecture | soit 256 têtes (2<sup>8</sup>)
>6 bits pour le nombres de secteur | soit 64 secteurs (2<sup>6</sup>) {en réalité 63 car le secteur 0 n'est pas utilisé}
-- soit (1024*256*63) 16.515.072 secteurs différents, Chaques secteurs étant d'une capacité de 512 octets, ceci limite la capacité maximum à 8.4Go
La faible quantité de bit, alloué au repérage des valeurs CHS, limite la capacité d'adressage du BIOS. Le BIOS utilise donc une **géométrie physique**.

*<fc #0000FF>ECHS(Extend CHS) ou mode large</fc>
Dans le CHS étendue, le contrôleur disque effectue une conversion (BIOS Translation) qui lui permet de gérer des paramètres supérieur à la limite des 1024 cylindre.
Le format IDE/ATA reconnait en effet 65.536 cylindres contre 1024 pour le BIOS, par contre le BIOS (256 têtes) reconnait plus de tête que le format IDE/ATA (16 têtes).
Ce mode a donc pour objectif de convertir les valeur d'adressage du format ATA/IDE en valeur reconnue par le BIOS, pour cela on va diviser le nombre de cylindre physique par un coefficient (en général 2.4.8.16), et multiplier le nombre de tête par ce même coefficient, on passe donc d'une **géométrie logique** reconnue par IDE à une **géométrie physique** reconnue par le BIOS

*<fc #0000FF>mode LBA</fc>
Avec le mode LBA (Logical Block Addressing), un secteur n'est plus identifié par une valeur CHS mais par un numéro de secteur "relatif" sur le disque, le controleur de disque étant chargé de retrouver le secteur physique correspondant.
Un BIOS reconnaissant le mode LBA va maintenir un accés HCS au disque dur, via l'Interuption 13h, en convertissant les valeurs CHS codées sur 24 bits, en adresse "lin"aires" LBA sur 28,32,48 bits.

Ainsi en **ATA-2**, exploitant le mode LBA28, chaque secteur est repéré sur 28 bits et il est donc possible d'adresser 2<sup>28</sup> secteurs différents. sachant que chaque secteur contient toujours 512 octets, la capacité maximum du disque est limité a 137 Go.
**SCSI** utilise en principe un adressage LBA32, la capacité maximum du disque dur est donc limité à 2<sup>32</sup> secteurs de 512 octets soit environs 2To.
Avec **l'ATA-6**, l'adressage logique est de 48 bits(Long LBA ou LBA48), soit environs 128Po.


==== Capacité utilisables par les systèmes : limite d'adressage bios ====

*La table de partitionnement
Une table de partitionnement est stockée sur un disque dur et contient les informations nécessaires pour diviser un disque dur en partitions. Il existe plusieurs modèles de table de partitionnement comme celle contenue dans le MBR (Master Boot Record) ou le GPT (GUID Partition Table).

*Le MBR (Master Boot Record)
Le MBR (Master Boot Record) est le premier secteur d’un disque dur.

Si la liste de démarrage de votre PC commence par un disque dur, le BIOS va donc exécuter le MBR (Master Boot Record) de ce disque dur. Le MBR contient la table de partitions et une routine d’amorçage permettant de charger le système d’exploitation ou le chargeur d’amorçage (bootloader).

Le MBR est compatible avec tous les systèmes d’exploitation 32bits et 64 bits. Le MBR possède néanmoins des limitations, devenues de sérieux inconvénients à l’heure d’aujourd’hui :

4 partitions maximum
Taille d’une partition limitée à 2,2 To (2 200Go)
Impossible de démarrer un disque dur MBR avec un système UEFI
Les limitations actuelles du MBR ont poussé les fabricants à se tourner vers une nouvelle table de partitionnement plus performante, introduite par Intel : le GPT. Le GPT est d’ailleurs le standard de l’UEFI, le remplaçant du BIOS.

* Le GPT (GUID Partition Table)
Le GPT (GUID Partition Table) est un nouveau standard pour décrire la table de partitionnement d’un disque dur, il est amené à remplacer le MBR à cause des limitations de ce dernier qui limite la taille d’une partition à 2,2 To.

GPT utilise l'adressage logique des blocs (LBA) et non l'adressage historique CHS (cylinder-head-sector).

Le GPT va chercher sur le disque un bootloader qui permet le démarrage du système.

<note tip>Voir mik uefi gpt</note>


===== 5 - Principales caractéristique des disques =====

==== SMART ====

* S.M.A.R.T : Le principe est simple: chaque fois que le disque dur va rencontrer un problème, il ne va pas vous le dire, mais il va mettre à jour sa liste d'incidents. On appelle ces informations les informations SMART.
Ces informations donnent une indication chiffrée de l'état d'un disque dur, à comparer aux seuils d'alertes définis par votre constructeur.

{{:cours:activite1:smart_2.png|}}

Les éléments en rouge requièrent votre attention.
Il faut savoir que quand le disque dur est en parfait état, les valeurs SMART sont à 100.
Si on prend la 1ère ligne RAW READ ERROR, on s'aperçoit que ce disque dur a une valeur de 60, ce qui est donc médiocre. (Il est descendu régulièrement de 100 à 60). Ce n'est néanmoins pas alarmant, car le constructeur a mis un palier d'alerte à 25. J'en conclus donc que quand mon disque dur s'approchera de ce palier (vers 35-40), il sera temps de prendre des dispositions. La TEC m'indique la date estimée de panne. Ici, on considère que le disque dur tombera en panne en 2038... en fait, en 2024 car un autre critère est plus alarmant (ligne 05).
La valeur WORST indique la pire valeur enregistrée pour ce critère jusqu'à maintenant.

<note>**MTBF**
Le temps moyen entre pannes, expression souvent désignée par son sigle anglais MTBF (mean time between failures), est une des valeurs qui indiquent la fiabilité d'un composant d'un produit ou d'un système. C'est la moyenne arithmétique du temps entre les pannes d'un système réparable.
L'expression anglaise mean time between failures est parfois traduite à tort en français par « moyenne des temps de bon fonctionnement ». Mais le temps moyen entre deux défaillances intègre dans son calcul les temps de réparation et de maintenance, alors que la moyenne des temps de bon fonctionnement ne les intègre pas.</note>

<note tip>**Self-Monitoring, Analysis and Reporting Technology**
Les disques durs peuvent souffrir de deux types de défaillances :

les défaillances prévisibles, qui surviennent suite à la dégradation lente de certains composants, en particulier à cause de l’usure et du vieillissement des pièces mécaniques ;
les défaillances imprévisibles, qui peuvent survenir soudainement, comme un composant électrique qui grille.

Un système de surveillance peut détecter le premier type de défaillance, tout comme la jauge de température du tableau de bord d’une voiture peut prévenir le conducteur - avant que de graves dégâts n’apparaissent - que le moteur a commencé à surchauffer.

Les pannes mécaniques, qui sont des défaillances prévisibles, représentent 60 % des pannes de disque1. Le but du système S.M.A.R.T. est de prévenir l’utilisateur ou l’administrateur système de l’imminence d’une panne de disque alors qu’il reste encore du temps pour agir - comme par exemple copier les données sur un disque de remplacement. Environ 30 % des défaillances peuvent être prévues par le système S.M.A.R.T2.</note>


==== Les temps !!! ====

=== Temps d'accés moyen réel ===

Si vous comparez le temps d'accès moyen fourni par les constructeurs de disques durs, et celui fourni par les bancs d'essai, vous constaterez une différence de 30% à 40%. Les constructeurs ne fournissent que le temps moyen de déplacement des têtes de lecture, pas de la lecture d'information. On définit ainsi le temps d'accès moyen réel :

- Temps d'accès moyen (Tam)
- Temps de latence (Tl)
- Temps d'accès moyen réel (Tamr)

- Tamr = Tam + Tl

Par exemple, pour la série de disques durs IBM GXP 75, le temps accès moyen réel vaut :

- Tam = 8,5
- Tl = 4,16
- Tamr = 8,5 + 4,16 = 12,66 ms

Si vous disposez de plusieurs partitions sur votre disque dur, le Tamr sera un peu plus petit, puisque chaque partition n'utilise qu'une partie du disque dur.

=== Importance du temps d'accés ===


Plus le temps d'accès est petit, plus les performances globales d'un disque dur sont bonnes. Tout le monde sait ça. Mais pourquoi est-ce vrai ? En écrivant cela, je ne pense pas aux cas particuliers des serveurs de fichiers, mais aux ordinateurs utilisant des applications courantes, comme l'internet, le traitement de texte, le dessin, ...

Prenons 2 disques aux caractéristiques suivantes :

disque 1 :
* débit maximum : 20 Mo/s
* temps d'accès moyen : 9 ms

disque 2 :
* débit maximum : 16 Mo/s
* temps d'accès moyen : 6 ms

A présent, faisons lire à chacun de ces disques un fichier de 100 Mo réparti en 1000 parties sur l'ensemble du disque dur. La question est : à quelle vitesse chacun des disques va lire ce fichier ?

Disque 1 :
temps de lecture en débit : 100 / 20 = 5 secondes
temps de lecture en accès : 1000 * 9 = 9 secondes
total = 14 secondes
Débit moyen réel : 100 / 14 = 7.14 Mo/s
Rendement du disque : 7,14 / 20 : 35,7 %

Disque 2 :
temps de lecture en débit : 100 / 16 = 6 secondes
temps de lecture en accès : 1000 * 6 = 6 secondes
total = 12 secondes
Débit moyen réel : 100 / 12 = 8,33 Mo/s
Rendement du disque : 8,33 / 16 : 52 %

On peut résumer le résultat de notre comparaison par :
Plus le temps d'accès moyen est petit, plus la différence entre le débit maximum d'un disque et son débit moyen de travail est faible.


Or, une des caractéristiques des disques SCSI est justement de disposer d'un très bon temps d'accès en comparaison aux disques IDE.

Toutefois, il ne faut pas sous-estimer l'importance du débit. Mais dans le temps global que met un disque dur à fournir une information, le temps d'accès devient de plus en plus important car il n'a progressé que faiblement comparé aux débits qui ont été multipliés par quatre en trois ans.

Remarque :
Bien sûr, dans la réalité un fichier de 100 Mo est rarement réparti en 1000 parties. C'est juste aux fins de la démonstration et j'aurais tout aussi bien pu prendre 1000 fichiers de 100 Ko chacun.

type d'interface : esdi, ide, scsi, sas, serial ata, fibre channel, usb

http://www.atpinc.com/technology-NCQ_TRIM.php


=== La vitesse de transfert ou taux de transfert : ===
C’est la vitesse à laquelle les informations transitent du média
à l’ordinateur ou inversement. Mesurée en MBps, en Ko ou parfois en Mo par seconde, elle dépend du
mode d’enregistrement et du type de contrôleur. Elle est bien entendu influencée par la vitesse de rotation
du plateau, car plus le disque tourne vite et plus les informations défilent rapidement sous les têtes de
lecture. L’amélioration des technologies permet d’atteindre, actuellement, le 16 Mo/s et on envisage déjà
de porter aux alentour de
l’an 2 000, ce taux de transfert à 32 Mo/s.

=== Le facteur d’entrelacement (interleave) : ===
Les disques durs sont parfois trop rapides pour les possibilités de
certains ordinateurs. Il est alors nécessaire de ralentir la vitesse de transfert entre média et ordinateur.
C’est pourquoi les données ne sont pas toujours écrites de manière continue mais avec un facteur
d’entrelacement. En effet, si on lit le secteur 1 et que le système doive attendre un peu avant de lire le
secteur 2 – alors que le disque tourne – il est préférable de ne pas placer ce secteur immédiatement après
le 1 mais à une certaine distance (3 à 9 secteurs), variant en fonction du système.


===== 6 - Les contrôleurs ou interfaces disques =====

* Ensemble électronique
* Permettant de piloter les moteurs de rotation et de déplacement des têtes
* Interpréter les signaux électriques reçues en bits
* Sur les premiers disques cette carte était indépendante

Aujourd'hui, il ne reste plus que 2 grandes familles de disques durs : les IDE et les SCSI. Mais contrairement à ce qu'on pourrait croire, ce qui les différencie le plus ce n'est ni leur contrôleur, ni leur mécanique, mais leur interface.

== Les contrôleurs IDE : ==

C'est le standard de fait. Apparu au début des années 1990, il existe aujourd'hui sur tout ordinateur que vous achetez. Destiné au marché non professionnel, il est peu onéreux et les périphériques qui s'y connectent restent dans des gammes de prix abordables par le grand public.

Bien que souffrant de limitations et de faiblesses qui le rendent inintéressant au marché professionnel :

- Le nombre maximum de périphériques pouvant être connectés à un contrôleur IDE est 4.
- Le contrôleur IDE ne sait gérer qu'une faible quantité de commandes simultanées. Pour un ordinateur personnel c'est largement suffisant, pour un serveur professionnel, c'est handicapant.
- La taille d'une nappe ne peut excéder 46 cm

Il offre :

- Des performances dans le débit des données équivalant à ce qui ce fait de mieux. Ce qui est très intéressant pour la vidéo ou le son.
- Depuis 1997, il dispose de la technologie CRC, permettant le contrôle et la correction d'erreur assurant une parfaite intégrité des informations devant être lues sur un disque dur (pour l'écriture la correction est assurée par l'électronique du disque, pas du contrôleur).

== Le contrôleur SCSI : ==

Plus ancien que le contrôleur IDE, il a su évoluer pour offrir des performances et des fonctionnalités qui en font un choix idéal pour des applications multitâches fonctionnant sur des machines de type serveur.

- On peut connecter de 8 à 16 périphériques selon le modèle.
- Est particulièrement performant dans la gestion de nombreuses commandes simultanées.
- Certains modèles permettent de disposer d'une taille de câble de 3 mètres.

Remarque :

Un serveur est un ordinateur destiné à centraliser la gestion de certaines tâches : gestion des fichiers, des applications, des imprimantes, etc... Un serveur est généralement une machine puissante disposant d'une grande quantité de disques et de mémoires.

Remarque :
Concernant les parties mécaniques des disques durs IDE et SCSI, il existe bien sûr une importante différence de performances entre ces deux types de disque dur, mais cette différence est artificiellement entretenue par les constructeurs en destinant les disques durs SCSI au marché professionnel. Techniquement parlant, il serait tout à fait possible d'utiliser la partie mécanique des disques durs SCSI pour un disque dur IDE. Bien sûr, un tel disque dur IDE verrait son prix s'approcher de ceux des SCSI.


** NCQ **

La technique NCQ (Native Command Queuing) est conçu à la base pour les contrôleurs SCSI. Elle permet un gain de performance lors des requêtes d' E/S.

{{:expose:hdd_7.png|}}

Cette technique est maintenant généralisé sur toues les cartes contrôleur.


<note tip>L’appellation « Contrôleur de disque » est souvent employée par approximation en remplacement de « Contrôleur ATA » ou « Contrôleur SCSI ». « Contrôleur de disque » est en fait une appellation générique qui convient également à d'autres types de périphériques ou matériels de stockage : disque dur donc, mais aussi lecteur de CD, dérouleur de bande magnétique, scanner, etc.</note>

===== 7 - Disque durs externes, extractibles ou amovibles =====

*Disques dur Externes
C'est en fait un disque dur << classique >> connecté à l'esterieur de l'unité centrale par le biais d'un port USB, FireWire ou réseau. On peut faire une distainction, selon le poids et l'encombrement, entre un disque dur etenr "de bureau" et un disque dure externe "portables".
Leur capacité varie entre 40Go et 2To ( enréalité 4 disque de 500 Go). Ils sont généralement moins rapides que les disques intégrés car ralentis par leur intreface USB.
Ils offrent généralement des possbilités de mise en RAID(0, 1, ou 5).

*Disques dus Extractibles
Il est également un disque dur clasique dans sa technologie, mais qui est contenu dans un boitier (rack) amovible. Ce boitier est en principe résistant aux chocs ce qui permet de le transporter sans problèe et sa connexion se fait sur la nappe du contrôleur de disque dur traditionnelle.
Ce disque extatible peut être selon les systemes, extrait ou connecté à chaud (hot plug).

*Disques dur Amovibles
Ce terme est aussi employé pour désigner d'autres types de médias tels que les disques pouvant être connecé sur les ports USB ou FireWire..
===== 8 - Les technologies RAID =====

Pour assurer la sauvegarde des informations, on peut recopier régulièrement le contenu du disque dur sur
une bande, une cartouche DAT… en utilisant des programmes de sauvegarde (backup). Cependant en cas
d’accident sur un disque dur on ne peut alors récupérer (restore) que les données précédemment sauvées
et la procédure de récupération peut être relativement longue.

Dans certains environnements où on utilise des serveurs de données qui sont sans arrêt sollicités et mis à
jour (ventes par correspondance, assurances, banques…) il convient de trouver d’autres solutions. C’est le
rôle de la technologie RAID (Redundant Array of Inexpensive Disks) qui s’oppose à la technique dite SLED
(Single Large Expensive Drive) consistant à n’utiliser qu’un grand disque et des sauvegardes classiques.

La technologie RAID consiste à employer plusieurs disques (une grappe), de capacité identique ou non
selon le cas ; afin d’assurer la répartition des données sur des médias physiques distincts. Compte tenu de
l’évolution des technologies et de la baisse des coûts, le I (Inexpensive) du RAID prend plutôt aujourd’hui
la signification de Independant. Selon le niveau de sécurité envisagé plusieurs niveaux de RAID peuvent
être utilisés, notés de RAID-0 à RAID-5 voire RAID-6 selon certains.

====== PARTIE 2 : Dossier technique ======

la mise en place d'une infrastructure matérielle spécialisée, généralement en se basant sur de la redondance matérielle. Est alors créé un cluster de haute-disponibilité (par opposition à un cluster de calcul) : une grappe d'ordinateurs dont le but est d'assurer un service en évitant au maximum les indisponibilité.

Cette capacité existe pour tout type d'équipements réseau: du serveur au routeur en passant par les pare-feu et les commutateurs réseau (switch). Le basculement intervient généralement sans action humaine et même bien souvent sans aucun message d'alerte. Le basculement est conçu pour être totalement transparent.

Les concepteurs de systèmes prévoient généralement cette possibilité dans les serveurs ou les réseaux qui nécessitent une disponibilité permanente (HA=High Availability). Dans certains cas, le basculement automatique n'est pas souhaité et le basculement requiert une action humaine ; c'est ce que l'on appelle automatisation avec approbation humaine.

Il existe deux modes principaux de basculement :

actif/actif qui s'apparente plus à de l'équilibrage de charge (load-balancing)et le mode classique couramment répandu, actif/passif où l'équipement secondaire (passif) est en mode veille tant que l'équipement primaire (actif) ne rencontre aucun problème.


Nous utiliserons le principe actif-passif, cette solution nous semble la plus judicieuse à mettre en œuvre, car elle permet une décentralisation du système d'informations, avec l'avantage de la haute disponibilité en cas par exemple de panne du serveur primaire ou de feu.

{{:expose:drbd_2.png|}}

Grâce à la transformation de la couche application permettant le transport sur le réseaux via TCP/IP. La sauvegarde libre distante devient possible possible.

{{:expose:haiscsi-diagram.jpg|}}

Ainsi le protocole ISCSI utilise l’architecture client/serveur, mais possède sa propre terminologie :

le client est appelé " initiator "
le serveur est appelé " target "

Lorsque l’initiator souhaite établir une session TCP avec la target, il a besoin de connaître le port TCP de la target. L’association (adresse IP, port TCP) est appelé un " portal ". Il y a donc un portal sur l’initiator et la target. Le port par défaut sur la target est le 3260. Notons qu’un initiator peut établir plusieurs connexions TCP avec la même cible. L’ensemble de ces connexions définit une " session iSCSI ".

Lorsque l’initiator est activé, il peut découvrir automatiquement les targets associées à une adresse IP donnée. Ce processus est appelé auto-découverte (auto-discovery). Le standard iSCSI définit trois modes de découverte :

Le mode SendTargets qui est réalisé à la demande de l’initiator et qui utilise une commande native du protocole iSCSI pour cela.

Le mode SLP (Service Location Protocol) – aussi utilisé par CUPS pour annoncer ses imprimantes par exemple - qui est utilisé par la machine cible pour annoncer sur le réseau la liste des ressources disponibles. L’initiator peut aussi émettre une requête SLP en unicast pour récupérer ces informations.

Le mode iSNS (Internet Storage Name Service) qui est une sorte de service DNS pour le monde du stockage. iSNS n’est pris en charge que dans les environnements Windows iSCSI. iSNS offre la même fonction que le service SNS (Simple Name Server) dans un fabric Fibre Channel – recherche, gestion et configuration automatisées des périphériques iSCSI. Grâce à ce service, il n’est plus nécessaire de configurer manuellement chaque système de stockage à partir de sa propre liste d’initiateurs et de cibles.

À l’heure actuelle, seul le mode SendTargets est implémenté sur Linux. Il peut être résumé ainsi :

L’initiator connaît (via un fichier de configuration) la liste des targets.
Il effectue alors des requêtes de découverte (SendTargets) ;
Chaque target iSCSI retourne les noms des cibles disponibles au driver ;
Le driver essaye de se connecter et reçoit les ID des cibles ;
Le driver iSCSI demande des infos pour chaque périphérique ;
Puis, il crée une table des périphériques disponibles ;
Les périphériques sont alors montables et utilisables.

Afin de créer une typologie de haute disponibilité, il faut allier plusieurs technologie:

Le RAID pour la redondance de disque : RAID 5

DRBD pour le basculement automatique en cas de crash du primaire

ISCI pour le transport des données

et enfin Pacemaker pour le basculement des adresses IP.

Dans la démo suivante nous présenterons DRBD.











====== PARTIE 3 : Démonstration ======

==== Démo ====


=== Introduction ===
Cette démo consiste à présenté un système de fichier distribué entre deux serveurs sous debian, permettant la réplication de périphériques de bloc (disques, partitions, volumes logiques etc…) entre des serveurs.

=== DRBD ===
Pour cela, nous utiliseront drbd.

DRBD ajoute une couche logique de périphériques de bloc (/dev/drbdX, ou X est le numéro de périphérique mineur) au-dessus de la couche logique locale des périphériques de bloc existante sur les nœuds du cluster participants. Les écritures sur le nœud primaire sont transférés sur le périphérique de bloc de bas niveau et sont simultanéments propagées au nœud secondaire. Le nœud secondaire transfère ensuite les données à son périphérique de bloc de bas niveau correspondant. Toutes les lectures sont effectuées localement.
{{http://upload.wikimedia.org/wikipedia/commons/thumb/4/47/Drbd-arch.png/800px-Drbd-arch.png?}}

== Architecture ==
DRBD se décompose en deux parties: le module noyau d'une part, et les outils d'administration et autres scripts d'autre part.

*Le module Noyau
La fonctionnalité principale de DRBD est implémentée par un module noyau. Plus précisément, DRBD est un driver pour un périphérique virtuel de type bloc; de fait, DRBD se situe plutôt bas dans la pile d'entrée/sortie du système, ce qui le rend très flexible et transparent.

*Les outils en espace utilisateur
La communication avec le module noyau de DRBD se fait via des outils en espace utilisateur. Ces outils sont les suivants:
- drbdadm l'outil d'administration de haut niveau de DRBD. Il récupère les informations depuis le fichier de configuration /etc/drbd.conf. Il sert d'interface pour drbdasetup et drbdmeta. Un mode "dry-run" permet d'afficher les commandes à destination de ces programmes.
- drbdsetup est le programme qui permet aux utilisateurs de configurer le module DRBD après son chargement. C'est un outil d'assez bas niveau, auquel toutes les options doivent-être passées par la ligne de commande, ce qui le rend à la fois plus flexible, au prix d'une difficulté d'utilisation.
- drbdmeta est un programme qui permet à l'utilisateur de créer, sauvegarder, restaurer et modifier les méta-données des structures de données de DRBD.

=== La pratique ===

Nous choisissons ici de faire le drbd sur du raid 5

== Configuration des VM ==
Installer débian (ou faire 2 clones d'un modèle "propre")
Pour plus de compréhension, installer une machine windows
Installer les paquet mdadm drbd8-utils samba

== Mise en place du raid5 ==
*Détection des disques
Si vous avez ajouté les disque alors que votre vm est allumé, il se peut que les disques ne soit pas détecté automatiquement, dans ce cas nous ferrons ces commandes suivante pour les rendre visibles.
>Tout d'abord faites un "lspci" et repéré la ligne "SCSI ....", retenez l'ID de la ligne ex :"00:10.0"
<code>cd /sys/class/scsi_host/ && ls -l</code>
regarder à quel host corespond l'ID trouvé précédemment, retenir le "hostX"
<code>cd hostX && echo "- - - " > scan</code>
regarder dans dmesg pour voir si la détection des disques s'est bien effectuée

*Création du raid5
selon le nombre de disque (ici 3) et les nom des disques (ici sdb/sdc/sdd)
<code>mdadm --create --verbose /dev/md0 --level=raid5 --raid-devices=3 /dev/sd[bcd]</code>

*Vérification de la mise en place du raid5
Pour voir le détail de l'avancement :
<code>watch -n1 'cat /proc/mdstat'</code>

Pour voir le détail du raid :
<code>mdadm --detail /dev/md0</code>

== Mise en place du DRBD ==

*Hostname
Changer le Hostname si ceux ci sont pareil
<code>nano /etc/hostname</code>
*Configuration DRBD
-<fc #FF0000>A faire sur les 2 serveurs</fc>
<code>modprobe drbd</code>
<code>cd /etc/drbd.d/ && ls</code>
Vous devez voir le fichier de configuration "global....."
Vous allez créer un fichier "cequevousvoulez.res"
Editez ensuite le fichier *.res
<code>
resource data {
protocol C;
net {
cram-hmac-alg sha1; # algorithme permettant l'authentification entre node
shared-secret "sync"; # le secret partagé pour l'authentification
}
on Deb_S1 { #Mettre le Hostname correspondant
device /dev/drbd0; # un block device généré par drbd dans /dev
disk /dev/md0; # le block device de mon raid5
address 192.168.241.128:7788; # l'adresse IP du node 1 et le port d'écoute entre les noeuds
meta-disk internal; # on active le stockage des meta-data sur le disque
}
on Deb_S2 {
device /dev/drbd0;
disk /dev/md0;
address 192.168.241.135:7788;
meta-disk internal;
}
}
</code>

<code>dd if=/dev/zero of=/dev/md0 bs=1M</code>

<code>drbdadm create-md data </code>

<code>drbdadm up data</code>

-<fc #FF0000>Sur le Serveur 1</fc>

<code>drbdadm -- --overwrite-data-of-peer primary data</code>

<code>watch cat /proc/drbd</code>

Pour modifier la vitesse de syncronisation:
>Editez le fichier "global[...].conf"
>Ajouter "rate 1G;" dans la fonction "syncer"
>Il suffit maintenant de mettre a jour la configuration en faisant
<code>drbdadm adjust data</code>

Une fois la synchronisation fini, on créer le FS
<code>mkfs.ext3 /dev/drbd0</code>

Et on monte notre DRBD
<code>mount /dev/drbd0 /mnt/drbd</code>
Si /mnt/drbd n'est pas créé, faire :
<code>mkdir /mnt/drbd && mount /dev/drbd0 /mnt/drbd</code>

Pour voir le status de notre DRBD:
<code>drbd-overview</code>
ou en plus détaillé
<code>/etc/init.d/drbd status
service drbd status</code>


== Test du DRBD ==
-<fc #FF0000>Sur le Serveur 1</fc>
Créer un fichier et écrire quelques chose dedans
Couper la VM
-<fc #FF0000>Sur le Serveur 2</fc>
passer le serveur 2 en primaire
<code>drbdadm primary data</code>
Et monter notre DRBD
<code>mount /dev/drbd0 /mnt/drbd</code>
Si /mnt/drbd n'est pas créé, faire :
<code>mkdir /mnt/drbd && mount /dev/drbd0 /mnt/drbd</code>

Vérifier l'existence du fichier:
<code>cd /mnt/drbd && ls -l</code>
<code>cat "LeNomDuFichier"</code>

== Pour aller plus loin ==
Ce systeme pour être déployé en entreprise et optimiser doit être couplé avec d'autre module ou services comme par exemple:
HeartBeat et/ou pacemaker : Pour le basculement automatique entre les serveurs lorsque qu'il y a une défaillance sur l'un d'eux


====== Ressources ======

{{:expose:disques_dur.pptx|}}


*Site
http://prdumetz.free.fr/ISN/dm/dd1/fonctionnement.html
http://jpeducasse.free.fr/disquedur/disque.html
http://fr.wikipedia.org/wiki/Native_Command_Queuing


CRC -> http://www.commentcamarche.net/contents/97-controle-d-erreur-crc

Sources de sources :) http://forum.hardware.fr/hfr/WindowsSoftware/Tutoriels/unique-passer-barriere-sujet_319756_1.htm
MBR/GPT -> http://lecrabeinfo.net/disque-dur-les-tables-de-partitions-mbr-et-gpt.html
MBR/GPT -> http://www.repaire.net/200812031747/articles/master_boot_record_mbr_versus_guid_partition_table_gpt.html
GPT -> http://fr.wikipedia.org/wiki/GUID_Partition_Table
EFI -> http://fr.wikipedia.org/wiki/Extensible_Firmware_Interface


*Microsoft
MBR -> http://technet.microsoft.com/fr-fr/library/hh825677.aspx
UEFI -> http://technet.microsoft.com/fr-fr/library/hh825686.aspx


*demo
MBR -> GPT : http://lecrabeinfo.net/installer-la-version-uefi-de-windows-vista-7-ou-8.html#convertir-le-disque-dur-mbr-en-gpt
GPT -> MBR : http://lecrabeinfo.net/installer-windows-xp-vista-7-ou-8-32-bits-sur-un-bios-uefi.html#convertir-le-disque-dur-gpt-en-mbr
à regarder -> http://zany-openeyes.blogspot.fr/2012/03/le-guide-de-survie-du-boot-uefi-pour.html



DD -> http://www.btsinfogap.org/cours/s1/ig1/ig1archi2/chapitre8.php
DD ->http://denis.leroux3.free.fr/LiVRE/Resaux/R%C3%A9seaux%20(17)%20Technologie%20des%20Ordinateurs%20et%20des%20R%C3%A9seaux%20(www.mayasse.co.cc).pdf

*powerpoint
{{:expose:disquedur.ppt|}}
{{:expose:disque_dur.ppt|}}
{{:expose:expose.doc|}}
{{:expose:expose_disque_dur.odp|}}

 
expose/disques_durs.txt · Dernière modification: 2019/05/11 14:35 (modification externe)     Haut de page