arXiv reader

Protection against link errors and failures using network coding

Shizheng Li and Aditya Ramamoorthy

arXiv
0905.2248v3 · PDF · 31 August 2010
Categories
cs.IT, cs.NI, math.IT
Licence
CC BY 4.0 The site shows the text.

Abstract

We propose a network-coding based scheme to protect multiple bidirectional unicast connections against adversarial errors and failures in a network. The network consists of a set of bidirectional primary path connections that carry the uncoded traffic. The end nodes of the bidirectional connections are connected by a set of shared protection paths that provide the redundancy required for protection. Such protection strategies are employed in the domain of optical networks for recovery from failures. In this work we consider the problem of simultaneous protection against adversarial errors and failures. Suppose that n_e paths are corrupted by the omniscient adversary. Under our proposed protocol, the errors can be corrected at all the end nodes with 4n_e protection paths. More generally, if there are n_e adversarial errors and n_f failures, 4n_e + 2n_f protection paths are sufficient. The number of protection paths only depends on the number of errors and failures being protected against and is independent of the number of unicast connections.

Items 14

Theorem

Theorem 1

81H7

Suppose there is at most one error on a primary path. The decoding algorithm outputs the correct data unit at every node if and only if the vectors in the set \{\mathbf{v}_{2i-1},\mathbf{v}_{2i},\mathbf{v}_{2j-1},\mathbf{v}_{2j}\}(In fact, it can be viewed as the error pattern when S_i-T_i, S_j-T_j are in error.) for all i,j = 1,\ldots,n, i \neq j are linearly independent.

Proof of Theorem 1

First assume that the vectors in the sets \{\mathbf{v}_{2i-1},\mathbf{v}_{2i},\mathbf{v}_{2j-1},\mathbf{v}_{2j}\} are linearly independent. Let E_a and E_b be error value vectors corresponding to errors happening on different primary paths S_a-T_a and S_b-T_b respectively. Suppose there exist E_a and E_b such that HE_a=HE_b, i.e., H(E_a+E_b)=0. Note that the vector (E_a+E_b) has at most four error values [e_{d_a},e_{u_a},e_{d_b},e_{u_b}] which are not all zero and such that

[\begin{array}{ccccc} \mathbf{v}_{2a-1},\mathbf{v}_{2a},\mathbf{v}_{2b-1},\mathbf{v}_{2b}\end{array}][e_{d_a},e_{u_a},e_{d_b},e_{u_b}]^T = \mathbf{0}.

This implies \{\mathbf{v}_{2a-1},\mathbf{v}_{2a},\mathbf{v}_{2b-1},\mathbf{v}_{2b}\} are linearly dependent, which is a contradiction. Therefore, under our condition that \{\mathbf{v}_{2i-1},\mathbf{v}_{2i},\mathbf{v}_{2j-1},\mathbf{v}_{2j}\} for all i,j = 1,\ldots,n, i \neq j are linearly independent, there does not exist E_a,E_b such that HE_a=HE_b. This means that if we try to solve the system of linear equations according to every possible error value vectors E_1,\ldots, E_n, it either has no solution or its solution is the actual error in the network. The node T_i is only interested in d_i, in our decoding algorithm, it tries to solve the equations (?) according to the error value vector E_i. If it has a solution, the error happens on S_i-T_i. The matrix [\mathbf{v}_{2i-1},\mathbf{v}_{2i}] has rank two, so equations (?) have unique solution for e_{d_1}. d_i=P_m+e_{d_i} gives decoded d_i. If (?) does not have solution, the error is not on S_i-T_i. T_i simply picks up d_i=P_m from the primary path S_i-T_i.

Conversely, suppose that a vector set \{\mathbf{v}_{2i_1-1},\mathbf{v}_{2i_1},\mathbf{v}_{2j_1-1},\mathbf{v}_{2j_1}\} is linearly dependent. There exist E_{i_1} and E_{j_1} such that HE_{i_1}=HE_{j_1}. Both equations HE_{i_1}=P_{syn} and HE_{j_1}=P_{syn} have solution. Suppose the error in fact happens on S_{j_1}-T_{j_1}, the decoder at T_{i_1} can also find a solution to HE_{i_1}=P_{syn} and use the solution to compute d_i. This leads to decoding error.  \blacksquare

Claim

Claim 1

1QNO

