刘庆利,卢美玲+,潘成胜
(1. 大连大学 通信与网络重点实验室,辽宁 大连 116622;2.大连大学 信息工程学院,辽宁 大连 116622)
随着世界各国空间通信技术的研究与发展,为满足空间通信系统中多样化业务的不同QoS(quality of ser-vice)[1],空间数据系统咨询委员会(consultive committee for space data system,CCSDS)研发了高级在轨系统(advanced orbiting system,AOS)[2-5]。AOS采用地面网络的分层模块化的设计思想,信号传输时延较大、误码率高,导致系统不能及时正确地处理数据,容易造成系统吞吐量降低等问题。另外,由于系统中传输数据种类较多、带宽资源有限,致使业务的QoS更加难以得到保障,因此如何合理跨层分配AOS系统中带宽资源成为空间通信的研究热点[6-11]。
在空间通信跨层带宽资源优化研究方面,传统的跨层效用最大化的带宽分配算法(cross-layer bandwidth allocation method based on utility function maximization,CBUFM)联合了应用层、数据链路层、物理层中有关参数,将带宽进行公平、高效的分配,但是没有考虑业务最小带宽请求,不能提高业务的满意度。文献[12]提出一种兼顾公平与效用的跨层动态带宽分配方法,将业务上一次的资源分配结果作为影响因子运用到下一次分配中,保证业务资源的公平分配,但是算法复杂度较高。文献[13]提出了一种基于凸优化理论的卫星跨层动态带宽分配算法(cross-layer bandwidth allocation method based on convex optimization theory,CBCOT),该算法引入了链路层最小保证时隙,保证了业务的基本通信,提高了带宽的利用率以及系统的吞吐量,但是算法没有充分地分析数据链路层的数据积压情况,未能使效用达到最优。文献[14]考虑了积压队列比大小,但是函数中没有考虑链路层中不同业务的最小保证时隙,不能更好满足业务的时隙需求。
针对以上问题,本文联合应用层业务的QoS需求、数据链路层数据队列积压情况和带宽请求、物理层信道状态等参数,提出一种基于QoS业务的跨层带宽分配方法(cross-layer bandwidth allocation method based on QoS ser-vice,CBQOS),该方法将上述各层有关因子创建跨层带宽资源分配的效用函数,并利用动态资源规划算法对带宽进行求解,从而达到优化系统带宽资源的效果。CBQOS方法有效降低了业务因队列积压造成时延,提高了业务的吞吐量和满意度,更好满足了业务的QoS需求。
本文提出的CBQOS方法是在AOS系统的带宽资源有限的条件下,根据应用层各类业务对应的不同QoS要求,通过对各协议层性能指标的联合优化,提高业务的QoS,实现系统网络性能的提升。AOS系统中各个协议层具有不同的性能指标,本文研究的协议层包括应用层、数据链路层和物理层这3层。表1中给出了AOS中3个协议层所对应的具体QoS指标、层间调节任务,从表中可以发现,虽然各层指标不同,但是都服务于应用层不同业务的QoS需求,即网络提供给业务的服务质量,通过传输时延、吞吐量等参数进行描述;另一方面,QoS也代表用户对业务服务的满意程度和对业务性能的综合评价。
表1 各协议层性能指标以及层间任务
针对AOS系统特点以及各协议层有关的调节参数和性能指标,本文建立基于AOS的跨层带宽资源优化模型。如图1所示,通过创建跨层资源控制模块对应用层、数据链路层、物理层信息进行收集。应用层模块提供不同业务的QoS需求,考虑3种业务类型,分别为实时业务、大容量下卸业务和分散业务,其中实时性业务的数据传输紧迫度最高,时延也相对较低,而大容量下卸和分散业务的时延要求不高,但需要根据数据量的大小合理的分配带宽以免在排队等待过程中产生不必要的时延。物理层模块根据应用层的吞吐量等QoS需求选择合适的调制编码方式。数据链路层模块联合虚拟信道参数和跨层资源控制模块接收的应用层与物理层信息,对带宽进行适当的动态调节。
图1 基于带宽分配的AOS跨层资源优化模型
动态带宽分配方法通常表现为效用函数的形式,通过求解效用函数的最优值,便可得到带宽分配的最佳结果。为了使系统中带宽资源的分配更加公平,本文提出的效用函数考虑到不同业务的优先级问题并采用对数的形式将带宽分配效用函数表示为
(1)
其中,U(Xi)表示业务i的效用值大小,Xi代表为业务i分配的时隙数,满足Xi∈{XiXmini≤Xi≤Xmaxi},Xmini代表保证业务i正常传输的最小时隙数,Xmaxi则是业务i实际请求的时隙数量,hi表示业务i的静态优先级。
为了更好满足业务的QoS需求,本文在式(1)的基础上对跨层带宽分配的效用函数进行改进。函数中引入数据链路层业务的队列积压情况、最小保证时隙以及物理层信道状态参数。改进的效用函数如式(2)所示,方法优先为每个业务分配最小的保证时隙,再按效用函数最大化原则进行带宽分配,保证了用户的基本通信
(2)
其中,U(Xi)表示业务i在分配时隙Xi下所产生的效用值大小,Xmaxi代表业务i申请的最大时隙数量,Xmini为业务i最小保证时隙,U(Xmini)表示Xmini产生的效用值,用于补偿因优先为每个业务分配了最小保证时隙而忽略掉的最小时隙的效用值,用式子表示为
(3)
ωi表示业务的动态优先级,由应用层影响因子hi、数据链路层影响因子si以及物理层影响因子ki一起构成,存在
ωi(h,s,k)=ahi+bsi+cki
(4)
其中,a、b、c分别表示hi、si、ki对应的权重系数,用于表示各层对业务的影响程度,存在a+b+c=1。hi表示业务i应用层的静态优先级,反应的是当前业务的紧急程度,hi越大该业务的传输紧迫度越高。si为数据链路层中虚拟信道积压队列比,反应的是链路层中当前业务在一段时间(t0到t)内的积压与发送情况,si越大,表示链路中该业务等待传输的数据越多,此时需要适当的增加时隙,降低传输过程中的丢包率以及排队过程中的时延。ki表示业务i对应的物理层信道状态信息,ki越大,信道状态越好,效用值越高。
si用式子表示式为
(5)
(6)
(7)
ki计算公式为
ki=mi·ri
(8)
mi代表调制阶数,ri代表编码效率。
最终的目标函数为
(9)
(1)划分分配过程:根据待服务的业务数N将时隙分配过程分为N个阶段。
(3)根据子策略计算相应的效用值:根据式(2)计算N个阶段在Xi(Xi=Xmini,…,Xmaxi)下的效用值U(Xi)。
如图2所示,该方法主要涉及以下几个步骤:
(1)业务到达,接收业务各层参数,包括应用层业务优先级,链路层请求带宽大小、最小保证时隙和数据队列积压比以及物理层调制阶数和编码效率。
(2)先为每一个业务分配最小保证时隙,保证用户的基本通信。
(3)统计分配过后剩余的时隙数量X′和还未满足时隙请求的业务数量N′。若X′=0或者N′=0,则说明没有可用的时隙或者所有业务的时隙请求都已经得到满足,带宽分配结束,跳至步骤(6)。否则,继续向下进行步骤(4)。
(4)利用动态资源规划算法求解效用函数,对时隙进行最优分配。
(5)判断业务是否传输完,若传输完,则跳至步骤(6),否则返回步骤(1)。
(6)带宽分配结束。
图2 算法流程
本文的研究涉及3种业务类型,分别为实时性业务(A业务),大容量下卸业务(B业务)以及分散业务(C业务)。将实时性业务优先级系数设置为2,大容量下卸业务优先级系数设置为1.5,分散类业务优先级系数设置为1。应用层、数据链路层、物理层对应的权重系数a、b、c大小分别设置为0.5,0.3和0.2。带宽总数为200个时隙。调制方式主要有4种,见表2。
仿真将本文CBQOS方法与传统的CBUFM方法以及上文提到的CBCOT方法作比较。对比的QoS指标主要包括系统吞吐量、用户的业务满意度和队列积压时延。对于用户来说,业务满意度是评价系统QoS效果的指标,分析业务对于带宽的请求程度,当业务申请的带宽值较大时,其需求度也较大。文中将业务实际分配到的时隙与申请的时隙数量的比值定义为业务的满意度,用式子表示为
(10)
表2 调制方案及相关参数
由图3可知,当业务量较低时3种业务的吞吐量均不断上升。随着业务量的不断增加,本文CBQOS方法中3种业务的吞吐量相差不大,CBCOT和CBUFM方法中具有高优先级的A业务吞吐量远远高于另外两种业务,而优先级较低的C业务吞吐量远远低于另外两种业务。这是因为CBCOT和CBUFM方法只是将应用层业务优先级以及物理层调制因素设置为效用函数的系数,而没有考虑链路层中数据积压队列比的影响,公平性较低。本文CBQOS方法加入虚拟信道积压队列比,所以资源分配更加公平,并且满足了不同优先级业务的QoS要求。当业务量较多时,图3(a)的CBCOT与CBQOS方法3种业务的吞吐量趋于稳定,图3(b)的CBUFM方法A、B业务吞吐量继续上升,C业务吞吐量出现下降趋势。这是因为CBUFM方法没有考虑业务链路层最小保证时隙的分配,所以优先级较低的C业务资源分配未能得到保证,吞吐量越来越低。
由图4可知,随着业务量的增加,3种方法中各业务满意度均不断下降。与CBCOT和CBUFM方法相比,本文CBQOS方法各业务满意度离散程度低,且前两个方法在低业务量下B业务的满意度要高于CBQOS。随着业务量的增加,这两种方法中B业务的满意度开始低于CBQOS方法。这是因为有限的时隙资源要分配给越来越多的业务,导致每个业务的时隙分配数量越来越低,无法满足该业务的时隙请求,所以满意度开始下降。CBCOT与CBUFM方法因为没有在效用函数中引入数据链路层积压队列比所以时隙的分配受应用层优先级影响较大,所以不同业务的满意度差值较大。B业务因为数据量大所以请求时隙也相对较高,所以随着业务量的增加,没有考虑数据队列积压情况、受优先级影响较大的CBCOT与CBUFM方法B业务的满意度开始逐渐低于本文的CBQOS方法。与CBQOS与CBCOT方法相比图(b)中CBUFM方法各业务的满意度下降的斜率不稳定,这是由于CBUFM方法没有考虑链路层最小保证时隙的影响,导致系统分配给各业务的时隙资源得不到保障。
图3 不同业务量下各业务的吞吐量情况
图4 不同业务量下各类业务的满意度情况
图5为不同业务量下各业务的队列积压时延,表示的是数据链路层中各业务的积压数据队列需要传输的时长。由图5可知,随着业务的增加,3种方法中各业务的队列积压时延不断上升,其中CBCOT和CBUFM方法各业务的时延差值比CBQOS大。这是因为业务量的增加,导致系统分配给各业务的时隙数下降,带宽资源得不到满足,各业务时延逐渐增加。本文CBQOS方法考虑了数据积压队比的影响,将时隙资源的分配与业务的积压情况进行联系,所以时隙分配相对公平,不同业务的时延相差不大。另外,B业务的时延随着业务量的增加先大于C业务,然后小于C业务,最后又大于C业务。这是因为在业务量较少时,各业务时隙请求都能得到满足,因为请求时隙的差值较小,所以积压时延受积压队列长度影响较大,B业务积压队列长度比C业务长,所以时延较C业务长;随着业务的增加,各个业务分配的时隙开始受各协议层相关系数的影响,影响系数较高的B业务分配的时隙大于C业务,所以时延小于C业务;当业务量过多,各业务的分配时隙逐渐下降,这时积压队列的长度对时延的影响要远远大于时隙,B业务因为积压队列较长所以时延又大于C业务。
图5 不同业务量下各业务的队列积压时延
为了满足AOS中不同业务的QoS需求,本文提出基于带宽分配的AOS跨层资源优化模型,并基于该模型提出了基于业务QoS的跨层带宽分配方法,该方法在最大化效用的基础上联合了应用层业务优先级,数据链路层数据积压情况,物理层信道状态等有关参数,另外引入了业务的最小保证时隙,提高了资源分配的公平性。同时,采用动态资源规划的算法对资源分配进行最优值的求解。仿真结果表明,该方法在满足高优先级业务QoS的基础上,提高了低优先级业务的吞吐量、满意度,并降低了其队列积压时延,提高了不同业务资源分配的公平性。