基于即时转发的mac协议的制作方法

文档序号:7806594阅读:146来源:国知局
基于即时转发的mac协议的制作方法
【专利摘要】本发明提供一种基于即时转发的MAC协议,该协议通过如下步骤实现:自组路由步骤,节点根据ROUT_REQ帧、响应帧ROUT_ACK和确认帧ROUT_CNFM生成自组路由;以及传输步骤,对节点进行分类,分类后的节点根据自组路由获得目标地址,并根据目标地址将数据包进行发送或接收。根据本发明实施例的即时转发的MAC协议,通过自组路由以及对握手机制的改进,使得在转发过程中利用所转发的信号进行同步校验,同时支持双向对传、单向即时转发,还可以解决隐藏节点问题,降低端到端延迟,提升吞吐率和全双工网络性能。
【专利说明】基于即时转发的MAC协议

【技术领域】
[0001] 本发明涉及通信【技术领域】,特别涉及一种基于即时转发的MAC协议。

【背景技术】
[0002] 无线半双工通信在同一频率同一时隙只能进行发送或者接收,二者取其一;而无 线全双工通信能实现同一频率同一时隙的同时收发,从而获得双倍吞吐率。由于过去几十 年中自干扰抵消技术并不成熟,使得无线通信受到严重的自干扰影响,无线通信系统基本 上都是采用半双工模式。
[0003] 近年来自干扰抵消领域有了突破性研究,可以达到良好的抵消效果,为全双工模 式的实现提供了可能性。自干扰抵消包含了射频域、模拟域以及数字域三部分的工作。在 射频域通过半波长反相抵消等措施避免射频接收信号被淹没;在模拟域利用去噪芯片基于 自发送信号进行自干扰滤除,减少模数转换器输入端处的自干扰;在数字域则进一步滤除 由射频、模拟电路的非线性以及振荡器的相位噪声所产生的残余自干扰。
[0004] 为了应用无线全双工通信技术,除了以上提到的实用硬件电路自干扰抵消技术, 还需要特殊的介质访问控制(MAC)全双工协议对通信进行控制,以实现系统吞吐率的实际 提升。
[0005] 虽然有一些全双工MAC协议,但是在数据包多跳转发场景中并非基于即时转发的 工作机制,导致中转数据包的端到端延迟较高,此外,在传输数据之前进行了三次握手,存 在次数偏多等问题。


【发明内容】

