首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种基于分组网络编码的网络首播预加载方法及系统_中山大学_201710396191.1 

申请/专利权人:中山大学

申请日:2017-05-27

公开(公告)日:2020-04-14

公开(公告)号:CN107222756B

主分类号:H04N21/231(20110101)

分类号:H04N21/231(20110101);H04N21/234(20110101);H04N21/433(20110101);H04N21/44(20110101)

优先权:

专利状态码:有效-授权

法律状态:2020.04.14#授权;2017.10.27#实质审查的生效;2017.09.29#公开

摘要:本发明属于网络编码领域,涉及一种基于分组网络编码的网络首播预加载方法及系统。包括以下步骤:S1.将输入视频进行处理后得到n个子视频;S2.将n个子视频平均分成k组,记为D1,D2......Dk,则每一组中具有子视频数c,根据每组子视频数c,生成c行c列线性无关的随机矩阵A;S3.进行Di×A的运算,生成该组的编码Ei;S4.发布服务器将S3生成的k个编码,分别按照(i,Ei),i∈[1,k]对的形式发送给用户;S5.服务器将数据对(A,m1)发送给用户,用户根据数据对(A,m1)进行计算,从而得到恢复后的数据。本发明提供的一种基于分组网络编码的网络首播预加载方法及系统,利用线性编码方案以及双向解码方案,大大减少了计算量,也加快了解码速度。

主权项:1.一种基于分组网络编码的网络首播预加载方法,其特征在于,包括以下步骤:S1.数据处理,将输入视频进行资源处理和资源再处理后得到n个子视频;所述的资源处理为将输入长度为t的视频文件划分为长度为的n个子视频:m1,m2,m3……mn;所述的资源再处理为按照M1=m1⊕m2,M2=m2⊕m3......Mn-1=mn-1⊕mn,Mn=mn⊕m1的规律将子视频再处理成M1,M2…..Mn,共n个子视频;S2.选取随机矩阵,针对S1得到的n个子视频,将n个子视频平均分成k组,记为D1,D2......Dk,则每一组中具有子视频数根据每组子视频数c,生成c行c列线性无关的随机矩阵A;S3.对数据进行编码;当用户开始预约首播资源时,服务器对由S2得到的每一个分组Di,i∈[1,k],进行Di×A的运算,生成该组的编码Ei,所有k组的编码记为E1,E2......Ek;S4.服务器将S3生成的k个编码,分别按照i,Ei,i∈[1,k]对的形式发送给用户,i作为序号表示这是第几组子视频生成的编码,用户预先下载这些数据到本地;S5.用户端进行解码;当首播时间到时,服务器将数据对A,m1发送给用户,用户根据数据对A,m1进行计算,从而得到恢复后的数据。

