一种基于可靠多步信道预约机制的多信道多址接入方法

xiaoxiao2020-10-23  24

一种基于可靠多步信道预约机制的多信道多址接入方法
【技术领域】
[0001] 本发明设及通信技术领域,尤其是一种多信道多址接入协议。
【背景技术】
[0002] 在无线通信系统(比如无线局域网WLAN、蜂窝网等)中,通常存在多个可用的无线 信道。比如,在非授权频段2. 4GHz上有3个非重叠信道,而在5GHz频段上有12个非重叠 的信道。移动用户数量的持续增长W及用户对大带宽业务需求的不断增加,如视频会议等 业务,对无线通信系统吞吐量的提升提出了新的要求。因此,如何设计高效的多信道多址接 入(Multi-channelMC,McMAC)协议,从而充分利用多个无线信道并提升无线网络的吞吐 量,成为一个非常亟待解决的问题。
[0003] 在设计McMC协议中所面临一个难题就是多信道隐藏终端问题。导致多信道隐藏 终端问题的主要原因是;由于节点丢失了其邻节点的控制握手信息,致使节点对目前信道 的使用信息掌握有误,从而选择了当前并不可用的信道来进行数据传输,最终导致了在数 据传输过程中与邻节点发生冲突。为了解决多信道隐藏终端问题,目前已有的McMC协议 可大体归纳为两类;(1)基于时间同步的McMC协议;(2)基于公共控制信道的McMC协议。
[0004] 在基于时间同步的McMC协议中,其代表性协议是化ngminSo等人提出的基于时 间段划分的McMC协议(简称为;MMAC)。在MMAC协议中,每个节点仅需一套收发机,并且 时间被划分为若干个时间间隔,每个时间间隔内包含一个控制阶段和一个数据传输阶段。 所有节点在控制阶段内通过一个公共信道进行竞争并完成控制握手,进而在接下来的数据 传输阶段完成数据分组的传输。但是,MMAC协议存在两个主要问题;其一,需要实现全网时 间同步,该大大增加了实现的开销与复杂度;其二,由于所有节点在控制阶段内通过一个 公共信道进行接入,而其余的信道此时被闲置,从而导致了信道资源的浪费问题。
[0005] 在基于公共控制信道的McMC协议中,所有节点是分布式实现的,不需要全网时 间同步。但是,每个节点往往需要配备多套独立的收发机,W化ih-Lin和化inh-化等人提 出的动态信道分配(简称;Dynamic化annelAssignment,DCA)协议为代表。在DCA协议 中,每个节点配备两套独立的收发机,其中一套收发机持续侦听一个公共控制信道并在该 信道上进行控制信息的交互,另一套收发机则专口用于数据传输。该种基于公共控制信道 的McMAC协议存在两个主要问题;其一,由于每个节点需要配备两套收发机,该增加了节点 的硬件开销;其二,由于所有节点均通过同一个公共控制信道进行接入W及控制信息握手, 因此当节点和可用信道个数较多时,随着网络负载的增大,该控制信道将变得非常拥塞并 迅速达到饱和,进而成为性能的瓶颈所在。
[0006] 因此,针对W上两类【背景技术】中各自存在的弊端,本发明提出了一个基于信道预 约机制的多信道多址接入方法。该方法解决了多信道的隐藏终端问题,并兼备W下几个特 点;(1)所有节点仅需要一套收发机,硬件开销很小;(2)所有节点不需要时间同步,分布式 实现容易;(3)该方法有效缓解了控制信道的拥塞。仿真结果表明,本发明大幅度提升了网 络性能。

【发明内容】