When all coefficients are randomly, independently and uniformly chosen from GF(q), for given i and j, the probability that \{\mathbf{v}_{2i-1},\mathbf{v}_{2i},\mathbf{v}_{2j-1},\mathbf{v}_{2j}\} are linearly independent is p_1=(1-1/q^3)(1-1/q^2)(1-1/q).

Proof of Claim 1

Suppose we have chosen \mathbf{v}_{2i-1}, the probability that \mathbf{v}_{2i} is not in the span of \mathbf{v}_{2i-1} is (1-q/q^4). The probability that \mathbf{v}_{2j-1} is not in the span of \{\mathbf{v}_{2i-1},\mathbf{v}_{2i}\} is (1-q^2/q^4). The probability that \mathbf{v}_{2j} is not in the span of \{\mathbf{v}_{2i-1},\mathbf{v}_{2i},\mathbf{v}_{2j-1}\} is (1-q^3/q^4). Since the coefficients are chosen independently, the probability that four vectors are linearly independent is the product p_1, which approaches 1 when q is large. \blacksquare

Theorem

Theorem 2

SVEK

If there is one error on one primary path or protection path, the decoding algorithm works for every node if and only if vectors in the sets

\begin{aligned} \{\mathbf{v}_{2i-1},\mathbf{v}_{2i},\mathbf{v}_{2j-1},\mathbf{v}_{2j}\}, i,j = 1,\ldots,n,i\neq j \\ \{\mathbf{v}_{2i-1},\mathbf{v}_{2i},\mathbf{v}^p_l\},i=1,\ldots,n, l=1,\ldots,M \end{aligned}

are linearly independent. Note that \mathbf{v}^p_l is the l^{th} column in I_{M\times M} in (?).

Definition

Definition 1

M042

A subset of columns of H_{ext} denoted as A(m_1,m_2) is an error pattern with m_1 errors on primary paths \{c_1,\ldots,c_{m_1}\} \subseteq \{1,\ldots,n\} and m_2 errors on protection paths \{p_1,\ldots,p_{m_2}\} \subseteq \{1,\ldots,M\} if it has the following form: A(m_1,m_2)=A_{c}(m_1)\cup A_{p}(m_2), where A_{c}(m_1) =\{\mathbf{v}_{2c_1-1},\mathbf{v}_{2c_1},~\ldots~,\mathbf{v}_{2c_{m_1}-1},\mathbf{v}_{2c_{m_1}}\}, ~c_i\in \{1,\ldots,n\}, \forall i=1,\ldots,m_1 and A_{p} (m_2) =\{\mathbf{v}^p_{p_1},\ldots,\mathbf{v}^p_{p_{m_2}}\},p_i\in \{1,\ldots,M\},\forall i=1,\ldots,m_2.

Definition

Definition 2

ICLX

Define \mathbf{A}(m_1,m_2)_i, a subset of \mathbf{A}(m_1,m_2), to be the family of (m_1, m_2) type error patterns such that each error pattern includes an error on primary path S_i - T_i, i.e., A(m_1, m_2) \in \mathbf{A}(m_1,m_2)_i if and only if \{\mathbf{v}_{2i-1},\mathbf{v}_{2i}\} \subseteq A(m_1,m_2).

Theorem

Theorem 3

7EJ4

