Claims
- 1. A method for selecting a clusterhead not greater than d hops from any node in a cluster within an ad hoc network, wherein d>1, comprising the steps of:
determining at least one largest node identifier for each node within a d-neighborhood of at least one node; determining at least one smallest node identifier from the at least one largest node identifier; selecting a clusterhead for the d-neighborhood of at least one node responsive to the determined at least one largest identifier for each node of the d-neighborhood of at least one node and the determined at least one smallest identifier for each node of the d-neighborhood of at least one node; and linking each node of the d-neighborhood of at least one node to the selected clusterhead.
- 2. The method of claim 1, further comprising the step of linking the selected clusterhead with other clusters of the ad hoc network.
- 3. The method of claim 1, wherein the step of determining at least one largest node identifier further comprises the steps of:
setting the largest node identifier for each node of the d-neighborhood of at least one node initially equal to an identifier of each node; receiving a plurality of largest node identifiers from each neighboring node at each node of the d-neighborhood of at least one node; and selecting a largest one of the plurality of largest node identifiers as the largest node identifier at each node of the d-neighborhood of at least one node.
- 4. The method of claim 1, wherein the step of determining at least one smallest node identifier further comprises the steps of:
setting the smallest node identifier for each node associated with the at least one largest node identifier initially equal to an identifier of each node; receiving a plurality of smallest node identifiers from each neighboring node at each node associated with the at least one largest node identifier; and selecting a smallest one of the plurality of smallest node identifiers as the smallest node identifier at each node associated with the at least one largest node identifier.
- 5. The method of claim 1, wherein the step of selecting a clusterhead further comprises the step of selecting a node as its own clusterhead if the smallest node identifier for the node is an original node identifier of the node for each node in the d-neighborhood of at least one node.
- 6. The method of claim 1, wherein the step of selecting the clusterhead further comprises the steps of:
determining the smallest node identifier for a node is not an original node identifier of the node; identifying all node duplicates for the node; if node duplicates exist for the node, selecting a node associated with a smallest node duplicate as the clusterhead; and performing the above steps for each node in the d-neighborhood of at least one node.
- 7. The method of claim 1, wherein the step of selecting the clusterhead further comprises the steps of:
determining duplicates do not exist for a node; selecting a node associated with the largest node identifier as the clusterhead for the node; and performing the above steps for each node in the d-neighborhood of at least one node.
- 8. The method of claim 1, wherein the step of selecting further comprises the step of transferring a node to a cluster served by a second clusterhead if a pathway between the node and the selected clusterhead passes through another cluster.
- 9. The method of claim 1, wherein the step of linking further comprises the step of transmitting the selected clusterhead for each node to the selected clusterhead.
- 10. The method of claim 9, wherein the step of transmitting further comprises the step of transmitting the selected clusterhead from each node to the selected clusterhead occurs from a node furthest away from the selected clusterhead to each neighbor of the node furthest away from the selected clusterhead until reaching the clusterhead.
- 11. The method of claim 1, wherein the step of selecting is further responsive to a number of contiguous times a node has been a clusterhead.
- 12. The method of claim 1, wherein the step of selecting is further responsive to an amount of work performed by a clusterhead.
- 13. The method of claim 1, wherein the d-neighborhood comprises a number of nodes a selected distance from a node.
- 14. A method for selecting a clusterhead for a cluster of nodes within a packet radio network, comprising the steps of:
setting a largest node identifier for each node of the cluster of nodes initially equal to an identifier of each node; receiving a plurality of largest node identifiers from each neighboring node at each node of the cluster of nodes; selecting a largest one of the plurality of largest node identifiers as the largest node identifier at each node of the cluster of nodes; setting a smallest node identifier for each node associated with the at least one largest node identifier initially equal to an identifier of each node; receiving a plurality of smallest node identifiers from each neighboring node at each node associated with the at least one largest node identifier; selecting a smallest one of the plurality of smallest node identifiers as the smallest node identifier at each node associated with the at least one largest node identifier; determining if a smallest node identifier for a node equals an original node identifier for the node for each node of the cluster of nodes; selecting the node as its own clusterhead if the smallest node identifier for the node equals the original node identifier of the node for each node of the cluster of nodes; identifying all node duplicates for the node if the smallest node identifier for the node does not equal the original node identifier of the node for each node of the cluster of nodes; if node duplicates exist for the node, selecting a node associated with a smallest node duplicate as the clusterhead for each node of the cluster of nodes; if node duplicates do not exist for a node, selecting a node associated with the largest node identifier for the node as the clusterhead for each node of the cluster of nodes; transferring the node to a cluster served by a second clusterhead if a pathway between the node and the selected clusterhead passes through another cluster for each node of the plurality of nodes; and linking each node of the cluster of nodes to the selected clusterhead.
- 15. The method of claim 14, wherein the step of linking further comprises the step of transmitting the selected clusterhead for each node of the cluster of nodes to the selected clusterhead.
- 16. The method of claim 15, wherein the step of transmitting further comprises the step of transmitting the selected clusterhead from each node to the selected clusterhead occurs from a node furthest away from the selected clusterhead to each neighbor of the node furthest away until reaching the clusterhead.
- 17. The method of claim 14, further including the step of limiting a number of contiguous times a node has been a clusterhead.
- 18. The method of claim 14, further including the step of selecting a clusterhead responsive to an amount of work performed by a clusterhead.
- 19. The method of claim 1, wherein the cluster of nodes comprises a number of nodes a selected distance from a node.
- 20. A communications network comprising:
a plurality of nodes capable of wirelessly communicating with each other, each of the nodes further comprising:
a first data array for storing a winning node identifier for selecting a clusterhead; a second data array for storing an identity of a node transmitting the winning node identifier to the node; and a set of rules for selecting a clusterhead for the node no more that d-hops from any node in a cluster of the node, where d>1, from the winning node identifier in the first data array.
- 21. The telecommunications network of claim 20, further including control logic configured to perform the steps of:
determining at least one largest node identifier for each node within a d-neighborhood of at least one node; determining at least one smallest node identifier from the at least one largest node identifier; selecting a clusterhead for the d-neighborhood of at least one node responsive to the determined at least one largest identifier for each node of the d-neighborhood of at least one node and the determined at least one smallest identifier for each node of the d-neighborhood of at least one node; and linking each node of the d-neighborhood of at least one node to the selected clusterhead.
- 22. The telecommunications network of claim 21, wherein the control logic is further configured to perform the steps of:
setting the largest node identifier for each node of the d-neighborhood of at least one node initially equal to an identifier of each node; receiving a plurality of largest node identifiers from each neighboring node at each node of the d-neighborhood of at least one node; and selecting a largest one of the plurality of largest node identifiers as the largest node identifier at each node of the d-neighborhood of at least one node.
- 23. The telecommunications network of claim 21, wherein the control logic is further configured to perform the steps of:
setting the smallest node identifier for each node associated with the at least one largest node identifier initially equal to an identifier of each node; receiving a plurality of smallest node identifiers from each neighboring node at each node associated with the at least one largest node; and selecting a smallest one of the plurality of smallest node identifiers as the smallest node identifier at each node associated with the at least one largest node.
- 24. The telecommunications network of claim 21, wherein the control logic is further configured to perform the step of selecting a node as its own clusterhead if the smallest node identifier for the node is an original node identifier of the node for each node in the d-neighborhood of at least one node.
- 25. The telecommunications network of claim 21, wherein the control logic is further configured to perform the steps of:
determining the smallest node identifier for a node is not an original node identifier of the node; identifying all node duplicates for the node; if node duplicates exist for the node, selecting a node associated with a smallest node duplicate as the clusterhead; and performing the above steps for each node in the d-neighborhood of at least one node.
- 26. The telecommunications network of claim 21, wherein the control logic is further configured to perform the steps of:
determining duplicates do not exist for a node; selecting the largest node identifier as the clusterhead for the node; and performing the above steps for each node in the d-neighborhood of at least one node.
- 27. The telecommunications network of claim 21, wherein the control logic is further configured to perform the steps of transferring a node to a cluster served by a second clusterhead if a pathway between the node and the selected clusterhead passes through another cluster.
- 28. The telecommunication method of claim 20, wherein the set of rules comprise at least the following rules:
1) if the winning node identifier is a node identifier of the node, the node is the clusterhead for the node, otherwise proceed to Rule 2; 2) if node duplicates exist for the node, select a second node associated with a node duplicate having a smallest winning node identifier as the clusterhead for the node, otherwise proceed to Rule 3; 3) select a third node having a largest winning node identifier as clusterhead for the node; 4) if a cluster is between the node and the selected clusterhead, the node joins another cluster.
RELATED APPLICATION (S)
[0001] This application claims priority from and incorporates herein by reference the entire disclosure of U.S. Provisional Application Ser. No. 60/199,644, filed Apr. 25, 2000.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60199644 |
Apr 2000 |
US |