全文数据:一种基于分组网络编码的网络首播预加载方法及系统技术领域[0001]本发明属于网络编码领域,更具体地,涉及一种基于分组网络编码的网络首播预加载方法及系统。背景技术[0002]在传统意义上,网络中的各节点一般是使用“存储转发”机制的路由器,由于传统观点认为“在中间节点上对数据进行加工不会带来收益”,所以路由器不对信息本身进行处理。而网络编码技术则是在节点上对数据进行编码处理,以充分利用网络资源,从而提高信息的传输率、提高网络带宽。网络编码是一种融合了路由和编码的信息交换技术,它的思想是在网络中的各个节点上对各条信道上收到的信息进行线性或者非线性的处理,然后转发给下游节点,中间节点扮演着编码器或信号处理器的角色。简单来说,网络编码的核心思想就是允许网络节点对传输信息进行编码处理,而终端节点则对接收到的编码及相关信息进行解码处理,从而还原信息,在这过程中,网络中传播的数据是进行编码处理的数据,具有一定的隐秘性,只有得到相关线性变量才能使其恢复可见。[0003]网络首播,特别是当今网络视频中一些周更的、非常火爆的网剧,这些网剧往往具有定期更新、定时更新、收视人数多等特点。视频发布方为了保障资源的新鲜度,防止片源提前流出,只能采取多个发布服务器在同一时段,进行负载均衡,但是由于观看人数众多,网络时常会卡,严重影响观众的观看体验。为解决这个问题,当下一般采取的方案有两种,一是从网络出发。通过网站架构技术,实现多个服务器之间的负载均衡。二是从数据源的角度出发。比如专利“一种视频数据的加载及播放方法技术”(专利号:201510436690中提出的采用分离数据源属性形成多个属性矩阵的方式以提高用户体验。又或者是采用加密技术,用户预先下载网站客户端等方式,然后发布方通过加密手段,提前将资源加密成密文提供给用户预先下载,等更新时间一到,再提供密钥进行资源解密,这样就完全隔绝了首播时的网络延迟不安因素。[0004]上述的几种技术虽然从侧面都能给网络首播的稳定播放带来一定的改变,但依然存在一些问题。第一种方式中的通过网站架构技术来实现服务器的负载均衡,这是一种被动的方式,它是从资源发布方自身的角度出发,解决自身技术难点,但是目前而言,众多大型的网络资源发布方规模都很庞大,技术已经十分成熟,再想从自身角度进行改变,难度较大。第二种方式中的两种方法,第一种需要将每个子数据分解成三个存储矩阵,这样将带来两个方面的问题,一是计算量庞大,网络资源,尤其是视频资源,往往数据量很大,每个子数据都需要进行二次划分,加大了计算难度。二是增大了不稳定性,正如前面所说的,网络中对每个子数据都需要传送三个属性矩阵,一旦动态基准数据或静态基准数据任何一项丢失,都将造成播放的不稳定。上诉的第三种方法,通过加密,用户提前下载好加密后的资源,这样虽然很好的解决了资源的新鲜性以及首播带来的网络延时,但是目前对称加密方式往往代价很高,这种方法最大的问题就是解密耗时长,可能用户的体验甚至赶不上不使用该技术。发明内容[0005]本发明的目的在于克服现有技术的不足,提供一种基于分组网络编码的网络首播预加载方法,该技术通过设计数据编码模块以及用户解码模块,减小了计算量,同时也减小了网络传输压力。[0006]为解决上述问题,本发明提供的方案是:一种基于分组网络编码的网络首播预加载方法,其中,包括以下步骤:[0007]SI.数据处理,将输入视频进行资源处理和资源再处理后得到η个子视频;[0008]S2.选取随机矩阵,针对Sl得到的η个子视频,将η个子视频平均分成D2......Dk,则每一组中具有子视频数.根据每组子视频数c,生成cSc列线性无关的随机矩阵A;[0009]S3.对数据进行编码;当用户为首播资源时,发布服务器对由S2得到的每一个分组Dnie[l,k],进行D1XA的运算,生成该组的编码E1,所有k组的编码记为E1,E2......Ek;[0010]S4.发布服务器将S3生成的k个编码,分别按照(IE1,ie[l,k]对的形式发送给用户,i作为序号表示这是第几组子视频生成的编码,用户预先下载这些数据到本地;[0011]S5.用户端进行解码;当首播时间到时,服务器将数据对A,nu发送给用户,用户根据数据对A,mi进行计算,从而得到恢复后的数据。[0012]进一步地,所述的资源处理为将输入长度为t的视频文件划分为长度戈的η个子视步页:mi,m2,m3......mn;[0013]进一步地,所述的资源再处理为按照Mi=mi®m2,M2=m2®m3......Mn-I=mn-i®mn,Mn=mn®mi的规律将子视频再处理成Μι,Μ2·"··Μη,共n个子视频。[0014]进一步地,所述的用户解码包括编码数据解码以及双向恢复。[0015]进一步地,所述的编码数据解码为用户端根据cSc列线性无关的随机矩阵A,计算得到f1,然后,根据D1=E1XA^1,ie[I,k],从而恢复出所有分组D1,D2......Dk,从而得到Ml,M2····.Mn序列。[0016]进一步地,所述的双向恢复为根据Mi=mi®m2,M2=m2®m3......Mn-I=mn-i®mn,Mn=mn®mi的规律,通过使用收到的原数据块mi,从序列的两端往中间双向的依次恢复m2,mn,m3,mn-i……,直到所有数据恢复,根据其序号重新排列成H^m2……mn。[0017]一种基于分组网络编码的网络首播预加载系统,其中,包括数据处理模块、随机矩阵选取模块、编码模块、数据对发送模块以及用户解码模块;[0018]所述的数据处理模块用于对输入视频进行资源处理和资源再处理,处理后得到η个子视频;[0019]所述的随机矩阵选取模块用于针对SI得到的η个子视频,将η个子视频平均分成k组,记为D1,D2......Dk,则每一组中具有子视频数.根据每组子视频数c,生成cSc列线性无关的随机矩阵A;[0020]所述的编码模块用于对随机矩阵选取模块得到的数据D1,ie[I,k]进行D1XA的运算,生成该组的编码E1,所有k组的编码记为E1,E2......Ek;[0021]所述的数据对发送模块用于对数据编码模块生成的k组编码,按照(IE1,ie[1,k]对的形式发送给用户,i作为序号表示这是第几组子视频生成的编码,用户预先下载这些数据到本地;[0022]所述的用户解码模块用于客户端解码,当首播时间到时,服务器将数据对A,nu发送给用户,用户根据数据对A,mi进行计算,从而得到恢复后的数据。[0023]进一步地,所述的数据处理模块包括资源处理模块和资源再处理模块;所述的资源处理模块用于将输入长度为t的视频文件划分为长度为.扑个子视频=m3......mn;所述的资源再处理模块用于按照Mi=mi®m2,M2=m2®m3......Mn—i=mn—i®mn,Mn=mn®mi的规律将子视频再处理成Mi,M2…·.Mn,共n个子视频。[0024]进一步地,所述的用户解码模块包括编码数据解码模块以及双向恢复模块;所述的编码数据解码模块用于用户端根据c行c列线性无关的随机矩阵A,计算得到fS然后,根据Di=EiXA—1,ie[I,k],从而恢复出所有分组D1,D2......Dk,从而得到M1,M2···..Mn序列;所述的双向恢复模块用于根据Mi=mi®m2,M2=ni2m3......Mn—i=mn—i®mn,Mn=mn®mi的规律,通过使用收到的原数据块mi,从序列的两端往中间双向的依次恢复m2,mn,m3,mn—I......,直到所有数据恢复,根据其序号重新排列成m,m2……mn。[0025]与现有技术相比,有益效果是:本发明提供的一种基于分组网络编码的网络首播预加载方法及系统,利用线性编码方案以及双向解码方案,大大减少了计算量,也加快了解码速度,提高了用户体验水平,并且保证了数据的隐秘性,保证了首播资源的新鲜度。附图说明[0026]图1为本发明的整体结构示意图。[0027]图2为本发明整体流程图。具体实施方式[0028]为了使本技术领域的人员更好的理解本发明方案,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清除、完整的描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。[0029]如图1所示,一种基于分组网络编码的网络首播预加载方法,其中,包括以下步骤:[0030]SI.数据处理,将输入视频进行资源处理和资源再处理后得到η个子视频;[0031]S2.选取随机矩阵,针对Sl得到的η个子视频,将η个子视频平均分成D2......Dk,则每一组中具有子视频1,根据每组子视频数c,生成cSc列线性无关的随机矩阵A;[0032]S3.对数据进行编码;当用户开始预约首播资源时,发布服务器对由S2得到的每一个分组Dnie[l,k],进行D1XA的运算,生成该组的编码E1,所有k组的编码记为E1,E2......Ek;[0033]S4.发布服务器将S3生成的k个编码,分别按照(IE1,ie[l,k]对的形式发送给用户,i作为序号表示这是第几组子视频生成的编码,用户预先下载这些数据到本地;[0034]S5.用户端进行解码;当首播时间到时,服务器将数据对A,nu发送给用户,用户根据数据对A,mi进行计算,从而得到恢复后的数据。[0035]进一步地,资源处理为将输入长度为t的视频文件划分为长度为的η个子视步页:mi,m2,m3......mn;[0036]具体地,资源再处理为按照Mi=mi®m2,M2=m2m3......Μη—i=mn—ι®mn,Mn=mn®mi的规律将子视频再处理成Mi,M2…..Mn,共n个子视频。[0037]其中,用户解码包括编码数据解码以及双向恢复。[0038]另外,编码数据解码为用户端根据cSc列线性无关的随机矩阵A,计算得到f1,然后,根据Di=EiXA—1,ie[I,k],从而恢复出所有分组D1,D2......Dk,从而得到M1,M2…..Mn序列。[0039]其中,双向恢复为根据Mi=mi®m2,M2=m2®m3......Mn—i=mn—i®mn,Mn=mn®mi的规律,通过使用收到的原数据块mi,从序列的两端往中间双向的依次恢复m2,mn,m3,mn-i……,直到所有数据恢复,根据其序号重新排列成H^m2……mn。[0040]如图2所示,一种基于分组网络编码的网络首播预加载系统,其中,包括数据处理模块、随机矩阵选取模块、编码模块、数据对发送模块以及用户解码模块;[0041]数据处理模块用于对输入视频进行资源处理和资源再处理,处理后得到η个子视频;[0042]随机矩阵选取模块用于针对Sl得到的η个子视频,将η个子视频平均分成k组,记为Di,D2......Dk,则每一组中具有子视频数!,根据每组子视频数c,生成cSc列线性无关的随机矩阵A;[0043]编码模块用于对随机矩阵选取模块得到的数据D1,ie[I,k]进行D1XA的运算,生成该组的编码E1,所有k组的编码记为E1,E2......Ek;[0044]数据对发送模块用于对数据编码模块生成的k组编码,按照(IE1,ie[l,k]对的形式发送给用户,i作为序号表示这是第几组子视频生成的编码,用户预先下载这些数据到本地;[0045]用户解码模块用于客户端解码,当首播时间到时,服务器将数据对A,nu发送给用户,用户根据数据对A,mi进行计算,从而得到恢复后的数据。[0046]其中,数据处理模块包括资源处理模块和资源再处理模块;资源处理模块用于将输入长度为t的视频文件划分为长度为的η个子视频:m3……mn;资源再处理模块用于按照Mi=mi®m2,M2=ni2m3......Mn—i=mn—i®mn,Mn=mn®mi的规律将子视频再处理成Mi,M2…..Mn,共η个子视频。[0047]另外,用户解码模块包括编码数据解码模块以及双向恢复模块;编码数据解码模块用于用户端根据3行3列线性无关的随机矩阵Α,计算得到A'然后,根据D1=E1XA^ie[I,k],从而恢复出所有分组Di,D2......Dk,从而得到Mi,M2…..Mn序列;双向恢复模块用于根据Mi=mi®m2,M2=m2®m3......Mn-i=mn-1®mn,Mn=mn®mi的规律,通过使用收至Ij的原数据块mi,从序列的两端往中间双向的依次恢复im,mn,m3,mn—1......,直到所有数据恢复,根据其序号重新排列成mi,m2......mn。[0048]实施例I[0049]假设存在长度为48分钟的首播资源R,具体操作可如下:[0050]步骤1:发布方按照3分钟的单位时长将原48分钟的资源R,划分成大小相等的16个时间片,记为mi,m2......mi6;[0051]步骤2:按照Mi=mi®m2,M2=m2®m3......Mi5=mi5®mi6,Mi6=mi6®mi的规律将子视频再处理成Ml,M2···..Ml6,共16个子资源;[0052]步骤3:选择分组数目k为8,将上述16个子资源分成8组,分别SD1,D2......D8,其中0:包含M1、M2,D2包含M3、M4,依次类推;[0053]步骤4:选择2行2列线性无关的随机矩阵A,为[[1,2],[-1,-3]];[0054]步骤5:对每一个分组Di,ie[1,8],进行DiXA的运算,生成该组的编码Ei。最后获得所有8的编码E1,E2......Es;[0055]步骤6:按照(LE1,ie[1,8]对的形式将编码后的数据发送给用户;[0056]步骤7:用户预先下载i,Ei,ie[1,8]对;[0057]步骤8:当首播时间到时,发布方发送A,mi数据对给用户;[0058]步骤9:用户根据随机矩阵A,计算得到A'为[[3,2],[_1,-1]];[0059]步骤10:根据Di=EiXA—1,ie[l,8],从而恢复出所有分组D1,D2......D8,从而得至IjM1,M2…·.M16序列;WD1为例,已知E1=D1XAJPE1=[MhM2]X[[1,2],[-1,-3]]JlJE1=[Mi-M2,2Mi-3M2]JiXA—1可得Di=[Mi,M2];[0060]步骤11:根据Mi=mi®m2,M2=m2®m3......Mi5=mi5®mi6,Mi6=mi6®mi的规律,通过使用收到的原数据块mi,从序列的两端往中间双向的依次恢复Π12,Π116,Π13,Π115,IM,Π114,Π15,mi3,Π16,mi2,Π17,mil,Π18,mio,Π19;所谓的双向恢复即可以从Ml,M2…..Ml6序列的两端同时往中间恢复,不需要按照从施到施6的顺序单向恢复,这将恢复时长缩短了一半。[0061]步骤12:根据序号重新排列成mi,m2......mi6。[0062]显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

权利要求:1.一种基于分组网络编码的网络首播预加载方法,其特征在于,包括以下步骤:51.数据处理,将输入视频进行资源处理和资源再处理后得到η个子视频;52.选取随机矩阵,针对Sl得到的η个子视频,将η个子视频平均分成D2......Dk,则每一组中具有子视频数根据每组子视频数c,生成cSc列线性无关的随机矩阵A;53.对数据进行编码;当用户开始预约首播资源时,发布服务器对由S2得到的每一个分组Di,ie[I,k],进行DiXA的运算,生成该组的编码Ei,所有k组的编码记为E1,E2......Ek;54.发布服务器将S3生成的k个编码,分别按照i,E1,ie[I,k]对的形式发送给用户,i作为序号表示这是第几组子视频生成的编码,用户预先下载这些数据到本地;55.用户端进行解码;当首播时间到时,服务器将数据对A,nu发送给用户,用户根据数据对A,mi进行计算,从而得到恢复后的数据。2.根据权利要求1所述的一种基于分组网络编码的网络首播预加载方法,其特征在于,所述的资源处理为将输入长度为t的视频文件划分为长度为的η个子视频:nu,m2,m3......mn〇3.根据权利要求1所述的一种基于分组网络编码的网络首播预加载方法,其特征在于,所述的资源再处理为按照:的规律将子视频再处理成Ml,M2···..Mn,共η个子视频。4.根据权利要求1所述的一种基于分组网络编码的网络首播预加载方法,其特征在于,所述的用户解码包括编码数据解码以及双向恢复。5.根据权利要求1所述的一种基于分组网络编码的网络首播预加载方法,其特征在于,所述的编码数据解码为用户端根据c行c列线性无关的随机矩阵Α,计算得到Α^1,然后,根据Di=EiXΑ—1,ie[I,k],从而恢复出所有分组D1,D2......Dk,从而得到M1,M2···..Mn序列。6.根据权利要求1所述的一种基于分组网络编码的网络首播预加载方法,其特征在于,所述的双向恢复为根据I的规律,通过使用收到的原数据块mi,从序列的两端往中间双向的依次恢复m2,mn,m3,mn—i......,直到所有数据恢复,根据其序号重新排列成m,m2……mn。7.—种基于分组网络编码的网络首播预加载系统,其特征在于,包括数据处理模块、随机矩阵选取模块、编码模块、数据对发送模块以及用户解码模块;所述的数据处理模块用于对输入视频进行资源处理和资源再处理,处理后得到η个子视频;所述的随机矩阵选取模块用于针对Sl得到的η个子视频,将η个子视频平均分成k组,记SD^D2......Dk,则每一组中具有子视频数,根据每组子视频数c,生成cSc列线性无关的随机矩阵A;所述的编码模块用于对随机矩阵选取模块得到的数据DnietUk]进行D1XA的运算,生成该组的编码Ei,所有k组的编码记为E1,E2......Ek;所述的数据对发送模块用于对数据编码模块生成的k组编码,按照(i,E1,ie[I,k]对的形式发送给用户,i作为序号表示这是第几组子视频生成的编码,用户预先下载这些数据到本地;所述的用户解码模块用于客户端解码,当首播时间到时,服务器将数据对A,mi发送给用户,用户根据数据对A,mi进行计算,从而得到恢复后的数据。8.根据权利要求7所述的一种基于分组网络编码的网络首播预加载系统,其特征在于,所述的数据处理模块包括资源处理模块和资源再处理模块;所述的资源处理模块用于将输入长度为t的视频文件划分为长度为的η个子视频:……mn;所述的资源再处理模块用于按照的规律将子视频再处理成Ml,M2···..Mn,共η个子视频。9.根据权利要求7所述的一种基于分组网络编码的网络首播预加载系统,其特征在于,所述的用户解码模块包括编码数据解码模块以及双向恢复模块;所述的编码数据解码模块用于用户端根据c行c列线性无关的随机矩阵Α,计算得到A'然后,根据D1=E1XA^ieQ,k],从而恢复出所有分组D1,D2......Dk,从而得到施屬….1序列;所述的双向恢复模块用于根据的规律,通过使用收到的原数据块mi,从序列的两端往中间双向的依次恢复im,mn,m3,mn-i......,直到所有数据恢复,根据其序号重新排列成m,m2……mn。

百度查询: 中山大学 一种基于分组网络编码的网络首播预加载方法及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。