Wireless Sensor Network
Vol.4 No.2(2012), Article ID:17346,7 pages DOI:10.4236/wsn.2012.42008

Single and Multi Coding Schemes for Efficient Wireless Sensor Networks

Nora Ali1, Hany ElSayed1, Magdi El-Soudani1, Hassanein Amer2

1Electronics and Communications Engineering Department, Cairo University, Giza, Egypt

2Electronics Engineering Department, American University in Cairo, Cairo, Egypt

Email: {nora_a_ali, helsayed }@ieee.org, melsoudani@yahoo.com, hamer@aucegypt.edu

Received November 17, 2011; revised December 28, 2011; accepted January 30, 2012

Keywords: WSN; BCH; AWGN; Rayleigh Fading

ABSTRACT

Wireless Sensor Networks (WSN) has become an appealing field of research because of its wide range of applications in different fields. In recent years, a significant amount of research has focused on improving network lifetime irrespective of the network throughput. This paper focuses on improving network throughput by using efficient coding techniques and different coding schemes without affecting the lifetime. It is shown that throughput increases with the increase of the BCH coding rate. Also, the use of multi coding is investigated. Different rates/codes are studied between sensor nodes and the network master (NM) and between the NM and the sink.

1. Introduction

Wireless Sensor Networks (WSN) consist of hundreds or thousands of multi-functioning sensor nodes where each sensor is capable of sensing its surrounding and processing data. WSN has a wide range of applications in different fields such as environmental monitoring, electromagnetic pollution monitoring, military, industrial and medical applications [1-5]. The main problem in WSN is that the sensor nodes have limited power capacity. Therefore, prolonging network lifetime is essential in sensor networks [2,6].

In some applications such as health or medical applications, lifetime is not the only concern; receiving the data of all sensors correctly at the sink might be more important to prevent making any wrong decision at the sink [4]. In a noisy environment, it is more difficult to receive all data correctly at the sink. Therefore, using Error Correcting Codes (ECC) is essential in sensor networks to improve data integrity [6,7] in spite of its adverse effect on the lifetime due to the energy required for the encoding and decoding processes.

This work focuses on improving network throughput without affecting the lifetime by introducing a simple hardware implementation for the encoding and decoding circuits of the used coding technique. BCH codes with different rates are used as example of ECC. BCH codes are capable of correcting multiple errors according to the chosen design parameters [7,8]. Also, two different coding schemes are studied. In the first scheme, the same code is used between the sensor and Network Master (NM) and between the NM and the sink. In the second scheme, two different rates/codes are used; the first between the sensor and the NM and another between the NM and the sink.

This paper is organized as follows. Section 2 describes the previous work. Section 3 describes the proposed algorithm, the network parameters and the calculation of the processing energy when coding is used. Section 4 describes the effect of using a single coding scheme on network performance and the effect of the role of the NM on network lifetime and throughput. Section 5 describes the multi coding scheme and the simulation results. Finally, Section 6 concludes the paper.

2. Previous Work

As mentioned before, lifetime prolongation is one of the main concerns in WSN. Therefore, choosing the suitable routing technique is one of the important factors to obtain energy management; also, maintaining the suitable algorithm inside the network is one of the main concerns in WSN. The proposed algorithms in [9] deal with all sensors as one network. One of the sensors in the whole network is selected as a master. It is called a Network Master node. The Network Master or the NM for the network receives data from the other sensors in the network, performs data aggregation and compression to remove redundancy and sends the useful information to the sink or base station. It is assumed that all the sensors are aware of their positions; therefore, the sink has knowledge about the whole network and is responsible for selecting the NMs. It then informs all other sensors about the current NM. Two algorithms were investigated. The first algorithm consists of rounds, each starting with the NM selection by the sink. This node remains as NM for a fixed number of cycles “Cf”, after which a new round starts. Before the selection of the NM, the energies of sensors are compared with two thresholds. The first threshold is the energy required by each sensor to transmit its data to the farthest possible NM node for one complete round. A sensor that has energy below this threshold, means that it is no longer active and cannot perform any useful function. The second threshold is the energy required by the sensor to act as an NM. This is the energy needed for one complete round. It is calculated for each sensor according to its distance from the sink. A sensor that has energy below this threshold, cannot act as an NM for the network. This algorithm increased the lifetime compared to LEACH and LEACH-C algorithms [10, 11]; however, some energy will remain (residual energy) after network failure. Therefore, another algorithm was developed in [9]. This algorithm is simply run once at the sink based on its knowledge of the sensors locations. The sink can calculate the energy consumed by any sensor node to send to another node and the energy consumed by any node to send to the sink. Assume that each sensor acts as an NM for a certain number of cycles “Ci”, before and after which it acts as an ordinary node (active node). Since each sensor will act as a NM only once for “Ci” cycles, then the total lifetime, in number of cycles, is the summation of the different “Ci”s of the sensors inside the network and is calculated according to the following relation:

