本发明属于光无线融合网络通信技术领域,涉及woban中带有冗余编码的并行路径转发方法。
背景技术:
随着智能终端设备的日益普及,各种移动应用和多媒体业务不断丰富,用户对高带宽的需求增长迅猛,传统的接入方式已无法满足日益增长的带宽需求。结合了光网络和无线网络两者优势的光无线融合接入网(wireless-opticalbroadband-accessnetwork,woban)被认为是未来最理想和最高效的接入网解决方案。
woban是由后端大容量的无源光网络(passiveopticalnetwork,pon)和前端灵活接入的无线网状网络(wirelessmeshnetwork,wmn)组成的新型接入网架构。后端的pon具有大带宽、低损耗和高可靠的特性,前端的wmn具有易部署、低成本和高灵活的特性,作为二者的融合网络,woban能够为用户提供更快速、更高效的服务。然而,随着业务量的不断增大,任意一个网络故障,如干线光纤(feederfiber,ff)、配线光纤(distributionfiber,df)、光网络单元(opticalnetworkunit,onu)、无线链路(wirelesslink,wl)等发生故障都将引起大量的数据丢失,造成大量的业务中断。作为直接面向终端用户的接入网,任意一个网络故障将严重影响用户的主观体验。因此,快速高效的生存性保障机制对woban起着至关重要的作用。
目前,针对woban中生存性保障技术的研究主要分为两大类。第一类是利用无线前端网状网络的自愈性,在wmn中寻找可利用的路由转发受故障影响的业务数据,此类研究可解决配线光纤、onu、无线节点及无线链路等设备的故障。yliu,jwu,yyu,zning等在“deploymentofsurvivablefiber-wirelessaccessforconvergedopticalanddatacenternetworks”【opticalswitchingandnetworking,2014,14(8):226-232.】中提出一种无线重路由算法(wirelessreroutingwithbackupradios,wrbr),通过为onu分配备用onu,并在备用onu中为该onu预留备用资源解决单个配线光纤故障问题。thotas,bhaumikp,chowdhuryp等在“exploitingwirelessconnectivityforrobustnessinwoban”中提出风险和时延感知路由协议(risk-and-delay-awarerouting,radar)【ieeenetwork,2013,27(4):72-79.】,无线路由节点通过主动维护风险列表,及时感知网络故障,并通过时延感知减少故障后重路由的路径切换时间以减少数据的丢失。该类方法虽然无需额外的成本,但需要故障后重新寻找恢复路由,需要较长的恢复时间,会造成大量的业务数据丢失。
另一类研究是通过额外增加备用光纤或备用无线收发设备来转移受故障影响的业务数据。此类研究可解决olt、干线光纤、配线光纤、onu、无线节点及无线链路等设备的故障。yliu,lguo,xwei在“optimizingbackupoptical-network-unitsselectionandbackupfibersdeploymentinsurvivablehybridwireless-opticalbroadbandaccessnetworks”【journaloflightwavetechnology,2012,30(10),1509-1523】中提出一种优化的备用onu选择和备用光纤部署机制(optimizingbackuponusselectionandbackupfibersdeploymentscheme,obof),以最小化恢复代价为目的,采用模拟退火算法优化备用onu的选择及备用光纤的部署。lguo,yliu,fwang等人在“cluster-basedprotectionforsurvivablefiber-wirelessaccessnetworks”【journalofopticalcommunicationsandnetworking,2013,5(11):1178-1194.】中提出一种基于簇结构的保护机制(cluster-basedprotection,cbp),采用启发式算法和线性规划模型将网络进行分簇,同时考虑了备用onu的选取以及备用光纤的部署问题。该类方法虽然预留了备用资源,能快速的恢复受故障影响的业务数据,但需要部署额外的备用光纤,恢复成本较高。
上述研究虽然能快速恢复受故障影响的业务数据,但是即使很短暂的业务终端也会造成大量的业务数据丢失,同时备用光纤的部署也增加了故障恢复的成本。因此如何减少业务数据的损失以及如何减少故障恢复的成本是设计woban中生存性保障机制的关键。
技术实现要素:
有鉴于此,本发明的目的在于提供woban中带有冗余编码的并行路径转发方法。针对现有woban生存性保障方法业务数据丢失大,恢复成本高的问题,本发明根据业务可靠度需求计算符合要求的并行路径数,并根据排队理论计算最小时延的并行路径。随后在源节点利用冗余编码将业务数据包进行编码,并根据路径数、丢包率等参数计算最优的流量分配方案和编码包数。当目的节点从多条并行路径中接收到足够的线性无关的编码包后,即可恢复出原始业务数据。本发明通过对原始业务数据包进行冗余编码并联合并行路径转发,在数据包转发过程中容忍df、onu、无线节点和无线链路等故障。任意一条路径中的网路设备发生故障后,目的节点只需从其他路径接收足够的编码包即可恢复出原始数据,无需从新寻找路由,实现了快速无损的业务恢复。相比其他方法,本方法在数据无损恢复的基础上降低了业务恢复成本,同时提升了业务恢复的速度。
为达到上述目的,本发明提供如下技术方案:
woban中带有冗余编码的并行路径转发方法,包括链路状态广播阶段、链路权值分配阶段、并行路径计算阶段、冗余编码传输阶段,
在所述链路状态广播阶段,无线路由节点及onu将链路状态信息广播到网路中;
在所述链路权值分配阶段,无线路由节点及onu根据链路状态信息中的参数计算光纤和无线链路的时延,并将时延设为该链路的权值;
在所述并行路径计算阶段,无线路由节点及onu根据业务的可靠度需求、光纤和无线链路误码率计算出符合业务需求的并行路径数n,并重复利用dijkstra最短路径算法计算出n条最小时延的并行路径;
在所述冗余编码传输阶段,无线路由节点及onu计算最优的编码包流量分配方案和最优数编码数据包数m,再进行冗余编码并通过并行路径传输到目的节点。
进一步,所述链路状态信息包括参数:节点类型、节点标识、出口链路组、数据包密度、丢包率、队列长度、时间戳。
进一步,所述无线路由节点及onu节点将链路状态信息广播到网路中具体为:
无线路由节点将链路状态信息发送给无线路由节点及onu,onu将链路状态信息同时发送给无线路由节点、onu和olt。
进一步,所述计算光纤和无线链路的时延具体为:
onu到olt的上行时延为tonu,olt=tr+tg+ts+tq+tp,其中tr为数据包到达和发送第一个request信息之间的时间,tg为发送第一个request信息到接收到发送该数据包的grant信息之间的时间,ts为接收到该数据包的grant信息后,等待授权时隙发送数据的时间,tq为授权时隙到来后,发送队列中该数据包之前的数据所需时间,tp为数据包在光钎链路上的传播时延;
当onu的队列长度
当onu的队列长度
进一步,所述e[tcycle]的计算方法为:
首先根据排队理论求出任意一个onu在下一个周期申请的带宽
然后根据onu在下一个周期申请带宽的大小e[vi(k+1)]将onu分为2组:高负载onu(highloadonu,hlonu)和低负载onu(lowloadonu,llonu),其中集合hlonu中的onu满足e[vi(k+1)]>wmax,即onu的申请带宽大于最大授权带宽,集合llonu中的onu满足e[vi(k+1)]≤wmax,即onu的授权带宽小于或等于最大授权带宽;当
进一步,所述
进一步,所述计算出符合业务需求的并行路径数n具体为:对于任意一条并行路径p,包含
进一步,所述计算最优的编码包流量分配方案具体为:当x1=x2=…=xk=…=xn=m/n,其中xk表示第k条并行路径中传输的编码数据包数,xn表示第n条并行路径中传输的编码数据包数,即每条并行路径上的编码数据包数相等时,在任意一条并行路径失效后,目的节点成功解码恢复出原始数据包的基础上,所需编码数据包数m最小;其中m为编码包的个数,n为并行路径数。
进一步,所述最优数编码数据包数m计算方法为:
在不考虑无线链路丢包时,任意n-1条路径中传输的编码数据包总数大于或等于m,即
在考虑无线链路丢包时,令ei为路径pi={e1,e2,…}中第i条链路的丢包率,则对于任意一个数据包,其成功传输到目的节点的概率为
进一步,所述进行冗余编码并通过并行路径传输到目的节点具体为:源节点将需要发送的数据包按照每组m个进行分组,对每组内的数据包进行冗余编码并生成m个编码数据包,随后根据流量分配方案,将编码数据包通过n条并行路径传输到目的节点;目的节点从n条并行路径中接收到m个线性无关的编码包,解码并恢复出m个原始数据包;当任意一条并行路径失效,根据编码方案,目的节点从其他n-1条并行路径中接收到至少m个线性无关的编码包。
本发明的有益效果在于:本发明提出的生存性保障方法,将原始数据包进行冗余编码,消除了业务对单个数据包的依赖,当单个数据包丢失后,源节点无需重传,而目的节点仍然可以成功恢复出原始数据包;本方法结合并行路径传输编码包,并考虑任意一条并行路径失效后目的节点仍可成功情况下计算并行路径数和冗余编码包数,因此本方法可以容忍任意一条路径上的设备故障导致整条路径中断,相比其他方法,本方法无需重传数据包,可以快速恢复原始数据包;本方法无需添加额外备用光纤或备用无线收发设备,极大降低了网络部署成本。
附图说明
为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:
图1为woban的网路结构图;
图2为带有冗余编码的并行数据转发方法流程图;
图3为onu与olt交互示意图;
图4为onu内部队列示意图;
图5为轮询周期示意图。
具体实施方式
下面将结合附图,对本发明的优选实施例进行详细的描述。
本方法通过融合冗余编码并行路径转发,以较低的时延和较少的资源对woban中的配线光纤故障、onu故障、无线节点和链路故障进行保护及快速无损的数据恢复。woban网络的网络结构图如图1所示。本方法主要包括以下步骤,如图2所示。
1.链路状态广播阶段:节点(onu及无线路由节点)周期性向网络中广播链路状态信息(linkstateadvertisement,lsa),其格式如表1所示。同时onu需要将接收到的无线路由节点的lsa发送到olt,以便olt在下行数据传输时选择合适的并行路径进行传输。
表1lsa数据包格式
其中:
1)节点类型为router或onu;
2)节点标识为该节点在网络中的唯一标识;
3)出口链路组为以该节点为起点的所有出口链路。若节点类型为router,则这部分包含以该无线路由节点为起点的所有出口链路;若节点类型为onu,则这部分包含该onu到olt的光纤链路和以该onu为起点到无线路由节点的无线链路;
4)数据包密度为无线链路或光纤链路上数据包到达的密度;
5)丢包率为该链路的平均丢包率,无线链路的丢包率可通过发送探测包获得,由于光纤链路较稳定,因此光纤链路的丢包率设为0。
6)队列长度为onu内部队列的长度,节点类型为router时该字段为null。
7)时间戳为该lsa产生的时间,假设全网的时间保持同步。
无线路由节点和onu生成的lsa如表2和表3所示。
表2无线路由节点产生的lsa
表3onu产生的lsa
2.链路权值分配阶段:当有业务需要传输时,源节点首先需要根据各节点的lsa更新网络中各链路的权值,本方法将根据lsa中的参数计算出各链路的时延,并将时延设为链路的权值。
1)无线链路时延
假设woban无线前端的无线路由节点采用tdma的方式共享信道,数据包在wmn中无线链路的时延主要包括四个方面:传播时延、传输时延、时隙同步时延和排队时延。
则对于任意一条无线链路u-v的时延duv可通过公式(1)计算。
其中,1/μ表示数据包平均长度,cuv表示链路u-v的有效容量,λuv为链路u-v上的数据包密度。
2)光纤链路时延
根据动态带宽分配算法(dynamicbandwidthallocation,dba),woban后端的pon网络上行传输采用时分复用的方式传输数据,下行传输采用广播的方式传输数据。
①onu到olt的上行时延
上行传输时,所有onu通过时分复用的形式共享上行信道,每个onu只能在olt授权的时隙内发送上行数据和request信息。request信息中包含了onu的队列长度,表示该onu在下一个轮询周期期望发送的带宽。假设onu内部队列的调度采用fifo机制,根据dba算法,一个数据包到达onu后,onu和olt的整个交互过程如图3所示。
则数据包从onu到olt的总时延tonu,olt如公式(2)所示。
tonu,olt=tr+tg+ts+tq+tp(2)
tr为数据包到达和发送第一个request信息之间的时间。其均值可通过公式(3)计算,其中tcycle为轮询周期。
e[tr]=e[tcycle]/2(3)
tg为发送第一个request信息到接收到可以发送该数据包的grant信息之间的时间。如图4所示,在负载较高的情况下,当数据包到达时,队列中已有较多的数据包,在一个轮询周期中,onu无法发送全部数据包,因此tg可能包含多个轮询周期。若onu没有将队列中的数据包全部发送出去,则此时onu必然被授予了最大的授权带宽wmax,则tg的均值可通过公式(4)计算。
其中,q为onu的队列长度,
ts为接收到该数据包的grant信息后,等待授权时隙发送数据的时间,由于dba算法只在该onu的授权时隙到来之前发送grant信息,因此ts非常小,可以忽略不计。
tq为授权时隙到来后,发送队列中该数据包之前的数据所需时间。tq可通过公式(5)计算,其中ro为光纤的传输速率。
tp为数据包在光钎链路上的传播时延。其均值如公式(6)所示,其中,rtt为onu的往返时延。
e[tp]=rtt/2(6)
因此,数据包从onu到olt的上行总时延tonu,olt可表示为公式(7)。
在公式(7)中,由于轮询周期长度的均值e[tcycle]和授权带宽的均值
假设第i个onu的数据包到达服从泊松分布,其到达率为λi,数据包的平均长度为1/μ,wi(k)为onui在第k个轮询周期中的授权带宽,vi(k)为onui第k个轮询周期中向olt申请的带宽,ni(t)表示onui在时间t内到达的数据包个数。如图5所示,onui的第k个轮询周期长度为
对于onui在第k个轮询周期中到达数据包的个数为n的概率为公式(8)所示。
则onui在第k个轮询周期中到达数据包个数的均值为公示(9)所示。
在第k+1个轮询周期,onui申请的带宽大小为公式(10)所示。
根据接收到所有onu的lsa,可以计算出任意一个onu的e[v(k+1)]。将所有的onu分为两组:高负载onu(highloadonu,hlonu)和低负载onu(lowloadonu,llonu)。其中集合hlonu中的onu满足e[vi(k+1)]>wmax,llonu中的onu满足e[vi(k+1)]≤wmax。
a)当
此时网络负载较小,onui在第k+2个轮询周期所获得的授权带宽应等于第k+1个轮询周期申请的带宽,即公式(11)所示。
e[wi(k+2)]=e[vi(k+1)](11)
第k+2个轮询周期长度可表示为公示(12),其中k为onu的个数,tg表示保护时隙。
在稳定状态时,不同轮询周期长度的均值应相等,即
则公式(12)可化简为。
因此可以得到,轮询周期的均值e[tcycle]为公式(15)所示。
b)当
onui在第k+2个轮询周期所获得的授权带宽e[wi(k+2)]应满足公式(16)。
第k+2个轮询周期长度如公式(17)所示。
同理,在稳定状态时,不同轮询周期长度的均值应相等,则上式可简化为公式(18)。其中|hlonu|为集合hlonu中的节点个数。
c)当
onui在第k+2个轮询周期所获得的授权带宽如公式(19)所示。
e[wi(k+2)]=wmax(19)
同理可以得到,轮询周期的均值e[tcycle]为。
综上所述,onui轮询周期长度的均值e[tcycle]为公式(21)所示。
onui所获得授权带宽的均值
根据公式(22)、公式(23)和公式(7),即可求出onu到olt的上行时延tonu,olt。
②olt到onu的下行时延
olt到onu的下行时延包括了传输时延和传播时延。当olt到各个onu之间的链路容量相等时,对于任意的一个数据包,其到每一个onu的传输时延都相等,因此本文不考虑传输时延。则下行时延tolt,onu如公式(23)所示。
其中
3.并行路径计算阶段:本发明重复利用dijkstra最短路径算法找出具有最小时延的onu分离的并行路径。
1)计算并行路径数n
设业务要求的可靠度为r,每条无线链路的误码率相同为
同理,数据包在光纤链路上无差错传输的概率po为。
由于无线路由节点到不同onu的跳数不同,为了简化运算,设
对于任意一条路径p,包含
由于配线光纤故障、onu故障、无线节点和无线链路等故障都将导致一条路径的失效,考虑任意一条路径失效后,目的节点仍然能够成功解码出原始数据包。因此至少有n-1条路径成功传输,目的节点才能成功解码出原始数据包。则n条并行路径的可靠度r′为公式(28)所示。
n条并行路径的可靠度应满足r′≥r,因此有
根据公示(29)即可求出满足可靠度r的并行路径数n。
2)寻找n条并行路径
首先初始化辅助图g′,辅助图包含了所有的光纤链路以及无线链路。在g′中使用dijkstra最短路径算法计算出从源节点到目的节点(无线路由节点到olt或相反方向)的第1条路径,然后更新g′,在g′中删除第1条路径所经过节点间的链路(双向链路都要删除)。在更新后的g′中继续使用dijkstra最短路径算法计算出第2条路径,如此循环n次,即可计算出n条onu分离的并行路径。
4.冗余编码传输阶段:源节点采用冗余编码将m个原始数据包编码成m个编码数据包,并根据数据包流量分配方案将数据包发送到n条并行路径中。若中间节点为多条路径的交叉节点,则对较短时间τ内接收到同一组中的k个编码数据包进行再编码。当目的节点接从n条并行路径中接收到m个线性无关的编码数据包后,即可成功解码并恢复出原始数据包。
1)最优数据包流量分配方案
编码数据包的流量分配问题即如何将m个编码数据包分配到n条路径中。由于配线光纤、onu或者无线链路等发生故障后整条路径上的编码数据包将无法传输到olt,而n条路径中流量分配具有差异性,每条路径上的数据包个数不相同,因此损失的编码数据包个数也不相同。为了在保证olt能够在系统发生故障后收到m个线性无关的编码数据包,在不同的流量分配方案下,所需编码数据包个数m不同。同时在相同的编码数据包个数m的情况下,不同的流量分配方案也将影响olt是否能够成功接收到m个线性无关的编码数据包。
因此本发明的主要目标是在配线光纤、onu和无线链路发生故障的情况下,保证olt能成功解码恢复出原始数据包的基础上,寻找最优的流量分配方案使编码数据包个数m最小。
假设原始数据包为m个,经过随机线性网络编码后产生m个编码数据包,所有编码数据包都是线性无关的。nk代表第k条并行路径,xk代表并行路径nk上传输的编码数据包个数。则有公式(30)所示。
x1+x2+…+xk+…+xn=m,1≤k≤n(30)
假设任何一条路径中的配线光纤、onu或者无线链路发生故障后,该路径上传输的编码数据包将全部丢失。同时并行路径中的数据包个数按照升序排列,如公式(31)所示。
0<x1≤x2≤…≤xk≤…≤xn<m,1≤k≤n(31)
根据公式(30)和公式(31)有
x1+x2+…+xk+…+xn=m≤n·xn(32)
可以得到
xmax=xn≥m/n(33)
同理可以得到
xmin=x1≤m/n(34)
在不考虑链路丢包的情况下,当n条并行路径中任意一条路径失效后,目的节点仍然能够解码恢复出原始数据,则任意n-1条路径中传输的编码数据包总数应大于或等于m。
当路径nn失效后,要保证目的节点能成功解码,则其余n-1条链路上传输的编码数据包总数应满足公式(35)。
x1+x2+…+xk+…+xn-1=m-xn≥m(35)
即
m≥m+xn≥m+m/n(36)
因此可以得到当xn=m/n时,可使编码数据包数m最小。
同理可以得到公式(37),即每条并行路径上的编码数据包数相等时,可在任意一条并行路径失效后,目的节点能成功解码恢复出原始数据包的基础上,所需编码数据包数m最小。
x1=x2=…=xk=…=xn=m/n(37)
2)最优数编码数据包数m
假设p={p1,p2,…,pn}为n条并行路径的集合,其中pi={e1,e2,…}为第i并行条路径的链路集合。在不考虑无线链路丢包时,任意n-1条路径中传输的编码数据包总数应大于或等于m,根据公式(35)和公式(37)可以得到公式(38)。
即:
为了减轻网络负载,取m的最小值,即编码数据包数m的最小值如公式(40)所示。
则每条路径上传输的数据包个数为
由于每一条无线链路都存在丢包的情况(假设光纤链路不存在丢包),当出现丢包后,会导致目的节点从n-1条路径中接收到少于m个编码数据包,从而不能成功解码,因此为了使发送故障后目的节点能成功解码,则目的节点在丢包后应仍然能够接收到至少m个编码数据包。
目的节点从每条并行路径上应至少接收到m/n-1个编码数据包,因此必须针对每条并行路径上的丢包情况,增加该路径上传输的编码数据包个数,以使目的节点在每条并行路径上能接收到至少m/n-1个编码数据包。
令ei为路径pi={e1,e2,…}中第i条链路的丢包率,则对于任意一个数据包,其成功传输到目的节点的概率为公式(42)所示。
令x′i为考虑丢包率后第i条路径传输的编码数据包个数,则成功到达目的节点的数据包个数应大于或等于m/n-1,如公式(43)所示。
根据公式(44)可以得到每条并行路径上至少应该传输的编码数据包个数
则在考虑丢包的情况下,总的编码数据包个数m如公式(45)所示。
3)进行冗余编码
源节点将需要发送的数据包按照每组m个进行分组,分别用x1,x2,…,xm来表示这m个原始数据包。从有限域fq中随机选取m组随机数构成作为编码系数,每组包含m个随机数构成编码向量ai=(ξ1,ξ2,……,ξm)。用y1,y2,…,ym表示m个编码数据包,其中m>m。则编码过程可表示为公式(46)所示。
当生成m个编码数据包后,源节点将m个编码数据包通过n条路径传输到目的节点。目的节点接收到m个线性无关的编码数据包之后,根据公式(47),即可恢复出原始数据包。
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。