一种基于前向纠错的网络编码组播数据流可靠传输方法

文档序号:7907818阅读:200来源:国知局
专利名称:一种基于前向纠错的网络编码组播数据流可靠传输方法
技术领域
本发明针对基于网络编码的组播网络,提出了一种新的基于前向纠错技术的组播数据流可靠传输方法,属于通信与网络技术领域。
背景技术
网络编码是一种融合了路由和编码的信息交换新技术,在传统的存储转发的路由方法基础上,允许中间结点对流经它的不同信息流进行编码组合,增加单位时间内传输的信息量,使网络流容量有可能达到香农理论指出的上界。它具有提高网络吞吐量、均衡网络负载、增加网络带宽利用率、减少网络资源损耗、提高网络安全性和减少能量消耗等优点, 为设计性能更加优化的新型网络提供了可靠的技术支持。网络编码最经典的应用是用在组播数据流的高效传输中,在具有网络编码功能的组播网络中采用网络编码可以带来高吞吐量、低传输时间和高保密性等优点。但是若在某一条链路上数据包在传输过程中被丢失,将使得对应的目的节点无法重建数据;特别是由中间节点编码后的数据包丢失时会同时导致与之相关的多个目的节点无法解码出原始数据流,对网络性能造成的影响较大,因此如何解决网络编码组播情况下数据包丢失的问题成为我们面临的一项挑战。在经典的基于网络编码的组播网络中,对有数据包丢失的网络中的可靠传输策略研究还较少,而在无网络编码功能的传统网络中,针对数据包的丢失问题,往往采取前向纠错或出错重传的方法来解决。前向纠错方法通过在源节点增加一定数量的冗余数据来实现目的节点在特定丢包率下的数据重建,由此增加的额外延迟较小,可以忽略不计。而对于出错重传,由于是在探测到数据丢失后再发出重传请求,这种机制往往导致网络中数据传输的时间大大增加,难以满足某些业务,特别是对时延敏感业务的要求。因此对网络编码组播业务来说,引入前向纠错技术来实现数据包的可靠传输将是一种简单可行的方案。本发明结合网络编码和前向纠错技术优点,提出了一种新型的基于前向纠错的网络编码组播数据流可靠传输方法。该方法简单易行,在实施过程中无需改变网络的编码向量矩阵;而且对网络规模不敏感,在特定丢包率下,可以保证在组播路径中任何一条或多条链路上存在丢包情况下所有目的节点都能够重建原始数据;另外还可以随网络中的实时状况来调节发送数据包的冗余度,以达到更高的容忍数据丢失性能。

发明内容
本发明的目的在于解决基于网络编码的组播网络中由于资源冲突等原因导致数据包丢失对网络性能的影响。通过对并行分组后的原始数据流进行前向纠错编码,形成对组播树中任一链路上所传输数据的冗余保护,同时可以根据网络状况实时调节数据的冗余度使网络达到更好的性能。为达到上述目的,本发明采用如下所述技术方案在源节点发送数据的时候,首先按照网络编码组播路径对原始数据进行并行分组,然后再在各个并行数据流中加入具有前向纠错功能的冗余数据,并将原始数据和冗余数据按照已生成的组播路径发送出去,所有数据在网络中经过具有网络编码功能的节点时都要按照原有的编码向量进行编码。另外,源节点可以根据目的节点反馈的丢包率大小实时调整数据流的冗余度。该方法可以实现对组播树中任一链路上传输数据的冗余保护,即在一定的丢包率下,即使组播路径中任何一条或多条链路上同时发生丢包现象,所有目的节点都能够从接收到的数据中恢复重建原始数据,避免经典网络编码组播网络中单个编码数据丢失同时影响多个目的节点的弊端。因此可以大大提高基于网络编码的组播网络容忍数据丢失的能力。其具体流程如下步骤1 依据经典的网络编码技术进行组播链路和编码向量的分配,构建组播树;步骤2 源节点发送数据时,首先按照网络编码组播路径对原始数据进行并行分组,然后再在各个并行数据流中加入具有前向纠错功能的冗余数据;步骤3 所有数据沿既定组播路径进行传输,在具有编码功能的中间节点处都要按照原有的编码向量进行编码;步骤4 依据前向纠错工作原理,对沿某一链路到达的数据包,目的节点根据前后不同时间所收到的原始数据和冗余数据可以在链路存在丢包情况下恢复原始数据包;步骤5 依据网络编码工作原理,目的节点利用从不同链路接收到的数据进行解码得到最终所需全部原始数据。步骤6 在上述过程中,目的节点向源节点实时反馈丢包情况,源节点据此调整所发数据包的冗余度。上述方案只需在源节点和目的节点加入前向纠错编解码功能,无需调整网络拓扑,无需改变中间结点的网络编码向量,具有设计灵活、实现简单和时延较小等特点。附图(表)说明

