Batched sparse (BATS) code is a promising technology for reliable data transmission in multi-hop wireless networks. As a BATS code consists of an outer code and an inner code that typically is a random linear network code, one main research topic for BATS codes is to design an inner code with good performance in transmission efficiency and complexity. In this paper, this issue is addressed with a focus on the problem of minimizing the total number of packets transmitted by the source and intermediate nodes. Subsequently, the problem is formulated as a mixed integer nonlinear programming (MINLP) problem that is NP-hard in general. By exploiting the properties of inner codes and the incomplete beta function, we construct a nonlinear programming (NLP) problem that gives a valid upper bound on the best performance that can be achieved by any feasible solutions. Moreover, both centralized and decentralized real-time optimization strategies are developed. In particular, the decentralized approach is performed independently by each node to find a feasible solution in linear time with the use of look-up tables. Numerical results show that the gap in performance between our proposed approaches and the upper bound is very small, which demonstrates that all feasible solutions developed in the paper are near-optimal with a guaranteed performance bound.
BATS codes were proposed for communication through networks with packet loss. A BATS code consists of an outer code and an inner code. The outer code is a matrix generation of a fountain code, which works with the inner code that comprises random linear coding at the intermediate network nodes. In this paper, the performance of finite-length BATS codes is analyzed with respect to both belief propagation (BP) decoding and inactivation decoding. Our results enable us to evaluate efficiently the finite-length performance in terms of the number of batches used for decoding ranging from 1 to a given maximum number, and provide new insights on the decoding performance. Specifically, for a fixed number of input symbols and a range of the number of batches used for decoding, we obtain recursive formulae to calculate respectively the stopping time distribution of BP decoding and the inactivation probability in inactivation decoding. We also find that both the failure probability of BP decoding and the expected number of inactivations in inactivation decoding can be expressed in a power-sum form where the number of batches appears only as the exponent. This power-sum expression reveals clearly how the decoding failure probability and the expected number of inactivation decrease with the number of batches. When the number of batches used for decoding follows a Poisson distribution, we further derive recursive formulae with potentially lower computational complexity for both decoding algorithms. For the BP decoder that consumes batches one by one, three formulae are provided to characterize the expected number of consumed batches until all the input symbols are decoded. In this paper, we consider the wireless broadcasting scenario with a source node sending some common information to a group of closely located users, where each link is subject to certain packet erasures. To ensure reliable information reception by all users, the conventional approach generally requires repeated transmission by the source until all the users are able to decode the information, which is inefficient in many practical scenarios. In this paper, by exploiting the close proximity among the users, we propose a novel two-phase wireless broadcasting protocol with user cooperations based on an efficient batched network code, known as batched sparse (BATS) code. In the first phase, the information packets are encoded into batches with BATS encoder and sequentially broadcasted by the source node until certain terminating criterion is met. In the second phase, the users cooperate with each other by exchanging the network-coded information via peer-to-peer (P2P) communications based on their respective received packets. A fully distributed and light-weight scheduling algorithm is proposed to improve the efficiency of the P2P communication in the second phase. The performance of the proposed two-phase protocol is analyzed and the channel rank distribution at the instance of decoding is derived, based on which the optimal BATS code is designed. Simulation results show that the proposed protocol outperforms most existing cooperative packet exchange schemes, especially when the inter-user links are not reliable. Lastly, the performance of the proposed scheme is further verified via testbed experiments.  BATS code is a low-complexity random linear network coding scheme that can achieve asymptotic bandwidth optimality for many types of networks with packet loss. In this paper, we propose a BATS code based network protocol and evaluate the performance by real-device experiments. Our results demonstrate significant ready-to-implement gain of network coding over forwarding in multi-hop network transmission with packet loss. We also propose an improved protocol to handle the practical issues observed in the experiments. To address the problem of information spreading over lossy communication channels, this paper proposes a joint FoUntain coding and Network coding (FUN) approach. Different from the Transmission Control Protocol (TCP), our FUN approach is a mechanism of Forward Error Correction (FEC), which does not use retransmission for recovery of lost packets. The novelty of our FUN approach lies in combining the best features of fountain coding, intra-session network coding, and cross-next-hop network coding. As such, our FUN approach is capable of achieving unprecedented high throughput over lossy channels. Experimental results demonstrate that our FUN approach achieves higher throughput than the existing schemes for multihop wireless networks.