Brevet FR3096155A1 — publié le 20201120

Description Titre de l'invention : PROCEDE DE SAUVEGARDE DE DONNEES DANS UN RESEAU PAIR-A-PAIR [0001] L'invention concerne un procédé et un système de sauvegarde de données dans un réseau pair-à-pair. L'invention concerne également un support d'enregistrement d'informations et un noeud client pour la mise en oeuvre (lu procédé de sauvegarde. [0002] Des procédés connus de sauvegarde de données dans un réseau pair-à-pair comportent les étapes suivantes : a) l'exécution par un noeud client du réseau pair-à-pair, d'un logiciel de sauvegarde pour générer un fichier de sauvegarde à partir duquel les données sauvegardées peuvent être restaurées, h) le découpage du fichier de sauvegarde généré en plusieurs blocs de données, et c) l'enregistrement des blocs de données dans la mémoire de différents noeuds de sauvegarde du réseau pair-à-pair. [0003] Par exemple, un tel procédé est divulgué dans l'article suivant : Olivier Dalle et Al : « Analysis of Failurc Correlation in Peer-to-Peer Storage Systems », INRIA, rapport de recherche n° 6771, décembre 2008. [0004] L'un des principaux problèmes des procédés connus de sauvegarde de données dans un réseau pair-à-pair est d'améliorer la qualité de service. Par qualité de service, on désigne ici la capacité de restaurer, avec une probabilité garantie à l'avance, un volume prédéterminé de données en une durée maximale prédéterminée de restauration. L'amélioration de la qualité de service consiste donc typiquement, pour le même volume prédéterminé de données et pour la même durée maximale prédéterminée de restauration, à augmenter la probabilité garantie. Idéalement, la probabilité garantie doit être élevée, c'est-à-dire supérieure à 80 % ou 90 % ou 95%. [0005] L'invention propose donc un procédé de sauvegarde de données dans un réseau pair- à-pair dans lequel la qualité de service est améliorée. [0006] Elle a donc pour objet un tel procédé de sauvegarde dans lequel les données sont des données prémiums bénéficiant d'une qualité de service garantie, cette qualité de service correspondant à un volume prédéterminé de données premium restaurable à partir du réseau pair-à-pair en une durée maximale prédéterminée de restauration, ce procédé comportant à cet effet : - le téléchargement par un noeud client du réseau pair-à-pair d'un ensemble d'un ou plusieurs bloc prémiums depuis un noeud de sauvegarde et, en même temps, la mesure de la bande passante montante réellement disponible du noeud de sauvegarde lors de ce téléchargement, chaque bloc prérnium étant un bloc de données généré par le 2 découpage du fichier de sauvegarde lors de l'étape h) lorsque les données sauvegardées sont des données prcmiums, - le calcul d'un volume maximal de blocs prémiums enregistrables dans la mémoire de ce noeud de sauvegarde en fonction de la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde et d'une bande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prémiums dans la durée maximale de restauration, et - lors de l'enregistrement des blocs prémiums dans ce noeud de sauvegarde, le procédé inhibe l'enregistrement d'un bloc prémium dans ce noeud de sauvegarde si cela conduit à dépasser le volume maximal de blocs prémiums enregistrables dans ce noeud de sauvegarde. [0007] Les modes de réalisation de cc procédé de sauvegarde peuvent comporter une ou plusieurs des caractéristiques suivantes : A) la mesure de la bande passante montante réellement disponible comporte les opérations suivantes : - l'enregistrement de la taille de l'ensemble de blocs prémiums dans une base de données consultable par tout noeud client du réseau pair-à-pair, - le noeud client transmet à un noeud tiers une demande de début de téléchargement de l'ensemble de blocs prémiums à partir du noeud de sauvegarde et, en réponse, le noeud tiers enregistre l'instant de réception de cette demande de début de téléchargement dans la base de données en tant qu'instant de début du téléchargement puis indique, au noeud de sauvegarde, que cette demande de début de téléchargement a été reçue, le noeud tiers étant un noeud du réseau pair-à-pair implémenté sur un calculateur électronique raccordé aux calculateurs électroniques sur lesquels sont implémentés le noeud client et le noeud de sauvegarde par un réseau grande distance de transmission d'informations, - en réponse à l'indication de la réception de la demande de début de téléchargement, le noeud de sauvegarde transfère l'ensemble de blocs prémiums au noeud client sans passer par l'intermédiaire du noeud tiers ou d'un autre noeud de sauvegarde, puis - lorsque le transfert est terminé, le noeud client transmet au noeud tiers une déclaration de fin de téléchargement, puis - en réponse, le noeud tiers enregistre dans la base de données l'instant de réception de la déclaration de fin de téléchargement en tant qu'instant de fin de téléchargement, - la mesure de la bande passante réellement disponible est calculé à partir des instants de début et de tin de téléchargement et de la taille de l'ensemble de blocs prémiums téléchargé enregistrés dans la base de données; B)- le noeud de sauvegarde chiffre l'ensemble de blocs prémiums pour obtenir un ensemble chiffré de blocs prémiums déchiffrables uniquement à l'aide d'une clé 3 secrète de déchiffrement inconnue du noeud client à ce stade, - en réponse à l'indication de la réception de la demande de début de téléchargement, l'ensemble de blocs prémiums transférés au noeud client est l'ensemble chiffré de blocs prémiums, - en réponse à la réception de la déclaration de fin de téléchargement, le noeud tiers indique au noeud de sauvegarde que cette déclaration de fin de téléchargement a bien été reçue, et - en réponse à cette indication de la réception de la déclaration de fin de téléchargement, le noeud de sauvegarde transmet au noeud client la clef de déchiffrement lui permettant de déchiffrer l'ensemble chiffré de blocs prémiums. C) - en réponse à la réception de la déclaration de fin de téléchargement, le noeud tiers indique au noeud de sauvegarde que cette déclaration de fin de téléchargement a bien été reçue, et - en réponse à l'indication de la réception de cette déclaration de fin de téléchargement, le noeud de sauvegarde compare l'instant auquel cette indication est reçue à un instant réel auquel la transmission de l'ensemble de blocs prémiums vers le noeud client s'est réellement terminée, et - si l'écart entre ces deux instants est supérieur à un seuil prédéterminé, le noeud de sauvegarde provoque le marquage de l'instant de fin de téléchargement enregistré dans cette base de données comme étant invalide, et, dans le cas contraire, provoque le marquage de l'instant de fin de téléchargement enregistré comme étant valide, puis - la mesure de la bande passante montante réellement disponible du noeud de sauvegarde à partir d'un instant de fin de téléchargement marqué comme invalide est systématiquement inhibée D) - le procédé comporte une phase de restauration du fichier de sauvegarde, lors de laquelle un ensemble complet des blocs prémiums sauvegardés dans le réseau pairà-pair est téléchargé vers le noeud client, le nombre de blocs de cet ensemble complet étant suffisant pour permettre la restauration complète des données prémiums sauvegardées, - lors de chaque phase de restauration, la bande passante montante réellement disponible du noeud de sauvegarde est mesurée, - en dehors des phases de restauration, le procédé comporte au moins une phase d'échantillonnage lors de laquelle seul un ensemble réduit de blocs prémiums sauvegardés dans le réseau pair-à-pair est téléchargé vers le noeud client, le nombre de blocs de cet ensemble réduit étant insuffisant à lui seul pour permettre une restauration complète des données prémiums sauvegardées, et - lors de chacune des phases d'échantillonnage, la bande passante montante réellement disponible du noeud de sauvegarde est mesurée. E) la hase de données est une chaîne dc blocs. F) le procédé comporte : - l'exécution par le noeud client du logiciel dc sauvegarde pour générer un fichier de sauvegarde à partir duquel des données sans qualité de service garantie peuvent être restaurées et le découpage de cc fichier de sauvegarde généré en plusieurs blocs sans qualité de service garantie, - l'enregistrement des blocs sans qualité dc service garantie dans des mémoires dc différents noeuds de sauvegarde du réseau pair-à-pair, - lors de phases concomitantes de restauration de blocs prémiums et de blocs sans qualité de service garantie enregistrés dans la mémoire d'un même noeud de sauvegarde, le noeud de sauvegarde alloue prioritairement sa bande passante montante au téléchargement des blocs prémiums au détriment du téléchargement des blocs sans qualité de service garantie. G) le routage entre chaque noeud client et chaque noeud de sauvegarde est un routage direct, c'est-à-dire un routage dans lequel les données transférées du noeud de sauvegarde vers le noeud client ne traversent aucun autre noeud de sauvegarde du réseau pair-à-pair. H) l'étape c) comporte la sélection d'un nombre n restreint de noeuds de sauvegarde parmi l'ensemble des noeuds de sauvegarde du réseau pair-à-pair et l'enregistrement sur chacun dc ces n noeuds dc sauvegarde d'un seul bloc prémium, où n est le nombre de blocs prémiums produits lors de l'étape b), cette sélection comportant : - l'association d'un indice de priorité à chaque noeud de sauvegarde, cet indice de priorité associé à un noeud étant proportionnel au produit bpm; x EPD; / VPmaxi, où : - bpmi est la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde, - VPmaxi est le volume maximal de blocs prémiums enregistrables dans la mémoire de ce noeud de sauvegarde, - EPDi est le volume maximal d'espace de stockage encore disponible dans la mémoire du noeud de sauvegarde et dans lequel un bloc prémium peut encore être enregistré sans dépasser le volume maximal VPmaxi, et - la sélection des n noeuds de sauvegarde associés aux indices de priorité les plus élevés. I) l'indice de priorité associé à chaque noeud de sauvegarde est également inversement proportionnel à un nombre NC; de noeuds clients ayant déjà enregistré des blocs prémiums dans ce noeud de sauvegarde. J) le volume maximal VPmax; de blocs prémiums enregistreables dans la mémoire du noeud de sauvegarde est déterminé à l'aide de la relation suivante : VPmax; = (VPmaxt x bpm;'k)/bpmt, où : - VPmaxt est le volume prédéterminé de données premium restaurahle à partir du réseau pair-à-pair dans la durée maximale prédéterminée de restauration, - bpm, est la hande passante montante réellement disponible mesurée pour le noeud de sauvegarde, - bpmt est la hande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prémiums dans la durée maximale prédéterminée de restauration, - k est un nombre entier minimal de blocs prémiums que le noeud client doit télécharger pour être capable de restaurer complètement les données prémiums. K) - l'étape c) comporte l'enregistrement de chacun des blocs premium dans un noeud de sauvegarde respectif du réseau pair-à-pair, et - l'étape h) comporte le découpage du fichier de sauvegarde en au moins k blocs prémiums, le nombre k étant le nombre minimal de blocs prémiums à télécharger depuis k noeuds distincts de sauvegarde pour être capable de restaurer les données prémiums, le nombre k étant telle que la condition suivante est vérifiée pour chacun des k noeuds distincts de sauvegarde : (1- (D,'''t/T)t > 0,9, où : - D,';,', est la durée maximale prédéterminée de restauration, - 1/T est la fréquence maximale des restaurations, - r est égal à E(bpmi x k/hpmt), - la fonction E(bpmi x k/hpmt) est la fonction qui retourne la partie entière du produit bpmi x Ic/bpmt, - bpmi est la bande passante montante réellement disponible mesurée, - bpmt est la bande passante minimale requise pour être capable de télécharger le volume prédéterminé de données premium à partir du réseau pair-à-pair dans la durée maximale prédéterminée de restauration. [0008] L'invention a également pour objet un support d'enregistrement d'informations, lisible par un microprocesseur, comportant des instructions pour exécuter le procédé de sauvegarde revendiqué, lorsque ces instructions sont exécutées par le microprocesseur. [0009] L'invention a également pour objet un système de sauvegarde de données dans un réseau pair-à-pair, ce système comportant : - au moins un calculateur électronique programmé pour exécuter un noeud client du réseau pair-à-pair, - des calculateurs électroniques programmés pour exécuter chacun un noeud de sauvegarde respectif du réseau pair-à-pair, et dans lequel - le noeud client est apte à exécuter les étapes suivantes lorsqu'il est exécuté par le calculateur électronique a) l'exécution d'un logiciel de sauvegarde pour générer un fichier de sauvegarde à partir duquel les données sauvegardées peuvent être restaurées, 6 h) le découpage du fichier de sauvegarde généré en plusieurs blocs de données, et c) l'enregistrement des blocs de données dans la mémoire de différents noeuds de sauvegarde du réseau pair-à-pair, dans lequel les données sont des données prémiums bénéficiant d'une qualité de service garantie, cette qualité de service correspondant à un volume prédéterminé de données premium restaurable à partir du réseau pair-à-pair en une durée maximale prédéterminée de restauration, le système étant apte à cet effet à réaliser les étapes suivantes : - le téléchargement par un noeud client du réseau pair-à-pair d'un ensemble d'un ou plusieurs bloc prémiums depuis un noeud de sauvegarde et, en même temps, la mesure de la bande passante montante réellement disponible du noeud de sauvegarde lors de ce téléchargement, chaque bloc prémium étant un bloc de données généré par le découpage du fichier de sauvegarde lors de l'étape h) lorsque les données sauvegardées sont des données premiums, - le calcul d'un volume maximal de blocs prémiums enregistrables dans la mémoire de ce noeud de sauvegarde en fonction de la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde et d'une bande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prémiums dans la durée maximale de restauration, et - lors de l'enregistrement des blocs prémiums dans un noeud de sauvegarde, le système inhibe l'enregistrement d'un bloc prérnium dans ce noeud de sauvegarde si cela conduit à dépasser le volume maximal de blocs prémiums enregistrables dans ce noeud de sauvegarde. [0010] Enfin, l'invention a également pour objet un noeud client pour le système de sauvegarde ci-dessus, dans lequel le noeud client est apte à exécuter les étapes suivantes lorsqu'il est exécuté par un calculateur électronique a) l'exécution d'un logiciel de sauvegarde pour générer un fichier de sauvegarde à partir duquel les données sauvegardées peuvent être restaurées, b) le découpage du fichier de sauvegarde généré en plusieurs blocs de données, et c) l'enregistrement des blocs de données dans la mémoire de différents noeuds de sauvegarde du réseau pair-à-pair, dans lequel les données sont des données prémiums bénéficiant d'une qualité de service garantie, cette qualité de service correspondant à un volume prédéterminé de données premium restaurable à partir du réseau pair-à-pair en une durée maximale prédéterminée de restauration, le noeud client étant apte à cet effet à réaliser les étapes suivantes - le téléchargement d'un ensemble d'un ou plusieurs bloc prémiums depuis un noeud de sauvegarde qui provoque la mesure de la bande passante montante réellement 7 disponible du noeud de sauvegarde lors de ce téléchargement, chaque bloc prémium étant un bloc de données généré par le découpage du fichier de sauvegarde lors de l'étape h) lorsque les données sauvegardées sont des données premiums, - le calcul d'un volume maximal de blocs prémiums enregistrables dans la mémoire de ce noeud de sauvegarde en fonction de la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde et d'une bande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prémiums dans la durée maximale de restauration, et - lors de l'enregistrement des blocs prémiums dans un noeud de sauvegarde, le noeud client inhibe l'enregistrement d'un bloc prémium dans ce noeud de sauvegarde si cela conduit à dépasser le volume maximal de blocs prémiums enregistrables dans ce noeud de sauvegarde. [0011] L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple non limitatif et faite en se référant aux dessins sur lesquels : - la figure 1 est une illustration schématique d'un système de sauvegarde de données dans un réseau pair-à-pair ; - la figure 2 est un organigramme d'un procédé de sauvegarde mis en oeuvre dans le système de la figure 1 ; - la figure 3 est un organigramme d'un procédé de mesure d'une bande passante montante mis en oeuvre dans le procédé de la figure 2. [0012] Dans ces figures, les mêmes références sont utilisées pour désigner les mêmes éléments. Dans la suite de cette description, les caractéristiques et fonctions bien connues de l'homme du métier ne sont pas décrites en détail. [0013] Chapitre I : Exemples de modes de réalisation [0014] La figure 1 représente un système 2 de sauvegarde dans un réseau pair-à-pair. Le système 2 comporte des noeuds raccordés les uns aux autres par l'intermédiaire d'un réseau 4. Typiquement, le réseau 4 est un réseau grande distance de transmission d'informations, comme par exemple le réseau connu sous le nom de « Internet ». Dans un tel réseau, les liaisons sont établies entre les différents noeuds, par exemple, en utilisant la pile de protocole IP (« Internet Protocol »). Ainsi, les différents noeuds du système 2 peuvent être séparés les uns des autres par une très grande distance, c'est-à-dire supérieure à 100 km ou 1000 km [0015] Chaque noeud, également parfois appelé « pair » du réseau 4, est à la fois utilisé comme un client et un serveur. Chaque noeud correspond à un module logiciel implémenté et exécuté sur un calculateur électronique raccordé au réseau 4. Ici, on distingue principalement trois types de noeud, appelés respectivement, les noeuds clients, les noeuds de sauvegarde et les noeuds tiers. Typiquement, ces trois types de 8 noeud sont implémentés sur chacun des calculateurs électroniques du système 2. Ainsi, un même calculateur électronique peut, en alternance ou simultanément, jouer le rôle d'un noeud client, d'un noeud de sauvegarde ou d'un noeud tiers. Toutefois, pour simplifier la description et la figure 1, chacun de ces types de noeud est décrit comme s'ils étaient implémentés sur des calculateurs électroniques différents des calculateurs électroniques sur lesquels sont implémentés les autres types de noeud. [0016] Classiquement, le système 2 comporte un très grand nombre de noeud, c'est-à-dire habituellement plus de 500 ou 1000 ou 10000 noeuds. Le système 2 comporte donc un très grand nombre de chacun des types de noeud. Pour simplifier la figure 1, seuls deux noeuds clients 10 et 12, deux noeuds de sauvegarde 14 et 16 et deux noeuds tiers 18 et 20 sont représentés. [0017] Ici, les noeuds clients sont identiques les uns aux autres et seul le noeud 10 est maintenant décrit plus en détail. Le noeud 10 est implémenté dans un dispositif 30 de stockage en réseau NAS (« Network Attached Storagc »). Le dispositif 30 est raccordé à un réseau 32 auquel sont connectés différents équipements 34, 36 qui sauvegardent des données dans le dispositif 30. Typiquement, le réseau 32 est un réseau local installé dans un bâtiment 38 tel qu'une entreprise, une maison ou un appartement. Ce réseau local 32 est raccordé au réseau 4, dans cet exemple, par l'intermédiaire d'un routeur 40. Par exemple, la liaison entre le routeur 40 et le réseau 4 est une liaison ADSL ("Asymetric Digital Subscriber Line") ou une liaison SDSL ("Symetric Digital Subscriber Line"). Généralement, le routeur 40 traduit les adresses Internet locales utilisées sur le réseau 32 en adresses Internet globales routables sur le réseau 4. Ce service du routeur 40 est connu sous l'acronyme de NAT (« Network Address Translation »). [0018] Ici, le dispositif 30 est raccordé au réseau 4 par l'intermédiaire du réseau local 32 et du routeur 40. [0019] Les équipements 34 et 36 sont des équipements qui génèrent des fichiers qui doivent ensuite être sauvegardés sur le dispositif 30. Par exemple, il s'agit d'équipements multimédias tels qu'une caméra, un appareil photo, un smartphone, un ordinateur portable ou de bureau, ou tout autre équipement multimédia. Les différents équipements connectés au réseau 32 peuvent enregistrer un ou plusieurs fichiers dans le dispositif 30 en passant, par exemple, par l'intermédiaire du réseau 32. [0020] Le dispositif 30 comporte un calculateur électronique 42. Le calculateur 42 comporte un microprocesseur 44 et une mémoire 46 raccordée au microprocesseur 44 par l'intermédiaire d'un bus de transmissions d'informations. Le microprocesseur 44 est apte à exécuter les instructions enregistrées dans la mémoire 46. La mémoire 46 comporte les instructions et les données nécessaires à l'exécution du procédé de la figure 2. 9 [0021] La mémoire 46 comporte notamment : - des données prémiums 50 et des données 52 sans qualité de service garantie enregistrées dans cette mémoire 46 par les équipements 34 et 36, et - les instructions du noeud client 10. [0022] Dans ce mode de réalisation, on distingue deux types de données à sauvegarder appelées, respectivement, "données prémiums" et "données sans qualité de service garantie". Les données prémiums correspondent à des données bénéficiant d'une qualité de service garantie. Ici, la qualité de service est respectée lorsque le critère de qualité suivant est satisfait : un volume prédéterminé VP,'' de données premiums sauvegardées dans le réseau pair-à-pair est restauré en une durée inférieure ou égale à une durée maximale D',', prédéterminée. Cette qualité de service est garantie avec une probabilité Pt qu'elle soit respectée lorsque la fréquence des restaurations de données prémiums est de 1/T. Autrement dit, sur la totalité des opérations de restauration d'un volume VP,'',' de données prémiums ayant lieu sur la période T, une proportion supérieure à Pt se termine en moins de 13,,''. Formulé autrement, cela signifie que pour plus de Pt % des restaurations déclenchées pendant la période T, le critère de qualité est satisfait. Par la suite, les differentes valeurs num& igues Armées permettent d'atteindre des probabilités Pt supérieure n90% et fInt quemment supérieure à 95°6. lei, la période T est choisie égale nu inferieure au temps mnyen entne pannes habituellement observe pour un disque dur. Ro exemple, la période T est i nféri cure à 5. ans ou 2 ans nu I an. lei, 1, pdri nde T est énale à 400 jours. Le temps moyen entre pannes est également connu nous l'acronyme MTHF tx Mea n Ti me Between Failures [0023] La qualité de service garantie correspond à une bande passante montante bpmt minimale nécessaire pour télécharger les données prémiums sauvegardées dans le réseau pair-à-pair vers le noeud client. Par "bande passante montante" on désigne la vitesse de transfert des données depuis un noeud vers le réseau 4. Par exemple, dans un cas simple où un bit correspond à un baud, la bande passante bpmt est égale à VP,'''/D ,'''. [0024] Ici, les valeurs du volume VP','' et de la durée D,''' sont choisies pour correspondre à une bande passante bpmt supérieure à 500 kbps ou 1000 kbps ou 5000 kbps. A titre d'illustration, ici, le critère de qualité est de iTo en 10 jours. Cela correspond à une bande passante bpmt de 9259 kbps si un bit con-espond à un baud. [0025] On notera que si la bande passante descendante du noeud client est inférieure à la bande passante bpmt, alors le critère de qualité ne peut pas être satisfait pour le volume VP,'' de données premiums. La bande passante "descendante" est la vitesse de transfert de données en provenance du réseau 4 vers le noeud client. On suppose ici que chaque noeud client met à disposition du système 2 une bande passante descendante supérieure ou égale à la bande passante bpmt. [0026] Par la suite, les valeurs du volume VP'''', de la durée Dma', et de la probabilité Pt sont accessibles à tous les noeuds clients du système 2. [0027] A l'inverse des données prémiums, pour les données 52, la qualité de service n'est pas garantie. Ainsi, pour les données 52 le critère de qualité peut fréquemment ne pas être satisfait. Pour cette raison, les données prémiums 50 sont généralement des données plus importantes que les données 52. Les données sans qualité de service garantie sont également appelées classiquement données « best effort ». [0028] Les instructions du noeud client 10 comportent notamment : - les instructions d'un logiciel 54 de sauvegarde, et - les instructions d'un module client 56 d'une base de données distribuée 58. [0029] Lorsqu'il est exécuté par le microprocesseur 44, le logiciel 54 sauvegarde et, en al- ternance, restaure les données 50, 52 dans les noeuds de sauvegarde du système 2. Ici, le logiciel 54 est un logiciel de sauvegarde incrémentale, c'est-à-dire qu'à chaque sauvegarde, seules les données modifiées depuis la précédente sauvegarde sont sauvegardées dans le réseau pair-à-pair. Le fonctionnement du logiciel 54 est décrit plus en détail en référence aux figures 2 et 3. En particulier, le logiciel 54 est capable de s'adresser directement à chaque module d'un autre noeud du système 2. Pour cela, par exemple, un routage selon le protocole 1Pv6 est mis en oeuvre pour former un réseau privé virtuel entre les différents modules des différents noeuds implémentés dans le système 2. [0030] Ici, la base de données distribuée 58 est une chaîne de blocs plus connue sous le terme anglais de « blockchain ». Ainsi, une fois qu'une information est enregistrée dans cette base de données 58, celle-ci n'est plus modifiable et n'est donc pas falsifiable. Par exemple, il s'agit d'une chaîne de blocs non-anonyme à permission. Ici, à titre d'illustration, la base de données 58 est implémentée dans les noeuds du système 2 en utilisant la technologie du projet HyperLedger de la fondation Linux En particulier, la base de données 58 peut être réalisée en mettant en oeuvre les briques technologiques développées dans le cadre des sous-projets HyperLedger Fabric et HyperLedger Composer. [0031] Lorsqu'il est exécuté par le microprocesseur 44, le module client 56 permet d'échanger avec un ou plusieurs modules serveurs de la base de données 58 afin d'enregistrer et, en alternance, de lire des informations dans cette base de données. [0032] Les noeuds de sauvegarde sont par exemple identiques les uns aux autres et seul le noeud 14 est maintenant décrit plus en détail. Le noeud 14 est implémenté sur un calculateur électronique 60. Le calculateur électronique 60 comporte un microprocesseur 62 et une mémoire 64 raccordée au microprocesseur 62. Le microprocesseur 62 est apte à exécuter les instructions enregistrées dans la mémoire 64. A cet effet, la mémoire 64 comporte les instructions du noeud 14 et notamment : - les instructions d'un module serveur 66 de sauvegarde, - les instructions d'un module client 68 de la base de données 58. 11 [0033] Le module 68 est par exemple identique ou similaire au module 56. [0034] Le module 66 est apte à sauvegarder dans la mémoire 64 des blocs de données transmis par le noeud client 10 et, en alternance, à transférer les blocs de données sauvegardés de sa mémoire 64 vers un noeud client. Dans cette description, les blocs de données sauvegardés correspondant aux données prémiums 50 sont appelés "blocs prémiums". Ces blocs prémiums sont dits "correspondre" aux données prémiums parce que c'est à partir de ces blocs prémiums que les données prémiums 50 peuvent être restaurées. Les blocs de données sauvegardés correspondant aux données 52 sont appelés blocs sans qualité de service garantie. Ici, la mémoire 64 comporte un espace 70 de stockage réservé au stockage des blocs prémiums et un espace 72 de stockage réservé au stockage des blocs sans qualité de service garantie. Les espaces 70 et 72 sont distincts et ne se chevauchent pas par exemple. [0035] Les noeuds tiers sont par exemple identiques les uns aux autres et seul le noeud tiers 18 est décrit plus en détail. Le noeud 18 est implémenté sur un calculateur électronique 80. Ce calculateur électronique 80 comporte un microprocesseur 82 et une mémoire 84 raccordée au microprocesseur 82. Le microprocesseur 82 est apte à exécuter les instructions enregistrées dans la mémoire 84. A cet effet, la mémoire 84 comporte les instructions du noeud 18 et notamment les instructions d'un module serveur 86 de la base de données 58. [0036] Le module serveur 86 est apte notamment à déterminer et à enregistrer des in- formations dans la base de données 58 en réponse à des requêtes des modules clients tels que les modules clients 56 et 68. Il est également apte à permettre la lecture des informations enregistrées dans la base de données 58 par tout noeud du système 2, et en particulier, par les noeuds clients. [0037] La mémoire 84 comporte également une partie seulement de la base de données 58 qui est distribuée sur l'ensemble des noeuds tiers du système 2. [0038] Comme représenté par des liaisons en pointillées visibles dans le réseau 4 de la figure 1, des liaisons de transmission d'informations relient directement entre eux les différents noeuds clients aux différents noeuds de sauvegarde. Pour cela, le routage mis en oeuvre entre ces noeuds clients et noeuds de sauvegarde est un routage direct. Par routage direct, on désigne ici le fait que les données échangées entre les noeuds clients et les noeuds de sauvegarde ne passent pas par l'intermédiaire d'un autre noeud de sauvegarde. Ainsi, chaque noeud client peut établir une liaison directe avec chaque noeud de sauvegarde du système 2 sans passer par l'intermédiaire d'un autre noeud de sauvegarde. Cela permet notamment à chaque noeud de sauvegarde de consacrer sa bande passante montante uniquement aux échanges de données entre lui-même et un ou plusieurs noeuds clients sans qu'une partie de cette bande passante soit consommée pour faire transiter des données d'un autre noeud de sauvegarde. 12 [0039] Le fonctionnement du système 2 va maintenant être décrit en référence au procédé des figures 2 et 3. [0040] Initialement, lors d'une phase 100 d'initialisation, chaque nouveau noeud de sauvegarde qui est raccordé au réseau 4 déclare la valeur de sa bande passante montante bpmi qu'il réserve pour le système 2. Par la suite, l'indice i est l'identifiant du noeud de sauvegarde qui permet d'identifier sans ambiguïté ce noeud de sauvegarde parmi l'ensemble des noeuds de sauvegarde du système 2. Chaque nouveau noeud de sauvegarde déclare également un volume maximal VPmaxi de sa mémoire 64 qu'il réserve au stockage des blocs prémiums. Le volume VPmaxi correspond donc à la taille de l'espace 70 de stockage de cc noeud de sauvegarde i. [0041] Éventuellement, lors de la phase 100, à chaque fois qu'un nouveau noeud de sauvegarde est raccordé au réseau 4, une phase d'échantillonnage, telle que la phase 160 décrite plus loin, est mise en oeuvre pour mettre à jour, des la connexion de cc nouveau noeud de sauvegarde, sa bande passante bpmi. [0042] Lors d'une phase 102, le noeud client 10 sauvegarde les données prémiums 50 dans le réseau pair-à-pair. Par exemple, c'est l'utilisateur du dispositif 30 qui identifie lui-même les données stockées dans la mémoire 46 qui doivent être traitées comme des données prémiums et celles qui doivent être traitées comme des données sans qualité de service garantie. Lors de la phase 102, seules les données prémiums sont sauvegardées dans le réseau pair-à-pair. [0043] Initialement, lors d'une étape 104, le logiciel 54 génère un fichier de sauvegarde in- crémentale des données prémiums 50. Ce fichier comporte typiquement uniquement les données qui ont été modifiées depuis la dernière sauvegarde de ces données prémiums 50. [0044] Ensuite, lors d'une étape 106, le logiciel 54 découpe le fichier de sauvegarde en n blocs prémiums. Ici, lors de l'étape 106, le logiciel 54 ajoute de la redondance aux données prémiums de manière à ce qu'en cas de perte ou de destruction de (n - k) blocs prémiums, il soit toujours possible de restaurer les données prémiums. Pour cela, par exemple, un codage de Reed-Salomon, noté RS(n, k), est utilisé, où n est un nombre entier positif et k est un nombre entier positif strictement inférieur à n. [0045] Le nombre n est typiquement 10 ou 100 ou 1000 fois inférieur au nombre total de noeuds de sauvegarde du système 2. [0046] Le nombre k est le nombre minimum de blocs prémiums à télécharger par le noeud client pour qu'il soit capable de restaurer le fichier de sauvegarde et donc les données prémiums contenues dans ce fichier. Il a été découvert qu'un nombre k élevée permettait d'obtenir une probabilité Pt élevée. Par exemple, ici, le nombre k est suffisamment grand pour que la condition (1) suivante soit vérifiée pour chaque noeud de sauvegarde : (1- (Din''/T)r)k > où : 13 - p est une valeur supérieure ou égale à la probabilité Pt, - D',, est la durée maximale prédéterminée de restauration, - le symbole "I" désigne l'opération de division, - 1/T est la fréquence maximale des restaurations, - r est défini par la relation suivante : r = E(bpmi x k/bpmt), - la fonction E(bpmi x k/bpint) est la fonction qui retourne la partie entière du produit bpmi x k/hpmt, - bpini est la bande passante montante réellement disponible mesurée pour le noeud de sauvegarde i, - bpint est la bande passante montante minimale requise Nur le orné, ile - le symbole "g" désigne bopeirinion de muultiplication- [0047] La valeur p. est ici choisie supérieure à 0,9 ou 0,95. Par exemple, dans ce mode de réalisation, elle est égale à 0,95. Pour p = 0, 95, le nombre k est supérieur à 3bpd/lipmf, bpd est la bande passante descendante du noeud client - Ici, k est supérieur ou égale à 40 ct, souvent compris entre 40 et 100 ou entre 40 et 60. [0048] -Ici, le nombre n est compris entre 1,3k et 2,5k et, de préférence, compris entre 1,5k et 2k. Les nombres n et k sont, par exemple, enregistrés dans la hase de données 58. [0049] Par exemple, ici, le codage de Reed-Salomon utilisé est un codage R8(64, 40). Ainsi, pour être capable de restaurer le fichier sauvegardé dans le réseau pair-à-pair, il faut seulement télécharger quarante blocs prémiums sur les soixante quatre blocs prémiums enregistrés dans ce réseau pair-à-pair. [0050] Lors d'une étape 108, le logiciel 54 enregistre les n blocs prémiums dans n noeuds de sauvegarde distincts du système 2. Par noeud de sauvegarde distinct, on désigne des noeuds de sauvegarde implémentés sur des calculateurs électroniques différents. [0051] Pour cela, le logiciel 54 commence par sélectionner, lors d'une opération 110, les n noeuds de sauvegarde dans lesquels les n blocs prémiums vont être enregistrés en appliquant les règles 1) et 2) suivantes. [0052] Règle 1) : Si par le passé l'étape 108 a déjà été exécutée et que l'espace de stockage prémium disponible EPDi sur chacun des n noeuds de sauvegarde précédemment sélectionnés est suffisant pour stocker les n nouveaux blocs prémiums à sauvegarder, alors le logiciel 54 sélectionne ces n noeuds de sauvegarde précédemment déjà utilisés. [0053] L'espace de stockage prémium disponible, noté EPDi, d'un noeud de sauvegarde i est défini par la relation suivante EPDi = VPmaxi - VPci, où : - VPmaxi est le volume maximum de blocs prémiums stockable dans la mémoire du noeud de sauvegarde i, et - VPci est le volume actuel ou courant de blocs prémiums déjà stockés dans la mémoire du noeud de sauvegarde i. [0054] Le volume de stockage est typiquement exprimé en Kilo-octets ou dans toute autre 14 unité standard de mesure similaire. Le volume VPmaxi est défini par la relation suivante : VPmaxi = k x bprni x VP'', / hpmt, où : - bpmi est la bande passante montante mesurée pour le noeud de sauvegarde i, et - hpmt et k sont les mêmes que ceux précédemment définis. [0055] La bande passante montante bpmi est calculée par le noeud client à partir d'informations enregistrées dans la hase de données 58, comme cela sera décrit plus loin par la suite. Lors de l'opération 110, le noeud client calcule aussi les volumes VPci, VPmaxi et l'espace EPD; à partir des données enregistrées dans la hase de données 58. [0056] Dans le cas d'une sauvegarde incrémentale, les nouveaux blocs prémiums sau- vegardés sont liés aux précédents blocs prémiums sauvegardés. En effet, pour restaurer correctement les données prémiums, il faut télécharger aussi bien les nouveaux blocs prémiums que les précédents blocs prémiums sauvegardés. Ainsi, la perte ou la destruction des précédents blocs prémiums sauvegardés peut rendre impossible la restauration des données prémiums même si les nouveaux blocs prémiums sont correctement téléchargés à partir du réseau pair-à-pair. Dès lors, dans le cas d'une sauvegarde incrérnentale, il n'y a pas de risque supplémentaire d'empêcher une restauration correcte des données prémiums si les nouveaux blocs prémiums sont sauvegardés en utilisant la même répartition sur les mêmes noeuds de sauvegarde que celle utilisée pour les précédents blocs prcmiums. Par contre, le fait de sauvegarder tous les blocs prémiums d'une même sauvegarde incrémcntalc sur les mêmes n noeuds de sauvegarde maximise le temps moyen entre pannes. En effet, le temps moyen entre pannes diminue quand le nombre de noeuds de sauvegarde différents utilisés pour sauvegarder les blocs prémiums augmente. [0057] Règle 2) : Si la règle 1) n'est pas applicable, alors le logiciel 54 sélectionne les n noeuds de sauvegarde ayant les indices de priorité Pi les plus élevés. [0058] L'indice de priorité Pi d'un noeud de sauvegarde i est par exemple calculé à l'aide de la formule suivante : Pi = bpmi x EPDi / (VPmaxi x NC,), où : - bpmi, EPR, VPmaxi sont les mêmes que précédemment définis, et - NC; est le nombre de noeuds clients ayant sauvegardé des blocs prémiums dans l'espace 70 du noeud de sauvegarde i. [0059] Le nombre NCi est par exemple obtenu à partir des informations enregistrées dans la base de données 58. [0060] Le terme bpmix EPD; / VPmaxi correspond à la bande passante montante encore disponible pour la restauration de données prémiums à partir du noeud de sauvegarde i. Ainsi, cet indice Pi favorise la sélection des noeuds de sauvegarde qui ont la plus grande bande passante montante encore disponible. Plus un noeud de sauvegarde est fréquemment sélectionné, plus sa bande passante montante encore disponible diminue. Ainsi, cet indice Pi tend à répartir uniformément la sauvegarde des blocs prémiums entre les différents noeuds de sauvegarde du système 2. De plus, si l'espace de stockage EPDi est nul ou très petit, l'indice Pi est nul ou très petit ce qui empêche la sélection de ce noeud de sauvegarde. Le fait que l'indice Pi diminue au fur et à mesure que le nombre NC; augmente, tend quant à lui à limiter le nombre de noeuds clients différents stockant des blocs prémiums sur un même noeud de sauvegarde. Cela réduit la probabilité de conflit entre restaurations simultanées. [0061] On notera que les règles 1) et 2) inhibent systématiquement l'enregistrement de blocs prémiums dans un noeud de sauvegarde si cela conduit à dépasser son volume VPmaxi. Grâce à cela, le critère de qualité peut être satisfait. [0062] Une fois que les n noeuds de sauvegarde ont été sélectionnés, lors d'une opération 112, chacun des n blocs prémiums est enregistré dans l'espace 70 de stockage d'un noeud de sauvegarde respectif choisi parmi ces n noeuds de sauvegarde sélectionnés. Ainsi, les n blocs prémiums sont enregistrés chacun sur un noeud de sauvegarde différent. [0063] Typiquement, avant de transférer chaque bloc prémium vers le noeud de sauvegarde où il doit être enregistré, ce bloc prémium est chiffré avec une clé secrète appelée "clé client" et connue seulement du noeud client 10. Ainsi, les blocs prémiums enregistrés dans les noeuds de sauvegarde sont tous chiffrés avec cette clé client. Dès lors, seul le noeud client 10 est capable de déchiffrer ces blocs prémiums pour restaurer les données prémiums. [0064] Par exemple, lors de l'opération 112, le logiciel 54 enregistre dans la base de données 58, par l'intermédiaire du module client 56, des informations publiques sur la sauvegarde qu'il a réalisée. Ici, ces informations publiques comportent : - l'identifiant des n noeuds de sauvegarde utilisés, - l'identifiant du noeud client 10, - l'identifiant des blocs prémiums enregistrés sur chacun des noeuds de sauvegarde ainsi que, éventuellement, leur taille. [0065] Ces informations publiques permettent notamment à chaque noeud client de calculer le nombre NC, et le volume VPci lorsque cela est nécessaire. [0066] Après l'opération 112, l'étape 108 est terminée et le procédé retourne à l'étape 104 pour procéder à la sauvegarde d'autres données prémiums dans le réseau pair-à-pair pour le même noeud client ou pour d'autres noeuds clients. [0067] Après la phase 102 de sauvegarde, le noeud client 10 peut procéder à une phase 120 de restauration des données prémiums sauvegardées dans le réseau pair-à-pair. On notera que par rapport à un système de partage de fichiers dans un réseau pair-à-pair, ici, le noeud client 10 conserve normalement en permanence une copie dans sa mémoire 46 des données prémiums sauvegardées dans le réseau pair-à-pair. Ainsi, une restauration des données prémiums est généralement déclenchée uniquement en cas de 16 perte ou d'endommagement de ces données prémiums dans la mémoire 46. [0068] Lors de la phase 120, le logiciel 54 téléchargc un ensemble complet de blocs prémiums à partir du réseau pair-à-pair pour permettre la restauration des données prémiums. Ici, l'ensemble complet comporte k blocs prémiums pour chaque fichier de sauvegarde. En effet, pour restaurer un fichier de sauvegarde, à cause de la redondance ajoutée lors de l'étape 106, il n'est pas nécessaire de téléchargér les n blocs prémiums sauvegardés dans le réseau pair-à-pair mais seulement k d'entre eux. [0069] Ainsi, lors de la phase 120, le logiciel 54 sélectionne uniquement k noeuds de sauvegarde parmi les n noeuds de sauvegarde utilisés pour sauvegarder des blocs prémiums. Pour cela, il sélectionne en priorité les noeuds de sauvegarde qui ne sont pas actuellement déjà utilisés pour restaurer des données prémiums. Par exemple, il sélectionne les k noeuds de sauvegarde ayant les indices PR; les plus élevés parmi les n noeuds de sauvegarde possibles. A titre d'illustration, ici, l'indice PR; associé à un noeud de sauvegarde i est défini par la relation suivante : PR; = bpm; - x bpmt/k, où : - hpmt et k sont les mêmes que précédemment définis, et - est le nombre de transferts de blocs prémiums actuellement en cours depuis ce noeud de sauvegarde i vers ri; noeuds clients. Le nombre est par exemple déterminé à partir des informations enregistrées dans la base de données 58. [0070] -Ici, lorsqu'un noeud de sauvegarde est simultanément impliqué dans plusieurs phase de restauration pour plusieurs noeuds clients, il partage à part égale sa bande passante montante entre ces différentes phase de restauration. [0071] Cette sélection des k noeuds de sauvegarde en fonction de leur capacité à allouer à cette restauration une bande passante montante supérieure à bpmt/k, augmente substantiellement la probabilité Pt de satisfaire le critère de qualité. En effet, le seul cas où le critère de qualité ne pourrait pas être satisfait est le cas où il serait impossible de sélectionner k noeuds de sauvegarde capable d'allouer une bande passante montante supérieure à bpmt/k à la restauration de données prémiums. Or, il a été observé que ce cas est extrêmement improbable dans le système 2 où le nombre de noeuds de sauvegarde est au moins 10 ou 100 fois supérieur au nombre k. [0072] Lors de la restauration des données prémiums, chacun des k noeuds de sauvegarde alloue prioritairement sa bande passante montante au téléchargement des blocs de données prémiums. Puisque les k blocs prémiums sont téléchargés à partir de k noeuds de sauvegarde différents, ces k téléchargements sont exécutés en même temps et en parallèle. Une fois le téléchargement des k blocs prémiums terminés, le logiciel 54 reconstruit le fichier de sauvegarde. [0073] Dans le cas d'une sauvegarde incrémentale, la restauration complète des données prémiums peut nécessiter la restauration de tous les fichiers de sauvegarde in- 17 crémentale générés, puis sauvegardés dans le réseau pair-à-pair. [0074] Lors de la phase 120, une étape 130 de mesure de la bande passante montante bprni réellement disponible pour chacun des k noeuds de sauvegarde sélectionnés est exécutée. Les opérations pour réaliser l'étape 130 sont imbriquées avec des opérations mises en oeuvre pour restaurer les données prémiums lors de la phase 120. Les opérations qui permettent à la fois de restaurer les données prémiums et de mesurer la bande passante bprni sont décrites plus en détail dans le procédé de la figure 3. [0075] Dans ce mode de réalisation, l'exécution de l'étape 130 est autorisée uniquement pour les noeuds de sauvegarde qui sont seulement impliqué dans une seule phase de restauration. Autrement, l'étape 130 n'est pas exécutée pour les noeuds de sauvegarde sélectionné qui sont simultanément impliqués dans plusieurs phases 120 de restauration pour plusieurs noeuds clients différents. En effet, cela simplifie et améliore la mesure de la bande passante bpmi. [0076] En alternance avec la phase 102, le logiciel 54 peut procéder à une phase 140 de sauvegarde des données 52. Par exemple, la phase 140 est identique à la phase 102 sauf que : - les blocs prémiums sont remplacés par des blocs sans qualité de service garantie, - l'opération 110 est remplacée par une opération 142, et - les blocs 52 sont enregistrés dans l'espace 72 des noeuds de sauvegarde. [0077] L'opération 142 est identique à l'opération 110, sauf que les règles 1) et 2) sont remplacées, par exemple, par les règles 3) et 4) suivantes. [0078] Règle 3) : Si par le passé, l'étape 108 a déjà été exécutée et que l'espace 72 de stockage disponible sur chacun des n noeuds de sauvegarde précédemment sélectionnés est suffisant pour enregistrer les nouveaux blocs sans qualité de service garantie, alors le logiciel 54 sélectionne les n noeuds de sauvegarde précédemment utilisés pour stocker les précédents n blocs sans qualité de service garantie. [0079] Règle 4) : Si la règle 3) n'est pas applicable, alors le logiciel 54 sélectionne les n noeuds de sauvegarde ayant les plus grands espaces 72 de stockage encore disponibles pour enregistrer les nouveaux blocs sans qualité de service garantie. [0080] Après la phase 140, le noeud client 10 peut exécuter une phase 150 de restauration des données 52. La phase 140 est par exemple identique à la phase 120 sauf que : - elle ne comporte pas l'étape 130 de mesure de la bande passante montante, et - en cas de restauration simultanée à partir d'un même noeud de sauvegarde de blocs prémiums et de blocs sans qualité de service garantie, le noeud de sauvegarde alloue sa bande passante montante prioritairement au téléchargement des blocs prémiums au détriment de la bande passante allouée pour le téléchargement des blocs sans qualité de service garantie. [0081] Dès que des blocs prémiums ont été sauvegardés sur des noeuds de sauvegarde par un 18 noeud client, le noeud client peut déclencher une phase 160 d'échantillonnage pour mettre à jour la bande passante bpmi d'un ou plusieurs noeuds de sauvegarde en dehors des périodes de temps où la phase 120 est exécutée. Au préalable, si aucun bloc prémium n'est déjà enregistré dans l'espace 70, avant d'exécuter la phase 160, le noeud client enregistre dans cet espace 70 de stockage prémium un ou plusieurs blocs prémiums nécessaires pour l'exécution de la phase 160. [0082] La phase 160 est, par exemple, identique à l'étape 130 sauf que seule un ensemble réduit de blocs prémiums enregistrés dans les espaces 70 des noeuds de sauvegarde est téléchargé. Cet ensemble réduit de blocs prémiums téléchargé est trop petite pour permettre la restauration complète des données prémiums. Typiquement, la taille de cet ensemble réduit de blocs prémiums téléchargé lors de la phase 160 est inférieure à 10-3 ,EPio ou 104,,,,'), où EP') est égal à la taille de l'ensemble complet de blocs prémiums nécessaires pour restaurer les données prémiums. [0083] Ainsi, la phase 160 peut être exécutée beaucoup plus rapidement que l'étape 130 puisque la quantité de données à télécharger pour mesurer la bande passante bpmi du noeud de sauvegarde i est 10' ou 10 4 fois inférieure à la quantité de données télé-chargées lors de l'étape 130. La phase 160 permet donc de mettre à jour les bandes passantes bprni plus fréquemment que l'étape 130. [0084] Dans le système 2, le noeud client 10 conserve normalement une copie des données sauvegardées dans sa mémoire 46. Ainsi, dans ce mode de réalisation, dès qu'un bloc de données sauvegardé dans le réseau pair-à-pair est perdu ou endommagé, le noeud 10 reconstruit immédiatement ce bloc perdu ou endommagé est le sauvegarde à nouveau dans le réseau pair-à-pair. Dès lors, en pratique, les n blocs de données sauvegardés sont presque toujours disponibles dans le réseau pair-à-pair. Cela maximise le nombre de choix possibles pour les k noeuds de sauvegarde à partir desquels doivent être téléchargés les k blocs lors de la phase 120 ou 150 de restauration. Pour détecter qu'un bloc de données est perdu ou endommagé, par exemple, le noeud 10 compare à intervalle régulier une signature des données sauvegardées dans sa mémoire avec une signature des blocs de données sauvegardés dans le réseau pair-à-pair. Les signatures comparées sont par exemple obtenues en appliquant une fonction de hachage, connue sous le terme anglais de "hash", aux blocs de données sauvegardés dans le réseau pairà-pair et aux blocs de données obtenus à partir des données correspondantes enregistrées dans la mémoire 46. [0085] La figure 3 représente plus en détail un exemple de réalisation de la phase 120 et de l'étape 130. Les étapes qui suivent sont décrites dans le cas particulier des échanges entre le noeud client 10 et un noeud de sauvegarde i à partir duquel un bloc prémium est téléchargé par ce noeud client 10. Toutefois, de préférence, ces étapes sont réalisées pour tous les k noeuds de sauvegarde à partir desquels le noeud client 10 télécharge des 19 blocs prémiums. [0086] Initialement, lors d'une opération 170, le logiciel 54 du noeud client 10 envoie, par l'intermédiaire du module client 56, une requête de début de téléchargement à l'un des noeuds tiers. Par la suite, la description est faite dans le cas particulier où le noeud tiers est le noeud tiers 80. Cette requête contient typiquement l'identifiant du noeud de sauvegarde i, l'identifiant du noeud client 10 et l'identifiant du ou des blocs prémiums à télécharger à partir de l'espace 70 de stockage du noeud de sauvegarde i. [0087] Dans ce mode de réalisation, on suppose que la hase de données 58 contient déjà les informations nécessaires pour déterminer la taille des blocs prémiums à partir de leurs identifiants. Si cc n'est pas le cas, alors la requête de début de téléchargement contient en plus la taille de chacun des blocs prémiums à télécharger et cette taille est aussi enregistrée dans la hase de données 58 par le noeud tiers 80. [0088] Lors d'une opération 172, le noeud tiers 80 enregistre les différentes informations reçues dans la base de données 58 puis transmet cette requête de début de téléchargement au noeud de sauvegarde i. [0089] En réponse, lors d'une opération 174, sauf cas très particulier, le noeud de sauvegarde i indique au noeud tiers 80 qu'il accepte de transférer les blocs prémiums identifiés vers le noeud client 10. Le noeud tiers 80 enregistre dans la hase de données 58 que le transfert est accepté et indique au noeud client 10 que ce transfert a été accepté. Dans ce cas, tout téléchargement en cours de bloc sans qualité de service garantie à partir du noeud de sauvegarde i est immédiatement interrompu pour allouer la totalité de la bande passante bpmi au téléchargement des blocs prémiums. Le téléchargement des blocs sans qualité de service garantie sera par exemple repris automatiquement à l'issue de la phase 120. [0090] Si le transfert des blocs prémiums est accepté, lors d'une opération 176, le noeud client transmet directement au noeud de sauvegarde i une requête de chargement des blocs prémiums à partir de ce noeud de sauvegarde. Cette requête est par exemple une requête conforme au protocole HTTP. Lors de cette opération 176, il transmet en même temps au noeud tiers une demande de début de téléchargement. [0091] En réponse à cette demande de début de téléchargement, lors d'une opération 180, le noeud tiers 80 enregistre dans la base de données 58 l'instant de réception de cette demande de début de téléchargement comme étant l'instant tri de début de téléchargement. Immédiatement après cet enregistrement ou en même temps, le noeud tiers 80 indique au noeud de sauvegarde i qu'il peut débuter le transfert des blocs prémiums vers le noeud client 10. Par exemple, pour cela, le noeud tiers 80 transmet au noeud de sauvegarde i la demande de début de téléchargement reçue. [0092] Lors d'une opération 182, le noeud de sauvegarde transfére le ou les blocs prémiums vers le noeud client 10. Le noeud de sauvegarde commence ce transfert uniquement après avoir reçu la demande de début de téléchargement transmise par le noeud tiers 80. Le transfert des blocs prémiums du noeud de sauvegarde vers le noeud client 10 se fait par l'intermédiaire d'une liaison directe entre ces deux noeuds. Lors du transfert des blocs prémiums vers le noeud 10, le noeud de sauvegarde chiffre, par exemple à la volée, les blocs prémiums transférés vers le noeud 10 avec une clé de chiffrement secrète appelée "clé de sauvegarde" et inconnue du noeud 10. Ainsi, à cc stade, les blocs prémiums téléchargés par le noeud 10 sont chiffrés deux fois, une fois avec sa clé client et une fois avec la clé de sauvegarde. Ainsi, à ce stade, les blocs prémiums téléchargés sont inutilisables par le noeud 10. [0093] Lorsque le transfert de tous les blocs prémiums vers le noeud 10 est terminé, lors d'une opération 184, le noeud de sauvegarde indique directement au noeud 10 que ce transfert est terminé. [0094] Lors de cette opération 184, en réponse, le noeud 10 envoie au noeud de sauvegarde une requête pour obtenir la clé de sauvegarde lui permettant de déchiffrer les blocs prémiums transférés. Par exemple, cette requête est une requête HTTP. En même temps, le noeud 10 transmet au noeud tiers 80 une déclaration de fin de téléchargement. [0095] Lors d'une opération 186, en réponse à cette déclaration de fin de téléchargement, le noeud tiers 80 enregistre l'instant de réception de cette déclaration en tant qu'instant tf de fin de téléchargement dans la base de données 58. Ainsi, dans ce mode de réalisation, c'est le noeud tiers qui mesure les instants td et t t -f ct nnn pas lcs noeud. clicnt ct .auttrcgardc- [0096] En même temps, il indique au noeud de sauvegarde qu'il a reçu la déclaration de fin de téléchargement. Par exemple, pour cela, le noeud tiers 80 transfert immédiatement la déclaration de fin de téléchargement au noeud de sauvegarde. [0097] En réponse à la réception de la déclaration de fin de téléchargement, lors d'une opération 188, le noeud de sauvegarde compare à un seuil prédéterminé SI l'écart entre l'instant où il a reçu cette déclaration de fin de téléchargement et l'instant où le téléchargement s'est réellement terminé. Par exemple, l'instant où le téléchargement s'est réellement terminé est l'instant où il a informé le noeud 10 que le transfert des blocs prémiums était terminé. [0098] Si cet écart est inférieur au seuil S,, lors d'une opération 190, le noeud de sauvegarde transmet directement au noeud client 10 la clé de sauvegarde nécessaire pour déchiffrer les blocs prémiums téléchargés par le noeud 10. Dans le cas contraire, il provoque le marquage de l'instant tf de fin de téléchargement enregistré dans la base de données 58 comme étant invalide. Par exemple, pour cela, dans ce mode de réalisation, le noeud de sauvegarde ne transmet pas la clé de sauvegarde au noeud 10. [0099] Uniquement s'il reçoit la clé de sauvegarde, lors d'une opération 192, le noeud 10 transmet une requête de validation du téléchargement au noeud tiers 80. [0100] Lors d'une opération 194, en réponse à la réception de cette requête de validation, le 21 noeud tiers enregistre dans la hase de données 58 que l'instant tf de fin de téléchargement enregistré est valide. [0101] Si la requête de validation n'est pas reçue, l'instant tr de fin de téléchargement est marqué comme étant invalide. Ainsi, en s'abstenant de transmettre la clé de sauvegarde au noeud 10, le noeud de sauvegarde provoque le marquage de l'instant de fin de téléchargement comme étant invalide. [0102] Les informations enregistrées dans la hase de données 58 sont consultables par tous les noeuds clients du système 2. Ainsi, à partir des instants t,,, tf et de l'identifiant des blocs prémiums téléchargés et de l'identifiant du noeud de sauvegarde, tout noeud client est capable de mesurer la hande passante bpmi pour le noeud de sauvegarde i. Par exemple, pour cela, dans l'hypothèse où un bit est égal à un baud, la hande passante bpmi est calculée à l'aide de la relation suivante : bpmi = VP/(tf - td), où VP est la taille des blocs prémiums téléchargés entre les instants td et tf. [0103] Si, dans la hase de données 58, le transfert des blocs prémiums est marqué comme n'ayant pas été accepté ou si l'instant tf est marqué comme invalide, la mesure de la bande passante bpm; à partir de ces données enregistrées dans la hase de données 58 est interdite. Dans ce cas, ces données marquées comme invalides sont systématiquement ignorées par les noeuds clients et ne sont jamais prises en compte pour le calcul d'une hande passante bprni. [0104] De préférence, le système 2 interdit l'enregistrement de données prémiums dans un noeud de sauvegarde tant qu'aucune mesure valide de sa bande passante bpm; n'est disponible. Par exemple, cela interdit de sauvegarder des blocs prémiums sur un noeud de sauvegarde qui provoquerait systématiquement le marquage de l'instant tf comme étant invalide. [0105] Chapitre II : Variantes [0106] Variantes de la mesure de la bande passante bpm : [0107] Dans des cas particuliers où les noeuds de sauvegarde et/ou le noeud client sont des noeuds fiables, alors les mesures des instants td et tf sont réalisées par le noeud client et/ ou le noeud de sauvegarde. Dans un tel mode de réalisation, ce n'est pas le noeuds tiers qui mesure les instants tri et tf. [0108] Dans un autre mode de réalisation, la bande passante bpm; est directement enregistrée dans la base de données 58. Dans ce dernier cas, les informations utilisées pour calculer cette bande passante bpmi peuvent ne pas être enregistrées dans la base de données 58. [0109] Le chiffrement, par le noeud de sauvegarde, des blocs prémiums transférés vers le noeud client lors de la mesure de la bande passante bpm; peut être omis dans un mode de réalisation simplifié. [0110] La possibilité de marquer l'instant tr comme étant invalide peut aussi être omise [0111] Dans un autre mode de réalisation, l'interdiction d'autres téléchargements de blocs prémiums par d'autres noeuds clients pendant la mesure de la bande passante bpmi est omis. Dans ce cas, la mesure de la bande passante bpm; peut être moins fiable dans les rares cas où le même noeud de sauvegarde est simultanément impliqué dans plusieurs phase 120 de restauration. [0112] Dans une mode de réalisation particulier de la phase 120 de restauration, si un autre téléchargement de blocs prémiums est déjà en cours à partir d'un des noeuds de sauvegarde sélectionné, lors de l'opération 174, cc noeud de sauvegarde indique au noeud tiers 80 que le transfert est refusé. Le refus du transfert est alors enregistré dans la hase de données 58 par le noeud tiers 80. Puis le noeud tiers 80 indique ce refus au noeud client 10. En réponse, le noeud client 10 interrompt la restauration demandée et renverra plus tard une nouvelle requête de début de téléchargement. Dans ce mode de réalisation particulier, un noeud de sauvegarde ne peut pas être impliqué simultanément dans plusieurs phases 120 de restauration. [0113] Dans un mode de réalisation particulier, dans le cas où une première et une seconde exécutions de la phase 120, respectivement, par un premier et un second noeuds clients, se chevauchent temporellement et conduisent à télécharger des blocs prémiums à partir d'un même noeud de sauvegarde i, alors ces deux exécutions sont réalisées en parallèle. Dans ce cas, la bande passante montante du noeud de sauvegarde i est partagée entre ces deux exécutions de la phase 120. La bande passante montante bpm, 'i calc,,,tiaen prenant en compte les données eniepjstrees dans la hase de données 54à la fois lois des premlei e et seconde exécutions de la phase 120 qui se cte ,auchent. En effet, à partir des instants td et tf de téléchargement enregistrés lors des première et seconde exécutions de la phase 120, il est possible de déterminer précisément le début et la fin de l'intervalle de temps pendant lequel les deux exécutions se chevauchent. Ainsi, à partir des informations enregistrées clans la base de données 58 lors des première et seconde exécutions de la phase 120, il est possible de calculer correctement la bande passante bpmi. Par exemple, pour cela, clans le cas où la première exécution de la phase 120 débute avant la seconde exécution de la phase 120, alors le système d'équations suivant est résolu : V, = bpmy(td2 - td,) + bpm1.2(tf, - td2), V2 = bpm2,,(tf i - td2) + bpm2,2(tf2 - tf,), bpm2,2 = bpm,,,, 1,1,1112,1 OÙ : - tdl et td, sont les instants de début de téléchargement enregistrés dans la base de données 58 par, respectivement, les première et seconde exécutions de la phase 120, - tf1 et tr sont les instants de fin de téléchargement enregistrés dans la base de donnés 58 par, respectivement, les première et seconde exécutions de la phase 120, 23 - V, et V, sont les tailles des blocs prémiums téléchargés pendant, respectivement, les première et seconde exécutions de la phase 120, - bpm,,, est la bande passante montante pendant l'intervalle [tdiad,], - bpm,', est la bande passante montante pendant l'intervalle [triarl, - bpm,2 et bpm,., sont les bandes passantes montantes consacrées au téléchargement, respectivement, des volumes V, et V, de blocs prémiums pendant l'intervalle [td,,;tf,] où ces deux téléchargements se chevauchent. Pour construire ce système d'équations, on a utilisé le fait que pendant l'intervalle [ti,2;t,- d, la bande passante montante est partagée à part égale entre les première et seconde exécutions de la phase 120. [0114] Une fois que cc système d'équations est résolu, la mesure de la bande passante bpm, est prise égale à bpm,, ou à bpm2'2. [0115] En variantes, la base de données utilisée pour sauvegarder les informations permettant de mesurer la bande passante bpmi est une chaîne de blocs anonymes ou toute autre base de données susceptible de garantir la fiabilité des informations qu'elle contient. [0116] L'étape 130 n'est pas nécessairement exécutée systématiquement à chaque fois que la phase 120 est exécutée. En variantes, elle est uniquement exécutée lors de certaines exécutions de la phase 120 de restauration. [0117] D'autres modes de réalisation sont possibles pour indiquer au noeud de sauvegarde que la demande de début ou la déclaration de fin de téléchargement a été reçue par le noeud tiers. Par exemple, au lieu de transférer cette demande ou déclaration au noeud de sauvegarde, le noeud de sauvegarde est programmé pour consulter fréquemment la base de données 58 afin de repérer immédiatement l'enregistrement de l'instant tr, ou tf dans cette base de données. [0118] L'instant tf peut être marqué comme étant invalide par d'autres moyens. Par exemple, en variantes, le noeud de sauvegarde envoie au noeud tiers une requête d'invalidation de l'instant tf. En réponse, le noeud tiers marque dans la base de données 58 que l'instant tf est invalide. [0119] En variantes, lors de la phase d'échantillonnage 160, les blocs prémiums téléchargés à partir du noeud de sauvegarde sont des blocs prémiums enregistrés dans ce noeud de sauvegarde par d'autres noeuds clients ou préenregistrés dans le noeud de sauvegarde par tout autre moyen. Dans ce cas, les blocs prémiums téléchargés sont chiffrés avec une clé inconnue du noeud client et, après les avoir téléellarge, le noeud client ne peut pas les exploiter. [0120] En variantes, la phase 160 d'échantillonnage est omise. Dans un autre mode de réa- lisation, à l'inverse, la mesure de la bande passante bpm, est uniquement réalisée lors de la phase 160. [0121] Variantes du système 2 : 24 [0122] En variantes, le routage direct des blocs prémiums et/ou des blocs sans qualité de service garantie est omis. Dans ce cas, les blocs prémiums ou les blocs sans qualité de service garantie téléchargés à partir d'un noeud de sauvegarde peuvent traverser un ou plusieurs autres noeuds de sauvegarde avant d'atteindre le noeud client de destination. [0123] L'utilisation d'un routeur 40 pour raccorder le noeud client 10 au réseau 4 peut être omise, par exemple, s'il n'est pas nécessaire de traduire une adresse Internet locale ou une adresse Internet globale. Cela peut être le cas si un adressage IPv6 est utilisé. [0124] En variantes, l'équipement qui génère les fichiers à enregistrer dans le dispositif 30 est directement connecté au dispositif 30, par exemple, par l'intermédiaire d'un port USB (« Universal Serial Bus »). Dans ce cas, le réseau local 32 peut être omis. [0125] La qualité de service garantie peut aussi être directement exprimée sous la forme de la bande passante montante minimum bpmt garantie pour la restauration des données prémiums à partir du réseau pair-à-pair. [0126] Le noeud client peut être implémenté dans d'autres dispositifs qu'un dispositif de stockage en réseau NAS. Par exemple, le noeud 10 est implémenté dans un ordinateur ou dans l'un des équipements multimédias 34, 36. [0127] Dans un mode de réalisation particulier, plusieurs noeuds de sauvegarde sont im- plémentés sur un même calculateur électronique. [0128] Autres variantes du procédé de sauvegarde : [0129] D'autres méthodes de codage que le codage de Reed-Salomon existent pour ajouter de la redondance aux données sauvegardées. Par exemple, toute méthode consistant à ajouter un code correcteur d'effacement peut convenir. Cette famille de méthodes est connue sous l'acronyme ECC (« Error-Correcting Code »). Par exemple, on peut citer comme alternatives au code de Reed-Salomon, le code ZFEC du projet Tahoe-LAFS, ou le code Parchives. Une autre méthode pour ajouter la redondance nécessaire aux données sauvegardées consiste simplement à dupliquer les blocs de données sauvegardés. [0130] Dans un mode de réalisation simplifié, aucun bloc de redondance n'est ajouté lors de l'étape 106. Dans ce cas, les nombres n et k sont égaux. [0131] D'autres modes de réalisation de l'indice de priorité P1 sont possibles. Par exemple, dans un mode de réalisation simplifié, l'indice Pi est indépendant du nombre NC; de noeuds clients ayant déjà sauvegardé des blocs prémiums sur ce noeud de sauvegarde. Dans un autre mode de réalisation très simplifié, l'indice Pi dépend seulement de l'espace EPDi. [0132] D'autres règles de sélection des noeuds de sauvegarde lors de l'opération 110 sont utilisables. Par exemple, dans un mode de réalisation simplifié, la règle 1) est omise. En variantes, une règle supplémentaire peut être ajoutée. Par exemple, la règle 5) suivante peut être ajoutée. [0133] Règle 5) : si la règle 1) n'est pas applicable car l'espace EPDi sur le noeud de sauvegarde i n'est pas suffisant, alors le noeud de sauvegarde i est contacté pour qu'il augmente, si possible, sa bande passante bpmi et donc son volume VPmaxi. Dans le cas où le noeud de sauvegarde i augmente suffisamment son volume VPmaxi, alors la règle 1) est appliquée. Dans le cas contraire, où le noeud de sauvegarde i n'augmente pas suffisamment son volume VPmaxi, la règle 3) n'est pas applicable. Dans cette variante, la règle 2) est modifiée pour s'appliquer si la règle 1) et la règle 3) ne sont pas applicables. [0134] En variante, dans un mode de réalisation particulier, la sauvegarde de données sans qualité de service garantie est omise. [0135] Le logiciel 54 n'est pas nécessairement un logiciel de sauvegarde incrémentale. Par exemple, il peut s'agir d'un logiciel de sauvegarde différentiel ou d'un logiciel de sauvegarde complète. [0136] L'identification des données sauvegardées comme étant soit des données prémiums, soit des données sans qualité de service garantie, peut être réalisée automatiquement, par exemple, en fonction de l'extension des fichiers sauvegardés. [0137] L'utilisation de la bande passante montante encore disponible pour tendre vers une répartition uniforme des blocs prémiums sur les différents noeuds de sauvegarde peut être mise en oeuvre indépendamment de l'interdiction d'enregistrer des blocs prémiums sur un noeud de sauvegarde si cela conduit à dépasser le volume VPmaxi. Par exemple, cela peut être mis en oeuvre dans un procédé de sauvegarde de données dans un réseau pair-à-pair dans lequel, l'enregistrement de blocs prémiums dans un noeud de sauvegarde i au-delà du volume VPmaxi est autorisé. Cela peut aussi être mis en oeuvre dans un procédé de sauvegarde où le volume VPmaxi est déterminé sans prendre en compte la bande passante bpmi,'',irée. [0138] Le choix d'un nombre k qui vérifie la condition (1) peut aussi être mis en oeuvre indé- pendamment de l'interdiction d'enregistrer des blocs prémiums sur un noeud de sauvegarde si cela conduit à dépasser le volume VPmaxi. Par exemple, cela peut être mis en oeuvre dans un procédé de sauvegarde de données dans un réseau pair-à-pair dans lequel, l'enregistrement de blocs prémiums dans un noeud de sauvegarde i au-delà du volume VPmaxi est autorisé. Cela peut aussi être mis en oeuvre dans un procédé de sauvegarde où le volume VPmaxi est déterminé sans prendre en compte la bande passante bpmi,,''ré:. [0139] Chapitre III : Avantages des modes de réalisation décrits : [0140] Les modes de réalisation décrits permettent d'améliorer la qualité de service. En effet, la mesure de la bande passante montante bpmi disponible pour chaque noeud de sauvegarde permet d'obtenir cette information sans avoir recours, par exemple, aux déclarations d'un administrateur du noeud de sauvegarde. Ainsi, l'information sur la 26 bande passante bpmi est plus fiable que si elle était simplement déclarée par l'administrateur du noeud de sauvegarde. De plus, elle peut être mise à jour automatiquement et régulièrement. Puisque l'information sur la bande passante bpm, est plus fiable, le risque d'enregistrer un bloc prémium dans un noeud de sauvegarde qui n'aurait pas la bande passante bpm, suffisante pour satisfaire le critère de qualité est faible. Cela augmente donc la probabilité Pt et la fiabilité du procédé de sauvegarde. [0141] Le fait que les instants de début et de fin de téléchargement soient mesurés et en- registrés dans la hase de données 58 par des noeuds tiers rend très difficile pour le noeud de sauvegarde de falsifier la mesure de la bande passante bpmi. De même, cela rend très difficile la falsification de ces instants par un noeud client. Cela améliore donc la fiabilité de la mesure de la bande passante bpmi et donc la fiabilité du procédé de sauvegarde. [0142] Le fait de chiffrer les blocs prémiums transmis au noeud client et de fournir la clé de sauvegarde uniquement lorsque la déclaration de fin de téléchargement a été transmise par le noeud tiers au noeud de sauvegarde oblige le noeud client à déclarer la fin du téléchargement. En effet, tant que le noeud client n'a pas déclaré la fin du téléchargement, il ne peut pas recevoir la clé de sauvegarde et ne peut donc pas utiliser les blocs prémiums téléchargés. Cela évite donc qu'un noeud client puisse télécharger un bloc prémium à partir d'un noeud de sauvegarde sans que cela puisse être utilisé pour mesurer la bande passante bprni de ce noeud de sauvegarde i. Ainsi, chaque restauration correspond à une mesure de la bande passante bpmi du noeud de sauvegarde i. Les mesures des bandes passantes bpmi sont donc mises à jour fréquemment, ce qui améliore la fiabilité du procédé de sauvegarde. [0143] Le fait que le noeud de sauvegarde puisse marquer l'instant de fin de téléchargement enregistré dans la base de données 58 comme étant invalide permet d'éviter qu'un instant tf falsifié par le noeud client soit pris en compte pour le calcul de la bande passante bpmi du noeud de sauvegarde i. En effet, le noeud client peut retarder la transmission de la déclaration de fin de téléchargement. En faisant cela et en absence de possibilité de marquer l'instant tf comme étant invalide, cela conduirait à calculer une bande passante bpmi pour le noeud de sauvegarde i erronée. Ainsi, ce chiffrement améliore la fiabilité du procédé de sauvegarde en rendant plus difficile la falsification de l'instant tf. [0144] La mise en oeuvre de la phase d'échantillonnage entre deux phases de restauration permet de mettre à jour la mesure de la bande passante bpmi plus fréquemment sans pour autant télécharger un ensemble complet de blocs prémiums sauvegardés dans les noeuds de sauvegarde. Ainsi, la mesure de la bande passante bpmi consomme beaucoup moins de bande passante que lorsque cette mesure est réalisée lors de l'étape 130. Cela permet donc la mise à jour plus fréquente de la bande passante bpmi tout en limitant la 27 bande passante consommée pour faire cela. Cela améliore les performances et la fiabilité du procédé de sauvegarde. [0145] Le fait que la base de données soit une chaîne de blocs permet de rendre très difficile la falsification des informations enregistrées dans cette base de données 58. Cela participe également à rendre le procédé de sauvegarde plus fiable. [0146] Le fait de permettre la sauvegarde de données sans qualité de service garantie permet d'optimiser l'usage de la bande passante montante des noeuds de sauvegarde. En effet, en absence de restauration de blocs prémiums, la bande passante montante des noeuds de sauvegarde ne reste pas nécessairement inutilisée mais peut, au contraire, être utilisée pour restaurer des données sans qualité de service garantie. [0147] Le fait d'utiliser un routage direct entre le noeud client et un premier noeud de sauvegarde élimine les situations ou une partie de la bande passante montante du premier noeud de sauvegarde est utilisée pour transférer des informations d'un second noeud de sauvegarde vers un noeud client. En effet, cette situation où le premier noeud de sauvegarde est traversé par des blocs prémiums téléchargés depuis le second noeud de sauvegarde réduit la bande passante de ce premier noeud de sauvegarde. Or, si cette réduction de la bande passante du premier noeud de sauvegarde intervient pendant la mesure de sa bande passante bpmi, cette mesure est faussée. Ainsi, en utilisant un routage direct, on améliore la fiabilité de la mesure de la bande passante bpmi et donc la fiabilité du procédé de sauvegarde. [0148] Le fait d'utiliser l'indice de priorité Pi qui augmente quand la bande passante montante encore disponible augmente permet de tendre vers une répartition uniforme des blocs prémiums sur l'ensemble des noeuds de sauvegarde du réseau pair-à-pair. [0149] Le fait que l'indice Pi décroît quand le nombre NC, de noeuds clients augmente permet de limiter le nombre de noeuds clients différents enregistrant des blocs prémiums sur un même noeud de sauvegarde. Cela augmente le temps moyen entre panne. [0150] Le fait d'interdire d'autres téléchargements pendant la mesure de la bande passante bpmi permet de simplifier cette mesure. [0151] Le fait de choisir le nombre k tel que pour tous les noeuds de sauvegarde sélectionnés par le noeud client pour y sauvegarder des blocs prémiums, la condition (1) soit vérifiée, permet d'obtenir une qualité de service garantie avec un probabilité Pt supérieure à 90%. [0152] Le fait d'interdire l'enregistrement de blocs premiums dans un noeud de sauvegarde pour lequel on ne dispose pas d'une mesure valide de sa bande passante bpmi améliore aussi la fiabilité du procédé de sauvegarde. 28 [Revendication 1] [Revendication 2] REVENDICATIONSProcédé de sauvegarde de données dans un réseau pair-à-pair, ce procédé comportant les étapes suivantes : a) l'exécution (104) par un noeud client du réseau pair-à-pair, d'un logiciel de sauvegarde pour générer un fichier de sauvegarde à partir duquel les données sauvegardées peuvent être restaurées, 1)) le découpage (106) du fichier de sauvegarde généré en plusieurs blocs de données, et c) l'enregistrement (108) des blocs de données dans la mémoire de différents noeuds de sauvegarde du réseau pair-à-pair, caractérisé en ce que les données sont des données prémiums bénéficiant d'une qualité de service garantie, cette qualité de service correspondant à un volume prédéterminé de données premium restaurable à partir du réseau pair-à-pair en une durée maximale prédéterminée de restauration, ce procédé comportant à cet effet : - le téléchargement (182) par un noeud client du réseau pair-à-pair d'un ensemble d'un ou plusieurs bloc prémiums depuis un noeud de sauvegarde et, en même temps, la mesure (130) de la bande passante montante réellement disponible du noeud de sauvegarde lors de ce téléchargement, chaque bloc prémium étant un bloc de données généré par le découpage du fichier de sauvegarde lors de l'étape b) lorsque les données sauvegardées sont des données premiums, - le calcul (110) d'un volume maximal de blocs prémiums enregistrables dans la mémoire de ce noeud de sauvegarde en fonction de la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde et d'une bande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prémiums dans la durée maximale de restauration, et - lors de l'enregistrement (108) des blocs prémiums dans un noeud de sauvegarde, le procédé inhibe l'enregistrement d'un bloc prémium dans ce noeud de sauvegarde si cela conduit à dépasser le volume maximal de blocs prémiums enregistrables dans ce noeud de sauvegarde. Procédé selon la revendication 1, dans lequel la mesure (130) de la bande passante montante réellement disponible comporte les opérations suivantes : - l'enregistrement (172) de la taille de l'ensemble de blocs prémiums dans une base de données consultable par tout noeud client du réseau 29 [Revendication 3] pair-à-pair, - le noeud client transmet (176) à un noeud tiers une demande de début de téléchargement de l'ensemble de blocs prémiums à partir du noeud de sauvegarde et, en réponse, le noeud tiers enregistre (180) l'instant de réception de cette demande de début de téléchargement dans la hase de données en tant qu'instant de début du téléchargement puis indique, au noeud de sauvegarde, que cette demande de début de téléchargement a été reçue, le noeud tiers étant un noeud du réseau pair-à-pair implémenté sur un calculateur électronique raccordé aux calculateurs électroniques sur lesquels sont implémentés le noeud client et le noeud de sauvegarde par un réseau grande distance de transmission d'informations, - en réponse à l'indication de la réception de la demande de début de téléchargement, le noeud de sauvegarde transfère (182) l'ensemble de blocs prémiums au noeud client sans passer par l'intermédiaire du noeud tiers ou d'un autre noeud de sauvegarde, puis - lorsque le transfert est terminé, le noeud client transmet (184) au noeud tiers une déclaration de fin de téléchargement, puis - en réponse, le noeud tiers enregistre (186) dans la base de données l'instant de réception de la déclaration de fin de téléchargement en tant qu'instant de fin de téléchargement, - la mesure de la bande passante réellement disponible est calculé (110) à partir des instants de début et de fin de téléchargement et de la taille de l'ensemble de blocs prémiums téléchargé enregistrés dans la base de données. Procédé selon la revendication 2, dans lequel : - le noeud de sauvegarde chiffre (182) l'ensemble de blocs prémiums pour obtenir un ensemble chiffré de blocs prémiums déchiffrables uniquement à l'aide d'une clé secrète de déchiffrement inconnue du noeud client à ce stade, - en réponse à l'indication de la réception de la demande de début de téléchargement, l'ensemble de blocs prémiums transférés au noeud client est l'ensemble chiffré de blocs prémiums, - en réponse à la réception de la déclaration de fin de téléchargement, le noeud tiers indique (186) au noeud de sauvegarde que cette déclaration de fin de téléchargement a bien été reçue, et - en réponse à cette indication de la réception de la déclaration de fin de téléchargement, le noeud de sauvegarde transmet (190) au noeud client la clef de déchiffrement lui permettant de déchiffrer l'ensemble chiffré de 30 blocs prémiums. [Revendication 4] Procédé selon la revendication 2, dans lequel : - en réponse à la réception de la déclaration de fin de téléchargement, le noeud tiers indique (186) au noeud de sauvegarde que cette déclaration de fin de téléchargement a bien été reçue, et - en réponse à l'indication de la réception de cette déclaration de fin de téléchargement, le noeud de sauvegarde compare (188) l'instant auquel cette indication est reçue à un instant réel auquel la transmission de l'ensemble de blocs prémiums vers le noeud client s'est réellement terminée, et - si l'écart entre ces deux instants est supérieur à un seuil prédéterminé, le noeud de sauvegarde provoque le marquage de l'instant de fin de téléchargement enregistré dans cette base de données comme étant invalide, et, dans le cas contraire, provoque le marquage de l'instant de fin de téléchargement enregistré comme étant valide, puis - la mesure de la bande passante montante réellement disponible du noeud de sauvegarde à partir d'un instant de fin de téléchargement marqué comme invalide est systématiquement inhibée. [Revendication 5] Procédé selon l'une quelconque des revendications précédentes, dans lequel : - le procédé comporte une phase (120) de restauration du fichier de sauvegarde, lors de laquelle un ensemble complet des blocs prémiums sauvegardés dans le réseau pair-à-pair est téléchargé vers le noeud client, le nombre de blocs de cet ensemble complet étant suffisant pour permettre la restauration complète des données prémiums sauvegardées, - lors de chaque phase de restauration, la bande passante montante réellement disponible du noeud de sauvegarde est mesurée (130), - en dehors des phases de restauration, le procédé comporte au moins une phase (160) d'échantillonnage lors de laquelle seul un ensemble réduit de blocs prémiums sauvegardés dans le réseau pair-à-pair est téléchargé vers le noeud client, le nombre de blocs de cet ensemble réduit étant insuffisant à lui seul pour permettre une restauration complète des données prémiums sauvegardées, et - lors de chacune des phases d'échantillonnage, la bande passante montante réellement disponible du noeud de sauvegarde est mesurée. [Revendication 6] Procédé selon l'une quelconque des revendications 2 à 4, dans lequel la base de données est une chaîne de blocs. [Revendication 7] Procédé selon l'une quelconque des revendications précédentes, dans 31 [Revendication 8] [Revendication 9] [Revendication 10] lequel le procédé comporte : - l'exécution (104) par le noeud client du logiciel de sauvegarde pour générer un fichier de sauvegarde à partir duquel des données sans qualité de service garantie peuvent être restaurées et le découpage (106) de ce fichier de sauvegarde généré en plusieurs blocs sans qualité de service garantie, - l'enregistrement (108) des blocs sans qualité de service garantie dans des mémoires de différents noeuds de sauvegarde du réseau pair-à-pair, - lors de phases (120, 150) concomitantes de restauration de blocs prémiums et de blocs sans qualité de service garantie enregistrés dans la mémoire d'un même noeud de sauvegarde, le noeud de sauvegarde alloue prioritairemcnt sa bande passante montante au téléchargement des blocs prémiums au détriment du téléchargement des blocs sans qualité de service garantie. Procédé selon l'une quelconque des revendications précédentes, dans lequel le routage entre chaque noeud client et chaque noeud de sauvegarde est un routage direct, c'est-à-dire un routage dans lequel les données transférées du noeud de sauvegarde vers le noeud client ne traversent aucun autre noeud de sauvegarde du réseau pair-à-pair. Procédé selon l'une quelconque des revendications précédentes, dans lequel l'étape c) comporte la sélection (110) d'un nombre n restreint de noeuds de sauvegarde parmi l'ensemble des noeuds de sauvegarde du réseau pair-à-pair et l'enregistrement sur chacun de ces n noeuds de sauvegarde d'un seul bloc prémium, où n est le nombre de blocs prémiums produits lors de l'étape b), cette sélection comportant : - l'association d'un indice de priorité à chaque noeud de sauvegarde, cet indice de priorité associé à un noeud étant proportionnel au produit bpmi x EPDi / VPmaxi, où : - bpmi est la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde, - VPmaxi est le volume maximal de blocs prémiums enregistrables dans la mémoire de ce noeud de sauvegarde, - EPDi est le volume maximal d'espace de stockage encore disponible dans la mémoire du noeud de sauvegarde et dans lequel un bloc prémium peut encore être enregistré sans dépasser le volume maximal VPmaxi, et - la sélection des n noeuds de sauvegarde associés aux indices de priorité les plus élevés. Procédé selon la revendication 9, dans lequel l'indice de priorité associé 32 [Revendication 11] [Revendication 12] [Revendication 13] à chaque noeud de sauvegarde est également inversement proportionnel à un nombre NC; de noeuds clients ayant déjà enregistré des blocs prémiums dans ce noeud de sauvegarde. Procédé selon l'une quelconque des revendications précédentes, dans lequel le volume maximal VPmaxi de blocs prémiums enregistreables dans la mémoire du noeud de sauvegarde est déterminé à l'aide de la relation suivante : VPmaxi = (VPmaxt x bpm; ,k)/bpmt, où : - VPmaxt est le volume prédéterminé de données premium restaurable à partir du réseau pair-à-pair dans la durée maximale prédéterminée de restauration, - bpmi est la bande passante montante réellement disponible mesurée pour le noeud de sauvegarde, - hpmt est la bande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prémiums dans la durée maximale prédéterminée de restauration, - k est un nombre entier minimal de blocs prémiums que le noeud client doit télécharger pour être capable de restaurer complètement les données prémiums. Procédé selon l'une quelconque des revendications précédentes, dans lequel : - l'étape c) comporte l'enregistrement de chacun des blocs premium dans un noeud de sauvegarde respectif du réseau pair-à-pair, et - l'étape b) comporte le découpage du fichier de sauvegarde en au moins k blocs prémiums, le nombre k étant le nombre minimal de blocs prémiums à télécharger depuis k noeuds distincts de sauvegarde pour être capable de restaurer les données prémiums, le nombre k étant telle que la condition suivante est vérifiée pour chacun des k noeuds distincts de sauvegarde : (1- (D,';,'/T)r)k > 0,9, où : - Dman est la durée maximale prédéterminée de restauration, - 1/T est la fréquence maximale des restaurations, - r est égal à E(bpmi x k/bpmt), - la fonction E(bpmi x k/bpmt) est la fonction qui retourne la partie entière du produit bpmi x k/bpmt, - bpmi est la bande passante montante réellement disponible mesurée, - bpmt est la bande passante minimale requise pour être capable de télécharger le volume prédéterminé de données premium à partir du réseau pair-à-pair dans la durée maximale prédéterminée de restauration. Support d'enregistrement d'informations, lisible par un microprocesseur, 33 [Revendication 14] caractérisé en ce que ce support comporte des instructions pour exécuter un procédé de sauvegarde conforme à l'une quelconque des revendications précédentes, lorsque ces instructions sont exécutées par le microprocesseur. Système de sauvegarde de données dans un réseau pair-à-pair, ce système comportant : - au moins un calculateur électronique (42) programmé pour exécuter un noeud client (10) du réseau pair-à-pair, - des calculateurs électroniques (60) programmés pour exécuter chacun un noeud (14) de sauvegarde respectif du réseau pair-à-pair, et dans lequel : - le noeud client (10) est apte à exécuter les étapes suivantes lorsqu'il est exécuté par le calculateur électronique (42) : a) l'exécution d'un logiciel de sauvegarde pour générer un fichier de sauvegarde à partir duquel les données sauvegardées peuvent être restaurées, h) le découpage du fichier de sauvegarde généré en plusieurs blocs de données, et c) l'enregistrement des blocs de données dans la mémoire de différents noeuds de sauvegarde du réseau pair-à-pair, caractérisé en ce que les données sont des données prémiums bénéficiant d'une qualité de service garantie, cette qualité de service correspondant à un volume prédéterminé de données premium restaurable à partir du réseau pair-à-pair en une durée maximale prédéterminée de restauration, le système (2) étant apte à cet effet à réaliser les étapes suivantes : - le téléchargement par un noeud client du réseau pair-à-pair d'un ensemble d'un ou plusieurs bloc prémiums depuis un noeud de sauvegarde et, en même temps, la mesure de la bande passante montante réellement disponible du noeud de sauvegarde lors de ce téléchargement, chaque bloc prémium étant un bloc de données généré par le découpage du fichier de sauvegarde lors de l'étape b) lorsque les données sauvegardées sont des données premiums, - le calcul d'un volume maximal de blocs prérniums enregistrables dans la mémoire de ce noeud de sauvegarde en fonction de la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde et d'une bande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prérniums dans la 34 [Revendication 15] durée maximale de restauration, et - lors de l'enregistrement des blocs prémiums dans un noeud de sauvegarde, le système inhibe l'enregistrement d'un bloc prémium dans cc noeud de sauvegarde si cela conduit à dépasser le volume maximal de blocs prémiums enregistrables dans ce noeud de sauvegarde. Noeud client pour un système conforme à la revendication 14, dans lequel le noeud client (10) est apte à exécuter les étapes suivantes lorsqu'il est exécuté par un calculateur électronique (42) : a) l'exécution d'un logiciel de sauvegarde pour générer un fichier de sauvegarde à partir duquel les données sauvegardées peuvent être restaurées, h) le découpage du fichier de sauvegarde généré en plusieurs blocs de données, et c) l'enregistrement des blocs de données dans la mémoire de différents noeuds de sauvegarde du réseau pair-à-pair, caractérisé en ce que les données sont des données prémiums bénéficiant d'une qualité de service garantie, cette qualité de service correspondant à un volume prédéterminé de données premium restaurable à partir du réseau pair-à-pair en une durée maximale prédéterminée de restauration, le noeud client (10) étant apte à cet effet à réaliser les étapes suivantes : - le téléchargement d'un ensemble d'un ou plusieurs bloc prémiums depuis un noeud de sauvegarde qui provoque la mesure de la bande passante montante réellement disponible du noeud de sauvegarde lors de ce téléchargement, chaque bloc prémium étant un bloc de données généré par le découpage du fichier de sauvegarde lors de l'étape b) lorsque les données sauvegardées sont des données premiums, - le calcul d'un volume maximal de blocs prémiums enregistrables dans la mémoire de ce noeud de sauvegarde en fonction de la bande passante montante réellement disponible mesurée pour ce noeud de sauvegarde et d'une bande passante montante minimale nécessaire pour permettre la restauration du volume prédéterminé de données prémiums dans la durée maximale de restauration, et - lors de l'enregistrement des blocs prémiums dans un noeud de sauvegarde, le noeud client inhibe l'enregistrement d'un bloc prémium dans ce noeud de sauvegarde si cela conduit à dépasser le volume maximal de blocs prémiums enregistrables dans ce noeud de sauvegarde.