Brevet FR2862776A1 — publié le 20050527

Code de Correction d'Erreur (ECC) est utilisée dans des dispositifs de réseau de disques. Une technologie qui contrôle si oui ou non une réception de données entre une unité de canal, qui effec- tue une communication de données avec un ordinateur hôte, et une carte de commande d'interface de disque, qui effectue une communication de données avec un disque magné-tique, a été réalisée avec précision est également connue (Brevet des Etats-Unis N 5 561 672). Dans cette techno- logis, un tampon de données et un circuit de contrôle de parité sont respectivement disposés sur trois cartes de commande: la carte de commande d'interface de disque, une carte de commande d'interface de canal et une unité de canal. Lorsque des données sont transférées entre les cartes de commande, un contrôle de parité est respective-ment effectué par chaque carte de commande de l'émetteur et du récepteur, le contenu de mémorisation du tampon de données de l'émetteur et le contenu de mémorisation du tampon de données du récepteur sont comparés, et il est déterminé si oui ou non les données ont été correctement transférées. Dans un cas où des données sont envoyées d'un dispositif de réseau de disques à un ordinateur hôte dans un Réseau FC (Fibre Canal)-SAN, les données sont envoyées à l'ordinateur hôte sous forme de trame incluant environ 2 KO de données de bloc. La trame FC contient des informations représentant le début de la trame (SOF), des in-formations d'en-tête de trame, un champ de données, un Contrôle de Redondance Cyclique et des informations re- présentant la fin de la trame (EOF). De 0 à 2112 octets de données peuvent être mémorisés dans le champ de don-nées. Une ou plusieurs trames sont envoyées du dispositif de réseau de disques à l'ordinateur hôte en réponse à une demande provenant de l'ordinateur hôte. Un Réseau FC-SAN est un réseau dans lequel un transfert de données à haute vitesse est possible et qui est stable comparativement à un réseau IP. Ainsi, il est peu probable que des données envoyées soient perdues pendant la transmission et que des erreurs irrécupérables surviennent dans les données reçues par l'ordinateur hôte. Dans ces circonstances, un Réseau FC-SAN est configuré pour retransmettre l'ensemble des données envoyées dans un cas où un problème est survenu dans une partie des données envoyées. Ces dernières années, des systèmes de réseau à large bande basés sur le Protocole de Commande de Transmission/le Protocole Internet (TCP/IP) tels que l'Inter-net et l'Intranet se sont développés, et une technologie qui améliore la fusion entre des réseaux à Protocole Internet (IP) et des systèmes de mémorisation (dispositifs de réseau de disques) est apparue. Un Réseau Local de Mémorisation basé sur un Protocole Internet est appelé Ré-seau Local de Mémorisation-Protocole Internet (IP-SAN). Une technologie dans laquelle un ensemble d'instructions SCSI (Interface Système pour Petits Ordinateurs) est sérialisé en tant que paquet TCP/IP et dans laquelle un dispositif de réseau de disques est directement connecté à un réseau IP est connue en tant qu'un mode d'un Réseau Local de Mémorisation-Protocole Internet. Cette technologie est appelée iSCSI (SCSI Internet) ou SCSI sur IP. Un réseau IP est un réseau complexe configuré à partir de plusieurs serveurs, routeurs et commutateurs, et la largeur de bande et le degré d'encombrement chan- gent constamment. Il n'est pas garanti que des paquets envoyés par un émetteur à un récepteur arrivent dans l'ordre d'envoi et il existe des cas où l'ensemble ou une partie des paquets sont perdus pendant la transmission. Ainsi, un réseau TCP/IP est configuré pour pouvoir daman- der une retransmission partielle uniquement des données perdues dans un cas où certaines des données de la série sont perdues ou lorsqu'une erreur est survenue. Dans un cas où un dispositif de réseau de disques est directement couplé à un réseau IP, la différence en termes de constitution technique entre le protocole utilisé à l'extérieur du dispositif de réseau de disques (TCP/IP) et le protocole utilisé à l'intérieur du dispositif de réseau de disques (FC) devient un problème. A savoir, dans le cas où une retransmission est demandée par l'ordinateur hôte en ce qui concerne une partie de données contenue à l'intérieur d'une trame, les données demandées elles-mêmes peuvent être envoyées mais le fait que les données partielles soient les données correctes ne peut pas être garanti. Dans une technologie Fibre Ca- nal, du fait qu'un Contrôle de Redondance Cyclique est effectué pour toutes les trames, une garantie de données ne peut pas être établie quant à des données dans un cas où une partie des données à l'intérieur de la trame doivent être retransmises. La présente invention a été créée à la lumière des problèmes décrits cidessus, et un but de celle-ci consiste à fournir un dispositif de réseau de disques et un adaptateur de canal qui peuvent garantir des données partielles dans un cas où une partie de données sont en- voyées à un dispositif de niveau supérieur. Un autre aspect de la présente invention consiste à fournir un dis-positif de réseau de disques et un adaptateur de canal qui peuvent garantir des données même dans un cas où des données d'une quantité inférieure à celle de l'unité à laquelle un code de garantie est associé sont envoyées. Des buts supplémentaires de la présente invention vont apparaître plus clairement à la lecture des modes de réalisation décrits ultérieurement. Afin de résoudre les problèmes mentionnés ci-dessus, un adaptateur de canal selon la présente in- vention est un adaptateur de canal qui est utilisé dans un dispositif de réseau de disques et qui commande un échange de données avec un dispositif de niveau supérieur, l'adaptateur de canal comportant une mémoire in- terne, une unité de calcul de code de garantie, une unité de communication et une unité de commande. La mémoire in-terne mémorise des données provenant d'une mémoire ex-terne. L'unité de calcul de code de garantie calcule un code de garantie d'entrée associé aux données entrées dans la mémoire interne et calcule un code de garantie de sortie associé aux données lues à partir de la mémoire interne, les codes de garantie pouvant être conservés dans l'unité de calcul de code de garantie. L'unité de communication transmet les données lues à partir de la mémoire interne au dispositif de niveau supérieur. Dans un cas où des données partielles parmi les données doivent être retransmises au dispositif de niveau supérieur, l'unité de commande utilise l'unité de communication pour transmettre les données partielles au dispositif de niveau supérieur, compare le code de garantie d'entrée et le code de garantie de sortie associés aux données recalculés par l'unité de calcul de code de garantie, et dé-termine que la transmission des données a été effectuée normalement dans un cas où les deux codes de garantie sont en accord. Le dispositif de niveau supérieur est un ordinateur qui utilise un dispositif de réseau de disques via un réseau de communications et est configuré sous la forme d'un ordinateur personnel, d'une station de travail, d'un serveur, d'un ordinateur central ou d'un terminal d'informations portable. La mémoire interne est disposée à l'intérieur de l'adaptateur de canal et est, par exemple, une mémoire à semi-conducteurs lisible/inscriptible (RAM: Mémoire à Accès Direct). La mé- moire interne peut également être une mémoire volatile ou une mémoire non-volatile. La mémoire externe est une mémoire disposée à l'extérieur de l'adaptateur de canal et peut être, par exemple, une mémoire cache. Des données lues à partir de la mémoire externe en réponse à une de- mande provenant du dispositif de niveau supérieur sont mémorisées dans la mémoire interne et transmises depuis la mémoire interne vers le dispositif de niveau supérieur via l'unité de communication. L'unité de calcul de code de garantie calcule et conserve des codes de garantie dans un cas où des données sont entrées dans la mémoire interne (écriture de données) et dans un cas où des don-nées sont délivrées en sortie par la mémoire interne (lecture de données). Dans un cas où des données sont transmises au dispositif de niveau supérieur, l'unité de commande compare le code de garantie d'entrée, qui est calculé lors-que des données sont mémorisées dans la mémoire interne, au code de garantie de sortie, qui est calculé lorsque des données sont lues à partir de la mémoire interne, de sorte que l'unité de commande peut déterminer si oui ou non une transmission de données normales a été effectuée. Dans un cas où un problème (données non-remises ou défaillance de données) est survenu dans une partie des données transmises au dispositif de niveau supérieur, la partie (données partielles) des données transmises dans laquelle le problème est survenu est à nouveau transmise au dispositif de niveau supérieur. Dans ce cas, l'unité de commande transmet d'abord les données partiel-les voulues au dispositif de niveau supérieur via l'unité de communication, recalcule ensuite le code de garantie de sortie de l'ensemble des données mémorisées dans la mémoire interne, et compare ce code de garantie de sortie à nouveau calculé au code de garantie d'entrée. Dans un cas où les deux codes de garantie sont en accord, l'unité de commande détermine que des données partielles normales ont été transmises. Ici, la phrase "les deux codes de garantie sont en accord" désigne un état indiquant que des données sont normales par l'intermédiaire d'une comparai-son des deux codes de garantie, et inclut un cas où les deux codes de garantie correspondent. De cette manière, l'unité de commande peut in-directement établir une garantie de données des données partielles en transmettant tout d'abord les données partielles demandées, puis en calculant à nouveau le code de garantie de sortie associé à l'ensemble des données y compris les données partielles et en comparant le code de garantie de sortie au code de garantie d'entrée calculé. Ainsi, même dans un cas utilisant une unité de calcul de code de garantie qui calcule un code de garantie d'entrée et un code de garantie de sortie associés à l'ensemble des données mémorisées dans une trame, une garantie de données de données partielles peut être établie. Ainsi, ceci se produit dans un cas où un échange de données entre l'adaptateur de canal et le dispositif de niveau su- périeur est réalisé conformément à un protocole TCP/IP et dans un cas où un échange de données entre l'adaptateur de canal et la mémoire externe est réalisé conformément à un protocole Fibre Canal. On doit noter que le protocole entre l'adapta- teur de canal et la mémoire externe n'est pas limité à un protocole Fibre Canal. En outre, le protocole entre l'adaptateur de canal et le dispositif de niveau supérieur n'est pas limité à un protocole TCP/IP. Dans un cas où les données partielles doivent être retransmises au dispositif de niveau supérieur, l'unité de commande peut (1) utiliser l'unité de communication pour transmettre les données partielles au dispositif de niveau supérieur, (2) lire les données à partir de la mémoire interne et transférer de manière factice les données vers l'unité de communication, (3) utiliser l'unité de calcul de code de garantie pour recalculer le code de garantie de sortie associé aux données transférées de manière factice, (4) comparer le code de garantie de sortie recalculé au code de garantie d'entrée calculé lorsque les données sont mémorisées dans la mémoire in-terne, et (5) informer le dispositif de niveau supérieur que la transmission des données partielles a été réalisée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée correspondent et informer le dispositif de niveau supérieur que la transmission des données partielles n'a pas été réalisée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée ne correspondent pas. Dans un cas où les données partielles doivent être retransmises, l'ensemble des données y compris les données partielles sont lues à partir de la mémoire in-terne et transmises de manière factice à l'unité de communication. Ici, une transmission factice désigne une transmission, pour la forme, des données de la mémoire interne à l'unité de communication afin de calculer le code de garantie de sortie, et les données entrées dans l'unité de communication sont annulées sans avoir été transmises au dispositif de niveau supérieur. En variante, dans le cas où les données partielles doivent être retransmises au dispositif de niveau supérieur, l'unité de commande peut (1) lire des données partielles à partir de la mémoire interne et transférer les données partielles à l'unité de communication, pour ainsi transmettre les données partielles au dispositif de niveau supérieur, (2) utiliser l'unité de calcul de code de garantie pour calculer un code de garantie de sortie partielle associé aux données partielles lues à partir de la mémoire interne, (3) confirmer que le code de garantie de sortie partielle et le code de garantie d'entrée cal- culé lorsque les données sont mémorisées dans la mémoire interne ne correspondent pas, (4) lire les données à par-tir de la mémoire interne et transférer de manière factice les données vers l'unité de communication, (5) uti- liser l'unité de calcul de code de garantie pour recalculer le code de garantie de sortie associé aux données transférées de manière factice, (6) comparer le code de garantie de sortie recalculé au code de garantie d'entrée calculé lorsque les données sont mémorisées dans la mé- moire interne, et (7) informer le dispositif de niveau supérieur que la transmission des données partielles a été réalisée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée correspondent et informer le dispositif de niveau supé- rieur que la transmission des données partielles n'a pas été réalisée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée ne correspondent pas. Dans un cas où une transmission de données nor- males est réalisée, le code de garantie de sortie partielle basé sur les données partielles et le code de garantie d'entrée basé sur l'ensemble des données ne correspondent pas. Ainsi, en comparant le code de garantie de sortie partielle au code de garantie d'entrée, il est confirmé que l'unité de calcul de code de garantie fonc- tionne normalement. La présente invention va maintenant être mieux comprise à la lecture de la description qui va suivre, faite en référence aux dessins annexés, sur lesquels: - la figure 1 est un schéma fonctionnel représentant la configuration globale d'un dispositif de ré-seau de disques associé à un premier mode de réalisation de la présente invention, - la figure 2 est un schéma fonctionnel représentant la configuration schématique d'un adaptateur de canal, - la figure 3A est un schéma explicatif représentant la structure de trame d'une interface iSCSI, et la figure 3B est un schéma explicatif représentant la structure hiérarchique de l'interface iSCSI, - la figure 4 est un ordinogramme représentant dans ses grandes lignes le fonctionnement global du dis- positif de réseau de disques, - la figure 5 est un ordinogramme représentant dans ses grandes lignes un traitement de transfert de données par l'intermédiaire de l'adaptateur de canal, - la figure 6 est un ordinogramme représentant dans ses grandes lignes un traitement dans un cas où des données sont retransmises, et - la figure 7 est un schéma fonctionnel représentant la configuration schématique d'un adaptateur de canal associé au second mode de réalisation qui est un exemple modifié. Des modes de réalisation de la présente invention vont être décrits cidessous en se reportant aux figures 1 à 7. Dans les modes de réalisation, on va décrire un procédé pour commander un adaptateur de canal qui est utilisé dans un dispositif de réseau de disques et commande un échange de données avec un dispositif de niveau supérieur. Le procédé comportant les étapes consistant à : dans un cas où des données partielles parmi les don- nées déjà transmises au dispositif de niveau supérieur doivent être retransmises au dispositif de niveau supérieur, lire les données partielles à partir d'une mémoire interne et transmettre les données partielles au dispositif de niveau supérieur; comparer un code de garantie de sortie calculé associé à l'ensemble des données à un code de garantie d'entrée calculé lorsque les données sont entrées dans la mémoire interne; et déterminer que la transmission des données partielles a été réalisée normalement dans un cas où les deux codes de garantie corres- pondent. Un autre procédé pour commander un adaptateur de canal est décrit dans les modes de réalisation. Ce procédé comporte: une première étape consistant à mémoriser des données provenant d'une mémoire externe dans une mémoire interne; une deuxième étape consistant à calculer et à conserver un code de garantie d'entrée associé à l'ensemble des données lorsque les données sont entrées dans la mémoire interne; une troisième étape consistant à lire les données à partir de la mémoire in- terne; une quatrième étape consistant à calculer et à conserver un code de garantie de sortie associé à l'en-semble des données lues; une cinquième étape consistant à transmettre les données lues au dispositif de niveau supérieur; une sixième étape consistant à déterminer si oui ou non la transmission a été réalisée normalement en comparant le code de garantie d'entrée et le code de garantie de sortie et à en informer le dispositif de niveau supérieur; une septième étape consistant à déterminer si oui ou non il existe une demande de retransmission prove- nant du dispositif de niveau supérieur concernant des données partielles parmi les données envoyées au dispositif de niveau supérieur; une huitième étape consistant à lire les données partielles à partir de la mémoire in-terne et à transmettre les données partielles au disposi- tif de niveau supérieur dans un cas où il existe une de-mande de retransmission des données partielles; une neuvième étape consistant à lire à nouveau les données mémo-risées dans la mémoire interne; une dixième étape consistant à calculer à nouveau un code de garantie de sortie associé à l'ensemble des données à nouveau lues; et une onzième étape consistant à déterminer si oui ou non la transmission a été réalisée normalement en comparant le code de garantie de sortie à nouveau calculé au code de garantie d'entrée calculé lors de la deuxième étape et à en informer le dispositif de niveau supérieur. Un dispositif de réseau de disques est égale-ment décrit dans les modes de réalisation. Le dispositif de réseau de disques comporte: un adaptateur de canal qui est connecté à un dispositif de niveau supérieur via un réseau de communications et commande un échange de données avec le dispositif de niveau supérieur; un dis-positif de mémorisation qui mémorise des données; un adaptateur de disque qui commande un échange de données avec le dispositif de mémorisation; et une mémoire cache qui mémorise des données lues à partir du dispositif de mémorisation ou des données en provenance du dispositif de niveau supérieur, l'adaptateur de canal incluant une mémoire interne qui mémorise des données provenant de la mémoire cache, une unité de calcul de code de garantie d'entrée qui calcule et conserve un code de garantie d'entrée associé aux données dans un cas où les données sont mémorisées dans la mémoire interne, une unité de calcul de code de garantie de sortie qui calcule et conserve un code de garantie de sortie associé aux don- nées dans un cas où les données sont lues à partir de la mémoire interne, une unité de communication qui transmet les données lues à partir de la mémoire interne au dispositif de niveau supérieur, et une unité de commande qui, dans un cas où des données partielles parmi les données doivent être retransmises au dispositif de niveau supérieur, (1) utilise l'unité de communication pour transmettre les données partielles au dispositif de niveau supérieur, (2) utilise l'unité de calcul de code de garantie de sortie pour recalculer le code de garantie de sor- tie associé aux données, et (3) compare le code de garan- tie de sortie recalculé au code de garantie d'entrée et détermine que la transmission des données a été réalisée normalement dans un cas où les deux codes de garantie correspondent. Un premier mode de réalisation de la présente invention va être décrit en se reportant aux figures 1 à 6. La figure 1 est un schéma fonctionnel représentant la configuration globale d'un dispositif de réseau de disques 10. Le dispositif de réseau de disques 10 contient des adaptateurs de canal 20, des adaptateurs de disque 30, une mémoire partagée 40, une mémoire cache 50, une unité de commutation 60 et des unités de disque 70. Les adaptateurs de canal 20 et les adaptateurs de disque 30 sont réalisés conjointement par un programme de commande et une carte à circuit imprimé contenus dans un proces- seur et une mémoire. Le dispositif de réseau de disques 10 est connecté à une pluralité d'ordinateurs hôtes 1 via un ré-seau de communications CN1 de sorte qu'une communication bidirectionnelle est possible entre le dispositif de ré-seau de disques 10 et les ordinateurs hôtes 1. Ici, le réseau de communications CN1 est un réseau qui effectue une communication de données bidirectionnelle conformé-ment à un protocole TCP/IP tel qu'un réseau local (LAN) ou l'Internet. On doit noter qu'il n'est pas nécessaire que l'ensemble des adaptateurs de canal 20 effectuent un transfert de données sur la base du protocole TCP/IP. Certains des adaptateurs de canal 20 peuvent effectuer un transfert de données sur la base d'un protocole de commu- nication tel que le Protocole de Réseau Local de Mémorisation (SAN), le Protocole de Connectivité à Fibre (FI-CON) (nom commercial déposé), le Protocole de Connexion de Systèmes d'Entreprise (ESCON) (nom commercial déposé), le Protocole d'Architecture de Connexion Evoluée (ACONARC) (nom commercial déposé), ou le Protocole d'Archi- tecture de Connexion Fibre (FISARC) (nom commercial déposé). Chaque ordinateur hôte 1 est un ordinateur tel qu'un serveur, un ordinateur personnel, une station de travail, un ordinateur central ou un terminal d'informations portable. Par exemple, chaque ordinateur hôte 1 est connecté via un autre réseau de communications à une pluralité de terminaux clients positionnés à l'extérieur du dessin. Les ordinateurs hôtes 1 lisent des données à par- tir du dispositif de réseau de disques 10 et écrivent des données dans celui-ci en réponse à une demande provenant des terminaux clients, de sorte que des services sont fournis aux terminaux clients. Les adaptateurs de canal 20 commandent une transmission de données à l'aide des ordinateurs hôtes 1. Une pluralité d'adaptateurs de canal 20 (par exemple 4 ou 8) sont disposés dans le dispositif de réseau de disques 10. Les adaptateurs de canal 20 sont préparés conformé-ment au type des ordinateurs hôtes 1, comme dans un adap- tateur de canal utilisant un système ouvert ou dans un adaptateur de canal utilisant un système d'ordinateur central. Dans le présent mode de réalisation, au moins l'un des adaptateurs de canal 20 effectue un transfert de données sur la base du protocole TCP/IP. Comme ceci va être décrit plus tard en se reportant à la figure 2, chaque adaptateur de canal 20 contient une unité de port 210, une unité de commande de transfert de données 220, un processeur 230 et une mémoire locale 240. Les adaptateurs de canal 20 reçoivent des ins- tructions et des données demandant la lecture de données à partir des ordinateurs hôtes 1 auxquels ils sont connectés et l'écriture de données dans ceux-ci, et agis-sent conformément aux instructions reçues en provenance des ordinateurs hôtes 1. Par exemple, lorsque les adapta- teurs de canal 20 reçoivent une instruction de lecture de données provenant des ordinateurs hôtes 1, les adaptateurs de canal 20 mémorisent l'instruction de lecture dans la mémoire partagée 40. Les adaptateurs de disque 30 se réfèrent à la mémoire partagée 40 lorsque nécessaire. Lorsque les adaptateurs de disque 30 détectent une instruction de lecture non-traitée, les adaptateurs de dis-que 30 lisent des données à partir des unités de disque 70 et mémorisent les données dans la mémoire cache 50. Les adaptateurs de canal 20 lisent les données déplacées dans la mémoire cache 50 et transmettent, via la mémoire locale 240, les données à l'ordinateur hôte 1 responsable de l'émission de l'instruction. Lorsque les adaptateurs de canal 20 reçoivent une demande d'écriture de données en provenance des ordinateurs hôtes 1, les adaptateurs de canal 20 mémorisent l'instruction d'écriture dans la mémoire partagée 40 et mémorisent les données reçues dans la mémoire cache 50. Les adaptateurs de disque 30 mémorisent, dans une unité de disque prédéterminée 70 et conformément à l'instruction mémorisée dans la mémoire partagée 40, les données mémorisées dans la mémoire cache 50. Les adaptateurs de disque 30 commandent la communication de données avec les unités de disque 70. Une pluralité d'adaptateurs de disque 30 (par exemple 4 ou 8) peuvent être disposés à l'intérieur du dispositif de ré-seau de disques 10. Les adaptateurs de disque 30 commandent une communication de données avec les unités de dis-que 70 et contiennent respectivement une unité de traite-ment, une unité de communication de données et une mé- moire locale (aucune d'entre elles n'est représentée). Les adaptateurs de disque 30 et les unités de disque 70 sont connectés via un réseau de communications CN2 tel qu'un réseau SAN et effectuent une transmission de don-nées en unités de bloc conformément au protocole Fibre Canal. Les adaptateurs de disque 30 surveillent, lorsque nécessaire, les états des unités de disque 70, et les résultats de la surveillance sont envoyés à un Processeur de Service (SVP) 2 via un réseau interne CN3. Les unités de disque 70 sont des unités de dis- que dur (HDD) ou des dispositifs de mémoire à semi-conducteurs. Ici, un groupe de Réseaux Redondants de Disques Bon Marché 80 peut être configuré, par exemple, par l'intermédiaire de quatre unités de disque 70. Chaque groupe de Réseaux Redondants de Disques Bon Marché 80 est un groupe de disques qui effectue une mémorisation redondante de données conformément à, par exemple, un Réseau Redondant de Disques Bon Marché 5 (non-limité au Réseau Redondant de Disques Bon Marché 5). Au moins un volume logique 81 (LU), qui est une région de mémorisation logi- que, peut être établi sur des régions de mémorisation physique fournies par les groupes de Réseaux Redondants de Disques Bon Marché 80. Une région utilisateur qui fait l'objet d'un accès par les ordinateurs hôtes 1 et une région système qui est utilisée pour mémoriser des informa- tions de commande sont établies dans le volume logique 81. La mémoire partagée 40 est configurée par l'intermédiaire d'une mémoire non-volatile et mémorise des informations de commande et des informations de gestion. La mémoire cache 50 est un exemple d'une "mémoire ex-terne" et mémorise. principalement des données. Le Processeur de Service 2 est un dispositif informatique destiné à gérer et à surveiller le dispositif de réseau de disques 10. Le Processeur de Service 2 collecte divers types d'informations d'environnement et d'informations d'attribut à partir des adaptateurs de canal 20 et des adaptateurs de disque 30 via le réseau de communications CN3 agencé à l'intérieur du dispositif de réseau de disques 10. Le Processeur de Service 2 collecte par exemple des informations telles qu'une configuration de dispositif, des alarmes de puissance, des alarmes de température et une vitesse d'entrée/sortie (IOPS). Le ré-seau de communications 3 est configuré en tant que réseau local. L'administrateur système peut établir la configu- ration du Réseau Redondant de Disques Bon Marché et effectuer un traitement de blocage de différents types de modules (adaptateurs de canal, adaptateurs de disque, unités de disque, etc.) via une interface utilisateur fournie par le Processeur de Service 2. La figure 2 est un schéma fonctionnel représentant la configuration schématique de l'adaptateur de canal 20. L'adaptateur de canal 20 contient l'unité de port 210, l'unité de commande de transmission de données 220, le processeur 230 et la mémoire locale 240. L'unité de port 210, qui est un exemple d'une "unité de communication", contient un émetteur-récepteur 211 et une unité de commande de protocole 212. L'émetteur-récepteur 211 effectue une communication de données avec les ordinateurs hôtes 1 via le réseau de communica- tions CN1 conformément à une instruction de commande pro-venant de l'unité de commande de protocole 212. L'unité de commande de protocole 212 commande l'opération de transfert de données avec les ordinateurs hôtes 1 en commandant le fonctionnement de l'émetteur-récepteur 211 en réponse à l'instruction de commande provenant du proces- seur 230. L'unité de commande de transfert de données 220 commande respectivement un transfert de données entre la mémoire cache 50 et la mémoire locale 240 et un transfert de données entre la mémoire locale 240 et l'unité de port 210. L'unité de commande de transfert de données 220 commande un transfert de données entre la mémoire cache 50 et la mémoire locale 240 et un transfert de données entre l'unité de port 210 et la mémoire locale 240, sans l'in- tervention du processeur 230, via un Accès Direct à la Mémoire (DMA). L'unité de commande de transfert de données 220 contient une unité de calcul de code de garantie d'entrée 221 et une unité de calcul de code de garantie de sortie 222. L'unité de calcul de code de garantie d'entrée 221 et l'unité de calcul de code de garantie de sortie 222 sont des exemples "d'unités de calcul de code de garantie". L'unité de calcul de code de garantie d'entrée 221 génère et conserve un code de garantie (par exemple, un Contrôle de Redondance Cyclique, etc.) associé aux don-nées entrées depuis la mémoire cache 50 dans la mémoire locale 240. L'unité de calcul de code de garantie de sortie 222 génère et conserve un code de garantie associé aux données délivrées en sortie par la mémoire locale 240 l'unité de port 210. Bien que les unités de calcul de code de garantie 221 et 222 soient respectivement configurées en tant que circuits matériels, elles ne sont pas limitées à ceux-ci. L'ensemble ou une partie des fonc- tions de calcul de code de garantie peuvent également être mises en oeuvre via un programme informatique. Un code de garantie d'entrée GD1 que l'unité de calcul de code de garantie 221 calcule est généré lorsque des données sont entrées dans la mémoire locale 240. Des codes de garantie de sortie GD2 et GD3 que l'unité de calcul de code de garantie de sortie 222 calcule sont générés lorsque des données sont délivrées en sortie par la mémoire locale 240. Ainsi, le code de garantie d'entrée peut être établi en tant que code de garantie d'entrée ou en tant que code de garantie de durée de lecture de don-nées et les codes de garantie de sortie peuvent être établies en tant que codes de garantie de sortie ou en tant que codes de garantie de durée de lecture de données. Le processeur 230 commande le fonctionnement global de l'adaptateur de canal 20 et délivre en sortie des instructions de commande appropriées à l'unité de port 210 et à l'unité de commande de transfert de données 220. Le processeur 230 exécute un traitement décrit ultérieurement en coopération avec l'unité de port 210 et l'unité de commande de transfert de données 220. La mémoire locale 240 est disposée à l'intérieur de l'adaptateur de canal 20 et remplit une fonction de tampon de données. Dans un cas où la mémoire locale 240 transmet des données aux ordinateurs hôtes 1, des données prédéterminées sont lues à partir de la mémoire cache 50 et mémorisées dans la mémoire locale 240. Comme représenté sur la figure 2, lorsque les ordinateurs hôtes 1 demandent des données RD, les adaptateurs de disque 30 lisent les données RD demandées à par- tir des unités de disque 70 et mémorisent les données dans la mémoire cache 50. L'unité de commande de transfert de données 220 lit les données RD mémorisées dans la mémoire cache 50 et transfère les données RD vers la mémoire locale 240. Dans ce cas, un code de garantie d'en- trée associé aux données RD est calculé par l'unité de calcul de code de garantie d'entrée 221. Les données RD mémorisées dans la mémoire locale 240 sont lues à partir de la mémoire locale 240 et transférées vers l'unité de port 210 par l'unité de corn- mande de transfert de données 220. Dans ce cas, un code de garantie de sortie associé aux données RD est calculé par l'unité de calcul de code de garantie de sortie 22. Les données RD transférées vers l'unité de port 210 sont divisées en paquets conformément au protocole TCP/IP et envoyées aux ordinateurs hôtes 1 à partir de l'émetteur- récepteur 211. Le code de garantie d'entrée et le code de garantie de sortie sont comparés et, dans un cas où les deux codes de garantie correspondent, il est possible de garantir que les données envoyées aux ordina- teurs hôtes 1 sont les données RD demandées. Dans un cas où un problème particulier survient dans certaines des données RD envoyées aux ordinateurs hôtes 1, les ordinateurs hôtes 1 demandent la transmission de données partielles RDp qui ne peuvent normalement pas être reçues du fait du problème. Dans ce cas, les données partielles demandées RDp sont lues à partir des données RD mémorisées dans la mémoire locale 240 et sont retransmises via l'unité de port 210. Ensuite, l'ensemble des données RD mémorisées dans la mémoire locale 240 sont transférées de manière factice à l'unité de port 210, et le code de garantie de sortie des données RD est à nouveau calculé par l'intermédiaire du transfert factice. Les données RD qui ont été transférées de manière factice à l'unité de port 210 sont annulées sans avoir été envoyées vers l'extérieur. Le code de garantie de sortie à nouveau calculé et le code de garantie d'entrée calculé lorsque les données ont été mémorisées dans la mémoire locale 240 sont comparés, de sorte qu'il est possible de garantir (indirectement) si oui ou non les données partielles RDp précédemment envoyées sont des données normales. Les figures 3A et 3B sont des schémas explicatifs représentant la configuration de données envoyées par les adaptateurs de canal 20 aux ordinateurs hôtes 1. Comme représenté sur la figure 3A, une trame iSCSI contient un en-tête 300 incluant une adresse MAC (Commande d'Accès aux Supports), un paquet IP 310, un paquet TCP 320 et une Unité de Données du Protocole (PDU) iSCSI 330. Des instructions SCSI, des données et des réponses SCSI sont mémorisées à l'intérieur de l'unité de données du protocole 330. A savoir, en encapsulant les instructions SCSI et les données dans le paquet TCP, les données SCSI peuvent être envoyées et reçues via un réseau IP. La figure 3B est un schéma explicatif représen- tant la structure hiérarchique du protocole iSCSI. En commençant dans l'ordre à partir du bas de la hiérarchie, une couche de liaison de données/couche physique, une couche IP, une couche TCP, une couche iSCSI, une couche SCSI et une couche application sont superposées. Dans la couche application (système de fichiers sur l'ordinateur hôte et l'adaptateur de canal), un transfert de données est effectué en unités de bloc. Dans la couche SCSI, une transmission et une réception de données sont effectuées en utilisant des instructions SCSI. Dans la couche SCSI, des adresses sont identifiées par un identifiant de cible, un numéro d'unité logique et une Adresse de Bloc Logique (LBA). Dans la couche iSCSI, des adresses sont identifiées par des noms iSCSI. Dans la couche TCP, des numéros de port sont utilisés, et dans la couche IP, des adresses IP sont utilisées. La couche iSCSI est position-née entre la couche SCSI et la couche TCP, elle encapsule des données reçues en provenance de la couche SCSI, et génère l'unité de données du protocole iSCSI 330 et délivre l'unité de données du protocole iSCSI 330 à la couche TCP. En outre, la couche iSCSI extrait des instructions SCSI et des données de l'unité de données du protocole iSCSI 330 reçues en provenance de la couche TCP et délivre celles-ci à la couche SCSI. La figure 4 est un ordinogramme représentant dans ses grandes lignes le fonctionnement global du dis-positif de réseau de disques. Tout d'abord, les ordinateurs hôtes 1 se connectent aux adaptateurs de canal 20 et effectuent une authentification d'ouverture de session (étape S1). Ensuite, les ordinateurs hôtes 1 demandent une transmission de données concernant les adaptateurs de canal 20 en transmettant une instruction de lecture (étape S2). Lorsque les adaptateurs de canal 20 reçoivent la demande en provenance des ordinateurs hôtes 1, les adaptateurs de canal 20 demandent une lecture de données concernant les adaptateurs de disque 30 en mémorisant l'instruction de lecture dans la mémoire partagée 40 (étape S3). Les adaptateurs de disque 30 lisent les données à partir des unités de disque 70 (étape S4) et mémorisent les données dans la mémoire cache 50 (étape S5). Les adaptateurs de canal 20 lisent les données mémorisées dans la mémoire cache 50 (étape S6) et transmettent les données aux ordinateurs hôtes 1 (étape S7). Lorsqu'une transmission de données aux ordinateurs hôtes 1 est ache- vée, les adaptateurs de canal 20 transmettent un état normal aux ordinateurs hôtes 1 indiquant que la transmission des données s'est effectuée normalement (étape S8). On doit noter que, dans un cas où les données demandées sont déjà mémorisées dans la mémoire cache 50, les données contenues à l'intérieur de la mémoire cache 50 sont lues dans les adaptateurs de canal 20. Spécifiquement, lorsque l'unité de port 210 reçoit la trame d'instruction iSCSI demandant une lecture de données, cette instruction est entrée dans le processeur 230 et le contenu de l'instruction est interprété par le processeur 230. Le processeur 230 préserve une région de cache nécessaire à la transmission des données dans la mémoire cache 50 et ordonne à l'unité de commande de transfert de données 220 de lire les données. Même dans un cas où une transmission de données à partir des adaptateurs de canal 20 a été effectuée normalement, il existe des cas dans lesquels les ordinateurs hôtes 1 ne peuvent pas lire certaines des données. Par exemple, lorsque le réseau est encombré ou lorsque la charge de traitement des ordinateurs hôtes 1 est importante, il arrive parfois que certains des paquets soient perdus pendant la transmission ou que les données soient tronquées. Dans. ce cas, les ordinateurs hôtes 1 demandent aux adaptateurs de canal 20 de retransmettre les données qui n'ont pas pu être lues normalement. Lorsque les adaptateurs de canal 20 reçoivent la demande de retransmission de données partielles, les adaptateurs de canal 20 lisent les données restant dans la mémoire cache 50 (étape S10) et retransmettent uniquement les données partielles demandées aux ordinateurs hôtes 1 (étape S11). On doit noter que, dans un cas où des données restent à l'intérieur de la mémoire locale 240, les adaptateurs de canal 20 peuvent également lire les données partielles à partir de la mémoire locale 240 et retransmettre ces données aux ordinateurs hôtes 1. Lors-que les adaptateurs de canal 20 terminent la transmission des données partielles, les adaptateurs de canal 20 dé-terminent si oui ou non la transmission des données s'est effectuée normalement et transmettent un état normal ou un état anormal aux ordinateurs hôtes 1 (étape S12). La figure 5 est un ordinogramme représentant un exemple spécifique de traitement de transfert de données par les adaptateurs de canal 20. L'ordinogramme représenté sur la figure 5 correspond au traitement représenté aux étapes S7 et S8 sur la figure 4. En outre, le traite-ment de transfert de données sur l'ordinogramme représenté sur la figure 5 est exécuté par les adaptateurs de canal 20. Spécifiquement, le traitement de transfert de données est exécuté avec la coopération du processeur 230, de l'unité de port 210 et de l'unité de commande de transfert de données 220. L'unité de commande de transfert de données 220 transfère, vers la mémoire locale 240 et sur la base d'une instruction provenant du processeur 230, les don- nées RD mémorisées dans la mémoire cache 50 (étape S21). Dans ce cas, l'unité de calcul de code de garantie d'entrée 221 calcule et conserve le code de garantie d'entrée GD1 associé aux données RD mémorisées dans la mémoire locale 240 (étape S22). L'unité de commande de transfert de données 220 lit, sur la base d'une instruction provenant du processeur 230, les données RD mémorisées dans la mémoire locale 240 et transfère ces données RD vers l'unité de port 210 (étape S23). Dans ce cas, l'unité de calcul de code de garantie de sortie 222 calcule et conserve le code de garantie de sortie GD3 associé aux données lues à partir de la mémoire locale 240 (étape S24). Les données RD transférées vers l'unité de port 210 sont encapsulées par l'unité de commande de protocole 212 et transmises de l'émetteur-récepteur 211 aux ordinateurs hôtes 1 via le réseau de communications CN1 (étape S25). Ensuite, les adaptateurs de canal 20 détermi- vent si oui ou non un problème est survenu pendant la transmission des données RD (étape S26). Le terme "problème" désigne une perte ou une non- délivrance de paquets et des erreurs de données. Dans un cas où aucun problème n'est survenu, à savoir dans un cas où l'ensemble des données RD a été normalement envoyé (NON à l'étape S26), les adaptateurs de canal 20 comparent le code de garantie d'entrée GD1 au code de garantie de sortie GD3 pour voir si oui ou non ils correspondent (étape S27). Dans un cas où les deux codes de garantie GD1 et GD3 correspondent (OUI à l'étape S27), les adaptateurs de canal 20 transmettent l'état normal aux ordinateurs hôtes 1 (étape S28). Dans un cas où les deux codes de garantie GD1 et GD3 ne correspondent pas (NON à l'étape S27), les adaptateurs de canal 20 transmettent l'état anormal aux ordina- teurs hôtes 1 (étape S29). Dans un cas où un problème est détecté lorsque les données RD sont transmises (OUI à l'étape S26), un traitement de retransmission est exécuté (étape S30). Un exemple spécifique de ce traitement de retransmission va être décrit en se reportant à l'ordinogramme représenté sur la figure 6. Le traitement de retransmission est exécuté par les adaptateurs de canal 20. Lorsque les adaptateurs de canal 20 reçoivent une demande de retransmission en provenance des ordina- teurs hôtes 1 (étapes S301), les adaptateurs de canal 20 déterminent si oui ou non les données dont la retransmission est demandée font partie des données RD (étape S302). Un cas dans lequel aucune retransmission d'une partie des données RD n'est demandée (NON à l'étape $302) est un cas dans lequel l'ensemble des données RD ont été demandées. Ainsi, le traitement revient à l'étape S23 représentée sur la figure 5 et les données RD sont retransmises. Dans un cas où les ordinateurs hôtes 1 daman- dent une retransmission concernant une partie des données RD (OUI à l'étape S302), les adaptateurs de canal 20 transfèrent les données partielles demandées RDp de la mémoire locale 240 vers l'unité de commande de protocole 212 de l'unité de port 210 (étape $303). Les données par- tielles RDp sont encapsulées et envoyées à partir de l'émetteur-récepteur 211 aux ordinateurs hôtes 1 (étape S304). Dans ce cas, l'unité de calcul de code de garantie de sortie 222 calcule et conserve le code de garantie de sortie GD2 associé aux données partielles RDp (étape $305). Les adaptateurs de canal 20 déterminent si oui ou non le code de garantie d'entrée GD1 et le code de garantie de sortie (code de garantie de sortie partielle) GD2 obtenu associé aux données partielles RDp correspon- dent (étape S306). Du fait que le code de garantie d'entrée GD1 est généré lorsque les données RD sont mémorisées dans la mémoire locale 40, le code de garantie d'entrée GD1 et le code de garantie de sortie partielle GD2 ne correspondent pas dans un cas où une transmission de données à l'intérieur des adaptateurs de canal est nor- male. Dans le cas où le code de garantie d'entrée GD1 et le code de garantie de sortie partielle GD2 ne correspondent pas (NON à l'étape S306) , un traitement d'erreur est exécuté (étape S307). Dans ce traitement d'erreur, l'état anormal est envoyé aux ordinateurs hôtes 1. Dans un cas où le code de garantie d'entrée GD1 et le code de garantie de sortie partielle GD2 correspondent (OUI à l'étape S306), il est confirmé qu'une transmission de données à l'intérieur des adaptateurs de canal a été effectuée normalement et qu'une partie des données RD a été envoyée à l'étape S304. Ensuite, les adaptateurs de canal 20 transfèrent de manière factice l'ensemble des données RD mémorisées dans la mémoire locale 240 vers l'unité de commande de protocole 212 de l'unité de port 210 (étape S308). L'unité de commande de protocole 212 reçoit les données RD transférées de manière factice mais les données RD sont annulées sans avoir été encapsulées. Du fait du transfert factice des données RD de la mémoire locale 240 vers l'unité de port 210, l'unité de calcul de code de garantie de sortie 222 calcule à nouveau et conserve le code de garantie de sortie GD3 associé aux données RD (étape S309). Les adaptateurs de canal 20 déterminent si oui ou non le code de garantie de sortie à nouveau calculé GD3 et le code de garantie d'entrée déjà créé GD1 correspondent (étape S310). Dans le cas où les deux codes de garantie GD1 et GD3 correspondent (OUI à l'étape S310), les adaptateurs de canal 20 déterminent que les données partielles RDp envoyées à l'étape S304 sont des données normales et transmettent l'état normal, indiquant qu'une retransmission de données normales a été effectuée, aux ordinateurs hôtes 1 (étape S311). Dans le cas où les deux codes de garantie GD1 et GD3 ne correspondent pas (NON à l'étape S310), les adaptateurs de canal 20 transmettent l'état anormal indiquant gue les données partielles RDp sont des données anormales. Conformément au présent mode de réalisation, même dans un cas où les ordinateurs hôtes 1 demandent une retransmission concernant les données partielles RDp configurant certaines des données RD, une garantie de données peut être établie en prouvant indirectement que les données partielles RDp sont des données normales. Ainsi, même dans un environnement dans lequel une garan- tie de données ne peut pas être établie quant à une partie de données envoyées, comme dans un protocole Fibre Canal, une garantie de données de données partielles peut être établie de manière fondamentale. Ainsi, les adaptateurs de canal 20 développés pour le protocole Fibre Ca- nal peuvent être amenés à s'adapter à un réseau IP et une garantie de données peut être établie. En outre, dans le présent mode de réalisation, une retransmission de don-nées partielles RDp et une garantie de données peuvent être réalisées même dans une configuration dans laquelle un tampon de données n'est pas contenu dans l'unité de port 210. La figure 7 représente la configuration schéma-tique d'un adaptateur de canal 20 correspondant à un second mode de réalisation qui est un exemple modifié du premier mode de réalisation. Le présent mode de réalisation est caractérisé en ce qu'à la fois le code de garantie d'entrée et. le code de garantie de sortie sont calculés et conservés par une même unité de calcul de code de garantie 223. On doit noter que la présente invention n'est pas limitée aux modes de réalisation décrits ci-dessus. L'homme du métier peut apporter divers ajouts ou changements restant dans la portée de la présente invention. Par exemple, même si un contrôle de redondance cyclique a été décrit à titre d'exemple des codes de garantie, la présente invention n'est pas limitée à celui-ci et peut utiliser divers codes de garantie. 2862776 29 REVENDICATIONS 1. Adaptateur de canal (20) qui est utilisé dans un dispositif de réseau de disques (10) et commande un échange de données avec un dispositif de niveau supé- rieur, l'adaptateur de canal (20) étant caractérisé en ce qu'il comporte: une mémoire interne qui mémorise des données provenant d'une mémoire externe, une unité de calcul de code de garantie (223) qui calcule un code de garantie d'entrée associé aux don-nées entrées dans la mémoire interne et calcule un code de garantie de sortie associé aux données lues à partir de la mémoire interne, les codes de garantie pouvant être conservés dans l'unité de calcul de code de garantie, une unité de communication qui transmet les données lues à partir de la mémoire interne au dispositif de niveau supérieur, et une unité de commande qui, dans un cas où des données partielles parmi les données doivent être retransmises au dispositif de niveau supérieur, utilise l'unité de communication pour transmettre les données partielles au dispositif de niveau supérieur, compare le code de garantie d'entrée et le code de garantie de sortie associés aux données recalculés par l'unité de calcul de code de garantie, et détermine que la transmission des données a été effectuée normalement dans un cas où les deux codes de garantie sont en accord. 2. Adaptateur de canal (20) selon la revendication 1, caractérisé en ce que l'unité de calcul de code de garantie (223) calcule le code de garantie d'entrée ou le code de garantie de sortie associé à l'ensemble des données entrées dans la mémoire interne et délivrées en sortie par celle-ci. 3. Adaptateur de canal (20) selon la revendica- tion 1, caractérisé en ce que dans le cas où les données partielles doivent être retransmises au dispositif de ni-veau supérieur, l'unité de commande (1) utilise l'unité de communication pour transmettre les données partielles au dispositif de ni- veau supérieur, (2) lit les données à partir de la mémoire in-terne et transfère de manière factice les données à l'unité de communication, (3) utilise l'unité de calcul de code de garan- tie (223) pour recalculer le code de garantie de sortie associé aux données transférées de manière factice, (4) compare le code de garantie de sortie recalculé au code de garantie d'entrée calculé lorsque les données sont mémorisées dans la mémoire interne, et (5) informe le dispositif de niveau supérieur que la transmission des données partielles a été effectuée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée correspondent et informe le dispositif de niveau supérieur que la transmission des données partielles n'a pas été effectuée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée ne correspondent pas. 4. Adaptateur de canal (20) selon la revendica- tion 1, caractérisé en ce que dans le cas où les données partielles doivent être retransmises au dispositif de ni-veau supérieur, l'unité de commande (1) lit des données partielles à partir de la mémoire interne et transfère les données partielles vers l'unité de communication, de manière à transmettre les données partielles au dispositif de niveau supérieur, (2) utilise l'unité de calcul de code de garantie (223) pour calculer un code de garantie de sortie partielle associé aux données partielles lues à partir de la mémoire interne, (3) confirme que le code de garantie de sortie partielle et le code de garantie d'entrée calculé lorsque les données sont mémorisées dans la mémoire interne ne correspondent pas, (4) lit les données à partir de la mémoire in-terne et transfère de manière factice les données vers l'unité de communication, (5) utilise l'unité de calcul de code de garantie (223) pour recalculer le code de garantie de sortie associé aux données transférées de manière factice, (6) compare le code de garantie de sortie recalculé au code de garantie d'entrée calculé lorsque les données sont mémorisées dans la mémoire interne, et (7) informe le dispositif de niveau supérieur que la transmission des données partielles a été effectuée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée correspondent et informe le dispositif de niveau supérieur que la transmission des données partielles n'a pas été effec- tuée normalement dans un cas où le code de garantie de sortie recalculé et le code de garantie d'entrée ne correspondent pas. 5. Adaptateur de canal (20) selon la revendication 2 ou 3, caractérisé en ce que les données qui sont transférées de manière factice vers l'unité de communication par l'unité de commande sont annulées sans être envoyées au dispositif de niveau supérieur. 6. Adaptateur de canal (20) selon la revendication 1, caractérisé en ce qu'un échange de données entre l'adaptateur de canal (20) et le dispositif de niveau supérieur est effectué conformément à un protocole TCP/IP et un échange de données entre l'adaptateur de canal (20) et la mémoire externe est effectué conformément à un protocole Fibre Canal. 7. Procédé de commande d'un adaptateur de canal (20) gui est utilisé dans un dispositif de réseau de disques (10) et commande un échange de données avec un dis-positif de niveau supérieur, le procédé étant caractérisé en ce qu'il comporte les étapes consistant à : dans un cas où des données partielles parmi les données déjà transmises au dispositif de niveau supérieur doivent être retransmises au dispositif de niveau supérieur, lire des données partielles à partir d'une mémoire interne et transmettre les données partielles au dispositif de niveau supérieur, comparer un code de garantie de sortie calculé associé à l'ensemble des données à un code de garantie d'entrée calculé lorsque les données sont entrées dans la mémoire interne, et déterminer qu'une transmission des données partielles a été effectuée normalement dans un cas où les deux codes de garantie correspondent. 8. Procédé de commande d'un adaptateur de canal (20) qui est utilisé dans un dispositif de réseau de disques (10) et commande un échange de données avec un dis-positif de niveau supérieur, selon la revendication 7 le procédé étant caractérisé en ce qu'il comporte: une première étape consistant à mémoriser des données provenant d'une mémoire externe dans une mémoire interne, une deuxième étape consistant à calculer et à conserver un code de garantie d'entrée associé à l'ensem- ble des données lorsque les données sont entrées dans la mémoire interne, une troisième étape consistant à lire les don-nées à partir de la mémoire interne, une quatrième étape consistant à calculer et à conserver un code de garantie de sortie associé à l'en-semble des données lues, une cinquième étape consistant à transmettre les données lues au dispositif de niveau supérieur, une sixième étape consistant à déterminer si oui ou non la transmission a été effectuée normalement en comparant le code de garantie d'entrée au code de garantie de sortie et à en informer le dispositif de niveau supérieur, une septième étape consistant à déterminer si oui ou non il existe une demande de retransmission provenant du dispositif de niveau supérieur concernant des données partielles parmi les données envoyées au disposi- tif de niveau supérieur, une huitième étape consistant à lire les don- nées partielles à partir de la mémoire interne et à transmettre les données partielles au dispositif de ni-veau supérieur dans un cas où il existe une demande de retransmission des données partielles, une neuvième étape consistant à lire à nouveau les données mémorisées dans la mémoire interne, une dixième étape consistant à calculer à nouveau un code de garantie de sortie associé à l'ensemble des données à nouveau lues, et une onzième étape consistant à déterminer si oui ou non la transmission a été effectuée normalement en comparant le code de garantie de sortie à nouveau calculé au code de garantie d'entrée calculé à la deuxième étape et à en informer le dispositif de niveau supérieur. 9. Dispositif de réseau de disques (10) comportant: un adaptateur de canal (20) selon la revendication 1 qui est connecté à un dispositif de niveau supé- rieur via un réseau de communications et commande un échange de données avec le dispositif de niveau supérieur, un dispositif de mémorisation qui mémorise des données, un adaptateur de disque (30) qui commande un échange de données avec le dispositif de mémorisation, et une mémoire cache (50) qui mémorise des données lues à partir du dispositif de mémorisation ou des don-nées reçues en provenance du dispositif de niveau supé- rieur, caractérisé en ce que l'adaptateur de canal (20) inclut une mémoire interne qui mémorise des données provenant de la mémoire cache (50), une unité de calcul de code de garantie d'en- trée (221) qui calcule et conserve un code de garantie d'entrée associé aux données dans un cas où les données sont mémorisées dans la mémoire interne, une unité de calcul de code de garantie de sortie (222) qui calcule et conserve un code de garantie de sortie associé aux données dans un cas où les données sont lues à partir de la mémoire interne, une unité de communication qui transmet les données lues à partir de la mémoire interne au dispositif de niveau supérieur, et une unité de commande qui, dans un cas où des données partielles parmi les données doivent être retransmises au dispositif de niveau supérieur, (1) utilise l'unité de communication pour transmettre les données partielles au dispositif de niveau supérieur, (2) utilise l'unité de calcul de code de garantie de sortie (223) pour recalculer le code de garantie de sortie associé aux données, et (3) compare le code de garantie de sortie recalculé au code de garantie d'entrée et détermine que la transmission des données a été effectuée normalement dans un cas où les deux codes de garantie correspondent. 10. Unité de communication destinée à être utilisée avec l'adaptateur de canal selon la revendication 1 qui est connectée à une mémoire interne via une unité de commande de transfert de données (220) et transmet des données lues à partir de la mémoire interne à un dispositif de niveau supérieur, caractérisée en ce que une fois que l'unité de communication a lu des données partielles parmi les données mémorisées dans la mémoire interne et a transmis les données partielles au dispositif de niveau supérieur, l'unité de communication lit l'ensemble des données à partir de la mémoire interne et annule les données lues sans transmettre celles- ci au dispositif de niveau supérieur.