[0007] 为了克服现有技术的不足,本发明在不需要网络时间同步并且不引入额外开销的 前提下,即网络中每个节点仅需要一套收发机的前提下,解决多信道隐藏终端问题,从而提 升系统性能。
[0008] 本发明主要包括两部分:控制信道预约和数据信道预约。当节点在公共控制信道 上按照IE邸802. 11DCF值istributedCoordinationF^mction,分布式协调功能)机制竞 争成功后,发送节点与接收节点在控制信道上交互请求发送RTS(RequesttoSend)、允许 发送CTS(ClearToSend)和预留RES(Reservation)信息,完成对数据信道的选择、控制信 道上的预约W及数据信道上的预约。首先,在控制信道的预约过程中,发送节点根据控制信 道上的预约周期T。设置定时器,当定时器超时后,发送节点在控制信道上发送预约的RES 信息,该RES信息中包含了收发双方的数据信道选择信息W及预约等相关信息,而接收节 点在收到该预约RES信息后,间隔SIFS后再次在控制信道上发送预约的RES信息;其次, 在数据信道的预约过程中,发送节点与接收节点根据数据信道上的预约周期Td设置定时 器,每当定时器超时后,收发双方就在所协商好的数据信道上周期性地传输预约数据分组, 当发送节点与接收节点完成最后一个预约数据分组的传输后,发送节点需要等待一段时间 后,才能开始在控制信道上开始新一轮的竞争,该主要为了避免发送节点发起新的控制握 手与邻节点的预约RES分组发生冲突。
[0009] 在本发明的技术方案中,一方面,收发节点通过控制信道预约来确保自己的信道 使用信息可W被邻节点接收,从而解决多信道隐藏终端问题;另一方面,收发节点通过多步 数据信道预约来提升MAC效率,并能有效缓解控制信道拥塞。
[0010] 本发明解决其技术问题所采用的技术方案是:
[0011] 步骤1 ;本发明提出的多信道多址接入方法假设在网络中有K+1个可用信道,其 中1个为公共控制信道CCH(CommonControl化annel),其余K个为等带宽的数据信道, 分别表示为DH。i= 1,. . .,K,每个节点配备一副半双工天线,并可W在所有信道中任意切 换;
[0012] 节点入网后先进入初始化状态,所有刚入网的节点侦听控制信道T。的时间;当节 点有数据分组需要发送时,首先判断是否满足下面两个条件之一:
[0013]a)发送节点的队列中有待发送的分组个数不低于口限值,该口限值的取值要求在 后续预约发送过程中不会因队列变空而导致无数据包可发即可,即队列中有足够多的数据 分组有待发送;
[0014]b)发送节点的队列中有待发送的数据分组的最大时延不低于口限值,该口限值的 取值要求数据包在队列中不会因存放太久而导致数据过期,即队列中的数据分组应当尽快 被发送,否则可能过期;
[0015] 若满足W上a)和b)两个条件之一,则转入步骤2,否则继续停留在步骤1中等待, 直至满足其中一个条件;
[0016] 步骤2;发送节点在控制信道上按照IE邸802. 11分布式协调功能 DCF值istributedCoordinationF^mction)协议进行二进制指数退避竞争信道,当信道竞 争成功后转入步骤3,否则停留在步骤2中继续竞争;
[0017] 步骤3 ;发送节点在公共控制信道CCH上发送RTS分组,完成与接收节点协商公共 可用的数据信道,并等待接收节点回复CTS分组,若在预定时间内收到CTS分组则转入步骤 4,否则转入步骤2中重新开始竞争;
[0018] 在本发明所采用的RTS帖格式中,添加了 7个字节的"信道控制"字段,其中16比 特用于指示"控制信道预约周期Te"、16比特用于指示"数据信道预约周期Td"、8比特用于 指示"预约步数"、剩余的16比特为"可用数据信道信息"字段,用于指示数据信道1~16 的空闲与否的信息,在本发明采用的CTS帖格式中,添加了 6个字节的"信息控制"字段,其 中16比特用于指示"控制信道预约周期"、16比特用于指示"数据信道预约周期"、8比特用 指示"预约步数",其余8比特为"选择的数据信道标号"字段,用于指示所协商好的数据信 道标号信息,本发明所支持的帖格式包括但不限于W上的帖格式;
[0019] 步骤4 ;发送节点收到CTS分组后,在公共控制信道上发送RES分组,本发明采用 的RES帖格式与步骤3中描述的CTS帖格式相同,同时,发送节点根据Te的取值设置并启 动控制信道预约定时器Timer。,当RES分组传输完成后,转入步骤5 ;
[0020] 步骤5 ;发送节点在步骤3中协商好的数据信道上预约多个数据传输机会,进而 发送节点与接收节点均将各自的收发天线切换至步骤3协商的数据信道上发送一个预约 的化ta分组并等待ACK(Acknowledgement)分组,若发送节点在802. 11协议中规定的时间 SIFS内没有接收到ACK,则返回步骤2,否则转入步骤6 ;
[0021] 步骤6;发送节点与接收节点均将各自的收发天线切换到控制信道上保持侦听, 发送节点判断步骤5中成功发送的化ta分组是否为数据信道上预约的最后一个化ta分 组;若不是,则发送节点根据Td的取值T 2tD+3tEES+2tsips+tcTS设置并启动数据信道预约 定时器Timer。并转入步骤7,否则表明预约的化ta分组已经全部发送完成,进而转入步骤 9 ;
[0022] 步骤7 ;发送节点判断控制信道预约定时器Timer。是否发生超时,若超时,则收发 双方在控制信道上相继间隔SIFS发送各自的预约RES分组,否则发送节点与接收节点继续 在控制信道上保持侦听,进而转入步骤8 ;
[002引步骤8 ;发送节点判断数据信道预约定时器Timer。是否发生超时,若TimerD没有 超时,则返回步骤7 ;否则收发双方切换至步骤3中协商好的数据信道上,发送一个预约的 Data分组并等待ACK(Acknowledgement)分组,数据传 输完成后,转入步骤6 ;
[0024] 步骤9 ;当收发双方完成所有预约的数据传输后,将各自的收发天线切换回控制 信道上并保持侦听一段Tc的时间,TC的范围满足调条件TcG[tEES+t。,TD-tD-tcTS-2tEES-2tsi J)之后,若发送节点有新的数据发送需求,再返回步骤1,重新开始新一轮的收发数据。
[0025] 所述步骤1中条件a)的发送节点的队列中有待发送的分组个数不低于口限值,该 口限值一般取预约步数m;条件b)发送节点的队列中有待发送的数据分组的最大时延不低 于口限值,该口限值一般取数据包业务的产生周期。
[0026] 本发明的有益效果是由于采用控制信道预约解决了多信道隐藏终端问题;通过采 用多步数据信道预约,使得仅需要一次控制握手就可W实现多个无冲突的数据分组传输, 该有效缓解了控制信道拥塞并大大提升了MC效率,因此大幅度提升了系统性能,即提升 了网络吞吐量并降低了平均分组时延。另外,本方面方案仅需要一套收发机,实现简单,可 在支持多信道网卡的固件中实现,同时也可W实现在驱动程序中,并且采用分布式的工作 方式,无须中屯、控制节点及全网时同步,大大降低了实现开销和复杂度。
【附图说明】
[0027] 图1是技术方案原理。
[0028] 图2是变化业务量情况下的吞吐量曲线,此时网络中包括1个控制信道和10个数 据信道。
[0029] 图3是变化数据信道个数情况下的饱和吞吐量。
[0030]图4是变化数据信道个数情况下的平均分组时延曲线。
[0031] 图5是RTS帖格式的参考设计。
[0032] 图6是CTS/RES帖格式的参考设计。
[0033] 图7是实施例的时序图。
[0034] 其中SIFS(Sho;rtInter-frameSpace)是短帖间间隔,DIFS是分布式帖间间隙 (DistributedInter-frameSpace),服表示随机退避过程,Tc是控制信道预约周期,T。 是数据信道预约周期,CCH代表公共控制信道;DCA是要对比的现有技术,RTS是请求发送 (RequesttoSend),CTS是允许发送(ClearToSend),RES是预留巧eservation),NAV 是网络分配矢量(NetworkAllocationVector),NAVstk表示RTS包中指示的NAV信息, NAVus表示CTS包中指示的NAV信息,表示开始发送第一个预约数据分组的时刻, 表示最后一个预约数据分组发送完成的时刻,Datal到化tam分别是在数据信道上预约传 输的m个化ta分组;D服是收发双方协商好的数据信道;DHK代表第K个数据信道;ACK是 Acknowledgement,即确认帖,用于当正确收到化ta分组时的回复;tc表示收发双方在控制 信道上完成一次成功握手的时长,《〔^^拍'5+心^^+《化^+2^3/脚.*0表示收发双方在数据信 道上完成一次数据分组收发的时长,^^/〇。,。+^^/^^+心。^;*3表示节点在控制信道上竞争成功的时刻。
【具体实施方式】
[00巧]下面结合附图和实施例对本发明进一步说明。
[0036] 本发明可W在无线网卡中通过固件实现,或实现在无线网卡的驱动程序之中。下 面结合实例对本发明的实现进行详细的说明。
[0037] 1、控制信道/数据信道使用情况列表的构建方法
[0038]使用本发明接入方法的每个节点会创建并维护=个结构体链表:控制信道使用列 表(CCUL;ControlChannelUsageList)、数据信道使用列表值CUL;DataChannelUsage List)和可用信道列表(A化;Avail油le化annelList)。其中CC化和DCUL中分别存放着 所有邻居节点对控制信道和数据信道的使用信息,而ACL中存放着当前节点可W使用的数 据信道标号。CCUL、DCUL与A化的详细信息如下所不;
[0039]CCUL中的结构体有W下几个变量:
[0040]host;该变量用于存储邻居节点编号;
[0041]stime;该变量用于存储数据分组将在控制信道开始发送的时刻;
[004引time;该变量用于存储控制信道将被占用的时长。
[0043]DCUL中的结构体有W下几个变量:
[0044]host;该变量用于存储邻居节点编号;
[0045] channel ;该变量用于存储邻居节点所预约的数据信道编号;
[0046] stime ;该变量用于存储数据分组将在数据信道开始发送的时刻;
[0047] time ;该变量用于存储数据信道将被占用的时长。
[0048]A化中的结构体主要包含一个变量;
[0049]channel;该变量用于存储节点自身可W使用的数据信道编号。
[0050] 2、控制信道/数据信道使用情况列表的更新方法
[0051] 当节点在收到不是给自己的CTS/RES分组后,会更新自己的CC化和DCUL。具体步 骤如下:
[0052] 在CC化和DCUL中分别增加一个新结构体CCUL[i]和DCUL[i]。将CTS/RES分组 的接收地址分别赋值给CCUL[i]. host和DCUL[i]. host ;
[0053] 将CTS/RES分组中"选择的数据信道编号"字段的值赋给DCUL[i]. channel ;
[0054] 假设TtwuM表示当前时刻,并进行W下的赋值操作;如果收到的是CTS分组,则; [00巧]CCUL[i].stime = Teurrent+tsiFs+Tc,CCUL[i].time = 2tREs+tsiFs,DCUL[i].stime = TcurreM+tsiFS+tKES+(i-l)XTd,i=1,2,. . .,m(其中m为数据信道上的预约步数),DCUL山. time=tData+tsiFS^ACK;
[0056] 如果收到的是RES分组,则;
[0057] CCUL[i]. stime = TeuCTent+Tc-t服S,CCUL[i]. time = 2t邸s+tsiFs,DCUL[i]. stime = Tcurrent+(i-l) XTd, i = 1,2, . . .,m,DCUL[i]. time = tData+tsiFS^ACK。
[0058] 3、控制信道/数据信道空闲的判断方法
[0059] 控制信道列表/数据信道列表可用于提前判断控制信道或数据信道在一定的时 间段内是否空闲。判断控制信道是否空闲的主要目的是确保控制分组的握手过程(包括 RTS/CTS/RE巧不被冲突。判断方法如下;假设节点在控制信道上竞争成功的时刻为ts,那 么判断控制信道为空闲,仅需满足一个条件;COTL链表中没有与即将进行的控制分组传输 相冲突的信息,即对于CCUL中的任意一条信息CCUL[i],节点将要传输的时间段[ts,ts+tj 与CCUL[i]中的时间段信息[CCUL[i].stime,CCUL[i].stime+CCUL[i].time]无重叠,其中 t〇- t RTS+tcTS+t邸S+2tsi[?s。
[0060] 与控制信道空闲的判断方法类似,判断数据信道是否空闲的主要目的是确保所 预约的多个数据分组的传输过程不被冲突。判断方法如下;假设节点在控制信道上完成 握手的时刻为那么判断数据信道为空闲,仅需满足一个条件;DC化链表中没有与即 将进行的数据分组传输相冲突的信息,即对于DCUL中的任意一条信息DCUL[i],节点将 要传输的时间段[t日t"t,t日与DCUL山中的时间段信息扣CUL山.stime,DCUL山. stime+DCUL[i].time]无重叠,其中t〇=toata+tsiFs+tACK。
[0061]4、具体实施例
[006引假设网络中有一个公共控制信道CCHW及K个为等带宽的数据信道值Hi,i= 1,...,K)。在本实施例的表述过程中忽略了分组传播时延。具体实施步骤如下:当新节点 入网后,首先进入初始化状态,并侦听控制信道T。的时间,之后进入步骤1 ;
[0063]步骤1 ;本发明提出的多信道多址接入方法假设在网络中有K+1个可用信道,其 中1个为公共控制信道CCH(CommonControl化annel),其余K个为等带宽的数据信道,分 别表示为DH。i= 1,...,K,每个节点配备一副半双工天线,并可W在所有信道中任意切换。
[0064] 节点入网后先进入初始化状态,所有刚入网的节点侦听控制信道T。的时间。当节 点有数据分组需要发送时,首先判断是否满足下面两个条件之一:
[0065] a)发送节点的队列中有待发送的分组个数不低于口限值,该口限值的取值要求在 后续预约发送过程中不会因队列变空而导致无数据包可发即可,即队列中有足够多的数据 分组有待发送;
[0066] b)发送节点的队列中有待发送的数据分组的最大时延不低于口限值,该口限值的 取值要求数据包在队列中不会因存放太久而导致数据过期,即队列中的数据分组应当尽快 被发送,否则可能过期;
[0067] 若满足W上a)和b)两个条件之一,则转入步骤2,否则继续停留在步骤1中等 待, 直至其中一个条件满足.
[0068] 所述步骤1中条件a)的发送节点的队列中有待发送的分组个数不低于口限值,该 口限值一般取预约步数m;条件b)发送节点的队列中有待发送的数据分组的最大时延不低 于口限值,该口限值一般取数据包业务的产生周期;
[0069] 当发送节点S有数据分组需要发送给接收节点D时,发送节点S首先判断是否满 足下面两个条件之一:
[0070] a)节点S的队列中有待发送的分组个数Npata不低于某个口限值N th(如Nth= m), 即Nth,该说明有足够多的数据分组有待发送;
[0071] b)节点S的队列中有待发送的数据分组的最大时延Delaym"不低于某个口 限值Delayth,如对于速率为23帖/s的视频帖来说,可W取值从命V,,,=^二0.04.V良P Delaym">Delayth,该意味着队列中的数据分组应当尽快被发送,否则将会过期。 ,
[0072] 步骤2;发送节点在控制信道上按照IE邸802. 11分布式协调功能 DCF值istributed Coordination F^mction)协议进行二进制指数退避竞争信道,当信道竞 争成功后转入步骤3,否则停留在步骤2中继续竞争;
[0073] 步骤3;发送节点在公共控制信道CCH上发送RTS分组,完成与接收节点协商公共 可用的数据信道,并等待接收节点回复CTS分组,若在预定时间内收到CTS分组则转入步骤 4,否则转入步骤2中重新开始竞争;
[0074] 在本发明所采用的RTS帖格式中,添加了 7个字节的"信道控制"字段,其中16比 特用于指示"控制信道预约周期IV'、16比特用于指示"数据信道预约周期Td"、8比特用于 指示"预约步数"、剩余的16比特为"可用数据信道信息"字段,用于指示数据信道1~16 的空闲与否的信息,在本发明采用的CTS帖格式中,添加了 6个字节的"信息控制"字段,其 中16比特用于指示"控制信道预约周期"、16比特用于指示"数据信道预约周期"、8比特用 指示"预约步数",其余8比特为"选择的数据信道标号"字段,用于指示所协商好的数据信 道标号信息,本发明所支持的帖格式包括但不限于W上的帖格式;
[0075] 发送节点S在CCH上发送RTS分组,与接收节点协商公共可用的数据信道,并等待 接收节点D回复CTS分组。若在预定时间内收到CTS分组则转入步骤4,否则转入步骤2中 重新竞争;具体步骤如下;
[0076] 步骤3. 1;发送节点S采用"控制信道/数据信道空闲的判断方法"判断控制信道 是否空闲。假设当前时刻(即节点竞争成功的时刻)为ts,参考"控制信道/数据信道空闲 的判断方法",判断时间段[ts,ts+tj内是控制信道是否空闲;若不空闲则返回步骤2重新 竞争,否则转入步骤3. 2;
[0077] 步骤3. 2;发送节点S参考"控制信道/数据信道空闲的判断方法",判断时间段 [ts+te,ts+te+tD]内是各个数据信道是否空闲;如都不空闲则返回步骤2,如有一个或一个 W上的数据信道空闲,则将所有空闲数据信道的编号记录在ACLs中并转入步骤3. 3 ;
[007引步骤3. 3 ;发送节点S构建RTS分组。其中,将RTS分组中的"NAV"域设置为NAVcts,其中NAVets=teTS+tEEs+tsips;将"控制信道预约周期"域设置为Te;将"数据信道预约周期" 域设置为Td;将"预约步数"域设置为m,比如设置为"00000101"表示在数据信道上采用5 步预约;对于"可用数据信道信息"的值,将步骤3. 2中得到的空闲数据信道编号,填写"1" 在对应的位置上,其余为"0"。例如,如果数据信道编号为1和7的数据信道信道空闲,贝U "可用数据信道信息"的值为"1000001000000000"。RTS分组的其余字段按照IE邸802. 11 标准设置,设置完成后进入步骤3. 4 ;
[0079] 步骤3. 4;发送节点S将生成的RTS分组在CCH上发送,之后转入步骤3. 5;
[0080] 步骤3. 5;接收节点D在CCH上接收RTS分组并构建CTS分组,进而在控制信道上 发送CTS分组,之后转入步骤4 ;若收到不是给自己的RTS分组后,则按照IE邸802. 11标 准在控制信道上设置NAVcts时间长度的虚拟载波侦听忙。步骤3. 5可W细分为:
[008。步骤3. 5. 1 ;记当前时刻为接收节点D按照"控制信道/数据信道空闲 的判断方法"在自己维持的DOTL链表中捜索在Wt日t"t=ttb_tu"eM+tcTS+tKES+2tsiFS为开始 时刻、长度为t。的时间段内处于空闲的数据信道编号,并存入ACLd中,进而与接收到的RTS 分组中的"可用数据信道信息"(ACLs)进行比较。如果没有共同的空闲数据信道则不理会 该RTS分组。如果有一条(或多条)共同的空闲数据信道编号,则随机或按照某种原则选 择一个共同可用的数据信道,即DHs=ACLSnA化D,之后转入步骤3. 5. 2 ;
[008引步骤3. 5. 2 ;接收节点D构建CTS分组。接收节点D将CTS分组中的"NAV"域设 置为NAVeis,其中NAVns=tEES+tsips;将"控制信道预约周期"域设置为T。,将"数据信道预约 周期"域设置为Td,将"预约步数"域设置为m,并将"选择的数据信道标号"域设置为DHs, CTS分组的其余域按照IE邸802. 11标准进行设置;设置完成后转入步骤3. 5. 3 ;
[0083] 步骤3. 5. 3;发送节点S按照IE邸802. 11标准等待CTS分组,若S收到CTS分组, 则转入步骤4 ;否则等待超时,返回步骤2 ;
[0084] 步骤4;发送节点收到CTS分组后,在公共控制信道上发送RES分组,本发明采用 的RES帖格式与步骤3中描述的CTS帖格式相同,同时,发送节点根据Te的取值设置并启 动控制信道预约定时器Timer。,当RES分组传输完成后,转入步骤5,具体步骤如下:
[00财步骤4. 1 ;发送节点S收到CTS分组并等待SIFS时间后,构建RES分组,即分别将CTS分组中的"控制信道预约周期"域、"数据信道预约周期"域、"预约步数"域W及"选择的 数据信道标号"域的值分别赋给RES分组中相同的域中,RES的其余字段按照IE邸802. 11 标准的CTS分组对应域设置。若收到不是给自己的CTS分组后,则按照IE邸802. 11标准 在控制信道上设置NAVus时间长度的虚拟载波侦听忙,并按照"控制信道/数据信道使用情 况列表的更新方法"对DC化进行更新操作;之后转入步骤4. 2 ;
[008引步骤4. 2;发送节点S完成RES分组的构建后,在公共控制信道上发送RES分组。 与此同时,发送节点S根据T。的取值设置并启动控制信道预约的定时器Timere(即将定时 器Timer。计数值设置为Te)。之后转入步骤4. 3 ;
[0087] 步骤4. 3;接收节点D在公共控制信道上接收到RES分组,转入步骤5;若接收到不 是自己的RES的分组,则节点按照"控制信道/数据信道使用情况列表的更新方法"对DCUL 进行更新操作;
[0088] 步骤5;发送节点在步骤3中协商好的数据信道上预约多个数据传输机会,进而 发送节点与接收节点均将各自的收发天线切换至步骤3协商的数据信道上发送一个预约 的化ta分组并等待ACK(Acknowledgement)分组,若发送节点在802. 11协议中规定的时间 SIFS内没有接收到ACK,则返回步骤2,否则转入步骤6 ;具体步骤如下:
[0089] 步骤5. 1;发送节点S在步骤3中协商好的数据信道上预约m个数据分组的传输 机会(该也就是数据信道预约)。假设完成RES分组传输的时刻为则所预约的m数 据发送时刻分别为;tstart+(i-1)Td,i= 1,2,. . .,m。之后转入步骤5. 2 ;
[0090] 步骤5. 2 ;发送节点S与接收节点D均将自己的收发天线切换至所选择的数据信 道畑S上,进而S在协商好的数据信道DHS上发送一个预约的化ta分组,D接收到化ta分 组后回复ACK。若发送节点在802. 11协作中规定的SIFS时间内没有接收到ACK,则返回步 骤2,否则进入步骤6;
[0091] 步骤6;发送节点与接收节点均将各自的收发天线切换到控制信道上保持侦听, 发送节点判断步骤5中成功发送的化ta分组是否为数据信道上预约的最后一个化ta分 组;若不是,则发送节点根据Td的取值(Td> 2tD+3tKES+2tsips+tcTs)设置并启动数据信道预 约定时器Timer。并转入步骤7,否则表明预约的化ta分组已经全部发送完成,进而转入步 骤9;具体步骤如下:
[0092] 步骤6. 1;当完成目前本个化ta分组的传输后,发送节点S与接收节点D均将各 自的收发天线切换到控制信道上保持侦听。之后转入步骤6. 2 ;
[009引步骤6. 2 ;假设当前完成发送的化ta分组序号为j,1《j《m。若j<m,则表明 本次发送的化ta分组并不是预约的最后一个化ta分组,进而转入步骤6. 3 ;否则表明本次 化ta分组就是预约的最后一个化ta分组,进而转入步骤9 ;
[0094] 步骤6. 3 ;发送节 点S根据Td的取值,设置并启动数据信道预约定时器TimerD(即 将定时器Timer。计数值设置为TD),之后转入步骤7 ;
[0095] 步骤7;发送节点判断控制信道预约定时器Timer。是否发生超时,若超时,则收发 双方在控制信道上相继间隔SIFS发送各自的预约RES分组,否则发送节点与接收节点继续 在控制信道上保持侦听,进而转入步骤8 ;具体步骤如下:
[0096] 步骤7. 1;发送节点S判断定时器Timer。是否发生超时,若Timer。发生超时,卯J发 送节点S首先在控制信道上发送一个预约的RES分组(目的是将发送节点S的信道预约信 息告知其邻节点),之后转入步骤7. 2,否则转入步骤8;
[0097] 步骤7. 2;接收节点D接收到该预约的RES分组,间隔SIFS时间后,接收节点D在 控制信道上回复一个预约的RES分组(目的是将接收节点D的信道预约信息告知其邻节 点),此时完成了控制信道预约,并转入步骤8;
[009引步骤8 ;发送节点判断数据信道预约定时器Timer。是否发生超时,若TimerD没有 超时,则返回步骤7 ;否则收发双方切换至步骤3中协商好的数据信道上,发送一个预约的 化ta分组并等待ACK (Acknowledgement)分组,数据传输完成后,转入步骤6 ;具体步骤如 下:
[009引步骤8. 1 ;发送节点S判断Timer。是否超时,若超时,则S与D切换至协商好的数 据信道畑S,进而S在畑S上发送一个预约化ta分组,之后转入步骤8. 2 ;若TimerD没有超 时,则返回步骤7;
[0100] 步骤8. 2 ;接收节点D收到化ta分组后,在畑S上回复ACK分组,之后转入步骤6 ;
[01(n] 步骤9;当收发双方完成所有预约的数据传输后,将各自的收发天线切换回控制 信道上并保持侦听一段T。的时间,Te的范围满足调条件TpE[tKES+t。,TD-tD-tCTs-2tKE;-2tsi J)之后,若发送节点有新的数据发送需求,再返回步骤1,重新开始新一轮的收发数据。具 体步骤如下:
[0102] 步骤9. 1 ;发送节点S与接收节点D在时刻将各自的收发天线切换回控制信道 上保持侦听,之后转入步骤9. 2 ;
[010引步骤9. 2;发送节点S与接收节点D在控制信道侦听T拥间后,即直至t CW+T拥 亥IJ,若节点有新的数据发送需求,则转入步骤1开始发起新的竞争。
[0104] 仿真中统计了系统吞吐量和平均分组时延该两项性能指标,其中"m-RCR"代表本 技术方案,进而与IE邸802. 11DCF和DCA协议进行对比。主要仿真参数如下:我们主要 考虑单跳无线网络并忽略天线的切换时延。网络中包括一个带宽为2Mbps的控制信道, W及多个11Mbps的等带宽数据信道,并且所有的信道均为理想信道。发送节点为50个, Tc= 1ms,Td= 7ms,数据分组的载荷大小为 1024bytes,SIFS=lOys,DIFS= 50ys, CWm化=15slots(CWm化;theminimumofcontentionwindow,最小竞争窗),slottime= 20ys(slottime;时隙长度)。通过仿真结果可W看出,本技术方案的吞吐量性能远高于 IE邸802. 11DCF和DCA协议,当采用5步预约机制时,吞吐量约为DCA的2. 5倍,并且本方 案的平均分组时延也大大降低了。
【主权项】
1. 一种基于可靠多步信道预约机制的多信道多址接入方法,其特征在于包括下述步 骤: 步骤1 :本发明提出的多信道多址接入方法假设在网络中有K+1个可用信道,其中1个 为公共控制信道CCH(CommonControlChannel),其余K个为等带宽的数据信道,分别表示 为DHi,i= 1,...,K,每个节点配备一副半双工天线,并可以在所有信道中任意切换; 节点入网后先进入初始化状态,所有刚入网的节点侦听控制信道Tc的时间;当节点有 数据分组需要发送时,首先判断是否满足下面两个条件之一: a) 发送节点的队列中有待发送的分组个数不低于门限值,该门限值的取值要求在后续 预约发送过程中不会因队列变空而导致无数据包可发即可,即队列中有足够多的数据分组 有待发送; b) 发送节点的队列中有待发送的数据分组的最大时延不低于门限值,该门限值的取值 要求数据包在队列中不会因存放太久而导致数据过期,即队列中的数据分组应当尽快被发 送,否则可能过期; 若满足以上a)和b)两个条件之一,则转入步骤2,否则继续停留在步骤1中等待,直 至满足其中一个条件; 步骤2 :发送节点在控制信道上按照IEEE802. 11分布式协调功能DCF(Distributed CoordinationFunction)协议进行二进制指数退避竞争信道,当信道竞争成功后转入步骤 3,否则停留在步骤2中继续竞争; 步骤3 :发送节点在公共控制信道CCH上发送RTS分组,完成与接收节点协商公共可用 的数据信道,并等待接收节点回复CTS分组,若在预定时间内收到CTS分组则转入步骤4,否 则转入步骤2中重新开始竞争; 在本发明所采用的RTS帧格式中,添加了 7个字节的"信道控制"字段,其中16比特用 于指示"控制信道预约周期IV'、16比特用于指示"数据信道预约周期TD"、8比特用于指示 "预约步数"、剩余的16比特为"可用数据信道信息"字段,用于指示数据信道1~16的空闲 与否的信息,在本发明采用的CTS帧格式中,添加了 6个字节的"信息控制"字段,其中16比 特用于指示"控制信道预约周期"、16比特用于指示"数据信道预约周期"、8比特用指示"预 约步数",其余8比特为"选择的数据信道标号"字段,用于指示所协商好的数据信道标号信 息,本发明所支持的帧格式包括但不限于以上的帧格式; 步骤4 :发送节点收到CTS分组后,在公共控制信道上发送RES分组,本发明采用的RES帧格式与步骤3中描述的CTS帧格式相同,同时,发送节点根据T。的取值设置并启动控制 信道预约定时器Timer。,当RES分组传输完成后,转入步骤5 ; 步骤5 :发送节点在步骤3中协商好的数据信道上预约多个数据传输机会,进而发送节 点与接收节点均将各自的收发天线切换至步骤3协商的数据信道上发送一个预约的Data 分组并等待ACK(Acknowledgement)分组,若发送节点在802. 11协议中规定的时间SIFS内 没有接收到ACK,则返回步骤2,否则转入步骤6 ; 步骤6:发送节点与接收节点均将各自的收发天线切换到控制信道上保持侦听,发送 节点判断步骤5中成功发送的Data分组是否为数据信道上预约的最后一个Data分组;若 不是,则发送节点根据Td的取值T 2tD+3tKES+2tSIFS+tCTS设置并启动数据信道预约定时器 TimerD并转入步骤7,否则表明预约的Data分组已经全部发送完成,进而转入步骤9 ; 步骤7 :发送节点判断控制信道预约定时器Timer。是否发生超时,若超时,则收发双方 在控制信道上相继间隔SIFS发送各自的预约RES分组,否则发送节点与接收节点继续在控 制信道上保持侦听,进而转入步骤8 ; 步骤8 :发送节点判断数据信道预约定时器TimerD是否发生超时,若TimerD没有超时, 则返回步骤7 ;否则收发双方切换至步骤3中协商好的数据信道上,发送一个预约的Data 分组并等待ACK(Acknowledgement)分组,数据传输完成后,转入步骤6 ; 步骤9:当收发双方完成所有预约的数据传输后,将各自的收发天线切换回控制信道 上并保持侦听一段Tc的时间,Tc的范围满足调条件T[tRES+tD,TD-tD-tCTS_2tRES-2tSIFS])之 后,若发送节点有新的数据发送需求,再返回步骤1,重新开始新一轮的收发数据。2. 根据权利要求1所述的一种基于可靠多步信道预约机制的多信道多址接入方法,其 特征在于:所述步骤1中条件a)的发送节点的队列中有待发送的分组个数不低于门限值, 该门限值一般取预约步数m。3. 根据权利要求1所述的一种基于可靠多步信道预约机制的多信道多址接入方法,其 特征在于:所述步骤1中条件b)发送节点的队列中有待发送的数据分组的最大时延不低于 门限值,该门限值一般取数据包业务的产生周期。
【专利摘要】本发明提供了一种基于可靠多步信道预约机制的多信道多址接入方法,本发明主要包括控制信道预约和数据信道预约,当节点在公共控制信道上按照分布式协调功能机制竞争成功后,发送节点与接收节点在控制信道上交互请求发送信息,完成对数据信道的选择、控制信道上的预约以及数据信道上的预约,本发明采用控制信道预约解决了多信道隐藏终端问题;通过采用多步数据信道预约,仅需要一次控制握手就可实现多个无冲突的数据分组传输,有效缓解了控制信道拥塞并大大提升了MAC效率,大幅度提升了系统性能,即提升了网络吞吐量并降低了平均分组时延;本发明仅需一套收发机,实现简单,无须中心控制节点及全网时同步,降低了实现开销和复杂度。
【IPC分类】H04W74/08
【公开号】CN104902577
【申请号】CN201510240066
【发明人】闫中江, 杨博, 李波, 杨懋
【申请人】西北工业大学
【公开日】2015年9月9日
【申请日】2015年5月12日

最新回复(0)