法律状态公告日
法律状态信息
法律状态
2022-08-30
未缴年费专利权终止 IPC(主分类):H04W74/08 专利号:ZL2016108313342 申请日:20160919 授权公告日:20191119
专利权的终止
2019-11-19
授权
授权
2017-02-01
实质审查的生效 IPC(主分类):H04W74/08 申请日:20160919
实质审查的生效
2017-01-25
著录事项变更 IPC(主分类):H04W74/08 变更前: 变更后: 申请日:20160919
著录事项变更
2017-01-04
公开
公开
技术领域
本发明涉及一种无线网络通信方法,尤其涉及一种MIMO异构自组织网络的通信方法。
背景技术
近年来,人们对于互联网与便携式计算机的需求不断增加,进而推进了对于移动装置需求的增长。然而提供移动用户最迫切需要的网络连接和数据服务的装置之间大多是通过固定基础设施(如基站)连接的,如何在没有固定基础设施的地方进行通信呢?自组织网络在此环境下应运而生。自组织网络不需要任何有线基础设备的支持,可以通过主机自由组网来实现。
无线Ad hoc网络是一种由若干无线通信设备组合形成的分布式无线分组网络,又称为又称为多跳网(Multi-hop Network)、无基础设施网(Infrastructureless Network)或自组织网(Self-organizing Network)。网络中的节点既是终端,又是路由器。不在彼此覆盖范围内的无线节点之间的通信可经中间节点的转发来完成。无线Ad hoc网络的显著特点是它不需要固定通信设备(如基站)的支持,它不依赖与一个固定的网络节点;同时网络能随着节点的加入,离开以及节点的移动自组织、自管理,因此,无线Ad hoc网络具有组网灵活、分布实施、抗毁能力强、可快速组网等特点,可作为野战通信、公安、紧急搜救、会议会场、信息家电等的通信网络,也可作为已有无线、有线网络的多跳扩展(以拓宽网络的覆盖范围)。因此,无线Ad hoc网络具有广阔的应用前景,已成为国内外的一个研究热点。
虽然自组织网络拥有众多的优势与广泛的应用,但是它也存在一些固有的缺陷:
①通信带宽有限:自组织网络中没有基础设施支持,节点间通信通过无线传输完成,由于无线信道本身的物理特性,它提供的网络带宽相对有线信道要低得多。除此之外,考虑到竞争共享无线信道产生的碰撞,信号衰减,噪声干扰等多种因素,移动终端可得到的实际带宽远远小于理论中的最大带宽值。
②移动终端的局限性:自组织网络中,移动终端均是一些便携。轻巧设备,如便携计算机或掌上电脑。由于节点一般依靠电池供电,且可能处在不停移动的状态下,因而存在能源受限的问题。
③路由协议:多跳路由与动态拓扑的实现需要与其相适应的路由协议设计。
相对于以上自组织网络的固有缺陷,多输入多输出(MIMO)技术是移动通信领域的一项重大突破,Telatar和Foschini较为系统地研究了MIMO系统容量问题,在不增加发射功率和系统带宽的条件下MIMO技术可以极大的提高系统容量、频谱利用率以及数据传输速率,同时还能增强系统抗干扰和抗衰落能力。MIMO技术利用了无线信道多径传播的固有特性,即只要在发射端和接收端装置配置多天线,并且各天线单元间距足够大,无线信道的散射环境足够丰富,那么各收发天线对之间就能形成独立的衰落信道。在这样的情况下,接收机可以接受到同一数据的不同传输副本,而多个信号副本同时经历深度衰落的概率远小于单个信号经历深度衰落的概率,接收端通过适合的合并方案,利用衰落较小的信号副本来解调,就可以显著提高信号传输的稳定性,由此而产生分集增益;同时还创造出了多个并行空间信道,通过他们来传输多个独立数据流,由此在不增加带宽的情况下提高数据传输速率。产生复用增益。
在MIMO系统中由于每个节点可以带有多副天线,并且只要发射天线不大于接收天线,接受者就可以正确分离从不同的发射节点来的独立的数据流。利用这种新的收发机体系结构,多个独立的数据流可以在相同的信道上同时发送,这为大幅度提高无线Ad hoc网络容量性能提供一个崭新而有效途径。由于目前移动Ad hoc网络的单信道MAC协议都被设计在同一时刻一跳范围内只能接受一对用户通信,因此很大程度上限制了网络容量和通信能力。而现在可以利用MIMO的空间复用能力突破单信道共享中仅能进行点对点通信模式。另外,利用MIMO空间分集增益(拓展距离)可以获得包含更大通信距离链路的路由,这样可以减小路由发现时间和减少路由的跳数;在BER性能容许的情况下使用更高阶的调制方式以提高传输速率;在速率容许的情况下利用分集增益(降低BER)还可以提高传输质量,同时在短距离通信时还可以控制发射功率以减小对临节点的干扰。
因此,在Ad hoc网络中引入MIMO技术可以提高其网络容量和通信能力。但是通信系统中存在多径衰落,链路之间干扰等,使得通信质量下降。在考虑对Ad hoc网络加入MIMO技术同时,加入优化考虑,不仅仅大大地减少链路之间干扰所带来的吞吐率下降而且可以提高通信可靠性。
文献1(Chu,Shan,X.Wang,and Y.Yang."Adaptive Scheduling in MIMO-BasedHeterogeneous Ad Hoc Networks."IEEE Transactions on Mobile Computing 13.5(2014):964-978)提出了在异构自组织网络中基于MIMO的调度算法(集中式调度算法与分布式调度算法),集中式算法在调度的时候认为所有的节点都是在同一个信道状态下面进行传输并且传输时始终是以节点的平均数据流最大的标准优先传输;但是,对于分布式算法,每一个节点首先估计其信道状态,天线数,要发送的数据流的数量等的信息,按照每一个节点自身的特点选择传输数据的方式。对于不考虑干扰的情况下,集中式调度算法的吞吐量是比起分布式算法的吞吐量要大,但是,对于分布式算法来讲,其能够保证节点传输的可靠性和质量。
但是文献1中没有考虑到链路之间相互干扰和竞争的情况。在自组织网络中,发送节点向接收节点发送数据经过的一段物理路线称为链路,每条链路都是用来传送数据。但是,在实际情况中,链路与链路之间可能会存在竞争的情况,这样就会对数据的传输造成影响,当一条链路与其他链路的竞争情况越大时,对传输数据的干扰就会越大。因此,有必要了解每一条链路与其他链路的竞争情况,才能够对于每个节点发送的情况选择相应更优的接收节点传输数据,这样就能够大大地减少干扰并保证数据传输的可靠性。
文献2(Sundaresan,Karthikeyan,et al."Medium Access Control in Ad HocNetworks with MIMO Links:Optimization Considerations and Algorithms."IEEETransactions on Mobile Computing 3.4(2004):350-365)提出在传输链路中可能会与其他在传输范围的链路竞争,这样就会影响传输的质量与可靠性,按照这样的问题提出了集中式SCMA(centralized stream-controlled medium access)算法与分布式SCMA算法从而能够更好地考虑与减少在链路传输数据的过程中链路之间的竞争情况从而保证传输的可靠性。需要说明的是,文献1中的集中式调度算法和分布式调度算法是在发送和接受的过程中,通过选择更优的发送和接收节点,考虑每个节点的天线数,信道状态等的因素关系,选择适合的调度算法从而进一步提高传输的质量。与文献1中的集中式调度算法和分布式调度算法不同,集中式SCMA法与分布式SCMA算法考虑的是链路在传输的过程中在其竞争范围内与其他链路相互竞争的情况,并且对此作出优化从而进一步保证传输质量。其中,集中式SCMA算法利用数据流控制(stream control)和部分干扰抑制技术(partial interferencesuppression),从而为传输链路之间的干扰提供了优化的考虑。数据流控制(streamcontrol)是CSMA/CA(k)协议上面发展的而来的,其中CSMA/CA(k)利用时分复用的方式进行传输,每一次复用都会有k个数据流复用。当1个相互干扰的链路同时传输时,每个链路的
总体来说,文献1和文献2中记载的技术存在以下缺陷:
文献1的集中式调度算法与分布式调度算法是以节点之间的优先级传输、信道状态、天线数、发送数据流等信息为基础来调度。在CSMA/CA协议中,每一个时隙(time slot)都只会允许一个载波传送数据,当存在多个载波传送数据时就会存在链路之间相互干扰的情况,而文献1中没有考虑到这一种情况,进而大大地减少了传输数据的可靠性与通信质量。
文献2虽然是考虑当存在多个载波传送数据时就会存在链路之间相互干扰的情况,并对这种情况进行了优化的考虑(即每当出现多载波公用信道的情况下怎样使得每一条链路能够找到最优的方案从而使得传输的数据最大)。但文献2没有考虑在文献1调度算法中所考虑到的节点之间的优先级传输、信道状态、天线数、发送数据流等信息,从而使得其调度算法中不能够通过信道状态、天线数、发送数据流等的信息在传输之前选择更优的发送节点与接收节点,这样就会使得总体吞吐量减少。
发明内容
为了解决上述技术问题,本发明提供了一种通信质量高的基于MIMO异构自组织网络的自适应调度优化方法。
本发明所采用的技术方案是:
基于MIMO异构自组织网络的自适应调度优化方法,包括以下步骤:
步骤S1:输入网络拓扑图G(V,E,K),其中,V是网络中的节点的数量,E是两个节点之间形成的链路的集合,K是每一个节点的天线数;
步骤S2:将网络拓扑图G(V,E,K)转变变成数据流竞争图G’=(V’,E’,W),其中V’是在网络中的链路的集合,E’是在G’中任意两个节点之间的边缘,W代表的是一条链路两端的节点相互干扰的情况;
步骤S3:通过数据流竞争图识别出所有的最大派别;
步骤S4:把数据流竞争图中的每一条链路按照其根据其是否属于多个最大派别分为红色链路或者白色链路,其中,红色链路是属于两个或者两个以上的最大派别的链路,白色链路是只属于一个或不属于任何一个最大派别的链路;
步骤S5:按照按比例公平模型,给每一条链路分配一个成功传输数据流的概率;
步骤S6:把每一个节点分为贫穷节点和富裕节点,贫穷节点有资格作为发送节点和接收节点,富裕节点只能够作为接收节点;
步骤S7:发送节点寻找接收节点,接收节点选择发送节点;
步骤S8:选择数据传输方式,当接收节点能够接受的数据流的数量小于要发送的数据流的数量时,发送节点选择P-slot的方式传输数据,否则选择R-slot的方式传输数据;
步骤S9:发送节点把数据发送到接收节点处。
进一步地,步骤S3具体包括:
步骤S31:在数据流竞争图中通过LexBFS找出所有的PEO;
步骤S32:根据PEO中的节点数目,识别所有的最大派别。
进一步地,步骤S5中,所述成功传输数据流的概率用按比例公平的概率进行表示,步骤S5具体包括:
步骤S511:对所有的红色链路j,按照其牺牲出来用于提高总体传输数据量的数据流的多少来进行优先级大小排列,让Pj代表所有能够直接或者间接利用红色链路j牺牲的数据流来发送数据流的链路的集合,而潜力度p(j)代表集合Pj中的所有元素的数量,当p(j)的值越大,红色链路j的优先级越高;
步骤S512:给每一个最大派别分配资源;
步骤S513:按照优先级大小先后给每一条红色链路分配一个按比例分配概率;
步骤S514:给每一条白色链路分配一个按比例分配概率。
进一步地,步骤S511至步骤S514具体为:
步骤S511:当链路i满足以下的条件时,即成为集合Pj中的元素:
>
其中,c表示最大派别,M(i)代表链路i所在的最大派别的集合,L(d)代表所有属于竞争区域d中的所有链路的集合;
步骤S512:给每一个最大派别分配资源,设开始每一个最大派别的资源为1,即
>
步骤S513:按照如下方法给每一条红色链路i配一个按比例分配概率
Find k=arg{min(ranki)},where>
>
>
>
其中,rank是指链路的优先级,rate是给每一个链路分配的按比例分配概率,M(k)是链路k所在的最大派别的集合;
min_resource1=min{resourcec},where>j},
min_resource2=min{resourced},where>
min_resource1代表的是链路i在其所在的最大派别中的所有链路中分配最小的资源,而min_resource2代表的是Pj中所有的成员的所在最大派别中的所有链路中分配最小的资源;
步骤S514:按照如下方法给每一条白色链路j分配一个按比例分配概率
>
其中,num_whitelinks(c)代表的是白色链路j所在的最大派别c中的所有白色链路的数目。
进一步地,步骤S5具体包括:
步骤S521:判断链路的状态是否可以从NO_CONTEND状态转变成CONTEND状态,若rand(0,1)>pnew(i),则不能转变成CONTEND状态,并对pold(i)的取值进行调整,使pold(i)=pold(i)(1-β)+α,其中,α=0.1,β=0.5,pold是指不考虑链路与链路之间的干扰但考虑加性噪声的情况下,每条链路能够成功传送数据的概率,当考虑链路之间存在干扰的情况下,pold就会调整成为pnew;否则,并进行下一步;
步骤S522:链路的状态从NO_CONTEND状态转变成CONTEND状态并等待B(i)时间;
步骤S523:判别信道是否处于忙或者冲突状态,忙的状态是指发送节点的所有可以传输的接收节点或者两跳之内的邻居节点都是处于发送或者接收的状态,冲突的状态是指接收方的邻居节点存在多个传输;如果信道处于忙或者冲突状态,则对成功传输数据流的概率进行调整,使pold(i)=pold(i)(1-β)+α,其中,α=0.1,β=0.5,同时,当链路为白色链路时,对pnew进行调整,使
步骤S524:判断链路i是红色链路还是白色链路;如果是红色链路,则从ACQUIRE状态转变成NO_CONTEND状态;如果是白色链路,则从ACQUIRE状态转变成SCHED WHITE LINKS状态,并进行下一步;
步骤S525:对链路i的邻居链路的成功传输数据流的概率进行调整。
进一步地,在步骤S6中,区分贫穷节点和富裕节点的方法是,当
(1)
(2)
进一步地,步骤S7具体包括以下步骤:
步骤S71:发送节点将信道信息、发送的数据流的数目、发送节点的ID、接收节点的ID放入RTS中,并发送给接收节点;
步骤S72:接收节点选择优先级最高的发送节点;
步骤S73:接收节点根据发送节点的RTS信息判断信道质量是否较好,当信道质量较差时,接收节点通知发送节点让其寻找另一个接收节点,当信道质量较好时,则进行下一步。
进一步地,步骤S9包括步骤S911,发送节点按照数据流的优先级发送数据,当符合以下条件时,数据流的优先级最高:节点i中用于发送数据流的
>
其中,
进一步地,步骤S9包括步骤S921,发送节点按照数据流的优先级发送数据,当符合以下条件时,数据流的优先级最高:节点i中用于发送数据流的
>
其中,
max{i,j,k}W=max{i,j,k}W*Pnew(i*,d(s*q*)),其中,W代表的是每一个节点的所有数据流的矩阵,Pnew(i*,d(s*q*))代表的是发送节点i和接收节点d(s*q*)之间能够成功传送数据流的概率。
进一步地,步骤S9包括步骤S920,判断接收节点是否处于弱信道,如果是,发送节点减少一条用于发射数据流的发射天线;如果否,发送节点把数据发送到接收节点处。
本发明结合文献1与文献2的各自的优点,文献1中的分布式调度算法分别结合文献2中的集中式SCMA算法与分布式SCMA算法,使得分布式调度算法在考虑链路传输数据的过程中不仅仅是考虑节点之间的优先级传输、信道状态、天线数、发送数据流的数目等信息来选择不同的传输方式,尤其,在步骤S9中按照优先级传输数据,并在选择每一个发送节点时都会考虑其节点上面的天线数的数量为多少才进一步确认能够用于传输的数据流,而发送数据流的数目则是先考虑每一个发送节点可用的天线之后,才能够根据每一个节点上面的天线的数目从而决定传输数据流的数目;更进一步的是,能够考虑到链路在选择不同的传输方式之后在传输数据的过程中链路之间的干扰,根据每一条链路在传输的过程中与其他链路的竞争情况不同找到每一条链路传输的最优的方案,即步骤S4和S5,按照按比例公平模型给红色链路和白色链路分配成功传输数据流的概率,从而优化传输,进而更加能够保证传输数据流的可靠性,提高通信质量。
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
图1(a)是本发明实施例一的步骤S1的网络拓扑图;
图1(b)是本发明实施例一的步骤S2的数据流竞争图;
图2是本发明实施例一的步骤S3的LexBFS方法的流程图;
图3是本发明实施例一的步骤S8的流程图;
图4是本发明实施例一的步骤S9的流程图;
图5是本发明实施例二的步骤S5的流程图;
图6是本发明实施例二的步骤S9的流程图。
具体实施方式
本发明的基于MIMO异构自组织网络的自适应调度优化方法,结合了文献1和文献2,的优点构造出了两个新的分布式调度算法,此两个算法在发送数据流之前考虑到收发节点的天线数、发送数据流、信道状态等的信息选择不同的传输方式,在传输的过程中,根据每一条链路与其他链路的竞争情况不同从而选择出最优的传输链路传输数据,进一步提高了传输质量的可靠性。本专利的两个分布式调度算法从开始发送数据流到传输数据流过程最后到接收节点接收数据流这三个状态都考虑不同情况的干扰对于每一条链路传输数据流的影响,并对此作出了不同的优化,进一步提高总体的吞吐量。
以下以具体实施例为例,讲解本发明的方法。
在本说明书中,如无特别说明,同一字母标号的斜体形式与非斜体形式不作区分,均表示同一意义。
实施例一、分布式调度算法与集中式SCMA结合
步骤S1:输入网络拓扑图G(V,E,K),其中,V是网络中的节点的数量,E是两个节点之
间形成的链路的集合,K是每一个节点的天线数。
步骤S2:将网络拓扑图G(V,E,K)转变变成数据流竞争图G’=(V’,E’,W),其中V’是在网络中的链路的集合,E’是在G’中任意两个节点之间的边缘,W代表的是一条链路两端的节点相互干扰的情况。
请参阅图1(a),其为本发明实施例的步骤S1的网络拓扑图。在图1中,有7个节点(vertex)随机分布在一定的空间范围内,根据每个节点之间的距离的大小可以得出网络拓扑图G(V,E)(network topology),若两个节点之间的距离在传输范围内,那个这两个节点才有可能进行数据传输,否则就不能够进行数据传输。在G(V,E)中,V代表的是网络中的节点的数量,而E代表的是两个节点之间形成的链路的集合。一个节点与不同的节点之间会形成不同的链路。用v、w代表节点,若w要成为v的邻居节点的条件是能够与v节点之间成为链路(即两个节点之间的距离要在传输范围内)。
请参阅图1(b),其为本发明实施例的步骤S2的数据流竞争图。图1(b)是由图1(a)中的网络拓扑图转变过来的数据流竞争图G’(V’,E’,W)(flow contention region),就像文献3(Nandagopal,Thyagarajan,et al."Achieving MAC Layer Fairness in WirelessPacket Networks."International Conference on Mobile Computing&Networking2000:87--98)中所说的一样,在每个节点的两跳范围内都是会与此节点竞争(在G’(V’,E’,W)中每个节点代表一条链路),而此节点与其竞争的节点就会形成竞争区域(contentionregion)。在G’(V’,E’,W)中,V’代表的是在网络中链路的集合,E’代表的是在G’中任意两个节点之间的边缘(edge),W是每个边缘的权重,代表着两个节点之间的干扰情况。与G(V,E)一样,让v’,w’代表在G’(V’,E’,W)中的两个节点(每个节点代表一条链路),w’若是v’的邻居节点就是必先要w’与v’能够形成一个边缘E’。
步骤S3:通过数据流竞争图识别出所有的最大派别,具体包括:
步骤S31:在数据流竞争图中通过LexBFS找出所有的PEO;
步骤S32:根据PEO中的节点数目,识别所有的最大派别。
从数据流竞争图中可以看出每一条链路与其他链路的竞争情况,同时可以通过数据流竞争图可以得出每条链路所在的派别(clique),而每一条链路可能属于多个不同的派别。每个派别的识别如下:首先在数据流竞争图中通过文献4(Rose,Donald J.,R.E.Tarjan,and G.S.Lueker."Algorithmic Aspects of Vertex Elimination onGraphs."Siam Journal on Computing 5.2(1976):266-283.)公开的LexBFS(Lexicographic Breadth First Search,词典广度优先搜索)找出所有的PEO(perfectelimination ordering,完美消除排序),接着通过Fulkerson and Gross提出的算法(Fulkerson,D.R.,and O.A.Gross."Incidence Matrices and Interval Graphs."Pacific Journal of Mathematics 15.3(1965):835-855.)识别所有的最大派别(maximalcliques)。请参阅图2,其为本发明实施例的步骤S3的LexBFS方法的示意图。LexBFS的思想是:如图2所示,首先找出在队列开头的节点,先定义为1,在从这个节点的邻居节点中找出一个节点定义为2(此节点之前还没被定义),接着又从2节点的周围节点中找出一个节点定义为3节点,如此循环下去就可以把所有的节点都定义出来。然后选择最高节点10不变(这里每一个节点都是代表一条链路),再往下一个节点(from 10to 1),如图2中连接的链路,若每条链路中有连接的,而且大于此节点的节点可以作为PEO(perfect eliminationgraph)中的一位成员(括号里面的是此节点的PEO成员),每一个节点和它的成员都会产生一个PEO,包括本身的节点。Fulkerson and Gross的算法思想是:根据LexBEX算法的PEO,其中每个PEO中节点数目越多,越先被识别为最大派别(maximal clique),当一个PEO被识别为最大派别之后,再考虑剩下的PEO,用同样的方式就可以把所有的最大派别识别出来。
步骤S4:把数据流竞争图中的每一条链路按照其根据其是否属于多个最大派别分为红色链路或者白色链路,其中,红色链路是属于两个或者两个以上的最大派别的链路,白色链路是只属于一个或不属于任何一个最大派别的链路。
在数据流竞争图中,每个节点代表的是一条链路,每个链路根据自己的是否属于多个最大派别(maximal clique)可以分为红色链路(red links or bottleneck links)和白色链路(white links)。红色链路是属于两个或者两个以上的最大派别的链路,反之就是白色链路。这样做的目的就是可以根据每个链路自己与其他链路的竞争情况作出分类从而使得不同特点的链路按照不用的方法进行处理,而红色链路与其他链路的竞争情况比白色链路要严重。
步骤S5:按照按比例公平模型,给每一条链路分配一个成功传输数据流的概率,所述成功传输数据流的概率用按比例公平的概率进行表示,具体包括步骤S511至S514:
步骤S511:对所有的红色链路j,按照其牺牲出来用于提高总体传输数据量的数据流的多少来进行优先级大小排列,让Pj代表所有能够直接或者间接利用红色链路j牺牲的数据流来发送数据流的链路的集合,而潜力度p(j)代表集合Pj中的所有元素的数量,当p(j)的值越大,红色链路j的优先级越高;
当链路i满足以下的条件时,即成为集合Pj中的元素:
>
其中,c表示最大派别,M(i)代表链路i所在的最大派别的集合,L(d)代表所有属于竞争区域d中的所有链路的集合。
步骤S512:给每一个最大派别分配资源,设开始每一个最大派别的资源为1,即
>
步骤S513:按照优先级大小先后给每一条红色链路分配一个按比例分配概率;具体是:
Find k=arg{min(ranki)},where>
>
>
>
其中,rank是指链路的优先级,rate是给每一个链路分配的按比例分配概率,M(k)是链路k所在的最大派别的集合;
min_resource1=min{resourcec},where>j},
min_resource2=min{resourced},where>
min_resource1代表的是链路i在其所在的最大派别中的所有链路中分配最小的资源,而min_resource2代表的是Pj中所有的成员的所在最大派别中的所有链路中分配最小的资源;
步骤S514:给每一条白色链路分配一个按比例分配概率,具体是:
>
其中,num_whitelinks(c)代表的是白色链路j所在的最大派别c中的所有白色链路的数目。
当一条链路w与其他n条链路之间存在着竞争的情况,而此链路w与其他每一条链路形成竞争区域(contention region)(即链路w属于n个竞争区域)。在这种情况下,链路w的按比例分配概率是
>
上述公式的含义是:对于每一条红色链路j,想要成为Pj中的成员就要满足以下的要求之一:第一,对于任一条链路i,链路i的最大派别包含于链路j的最大派别之中(即
在给每一条链路分配按比例分配概率之前,首先要给数据流竞争图中所有的最大派别分配资源(设开始每一个最大派别的资源为1),即:
>
每当给每一个最大派别c中的一条链路分配了按比例分配概率(给链路分配的资源)之后,那么最大派别c的资源都要减去此链路的按比例分配概率(减去已消耗的资源),即:
给所有的链路分配按比例分配概率应按照如下条件:
(1)当链路i属于红色链路时:
Find k=arg{min(ranki)},where>
>
>
>
给链路分配按比例分配概率第一步是先找出红色链路中等级最高的链路(即ranki=0),第二步就是给每一条链路分配按比例分配概率,即
>
其中:
min_resource1=min{resourcec},where>j}
min_resource2=min{resourced},where>
min_resource1代表的是链路i在其所在的最大派别中的所有链路中分配最小的资源(即按比例分配概率最小的),而min_resource2代表的是Pj中所有的成员的所在最大派别中的所有链路中分配最小的资源。当每一条链路分配好按比例分配概率之后,那么其链路所在的最大派别c的资源都要减去此链路的按比例分配概率。最后就是再找出其中等级最高的链路(除去已分配的链路),这样下来就会得到每一条红色链路的按比例分配概率(每一条链路的资源)。当所有的红色链路都被分配好按比例分配概率之后,接下来就要给每一条白色链路分配按比例分配概率。
(2)当链路j属于白色链路时:
步骤S6:把每一个节点分为贫穷节点和富裕节点,贫穷节点有资格作为发送节点和接收节点,富裕节点只能够作为接收节点;具体地,区分贫穷节点和富裕节点的方法是,当
(1)
(2)
分布式调度算法与集中式算法不同,集中式算法在调度的时候认为所有的节点都是在同一个信道状态下面进行传输并且传输时始终是以节点的平均数据流最大的标准优先传输;但是,对于分布式算法,每一个节点首先估计其信道状态,天线数,要发送的数据流的数量等的信息,按照每一个节点自身的特点选择传输数据的方式。对于不考虑干扰的情况下,集中式调度算法的吞吐量是比起分布式算法的吞吐量要大,但是,对于分布式算法来讲,其能够保证节点传输的可靠性和质量。
在进行分布式算法调度之前,首先要对于所有的节点根据每个节点自身的特点分为“贫穷”节点(poor node)和“富裕”节点(rich node),还有就是根据每一个节点自身的天线数目分配将要发送的数据流的数目。“贫穷”节点是既可以作为发送节点同时又可以作为接收节点,但是对于“富裕”节点就只能够作为接收节点。“贫穷”节点的优先级是大于接收节点的优先级,这样做让发送节点有一个更高的优先级可以减少发送节点在传输的过程中的延时,同时也能够保证传输的有效性和可靠性。
对于“贫穷”节点和“富裕”节点的识别可以用一个不等式来识别。当
步骤S7:发送节点寻找接收节点,接收节点选择发送节点,具体包括以下步骤:
步骤S71:发送节点将信道信息、发送的数据流的数目、发送节点的ID、接收节点的ID放入RTS中,并发送给接收节点;
步骤S72:接收节点选择优先级最高的发送节点;
步骤S73:接收节点根据发送节点的RTS信息判断信道质量是否较好,当信道质量较差时,接收节点通知发送节点让其寻找另一个接收节点,当信道质量较好时,则进行下一步。
当所有的节点已经被分好是“贫穷”节点还是“富裕”节点之后,让所有的发送节点中所有能够传输的数据流选择相应的天线准备将数据发送出去。上面所有的准备工作完成之后就开始调度算法。发送节点首先把信道信息,发送的数据流的数目,发送节点的ID与接收节点的ID等的信息放入RTS中,并发送给接收节点。ID是用于标识每个节点的,而每个节点的都会有一个不同的ID。每一个接收节点可能会收到很多来自不同节点的RTS,而接收节点就会根据每个节点的优先级选择优先级最高的发送节点,当优先级相同的时候,接收节点就会选择ID更高级别的发送节点,之后,接收节点就会根据发送节点中RTS所包含的信息进行分析,当接收节点发现与发送节点之间存在很长的距离或者接收节点与接收节点之间的信道是严重衰落信道,那么接收节点会通过CTS发送给发送节点让其寻找一个更可靠的接收节点。
步骤S8:选择数据传输方式,当接收节点能够接受的数据流的数量小于要发送的数据流的数量时,发送节点选择P-slot的方式传输数据,否则选择R-slot的方式传输数据。
当信道质量是较好的时候,就要考虑发送节点与接收节点之间的选择P-slot还是R-slot的进行传输。
请参阅图3,其为本发明实施例的步骤S8的流程图。如图3所示,框图①中刚开始时候每个节点剩余的天线数与剩余的数据流的数目都是等于刚开始分配的节点的天线数和数据流的数目,其中{Ai}res代表节点i剩余的可用的天数数,{Ai}代表的就是节点i所有天线数的集合。
步骤S9:发送节点把数据发送到接收节点处,具体包括以下步骤:
步骤S911,发送节点按照数据流的优先级发送数据,当符合以下条件时,数据流的优先级最高:节点i中用于发送数据流的
>
其中,
个优先级的第q个元素,
max{i,j,k}W=max{i,j,k}W*Pnew(i*,d(s*q*)),其中,W代表的是每一个节点的所有数据流的矩阵,Pnew(i*,d(s*q*))代表的是发送节点i和接收节点d(s*q*)之间能够成功传送数据流的概率。
步骤S920,判断接收节点是否处于弱信道,如果是,发送节点减少一条用于发射数据流的发射天线;如果否,发送节点把数据发送到接收节点处。
请参阅图4,其为本发明实施例的步骤S911和S920的流程图。在图4中,框图①-②中,
框图④是用于在第i个节点上面第j优先级中所有的数据流选择最优的先发送出去,其中最优的条件就是节点i中用于发送数据流的
>
每条链路与其邻居链路之间存在竞争的情况就是使得其传输包裹成功的概率降低,而每一条链路根据自己竞争的情况不同,传输数据成功的概率也会是不同。因此,在框图④中,选择了最优的数据流发送出去之后,由于链路在传输的过程中与其他链路之间存在干扰的情况,根据不同的干扰情况成功传输数据流的概率也是不一样的,以下是分布式调度算法分别与集中式SCMA结合后考虑链路之间干扰的处理方式:
当分布式调度算法与集中式SCMA结合时:
框图⑤-⑧中,k代表的是天线数,l代表的是已经发送出去的数据流的数目,
实施例二、分布式调度算法与分布式SCMA结合
实施例二和实施例一大体相同,仅在步骤S5和S9存在区别。
步骤S521:判断链路的状态是否可以从NO_CONTEND状态转变成CONTEND状态,若rand(0,1)>pnew(i),则不能转变成CONTEND状态,并对pold(i)的取值进行调整,使pold(i)=pold(i)(1-β)+α,其中,α=0.1,β=0.5,pold是指不考虑链路与链路之间的干扰但考虑加性噪声的情况下,每条链路能够成功传送数据的概率,当考虑链路之间存在干扰的情况下,pold就会调整成为pnew;否则,并进行下一步;
步骤S522:链路的状态从NO_CONTEND状态转变成CONTEND状态并等待B(i)时间;
步骤S523:判别信道是否处于忙或者冲突状态,忙的状态是指发送节点的所有可以传输的接收节点或者两跳之内的邻居节点都是处于发送或者接收的状态,冲突的状态是指接收方的邻居节点存在多个传输;如果信道处于忙或者冲突状态,则对成功传输数据流的概率进行调整,使pold(i)=pold(i)(1-β)+α,其中,α=0.1,β=0.5,同时,当链路为白色链路时,对pnew进行调整,使
步骤S524:判断链路i是红色链路还是白色链路;如果是红色链路,则从ACQUIRE状态转变成NO_CONTEND状态;如果是白色链路,则从ACQUIRE状态转变成SCHED WHITE LINKS状态,并进行下一步;
步骤S525:对链路i的邻居链路的成功传输数据流的概率进行调整。
在按比例公平模型(modeling proportional fairness)中,若不考虑链路与链路之间干扰但考虑加性噪声的情况下,每条链路能够成功传送数据有一定的概率,这个概率称为pold(persistence>old就会调整成为pnew。在文献3(Nandagopal,Thyagarajan,et>其中ri是信道分配率(channel>i代表的是链路i竞争损失概率(contention>代表的是信道分配率的变化率,这个是调整机制中的主体部分,当
K代表数据流的集合,每当pold转变成pnew时,Kold转变成Knew且满足等式Kold=K≥Knew。对于不同“颜色”的链路,pold与pnew、Kold与Knew的关系是不一样的。
在红色链路中,pold=pnew以及Kold=Knew.
在白色链路中,
请参阅图5,其为本发明实施例二的步骤S5的流程图,具体是分布式SCMA算法的步骤。有一定数量的节点随机分布在一定的空间中,他们由于没有中心节点所以相互之间的地位平等,而且在自组织网络中没有基站,所有节点之间可以相互传输信息。在相互传输信息的同时可以具有移动性。两个节点之间的传输形成一条链路,两个节点之间传输的过程是:发送方就会先发送RTS给接收方,接收方收到发送方发送的RTS后就会发送CTS确认发送方可以发送数据给接收方。因此,发送方就会开始与接收方传输信息,当信息传输完毕之后,接收方就会给发送方发送ACK确认数据已经接收完毕。这个过程所持续的时间叫slot。在本专利的算法中,每条链路可能会经历四个状态:NO_CONTEND,CONTEND,ACQUIRE,SCHEDWHITE LINKS。所有的链路都是先从NO_CONTEND状态(如框图②)开始。在本实施例的算法中,框图③判别链路的状态是否可以从NO_CONTEND状态转变成CONTEND状态。链路想要传输数据的时候,就会想要获得信道进行传输,此时,状态应该是从NO_CONTEND状态转变成CONTEND状态,但是,状态转变成功的概率就只有pold。在红色链路中,pold=pnew以及Kold=Knew,在白色链路中,
当链路的没有存在和冲突时,此时就可以证明信道是空闲的状态,可以获得信道进行传输。此时的状态应该是从CONTEND状态转变成ACQUIRE状态从而可以获得信道。
当进入ACQUIRE状态之后,先去判别其中的链路i是白色链路还是红色链路。如果是红色链路那么直接从ACQUIRE状态直接转变成NO_CONTEND状态,但是如果是白色链路的时候,就要进行下一步的处理。那就是对链路i的邻居链路的persistence value进行调整,即按照公式:
经过整个状态的转变就可以得到每一条链路的persistence value,而persistence value就是每一条链路传输数据的传输概率。此算法与集中式调度的算法和分布式调度的算法的结合就可以得出在存在干扰的情况下集中式调度和分布式调度的节点之间传输的情况并可以根据相关的结果和情况进行对算法的改进。
步骤S9:发送节点把数据发送到接收节点处,具体包括以下步骤:
步骤S921:发送节点按照数据流的优先级发送数据,当符合以下条件时,数据流的优先级最高:节点i中用于发送数据流的
>
其中,
max{i,j,k}W=max{i,j,k}W*Pnew(i*,d(s*q*)),其中,W代表的是每一个节点的所有数据流的矩阵,Pnew(i*,d(s*q*))代表的是发送节点i和接收节点d(s*q*)之间能够成功传送数据流的概率。
步骤S920,判断接收节点是否处于弱信道,如果是,发送节点减少一条用于发射数据流的发射天线;如果否,发送节点把数据发送到接收节点处。
请参阅图6,其为本发明实施例的步骤S921和S920的流程图。在图6中,框图①-②中,
>
每条链路与其邻居链路之间存在竞争的情况就是使得其传输包裹成功的概率降低,而每一条链路根据自己竞争的情况不同,传输数据成功的概率也会是不同。因此,在框图④中,选择了最优的数据流发送出去之后,由于链路在传输的过程中与其他链路之间存在干扰的情况,根据不同的干扰情况成功传输数据流的概率也是不一样的,以下是分布式调度算法分别与集中式SCMA结合后考虑链路之间干扰的处理方式:
当分布式调度算法与分布式SCMA结合:max{i,j,k}W=max{i,j,k}W*Pnew(i*,d(s*q*))。W代表的是每个节点的所有的数据流的一个矩阵,Pnew(i*,d(s*q*))代表的是发送节点i和接收节点d(s*q*)之间能够成功传送数据流的概率。
框图⑤-⑧中,k代表的是天线数,l代表的是已经发送出去的数据流的数目,
本发明实现了以下有益的技术效果:
在现有技术中,Chu,Shan,X.Wang,Y.Yang等人的分布式算法在调度之前考虑了收发节点的天线数、节点的优先级、信道状态、发送的数据流等的信息,再根据这些信息选择不同的数据传输方式传输数据流,但是,并没有考虑链路在传输的过程中因为链路之间的距离等因素的关系,链路之间会产生干扰,进而大大地减少了传输数据的可靠性与通信质量。Sundaresan,Karthikeyan等人的集中式SCMA算法与分布式SCMA算法考虑了链路在传输数据过程中链路之间的干扰并对于每一个链路在不同干扰下选择一条最优的链路传输方式。
本发明结合文献1与文献2的各自的优点,文献1中的分布式调度算法分别结合文献2中的集中式SCMA算法与分布式SCMA算法,使得分布式调度算法在考虑链路传输数据的过程中不仅仅是考虑节点之间的优先级传输、信道状态、天线数、发送数据流的数目等信息来选择不同的传输方式,尤其,在步骤S9中按照优先级传输数据,并在选择每一个发送节点时都会考虑其节点上面的天线数的数量为多少才进一步确认能够用于传输的数据流,而发送数据流的数目则是先考虑每一个发送节点可用的天线之后,才能够根据每一个节点上面的天线的数目从而决定传输数据流的数目;更进一步的是,能够考虑到链路在选择不同的传输方式之后在传输数据的过程中链路之间的干扰,根据每一条链路在传输的过程中与其他链路的竞争情况不同找到每一条链路传输的最优的方案,即步骤S4和S5,按照按比例公平模型给红色链路和白色链路分配成功传输数据流的概率,从而优化传输,进而更加能够保证传输数据流的可靠性,提高通信质量。
本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变形。
机译: 一种基于mimo-ofdm系统的mimo-mimo MIMO信号检测装置及其方法
机译: 一种基于mimo-ofdm系统的mimo-mimo MIMO信号检测装置及其方法
机译: 基于MIMO-OFDM的用于减轻异构网络中的小区之间的干扰的基于协作通信的系统和使用该系统的协作通信方法