(1)

for

where Ei is the initial energy (it equals 2J) and M is the number of sensor nodes.

Using this algorithm the residual energy is reduced (close to zero) and the lifetime is improved compared to the first algorithm. Furthermore, different geometric distributions were examined in [12] instead of the random distribution and different sink locations were investigated in order to prolong the lifetime.

However, some points are not investigated in [9,12] such as, improving the network throughput which may be essential in critical applications. Also, improving network lifetime in case of no data aggregation is not investigated. Therefore, attempts to investigate these points are introduced in the next sections.

3. The Proposed Algorithm and Network Parameters

The use of Error correcting code (ECC) is becoming an important issue in many WSN applications in order to guarantee data integrity at the destination (sink) [7]. In multi hop WSN, there are multiple hops between the sensor node and the sink. Consequently, more errors will be introduced due to noise on these hops. In this paper, only two hops are considered; the first one from the sensor node to the NM and the other one from the NM to the sink. Therefore, the following assumptions are made. Sensors encode the data and send it to the NM that collects the data from all sensors, decodes it then re-encodes the data again before sending it to the sink. It is also assumed that the encoding and decoding processes are part of the hardware architecture of the sensor node and the processing energy for encoding or decoding is assumed to be the number of binary operations multiplied by the energy per binary operation [13]. This energy per binary operation can be defined as the processing energy of a two-input XOR gate that is implemented using static or dynamic CMOS. The design using static CMOS is assumed in this research because it is widely used in sensor networks [1,14] and the value of the energy per binary operation depends on the fabrication technology [15, 16]. Typical values are within the range from 10-10 J to 10-14 J according to the different technologies from old to new respectively. These values were used in [17] and the results proved that changing these values had very low effect on the lifetime. In this research, the value of 10-12J will be used. These assumptions are applied to the network parameters given in Table 1.

As mentioned before, the use of BCH code is considered. By assuming that each sensor node transmits a fixed frame of length L with an amount of data that varies according to the used code, the processing energy for encoding (Eenc) and decoding (Edec) will be as follows:

(2)

(3)

where

(4)

(5)

Table 1. Network Parameters.

where k is the information block length, is the number of added parity bits; this number is equal to the difference between the codeword length and the information block length, N is the number of codewords in the transmitted frame and is the overhead energy due to the firmware instructions in the sensor’s microprocessor (Eoh is assumed to be a percentage of the coding processing energy).

Based on all the previous assumptions and using the second algorithm in [9], the total energy consumed by the NM (that includes receiving the encoded data from nodes, decoding it, then encoding the corrected data to send it to the sink) and the energy consumed by any sensor node will be as follows:

(6)

(7)

for

where

(8)

(9)

(10)

where is the receiving energy, is the energy consumed by the NM to transmit a frame of length L to the sink, is the distance from the NMj to the sink, is the distance between a sensor and the NM, is the energy consumed for transmission by the node when it acts as an active node and is the number of Cycles allocated to NMj and is calculated according to Equation (1).

4. Single Coding Scheme

As mentioned before, data throughput is expected to improve when using ECC. The effect of using the single coding scheme on the network throughput (T) will be studied next. T can be defined as the amount of information that can correctly reach the sink during the lifetime. It can be calculated according to the following equation:

(11)