图1 本发明中源节点和目的节点之间的反馈机制图2 本发明所涉及到的组播数据流可靠传输方法流程3 本发明所涉及到的具有网络编码功能的组播网络拓扑结构实例图4 :图3实例中关键链路上不同时隙的数据流示意
具体实施例方式在本方案中所涉及的源节点和目的节点都具有存储数据的功能。源节点和目的之间存在信息的反馈。其各自的功能和反馈机制如下所述源节点在和目的节点之间进行数据组播时,记录每个数据包的信息。此外,源节点还记录网络状态参数,即从目的节点反馈的数据包丢失率参数,根据这个参数来动态设置源节点发出的数据的冗余度。冗余度确定之后即可确定每传输多少个数据包之后要发送一个冗余数据包。每个冗余数据包是通过对它和前一个冗余数据包之间所有的原始数据进行前向纠错编码得到的。上述冗余数据的处理是在从源节点发出的每一条并行组播数据流上分别进行的。目的节点在接收数据的同时也会对接收到的数据进行存储,并监测在传输过程中是否存在数据丢失现象。若存在则可以利用接收到的具有前向纠错功能冗余数据包对丢失的数据进行恢复。此外,目的节点还会统计记录接收数据的丢包率情况。
目的节点要实时的将丢包率的统计情况反馈给源节点,源节点以此为标准动态调整其发送数据的冗余度。具体情况如下如果目的节点在固定时长内探测到数据丢包率增加,那么源节点中表示数据冗余度的参数要相应的变大,即提高数据的冗余度;如果目的节点在固定时长内探测到数据丢包率降低,那么源节点中表示数据冗余度的参数要相应的变小,即降低数据的冗余度。在网络性能较差的情况下,网络所传输的数据包丢失率很高, 那么就需要很高的数据冗余度,然而高冗余度引起的流量增大又会使丢包率性能进一步恶化,因此需要合理设置一个数据冗余度的上限;在网络性能较好的情况下,即使在相当长的时间内都没有产生数据丢失,也需要设置一个数据冗余度的下限来保证网络性能的稳定性。因此数据冗余度的调节是在一定范围内合理进行的。除了上述源节点和目的节点之间的反馈机制之外,本方案的具体实施流程如附图 2所示,具体如下首先确定网络拓扑结构,依据传统的网络编码技术进行链路分配和编码向量的分配,这和传统算法流程一样,首先确定网络的最大流最小割以及最大组播速率等因素,然后选择并建立从源节点到目的节点的组播树,为数据组播做好链路和编码向量规划。源节点根据数据冗余度的大小,在传输一定数量的数据包之后要产生传输一个冗余数据包。附图3为一个简单实施例,此处S为源节点,X和Y为组播目的节点W是具有网络编码功能的中间节点,对到达它的两路数据进行比特异或编码后送出,V、H和Z都是简单的广播节点,即将收到的一路数据分两路广播出去。为了简单起见,此例中前向纠错码也是通过异或操作实现的。假设此时源节点发送数据的冗余度为25%,即每发送三个原始数据 (如al,a2,a3)后发送一个冗余数据(如al θ a2 a3),那么到达目的节点X和Y的4条关键链路上不同时隙的数据流情况如附图4所示。源节点发送所有数据包,不管是原始数据包还是冗余数据包,在按照既定路径进行传输时若遇到具有编码功能的中间节点都要进行编码,这样可以在该中间节点的所有下游链路上全都实现数据的冗余保护,避免经典网络编码组播网络中单个编码数据丢失同时影响多个目的节点的弊端。目的节点接收到某一链路上传来的数据之后,首先对此链路上按时间顺序依次到达的数据进行检错纠错,即利用冗余数据检验某一链路上传输过来的数据包是否存在丢失,若存在则对其进行数据恢复。我们称这一过程为从时间维度上进行数据恢复。目的节点完成对纵向数据的恢复之后,再将同一节点收到的通过不同路径上的链路传输的几组数据进行解码处理,称之为从空间维度上进行数据恢复,最后得到目的节点所需的所有原始数据。以上对本发明所述的基于前向纠错的网络编码组播数据流可靠传输方法进行了详细的说明,但本发明的具体实现形式并不局限于此。对于本技术领域的一般技术人员来说,在不背离本发明所述方法的精神和权利要求范围的情况下对它进行的各种显而易见的改变都在本发明的保护范围之内。
权利要求
1.一种基于前向纠错的网络编码组播数据流可靠传输方法,其特征在于原始数据在源节点时进行前向纠错编码,即时间维度上的编码;在经过具有网络编码功能的中间节点时进行网络编码,即空间维度上的编码。在一定的丢包率下,即使组播路径中任何一条或多条链路上同时发生丢包现象,所有目的节点都能够通过时间和空间双重维度上的解码处理恢复重建原始数据。
2.基于权利要求书1所述的一种网络编码组播数据流可靠传输方法,在源节点处对数据进行前向纠错编码,其特征在于在源节点发送数据的时候,首先按照网络编码组播路径对原始数据进行并行分组,然后再在各个并行数据流中加入具有前向纠错功能的冗余数据,并将原始数据和冗余数据按照已生成的组播路径发送出去。数据冗余度可以根据目的节点反馈的丢包率大小进行实时调整。
3.基于权利要求书1所述的一种网络编码组播数据流可靠传输方法,在网络中传输数据时需要进行网络编码处理,其特征在于冗余数据在网络中经过具有网络编码功能的节点时,按照和原始数据同样的编码向量进行编码,这样可以在该中间节点的所有下游链路上全都实现数据的冗余保护,避免经典网络编码组播网络中单个编码数据丢失同时影响多个目的节点的弊端。
全文摘要
本发明是在经典的网络编码理论上提出的。在解决数据包丢失问题上,借鉴已有的前向纠错技术,将其与网络编码技术相互融合,提出了一种新的基于前向纠错的网络编码组播数据流可靠传输方法。该方法在网络编码组播路径上的各个并行数据流中加入具有前向纠错功能的冗余数据,并令冗余数据在经过具有网络编码功能的节点时按照和原始数据同样的编码向量进行编码处理。同时源节点可以根据目的节点反馈的丢包率大小实时调整数据流的冗余度。该方法可以实现对组播树中任一链路上传输数据的冗余保护,即在一定的丢包率下,即使组播路径中任何一条或多条链路上同时发生丢包现象,所有目的节点都能够从接收到的数据中恢复重建原始数据,避免经典网络编码组播网络中单个编码数据丢失同时影响多个目的节点的弊端。因此可以提高基于网络编码的组播网络容忍数据丢失的能力。
文档编号H04L1/00GK102325009SQ20111026913
公开日2012年1月18日 申请日期2011年9月13日 优先权日2011年9月13日
发明者叶梦荷, 孙咏梅, 柏琳, 纪越峰 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1