The Capability of Error Correction for Burst-noise Channels Using - - PowerPoint PPT Presentation

the capability of error correction for burst noise
SMART_READER_LITE
LIVE PREVIEW

The Capability of Error Correction for Burst-noise Channels Using - - PowerPoint PPT Presentation

The Capability of Error Correction for Burst-noise Channels Using Error Estimating Code Yaoyu Wang Nanjing University yaoyu.wang.nju@gmail.com June 10, 2016 Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 1 / 22 Overview Error


slide-1
SLIDE 1

The Capability of Error Correction for Burst-noise Channels Using Error Estimating Code

Yaoyu Wang

Nanjing University yaoyu.wang.nju@gmail.com

June 10, 2016

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 1 / 22

slide-2
SLIDE 2

Overview

1

Error Estimating Code (EEC)

2

Capability of Error Correction using EEC

3

Burst-noise Channel

4

Error Correction Algorithm using EEC

5

Performance Evaluation

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 2 / 22

slide-3
SLIDE 3

Error Estimating Code

1 Error estimating code (EEC) [Chen et.al 2010] is used to estimate the bit-error-rate (BER) of a packet using a small number of random parity bits. 2 The EEC parity bits are divided into l = ⌊log n⌋ levels, and each level has s parity bits. 3 On the sender/encoder side, to generate a parity bit on level 1 ≤ i ≤ l, we randomly and uniformly choose 2i − 1 data bits for parity check. 4 On the receiver/decoder side, for a given EEC bit ej, we know the data bits checked by ej by using the same random seed with the sender.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 3 / 22

slide-4
SLIDE 4

Error Estimating Code

The following is an illustrated EEC encoding:

data bits data bits data bits level 1 level 2 level 3

......

1 bit 3 bits 7 bits log(n) levels

Figure: EEC encoding when s = 2

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 4 / 22

slide-5
SLIDE 5

Error Estimating Code

Error estimating code has the following nice properties: high precision, low redundancy, low computational complexity. Find applications in several scenarios like BER-based WiFi rate adaptation, packet retransmission, BER-aware routing.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 5 / 22

slide-6
SLIDE 6

Our Task

But can we also use EEC for error correction? 1 The capability of EEC for error correction has not been investigated before. 2 If we can use EEC for error correction to some extent, that will reduce the retransmission and improve performance.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 6 / 22

slide-7
SLIDE 7

Challenges

We face several challenges: 1 Low redundancy. If the τ erroneous bits are completely randomly distributed in the received packet, there will be n

τ

  • equally possible

index sets. 2 Randomized nature. EEC does not seem to have very strong structure as typical error correction codes like Reed-Solomon code.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 7 / 22

slide-8
SLIDE 8

Error Correction Capability

Theorem (error correction capability, simplified version)

For any constant 0 < ǫ < 1, EEC can identify the error bits with probability at least 1 − ǫ as long as s = Ωǫ(τ), where τ is the number of error bits. 1 The probability is over the randomness in EEC encoding. 2 This is a general result, i.e. we do not make any assumptions on the distribution of error bits.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 8 / 22

slide-9
SLIDE 9

Burst-noise Channel

In many communication channels, erroneous bits are not randomly distributed, but spatially concentrated. We call such channels burst-noise channel.

error bits Burst errors ... ... ... ... Figure: Packet with burst errors

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 9 / 22

slide-10
SLIDE 10

Burst-noise Channel

Definition (µ-Guard Burst)

A µ-guard burst error is a sequence of corrupted data bits in a packet such that (1) the first and the last bits are erroneous, and (2) the maximum length of continuous correct bits within the burst is less than µ, where µ is an integer known as the guard band of the burst error.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 10 / 22

slide-11
SLIDE 11

Experimental Evaluation of Burst-noise Channel

WAVES trace collected by Wireless and Video (WAVES) Lab from Michigan State University.

0.00 0.01 0.02 0.03

BER

0.00 0.02 0.04 0.06 0.08 0.10 0.12 0.14 0.16 0.18

PDF

PDF of bit error rate.

0.00 0.01 0.02 0.03 0.04 0.05

BER

0.0 0.2 0.4 0.6 0.8 1.0

CDF

CDF of bit error rate.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 11 / 22

slide-12
SLIDE 12

Experimental Evaluation of Burst-noise Channel, continued

Varying the guard band µ, we analyze the average number and length of burst errors in the corrupted packets.

4 8 12 16 20 24 28 32

µ

