BATS Code for Network Transmission


Data loss during transmission is inevitable in many communication scenarios. As a network coding technology, BATS code is developed to improve the network transmission rate of networks with packet loss. BATS code was invented by Shenghao Yang and Raymond W. Yeung.

In contrast to traditional store-and-forward, BATS code allows intermediate network nodes apply simple network coding so that new packets can be generated along the way, which not only help to compensate the network loss, but also improve the throughput for multicast. BATS code outperforms traditional techniques use retransmission or fountain codes, and can asymptotical achieve the theoretical limit.

A wireless multi-hop network transmission protocol has been built using BATS code. It enables efficient communications through tens of wireless hops with dynamic link loss patterns. A video streaming demonstration using BATS code has been carried out successfully.


Video steaming comparsion of BATS and fountain codes in a two-hop network (settings)

1. Fountain code

Youku video:

2. BATS code

Youku video:


  • New BATS code wireless network protocols
  • BATS code application for space and satellite communications
  • Mobile device implementation of BATS code protocols

A C/C++ implementation of BATS codes for simulation of the performance.



A poster in a Qualcomm seminar
A set of slides for a INC-SZ seminar