WO2009027612A2 - Procede de constitution d'un environnement virtuel de reseau p2p de type delaunay, par groupage dynamique de noeuds, et dispositif d'aide et equipement associe - Google Patents

Procede de constitution d'un environnement virtuel de reseau p2p de type delaunay, par groupage dynamique de noeuds, et dispositif d'aide et equipement associe Download PDF

Info

Publication number
WO2009027612A2
WO2009027612A2 PCT/FR2008/051517 FR2008051517W WO2009027612A2 WO 2009027612 A2 WO2009027612 A2 WO 2009027612A2 FR 2008051517 W FR2008051517 W FR 2008051517W WO 2009027612 A2 WO2009027612 A2 WO 2009027612A2
Authority
WO
WIPO (PCT)
Prior art keywords
group
nodes
node
peer
messages
Prior art date
Application number
PCT/FR2008/051517
Other languages
English (en)
Other versions
WO2009027612A3 (fr
Inventor
Matteo Varvello
Christophe Diot
Ernst W. Biersack
Original Assignee
Thomson Licensing
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 Thomson Licensing filed Critical Thomson Licensing
Publication of WO2009027612A2 publication Critical patent/WO2009027612A2/fr
Publication of WO2009027612A3 publication Critical patent/WO2009027612A3/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1053Group management mechanisms  with pre-configuration of logical or physical connections with a determined number of other peers
    • H04L67/1055Group management mechanisms  with pre-configuration of logical or physical connections with a determined number of other peers involving connection limits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1093Some peer nodes performing special functions

Definitions

  • the invention relates to virtual environments peer-to-peer network (or P2P (for "Peer-to-Peer”)), and more precisely the constitution of such environments.
  • P2P peer-to-peer network
  • a “virtual network environment” (or “Networked Virtual Environment”) is a synthetic world in which many people (or users), having at least one communication device and defining a network node, can interact via a virtual element (or character) called "avatar”.
  • Virtual Network Environment or “Networked Virtual Environment”
  • Many people (or users) having at least one communication device and defining a network node, can interact via a virtual element (or character) called "avatar”.
  • Well-known NVEs include World of Warcraft and Second Life. State of the art
  • the NVEs were initially built with a client-server architecture. But because of their ever-increasing success, their architecture has integrated server groups. Thus, the NVE of Second Life already uses more than 7000 servers. The deployment and maintenance of such architectures being complex and expensive, alternative solutions have recently been proposed.
  • the invention therefore aims to improve the situation.
  • the invention firstly proposes a method dedicated to constituting a Delaunay peer-to-peer network virtual environment for peer users who are associated with communication nodes capable of exchanging each other. messages, and consisting of: i) constituting groups of nodes with neighboring nodes of even users who present a maintenance cost (representative of the number of messages to be exchanged with the neighboring nodes to maintain the network) greater than or equal to one chosen threshold, then ii) to calculate for each group the value of the surface occupied by its nodes as well as the coordinates of a virtual node which is centrally located of this surface, iii) to transmit to each node of at least one group the coordinates of the virtual node of its group, so that it communicates them to its neighbors who are not part of its group so that they now address to this virtual node the messages that are intended for it, and iv) to dilate the coordinates of each node of each group according to a dilation factor (or expansion
  • each group leader can calculate the value of the area occupied by the nodes that want to participate in a group with which they are associated, given their respective positions within the network, as well as the virtual node coordinates which is located in the center of this surface; iii) it is also possible to transmit to each node of a group the value of the surface occupied by the nodes of its group, so that it communicates it to its neighbors who are not part of its group;
  • the virtual node of a group can be associated with the node which constitutes the group leader of this group, so that the nodes which are neighbors of the nodes of this group but which are not part of this group address to him the messages which are intended for the nodes of the group.
  • the invention also proposes a device for assisting the constitution of a Delaunay peer-to-peer network virtual environment for peer users associated with communication nodes capable of exchanging messages with each other.
  • This device is characterized by the fact that it is suitable for working for a node of the network which has been chosen to constitute a group leader for a group of nodes, and which comprises loaded processing means, in case of reception by the group leader of messages from neighboring nodes and signaling their desire to constitute together this group of nodes because they each have a maintenance cost (representative of the number of messages to be exchanged with neighboring nodes to maintain the network), higher or equal to a chosen threshold:
  • the device according to the invention may comprise other characteristics that can be taken separately or in combination, and in particular:
  • analysis means responsible for determining, at their node, its maintenance cost, then for comparing it with a chosen threshold, and, when this maintenance cost is greater than or equal to the chosen threshold, to propose to nodes that are neighbors of its node to form a group of nodes;
  • its analysis means can be loaded, in the event of reception from a neighboring node of a participation proposal to a group of nodes, to determine at their node its maintenance cost, and then to order the transmission of a participation agreement this group to the group leader who is responsible for representing it if the cost of maintenance is greater than or equal to the chosen threshold;
  • its processing means can be responsible for ordering the transmission to each node of a group of the value of the area that is occupied by the nodes of its group, so that it communicates it to its neighbors who are not part of it of his group;
  • its processing means can be responsible for associating the virtual node of a group with their node which constitutes the group leader of this group, so that the nodes which are neighbors of the nodes of this group but which are not part of the latter sends him the messages that are intended for the nodes of the group.
  • the invention also proposes a communication equipment equipped with a device of assistance of the type of that presented above.
  • the invention also relates to a method for constituting a peer-to-peer network virtual environment for peer users (Um) associated with communication nodes (Nm) able to exchange messages with each other, characterized in that comprises the following steps: i) Creation of groups of nodes (Gk) with neighboring nodes (Nm) of even users (Um) having a maintenance cost (Cm), representative of the number of messages to be exchanged with the neighboring nodes ( Nm ') for maintaining said network, greater than or equal to a predetermined threshold (Bt); ii) calculating, for each group (Gk), the value of the area occupied by its nodes as well as the coordinates of a virtual node (NVk) located in the center of said surface, iii) Transmission to each node of a group (Gk) of at least the coordinates of the virtual node (NVk) of its group (Gk) and iv) Dilatation of the coordinates of each node (Nm) of each group (Gk) according to
  • the invention also relates to a device (D) suitable for constituting a peer-to-peer network virtual environment for peer users (Um) associated with communication nodes (Nm) able to exchange messages with each other, characterized in that it is able to work for one said nodes (Nm), chosen to constitute a group leader for a group of nodes (Gk), and comprises processing means (MT) arranged, in the event of reception by said group leader of messages from neighboring nodes (Tm ) and signaling their desire to constitute together said group of nodes (Gk) because they each have a maintenance cost (Cm), representative of the number of messages to be exchanged with neighboring nodes (Nm ') to maintain said network, greater than or equal to a predetermined threshold (Bt), i) for calculating the value of the area occupied by the nodes of said group (Gk) as well as the coordinates of a virtual node (NVk) located in the center of said area, and ii ) to order the transmission to each node of said group
  • FIG. 1 schematically illustrates an example of a Delaunay network in which three Delaunay triangles and the associated circles are materialized
  • FIG. 2 schematically illustrates, on the one hand in the left-hand part, an example of a Delaunay network in which a group of nodes (G3) is materialized, and on the other hand in the right-hand part the Delaunay network of the left-hand part but with a virtual node (N V3) replacing and representing the node group (G3), and
  • FIG. 3 schematically and functionally illustrates equipment for communication equipped with a device according to the invention.
  • the object of the invention is to enable the creation of a peer-to-peer network peer-to-peer (P2P) network environment for peer-to-peer users who have communication equipment defining communication nodes and capable of mutually exchange messages in P2P mode.
  • P2P peer-to-peer network peer-to-peer
  • peer user means a user who participates, via his or her communication equipment, in a virtual network environment (or NVE) and whose virtual representation is called an "avatar".
  • NVE virtual network environment
  • avatars The coordinates of the avatars are used to define nodes of the Delaunay triangulation which will be discussed later.
  • the invention is not limited to this type of communication equipment. It concerns any type of communication equipment capable of exchanging messages containing data in P2P mode, possibly defining contents (possibly multimedia), by wire or by wave, via a network (or an infrastructure ) Communication. It may also be a landline or mobile (or cellular), a desktop or portable computer, a personal digital assistant (PDA), or a content receiver (such as a decoder, STB ("Set-Top Box”) or residential gateway).
  • PDA personal digital assistant
  • STB Set-Top Box
  • the Delaunay network-based P2P network virtual environment (or NVE) is in a stable state, or in other words than the number N of peer users participating in it. is substantially constant.
  • Each node Nm is constituted by the communication equipment Tm of a peer user Um participating in the virtual network environment (or NVE) P2P based on a Delaunay network. Therefore, in what follows the word node Nm simultaneously designates a communication equipment Tm, and vice versa.
  • a Delaunay network is an overlay network topology that is based on a Delaunay triangulation.
  • TDj 1 to 3
  • a first triangle T1 is inscribed in a first circle C1 and passes through the nodes N1, N2 and N4
  • a second triangle T2 is inscribed in a second circle C2 and passes through the nodes N4, N6. and N10
  • a third triangle T3 is inscribed in a third circle C3 and passes through the nodes N7, N8 and N10.
  • NVE-RD network virtual environment
  • a first component results from the fact that each peer user Um must monitor by means of so-called live-keeping messages (or "keep-alive"), according to a fixed frequency, his immediate neighbors, that is to say those who he can reach in one jump (or "hop"). This allows each peer Um user to constantly know the positions of his neighbors. It should be noted that these messages are generally called heartbeat messages (or "heartbeat messages”).
  • a second component results from the fact that when a peer user Um moves within the NVE-RD, the Delaunay triangulation is violated and therefore the peer users must communicate with each other to enable or disable links (or connections). . Note that these activations / deactivations are events that are usually called failover operations (or "flip operations").
  • the maintenance cost Cm is defined here by the number of messages that each peer Um has to exchange in order to maintain valid Delaunay triangulation within its NVE-RD.
  • this maintenance cost increases with the even user density and velocity of the latter. Since in most of the existing NVEs the popularity of certain areas of interest follows a power law, the peer users who are concentrated around attractive points have a considerable maintenance traffic which is likely to limit the setting scale of the NVEs.
  • the invention proposes to implement a method of constituting a Delaunay-type P2P virtual network environment (or NVE-RD) based on a dynamic generation of groups of nodes (or “clusters") intended to maintain the traffic of maintenance of the nodes below a chosen threshold.
  • This process comprises four main steps.
  • a first main step of the method (i) consists of constituting groups of nodes Gk with neighboring nodes Nm of the NVE-RD which have a maintenance cost Cm greater than or equal to a selected threshold Bt.
  • a Bt threshold equal to 25 kbps (kilobits per second).
  • each group Gk is associated with a group leader who is selected from the Nm nodes of the NVE-RD.
  • this first main step can be done as indicated below.
  • Each node Nm can determine on its side, for example periodically, its own maintenance cost Cm. If the maintenance cost Cm of a node Nm is greater than or equal to the selected threshold Bt, then this node Nm proposes to its neighboring nodes Nm '(by addressing them a dedicated message) to constitute a group of nodes Gk, and a node is chosen as a group leader.
  • any technique known to those skilled in the art can be used to select a group leader.
  • this choice can be made by election, or by level of importance within the NVE-RD, or according to technical parameters (such as the level of security offered and / or the capacity in terms of resources (particularly CPU and bandwidth)).
  • a control server for login and billing and as a group leader for each NVE-RD group.
  • the same node may be the group leader of several (at least two) different Gk groups.
  • the nodes Nm '(neighbors of the node Nm) When the nodes Nm '(neighbors of the node Nm) have received the dedicated message transmitted by the latter, they each determine their own maintenance cost Cm'. If the maintenance cost Cm 'of a neighboring node Nm' is greater than or equal to the chosen threshold Bt, then this neighboring node Nm 'transmits to the group leader a dedicated message signaling his agreement to participate in the group Gk.
  • this first main step can be implemented by each node Nm (or Nm ') by means of a help device D according to the invention.
  • the latter can be part of the communication equipment Tm which defines a node Tm, as shown without limitation in Figure 3, or be connected to the equipment of Tm communication that defines a Tm node so as to work for him.
  • Such a help device D comprises, for example, an analysis module MA which is responsible for determining, at its node Nm, its maintenance cost Cm, for comparing it with the chosen threshold Bt, and, if this maintenance cost Cm is greater than or equal to the chosen threshold Bt, to propose to the nodes Nm 'which are neighbors of its node Nm to constitute a group of nodes Gk.
  • This proposal is made by means of dedicated messages that the analysis module MA generates and which is transmitted by its communication equipment Tm.
  • the analysis module MA of a help device D is loaded, when its node Nm receives from a neighboring node Nm 'a dedicated message proposing to participate in a group of nodes Gk, to determine the maintenance cost Cm of its node Nm, then to order the latter to transmit to the head of this group Gk a dedicated message (signaling its agreement to participate in said group Gk) if the maintenance cost Cm is greater than or equal to the chosen threshold Bt.
  • a second main step of the method (ii) consists in calculating for each group Gk the value of the surface Sk which is occupied by the nodes Nm that it comprises as well as the coordinates of a virtual node NVk which is situated substantially in the center of this Sk surface.
  • the value of the surface Sk of a group Gk is calculated at the time of the creation of this group Gk and is not modified when a node leaves the group Gk or joins the group Gk. This means that the probability that a group Gk becomes empty decreases with the departure of the node.
  • the group leader removes it from the NVE-RD by deleting its NVk virtual node that represents it. This deletion is interpreted within the NVE-RD as a simple node disconnect event.
  • an external node has joined a group Gk when the area of interest of its avatar intersects the surface Sk occupied by said group Gk.
  • an internal node has left a group Gk when the area of interest of its avatar no longer intersects the surface Sk occupied by said group Gk.
  • a new group Gk was created, it is because the density of avatars was locally too high. In this case, it is reasonable to assume that the size of the area of interest of each avatar is larger than the area Sk occupied by the group Gk. Implicitly, the filtering of area of interest is therefore no longer necessary and a simple broadcast operation within the group Gk is sufficient.
  • This second step is preferably implemented at the node Nm which constitutes the group leader of the group Gk considered, since it is he who receives the dedicated messages of participation agreement. It will be noted that the calculation of the value of the area Sk occupied by the nodes Nm wanting to participate in a group Gk and the calculation of the coordinates of the virtual node NVk which is located at the center of this surface Sk are made from the respective known positions of these Nm nodes within the NVE-RD.
  • the aid device D which comprises the communication equipment Tm which constitutes a group leader (or who is connected to this equipment Tm).
  • the aid device D comprises a processing module MT which is responsible for calculating the value of the area Sk occupied by the nodes of a group Gk represented by its own node Nm (because it is their group leader), as well as the coordinates of the virtual node NVk which is located in the center of this surface Sk.
  • a third main step of the method (iii) consists in transmitting to each node of a group Gk a dedicated message comprising at least the coordinates of the virtual node NVk of its group Gk, and preferably also the surface Sk occupied by the nodes of this group. Gk, since it is useful for them to detect when they leave a group Gk.
  • Each node of the group Gk which receives this dedicated message can then communicate the information that it contains (coordinates of the virtual node NVk and possibly the associated surface Sk) to its neighbors which are not part of its group Gk, so that they address now NVk virtual node messages intended for it.
  • the virtual node NVk represents all the nodes Nm of a group Gk from the other nodes Nm "of the NVE-RD and / or the other virtual nodes NVk '.
  • the virtual node NVk of a group Gk is associated with the node which constitutes the group leader of this group Gk. Therefore, the nodes Nm "which are neighbors of the nodes Nm of a group Gk, but which are not part of this group Gk, physically address their messages (intended for the nodes of the group Gk) to the node which constitutes the head of this In practice, the node that constitutes a group leader will monitor a virtual node NVk with which it is associated in the same way as a normal node Nm, that is to say in exchanging messages of heartbeat and flip messages.
  • FIG. 2 schematically illustrates the modification made to an NVE-RD when a new group G3 is constituted.
  • the NVE-RD shown on the left side includes first NV1 and second NV2 virtual nodes, (normal) N15, N20, and N33 nodes, and many other (normal) nodes, including N8, which have decided to form together a third group G3.
  • the group leader who has been chosen for the third group G3 is for example the node N8 (equipped with a help device D according to the invention).
  • the node N8 has defined the new (third) virtual node NV3 which represents the third group G3, it replaces all the nodes of this third group G3 by this third virtual node NV3 in its NVE-RD. The result of this replacement is shown in the right-hand part of Figure 2.
  • the third main step is implemented by the help device D which comprises the communication equipment Tm which constitutes the group leader (or who is connected to this equipment Tm).
  • the processing module MT of this help device D is responsible for instructing its node (head of the group Gk) to transmit to each node of this group Gk a dedicated message comprising at least the coordinates of the virtual node NVk of its group Gk, and preferentially also the surface Sk occupied by the nodes of this group Gk.
  • a fourth main step of the method (iv) is to dilate the coordinates of each node of each group Gk according to an expansion (or expansion) factor ⁇ k (with ⁇ k> 1) that is specific to its group Gk, so as to reduce the density of this group Gk in proportion to the factor of corresponding ⁇ k expansion.
  • the fourth main step is implemented by the help device D (and for example by its processing module MT) that comprises each communication equipment Tm associated with a node Nm of a group Gk.
  • a help device D is preferably implemented in the form of software modules ("software”). But, it can also be achieved at least in the form of a combination of software modules and electronic circuits ("hardware").
  • NVE-RD can be added a data dissemination mechanism, using the method of generating groups of nodes described above, to reduce the number of jumps during the propagation of said data.
  • the invention is not limited to embodiments of a device for assisting the constitution of a Delaunay type P2P virtual network environment, communication equipment and a process for constituting a virtual P2P network environment.
  • Delaunay type described above only by way of example, but it encompasses all variants that may be considered by those skilled in the art within the scope of the claims below.
  • the invention can also be applied to mobile sensor networks that organize together in the form of a Delaunay network to share data that they have respectively acquired. This type of organization is notably described in the document Chun-Hsien Wu et al., "A Delaunay triangulation based method for wireless sensor network deployment, Computer Communications, 2007.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Un procédé est dédié à la constitution d'un environnement virtuel de réseau pair à pair de type Delaunay pour des usagers pairs qui sont associés à des nœuds de communication (N8-N33) propres à s'échanger mutuellement des messages. Ce procédé consiste i) à constituer des groupes de nœuds (G3) avec des nœuds voisins d'usagers pairs qui présentent un coût de maintenance supérieur ou égal à un seuil choisi, puis ii) à calculer pour chaque groupe (G3) la valeur de la surface qui est occupée par ses nœuds ainsi que les coordonnées d'un nœud virtuel (NV3) situé au centre de cette surface, iii) à transmettre à chaque nœud d'un groupe (G3) au moins les coordonnées du nœud virtuel (NV3) de son groupe (G3), afin qu'il les communique à ses voisins qui ne font pas partie de son groupe (G3) pour qu'ils adressent désormais à ce nœud virtuel (NV3) les messages qui lui sont destinés, et iv) à dilater les coordonnées de chaque nœud de chaque groupe (G3) en fonction d'un facteur de dilatation propre à son groupe (G3), de manière à réduire la densité de ce groupe (G3) proportionnellement au facteur de dilatation correspondant.

Description

PROCEDE DE CONSTITUTION D'UN ENVIRONNEMENT VIRTUEL DE RESEAU P2P DE TYPE DELAUNAY, PAR GROUPAGE DYNAMIQUE DE NŒUDS, ET DISPOSITIF D'AIDE ET EQUIPEMENT ASSOCIE
Domaine technique de l'invention
L'invention concerne les environnements virtuels de réseau pair à pair (ou P2P (pour « Peer-to-Peer »)), et plus précisément la constitution de tels environnements.
On entend ici par « environnement virtuel de réseau » (ou NVE pour « Networked Virtual Environment ») un monde synthétique dans lequel de nombreuses personnes (ou usagers), disposant d'au moins un équipement de communication et définissant un nœud de réseau, peuvent interagir via un élément (ou caractère) virtuel appelé « avatar ». Parmi les NVEs bien connus, on peut notamment citer World of Warcraft et Second Life. Etat de l'art
Comme le sait l'homme de l'art, les NVEs ont été initialement construits avec une architecture de type client-serveur. Mais, en raison de leur succès sans cesse croissant, leur architecture a intégré des groupes de serveurs. Ainsi, le NVE de Second Life utilise déjà plus de 7000 serveurs. Le déploiement et la maintenance de telles architectures étant complexe et onéreux, des solutions alternatives ont été récemment proposées.
Ainsi, il a été proposé d'utiliser une architecture de type pair à pair (ou P2P (pour « Peer-to-Peer »)) afin de remédier au problème de mise à l'échelle (ou « scalability »). En effet, en théorie un NVE de type P2P peut obtenir une auto-mise à l'échelle en exploitant les ressources des équipements de communication des usagers pairs. Mais, chaque usager pair devant transmettre périodiquement à tous les autres usagers pairs du NVE une mise à jour d'états, on comprendra que cette solution ne peut fonctionner qu'à condition que le nombre d'usagers pairs soit assez limité. En d'autres termes, en présence de très nombreux usagers pairs il devient indispensable de mettre en œuvre une stratégie de dissémination des messages de mise à jour.
Par ailleurs, on constate généralement qu'un usager pair n'est intéressé que par une portion limitée (dite aire d'intérêt (ou AoI (pour « Area of Interest »))) du monde que constitue son NVE, si bien que dans la pratique les mises à jour d'états ne sont utiles qu'à des usagers pairs qui appartiennent à une même aire d'intérêt ou à des aires d'intérêt qui se recouvrent partiellement.
Il a également été proposé sous le nom « Colyseus » un NVE mettant en œuvre un mécanisme de publication/souscription et reposant sur un certain nombre de requêtes DHT (« Distributed Hash Table »). Cette solution est notamment décrite dans l'article de Ashwin Bharambe et al, « Colyseus : A distributed architecture for online multiplayer games », NSDI '06, 2006. Plus précisément, chaque usager pair publie des objets dans la table DHT et souscrit à des zones du NVE afin de découvrir des objets dans leurs environnements respectifs. Hélas, cette solution souffre d'un manque de discrétion en raison de l'utilisation de la table DHT et du sur-débit qui est introduit par la maintenance de la table DHT dans un environnement réel.
Il a également été proposé sous le nom « Solipsis » un NVE dans lequel chaque usager pair connaît tous les autres usagers pairs appartenant à son aire d'intérêt et collabore avec ses voisins pour détecter quand un nouvel usager pair pénètre dans son aire d'intérêt. Cette solution est notamment décrite dans l'article de J. Keller et al, « SOLIPSIS : A massively multi- participant virtual word », Int. Conf. on Parallel and Distributed Techniques and Applications, 2003. Afin d'assurer une bonne connectivité globale, chaque usager pair doit se trouver à l'intérieur du polygone qui passe par chacun de ses voisins. Or, il peut arriver que le processus de découverte de voisins aboutisse à une liste incomplète du fait que les nouveaux usagers pairs peuvent être inconnus de voisins connectés directement.
Afin de remédier à l'inconvénient introduit par le processus de découverte de voisins de la solution Solipsis, il a été proposé d'utiliser un réseau de type Voronoï (qui est le dual d'un réseau de type Delaunay). Cette solution est notamment décrite dans l'article de S.-Y. Hu et al, « VON : A scalable peer-to-peer network for virtual environments », Networks, IEEE, 2006. Plus précisément, chaque usager pair doit, d'une part, maintenir un diagramme de Voronoï de tous ses voisins au sein de son aire d'intérêt, et d'autre part, se connecter directement à chacun desdits voisins. La mise à jour des objets est ici effectuée par les propriétaires desdits objets, permettant ainsi de remédier au problème d'indiscrétion induit par la solution Colyseus. L'inconvénient principal de cette solution réside dans le fait qu'elle souffre d'un coût de maintenance incontrôlé en présence d'un environnement dynamique, notamment lorsque la distribution des avatars dans le monde virtuel n'est pas uniforme.
Il a également été proposé de mettre en œuvre un mécanisme de génération de groupes (ou « clusters ») d'usagers pairs dans un NVE reposant sur un réseau de type Delaunay à trois dimensions (3D). Cette solution est notamment décrite dans l'article de M. Steiner et al, « DDC : A dynamic and distributed clustering algorithm for networked virtual environments based on P2P networks », Proc. of the 9th IEEE Global Internet Symposium 2006, Spain. Il s'agit ici de classer les liens (ou connexions) qui sont établis entre voisins dans deux catégories : les liens courts intra-groupe et les liens long inter-groupes. Ce mécanisme de génération de groupes est utile pour accélérer la navigation au sein du réseau de Delaunay et pour réduire le nombre de messages qu'un usager pair reçoit lorsqu'il se déplace au sein du réseau de Delaunay (NVE). Cependant, avec cette solution il est difficile de définir un seuil pour les groupes (ou clusters) et la mobilité des usagers pairs n'est pas prise en compte.
Résumé de l'invention
L'invention a donc pour but d'améliorer la situation. A cet effet, l'invention propose tout d'abord un procédé, dédié à la constitution d'un environnement virtuel de réseau pair à pair de type Delaunay pour des usagers pairs qui sont associés à des nœuds de communication capables de s'échanger mutuellement des messages, et consistant : i) à constituer des groupes de nœuds avec des nœuds voisins d'usagers pairs qui présentent un coût de maintenance (représentatif du nombre de messages à échanger avec les nœuds voisins pour maintenir le réseau) supérieur ou égal à un seuil choisi, puis ii) à calculer pour chaque groupe la valeur de la surface qui est occupée par ses nœuds ainsi que les coordonnées d'un nœud virtuel qui est situé au centre de cette surface, iii) à transmettre à chaque nœud d'un groupe au moins les coordonnées du nœud virtuel de son groupe, afin qu'il les communique à ses voisins qui ne font pas partie de son groupe pour qu'ils adressent désormais à ce nœud virtuel les messages qui lui sont destinés, et iv) à dilater les coordonnées de chaque nœud de chaque groupe en fonction d'un facteur de dilatation (ou d'expansion) propre à son groupe, de manière à réduire la densité dudit groupe proportionnellement audit facteur de dilatation correspondant. Le procédé selon l'invention peut comporter d'autres caractéristiques qui peuvent être prises séparément ou en combinaison, et notamment :
- au i) on peut déterminer au niveau d'un nœud d'un usager pair son coût de maintenance. Puis, si le coût de maintenance est supérieur ou égal à un seuil choisi, on peut proposer à ses nœuds voisins de constituer un groupe de nœuds et on peut choisir un chef de groupe (éventuellement parmi ces nœuds). Puis, on peut déterminer au niveau de chacun des nœuds voisins son coût de maintenance afin de transmettre au chef de groupe un accord de participation à ce groupe si le coût de maintenance est supérieur ou égal au seuil choisi ; > au ii) chaque chef de groupe peut calculer la valeur de la surface qui est occupée par les nœuds qui veulent participer à un groupe auquel il est associé, compte tenu de leurs positions respectives au sein du réseau, ainsi que les coordonnées du nœud virtuel qui est situé au centre de cette surface ; - au iii) on peut également transmettre à chaque nœud d'un groupe la valeur de la surface qui est occupée par les nœuds de son groupe, afin qu'il la communique à ses voisins qui ne font pas partie de son groupe ;
- le nœud virtuel d'un groupe peut être associé au nœud qui constitue le chef de groupe de ce groupe, afin que les nœuds qui sont voisins des nœuds de ce groupe mais qui ne font pas partie de ce dernier lui adressent les messages qui sont destinés aux nœuds du groupe.
L'invention propose également un dispositif d'aide à la constitution d'un environnement virtuel de réseau pair à pair de type Delaunay pour des usagers pairs associés à des nœuds de communication propres à s'échanger mutuellement des messages.
Ce dispositif se caractérise par le fait qu'il est propre à travailler pour un nœud du réseau qui a été choisi pour constituer un chef de groupe pour un groupe de nœuds, et qui comprend des moyens de traitement chargés, en cas de réception par le chef de groupe de messages issus de nœuds voisins et signalant leur désir de constituer ensemble ce groupe de nœuds du fait qu'ils présentent chacun un coût de maintenance (représentatif du nombre de messages à échanger avec les nœuds voisins pour maintenir le réseau), supérieur ou égal à un seuil choisi :
- de calculer la valeur de la surface qui est occupée par les nœuds du groupe ainsi que les coordonnées d'un nœud virtuel qui est situé au centre de cette surface, et - d'ordonner la transmission à chaque nœud du groupe d'au moins les coordonnées du nœud virtuel de ce groupe, afin qu'il les communique à ses voisins qui ne font pas partie de son groupe pour qu'ils adressent désormais à ce nœud virtuel les messages qui lui sont destinés, et afin qu'il dilate ses propres coordonnées en fonction d'un facteur de dilatation (ou d'expansion) qui est propre à son groupe, de manière à réduire la densité dudit groupe proportionnellement audit facteur de dilatation correspondant.
Le dispositif selon l'invention peut comporter d'autres caractéristiques qui peuvent être prises séparément ou en combinaison, et notamment :
- il peut comprendre des moyens d'analyse chargés de déterminer au niveau de leur nœud son coût de maintenance, puis de comparer ce dernier à un seuil choisi, et, lorsque ce coût de maintenance est supérieur ou égal au seuil choisi, de proposer aux nœuds qui sont voisins de son nœud de constituer un groupe de nœuds ;
> ses moyens d'analyse peuvent être chargés, en cas de réception en provenance d'un nœud voisin d'une proposition de participation à un groupe de nœuds, de déterminer au niveau de leur nœud son coût de maintenance, puis d'ordonner la transmission d'un accord de participation à ce groupe au chef de groupe qui est chargé de le représenter si le coût de maintenance est supérieur ou égal au seuil choisi ;
- ses moyens de traitement peuvent être chargés d'ordonner la transmission à chaque nœud d'un groupe de la valeur de la surface qui est occupée par les nœuds de son groupe, afin qu'il la communique à ses voisins qui ne font pas partie de son groupe ;
- ses moyens de traitement peuvent être chargés d'associer le nœud virtuel d'un groupe à leur nœud qui constitue le chef de groupe de ce groupe, afin que les nœuds qui sont voisins des nœuds de ce groupe mais qui ne font pas partie de ce dernier lui adressent les messages qui sont destinés aux nœuds du groupe.
L'invention propose également un équipement de communication équipé d'un dispositif d'aide du type de celui présenté ci-avant.
L'invention concerne également un procédé de constitution d'un environnement virtuel de réseau pair à pair pour des usagers pairs (Um) associés à des nœuds de communication (Nm) aptes à s'échanger mutuellement des messages, caractérisé en ce qu'il comprend les étapes suivantes : i) Constitution de groupes de nœuds (Gk) avec des nœuds voisins (Nm) d'usagers pairs (Um) présentant un coût de maintenance (Cm), représentatif du nombre de messages à échanger avec les nœuds voisins (Nm') pour maintenir ledit réseau, supérieur ou égal à un seuil prédéterminé (Bt) ; ii) Calcul, pour chaque groupe (Gk), de la valeur de la surface occupée par ses nœuds ainsi que des coordonnées d'un nœud virtuel (NVk) situé au centre de ladite surface, iii) Transmission à chaque nœud d'un groupe (Gk) d'au moins les coordonnées du nœud virtuel (NVk) de son groupe (Gk) et iv) Dilatation des coordonnées de chaque nœud (Nm) de chaque groupe (Gk) en fonction d'un facteur de dilatation propre à son groupe (Gk),
L'invention se rapporte également à un dispositif (D) apte à la constitution d'un environnement virtuel de réseau pair à pair pour des usagers pairs (Um) associés à des nœuds de communication (Nm) aptes à s'échanger mutuellement des messages, caractérisé en ce qu'il est apte à travailler pour l'un desdits nœuds (Nm), choisi pour constituer un chef de groupe pour un groupe de nœuds (Gk), et comprend des moyens de traitement (MT) agencés, en cas de réception par ledit chef de groupe de messages issus de nœuds voisins (Tm) et signalant leur souhait de constituer ensemble ledit groupe de nœuds (Gk) du fait qu'ils présentent chacun un coût de maintenance (Cm), représentatif du nombre de messages à échanger avec les nœuds voisins (Nm') pour maintenir ledit réseau, supérieur ou égal à un seuil prédéterminé (Bt), i) pour calculer la valeur de la surface occupée par les nœuds dudit groupe (Gk) ainsi que les coordonnées d'un nœud virtuel (NVk) situé au centre de ladite surface, et ii) pour ordonner la transmission à chaque nœud dudit groupe (Gk) d'au moins les coordonnées du nœud virtuel (NVk) de ce groupe (Gk), chaque nœud dudit groupe (Gk) dilatant ses coordonnées en fonction d'un facteur de dilatation propre à son groupe (Gk).
Brève description des dessins
D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés, sur lesquels :
- la figure 1 illustre de façon schématique un exemple de réseau de Delaunay où se trouvent matérialisés trois triangles de Delaunay et les cercles associés,
- la figure 2 illustre de façon schématique, d'une part dans la partie de gauche, un exemple de réseau de Delaunay dans lequel se trouve matérialisé un groupe de nœuds (G3), et d'autre part dans la partie de droite, le réseau de Delaunay de la partie de gauche mais avec un nœud virtuel (N V3) remplaçant et représentant le groupe de nœuds (G3), et
- la figure 3 illustre de façon schématique et fonctionnelle un équipement de communication équipé d'un dispositif d'aide selon l'invention.
Les dessins annexés pourront non seulement servir à compléter l'invention, mais aussi contribuer à sa définition, le cas échéant.
Description détaillée
L'invention a pour objet de permettre la constitution d'un environnement virtuel de réseau pair à pair (P2P) basé sur un réseau de type Delaunay pour des usagers pairs qui disposent d'équipements de communication définissant des nœuds de communication et capables de s'échanger mutuellement des messages en mode P2P.
On entend ici par « usager pair » un usager qui participe, via son équipement de communication, à un environnement virtuel de réseau (ou NVE) et dont la représentation virtuelle est appelée un « avatar ». Les coordonnées des avatars sont utilisées pour définir des nœuds de la triangulation de Delaunay sur laquelle on reviendra plus loin.
Dans ce qui suit, on considère à titre d'exemple non limitatif que les équipements de communication (Tm, m = 1 à M) des usagers clients sont des ordinateurs portables (« laptops ») connectés à l'Internet. Mais, l'invention n'est pas limitée à ce type d'équipement de communication. Elle concerne en effet tout type d'équipement de communication capable d'échanger en mode P2P des messages contenant des données, définissant éventuellement des contenus (éventuellement multimédia), par voie filaire ou par voie d'ondes, via un réseau (ou une infrastructure) de communication. Il pourra donc s'agir également d'un téléphone fixe ou mobile (ou cellulaire), d'un ordinateur fixe ou portable, d'un assistant numérique personnel (ou PDA), ou d'un récepteur de contenus (comme par exemple un décodeur, un STB (« Set-Top Box ») ou une passerelle résidentielle).
Par ailleurs, on considère dans ce qui suit que l'environnement virtuel de réseau (ou NVE) P2P basé sur un réseau de Delaunay est dans un état stable, ou en d'autres termes que le nombre N d'usagers pairs qui y participent est sensiblement constant.
On a schématiquement représenté sur la figure 1 un exemple d'environnement virtuel de réseau (ou NVE) P2P basé sur un réseau de Delaunay et comportant dix nœuds Nm (m = 1 à 10)). Chaque nœud Nm est constitué par l'équipement de communication Tm d'un usager pair Um participant à l'environnement virtuel de réseau (ou NVE) P2P basé sur un réseau de Delaunay. Par conséquent, dans ce qui suit le mot nœud Nm désigne en même temps un équipement de communication Tm, et réciproquement.
Il est rappelé qu'un réseau de Delaunay est une topologie de réseau de recouvrement (ou « overlay network ») qui est basée sur une triangulation de Delaunay. Pour un ensemble de nœuds la triangulation de Delaunay contient tous les triangles TDj (ici j = 1 à 3) possibles qui sont inscrits dans un cercle Cj qui ne contient pas de nœud ailleurs qu'en trois points de sa circonférence. Dans l'exemple de la figure 1 , un premier triangle T1 est inscrit dans un premier cercle C1 et passe par les nœuds N1 , N2 et N4, un deuxième triangle T2 est inscrit dans un deuxième cercle C2 et passe par les nœuds N4, N6 et N10, et un troisième triangle T3 est inscrit dans un troisième cercle C3 et passe par les nœuds N7, N8 et N10.
On comprendra que les coordonnées des nœuds Nm des usagers pairs Um dans un environnement virtuel de réseau (ou NVE) P2P basé sur un réseau de Delaunay (ci-après désigné par « NVE-RD ») sont celles de leurs avatars (c'est-à-dire de leur représentation virtuelle au sein du NVE-RD). Par ailleurs, les côtés des triangles de Delaunay TDj matérialisent les connexions que les nœuds Nm ont établis avec leurs voisins Nm'.
On notera, comme cela est décrit dans le document de A. Bowyer « Computing Dirichlet tessellations », Computer journal, pages 162-166, 1981 , que dans un réseau de Delaunay (RD) bidimensionnel (2D) regroupant un nombre suffisamment élevé d'usagers pairs, chaque nœud interne qui ne se trouve pas situé sur la périphérie dudit réseau RD présente une moyenne de six voisins. Cela signifie que chaque usager pair Um est à chaque instant connecté à un nombre fini de voisins virtuels qui est indépendant de la population du NVE-RD.
La maintenance d'un NVE-RD est effectuée par tous les usagers pairs Um qui y participent. Le coût de cette maintenance est constitué de deux composantes. Une première composante résulte du fait que chaque usager pair Um doit surveiller au moyen de messages dits de maintien en direct (ou « keep- alive »), selon une fréquence fixée, ses voisins immédiats, c'est-à-dire ceux qu'il peut atteindre en un saut (ou « hop »). Cela permet à chaque usager pair Um de connaître en permanence les positions de ses voisins. On notera que ces messages sont généralement appelés messages de battements de cœur (ou « heartbeat messages »). Une seconde composante résulte du fait que lorsqu'un usager pair Um se déplace au sein du NVE-RD, la triangulation de Delaunay est violée et donc les usagers pairs doivent communiquer les uns avec les autres pour activer ou désactiver des liens (ou connexions). On notera que ces activations/désactivations constituent des événements qui sont généralement appelés opérations de basculement (ou « flip opérations »).
On définit donc ici le coût de maintenance Cm par le nombre de messages que chaque usager pair Um doit échanger pour maintenir valide la triangulation de Delaunay au sein de son NVE-RD. Dans un environnement dynamique, ce coût de maintenance augmente avec la densité d'usagers pairs et la vélocité de ces derniers. Etant donné que dans la plupart des NVEs existants la popularité de certaines aires d'intérêt suit une loi de puissance, les usagers pairs qui sont concentrés autour de points attractifs ont un trafic de maintenance considérable qui est de nature à limiter la mise à l'échelle des NVEs.
L'invention propose de mettre en œuvre un procédé de constitution d'un environnement virtuel de réseau P2P de type Delaunay (ou NVE-RD) reposant sur une génération dynamique de groupes de nœuds (ou « clusters ») destinée à maintenir le trafic de maintenance des nœuds en dessous d'un seuil choisi.
Ce procédé comprend quatre étapes principales.
Une première étape principale du procédé (i) consiste à constituer des groupes de nœuds Gk avec des nœuds voisins Nm du NVE-RD qui présentent un coût de maintenance Cm supérieur ou égal à un seuil choisi Bt. A titre d'exemlpe non limitatif on peut choisir un seuil Bt égal à 25 kbps (kilobits par seconde).
Chaque groupe Gk est par exemple associé à un chef de groupe qui est choisi parmi les nœuds Nm du NVE-RD.
A titre d'exemple non limitatif, la mise en œuvre de cette première étape principale peut se faire comme indiqué ci-après.
Chaque nœud Nm peut déterminer de son côté, par exemple périodiquement, son propre coût de maintenance Cm. Si le coût de maintenance Cm d'un nœud Nm est supérieur ou égal au seuil choisi Bt, alors, ce nœud Nm propose à ses nœuds voisins Nm' (en leur adressant un message dédié) de constituer un groupe de nœuds Gk, et un nœud est choisi en tant que chef de groupe.
On notera que toute technique connue de l'homme de l'art peut être utilisée pour choisir un chef de groupe. Ainsi, ce choix peut se faire par élection, ou par niveau d'importance au sein du NVE-RD, ou encore en fonction de paramètres techniques (comme par exemple le niveau de sécurité offert et/ou les capacités en terme de ressources (notamment CPU et bande passante)). Dans un système commercial, on peut envisager d'utiliser un serveur de contrôle pour l'accès (« login ») et la facturation (« billing ») et en tant que chef de groupe pour chaque groupe du NVE-RD. II est important de noter qu'un même nœud peut tout à fait être le chef de groupe de plusieurs (au moins deux) groupes Gk différents.
Lorsque les nœuds Nm' (voisins du nœud Nm) ont reçu le message dédié transmis par ce dernier, ils déterminent chacun leur propre coût de maintenance Cm'. Si le coût de maintenance Cm' d'un nœud voisin Nm' est supérieur ou égal au seuil choisi Bt, alors, ce nœud voisin Nm' transmet au chef de groupe un message dédié signalant son accord pour participer au groupe Gk.
Il est important de noter que cette première étape principale peut être mise en œuvre par chaque nœud Nm (ou Nm') au moyen d'un dispositif d'aide D selon l'invention. On notera que ce dernier peut soit faire partie de l'équipement de communication Tm qui définit un nœud Tm, comme illustré non limitativement sur la figure 3, soit être connecté à l'équipement de communication Tm qui définit un nœud Tm de manière à travailler pour lui.
Un tel dispositif d'aide D comprend par exemple un module d'analyse MA qui est chargé de déterminer au niveau de son nœud Nm son coût de maintenance Cm, de comparer ce dernier au seuil choisi Bt, et, si ce coût de maintenance Cm est supérieur ou égal au seuil choisi Bt, de proposer aux nœuds Nm' qui sont voisins de son nœud Nm de constituer un groupe de nœuds Gk. Cette proposition se fait par le biais de messages dédiés que le module d'analyse MA génère et qui son transmis par son équipement de communication Tm. Par ailleurs, le module d'analyse MA d'un dispositif d'aide D est chargé, lorsque son nœud Nm reçoit d'un nœud voisin Nm' un message dédié lui proposant de participer à un groupe de nœuds Gk, de déterminer le coût de maintenance Cm de son nœud Nm, puis d'ordonner à ce dernier de transmettre au chef de ce groupe Gk un message dédié (signalant son accord pour participer audit groupe Gk) si ce coût de maintenance Cm est supérieur ou égal au seuil choisi Bt.
Une deuxième étape principale du procédé (ii) consiste à calculer pour chaque groupe Gk la valeur de la surface Sk qui est occupée par les nœuds Nm qu'il comprend ainsi que les coordonnées d'un nœud virtuel NVk qui est situé sensiblement au centre de cette surface Sk.
La valeur de la surface Sk d'un groupe Gk est calculée au moment de la création de ce groupe Gk et n'est pas modifiée lorsqu'un nœud quitte le groupe Gk ou rejoint le groupe Gk. Cela signifie que la probabilité qu'un groupe Gk devienne vide décroît avec le départ de nœud. Lorsqu'un groupe Gk est vide, le chef de groupe le supprime du NVE-RD en supprimant son nœud virtuel NVk qui le représente. Cette suppression est interprétée au sein du NVE- RD comme un simple événement de déconnexion de nœud.
On considère ici qu'un nœud externe a rejoint un groupe Gk lorsque l'aire d'intérêt de son avatar intersecte la surface Sk occupée par ledit groupe Gk. De même, on considère ici qu'un nœud interne a quitté un groupe Gk lorsque l'aire d'intérêt de son avatar n'intersecte plus la surface Sk occupée par ledit groupe Gk. On notera également que si un nouveau groupe Gk a été créé, c'est que la densité d'avatars était localement trop élevée. Dans ce cas, il est raisonnable de supposer que la taille de l'aire d'intérêt de chaque avatar est plus grande que la surface Sk occupée par le groupe Gk. Implicitement, le filtrage d'aire d'intérêt n'est donc plus nécessaire et une simple opération de diffusion à l'intérieur du groupe Gk est suffisante.
Cette deuxième étape est préférentiellement mise en œuvre au niveau du nœud Nm qui constitue le chef de groupe du groupe Gk considéré, puisque c'est lui qui reçoit les messages dédiés d'accord de participation. On notera que le calcul de la valeur de la surface Sk occupée par les nœuds Nm voulant participer à un groupe Gk et le calcul des coordonnées du nœud virtuel NVk qui est situé au centre de cette surface Sk se font à partir des positions connues respectives de ces nœuds Nm au sein du NVE-RD.
Il est important de noter que cette deuxième étape principale est mise en œuvre par le dispositif d'aide D que comprend l'équipement de communication Tm qui constitue un chef de groupe (ou qui est connecté à cet équipement Tm). A cet effet, le dispositif d'aide D comprend un module de traitement MT qui est chargé de calculer la valeur de la surface Sk occupée par les nœuds d'un groupe Gk que représente son propre nœud Nm (du fait qu'il est leur chef de groupe), ainsi que les coordonnées du nœud virtuel NVk qui est situé au centre de cette surface Sk.
Une troisième étape principale du procédé (iii) consiste à transmettre à chaque nœud d'un groupe Gk un message dédié comportant au moins les coordonnées du nœud virtuel NVk de son groupe Gk, et préférentiellement également la surface Sk occupée par les nœuds de ce groupe Gk, puisqu'elle leur est utile pour détecter lorsqu'ils quittent un groupe Gk. Chaque nœud du groupe Gk qui reçoit ce message dédié peut alors communiquer les informations qu'il contient (coordonnées du nœud virtuel NVk et éventuellement la surface Sk associée) à ses voisins qui ne font pas partie de son groupe Gk, afin qu'ils adressent désormais au nœud virtuel NVk les messages qui lui sont destinés.
Le nœud virtuel NVk représente tous les nœuds Nm d'un groupe Gk auprès des autres nœuds Nm" du NVE-RD et/ou des autres nœuds virtuels NVk'.
On notera que le nœud virtuel NVk d'un groupe Gk est associé au nœud qui constitue le chef de groupe de ce groupe Gk. Par conséquent, les nœuds Nm" qui sont voisins des nœuds Nm d'un groupe Gk, mais qui ne font pas partie de ce groupe Gk, adressent physiquement leurs messages (destinés aux nœuds du groupe Gk) au nœud qui constitue le chef de ce groupe et qui va agir à sa place. Dans la pratique, le nœud qui constitue un chef de groupe va surveiller un nœud virtuel NVk auquel il est associé de la même façon qu'un nœud normal Nm, c'est-à-dire en échangeant avec lui des messages de battements de cœur (heartbeat) et des messages de basculement (flip).
On a schématiquement illustré sur les deux parties de la figure 2 la modification apportée à un NVE-RD lorsqu'un nouveau groupe G3 est constitué. Dans cet exemple, le NVE-RD illustré sur la partie de gauche comprend des premier NV1 et deuxième NV2 nœuds virtuels, des nœuds (normaux) N15, N20 et N33, et de nombreux autres nœuds (normaux), dont N8, qui ont décidé de constituer ensemble un troisième groupe G3. Le chef de groupe qui a été choisi pour le troisième groupe G3 est par exemple le nœud N8 (équipé d'un dispositif d'aide D selon l'invention). Une fois que le nœud N8 a défini le nouveau (troisième) nœud virtuel NV3 qui représente le troisième groupe G3, il remplace l'ensemble des nœuds de ce troisième groupe G3 par ce troisième nœud virtuel NV3 dans son NVE-RD. Le résultat de ce remplacement est illustré dans la partie de droite de la figure 2.
Il est important de noter que la troisième étape principale est mise en œuvre par le dispositif d'aide D que comprend l'équipement de communication Tm qui constitue le chef de groupe (ou qui est connecté à cet équipement Tm). A cet effet, le module de traitement MT de ce dispositif d'aide D est chargé d'ordonner à son nœud (chef du groupe Gk) de transmettre à chaque nœud de ce groupe Gk un message dédié comportant au moins les coordonnées du nœud virtuel NVk de son groupe Gk, et préférentiellement également la surface Sk occupée par les nœuds de ce groupe Gk.
Une quatrième étape principale du procédé (iv) consiste à dilater les coordonnées de chaque nœud de chaque groupe Gk en fonction d'un facteur de dilatation (ou d'expansion) βk (avec βk > 1 ) qui est propre à son groupe Gk, de manière à réduire la densité de ce groupe Gk proportionnellement au facteur de dilatation βk correspondant. En effet, si l'on désigne par Nk le nombre de nœuds d'un groupe Gk et par pk la densité de nœuds au sein d'un groupe Gk (avec pk = Nk/Sk), alors si tous les nœuds d'un même groupe Gk étendent leurs coordonnées respectives d'un même facteur de dilatation βk (pour augmenter leurs distances réciproques), on obtient une nouvelle surface S'k pour le groupe Gk qui est donnée par la relation S'k = Sk*βk et donc la nouvelle densité (après dilatation (ou expansion)) est donnée par la relation p'k = pk/βk. La valeur du facteur de dilatation βk peut par exemple être prédéfinie (par exemple elle peut être égale à 2).
La dilatation (ou expansion) étant la même pour tous les nœuds Nm d'un groupe Gk, les relations angulaires entre ces nœuds Nm restent les mêmes. Par conséquent, la constitution d'un groupe (ou « clustering ») n'induit pas de coût additionnel dû à des opérations de basculement (ou « flip opérations »).
Il est important de noter que la quatrième étape principale est mise en œuvre par le dispositif d'aide D (et par exemple par son module de traitement MT) que comprend chaque équipement de communication Tm associé à un nœud Nm d'un groupe Gk.
On notera qu'un dispositif d'aide D, selon l'invention, est préférentiellement réalisé sous la forme de modules logiciels (« software »). Mais, il peut être également réalisé au moins sous la forme d'une combinaison de modules logiciels et de circuits électroniques (« hardware »).
Il est également important de noter que la création de groupes Gk fonctionne de façon hiérarchique. Cela signifie que des (sous-)groupes Gk' peuvent être définis au sein d'un groupe Gk si les résultats de l'expansion ne sont pas satisfaisants ou si le nombre de nœuds du groupe Gk devient trop important.
Il est également important de noter que l'on peut adjoindre au NVE-RD un mécanisme de dissémination de données, exploitant le procédé de génération de groupes de nœuds décrit ci-avant, afin de réduire le nombre de sauts lors de la propagation desdites données.
L'invention ne se limite pas aux modes de réalisation de dispositif d'aide à la constitution d'un environnement virtuel de réseau P2P de type Delaunay, d'équipement de communication et de procédé de constitution d'un environnement virtuel de réseau P2P de type Delaunay décrits ci-avant, seulement à titre d'exemple, mais elle englobe toutes les variantes que pourra envisager l'homme de l'art dans le cadre des revendications ci-après. Ainsi, on notera que l'invention peut également s'appliquer aux réseaux de capteurs mobiles qui s'organisent ensemble sous la forme d'un réseau de Delaunay pour partager des données qu'ils ont respectivement acquises. Ce type d'organisation est notamment décrit dans le document de Chun-Hsien Wu et al., « A Delaunay triangulation based method for wireless sensor network deployment, Computer Communications, 2007.

Claims

REVENDICATIONS
1. Procédé de constitution d'un environnement virtuel de réseau pair à pair de type Delaunay pour des usagers pairs (Um) associés à des nœuds de communication (Nm) propres à s'échanger mutuellement des messages, caractérisé en ce qu'il consiste i) à constituer des groupes de nœuds (Gk) avec des nœuds voisins (Nm) d'usagers pairs (Um) présentant un coût de maintenance (Cm), représentatif du nombre de messages à échanger avec les nœuds voisins (Nm') pour maintenir ledit réseau, supérieur ou égal à un seuil choisi (Bt), puis ii) à calculer pour chaque groupe Gk la valeur de la surface occupée par ses nœuds ainsi que les coordonnées d'un nœud virtuel (NVk) situé au centre de ladite surface, iii) à transmettre à chaque nœud d'un groupe (Gk) au moins les coordonnées du nœud virtuel (NVk) de son groupe (Gk), de sorte qu'il les communique à ses voisins qui ne font pas partie de son groupe (Gk) pour qu'ils adressent désormais audit nœud virtuel (NVk) les messages qui lui sont destinés, et iv) à dilater les coordonnées de chaque nœud (Nm) de chaque groupe (Gk) en fonction d'un facteur de dilatation propre à son groupe (Gk), de manière à réduire la densité dudit groupe (Gk) proportionnellement audit facteur de dilatation correspondant.
2. Procédé selon la revendication 1 , caractérisé en ce qu'au i) on détermine au niveau d'un nœud (Nm) d'un usager pair (Um) son coût de maintenance (Cm), puis si ledit coût de maintenance (Cm) est supérieur ou égal à un seuil choisi (Bt), on propose à ses nœuds voisins (Nm') de constituer un groupe de nœuds (Gk) et on choisit un chef de groupe, puis on détermine au niveau de chacun desdits nœuds voisins (Nm') son coût de maintenance Cm', afin de transmettre audit chef de groupe un accord de participation audit groupe (Gk) si ledit coût de maintenance Cm' est supérieur ou égal audit seuil choisi (Bt).
3. Procédé selon la revendication 2, caractérisé en ce qu'au ii) chaque chef de groupe calcule la valeur de la surface occupée par les nœuds voulant participer à un groupe (Gk) auquel il est associé, compte tenu de leurs positions respectives au sein dudit réseau, ainsi que les coordonnées du nœud virtuel (NVk) qui est situé au centre de ladite surface.
4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce qu'au iii) on transmet également à chaque nœud d'un groupe (Gk) la valeur de la surface occupée par les nœuds de son groupe (Gk), de sorte qu'il la communique à ses voisins qui ne font pas partie de son groupe (Gk).
5. Procédé selon l'une des revendications 2 à 4, caractérisé en ce que le nœud virtuel (NVk) d'un groupe (Gk) est associé au nœud constituant le chef de groupe dudit groupe (Gk), de sorte que les nœuds qui sont voisins des nœuds dudit groupe (Gk) mais qui ne font pas partie dudit groupe (Gk) lui adressent les messages qui sont destinés auxdits nœuds du groupe (Gk).
6. Dispositif (D) d'aide à la constitution d'un environnement virtuel de réseau pair à pair de type Delaunay pour des usagers pairs (Um) associés à des nœuds de communication (Nm) propres à s'échanger mutuellement des messages, caractérisé en ce qu'il est propre à travailler pour l'un desdits nœuds (Nm), choisi pour constituer un chef de groupe pour un groupe de nœuds (Gk), et comprend des moyens de traitement (MT) agencés, en cas de réception par ledit chef de groupe de messages issus de noeuds voisins (Tm) et signalant leur désir de constituer ensemble ledit groupe de nœuds (Gk) du fait qu'ils présentent chacun un coût de maintenance (Cm), représentatif du nombre de messages à échanger avec les nœuds voisins (Nm') pour maintenir ledit réseau, supérieur ou égal à un seuil choisi (Bt), i) pour calculer la valeur de la surface occupée par les nœuds dudit groupe (Gk) ainsi que les coordonnées d'un nœud virtuel (NVk) situé au centre de ladite surface, et ii) pour ordonner la transmission à chaque nœud dudit groupe (Gk) d'au moins les coordonnées du nœud virtuel (NVk) de ce groupe (Gk), de sorte qu'il les communique à ses voisins qui ne font pas partie de son groupe (Gk) pour qu'ils adressent désormais audit nœud virtuel (NVk) les messages qui lui sont destinés, et afin qu'il dilate ses coordonnées en fonction d'un facteur de dilatation propre à son groupe (Gk), de manière à réduire la densité dudit groupe (Gk) proportionnellement audit facteur de dilatation correspondant.
7. Dispositif selon la revendication 6, caractérisé en ce qu'il comprend des moyens d'analyse (MA) agencés pour déterminer au niveau de leur nœud (Nm) son coût de maintenance (Cm), puis pour comparer ce dernier à un seuil choisi (Bt), et, lorsque ledit coût de maintenance (Cm) est supérieur ou égal audit seuil choisi (Bt), pour proposer aux nœuds (Nm') qui sont voisins de son nœud (Nm) de constituer un groupe de nœuds (Gk).
8. Dispositif selon la revendication 7, caractérisé en ce que lesdits moyens d'analyse (MA) sont agencés, en cas de réception en provenance d'un nœud voisin (Nm') d'une proposition de participation à un groupe de nœuds (Gk), pour déterminer au niveau de leur nœud (Nm) son coût de maintenance (Cm), puis pour ordonner la transmission d'un accord de participation audit groupe (Gk) au chef de groupe qui est chargé de représenter ce groupe (Gk) si ledit coût de maintenance (Cm) est supérieur ou égal audit seuil choisi (Bt).
9. Dispositif selon l'une des revendications 6 à 8, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour ordonner la transmission à chaque nœud d'un groupe (Gk) de la valeur de la surface occupée par les nœuds de son groupe (Gk), de sorte qu'il la communique à ses voisins qui ne font pas partie de son groupe (Gk).
10. Dispositif selon l'une des revendications 6 à 9, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour associer ledit nœud virtuel (NVk) d'un groupe (Gk) à leur nœud qui constitue le chef de groupe dudit groupe (Gk), de sorte que les nœuds qui sont voisins des nœuds dudit groupe (Gk) mais qui ne font pas partie dudit groupe (Gk) lui adressent les messages qui sont destinés auxdits nœuds du groupe (Gk).
11. Equipement de communication (Tm), propre à constituer un nœud (Nm) d'un environnement virtuel de réseau pair à pair de type Delaunay, caractérisé en ce qu'il comprend un dispositif d'aide (D) selon l'une des revendications 6 à 10.
12. Procédé de constitution d'un environnement virtuel de réseau pair à pair pour des usagers pairs (Um) associés à des nœuds de communication (Nm) aptes à s'échanger mutuellement des messages, caractérisé en ce qu'il comprend les étapes suivantes :
• Constitution de groupes de nœuds (Gk) avec des nœuds voisins (Nm) d'usagers pairs (Um) présentant un coût de maintenance (Cm), représentatif du nombre de messages à échanger avec les nœuds voisins (Nm') pour maintenir ledit réseau, supérieur ou égal à un seuil prédéterminé (Bt) ;
• Calcul, pour chaque groupe (Gk), de la valeur de la surface occupée par ses nœuds ainsi que des coordonnées d'un nœud virtuel (NVk) situé au centre de ladite surface,
• Transmission à chaque nœud d'un groupe (Gk) d'au moins les coordonnées du nœud virtuel (NVk) de son groupe (Gk) et
• Dilatation des coordonnées de chaque nœud (Nm) de chaque groupe (Gk) en fonction d'un facteur de dilatation propre à son groupe (Gk),
13. Dispositif (D) apte à la constitution d'un environnement virtuel de réseau pair à pair pour des usagers pairs (Um) associés à des nœuds de communication (Nm) aptes à s'échanger mutuellement des messages, caractérisé en ce qu'il est apte à travailler pour l'un desdits nœuds (Nm), choisi pour constituer un chef de groupe pour un groupe de nœuds (Gk), et comprend des moyens de traitement (MT) agencés, en cas de réception par ledit chef de groupe de messages issus de nœuds voisins (Tm) et signalant leur souhait de constituer ensemble ledit groupe de nœuds (Gk) du fait qu'ils présentent chacun un coût de maintenance (Cm), représentatif du nombre de messages à échanger avec les nœuds voisins (Nm') pour maintenir ledit réseau, supérieur ou égal à un seuil prédéterminé (Bt),
• pour calculer la valeur de la surface occupée par les nœuds dudit groupe (Gk) ainsi que les coordonnées d'un nœud virtuel (NVk) situé au centre de ladite surface, et • pour ordonner la transmission à chaque nœud dudit groupe (Gk) d'au moins les coordonnées du nœud virtuel (NVk) de ce groupe (Gk), chaque nœud dudit groupe (Gk) dilatant ses coordonnées en fonction d'un facteur de dilatation propre à son groupe (Gk).
PCT/FR2008/051517 2007-08-24 2008-08-21 Procede de constitution d'un environnement virtuel de reseau p2p de type delaunay, par groupage dynamique de noeuds, et dispositif d'aide et equipement associe WO2009027612A2 (fr)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP07301322 2007-08-24
EP07301322.9 2007-08-24
FR0851271 2008-02-28
FR0851271 2008-02-28

Publications (2)

Publication Number Publication Date
WO2009027612A2 true WO2009027612A2 (fr) 2009-03-05
WO2009027612A3 WO2009027612A3 (fr) 2009-04-16

Family

ID=40220266

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2008/051517 WO2009027612A2 (fr) 2007-08-24 2008-08-21 Procede de constitution d'un environnement virtuel de reseau p2p de type delaunay, par groupage dynamique de noeuds, et dispositif d'aide et equipement associe

Country Status (1)

Country Link
WO (1) WO2009027612A2 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103064066A (zh) * 2012-12-27 2013-04-24 东南大学 一种双基站雷达网络中发射雷达与接收雷达的部署方法
WO2013106993A1 (fr) * 2012-01-17 2013-07-25 华为技术有限公司 Procédé et dispositif d'extension de capacité et procédé et dispositif d'accès aux données
CN103825815A (zh) * 2012-11-16 2014-05-28 中兴通讯股份有限公司 网络虚拟边界设备间进行冗余备份的方法、设备及系统
CN106371083A (zh) * 2016-08-30 2017-02-01 湖南镭氪信息科技有限公司 雷达监测点选取方法及装置以及回波信号处理方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
M. VARVELLO ET AL.: "Dynamic clustering in delaunay-based P2P networked virtual environments" PROCEEDINGS OF THE 6TH ACM SIGCOMM WORKSHOP ON NETWORK AND SYSTEM SUPPORT FOR GAMES, MELBOURNE, AUSTRALIA, [Online] septembre 2007 (2007-09), pages 105-110, XP007906030 Internet ISBN: 978-0-9804460-0-5 Extrait de l'Internet: URL:http://portal.acm.org/ft_gateway.cfm?id=1326276&type=pdf&coll=GUIDE&dl=GUIDE&CFID=7536180&CFTOKEN=78736329> [extrait le 2008-10-22] *
MORITZ STEINER ET AL: "DDC: A Dynamic and Distributed Clustering Algorithm for Networked Virtual Environments Based on P2P networks" INFOCOM 2006. 25TH IEEE INTERNATIONAL CONFERENCE ON COMPUTER COMMUNICA TIONS. PROCEEDINGS, IEEE, PI, 1 avril 2006 (2006-04-01), pages 1-6, XP031072087 ISBN: 978-1-4244-0221-2 cité dans la demande *
OHNISHI M ET AL: "Incremental Construction of Delaunay Overlaid Network for Virtual Collaborative Space" CREATING, CONNECTING AND COLLABORATING THROUGH COMPUTING, 2005. C5 200 5. THIRD INTERNATIONAL CONFERENCE ON KYOTO, JAPAN 28-29 JAN. 2005, PISCATAWAY, NJ, USA,IEEE, 28 janvier 2005 (2005-01-28), pages 75-82, XP010789029 ISBN: 978-0-7695-2325-5 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013106993A1 (fr) * 2012-01-17 2013-07-25 华为技术有限公司 Procédé et dispositif d'extension de capacité et procédé et dispositif d'accès aux données
CN103348653A (zh) * 2012-01-17 2013-10-09 华为技术有限公司 扩容的方法和设备、以及访问数据的方法和设备
CN103348653B (zh) * 2012-01-17 2016-01-20 华为技术有限公司 扩容的方法和设备、以及访问数据的方法和设备
CN103825815A (zh) * 2012-11-16 2014-05-28 中兴通讯股份有限公司 网络虚拟边界设备间进行冗余备份的方法、设备及系统
CN103825815B (zh) * 2012-11-16 2018-07-27 中兴通讯股份有限公司 网络虚拟边界设备间进行冗余备份的方法、设备及系统
CN103064066A (zh) * 2012-12-27 2013-04-24 东南大学 一种双基站雷达网络中发射雷达与接收雷达的部署方法
CN106371083A (zh) * 2016-08-30 2017-02-01 湖南镭氪信息科技有限公司 雷达监测点选取方法及装置以及回波信号处理方法及装置

Also Published As

Publication number Publication date
WO2009027612A3 (fr) 2009-04-16

Similar Documents

Publication Publication Date Title
Hu et al. Flod: A framework for peer-to-peer 3d streaming
CN111372100B (zh) 一种基于分布式选举的端到端内容分发网络系统和分发方法
EP1457023B1 (fr) Procede de transmission d'objets entre un serveur et un terminal client mettant en oeuvre une gestion de cache
EP1388058A1 (fr) Procede de communication et/ou de partage de ressources machines, entre une pluralite de membres d'une communaute, au sein d'un reseau de communication
WO2014094937A1 (fr) Procede de fusion de deux sous-reseaux en un unique reseau ad hoc implementant le protocole d2hcp
FR2855691A1 (fr) Securisation de la distribution de documents numeriques dans un reseau pair a pair
FR2833101A1 (fr) Procede de creation et de gestion d'univers virtuel
WO2009027612A2 (fr) Procede de constitution d'un environnement virtuel de reseau p2p de type delaunay, par groupage dynamique de noeuds, et dispositif d'aide et equipement associe
Hammami et al. Hybrid live P2P streaming protocol
EP2229628A2 (fr) Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant
JP2014503917A (ja) 改善されたピアノード選択のためのピアノードおよび方法
EP3732565B1 (fr) Reseau informatique d'infrastructures de ressources de calcul et procede d'affectation de ces ressources a des applications client
WO2019110594A1 (fr) Procédé et ensemble permettant à des terminaux utilisateurs finaux d'échanger par l'intermédiaire d'un réseau multi-sauts sans fil de proximité de communication à architecture dynamique
Kulkarni et al. Badumna: A decentralised network engine for virtual environments
EP2039126A1 (fr) Procede pour lutter contre la diffusion illicite d'oeuvres protegees et systeme informatique pour la mise en oeuvre d'un tel procede
EP2656589A1 (fr) Procede et dispositif de communication de donnees numeriques
EP3563233B1 (fr) Réseau informatique d'infrastructures de ressources de calcul et procédé d'affectation de ces ressources a des applications client
Rocha et al. On client interactive behaviour to design peer selection policies for BitTorrent-like protocols
EP3243315A1 (fr) Procede de gestion et de fonctionnement protocolaire d'un reseau de distribution de contenu
FR2962620A1 (fr) Acces a un reseau de noeuds repartis sur une architecture de communication a l'aide d'un serveur de topologie avec selection multicriteres
WO2006051232A1 (fr) Service de messagerie dans un reseau de telecommunications de type 'pair a pair'
FR3061391A1 (fr) Reseau informatique de noeuds communiquant entre eux par messages en pair a pair et procede d'interconnexion entre noeuds associe
Alja'afreh An efficient hybrid objects selection protocol for 3d streaming over mobile devices
Ho et al. Resource allocation algorithm based on social relation for video streaming services over p2p network
Kobusińska et al. Distributed content dissemination with a rank function

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08828683

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08828683

Country of ref document: EP

Kind code of ref document: A2