当前位置: 首页 > 专利查询>深圳大学专利>正文

一种基于循环移位的网络编解码方法、装置及相关组件制造方法及图纸

技术编号:29261070 阅读:25 留言:0更新日期:2021-07-13 17:34
本发明专利技术公开了一种基于循环移位的网络编解码方法、装置及相关组件,该方法包括:基于(n,k)参数和预设的编码准则构造一基矩阵;通过对基矩阵进行循环移位构造得到移位矩阵;获取原始数据,并将原始数据划分为k个源包;将k个源包作为系统包,同时按照移位矩阵对k个源包进行m次移位和编码,得到m个校验包;结合系统包和校验包,得到n个编码包,其中,n=k+m;解码过程包括:在n个编码包中随机选取k个编码包,然后在k个编码包中查找具有暴露位的编码包,并获取暴露位,再将暴露位回代至其他编码包中,然后按照预设的运算方法消除暴露位;以此类推,直至k个编码包中的所有暴露位被消除。本发明专利技术通过增量差分和循环移位可有效减少编解码开销。

【技术实现步骤摘要】
一种基于循环移位的网络编解码方法、装置及相关组件
本专利技术涉及计算机软件
,特别涉及一种基于循环移位的网络编解码方法、装置及相关组件。
技术介绍
分布式系统的核心思想是通过编码来获得(n,k)组合特性(CombinationProperty,CP),即将k个原始独立的任务编码成n个(n≥k),在这n个任务结果中,任意k个就可以恢复原始k个存储或者计算结果。移位加编码(Shift-and-Add,SA)只包含移位与加法运算,避免了线性编码阶段大量的乘法运算,减少了计算复杂度。与SA相对应的是锯齿解码(ZigzagDecoding,ZD),ZD可以避免乘法和除法等大量的复杂运算,只需要简单的回代算法,极大地减少了计算负担。此外,将同时拥有CP性质和可以ZD的码叫做CP-ZD码。现阶段CP-ZD码的发展现状如下:1.2013年,一种拥有ZD性质的编码方案被提出,此编码称为Inc-Diff,此码证明了增加差异性是ZD的必要条件,基于这个条件,第一个同时具有CP和ZD特性被创立,称之为CP-ZD。这个编码的优点是可以快速解码,它的时间复杂度与L线性相关为o(k2L)。但此编码仍然存在一些缺点,Inc-Diff编码不对称并且在n与k比较接近的时候,其存储开销比较大,其存储开销为m(k-1),其中m=n-k。2.2017年,拥有较小开销的ZD性质的编码方案-循环移位置换矩阵编码被提出,将这种编码称之为Cyc-Shift,这种码具有较低的编解码复杂度,其存储开销较Inc-Dif要小,为但此码只能应用于n≤2k的场景,不具有一般性。3.2019年,Base-Shift码被提出。相较于之前的Inc-Diff、Cyc-Shift来说,它的开销较小,为其中符号表示向上取整。Base-Shift码可以适用于任何(n,k)的场景,然而,在m/k比例越大时,此码的开销也很大,仍然给通信成本带来很大的负担。现有CP-ZD码的缺陷是开销整体较大,在编码包m越大时,开销增长越快,通信成本很高,不符合大规模分布式系统的应用。
技术实现思路
本专利技术实施例提供了一种基于循环移位的网络编解码方法、装置、计算机设备及存储介质,旨在减少现有CP-ZD码在编解码时的开销。第一方面,本专利技术实施例提供了一种基于循环移位的网络编解码方法,包括:基于(n,k)参数和预设的编码准则构造一基矩阵;通过对所述基矩阵进行循环移位构造得到移位矩阵;获取原始数据,并将所述原始数据划分为k个源包;将所述k个源包作为系统包,同时按照所述移位矩阵对所述k个源包进行m次移位和编码,得到m个校验包;结合所述系统包和校验包,得到n个编码包,其中,n=k+m;所述解码过程包括:在所述n个编码包中随机选取k个编码包,然后在所述k个编码包中查找具有与其他位没有加法运算的暴露位的编码包,并获取所述暴露位,再将所述暴露位回代至其他编码包中,然后按照预设的运算方法消除所述暴露位;以此类推,直至k个编码包中的所有暴露位被消除。第二方面,本专利技术实施例提供了一种基于循环移位的网络编解码装置,包括编码模块和解码模块,所述编码模块包括:基矩阵构造单元,用于基于(n,k)参数和预设的编码准则构造一基矩阵;移位矩阵构造单元,用于通过对所述基矩阵进行循环移位构造得到移位矩阵;划分单元,用于获取原始数据,并将所述原始数据划分为k个源包;移位和编码单元,用于将所述k个源包作为系统包,同时按照所述移位矩阵对所述k个源包进行m次移位和编码,得到m个校验包;第一结合单元,用于结合所述系统包和校验包,得到n个编码包,其中,n=k+m;所述解码模块包括:第一消除单元,用于在所述n个编码包中随机选取k个编码包,然后在所述k个编码包中查找具有与其他位没有加法运算的暴露位的编码包,并获取所述暴露位,再将所述暴露位回代至其他编码包中,然后按照预设的运算方法消除所述暴露位;第二消除单元,用于以此类推,直至k个编码包中的所有暴露位被消除。第三方面,本专利技术实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的基于循环移位的网络编解码方法。第四方面,本专利技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的基于循环移位的网络编解码方法。本专利技术实施例提供了一种基于循环移位的网络编解码方法、装置、计算机设备及存储介质,该方法包括:基于(n,k)参数和预设的编码准则构造一基矩阵;通过对所述基矩阵进行循环移位构造得到移位矩阵;获取原始数据,并将所述原始数据划分为k个源包;将所述k个源包作为系统包,同时按照所述移位矩阵对所述k个源包进行m次移位和编码,得到m个校验包;结合所述系统包和校验包,得到n个编码包,其中,n=k+m;所述解码过程包括:在所述n个编码包中随机选取k个编码包,然后在所述k个编码包中查找具有与其他位没有加法运算的暴露位的编码包,并获取所述暴露位,再将所述暴露位回代至其他编码包中,然后按照预设的运算方法消除所述暴露位;以此类推,直至k个编码包中的所有暴露位被消除。本专利技术实施例基于增量差分和循环移位进行网络编解码,可以有效减少编解码开销。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种基于循环移位的网络编解码方法中编码过程的流程示意图;图2为本专利技术实施例提供的一种基于循环移位的网络编解码方法中解码过程的流程示意图;图3为本专利技术实施例提供的一种基于循环移位的网络编解码方法中的示例示意图;图4为本专利技术实施例提供的一种基于循环移位的网络编解码方法中的另一示例示意图;图5为本专利技术实施例提供的一种基于循环移位的网络编解码装置中编码模块的示意性框图;图6为本专利技术实施例提供的一种基于循环移位的网络编解码装置中解码模块的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本本文档来自技高网
...

