计算机科学 ›› 2022, Vol. 49 ›› Issue (2): 292-303.doi: 10.11896/jsjkx.210500104

• 计算机网络 • 上一篇    下一篇

前向纠错编码在网络传输协议中的应用综述

林利祥1, 刘旭东1, 刘少腾2, 徐跃东1   

  1. 1 复旦大学信息科学与工程学院 上海200433
    2 华为技术有限公司网络技术实验室 广东 深圳518129
  • 收稿日期:2021-05-14 修回日期:2021-10-15 出版日期:2022-02-15 发布日期:2022-02-23
  • 通讯作者: 徐跃东(ydxu@fudan.edu.cn)
  • 作者简介:lxlin19@fudan.edu.cn
  • 基金资助:
    广东省重点领域研发计划(2020B010166003);国家自然科学基金(61772139)

Survey on the Application of Forward Error Correction Coding in Network Transmission Protocols

LIN Li-xiang1, LIU Xu-dong1, LIU Shao-teng2, XU Yue-dong1   

  1. 1 School of Information Science and Engineering,Fudan University,Shanghai 200433,China
    2 Network Technology Laboratory Huawei Technologies Co., Ltd.,Shenzhen,Guangdong 518129,China
  • Received:2021-05-14 Revised:2021-10-15 Online:2022-02-15 Published:2022-02-23
  • About author:LIN Li-xiang,born in 1996,postgra-duate.His main research interests include network transmission protocol,streaming media and so on.
    XU Yue-dong,born in 1980,Ph.D,associate professor.His main researchinte-rests include computer network,distri-buted machine learning and so on.
  • Supported by:
    Guangdong Provincial Key R & D Programme(2020B010166003) and National Natural Science Foundation of China(61772139).

摘要: 前向纠错编码是一种在网络传输中应对丢包的技术。在传输过程中加入冗余数据,使接收端在丢包场景下可通过冗余数据直接恢复出原始数据。在丢包多、时延大的场景下,适当加入前向纠错编码可以大量节省超时重传的等待时间,从而提高网络传输的服务质量。过多地添加冗余会造成带宽的浪费,而过少地添加冗余会导致服务器端接收到的数据不足以恢复在传输过程中丢失的数据,因此实际应用前向纠错编码的难点在于恰当地控制冗余数据的比例。目前,前向纠错编码研究大多基于传统网络协议。而随着QUIC (Quick UDP Internet Connections)协议的崛起,由于其具有0-RTT (Round Trip Time)连接、多路复用以及连接无缝迁移等特性,因此更多的前向纠错研究开始结合QUIC协议,以进一步提升传输性能。文中首先对前向纠错编码(Forward Error Correction Coding,FEC)进行了概述,介绍了其应用场景、基本策略和自适应冗余控制策略;然后详细介绍了单播场景和组播场景中,前向纠错编码在传统协议中的研究现状;最后介绍了前向纠错编码在QUIC协议中的研究现状及仍面临的挑战。

关键词: QUIC协议, TCP协议, 前向纠错编码, 性能测量, 自适应冗余度

Abstract: Forward error correction (FEC) coding is a technique to cope with packet loss in network transmission.By adding redundant data to the transmission process,the receiver can recover the original data directly from the redundant data in packet loss scenarios.In the scenario of high packet loss and high latency,adding forward error correction coding appropriately can save a lot of waiting time for timeout retransmission to improve the quality of service of network transmission.Adding too much redundancy will result in bandwidth wasting,while insufficient redundancy will fail to recover lost data,so the difficulty of using forward error correction coding in practice is to properly control the proportion of redundant data.Nowadays,most of the forward error correction coding research is based on traditional network protocols,but with the rise of QUIC (quick UDP internet connections) protocol,more forward error correction researches start to incorporate QUIC protocol due to its characters like 0-RTT (round trip time) connectivity,multiplexing,seamless connection migration to further improve transmission performance.This paper gives an overview of forward error correction coding,introduces its application scenarios,basic policies and adaptive redundancy control strategies.Then it introduces the research status of forward error correcting coding in traditional protocols in unicast and multicast scenarios.Finally,this paper introduces the current research status and challenges of forward error correction coding in QUIC protocol.

