Les architectures de stockage

SAN

Présentation

SAN est l’acronyme de Storage Area Network. Un SAN est un réseau de stockage sur lequel transitent des blocs de données.

Il est généralement constitué de trois types d’éléments :

image

Le dessin ci-dessus montre une architecture SAN minimaliste : en effet, on peut redonder les liens et les switchs réseaux pour répondre à des besoins de haute disponibilité.

Les baies de disques

Une baie de disques ou disk array contient des disques qui sont pilotés par un ou des contrôleurs suivant la disponibilité des données que l’on souhaite. Ces disques sont regroupés en volume via un système de RAID.

Il existe différents RAID :

Les communications entre un serveur et une baie de disques ou un disque utilisent le protocole SCSI.

SCSI

SCSI est l’acronyme de Small Computer System Interface. SCSI est une norme qui permet de relier un ordinateur à un périphérique en mode bloc (disque, lecteur CDROM…). C’est un protocole client/serveur. Dans la norme SCSI, on parle d’initiateurs et de cibles.

Une communication SCSI se résume en trois phases :

SCSI souffre de quelques limitations :

SCSI ne permet pas le transport de blocs de données à travers une grande distance ni à travers un réseaux alors l’architecture SAN s'appuie sur des protocoles réseaux (FCP ou ISCSI) qui encapsule les commandes SCSI.

FCP : Fibre Channel Protocol>

Introduction

FCP est l’acronyme de Fibre Channel Protocol. Ce protocole est défini par la norme ANSI X3T11. Avant d’être utilisé dans les architectures SAN, il était utilisé à l’intérieur de mainframe qui demandait de grosses performances disques. On peut utiliser comme médium de la fibre optique mais aussi des paires torsadées. On peut atteindre 400Mo/s avec un médium adapté. FCP autorise une distance maximale de 10 km entre deux périphériques et 90 km en cascade.

FCP, un protocole divisé en couches.

FCP est un protocole en 5 couches : image

Les couches FC_0, FC_1 et FC_2 son regroupés logiquement dans une couche appelée FC_PH pour couche physique. FC_0 ou couche physique de Fibre Channel permet l’adaptation au médium. FC_1 ou couche liaison de données implémente l’encodage/décodage des signaux en codage 8b/10b. FC_2 ou couche réseau est le cœur du protocole Fibre Channel. Elle est responsable de découper les données à transmettre en fenêtre, et de réassembler ces fenêtres après. Elle contrôle l’ordre des fenêtres et est capable de dire si une fenêtre manque ou pas. En effet chaque trame est numérotée ce qui permet le réassemblage ou la détection de perte de données plus facilement.

FC_3 propose des services comme le multicast ou le stripping qui permet d’utiliser plusieurs liens en même temps pour multiplier la bande passante. FC_4 sert d’interface pour les applications qui vont être encapsulées dans le protocole FC.

Au dessus de FC_4, on retrouve les ULP (Upper Layer Protocol). La norme prévoit l’encapsulation du protocole SCSI, IP, AAL5 (ATM Adaptation Layer) ou encore IPI (Intelligent Peripheral Interface).

Les topologies FC

Fibre Channel autorise plusieurs topologies :

Conclusion

Les SAN FC sont utilisés pour des applications qui nécessite de grosses performances disques comme des SGBD ou des serveurs de virtualisation. L'entreprise qui veut déployer un SAN FC ne peut pas utiliser les éléments réseaux qu'elle dispose. Il faut qu'elle achète tout. Même les cartes utilisés au niveau des serveurs, nommées HBA (Host Bus Adapter), doivent être acheter et celles-ci sont beaucoup plus onéreuses que des cartes Ethernet classiques. Le déploiement de SAN FC est donc réservé à des entreprises qui disposent du budget nécessaire et des ressources humaines qui puissent ensuite administrer le tout.

ISCSI

Introduction

ISCSI est l’acronyme de Internet Small Computer Systems Interconnect ou Internet SCSI. Ce protocole est défini dans les RFC 3720 & RFC 3783. Ce protocole permet de transporter des commandes SCSI dans des réseaux TCP/IP. Il ne demande pas d’élément réseaux spécifiques : de simples routeurs ou switchs IP peuvent transiter du ISCSI. La seule chose que nécessite ISCSI est un pilote spéciale au niveau de la carte Ethernet du serveur. De plus, certaine carte Ethernet haut de gamme intègre nativement la gestion du protocole ISCSI dans leur hardware donc il n’y a plus besoin de pilote spécifique.

Architecture de ISCSI

ISCSI reprends l’architecture client/serveur de SCSI avec la même dénomination initiateur/cible. Les communications ISCSI se déroulent aussi en trois phases : envoi de commande, envoi ou réception de données puis envoi du résultat.

Avec de l’Ethernet Gigabit, on peut atteindre un débit théorique de 125Mo/s.

ISCSI est encapsulé à l’intérieur de TCP et permet de transporter des commandes SCSI : image

Conclusion

Pour résumer, ISCSI permet de disposer d’un SAN à moindre cout. En effet, tous les éléments réseaux IP existants dans l’entreprise peuvent être utilisés, de plus l’attachement au serveur peut se faire avec une carte Ethernet. Pour séparer le trafic réseau et le trafic SAN, on pourra utiliser les VLANs. De plus, aucune connaissance s pécifique n’est demandée à un administrateur système pour installer un SAN ISCSI.

ISCSI délivre de moins bonnes performances qu’un SAN FC mais ses performances sont acceptables dans la plupart des cas. ISCSI permet d’étendre son SAN sur une échelle mondiale en théorie.

A noter que ISCSI peut demander d’importantes ressources processeurs si la translation SCSI vers ISCSI n’est pas aidé nativement par la carte réseau. De plus, pour certaines applications demandant de très grosses performances disques, on utilisera plutôt la technologie FC.

Avantages/Inconvénients

Avantages :

Inconvénients :