where r is the code rate of the used coding technique at the sensor node and BER is the bit error rate and is defined as the number of errors in the received frame by the sink divided by the total frame length.

In this single coding scheme, the sensor and the NM will use the same BCH code with the same length. Different lengths of BCH code are investigated to see the effect of using a low rate BCH code of high error correcting capability and a high rate BCH code of low error correcting capability, on network performance. A simulation model is built using MATLAB [18] to study the effect of using this scheme on network lifetime and throughput. The WSN lifetimes when using different lengths of BCH are shown in Table 2. These values prove that the use of the BCH code has very low effect on network lifetime using the suggested hardware implementation. It produces almost the same lifetime as that of the uncoded system (noise free system) which is equal to 2950 cycles.

Figure 1 shows the throughput over the lifetime for different rates of BCH code over additive white Gaussian noise (AWGN) channel. The figure shows that the throughput of the high-rate BCH code such as the (511, 484) outperforms the throughput of low-rate BCH code such as the (511, 148) or the (511, 304). This is in spite of the fact that the low rate codes provide a lower BER than high rate codes (as shown in Figure 2).

The rationale behind these results is investigated next. In this single coding scheme, the NM transmits a frame of fixed length irrespective of the code rate of the used code. This means that the energy consumed for transmission will be the same for any BCH code length. The processing

Table 2. The lifetime of different lengths of BCH code.

Figure 1. Throughput (in bits) over the lifetime for different lengths of the BCH code.

Figure 2. BER of different lengths of the BCH code.

energy of the BCH code (that can differentiate between its different lengths) is negligible compared to the transmitting energy using the proposed hardware implementation. Therefore, the different rates BCH code used in this scheme will have almost the same lifetime and the code rate will be the main factor that affects the overall throughput. Consequently, using this scheme causes the throughput of the high rate BCH code such as the (511, 484) to outperform the throughput of the low rate BCH codes such as the (511, 304) or the (511, 148).

In order to generalize the result for any frame length, the throughput is calculated as a ratio to the frame length. Figure 3 shows the throughput of different BCH code lengths as a ratio of the frame length. It is clear from this figure that the throughput using the (511, 484) BCH at the high SNR reaches its maximum value which is the code rate (0.947). This means that the throughput will be equal to 94.7% of any frame length used. In contrast, the throughput using the (511, 148) BCH code cannot exceed 0.29 (its code rate value). Therefore, the maximum throughput will represent only 29% from any frame length.

As mentioned before, the lifetimes of systems with different BCH rates, are almost the same. But the lifetime of a system with a low rate code is slightly lower than that of a system with a high rate code, as shown in Table 2. Since the processing energy for the encoding and decoding processes is directly proportional to the amount of added parity as seen in Equations (1), (3) and (4) and consequently to the error correcting capability, the system with the low rate code and high error correcting capability will consume more energy than the system with the high rate code and low error correcting capability. So, the simulation is performed at another energy per operation, namely 10-10 J (the highest energy per operation in the assumed range) and the corresponding values of lifetime is shown in Table 3. The values show that the low

Figure 3. Throughput relative to the frame length for different BCH code rates

Table 3. Lifetime due to different lengths of the BCH code.

rate BCH codes produce a lower lifetime than the high rate BCH codes; consequently, the overall throughput over the lifetime for low rate codes is less than the overall throughput over the lifetime of the high rate codes.

Therefore, this result confirms the fact that the throughput over the lifetime of the high rate BCH code outperforms the throughput over the lifetime of the low rate BCH code irrespective of the frame length and the energy per operation.

The single coding scheme is investigated next with fixed data length and variable frame length. This means that all sensors have the same amount of data and each sensor transmits a frame with length varying according to the code rate used. The simulation results show that the length of the transmitted frame using the high rate codes is small compared to that of the low rate code. This means that the energy consumed for transmission in case of high rate codes is less than that of the low rate codes. Therefore, the lifetime of the system with high rate code such as the (511, 484) BCH is higher than the lifetime of the system with the low rate code such as the (511, 148) BCH. Consequently, the throughput over the lifetime of the (511, 484) BCH still outperforms the throughput of the low rate code such as the (511, 304) BCH or the (511, 148) BCH.

