Bit and Packet Error Mitigation Techniques
To ensure reliable data communication, both open and closed loop retransmission protocols (R. Abreu, 2018; Saeed R Khosravirad, 2017; M. Zorzi, 1997) and coding techniques (Mohammad Rakibul Islam, 2010; D. Wang, 2017), or a combination of both (J. C. Fricke, 2009; F. Rosas, 2016; M. C. Vuran, 2009) are mostly used. Since both techniques share the same goal of improving data reliability, a question arises as to which combination of these two strategies is optimal from an error recovery and energy efficiency perspective.
Packet Retransmission Techniques
The current and future WSN applications envision reliable communication with efficient use of the limited channel and SN resources. To this end, both open-loop and closed-loop prominent retransmission protocols were adopted. Practically, an open-loop retransmission protocol is where the transmitter blindly repeats each packet R times (R. Abreu, 2018). However, in closed-loop protocols such as the widely-known ARQ protocol (Teerawat Issariyakul, 2006), a feedback channel is used to provide the transmitter with acknowledgement (ACK) or negative acknowledgement (NACK) messages. At the receiver’s side, the decision is made by using a cyclic redundancy check (CRC) code to detect errors. If the transmitted sequence is completely error-free, an ACK packet is transmitted to the data sender. Otherwise, a NACK packet is transmitted.
Blind retransmissions (BR)
The BR scheme is an attempt to avoid possible packet errors, delays and complexity caused by feedback ACK / NACK frames. Therefore, the transmitter would blindly send a data packet a predefined number of times without waiting for a feedback .Blind retransmissions are mostly interesting when the feedback channel is very unreliable which makes feedback-based retransmissions unable to meet high reliability targets. The downside of this scheme’s simplicity is the fact that it hinders SN as well as channel resources since that statistically, the biggest portion of successful packet transmissions are observed in the first and second retransmission attempts (Saeed R Khosravirad, 2017). The authors in (R. Abreu, 2018) propose a scheme that allows to limit the channel capacity drawback by dynamically granting shared channel resources. However, the latency and energy consumption disadvantages are still unresolved.
ARQ-Based Retransmissions
Different varieties of closed-loop retransmission protocols are used in today’s wireless systems (worldwide interoperability for microwave access (WiMAX), long term evolution (LTE), Bluetooth, etc.) to reduce packet loss (Saeed R Khosravirad, 2017; M. Zorzi, 1997). In stopand-wait (SAW) ARQ (Saeed R Khosravirad, 2017), if a data packet is corrupted or lost, it is retransmitted until it is without any bit errors by the receiver .
Generally speaking, feedback-based retransmissions can achieve a better wireless channel and resources utilization than BR as the number of the required retransmissions can differ from a data packet to another depending on channel conditions. This is achieved by limiting the number of repetitions to only when the previous attempt has failed. But, it is important to mention that, in addition to the data channel, the reliability of ARQ protocols also depends on the feedback channel’s state (Z. Ahmad, 2018; Derya Malak, 2018; H. Shariatmadari, 2017) as a packet is dropped when a NACK packet is falsely perceived as an ACK for example. This makes ARQ-based protocols unable to meet ultra-reliable data communication requirements when the feedback channel also suffers from bit errors. A simple and straightforward solution to increase feedback channel reliability would be to retransmit ACK / NACK packets. This technique is referred to as L-Rep-ACK approach in (Saeed R Khosravirad, 2017) where L > 1 is the number of ACK / NACK packet transmissions .
Forward Error Correction (FEC)
FEC is a technique that makes possible the recovery of a limited number of lost bits in a data packet. This is achieved by adding redundancy bits from the transmitter’s side using an encoder and according to certain rules. At the receiver’s side, when the same rules are known, errors in the transmitted sequence can be detected and corrected with a given upper bound limit. Consequently, FEC codes incur energy and latency overheads which are the downside of the achieved coding gain. In general, two types of FEC codes can be used: linear block codes (such as BCH, Reed Solomon, etc) and convolutional codes (Robin Hoel, 2007).
Convolutional FEC can achieve the highest possible coding gain when the flipped bits are evenly spaced throughout the received sequence (Robin Hoel, 2007). However, in a real world wireless application, bursts of errors (i.e. a group of consecutive erroneous bits) are usually observed (Derya Malak, 2018). To tackle this issue, a technique called interleaving (Y. Cai, 2019; Robin Hoel, 2007; R. Swaminathan, 2016) can be performed at the transmitter’s side after encoding the input sequence and, prior to decoding, de-interleaving is performed at the receiver’s side. This technique ensures that bursts of errors in the received sequence are truncated and spread out in the sequence. Therefore, the decoder would be more capable of correcting bit errors (Robin Hoel, 2007).
CHAPTER 1 INTRODUCTION |