[论文学习]BATS:网络编码的实战验证 BATS: Network Coding in Action论文重点BATSBatched Sparse码是一种低复杂度的随机线性网络编码方案能够在存在丢包的多跳网络中以接近最优的带宽效率实现可靠传输。本文通过真实设备实验提出了基于BATS码的网络协议并验证其性能结果表明在多跳网络传输中网络编码相较于传统转发机制具有显著且可直接部署的性能增益。核心研究内容问题定义网络通信中的丢包是一个普遍现象——无线通信中噪声与干扰导致数据包丢失有线网络如互联网骨干网中拥塞同样造成丢包。在传统的多跳网络转发机制下吞吐量随跳数呈指数级下降。例如当每条链路丢包率为0.1时经过L跳后吞吐量上限仅为(1−0.1)ᒻ包/时隙而网络容量实际为0.9包/时隙。虽然通过重传机制理论上可以达到网络容量但反馈机制会消耗宝贵的带宽资源且在卫星通信、深空通信等场景中反馈存在长延迟甚至不可用。另一方面基线随机线性网络编码RLNC虽能实现容量最优但其计算复杂度、中间节点存储开销和系数向量开销等问题严重阻碍了实际部署。创新方法本文的核心创新在于将BATS码从理论推向实际协议实现。BATS码采用“外码内码”的双层架构外码喷泉码的矩阵泛化可生成无限数量的批次batches每个批次包含固定数量如16个的编码包。内码在中间节点对同一批次内的数据包进行随机线性网络编码。基于此论文提出了两个协议版本BATSpro-1采用简单的调度策略中间节点仅需缓存一个批次约16个包存储需求极小。BATSpro-2针对突发丢包和动态链路状态进行了改进引入更复杂的调度和缓存管理机制。两个协议均无需任何反馈即可实现可靠传输。研究成果真实设备实验表明吞吐量显著优于转发在线型网络中BATSpro-1的吞吐量随跳数L增加时下降非常缓慢远高于纯转发机制。即插即用的性能增益实验结果证明了网络编码相较于传统转发在多跳网络传输中具有显著的、可直接部署的性能优势。协议改进有效BATSpro-2有效应对了突发丢包和动态链路状态等实际场景中的问题。实际落地应用的可能性BATS码技术已具备成熟的商业化条件。研究团队于2018年在香港科学园成立初创公司安眺科技其研究项目“网络编码在新一代网络的应用”获选香港首批“产学研1计划”。BATS码已被成功应用于无线多跳网络的文件传输和视频流传输具备商业化条件。此外BATS编码方案已被IETF发布为RFC 9426标志着其作为标准化技术的地位。潜在应用场景包括物联网IoT、雾计算、水下通信、卫星通信以及灾区应急通信等。技术细节BATS码的核心编码流程BATS码的编码过程可分解为以下步骤1. 外码编码源节点设定参数源包数量K、包大小T、批次大小M、度分布DD对每个批次j从度分布DD中采样得到一个度数d从K个源包中均匀随机选择d个源包允许不同批次复用同一源包利用这d个源包生成M个编码包即一个批次2. 内码编码/重编码中间节点中间节点收到同一批次的若干编码包后在有限域GF(2)或GF(256)上进行随机线性组合生成新的编码包继续转发编码操作被限制在同一批次内部3. 外码解码目的节点目的节点收集足够数量的线性无关编码向量后即可解码出原始源包系数向量开销为 CO ceil(M × log₂(q) / 8) 字节关键参数说明参数含义典型值M每批次的编码包数量16论文实验值q有限域大小2 或 256K源包数量由数据量决定DD度分布优化后的分布BATS码的“稀疏”特性体现在每个批次仅与少量源包关联通过度分布控制从而大幅降低了编解码的计算复杂度。同时其“无速率”rateless特性使得编码器可以生成无限数量的批次适应未知或变化的信道条件。研究设定实验拓扑论文考虑了两类网络拓扑线型网络三跳无线网络节点R0为源节点R3为目的节点R1和R2为中间节点无线链路仅存在于相邻节点之间。树型网络包含组播链路的树形无线网络R0为源节点四个R3节点为目的节点存在共享同一无线信道的多条出链路。实验配置硬件平台真实无线设备具体型号未在文中详述但从实验性质判断为通用无线节点丢包模型同时考虑了独立丢包和突发丢包两种场景协议对比基准纯转发机制中间节点仅转发不进行任何编码协议设计要点无反馈设计两个协议均不需要任何反馈即可实现可靠传输低存储需求BATSpro-1中间节点仅缓存一个批次通用性线型拓扑作为通用网络的基本构建块协议可扩展至一般网络综合分析理论贡献本文最核心的贡献在于弥合了网络编码理论与实际部署之间的鸿沟。在此之前随机线性网络编码RLNC虽被证明在理论上可以达到网络容量但存在三大实际障碍源端和目的端的编解码计算成本过高中间节点的存储和计算开销过大系数向量开销不可忽视BATS码通过在“批次”粒度上限制网络编码的范围巧妙地同时解决了这三个问题。每个批次的规模可控如16个包既保证了编码效率又将复杂度控制在可接受范围内。协议设计的工程智慧BATSpro-1和BATSpro-2的递进式设计反映了深刻的工程考量。BATSpro-1以极简的设计单批次缓存、无调度复杂性验证了BATS码的核心价值——在几乎不增加中间节点负担的前提下大幅提升多跳网络的吞吐量。BATSpro-2则针对实际部署中不可避免的突发丢包和链路状态波动进行优化体现了从“实验室证明”到“真实环境可用”的跨越。学术影响与标准化该论文发表于2014年Allerton Conference on Communication, Control, and Computing是网络编码领域的重要文献。其后继影响深远BATS码理论在IEEE Transactions on Information Theory等顶刊上发表2023年7月BATS编码方案正式发布为RFC 9426相关专著《BATS Codes: Theory and Practice》于2017年出版从一篇会议论文到IETF RFC再到学术专著和商业化公司这条路径本身就是技术从理论走向实践的最佳范例。实践应用适用场景无线多跳网络如mesh网络、传感器网络丢包是常态反馈开销昂贵卫星与深空通信长延迟、高丢包、反馈不可用的极端环境物联网与雾计算大量低功耗设备组成多跳网络水下通信与灾区应急通信信道条件恶劣、传统重传效率低下部署建议参数选择批次大小M的选择需在编码效率和计算复杂度间权衡——M16在论文中表现良好可作为起点有限域选择GF(2)计算最简单但编码效率略低GF(256)效率更高但计算开销更大度分布优化应根据实际网络的丢包率和拓扑特征优化度分布以达到最佳传输速率无需修改下层协议BATS协议可与现有无线网络技术共存商业化进展安眺科技n-hop technologies已基于BATS技术开发商业化解决方案提供无线多跳网络传输协议支持文件传输和视频流传输。对于有实际部署需求的团队可参考其技术方案或直接使用开源实现如Simbats。参考资料来源原始论文: BATS: Network Coding in Action (Allerton Conference 2014)IEEE Xplore: 10.1109/allerton.2014.7028592RFC 9426: BATched Sparse (BATS) Coding Scheme for Multi-hop Data Transport作者单位清华大学杨升浩、香港中文大学网络编码研究所杨伟豪、张伟峰、严浩辉