WO2020233765A2 - Distributed storage system in fog computing - Google Patents

Distributed storage system in fog computing Download PDF

Info

Publication number
WO2020233765A2
WO2020233765A2 PCT/DZ2020/050007 DZ2020050007W WO2020233765A2 WO 2020233765 A2 WO2020233765 A2 WO 2020233765A2 DZ 2020050007 W DZ2020050007 W DZ 2020050007W WO 2020233765 A2 WO2020233765 A2 WO 2020233765A2
Authority
WO
WIPO (PCT)
Prior art keywords
nodes
blocks
network
fog
storage
Prior art date
Application number
PCT/DZ2020/050007
Other languages
French (fr)
Other versions
WO2020233765A3 (en
Inventor
Amir DJOUAMA
Meriem Affaf BAZA
Yacine BAZA
Original Assignee
Djouama Amir
Baza Meriem Affaf
Baza Yacine
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Djouama Amir, Baza Meriem Affaf, Baza Yacine filed Critical Djouama Amir
Publication of WO2020233765A2 publication Critical patent/WO2020233765A2/en
Publication of WO2020233765A3 publication Critical patent/WO2020233765A3/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Definitions

  • the present invention relates to the realization of a distributed storage system in Fog Computing.
  • the notion of storage is a strategic datum in the digital field and a key element in Fog Computing.
  • This storage system allows, through the use of peripherals (computers, mobiles and other smart devices) to store data as close as possible to end users and those by exploiting a common storage space for the nodes of the system.
  • Distributed storage stores data on a multitude of standard servers, which behave like a single storage system, it can relate to one of three types of storage: block, file and object.
  • Object storage is used to manage very large volumes of unstructured data.
  • the system is based on objects and metadata, so each file corresponds to an object with an associated path (an address) and a unique identifier.
  • An object storage system must verify several characteristics or properties to ensure good quality of service. These properties are:
  • Scaling or scalability this consists of having a system that supports both a very large number of Fog sites, a large number of clients per site and a large number of stored objects [Patcit5]
  • Cassandra is a distributed storage system for managing very large amounts of structured data distributed over many servers, it is based on a single hop distributed hash table (DHT), the key space is divided into distributed ranges between the nodes making up the system.
  • DHT distributed hash table
  • a gossip protocol is used to distribute the system topology [Patcit6]
  • the IPFS InterPlanetary File System
  • the Scale-Out NAS system is defined by the Scale-out storage which is a storage architecture attached to the NAS network, it is a flexible storage system which allows to adapt dynamically to the need [Patcit7]
  • a Distributed File System is a system that manages files and folders on multiple computers.
  • the data is stored on a server and is accessed and treated as if it were stored on the local client computer, however, the servers have full control over the data and provide access control to the clients.
  • DFS facilitates the sharing of information and files among users of a network in a controlled and authorized manner. This system must be transparent, fault tolerant and scalable.
  • HDFS is a central component of the Apache Framework and more precisely of its storage system, it is capable of managing thousands of nodes without operator intervention
  • HDFS is a centralized distributed files, it is based on a “master / slave HDFS architecture”
  • the metadata is managed by a single server called the Namenode where the data is divided into blocks [the article “Analysis of Six Distributed File Systems” by Benjamin Depardon, Gael Le Mahec and Cyril S_eguin].
  • Ceph file system CephFS
  • CephFS Ceph file system
  • Block-level storage is one of the most popular storage system technologies. In this storage mode, raw volumes of data are created and each block can be controlled as an individual hard drive. These blocks are controlled by server-based operating systems and each block can be individually formatted with the required file system. A block is a sequence of bytes. Block-based storage interfaces are the most common way to store data with rotating media such as hard drives, CDs, floppy disks, and even traditional 9-track tapes.
  • Ceph Block This device provides reliable, distributed and high performance block storage drives to customers, it stores a block of data in striped sequential form on multiple OSDs in a Ceph cluster.
  • the Fog infrastructure was introduced as a new model to facilitate wireless data transfer to distributed devices in the Internet of Things (IoT) network paradigm. It represents an intermediate platform between the Cloud and connected objects, it provides processing, storage and network services.
  • IoT Internet of Things
  • the invention deals with one of the most important services in Fog, it is storage, it is the realization of a distributed storage system in Fog Computing.
  • Each node, once joined a network, will have to free up part of its storage capacity. This freed capacity will be added to the other spaces freed by the other nodes. This additional space will be a common storage space for all participating nodes.
  • the invention also allows the exploitation of this space by end users through well-defined mechanisms.
  • the essential aim of this invention is to achieve a distributed system which allows data storage as close as possible to users based on the Fog infrastructure.
  • the Fog architecture is an intermediate infrastructure between the Cloud and connected objects, it makes it possible to respond to one of the disadvantages of the Cloud which consists in storing data in external and remote structures, which can lead to a possible risk of theft and malicious use.
  • the Fog has a decentralized architecture offering processing, storage and network services.
  • the objective of this invention is to have a common storage space using the unused storage spaces of the peripherals belonging to a given network, this makes it possible to use the peripherals and the already existing tools and to avoid investing in the purchase or allocation of new data servers.
  • FIG. 2 illustrates the architecture of our system as a whole, it is made up of several local networks (2.D) linked together to form a global network.
  • this architecture we are based on the proactive protocol, so that we have a dynamic routing table distributed in the network, it encompasses all the devices that are in the system.
  • Each Fog node (2.C) communicates with the other Fog nodes of the system; at the level of each of them we find a routing table as mentioned above. If the network topology changes, the Fog node sends a broadcast message to the entire network.
  • Each local network (2.D) consists of several active (2.B) and passive (2.A) nodes linked together and managed by a more powerful IT unit selected to act as a Fog server (2.C) to serve others.
  • Guaranteeing data integrity is the confirmation that the data that has been sent, received or stored is complete and not modified
  • the system To ensure uniformity of data distribution, the system must ensure that user data will be distributed in a balanced and uniform manner.
  • each peripheral will have to free a percentage of its storage capacity in order to have a common storage space in the network.
  • each node in our architecture will free up storage space.
  • we will have a global storage space, including all the freed spaces, that can be used by an end user in a transparent way.
  • This principle is represented by figure 1, where each peripheral (1.A) will have to free a percentage of its storage capacity (1.B) to have at the end a storage space common to all the peripherals belonging to the network. (1 C).
  • Fog Node It is a powerful and flexible intelligent computing unit managing three-dimensional resources, with on-board storage, compute and communication capacities. He is responsible for network management, security, storage and metadata.
  • Passive Device these are devices that free up large storage spaces in the system, their only role is to store data blocks.
  • Active Device These are devices that usually free up small storage space in the system, but their main role is file processing, that is, from what type of device a user can access to the system.
  • the system can however be functional with only the two types of devices Fog and active with the condition that the active device frees more storage space.
  • the system also specifies how to distribute blocks of data in a Fog network consisting of multiple nodes (devices), it implements a block recovery mechanism, as well as a copy synchronization mechanism.
  • Figure 3 shows the general principle of the distribution of the data blocks of a file
  • the client device (3.A) loads the file and sends its size (3.1) to the Fog node (3.B), which ci selects and returns the list of available devices that can store the file (3.2)
  • the client device (3.A) relies on the list of devices received to divide the file into blocks of size proportional to the space of free storage of the chosen peripherals and a predefined threshold
  • the customer's peripheral distributes the resulting blocks (3.3) to the chosen peripherals (3.C).
  • the threshold is a value associated with each type of device (active or passive). It defines a storage rate not to exceed free storage space for each distribution operation, if we take for example a device with 10 GB of free space and a threshold of 10%, the value of the space of storage that we can use for a distribution operation is 1 GB.
  • each row in the matrix represents a list of target devices containing the data blocks of the same copy and the items that are in the same column contain the same blocks, that is, the original block and its copies.
  • Retrieving a file exploits the copy matrix.
  • the system traverses the first row of the matrix while recovering the blocks, if one of the blocks of the file is on a faulty device, the latter will access to its copy which is on the same column.
  • One of the main features of this system is the fact that it manages device failures.

Abstract

The fog infrastructure was introduced as a new model to facilitate the transfer of data wirelessly to peripherals distributed in the Internet of Things (IoT) network paradigm. It represents a platform that is intermediate between the cloud and connected things, and it provides processing, storage and network services. The invention pertains to one of the most important services in fog computing, namely storage, and it consists in producing a fog-distributed storage system. Each node, once it has joined a network, will have to free up a portion of its storage capacity. This freed-up capacity will be added to other spaces freed up by the other nodes. This additional space will be a storage space common to all of the participating nodes. The invention also allows the use of this space by end users through well-defined mechanisms.

Description

Système de stockage distribué dans le Fog ComputingDistributed storage system in Fog Computing
La présente invention concerne la réalisation d’un système de stockage distribué dans le Fog Computing. La notion de stockage est une donnée stratégique dans le domaine du numérique et un élément clé dans le Fog Computing. Ce système de stockage permet, à travers l’utilisation des périphériques (ordinateurs, mobiles et d’autres périphériques intelligents) de stocker les données au plus près des utilisateurs finaux et ceux en exploitant un espace de stockage commun aux nœuds du système. The present invention relates to the realization of a distributed storage system in Fog Computing. The notion of storage is a strategic datum in the digital field and a key element in Fog Computing. This storage system allows, through the use of peripherals (computers, mobiles and other smart devices) to store data as close as possible to end users and those by exploiting a common storage space for the nodes of the system.
Le stockage des données a évolué au fil des années afin de répondre aux besoins des entreprises et des particuliers. On arrive maintenant à un point de basculement où l'approche traditionnelle du stockage ne fonctionne plus, à la fois pour des raisons techniques et économiques. Ainsi, on a besoin d'une nouvelle approche, d'un nouveau concept de stockage de données. Actuellement, la meilleure approche pour satisfaire les demandes actuelles de stockage de données semble être le stockage distribué. Data storage has evolved over the years to meet the needs of businesses and individuals. We are now coming to a tipping point where the traditional approach to storage no longer works, for both technical and economic reasons. So we need a new approach, a new concept of data storage. Currently, the best approach to meeting today's demands for data storage appears to be distributed storage.
Le stockage distribué enregistre les données sur une multitude de serveurs standards, qui se comportent comme un seul système de stockage, il peut se rapporter à l'un des trois types de stockage : bloc, fichier et objet.Distributed storage stores data on a multitude of standard servers, which behave like a single storage system, it can relate to one of three types of storage: block, file and object.
Le stockage objet permet de gérer de très grands volumes de données non structurées. Le système est basé sur des objets et des métadonnées, ainsi, chaque fichier correspond à un objet auquel on associe un chemin d'accès (une adresse) et un identifiant unique. Object storage is used to manage very large volumes of unstructured data. The system is based on objects and metadata, so each file corresponds to an object with an associated path (an address) and a unique identifier.
Un système de stockage objet doit vérifier plusieurs caractéristiques ou propriétés pour assurer une bonne qualité de service. Ces propriétés sont :An object storage system must verify several characteristics or properties to ensure good quality of service. These properties are:
La connectivité : le système de stockage doit assurer une continuité de fonctionnement lorsqu’un site est déconnecté [Patcit1]Connectivity: the storage system must ensure operational continuity when a site is disconnected [Patcit1]
La localité des données : l'idée est de favoriser les accès locaux chaque fois que c’est possible, et de réduire au maximum le temps d’accès aux données [Patcit2]Data locality: the idea is to promote local access whenever possible, and to minimize data access time [Patcit2]
Le confinement du réseau entre les sites : c’est le fait qu’une action (écriture ou lecture) effectuée sur un site n'a pas d'impact négatif sur les autres sites [Patcit3]Network confinement between sites: this is the fact that an action (write or read) performed on one site has no negative impact on other sites [Patcit3]
Le support de la mobilité : c’est le fait que le service de stockage devrait pouvoir déplacer les données de l’utilisateur de manière transparente du site précédent vers un site plus proche [Patcit4]Support for mobility: this is the fact that the storage service should be able to move user data transparently from the previous site to a closer site [Patcit4]
Le passage à l’échelle ou l’évolutivité : cela consiste à avoir un système qui supporte à la fois un très grand nombre de sites de Fog, un grand nombre de clients par site et un nombre important d’objets stockés [Patcit5]Scaling or scalability: this consists of having a system that supports both a very large number of Fog sites, a large number of clients per site and a large number of stored objects [Patcit5]
Parmi les différentes solutions disponibles dans le stockage objet, on a sélectionné Cassandra et IPFS avec le système NAS Scale-Out, car leurs conceptions ne nécessitent pas de serveur centralisé et elles se rapprochent de la solution proposée.Among the different solutions available in object storage, Cassandra and IPFS were selected with the Scale-Out NAS system, because their designs do not require a centralized server and they are similar to the proposed solution.
Cassandra est un système de stockage distribué permettant de gérer de très grandes quantités de données structurées réparties sur de nombreux serveurs, il se base sur une table de hachage distribuée (DHT) à un seul bond, l'espace de clés est divisé en plages réparties entre les nœuds composant le système. Un protocole de bavardage (gossip protocol) est utilisé pour distribuer la topologie du système [Patcit6]Cassandra is a distributed storage system for managing very large amounts of structured data distributed over many servers, it is based on a single hop distributed hash table (DHT), the key space is divided into distributed ranges between the nodes making up the system. A gossip protocol is used to distribute the system topology [Patcit6]
L’IPFS (InterPlanetary File System) est une solution de stockage en mode objet s’appuyant sur le protocole BitTorrent et Kademlia DHT, il a été couplé avec le système NAS SCALE-OUT afin de remédier au fait que lui seul ne tire pas parti de la topologie physique de l'infrastructure Fog. Le système NAS Scale-Out est défini par le stockage Scale-out qui est une architecture de stockage rattachée au réseau NAS, c’est un système de stockage flexible qui permet de s’adapter dynamiquement au besoin [Patcit7]The IPFS (InterPlanetary File System) is an object mode storage solution based on the BitTorrent and Kademlia DHT protocol, it has been coupled with the SCALE-OUT NAS system in order to remedy the fact that it alone does not take advantage of the physical topology of the Fog infrastructure. The Scale-Out NAS system is defined by the Scale-out storage which is a storage architecture attached to the NAS network, it is a flexible storage system which allows to adapt dynamically to the need [Patcit7]
Un système de fichiers distribué (DFS) est un système qui gère les fichiers et les dossiers sur plusieurs ordinateurs. Les données sont stockées sur un serveur et sont accessibles et traitées comme si elles étaient stockées sur l'ordinateur client local, cependant, les serveurs ont un contrôle total sur les données et fournissent un contrôle d'accès aux clients. Le DFS facilite le partage d'informations et de fichiers entre les utilisateurs d'un réseau de manière contrôlée et autorisée. Ce système doit être transparent, tolérant aux pannes et évolutif.A Distributed File System (DFS) is a system that manages files and folders on multiple computers. The data is stored on a server and is accessed and treated as if it were stored on the local client computer, however, the servers have full control over the data and provide access control to the clients. DFS facilitates the sharing of information and files among users of a network in a controlled and authorized manner. This system must be transparent, fault tolerant and scalable.
Il existe une multitude de systèmes de fichiers distribués comme HDFS qui est un composant central du Framework de Apache et plus précisément de son système de stockage, il est capable de gérer des milliers de nœuds sans intervention d’un opérateur, HDFS est un système de fichiers distribué centralisé, il repose sur une « architecture HDFS maître/esclave », les métadonnées sont gérées par un seul serveur appelé le Namenode où les données sont divisées en blocs [l’article «Analysis of Six Distributed File Systems» de Benjamin Depardon, Gael Le Mahec et Cyril S_eguin]. Aussi, on cite le système de fichiers Ceph (CephFS) qui est un système de fichiers totalement distribué compatible avec les standards POSIX qui utilisent un cluster de stockage Ceph pour stocker ses données. There are a multitude of distributed file systems like HDFS which is a central component of the Apache Framework and more precisely of its storage system, it is capable of managing thousands of nodes without operator intervention, HDFS is a centralized distributed files, it is based on a “master / slave HDFS architecture”, the metadata is managed by a single server called the Namenode where the data is divided into blocks [the article “Analysis of Six Distributed File Systems” by Benjamin Depardon, Gael Le Mahec and Cyril S_eguin]. Also, we cite the Ceph file system (CephFS) which is a fully distributed file system compatible with POSIX standards which uses a Ceph storage cluster to store its data.
Enfin, Le stockage au niveau du bloc est l’une des technologies de système de stockage les plus populaires. Dans ce mode de stockage, des volumes bruts de données sont créés et chaque bloc peut être contrôlé comme un disque dur individuel. Ces blocs sont contrôlés par des systèmes d'exploitation basés sur un serveur et chaque bloc peut être formaté individuellement avec le système de fichiers requis. Un bloc est une séquence d'octets. Les interfaces de stockage basées sur des blocs sont la manière la plus courante de stocker des données avec des supports rotatifs tels que des disques durs, des CD, des disquettes et même des bandes 9 pistes traditionnelles.Finally, Block-level storage is one of the most popular storage system technologies. In this storage mode, raw volumes of data are created and each block can be controlled as an individual hard drive. These blocks are controlled by server-based operating systems and each block can be individually formatted with the required file system. A block is a sequence of bytes. Block-based storage interfaces are the most common way to store data with rotating media such as hard drives, CDs, floppy disks, and even traditional 9-track tapes.
On dispose de plusieurs systèmes de stockage en mode bloc dont on cite Ceph Block. Ce dispositif fournit des disques de stockage de blocs fiables, distribués et de haute performance aux clients, il stocke un bloc de données sous forme séquentielle rayée sur plusieurs OSD dans un cluster Ceph.We have several storage systems in block mode, including Ceph Block. This device provides reliable, distributed and high performance block storage drives to customers, it stores a block of data in striped sequential form on multiple OSDs in a Ceph cluster.
A travers l’étude établie, nous sommes arrivés à la conclusion que les trois types de système de stockage distribué (objet, fichier, bloc) sont complémentaires et chacun d’entre eux traite un niveau d’abstraction spécifique. Mais l’inconvénient de la plupart de ces solutions réside dans le fait que les données sont stockées dans des serveurs de données externes ce qui peut engendrer un énorme investissement, ainsi que d’éventuels risques de sécurité et d’utilisation malintentionné des données. Pour cela notre solution utilise des périphériques et dispositifs déjà existants interne à l’organisme, l’idée est d’exploiter un espace de stockage commun aux nœuds du système. Cet espace représente la somme des capacités de stockage libérées par chaque nœud appartenant au réseau. Le fait que les données sont stockées à l’intérieur de l’organisme, cela lui permet d’acquérir une meilleure sécurité de ses données. Through the established study, we have come to the conclusion that the three types of distributed storage system (object, file, block) are complementary and each of them deals with a specific level of abstraction. But the downside of most of these solutions is that the data is stored in external data servers which can result in a huge investment, as well as possible security risks and malicious use of the data. For this our solution uses already existing peripherals and devices internal to the organization, the idea is to use a common storage space for the nodes of the system. This space represents the sum of the storage capacities released by each node belonging to the network. The fact that the data is stored inside the organization, this allows it to acquire better security of its data.
L'infrastructure du Fog a été introduite comme un nouveau modèle pour faciliter le transfert de données sans fil vers des périphériques distribués dans le paradigme de réseau Internet des objets (IoT). Elle représente une plateforme intermédiaire entre le Cloud et les objets connectés, elle fournit des services de traitement, de stockage et de réseau.The Fog infrastructure was introduced as a new model to facilitate wireless data transfer to distributed devices in the Internet of Things (IoT) network paradigm. It represents an intermediate platform between the Cloud and connected objects, it provides processing, storage and network services.
L’invention traite l’un des services les plus importants dans le Fog, il s’agit du stockage, il consiste en la réalisation d’un système de stockage distribué dans le Fog Computing.The invention deals with one of the most important services in Fog, it is storage, it is the realization of a distributed storage system in Fog Computing.
Chaque nœud, une fois adhéré à un réseau, devra libérer une partie de sa capacité de stockage. Cette capacité libérée ira s’ajouter aux autres espaces libérés par les autres nœuds. Cet espace supplémentaire sera un espace de stockage commun à tous les nœuds participants. L’invention permet aussi l’exploitation de cet espace par les utilisateurs finaux à travers des mécanismes bien définit.Each node, once joined a network, will have to free up part of its storage capacity. This freed capacity will be added to the other spaces freed by the other nodes. This additional space will be a common storage space for all participating nodes. The invention also allows the exploitation of this space by end users through well-defined mechanisms.
Le but essentiel de cette invention est de réaliser un système distribué qui permet le stockage des données au plus près des utilisateurs en se basant sur l’infrastructure Fog. L’architecture Fog étant une infrastructure intermédiaire entre le Cloud et les objets connectés, elle permet de répondre à l’un des inconvénients du Cloud qui consiste en le stockage des données dans des structures externes et lointaines, ce qui peut entrainer un éventuel risque de vol et d’utilisation malintentionnée. Le Fog dispose d’une architecture décentralisée offrant des services de traitement, de stockage et de réseau.The essential aim of this invention is to achieve a distributed system which allows data storage as close as possible to users based on the Fog infrastructure. Since the Fog architecture is an intermediate infrastructure between the Cloud and connected objects, it makes it possible to respond to one of the disadvantages of the Cloud which consists in storing data in external and remote structures, which can lead to a possible risk of theft and malicious use. The Fog has a decentralized architecture offering processing, storage and network services.
Aussi l’objectif de cette invention est d’avoir un espace de stockage commun utilisant les espaces de stockage non utilisés des périphériques appartenant à un réseau donné, cela permet d’exploiter les périphériques et les outils déjà existants et d’éviter d’investir dans l’achat ou l’allocation de nouveaux serveurs de données.Also the objective of this invention is to have a common storage space using the unused storage spaces of the peripherals belonging to a given network, this makes it possible to use the peripherals and the already existing tools and to avoid investing in the purchase or allocation of new data servers.
Notre approche se base sur une architecture P2P hybride, elle nous permet de tirer profit des avantages des systèmes centralisés et décentralisés, ceci nous accorde le maintien d’une certaine évolutivité et le contournement des problèmes des systèmes entièrement centralisés ou bien décentralisés.Our approach is based on a hybrid P2P architecture, it allows us to take advantage of the advantages of centralized and decentralized systems, this grants us the maintenance of a certain scalability and the bypassing of the problems of fully centralized or decentralized systems.
La figure 2 illustre l’architecture de notre système dans sa globalité, elle est constituée de plusieurs réseaux locaux (2.D) reliés entre eux pour former un réseau global. Dans cette architecture, nous nous basons sur le protocole proactif, ce qui fait que nous disposons d’une table de routage dynamique distribuée dans le réseau, elle englobe tous les périphériques qui se trouvent dans le système. Chaque nœud Fog (2.C) communique avec les autres nœuds Fog du système ; au niveau de chacun d’eux nous retrouvons une table de routage comme cité précédemment. En cas de modification de la topologie du réseau, le nœud Fog envoie un message de diffusion à l'ensemble du réseau.Figure 2 illustrates the architecture of our system as a whole, it is made up of several local networks (2.D) linked together to form a global network. In this architecture, we are based on the proactive protocol, so that we have a dynamic routing table distributed in the network, it encompasses all the devices that are in the system. Each Fog node (2.C) communicates with the other Fog nodes of the system; at the level of each of them we find a routing table as mentioned above. If the network topology changes, the Fog node sends a broadcast message to the entire network.
Chaque réseau local (2.D) est constitué de plusieurs nœuds actifs (2.B) et passifs (2.A) reliés entre eux et gérés par une unité informatique plus puissante sélectionnée pour agir en tant que Fog serveur (2.C) pour servir les autres.Each local network (2.D) consists of several active (2.B) and passive (2.A) nodes linked together and managed by a more powerful IT unit selected to act as a Fog server (2.C) to serve others.
L’avantage de la réalisation d’un tel système de stockage distribué est de: The advantage of realizing such a distributed storage system is:
Sauvegarder, récupérer et /ou supprimer un fichier dans le système. Save, recover and / or delete a file in the system.
Assurer l’extensibilité et l’évolutivité de l’architecture, c'est-à-dire, qu'il pourrait y avoir une possibilité d'ajouter ou de supprimer de nouveaux périphériques (nœuds);Ensure the extensibility and scalability of the architecture, that is, that there could be a possibility of adding or removing new devices (nodes);
Garantir la sécurité et la confidentialité des données, le système doit être hautement sécurisé car les informations ne doivent pas être accessibles par tout le monde; Guarantee the security and confidentiality of data, the system must be highly secure because the information must not be accessible by everyone;
Garantir l’intégrité des données, c’est la confirmation que les données qui ont été envoyées, reçues ou stockées sont complètes et non modifiées; Guaranteeing data integrity is the confirmation that the data that has been sent, received or stored is complete and not modified;
Prendre en considération la cohérence des données, c'est-à-dire, le système doit assurer que les copies sont synchronisées automatiquement avec le fichier original; Take into consideration the consistency of the data, that is, the system must ensure that the copies are automatically synchronized with the original file;
Assurer la disponibilité des données, le système doit assurer que l’utilisateur peut consulter ou récupérer ses données à tout moment. Ensuring data availability, the system must ensure that the user can view or retrieve their data at any time.
Assurer l’uniformité de la distribution des données, le système doit assurer que les données des utilisateurs seront distribuées d’une façon équilibrée et uniforme.To ensure uniformity of data distribution, the system must ensure that user data will be distributed in a balanced and uniform manner.
Prendre en considération la transparence du système, c'est-à-dire, les détails sur les informations de stockage et les mécanismes complexes du système seront masqués pour l’utilisateur tout en lui permettant de manipuler ces fichiers. Take into consideration the transparency of the system, that is, details about storage information and complex system mechanisms will be hidden from the user while still allowing them to manipulate these files.
La description de l’invention est détaillée ci-après avec 4 figures à l’appui :The description of the invention is detailed below with 4 supporting figures:
Fig.1Fig. 1
décrit le principe général de l’invention où chaque périphérique devra libérer un pourcentage de sa capacité de stockage pour avoir un espace de stockage commun dans le réseau. describes the general principle of the invention where each peripheral will have to free a percentage of its storage capacity in order to have a common storage space in the network.
A : Périphériques ;A: Peripherals;
B : Libère x % de stockage ;B: Releases x% of storage;
C : Espace de stockage total.C: Total storage space.
Fig.2Fig. 2
est une représentation de l’architecture large de l’invention. is a representation of the broad architecture of the invention.
A : Périphériques passifs ;A: Passive devices;
B : Périphériques actifs ;B: Active peripherals;
C : Nœud Fog ;C: Fog node;
D : Réseau local.D: Local network.
Fig.3Fig. 3
représente le principe général de la distribution d’un fichier dans un réseau. represents the general principle of the distribution of a file in a network.
A : Périphérique du client ;A: Customer device;
B : Nœud Fog ;B: Fog node;
C : Périphérique stockant le bloc numéro i ;C: Peripheral storing block number i;
1 : Envoyer la taille du fichier ;1: Send the file size;
2 : Renvoyer les périphériques pouvant stocker le fichier ;2: Return the devices that can store the file;
3 : Distribué le fichier.3: Distributed the file.
Fig.4Fig. 4
représente le principe général de la division d’un fichier en un ensemble de blocs. represents the general principle of dividing a file into a set of blocks.
A : Fichier initial ;A: Initial file;
B : Bloc numéro i ;B: Block number i;
C : Périphérique stockant le bloc numéro i ;C: Peripheral storing block number i;
1 : Diviser le fichier initial en un ensemble de blocs ;1: Divide the initial file into a set of blocks;
2 : Envoyer les blocs dans les périphériques sélectionnés.2: Send the blocks to the selected devices.
La solution proposée permet à chaque nœud de notre architecture de libérer de l’espace de stockage. Ainsi, nous aurons un espace de stockage global, incluant tous les espaces libérés, pouvant être exploité par un utilisateur final de façon transparente. Ce principe est représenté par la figure 1, où chaque périphérique (1.A) devra libérer un pourcentage de sa capacité de stockage (1.B) pour avoir à la fin un espace de stockage commun à l’ensemble des périphériques appartenant au réseau (1.C).The proposed solution allows each node in our architecture to free up storage space. Thus, we will have a global storage space, including all the freed spaces, that can be used by an end user in a transparent way. This principle is represented by figure 1, where each peripheral (1.A) will have to free a percentage of its storage capacity (1.B) to have at the end a storage space common to all the peripherals belonging to the network. (1 C).
Pour une meilleure exploitation de ce système, nous utiliserons au moins trois types de périphériques avec des rôles et des spécifications différentes. Ces trois types sont définis comme suit :For a better use of this system, we will use at least three types of devices with different roles and specifications. These three types are defined as follows:
Nœud Fog (Fog Server) : c’est une unité informatique intelligente puissante et flexible gérant des ressources tridimensionnelles, avec des capacités de stockage, de calcul et de communication embarquées. Il est responsable de la gestion du réseau, de la sécurité, du stockage et des métadonnées. Fog Node (Fog Server): It is a powerful and flexible intelligent computing unit managing three-dimensional resources, with on-board storage, compute and communication capacities. He is responsible for network management, security, storage and metadata.
Périphérique Passif : ce sont des périphériques qui libèrent de grands espaces de stockage dans le système, leur unique rôle est le stockage des blocs de données. Passive Device: these are devices that free up large storage spaces in the system, their only role is to store data blocks.
Périphérique Actif : ce sont des périphériques qui libèrent généralement de petit espace de stockage dans le système, mais leur principal rôle est le traitement des fichiers, c’est-à-dire, à partir de ce type de périphérique qu’un utilisateur peut accéder au système. Active Device: These are devices that usually free up small storage space in the system, but their main role is file processing, that is, from what type of device a user can access to the system.
Le système peut toutefois être fonctionnel avec seulement les deux types de périphériques Fog et actif avec la condition que le périphérique actif libère un espace de stockage plus large. The system can however be functional with only the two types of devices Fog and active with the condition that the active device frees more storage space.
Le système spécifie également comment distribuer les blocs de données dans un réseau Fog constitué de plusieurs nœuds (périphériques), il met en œuvre un mécanisme de récupération des blocs, ainsi qu’un mécanisme de synchronisation des copies. The system also specifies how to distribute blocks of data in a Fog network consisting of multiple nodes (devices), it implements a block recovery mechanism, as well as a copy synchronization mechanism.
La figure 3 présente le principe général de la distribution des blocs de données d’un fichier, le périphérique du client (3.A) charge le fichier et envoie sa taille (3.1) vers le nœud Fog (3.B), celui-ci sélectionne et renvoie la liste des périphériques disponibles pouvant stocker le fichier (3.2), le périphérique du client (3.A) se base sur la liste des périphériques reçue pour diviser le fichier en blocs de taille proportionnelle par rapport à l’espace de stockage libre des périphériques choisis et un seuil prédéfinis, enfin, le périphérique du client distribue les blocs (3.3) résultant vers les périphériques choisis (3.C). Figure 3 shows the general principle of the distribution of the data blocks of a file, the client device (3.A) loads the file and sends its size (3.1) to the Fog node (3.B), which ci selects and returns the list of available devices that can store the file (3.2), the client device (3.A) relies on the list of devices received to divide the file into blocks of size proportional to the space of free storage of the chosen peripherals and a predefined threshold, finally, the customer's peripheral distributes the resulting blocks (3.3) to the chosen peripherals (3.C).
Le seuil est une valeur associée à chaque type de périphérique (actif ou passif). Il définit un taux de stockage à ne pas dépasser de l’espace de stockage libre pour chaque opération de distribution, si nous prenons par exemple un périphérique avec 10 GO d’espace libre et un seuil de 10% , la valeur de l’espace de stockage que nous pouvons utiliser pour une opération de distribution est de 1GO. The threshold is a value associated with each type of device (active or passive). It defines a storage rate not to exceed free storage space for each distribution operation, if we take for example a device with 10 GB of free space and a threshold of 10%, the value of the space of storage that we can use for a distribution operation is 1 GB.
Nous utilisons cette approche afin d’éviter que notre système soit déséquilibré, c’est-à-dire, avoir à un instant T des périphériques saturés et d’autres totalement vides, ce qui pourrait causer une distribution non uniforme.We use this approach in order to prevent our system from becoming unbalanced, that is, having at one time T some saturated devices and others totally empty, which could cause uneven distribution.
Dans le but d’améliorer la disponibilité des données de l’usager, l’utilisation des réplications est nécessaire pour satisfaire ce critère, pour cela nous avons mis en place une matrice regroupant l’ensemble des périphériques qui stockent les blocs de données et leurs copies. Chaque ligne de la matrice représente une liste de périphériques cibles contenant les blocs de données de la même copie et les éléments qui se trouvent sur la même colonne contiennent les mêmes blocs, c’est-à-dire, le bloc original et ses copies.In order to improve the availability of user data, the use of replications is necessary to meet this criterion, for this we have set up a matrix grouping together all the devices that store the data blocks and their data. copies. Each row in the matrix represents a list of target devices containing the data blocks of the same copy and the items that are in the same column contain the same blocks, that is, the original block and its copies.
Pour assurer la cohérence du fichier avec ses copies, nous avons mis en place un processus de synchronisation qui permet en cas de modification du fichier original de mettre à jour ses copies ; le système permet la réutilisation des périphériques stockant l’ancienne version du fichier. Ainsi, à partir de la nouvelle taille du fichier, il peut savoir si la génération de périphériques supplémentaires est nécessaire ou non.To ensure the consistency of the file with its copies, we have implemented a synchronization process which allows, in the event of modification of the original file, to update its copies; the system allows reuse of devices storing the old version of the file. So from the new size of the file, it can know whether the generation of additional devices is needed or not.
La récupération d’un fichier exploite la matrice des copies. Ainsi, afin de récupérer tous les blocs d’un fichier et de le reconstituer, le système parcourt la première ligne de la matrice tout en récupérant les blocs, si l’un des blocs du fichier se trouve sur un périphérique défaillant, ce dernier accédera à sa copie qui se trouve sur la même colonne. L’une des principales caractéristiques de ce système est le fait qu’il gère les pannes des périphériques.Retrieving a file exploits the copy matrix. Thus, in order to recover all the blocks of a file and to reconstruct it, the system traverses the first row of the matrix while recovering the blocks, if one of the blocks of the file is on a faulty device, the latter will access to its copy which is on the same column. One of the main features of this system is the fact that it manages device failures.
Documents brevetsPatent documents
L’article « Quel système de stockage pour les architectures Fog ? » de B.Confais, A.Lèbre et B.Parrein.The article "Which storage system for Fog architectures? »By B.Confais, A.Lèbre and B.Parrein.
L’article «Performance Analysis of Object Store Systems in a Fog/Edge Computing Infrastructures » de B.Confais, A.Lèbre et B.Parrein.The article "Performance Analysis of Object Store Systems in a Fog / Edge Computing Infrastructures" by B.Confais, A.Lèbre and B.Parrein.
L’article «Performance Analysis of Object Store Systems in a Fog and Edge Computing Infrastructures » de B.Confais, A.Lèbre et B.Parrein.The article "Performance Analysis of Object Store Systems in a Fog and Edge Computing Infrastructures" by B.Confais, A.Lèbre and B.Parrein.
L’article «Performance Analysis of Object Store Systems in a Fog/Edge Computing Infrastructures » de B.Confais, A.Lèbre et B.Parrein.The article "Performance Analysis of Object Store Systems in a Fog / Edge Computing Infrastructures" by B.Confais, A.Lèbre and B.Parrein.
L’article « Quel système de stockage pour les architectures Fog ? » de B.Confais, A.Lèbre et B.Parrein.The article "Which storage system for Fog architectures? »By B.Confais, A.Lèbre and B.Parrein.
L’article «Performance Analysis of Object Store Systems in a Fog/Edge Computing Infrastructures » de B.Confais, A.Lèbre et B.Parrein.The article "Performance Analysis of Object Store Systems in a Fog / Edge Computing Infrastructures" by B.Confais, A.Lèbre and B.Parrein.
L’article « An object store for Fog infrastructures based on IPFS and a Scale-Out NAS» de B.Confais, A.Lèbre et B.Parrein.The article "An object store for Fog infrastructures based on IPFS and a Scale-Out NAS" by B.Confais, A.Lèbre and B.Parrein.

Claims (11)

  1. Un système selon l’invention caractérisé en ce que cette nouvelle génération de système de stockage distribué dans un réseau – à travers l’utilisation de simples machines utilisateurs, permet la distribution des blocs de fichiers directement dans les disques durs des nœuds. Le système selon l’invention caractérisé en ce que les fichiers sources sont divisés en blocs sécurisés, en fonction des équipements connectés au réseau et en fonction de l’espace de stockage disponible en chacun des nœuds, puis distribués dans le réseau, en utilisant les nœuds Fog comme élément distributeurs. Le système selon l’invention se caractérise en ce que la récupération des blocs se fait en utilisant les nœuds Fog. Par conséquent, cette solution permet un gain important en matière de stockage dans le système, une meilleure efficacité à moindre coût. L’utilisation d’un ensemble de nœuds hétérogènes distribués dans le réseau permet une évolutivité du système, une indépendance vis-à-vis d'autres fournisseurs. D’autant plus, la présence des données au sein du réseau interne renforce la disponibilité et la sécurité des données.A system according to the invention characterized in that this new generation of storage system distributed in a network - through the use of simple user machines, allows the distribution of blocks of files directly into the hard drives of the nodes. The system according to the invention characterized in that the source files are divided into secure blocks, according to the equipment connected to the network and according to the storage space available in each of the nodes, then distributed in the network, using the Fog nodes as a distributor element. The system according to the invention is characterized in that the recovery of the blocks is done using the Fog nodes. Therefore, this solution allows a significant gain in storage in the system, better efficiency at lower cost. The use of a set of heterogeneous nodes distributed in the network allows scalability of the system, independence from other providers. Moreover, the presence of data within the internal network enhances the availability and security of data.
  2. Un système selon la revendication 1 caractérisé en ce qu’un nœud est un dispositif pouvant se connecter à un réseau. Ces nœuds sont munis d’un espace de stockage.A system according to claim 1 characterized in that a node is a device capable of connecting to a network. These nodes are provided with storage space.
  3. Un système selon les revendications 1 et 2 caractérisé en ce qu’un fichier est de type quelconque ayant une taille aléatoire et sans limite. Ces fichiers sont disponibles au niveau des nœuds connectés au réseau.A system according to claims 1 and 2 characterized in that a file is of any type having a random and unlimited size. These files are available at the nodes connected to the network.
  4. Un système selon les revendications 1 à 3 caractérisé en ce que le disque de stockage est interne ou externe lié au nœud et contenant les différents fichiers stockés ou à distribuer. Un pourcentage P de l’espace de stockage disponible est réservé pour l’exploitation.A system according to claims 1 to 3 characterized in that the storage disk is internal or external linked to the node and containing the various files stored or to be distributed. A percentage P of the available storage space is reserved for operation.
  5. Un système selon les revendications 1 à 4 caractérisé en ce qu’un bloc 4.B est un fichier issu d’une division d’un fichier initial 4.A destiné à être sauvegardé au niveau des nœuds du réseau 4.C.A system according to claims 1 to 4 characterized in that a block 4.B is a file resulting from a division of an initial file 4.A intended to be saved at the nodes of the network 4.C.
  6. Un système selon les revendications 1 à 5 caractérisé en ce que les blocs sauvegardés sont cryptés selon un mécanisme identifié afin d’améliorer la sécurité.A system according to claims 1 to 5 characterized in that the saved blocks are encrypted according to an identified mechanism in order to improve security.
  7. Un système selon les revendications 1 à 6 caractérisé en ce que le nœud Fog est un nœud connecté au réseau. Ce nœud a la particularité de calculer les tailles des blocs du fichier à stocker. Le nœud Fog sélectionne les nœuds qui stockeront les blocs et enregistre par la suite leurs adresses. Par ailleurs, un nœud Fog rassemble un ensemble de nœuds du réseau identifiés par une distance connue.A system according to claims 1 to 6 characterized in that the Fog node is a node connected to the network. This node has the particularity of calculating the sizes of the blocks of the file to be stored. The Fog node selects the nodes that will store the blocks and subsequently stores their addresses. Furthermore, a Fog node brings together a set of network nodes identified by a known distance.
  8. Un système selon les revendications 1 à 7 caractérisé en ce que la division du fichier se fait au nœud initiateur et se calcule au nœud Fog en fonction d’un seuil défini de l’espace de stockage disponible des disques des nœuds. La division du fichier source en blocs 4.1 se fait en fonction des tailles des blocs calculés par le nœud Fog.A system according to claims 1 to 7 characterized in that the division of the file takes place at the initiator node and is calculated at the Fog node according to a defined threshold of the available storage space of the disks of the nodes. The division of the source file into 4.1 blocks is done according to the sizes of the blocks calculated by the Fog node.
  9. Un système selon les revendications 1 à 8 caractérisé en ce que la distribution se fait par le nœud initiateur, après la division du fichier en blocs 4.1, puis envoyés aux nœuds de destination sélectionnés 4.2.A system according to claims 1 to 8 characterized in that the distribution is done by the initiating node, after dividing the file into blocks 4.1, and then sent to the selected destination nodes 4.2.
  10. Un système selon les revendications 1 à 9 caractérisé en ce qu’un ensemble C de copies est créé et distribué aux nœuds afin d’assurer la disponibilité des données. A system according to claims 1 to 9 characterized in that a set C of copies is created and distributed to the nodes in order to ensure the availability of data.
  11. Un système selon les revendications 1 à 10 caractérisé en ce que la récupération des blocs se fait grâce aux nœuds Fog, où sont enregistrés les emplacements des blocs. Ces informations sont envoyés aux nœuds initiateurs afin d’interroger directement les nœuds de sauvegarde où sont stockés les blocs.A system according to claims 1 to 10 characterized in that the recovery of the blocks is done by means of the Fog nodes, where the locations of the blocks are recorded. This information is sent to the initiator nodes in order to directly query the backup nodes where the blocks are stored.
PCT/DZ2020/050007 2019-05-22 2020-05-18 Distributed storage system in fog computing WO2020233765A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DZ190268 2019-05-22
DZ190268 2019-05-22

Publications (2)

Publication Number Publication Date
WO2020233765A2 true WO2020233765A2 (en) 2020-11-26
WO2020233765A3 WO2020233765A3 (en) 2021-02-11

Family

ID=73459575

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DZ2020/050007 WO2020233765A2 (en) 2019-05-22 2020-05-18 Distributed storage system in fog computing

Country Status (1)

Country Link
WO (1) WO2020233765A2 (en)

Also Published As

Publication number Publication date
WO2020233765A3 (en) 2021-02-11

Similar Documents

Publication Publication Date Title
EP1815359B1 (en) System and method for perennial distributed data back up
US10425480B2 (en) Service plan tiering, protection, and rehydration strategies
US8838968B2 (en) System and method for virtual machine data protection in a public cloud
ES2349115T3 (en) SYSTEM FOR DISTRIBUTED MEDIA NETWORK AND METADATA SERVER.
US20120109830A1 (en) Apparatus, system and method for a decentralized social network system and decentralized payment network system
US10887279B2 (en) Scalable cloud hosted metadata service
CN110062034A (en) A kind of big file safety storage method of block chain and system
US10216775B2 (en) Content selection for storage tiering
EP2286354A1 (en) Method of generating requests to manipulate an initialization and administration database for a cluster of servers, corresponding data medium and cluster of servers
TW200901025A (en) Method and system for a self managing and scalable grid storage
CN104243425A (en) Content management method, device and system in content delivery network
US10110676B2 (en) Parallel transparent restructuring of immutable content in a distributed object storage system
US9165004B2 (en) Associated content system
CN106294870A (en) Object-based distributed cloud storage method
CN101442558A (en) Method and system for providing index service for P2SP network
WO2020233765A2 (en) Distributed storage system in fog computing
Chiniah et al. On the adoption of erasure code for cloud storage by major distributed storage systems
WO2006016085A1 (en) Method for distributed saving of client stations in a computer network
EP1350208A1 (en) Method for processing and accessing data in a computerised reservation system, and system therefor
EP2990948A1 (en) Data cloud
FR2932289A1 (en) METHOD AND SYSTEM FOR SYNCHRONIZING SOFTWARE MODULES OF A COMPUTER SYSTEM DISTRIBUTED IN CLUSTER OF SERVERS, APPLICATION TO STORAGE OF DATA.
FR2728088A1 (en) METHOD FOR EXCHANGING INFORMATION IN CUSTOMER / SERVER MODE, BETWEEN STATIONS CONNECTED BY A COMMUNICATION NETWORK
EP1912408B1 (en) Method of managing a database partitioned in a communication network
EP2684129B1 (en) Methods, devices, and computer programs for optimizing the replication of data in a computer system
US20090276598A1 (en) Method and system for capacity-balancing cells of a storage system

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: CONSTATATION DE LA PERTE D'UN DROIT CONFORMEMENT A LA REGLE 112(1) CBE (OEB FORM 1205A EN DATE DU 05/04/2022)

122 Ep: pct application non-entry in european phase

Ref document number: 20808680

Country of ref document: EP

Kind code of ref document: A2