EP2002613B1 - Procédé pour organiser un réseau d'objets communicants, et objet communicant pour la mise en oeuvre du procédé - Google Patents
Procédé pour organiser un réseau d'objets communicants, et objet communicant pour la mise en oeuvre du procédé Download PDFInfo
- Publication number
- EP2002613B1 EP2002613B1 EP07731846A EP07731846A EP2002613B1 EP 2002613 B1 EP2002613 B1 EP 2002613B1 EP 07731846 A EP07731846 A EP 07731846A EP 07731846 A EP07731846 A EP 07731846A EP 2002613 B1 EP2002613 B1 EP 2002613B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- node
- leader
- partition
- nodes
- addresses
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000005192 partition Methods 0.000 claims abstract description 152
- 238000004891 communication Methods 0.000 claims abstract description 25
- 238000001514 detection method Methods 0.000 claims description 27
- 230000004913 activation Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 7
- OWZPCEFYPSAJFR-UHFFFAOYSA-N 2-(butan-2-yl)-4,6-dinitrophenol Chemical compound CCC(C)C1=CC([N+]([O-])=O)=CC([N+]([O-])=O)=C1O OWZPCEFYPSAJFR-UHFFFAOYSA-N 0.000 claims 1
- 101100442482 Drosophila melanogaster ldbr gene Proteins 0.000 description 15
- CIWBSHSKHKDKBQ-JLAZNSOCSA-N Ascorbic acid Chemical compound OC[C@H](O)[C@H]1OC(=O)C(O)=C1O CIWBSHSKHKDKBQ-JLAZNSOCSA-N 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 9
- 230000008520 organization Effects 0.000 description 9
- 230000010354 integration Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 241001080024 Telles Species 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
- H04W84/20—Master-slave selection or change arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5061—Pools of addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/26—Network addressing or numbering for mobility support
Definitions
- the invention relates to a method for organizing a network of communicating objects.
- a network of communicating objects is formed by a plurality of communicating entities capable of communicating with each other directly in an ad hoc manner, without passing through a base station or a centralized server, generally by means of low cost wireless communication technologies.
- These can be static communicating objects (desktop computer) or mobile objects (laptop, PDA, sensor, mobile phone, etc.).
- Such a network can be created spontaneously and does not have a defined topology.
- address servers nor routers are preconfigured for address allocation and message routing.
- the object network is self-configuring and self-organizing dynamically, during a phase of setting up communications.
- sensor networks or home networks there may be mentioned sensor networks or home networks.
- the self-configuration of the network aims in particular to allocate addresses to the nodes of the network, whereas the self-organization aims to organize the infrastructure of the network, to structure it, by defining the respective roles of the different nodes of the network, in the goal of improving the efficiency of communications and facilitating the implementation of services.
- the prefix "auto” refers to a process executed by the network nodes themselves, without the intervention of a source outside the network.
- Self-configuration and self-organization are two distinct mechanisms. Ordinarily, self-configuration precedes self-organization: when a network is formed, nodes first implement a dynamic allocation algorithm to configure their network interfaces and then, in a second time, they participate in a general organization of the network, most often based on previously configured addresses.
- the address allocation mechanism must first and foremost guarantee the uniqueness of each of the node addresses throughout the network.
- the self-organization protocol In an ad-hoc network of communicating objects, the self-organization protocol must be implemented in a distributed manner on the nodes. Each node makes a local decision after collecting local information. These local decisions lead to a global organization with the desired properties.
- self-organization protocols based on the constitution of "clusters", in other words communication groups.
- a group leader In each group, a group leader is responsible for specific features for all communicating objects in the group.
- the elected group leader corresponds to the one with the lowest identifier, as described in the document A. Ephremides, J. Wieselthier and D. Baker. Concept design for reliable mobile radio networks with frequency signaling. Proc of the IEEE, 75 (1): 56-73, 1987 .
- This type of self-organizing protocol therefore requires that self-configuration has been performed before all nodes initiate the election of group leaders in the network.
- Systems are also known in which the self-configuration is hierarchical, such as that described in the document US 2005/0045423 .
- the implementation of the initial phase of self-configuration and self-organization of a network of communicating objects requires the emission and reception by these, most often by air, of a significant amount of data. This is accompanied by a big energy expenditure. As an illustrative example, some sensors consume up to half of their battery during this initial phase.
- the critical point in the development of networks of communicating objects lies essentially in the energy longevity of communicating objects.
- One of the ways of development of networks of communicating objects is therefore the development and use of self-configuring and self-organizing mechanisms that consume less electricity, with the aim of increasing energy autonomy of communicating objects. This is what the present invention proposes.
- the method of the invention makes it possible to set up a virtual structure of a network of communicating objects based on leading nodes, disposing and managing each at least one address pool, and on member nodes attached to these leader nodes.
- Each new node arriving in the network discovers its neighborhood and, depending on its neighborhood, locally determines its role and obtains an address.
- the energy consumption of a node is thus greatly reduced during the self-configuration and self-organization phase: it is sufficient for the node to detect whether a leader node is present in its vicinity, for example by observing the receiving a leader message broadcast regularly by the latter, and, in the case where the new node is not in the coverage area of a leader node, detecting whether a member node is present in the vicinity of the new node, to deduce both its address and its role (leader or member).
- self-configuration and self-organization are no longer two separate mechanisms, executed successively, but are merged into a single mechanism: as soon as a new node arrives in the network, it obtains at the an address and a role (leader or member), ie it self-configures and self-organizes by executing a single mechanism.
- the self-configuration and self-organization operations are carried out jointly, that is, they are merged into one mechanism.
- the new node arrives in the network, it takes advantage of the knowledge of its neighborhood to decide locally its role (leader or member) in the structure and obtain its address according to its role and its location.
- the member node detected by the new node in its vicinity during phase b) becomes a gateway node between the two leading nodes of the first and second neighboring cells, said leader nodes being intended to communicate with each other via the gateway node.
- a member node belonging to a first cell covered by a leader detects the arrival of a new leader node covering a second neighbor cell, it also takes the role of bridge between the two leading nodes to ensure communication between these two leading nodes through it.
- phase b) is followed by a phase c) during which the new node assigns itself a address pool to manage, takes the role of first leading node of a new network partition and assigns an identifier to said partition.
- said first leader node determines the identifier of the new partition.
- said first leader node generates a number randomly. If the identifier of a partition is encoded on a sufficiently large number x, the risk of conflict between two respective identifiers of two separate partitions is negligible.
- the random generation of numbers makes it possible very easily to generate distinct identifiers for the different partitions that are created, without it being necessary for a new partition to know the identifiers of the existing partitions.
- the new node observes the reception of a message regularly broadcast by the leader nodes in order to detect the presence of a leader node in its vicinity, and during phase b) the new node broadcasts to its neighborhood a solicitation message from a member node and observes the receipt of a member node announcement message.
- a new object arriving in the network listens if it receives a message broadcast regularly by the leading nodes and, in a second step, if it does not receive such a leader message, it solicits a node member. Thanks to this, the energy costs of the existing nodes of the network as well as those of the nodes arriving in the network are strongly reduced.
- the invention finally relates to a network of communicating objects comprising a plurality of objects as defined above, forming at least one partition.
- FIG. 1 there is shown a network 1 of communicating objects whose organization results from the implementation of the method of the invention. From the outset, it will be noted that one will call indifferently thereafter "object” or “node” the communicating objects of the network. In the particular example described, these communicating objects use radio communication means.
- the network resulting from the implementation of the method of the invention may comprise several "partitions" respectively corresponding to independent sub-networks, that is to say not interconnected between them. Partitions are likely to merge due to a change in the network, such as moving one or more nodes or the arrival of new nodes. A partition can also be split into several partitions because of changes in the partition such as the departure of one or more naeud (s) or the displacement of a node or group of nodes. The operations of merging several partitions and splitting a partition will be explained later.
- network 1 has a set of network addresses P.
- this set P comprises a range of successive addresses, which is divided into a plurality of successive sub-ranges disjoined. Subsequently, these sub-ranges will be called “address pools” and will be noted p n (with 1 ⁇ n ⁇ 8 in the particular example of the figure 3 ).
- the address pools are all of the same length, denoted AL, ie they all contain the same AL number of addresses.
- the pool numbered n, p n contains the following successive addresses: (n-1) .AL + 1, (n-1) .AL + 2, ..., (n-1) .AL + x , ..., n.AL.
- the organization set up in the network 1 represented on the figure 1 is based on "leader" nodes L i , which cover respective cells of communication, noted C i (with 1 ⁇ i ⁇ 5 in the particular example of the figure 3 ), and on "member" nodes M i, j belonging to the cells C i .
- a cell C i associated with a leader node L i corresponds to the coverage area, or communication area, of this leader node L i .
- leader There are three possible roles for nodes, or communicating objects, in this organization: leader, member, and gateway.
- a cell C i comprises a single leader node, denoted L i , able to receive in its cell C i one or more neighboring nodes, member (s) or gateway (s).
- L i a leader node
- a node is neighbor to another node, if the two nodes are separated by a single hop, ie if the two nodes can communicate directly with each other.
- One alternative could be to consider that two nodes are neighbors when they are separated by a maximum of two or more than two jumps.
- the role of the leader node L i is to take the lead in address allocation and communications routing operations for the nodes belonging to its cell C i , as will be explained below.
- a leader node L i has several active roles in the organization.
- a first role of the leader node L i is to allocate itself or to obtain one or more pool (s) of addresses p n to manage and manage this pool (s) by allocating the addresses contained therein to himself and to the nodes integrating his cell C i .
- Lead nodes act as DHCP servers to new nodes arriving in the network.
- the different leading nodes of the network share the p n address pools, an address pool that can be allocated to only one leader node in a given partition. Thanks to this, the uniqueness of each allocated address is guaranteed within the same partition.
- leader node L i when a new leader node is assigned an address pool to manage, it sends to all the leading nodes of its partition a message to inform them of the use of this new address pool. This message is delivered only to the leader nodes, which avoids a wide dissemination of information across all nodes of the network.
- a second role of the leader node L i is to route the incoming and outgoing communications of other nodes of its cell C i .
- a third role of the leader node L i is to regularly broadcast a broadcast message LDBR ( Leader Broadcast.) Presence notification containing the address of the leader node L i , a partition identifier, as well as the number of leaders and the number of address pools already granted in the partition.
- LDBR Leader Broadcast.
- broadcast message it is meant to designate a message sent to all the nodes in the vicinity of the sending node, the broadcast message being processed by any node receiving it, as opposed to "unicast” message which designates a message sent to a single node , whose address is indicated in the header of the message as the destination address, the unicast message being processed by this single node.
- a fourth role of the leader node is to broadcast to all the leaders of his partition any update information, if he has local knowledge of a change in the network.
- the update information may concern in particular the number of leaders of the partition and the number of the pool of addresses already granted in the partition or the identifier.
- a member node is a neighbor node of a single leader node in the communication structure and whose incoming and outgoing communications are routed through this leader node.
- a member node has a passive role in the organization. It will be noted that a member node may be transformed into a gateway node so as to connect a new leader node to a leader node already existing in the network.
- the leader nodes are not connected directly to each other, but via the gateway nodes.
- a gateway node is therefore a neighbor node of at least two leading nodes and whose role is to ensure communication between these two leading nodes. As such, the gateway nodes have an active role in the organization. It will be noted that a gateway node between two leading nodes of the same partition is attached to only one of the two leader nodes that it connects, in other words belongs to the cell of one of the two leading nodes.
- a gateway node is therefore also a member node having an additional functionality of interconnecting two leaders, with respect to the ordinary member nodes.
- the set of leader nodes able to communicate with each other via gateway nodes, and member nodes (including gateways) belonging to the cells of these leader nodes form what is called a partition.
- An address allocation function f ( n ) in a cell is implemented in all nodes of the network, regardless of their role.
- the function f ( n ) is enabled only on the leader nodes.
- the use of this function f ( n ) allows a leader node L i to generate an available address in its cell, without address conflict with another address already allocated to a node of the cell C i , from an entry corresponding to the last address allocation made by this leader node L i .
- the function f ( n ) starts by allocating the first address of a pool p i to the first node arrived in the cell C i and ends when all the addresses of the pool p i are used. If, after exhausting all the addresses of the pool p i , a new node arrives in the cell C i . that is, under the coverage of the leader node L i, a new address pool p i ., available the partition to which the node L i belongs is granted to the leader node L i . Update information about the address pools used, indicating that the total number of pools now used in the partition, is then broadcast to all the leading nodes of the partition. The range of addresses P is thus managed in a manner distributed by the only leading nodes. When a new address pool is used by a leader node, it is sufficient to update the information on the total number of address pools used with the only leading nodes to avoid address conflicts in the partition.
- a pool In the case where a pool ceases to be used by a leader node, it sends a message to all the leading nodes of its partition to inform them that the pool is available again.
- service area is meant to designate a predefined area in which users want the network of communicating objects to render a given service.
- a new node When a new node arrives in the network 1, the operations of allocation of an address and integration in the structure of the network 1 take place in a maximum of three phases.
- a) of detection of the leading node the a new node observes, ie waits, the reception of an LDBR message (Leader Broadcast) of notification of presence of a leader node. If it receives it, it initiates an address allocation procedure by communicating unicast directly with the neighboring leader node and takes the role of member node.
- LDBR message Leader Broadcast
- a second member-node detection phase b if no leader node is detected, the new node makes a discovery of its neighborhood by broadcasting a member node solicitation member node request message (MBNS) to search for a node member (including footbridge) in his neighborhood. If it receives a Member Neighbor Advertisement (MBNA) message from a neighboring member node, it initiates a procedure for allocating an address pool by communicating with a leading node through the node. neighbor member, and takes the role of new leader node.
- MBNS member node solicitation member node request message
- MBNA Member Neighbor Advertisement
- a third phase c) of establishing a new partition if no neighboring node (leader, member or gateway) is detected, the new node allocates an address using the function f ( n ) and takes the role of "first" leader node of a new partition. It also generates, randomly, a number constituting a partition identifier to be inserted in the LDBR (Leader Broadcast) messages that will be broadcast regularly by him and all future future nodes of this new partition. Thus a new partition appears in the service area.
- LDBR Local Broadcast
- a leader node detection phase a when a first communicating object N arrives in the network (step 1), during a leader node detection phase a), it observes, in other words waits, the reception of an LDBR message broadcast by a leader node, at most until the expiration of a predefined LDBR_TIMEOUT delay (step 2). Since there is no leader node in the vicinity of the first object N, no LDBR message is received. Phase a) is then followed by a member node detection phase b).
- phase b) the object N broadcasts a node soliciting message MBNS member in the zone covering its vicinity by one hop (step 3b) and observes receipt of a member node announcement MBNA message, at most until the expiration of the predefined MBNA_TIMEOUT delay (see step 4). Since object N is alone in its coverage area, no MBNA message is received.
- Phase b) is then followed by a phase c) of establishing a new partition.
- the object N takes the role of first node of a new partition.
- a step 4b it assigns an identifier to its partition by generating a random number, determines an address pool, allocates the first address of this pool and triggers the regular broadcast of an LDBR message .
- the address pool determined by the first leader of the partition is the first pool p 1 of the set of pools P.
- a new communicating object N arrives in the network (step 1), during a leader detection phase a), it observes the reception of an LDBR message broadcast by a leader node for a duration that can not exceed the delay LDBR_TIMEOUT predefined (step 2). If there is a leader node L in the vicinity of a jump of the new object N, it receives the LDBR message broadcast regularly by this leader node L.
- the new object N receives several LBDR messages from several nodes leaders respectively belonging to several partitions, it selects the leading node of the partition having the largest number of leading nodes, being reminded that the number of leaders of a partition is inserted in the LDBR message broadcast by each of the leading nodes of this partition .
- Favoring the integration of a new object in the larger partition rather than in the smaller partition is of interest because there is thus a higher probability for this new object to preserve its address after fusion, as will be apparent. further from the description of a merger.
- the new object N receives several LBDR messages from several leading nodes of the same partition, it selects here randomly one of the leading nodes.
- the new node N then starts with the selected leader node L the execution of a direct jump address allocation procedure (step 3b), during which the two nodes L and N, neighbors of a jump, communicate directly with each other.
- the new node N sends an unicast message MBAR (Member Address Request) address request to the selected leader node L.
- MBAR Member Address Request
- the leader node L Upon receipt of the message MBAR, the leader node L allocates an address to the new node N, using the function f (n), and sends him a unicast address allocation address (LDAA) message by a leader.
- LDAA unicast address allocation address
- the new object N Upon receipt of the allocated address, the new object N takes the role of member node M, associated with the leader node L, and configures its network interfaces by building a route to its leader node L so that all outgoing messages from the member node M passes through the leader node L.
- the member node M sends an MBAA (Member Address Acknowledgment) message acknowledging a member address to its leader node L.
- MBAA Member Address Acknowledgment
- a new object N does not detect a leader node LDBR message, it considers that it is not covered by the cell of a leader node.
- Phase a) is then followed by a phase b) of detection of a neighboring member node.
- the new node makes the discovery of its neighborhood. For this purpose, it broadcasts a member node solicitation message MBNS in the vicinity of its one-hop neighborhood (see step E3a), in broadcast mode, and then observes the reception of a member node announcement MBNA message (step E4).
- a member node receiving a request sends an MBNA message to notify its presence.
- the new object randomly selects a member node that responded to the MBNS solicitation by sending an MBNA presence message. .
- the new object then initiates with the selected member node M the execution of a two-hop address allocation procedure, sending to the member node M a member address request unicast message MBAR (Member Address Request).
- MBAR Member Address Request
- the member node M requests its leader node L to allocate a new address pool, extracted from the network address range. This new address pool is sent by the leader node L to the new object N, in a message LDAA (Leader Address Allocation), via the member node M.
- LDAA Leader Address Allocation
- the new object N then takes the role of leader L ', allocates the first address of the received pool and sends to the leader node L an MBAA message (Member Address Acknowledgment) acknowledgment of a member address via the member node M.
- the intermediate member node M Upon receipt of this MBAA message, the intermediate member node M takes the gateway role G between the two leading nodes L and L '.
- Each of the leader nodes L (L ') adds in a clean Leader-Gateway matching table a new Leader-Gateway GL' (GL) pair.
- the leader node L After allocating a new address pool to the leader node L ', the leader node L sends to all the leader nodes, via the gateways, of the partition a message to update at the level of all the leaders a piece of information. on the use of address pools in the partition.
- this information relating to the use of the pools contains the number of pools already allocated (or used) in the partition.
- the leader node L instead of sending to all the leaders the number of address pools already allocated in the partition, the leader node L sends to all the partition's leading nodes the last address in the address pool that has been allocated to the leader node L '.
- the associated leader node detects the absence of the member node that has left the network and stores the address allocated to this member node for reuse.
- the leading nodes L and L 'previously connected to this gateway node G ask their member nodes M, M 'to enter active LDBR message detection mode.
- the member nodes M, M 'which receive the two LDBR messages respectively broadcast by the two leaders L and L' are candidates for the role of new gateway.
- One of these candidates is selected to act as a new bridge between the L and L leaders.
- the selection criterion may for example be the candidate node located in the cell with the least number of node members.
- a leader node L leaves the network without warning, after a certain number of periods of a predefined duration without receiving an LDBR message , the M member nodes previously associated with this leader node L trigger a reconfiguration operation by abandoning their addresses and by reiterating the steps of the figure 2 until you get a new address and take a role of a member or a leader.
- the address pool allocated to the leader node L then becomes available for a new allocation.
- a gateway node that has detected the absence of the leader L informs all the leading nodes of the partition that the pool has become available again.
- each of the two partitions B and B' assimilates this split to a start of a group of nodes and acts if necessary for the maintenance of a virtual structure of communication.
- the leading nodes in partition A retain their leading role in their new partition B or B '.
- the member nodes take no initiative as long as they remain under the cover of their leader node, that is to say in the cell of it.
- a member node if a member node loses the location with its leader node, it triggers the operations of allocation of a new address and integration in a new partition B or B ', comprising a phase a) of detection of a neighboring neighbor node followed, if necessary, a phase b) neighborhood discovery itself followed, if necessary, a phase c) establishment of a new partition, as previously described. If a link between a leader-gateway pair is broken, the leaders previously connected to each other by through this gateway perform the same actions as those described above, executed in case of departure from the gateway node.
- the dynamicity of a group of nodes (due to mobility, energy management mechanisms, etc.) forming a partition and the expansion of a partition are the two main reasons leading to the merger of two partitions.
- This merger is triggered by the prior detection, by at least one node, of two different partitions in its vicinity, these partitions being identified by their respective identifiers.
- the identifier of a partition determined by the very first leader node of this partition, is a number, coded on x bits, generated randomly.
- the detection of two partitions likely to merge is here carried out by a new node N arriving in the network, during the phase a) of detection of node (s) leader (s) (steps E2 and E3b) with reference to the figure 2 ). Because it is performed by a new arriving object, the detection of the two partitions does not require the permanent maintenance in active mode of the radio transmitters / receivers of all the nodes of the network, which would represent a big energy expenditure for the network. Thanks to the invention, the detection of two partitions is energy efficient.
- the incoming new node N thus detects two leading nodes L1 and L2 respectively belonging to the large partition and the small partition, by receiving two LBDR messages containing two different identifiers ID1 and ID2.
- the new N node chooses the big partition to proceed with the procedure of address allocation at a jump with the leader node L1 detected in this big partition then becomes a member node attached to this leader node L1.
- the new node N takes the role of real pass between the two partitions.
- the leader node L1 of the large partition retrieves the number of address pools already allocated in the small partition via the new incoming object N. It then calculates the total number of address pools that will be needed after the merge and sends the address update Leader Address Update (LDAU) message to the other leading nodes in the large partition to update the information on the number of address pools used and the number of address pools used. leaders in the partition resulting from the merge.
- LDAU Address Update
- the leader node L2 sends a Merge Notification MGNT (Merge Notification) message that is broadcast to all the leading nodes of the small partition.
- This merge notification contains here the number of address pools used in the large partition. It is recalled here that, in a partition, the successive address pools are allocated one after the other, here in increasing order from the first pool p 1 of the address range P, to the new leading nodes arriving. in the partition as well as to the leader nodes that need a new address pool after exhausting their previous address pool. Therefore, upon receiving an MGNT merge notification, the leading nodes of the small partition change address pools by shifting pools one step equal to the total number of pools used in the large partition, so to use pools not used by the big partition.
- MGNT Merge Notification
- the leader having in the small partition the pool numbered n, p n uses in the partition resulting from the merge the pool numbered N + n and itself allocates the first address of this pool.
- the address pools managed by the leading nodes of the small partition are those that follow the address pools managed by the leading nodes of the large partition.
- the address pools allocated to the leaders of the small partition are the following pools numbered N + 1, N + 2, etc.
- each member node (including the gateway nodes) of the small partition On receipt of the new partition identifier contained in the LBDR messages broadcast by the leader nodes, each member node (including the gateway nodes) of the small partition triggers the execution of a translation procedure of its address, similar to that performed by the leader node, of determining the address corresponding to its initial address in an address pool shifted by the number N of additional pools provided by the large partition.
- corresponding address we mean the new address having the same position in the new pool as that of the previous address in the old pool.
- Member nodes determine their new address from their address before the merge, information about the total number of pools used before the merge, and information received in new LDBR messages about the total number of pools used after merge .
- each member node derives the number of pools used by the large partition. For the sake of clarity, let's take the example of a leader node L i of the small partition to which is allocated the address pool numbered n, noted p n . After merging, this same leader node L i is in charge of the address pool numbered N + n, where N is the number of pools used in the large partition just before the merge.
- a member node M i, j of the small partition located in the cell of the leader node L i , and having in the pool p n the address having the position j, namely (n-1) .AL + j, translated this address in an offset address after merge [(n-1) + N] .AL + j.
- This translation procedure guarantees the uniqueness of the addresses after the merge.
- a node can decide at any time to change its role, in particular to reduce its energy consumption.
- a leader node or gateway can let a member node take its role.
- the energy expenditure of the nodes can be distributed more equitably over the different nodes of the network over time.
- leader leader
- member gateway
- the second configuration module is intended to be activated after the first configuration module, in the case where the object has not detected a leader node in its vicinity.
- the object further comprises a third configuration module, for implementing the c) phase of establishment of a previously described partition, arranged for, if the object detects neither leader node nor member node in its vicinity, assign itself an address pool to manage, assume the role of first leading node of a new network partition and assign an identifier to said partition.
- This third configuration module is intended to be activated after the first and second configuration modules, in the case where the object has detected neither leader node nor member node in its vicinity.
- control module arranged to control the activation and operation of the functional modules and configuration modules.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Devices For Executing Special Programs (AREA)
Description
- L'invention concerne un procédé pour organiser un réseau d'objets communicants.
- Un réseau d'objets communicants est formé par une pluralité d'entités communicantes aptes à communiquer entre elles directement d'une manière ad hoc, sans passer par l'intermédiaire d'une station de base ou d'un serveur centralisé, généralement par des technologies de communication sans fil à bas coût. Il peut s'agir d'objets communicants statiques (ordinateur de bureau) ou bien mobiles (ordinateur portable, PDA, capteur, téléphone mobile, etc.). Un tel réseau peut se créer de manière spontanée et ne possède pas de topologie définie au préalable. Ni serveurs d'adresses, ni routeurs ne sont préconfigurés pour l'allocation d'adresses et le routage des messages. Après son déploiement, le réseau d'objets s'auto-configure et s'auto-organise de manière dynamique, lors d'une phase de mise en place des communications. A titre d'exemples non limitatifs de tels réseaux, on peut citer des réseaux de capteurs ou encore les réseaux domestiques.
- L'auto-configuration du réseau vise notamment à allouer des adresses aux noeuds du réseau, alors que l'auto-organisation vise à organiser l'infrastructure du réseau, à le structurer, en définissant les rôles respectifs des différents noeuds du réseau, dans le but d'améliorer l'efficacité des communications et de faciliter la mise en oeuvre des services. Le préfixe "auto" fait référence à un processus exécuté par les noeuds du réseau eux-mêmes, sans intervention d'une source extérieur au réseau. L'auto-configuration et l'auto-organisation sont deux mécanismes distincts. Ordinairement, l'auto-configuration précède l'auto-organisation : lorsqu'un réseau se forme, dans un premier temps, les noeuds mettent en oeuvre un algorithme d'allocation dynamique d'adresses pour configurer leurs interfaces réseau puis, dans un second temps, ils participent à une organisation générale du réseau, le plus souvent basée sur les adresses préalablement configurées.
- Le mécanisme d'allocation d'adresses doit avant tout garantir l'unicité de chacune des adresses de noeud dans tout le réseau. Il existe différents approches pour l'allocation d'adresses dans un réseau d'objets communicants. L'une des ces approches, décrite dans les documents P. Patchipulusu. Dynamic address allocation protocoles for mobile ad hoc networks. Master's thesis, Texas A&M University, 2001 , et Y. Sun and E. Belding-Royer. Dynamic address configuration, in mobile ad hoc- networks. Technical Report, University of California, June 2003 , est basée sur des noeuds leaders : un ou plusieurs noeuds leaders du réseau sont en charge de l'allocation ou de l'enregistrement des adresses et assurent l'unicité des adresses dans tout le réseau. En cas de pluralité de noeuds leaders, ces derniers synchronisent d'une manière distribuée l'information sur les adresses allouées et/ou sur celles disponibles.
- Dans un réseau ad-hoc d'objets communicants, le protocole d'auto-organisation doit être implémenté d'une manière distribuée sur les noeuds. Chaque noeud prend une décision locale après avoir collecté des informations locales. Ces décisions locales débouchent sur une organisation globale ayant les propriétés souhaitées. Il existe en particulier des protocoles d'auto-organisation basés sur la constitution de "clusters", autrement dit de groupes de communication. Dans chaque groupe, un chef de groupe a la charge de fonctionnalités spécifiques pour tous les objets communicants du groupe. Généralement, le chef de groupe élu correspond à celui ayant l'identifiant le plus bas, comme cela est décrit dans le document A. Ephremides, J. Wieselthier and D. Baker. A design concept for reliable mobile radio networks with frequency hopping signalling. Proc of the IEEE, 75(1):56-73, 1987 . Ce type de protocole d'auto-organisation nécessite donc que l'auto-configuration ait été effectuée avant que tous les noeuds lancent l'élection des chefs de groupe dans le réseau. On connait également des systèmes dans lesquels l'auto-configuration est hiérachique, tel celui exposé dans le document
US 2005/0045423 . - La mise oeuvre de la phase initiale d'auto-configuration et d'auto-organisation d'un réseau d'objets communicants nécessite l'émission et la réception par ces derniers, le plus souvent par la voie des airs, d'une importante quantité de données. Cela s'accompagne d'une grosse dépense énergétique. A titre d'exemple illustratif, certains capteurs consomment jusqu'à la moitié de leur batterie lors de cette phase initiale. Le point critique dans le développement des réseaux d'objets communicants réside essentiellement dans la longévité énergétique des objets communicants. L'une des voies d'essor des réseaux d'objets communicants passe par conséquent par le développement et l'utilisation de mécanismes d'auto-configuration et d'auto-organisation moins gourmands en électricité, dans le but d'accroître l'autonomie énergétique des objets communicants. C'est ce que propose la présente invention.
- A cet effet, l'invention concerne un procédé pour organiser un réseau d'objets communicants, en au moins une partition comportant une pluralité de cellules de communication respectivement couvertes par une pluralité de noeuds leaders aptes à communiquer entre eux, le réseau disposant d'un ensemble d'adresses à allouer scindé en une pluralité de pools d'adresses destinés à être gérés de façon distribuée par les noeuds leaders du réseau, procédé dans lequel, lorsqu'un nouveau noeud arrive dans le réseau, le procédé comprend une phase a) de détection de noeud leader suivie, le cas échéant, d'une phase b) de détection de noeud membre, telles que :
- durant la phase a), si le nouveau noeud détecte dans son voisinage un noeud leader, ledit noeud leader lui alloue une adresse extraite d'un pool d'adresses du'il gère et le nouveau noeud prend le rôle de noeud membre dans la cellule du noeud leader, les messages en provenance ou à destination d'un noeud membre appartenant à une cellule donnée étant destinés à transiter par l'intermédiaire du noeud leader couvrant ladite cellule;
- si le nouveau noeud ne détecte pas de noeud leader dans son voisinage, il passe à la phase b),
- durant la phase b), si le nouveau noeud détecte dans son voisinage un noeud membre appartenant à une première cellule, il prend le rôle de leader couvrant une deuxième cellule, obtient un pool disponible d'adresses à gérer et s'alloue l'une des adresses dudit pool obtenu
- Le procédé de l'invention permet de mettre en place une structure virtuelle de réseau d'objets communicants basée sur des noeuds leaders, disposant et gérant chacun au moins un pool d'adresses, et sur des noeuds membres attachés à ces noeuds leaders.
Chaque nouveau noeud arrivant dans le réseau découvre son voisinage puis, en fonction de son voisinage, détermine localement son rôle et obtient une adresse. La consommation d'énergie d'un noeud est ainsi grandement réduite lors de la phase d'auto-configuration et d'auto-organisation : il suffit au noeud de détecter si un noeud leader est présent dans son voisinage, par exemple en observant la réception d'un message de leader diffusé régulièrement par celui-ci, et, dans le cas où le nouveau noeud n'est pas dans la zone de couverture d'un noeud leader, de détecter si un noeud membre est présent dans le voisinage du nouveau noeud, pour en déduire à la fois son adresse et son rôle (leader ou membre). Grâce à l'invention, l'auto-configuration et l'auto-organisation ne sont plus deux mécanismes séparés, exécutés successivement, mais sont fusionnées en un seul mécanisme : dès qu'un nouveau noeud arrive dans le réseau, il obtient à la fois une adresse et un rôle (leader ou membre), autrement dit il s'auto-configure et s'auto-organisme en exécutant un seul mécanisme. Les opérations d'auto-configuration et d'auto-organisation sont réalisées conjointement, autrement dit sont fusionnées en un seul mécanisme. Quand le nouveau noeud arrive dans le réseau, il tire partie de la connaissance de son voisinage pour décider localement de son rôle (leader ou membre) dans la structure et obtenir son adresse suivant son rôle et sa localisation. - Avantageusement, le noeud membre détecté par le nouveau noeud dans son voisinage durant la phase b) devient un noeud passerelle entre les deux noeuds leaders des première et deuxième cellules voisines, lesdits noeuds leaders étant destinés à communiquer entre eux par l'intermédiaire du noeud passerelle.
- Ainsi, lorsqu'un noeud membre appartenant à une première cellule couverte par un leader détecte l'arrivée d'un nouveau noeud leader couvrant une deuxième cellule voisine, il prend également le rôle de passerelle entre les deux noeuds leaders afin d'assurer la communication entre ces deux noeuds leaders par son intermédiaire.
- Avantageusement encore, si ledit nouveau noeud ne détecte ni noeud leader, ni noeud membre dans son voisinage durant les phases a) et b) respectivement, la phase b) est suivie d'une phase c) durant laquelle le nouveau noeud s'attribue un pool d'adresses à gérer, prend le rôle de premier noeud leader d'une nouvelle partition de réseau et attribue un identifiant à ladite partition. De préférence, pour déterminer l'identifiant de la nouvelle partition, ledit premier noeud leader génère un nombre de façon aléatoire. Si l'identifiant d'une partition est codé sur un nombre x suffisamment grand, le risque de conflit entre deux identifiants respectifs de deux partitions distinctes est négligeable. La génération aléatoire des nombres permet ainsi de générer très facilement des identifiants distincts pour les différents partitions qui se créent, sans qu'il soit nécessaire pour une nouvelle partition de connaître les identifiants des partitions existantes.
- Dans un mode de réalisation particulier, durant la phase a), le nouveau noeud observe la réception d'un message régulièrement diffusé par les noeuds leaders afin de détecter la présence d'un noeud leader dans son voisinage, et, durant la phase b), le nouveau noeud diffuse à destination de son voisinage un message de sollicitation d'un noeud membre et observe la réception d'un message d'annonce de noeud membre. Ainsi, dans un premier temps, un nouvel objet arrivant dans le réseau écoute s'il reçoit un message diffusé régulièrement par les noeuds leaders puis, dans un second temps, s'il ne reçoit pas un tel message de leader, il sollicite un noeud membre. Grâce à cela, les dépenses énergétiques des noeuds existants du réseau ainsi que celles des noeuds arrivant dans le réseau sont fortement réduites.
- L'invention concerne également un objet communicant apte à intégrer un réseau d'objets communicants, comprenant
- ■ des premiers moyens fonctionnels aptes à assurer un rôle de leader couvrant une cellule de communication, un noeud leader étant chargé d'allouer des adresses d'un pool d'adresses aux noeuds situés dans sa cellule et de router les messages en provenance ou à destination de noeuds membres appartenant à sa cellule;
- ■ des seconds moyens fonctionnels aptes à assurer un rôle de membre dans une cellule couverte par un noeud leader,
- ■ des premier moyens de configuration, pour mettre en oeuvre une phase a) de détection de noeud leader, agencés pour
- détecter si un noeud leader est présent dans le voisinage de l'objet, et,
- en cas de détection d'un noeud leader voisin, obtenir une adresse auprès dudit noeud leader et déclencher l'activation des seconds moyens fonctionnels,
- ■ des seconds moyens de configuration, pour mettre en oeuvre une phase b) de détection de noeud membre, agencés pour
- détecter si un noeud membre est présent dans le voisinage de l'objet, et
- en cas de détection d'un noeud membre voisin, obtenir un pool d'adresses à gérer, s'allouer une adresse dudit pool et
déclencher l'activation des premiers moyens fonctionnels, les seconds moyens de configuration étant destinés à être mis en oeuvre après les premiers moyens de configuration, dans le cas où l'objet n'a pas détecté de noeud leader dans son voisinage.
- L'invention concerne enfin un réseau d'objets communicants comportant une pluralité d'objets tels que précédemment définis, formant au moins une partition.
- L'invention sera mieux comprise à l'aide de la description suivante d'un mode de réalisation particulier du procédé, du noeud et du réseau de l'invention, en référence aux dessins annexés sur lesquels :
- la
figure 1 représente un réseau d'objets communicants obtenu par le procédé de l'invention; - - la
figure 2 représente un organigramme de différentes étapes du mode de réalisation particulier décrit du procédé de l'invention; - - la
figure 3 représente la décomposition en pools de l'ensemble des adresses du réseau et l'affectation d'une partie de ces pools à différents noeuds leaders du réseau; - - les
figures 4A et 4B représentent l'arrivée d'un nouveau noeud membre dans le réseau; - - les
figures 5A et 5B représentent l'arrivée d'un nouveau noeud leader dans le réseau; - - les
figures 6A à 6D représentent les étapes de reconfiguration suivant le départ d'un noeud leader. - Sur la
figure 1 , on a représenté un réseau 1 d'objets communicants dont l'organisation résulte de la mise en oeuvre du procédé de l'invention. D'emblée, on notera que l'on appellera indifféremment par la suite "objet" ou "noeud" les objets communicants du réseau. Dans l'exemple particulier décrit, ces objets communicants utilisent des moyens de communication radio. - Le réseau résultant de la mise en oeuvre du procédé de l'invention peut comprendre plusieurs "partitions" correspondant respectivement à des sous-réseaux indépendants, c'est-à-dire non interconnectés entre eux. Les partitions sont susceptibles de fusionner du fait d'un changement dans le réseau, tels que le déplacement d'un ou de plusieurs noeuds ou l'arrivée de nouveaux noeuds. Une partition peut également être amenée à se scinder en plusieurs partitions du fait de changements dans la partition tels que le départ d'un ou de plusieurs naeud(s) ou bien le déplacement d'un noeud ou d'un groupe de noeud. Les opérations de fusion de plusieurs partitions et de scission d'une partition seront explicitées ultérieurement.
- En référence à la
figure 3 , le réseau 1 dispose d'un ensemble d'adresses réseau P. En l'espèce, cet ensemble P comprend une plage d'adresses successives, laquelle est divisée en une pluralité de sous-plages successives disjointes. Par la suite, on appellera ces sous-plages des "pools d'adresses" et on les notera pn (avec 1 ≤ n ≤ 8 dans l'exemple particulier de lafigure 3 ). Dans l'exemple particulier décrit ici, les pools d'adresses sont tous de même longueur, notée AL, autrement dit elles contiennent toutes le même nombre AL d'adresses. En outre, le pool numéroté n, pn, contient les adresses successives suivantes : (n-1).AL+1, (n-1).AL+2, ..., (n-1).AL+x, ..., n.AL. En variant, on pourrait envisager de décomposer l'ensemble d'adresses du réseau en pools de longueurs différentes. - L'organisation mise en place dans le réseau 1 représenté sur la
figure 1 est basée sur des noeuds "leaders" Li, lesquels couvrent des cellules respectives de communication, notées Ci (avec 1 ≤ i ≤ 5 dans l'exemple particulier de lafigure 3 ), et sur des noeuds "membres" Mi,j appartenant aux cellules Ci. Une cellule Ci associée à un noeud leader Li correspond à la zone de couverture, ou de communication, de ce noeud leader Li. - Il existe trois rôles possibles pour les noeuds, ou objets communicants, dans cette organisation : leader, membre et passerelle.
- Une cellule Ci comprend un seul noeud leader, noté Li, apte à recevoir dans sa cellule Ci un ou plusieurs noeuds voisins, membre(s) ou passerelle(s). Par définition, dans l'exemple particulier décrit ici, un noeud est voisin d'un autre noeud, si les deux noeuds sont séparés par un seul saut, autrement dit si les deux noeuds peuvent communiquer directement l'un avec l'autre. On pourrait envisager, dans une variante, de considérer que deux noeuds sont voisins lorsqu'ils sont séparés par un maximum de deux, voire de plus de deux, sauts. Le noeud leader Li a pour rôle de prendre la tête des opérations d'allocation d'adresses et de routage des communications pour les noeuds appartenant à sa cellule Ci, comme cela sera explicité plus loin.
- Un noeud leader Li a plusieurs rôles actifs dans l'organisation. Un premier rôle du noeud leader Li est de s'attribuer ou d'obtenir un ou plusieurs pool(s) d'adresses pn à gérer et de gérer ce(s) pool(s) en allouant les adresses qui y sont contenues à lui-même et aux noeuds intégrant sa cellule Ci. Les noeuds leaders agissent ainsi comme des serveurs DHCP vis-à-vis des nouveaux noeuds arrivant dans le réseau. Les différents noeuds leaders du réseau se partagent les pools d'adresses pn, un pool d'adresses ne pouvant être octroyé qu'à un seul noeud leader dans une partition donnée. Grâce à cela, l'unicité de chacune des adresses allouées est garantie au sein d'une même partition. Par ailleurs, lorsqu'un nouveau noeud leader se voit attribuer un pool d'adresses à gérer, il envoie à tous les noeuds leaders de sa partition un message pour les informer de l'utilisation de ce nouveau pool d'adresses. Ce message est délivré uniquement aux noeuds leaders, ce qui évite une diffusion large de l'information à travers tous les noeuds du réseau. Un second rôle du noeud leader Li est de router les communications entrantes et sortantes des autres noeuds de sa cellule Ci. Un troisième rôle du noeud leader Li est de diffuser régulièrement un message "broadcast" LDBR (Leader Broadcast.) de notification de présence contenant l'adresse du noeud leader Li, un identifiant de partition, ainsi que le nombre de leaders et le nombre de pools d'adresses déjà octroyés dans la partition. Par message "broadcast", on entend désigner un message envoyé vers tous les noeuds dans le voisinage du noeud émetteur, le message broadcast étant traité par tout noeud le recevant, par opposition à message "unicast" qui désigne un message envoyé à un seul noeud, dont l'adresse est indiquée dans l'en-tête du message en tant qu'adresse de destination, le message unicast étant traité par ce seul noeud. Un quatrième rôle du noeud leader est de diffuser à destination de tous les leaders de sa partition toute information de mise à jour, s'il a connaissance localement d'un changement dans le réseau. L'information de mise à jour peut concerner en particulier le nombre de leaders de la partition et le nombre du pool d'adresses déjà octroyés dans la partition ou encore l'identifiant.
- Un noeud membre est un noeud voisin d'un seul noeud leader dans la structure de communication et dont les communications entrantes et sortantes sont acheminées via ce noeud leader. Un noeud membre a un rôle passif dans l'organisation. On notera qu'un noeud membre peut se transformer en noeud passerelle de manière à connecter un nouveau noeud leader à un noeud leader existant déjà dans le réseau.
- Dans une partition, les noeuds leaders ne sont pas connectés directement entre eux, mais par l'intermédiaire des noeuds passerelles. Un noeud passerelle est donc un noeud voisin d'au moins deux noeuds leaders et ayant pour rôle d'assurer la communication entre ces deux noeuds leaders. A ce titre, les noeuds passerelles ont un rôle actif dans l'organisation. On notera qu'un noeud passerelle entre deux noeuds leaders d'une même partition est attaché à l'un seul des deux noeuds leaders qu'il relie, autrement dit appartient à la cellule de l'un des deux noeuds leaders. Un noeud passerelle est donc aussi un noeud membre ayant une fonctionnalité supplémentaire d'interconnexion de deux leaders, par rapport aux noeuds membres ordinaires.
- L'ensemble des noeuds leaders, aptes à communiquer entre eux par l'intermédiaire de noeuds passerelles, et des noeuds membres (y compris passerelles) appartenant aux cellules de ces noeuds leaders forment ce que l'on appelle une partition.
- Une fonction f(n) d'allocation d'adresses dans une cellule est implémentée dans tous les noeuds du réseau, quel que soit leur rôle. La fonction f(n) n'est activée que sur les noeuds leaders. L'utilisation de cette fonction f(n) permet à un noeud leader Li de générer une adresse disponible dans sa cellule, sans conflit d'adresses avec une autre adresse déjà allouée à un noeud de la cellule Ci, à partir d'une entrée correspondant à la dernière allocation d'adresse faite par ce noeud leader Li. Dans l'exemple particulier décrit, la fonction f(n) est telle que : f (n) = f (n -1) + 1. Ainsi, la fonction f(n) commence par allouer la première adresse d'un pool pi au premier noeud arrivé dans la cellule Ci et termine lorsque toutes les adresses du pool pi sont utilisées. Si, après épuisement de toutes les adresses du pool pi, un nouveau noeud arrive dans la cellule Ci. autrement dit sous la couverture du noeud leader Li, un nouveau pool d'adresses pi., disponible la partition à laquelle appartient le noeud Li est octroyé au noeud leader Li. Une information de mise à jour concernant les pools d'adresses utilisés, indiquant que le nombre total de pools désormais utilisés dans la partition, est alors diffusée à tous les noeuds leaders de la partition. La plage d'adresses P est ainsi gérée de façon distribuée par les seuls noeuds leaders. Lorsqu'un nouveau pool d'adresses est utilisé par un noeud leader, il suffit de mettre à jour l'information sur le nombre total de pools d'adresses utilisés auprès des seuls noeuds leaders pour éviter des conflits d'adresses dans la partition.
- Dans le cas où un pool cesse d'être utilisé par un noeud leader, ce dernier envoie un message à tous les noeuds leaders de sa partition pour les informer du fait que ce pool est redevenu disponible.
- On va maintenant décrire le procédé pour organiser un réseau d'objets communicants tel que le réseau 1 dans une zone de service, selon un mode de réalisation particulier de l'invention. Par "zone de service", on entend désigner une zone prédéfnie dans laquelle des utilisateurs souhaitent que le réseau d'objets communicants rende un service donné.
- Lorsqu'un nouveau noeud arrive dans le réseau 1, les opérations d'allocation d'une adresse et d'intégration dans la structure du réseau 1 se déroulent en un maximum de trois phases. Dans une première phase a) de détection de noeud leader, le nouveau noeud observe, c'est-à-dire attend, la réception d'un message LDBR (Leader Broadcast) de notification de présence d'un noeud leader. S'il le reçoit, il entame une procédure d'allocation d'adresse en communicant directement de façon unicast avec le noeud leader voisin et prend le rôle de noeud membre. Dans une deuxième phase b) de détection de noeud membre, si aucun noeud leader n'est détecté, le nouveau noeud fait une découverte de son voisinage en diffusant un message MBNS (Member Neighbor Solicitation) de sollicitation de noeud membre, pour rechercher un noeud membre (y compris passerelle) dans son voisinage. S'il reçoit en réponse un message d'annonce MBNA (Member Neighbor Advertisement) d'un noeud membre voisin, il entame une procédure d'allocation d'un pool d'adresses en communicant avec un noeud leader par l'intermédiaire du noeud membre voisin, et prend le rôle de nouveau noeud leader. Dans une troisième phase c) d'établissement d'une nouvelle partition, si aucun noeud voisin (leader, membre ou passerelle) n'est détecté, le nouveau noeud s'alloue une adresse en utilisant la fonction f(n) et prend le rôle de "premier" noeud leader d'une nouvelle partition. Il génère également, de façon aléatoire, un nombre constituant un identifiant de partition destiné à être inséré dans les messages LDBR (Leader Broadcast) qui seront diffusés régulièrement par lui et par l'ensemble des futurs noeuds leaders de cette nouvelle partition. Ainsi une nouvelle partition apparaît dans la zone de service.
- On va maintenant décrire de façon plus détaillée les protocoles mis en oeuvre dans les situations suivantes : établissement d'une partition, intégration d'un noeud membre dans une partition existante, intégration d'un noeud leader dans une partition existante, départ d'un noeud, division d'une partition et fusion de partitions.
- En référence à la
figure 2 , lorsqu'un premier objet communicant N arrive dans le réseau (étape 1), durant une phase a) de détection de noeud leader, il observe, autrement dit attend, la réception d'un message LDBR diffusé par un noeud leader, au maximum jusqu'à l'expiration d'un délai LDBR_TIMEOUT prédéfini (étape 2). Comme il n'y a aucun noeud leader dans le voisinage du premier objet N, aucun message LDBR n'est reçu. La phase a) est alors suivie d'une phase b) de détection de noeud membre. Durant cette phase b), l'objet N diffuse un message MBNS de sollicitation de noeud membre dans la zone couvrant son voisinage d'un saut (étape 3b) et observe la réception d'un message MBNA d'annonce de noeud membre, au maximum jusqu'à l'expiration du délai MBNA_TIMEOUT prédéfini (voir étape 4). Comme l'objet N est seul dans sa zone de couverture, aucun message MBNA n'est reçu. La phase b) est alors suivie d'une phase c) d'établissement d'une nouvelle partition. Durant cette phase c), l'objet N prend alors le rôle de premier noeud d'une nouvelle partition. Lors d'une étape 4b, il attribue un identifiant à sa partition par génération d'un nombre aléatoire, détermine un pool d'adresses, s'alloue la première adresse de ce pool et déclenche la diffusion régulière d'un message LDBR. Dans l'exemple particulier décrit ici, le pool d'adresses déterminé par le premier leader de la partition est le premier pool p1 de l'ensemble de pools P. - En référence aux
figures 2 ,4A et 4B , lorsqu'un nouvel objet communicant N arrive dans le réseau (étape 1), durant une phase a) de détection de leader, il observe la réception d'un message LDBR diffusé par un noeud leader pendant une durée ne pouvant excéder le délai LDBR_TIMEOUT prédéfini (étape 2). S'il y a un noeud leader L dans le voisinage d'un saut du nouvel objet N, celui-ci reçoit le message LDBR diffusé régulièrement par ce noeud leader L. Si le nouvel objet N reçoit plusieurs messages LBDR en provenance de plusieurs noeuds leaders appartenant respectivement à plusieurs partitions, il sélectionne le noeud leader de la partition ayant le plus grand nombre de noeuds leaders, étant rappelé que le nombre de leaders d'une partition est inséré dans le message LDBR diffusé par chacun des noeuds leaders de cette partition. Le fait de privilégier l'intégration d'un nouvel objet dans la plus grosse partition plutôt que dans la plus petite a pour intérêt qu'il y a ainsi une probabilité plus élevée pour ce nouvel objet de conserver son adresse après fusion, comme cela ressortira plus loin de la description d'une fusion. Si le nouvel objet N reçoit plusieurs messages LBDR en provenance de plusieurs noeuds leaders de la même partition, il sélectionne ici de façon aléatoire l'un des noeuds leaders. En variante, on pourrait envisager un critère de sélection basé sur la capacité énergétique des leaders ou sur leurs identifiants. Le nouveau noeud N entame alors avec le noeud leader sélectionné L l'exécution d'une procédure d'allocation d'adresse directe à un saut (étape 3b), durant laquelle les deux noeuds L et N, voisins d'un saut, communiquent directement l'un avec l'autre. Durant cette procédure d'allocation, le nouveau noeud N envoie un message unicast MBAR (Member Address Request) de requête d'adresse à destination du noeud leader sélectionné L. Sur réception du message MBAR, le noeud leader L alloue une adresse au nouveau noeud N, en utilisant la fonction f(n), et lui envoie un message unicast LDAA (Leader Address Allocation) d'allocation d'adresse par un leader. Sur réception de l'adresse allouée, le nouvel objet N prend le rôle de noeud membre M, associé au noeud leader L, et configure ses interfaces réseau en construisant une route vers son noeud leader L de manière à ce que tous les messages sortants du noeud membre M transitent par le noeud leader L. Le noeud membre M envoie un message MBAA (Member Address Acknowledgement) d'accusé de réception d'une adresse de membre à son noeud leader L. La procédure d'allocation est alors terminée. - En référence aux
figures 2 .5A et 5B , si, durant la phase a), à l'étape E2, un nouvel objet N ne détecte pas de message LDBR de noeud leader, il considère qu'il n'est pas couvert par la cellule d'un noeud leader. La phase a) est alors suivie d'une phase b) de détection d'un noeud membre voisin. Lors de cette phase b), le nouveau noeud fait la découverte de son voisinage. Pour cela, il diffuse un message MBNS de sollicitation de noeud membre dans la zone de son voisinage d'un saut (voir étape E3a), en mode broadcast, puis observe la réception d'un message MBNA d'annonce de noeud membre (étape E4). Un noeud membre recevant une sollicitation envoie un message MBNA pour notifier sa présence. Dans l'exemple décrit ici, à l'expiration de la durée maximale d'observation prédéfinie, notée MBNA_TIMEOUT, le nouvel objet sélectionne de façon aléatoire un noeud membre ayant répondu à la sollicitation MBNS par l'envoi d'un message de présence MBNA. Le nouvel objet entame alors avec le noeud membre sélectionné M l'exécution d'une procédure d'allocation d'adresse à deux sauts, en envoyant au noeud membre M un message unicast MBAR (Member Address Request) de requête d'adresse de membre. Le noeud membre M demande alors à son noeud leader L d'allouer un nouveau pool d'adresses, extrait de la plage d'adresses du réseau. Ce nouveau pool d'adresses est envoyé par le noeud leader L au nouvel objet N, dans un message LDAA (Leader Address Allocation), via le noeud membre M. Le nouvel objet N prend alors le rôle de leader L', s'alloue la première adresse du pool reçu et envoie au noeud leader L un message MBAA (Member Address Acknowledgement) d'accusé de réception d'une adresse de membre via le noeud membre M. Sur réception de ce message MBAA, le noeud membre M intermédiaire prend le rôle de passerelle G entre les deux noeuds leaders L et L'. Chacun des noeuds leaders L (L') ajoute dans une table propre de correspondance Leader-Passerelle un nouveau couple Leader-Passerelle G-L' (G-L). Par ailleurs, après avoir alloué un nouveau pool d'adresses au noeud leader L', le noeud leader L envoie à tous les noeuds leaders, via les passerelles, de la partition un message pour mettre à jour au niveau de tous les leaders une information relative à l'utilisation des pools d'adresses dans la partition. Dans l'exemple particulier décrit, dans lequel les pools d'adresses sont tous de même longueur, cette information relative à l'utilisation des pools contient le nombre de pools déjà alloués (ou utilisés) dans la partition. - Dans le mode de réalisation précédemment évoqué, dans lequel les pools d'adresses peuvent être de longueurs différentes, au lieu d'envoyer à tous les leaders le nombre de pools d'adresses déjà alloués dans la partition, le noeud leader L envoie à tous les noeuds leaders de la partition la dernière adresses du pool d'adresse ayant été alloué au noeud leader L'.
- On pourrait également envisager que ce soit le nouveau noeud leader L' qui envoie à tous les leaders de la partition le message pour mettre à jour l'information sur l'utilisation des pools d'adresses dans la partition.
- Si un noeud membre quitte le réseau, tous les messages qui lui sont envoyés sont perdus mais cela n'a pas d'impact sur la configuration et l'organisation du réseau. Le noeud leader associé détecte l'absence du noeud membre ayant quitté le réseau et mémorise l'adresse allouée à ce noeud membre en vue de la réutiliser.
- Si un noeud passerelle G quitte le réseau, les noeuds leaders L et L' précédemment connectés à ce noeud passerelle G demandent à leurs noeuds membres M, M' d'entrer en mode actif de détection de messages LDBR. Les noeuds membres M, M' qui reçoivent les deux messages LDBR respectivement diffusés par les deux leaders L et L' se portent candidats pour le rôle de nouvelle passerelle. L'un de ces candidats est sélectionné pour jouer le rôle de nouvelle passerelle entre les leaders L et L'. Le critère de sélection peut par exemple être le noeud candidat situé dans la cellule comptant le moins de noeud membres.
- Si un noeud leader L quitte le réseau sans prévenir, après un certain nombre de périodes d'une durée prédéfinie sans réception d'un message LDBR, les noeuds membres M précédemment associés à ce noeud leader L déclenchent une opération de reconfiguration en abandonnant leurs adresses et en réitérant les étapes de la
figure 2 jusqu'à obtenir une nouvelle adresse et prendre un rôle a priori de membre ou de leader. Chaque noeud passerelle G d'interconnexion entre le noeud leader L et un noeud leader L', précédemment géré par le noeud L, devient un simple noeud membre géré par le noeud leader restant L'. Ainsi, le pool d'adresses alloué au noeud leader L redevient alors disponible pour une nouvelle allocation. Un noeud passerelle ayant détecté l'absence du leader L informe tous les noeuds leaders de la partition du fait que ce pool est redevenu disponible. - Lorsqu'une partition A se scinde en deux partitions B et B', chacune des deux partitions B et B' assimile cette scission à un départ d'un groupe de noeuds et agissent si besoin pour le maintien d'une structure virtuelle de communication. Les noeuds leaders dans la partition A conservent leur rôle de leader dans leur nouvelle partition B ou B'. Les noeuds membres ne prennent aucune initiative tant qu'ils restent sous la couverture de leur noeud leader, c'est-à-dire dans la cellule de celui-ci. En revanche, si un noeud membre perd le lieu avec son noeud leader, il déclenche les opérations d'allocation d'une nouvelle adresse et d'intégration dans une nouvelle partition B ou B', comportant une phase a) de détection d'un noeud leader voisin suivie, si besoin, d'une phase b) de découverte de voisinage elle-même suivie, si besoin, d'une phase c) d'établissement d'une nouvelle partition, comme précédemment décrit. Si un lien entre un couple leader-passerelle est rompu, les leaders précédemment connectés l'un à l'autre par l'intermédiaire de cette passerelle exécutent les mêmes actions que celles, précédemment décrites, exécutées en cas de départ du noeud passerelle.
- La dynamicité d'un groupe de noeuds (du à la mobilité, aux mécanismes de gestion d'énergie, etc.) formant une partition et l'expansion d'une partition sont les deux principales raisons conduisant à la fusion de deux partitions. Cette fusion est déclenchée par la détection préalable, par au moins un noeud, de deux partitions différentes dans son voisinage, ces partitions étant identifiées par leurs identifiants respectifs. On rappelle ici que l'identifiant d'une partition, déterminé par le tout premier noeud leader de cette partition, est un nombre, codé sur x bits, généré de façon aléatoire. Si le nombre x de bits sur lesquels sont codés les identifiants de partition est suffisamment grand, le risque de conflit entre deux identifiants respectifs de deux partitions distinctes est négligeable, dans la mesure où le nombre de partitions dans une zone de service est bien inférieur au nombre total d'identifiants différents pouvant être codés sur les x bits.
- La détection de deux partitions susceptibles de fusionner est ici réalisée par un nouveau noeud N arrivant dans le réseau, durant la phase a) de détection de noeud(s) leader(s) (étapes E2 et E3b) en référence à la
figure 2 ). Du fait qu'elle est réalisée par un nouvel objet arrivant, la détection des deux partitions ne nécessite pas le maintien permanent en mode actif des émetteurs/récepteurs radios de tous les noeuds du réseau, ce qui représenterait une grosse dépense énergétique pour le réseau. Grâce à l'invention, la détection de deux partitions est économique sur le plan énergétique. - Par la suite, on appellera la "petite" partition, celle ayant le moins de noeuds leaders, et la "grosse" partition celle ayant le plus grand nombre de noeuds leaders.
- Durant la phase a), le nouveau noeud N arrivant détecte donc deux noeuds leaders L1 et L2 appartenant respectivement à la grosse partition et à la petite partition, par la réception de deux messages LBDR contenant deux identifiants ID1 et ID2 différents. Le nouveau noeud N choisit la grosse partition pour procéder à la procédure d'allocation d'adresse à un saut avec le noeud leader L1 détecté dans cette grosse partition puis devient un noeud membre attaché à ce noeud leader L1. En outre, le nouveau noeud N prend le rôle de passe relle entre les deux partitions.
- Le nouveau noeud N informe
- d'une part, les noeuds leaders de la petite partition, par l'intermédiaire du noeud leader L2, du fait qu'il convient de fusionner, par l'envoi d'un message MGNT (Merge Notification) de notification de fusion, et
- d'autre part, les noeuds leaders de la grosse partition, par l'intermédiaire du noeud leader L1, du fait qu'il convient de mettre à jour le nombre de pools d'adresses utilisés et le nombre de leaders dans la partition résultant de la fusion, par l'envoi d'un message LDAU (Leader Address Update).
- Le noeud leader L1 de la grosse partition récupère le nombre de pools d'adresses déjà alloués dans la petite partition par l'intermédiaire du nouvel objet arrivant N. II calcule ensuite le nombre total de pools d'adresses qui seront nécessaires après la fusion et envoie le message LDAU (Leader Address Update) de mise à jour des adresses à destination des autres noeuds leaders dans la grosse partition afin de mettre à jour l'information sur le nombre de pools d'adresses utilisés et l'information sur le nombre de leaders dans la partition résultant de la fusion.
- Le noeud leader L2 envoie un message MGNT (Merge Notification) de notification de fusion qui est diffusé à tous les noeuds leaders de la petite partition. Cette notification de fusion contient ici le nombre de pools d'adresses utilisés dans la grosse partition. On rappelle ici que, dans une partition, les pools d'adresses successifs sont alloués l'un après l'autre, ici dans un ordre croissant à partir du premier pool p1 de la plage d'adresses P, aux nouveaux noeuds leaders arrivant dans la partition ainsi qu'aux noeuds leaders ayant besoin d'un nouveau pool d'adresses après avoir épuisé leur précédent pool d'adresses. Par conséquent, sur réception d'une notification de fusion MGNT, les noeuds leaders de la petite partition changent de pools d'adresses en procédant à un décalage de pools d'un pas égal au nombre total de pools utilisés dans la grosse partition, afin d'utiliser des pools non utilisés par la grosse partition. Le leader ayant dans la petite partition le pool numéroté n, pn, utilise dans la partition résultant de la fusion le pool numéroté N+n et s'alloue à lui-même la première adresse de ce pool. Ainsi, après la fusion, les pools d'adresses gérés par les noeuds leaders de la petite partition sont ceux qui suivent les pools d'adresses gérés par les noeuds leaders de la grosse partition. En d'autres termes, si le pool le plus élevé dans la grosse partition porte le numéro N, alors les pools d'adresses alloués aux leaders de la petite partition sont les pools suivants numérotés N+1, N+2, etc... Une fois que les leaders de la petite partition ont décalé leurs pools d'adresses, ils changent certains paramètres, tels que l'identifiant de partition et le nombre total de pools d'adresses utilisés dans la partition (c'est-à-dire celle qui résulte de la fusion), dans les messages LDBR qu'ils diffusent régulièrement. Sur réception du nouvel identifiant de partition contenu dans les messages LBDR diffusés par les noeuds leaders, chaque noeud membre (y compris les noeuds passerelles) de la petite partition déclenche l'exécution d'une procédure de traduction de son adresse, analogue à celle exécutée par le noeud leader, consistant à déterminer l'adresse correspondant à son adresse initiale dans un pool d'adresses décalé du nombre N de pools supplémentaires apportés par la grosse partition. Par adresse "correspondante", on entend désigner la nouvelle, adresse ayant la même position dans le nouveau pool que celle de la précédente adresse dans l'ancien pool. Les noeuds membres déterminent leur nouvelle adresse à partir de leur adresse avant la fusion, de l'information sur le nombre total de pools utilisés avant la fusion et de l'information reçue dans les nouveaux messages LDBR sur le nombre total de pools utilisés après fusion. A partir du nombre de pools utilisé avant fusion et du nombre de pools utilisés après fusion, chaque noeud membre en déduit le nombre de pools utilisés par la grosse partition. Par souci de clarté, prenons l'exemple d'un noeud leader Li de la petite partition auquel est alloué le pool d'adresses numéroté n, noté pn. Après fusion, ce même noeud leader Li est en charge du pool d'adresses numéroté N+n, N étant le nombre de pools utilisés dans la grosse partition juste avant la fusion. Un noeud membre Mi,j de la petite partition, situé dans la cellule du noeud leader Li, et ayant dans le pool pn l'adresse ayant la position j, à savoir (n-1).AL+j, traduit cette adresse en une adresse décalée après fusion [(n-1)+N].AL+j. Cette procédure de traduction garantit l'unicité des adresses après la fusion.
- Dans un mode de réalisation particulier, un noeud peut décider à tout moment de changer de rôle, dans le but notamment de réduire sa consommation en énergie. Ainsi, un noeud leader ou passerelle peut laisser un noeud membre prendre son rôle. Grâce à cela, les dépenses énergétiques des noeuds peuvent être distribuées de façon plus équitable sur les différents noeuds du réseau au fil du temps.
- Les objets communicants aptes à intégrer le réseau 1 d'objets communicants, comprennent chacun tous les moyens nécessaires pour mettre en oeuvre les différents mécanismes et protocoles qui viennent d'être décrits, seuls les moyens nécessaires étant activés pour assurer le rôle pris par l'objet dans la structure virtuelle. En particulier, chaque objet comprend :
- ■ un premier module fonctionnel apte à assurer un rôle de leader couvrant une cellule de communication,
- ■ un second module fonctionnel apte à assurer un rôle de membre dans une cellule couverte par un noeud leader,
- ■ un troisième module fonctionnel apte à assurer un rôle de passerelle pour la communication entre deux noeuds leaders.
- Ces trois modules fonctionnels, de leader, de membre et de passerelle, sont agencés pour mettre en oeuvre les actions précédemment décrites en référence aux noeuds leaders, aux noeuds membres et aux noeuds passerelles.
- Chaque objet comprend également :
- ■ un premier module de configuration, pour mettre en oeuvre la phase a) de détection de noeud leader telle que précédemment décrite, notamment agencé pour
- détecter si un noeud leader est présent dans le voisinage de l'objet, et,
- en cas de détection d'un noeud leader voisin, obtenir une adresse auprès dudit noeud leader et déclencher l'activation des seconds moyens fonctionnels;
- ■ un second module de configuration, pour mettre en oeuvre une phase b) de détection de noeud membre telle que précédemment décrite, notamment agencé pour
- détecter si un noeud membre est présent dans le voisinage de l'objet, et
- en cas de détection d'un noeud membre voisin, obtenir un pool d'adresses à gérer, s'allouer une adresse dudit pool et
déclencher l'activation du premier module fonctionnel.
- Le second module de configuration est destiné à être activé après le premier module de configuration, dans le cas où l'objet n'a pas détecté de noeud leader dans son voisinage.
- L'objet comprend en outre un troisième module de configuration, pour mettre en oeuvre la phase c) d'établissement d'une partition précédemment décrite, agencé pour, si l'objet ne détecte ni noeud leader, ni noeud membre dans son voisinage, s'attribuer un pool d'adresses à gérer, prendre le rôle de premier noeud leader d'une nouvelle partition de réseau et attribuer un identifiant à ladite partition. Ce troisième module de configuration est destiné à être activé après les premier et second modules de configuration, dans le cas où l'objet n'a détecté ni noeud leader, ni noeud membre dans son voisinage.
- Enfin, l'objet comprend un module de commande agencé pour commander l'activation et le fonctionnement des modules fonctionnels et des modules de configuration.
Claims (15)
- Procédé pour organiser un réseau d'objets communicants, en au moins une partition comportant une pluralité de cellules de communication respectivement couvertes par une pluralité de noeuds leaders aptes à communiquer entre eux, le réseau disposant d'un ensemble d'adresses à allouer scindé en une pluralité de pools d'adresses destinés à être gérés de façon distribuée par les noeuds leaders du réseau, procédé dans lequel, lorsqu'un nouveau noeud arrive dans le réseau, le procédé comprend une phase a) de détection de noeud leader suivie, le cas échéant, d'une phase b) de détection de noeud membre, telles que :- durant la phase a), si le nouveau noeud détecte dans son voisinage un noeud leader, ledit noeud leader lui alloue une adresse extraite d'un pool d'adresses qu'il gère et le nouveau noeud prend le rôle de noeud membre dans la cellule du noeud leader, les messages en provenance ou à destination d'un noeud membre appartenant à une cellule donnée étant destinés à transiter par l'intemédiaire du noeud leader couvrant ladite cellule; caractérisé en ce que- si le nouveau noeud ne détecte pas de noeud leader dans son voisinage, il passe à la phase b),- durant la phase b), si le nouveau noeud détecte dans son voisinage un noeud membre appartenant à une première cellule, il prend le rôle de leader couvrant une deuxième cellule, obtient un pool disponible d'adresses à gérer et s'alloue l'une des adresses dudit pool obtenu.
- Procédé selon la revendication 1, dans lequel, le noeud membre détecté par le nouveau noeud dans son voisinage durant la phase b) devient un noeud passerelle entre les deux noeuds leaders des première et deuxième cellules voisines, lesdits noeuds leaders étant destinés à communiquer entre eux par l'intermédiaire du noeud passerelle.
- Procédé selon l'une des revendications 1 et 2, dans lequel, si ledit nouveau noeud ne détecte ni noeud leader, ni noeud membre dans son voisinage durant les phases a) et b) respectivement, la phase b) est suivie d'une phase c) durant laquelle le nouveau noeud s'attribue un pool d'adresses à gérer, prend le rôle de premier noeud leader d'une nouvelle partition de réseau et attribue un identifiant à ladite partition.
- Procédé selon la revendication 3, dans lequel, pour déterminer l'identifiant de la nouvelle partition, ledit premier noeud leader génère un nombre de façon aléatoire.
- Procédé selon l'une des revendications précédentes, dans lequel, durant la phase a), le nouveau noeud observe la réception d'un message régulièrement diffusé par les noeuds leaders afin de détecter la présence d'un noeud leader dans son voisinage.
- Procédé selon l'une des revendications précédentes, dans lequel, durant la phase b), le nouveau noeud diffuse à destination de son voisinage un message de sollicitation d'un noeud membre et observe la réception d'un message d'annonce de noeud membre.
- Procédé selon l'une des revendications précédentes, dans lequel, durant la phase b), pour obtenir un pool d'adresses à gérer, le nouveau noeud transmet une requête d'adresses au noeud leader couvrant la première cellule par l'intermédiaire du noeud voisin membre détecté dans la première cellule et, en réponse, le noeud leader de la première cellule notifie au nouveau noeud un pool d'adresses à gérer par l'intermédiaire dudit noeud membre.
- Procédé selon l'une des revendications précédentes, dans lequel, durant la phase b), l'un des deux noeuds leaders couvrant respectivement les première et deuxième cellules transmet aux autres noeuds leaders de la partition un message pour les informer de l'utilisation d'un nouveau pool d'adresses par le nouveau noeud leader couvrant ladite deuxième cellule.
- Procédé selon l'une des revendications précédentes, dans lequel l'ensemble des adresses du réseau étant scindé en une succession de pools d'adresses disjoints et chaque pool comportant une plage d'adresses successives, les pools d'adresses successifs sont attribués dans un ordre donné aux noeuds leaders intégrant successivement la partition et, dans une cellule, les adresses successives du pool géré par le noeud leader de ladite cellule sont allouées dans un ordre donné aux noeuds intégrant successivement la cellule.
- Procédé selon l'une des revendications précédentes, dans lequel, dans le cas où le réseau comprend au moins deux partitions indépendantes l'une de l'autre mais susceptibles d'être fusionnées, la détection des deux partitions est réalisée par un nouveau noeud arrivant dans le réseau durant la phase a) par la détection de deux noeuds leaders voisins appartenant à deux partitions différentes.
- Procédé selon la revendication 9, dans lequel, pour fusionner les deux partitions,- les noeuds leaders d'une première des deux partitions changent de pools d'adresses en procédant à un décalage de pools d'un pas égal au nombre total de pools utilisés dans la seconde des deux partitions, afin d'utiliser des pools non utilisés par la seconde partition, et diffusent dans leurs cellules respectives un message contenant une information sur le nombre total de pools utilisés après la fusion, et- lesdits noeuds membres de la première partition déterminent leur nouvelle adresse à partir de leur adresse avant fusion et du nombre de pools d'adresses utilisés par la seconde partition.
- Procédé selon la revendication 11, dans lequel un message de notification de fusion est envoyé aux noeuds leaders de la première partition pour déclencher un changement des adresses dans la première partition, alors qu'un message de mise à jour contenant une information relative aux pools d'adresses utilisés dans la partition après fusion et une information sur le nombre de leaders de la partition après fusion est envoyé aux noeuds leaders de la seconde partition.
- Objet communicant apte à intégrer un réseau d'objets communicants, comprenant■ des premiers moyens fonctionnels aptes à assurer un rôle de leader couvrant une cellule de communication, un noeud leader étant chargé d'allouer des adresses d'un pool d'adresses aux noeuds situés dans sa cellule et de router les messages en provenance ou à destination de noeuds membres appartenant à sa cellule;■ des seconds moyens fonctionnels aptes à assurer un rôle de membre dans une cellule couverte par un noeud leader,■ des premiers moyens de configuration, pour mettre en oeuvre une phase a) de détection de noeud leader, agencés pour- détecter si un noeud leader est présent dans le voisinage de l'objet, et,- en cas de détection d'un noeud leader voisin, obtenir une adresse auprès dudit noeud leader et déclencher l'activation des seconds moyens fonctionnels, l'objet étant caractérisé en ce qu'il comprend■ des seconds moyens de configuration, pour mettre en oeuvre une phase b) de détection de noeud membre, agencés pour- détecter si un noeud membre est présent dans le voisinage de l'objet, et- en cas de détection d'un noeud membre voisin, obtenir un pool d'adresses à gérer, s'allouer une adresse dudit pool et déclencher l'activation des premiers moyens fonctionnels, les seconds moyens de configuration étant destinés à être mis en oeuvre après les premiers moyens de configuration, dans le cas où l'objet n'a pas détecté de noeud leader dans son voisinage.
- Objet selon la revendication 13, comprenant en outre des troisièmes moyens fonctionnels aptes à assurer un rôle de passerelle pour la communication entre deux noeuds leaders, destinés à être activés dans le cas où l'objet étant dans la cellule couverte par un premier noeud leader, il détecte dans son voisinage un nouveau noeud arrivant dans le réseau et prenant le rôle de leader.
- Réseau d'objets communicants comportant une pluralité d'objets selon l'une des revendications 13 et 14 formant au moins une partition.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0651143 | 2006-03-31 | ||
PCT/FR2007/051042 WO2007113442A1 (fr) | 2006-03-31 | 2007-03-29 | Procede pour organiser un reseau d'objets communicants et objet communicant pour la mise en oeuvre du procede |
Publications (2)
Publication Number | Publication Date |
---|---|
EP2002613A1 EP2002613A1 (fr) | 2008-12-17 |
EP2002613B1 true EP2002613B1 (fr) | 2010-01-27 |
Family
ID=37451121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP07731846A Active EP2002613B1 (fr) | 2006-03-31 | 2007-03-29 | Procédé pour organiser un réseau d'objets communicants, et objet communicant pour la mise en oeuvre du procédé |
Country Status (6)
Country | Link |
---|---|
US (1) | US7990891B2 (fr) |
EP (1) | EP2002613B1 (fr) |
AT (1) | ATE456921T1 (fr) |
DE (1) | DE602007004581D1 (fr) |
ES (1) | ES2339893T3 (fr) |
WO (1) | WO2007113442A1 (fr) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010083887A1 (fr) * | 2009-01-22 | 2010-07-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Attribution d'adresses dans un réseau |
JP5434230B2 (ja) | 2009-04-22 | 2014-03-05 | ソニー株式会社 | 無線通信装置、無線通信システム、無線通信方法及びプログラム |
US8850067B2 (en) * | 2009-10-22 | 2014-09-30 | Verizon Patent And Licensing Inc. | Internet protocol (IP) address pool management and allocation |
US8296403B2 (en) * | 2009-10-23 | 2012-10-23 | Novell, Inc. | Network address allocation using a user identity |
TWI432062B (zh) * | 2009-11-13 | 2014-03-21 | Ind Tech Res Inst | 組播廣播服務區域裡可靠同步裝置與方法 |
US9083762B2 (en) * | 2010-05-28 | 2015-07-14 | Greg Saunders | System and method for providing hybrid on demand services to a work unit |
US9001762B2 (en) * | 2010-06-06 | 2015-04-07 | Lg Electronics Inc. | Communication method between a device and another device |
EP2671166A4 (fr) * | 2011-02-03 | 2016-07-13 | Telcordia Tech Inc | Système et procédé de communications de groupe dans des réseaux 3gpp de machine à machine |
CN102761462A (zh) * | 2011-04-25 | 2012-10-31 | 中兴通讯股份有限公司 | 个人网的合并方法及装置、个人网的拆分方法及装置 |
US8855010B2 (en) * | 2011-05-20 | 2014-10-07 | International Business Machines Corporation | Assigning gateways for heterogeneous wireless mobile networks |
WO2013000148A1 (fr) * | 2011-06-30 | 2013-01-03 | Renesas Mobile Corporation | Procédé et dispositif d'amélioration des interactions dans un réseau de capteurs sans fil |
US8732282B1 (en) * | 2011-09-30 | 2014-05-20 | Emc Corporation | Model framework to facilitate robust programming of distributed workflows |
US8725395B2 (en) * | 2012-01-10 | 2014-05-13 | Toyota Jidosha Kabushiki Kaisha | System for constructing a spanning forest in a vehicular network |
US9306902B2 (en) * | 2012-08-29 | 2016-04-05 | Qualcomm Incorporated | Embedded thin DHCP for wi-fi direct to provide an IP address during connection establishment |
US9455799B2 (en) | 2013-08-06 | 2016-09-27 | OptCTS, Inc. | Dynamic control of quality of service (QOS) using derived QOS measures |
US9444580B2 (en) | 2013-08-06 | 2016-09-13 | OptCTS, Inc. | Optimized data transfer utilizing optimized code table signaling |
US10523490B2 (en) | 2013-08-06 | 2019-12-31 | Agilepq, Inc. | Authentication of a subscribed code table user utilizing optimized code table signaling |
US10056919B2 (en) | 2014-07-02 | 2018-08-21 | Agilepq, Inc. | Data recovery utilizing optimized code table signaling |
US10616764B2 (en) * | 2015-04-08 | 2020-04-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and devices for selecting network partition in untrusted WLAN access |
CN106921681B (zh) * | 2015-12-24 | 2019-08-13 | 中国电信股份有限公司 | 基于随机方式实现分群的方法、网络节点和系统 |
JP2019518397A (ja) | 2016-06-06 | 2019-06-27 | アジャイルピーキュー, インコーポレイテッド | データ変換システムおよび方法 |
CN107018521B (zh) * | 2017-02-16 | 2020-06-23 | 清华大学 | 无线传感网的组网方法、装置和系统 |
US11637808B2 (en) * | 2021-04-22 | 2023-04-25 | Centurylink Intellectual Property Llc | Generation and use of micro-pools to assign an IP address to a requesting computing device |
EP4080848B1 (fr) * | 2021-04-22 | 2024-01-17 | ABB Schweiz AG | Procédé et système de synchronisation de données de configuration dans une installation |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020044549A1 (en) * | 2000-06-12 | 2002-04-18 | Per Johansson | Efficient scatternet forming |
JP3447687B2 (ja) | 2000-10-13 | 2003-09-16 | 日本電気株式会社 | 無線ネットワークシステム及びネットワークアドレス割当方法 |
US7161923B2 (en) * | 2001-08-31 | 2007-01-09 | Sharp Laboratories Of America, Inc. | System and method for establishing bluetooth communications |
US7194002B2 (en) * | 2002-02-01 | 2007-03-20 | Microsoft Corporation | Peer-to-peer based network performance measurement and analysis system and method for large scale networks |
KR100579834B1 (ko) * | 2003-10-20 | 2006-05-15 | 삼성전자주식회사 | 모바일 애드혹 네트워크에서 ip 사이트로컬 프리픽스풀을 이용한 주소 할당방법 |
US20060221856A1 (en) * | 2005-03-29 | 2006-10-05 | Nokia Corporation | System and method for managing master-slave relationships within a network |
-
2007
- 2007-03-29 EP EP07731846A patent/EP2002613B1/fr active Active
- 2007-03-29 ES ES07731846T patent/ES2339893T3/es active Active
- 2007-03-29 US US12/295,362 patent/US7990891B2/en active Active
- 2007-03-29 AT AT07731846T patent/ATE456921T1/de not_active IP Right Cessation
- 2007-03-29 WO PCT/FR2007/051042 patent/WO2007113442A1/fr active Application Filing
- 2007-03-29 DE DE602007004581T patent/DE602007004581D1/de active Active
Also Published As
Publication number | Publication date |
---|---|
EP2002613A1 (fr) | 2008-12-17 |
ATE456921T1 (de) | 2010-02-15 |
US20090285126A1 (en) | 2009-11-19 |
ES2339893T3 (es) | 2010-05-26 |
DE602007004581D1 (de) | 2010-03-18 |
WO2007113442A1 (fr) | 2007-10-11 |
US7990891B2 (en) | 2011-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2002613B1 (fr) | Procédé pour organiser un réseau d'objets communicants, et objet communicant pour la mise en oeuvre du procédé | |
EP1936872B1 (fr) | Réseau radio flexible | |
EP2566137B1 (fr) | Procédés et systèmes pour la découverte de réseau poste à poste utilisant la diversité multiutilisateur | |
US8036207B2 (en) | Adaptive routing | |
WO2007099263A1 (fr) | Procede de routage dans un reseau ad hoc | |
CN105637907A (zh) | 用于标识服务网格的系统和方法 | |
EP2260655B1 (fr) | Station relais a double radio | |
FR2969432A1 (fr) | Procede d'allocation de ressources, dans un reseau de communications mobile et maille, avec limitation des interferences inter-clusters, systeme et reseau mettant en oeuvre le procede | |
CN101600156A (zh) | 一种移动自组织网络地址自动分配方法 | |
CN102340838A (zh) | 无线体域网中延长网络生存时间的媒体接入控制方法 | |
CN102291448A (zh) | 移动自组织网络中基于地理位置的ip地址自动分配方法 | |
EP2512201B1 (fr) | Station émettrice/réceptrice pour former un noeud d'un réseau de télécommunications et procédé de télécommunications associé | |
FR3100408A1 (fr) | Procede de configuration d’un systeme d’extension de couverture de communication sans-fil et un systeme d’extension de couverture de communication sans-fil mettant en œuvre ledit procede | |
EP1598997B1 (fr) | Routage au sein d'un réseau de communication | |
CN102970392B (zh) | 一种高效快速的LR-WPAN Mesh网络节点地址分配方法 | |
KR20050037716A (ko) | 모바일 애드혹 네트워크에서 ip 사이트로컬 프리픽스풀을 이용한 주소 할당방법 | |
Ozturk et al. | A scalable distributed dynamic address allocation protocol for ad-hoc networks | |
US7613424B2 (en) | Method for performing bluetooth high rate supervisor handover | |
Singh et al. | Address allocation for MANET merge and partition using cluster based routing | |
EP3329702A1 (fr) | Procede de decouverte d'un noeud d'un reseau ad hoc | |
Gilaberte et al. | Automatic configuration of ad-hoc networks: establishing unique IP link-local addresses | |
Tang et al. | Wireless mesh sensor networks in pervasive environment: a reliable architecture and routing protocol | |
Teng et al. | Network-Layer and MAC-layer address autoconfiguration in self-organized sensor networks | |
Li et al. | LaConf: A localized address autoconfiguration scheme for wireless ad hoc networks | |
Srikumar et al. | Hierarchical auto-configuration addressing in mobile ad hoc networks (HAAM) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20081021 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR |
|
17Q | First examination report despatched |
Effective date: 20090224 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04L 29/12 20060101ALI20090828BHEP Ipc: H04W 84/20 20090101AFI20090828BHEP Ipc: H04L 12/56 20060101ALI20090828BHEP |
|
RTI1 | Title (correction) |
Free format text: METHOD FOR ORGANISING A NETWORK OF COMMUNICATING OBJECTS, AND COMMUNICATING OBJECT FOR THE IMPLEMENTATION OF THE METHOD |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D Free format text: NOT ENGLISH |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REF | Corresponds to: |
Ref document number: 602007004581 Country of ref document: DE Date of ref document: 20100318 Kind code of ref document: P |
|
REG | Reference to a national code |
Ref country code: ES Ref legal event code: FG2A Ref document number: 2339893 Country of ref document: ES Kind code of ref document: T3 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: VDEP Effective date: 20100127 |
|
LTIE | Lt: invalidation of european patent or patent extension |
Effective date: 20100127 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100527 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100527 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FD4D |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
BERE | Be: lapsed |
Owner name: FRANCE TELECOM Effective date: 20100331 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: MC Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20100331 Ref country code: IE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100428 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100427 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20101028 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20100331 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
PGRI | Patent reinstated in contracting state [announced from national office to epo] |
Ref country code: IT Effective date: 20110501 |
|
PGRI | Patent reinstated in contracting state [announced from national office to epo] |
Ref country code: IT Effective date: 20110501 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110331 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20110331 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20100329 Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100728 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20100127 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 10 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 11 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 12 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20240220 Year of fee payment: 18 Ref country code: GB Payment date: 20240221 Year of fee payment: 18 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: IT Payment date: 20240220 Year of fee payment: 18 Ref country code: FR Payment date: 20240220 Year of fee payment: 18 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: ES Payment date: 20240402 Year of fee payment: 18 |