Load-Balancing Clusters in Wireless Sensor Networks - ResearchGate

Load-Balancing Clusters in Wireless Sensor Networks - ResearchGate Load-Balancing Clusters in Wireless Sensor Networks - ResearchGate

12.07.2015 Views

S j ∈ RSet Gi ⇔[( R Gi > d Sj->Gi ) Λ (R Sj,max > d Sj-->Gi )]Where, R Gi is the range of gateway G i , R Sj,max is themaximum range of sensor S j and d Sj->Gi is the distancebetween sensor S j and Gateway G i . A final set (FSet) isconstructed based on the minimum communication costbetween sensors and gateways [8]. For the purpose ofrecovery each gateway constructs another set containingnodes that do not belong to the cluster of the gateway butare included in its RSet. This set is called a Backup set(BSet). Each node only belongs to a single FSet but can bepart of many BSets. The definition of BSet is defined as:S j ∈ BSet Gi ⇔[( S j ∈ RSet Gi ) Λ (S j ∉ FSet Gi )]When a sensor has to be recovered all the gateways checktheir own BSets for the sensor. The sensor is recovered if itis present in the BSet of the gateway. If a sensor is presentin multiple BSets, it is accommodated by the gateway,which has the minimum communication cost with the sensorother then one failed. Once the sensor is associated with thebackup gateway, it is removed from the BSet of the backupgateway as well as the RSet of the faulty gateway.Due to previous schedule the receivers of the sensor areturned during the route update slot to receive the new updatefrom the gateway. Therefore, the backup gateway informsthe sensor about the new association in the same slot. NewTDMA schedules are given to the sensor according to thecardinality of the new gateway and the sensor becomes apart of the backup cluster.5. Experimental ValidationThe effectiveness of our recovery approach is validatedthrough simulation. This section describes simulationenvironment, fault injection technique and validation of theprotocol.5.1 Environmental SetupExperiments are performed on simulations with 1000sensors and 3 gateways uniformly distributed in a 10 × 10square kilometer area. Each sensor is assumed to have aninitial energy of 5 joules. A node is considered nonfunctionalif its energy level reaches 0 joules. The maximumrange of the sensors is set to 0.5 times the maximumdistance between two nodes in the system. Initial range ofthe gateways is considered enough to cover the whole area.It is assumed that the channel is collision free and packetsare not dropped in the medium. Sensors are given IDs inrandom fashion. Sensors are informed about the first TDMAschedules by their respective gateways. Schedule for firstinter-gateway communication is decided duringbootstrapping. Nodes switch on their transmitter if neededand receiver circuitry only during their allocated slots.Fault injection is used to test the robustness andbehavior of the sensor network. Fault injection allowsstudying the effectiveness fault detection and recoverycapabilities of our system. We use a simulation-based faultinjection methodology to inject communication faults in thegateways. We created a fault library of possible link, rangeand complete failures. We then created a timely orderedfailure list using Poisson distribution for occurrence offaults. Faults are picked from the library based on a Uniformdistribution for the type of failure and Normal distributionfor the location of the fault.We implement a fault-injector module to trigger thefaults as events. The fault-injector keeps a check on thesystem time and compares it with the timestamp of the nextentry in the failure list. Whenever the system time equals afault event time, the fault-injector selects the fault from thelibrary, reads the fault destination (gateway id) and insertsthe fault in the event queue of the gateway. When a gatewayencounters the fault in the event queue, it simulates thefault. The consequences of a fault experienced by thesystem are based on its type.G1RouteRFDataDataStatus:G2RouteDataDataCF:Fault InjectorG3DataStatusRouteDataRF-G1 CF-G2 LF-G3 LF-G1 RF-G3 RF-G3 …Fig 5. Design of the fault injection environmentFig 5 describes the design of the fault-injectionenvironment. It shows a link fault being injected by thefault-injector in gateway G3. Previously, gateway G2 stopsall operation due to complete failure. Also, gateway G1 issuffering from a range fault. In order to measure theperformance of our approach we calculate the coverage ofthe algorithm. Coverage is the ability of the system to detectand recover from the occurrence of a fault during normalsystem’s operation [17].Coverage = Probability [system recovers/fault occurs]We have injected 1000 faults in order to measure thecoverage of our algorithm. Since, complete failures are lesscommon compared to other faults, we have inserted themwith lower frequency than range and link failures. AllLF:5