In all the simulation run above, an AWGN channel was assumed. In wireless communication, it is necessary to consider the effect of fading as well. Therefore, slow fading with Rayleigh distribution is added to the AWGN channel; this is more realistic in sensor networks [8]. The simulation results show that the throughput over the lifetime of the high rate BCH code still outperforms the overall throughput of the low rate BCH code. However, some degradation in the throughput values is noticed in comparison to the case of AWGN channel.

In the above results, the NM performed Decode and Encode operations on the received packets from the different sensor nodes. Next, the case where the NM acts as a repeater is considered, i.e., the NM collects data from sensors and forwards it to the sink without decoding or encoding. Table 4 shows the values of the lifetime over any SNR and the throughput over the lifetime at SNR = 4dB (low SNR to show the coding effect).

The results show a slight increase in lifetime because the processing at the NM is negligible using the proposed hardware implementation. On the other hand, the case of the NM as a repeater may be efficient when using high rate codes, where the error correcting capability is small and the probability of wrong decoding is high at low SNR (the long packets can suffer more errors which cannot be detected or corrected). But, in low rate codes, the probability of incorrect decoding is very small even if at low SNR due their high error correcting capability. Consequently, the role of the NM must be determined according to the code rate or the error correcting capability of the used coding technique in order to improve overall performance. For example, it is preferred that the NM act as a repeater for high rate BCH code such as the (511, 484) BCH and act as a Decoder/Encoder for low rate BCH code such as the (511, 148) BCH.

5. Multi Coding Scheme in WSN

As mentioned in the previous section, the problem of using the single coding scheme is the code rate of the used BCH which is the only factor that affects the throughput irrespective of the BER. Furthermore, the lifetime remains approximately constant for different lengths of BCH code, because the processing energy is negligible with respect to the transmitting energy using the proposed hardware implementation. Therefore, another coding scheme is investigated to improve overall performance. In this scheme, the coding method from the sensor to the NM and from the NM to the sink will be completely different in length or in type or in both. In the deployment area, the average distance from the NM to the sink is larger than the distance from the sensor to the NM which means that the channel from the NM to the sink is noisier than the channel from the sensor to the NM. Therefore, it is reasonable to use the low rate codes that have high error correcting capability at the NM in the link from the NM to the sink and use the high rate codes

Table 4. Lifetime and throughput for NM: repeater and decoder/encoder.

at the sensor in the link from the sensor to the NM.

The simulation using MATLAB [18] is performed in order to study the effect of using the multi coding scheme on network performance. The (511, 484) BCH is examined as an example of the high rate code between the sensor nodes and the NM and the (511, 148) BCH is examined as an example of low rate code between the NM and the sink. The simulation results show that this method has a very bad effect on the lifetime as shown in Table 5. The table shows that the lifetime will be reduced by 46% compared to the lifetime of the uncoded system. The rationale behind this result is that the application of a low rate code from the NM to the sink increases the amount of data sent by the NM as shown in Table 5. Remember that the sensor transmits a fixed frame of 2048 bits but the NM collects the data from all sensors and transmits frames of different lengths. These lengths will be determined according to the code rate of the code that is used by the NM. If the NM uses a low rate code such as the (511, 148) BCH, the amount of added parity will be very high and the amount of transmitted data will be very large. Consequently, the energy consumed for transmission will increase and the lifetime will be reduced which leads to a decrease in the overall throughput over lifetime.

This result is taken a step further by applying the low rate code at the sensor in the link between the sensors and the NM and the high rate code at the NM in the link from the NM to the sink. Simulations show that this method has a very good effect on the lifetime.

The values of lifetime shown in Table 5 prove that the lifetime has increased by about 98% compared to the case of single coding regardless of the used code rate and by about 97% over the lifetime of the uncoded system. The reason behind that is the reduction in the transmitting energy consumed at the NM. This reduction is caused by the use of a high rate code which adds a relatively small amount of parity to the information and makes the total amount of data sent by NM small compared to the previous case and compared to the uncoded system. Remember that, in the uncoded system, all bits in the frame represent information bits; this causes the NM to transmit large amount of data compared to the coded system as shown in Table 5. The values in the table also show that the amount of data sent by the NM in the case

