• Aucun résultat trouvé

CLUSTER’S CONSTRUCTION AND MAINTENANCE IN MOBILE ENVIRONMENTS

Sensor Networks: A Graph Theory Perspective

7.4 CLUSTER’S CONSTRUCTION AND MAINTENANCE IN MOBILE ENVIRONMENTS

Maintaining clusters as the topology changes is an issue that arises in mobile wireless sensor networks. A local change in the weight may result in a different vertex be-coming a cluster head. As an example, if we are usingIDSG, when two CH become adjacent, one of them has to abdicate. This and other eventoccurrencescan generate a total reordering of the nodes in the WSN and create the necessity to have maintenance operations, which in turn may cause other changes to propagate to the network.

Despite the evident impact of mobility issues in WSN, very few clustering pro-posals take it into account. Most propro-posals consider the nodes as stationary since designing mechanisms to solve the issue is a very challenging task. During the devel-opment of this survey, we only found three research papers involving mobility in the clustering techniques proposed for WSN using Graph Theory. References 33–35 are the subject of our next analysis in this section. The purpose is to analyze how those proposals approach the creation and maintenance of clusters in a mobile environment.

7.4.1 Zone-Based Clustering

Chen and Liestman [33], present a modification to their “Zonal weakly connected clustering algorithm,” presented in reference 26, including cluster maintenance in the presence of network topology changes. In this new proposal, the cluster maintenance is divided into two layers: intrazonal (inside the zones) and interzonal (between zones, at the borders). One of the assumptions made to manage mobility is that all the changes occur sequentially and that the network can be restructured before the next

184 CLUSTERING IN WIRELESS SENSOR NETWORKS: A GRAPH THEORY PERSPECTIVE

topology change occurs. As a result of the nodes motion, the original weakly connected graph can become disconnected. This creates induced disconnected subgraphs that are controlled using some timeout mechanism that allows the formation of a new zone inside the network. If when the timeout interval is completed no other zones have annexed the nodes to its cluster, a new cluster is created.

The cluster formation is performed in three phases. Phase 1 divides the network into zones, creating a set of trees. Phase 2 executes a greedy algorithm to find a small weakly connected dominating set within each zone. Phase 3 fixes the border vertex of each zone. Aborder vertex of a zone is a vertex that is adjacent to vertices of other zones. In this last phase, if in the border between two zones a dominating edge exists between the border vertices, there is no need of new vertices, but if there is no dominating edge, it is necessary to add new vertices to “fix” the border. All the cluster formation process is supposed to be executed at the beginning of the network’s life.

After this process, the following operations aremaintenance operations. There are four different events to be considered during this maintenance stage: (1) edge-down, (2) vertex-down, (3) edge-up, and (4) vertex-up.

In theedge-downevent, if the lost edge is a free, nondominated edge, the graph remains the same and no action is taken, but if the edge (u, v) is adominating edge, its loss must be reported by the vertices incident upon it.uandvbroadcast anedge-loss message to determine if the graph has been broken into two pieces. If so, the root node in the cluster performs thebreach suturingprocedure to add a dominated vertex to the zone and fix the breach. The dominated vertex added is the one with the greatest improvement value, the node that is going to allow the current zone to connect with the greatest number of other zones. In the example shown in Figure 7.11 a, the initial clustering scheme has the edges (2,13) and (4,5). If (2,13) is down, nothing happens because it is not a dominating edge. If (4,5) is down, the root has to perform the breach suturing to create the new edge (3,5) and must calculate the new dominating set inG (Figure 7.11b).

Figure 7.11. Breach suturing procedure in an edge-down event.

Thevertex-down event is treated very similar to the edge-down event, since a detecting vertex cannot easily distinguish between the loss of an edge and the loss of a neighboring vertex. If the vertex that detects the loss still has another dominated edge incident to the lost vertex’s zone, it does nothing; otherwise, it will send a message to its root for it to fix the border. However, a special operation must be performed in case the vertex down is the root vertex for the zone. In this case, another vertex must take on the role of the root. To achieve this, every root has a neighbor as a backup.

If the loss is discovered by the backup, it assumes the role of the root. However, it may be the case that what is lost is the edge between the backup and the root, not the nodes. In this case, when the duplicated roots detect the redundant condition, the backup must give up on its new role and the original root joins the regions of itself and its backup neighbor.

Theedge-upevent is caused by one node moving closer toward another. In this case, if the new edge is a free edge, no changes need to be made, but if the new edge is a dominated edge, some vertices in theDSG can become redundant and can be eliminated from the weakly dominating subgraph.

When a new vertex is added in an vertex-upevent, it is dominated if it has a neighbor in the dominating set; otherwise, it changes its status to be dominating.

As can be observed in the previous operations, it is necessary to add or remove vertices from the zones every time the network topology changes. To accomplish this, a bipartite graph is formed between the dominating vertices of the zones.

Although Chen and Liestman [33] show in their results that the weakly connected dominating set remains roughly the same size over time, it is not clear from the paper how they add or remove vertices to the zones. If these operations involve the additional deployment of the nodes in the field, the application of this algorithm in many sensor network applications will not be feasible, since they consider a unique node deployment at the beginning of the WSN operation.