Suppose that there are at most n_e errors in the network (both primary path error and protection path error are possible). The result of the decoding algorithm is correct at every node if and only if the column vectors in A(m_1, m_2) are linearly independent for all A(m_1, m_2) \in \cup_{n_c, n_c' \in \{0, \ldots, n_e\}} \mathbf{A}(n_c+n_c', 2n_e-(n_c+n_c')).

Proof of Theorem 3

First we shall show that under the stated condition, the decoding algorithm works. Suppose E_1 and E_2 denote two error value vectors corresponding to error patterns in \mathbf{A}(n_c,n_e-n_c) and \mathbf{A}(n_c',n_e-n_c') respectively and E_1\neq E_2. The linear independence condition in the theorem implies that there do not exist E_1 and E_2 such that HE_1=HE_2. To see this, suppose there exist such E_1 and E_2, then, HE_{sum}=0, where E_{sum}=E_1+E_2\neq 0 has at most n_c+n_c' errors on primary paths and n_p+n_p'=2n_e-(n_c+n_c') errors on protection path. These errors correspond to a member (which is a set of column vectors) A(n_c+n_c', 2n_e-(n_c+n_c'))\in \mathbf{A}(n_c+n_c', 2n_e-(n_c+n_c')). HE_{sum}=0 contradicts the linear independence of the column vectors in A(n_c+n_c', 2n_e-(n_c+n_c')). Thus, E_1, E_2 do not exist for HE_1=HE_2. This means that if a decoder tries to solve every system of linear equations according to every possible error patterns with n_e errors, it either gets no solution, or gets the same solution for multiple solvable systems of linear equations. A decoder at T_i is only interested in error patterns in \mathbf{A_i}(n_e). If in step 1 it finds a solution E for one system of equation, e_{d_i} in E is the actual error value for d_i and d_i=P_m+e_{d_i}, otherwise, no error happens on S_i-T_i.

Conversely, if there exist some n_c, n_c' such that some member in \mathbf{A}(n_c+n_c', 2n_e-(n_c+n_c')) is linearly dependent, there exist E_1' and E_2' such that HE_1'=HE_2' and E_1'\neq E_2'. This implies that there exists an i_1 such that either e_{d_{i_1}} or e_{u_{i_1}} is different. At node T_{i_1} or S_{i_1}, the decoder has no way to distinguish which one is the actual error value vector and the decoding fails.  \blacksquare

Definition

Definition 3

YFFI

A subset of columns of H denoted by F(n_{f_c}) is said to be a failure pattern with n_{f_c} failures on primary paths \{f_1,\ldots,f_{n_{f_c}}\}\subseteq \{1,\ldots,n\} if it has the following form: F(n_{f_c})=\{\mathbf{v}_{2f_1-1},\mathbf{v}_{2f_1},\ldots, \mathbf{v}_{2{f_{n_{f_c}}}-1},\mathbf{v}_{2{f_{n_{f_c}}}}\},f_i\in \{1,\ldots,n\}.

Definition

Definition 4

B80Z

An error/failure pattern with m_1 primary path errors, m_2 protection path errors and failure pattern F(n_{f_c}) is defined as A^F(m_1,m_2,F(n_{f_c}))=A(m_1,m_2)_{\backslash F(n_{f_c})}\cup F(n_{f_c}), where A(m_1,m_2)_{\backslash F(n_{f_c})} \in \mathbf{A}(m_1,m_2) and is such that A(m_1,m_2)_{\backslash F(n_{f_c})} \cap F(n_{f_c})=\emptyset, i.e., A(m_1,m_2)_{\backslash F(n_{f_c})} is a (m_1,m_2) type error, of which the primary path errors do not happen on failed paths in F(n_{f_c}).

Definition

Definition 5

MZIJ

Define a subset of \mathbf{A}^F(m_1,m_2,F(n_{f_c})), denoted as \mathbf{A}^F(m_1,m_2,F(n_{f_c}))_i to be the family of error/failure patterns such that each pattern includes an error or failure on S_i - T_i, i.e., A^F(m_1, m_2,F(n_{f_c})) \in \mathbf{A}^F(m_1,m_2,F(n_{f_c}))_i if and only if \{\mathbf{v}_{2i-1},\mathbf{v}_{2i}\} \subseteq A^F(m_1,m_2,F(n_{f_c})).

Theorem

Theorem 4

LWJY

Suppose there is at most n_e errors and n_{f_c} primary path failures in the network, both primary path error and protection path error are possible. The decoding algorithm works at every node if and only if the column vectors in A(m_1, m_2) are linearly independent for all

A(m_1, m_2) \in \cup_{m \in \{0, \ldots, 2n_e\}} \mathbf{A}(n_{f_c}+m, 2n_e-m).

Proof of Theorem 4

The condition implies that for all n_c, n_c' \in \{0, \ldots, n_e\} and all possible failure patterns F(n_{f_c}), each member in \mathbf{A}^F(n_c+n_c', 2n_e-(n_c+n_c'),F(n_{f_c})) contains linearly independent vectors. The rest of the proof is similar to Theorem 3 and is omitted.  \blacksquare

Source and licence

The text on this page is from arXiv:0905.2248v3 by Shizheng Li and Aditya Ramamoorthy, under the licence CC BY 4.0. The corpus made these changes: it read the items out of the LaTeX source, it expanded the macros of the paper, it put each proof after its statement, and it converted the text to HTML. The formulas are the TeX of the paper, and KaTeX renders them. A formula or a reference can look different from the PDF. The page is published under CC BY 4.0.

The record of each item is in analysis/objects/0905/0905.2248.jsonl.