[0006] 本发明的目的旨在至少解决上述的技术缺陷之一。
[0007] 为此,本发明需要提供一种基于即时转发的MAC协议。
[0008] 有鉴于此,本发明的实施例提出一种基于即时转发的MAC协议,该协议通过如下 步骤实现:自组路由步骤,节点根据R〇UT_REQ帧、响应帧R0UT_ACK和确认帧R0UT_CNFM生 成自组路由;以及输步骤,对节点进行分类,分类后的所述节点根据所述自组路由获得目标 地址,并根据所述目标地址以及SEND_REQ帧和SEND_RESP0NSE帧完成握手将数据包进行发 送或接收。
[0009] 根据本发明实施例的即时转发的MAC协议,通过自组路由以及对握手机制的改 进,使得在转发过程中利用所转发的信号进行同步校验,同时支持双向对传、单向即时转 发,还可以解决隐藏节点问题,降低端到端延迟,提升吞吐率和全双工网络性能。
[0010] 在本发明的一个实施例中,所述自组路由步骤具体包括:所述节点发送所述 R0UT_REQ帧进行路由请求,并等待来自终端节点的所述响应帧R0UT_ACK ;所述终端节点接 收到所述R〇UT_REQ帧后提取节点地址,并随机退避后发送所述相应帧R0UT_ACK,等待所述 确认帧R〇UT_CNFM ;所述节点接收所述确认帧R0UT_ACK后,提取所述源地址加入到路由表 中,等待一个SIFS时隙后发送一个所述确认帧R0UT_CNFM ;以及所述终端节点接收到所述 确认帧R〇UT_CNFM以完成所述自组路由的生成。
[0011] 在本发明的一个实施例中,所述自组路由步骤具体还包括:当所述终端节点等 待10个所述确认帧R〇UT_CNFM时隙仍未收到目标地址为自节点地址的所述确认帧R0UT_ CNFM,则根据CSMA/CA发送一个所述相应帧R0UT_ACK,继续等待所述确认帧R0UT_CNFM。
[0012] 在本发明的一个实施例中,对所述节点进行分类包括:将以发送一个所述SEND_ REQ帧为开始的节点定义为第一类节点;将以接收到一个所述SEND_REQ帧为开始的节点 定义为第二类节点;以及将以接收到一个SEND_RESP0NSE帧为开始的节点定义为第三类节 点。
[0013] 在本发明的一个实施例中,当所述节点为所述第一类节点时,所述传输步骤具体 包括:步骤S101,所述第一类节点发送所述SEND_REQ帧为Framel时,等待来自所述节点的 所述响应帧SEND_RESP0NSE转到步骤S102 ;步骤S102,接收SEND_RESP0NSE帧并提取目标 地址,当所述目标地址与所述Framel中的目标地址一致时,转到步骤S103,当所述目标地 址与自节点地址一致时,转到步骤S104,否则根据所述SEND_RESP0NSE帧中的数据长度保 持相应时长的静默区间并结束;步骤S103,等待一个SIFS时隙后开始传输数据包队列,同 时监听路由中转节点所即时转发的数据包,并进行校验,发送完毕后保持一个DATA_ACK时 隙的静默;以及步骤S104,等待一个所述SIFS时隙后开始传输所述数据包队列,同时接收 目标节点发送给自节点的数据包,在发送完毕且完成接收后,发送ACK。
[0014] 在本发明的一个实施例中,在所述步骤S103中,自节点队列存在已校验正确的数 据包时删除所述已校验正确的数据包。
[0015] 在本发明的一个实施例中,当所述路由节点为所述第二类节点时,所述传输步 骤具体包括:步骤S111,若节点为路由节点时,转到步骤S112,否则转到步骤S114 ;步骤 5112, 若接收到的所述SEND_REQ帧中的目标地址为路由表中的节点,则等待一个所述SIFS 时隙后发送一个SEND_RESP0NSE帧,等待接收数据队列,再转到步骤S113,否则结束;步骤 5113, 接收数据包队列并即时转发,转发完毕后等待接收DATA_ACK帧;步骤S114,若接收 到SEND_REQ帧中的目标地址为自节点地址,则等待一个所述SIFS时隙后发送一个SEND_ RESPONSE帧,等待一个所述SIFS时隙后开始发送数据包队列,同时接收数据包,发送和接 收完毕后,发送ACK。
[0016] 在本发明的一个实施例中,当所述路由节点为所述第三类节点时,所述传输步骤 具体包括:步骤S111,若接收到的SEND_RESP0NSE帧中的目标地址等于自节点地址,则转步 骤S112,否则保持与该帧中的数据包队列长度等时长的静默;步骤S112,等待接收数据包 队列,接收完毕后等待一个所述SIFS时隙后发送ACK。
[0017] 本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变 得明显,或通过本发明的实践了解到。

【专利附图】

【附图说明】
[0018] 本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变 得明显和容易理解,其中,
[0019] 图1为根据本发明一个实施例的基于即时转发的MAC协议的实现流程图;
[0020] 图2为根据本发明一个实施例的MAC协议的流程示意图;
[0021] 图3为根据本发明一个实施例的双向对传和单向即时转发的示意图;以及
[0022] 图4为根据本发明另一个实施例的三点单向即时转发的示意图。