Table 5. Lifetime and amount of data sent by NM in multi coding scheme.

of using a low rate then high rate BCH code is equal to 9% of the amount of data sent by the NM in the case of using a high rate then low rate BCH code.

This great increase in the lifetime affects the throughput and makes the overall throughput over the lifetime outperform the overall throughput of using the low rate code at the NM as shown in Figure 4.

Furthermore, applying different coding techniques in the links between the sensor and the NM and then between the NM and the sink, is investigated. The (7, 4) Hamming code is examined instead of the (511, 148) BCH between the sensors and the NM. Table 5 shows that the lifetime is increased by about 56% over the lifetime of the uncoded system. Also the throughput is greater than the throughput of using the (511,148) BCH as shown in Figure 4. The justification for this increase in the throughput is that the code rate of the (7, 4) Hamming is larger than the code rate of the (511, 148) BCH by about 97%. On the other hand, the lifetime in case of the (511, 148) BCH outperforms the lifetime in case of the (7, 4) Hamming by only 21% and the overall performance using low rate Hamming code such as the (7, 4) is better than the overall performance using the low rate BCH code. Therefore, using the multi coding scheme with low rate then high rate codes is preferred in sensor networks.

6. Conclusions

Wireless Sensor Networks (WSN) has become one of the most interesting fields of research where the major challenge is prolonging network lifetime. But in some applications where it is necessary to receive the data intact, the throughput may be more important. So, this paper focuses on improving the throughput without affecting the lifetime by using efficient coding techniques to reduce the bit error rate and introducing a simple hardware implementation for the encoder and decoder circuit of the coding technique. The coding is done at both the sensor and the NM, where the sensor encodes the data and sends it to the NM that decodes then re-encodes the data again before sending it to the sink.

The BCH code is investigated and it is found that the encoding and decoding processes suggested in this work

Figure 4. Throughput (bits) over Lifetime in Multi Coding Scheme.

have a negligible effect on the lifetime and provide almost the same lifetime as the uncoded system. Different code rates are examined and it is observed that the high rate BCH code provides a higher throughput than the low rate BCH code by using the single coding scheme.

The study is taken a step further by examining another coding scheme which is the multi coding scheme. It is found that using this scheme will be more efficient and has a very good effect on network lifetime and throughput when the low rate BCH code such as the (511, 148) is used at the sensor node and the high rate BCH such as the (511, 484) is used at the NM. It is found that the lifetime is increased by about 98% over the lifetime of the single coding irrespective of the code rate used and by about 97% over the lifetime of the uncoded system.

Furthermore, the (7, 4) Hamming is examined at the sensor node instead of the (511, 148) BCH and by keeping the (511, 484) BCH as a high rate code at the NM. It is noticed that the lifetime is increased by about 56% over the lifetime of the uncoded system and the overall throughout outperforms the throughput of using the (511, 148) BCH as a low rate code.