Key words: Adaptive redundancy, Forward error correction coding, Performance measurement, QUIC protocol, TCP protocol

中图分类号: 

  • TP393
[1]CHROMIUM B.Experimenting with QUIC [EB/OL].(2013-06-27).https://blog.chromium.org/2013/06/experimenting-with-quic.html.
[2]BARAKAT C,ALTMAN E.Bandwidth tradeoff between TCP and link-level FEC[J].Computer Networks,2002,39(2):133-150.
[3]ALEXIOU A,BOURAS C,KOKKINOS V,et al.Adopting FEC for reliable multicasting over LTE networks[C]//Proceedings of the 13th ACM International Conference on Modeling,Analysis,and Simulation of Wireless and Mobile Systems.2010:307-310.
[4]WICKER S B,BHARGAVA V K.Reed-Solomon Codes andTheir Applications[M].Piscatway:IEEE Press,1994:1-336.
[5]SUDAN M.Decoding of Reed Solomon codes beyond the error-correction bound[J].Journal of Complexity,1997,13(1):180-193.
[6]ROCA V,CUNCHE M,LACAN J,et al.Simple Reed-Solomon Forward Error Correction (FEC) Scheme for FECFRAME [EB/OL].(2013-06-17).https://hal.inria.fr/ hal00799727.
[7]VITERBI A J.Error bounds for convolutional codes and an asymptotically optimum decoding algorithm[J].IEEE Trans. Informat. Theory,1967,13(2):260-269.
[8]ROCA V,SWETT I,MONTPETIT M J.Sliding Window Random Linear Code (RLC) Forward Erasure Correction (FEC) Schemes for QUIC[EB/OL].(2018-12-12).https://hal.inria.fr/hal-01919876/document.
[9]ROCA V,TEIBI B,BURDINAT C,et al.Less latency and better protection with al-fec sliding window codes:A robust multimedia cbr broadcast case study [C]//2017 IEEE 13th International Conference on Wireless and Mobile Computing,Networking and Communications (WiMob).IEEE,2017:1-8.
[10]PADHYE C,CHRISTENSEN K J,MORENO W.A new adaptive FEC loss control algorithm for voice over IP applications[C]//IEEE 2000 International Conference on Performance,Computing,and Communications(Cat.No.00C-H37086).IEEE,2000:307-313.
[11]BALDANTONI L,LUNDQVIST H,KARLSSON G.Adaptiveend-to-end FEC for improving TCP performance over wireless links[C]//2004 IEEE International Conference on Communications (IEEE Cat.No.04CH3-7577).IEEE,2004:4023-4027.
[12]MATHIS M,SEMKE J,MAHDAVI J,et al.The macroscopicbehavior of the TCP congestion avoidance algorithm[J].ACM SIGCOMM Computer Communication Review,1997,27(3):67-82.
[13]LUNDQVIST H,KARLSSON G.TCP with end-to-end FEC[C]//International Zurich Seminar on Communications,2004.IEEE,2004:152-155.
[14]AHN J S,HONG S W,HEIDEMANN J.An adaptive FEC code control algorithm for mobile wireless sensor networks[J].Journal of Communications and Networks,2005,7(4):489-498.
[15]POLYDOROS A,PAVLIDOU F N,ASSIMAK-OPOULOS C,et al.A Recursive IR Protocol for Multicarrier Communication[EB/OL].(2020-01-22).http://195.251.240.227/jspui/handle/123456789/4592.
[16]TSUGAWA T,FUJITA N,HAMA T,et al.TCP-AFEC:Anadaptive FEC code control for end-to-end bandwidth guarantee[C]//Packet Video 2007.IEEE,2007:294-301.
[17]CONVERTINO G,OLIVA S L.Adaptive FEC for 802.11 burst losses reduction[C]//Proceedings of the 2nd International Conference on Mobile Multimedia Communications.2006:1-5.
[18]FLACH T,DUKKIPATI N,CHENG Y,et al.TCP Instant Recovery:Incorporating Forward Error Correction in TCP draft-flach-tcpm-fec-00[EB/OL].(2015-10-14).https://datatracker.ie-tf.org doc/draft-flach-tcpm-fec.
[19]NAGY M,SINGH V,OTT J,et al.Congestion control using fec for conversational multimedia communication[C]//Proceedings of the 5th ACM Multimedia Systems Conference.2014:191-202.
[20]FERLIN S,KUCERA S,CLAUSSEN H,et al.Mptcp meetsfec:supporting latency-sensitive applications over heteroge-neous networks[J].IEEE/ACM Transactions on Networking,2018,26(5):2005-2018.
[21]CHENG S,HU H,ZHANG X,et al.Deeprs:Deep-learningbased network-adaptive fec for real-time video communications[C]//2020 IEEE International Symposium on Circuits and Systems (ISCAS).IEEE,2020:1-5.
[22]HOCHREITER S,SCHMIDHUBER J.Long short term memory[J].Neural Computation,1997,9(8):1735-1780.
[23]FU S,ZHANG Y,JIANG Y,et al.Experimental study formulti-layer parameter configuration of WSN links [C]//2015 IEEE 35th International Conference on Distributed Computing Systems.IEEE,2015:369-378.
[24]LOHMAR T,PENG Z,MHNEN P.Performance evaluation of a file repair procedure based on a combination of MBMS and unicast bearers[C]//International Symposium on World of Wireless,Mobile & Multimedia Networks.IEEE,2006.
[25]LUBY M,SHOKROLLAHI A,WATSON M,et al.Raptor forward error correction scheme for object delivery[R].RFC 5053 (Proposed Standard),2007.
[26]SHOKROLLAHI A.Raptor codes[J].IEEE Transactions onInformon Theory,2006,52(6):2551-2567.
[27]ALEXIOU A,BOURAS C,KOKKINOS V,et al.Adopting FEC for reliable multicasting over LTE networks [C]//Proceedings of the 13th ACM International Conference on Modeling,Analysis,and Simulation of Wireless and Mobile Systems.2010:307-310.
[28]BOURAS C,KANAKIS N,KOKKINOS V,et al.EvaluatingRaptorQ FEC over 3GPP multicast services[C]//2012 8th International Wireless Communications and Mobile Computing Conference (IWCMC).IEEE,2012:257-262.
[29]PIRO G,GRIECO L A,BOGGIA G,et al.Simulating LTE cellular systems:An open-source framework[J].IEEE Transactions on Vehicular Technology,2010,60(2):498-513.
[30]ZHONG Z,HAMCHAOUI I,KHATOUN R,et al.Performance evaluation of CQIC and TCP BBR in mobile network[C]//2018 21st Conference on Innovation in Clouds,Internet and Networks and Workshops (ICIN).IEEE,2018:1-5.
[31]RUTH J,POESE I,DIETZEL C,et al.A First Look at QUIC inthe Wild[C]//International Conference on Passive and Active Network Measurement.Cham:Springer,2018:255-268.
[32]BISHOP M.Hypertext Transfer Protocol Version 3 (HTTP/3)[EB/OL].(2020-12-15).https://tools.ietf.org/html/dra-ft-ietf-quic-http-33.
[33]BELSHE M,THOMSON M,PEON R.Hypertext TransferProtocol Version 2(HTTP/2)[EB/OL].(2015-05-02).https://tools.ietf.org/html/rfc-7540.
[34]SCHARF M,KIESEL S.NXG03-5:Head-of-line Blocking inTCP and SCTP:Analysis and Measurements[C]//IEEE Globecom 2006.IEEE,2006:1-5.
[35]QIAN F,GOPALAKRISHNAN V,HALEPOVIC E,et al.Tm3:Flexible transport-layer multi-pipe multiplexing middlebox without head-of-line blocking[C]//Proceedings of the 11th ACM Conference on Emerging Networking Experiments and Technologies.2015:1-13.
[36]MI X,QIAN F,WANG X.Smig:Stream migration extension for http/2[C]//Proceedings of the 12th International on Confe-rence on Emerging Networking Experiments and Technologies.2016:121-128.
[37]CARDWELL N,CHENG Y,GUNN C S,et al.BBR:congestion-based congestion control[J].Communications of the ACM,2017,60(2):58-66.
[38]IYENGAR J,THOMSON M.QUIC:A UDP-Based Multiplexed and Secure Transport[EB/OL].(2020-06-10).https://data-tracker.ietf.org/doc/html/draft-ietf-quic-transport-29.
[39]CARLUCCI G,CICCO L D,MASCOLO S.HTTP over UDP:an Experimental Investigation of QUIC[C]//Proceedings of the 30th Annual ACM Symposium on Applied Computing.2015:609-614.
[40]NETFILTER'S W.The netfilter.org project[EB/OL].(2021-01-15).http://www.net-filter.org/.
[41]BISWAL P,GNAWALI O.Does quic make the web faster?[C]//2016 IEEE Global Communications Conference (GLOBECOM).IEEE,2016:1-6.
[42]MEGYESI P,KRAMER Z,MOLNAR S.How quick is QUIC?[C]//2016 IEEE International Conference on Communications (ICC).IEEE,2016:1-6.
[43]COOK S,MATHIEU B,TRUONG P,et al.QUIC:Better for what and for whom?[C]//2017 IEEE International Conference on Communications (ICC).IEEE,2017:1-6.
[44]ZHANG H,WANG T,TU Y,et al.How quick is quic in satellite networks[C]//International Conference in Communications,Signal Processing,and Systems.Singapore:Springer,2017:387-394.
[45]WANG Y,ZHAO K,LI W,et al.Performance evaluation ofQUIC with BBR in satellite internet[C]//2018 6th IEEE International Conference on Wireless for Space and Extreme Environments (WiSEE).IEEE,2018:195-199.
[46]KAKHKI A M,JERO S,CHOFFNES D,et al.Taking a longlook at QUIC:an approach for rigorous evaluation of rapidly evolving transport protocols[C]//Proceedings of the 2017 Internet Measurement Conference.2017:290-303.
[47]TIMMERER C,BERTONI A.Advanced transport options forthe dynamic adaptive streaming over HTTP [J].arXiv:1606.00264,2016.
[48]ANGOT N.Dash Industry Forum[EB/OL].https://github.com/Dash-Industry-Forum/dash.js.
[49]BHAT D,RIZK A,ZINK M.Not so QUIC:A performancestudy of DASH over QUIC[C]//Proceedings of the 27th Workshop on Network and Operating Systems Support for Digital Audio and Video.2017:13-18.
[50]HUANG T Y,JOHARI R,MCKEOWN N,et al.A buffer-based approach to rate adaptation:evidence from a large video strea-ming service[C]//Proceedings of the 2014 ACM Conference on SIGCOMM.2014:187-198.
[51]WANG C,RIZK A,ZINK M.SQUAD:A spectrum-based quality adaptation for dynamic adaptive streaming over HTTP[C]//Proceedings of the 7th International Conference on Multimedia Systems.2016:1-12.
[52]SPITERI K,URGAONKAR R,SITARAMAN R K.BOLA:Near-optimal bitrate adaptation for online videos[J].IEEE/ACM Transactions on Networking,2020,28(4):1698-1711.
[53]RICCI R,EIDE E,TEAM C L.Introducing CloudLab:Scientific infrastructure for advancing cloud architectures and applications[J].Magazine of USENIX & SAGE,2014,39(6):36-38.
[54]LEDERER S,MULLER C,TIMMERER C.Dynamic adaptivestreaming over HTTP dataset[C]//Proceedings of the 3rd Multimedia Systems Conference.2012:89-94.
[55]TECHNOLOGY K.Kuaishou Technology developed kQUIC by itself:How to realize tens of millions of QPS clusters?[EB/OL].(2020-07-13).https://new.qq.com/rain/a/2020073-0A0FGC-W00.
[56]BIGO.BIGO Technology|The practice and optimization ofQUIC protocol in BIGO [EB/OL].(2020-12-15).https://www.nowcoder.com/discuss/579715.
[57]TENCENT.Using QUIC Protocol on CLB[EB/OL].(2020-08-15).https://intl.cloud.tencent.com/doc-ument/product/214/37353?lang=en.
[58]CLB TEAM.CLB quic demo[EB/OL].(2017-11-9).https://github.com/tencentyun/clb-quic-demo.
[59]RUTH J,WOLSING K,WEHRLE K,et al.Perceiving QUIC:Do users notice or even care?[C]//Proceedings of the 15th International Conference on Emerging Networking Experiments and Technologies.2019:144-150.
[60]NETRAVALI R,SIVARAMAN A,DAS S,et al.Mahimahi:Accurate record-and-replay for {HTTP} [C]//2015 {USENIX} Annual Technical Conference ({USENIX}{ATC} 15).2015:417-429.
[61]MARX R,LAMOTTE W,REYNDERS J,et al.Towards QUIC debuggability[C]//Proceedings of the Workshop on the Evolution,Performance,and Interrability of QUIC.2018:1-7.
[62]MARX R.QUICvis[EB/OL].(2019-10-02).https://github.com/rmarx /QUICvis.
[63]YU Y,XU M,YANG Y.When QUIC meets TCP:An experimental study[C]//2017 IEEE 36th Internatinal Performance Computing and Communications Conference (IPCCC).IEEE,2017:1-8.
[64]CONINCK Q D,BONAVENTURE O.Multipath quic:Designand evaluation[C]//Proceedings of the 13th International Conference on Emerging Networking Experiments and Technologies.2017:160-166.
[65]SEEMANN M.A QUIC implementation in pure Go[EB/OL].(2021-05-01).https://github.com/lucas-clemente/quic-go.
[66]VIERNICKEL T,FROEMMGEN A,RIZK A,et al.Multipath QUIC:A deployable multipath transport protocol[C]//2018 IEEE International Conference on Communications (ICC).IEEE,2018:1-7.
[67]QIAN P,WANG N,TAFAZOLLI R.Achieving robust mobile web content delivery performance based on multiple coordinated QUIC connections[J].IEEE Access,2018,6:11313-11328.
[68]CONINCK Q D,MICHEL F,PIRAUX M,et al.Pluginizing quic [C]//Proceedings of the ACM Special Interest Group on Data Communication.2019:59-74.
[69]HUITEMA C.picoquic[EB/OL].(2021-04-03).https://github.com/ private-octopus/picoquic.
[70]CONINCK Q D,BONAVENTURE O.The Case for Protocol Plugins[R].Technical Report,2019.
[71]KINNEAR E,PAULY T,SCHINAZI D.An Unreliable Data-gram Extension to QUIC[EB/OL].(2021-04-21).https://quicwg.org/ datagram/draft-ietf-quic-datagram.html.
[72]HUSSEIN A,KAYSSI A,ELHAJJ I H,et al.SDN for QUIC:An enhanced architecture with improved connection establishment[C]//Proceedings of the 33rd Annual ACM Symposium on Applied Computing.2018:2136-2139.
[73]WANG P,BIANCO C,RIIHIJARVI J,et al.Implementationand performance evaluation of the quic protocol in linux kernel[C]//Proceedings of the 21st ACM International Conference on Modeling,Analysis and Simulation of Wireless and Mobile Systems.2018:227-234.
[74]CUI Y,LI T,LIU C,et al.Innovating transport with QUIC:Design approaches and research challenges[J].IEEE Internet Computing,2017,21(2):72-76.
[75]LI X B,CHEN Y,ZHOU M Y,et al.Internet Data Transfer Protocol QUIC:A Survey[J].Journal of Computer Research and Development,2020,57 (9):1864-1876.
[76]FISCHLIN M,GUNTHER F.Multi-stage key exchange and the case of Google's QUIC protocol[C]//Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security.2014:1193-1204.
[77]LYCHEV R,JERO S,BOLDYREVA A,et al.How secure and quick is QUIC? Provable security and performance analyses[C]//2015 IEEE Symposium on Security and Privacy.IEEE,2015:214-231.
[78]JAGER T,SCHWENK J,SOMOROVSKY J.On the security of TLS 1.3 and QUIC against weaknesses in PKCS# 1 v1.5 encryption[C]//Proceedings of the 22nd ACM SIGSAC Confe-rence on Computer and Communications Security.2015:1185-1196.
[79]AVIRAM N,SCHINZEL S,SOMOROVSKY J,et al.{DR-ON}:Breaking {TLS} Using SSLv2[C]//25th {USNIX} SecuritySymposium ({USENIX} Security 16).2016:689-706.
[80]HAMILTON R.QUIC:A UDP-Based Secure and ReliableTransport for HTTP/2[EB/OL].(2016-01-13).https://tools.ietf.org /html/draft-tsvwg-quic-protocol-02.
[81]LANGLEY A,RIDDOCH A,WILK A,et al.The quic transport protocol:Design and internet-scale deployment[C]//Procee-dings of the Conference of the ACM Special Interest Group on Data Communication.2017:183-196.
[82]MICHEL F,CONINCK Q D,BONAVENTURE O.QUIC-FEC:Bringing the benefits of Forward Erasure Correction to QUIC[C]//2019 IFIP Networking Conference (IFIP Networking).IEEE,2019:1-9.
[83]MICHEL F,CONINCK Q D,BONAVENTURE O.Addingforward erasure correction to quic[J].arXiv:1809.04822,2018.
[84]IYENGAR J,SWETT I.QUIC Loss Detection and Congestion Control[EB/OL].(2021-04-16).https://datatracker.ietf.org/doc/html /draft-ietf-quic-recovery-32.
[85]GARRIDO P,SANCHEZ I,FERLIN S,et al.rQUIC:Integrating FEC with QUIC for robust wireless communications[C]//2019 IEEE Global Communications Conference(GLOBECOM).IEEE,2019:1-7.
[86]PALMER M,KRUGER T,CHANDRASEKARAN B,et al.The quic fix for optimal video streaming[C]//Proceedings of the Workshop on the Evolution,Performance,and Interoperability of QUIC.2018:43-49.
[1] 姜伟伟,刘光杰,戴跃伟.
基于Snort的Modbus TCP工控协议异常数据检测规则设计
Design of Modbus TCP Industrial Control Network Protocol Abnormal Data Detection Rules Based on Snort
计算机科学, 2015, 42(11): 212-216. https://doi.org/10.11896/j.issn.1002-137X.2015.11.044
[2] 王群,钱焕延.
面向M2M通信的传输控制机制与方法
Methods and Mechanisms on Transmission Control for M2M Communications
计算机科学, 2013, 40(11): 74-80.
[3] .
多TCP协议多链路端拥塞控制特性研究

计算机科学, 2009, 36(5): 88-91.
[4] .
Internet端到端拥塞控制研究综述

计算机科学, 2008, 35(2): 6-12.
[5] 王伟 蔡皖东 李勇军.
基于网络断层扫描的网格网络性能测量分析

计算机科学, 2007, 34(5): 45-47.
[6] 王俊峰 周明天.
高速网络性能测量研究

计算机科学, 2004, 31(9): 66-71.
[7] 陈尚兵 王彬 钱积新.
TCP拥塞控制综述

计算机科学, 2002, 29(5): 32-35.
[8] 徐昌彪 隆克平 杨士中.
D_AIMD——一种改进的TCP拥塞控制机制

计算机科学, 2002, 29(4): 95-97.
[9] 王茜 隆克平 程时端 张润彤.
Internet网络的TCP友好控制机制

计算机科学, 2002, 29(3): 54-56.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!