100 101 102

Average Number

BER <0.01 BER ≥0.01

Average number of bursts.

4 8 12 16 20 24 28 32

µ

100 101 102 103

Average length

BER <0.01 BER ≥0.01

Average length of bursts.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 12 / 22

slide-13
SLIDE 13

Overview of the Error Correction Scheme

Pass parity check?

Figure: The error correction scheme.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 13 / 22

slide-14
SLIDE 14

Segmentation and Error Detection

1 Due to the burst-error property, only a few segments contain burst errors, and other segments are error-free. 2 For each segment D′

i, we can define an indicator function g(·) to

indicate the possibility that a segment contains burst-errors as g( D′

i) =

min

A⊆I( D′

i )

f ( D, D′ ▽ A), where A is a set of data bits in D′

i and f (·) indicates the effect of

flipping A.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 14 / 22

slide-15
SLIDE 15

Segmentation and Error Detection

... ... ... ...

Segment Segment

D 

Segment

error bits

1

D 

i

D 

j

D 

1

( ) 52 g D   

Segment

m

D  ) ( 14

i

g D    ... ... ... ... ) ( 23

j

g D    ) ( 74

m

g D    (1) Segmentation (2) Error detection

Figure: Segmentation and error detection.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 15 / 22

slide-16
SLIDE 16

Detecting Burst Segments

Let DE be the set of erroneous segments, then we can prove the following theorem with repeated use of union bound and Chebyshev’s inequality:

Theorem (Separability of Burst Segments)

Let A be the event that g( D′

α) < g(

D′

β) for any

D′

α ∈ DE and

D′

β ∈ DE.

∀ǫ ∈ (0, 1), the following holds: Pr[A] > 1 − ǫ, (1) when s is sufficiently large.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 16 / 22

slide-17
SLIDE 17

g(·) indicates erroneous segments

20 40 60 80 100

Packets

60 50 40 30 20 10

Average ∆g

Erroneous segments Error-free segments

Figure: Average g(·) values for 100 random packets.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 17 / 22

slide-18
SLIDE 18

Candidate Segments

1

( ) 52 g D    ) ( 14

i

g D    ... ... ... ... ) ( 23

j

g D    ) ( 74

m

g D   

1

D 

i

D 

j

D  …… (3) Choose top t segments as candidates

Figure: Candidate segments

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 18 / 22

slide-19
SLIDE 19

Assessment and Flipping Procedure

We propose a heuristic error correction algorithm based on erroneous assessment and flipping operation as follows. Step 1: Initialization. Let θ = (1 ± ǫ)ˆ pn; let the index set of erroneous bits E = ∅. Step 2: Assessment. For each bits bi ∈ I, calculate the value of g(bi). Step 3: Iteration.

(1) Select a set of bits Eθ with size θ from I which have the smallest g(·) values. (2) Enumerate all combination of (1 ± ǫ)ˆ pn bits in Eθ. If the index set E′

  • f a combination satisfies f (

D, D′ ▽ E′) = 0, let E = E′. Go to Step 4. (3) Let θ = θ + (1 ± ǫ)ˆ

  • pn. If θ ≥ |I| go to Step 4; else goto Step 3.

Step 4: Output. If E = ∅, output D′ ▽ E; else fail to recover.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 19 / 22

slide-20
SLIDE 20

Performance Evaluation

Our experiments show that we can correct over 40% corrupted packets.

s=16 s=32 s=48 s=64 s=80 10 20 30 40 50 Recovery ratio (%)

k=4 k=8 k=12

Recovery ratio vs s.

k=1 k=4 k=8 k=12 k=24 10 20 30 40 50 Recovery ratio (%)

s=32 s=48 s=64

Recovery ratio vs k.

t=2 t=4 t=6 t=8 t=10 10 20 30 40 50 Recovery ratio (%)

s=32 s=48 s=64

Recovery ratio vs t.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 20 / 22

slide-21
SLIDE 21

Conclusion

1 With EEC we can identify all error bits with high probability if the BER is relatively low. 2 Characterize the burst-noise channels.

Burst-error phenomenon widely exists and can be used for error correction.

3 Design an EEC-based error correction algorithm for burst-noise channels, and give

theoretical analysis, an efficient error correction scheme.

4 Performance evaluation, over 40% erroneous packets are corrected.

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 21 / 22

slide-22
SLIDE 22

The End

Yaoyu Wang (NJU) Error correction with EEC June 10, 2016 22 / 22