S j ∈ RSet Gi ⇔[( R Gi > d Sj->Gi ) Λ (R Sj,max > d Sj-->Gi )]Where, R Gi is the range of gateway G i , R Sj,max is themaximum range of sensor S j and d Sj->Gi is the distancebetween sensor S j and Gateway G i . A f<strong>in</strong>al set (FSet) isconstructed based on the m<strong>in</strong>imum communication costbetween sensors and gateways [8]. For the purpose ofrecovery each gateway constructs another set conta<strong>in</strong><strong>in</strong>gnodes that do not belong to the cluster of the gateway butare <strong>in</strong>cluded <strong>in</strong> its RSet. This set is called a Backup set(BSet). Each node only belongs to a s<strong>in</strong>gle FSet but can bepart of many BSets. The def<strong>in</strong>ition of BSet is def<strong>in</strong>ed as:S j ∈ BSet Gi ⇔[( S j ∈ RSet Gi ) Λ (S j ∉ FSet Gi )]When a sensor has to be recovered all the gateways checktheir own BSets for the sensor. The sensor is recovered if itis present <strong>in</strong> the BSet of the gateway. If a sensor is present<strong>in</strong> multiple BSets, it is accommodated by the gateway,which has the m<strong>in</strong>imum communication cost with the sensorother then one failed. Once the sensor is associated with thebackup gateway, it is removed from the BSet of the backupgateway as well as the RSet of the faulty gateway.Due to previous schedule the receivers of the sensor areturned dur<strong>in</strong>g the route update slot to receive the new updatefrom the gateway. Therefore, the backup gateway <strong>in</strong>formsthe sensor about the new association <strong>in</strong> the same slot. NewTDMA schedules are given to the sensor accord<strong>in</strong>g to thecard<strong>in</strong>ality of the new gateway and the sensor becomes apart of the backup cluster.5. Experimental ValidationThe effectiveness of our recovery approach is validatedthrough simulation. This section describes simulationenvironment, fault <strong>in</strong>jection technique and validation of theprotocol.5.1 Environmental SetupExperiments are performed on simulations with 1000sensors and 3 gateways uniformly distributed <strong>in</strong> a 10 × 10square kilometer area. Each sensor is assumed to have an<strong>in</strong>itial energy of 5 joules. A node is considered nonfunctionalif its energy level reaches 0 joules. The maximumrange of the sensors is set to 0.5 times the maximumdistance between two nodes <strong>in</strong> the system. Initial range ofthe gateways is considered enough to cover the whole area.It is assumed that the channel is collision free and packetsare not dropped <strong>in</strong> the medium. <strong>Sensor</strong>s are given IDs <strong>in</strong>random fashion. <strong>Sensor</strong>s are <strong>in</strong>formed about the first TDMAschedules by their respective gateways. Schedule for first<strong>in</strong>ter-gateway communication is decided dur<strong>in</strong>gbootstrapp<strong>in</strong>g. Nodes switch on their transmitter if neededand receiver circuitry only dur<strong>in</strong>g their allocated slots.Fault <strong>in</strong>jection is used to test the robustness andbehavior of the sensor network. Fault <strong>in</strong>jection allowsstudy<strong>in</strong>g the effectiveness fault detection and recoverycapabilities of our system. We use a simulation-based fault<strong>in</strong>jection methodology to <strong>in</strong>ject communication faults <strong>in</strong> thegateways. We created a fault library of possible l<strong>in</strong>k, rangeand complete failures. We then created a timely orderedfailure list us<strong>in</strong>g Poisson distribution for occurrence offaults. Faults are picked from the library based on a Uniformdistribution for the type of failure and Normal distributionfor the location of the fault.We implement a fault-<strong>in</strong>jector module to trigger thefaults as events. The fault-<strong>in</strong>jector keeps a check on thesystem time and compares it with the timestamp of the nextentry <strong>in</strong> the failure list. Whenever the system time equals afault event time, the fault-<strong>in</strong>jector selects the fault from thelibrary, reads the fault dest<strong>in</strong>ation (gateway id) and <strong>in</strong>sertsthe fault <strong>in</strong> the event queue of the gateway. When a gatewayencounters the fault <strong>in</strong> the event queue, it simulates thefault. The consequences of a fault experienced by thesystem are based on its type.G1RouteRFDataDataStatus:G2RouteDataDataCF:Fault InjectorG3DataStatusRouteDataRF-G1 CF-G2 LF-G3 LF-G1 RF-G3 RF-G3 …Fig 5. Design of the fault <strong>in</strong>jection environmentFig 5 describes the design of the fault-<strong>in</strong>jectionenvironment. It shows a l<strong>in</strong>k fault be<strong>in</strong>g <strong>in</strong>jected by thefault-<strong>in</strong>jector <strong>in</strong> gateway G3. Previously, gateway G2 stopsall operation due to complete failure. Also, gateway G1 issuffer<strong>in</strong>g from a range fault. In order to measure theperformance of our approach we calculate the coverage ofthe algorithm. Coverage is the ability of the system to detectand recover from the occurrence of a fault dur<strong>in</strong>g normalsystem’s operation [17].Coverage = Probability [system recovers/fault occurs]We have <strong>in</strong>jected 1000 faults <strong>in</strong> order to measure thecoverage of our algorithm. S<strong>in</strong>ce, complete failures are lesscommon compared to other faults, we have <strong>in</strong>serted themwith lower frequency than range and l<strong>in</strong>k failures. AllLF:5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!