7.4.2 Peer-to-Peer Generalized Clustering Model

Ramaswamy et al. [34], presentCDC: Connectivity-based decentralized node clus-tering scheme, a clusclus-tering scheme where every node only requires local knowledge about its neighbors, providing the ability to cluster the network automatically or to discover clusters around a given set of nodes. CDC is able to handle nodes’ dynamics without resorting the whole network at each entry and exit.

CDC is based on the idea of flow in the network, where every edge is considered a road between two points. Every time a message is passed through an edge, it decre-ments its TTL (Time to Live) counter until it becomes negligible and is discarded, but it also accumulates a communication weight. Nodes with greater communication weight are those that lie inside a cluster. To calculate the accumulated communication weight for each node, a group of messages is sent from some specific nodes called theoriginators.

To select the originators, two properties are used: (1) The set of originators should be spread out in all regions of the graph, and (2) a nodevl is considered to be a good originator if it acquires more weight due to messages initiated by it than the

186 CLUSTERING IN WIRELESS SENSOR NETWORKS: A GRAPH THEORY PERSPECTIVE

weight acquired by messages initiated by any other originator: TotalWeight(Vl, Vl)≥ TotalWeight(Vl, Vi)∀ViV. To evaluate the first property, each node checks if it has already received any clustering messages from other nodes in its vicinity. If so, it means that there are other neighbor nodes that have already chosen to be originators and, hence, the node opts not to become an originator. Otherwise, the node moves to evaluate the second property. This property, however, can only be evaluated if the CDC algorithm has already been executed, but to execute the CDC algorithm we need to select the originators. To solve this situation, the authors use theTHP (two-hop return probability). THP, calculated as

TwoHopProb(Vl)=

ViN(Vl)

1

Degree(Vl)×Degree(Vi)

determines the probability of returning to a nodeVlin the graph in two hops if random messages were sent starting atVl. If the THP is higher than a predefined threshold, then the node chooses to be an originator.

The selected originators use the same TTL value for their messages. Messages are sent to the network, and each node that receives the messages calculates (after an stabilization time) which originator has a higher weight and joins it.

To manage with the dynamics of nodes, two mechanisms are considered: node entry andnode exit. In the node entry mechanism, the entering node calculates itsattractionto the vertices on an specific cluster. TheNeighbor-Attractionfunction toward another node is defined as

NbrAttractionVN+1(Vj)= 1 Degree(Vj)

whereVN+1is the entering node andVjN(VN+1). The node joins the cluster where the sum of the attractions to the nodes in that cluster is the highest. In thenode exit mechanism, the neighbors of the exiting node have two possibilities. If they are not in the same cluster as the exiting node, they only update their connectivity information.

If they are in the same cluster as the exiting node, they have to perform theNode attractioncomputation; to define it after the node leaves, they are going to stay in the same cluster or they are going to “move” to a new one. If the leaving node is an originator, the neighbors have to be informed and they elect the neighbor with the highest number of in-cluster edges as the new originator. Special cases may occur when a node is entering the network while one of its neighbors is leaving it, or vice versa. In these cases, the computation of the attraction has to be done more than once and increases the computation overhead of the clustering algorithm.

Although the authors state that this model is suitable for any P2P network, including sensor networks, we consider that this proposal is not suitable for WSN. Without considering the “special cases,” the amount of information that the nodes have to handle is large and the computation overhead would cause a rapid depletion of the sensor’s energy.

7.4.3 Cluster-Based Graph Network

In the schema for theconstruction and maintenance of a cluster-based architecture for a sensor networkproposed in reference 35, the network is treated as a bidirectional graphGandCNet(G) is a cluster-based network ofG. TheCNet(G) is a spanning tree ofG. The nodes in the WSN are grouped into disjoint clusters, where the backbone is a tree consisting of the cluster heads and gateway nodes. A cluster of G is a star subgraph of G, where the cluster head has an edge to each other cluster member and no edges exist between two cluster members in the cluster.

To minimize the number of clusters, two cluster heads cannot be neighbors with each other. Thus, they form a maximal independent set in G. To guarantee the commu-nication between cluster heads, any two cluster heads are joined through one special cluster member called agateway node, which is an intersection of neighbors in G of two cluster heads. The cluster members that do not act as gateways are calledpure cluster members. A transmission between a cluster head and its members is called local transmission, and a transmission between cluster heads is calledbackbone trans-mission.

Figure 7.12 shows an example of a clustering scheme, where nodes 3, 7, 10, and 16 are CH, nodes 6 and 13 are gateway nodes, and the remaining nodes are pure cluster members. CH and gateway nodes form the network backbone. Bold edges and the vertices they connect form theCNet(G) inG.

The broadcasting technique used here is calledEulerian broadcasting procedure.

In this technique, a message calledtoken starts from the source node, visits every node in depth-first order, and turns to the source node, forming an Eulerian cycle.

When a nodevgets the token, it sends the token with the message and its ID to one of its neighbors which has not been visited by the token yet. Ifvhas no unvisited

1