Streaming codes are packet-level erasure correcting codes for the Delay-Constrained Sliding Window channel which allows a burst erasure of length no greater than <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$b$</tex> or at most <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$a$</tex> random erasures in every <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$T+1$</tex> consecutive packets with a strict decoding delay constraint <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$T$</tex>. When <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$a>1$</tex>, existing constructions of rate-optimal streaming codes require the field size and code length at least linear in <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$T$</tex>, which are equivalent to binary rate-optimal streaming codes with code length <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$n=\mathrm{O}(T \log T)$</tex>. However, when <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$a=1$</tex>, binary rate-optimal streaming codes have been constructed with length <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$n=T+b-a+1$</tex>. In this paper, we first construct a basic streaming code of length <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$n=\frac{T+b-a+1}{\operatorname{gcd}(b, T-a+1)}$</tex> and rate <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$R_{\text {opt }} \geq \frac{1}{2}$</tex> with indeterminates that only handles burst erasures. Then we determine values of indeterminates, thereby extending the construction to binary rate-optimal (<tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$a, b, T$</tex>) streaming codes for parameters: (i) <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$a=1$</tex>; (ii) <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$a=2, T \in[b+1: b(b-1)+1]$</tex>; (iii) <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$a=3, T=b+2$</tex>.
Read more