朱申丹,徐键卉
(陆军工程大学通信工程学院,江苏 南京 210001)
D2D(Device-to-Device)通信是一种允许移动终端在通信系统的控制下使用系统授权频段进行点到点通信的终端间直接通信技术[1]。在小范围且更靠得住的无线信道间,D2D网络中终端设备可以相互协作互换数据,该方法不但能节约基站的无线资源,更能够进一步提高数据传输的可靠性。但由于无线信道传输中的数据包容易丢失,D2D网络的终端间也需要高效的数据传输方式来提高效率。
网络编码(Network Coding,NC)在2000年由Ahlswede[2]等人首次提出,它可以有效提升通信网络的容量和传输效率,并且能够最大限度地减少有线和无线通信系统的延迟。文献[3]在网络编码提出之后提出的机会式网络编码(Opportunistic Network Cording,ONC)可以很好地运用到无线网络中。其思维是在编码条件已满足的情况下,通过简单的异或(Exclusive or,XOR)运算把多个数据包变成编码包,在这里每个数据包都有可能去参与编码。在收到编码包后,假如终端设备仅仅只是丢失编码包集合中的某一个数据包,该终端就可以对编码包进行解码并恢复丢包。因而机会网络编码是一种更适用于时延应用场景的网络编码组织方案。结合网络编码的优势和D2D网络的特点,将编码复杂度低的机会网络编码应用于D2D网络的终端协作数据交换中,可使D2D网络在原有优势的基础上降低终端间数据交换传输次数的同时降低时延,从而进一步提升D2D网络的传输性能[4]。文献[5]是从近似动态规划(Approximate Dynamic Programming,ADP)的思想角度求解问题,将编码组合的选取转化为编码向量的优化问题,进而提出了高效的BPPE算法。针对基于 D2D网络的无线广播场景,文献[6-7]为了降低重传次数分别提出了明确性算法和随机性算法。为了提高D2D协作传输的效率,降低重传次数,文献[8]对基于立即可译网络编码(Instantly Decodable Network Coding,IDNC)的调度方案进行了研究,同时对发送设备的次序以及广播的编码包进行了优化。考虑数据包具有不同的交付时间限制,文献[9]提出了时延感知的网络编码重传方案,以最大限度地提高无线设备能够及时解码的数据包个数。
从网络编码应用于无线广播网络中得到启发,最近的一些研究工作目的在于开发解决方案,利用网络编码来加速D2D网络中的协作数据交换过程。由于无线网络固有的广播特性,结合D2D与网络编码技术,可以在包括蜂窝、传感器、车载、认知网络等许多类型的无线网络中实现传输速率、服务质量以及能量效率的明显而有效的提升。
在现有的研究基础上,本文主要研究D2D网络中基于机会网络编码的协作重传问题,针对D2D网络中的协作数据传输场景,提出了性能优异的结合启发式编码算法的双接口重传方式,进而提升了无线通信网络的整体性能。
在无线网络编码广播场景下,对蜂窝与D2D协作下的网络编码重传方法做出研究。本文提出一种结合蜂窝链路与D2D链路进行调度的网络编码重传方式来进一步提高重传效率。仿真结果表明,在不同条件(终端数量、数据包数目)下,本文提出重传方式能够大大削减重传次数、有效地提高重传效率。
终端{R1,R2,R3}想要从基站处得到数据包{P1,P2,P3,P4},其中,终端R1丢失数据包P1,终端R2丢失数据包P2,终端R3丢失数据包P3和P4。基站依据终端的反馈信息,对P1,P2和P3使用机会式网络编码产生编码包P*=P1⊕P2⊕P3并且进行重传,终端可以依据已收到的数据包对编码包进行解码,从而恢复各自丢失的数据包,在这R1可以依据P1=P*⊕P2⊕P3恢复P1,R2可以依据P2=P*⊕P1⊕P3恢复P2,同理可得R3也可以恢复出P3和P4。
考虑图1所示的无线广播场景,基站S向M个终端设备R={R1,R2,…,RM}广播N个数据包P={P1,P2,…,PN},考虑每个终端设备都配有无线双接口,并且两个接口使用不同的频段,其中D2D接口通过D2D链路与其他终端建立连接,而蜂窝接口则通过蜂窝链路与基站相连。同时整个体系采取集中控制的方法,由基站做出所有的传输决议,并将决议广播给D2D的发送终端。
整个传输过程可以分为初始播送阶段与重传阶段。在初始播送阶段,基站在固定时隙间隔之下把N个源数据包广播给各个终端。在这个阶段,为了能够减少能量的消耗,终端只能经由蜂窝链路来接收数据包,而D2D接口始终处于关闭状态。因为无线衰落信道的“丢包”作用,各个终端会有不同程度的丢包情况,而在接收数据包的同时,各个终端通过控制帧将数据包的接收状态信息反馈给基站。为了达到既能够快速恢复丢失数据包又可以减轻基站负载的目的,在重传阶段终端同时利用双接口工作,在蜂窝链路与D2D链路协作下进行数据重传。换言之,每一个终端在单个重传时隙至多能收到两个编码包,一个来自于基站,另一个来自被选为D2D链路广播源的发送终端。为了达到更加有效应用有限资源(如终端设备的能量、带宽等)的目的,要在每一个重传时隙做出最好的调度决议,进一步提高重传效率。因而,本文的重点是设计和开发高效的网络编码调度方法,并研究其传输性能。
图1 D2D场景中网络编码的传输示例
定义1 反馈矩阵Ω。基站S依据终端的反馈信息创建或更新数据包接收反馈矩阵。Ω是M行N列的矩阵,其中M为终端数目,N为数据包数目,Ωij=1表示Ri收到数据包Pj,否则Ωij=0。
定义2 需求量集合V。需求量指的是当下有多少终端需要某个数据包,用VPj表示数据包的需求量大小,而且有集合V={VP1,VP2,…,VPN}。
定义3 编码集合C。用来记录当下有哪些数据包已经加入编码,初始化C=φ,在这里面不限定C的大小直到不满足具体的编码条件为止。
定义4 可结合因子。假如两个丢失包在任何终端都不同时丢失,那么其中的一个数据包就称为另一数据包的可结合因子。用rPk表示所有与数据包Pk互为可结合因子的数据包集合。
定义5 相斥因子。假如在一个终端内存在多个数据包丢失,那么这几个数据包中任意两个数据包都互为相斥因子。
这里采取一种启发式编码算法,首先考虑数据包需求量大小,因为需求量大的数据包对全局的影响最大,所以优先将这类数据包加入编码集合;其次再考虑数据包的可结合因子,只要还存在可加入的数据包,就继续向编码集合加入数据包,这里面不限定加入编码集合的数据包数目;最后,基站S对编码集合里的数据包进行编码并重传,各个终端将编码包进行解码进而恢复丢失的数据包。整个重传过程详细地分为下面5个步骤:
步骤1:在完成初始播送或某一次重传之后,基站S依据各个终端的反馈信息,创建或更新反馈矩阵Ω。
步骤2:基站S计算或更新数据包的需求量,计算公式为:
步骤3:基站S计算每一个丢失包的可结合包集合。用L表示丢失包,Li表示某一个终端Ri(i=1,2,…,M)的丢失数据包,则数据包Pk(Pk∈L)的可结合包集合rPk的计算公式为:
步骤4:生成编码包。
蜂窝接口侧:基站S把需求量大的终端丢失包Li以及它的可结合包集合加入编码包,并将编码包通过蜂窝链路传给各个终端。
D2D接口侧:基站S选择接收到的数据包最多的终端作为发送终端,把其余终端丢失的数据包与发送终端收到的数据包作比较,产生相应编码包,将编码包通过D2D链路传给各终端。
步骤5:每收到一个编码包,各个终端就能够依据已经收到的数据包信息直接进行译码,更新终端处的数据包状态信息,进而重新更新需求量V。若需求量为空集,则代表所有丢失数据包都已成功恢复;若不为空集,则代表仍然存在丢失现象,继续新一轮的重传。
本文以平均重传次数和重传所需时间作为性能指标进行了仿真实验,来验证所提的双接口重传方式。主要和下面两种方式进行对比:(1)单接口方式,该方式考虑终端设备只使用蜂窝接口,并且采取机会网络编码策略,每一个时隙基站通过蜂窝链路播送编码包;(2)不采取网络编码的方式,但终端同时利用蜂窝与D2D接口。
假定同一信道的丢包几率在播送周期内保持稳定。在数据包N=20固定不变的情况下,图2给出了3种方式的重传次数随着终端数量M的变化趋向。从图2中可以看出,和采取单个接口的方式比,本文提出的双接口方式在极大程度上削减了重传次数。这说明在网络编码广播场景中,各个终端同时使用双接口,并且采用不同频段以及公道的调度方法进行播送重传可以大大提高重传效率。而相比较于其他方式,不采用网络编码的方式性能最不好,这表明网络编码技术能够有效提高体系吞吐量。
图2 重传次数VS.终端数量
同样地假定同一信道的丢包几率在播送周期内保持稳定。在终端数量M=15固定不变的情况下,图3给出了3种方式的重传次数随着数据包数量N的变化趋向。从图3中可以看出,与其他方式相比,双接口方式可以极大地削减重传次数。虽然3种方式的重传次数都跟着数据包个数的增长而线性增长,但是所提方式的重传次数增长率明显低于其他两种方式,因而当数据包数量N越来越大时,双接口的性能增益更加显著。
图3 重传次数VS.数据包数量
数据包数量稳定N=20,且假定同一信道的丢包几率在播送周期内保持稳定。图4给出了3种方式的重传所需时间。从图4中可以看出,相比较于其他方式,双接口方式在重传所需时间方面有了明显地下降。此外,伴随着数据包数目的增多,丢失的数据包会越来越多,而恢复全部数据包所需的重传时间也随之增大,但总体来看,双接口方式的重传所需时间增长率最低。
图4 重传所需时间VS.终端数量
在不久的将来,智能移动设备会被不断普及,而物联网、车联网、认知网等无线网络也正在兴起,那么数据流量必然会迎来爆发性的增长。设备的海量接入、各类新型业务的不断涌现以及各种应用场景,使得现有无线网络中的数据传输有了更高的要求。针对D2D网络下的网络编码广播场景,本文研究了相应的网络编码播送及重传方式,进而提高传输效率。本文的主要创新点可以总结如下:
针对D2D场景下的网络编码协作重传问题,本文采用终端设备配有双接口的网络编码广播传输场景,来进一步地提高D2D场景下的重传效率,削减传输次数。为了针对不同的应用需求,结合机会网络编码(ONC)的编码特点,提出了联合蜂窝链路和D2D链路的编码调度方法。仿真结果表明,与传统的重传方式比较,所提方式可以有效地提高重传效率。