【具体实施方式】
[0023] 下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同 或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描 述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
[0024] 在本发明的描述中,需要理解的是,术语"中心"、"纵向"、"横向"、"上"、"下"、"前"、 "后"、"左"、"右"、"坚直"、"水平"、"顶"、"底"、"内"、"外"等指示的方位或位置关系为基于 附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所 指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发 明的限制。此外,术语"第一"、"第二"仅用于描述目的,而不能理解为指示或暗示相对重要 性。
[0025] 在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语"安装"、"相 连"、"连接"应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可 以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是 两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本 发明中的具体含义。
[0026] 图1为根据本发明一个实施例的基于即时转发的MAC协议的实现流程图。如图1 所示,根据本发明实施例的基于即时转发的MAC协议的实现过程如下:节点根据R0UT_REQ 帧、响应帧R〇UT_ACK和确认帧R0UT_CNFM生成自组路由(步骤101)。对节点进行分类,分类 后的节点根据自组路由获得目标地址,并根据目标地址以及SEND_REQ帧和SEND_RESP0NSE 帧完成握手将数据包进行发送或接收(步骤102)。
[0027] 在本发明的一个实施例中,MAC协议使用R0UT_REQ、R0UT_ACK和R0UT_CNFM帧完 成自组路由过程。其中,R〇UT_REQ帧包含源地址以及跳数;R0UT_ACK帧包含源地址、目标 地址、源节点类型以及跳数;R〇UT_CNFM帧包含源地址、目标地址以及跳数。使用SEND_REQ、 SEND_RESP0NSE帧完成握手过程;SEND_REQ帧包含源地址、目标地址以及数据长度;SEND_ RESPONSE帧包含源地址、目标地址、申请发起地址以及数据长度。
[0028] 在本发明的一个实施例中,SEND_REQ帧包含源地址、目标地址以及数据长度, SEND_RESP0NSE帧包含源地址、目标地址、申请发起地址以及数据长度。R0UT_REQ帧包含源 地址以及跳数;R〇UT_ACK帧包含源地址、目标地址、源节点类型以及跳数,R0UT_CNFM帧包 含源地址、目标地址以及跳数
[0029] 通过如下方式将节点分为三类。
[0030] 第一类节点:将以发送一个SEND_REQ帧定义为开始的节点。
[0031] 第二类节点:将以接收到一个SEND_REQ帧定义为开始的节点。
[0032] 第三类节点:将以接收到一个SEND_RESP0NSE帧定义为开始的节点。
[0033] 将第一类、第二类、第三类节点分别表示为X、Y和Z,短帧间隔(SIFS)的定义与 IEEE802. 11的定义相同。
[0034] 具体MAC协议描述如下:
[0035] 步骤S101具体如下:
[0036] A、路由节点发送R0UT_REQ帧进行路由请求,等待来自终端节点的响应帧R0UT_ ACK。
[0037] B、终端节点接收R0UT_REQ帧后提取路由节点地址,随机退避后发送R0UT_ACK,等 待来自路由节点的路由确认帧R〇UT_CNFM。
[0038] C、路由节点接收R0UT_ACK帧后,提取源地址加入路由表中,等待一个SIFS时隙后 基于CSMA/CA发送一个确认帧R0UT_CNFM。
[0039] D、终端节点若等待10个R0UT_CNFM时隙仍未收到目标地址为自节点地址的R0UT_ CNFM,则再次基于CSMA/CA发送一个R0UT_ACK,继续等待R0UT_CNFM帧。
[0040] E、判断结束。
[0041] 步骤S102具体如下:
[0042] A、第一类节点的数据包收发过程具体为:
[0043] a)、X发送SEND_REQ帧Framel,等待来自路由节点的响应帧SEND_RESP0NSE,转到 b〇
[0044] b)、接收到SEND_RESP0NSE帧并进行目标地址提取,若目标地址与Framel中一致, 则转c ;若目标地址与自节点地址一致,则转d,否则根据所述SEND_RESP0NSE帧中的数据长 度保持相应时长的静默区间并结束。
[0045] c)、等待一个SIFS时隙后开始传输数据包队列,发送过程中同时监听路由中转节 点所即时转发的数据包并校验,从自节点队列中删除已校验正确的数据包,发送完毕后保 持一个DATA_ACK时隙的静默,结束。
[0046] d)、等待一个SIFS时隙后开始传输数据包队列,发送过程中同时接收目标节点发 送给自节点的数据包,在发送完毕且完成接收后,发送ACK,结束。
[0047] B、第二类节点的数据包收发过程具体为:
[0048] a)、若该节点为路由节点,转b,否则转到d。
[0049] b)、若接收到的SEND_REQ帧中的目标地址为路由表中的节点,则等待一个SIFS时 隙后发送一个SEND_RESP0NSE帧,其中的目标地址、申请发起地址、数据包队列长度和源地 址分别等于SEND_REQ帧中的目标地址、源地址、数据包队列长度和自节点地址,等待接收 数据队列,转到c,否则结束。
[0050] c)、接收数据队列并即时转发,转发完毕后等待接收DATA_ACK。
[0051] d)、若接收到SEND_REQ帧中的目标地址为自节点地址,则等待一个SIFS时隙后 发送一个SEND_RESP0NSE帧,其中的目标地址、申请发起地址、数据包队列长度和源地址分 别等于SEND_REQ帧中的源地址、源地址、自节点待发送给该节点的数据包长度和自节点地 址,等待一个SIFS时隙后开始发送数据包队列,同时接收数据包,发送和接收完毕后,发送 ACK,结束。
[0052] C、第三类节点的数据包收发过程具体为:
[0053] a)、若接收到的SEND_RESP0NSE帧中的目标地址等于自节点地址,则转到b,否则 保持与该巾贞中的数据包队列长度等时长的静默,结束;
[0054] b)、等待接收数据包队列,接收完毕后等待一个SIFS时隙后发送ACK,结束。
[0055] 图2为根据本发明一个实施例的MAC协议的流程示意图。如图2所示,节点b作 为路由节点,在自组路由阶段发起路由请求,发送R〇UT_REQUEST帧,终端节点a和c各自随 机退避一段时间后发送R〇UT_ACK进行回应,节点b等待一个SIFS时隙后基于CSMA/CA发 送ROUT_CNFM进行确认,完成一个三次握手的自组路由过程。
[0056] 图3为根据本发明一个实施例的双向对传和单向即时转发的示意图。如图3所 示,节点a有数据发送给节点b,检测到信道空闲且计数器为零时,发起连接请求,发送一个 SEND_REQUEST帧,a的邻节点根据该帧信息保持相应时长的静默,节点b收到该帧后等待一 个SIFS后发送一个SEND_RESP0NSE帧进行回应,若此时节点b也有数据包需要发送给a,则 该SEND_RESP0NSE帧包含b将发给a的数据包数。节点b的邻节点监听到该帧后自动保持 静默,静默时长等于b发给a的总包长。节点a成功接收到来自b的SEND_RESP0NSE帧即 为握手成功,a和b等待一个SIFS后开始互传数据。节点a和b双方发送完毕后等待一个 SIFS 后互发 DATA_ACK。
[0057] 图4为根据本发明另一个实施例的三点单向即时转发的示意图。如图4所示,节 点a需要发送数据包给c,基于CSMA/CA发起一个连接请求,发送一个SEND_REQUEST帧,目 标地址为c。b节点在接收到该帧后,检查到c为其路由表中的节点,因为等待一个SIFS后 发送一个SEND_RESP0NSE进行回应,该帧包含源地址b,目标地址c,申请发起地址a和数据 包数等信息。节点c收到该帧后保持相应时长的静默。此后a等待一个SIFS时隙,开始发 送数据包序列,b接收到数据包并在成功解析包头后进行即时转发。节点a在发送数据的 同时监听b所转发的数据包,据此对a - b段的通信进行校验,并从待发送队列中删除已成 功发送的数据包。节点c在b发送完所有数据包后,等待一个SIFS时隙后发送DATA_ACK。
[0058] 根据本发明实施例的即时转发的MAC协议,通过自组路由以及对握手机制的改 进,使得在转发过程中利用所转发的信号进行同步校验,同时支持双向对传、单向即时转 发,还可以解决隐藏节点问题,降低端到端延迟,提升吞吐率和全双工网络性能。
[0059] 尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例 性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨 的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
【权利要求】
1. 一种基于即时转发的MAC协议,其特征在于,所述协议通过如下步骤实现: 自组路由步骤,节点根据R〇UT_REQ帧、响应帧ROUT_ACK和确认帧ROUT_CNFM生成自组 路由;以及 传输步骤,对节点进行分类,分类后的所述节点根据所述自组路由获得目标地址,并根 据所述目标地址以及SEND_REQ帧和SEND_RESPONSE帧完成握手将数据包进行发送或接收。
2. 如权利要求1所述的基于即时转发的MAC协议,其特征在于,所述自组路由步骤具体 包括: 所述节点发送所述R〇UT_REQ帧进行路由请求,并等待来自终端节点的所述响应帧 ROUT_ACK ; 所述终端节点接收到所述R〇UT_REQ帧后提取节点地址,并随机退避后发送所述相应 帧ROUT_ACK,等待所述确认帧ROUT_CNFM ; 所述节点接收所述确认帧R〇UT_ACK后,提取所述源地址加入到路由表中,等待一个 SIFS时隙后发送一个所述确认帧ROUT_CNFM ; 所述终端节点接收到所述确认帧R〇UT_CNFM以完成所述自组路由的生成。
3. 如权利要求2所述的基于即时转发的MAC协议,其特征在于,所述自组路由步骤具体 还包括: 当所述终端节点等待10个所述确认帧R〇UT_CNFM时隙仍未收到目标地址为自节点地 址的所述确认帧R〇UT_CNFM,则根据CSMA/CA发送一个所述相应帧ROUT_ACK,继续等待所述 确认帧 R〇UT_CNFM。
4. 如权利要求1所述的基于即时转发的MAC协议,其特征在于,对所述节点进行分类包 括: 将以发送一个所述SEND_REQ帧为开始的节点定义为第一类节点; 将以接收到一个所述SEND_REQ帧为开始的节点定义为第二类节点;以及 将以接收到一个SEND_RESPONSE帧为开始的节点定义为第三类节点。
5. 如权利要求4所述的基于即时转发的MAC协议,其特征在于,当所述节点为所述第一 类节点时,所述传输步骤具体包括: 步骤S101,所述第一类节点发送所述SEND_REQ帧为Framel时,等待来自所述节点的所 述响应帧SEND_RESPONSE转到步骤S102 ; 步骤S102,接收SEND_RESPONSE帧并提取目标地址,当所述目标地址与所述Framel中 的目标地址一致时,转到步骤S103,当所述目标地址与自节点地址一致时,转到步骤S104, 否则根据所述SEND_RESPONSE帧中的数据长度保持相应时长的静默区间并结束; 步骤S103,等待一个SIFS时隙后开始传输数据包队列,同时监听路由中转节点所即时 转发的数据包,并进行校验,发送完毕后保持一个DATA_ACK时隙的静默;以及 步骤S104,等待一个所述SIFS时隙后开始传输所述数据包队列,同时接收目标节点发 送给自节点的数据包,在发送完毕且完成接收后,发送ACK。
6. 如权利要求5所述的基于即时转发的MAC协议,其特征在于,在所述步骤S103中,自 节点队列存在已校验正确的数据包时删除所述已校验正确的数据包。
7. 如权利要求4所述的基于即时转发的MAC协议,其特征在于,当所述路由节点为所述 第二类节点时,所述传输步骤具体包括: 步骤S111,若节点为路由节点时,转到步骤S112,否则转到步骤S114 ; 步骤S112,若接收到的所述SEND_REQ帧中的目标地址为路由表中的节点,则等待一个 所述SIFS时隙后发送一个SEND_RESPONSE帧,等待接收数据队列,再转到步骤S113,否则结 束; 步骤S113,接收数据包队列并即时转发,转发完毕后等待接收DATA_ACK帧; 步骤S114,若接收到SEND_REQ帧中的目标地址为自节点地址,则等待一个所述SIFS时 隙后发送一个SEND_RESPONSE帧,等待一个所述SIFS时隙后开始发送数据包队列,同时接 收数据包,发送和接收完毕后,发送ACK。
8.如权利要求4所述的基于即时转发的MAC协议,其特征在于,当所述路由节点为所述 第三类节点时,所述传输步骤具体包括: 步骤S111,若接收到的SEND_RESPONSE帧中的目标地址等于自节点地址,则转步骤 S112,否则保持与该帧中的数据包队列长度等时长的静默; 步骤S112,等待接收数据包队列,接收完毕后等待一个所述SIFS时隙后发送ACK。
【文档编号】H04L29/08GK104065720SQ201410276298
【公开日】2014年9月24日 申请日期:2014年6月19日 优先权日:2014年6月19日
【发明者】张春, 林进佳, 贾雯, 姜汉钧, 王志华 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1