编码效率感知的网络编码方法

文档序号:7745317阅读:179来源:国知局
专利名称:编码效率感知的网络编码方法
技术领域
本发明涉及一种网络数据传输技术,特别是一种无线网络信息处理和传输的编码 方法。
背景技术
无线网络技术近几年来的快速发展引起了人们的广泛关注。然而,随着无线网络 规模的增大,网络的吞吐量会急剧下降。最近新提出的网络编码技术,彻底改变了通信网络 中信息处理和传输的方式,使得网络中节点的吞吐量能够达到其最大流量理论上限,因而 受到越来越多的关注。无线网络环境是网络编码的一个重要应用的领域,因为无线链路的不可靠性和物 理层广播特性非常适合使用编码的方法。应用网络编码,可以解决传统路由、跨层设计等技 术无法解决的问题,提高网络性能。无线传感器网络、无线Mesh网络等无线自组织网络都 可以使用网络编码技术显著提高多跳链路的传输性能。虽然当前已有部分针对无线网络的网络编码机制提出,但对于如何在无线网络中 具体应用网络编码技术的相关研究都还基本处于空白以及起步阶段,当前已经提出的网络 编码方案给无线网络所带来的增益还有很大的提升空间。近年来,网络编码的研究重点逐 步转移到无线网络领域。但是在网络编码的理论和应用方面,无线自组织网络与有线网络 有着显著的差别,这主要是由无线自组织网络的结构特征和无线传输信道的时变衰落特性 决定的。无线网络中的网络编码与传统网络编码主要区别之一在于其可以显著增加单播 流的网络吞吐量。图1所示为一无线网络中3节点使用网络编码进行通讯的实例节点A、 节点5相互传递信息&,&。图1中的箭头代表无线链路。图1采用传统的无线通信方式, R依次将收到的信息A和办分别发送给节点A和节点5。这样经过4次传输传输节点B可 以获得信息A,而节点^可以获得信息&。但是如果利用无线介质的广播特性,将A和& 作异或运算后直接转发出去,则在节点5处,根据接收到的信息可恢复出A来;同理,在节 点A处也可以恢复出信息&来。因此采用了网络编码技术后(见图2),只需要使用3次传 输就可以实现传统方式的所有通信要求。基于上述思想,国外专家Katti等提出的基于机会的网络编码方法(缩写C0PE), COPE是首次研究网络编码在无线环境中的协议层面上具体实现的问题。在COPE协议中要 求每个节点利用本地信息各自决定哪些数据包需要进行编码以及如何进行编码。COPE协议 能有效的支持多路单播流。通过C0PE,网络的吞吐量可以得到有效的提高。COPE的基本工作原理如下C0PE利用了无线媒介的广播特性,即节点的每次传输 都能够被传输节点的邻居节点所监听到。同时每个节点都暂时存储其监听到的报文,并向 邻居报告其监听到了那些报文。对于每个邻居节点来说,节点都维护两个虚拟队列,一个用 于小报文(报文长度小于100字节),另一个虚拟队列用于大报文。对应某个邻居节点的虚 拟队列中包含指向输出队列中到该邻居节点的报文。节点选择报文时,仅考虑每个虚拟队列头部的报文。当节点发送报文时,该节点就利用邻居节点监听到的报文信息来机会的进行编 码,将多个报文进行X0R操作后将编码后的单个报文广播出去,编码报文中的每个原始报 文,都能够以足够大的概率被其目的接收节点正确解码。COPE扩展了上一节中三个节点的 无线网络编码例子,能够在一次传输中X0R多个报文。对于网络编码算法来说,在编码时如何选择适合的报文对于编码算法的效率有着 至关重要的影响。这是由于网络编码的算法在进行编码时,只有尽量选择包含报文数目多 的编码组合,同时尽量将长短接近的报文编码到一起,才能减少每次编码传输时的浪费,最 大限度的发挥网络编码的效率。如果将两个报文长短差异较大的报文编码到一起,则意味着长度较长的报文有很 大的一部分报文不能与长度较短的报文进行编码,大大的影响了网络编码的算法效率。例 如,如果将报文长度分别为1500bytes和lOObytes的报文编码到一起,则长度为1500byteS 的报文中将有1400bytes的报文长度相当于没有使用网络编码算法,等同于单播发送了 1400bytes的报文,大大降低了网络编码的效率。传统的无线网络编码机制如COPE在进行编码报文选择时,首先将报文从先进先 出(FirstlnFirstOut,缩写为FIFO)报文队列中取出,并判定报文是属于大报文或者小报 文。并根据报文的大小,选择合适的虚拟队列。例如,如果报文属于小报文,则C0PE仅检查 用于小报文的虚拟队列。虽然C0PE简单的给出了根据报文大小选择编码模式的机制,可以 一定程度上提高编码算法的效率。然而该机制过于粗糙,仅仅根据报文的大小简单进行区 分,在报文的大小差别较大时,仍然会有较多长度差异较大的报文被编码到一起,对网络编 码的效率带来了较大的影响。同时,C0PE算法采用FIFO (先进先出,FirstlnFirstOut)模式网络编码算法,在 选取编码组合模式的报文时,仅考虑每个虚拟队列头部的报文,这样大大减少了可供选择 的编码组合模式,有可能不能选择出包含报文数目较多的编码组合模式,这样也大大影响 了网络编码算法的效率。