【技术保护点】
1.一种基于循环移位的网络编解码方法,包括编码过程和解码过程,其特征在于,所述编码过程包括:/n基于(n,k)参数和预设的编码准则构造一基矩阵;/n通过对所述基矩阵进行循环移位构造得到移位矩阵;/n获取原始数据,并将所述原始数据划分为k个源包;/n将所述k个源包作为系统包,同时按照所述移位矩阵对所述k个源包进行m次移位和编码,得到m个校验包;/n结合所述系统包和校验包,得到n个编码包,其中,n=k+m;/n所述解码过程包括:/n在所述n个编码包中随机选取k个编码包,然后在所述k个编码包中查找具有与其他位没有加法运算的暴露位的编码包,并获取所述暴露位,再将所述暴露位回代至其他编码包中,然后按照预设的运算方法消除所述暴露位;/n以此类推,直至k个编码包中的所有暴露位被消除。/n

【技术特征摘要】
1.一种基于循环移位的网络编解码方法,包括编码过程和解码过程,其特征在于,所述编码过程包括:
基于(n,k)参数和预设的编码准则构造一基矩阵;
通过对所述基矩阵进行循环移位构造得到移位矩阵;
获取原始数据,并将所述原始数据划分为k个源包;
将所述k个源包作为系统包,同时按照所述移位矩阵对所述k个源包进行m次移位和编码,得到m个校验包;
结合所述系统包和校验包,得到n个编码包,其中,n=k+m;
所述解码过程包括:
在所述n个编码包中随机选取k个编码包,然后在所述k个编码包中查找具有与其他位没有加法运算的暴露位的编码包,并获取所述暴露位,再将所述暴露位回代至其他编码包中,然后按照预设的运算方法消除所述暴露位;
以此类推,直至k个编码包中的所有暴露位被消除。


2.根据权利要求1所述的基于循环移位的网络编解码方法,其特征在于,所述基于(n,k)参数和预设的编码准则构造一基矩阵包括:
设置一大小为r×k的基矩阵TB;其中,所述基矩阵TB定义为:
TB=[ti,j]=[J1,J2,…,Jk]
式中,Jj表示TB的第j列;
按照下式确定所述基矩阵TB行的大小r:



式中,n为n个编码包,k为k个系统包,m为m个校验包,表示向上取整;
结合预设的编码准则将所述基矩阵TB中的元素构造为:其中,
将所述基矩阵TB的第一列全部设置为0,并从第二列开始,每列j中各个元素ti,j与前一列j-1中的元素ti,j-1的差从1开始逐次增加1,以倒N字形逐次增加,以此构造得到所述基矩阵TB。


3.根据权利要求2所述的基于循环移位的网络编解码方法,其特征在于,所述通过对所述基矩阵进行循环移位构造得到移位矩阵包括:
将基矩阵TB中的列向量J1、J2、J3、…、Jk分别往右循环移位一位和二位,移位后分别得到目标矩阵T1和T2:
T1=[Jk,J1,J2,…,Jk-1]
T2=[Jk-1,Jk,J1,…,Jk-2];
依此对所述基矩阵TB共循环右移k-1次后,得到k-1个目标矩阵T1、T2、…、Tk-1,且其中Tk-1矩阵为:
Tk-1=[J2,J3,…,Jk,J1];
将所述基矩阵TB和所述k-1个目标矩阵垂直链接得到一大小为rk×k的链接矩阵Tc;
在所述链接矩阵中选取前m行构成所述移位矩阵T。


4.根据权利要求2所述的基于循环移位的网路编解码方法,其特征在于,所述编码准则为任意两个源包在不同编码包中的移位需相对不同。


5.根据权利要求1所述的基于循环移位的网络编解码方法,其特征在于,所述同时按照所述移位矩阵对所述k个源包进行m次移位和编码,得到m个校验包,包括:
设置第i个源包si的长度为L,且L位数据分别表示为si,1、…、si,L,i∈{1,2,…,...

【专利技术属性】
技术研发人员:代明军张婵婷邓海燕
申请(专利权)人:深圳大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1