fec浅析

fec (Forward Error Correction) ,向前纠错。

fec 主要用于在传输过程中,发现带宽时够的,但是会有丢包的情况。

一般用于udp传输,比如webrtc传视频, 视频会议传输视频。

另外提一下的是,udp传输视频一般会把一帧视频分为很多个分组,为啥要分组,因为如果不分组,传输过程中丢失了任何一个分组,整帧数据就丢失了。按mtu以下的分组传输好处是,可以实现udt,和fec了。

比如一帧分了5个分组,增加一个fec冗余包,当前面5个分组中丢失任何一个,都可以通过这个fec冗余分组恢复出来。

那么fec是如何做到恢复任何一个分组的呢?这里讲到几种矩阵,

1 范德蒙特矩阵

fec浅析_第1张图片

2 柯西矩阵

fec浅析_第2张图片

乍一看,上面的矩阵好像还有点复杂,那么为啥选择上面的这两种矩阵呢?

原因是这两矩阵可逆,什么叫可逆矩阵。举个简单的例子

方程组

x + y + z = 10

2x + 2y + 2z = 20

4x + y + 2z = 19

矩阵{1, 1, 1

         2, 2, 2}

这个方程组无法求解,因为其中一行和另一行存在线性关系。

可逆矩阵的意义就是,如果通过矩阵构造一个方程组,这个方程组是可以求解的。

可以求解的方程组才能恢复其中任意一组丢失的分组数据。

 

 

你可能感兴趣的:(fec,矩阵)