REFERENCES

  1. T. H. Teo, G. K. Lim, D. S. David, K. H. Tan, P. K. Gopalakrishnan and R. Singh, “Ultra Low-Power Sensor Node for Wireless Health Monitoring System,” Proceedings of the International Symposium on Circuits and Systems ISCAS, New Orleans, May 2007, pp. 2363-2366.
  2. C. Castelluccia, E. Mykletun and G. Tsudik, “Efficient Aggregation of Encrypted Data in Wireless Sensor Networks,” ACM Transactions on Sensor Networks, San Diego, July 2005, pp. 109-117.
  3. D. AbouElSeoud, S. Nouh, R. A. Abbas, N. A. Ali, R. M. Daoud, H. H. Amer and H. M. ElSayed, “Monitoring Electromagnetic Pollution Using Wireless Sensor Networks,” Proceedings of the 15th International Conference on Emerging Technologies and Factory Automation ETFA, Bilbao, Spain, September 2010.
  4. C. B. Margi, B. T. de Oliveira, G. T. de Sousa, M. A. Simplicio, F. H. Freitasy, P. S. Barretoy, T. C. Carvalhoy, M. Näslundz and R. Goldz, “Demo: Security Mechanisms Impact and Feasibility on Wireless Sensor Networks Applications,” Proceedings of the IEEE International Conference on Computer Communications INFOCOM, Rio de Janeiro, Brazil, April 2009.
  5. J. Tavares, F. J. Velez and J. M. Ferro, “Application of Wireless Sensor Networks to Automobiles,” Measurement Science Review, Vol. 8, No. 3, 2008, pp. 65-70. doi:10.2478/v10048-008-0017-8
  6. D. Schmidt, M. Berning and N. When, “Error Correction in Single-Hop Wireless Sensor Networks—A Case Study,” Proceedings of the Design, Automation and Test in Europe Conference DATE, Nice, France, April 2009, pp. 1296-1301.
  7. G. Balakrishnan, M. Yang, Y. Jiang and Y. Kim, “Performance Analysis of Error Control Codes for Wireless Sensor Networks,” Proceedings of the 4th International Conference on Information Technology ITNG, Las Vegas, USA, April 2007, pp. 876-879.
  8. H. Karyonen and C. A. Pomalaza-Ráez, “Coding for Energy Efficient Multihop Wireless Networks,” Proceedings of the Nordic Radio Symposium, Oulu, Finland, August 2004.
  9. S. Botros, H. ElSayed, H. H. Amer and M. S. El-Soudani, “Lifetime Optimization in Hierarchical Wireless Sensor Networks,” Proceedings of the 14th International Conference on Emerging Technologies and Factory Automation ETFA, Mallorca, Spain, September 2009, pp. 1-8.
  10. W. Heinzelman, A. Chandrakasan and H. Balakrishnan, “Energy-Efficient Routing Protocols for Wireless Microsensor Networks,” Proceedings of the 33rd Hawaii International Conference on System Sciences HICSS, Maui, USA, January 2000.
  11. W. Heinzelman, A. Chandrakasan and H. Balakrishnan, “An Application Specific Protocol Architecture for Wireless Micro Sensor Networks,” IEEE Transactions on Wireless Communications, Vol. 1, No.4, October 2002, pp. 660-670. doi:10.1109/TWC.2002.804190
  12. S. Nouh, R. A. Abbas, D. AbouElSeoud, N. A. Ali, R. M. Daoud, H. H. Amer and H. M. ElSayed, “Effect of Node Distributions on Lifetime of Wireless Sensor Networks,” Proceedings of the IEEE International Symposium on Industrial Electronics ISIE, Bari, Italy, July 2010.
  13. P. Karlsson, L. Oberg and Y. Xu, “An Address Coding Scheme for Wireless Sensor Networks,” Proceedings of the 5th Scandinavian Workshop on Wireless Ad-hoc Networks, Stockholm, Sweden, May 2005.
  14. C. C. Enz, A. El-Hoiydi, J.-D. Decotignie and V. Peiris, “WiseNET: An Ultra-Low-Power Wireless Sensor Network Solution”, IEEE Computer Society Press, USA, August 2004.
  15. K. Ragini and D. R. B. K. Madhavi, “Ultra-Low-Power Digital Logic Circuits in Sub-threshold for Biomedical Applications,” Journal of Theoretical and Applied Information Technology, 2009.
  16. M. Hempstead, G. Wei and D. Brooks, “Architecture and Circuit Techniques for Low Throughput, Energy Constrained Systems across Technology Generations,” Proceedings of the International Conference on Compilers, Architecture, and Synthesis for Embedded Systems CASES, Seoul, Korea, October 2006, pp. 368-378.
  17. N. A. Ali, H. M. ElSayed, M. S. El-Soudani and H. H. Amer, “Effect of Hamming Coding on WSN Lifetime and Throughput,” Proceedings of the IEEE International Conference on Mechatronics ICM, Istanbul, Turkey, 13-15 April, 2011, pp. 749-754.
  18. Official Site for MATLAB. http://www.mathworks.com