发明内容
本发明的发明目的是,克服现有编码技术的缺点,提出网络编码效率这一新技术, 在进行网络编码报文选择时,利用网络编码效率作为度量,尽可能选择编码效率最高的报 文编码组合,进一步提升网络编码在无线网络中的性能。本发明的编码方法是这样的无线网络中的编码节点进行编码时,编码节点从传 输队列的任意报文中取出第一个报文(标记为P)进行传输,然后节点检查每个维护的虚 拟队列,并从虚拟队列的任意报文中选择出一个与报文P进行编码,按照如下的计算公式 进行效率选择网络编码后的传输可以携带《个分组,即-.P”P2, ...,Pn,n彡2,各分组长 度分别为A,A,…,4,那么将上述分组进行网络编码后一次转发出去的网络编码效率为 (丄+厶+…幻/!^仏,厶,…,厶},其中maxiy^A,…,人}返回A,A,…,厶中的最大值。然 后选择编码效率最高的编码组合模式进行传输。上述编码方法中,所述的虚拟队列的任意报文,基于先入先出(FIFO)策略,是取出 每个虚拟队列头部的报文进行编码。
4
报文的最终目的节点会负责必要的报文重排序,因此不用关心节点的FIFO报文传输队列中的报文顺序。上述编码方法中考虑编码报文的每个接收者能够正确接受并解码其原始报文的 概率,该编码概率Pd的计算方法为COPE的机会猜测机制的计算方法,其中每个接收者的解 码概率必须高于给定的值G,所述的给定值优选设置为0. 8。本发明的编码方法,使用传输效率作为评价标准,能够提高网络编码算法在无线 网络的数据传输的性能。并分别发明了基于先进先出(FIFO)策略以及非先进先出策略的 编码效率感知网络编码算法,可以选择出编码效率最高的编码模式组合。在基于非先进先 出策略的网络编码算法中,节点可以从虚拟队列的任意报文中选择一个相同的子集合,意 味着可以有更多的编码组合模式供选择,可以选择出编码机会较大的编码组合模式;通过 选择出编码效率最高的编码模式组合,可以有效的提升每次传输中每比特所携带的有效信 息量,从而有效提升网络编码算法的效率。同时,本发明所设计的方案为分布式协议,易于 在现有的实际网络中实现及部署。上述编码效率感知的编码算法中,所有的额外编码增益,计算负载都能通过调整 虚拟队列的长度7来控制。假设在网络中,节点的平均度,即平均的邻居个数为々(々>1), 则COPE的编码算法的复杂度如下所示用于检查在一个下一跳节点是否能够正确解码某 编码报文的时间为0⑵)。由于节点共有0汐)个虚拟队列,因此在COPE中,先进先出编码算 法的负载为例炉)。在基于先进先出策略的效率感知网络编码算法中,算法复杂度与C0PE算法相同。 而在采用非先进先出策略的编码效率感知网络编码算法中,由于节点共有0(幼个虚拟队 列,每个虚拟队列的长度为7,而用于检查在一个下一跳节点是否能够正确解码某编码报 文,以及计算该组合模式的编码效率的时间同样为cm,因此总的编码算法时间复杂度为 0{Qlf)。可以看出,编码效率感知的编码算法的编码算法复杂度可以通过调整虚拟队列的 长度g的值得到有效的控制。


图1,无线网络中针对多路单播流不使用网络编码的情况。图2,无线网络中针对多路单播流使用网络编码的情况。
具体实施例方式现有的C0PE算法,在进行编码时,如果报文的长度不同,则将长度较短的报文使 用空白字节补齐,再与长度较长的报文进行编码。因此使用空白字节的部分对于网络编码 算法来说是个浪费。我们用下边的例子来说明网络编码效率的概念。以图1中的场景为例,如果节点 A向节点5传递长度为lOObytes的报文A以及长度为500bytes的报文仏,节点5向节点 A传递长度为lOOObytes的报文办。节点在接收到报文外和办后,将A和办作异或运 算后发送,需要将A使用空白字节补齐至lOOObytes后再编码,则报文外 办的报文长度 为lOOObytes,该lOOObytes中单位字节所携带的有效信息量为(100+1000)/1000=1. 1。而如果节点J向节点A传递长度为500bytes的报文仏,节点将仏和办作异或运算后发送,则报文A 办中单位字节所携带的有效信息量为(500+1000)/1000=1. 5。因 此,如果尽量选择编码效率较高的编码报文组合模式,就能有效的提升该次传输中每比特 所携带的有效信息量,从而有效的降低总的传输次数,提升总的网络吞吐量。应此,我们使用接下来每比特所携带的有效信息量来衡量网络编码的效率。接下 来,我们给出每比特所携带的有效信息量的正式定义。定义1.每比特所携带的有效信息量
若一个编码报文组合模式^中包含《个报文…,/V每个报文的报文长度分别 为厶,厶,…,厶,则该编码报文组合模式C的编码效率,即每比特所携带的有效信息量/^的 定义如下
Jlc二 Uj+12+, ...,+ln) /max Uj, 12’ …’ ln] 其中max仏,厶…,丄}返回力,厶…,厶中的最大值。从每比特所携带的有效信息量的定义中可以看出,若某个编码报文组合模式中包 含的报文数目(即该编码报文组合模式的编码机会数)越多,或者不同报文间的长度差距越 小,该编码报文的每比特所携带的有效信息量值就越大,即意味着编码组合模式的编码效 率就越高。因此,如果每个节点在每次传输中都选择编码效率最高的编码效率组合,就能有 效的提升整个网络的吞吐量。编码效率感知的网络编码算法要解决的关键问题就在于选择将哪些报文编码在 一起,以减少无线网络中的总传输数目。在COPE中,每个节点都维护一个先进先出(FIFO)的输出队列,队列中存储了该节 点将要转发的所有报文。对于每个邻居节点,节点都维护两个个虚拟队列,一个用于小报文 (报文长度小于100字节),另一个虚拟队列用于大报文(报文长度大于100字节)。对于某邻 居节点J的虚拟队列维护了多个指针,指针指向在FIFO输出队列中下一跳为此邻居节点J 的报文。当COPE在进行编码报文选择时,首先将报文从FIFO先进先出报文队列中取出,并 判定报文是属于大报文或者小报文。并根据报文的大小,选择合适的虚拟队列,节点仅从每 个虚拟队列的头部选择报文。所以现有的C0PE采用的编码机制并不能完全发挥网络编码算法的效率。同时当 前的一些工作,已经证明了最优的编码选择问题为NP难问题。因此,为了在实际的网络中 能够顺利应用,有效的增加网络吞吐量,我们必须要采用分布式的网络编码算法。同时,为 了在每次传输中都发送编码效率最高的编码组合模式,就不能仅仅简单的将报文划分为大 小两个队列,而需要根据网络编码效率的概念,对现有的网络编码算法作出改进。基于每比特所携带的有效信息量的定义,考虑对于一个具有 个邻居节点的 {/^,/^,...,/U的中继节点 。如果 =1,则在节点 上不存在网络编码机会。现在考虑 通用的场景,即 ? 2的情况。我们用表示节点巧.与/7,.之间的传输概率,并设/^=1, i=l, 2,…, 。在节点R上,对于每个邻居节点巧维护的虚拟队列长度为《,在(h中的报文
数目为&。将位于虚拟队列仏中的第A个报文记做.<。对于某报文来说,其发送者和接
收者分别被记为sk)议Rd(p)。本发明方法基于先进先出(FIFO)策略的编码效率感知的采用头部选取的网络编 码算法
我们对C0PE算法进行扩展,给出基于先进先出(FIFO)策略的编码效率感知的网络编码算法,该算法的主要核心内容在于在节点进行编码报文选择时,根据式(1)来计算并选择每比特单位信息量最高的编码模式组合进行传输,以最大化每次传输的编码效率。首先,节点&从传输队列的头部取出第一个报文进行传输。我们将取出的报文记 做P。接下来节点&检查每个虚拟队列,并取出每个虚拟队列头部的报文尝试同已取出的 报文/7进行编码,并选择编码效率最高的编码组合模式进行传输。虽然基于先进先出策略的编码效率感知的网络编码算法能够为每次编码传输都 选择出编码效率最高的编码组合模式,然而与COPE算法类似,其基于先进先出策略的编码 算法很大程度上限制了节点上能够被创造出来的网络编码机会,这种传统的FIFO编码机 制在易丢失的无线环境中并不是最佳的编码算法选择。这是由于,基于先进先出的FIFO的 编码算法只从每个虚拟队列的头部选择报文,意味着节点的编码机会受限于有多少个邻居 能够监听到虚拟队列头部报文的一个相同的子集合。而从每比特所携带的有效信息量的定义中可以看出,增加节点上网络编码的机会 同样可以进一步提升网络编码的效率。与传统先进先出的策略不同,如果在网络编码算法 中采用非先进先出的报文选择策略,编码机会就能够得到进一步提升,这是由于编码节点 可以从虚拟队列的任意报文中选择一个相同的子集合,而不仅限于虚拟队列头部的报文子
皇A
朱口 ο本发明方法基于非先进先出策略的编码效率感知的网络编码算法
在节点进行编码时,节点能够从每个虚拟队列中选择任意一个原始报文,而不仅限 于虚拟队列头的第一个报文,来进行网络编码组合,并根据式(1)来计算并选择编码效率 最高的编码模式组合进行传输。我们假定报文的最终目的节点会负责必要的报文重排序, 因此在进行编码时,我们不关心节点的FIFO报文传输队列中的报文顺序。首先,节点&从传输队列取出第一个报文进行传输。我们将取出的报文记做/7。 接下来节点&检查每个虚拟队列,并尝试从每个虚拟队列中选择出一个报文同已取出的报 文/7进行编码,在选择报文组合时,记录编码效率最高的编码组合模式,并最后选择编码效 率最高的编码组合模式进行传输。上述编码算法都需要考虑编码报文的每个接收者能够正确接收并解码其原始报 文的概率。我们使用COPE中相同的机会猜测机制来计算解码概率怂。每个接收者的解码 概率必须要要高于给定的值仏在这里,我们将^的缺省值设置为0. 8。同时,上述编码效率感知的编码算法中,所有的额外编码增益,计算负载都能通 过调整虚拟队列的长度7来控制。假设在网络中,节点的平均度,即平均的邻居个数为々 (々>1),则COPE的编码算法的复杂度如下所示用于检查在一个下一跳节点是否能够正确 解码某编码报文的时间为^汐)。由于节点共有^汐)个虚拟队列,因此在COPE中,先进先出 编码算法的负载为例炉)。在基于先进先出策略的效率感知网络编码算法中,算法复杂度与COPE算法相同。 而在采用非先进先出策略的编码效率感知网络编码算法中,由于节点共有0(幼个虚拟队 列,每个虚拟队列的长度为W而用于检查在一个下一跳节点是否能够正确解码某编码报 文,以及计算该组合模式的编码效率的时间同样为cm,因此总的编码算法时间复杂度为 0{Qlf)。可以看出,编码效率感知的编码算法的编码算法复杂度可以通过调整虚拟队列的 长度7的值得到有效的控制。
权利要求
编码效率感知的网络编码方法,其特征是流程是这样的无线网络中的编码节点进行编码时,编码节点从传输队列的任意报文中取出第一个报文(p)进行传输,然后节点检查每个维护的虚拟队列,并从虚拟队列的任意报文中选择出一个与报文(p)进行编码,按照如下的计算公式进行效率选择网络编码后的传输可以携带n个分组,即p1, p2, …, pn, n≥2, 各分组长度分别为l1, l2, …, ln,将上述分组进行网络编码后一次转发出去的网络编码效率为 (l1+l2+ …+ln)/max {l1, l2, …, ln}, 其中max {l1, l2, …, ln}返回l1, l2, …, ln中的最大值;然后选择编码效率最高的编码组合模式进行传输。
2.根据权利要求1所述的编码效率感知的网络编码方法,其特征是编码节点在进行 编码时,基于先入先出(FIFO)策略考虑其虚拟队列的报文,仅取出每个虚拟队列头部的报 文进行编码。
3.根据权利要求1所述的编码效率感知的网络编码方法,其特征是编码节点在进行 编码时,基于非先入先出策略考虑其虚拟队列的报文,节点能够从每个虚拟队列中选择任 意一个报文,而不仅限于虚拟队列头的第一个报文,来进行编码。
全文摘要
编码效率感知的网络编码方法,涉及一种无线网络技术,它是这样的无线网络中的编码节点进行编码时,从传输队列的任意报文中取出第一个报文(标记为p)进行传输,然后节点检查每个维护的虚拟队列,并从虚拟队列的任意报文中选择出一个与报文p进行编码,并进行效率选择,然后选择编码效率最高的编码组合模式进行传输。本发明的编码方法,使用传输效率作为评价标准,能够提高网络编码算法在无线网络的数据传输的性能,有效的提升每次传输中每比特所携带的有效信息量,提升网络编码算法的效率,并易于在现有的实际网络中实现及部署。
文档编号H04L1/00GK101800629SQ20101013988
公开日2010年8月11日 申请日期2010年4月7日 优先权日2010年4月7日
发明者高雪 申请人:无锡泛联物联网科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1