WO2005008492A2 - System for the distributed management of computer resources and calculations - Google Patents

System for the distributed management of computer resources and calculations Download PDF

Info

Publication number
WO2005008492A2
WO2005008492A2 PCT/FR2004/001814 FR2004001814W WO2005008492A2 WO 2005008492 A2 WO2005008492 A2 WO 2005008492A2 FR 2004001814 W FR2004001814 W FR 2004001814W WO 2005008492 A2 WO2005008492 A2 WO 2005008492A2
Authority
WO
WIPO (PCT)
Prior art keywords
machine
machines
network
tasks
computer resources
Prior art date
Application number
PCT/FR2004/001814
Other languages
French (fr)
Other versions
WO2005008492A3 (en
Inventor
Olivier Flauzac
Michaël KRAJECKI
Original Assignee
Universite De Reims Champagne-Ardenne
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 Universite De Reims Champagne-Ardenne filed Critical Universite De Reims Champagne-Ardenne
Publication of WO2005008492A2 publication Critical patent/WO2005008492A2/en
Publication of WO2005008492A3 publication Critical patent/WO2005008492A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Definitions

  • the present invention relates to a distributed management system for computer resources and data.
  • the present invention relates more particularly to a system for managing the distribution of calculations across a computer network.
  • the need for computing power and data storage capacity in a computer system is increasing continuously, as is the computing capacity.
  • the calculation and storage of data was carried out centrally.
  • a few years ago a new approach emerged: the distribution of computation and data storage over a whole specific network such as, for example, the Internet.
  • This approach called globalization of IT resources and data or GRID, is a means of pooling the computing powers offered by machines connected to a network.
  • the methods and software, using the GRID calculation system are already known.
  • This system can be compared by analogy with electrical networks: when a need for electrical power is issued, the electrical power management system allows access to the electrical network comprising nuclear power stations, hydraulic power stations and others.
  • the computer network for example the Internet, provides access to the computer power of machines connected remotely, necessary to perform a large calculation, for example simulation or modeling.
  • the machines used for these calculations by GRID are standard office machines such as PC type computers or workstations, but also machines known as parallel machines comprising several processors, making it possible to process several tasks in parallel as well as clusters or dedicated networks.
  • the applications of a GRID system are designed for two main objectives: data sharing and distributed computing. GRID calculation distribution applications aim to share a calculation across a network, to build a general solution.
  • FIG. 5 represents a known embodiment of a computer network comprising the client / server architecture.
  • a client offers its computing resources to a server (S) which manages a large-scale computation.
  • This network firstly includes a server (S) connected to remote computers (PC1, PC2, PC3 and PC4) willing to perform a calculation.
  • the server (S) distributes to each computer (PC1, PC2, PC3 or PC4) connected, a calculation and the data appropriate for this calculation.
  • Computers (PC1, PC2, PC3 and PC4) perform the calculation and send the result to the server (S). The latter collects all the results to summarize them.
  • the globalization of computing calculations is classified into several categories.
  • One of the categories concerns the families of applications specialized in the calculation of a particular problem, for example the analysis of the listening of extraterrestrial signals.
  • the server (S) distributes pieces of signals which are analyzed by at least one voluntary computer (PC1, PC2, PC3 or PC4) connected by Internet.
  • the computer PC1, PC2, PC3 or PC4) performs the analysis and returns the result to the server (S).
  • Another category concerns the family of protocols and libraries and middleware (middelware), assembled together to help in the development of a dedicated application. This data being very important, one cannot store the databases on each voluntary computer.
  • a first drawback is the reliability of the system. Server failure can result in loss of results or some of the data.
  • a current solution consists in multiplying the servers.
  • These GRID calculation solutions target the use of determined and homogeneous machines, for example: a calculation from a network comprising only PC type computers working under Windows, a calculation from a network comprising only machines parallel.
  • Another drawback concerns the difficulties linked to the deployment of the system. The layers of software to install require very strong skills.
  • a final drawback concerns the security linked to voluntary computers compared to the requested calculation.
  • the second main objective of a GRID calculation system is data sharing.
  • GRID data sharing applications The purpose of GRID data sharing applications is to allow users to share or retrieve data in different formats across a network. These applications are based on several elements: file search, file publication, statistics collection and of course file download.
  • Certain known projects use a so-called distributed network architecture to perform data sharing. This structure consists of computers connected to each other locally or remotely. No server is present in the network.
  • the current drawback of this structure is its heavy implementation, requiring strong computer skills.
  • the present invention aims to overcome certain drawbacks of the prior art by proposing a distributed management system for computing computing resources, using a distributed approach, which can be applied to any type of machine and which is easily and quickly installed.
  • each active and inactive machine of the system comprises a means of selecting at least one network address corresponding to another machine of the system , a computer means for managing computer resources comprising, inter alia, a means for updating information concerning the state of the tasks, this information being conveyed through the network by means of a communication message for example of token type , and a means of randomly selecting one of the tasks belonging to the problem to be solved, the active machines also being able to obtain the application and the data intended for solving the problem, said application being information downloaded during insertion into the system.
  • the IT means for managing IT resources comprises a topology and network communication administrator, a task management administrator and a task calculator, the IT means for managing IT resources being represented by a program developed in object oriented language allowing compatibility of the IT means of IT resource management with any type of open operating system installed on machines.
  • the object-oriented program comprises different sub-programs including: - a main sub-program allowing the call to the other sub-programs, - a sub-program comprising the parameters of network communication and task management, - a network control subroutine executed by the network topology and communication administrator, - a task status update and task selection subroutine, executed by the task management administrator , a task resolution subroutine also making it possible to produce an interface between the computerized means for managing IT resources and the application dedicated to the specific resolution of the tasks belonging to a specific problem, said subroutine being produced by the computer of tasks.
  • the object-oriented program of the computer means for managing computer resources is developed in java language.
  • the machines belonging to the computer system for managing computer resources and data can be monoprocessor and multiprocessor.
  • the active multiprocessor machines belonging to the computer resource and data management system calculate as many available tasks as there are processors.
  • the architecture of the network is a fully distributed architecture.
  • the distributed architecture of the network is structured according to a particular virtual topology such as in a ring, making it possible to connect a machine to two other machines, each machine having two neighboring machines, the communication between the machines being carried out by a communication message.
  • the distributed architecture of the network is structured without any particular virtual topology, the machines capable of participating in the calculation connecting to each other in a random manner and exchanging information on the state of the tasks in a random manner.
  • the communication message includes information on the state of each task of the calculation.
  • the tasks of a problem are identified by an address number and the possible states of a task are represented by specific values, including the state of an available task and the state of a current task which can each be represented by a value negative, the state of a calculated task being represented by a positive value corresponding to the result of the calculation or to the unique number of the object containing the result.
  • the installation of the distributed management system for computer resources and data on at least one machine is carried out by means of a storage means.
  • the storage means is a mobile storage means.
  • the installation of the distributed management system for computer resources and data on at least one machine is carried out by means of a remote download means accessible by network.
  • the means for selecting at least one address of a machine belonging to the system comprises a file of stored addresses whose content is specific to each machine belonging to the system.
  • the means for selecting at least one address of a machine of the system comprises a means of drawing an address from among the addresses of the machines of the machine system, the communication being established between two machines of the system from that one of the two machines answers the other machine making the call.
  • the distributed management system for computer resources and data can be applied to any computer platform comprising any type of machine, any type of operating system and any type of hardware architecture supporting an object-oriented language.
  • Another object is achieved by a process used by the computer resource and data management system, allowing the establishment of a network consisting of at least two machines calculating the tasks intended for solving a problem, the process includes the following steps: at least one first machine which has become active is addressed to a second active machine by a communication message to participate in the calculation of the tasks, the first machine selecting the second machine by means of selecting in its memory the addresses of the machines of the system, - the second machine transmits to the first machine (s), the application and the data intended for solving the problem, using the communication message, - the first machine (s) each selects randomly using '' a means of selection, a non-calculated task of the application to be executed on the machine, - once the task has been calculated, the machine having completed the calculation, updates, using an update means , the information on the state of the task locally in the communication message, - once all the tasks of the application are calculated, the machines disconnect from the network defined for this a pplicatif.
  • a machine which has just disconnected from the network whose application has been executed scans its address file to determine another machine to which it can connect.
  • - Figure 1 represents a diagram of a network architecture, of the calculation system by GRID, having a ring structure, according to an embodiment of the present invention
  • - Figure 2 shows the composition diagram of a token according to the embodiment of the present invention
  • - Figure 3 shows a diagram of information exchange between two machines during the insertion of one of the two machines in the network
  • - Figure 4 shows the diagram of a variant network structure, according to the present invention, carried out randomly
  • - Figure 5 shows the diagram of a known embodiment of computer network comprising a centralized architecture
  • - Figure 6 shows the diagram of a known embodiment of a computer network comprising a hierarchical architecture using several servers.
  • the present invention is based on the known principle of the GRID calculation system. This principle is to solve a problem requiring an appropriate calculation, important to perform, using a computer power sharing. To solve this problem three steps are necessary. First, the decomposition of the problem into a set of tasks. Second, the distribution of tasks to computers connected remotely, which offer the analysis of at least one task. Third, collecting the results calculated by the machines connected to the network. The first step concerns the analysis of a problem involving an important calculation. This analysis is carried out by a user, for example a researcher or a developer. It consists of cutting the calculation into calculation segments called in the following description, tasks for a better understanding of the system. Cutting must be carried out according to precise rules. A task should not make any assumptions about the performance of another task.
  • the proposed system is particularly suited to the case of tasks whose execution time cannot be predicted, in the case of so-called regular tasks, but it is also able to efficiently manage the case of tasks whose execution time is known at the time. advance or equal between all tasks, the regular case.
  • the same algorithm is applied to calculate all the tasks of the application.
  • two tasks are distinguished by the data set they process.
  • Each task once specified, must be identified by a number.
  • a software component allowing the resolution of one of these elementary tasks, is developed. This component also called application in the following description is then integrated to the software of the present invention, the whole being installed on the machine initiating the calculation.
  • the present invention relates to a system composed of software applicable to any type of machine, it is also called an "middleware" ("middelware” in English). It is software for peer to peer calculation. Its objective is to distribute across the network, all the tasks obtained by the decomposition of a problem, to solve each distributed task and to extend, through the network, the calculated results of these tasks.
  • This software is completely distributed and is designed to be applicable on any type of network.
  • the networks are based on different operating systems, such as Windows and Linux or on different hardware, such as a PC-type computer, a parallel machine, or any type of architecture.
  • FIG. 1 presents a diagram of a network architecture, of the GRID calculation system, having a ring structure, according to an embodiment of the present invention.
  • This structure is a distributed approach. It includes single processor machines, such as computers (2) or multiprocessor shared memory machines (3), such as parallel machines. These machines are connected to each other by a remote link (5) so as to form a ring. Each machine is connected only to two other machines, which are themselves connected to another machine. Once all the machines are connected, the structure (1) looks like a ring.
  • the software (20), of the present invention is installed on all machines capable of connecting to the network.
  • This software (20) comprises three main elements: a topology and communication administrator (200) which makes it possible to know the virtual structure of the network, a task administrator (201) making it possible to control the choice of tasks, and a task calculator (202) dedicated to a specific problem.
  • the task administrator (201) can control several task computers (202), if all the task computers (202) are launched on the same machine, for example a parallel machine (3).
  • Each machine owns a data set. In the protocol of a ring architecture represented in FIG. 1, any voluntary machine starts, for example PC1, the processing of any task belonging to the segmented calculation. The PC1 machine will choose this task randomly.
  • a second voluntary machine presents itself, for example PC2, by connecting to the machine PC1 remotely.
  • the machine PC1 will transmit the parameters of the application to PC2 allowing to create a ring link between the two machines.
  • the PC2 machine will know that a task is being calculated and begins the calculation of another task also chosen at random. If a third machine, PC3, enters the ring, it will connect to the two machines PC1 and PC2 to form a ring structure. Once inserted into the ring, a machine acquires knowledge of the various parameters of the current calculation. This machine is capable of installing the local parameters of the tasks to be calculated.
  • the task administrator (201) of a machine gives the task calculator (202) a number, chosen at random, associated with a task . This task is known at this time as not calculated. Each machine must be able to link numbers and data. Communication between the machines is carried out by a token (4) transmitting the state of the calculation through the ring. The token (4) travels from machine to machine and is updated locally by the machines. The machine once its calculation is finished and once the token (4) is present, analyzes the information of the token to know the tasks executed remotely, and adds the information that it has calculated. When all of the calculation is done, the ring is destroyed and the result of the calculation is known to all machines.
  • FIG. 2 represents the composition diagram of a token (4) according to the embodiment of the present invention.
  • the token (4) comprises a table (41) comprising the state of all the tasks (410, 411, 412). Each task is identified in the token (4), by a number (40), previously defined during the cutting phase of the problem to be solved. This number (40) here represents the address of the task, which will make it possible to know its state.
  • the token (4) contains an encoding of the state of the tasks in the form of a single state object making it possible to differentiate the state of the task.
  • the state of an available, non-calculated task (412) will take a specific value, in our example this value is "-1".
  • the state, of a running task (411) will take another specific value, in our example this value is "-2".
  • the state, of a calculated task (410), will take the value corresponding to the result of the calculation or an object containing the result.
  • This result is represented by a positive integer which will ultimately be an object representing for example the result of a weather modeling calculation.
  • the expression object here refers to an element of a program developed in object-oriented language. This notion is explained in the following description.
  • a problem, linked to the ring architecture of the network, is constituted by the permanent evolution of the ring during the calculation. This evolution consists in adding to the network or the loss in the network of a machine during calculation. If a machine fails, the system loses the results calculated by the latter since the last visit of the token.
  • the system must be able to reconfigure the virtual topology, and if necessary, recreate a token and recalculate the tasks whose result has been lost.
  • One solution to this problem is the storage by each machine of a set of K addresses of machines present in the system, K being determined according to the properties of the network. There may therefore be K-1 consecutive machines that fail simultaneously. With reference to FIG. 1, the machines PC1 and PC2 can be at the same time faulty.
  • the network MP4 machine must have memorized the address of the PC3 machine to be able to reconstruct a correct virtual structure.
  • FIG. 3 represents a diagram of information exchange between two machines.
  • the first machine (2a), example PC1, present in the network contains the software (20a) and its own address (21a).
  • the first machine (2a) starting the calculation does not know anyone, which is why it includes the software (20a), the application (22a) dedicated to a specific problem and the data (23a) necessary to solve this problem.
  • the PC1 machine begins its calculation. Another machine becomes available, for example PC2.
  • the machine PC2 comprises only the software (20b) of the present invention, and the address of the machine PC1 (21b).
  • the PC2 machine sends a message to the PC1 machine to inform it of its intention to participate in the calculation in progress.
  • the recipient machine PC1 sends it back the application (22a) and the data necessary for the calculation (23a).
  • Each machine capable of participating in a GRID type calculation initially comprises the software and, for example, an address file (21 b) allowing the machine to address other machines, when she is available.
  • an address file 21 b
  • a machine which has just disconnected from the network whose application has been executed examines its address file to determine another machine to which it can connect.
  • Another embodiment, different from the address file, for conversing with a machine belonging to the network of the present invention, is to carry out an address scan of the machines connected to the network.
  • the machine PC2 is placed on the communication band of the Internet network and the software is addressed to a first machine. If this first machine does not respond, it means that it does not have the software.
  • the PC2 machine software then addresses another machine and so on. If one of the machines responds, then it has the software.
  • the PC2 machine is connected to this machine.
  • PC2 sends blocks of addresses corresponding to any machines, and waits for a response.
  • the system software is developed by an object-oriented language program.
  • the elements of a program are considered as objects that can pass messages to each other.
  • Each object is independent, and has its own data and its own programming code.
  • the object oriented language used is a JAVA language. This language allows accessibility of the software on multiple platforms including all types of machines. For example, computers with the Windows operating system and computers with the Linux operating system.
  • a first class called “MAIN” contains the main program for calling the other classes.
  • Another class, called “PARAM” contains a set of information concerning inter alia the location of the machine in the network. More particularly, this class includes the local address of a machine, the address of the next machine in the ring, the task table.
  • a class called “RING” allows to control the state of the ring.
  • a class, called “TOKEN” allows to control the state of the token circulating in the ring.
  • a final class called “RESOLUTION” solves tasks. This last class makes it possible to interface between the application allowing the resolution of the task and the communication software of the present invention.
  • the program begins to collect the data necessary for the application. If a machine is already present on an existing ring, PC1 retrieves the parameters for the execution of the application transmitted by the other machine.
  • the main program of the MAIN class initializes its data with the parameters retrieved.
  • the main program then calls the PARAM class and creates a thread, also called an object, of the PARAM class. This object selects information about the machine, such as the local address of a node, the address of the next node in the ring, and the task table.
  • the main class then calls and creates links with the other classes: the ANNEAU class corresponding to the administration of the ring, the TOKEN class corresponding to the administration of the token and the RESOLUTION class allowing the resolution of the tasks.
  • the constructor of the classes requests an object of type PARAM thus allowing the collaboration of different tasks between them.
  • Each instance of the RESOLUTION class creates an object conforming to the current application.
  • the network structure may have a total absence of logical structure.
  • FIG. 4 presents a structure (10) produced randomly. Each machine is connected to another machine of its knowledge so random.

Abstract

The invention relates to a system for the distributed management of computer resources and calculations, comprising a network that connects active or idle machines. The inventive system can be used for the resolution of tasks, whereby all of said tasks constitute a single problem that is to be solved and one task is executed by one of the active machines in the network using application software (22a). The system is characterised in that each machine in the system comprises: a means for selecting at least one network address (21b) corresponding to another machine in the system; a computer means for managing the computer resources (20), including, among others, a means for updating task state information, said information being conveyed through the network by means of a message (4); and a random task selection means. In addition, the active machines also comprise the application software (22a) and data (23a) which are used to solve the problem.

Description

Système de gestion distribuée des ressources informatiques et des calculs. Distributed management system for IT resources and calculations.
La présente invention concerne un système de gestion distribuée des ressources informatiques et des données. La présente invention concerne plus particulièrement un système de gestion de la distribution de calculs à travers un réseau informatique. Le besoin de puissance de calcul et de capacité de stockage de données, dans un système informatique, augmente continuellement, de même que la capacité de calcul. Pendant plusieurs années le calcul et le stockage de données étaient réalisés de manière centralisée. Il y a peu d'années une nouvelle approche a émergée : la distribution du calcul et du stockage de données sur tout un réseau spécifique comme, par exemple, le réseau Internet. Cette approche, appelée globalisation des ressources informatique et des données ou encore GRID, est un moyen de mettre en commun des puissances informatiques proposées par des machines connectées à un réseau. Les méthodes et logiciels, utilisant le système de calcul par GRID, sont déjà connus. On peut comparer ce système par analogie avec les réseaux électriques : lorsqu'un besoin en puissance électrique est émis, le système de gestion de puissance électrique permet un accès au réseau électrique comprenant des centrales nucléaires, des centrales hydrauliques et autres. Dans le cas d'espèce, le réseau informatique, par exemple Internet, permet d'accéder à la puissance informatique de machines connectées à distances, nécessaires pour réaliser un calcul important, par exemple de simulation ou de modélisation. Les machines utilisées pour ces calculs par GRID sont des machines standards de bureau tels que des ordinateurs de type PC ou des stations de travail, mais aussi des machines dites machines parallèles comprenant plusieurs processeurs, permettant de traiter plusieurs tâches de manière parallèle ainsi que des clusters ou des réseaux dédiés. Les applications d'un système GRID sont désignées pour deux objectifs principaux : le partage de données et le calcul distribué. Les applications GRID de distribution de calcul ont pour objectif de partager un calcul à travers un réseau, pour construire une solution générale. Les méthodes et logiciels de calcul par GRID, s'appliquant au calcul, sont actuellement basées sur une architecture client / serveur, dite également calcul par approche centralisée. La figure 5 représente un mode de réalisation connu de réseau informatique comprenant l'architecture client / serveur. Un client offre ses ressources de calcul à un serveur (S) qui assure la gestion d'un calcul à grande échelle. Ce réseau comprend tout d'abord un serveur (S) connecté à des ordinateurs (PC1 , PC2, PC3 et PC4) distants volontaires pour effectuer un calcul. Le serveur (S) distribue à chaque ordinateur (PC1 , PC2, PC3 ou PC4) connecté, un calcul et les données appropriées à ce calcul. Les ordinateurs (PC1 , PC2, PC3 et PC4) réalisent le calcul et envoient le résultat au serveur (S). Ce dernier collecte tous les résultats pour en faire une synthèse. Il est possible de multiplier et de hiérarchiser les serveurs pour garantir la disponibilité du service de calcul comme représenté sur la figure 6. La globalisation des calculs informatique est classée en plusieurs catégories. Une des catégories concerne les familles d'applications spécialisées dans le calcul d'un problème particulier, par exemple l'analyse de l'écoute de signaux extraterrestres. Pour traiter ces signaux, le serveur (S) distribue des morceaux de signaux qui sont analysés par au moins un ordinateur (PC1 , PC2, PC3 ou PC4) volontaire connecté par Internet. L'ordinateur (PC1 , PC2, PC3 ou PC4) réalise l'analyse et renvoie le résultat au serveur (S). Une autre catégorie concerne la famille des protocoles et bibliothèques et intergiciels (middelware), assemblés ensemble pour aider dans le développement d'une application dédiée. Ces données étant très importantes, on ne peut pas stocker les bases de données sur chaque ordinateur volontaire. Le partage de données est réalisé aussi pour les grandes distances, dans le cas d'une entreprise sur plusieurs sites géographiques éloignés. Des inconvénients majeurs sont liés à l'approche centralisée. Un premier inconvénient est la fiabilité du système. La défaillance du serveur peut entraîner la perte des résultats ou d'une partie des données. Pour remédier à ce problème, une solution actuelle consiste à multiplier les serveurs. Ces solutions de calcul par GRID ciblent l'utilisation de machines déterminées et homogènes, par exemples : un calcul à partir d'un réseau comprenant uniquement des ordinateurs de type PC travaillant sous Windows, un calcul à partir d'un réseau comprenant uniquement des machines parallèles. Un autre inconvénient concerne les difficultés liées au déploiement du système. Les couches de logiciels à installer demandent des compétences très fortes. Un dernier inconvénient concerne la sécurité liée aux ordinateurs volontaires par rapport au calcul demandé. Le deuxième objectif principal d'un système de calcul par GRID est le partage des données. Le but des applications GRID de partage de données est de permettre à des utilisateurs de partager ou de récupérer des données dans des formats différents à travers un réseau. Ces applications sont basées sur plusieurs éléments : la recherche de fichier, la publication de fichier, le ramassage de statistiques et bien sûr le téléchargement de fichiers. Certains projets connus utilisent une architecture de réseau dite distribuée pour réaliser un partage de données. Cette structure se compose d'ordinateurs connectés les uns aux autres de manière locale ou distante. Aucun serveur n'est présent dans le réseau. Cependant l'inconvénient actuel de cette structure est sa mise en œuvre lourde, nécessitant de fortes compétences en informatique. La présente invention a pour but de pallier certains inconvénients de l'art antérieur en proposant un système de gestion distribuée des ressources informatiques de calcul, utilisant une approche distribuée, pouvant être appliqué sur tout type de machine et étant facilement et rapidement installé. Ce but est atteint par un système de gestion distribuée des ressources informatiques et de calculs comprenant un réseau reliant des machines actives ou inactives, le système permettant la résolution de tâches, l'ensemble des dites tâches constituant un unique problème à résoudre, une tâche étant exécutée par une des machines actives appartenant au réseau à l'aide d'un applicatif destiné au problème à résoudre, le système de l'invention est caractérisé en ce que chaque machine active et inactive du système comprend un moyen de sélection d'au moins une adresse réseau correspondant à une autre machine du système, un moyen informatique de gestion des ressources informatiques comportant entre autres, un moyen de mise à jour des informations concernant l'état des tâches, ces informations étant véhiculées à travers le réseau par le biais d'un message de communication par exemple de type jeton, et un moyen de sélection aléatoire d'une des tâches appartenant au problème à résoudre, les machines actives pouvant obtenir également l'applicatif et les données destinées à la résolution du problème, ledit applicatif étant des informations téléchargées lors de l'insertion dans le système. Selon une autre particularité, le moyen informatique de gestion des ressources informatique comprend un administrateur de topologies et de communication réseau, un administrateur de gestion des tâches et un calculateur de tâches, le moyen informatique de gestion de ressources informatique étant représenté par un programme développé en langage orienté objet permettant une compatibilité du moyen informatique de gestion des ressources informatique à tout type de système d'exploitation ouvert implanté sur des machines. Selon une autre particularité, le programme orienté objet comprend différents sous-programmes dont : - un sous-programme principal permettant l'appel aux autres sous-programmes, - un sous-programme comprenant les paramètres de communication réseau et de gestion des tâches, - un sous-programme de contrôle du réseau exécuté par l'administrateur de topologie et de communication réseau, - un sous-programme de mise à jour de l'état des tâches et de sélection des tâches, exécuté par l'administrateur de gestion des tâches, - un sous-programme de résolution des tâches permettant également de réaliser une interface entre le moyen informatique de gestion des ressources informatique et l'applicatif dédié à la résolution spécifique des tâches appartenant à un problème précis, ledit sous-programme étant réalisé par le calculateur de tâches. Selon une autre particularité, le programme orienté objet du moyen informatique de gestion des ressources informatiques est développé en langage java. Selon une autre particularité, les machines appartenant au système informatique de gestion des ressources informatique et des données peuvent être monoprocesseur et multiprocesseur. Selon une autre particularité, les machines actives multiprocesseurs appartenant au système de gestion des ressources informatiques et des données calculent autant de tâches disponibles qu'il y a de processeurs. Selon une autre particularité, l'architecture du réseau est une architecture totalement distribuée. Selon une autre particularité, l'architecture distribuée du réseau est structurée selon une topologie virtuelle particulière telle qu'en anneau, permettant de relier une machine à deux autres machines, chaque machine ayant deux machines voisines, la communication entre les machines étant réalisée par un message de communication. Selon une autre particularité, l'architecture distribuée du réseau est structurée sans topologie virtuelle particulière, les machines susceptibles de participer au calcul se reliant les unes aux autres de manière aléatoire et s'échangeant de manière aléatoire des informations sur l'état des tâches. Selon une autre particularité, le message de communication comprend des informations sur l'état de chaque tâche du calcul. Selon une autre particularité, les tâches d'un problème sont identifiées par un numéro d'adressage et les états possibles d'une tâche sont représentés par des valeurs spécifiques, dont l'état d'une tâche disponible et l'état d'une tâche en cours pouvant chacun être représenté par une valeur négative, l'état d'une tâche calculée étant représenté par une valeur positive correspondant au résultat du calcul ou au numéro unique de l'objet contenant le résultat. Selon une autre particularité, l'installation du système de gestion distribuée des ressources informatiques et des données sur au moins une machine est réalisée par l'intermédiaire d'un moyen de mémorisation. Selon une autre particularité, le moyen de mémorisation est un moyen de stockage mobile. Selon une autre particularité, l'installation du système de gestion distribuée des ressources informatiques et des données sur au moins une machine est réalisée par l'intermédiaire d'un moyen de téléchargement distant accessible par réseau. Selon une autre particularité, le moyen de sélection d'au moins une adresse d'une machine appartenant au système comprend un fichier d'adresses mémorisées dont le contenu est spécifique à chaque machine appartenant au système. Selon une autre particularité, le moyen de sélection d'au moins une adresse d'une machine du système comprend un moyen de tirage d'une adresse parmi les adresses des machines du système machine, la communication s'établissant entre deux machines du système dès qu'une des deux machines répond à l'autre machine émettrice de l'appel. Selon une autre particularité, le système de gestion distribuée des ressources informatiques et des données peut être appliqué à toute plateforme informatique comprenant tout type de machine, tout type de système d'exploitation et tout type d'architecture matérielle supportant un langage orienté objet. Un autre but est atteint par un procédé utilisé par le système de gestion des ressources informatiques et des données, permettant la mise en place d'un réseau constitué d'au moins deux machines calculant les tâches destinées à la résolution d'un problème, le procédé comprend les étapes suivantes : - au moins une première machine devenue active s'adresse à une deuxième machine active par un message de communication pour participer au calcul des tâches, la première machine sélectionnant la deuxième machine par un moyen de sélection dans sa mémoire des adresses des machines du système, - la deuxième machine transmet à la ou les premières machines, l'applicatif et les données destinés à la résolution du problème, à l'aide du message de communication, - la ou les premières machines sélectionnent chacune de manière aléatoire à l'aide d'un moyen de sélection, une tâche non calculée de l'applicatif à exécuter sur la machine, - une fois la tâche calculée, la machine ayant terminée le calcul, met à jour, à l'aide d'un moyen de mise à jour, l'information sur l'état de la tâche de manière locale dans le message de communication, - une fois que toutes les tâches de l'applicatif sont calculées, les machines se déconnectent du réseau défini pour cet applicatif. Selon une autre particularité, une machine qui vient de se déconnecter du réseau dont l'applicatif a été exécuté, scrute son fichier d'adresse pour déterminer une autre machine a laquelle elle peut se connecter. D'autres particularités et avantages de la présente invention apparaîtront plus clairement à la lecture de la description ci-après, faite en référence aux dessins annexés, dans lesquels : - la figure 1 représente un schéma d'une architecture réseau, du système de calcul par GRID, ayant une structure en anneau, selon un mode de réalisation de la présente invention ; - la figure 2 représente le schéma de composition d'un jeton selon le mode de réalisation de la présente invention ; - la figure 3 représente un schéma d'échange d'information entre deux machines lors de l'insertion d'une des deux machines dans le réseau ; - la figure 4 présente le schéma d'une variante de structure réseau, selon la présente invention, réalisée de manière aléatoire ; - la figure 5 représente le schéma d'un mode de réalisation connu de réseau informatique comprenant une architecture centralisée ; - la figure 6 représente le schéma d'un mode de réalisation connu de réseau informatique comprenant une architecture hiérarchisée utilisant plusieurs serveurs. La présente invention se base sur le principe connu du système de calcul par GRID. Ce principe est de résoudre un problème nécessitant un calcul approprié, important à réaliser, à l'aide d'un partage de puissance informatique. Pour résoudre ce problème trois étapes sont nécessaires. Premièrement, la décomposition du problème en un ensemble de tâches. Deuxièmement, la distribution des tâches à des ordinateurs connectés de manière distante, qui proposent l'analyse d'au moins une tâche. Troisièmement, la collecte des résultats calculés par les machines connectées au réseau. La première étape concerne l'analyse d'un problème impliquant un calcul important. Cette analyse est réalisée par un utilisateur, par exemple un chercheur ou un développeur. Elle consiste à découper le calcul en segments de calcul appelés dans la suite de la description, des tâches pour une meilleure compréhension du système. La découpe doit être réalisée suivant des règles précises. Une tâche ne doit émettre aucune hypothèse concernant l'exécution d'une autre tâche. Il n'y a donc aucune communication entre les tâches. Le système proposé est particulièrement adapté au cas des tâches dont le temps d'exécution ne peut être prévisible, cas des tâches dites régulières, mais il est également en mesure de gérer efficacement le cas des tâches dont le temps d'exécution est connu à l'avance ou égal entre toutes les tâches, le cas régulier. Troisièmement le même algorithme est appliqué pour calculer toutes les tâches de l'application. Ainsi, deux tâches sont distinguées par le jeu de données qu'elles traitent. Chaque tâche, une fois spécifiée, doit être identifiée par un numéro. Une fois l'analyse terminée un composant logiciel, permettant la résolution d'une de ces tâches élémentaires, est développé. Ce composant également appelé applicatif dans la suite de la description est ensuite intégré au logiciel de la présente invention, le tout étant installé sur la machine initiatrice du calcul. La présente invention concerne un système composé d'un logiciel applicable sur tout type de machine, on l'appelle également un « intergiciel » (« middelware » en anglais). C'est un logiciel pour le calcul pair à pair. Son objectif est de distribuer à travers le réseau, toutes les tâches obtenues par la décomposition d'un problème, de résoudre chaque tâche distribuée et d'étendre, à travers le réseau, les résultats calculés de ces tâches. Ce logiciel est complètement distribué et est réalisé pour être applicable sur tout type de réseau. Les réseaux sont basés sur différents systèmes d'exploitations, tels que Windows et linux ou sur différents matériels, tels qu'un ordinateur de type PC, une machine parallèle, ou sur tout type d'architecture. Dans la présente invention toutes les topologies virtuelles sont applicables et exploitables, qu'elles soient régulières comme la topologie en anneau, en chaîne, en grille torique ou qu'elles soient récursivement construites comme la topologie hypercube, en réseau papillon ou qu'il y ait une absence de topologie virtuelle. La figure 1 présente un schéma d'une architecture réseau, du système de calcul par GRID, ayant une structure en anneau, selon un mode de réalisation de la présente invention. Cette structure est une approche distribuée. Elle comprend des machines monoprocesseur, tels que des ordinateurs (2) ou des machines multiprocesseurs à mémoire partagée (3), telles que les machines parallèles. Ces machines sont connectées les unes aux autres par une liaison distante (5) de manière à former un anneau. Chaque machine est connectée uniquement à deux autres machines, elles même connectées à une autre machine. Une fois que toutes les machines sont reliées, la structure (1) ressemble à un anneau. Le logiciel (20), de la présente invention, est installé sur toutes machines susceptibles de se connecter au réseau. Ce logiciel (20) comprend trois éléments principaux : un administrateur de topologie et de communication (200) qui permet de connaître la structure virtuelle du réseau, un administrateur de tâche (201 ) permettant de contrôler le choix des tâches, et un calculateur de tâche (202) dédié à un problème spécifique. L'administrateur de tâches (201 ) peut contrôler plusieurs calculateurs de tâches (202), si tous les calculateurs de tâches (202) sont lancés sur la même machine, par exemple une machine parallèle (3). Chaque machine est propriétaire d'un jeu de données. Dans le protocole d'une architecture en anneau représentée sur la figure 1 , une machine quelconque volontaire démarre, par exemple PC1 , le traitement d'une tâche quelconque appartenant au calcul segmenté. La machine PC1 va choisir cette tâche de manière aléatoire. Une deuxième machine volontaire se présente, par exemple PC2, en se connectant à la machine PC1 de manière distante. La machine PC1 va transmettre les paramètres de l'application à PC2 permettant de créer un lien en anneau entre les deux machines. La machine PC2 va savoir q'une tâche est en cours de calcul et commence le calcul d'une autre tâche choisie également de manière aléatoire. Si une troisième machine, PC3, entre dans l'anneau, elle se connectera aux deux machines PC1 et PC2 pour former une structure en anneau. Une fois insérée dans l'anneau, une machine acquière la connaissance des différents paramètres du calcul actuel. Cette machine est capable d'installer les paramètres locaux des tâches à calculer. Pour éviter un calcul multiple de la même tâche par toutes les machines de l'anneau, l'administrateur de tâche (201 ) d'une machine donne au calculateur de tâche (202) un numéro, choisi de manière aléatoire, associé à une tâche. Cette tâche est connue à ce moment comme non-calculée. Chaque machine doit être capable de faire le lien entre les numéros et les données. La communication entre les machines est réalisée par un jeton (4) transmettant l'état du calcul à travers l'anneau. Le jeton (4) se promène de machine en machine et, est mis à jour localement par les machines. La machine une fois son calcul terminé et une fois que le jeton (4) est présent, analyse les informations du jeton pour connaître les tâches exécutées de façon distante, et ajoute l'information qu'elle a calculée. Quand la totalité du calcul est réalisée, l'anneau se détruit et le résultat du calcul est connu par toutes les machines. Dans le cas particulier des machines multiprocesseur, tel que MP4 (3) représentée sur la figure 1 , la machine va prendre autant de tâches qu'il y a de processeurs. Par exemple si la machine comprend trois processeurs la machine va traiter trois tâches. Dès que le jeton (4) arrive et que les calculs sont terminés, le jeton (4) est mis à jour par rapport aux trois résultats obtenus. Des tâches peuvent être calculées en parallèle par des machines différentes. Ces tâches, appelées tâches répétées, sont nécessaires pour garantir un calcul asynchrone complètement distribué sans l'utilisation d'un serveur distribuant les tâches ou sans aucun ordonnateur centralisé. En utilisant cette stratégie, aucune machine ne doit attendre pour un jeton, afin de calculer une tâche. La figure 2 représente le schéma de composition d'un jeton (4) selon le mode de réalisation de la présente invention. Le jeton (4) comporte un tableau (41) comprenant l'état de toutes les tâches (410, 411 , 412). Chaque tâche est identifiée dans le jeton (4), par un numéro (40), précédemment défini lors de la phase de découpe du problème à résoudre. Ce numéro (40) représente ici l'adresse de la tâche, qui permettra de connaître son état. Le jeton (4) contient un encodage de l'état des tâches sous forme d'objet à état unique permettant de différencier l'état de la tâche. L'état d'une tâche disponible, non-calculée, (412) prendra une valeur spécifique, dans notre exemple cette valeur est « -1 ». L'état, d'une tâche en cours d'exécution (411), prendra une autre valeur spécifique, dans notre exemple cette valeur est « -2 ». L'état, d'une tâche calculée (410), prendra la valeur correspondant au résultat du calcul ou un objet contenant le résultat. Ce résultat est représenté par un entier positif qui sera à terme un objet représentant par exemple le résultat d'un calcul de modélisation météo. L'expression objet fait ici référence à un élément d'un programme développé en langage orienté objet. Cette notion est expliquée dans la suite de la description. Un problème, lié à l'architecture en anneau du réseau, est constitué par l'évolution permanente de l'anneau au cours du calcul. Cette évolution consiste en l'ajout au réseau ou la perte dans le réseau d'une machine durant le calcul. Si une machine est défaillante, le système perd les résultats calculés par cette dernière depuis la dernière visite du jeton. Le système doit être capable de reconfigurer la topologie virtuelle, et si nécessaire, de recréer un jeton et de recalculer les tâches dont le résultat à été perdu. Une solution à ce problème est la mémorisation par chaque machine d'un ensemble de K adresses de machines présentes dans le système, K étant déterminé selon les propriétés du réseau. Il peut dons y avoir K-1 machines consécutives qui tombent simultanément en panne. En référence à la figure 1 , les machines PC1 et PC2 peuvent être en même temps défaillante. La machine MP4 du réseau doit avoir mémorisé l'adresse de la machine PC3 pour pouvoir reconstruire une structure virtuelle correcte. Lors de l'installation d'une application de calcul par GRID déjà connue dans l'art antérieur, il est nécessaire de mettre en place une couche logicielle permettant de réaliser un lien entre les différentes machines du réseau. Cette couche logicielle est très difficile à mettre en oeuvre, elle nécessite des compétences importantes en informatique. Sur cette couche, est ensuite ajoutée l'application permettant de résoudre un problème spécifique. Dans la présente invention, la couche logicielle n'est pas utilisée. Le logiciel est transmis sur une simple clé mémoire tel qu'une disquette ou téléchargé. La configuration de l'installation est inexistante. A l'aide de cette disquette, on installe le code du logiciel sur la machine. Toutes machines susceptibles de participer au calcul et ainsi de rentrer dans le réseau, doit avoir le logiciel et connaître au moins une adresse par exemple IP, adresse Internet, d'une autre machine afin de se connecter. La figure 3 représente un schéma d'échange d'information entre deux machines. La première machine (2a), exemple PC1 , présente dans le réseau contient le logiciel (20a) et sa propre adresse (21a). La première machine (2a) commençant le calcul ne connaît personne, c'est pourquoi elle comprend le logiciel (20a), l'application (22a) dédiée à un problème spécifique et les données (23a) nécessaires pour résoudre ce problème. La machine PC1 commence son calcul. Une autre machine devient disponible, par exemple PC2. Avant de se connecter à la machine PC1 , la machine PC2 comprend uniquement le logiciel (20b) de la présente invention, et l'adresse de la machine PC1 (21b). La machine PC2 envoie un message à la machine PC1 pour l'informer de son intention de participer au calcul en cours. La machine destinataire PC1 lui renvoie l'application (22a) et les données nécessaires au calcul (23a). Chaque machine susceptible de participer à un calcul de type GRID, selon la présente invention, comprend initialement le logiciel et, par exemple, un fichier d'adresses (21 b) permettant à la machine de s'adresser à d'autres machines, quand elle est disponible. A la fin du calcul de toutes les tâches concernant un problème, une machine qui vient de se déconnecter du réseau dont l'applicatif a été exécuté, scrute son fichier d'adresse pour déterminer une autre machine a laquelle elle peut se connecter. Un autre mode de réalisation, différent du fichier d'adresse, pour converser avec une machine appartenant au réseau de la présente invention, est de réaliser un balayage d'adresse des machines connectées au réseau. Par exemple, la machine PC2 se place sur la bande de communication du réseau Internet et le logiciel s'adresse à une première machine. Si cette première machine ne répond pas, cela signifie qu'elle n'a pas le logiciel. Le logiciel de la machine PC2 s'adresse alors à une autre machine et ainsi de suite. Si une des machines répond, elle a donc le logiciel. La machine PC2 est connectée à cette machine. Pour communiquer avec les machines connectées au réseau, PC2 envoie des blocs d'adresses correspondant à des machines quelconques, et attend une réponse. Dans un mode de réalisation préféré de l'invention, le logiciel du système est développé par un programme en langage orienté objet. Dans ce langage les éléments d'un programme sont considérés comme des objets pouvant se passer des messages l'un à l'autre. Chaque objet est indépendant, et possède ses propres données et son propre code de programmation. Plus particulièrement dans la présente invention, le langage orienté objet utilisé est un langage JAVA. Ce langage permet une accessibilité du logiciel sur de multiples plates-formes comprenant tout type de machines. Par exemple, des ordinateurs avec le système d'exploitation Windows et des ordinateurs avec le système d'exploitation Linux. Ce développement peut supporter plusieurs sous-programmes appelés classes. Une première classe appelée « PRINCIPALE » contient le programme principal d'appel aux autres classes. Une autre classe, appelée « PARAM » contient un jeu d'information concernant entre autres l'emplacement de la machine dans le réseau. Plus particulièrement cette classe comprend l'adresse locale d'une machine, l'adresse de la prochaine machine dans l'anneau, la table des tâches. Une classe appelée « ANNEAU » permet de contrôler l'état de l'anneau. Une classe, appelée « JETON » permet de contrôler l'état du jeton circulant dans l'anneau. Une dernière classe appelée « RESOLUTION » permet de résoudre les tâches. Cette dernière classe permet de faire l'interface entre l'applicatif permettant la résolution de la tâche et le logiciel de communication de la présente invention. Dès qu'une machine, par exemple PC1 , démarre son exécution, le programme commence à collecter les données nécessaires à l'application. Si une machine est déjà présente sur un anneau existant, PC1 récupère les paramètres de l'exécution de l'applicatif transmis par l'autre machine. Le programme principal de la classe PRINCIPALE réalise une initialisation de ses données avec les paramètres récupérés. Le programme principal fait ensuite appel à la classe PARAM et crée une unité d'exécution, appelée également objet, de la classe PARAM. Cet objet sélectionne les informations concernant la machine, telles que l'adresse locale d'un nœud, l'adresse du prochain nœud dans l'anneau et la table des tâches. La classe principale fait ensuite appel et crée des liens avec les autres classes : la classe ANNEAU correspondant à l'administration de l'anneau, la classe JETON correspondant à l'administration du jeton et à la classe RESOLUTION permettant la résolution des tâches. Le constructeur des classes demande un objet de type PARAM permettant ainsi la collaboration de différentes tâches entre elles. Chaque instance de la classe RESOLUTION crée un objet conforme à l'application en cours. Ainsi l'utilisateur peut utiliser la présente invention pour d'autres applications permettant un autre type de calcul à grande échelle. Dans une variante de réalisation de la présente invention, la structure du réseau peut avoir une absence totale de structure logique. La figure 4 présente une structure (10) réalisée de manière aléatoire. Chaque machine est connectée à une autre machine de sa connaissance de manière aléatoire. Dans cette structure le jeton est ici à marche aléatoire, il n'est pas obligé de connaître toutes les machines de la structure. Supposons que PC2 ne connaisse que PC3. PC2 envoie de temps en temps à PC3 l'équivalent d'un jeton qui contient les informations, qu'il a calculé. PC3 va mettre à jour sa liste des tâches. De la même façon PC3 connaît PC1 et la machine parallèle MP4. De temps en temps PC3 va envoyer à ces deux machines l'information de son calcul. Un phénomène stochastique se met en place garantissant une bonne couverture de l'ensemble des machines. Si une machine disparaît, ce sont uniquement les résultats calculés par cette machine qui sont perdus. Ils peuvent être reconstruis localement par une autre machine. Ce système ne comprend plus de structure. PC3 va choisir la machine avec laquelle il va converser en fonction de loi de probabilité. Suivant ces paramètres de probabilité la convergence des informations du réseau va être plus ou moins rapide. Pour tout type d'architecture réseau en anneau ou sans structure logique, une fois que le problème est résolu et que toutes les tâches sont calculées, le réseau est détruit et toutes les machines ayant participé au calcul connaissent le résultat. Afin de sécuriser l'émission des résultats, il est possible d'utiliser un système de cryptage des données, par exemple par l'intermédiaire d'un cryptage à clé publique / clé privée. Seul des machines élues pourront accéder au résultat en clair. Ces machines peuvent participer au calcul ou seulement récupérer les résultats une fois le calcul terminé. Tous les mécanismes de cryptage de données sont déjà connus, c'est pourquoi nous ne les décrirons pas en détail. II doit être évident pour les personnes versées dans l'art que la présente invention permet des modes de réalisation sous de nombreuses autres formes spécifiques sans l'éloigner du domaine d'application de l'invention comme revendiqué. Par conséquent, les présents modes de réalisation doivent être considérés à titre d'illustration, mais peuvent être modifiés dans le domaine défini par la portée des revendications jointes, et l'invention ne doit pas être limitée aux détails donnés ci-dessus. The present invention relates to a distributed management system for computer resources and data. The present invention relates more particularly to a system for managing the distribution of calculations across a computer network. The need for computing power and data storage capacity in a computer system is increasing continuously, as is the computing capacity. For several years the calculation and storage of data was carried out centrally. A few years ago, a new approach emerged: the distribution of computation and data storage over a whole specific network such as, for example, the Internet. This approach, called globalization of IT resources and data or GRID, is a means of pooling the computing powers offered by machines connected to a network. The methods and software, using the GRID calculation system, are already known. This system can be compared by analogy with electrical networks: when a need for electrical power is issued, the electrical power management system allows access to the electrical network comprising nuclear power stations, hydraulic power stations and others. In this case, the computer network, for example the Internet, provides access to the computer power of machines connected remotely, necessary to perform a large calculation, for example simulation or modeling. The machines used for these calculations by GRID are standard office machines such as PC type computers or workstations, but also machines known as parallel machines comprising several processors, making it possible to process several tasks in parallel as well as clusters or dedicated networks.  The applications of a GRID system are designed for two main objectives: data sharing and distributed computing. GRID calculation distribution applications aim to share a calculation across a network, to build a general solution. GRID calculation methods and software, applying to calculation, are currently based on a client / server architecture, also known as centralized approach calculation. FIG. 5 represents a known embodiment of a computer network comprising the client / server architecture. A client offers its computing resources to a server (S) which manages a large-scale computation. This network firstly includes a server (S) connected to remote computers (PC1, PC2, PC3 and PC4) willing to perform a calculation. The server (S) distributes to each computer (PC1, PC2, PC3 or PC4) connected, a calculation and the data appropriate for this calculation. Computers (PC1, PC2, PC3 and PC4) perform the calculation and send the result to the server (S). The latter collects all the results to summarize them. It is possible to multiply and prioritize the servers to guarantee the availability of the computing service as shown in Figure 6. The globalization of computing calculations is classified into several categories. One of the categories concerns the families of applications specialized in the calculation of a particular problem, for example the analysis of the listening of extraterrestrial signals. To process these signals, the server (S) distributes pieces of signals which are analyzed by at least one voluntary computer (PC1, PC2, PC3 or PC4) connected by Internet. The computer (PC1, PC2, PC3 or PC4) performs the analysis and returns the result to the server (S). Another category concerns the family of protocols and libraries and middleware (middelware), assembled together to help in the development of a dedicated application. This data being very important, one cannot store the databases on each voluntary computer. Data sharing is also performed for long distances, in the case of a company on several distant geographic sites. Major drawbacks are linked to the approach centralized. A first drawback is the reliability of the system. Server failure can result in loss of results or some of the data. To remedy this problem, a current solution consists in multiplying the servers. These GRID calculation solutions target the use of determined and homogeneous machines, for example: a calculation from a network comprising only PC type computers working under Windows, a calculation from a network comprising only machines parallel. Another drawback concerns the difficulties linked to the deployment of the system. The layers of software to install require very strong skills. A final drawback concerns the security linked to voluntary computers compared to the requested calculation. The second main objective of a GRID calculation system is data sharing. The purpose of GRID data sharing applications is to allow users to share or retrieve data in different formats across a network. These applications are based on several elements: file search, file publication, statistics collection and of course file download. Certain known projects use a so-called distributed network architecture to perform data sharing. This structure consists of computers connected to each other locally or remotely. No server is present in the network. However, the current drawback of this structure is its heavy implementation, requiring strong computer skills. The present invention aims to overcome certain drawbacks of the prior art by proposing a distributed management system for computing computing resources, using a distributed approach, which can be applied to any type of machine and which is easily and quickly installed. This goal is achieved by a distributed management system of computing resources and calculations comprising a network connecting active or inactive machines, the system allowing the resolution of tasks, all of said tasks constituting a single problem to be solved, one task being executed by one of the active machines belonging to the network to using an application intended for the problem to be solved, the system of the invention is characterized in that each active and inactive machine of the system comprises a means of selecting at least one network address corresponding to another machine of the system , a computer means for managing computer resources comprising, inter alia, a means for updating information concerning the state of the tasks, this information being conveyed through the network by means of a communication message for example of token type , and a means of randomly selecting one of the tasks belonging to the problem to be solved, the active machines also being able to obtain the application and the data intended for solving the problem, said application being information downloaded during insertion into the system. According to another particular feature, the IT means for managing IT resources comprises a topology and network communication administrator, a task management administrator and a task calculator, the IT means for managing IT resources being represented by a program developed in object oriented language allowing compatibility of the IT means of IT resource management with any type of open operating system installed on machines. According to another particular feature, the object-oriented program comprises different sub-programs including: - a main sub-program allowing the call to the other sub-programs, - a sub-program comprising the parameters of network communication and task management, - a network control subroutine executed by the network topology and communication administrator, - a task status update and task selection subroutine, executed by the task management administrator ,  a task resolution subroutine also making it possible to produce an interface between the computerized means for managing IT resources and the application dedicated to the specific resolution of the tasks belonging to a specific problem, said subroutine being produced by the computer of tasks. According to another particularity, the object-oriented program of the computer means for managing computer resources is developed in java language. According to another particular feature, the machines belonging to the computer system for managing computer resources and data can be monoprocessor and multiprocessor. According to another particular feature, the active multiprocessor machines belonging to the computer resource and data management system calculate as many available tasks as there are processors. According to another particular feature, the architecture of the network is a fully distributed architecture. According to another particularity, the distributed architecture of the network is structured according to a particular virtual topology such as in a ring, making it possible to connect a machine to two other machines, each machine having two neighboring machines, the communication between the machines being carried out by a communication message. According to another particular feature, the distributed architecture of the network is structured without any particular virtual topology, the machines capable of participating in the calculation connecting to each other in a random manner and exchanging information on the state of the tasks in a random manner. According to another particular feature, the communication message includes information on the state of each task of the calculation. In another feature, the tasks of a problem are identified by an address number and the possible states of a task are represented by specific values, including the state of an available task and the state of a current task which can each be represented by a value negative, the state of a calculated task being represented by a positive value corresponding to the result of the calculation or to the unique number of the object containing the result. According to another particular feature, the installation of the distributed management system for computer resources and data on at least one machine is carried out by means of a storage means. According to another particular feature, the storage means is a mobile storage means. According to another particular feature, the installation of the distributed management system for computer resources and data on at least one machine is carried out by means of a remote download means accessible by network. According to another particular feature, the means for selecting at least one address of a machine belonging to the system comprises a file of stored addresses whose content is specific to each machine belonging to the system. According to another particular feature, the means for selecting at least one address of a machine of the system comprises a means of drawing an address from among the addresses of the machines of the machine system, the communication being established between two machines of the system from that one of the two machines answers the other machine making the call. According to another particular feature, the distributed management system for computer resources and data can be applied to any computer platform comprising any type of machine, any type of operating system and any type of hardware architecture supporting an object-oriented language. Another object is achieved by a process used by the computer resource and data management system, allowing the establishment of a network consisting of at least two machines calculating the tasks intended for solving a problem, the process includes the following steps:  at least one first machine which has become active is addressed to a second active machine by a communication message to participate in the calculation of the tasks, the first machine selecting the second machine by means of selecting in its memory the addresses of the machines of the system, - the second machine transmits to the first machine (s), the application and the data intended for solving the problem, using the communication message, - the first machine (s) each selects randomly using '' a means of selection, a non-calculated task of the application to be executed on the machine, - once the task has been calculated, the machine having completed the calculation, updates, using an update means , the information on the state of the task locally in the communication message, - once all the tasks of the application are calculated, the machines disconnect from the network defined for this a pplicatif. According to another particular feature, a machine which has just disconnected from the network whose application has been executed, scans its address file to determine another machine to which it can connect. Other features and advantages of the present invention will appear more clearly on reading the description below, made with reference to the appended drawings, in which: - Figure 1 represents a diagram of a network architecture, of the calculation system by GRID, having a ring structure, according to an embodiment of the present invention; - Figure 2 shows the composition diagram of a token according to the embodiment of the present invention; - Figure 3 shows a diagram of information exchange between two machines during the insertion of one of the two machines in the network; - Figure 4 shows the diagram of a variant network structure, according to the present invention, carried out randomly;  - Figure 5 shows the diagram of a known embodiment of computer network comprising a centralized architecture; - Figure 6 shows the diagram of a known embodiment of a computer network comprising a hierarchical architecture using several servers. The present invention is based on the known principle of the GRID calculation system. This principle is to solve a problem requiring an appropriate calculation, important to perform, using a computer power sharing. To solve this problem three steps are necessary. First, the decomposition of the problem into a set of tasks. Second, the distribution of tasks to computers connected remotely, which offer the analysis of at least one task. Third, collecting the results calculated by the machines connected to the network. The first step concerns the analysis of a problem involving an important calculation. This analysis is carried out by a user, for example a researcher or a developer. It consists of cutting the calculation into calculation segments called in the following description, tasks for a better understanding of the system. Cutting must be carried out according to precise rules. A task should not make any assumptions about the performance of another task. There is therefore no communication between the tasks. The proposed system is particularly suited to the case of tasks whose execution time cannot be predicted, in the case of so-called regular tasks, but it is also able to efficiently manage the case of tasks whose execution time is known at the time. advance or equal between all tasks, the regular case. Third, the same algorithm is applied to calculate all the tasks of the application. Thus, two tasks are distinguished by the data set they process. Each task, once specified, must be identified by a number. Once the analysis is complete, a software component, allowing the resolution of one of these elementary tasks, is developed. This component also called application in the following description is then integrated to the software of the present invention, the whole being installed on the machine initiating the calculation. The present invention relates to a system composed of software applicable to any type of machine, it is also called an "middleware" ("middelware" in English). It is software for peer to peer calculation. Its objective is to distribute across the network, all the tasks obtained by the decomposition of a problem, to solve each distributed task and to extend, through the network, the calculated results of these tasks. This software is completely distributed and is designed to be applicable on any type of network. The networks are based on different operating systems, such as Windows and Linux or on different hardware, such as a PC-type computer, a parallel machine, or any type of architecture. In the present invention all the virtual topologies are applicable and usable, whether they are regular like the ring, chain, toric grid topology or whether they are recursively constructed like the hypercube topology, in a butterfly network or whether there have an absence of virtual topology. FIG. 1 presents a diagram of a network architecture, of the GRID calculation system, having a ring structure, according to an embodiment of the present invention. This structure is a distributed approach. It includes single processor machines, such as computers (2) or multiprocessor shared memory machines (3), such as parallel machines. These machines are connected to each other by a remote link (5) so as to form a ring. Each machine is connected only to two other machines, which are themselves connected to another machine. Once all the machines are connected, the structure (1) looks like a ring. The software (20), of the present invention, is installed on all machines capable of connecting to the network. This software (20) comprises three main elements: a topology and communication administrator (200) which makes it possible to know the virtual structure of the network, a task administrator (201) making it possible to control the choice of tasks, and a task calculator (202) dedicated to a specific problem. The task administrator (201) can control several task computers (202), if all the task computers (202) are launched on the same machine, for example a parallel machine (3). Each machine owns a data set. In the protocol of a ring architecture represented in FIG. 1, any voluntary machine starts, for example PC1, the processing of any task belonging to the segmented calculation. The PC1 machine will choose this task randomly. A second voluntary machine presents itself, for example PC2, by connecting to the machine PC1 remotely. The machine PC1 will transmit the parameters of the application to PC2 allowing to create a ring link between the two machines. The PC2 machine will know that a task is being calculated and begins the calculation of another task also chosen at random. If a third machine, PC3, enters the ring, it will connect to the two machines PC1 and PC2 to form a ring structure. Once inserted into the ring, a machine acquires knowledge of the various parameters of the current calculation. This machine is capable of installing the local parameters of the tasks to be calculated. To avoid multiple calculation of the same task by all the machines in the ring, the task administrator (201) of a machine gives the task calculator (202) a number, chosen at random, associated with a task . This task is known at this time as not calculated. Each machine must be able to link numbers and data. Communication between the machines is carried out by a token (4) transmitting the state of the calculation through the ring. The token (4) travels from machine to machine and is updated locally by the machines. The machine once its calculation is finished and once the token (4) is present, analyzes the information of the token to know the tasks executed remotely, and adds the information that it has calculated. When all of the calculation is done, the ring is destroyed and the result of the calculation is known to all machines. In the particular case of multiprocessor machines, such as MP4 (3) shown in Figure 1, the machine will take as many tasks that there are processors. For example if the machine includes three processors the machine will process three tasks. As soon as the token (4) arrives and the calculations are completed, the token (4) is updated with respect to the three results obtained. Tasks can be calculated in parallel by different machines. These tasks, called repeated tasks, are necessary to guarantee a fully distributed asynchronous calculation without the use of a server distributing the tasks or without any centralized authorizing officer. Using this strategy, no machine should wait for a token in order to calculate a task. FIG. 2 represents the composition diagram of a token (4) according to the embodiment of the present invention. The token (4) comprises a table (41) comprising the state of all the tasks (410, 411, 412). Each task is identified in the token (4), by a number (40), previously defined during the cutting phase of the problem to be solved. This number (40) here represents the address of the task, which will make it possible to know its state. The token (4) contains an encoding of the state of the tasks in the form of a single state object making it possible to differentiate the state of the task. The state of an available, non-calculated task (412) will take a specific value, in our example this value is "-1". The state, of a running task (411), will take another specific value, in our example this value is "-2". The state, of a calculated task (410), will take the value corresponding to the result of the calculation or an object containing the result. This result is represented by a positive integer which will ultimately be an object representing for example the result of a weather modeling calculation. The expression object here refers to an element of a program developed in object-oriented language. This notion is explained in the following description. A problem, linked to the ring architecture of the network, is constituted by the permanent evolution of the ring during the calculation. This evolution consists in adding to the network or the loss in the network of a machine during calculation. If a machine fails, the system loses the results calculated by the latter since the last visit of the token. The system must be able to reconfigure the virtual topology, and if necessary, recreate a token and recalculate the tasks whose result has been lost. One solution to this problem is the storage by each machine of a set of K addresses of machines present in the system, K being determined according to the properties of the network. There may therefore be K-1 consecutive machines that fail simultaneously. With reference to FIG. 1, the machines PC1 and PC2 can be at the same time faulty. The network MP4 machine must have memorized the address of the PC3 machine to be able to reconstruct a correct virtual structure. When installing a GRID calculation application already known in the prior art, it is necessary to set up a software layer making it possible to create a link between the different machines of the network. This software layer is very difficult to implement, it requires significant computer skills. On this layer, is then added the application allowing to solve a specific problem. In the present invention, the software layer is not used. The software is transmitted on a simple memory key such as a floppy disk or downloaded. The installation configuration does not exist. Using this diskette, install the software code on the machine. All machines likely to participate in the calculation and thus to enter the network, must have the software and know at least one address, for example IP, Internet address, of another machine in order to connect. FIG. 3 represents a diagram of information exchange between two machines. The first machine (2a), example PC1, present in the network contains the software (20a) and its own address (21a). The first machine (2a) starting the calculation does not know anyone, which is why it includes the software (20a), the application (22a) dedicated to a specific problem and the data (23a) necessary to solve this problem. The PC1 machine begins its calculation. Another machine becomes available, for example PC2. Before connecting to the machine PC1, the machine PC2 comprises only the software (20b) of the present invention, and the address of the machine PC1 (21b). The PC2 machine sends a message to the PC1 machine to inform it of its intention to participate in the calculation in progress. The recipient machine PC1 sends it back the application (22a) and the data necessary for the calculation (23a). Each machine capable of participating in a GRID type calculation, according to the present invention, initially comprises the software and, for example, an address file (21 b) allowing the machine to address other machines, when she is available. At the end of the calculation of all the tasks concerning a problem, a machine which has just disconnected from the network whose application has been executed, examines its address file to determine another machine to which it can connect. Another embodiment, different from the address file, for conversing with a machine belonging to the network of the present invention, is to carry out an address scan of the machines connected to the network. For example, the machine PC2 is placed on the communication band of the Internet network and the software is addressed to a first machine. If this first machine does not respond, it means that it does not have the software. The PC2 machine software then addresses another machine and so on. If one of the machines responds, then it has the software. The PC2 machine is connected to this machine. To communicate with the machines connected to the network, PC2 sends blocks of addresses corresponding to any machines, and waits for a response. In a preferred embodiment of the invention, the system software is developed by an object-oriented language program. In this language the elements of a program are considered as objects that can pass messages to each other. Each object is independent, and has its own data and its own programming code. More particularly in the present invention, the object oriented language used is a JAVA language. This language allows accessibility of the software on multiple platforms including all types of machines. For example, computers with the Windows operating system and computers with the Linux operating system. This development can support several subroutines called classes. A first class called "MAIN" contains the main program for calling the other classes. Another class, called "PARAM" contains a set of information concerning inter alia the location of the machine in the network. More particularly, this class includes the local address of a machine, the address of the next machine in the ring, the task table. A class called "RING" allows to control the state of the ring. A class, called "TOKEN" allows to control the state of the token circulating in the ring. A final class called "RESOLUTION" solves tasks. This last class makes it possible to interface between the application allowing the resolution of the task and the communication software of the present invention. As soon as a machine, for example PC1, starts its execution, the program begins to collect the data necessary for the application. If a machine is already present on an existing ring, PC1 retrieves the parameters for the execution of the application transmitted by the other machine. The main program of the MAIN class initializes its data with the parameters retrieved. The main program then calls the PARAM class and creates a thread, also called an object, of the PARAM class. This object selects information about the machine, such as the local address of a node, the address of the next node in the ring, and the task table. The main class then calls and creates links with the other classes: the ANNEAU class corresponding to the administration of the ring, the TOKEN class corresponding to the administration of the token and the RESOLUTION class allowing the resolution of the tasks. The constructor of the classes requests an object of type PARAM thus allowing the collaboration of different tasks between them. Each instance of the RESOLUTION class creates an object conforming to the current application. Thus the user can use the present invention for other applications allowing another type of large-scale calculation. In an alternative embodiment of the present invention, the network structure may have a total absence of logical structure. FIG. 4 presents a structure (10) produced randomly. Each machine is connected to another machine of its knowledge so random. In this structure the token is here at random walk, it is not obliged to know all the machines of the structure. Suppose that PC2 only knows PC3. PC2 occasionally sends PC3 the equivalent of a token that contains the information it has calculated. PC3 will update its task list. In the same way PC3 knows PC1 and the parallel machine MP4. From time to time PC3 will send these two machines the information of its calculation. A stochastic phenomenon is taking place guaranteeing good coverage of all the machines. If a machine disappears, only the results calculated by this machine are lost. They can be rebuilt locally by another machine. This system no longer includes a structure. PC3 will choose the machine with which it will converse according to probability law. According to these probability parameters, the convergence of information from the network will be more or less rapid. For any type of ring network architecture or without logical structure, once the problem is solved and all the tasks are calculated, the network is destroyed and all the machines that participated in the calculation know the result. In order to secure the transmission of results, it is possible to use a data encryption system, for example by means of public key / private key encryption. Only elected machines will be able to access the clear result. These machines can participate in the calculation or only recover the results once the calculation is complete. All data encryption mechanisms are already known, which is why we will not describe them in detail. It should be obvious to those skilled in the art that the present invention allows embodiments in many other specific forms without departing from the scope of the invention as claimed. Therefore, the present embodiments should be considered by way of illustration, but may be modified in the field defined by the scope of the appended claims, and the invention should not be limited to the details given above.

Claims

REVENDICATIONS
1. Système de gestion distribuée des ressources informatiques et de calculs comprenant un réseau reliant des machines actives ou inactives, le système permettant la résolution de tâches, l'ensemble des dites tâches constituant un unique problème à résoudre, une tâche étant exécutée par une des machines actives appartenant au réseau à l'aide d'un applicatif (22a) destiné au problème à résoudre, le système de l'invention est caractérisé en ce que chaque machine active et inactive du système comprend un moyen de sélection d'au moins une adresse réseau correspondant à une autre machine du système, un moyen informatique de gestion des ressources informatiques (20) comportant entre autres, un moyen de mise à jour des informations concernant l'état des tâches, ces informations étant véhiculées à travers le réseau par le biais d'un message de communication (4) par exemple de type jeton, et un moyen de sélection aléatoire d'une des tâches appartenant au problème à résoudre, les machines actives comprenant également l'applicatif (22a) et les données (23a) destinés à la résolution du problème. 1. Distributed management system for computing and computing resources comprising a network connecting active or inactive machines, the system allowing the resolution of tasks, all of said tasks constituting a single problem to be solved, a task being executed by one of the active machines belonging to the network using an application (22a) intended for the problem to be solved, the system of the invention is characterized in that each active and inactive machine of the system comprises a means of selecting at least one network address corresponding to another machine of the system, a computer resource management means (20) comprising inter alia, a means of updating information concerning the state of the tasks, this information being conveyed through the network by the through a communication message (4), for example of the token type, and a means of randomly selecting one of the tasks belonging to the pr problem to be solved, the active machines also comprising the application (22a) and the data (23a) intended for solving the problem.
2. Système de gestion distribuée des ressources informatiques et des données selon la revendication 1 , caractérisé en ce que le moyen informatique de gestion des ressources informatique (20) comprend un administrateur de topologies et de communication réseau (200), un administrateur de gestion des tâches (202) et un calculateur de tâches (201 ), le moyen informatique de gestion de ressources informatique (20) étant représenté par un programme développé en langage orienté objet permettant une compatibilité du moyen informatique de gestion des ressources informatique à tout type de système d'exploitation ouvert implanté sur des machines. 2. Distributed management system for computer resources and data according to claim 1, characterized in that the computer means for managing computer resources (20) comprises a network topology and communication administrator (200), a management administrator for tasks (202) and a task calculator (201), the computer means for managing computer resources (20) being represented by a program developed in object oriented language allowing compatibility of the computer means for managing computer resources with any type of system operating system installed on machines.
3. Système de gestion distribuée des ressources informatiques et des données selon la revendication 1 ou 2, caractérisé en ce que le programme orienté objet comprend différents sous-programmes dont : - un sous-programme principal permettant l'appel aux autres sous-programmes, - un sous-programme comprenant les paramètres de communication réseau et de gestion des tâches, - un sous-programme de contrôle du réseau exécuté par l'administrateur de topologie et de communication réseau (200), - un sous-programme de mise à jour de l'état des tâches et de sélection des tâches, exécuté par l'administrateur de gestion des tâches (201), - un sous-programme de résolution des tâches permettant également de réaliser une interface entre le moyen informatique de gestion des ressources informatique (20) et l'applicatif (22) dédié à la résolution spécifique des tâches appartenant à un problème précis, ledit sous-programme étant réalisé par le calculateur de tâches (202). 3. A distributed management system for computer resources and data according to claim 1 or 2, characterized in that the object-oriented program comprises different sub-programs including: - a main subroutine allowing the call to the other subroutines, - a subroutine including the parameters of network communication and task management, - a subroutine of network control executed by the topology administrator and communication network (200), - a routine for updating the state of the tasks and selection of the tasks, executed by the administrator for managing the tasks (201), - a subroutine for solving the tasks also making it possible to produce an interface between the IT means for managing IT resources (20) and the application (22) dedicated to the specific resolution of the tasks belonging to a specific problem, said subroutine being produced by the task calculator ( 202).
4. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 3, caractérisé en ce que le programme orienté objet du moyen informatique de gestion des ressources informatiques est développé en langage java. 4. Distributed management system for computer resources and data according to one of claims 1 to 3, characterized in that the object-oriented program of the computer means for managing computer resources is developed in java language.
5. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 4, caractérisé en ce que les machines appartenant au système informatique de gestion des ressources informatique et des données peuvent être monoprocesseur (PC1 , PC2, PC3) et multiprocesseur (MP4). 5. Distributed management system for computer resources and data according to one of claims 1 to 4, characterized in that the machines belonging to the computer system for managing computer resources and data can be monoprocessor (PC1, PC2, PC3) and multiprocessor (MP4).
6. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 5, caractérisé en ce que les machines actives multiprocesseurs (MP4) appartenant au système de gestion des ressources informatiques et des données calculent autant de tâches disponibles qu'il y a de processeurs. 6. Distributed management system for computer resources and data according to one of claims 1 to 5, characterized in that the active multiprocessor machines (MP4) belonging to the management system for computer resources and data calculate as many available tasks as it are processors.
7. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 6, caractérisé en ce que l'architecture du réseau est une architecture totalement distribuée. 7. Distributed management system for computer resources and data according to one of claims 1 to 6, characterized in that the network architecture is a fully distributed architecture.
8. Système de gestion distribuée des ressources informatiques et des données selon la revendication 7, caractérisé en ce que l'architecture distribuée du réseau est structurée selon une topologie virtuelle particulière telle qu'en anneau (1 ), permettant de relier une machine à deux autres machines, chaque machine ayant deux machines voisines, la communication entre les machines étant réalisée par un message de communication (4). 8. A distributed management system for computer resources and data according to claim 7, characterized in that the distributed architecture of the network is structured according to a particular virtual topology such as in a ring (1), making it possible to connect a machine to two other machines, each machine having two neighboring machines, the communication between the machines being carried out by a communication message (4).
9. Système de gestion distribuée des ressources informatiques et des données selon la revendication 7, caractérisé en ce que l'architecture distribuée du réseau est structurée sans topologie virtuelle particulière, les machines susceptibles de participer au calcul se reliant les unes aux autres de manière aléatoire et s'échangeant de manière aléatoire des informations sur l'état des tâches. 9. Distributed management system for computer resources and data according to claim 7, characterized in that the distributed architecture of the network is structured without any particular virtual topology, the machines capable of participating in the computation connecting to each other in a random manner and randomly exchanging information on the status of the tasks.
10. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 9, caractérisé en ce que le message de communication (4) comprend des informations sur l'état de chaque tâche du calcul. 10. System for distributed management of computer resources and data according to one of claims 1 to 9, characterized in that the communication message (4) comprises information on the state of each task of the calculation.
1 1. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 10, caractérisé en ce que les tâches d'un problème sont identifiées par un numéro d'adressage et les états possibles d'une tâche sont représentés par des valeurs spécifiques, dont l'état d'une tâche disponible et l'état d'une tâche en cours pouvant être représentés par des valeurs négatives, l'état d'une tâche calculée étant représenté par une valeur positive correspondant au résultat du calcul ou un numéro unique d'objet contenant le résultat. 1 1. distributed management system for computer resources and data according to one of claims 1 to 10, characterized in that the tasks of a problem are identified by an address number and the possible states of a task are represented by specific values, including the state of an available task and the state of a task in progress which can be represented by negative values, the state of a calculated task being represented by a positive value corresponding to the result of the calculation or a unique object number containing the result.
12. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 11 , caractérisé en ce que son installation sur au moins une machine est réalisée par l'intermédiaire d'un moyen de mémorisation. 12. Distributed management system for computer resources and data according to one of claims 1 to 11, characterized in that its installation on at least one machine is carried out by means of a storage means.
13. Système de gestion distribuée des ressources informatiques et des données selon la revendication 12, caractérisé en ce que le moyen de mémorisation est un moyen de stockage mobile. 13. Distributed management system for computer resources and data according to claim 12, characterized in that the storage means is a mobile storage means.
14. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 11 , caractérisé en ce que son installation sur au moins une machine est réalisée par l'intermédiaire d'un moyen de téléchargement distant accessible par réseau. 14. A distributed management system for computer resources and data according to one of claims 1 to 11, characterized in that its installation on at least one machine is carried out by means of a remote download means accessible by network.
15. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 14, caractérisé en ce que le moyen de sélection d'au moins une adresse d'une machine appartenant au système comprend un fichier d'adresses mémorisées dont le contenu est spécifique à chaque machine appartenant au système. 15. Distributed management system for computer resources and data according to one of claims 1 to 14, characterized in that the means for selecting at least one address of a machine belonging to the system comprises a file of stored addresses, the content is specific to each machine belonging to the system.
16. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 15, caractérisé en ce que le moyen de sélection d'au moins une adresse d'une machine du système comprend un moyen de tirage d'une adresse parmi les adresses des machines du système machine, la communication s'établissant entre deux machines du système dès qu'une des deux machines répond à l'autre machine émettrice de l'appel. 16. System for distributed management of computer resources and data according to one of claims 1 to 15, characterized in that the means for selecting at least one address of a machine of the system comprises means for drawing an address from the addresses of the machines in the machine system, communication being established between two machines in the system as soon as one of the two machines answers the other machine making the call.
17. Système de gestion distribuée des ressources informatiques et des données selon une des revendications 1 à 16, caractérisé en ce que le système peut être appliqué à toute plate-forme informatique comprenant tout type de machine, tout type de système d'exploitation et tout type d'architecture matérielle supportant un langage orienté objet. 17. Distributed management system for computer resources and data according to one of claims 1 to 16, characterized in that the system can be applied to any computer platform comprising any type of machine, any type of operating system and any type of hardware architecture supporting an object oriented language.
18. Procédé utilisé par le système de gestion des ressources informatiques et des données, permettant la mise en place d'un réseau constitué d'au moins deux machines calculant les tâches destinées à la résolution d'un problème, le procédé est caractérisé en ce qu'il comprend les étapes suivantes : - au moins une première machine devenue active s'adresse à une deuxième machine active par un message de communication pour participer au calcul des tâches, la première machine sélectionnant la deuxième machine par un moyen de sélection dans sa mémoire des adresses des machines du système, - la deuxième machine transmet à la ou les premières machines, l'applicatif et les données destinés à la résolution du problème, à l'aide du message de communication, - la ou les premières machines sélectionnent chacune de manière aléatoire à l'aide du moyen de sélection, une tâche non calculée de l'applicatif à exécuter sur la machine, - une fois la tâche calculée, la machine ayant terminée le calcul, met à jour, à l'aide d'un moyen de mise à jour, l'information sur l'état de la tâche de manière locale dans le message de communication, - une fois que toutes les tâches de l'applicatif sont calculées, les machines se déconnectent du réseau défini pour cet applicatif. 18. Process used by the IT and data management system, allowing the establishment of a network made up of at least two machines calculating the tasks intended for the solving a problem, the method is characterized in that it comprises the following steps: - at least one first machine which has become active is addressed to a second active machine by a communication message to participate in the calculation of the tasks, the first machine selecting the second machine by means of selecting in its memory the addresses of the machines of the system, - the second machine transmits to the first machine or machines, the application and the data intended for solving the problem, using the communication message, - the first machine (s) each randomly selects a non-calculated task from the application to be executed on the machine using the selection means, - once the task has been calculated, the machine having completed the calculation, updates, using updating means, the information on the state of the task locally in the communication message, - once all the s tasks of the application are calculated, the machines disconnect from the network defined for this application.
19. Procédé, utilisé par le système de gestion des ressources informatique et des données, selon la revendication 18, caractérisé en ce qu'une machine qui vient de se déconnecter du réseau dont l'applicatif a été exécuté, scrute son fichier d'adresse pour déterminer une autre machine a laquelle elle peut se connecter. 19. Method, used by the computer resources and data management system, according to claim 18, characterized in that a machine which has just disconnected from the network whose application has been executed, scans its address file to determine another machine it can connect to.
PCT/FR2004/001814 2003-07-10 2004-07-09 System for the distributed management of computer resources and calculations WO2005008492A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0308501A FR2857472B1 (en) 2003-07-10 2003-07-10 DISTRIBUTED MANAGEMENT SYSTEM FOR COMPUTER RESOURCES AND CALCULATIONS
FR03/08501 2003-07-10

Publications (2)

Publication Number Publication Date
WO2005008492A2 true WO2005008492A2 (en) 2005-01-27
WO2005008492A3 WO2005008492A3 (en) 2005-03-17

Family

ID=33522958

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2004/001814 WO2005008492A2 (en) 2003-07-10 2004-07-09 System for the distributed management of computer resources and calculations

Country Status (2)

Country Link
FR (1) FR2857472B1 (en)
WO (1) WO2005008492A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11283859B1 (en) * 2018-04-03 2022-03-22 Amdocs Development Limited System, method, and computer program for performing distributed outsourced computing

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6721241B2 (en) * 2017-03-01 2020-07-08 株式会社イシダ Goods sorting system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5539883A (en) * 1991-10-31 1996-07-23 International Business Machines Corporation Load balancing of network by maintaining in each computer information regarding current load on the computer and load on some other computers in the network
EP0822494A2 (en) * 1996-07-30 1998-02-04 Nippon Telegraph And Telephone Corporation Load balancing method and apparatus
WO2001014961A2 (en) * 1999-08-26 2001-03-01 Parabon Computation System and method for the establishment and utilization of networked idle computational processing power
US20020019844A1 (en) * 2000-07-06 2002-02-14 Kurowski Scott J. Method and system for network-distributed computing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5539883A (en) * 1991-10-31 1996-07-23 International Business Machines Corporation Load balancing of network by maintaining in each computer information regarding current load on the computer and load on some other computers in the network
EP0822494A2 (en) * 1996-07-30 1998-02-04 Nippon Telegraph And Telephone Corporation Load balancing method and apparatus
WO2001014961A2 (en) * 1999-08-26 2001-03-01 Parabon Computation System and method for the establishment and utilization of networked idle computational processing power
US20020019844A1 (en) * 2000-07-06 2002-02-14 Kurowski Scott J. Method and system for network-distributed computing

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"ICCSA 2003: Montreal, Canada" DBLP, [Online] 21 juin 2004 (2004-06-21), pages 1-7, XP002285410 UNI-TRIER Extrait de l'Internet: URL:http://www.informatik.uni-trier.de/~le y/db/conf/iccsa/iccsa2003-3.html#FlauzacKF 03> [extrait le 2004-06-21] *
NEARY M O ET AL: "Javelin: Parallel computing on the internet" FUTURE GENERATIONS COMPUTER SYSTEMS, ELSEVIER SCIENCE PUBLISHERS. AMSTERDAM, NL, vol. 15, no. 5-6, octobre 1999 (1999-10), pages 659-674, XP004176754 ISSN: 0167-739X *
O. FLAUZAC ET AL: "CONFIIT: A Middleware for Peer to Peer Computing" COMPUTER SCIENCE AND ITS APPLICATIONS ICCSA 2003, 18 mai 2003 (2003-05-18), - 21 mai 2003 (2003-05-21) pages 69-78, XP001191089 MONTREAL, CANADA *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11283859B1 (en) * 2018-04-03 2022-03-22 Amdocs Development Limited System, method, and computer program for performing distributed outsourced computing

Also Published As

Publication number Publication date
FR2857472B1 (en) 2007-01-26
WO2005008492A3 (en) 2005-03-17
FR2857472A1 (en) 2005-01-14

Similar Documents

Publication Publication Date Title
US7805407B1 (en) System and method for dynamic configuration of replicated database servers
US20030212710A1 (en) System for tracking activity and delivery of advertising over a file network
WO2010034920A1 (en) Determination and management of virtual networks
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
CN101583939A (en) Synchronization protocol for loosely coupled devices
CN114328432A (en) Big data federal learning processing method and system
EP2955875B1 (en) Server, client and system for managing an interconnection network
EP3732565B1 (en) Computer network of computing resource infrastructures and method for allocating said resources to client applications
Grall et al. SPARQL query execution in networks of web browsers
WO2005008492A2 (en) System for the distributed management of computer resources and calculations
Xhafa et al. Efficient peerGroup management in JXTA-Overlay P2P system for developing groupware tools
WO2009007620A2 (en) System for the automatic management of networks on a computing grid
Wei et al. Towards efficient data distribution on computational desktop grids with BitTorrent
Meiklejohn et al. Loquat: A framework for large-scale actor communication on edge networks
Çevikbaş et al. Phaneros: Visibility‐based framework for massive peer‐to‐peer virtual environments
EP3563233B1 (en) Computer network of computing resource infrastructures and method for allocating these resources to client applications
Lu et al. A scalable P2P overlay based on arrangement graph with minimized overhead
FR3067832A1 (en) SUPPLY OF INTER-GROUP SERVICES
Dobre A cluster-enhanced fault tolerant peer-to-peer systems
Paul et al. Reversible phase transitions in a structured overlay network with churn
Bouget Towards a holistic construction of opportunistic large-scale distributed systems
Filep Challenges and Decisions in WOBCompute Design, a P2P Computing System Architecture
FR3039024A1 (en) SYSTEM AND AUTOMATIC METHOD FOR DEPLOYING SERVICES ON A NETWORK NODE
FR2816419A1 (en) Method for dividing load between servers on distributed system, comprises determination of tasks for transfer by a first server followed by negotiation with load control units on other servers
Cozza et al. Super peer models for public resource computing

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase