CN106027202B - 一种基于网络编码的无线网络中多速率数据分发方法 - Google Patents
一种基于网络编码的无线网络中多速率数据分发方法 Download PDFInfo
- Publication number
- CN106027202B CN106027202B CN201610331241.3A CN201610331241A CN106027202B CN 106027202 B CN106027202 B CN 106027202B CN 201610331241 A CN201610331241 A CN 201610331241A CN 106027202 B CN106027202 B CN 106027202B
- Authority
- CN
- China
- Prior art keywords
- vertex
- data packet
- transmission
- duration
- relationship
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0076—Distributed coding, e.g. network coding, involving channel coding
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于网络编码的无线网络中多速率数据分发方法,采用对偶编码图的方式,综合考虑链路间相关性、数据包生存期和期望传输时间等构建编码图,使算法能够应用于相关性网络环境中;采用贪心算法将求解问题从NP‑hard问题降低到线性级别;在每一轮分发之前,剔除肯定超时的顶点和延迟敏感性较低的顶点,让能够满足时延要求且延迟敏感性较高的顶点有较高的发送机会;并且应用数学方法描述构建对偶编码图,并得出最优算法的复杂度为NP‑hard问题;由此,提出链路相关性感知的多速率对偶编码算法(LMPC),通过权衡传输延迟与数据包生命时长来确定编码策略和传输速率,在满足延迟约束的基础上,有效提高了数据包接收数量。
Description
技术领域
本发明涉及一种基于网络编码的无线网络中多速率数据分发方法,属于计算机通信网络技术领域。
背景技术
随着无线网络技术不断发展,无线网络应用范围越来越广。而许多无线数据分发应用具有时效性,包括移动电视、视频通话、视频点播在内的网络流媒体服务已经成为主要的、最受欢迎的网络应用。而业务需求的快速增长导致多媒体通信流量激增,这对作为其重要内容载体的无线网络带来了诸多技术挑战。一个自然的步骤是探索新的数据通信机制以无线节点的高通信压力,并在此基础上为业务提供QoS保证(包括实时性和可靠性两个方面)。
研究表明,基于无线网络编码的广播/多播协作数据交换机制是提高数据通信性能有效途径。网络编码的运用使得整体传输效率得以提高。源节点不需要完全通过一对一方式发送数据包,而是以广播/多播形式发送编码数据,接收节点根据接收(监听)到的编码数据以及已拥有的数据包恢复出所需的数据包。目前相关研究主要集中在吞吐量优化、传输代价最小化、数据生存期感知的广播调度等方面。这些工作均是面向单一速率的无线网络环境,在很大程度上限制了数据交换性能的提升。
此外,由于受到交叉网络干扰(Cross-Network Interference)以及遮蔽效应(Shadowing Effects)的影响,无线链路之间数据接收存在高度的相关性。一般来说,如果一对链路间的数据接收呈现正相关性,则有助于源节点向该链路对分发数据;反之如果呈现反相关性,则源节点需要通过重传来提高可靠性,可见链路相关性对网络性能有着重大影响。针对这些问题,已经有很多科研人员对无线链路相关性环境下的数据传输机制进行了初步研究,在一定程度上缓解了相关性对数据传输性能的负面影响。然而,现有研究工作在计算期望传输次数等关键性能指标时,大多仅仅假设链路接收独立,导致编码决策时计算出现误差,进而降低传输性能。
发明内容
本发明所要解决的技术问题是提供一种通过权衡传输延迟与数据包生命时长来确定编码策略和传输速率,在满足延迟约束的基础上,能够有效提高数据包接收数量的基于网络编码的无线网络中多速率数据分发方法。
本发明为了解决上述技术问题采用以下技术方案:本发明设计了一种基于网络编码的无线网络中多速率数据分发方法,源节点通过广播发送方式针对各个目的节点实现各个数据包的分发,其中,各个数据包的大小相同;所述多速率数据分发方法包括如下步骤:
步骤001.分别针对各个目的节点,根据目的节点所需的各个数据包,分别生成对应该目的节点的各个发送关系顶点Vi,j,其中,该目的节点的一个数据包对应一个该目的节点的发送关系顶点;进而获得分别对应各个目的节点各个所需数据包的发送关系顶点Vi,j,然后进入步骤002;其中,i={1、…、I},j={1、…、J},I表示目的节点的个数,J表示数据包的种类数,Vi,j表示第i个目的节点需要第j个数据包;
步骤002.针对所有发送关系顶点Vi,j,根据各个目的节点针对所需数据包的生命时长,获得所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,并结合其余源节点单独实现发送关系顶点所对应数据包发送的各个发送关系顶点,构成编码图,其中,各顶点组合中两个发送关系顶点分别所对应的目的节点彼此互不相同,编码图中各个顶点组合中的两个发送关系顶点之间建立连线;然后进入步骤003;
步骤003.分别针对编码图中的各个顶点组合,获得顶点组合中两个发送关系顶点分别所对应目的节点针对对应所需数据包的生命时长,选择其中最小的生命时长,作为该顶点组合的生命时长;进而获得编码图中各个顶点组合的生命时长;同时,分别针对编码图中各个单独的发送关系顶点,获得发送关系顶点所对应目的节点针对对应所需数据包的生命时长,作为该发送关系顶点的生命时长,进而获得编码图中各个单独的发送关系顶点的生命时长,然后进入步骤004;
步骤004.将编码图中的各个顶点组合和各个单独的发送关系顶点分别作为编码图中的各个元素,然后针对编码图中各个元素的生命时长,选择其中最小生命时长,并判断该最小生命时长所对应元素的个数是否为1,是则将该最小生命时长所对应的元素,作为编码图中的待发送元素,然后进入步骤005;否则进入步骤006;
步骤005.针对编码图中的待发送元素,若该待发送元素为顶点组合,则获得源节点针对该顶点组合中两个发送关系顶点分别所对应数据包实现同时发送的最短发送时长,作为该顶点组合的最短发送时长;若该待发送元素为单独的发送关系顶点,则获得源节点针对该单独的发送关系顶点所对应数据包实现发送的最短发送时长,作为该单独的发送关系顶点的最短发送时长;进而获得编码图中待发送元素的最短发送时长,然后进入步骤008;
步骤006.判断该最小生命时长所对应的各个元素中,若存在顶点组合,则分别针对各个顶点组合,获得源节点针对顶点组合中两个发送关系顶点分别所对应数据包实现同时发送的最短发送时长,作为该顶点组合的最短发送时长;若存在单独的发送关系顶点,则分别针对各个单独的发送关系顶点,获得源节点针对单独的发送关系顶点所对应数据包实现发送的最短发送时长,作为该单独的发送关系顶点的最短发送时长;进而获得该最小生命时长所对应各个元素分别所对应的最短发送时长,然后进入步骤007;
步骤007.针对编码图中该最小生命时长所对应各个元素分别所对应的最短发送时长,选择其中最小的最短发送时长,获得该最小的最短发送时长所对应编码图中的元素,作为编码图中的待发送元素,然后进入步骤008;
步骤008.针对编码图中的待发送元素,若待发送元素为顶点组合,则根据预设数据打包算法,针对该顶点组合中两个发送关系顶点分别所对应数据包进行数据包打包,获得大小与原单个数据包大小相同的打包数据包,然后源节点采用该待发送元素的最短发送时长,针对该打包数据包进行广播发送,并在编码图中删除该顶点组合,进入步骤009;若待发送元素为单独的发送关系顶点,则源节点采用该待发送元素的最短发送时长,针对该单独的发送关系顶点所对应的数据包进行广播发送,并在编码图中删除该单独的发送关系顶点,进入步骤009;
步骤009.针对编码图中待发送元素所对应的目的节点进行状态更新,并判断编码图是否为空,是则基于网络编码的无线网络中多速率数据分发方法结束;否则返回步骤003。
作为本发明的一种优选技术方案:所述步骤002具体包括如下步骤:
步骤00201.分别针对各个发送关系顶点Vi,j,分别按如下步骤a进行操作,获得所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,然后进入步骤00202;
步骤a.将该发送关系顶点作为待联系顶点,其余各个发送关系顶点分别作为待匹配顶点,分别针对各个待匹配顶点,分别按如下步骤a01至步骤a04进行操作,获得该待联系顶点分别与各个待匹配顶点中,相对源节点实现两个发送关系顶点所对应数据包发送的各个顶点组合;
步骤a01.判断该待联系顶点所对应的目的节点与该待匹配顶点所对应的目的节点彼此是否相同,是则该待联系顶点与该待匹配顶点之间不构成顶点组合;否则进入步骤a02;
步骤a02.获得该待联系顶点所对应目的节点的最大接收数据处理速率,以及获得该待匹配顶点所对应目的节点的最大接收数据处理速率,选择该两个最大接收数据处理速率中的最小接收数据处理速率,然后进入步骤a03;
步骤a03.根据数据包的大小和该最小接收数据处理速率,获得待匹配时长,然后进入步骤a04;
步骤a04.获得该待联系顶点所对应目的节点针对对应所需数据包的生命时长,以及获得该待匹配顶点所对应目的节点针对对应所需数据包的生命时长,并判断该两个生命时长是否均小于等于该待匹配时长,是则该待联系顶点与该待匹配顶点,构成源节点同时实现两个发送关系顶点所对应数据包发送的顶点组合;否则该待联系顶点与该待匹配顶点之间不构成顶点组合;
步骤00202.针对所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,并结合其余源节点单独实现发送关系顶点所对应数据包发送的各个发送关系顶点,构成编码图,其中,编码图中各个顶点组合中的两个发送关系顶点之间建立连线。
作为本发明的一种优选技术方案:所述步骤008中,若待发送元素为顶点组合,则根据随机线性网络编码算法,针对该顶点组合中两个发送关系顶点分别所对应数据包进行数据包打包,获得大小与原单个数据包大小相同的打包数据包。
本发明所述一种基于网络编码的无线网络中多速率数据分发方法采用以上技术方案与现有技术相比,具有以下技术效果:本发明所设计基于网络编码的无线网络中多速率数据分发方法,采用对偶编码图的方式,综合考虑链路间相关性、数据包生存期和期望传输时间等构建编码图,使算法能够应用于相关性网络环境中;其中,采用贪心算法将求解问题从NP-hard问题降低到线性级别;在每一轮分发之前,剔除肯定超时的顶点和延迟敏感性较低的顶点,让能够满足时延要求且延迟敏感性较高的顶点有较高的发送机会;并且应用数学方法描述构建对偶编码图,并得出最优算法的复杂度为NP-hard问题;由此,提出链路相关性感知的多速率对偶编码算法(LMPC),通过权衡传输延迟与数据包生命时长来确定编码策略和传输速率,在满足延迟约束的基础上,有效提高了数据包接收数量。
附图说明
图1是数据包分发示意图;
图2是本发明所设计基于网络编码的无线网络中多速率数据分发方法中对偶编码示意图;
图3是本发明所设计基于网络编码的无线网络中多速率数据分发方法中基于编码图的数据包分发流程示意图;
图4a是不同算法下数据包平均投递成功率随数据包生命时长取值的变化示意图;
图4b是不同算法下数据包平均吞吐量随数据包生命时长取值的变化示意图;
图4c是不同算法下数据包发送时长随数据包生命时长取值的变化示意图;
图5a是不同算法下数据包平均投递成功率对应各种节点数与数据包数目数目组合在固定生命时长下的变化示意图;
图5b是不同算法下数据包平均投递成功数目对应各种节点数与数据包数目组合在固定生命时长下的变化示意图;
图5c是不同算法下数据包平均吞吐量对应各种节点数与数据包数目组合在固定生命时长下的变化示意图;
图5d是不同算法下数据包发送时长对应各种节点数与数据包数目组合在固定生命时长下的变化示意图。
具体实施方式
下面结合说明书附图对本发明的具体实施方式作进一步详细的说明。
本发明所设计一种基于网络编码的无线网络中多速率数据分发方法,源节点通过广播发送方式针对各个目的节点实现各个数据包的分发,其中,各个数据包的大小相同;实际应用过程当中,如图1所示为实际源节点,以及各个目的节点之间数据包的情况,所述多速率数据分发方法包括如下步骤:
步骤001.分别针对各个目的节点,根据目的节点所需的各个数据包,分别生成对应该目的节点的各个发送关系顶点Vi,j,其中,该目的节点的一个数据包对应一个该目的节点的发送关系顶点;进而获得分别对应各个目的节点各个所需数据包的发送关系顶点Vi,j,然后进入步骤002;其中,i={1、…、I},j={1、…、J},I表示目的节点的个数,J表示数据包的种类数,Vi,j表示第i个目的节点需要第j个数据包。
步骤002.针对所有发送关系顶点Vi,j,根据各个目的节点针对所需数据包的生命时长,获得所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,并结合其余源节点单独实现发送关系顶点所对应数据包发送的各个发送关系顶点,构成编码图G(V,L),如图2所示,其中,各顶点组合中两个发送关系顶点分别所对应的目的节点彼此互不相同,编码图中各个顶点组合中的两个发送关系顶点之间建立连线,V表示各个发送关系定点,L表示编码图中各个顶点组合中两个发送关系顶点之间的连线;连线上的数字表示顶点组合中两个发送关系顶点上数据包的共同发送速率,然后进入步骤003。
其中,编码图参考如下文献:
R.Ahlswede,N.Cai,S.-Y.R.Li and R.W.Yeung,“Network information flow,”IEEE Trans.on Information Theory,2000,46:1204-1216
其中,步骤002具体包括如下步骤:
步骤00201.分别针对各个发送关系顶点Vi,j,分别按如下步骤a进行操作,获得所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,然后进入步骤00202。
步骤a.将该发送关系顶点作为待联系顶点,其余各个发送关系顶点分别作为待匹配顶点,分别针对各个待匹配顶点,分别按如下步骤a01至步骤a04进行操作,获得该待联系顶点分别与各个待匹配顶点中,相对源节点实现两个发送关系顶点所对应数据包发送的各个顶点组合。
步骤a01.判断该待联系顶点所对应的目的节点与该待匹配顶点所对应的目的节点彼此是否相同,是则该待联系顶点与该待匹配顶点之间不构成顶点组合;否则进入步骤a02。
步骤a02.获得该待联系顶点所对应目的节点的最大接收数据处理速率,以及获得该待匹配顶点所对应目的节点的最大接收数据处理速率,选择该两个最大接收数据处理速率中的最小接收数据处理速率,然后进入步骤a03。
步骤a03.根据数据包的大小和该最小接收数据处理速率,获得待匹配时长,然后进入步骤a04。
步骤a04.获得该待联系顶点所对应目的节点针对对应所需数据包的生命时长,以及获得该待匹配顶点所对应目的节点针对对应所需数据包的生命时长,并判断该两个生命时长是否均小于等于该待匹配时长,是则该待联系顶点与该待匹配顶点,构成源节点同时实现两个发送关系顶点所对应数据包发送的顶点组合;否则该待联系顶点与该待匹配顶点之间不构成顶点组合。
步骤00202.针对所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,并结合其余源节点单独实现发送关系顶点所对应数据包发送的各个发送关系顶点,构成编码图,其中,编码图中各个顶点组合中的两个发送关系顶点之间建立连线。
基于上述编码图的设计操作过程中,其中各个顶点组合L(Vi,j,Vi',j')满足如下关系:
(1).i≠i'
(2).(Pj∈Hi'∧Pj'∈Hi∧Pj∈Ri∧Pj'∈Ri')∨j=j'
(3).使得t(Vi,j|ri,k)≤Ti,j∧t(Vi'j'|ri',k)≤Ti',j'
其中,ri,k表示源节点S→目的节点Di选择接收数据处理速率k的成功率;(Vi,j|ri,k)表示链路源节点S→目的节点Di针对第j个数据包选择接收数据处理速率k时需要的发送时长,Pj表示第j个数据包;Hi的表示目的节点Di已经接收到的数据包集合;Ri表示目的节点Di缺少的数据包;Ti,j表示目的节点Di所需第j个数据包Pj的生命时长;条件1限制同一个目的节点Di需要的两个数据包不能一起编码,否则Di收到该编码包后无法立即解码,可能导致生存期较小的数据包超时;条件2限制两个节点收到一个编码包后都能够立即解码;条件3保证参与编码的数据包对应的节点有共同速率,使两个数据包都不超时。采用对偶编码的好处是,每次源节点S发送一个编码包Pj⊕Pj',目的节点Di、Dj一旦收到该编码包就能立即解码出所需数据,这将有助于生存期较小的数据包分发。
对于编码图中各个顶点组合,之所以选择两个目的节点所构成的组合,我们有如下的证明。不妨设Qz是源节点第z次选择的顶点组合,由对偶编码的定义Qz={Vi,j}或Qz={Vi,j,Vi’,j’}。则采用传统的枚举方法搜索(对偶编码)数据包,获得全局最优分发顺序Q1,Q2,…,QN的时间复杂度至少为其中证明如下:
证明:我们采用归纳法来证明。
①.当Z=1时,由题设易知源节点只能进行1次数据分发,当分发完成后,其余顶点都会在更新编码图时被删除,易知从M个顶点中选择一个团Q1,且|Q1|=1时,至少需要对比M次,因此Z=1时,题设成立。
②.当Z=2时,即从M个顶点中选择2个顶点,则至少需要计算次,且每次选择的2个顶,都需要判断是否属于一个团,至少计算2次,因此复杂度至少为题设成立。
③.假设Z=m-1时,至少计算次,则当Z=m时,相当于从剩余M-(m-1)个顶点中选择1个顶点插入到m-1个最优顶点序列中,因为每次选择都至少比较m-1次,因此至少比较[M-(m-1)](m-1)次,即整个过程至少计算
次。当M≥m>2时,[M-(m-1)](m-1)–(M-m)=[M-(m-1)](m-2)+1≥0,即
因此至少比较
次。因而全局最优解的复杂度至少为
其中,各参数符号具体解释如下:
如图3所示,表示了本发明所设计基于网络编码的无线网络中多速率数据分发方法中基于编码图的数据包分发流程示意图,具体如下:
步骤003.分别针对编码图中的各个顶点组合,获得顶点组合中两个发送关系顶点分别所对应目的节点针对对应所需数据包的生命时长,选择其中最小的生命时长,作为该顶点组合的生命时长;进而获得编码图中各个顶点组合的生命时长;同时,分别针对编码图中各个单独的发送关系顶点,获得发送关系顶点所对应目的节点针对对应所需数据包的生命时长,作为该发送关系顶点的生命时长,进而获得编码图中各个单独的发送关系顶点的生命时长,然后进入步骤004。
步骤004.将编码图中的各个顶点组合和各个单独的发送关系顶点分别作为编码图中的各个元素,然后针对编码图中各个元素的生命时长,选择其中最小生命时长,并判断该最小生命时长所对应元素的个数是否为1,是则将该最小生命时长所对应的元素,作为编码图中的待发送元素,然后进入步骤005;否则进入步骤006。
步骤005.针对编码图中的待发送元素,若该待发送元素为顶点组合,则获得源节点针对该顶点组合中两个发送关系顶点分别所对应数据包实现同时发送的最短发送时长,作为该顶点组合的最短发送时长;若该待发送元素为单独的发送关系顶点,则获得源节点针对该单独的发送关系顶点所对应数据包实现发送的最短发送时长,作为该单独的发送关系顶点的最短发送时长;进而获得编码图中待发送元素的最短发送时长,然后进入步骤008。
步骤006.判断该最小生命时长所对应的各个元素中,若存在顶点组合,则分别针对各个顶点组合,获得源节点针对顶点组合中两个发送关系顶点分别所对应数据包实现同时发送的最短发送时长,作为该顶点组合的最短发送时长;若存在单独的发送关系顶点,则分别针对各个单独的发送关系顶点,获得源节点针对单独的发送关系顶点所对应数据包实现发送的最短发送时长,作为该单独的发送关系顶点的最短发送时长;进而获得该最小生命时长所对应各个元素分别所对应的最短发送时长,然后进入步骤007。
步骤007.针对编码图中该最小生命时长所对应各个元素分别所对应的最短发送时长,选择其中最小的最短发送时长,获得该最小的最短发送时长所对应编码图中的元素,作为编码图中的待发送元素,然后进入步骤008。
步骤008.针对编码图中的待发送元素,若待发送元素为顶点组合,则根据随机线性网络编码算法,针对该顶点组合中两个发送关系顶点分别所对应数据包进行数据包打包,获得大小与原单个数据包大小相同的打包数据包,然后源节点采用该待发送元素的最短发送时长,针对该打包数据包进行广播发送,并在编码图中删除该顶点组合,进入步骤009;若待发送元素为单独的发送关系顶点,则源节点采用该待发送元素的最短发送时长,针对该单独的发送关系顶点所对应的数据包进行广播发送,并在编码图中删除该单独的发送关系顶点,进入步骤009。
其中,随机线性网络编码算法具体介绍,参考如下:
http://wenku.baidu.com/link?url=16SBVMbB3GCvbRwbY1G_dUMVp26h40GDNpxqEJHz3tXpVHXyQfsL80EEwOVhfJgRpt1pMYwYwmpYosYdShqlrd3dJmEOItC4SwY6tln3Z1_
彭木根,王月新,王文博.无线自组织网络的网络编码技术[J].中兴通讯技术,2007,13(4):56-60;
陶少国;黄佳庆;杨宗凯;乔文博;熊志强;;网络编码研究综述[J];小型微型计算机系统;2008年04期;
http://download.csdn.net/detail/king55240470/7343113#comment
步骤009.针对编码图中待发送元素所对应的目的节点进行状态更新,并判断编码图是否为空,是则基于网络编码的无线网络中多速率数据分发方法结束;否则返回步骤003。
将上述设计方法应用到实际当中,即为了评估本设计方法——链路相关性感知的多速率对偶编码算法(LMPC)的性能,我们可以与NNC方法,以及PWC方法进行比较,其中,NNC:不采取编码策略,每次仅选择一个生存期最小的数据包进行发送;PWC:源自对偶编码算法,采取生存期最小的数据包与另一个可配对的生存期最小的数据包进行编码。
实际仿真实验分为两组,源节点S可选发送速率为1、2、4和5kbps,数据包大小为10kbit,链路接收成功率随机生成。为降低实验结果随机性,每组实验结果都是进行100次随机实验后取得的均值。
实验一中,目的节点数为5,源节点S需分发10个数据包,目的节点初始接收情况和数据包生命时长随机生成。数据包生命时长取值范围分别设置为:[2,20]、[2,40]、[2,60]、[2,80]、[2,100]和[2,120],生存期单位为秒。我们从成功率、分发用时和平均吞吐量角度来评价LMPC。
实验二中,设定数据包生命时长的取值范围是[2,40],目的节点数和源节点需要分发的数据包数分别为:(3,3)、(4,4)、(5,5)、(6,6)、(7,7)和(8,8),每个目的节点接收情况随机生成。本组实验中主要考察各算法分别所对应数据包平均投递成功率、数据包平均吞吐量,以及数据包发送时长。
其中,性能评价标准,仿真实验考虑的性能分析标准包括以下方面:
◆生命时长取值范围变化对数据包分发性能的影响。
◆生命时长取值范围固定对数据包分发性能的影响。
◆LMPC接收率分析。
图4a显示了不同算法下数据包平均投递成功率随数据包生命时长取值的变化。生命时长取值变大时,源节点有机会分发更多数据包。当生命时长增加到一定程度后,即使是NNC也能满足大部分数据包的生存期需求。由于PWC没有考虑链路相关性,因此无法精确地估计期望传输次数。当数据包生命时长较大时,链路相关性产生的丢包数量高于超时,成功率低于NNC。但是PWC结束时间更早,吞吐量比NNC高。LMPC能够有效权衡数据包生命时长、链路相关性和发送时长,能够有效地提高发送效率。因为总有一定数目的生存期较小的数据包,而一段时间内发送的数据包数目有限,一小部分数据包超时难以避免,所以数据包接收比例始终无法达到100%。
图4b显示了不同算法下数据包平均吞吐量随数据包生命时长取值的变化,由于NNC没有采用网络编码,带宽利用率最低。PWC虽然采用了网络编码,但是仅考虑了数据包生存期需求,忽略了链路相关性对编码数据发送延时的影响,因而吞吐量低于LMPC。
图4c显示了不同算法下数据包发送时长随数据包生命时长取值的变化,采用NNC时,随着数据包生命时长取值逐渐增加,数据包按照生命时长大小逐个发送,从而发送时长最长。PWC和LMPC均采用了网络编码技术,PWC和LMPC比NNC发送的数据包更多,且用时较少,更有利于后期数据分发。
如图5a-图5c中固定生命时长的取值范围为[2,40],其中,图5a反应了不同算法下数据包平均投递成功率对应各种节点数与数据包数目组合在固定生命时长下的变化,由于一段时间内源节点发送的数据包有限,因此越来越多的目的节点和数据包必然导致有效接收比例下降。实际上根据图5b,越来越多的目的节点和数据包数目,对于LMPC来说,反而有助于源节点进行编码选择和发送,因此在图5c中,实际上的数据包平均吞吐量略微增加。
图5d显示了不同算法下数据包发送时长对应各种节点数与数据包数目组合在固定生命时长下的变化,当数据包较少时,PWC和LMPC能很快完成数据分发;而数据包增多时,在固定时间内,PWC和LMPC也无法完成所有数据包分发,因此数据分发时间逐渐接近数据包最大生存期。
值得注意的是,PWC和LMPC的结果曲线存在交叉的情况。如图4c所示,生命时长取值较小时,由于采用了更好的权衡策略,LMPC能发送更多的数据包,发送时长较长。然而,当生命时长取值逐渐变大,数据包生命时长已经不再是首要条件,由于LMPC权衡了发送时长,发送同样多的数据包用时更少,因此能更早地完成数据分发。如图5d中,由于生命时长取值不变,目的节点数目和数据包数变大,当需要发送的数据包较少时,LMPC能够较早地完成数据分发。随着待发送的数据包数目增加,可供选择的编码方式更多,由于综合权衡了链路相关性和发送用时的影响,LMPC在数据包生命时长一定的情况下,能分发的数据包更多,用时也较长。
如下表1所示,给出了采用PWC时的数据包平均接收成功率和失败率。两者之和小于1。这是因为在发送过程中,没有考虑链路相关性,当遇到负相关链路时,源节点对期望传输次数的估计存在误差,容易造成丢包。当数据包生命时长较小时,大部分没有成功接收的数据包都是由超时导致的,链路相关性的影响并不明显,而当生命时长变大时,相关性导致的丢包体现越来越明显。采用LMPC时,因为考虑了链路相关性,避免了期望传输次数估计不足导致的丢包。
由上述结果可知,通过合理利用链路相关性,LMPC无论是在数据包生命时长较小还是生命时长较大的环境下,都可以显著提高数据分发效率。
表1
本发明所设计基于网络编码的无线网络中多速率数据分发方法,采用对偶编码图的方式,综合考虑链路间相关性、数据包生存期和期望传输时间等构建编码图,使算法能够应用于相关性网络环境中;其中,采用贪心算法将求解问题从NP-hard问题降低到线性级别;在每一轮分发之前,剔除肯定超时的顶点和延迟敏感性较低的顶点,让能够满足时延要求且延迟敏感性较高的顶点有较高的发送机会;并且应用数学方法描述构建对偶编码图,并得出最优算法的复杂度为NP-hard问题;由此,提出链路相关性感知的多速率对偶编码算法(LMPC),通过权衡传输延迟与数据包生命时长来确定编码策略和传输速率,在满足延迟约束的基础上,有效提高了数据包接收数量。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
Claims (3)
1.一种基于网络编码的无线网络中多速率数据分发方法,源节点通过广播发送方式针对各个目的节点实现各个数据包的分发,其中,各个数据包的大小相同;其特征在于,包括如下步骤:
步骤001.分别针对各个目的节点,根据目的节点所需的各个数据包,分别生成对应该目的节点的各个发送关系顶点Vi,j,其中,该目的节点的一个数据包对应一个该目的节点的发送关系顶点;进而获得分别对应各个目的节点各个所需数据包的发送关系顶点Vi,j,然后进入步骤002;其中,i={1、…、I},j={1、…、J},I表示目的节点的个数,J表示数据包的种类数,Vi,j表示第i个目的节点需要第j个数据包;
步骤002.针对所有发送关系顶点Vi,j,根据各个目的节点针对所需数据包的生命时长,获得所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,并结合其余源节点单独实现发送关系顶点所对应数据包发送的各个发送关系顶点,构成编码图,其中,各顶点组合中两个发送关系顶点分别所对应的目的节点彼此互不相同,编码图中各个顶点组合中的两个发送关系顶点之间建立连线;然后进入步骤003;
步骤003.分别针对编码图中的各个顶点组合,获得顶点组合中两个发送关系顶点分别所对应目的节点针对对应所需数据包的生命时长,选择其中最小的生命时长,作为该顶点组合的生命时长;进而获得编码图中各个顶点组合的生命时长;同时,分别针对编码图中各个单独的发送关系顶点,获得发送关系顶点所对应目的节点针对对应所需数据包的生命时长,作为该发送关系顶点的生命时长,进而获得编码图中各个单独的发送关系顶点的生命时长,然后进入步骤004;
步骤004.将编码图中的各个顶点组合和各个单独的发送关系顶点分别作为编码图中的各个元素,然后针对编码图中各个元素的生命时长,选择其中最小生命时长,并判断该最小生命时长所对应元素的个数是否为1,是则将该最小生命时长所对应的元素,作为编码图中的待发送元素,然后进入步骤005;否则进入步骤006;
步骤005.针对编码图中的待发送元素,若该待发送元素为顶点组合,则获得源节点针对该顶点组合中两个发送关系顶点分别所对应数据包实现同时发送的最短发送时长,作为该顶点组合的最短发送时长;若该待发送元素为单独的发送关系顶点,则获得源节点针对该单独的发送关系顶点所对应数据包实现发送的最短发送时长,作为该单独的发送关系顶点的最短发送时长;进而获得编码图中待发送元素的最短发送时长,然后进入步骤008;
步骤006.判断该最小生命时长所对应的各个元素中,若存在顶点组合,则分别针对各个顶点组合,获得源节点针对顶点组合中两个发送关系顶点分别所对应数据包实现同时发送的最短发送时长,作为该顶点组合的最短发送时长;若存在单独的发送关系顶点,则分别针对各个单独的发送关系顶点,获得源节点针对单独的发送关系顶点所对应数据包实现发送的最短发送时长,作为该单独的发送关系顶点的最短发送时长;进而获得该最小生命时长所对应各个元素分别所对应的最短发送时长,然后进入步骤007;
步骤007.针对编码图中该最小生命时长所对应各个元素分别所对应的最短发送时长,选择其中最小的最短发送时长,获得该最小的最短发送时长所对应编码图中的元素,作为编码图中的待发送元素,然后进入步骤008;
步骤008.针对编码图中的待发送元素,若待发送元素为顶点组合,则根据预设数据打包算法,针对该顶点组合中两个发送关系顶点分别所对应数据包进行数据包打包,获得大小与原单个数据包大小相同的打包数据包,然后源节点采用该待发送元素的最短发送时长,针对该打包数据包进行广播发送,并在编码图中删除该顶点组合,进入步骤009;若待发送元素为单独的发送关系顶点,则源节点采用该待发送元素的最短发送时长,针对该单独的发送关系顶点所对应的数据包进行广播发送,并在编码图中删除该单独的发送关系顶点,进入步骤009;
步骤009.针对编码图中待发送元素所对应的目的节点进行状态更新,并判断编码图是否为空,是则基于网络编码的无线网络中多速率数据分发方法结束;否则返回步骤003。
2.根据权利要求1所述一种基于网络编码的无线网络中多速率数据分发方法,其特征在于:所述步骤002具体包括如下步骤:
步骤00201.分别针对各个发送关系顶点Vi,j,分别按如下步骤a进行操作,获得所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,然后进入步骤00202;
步骤a.将该发送关系顶点作为待联系顶点,其余各个发送关系顶点分别作为待匹配顶点,分别针对各个待匹配顶点,分别按如下步骤a01至步骤a04进行操作,获得该待联系顶点分别与各个待匹配顶点中,相对源节点实现两个发送关系顶点所对应数据包发送的各个顶点组合;
步骤a01.判断该待联系顶点所对应的目的节点与该待匹配顶点所对应的目的节点彼此是否相同,是则该待联系顶点与该待匹配顶点之间不构成顶点组合;否则进入步骤a02;
步骤a02.获得该待联系顶点所对应目的节点的最大接收数据处理速率,以及获得该待匹配顶点所对应目的节点的最大接收数据处理速率,选择该两个最大接收数据处理速率中的最小接收数据处理速率,然后进入步骤a03;
步骤a03.根据数据包的大小和该最小接收数据处理速率,获得待匹配时长,然后进入步骤a04;
步骤a04.获得该待联系顶点所对应目的节点针对对应所需数据包的生命时长,以及获得该待匹配顶点所对应目的节点针对对应所需数据包的生命时长,并判断该两个生命时长是否均小于等于该待匹配时长,是则该待联系顶点与该待匹配顶点,构成源节点同时实现两个发送关系顶点所对应数据包发送的顶点组合;否则该待联系顶点与该待匹配顶点之间不构成顶点组合;
步骤00202.针对所有发送关系顶点Vi,j中,源节点同时实现两个发送关系顶点所对应数据包发送的各个顶点组合,并结合其余源节点单独实现发送关系顶点所对应数据包发送的各个发送关系顶点,构成编码图,其中,编码图中各个顶点组合中的两个发送关系顶点之间建立连线。
3.根据权利要求1所述一种基于网络编码的无线网络中多速率数据分发方法,其特征在于:所述步骤008中,若待发送元素为顶点组合,则根据随机线性网络编码算法,针对该顶点组合中两个发送关系顶点分别所对应数据包进行数据包打包,获得大小与原单个数据包大小相同的打包数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610331241.3A CN106027202B (zh) | 2016-05-18 | 2016-05-18 | 一种基于网络编码的无线网络中多速率数据分发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610331241.3A CN106027202B (zh) | 2016-05-18 | 2016-05-18 | 一种基于网络编码的无线网络中多速率数据分发方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106027202A CN106027202A (zh) | 2016-10-12 |
CN106027202B true CN106027202B (zh) | 2019-02-19 |
Family
ID=57098860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610331241.3A Active CN106027202B (zh) | 2016-05-18 | 2016-05-18 | 一种基于网络编码的无线网络中多速率数据分发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106027202B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027202B (zh) * | 2016-05-18 | 2019-02-19 | 南京工业大学 | 一种基于网络编码的无线网络中多速率数据分发方法 |
CN109688558B (zh) * | 2019-03-04 | 2021-05-18 | 重庆邮电大学 | 一种延迟约束下基于网络编码的中继传输方法 |
CN112511195B (zh) * | 2020-12-18 | 2022-04-29 | 国网山东省电力公司青岛市即墨区供电公司 | 一种低压电力线数据编码发送控制方法与系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222297A (zh) * | 2008-01-31 | 2008-07-16 | 复旦大学 | 交织码和网络编码结合的数据分发方法 |
CN101834699A (zh) * | 2010-05-06 | 2010-09-15 | 北京邮电大学 | 光组播网络中基于逻辑运算的网络编码实现方法 |
CN106027202A (zh) * | 2016-05-18 | 2016-10-12 | 南京工业大学 | 一种基于网络编码的无线网络中多速率数据分发方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8824470B2 (en) * | 2010-06-02 | 2014-09-02 | Microsoft Corporation | Multiparty real time content delivery |
-
2016
- 2016-05-18 CN CN201610331241.3A patent/CN106027202B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222297A (zh) * | 2008-01-31 | 2008-07-16 | 复旦大学 | 交织码和网络编码结合的数据分发方法 |
CN101834699A (zh) * | 2010-05-06 | 2010-09-15 | 北京邮电大学 | 光组播网络中基于逻辑运算的网络编码实现方法 |
CN106027202A (zh) * | 2016-05-18 | 2016-10-12 | 南京工业大学 | 一种基于网络编码的无线网络中多速率数据分发方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106027202A (zh) | 2016-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100539601C (zh) | 控制多个通信层的操作的设备和方法 | |
CN101606390B (zh) | 用于带宽约束网络上的快速频道改变的方法、解码方法和解码装置 | |
CN106027202B (zh) | 一种基于网络编码的无线网络中多速率数据分发方法 | |
He et al. | Distributed algorithms for network lifetime maximization in wireless visual sensor networks | |
CN101296152B (zh) | 对等连接网络的数据调度方法和系统 | |
CN107295070B (zh) | 文件大小异构的分布式编码缓存放置方法及系统 | |
CN105515728B (zh) | 一种基于滑动窗口的网络编码方法 | |
CN109802773B (zh) | 一种社交信任度感知的协作无线网络数据传输方法 | |
Milosavljevic et al. | Efficient algorithms for the data exchange problem | |
CN101540778B (zh) | 一种数据传输的方法、装置和系统 | |
Zhong et al. | A Q-learning driven energy-aware multipath transmission solution for 5G media services | |
Vivekananda et al. | Efficient video transmission technique using clustering and optimisation algorithms in MANETs | |
CN106210443A (zh) | 网络控制显示内容同步的方法 | |
CN104243098A (zh) | 一种基于并行批次网络编码的传输方法 | |
CN110086870A (zh) | 面向数据中心网络的多路径并行可靠传输方法 | |
CN102546096A (zh) | 一种基于不等错误保护的实时多播自适应优化方法 | |
Ramamoorthy et al. | Profit-driven cache delegation: A game-theoretic wireless multimedia offloading solution | |
Hua et al. | An efficient scheduling algorithm for scalable video streaming over P2P networks | |
CN103368586A (zh) | 面向深空探测多媒体业务的独立窗不等保护喷泉编码方法 | |
CN109194445A (zh) | 一种适用于短码长喷泉码的编译码优化方法 | |
Sun et al. | TCP-FNC: a novel TCP with network coding for wireless networks | |
CN113507467B (zh) | 一种基于区块链的隐蔽信息传输系统及方法 | |
CN108924063A (zh) | 一种时延约束感知的最小化端到端时延的流量分配方法 | |
CN101505155B (zh) | 实现前缀码构造的装置和方法 | |
CN106254044A (zh) | 一种基于多播网络编码的动态线性组合重传方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 210009, 5 new model street, Gulou District, Jiangsu, Nanjing Applicant after: Nanjing University of Technology Address before: No. 30, Pu Zhunan Road, Pukou District, Nanjing, Jiangsu Applicant before: Nanjing University of Technology |
|
GR01 | Patent grant | ||
GR01 | Patent grant |