背景技术
随着移动通信技术的快速发展,人们对数据的传输速率要求也越来越高。处于低频段的频谱资源已经逐渐不能满足人们对于带宽和更高数据传输速率应用的渴求。最近几年来人们对网络信息的分享和消费方式发生了复杂的变化,同时新兴电子应用产品源源不断地产生,不仅导致了无线数据流量的急剧增长,更加进一步促使人们对在任意时刻和地点进行更高速率无线通信的渴望日益加剧,一些颇具前景的应用甚至要求无线网络必须支持数10Gbps以上的数据传输速率。然而目前现有的网络解决实施方案,如无线个域网、无线局域网、无线城域网以及无线传感器网络等网络几乎都无法满足较高的数据传输速率,达到10Gbps以上更是困难。因此必须采用新技术设计一种新的无线通信网络来承载更大的数据量,实现更大的数据传输速率。太赫兹通信技术采用太赫兹波(0.1-10太赫兹)作为载波,该频段的连续可用带宽约有20GHz以上且传输容量较高,可以在频谱效率较低的情况下实现较高速率的无线数据传输。
由于太赫兹频段存在严重的路径损失以及受大气中的分子吸收影响较大,导致太赫兹无线网络的通信范围只有10米左右,因此必须在收发端同时使用定向天线来扩大太赫兹无线网络的通信范围。
本申请所述太赫兹无线网络主要涉及太赫兹无线个域网和太赫兹无线局域网(即工作在太赫兹频段的无线个域网和无线局域网),它们在MAC层都采用基于超帧和类似TDMA的接入方式,而且在物理层采用了定向通信的模式。
太赫兹无线个域网(其拓扑如说明书附图1所示)中的节点包括微网控制节点(piconet coordinator,PNC)和普通节点(device,DEV)两种。太赫兹无线个域网的定向接入方法通常以超帧作为网络时间划分的基本单元(参见文献:IEEE,802.15.3.IEEEstandard for high data rate wireless multi-media networks[S],New York:IEEE,2016.);每个超帧包括三个大的时段:Beacon、CAP和CTAP。Beacon时段用于PNC循环广播Beacon帧。Beacon帧内包含有网络的时隙分配信息,通知节点准备在各自时隙内进行数据交互,使各节点天线主瓣对准PNC,以及同步网内的超帧。竞争接入时段(contentionaccess period,CAP)分为入网申请和时隙申请(申请的时隙用于发送数据帧)两个部分,在这两个部分中PNC循环接收并回复DEV的申请信息。时隙分配时段(channel timeallocation period,CTAP)用于节点间的定向数据传输,采用TDMA方式。
每个超帧又可细分为四个部分,如说明书附图2中所示,具体为:
信标时段(Beacon)用于PNC广播网络信息;竞争接入时段(Contention AccessPeriod,CAP)分为关联CAP(Association S-CAP,用于DEV节点申请入网)和常规CAP(Regular S-CAP,用于DEV节点申请时隙以发送数据帧)两个子时段。在CAP时段内,PNC循环扫描两周以接收入网申请消息和时隙申请消息。未入网的节点在关联CAP子时段申请入网,已入网的节点在常规CAP时段申请时隙;已入网的节点在关联CAP子时段不发送和接收任何消息,未入网的节点在常规CAP子时段不能申请时隙。
信道时间分配时段(Channel Time Allocation Period,CTAP)分为多个CTA时隙;每个CTA时隙又分为波束赋形CTA(Beamforming CTA)和数据连接CTA(Data ConnectionCTA)两种子时隙;在每个数据连接CTA内又分为多个时隙单元(TU)。
波束赋形是一种使无线设备的发送和接收方向对准、实现无线通信设备定向收发的技术,在IEEE 802.15.3c标准中有具体阐述(参见文献:IEEE Standard802.15.3c-2009-Part 15.3:Wireless Medium Access Control(MAC)and Physical Layer(PHY)Specifications for High Rate Wireless Personal Area Networks(WPANs)Amendment2:Millimeter-wave-based Alternative Physical Layer Extension[S].IEEE ComputerSociety,2009:159-161.)。IEEE 802.11ad中定义了相关技术标准(参见文献:IEEE802.11ad-2012-Part 11:Wireless LAN Medium Access Control(MAC)and PhysicalLayer(PHY)Specifications Amendment 3:Enhancements for Very High Throughput inthe 60GHz Band[S].IEEE Computer Society,2012:221-328.)。波束赋形的类型主要分为三类:1.准全向;2.扇区级别;3.波束级别。三种类型的区别是波束角度越来越窄,相应的天线增益也越来越大,所用到的天线也越来越多。
在太赫兹无线个域网的定向接入方法中,波束赋形操作涉及Beacon时段、关联CAP子时段、常规CAP子时段和波束赋形CTA子时隙。
太赫兹无线个域网的节点在波束赋形CTA子时隙内进行波束赋形的目的,是使数据帧的发送和接收节点的天线对准。根据现有太赫兹无线个域网定向接入方法,在每个超帧的CTAP时段中每一个CTA的波束赋形CTA子时隙,该CTA的源节点和目的节点都要进行波束赋形操作,而且它们在做波束赋形操作时,除它们两个节点之外的所有节点,都必须等待,不能进行任何发送信息的操作,以免对正在进行波束赋形的“源—目的节点”对造成干扰。
波束赋形CTA子时隙内源节点和目的节点进行波束赋形操作的示意图如附图3所示,节点主要操作如下:
步骤1:当前节点判断:自己是否是当前CTA的源节点或目的节点?如果是,执行下一步;如果否,返回执行本步骤。
步骤2:当前节点(是当前CTA的目的节点)判断:自己是否是当前CTA的源节点?如果是,执行下一步;如果否,转步骤5。
步骤3:当前节点从第1个扇区开始,依序旋转发射天线经过所有扇区,在每个扇区停留n个(n为扇区数量)基本时隙(设时长为t),在每个基本时隙内发送一个波束赋形帧;因此,在每个扇区内停留的时间为nt,在所有扇区停留的总时间为n2t。
步骤4:当前节点从第1个扇区开始,依序旋转接收天线经过所有扇区,在每个扇区停留一个基本时隙的时间t,处于接收状态,等待接收目的节点发来的波束赋形帧;如果收到目的节点发来的波束赋形帧,则停止天线旋转和接收,解析波束赋形帧并记录相关信息,以备发送数据帧时使用。至此,当前波束赋形CTA子时隙内源节点的波束赋形操作结束。
步骤5:当前节点(是当前CTA的目的节点)从第1个扇区开始,依序旋转接收天线经过所有扇区并循环n次(n为扇区数量),在每个扇区停留一个基本时隙t的时间,处于接收状态,等待接收源节点发来的波束赋形帧;如果收到源节点发来的波束赋形帧,则停止天线旋转和接收,解析波束赋形帧并记录相关信息,以备发送波束赋形帧和接收数据帧时使用;然后,执行下一步。如果循环经过所有扇区n次都没有收到源节点发来的波束赋形帧,则当前波束赋形CTA子时隙内目的节点的波束赋形操作结束。
步骤6:当前节点将发射天线对准源节点所在扇区,向源节点发送n个波束赋形帧,在一个基本时隙t内发送一个,共用时nt。至此,当前波束赋形CTA子时隙内目的节点的波束赋形操作结束。
波束赋形CTA子时隙内节点的操作流程如附图4所示。
为了更清楚的描述波束赋形CTA子时隙内的波束赋形过程,本发明将该波束赋形过程划分为如下两个阶段:
第一阶段:源节点旋转发送(波束赋形帧)、目的节点旋转接收(波束赋形帧);
第二阶段:目的节点定向发送(波束赋形帧)、源节点旋转接收(波束赋形帧)。
发明内容
本发明提出一种基于空分复用的太赫兹无线网络高时隙利用率接入方法,它包含“基于机会性空分复用的波束赋形”和“按需融合入网和时隙申请”两种新机制;这两种新机制分别致力于解决以下两个问题:
(1)CTAP时段每个“源—目的”节点对单独进行波束赋形操作,导致时隙利用率偏低。
在现有太赫兹无线个域网定向接入方法运行过程中,有数据传输的每对节点在CTAP时段都需要进行波束赋形和数据交互。在CTAP时段的每个CTA时隙的波束赋形CTA子时隙内,每一对源、目的节点之间在进行数据传输之前都需要进行单独的波束赋形训练,使节点的天线方向对准对方,在此过程中除源、目的节点之外的其它所有节点都只能等待而不能进行通信(如果网络节点总数为n,则不得不等待的节点数为n-2);而波束赋形的复杂度是n×n,发送一次波束赋形帧需要考虑到节点天线转动的速率,也就是说,要考虑天线扇区转换所需的时间。如果一个超帧的CTAP时段包含m个CTA,则会造成n-2个节点等待m次,每次等待的时长为Beamforming CTA子时隙的长度TBeamforming CTA,总的等待时间为:
T总等待=(n-2)*m*TBeamforming CTA
可以看出,总的等待时间难以忽略,而在这些时间内不能通信,会带来时隙利用率偏低的问题。
目前,由于受限于实际的技术精度,天线转动一个角度所花的时间通常长达几十微秒,与协议标准中所提到的微秒以下相差比较大,并且还需要考虑到链路中的时延,所以一次波束赋形的开销和时延都比较大。在这种情况下,如果某一时刻波束赋形只能发生在一对节点之间的话,也就是只有某一个扇区及其对角存在帧发送。这种场景下信道的利用率就会明显偏低,尤其是扇区角度很小时,信道利用率更低,造成的延时更大,开销也呈幂次方增加;本发明方案考虑到波束赋形的特殊性,并且根据其转动的规律性,提出“基于机会性空分复用的波束赋形”新机制来解决上述问题。
(2)节点入网申请和时隙申请分别进行,在未入网节点有时隙申请的情况下,会导致数据帧延迟偏高。
根据现有太赫兹无线个域网定向接入方法,节点入网申请和时隙申请是分别进行的;在未入网节点有时隙申请的情况下,节点的时隙申请也只能在常规CAP子时段进行;当节点数较多时,有可能出现位于同一个扇区的多个节点同时在常规CAP子时段发送时隙申请消息的情况,这种情况会增加时隙申请消息相互碰撞的概率,推迟节点成功申请到时隙的时间,从而导致数据帧平均延迟不必要地偏高。
(一)本发明提出的新机制的基本思路和主要操作
本节具体介绍本发明提出的“基于机会性空分复用的波束赋形”和“按需融合入网和时隙申请”两种新机制的基本思路和主要操作。
1.新机制1——基于机会性空分复用的波束赋形
“基于机会性空分复用的波束赋形”新机制的基本思路是:
在“基于机会性空分复用的波束赋形”机制中,在同一时刻两对节点可同时进行波束赋形,其思想是已分配但未完成波束赋形的双数或单数节点监听前面一个源节点的波束赋形帧。然后机会性与前一节点对同时进行波束赋形。其中帧结构不同的是,原本扇区号字段定义为当前扇区的扇区号,机制中定义为波束赋形的起始扇区号。源节点进行波束赋形的起始扇区号S1需要通知给目的节点,目的是为了保证复用节点对中的目的节点知道源节点什么时候结束第一轮波束赋形,本文采取了一种巧妙的方法,因为源、目的节点扇区号有对应关系,相减的绝对值为固定值(扇区数/2),所以在扇区号字段内放入起始扇区号,目的节点识别到后算出正确的扇区号,用解析的起始扇区号配合就可以算出源节点何时停止第一轮波束赋形。
其中PNC对DEV进行时隙分配机制需要做出一定改进:在分配好所有节点的时隙之后,为了使复用比例尽可能地大,PNC判断节点对中各源节点的位置关系,并依据该位置关系为CTA进行排序,排序的基本规则是:第一个CTA分给位于PNC下半平面(即第3和第4象限)的源节点;然后,按照相邻CTA的源节点位于不同的上下半平面的原则分配CTA,即:第1个CTA源节点位于下半平面,第2个CTA源节点位于上半平面(即第1和第2象限),第3个CTA源节点位于下半平面……;如果没法岔开则按照申请的先后来分配。
“基于机会性空分复用的波束赋形”新机制的主要操作如下:
S1:Beacon时段节点操作
S11:节点判断:自己的类型是否为PNC?如果是,执行S12;如果否。执行S13。
S12:PNC切换为发送模式,节点从0号扇区开始,循环广播Beacon帧,其IE字段内含已分配节点对之间的数据交互信息,交互信息内含每个已分配时隙的节点的ID、CTA分配情况、CTA顺序等信息;Beacon时段结束后,转S22。
S13:DEV切换为接收模式,旋转天线接收Beacon帧,一旦接收到Beacon帧,判断是否有自己的时隙?如果是,则运行“基于机会性空分复用的波束赋形”新机制,从Beacon帧解析得到自己的时隙信息之后,解析出自己对应的CTA的前一个CTA(如果有)里节点对的ID信息,DEV判断出自己在CTAP时段的哪些CTA中是“提前扫描发送源节点”、“正常扫描发送源节点”、“提前旋转接收目的节点”、“正常旋转接收目的节点”,并记录这些信息以备后用。判断依据是:节点在自己获得的CTA里是“正常扫描发送源节点”或“正常旋转接收目的节点”,在自己获得的CTA的前一个CTA里是“提前扫描发送节点”或者“正常旋转接收目的节点”,Beacon时段结束转S31;如果否,则执行S21。
S14:需要入网的节点根据Beacon帧内的扇区信息进行超帧同步,结束后执行S21,已入网的节点执行S31。
S2:关联CAP子时段节点操作
S21:DEV判断自己是否需要申请入网?如果需要申请,则在PNC转至自己所在扇区时,发送入网申请帧,在当前时隙内等待接收回复帧。判断是否收到回复帧?如果是,则取出该帧中的相关内容存储备用,然后,执行S31;如果否,等到本超帧结束后,执行S11。
S22:PNC在关联CAP子时段旋转天线一周,在每个扇区接收入网申请帧。一旦接受到入网申请帧,则判断是否为其分配ID,将信息装入到入网申请回复帧中回复给DEV;关联CAP子时段结束后,转S33。
S3:常规CAP子时段节点操作
S31:缓存区有数据的DEV判断自己是否需要申请时隙且未申请时隙?如果是,则在PNC转至所在扇区时,发送一个时隙申请帧,然后,执行下一步;如果否,在当前子时段则结束后转S49。
S32:DEV在当前子时段内判断是否接收到时隙申请回复帧?如果是,则取出该帧中的内容,存储备用;结束后转S49。
S33:PNC切换为接收模式,旋转天线一周,在每个扇区接收时隙申请帧。如果接收到时隙申请帧,则判断是否为当前DEV分配时隙?如果是,则生成一个包含时隙信息的时隙申请回复帧,回复给当前DEV;如果否,则将拒绝原因放入到时隙申请回复帧中,回复给DEV。PNC将时隙申请的相关信息暂时存储起来,等待常规CAP子时段结束后,转S41。
S4:CTAP时段节点操作
S41:PNC为申请时隙的DEV分配时隙,即分配CTA;CTA分配完之后对CTA进行排序,以便于有更大的概率在波束赋形时进行空分复用。
S42:PNC判断:在当前CTA,自己是否为“提前扫描发送源节点”?如果是,监听前一对节点(即自己所在CTA的前一CTA里的源、目的节点)之间的波束赋形帧;如果监听到波束赋形帧后首先分析帧里面的源、目的ID是否为自己的前一对节点;如果为前一对节点,则等待一个扇区发送时间以后进行机会性波束赋形,起始扇区为接收到波束赋形帧的扇区的下一个扇区;在当前CTA结束后转S48;如果否,直接执行下一步。
S43:PNC判断:在当前CTA,自己是否为“正常扫描发送源节点”?如果是,则根据记录的起始扇区,完成完整或剩余扇区的第一轮波束赋形训练,在每个扇区发送n个波束赋形帧,每个扇区停留时间为nt;然后切换为接收模式,旋转天线在每个扇区停留一个时隙t,接收来自目的节点的波束赋形帧;然后转S46;如果否,直接执行下一步。
S44:PNC判断:在当前CTA,自己是否为“提前旋转接收目的节点”?如果是,旋转接收波束赋形帧,时长为前一对节点剩下的第一轮波束赋形时间,与前一对节点同时停止波束赋形;在当前CTA结束后转S48;如果否,直接执行下一步。
S45:PNC判断:在当前CTA,自己是否为“正常旋转接收目的节点”?如果是,切换为接收模式,旋转天线接收来自源节点的波束赋形帧,接收到该帧之后等待第一阶段扫描结束;接下来向源节点方向发送n个波束赋形帧,然后转S47;如果否,等到当前CTA结束,然后转S48。
S46:PNC如果收到来自目的节点的波束赋形帧,获取扇区信息之后,采用“数据-确认”模式向目的节点发送数据帧;如果已申请到时隙的数据包发送完但仍处于自身的CTA中,则继续发送数据帧直到当前CTA结束;然后转S48。
S47:PNC将天线对准源节点扇区,等待接收数据帧;如果收到数据帧,则向源节点回复一个ACK帧(确认帧)并进行数据帧的相应处理;直至当前CTA结束。
S48:PNC判断:当前超帧的CTA是否全部结束?如果是,转S12;如果否,转S42。
S49:DEV判断:在当前CTA,自己是否为“提前扫描发送源节点”?如果是,监听前一对节点(即自己所在CTA的前一CTA里的源、目的节点)之间的波束赋形帧;如果监听到波束赋形帧后首先分析帧里面的源、目的ID是否为自己的前一对节点;如果为前一对节点,则等待一个扇区发送时间以后进行机会性波束赋形,起始扇区为接收到波束赋形帧的扇区的下一个扇区;在当前CTA结束后转S415;如果否,直接执行下一步。
S410:DEV判断:在当前CTA,自己是否为“正常扫描发送源节点”?如果是,则根据记录的起始扇区,完成完整或剩余扇区的第一轮波束赋形训练,在每个扇区发送n个波束赋形帧,每个扇区停留时间为nt;然后切换为接收模式,旋转天线在每个扇区停留一个时隙t,接收来自目的节点的波束赋形帧;然后转S413;如果否,直接执行下一步。
S411:DEV判断:在当前CTA,自己是否为“提前旋转接收目的节点”?如果是,旋转接收波束赋形帧,时长为前一对节点剩下的第一轮波束赋形时间,与前一对节点同时停止波束赋形;在当前CTA结束后转S415;如果否,直接执行下一步。
S412:DEV判断:是否为“正常旋转接收目的节点”?如果是,切换为接收模式,旋转天线接收来自源节点的波束赋形帧,接收到该帧之后等待第一阶段扫描结束;然后向源节点方向发送n个波束赋形帧,然后转S414;如果否,转S415。
S413:DEV如果收到来自目的节点的波束赋形帧,获取扇区信息之后,采用“数据-确认”模式向目的节点发送数据帧;如果已申请到时隙的数据包发送完但仍处于自身的CTA中,则继续发送数据帧直到当前CTA结束;然后转S415。
S414:DEV将天线对准源节点扇区,等待接收数据帧;如果收到数据帧,则向源节点回复一个ACK帧(确认帧)并进行数据帧的相应处理,直至当前CTA结束。
S415:DEV判断:当前超帧的CTA是否全部结束?如果是,转S13;如果否,转S49。
根据“基于机会性空分复用的波束赋形”新机制,在每个CTA的波束赋形CTA子时隙内,通常会有两对“源-目的”节点进行波束赋形,其中有一对“源-目的”节点是提前进行波束赋形操作。根据基于空分复用提前发送波束赋形帧作的源节点(即“复用发”DEV)位于正常操作源节点(即“正常发”DEV)的象限的不同,会有4种不同情况,分别如附图5~附图8所示。
2.新机制2——按需融合入网和时隙申请
“按需融合入网和时隙申请”新机制的基本思路是:
节点在入网申请过程中也可以进行时隙申请,即申请入网且有数据待发送的节点利用一个入网时隙申请帧同时进行入网和时隙申请。PNC收到入网时隙申请帧之后,判断是否同意入网,如果同意那么就判断是否分配时隙以及所分配的时隙量,最后回复入网时隙申请回复帧。这种机制的效果是可以减小新节点所在扇区的时隙申请碰撞率,还能降低部分节点的时延。假如融合申请后没有新数据包到达,这种情况还能节省开销,因为只发一种帧节省了两个帧的Mac header以及物理层的physical header。另外,某种特殊情况需要说明,假如入网时段到时隙申请时段新节点正好有少量数据下来,申请量不够,导致下一超帧需要再申请一次时隙。从另一角度来看,新节点分配到的时隙变少,其它节点分配到的时隙相应的会变多,那么也有可能因为多分配的时隙而不必再申请一次,所以其优点也很明显。时延部分通过RTT(往返时延)、t1(传输时延)和SIFS(帧间间距)计算,T为一次往返的时延,TSDM、TAD为单个节点组网的总时延,通过对比可节省1个RTT和1个SIFS的时间。
TSDM=RTT+SIFS+t1 (1)
TAD=2T=2RTT+2SIFS+t1 (2)
入网申请命令的长度为22个byte,图11所示的时隙申请帧比较长,由多个CTRqB组成,即时隙申请模块,CTRqB中有源、目的节点ID,时隙申请量等信息,大小范围是12-128byte。入网申请帧放入时隙申请帧的第一个CTRqB的位置,命令类型保留字段包含0x001D-0x00FF。定义新的命令类型为入网时隙申请命令,0x001E为类型识别码。
类似的也需要定义一种新的回复帧,入网时隙申请回复帧以入网申请回复命令为主体,将时隙申请回复命令放入入网申请回复帧尾部,入网申请回复帧尾部字段为供应商信息,此部分为变长字段。定义命令类型为入网时隙申请回复帧,0x001F为类型识别码。
“按需融合入网和时隙申请”新机制的操作由PNC和DEV在Beacon时段和常规CAP子时段共同完成,主要操作如下:
S1:Beacon时段节点操作
S11:节点判断:自己的类型是否为PNC?如果是,则执行S12;如果否,则执行S13。
S12:PNC切换为发送模式,从0号扇区开始,在每个扇区广播n个Beacon帧,n为扇区数量;设每个基本时隙的时长为t,PNC在每个基本时隙内广播一个Beacon帧;Beacon帧内包含有每个已分配时隙的节点的ID、CTA分配情况、所有节点对的CTA顺序等信息,结束后执行。
S13:DEV切换为接收模式,旋转天线接收Beacon帧,在每个扇区停留时间为t,这样就可以保证一定能接收到PNC发送过来的Beacon帧,接收到Beacon帧之后,判断是否为已分配时隙DEV?是则解析出时隙信息备用,结束后执行S31;如果否,则执行S14。
S14:需要入网的节点根据Beacon帧内的扇区信息进行超帧同步,结束后执行S21,已入网的节点执行S31。
S2:关联CAP子时段节点操作
S21:DEV在PNC转至自己所在扇区的时候,判断自己是否需要入网?如果需要,则判断缓存区内是否有数据需要发送,如果有则发送入网时隙请求帧;没有,则发送入网申请帧,执行S22;如果不需要入网,等待当前超帧结束后执行S11。
S22:当前DEV切换为接收模式,等待接收PNC发送过来的回复帧,如果接收到入网申请回复帧或入网时隙申请回复帧,则解析出其中的信息备用,结束后执行S31。
S23:PNC在入网时段循环一周,接收入网申请帧和入网时隙申请帧,接收到入网申请帧后判断是否同意为其分配ID,如果同意就分配ID并将信息装入入网申请回复帧中,回复给DEV。如果接收到入网时隙申请帧,则判断是否同意其入网,同意就为其分配ID。然后进一步判断是否为其分配时隙,组帧完毕回复入网时隙申请回复帧;循环结束后执行S33。
S3:常规CAP子时段节点操作
S31:时隙申请时段,DEV判断:自己是否有未获得时隙的待发数据包、且在本超帧内未申请时隙?如果是,则新生成一个时隙申请帧,在PNC接收天线对准自己的基本时隙里,将该时隙申请帧发送给PNC,执行S32;如果否,执行S41。
S32:DEV在一个长度为基本时隙的时间里判断:是否收到PNC发给自己的时隙申请回复帧?如果是,则取出该帧中的内容,存储备用,然后,执行S41。
S33:PNC循环一周在每个扇区接收时隙申请帧,一旦接收到时隙申请帧,则判断:是否为申请时隙的DEV分配时隙?如果是,为该节点分配时隙,并时隙信息放入时隙申请回复帧中,发送给DEV;如果否,则将拒绝原因放入时隙申请回复帧中,回复给DEV;结束后执行S41。
S4:CTAP时段节点操作
S41:节点判断自己是否为正常发送的源节点?如果是,则旋转天线,在自己的CTA内向每个扇区发送n个波束赋形帧,结束后切换为接收模式。等待目的节点发送过来的波束赋形帧,接收到后等待波束赋形结束,执行S43;如果否,则执行S42。
S42:节点判断自己是否为正常发送的目的节点?如果是,则旋转天线接收波束赋形帧,如果接收到波束赋形帧,则将方向对准源节点。等待第一阶段波束赋形结束后,切换为发送模式,向PNC发送n个波束赋形帧,结束后执行S44;如果否,则执行S45。
S43:当前节点如果收到目的节点发来的波束赋形帧,则从中获取目的节点所在扇区信息,采用“数据-确认”模式向目的节点发送数据帧;直到当前CTA结束,执行S45。
S44:当前节点将天线对准源节点所在扇区,等待接收数据帧;如果收到数据帧,则向源节点回复一个ACK帧(确认帧)并进行数据帧的相应处理;直至当前CTA结束,执行S45。
S45:节点判断:是否当前超帧的所有CTA都已经历完?如果是,执行S11;如果否,执行S41。
(二)本发明所提方法的主要操作
本发明所提方法——基于空分复用的太赫兹无线网络高时隙利用率接入方法,在运行时将网络运行时间划分为多个连续的、首尾相接的超帧。每个超帧分为三个时段:Beacon时段、CAP时段、CTAP时段。Beacon时段用于供PNC广播超帧结构和时隙分配等信息。CAP时段分为关联入网CAP和常规CAP,前者用于网内DEV向PNC申请入网,后者用于DEV向PNC申请时隙。CTAP时段(信道时隙分配时段)又分为多个CTA,CTA被PNC分配给通信节点使用,通信节点可以在CTA内进行波束赋形和数据传输。
本发明所提方法包含“基于机会性空分复用的波束赋形”和“按需融合入网和时隙申请”两种新机制;“基于机会性空分复用的波束赋形”新机制的第一部分(DEV根据收到的Beacon帧内容确定自己在CTA中的收发类型)运行在Beacon时段、第二部分(节点在波束赋形过程中进行机会性的空分复用)运行在CTAP时段,“按需融合入网和时隙申请”新机制运行在CAP时段(具体为CAP时段的关联CAP子时段);如附图11所示。
本发明提出的基于空分复用的太赫兹无线网络高时隙利用率接入方法的操作由节点(包括PNC和DEV)实施,主要步骤如下:
S1:Beacon时段节点操作
S11:节点判断:自己的类型是否是PNC?如果是,执行下一步;否则,转S13。
S12:节点(是PNC)切换为发送模式,从0号扇区开始,在每个扇区广播n个Beacon帧,n为扇区数量;设每个基本时隙的时长为t,PNC在每个基本时隙内广播一个Beacon帧;Beacon帧内包含有每个已分配时隙的节点的ID、CTA分配情况、所有节点对的CTA顺序等信息。PNC循环一周遍历完n个扇区,保证每个节点都可以收到Beacon帧。PNC发送完Beacon帧之后,转S24。
S13:节点(是DEV)切换为接收模式,旋转天线接收Beacon帧,在每个扇区停留时间为t,这样就可以保证能够接收到PNC发来的Beacon帧。DEV如果收到Beacon帧,执行下一步;如果未收到,返回执行本步骤。
S14:DEV判断:自己是否已入网?如果是,解析出Beacon帧中的内容并存储备用,并且开始超帧计时等操作,然后执行下一步;如果否,转S21。
S15:DEV运行本发明提出的“基于机会性空分复用的波束赋形”新机制,判断出自己在CTAP时段的哪些CTA中是“提前扫描发送源节点”、在哪些CTA中是“正常扫描发送源节点”、在哪些CTA中是“提前旋转接收目的节点”、在哪些CTA中是“正常旋转接收目的节点”,并记录这些信息以备后用;判断依据是:节点在自己获得的CTA里是“正常扫描发送源节点”或“正常旋转接收目的节点”,在自己获得的CTA的前一个CTA里是“提前扫描发送节点”或者“正常旋转接收目的节点”。然后,转S31。
S2:关联CAP子时段节点操作
S21:DEV判断:自己是否需要申请入网?如果需要申请入网,运行本发明提出的“按需融合入网和时隙申请”新机制,判断是否需要为待发送的数据包申请时隙;如果需要为待发数据包申请时隙,则生成一个包含时隙申请信息的入网时隙申请帧(是一种新类型的帧),并装入相关信息;如果需要申请入网但不需要为待发数据包申请时隙(意味着没有待发数据包),则生成一个原有类型的入网申请帧并装入相关信息。如果不需要申请入网(默认为已入网),转S31。
S22:DEV在PNC接收天线对准自己的基本时隙里,将上述入网申请帧或入网时隙申请帧发送给PNC。
S23:DEV将接收天线对准PNC所在扇区,在长度为基本时隙的时间里,判断:是否收到入网申请回复帧或入网时隙申请回复帧?如果是,取出该帧中的相关内容存储备用,然后,转S31;如果否(说明未能成功入网),等到本超帧结束后,返回S13。
S24:PNC切换为接收模式,旋转天线依次在每个扇区接收帧;如果收到入网申请帧,则判断是否接纳DEV入网并进行回复;如果收到入网时隙申请帧,则运行本发明提出的“按需融合入网和时隙申请”新机制,判断是否接纳DEV入网并为其分配时隙;然后,PNC对DEV进行回复。PNC在每个扇区停留时间为2*t;如果扇区的停留时间期满就转至下一扇区,直至所有扇区都停留过;然后,转S33。
S3:常规CAP子时段节点操作
S31:DEV判断:自己是否有未获得时隙的待发数据包、且在本超帧内未申请时隙?如果是,则生成一个时隙申请帧,在PNC接收天线对准自己的基本时隙里,将该时隙申请帧发送给PNC;如果否,转S47。
S32:DEV在一个长度为基本时隙的时间里判断:是否收到PNC发给自己的时隙申请回复帧?如果是,则取出该帧中的内容,存储备用,然后,转S47;如果否,直接转S47。
S33:PNC切换为接收模式,旋转天线依次在每个扇区接收时隙申请帧;PNC如果收到时隙申请帧,则判断是否为申请时隙的DEV分配时隙并对DEV进行回复。PNC在每个扇区停留时间为2*t;如果扇区的停留时间期满就转至下一扇区,直至所有扇区都停留过;然后,转S41。
S4:CTAP时段节点操作
S41:PNC为申请时隙的DEV分配时隙,即分配CTA;CTA分配完之后对CTA进行排序,以便于有更大的概率在波束赋形时进行空分复用。
S42:PNC判断:在当前CTA,自己是否为“提前扫描发送源节点”?如果是,监听前一对节点(即自己所在CTA的前一CTA里的源、目的节点)之间的波束赋形帧;如果监听到波束赋形帧后首先分析帧里面的源、目的ID是否为自己的前一对节点;如果为前一对节点,则等待一个扇区发送时间以后进行机会性波束赋形,起始扇区为接收到波束赋形帧的扇区的下一个扇区;在当前CTA结束后转S48;如果否,直接执行下一步。
S43:PNC判断:在当前CTA,自己是否为“正常扫描发送源节点”?如果是,则根据记录的起始扇区,完成完整或剩余扇区的第一轮波束赋形训练,在每个扇区发送n个波束赋形帧,每个扇区停留时间为nt;然后切换为接收模式,旋转天线在每个扇区停留一个时隙t,接收来自目的节点的波束赋形帧;然后转S46;如果否,直接执行下一步。
S44:PNC判断:在当前CTA,自己是否为“提前旋转接收目的节点”?如果是,旋转接收波束赋形帧,时长为前一对节点剩下的第一轮波束赋形时间,与前一对节点同时停止波束赋形;在当前CTA结束后转S48;如果否,直接执行下一步。
S45:PNC判断:在当前CTA,自己是否为“正常旋转接收目的节点”?如果是,切换为接收模式,旋转天线接收来自源节点的波束赋形帧,接收到该帧之后等待第一阶段扫描结束;接下来向源节点方向发送n个波束赋形帧,然后转S47;如果否,等到当前CTA结束,然后转S48。
S46:PNC如果收到来自目的节点的波束赋形帧,获取扇区信息之后,采用“数据-确认”模式向目的节点发送数据帧;如果已申请到时隙的数据包发送完但仍处于自身的CTA中,则继续发送数据帧直到当前CTA结束;然后转S48。
S47:PNC将天线对准源节点扇区,等待接收数据帧;如果收到数据帧,则向源节点回复一个ACK帧(确认帧)并进行数据帧的相应处理;直至当前CTA结束。
S48:PNC判断:当前超帧的CTA是否全部结束?如果是,返回S12;如果否,返回S42。
S49:DEV判断:在当前CTA,自己是否为“提前扫描发送源节点”?如果是,监听前一对节点(即自己所在CTA的前一CTA里的源、目的节点)之间的波束赋形帧;如果监听到波束赋形帧后首先分析帧里面的源、目的ID是否为自己的前一对节点;如果为前一对节点,则等待一个扇区发送时间以后进行机会性波束赋形,起始扇区为接收到波束赋形帧的扇区的下一个扇区;在当前CTA结束后转S415;如果否,直接执行下一步。
S410:DEV判断:在当前CTA,自己是否为“正常扫描发送源节点”?如果是,则根据记录的起始扇区,完成完整或剩余扇区的第一轮波束赋形训练,在每个扇区发送n个波束赋形帧,每个扇区停留时间为nt;然后切换为接收模式,旋转天线在每个扇区停留一个时隙t,接收来自目的节点的波束赋形帧;然后转S413;如果否,直接执行下一步。
S411:DEV判断:在当前CTA,自己是否为“提前旋转接收目的节点”?如果是,旋转接收波束赋形帧,时长为前一对节点剩下的第一轮波束赋形时间,与前一对节点同时停止波束赋形;在当前CTA结束后转S415;如果否,直接执行下一步。
S412:DEV判断:是否为“正常旋转接收目的节点”?如果是,切换为接收模式,旋转天线接收来自源节点的波束赋形帧,接收到该帧之后等待第一阶段扫描结束;然后向源节点方向发送n个波束赋形帧,然后转S414;如果否,转S415。
S413:DEV如果收到来自目的节点的波束赋形帧,获取扇区信息之后,采用“数据-确认”模式向目的节点发送数据帧;如果已申请到时隙的数据包发送完但仍处于自身的CTA中,则继续发送数据帧直到当前CTA结束;然后转S415。
S414:DEV将天线对准源节点扇区,等待接收数据帧;如果收到数据帧,则向源节点回复一个ACK帧(确认帧)并进行数据帧的相应处理,直至当前CTA结束。
S415:DEV判断:当前超帧的CTA是否全部结束?如果是,返回S13;如果否,返回S49。
本发明提出的基于空分复用的太赫兹无线网络高时隙利用率接入方法的主要操作流程如附图12所示。
(三)本发明的有益效果
本发明提出的基于空分复用的太赫兹无线网络高时隙利用率接入方法所包含的两种机制可以通过空分复用来减少波束赋形所花的整体时间,增加CTA中用于传送数据帧的时间,提高MAC层吞吐量,并且可以用一个消息同时进行入网和时隙申请,能够减轻时隙申请帧的碰撞,有助于降低数据帧的平均延迟。本发明所提方法的有益效果具体如下:
(1)“基于机会性空分复用的波束赋形”新机制能够在CTAP时段让CTA排序在后的“源—目的”节点对在前一个CTA里进行波束赋形操作,使两个“源—目的”节点对在一段时间里同时开展波束赋形,从总体上缩短了波束赋形占用的时间并增加了传送数据帧的时间,从而能够提高时隙利用率和MAC层吞吐量,降低数据帧平均延迟。
(2)“按需融合入网和时隙申请”新机制通过在节点申请入网时一并进行时隙申请,能够减小时隙申请帧碰撞的概率,提高时隙申请的成功率,从而让更多的数据帧顺利发送,进一步降低数据帧平均延迟,并且有利于减少时隙申请帧数量、降低控制开销。
具体实施方式
在一种具体的实施方式中,一个太赫兹无线个域网含有一个PNC和不少于1个DEV;PNC作为网络的拓扑中心和逻辑中心;由PNC来分配网络内的数据发送时隙,以及让整个网络有序地运行。DEV作为从节点,根据PNC的安排使用该网络进行数据通信。节点间进行数据通信时使用定向通信的方式。根据本发明提出的基于空分复用的太赫兹无线网络高时隙利用率接入方法,太赫兹无线个域网的运行时间由连续的超帧组成;每个超帧分为三个时段:Beacon时段、CAP时段、CTAP时段;CAP时段又分为关联CAP子时段和常规CAP子时段。本发明提出两种的新机制运行于CAP时段和CTAP时段。
本发明提出的基于空分复用的太赫兹无线网络高时隙利用率接入方法的一种具体实施方式如下:
ES1:Beacon时段节点操作
ES11:Beacon时段到达后,节点先判断自身的节点类型是否为PNC?如果是,执行ES12;如果否,转ES13。
ES12:PNC切换为发送模式,从0号扇区开始,在每个扇区发送n个Beacon帧(推荐n为2的倍数,如8)。每个帧之间的间隔时间固定为t,帧内包含有每个已分配时隙的节点的ID、CTA分配情况、所有节点对的CTA顺序等信息。循环一周遍历完n个扇区,保证每个节点都可以收到Beacon帧,所有扇区遍历完后转ES24。
ES13:Beacon时段到达后,DEV换为接收模式,DEV旋转天线接收Beacon帧,在每个扇区停留时间为t(推荐t为1ms),这样就可以保证一定能接收到PNC发送过来的Beacon帧,执行ES14。
ES14:接收到Beacon帧之后,DEV(分为四种,分别是已分配时隙的DEV、想入网的DEV、想入网有数据发送的DEV,入网未分配时隙的DEV)判断是否为已分配时隙DEV?如果是,则解析出时隙信息,得到所分配的CTA,判断出自己在CTAP时段的哪些CTA中是“提前扫描发送源节点”、“正常扫描发送源节点”、“提前旋转接收目的节点”、“正常旋转接收目的节点”,并记录这些信息以备后用。判断依据是:节点在自己获得的CTA里是“正常扫描发送源节点”或“正常旋转接收目的节点”,在自己获得的CTA的前一个CTA里是“提前扫描发送节点”或者“正常旋转接收目的节点”,结束后转ES21。
ES2:关联CAP子时段节点操作
ES21:当天线转至所在扇区的时候,DEV判断是否需要入网?如果有,则判断缓存区内是否有数据待发送;如果有,则将时隙申请信息装入新生成的入网申请帧中;如果没有时隙申请,则将入网申请信息装入新生成的入网申请帧中,结束后执行ES22;如果DEV不需要入网(已经入网),则执行ES31。
ES22:DEV等待PNC将天线方向对准自己所在扇区,采用竞争接入的方式,将该入网申请帧发送给PNC,结束后执行ES23。
ES23:DEV切换为接收模式,在PNC的方向接收入网申请回复帧,判断:是否收到入网申请回复帧?如果是,取出帧内的信息备用,并立马发送带有ID的ACK帧和正式的申请帧,结束执行ES31;如果否,结束执行ES13。
ES24:关联CAP子时段,PNC的天线在每个扇区停留的时间为2t,接收入网申请帧或入网时隙申请帧,如果扇区的停留时间到达就转至下一扇区。接收到申请帧时,先判断帧类型,如果是入网申请帧,分析是否为其分配ID,将同意信息或拒绝原因等字段装入入网申请回复帧中。先回复ACK帧,然后回复入网申请回复帧,之后等待接收DEV发送过来的正式申请;如果接收到的是入网时隙申请帧,先分析是否为其分配ID,然后分析是否为其分配时隙,最后将入网信息和时隙信息装入到入网时隙申请回复帧中,回复给DEV,旋转接收结束执行ES33。
ES3:常规CAP子时段节点操作
ES31:常规CAP子时段到达后,DEV在PNC到达自己所在扇区时,判断自己是否有未获得时隙的待发数据包、且在本超帧内未申请时隙?如果是,则新生成一个时隙申请帧,在PNC接收天线对准自己的基本时隙里,将该时隙申请帧发送给PNC,采用CSMA/CA的方式,执行ES32;如果否,结束后执行ES42。
ES32:在当前扇区的2t时间内,当前DEV判断:是否接收到时隙申请回复帧?如果是,则取出该帧中的内容,存储备用,结束后转ES42。
ES33:PNC切换为接收模式,循环一周接收时隙申请帧,每个扇区停留时间为2t,时间到达则进入下一扇区当接收到时隙申请帧后,回复时隙申请回复帧。如果同意为其分配时隙,则将相关信息放入时隙申请回复帧中,时隙申请回复帧内不包含具体的时隙分配量;如果不同意,则在时隙回复帧中告知原因等信息。PNC暂时把各个DEV的申请量和ID存储下来,等待常规CAP结束之后进入CTAP时段进行时隙分配,结束转ES41。
ES4:CTAP时段节点操作
ES41:PNC为申请时隙的DEV分配时隙,即分配CTA;CTA分配完之后对CTA进行排序,以便于有更大的概率在波束赋形时进行空分复用。
ES42:PNC判断:在当前CTA,自己是否为“提前扫描发送源节点”?如果是,监听前一对节点(即自己所在CTA的前一CTA里的源、目的节点)之间的波束赋形帧;如果监听到波束赋形帧后首先分析帧里面的源、目的ID是否为自己的前一对节点;如果为前一对节点,则等待一个扇区发送时间以后进行机会性波束赋形,起始扇区为接收到波束赋形帧的扇区的下一个扇区;在当前CTA结束后转ES48;如果否,直接执行下一步。
ES43:PNC判断:在当前CTA,自己是否为“正常扫描发送源节点”?如果是,则根据记录的起始扇区,完成完整或剩余扇区的第一轮波束赋形训练,在每个扇区发送n个波束赋形帧,每个扇区停留时间为nt;然后切换为接收模式,旋转天线在每个扇区停留一个时隙t,接收来自目的节点的波束赋形帧;然后转ES46;如果否,直接执行下一步。
ES44:PNC判断:在当前CTA,自己是否为“提前旋转接收目的节点”?如果是,旋转接收波束赋形帧,时长为前一对节点剩下的第一轮波束赋形时间,与前一对节点同时停止波束赋形;在当前CTA结束后转ES48;如果否,直接执行下一步。
ES45:PNC判断:在当前CTA,自己是否为“正常旋转接收目的节点”?如果是,切换为接收模式,旋转天线接收来自源节点的波束赋形帧,接收到该帧之后等待第一阶段扫描结束;接下来向源节点方向发送n个波束赋形帧,然后转ES47;如果否,等到当前CTA结束,然后转ES48。
ES46:PNC如果收到来自目的节点的波束赋形帧,获取扇区信息之后,采用“数据-确认”模式向目的节点发送数据帧;如果已申请到时隙的数据包发送完但仍处于自身的CTA中,则继续发送数据帧直到当前CTA结束;然后转ES48。
ES47:PNC将天线对准源节点扇区,等待接收数据帧;如果收到数据帧,则向源节点回复一个ACK帧(确认帧)并进行数据帧的相应处理;直至当前CTA结束。
ES48:PNC判断:当前超帧的CTA是否全部结束?如果是,转ES12;如果否,转ES42。
ES49:DEV判断:在当前CTA,自己是否为“提前扫描发送源节点”?如果是,监听前一对节点(即自己所在CTA的前一CTA里的源、目的节点)之间的波束赋形帧;如果监听到波束赋形帧后首先分析帧里面的源、目的ID是否为自己的前一对节点;如果为前一对节点,则等待一个扇区发送时间以后进行机会性波束赋形,起始扇区为接收到波束赋形帧的扇区的下一个扇区;在当前CTA结束后转ES415;如果否,直接执行下一步。
ES410:DEV判断:在当前CTA,自己是否为“正常扫描发送源节点”?如果是,则根据记录的起始扇区,完成完整或剩余扇区的第一轮波束赋形训练,在每个扇区发送n个波束赋形帧,每个扇区停留时间为nt;然后切换为接收模式,旋转天线在每个扇区停留一个时隙t,接收来自目的节点的波束赋形帧;然后转ES413;如果否,直接执行下一步。
ES411:DEV判断:在当前CTA,自己是否为“提前旋转接收目的节点”?如果是,旋转接收波束赋形帧,时长为前一对节点剩下的第一轮波束赋形时间,与前一对节点同时停止波束赋形;在当前CTA结束后转ES415;如果否,直接执行下一步。
ES412:DEV判断:是否为“正常旋转接收目的节点”?如果是,切换为接收模式,旋转天线接收来自源节点的波束赋形帧,接收到该帧之后等待第一阶段扫描结束;然后向源节点方向发送n个波束赋形帧,然后转ES414;如果否,转ES415。
ES413:DEV如果收到来自目的节点的波束赋形帧,获取扇区信息之后,采用“数据-确认”模式向目的节点发送数据帧;如果已申请到时隙的数据包发送完但仍处于自身的CTA中,则继续发送数据帧直到当前CTA结束;然后转ES415。
ES414:DEV将天线对准源节点扇区,等待接收数据帧;如果收到数据帧,则向源节点回复一个ACK帧(确认帧)并进行数据帧的相应处理,直至当前CTA结束。
ES415:DEV判断:当前超帧的CTA是否全部结束?如果是,转ES13;如果否,转ES49。