纠错码(error correcting code),在传输过程中发生错误后能在收端自行发现或纠正的码。
仅用来发现错误的码一般常称为检错码。
为使一种码具有检错或纠错能力,须对原码字增加多余的码元,以扩大码字之间的差别 ,即把原码字按某种规则变成有一定剩余度(见信源编码)的码字,并使每个码字的码之间有一定的关系。关系的建立称为编码。码字到达收端后,可以根据编码规则是否满足以判定有无错误。当不能满足时,按一定规则确定错误所在位置并予以纠正。纠错并恢复原码字的过程称为译码。检错码与其他手段结合使用,可以纠错。
纠错技术之FEC(向前纠错)
在工程实践中并不存在理想的数字信道,数字信号在各种媒质的传输过程中就会产生误码和抖动,从而导致线路的传输质量下降。
为解决此问题,需要引入纠错机制。实用的纠错码是靠牺牲带宽效率来换取可靠性,同时也增加了通信设备的复杂度。纠错技术是一种差错控制技术,按照应用场景和侧重点不同,可以分为两类:
- 检错码:重在发现误码,比如奇偶监督编码。
- 纠错码:要求能自动纠正差错,比如BCH码、RS码、汉明码。
二者没有本质区别,只是应用场合不同而侧重的性能参数不同。FEC属于后者。
FEC的特点及应用
FEC的全称是前向纠错,一种数据编码的技术,数据的接收方可以根据编码检查传输过程中的误码。前向是指纠错过程是单方向的,不存在差错的信息反馈。
- 无需重传,实时性高
- FEC启动后,能够容忍线路上更大的噪声,但是有额外的带宽开销(用户需要根据实际情况在传输质量和带宽间做出选择)
- 适合于数据到达对端后通过自身来查验并纠正的业务,不适合于查验有重传机制的业务
- 可用于网络状况较差时的数据传输,如:在工程使用中,ONT距离远,线路质量差,导致光功率预算裕量不足或线路误码率高,推荐开启FEC
- 可用于要求时延较小的业务(因为此时如果采用重传,则时延会增大)
通过在发射端对信号进行一定的冗余编码,并在接收端根据纠错码对数据进行差错检测,如发现差错,由接收方进行纠正。常见的FEC技术有汉明码、RS编码以及卷积码等。
例如
GPON采用的FEC算法是RS(255,239)算法,完全遵从ITU-T G.884.3的要求。FEC码字长255字节,由239字节的正常数据和16字节的冗余开销构成。考虑多帧尾碎片开销,GPON系统开启FEC后,系统带宽降低为原吞吐量的90%左右。GPON在传输层使用FEC算法,大约可以将线路传输的10-3误码降低到10-12。
原文地址:https://www.cnblogs.com/cainiao-chuanqi/p/12107314.html