首页> 中国专利> 基于协作通信的无线局域网介质访问控制层协议的方法

基于协作通信的无线局域网介质访问控制层协议的方法

摘要

本发明提供了一种基于协作通信的无线局域网介质访问控制层协议的方法,主要完成了对基于网络编码的协作通信MAC协议的设计工作,整个协议所涉及的机制包括:网络编码机制、帧格式设计以及基于竞争的类分布式协调功能的信道接入机制。本发明提供一种新型的基于网络编码的协作通信MAC协议,降低了接入机制复杂性,避免了大量控制帧的引入,极好地兼容了现有协议,同时有效提高了网络性能,降低了误码率。

著录项

  • 公开/公告号CN104780619A

    专利类型发明专利

  • 公开/公告日2015-07-15

    原文格式PDF

  • 申请/专利权人 西北工业大学;

    申请/专利号CN201510163632.4

  • 申请日2015-04-08

  • 分类号H04W74/08(20090101);H04L1/16(20060101);

  • 代理机构61204 西北工业大学专利中心;

  • 代理人顾潮琪

  • 地址 710072 陕西省西安市友谊西路127号

  • 入库时间 2023-12-18 09:57:47

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-12-14

    授权

    授权

  • 2015-08-12

    实质审查的生效 IPC(主分类):H04W74/08 申请日:20150408

    实质审查的生效

  • 2015-07-15

    公开

    公开

说明书

技术领域

本发明涉及无线局域网领域,尤其是协作通信的MAC协议。

背景技术

无线局域网(WLAN)是采用无线传输媒体的计算机通信网络。1997年6月,IEEE 发布802.11标准,作为国际网络互连协议。标准的制定以及工业,科学和医学机构使 用的公共频段(ISM频段)的开放进一步推动了WLAN的迅速发展,得到了广泛的应 用。但是无线局域网采用无线电波传输信息引起的衰落和多径效应是阻碍信道容量增 加和服务质量改善的主要原因之一。

协作通信由A.Sendonaris等人在文献“User Cooperation Diversity,Part I:System  description[J].IEEE Trans.onCommun,2003,51(11):1927-1938”中提出的协作通信算法 得到了巨大的关注,并逐渐成为了目前发展最快的研究领域之一,其核心思想是利用 在一个网络的多个节点之间进行资源共享,在无线网络中通过利用邻居节点的天线来 协作源节点进行数据的传输,从而提高系统吞吐量和降低端到端的延时。传统的无线 局域网MAC层协议采用由国际电机电子工程学会(IEEE)所定义的无线网络通信的标 准(IEEE 802.11MAC),其主要的关注点是解决暴露终端和隐藏终端的问题,但是并没 有考虑在源和目的节点通信过程中邻居节点的参与活动。

同时,最早由R Ahlswede等人在文献“Network Information Flow.IEEE Transactions  on Information Theory,IT-4646(4):1204–1216”中提出的网络编码技术是近年来通信研 究领域中的一项重要突破,为改善无线通信协议的传输效率提供了新的技术途径。网 络编码技术在传统“存储转发”的信息传输模式基础上增加了编码环节,通过允许网 络中间节点对输入信息实施先编码后发送的处理策略,使传统的信息传输方式转变为 “存储-编码-转发”的新方式。研究表明,网络编码在提高网络吞吐量、改善负载均 衡、减小传输延迟、节省节点能耗、增强网络鲁棒性等方面均显示出其独特的优越性, 但网络编码对物理硬件的要求较高,需要有较高的运算能力预计较快的数字处理能力。

发明内容

为了克服现有协作通信协议中接入机制设计复杂度高、过多控制帧的引入、与现 有的802.11MAC协议的兼容性低的问题,本发明主要完成了对基于网络编码的协作通 信MAC协议的设计工作,整个协议所涉及的机制包括:网络编码机制、帧格式设计以 及基于竞争的类分布式协调功能的信道接入机制。

一、网络编码机制

协作通信MAC(NCC-MAC)协议采用了随机线性网络编码来提高自身网络性能, 一帧的有效数据载荷被划分成了N个子部分,N是在网络编码中将数据帧被划分的数 目,假设有效载荷的总长为L比特,因此每个子部分的长度l=L/N比特,原始的数据 表示为D=[d1,d2,…,dN]T,其中dn(n=1,2,…,N)是第n个子部分,T表示矩阵转置;

发送节点,包括源节点或帮助节点,首先随机产生一个N×N阶的系数矩阵C, C=[c1,c2,…,cN]T,N即数据载荷被划分的子部分数目,其中cn=[cn1,cn2,…,cnN]是被称为 系数向量的1×N行向量,表示在一次对N个子部分编码的系数向量,N个系数向量彼 此之间线性无关,数据帧可以被编码成以下形式:

其中,D'表示已编码的数据载荷,D是原始有效数据载荷,dn'是第n个已编码 的子部分,由于dn'与系数向量cn一一对应,因此(dn',cn)为一个已编码对;

由于系数矩阵C不是唯一,且数据可以被其他的系数矩阵进行编码,因此,只要 接收端收集齐N个已编码对,而且N个已编码对之间的系数向量线性不相关,即系数 矩阵的秩达到N,接收端即可正确解码出原始数据,即:

D=C-1·D'       (2)

其中C-1表示C的逆矩阵;

解码所需要的N个不相关的子部分意味着原始数据的解码过程不依赖于特定的某 一个系数矩阵或者是已编码的子部分,从而使得所需的这N个不相关的子部分并不一 定需要来自于同一个发送节点,接收节点可以分别从源节点以及帮助节点接收不同的 子部分,组合成一个完整的数据帧,实现正确的解码;

二、帧格式设计

现有的802.11协议标准中的数据帧无法满足NCC-MAC协议的设计要求,为了在载 波侦听多路访问/冲突避免(CSMA/CA)的基础上实现协作通信以及网络编码,本发明 对现有的802.11的数据帧以及控制帧进行了一定的修改:

(A)数据帧结构设计

现有的802.11的MAC帧格式为:

其中,帧控制Frame Control部分记录了802.11MAC的属性,生存周期Duration/ID 主要用于虚拟载波监听机制中,地址Address1-Address4分别表示收发节点的地址, Sequence Control顺序控制字段Seq-Ctrl用来重组帧片段以及丢弃重复帧,Frame Body 存放用户有效的数据载荷部分,帧校验序列FCS使得工作站能够检查所收到的帧的完 整性;

在原有的数据帧格式的基础上,本发明对帧格式进行了以下两点的修正:

(A-1)在原有的Seq-Ctrl控制字之后添加了相同长度的Seq-Ctrl2,即Sequence  Control2,用以记录帮助节点中传送的源节点数据的序列号,当没有需要帮助发送的数 据时,Seq-Ctrl2置为空,因此,修正后的整体帧格式如下所示:

(A-2)原有的数据帧的数据载荷以及校验部分在NCC-MAC数据帧中被划分成了 N个子部分,其中每一个子部分包含一个已编码对以及对应的循环冗余校验位CRC, 其中,校验位用于校验数据是否被正确地接收,在数据载荷部分Frame body具体如下 所示:

其中,802.11帧头包括规定的数据帧格式中有效载荷以前的相应信息,之后每一 个子部分中的已编码对包括已编码的数据载荷以及对应的系数向量;

(B)控制帧结构设计

为了满足协作通信的要求,在接收完数据以后返回表明正确接收的确认帧ACK同 样需要做出相应的调整,原有的ACK帧格式如下:

Frame Control部分同数据帧格式对应的部分,含有802.11MAC的属性信息, Duration的作用同数据帧中生存周期Duration/ID相同,Receiver Address用于标明ACK 接收节点的ID,FCS表示该帧的帧校验序列,本发明中的ACK帧进行重新定义如下:

首先添加了第二个接收地址Address2,当接收节点同时收到源节点以及帮助节点 的数据帧时,需要两个地址来标识正确接收的数据的来源信息;Packet Information中 存储的是对应接收的数据帧的相关接收信息,包括在该数据帧中正确接收的子部分个 数以及对应的帧序列号;

三、基于竞争的类分布式协调功能DCF(Distributed Coordination Function)信道 接入机制

信道接入的基本机制采用类CSMA/CA机制,即:节点在发送数据前先监听信道; 当节点发现信道空闲时,开始执行指数退避机制;

第1步:在NCC-MAC协作通信中,源节点首先发送一个具有N个子部分的数据帧, 在源节点传输范围内的节点,即邻居节点同时开始接收具有N个子部分的数据帧,并 将具有N个子部分的数据帧进行解码,放入各自的缓存区,此时,邻居节点即成为了 源节点的帮助节点,同时,侦听到源节点发送数据的其他节点将认定信道为忙碌状态, 并暂停自身发送数据帧的行为;

如果接入节点正确地接收完所有利用网络编码的已编码对,将在一个短帧间隔 SIFS之后回复一个标准的ACK控制帧,接收到ACK的源节点以及源节点相应的帮助节 点们将会丢掉从源节点成功接收并缓存在缓存区的数据帧,一轮传输顺利完成,开始 下一轮传输;

如果由于隐藏终端的干扰,接入节点仅正确接收到了m1个已编码对,其中 0≤m1<N,无法正确地解码,则认定本次传输失败,进入第2步;

第2步:所有之前在第1步中侦听到信道忙碌从而暂停发送行为的节点,包括源节 点和帮助节点都将继续暂停,直到接收到由接入节点发送的广播ACK帧;

在本发明中,每个节点感知信道空闲状态同时由接入节点的发出的控制信号以及 自身物理载波侦听机制控制,因此,当接入节点感知信道空闲,即没有节点向接入节 点发送数据,所有节点都处于退避或等待状态的时候,接入节点将广播ACK帧;

第3步:节点以及帮助节点们接收到广播ACK而非标准ACK帧时,即为传输失败; 此时,所有节点在此时如下完成两部分工作:

a)确定信道空闲状态,开始原有DCF标准的信道空闲响应机制;

b)获取广播ACK中的数据已编码对信息,包括发送节点的ID,接收已编码对的个 数n以及数据帧的序列号,对照自身即将发送的数据帧中相应的信息对数据帧进行再编 码以及删减工作;

其中,步骤b)主要针对的是ACK中指明的源节点以及其帮助节点,源节点和帮 助节点们都将对源节点数据进行重新编码,产生新的已编码对以及校验位,当源节点 发现ACK帧中数据帧ID是自身,且序列号正是准备重传的数据帧的序列号时,源节点 会删去m1个数据帧已编码对,仅传送N-m1个已编码对,对于源节点对应的帮助节点们, 同样按照源节点的做法缩减源节点数据帧部分的已编码对个数,仅传送其中的N-m1个 已编码对,生成由帧头、N-m1个已编码对以及对应的校验位构成的协作数据帧,源节 点以及帮助节点们都完成数据帧的重新打包,只要收集齐N个不相关的已编码对,接 入节点便可成功解码出数据帧;

第4步:在信道完全空闲时,所有节点按照DCF标准重新开始竞争机制,包括源节 点以及携带协作数据帧的帮助节点,若源节点再一次赢得信道的使用权,源节点将发 送经过重新编码删减的数据帧,如果其中一个帮助节点赢得了使用权,该帮助节点将 发送协作数据帧,即在自身的数据帧中传送源节点的数据帧信息,从而完成协作任务;

当重传仍再次冲突,假设第k次重传成功接收的数据已编码对个数为 mk(0≤mk<N,k=1,2,3...),当接入节点经过k次重发接收工作之后,共收集个已编码 对,且由网络编码原理可知,接入节点可正确地解出来自源节点的原始数据, 并回送标准ACK帧,标明数据帧的成功接收。

本发明提供一种新型的基于网络编码的协作通信MAC协议,降低了接入机制复杂 性,避免了大量控制帧的引入,极好地兼容了现有协议,同时有效提高了网络性能, 降低了误码率。本发明所涉及的协作通信MAC协议算法简单,无需大量复杂的计算, 适合于在无线局域网(WLAN)中部署;所涉及的协作方法避免了过多控制帧的引入, 提高了网络的执行效率,对现有的802.11MAC协议的兼容性较好;将网络编码概念应 用于无线局域网MAC协议的设计中,本发明根据网络编码的思想原理,将一整个数据 帧分割成数据子部分,充分提高了冲突时间的利用率,增加了网络的吞吐量,提升了 网络性能;本发明所涉及的MAC协议能较好地适应多隐藏终端的环境,提出的广播 ACK的机制减少了隐藏终端之间的冲突,降低了网络的冲突概率;本发明所涉及的 MAC协议不仅能工作在有中心节点的无线局域网中,同时在设计时兼容了自组织对等 式网络(Ad-Hoc),适用范围较广。

附图说明

图1是MAC协议所处的网络模型图。

图2是数据部分正确接收时的处理机制示意图。

图3是广播ACK机制示意图。

其中,图1中R表示节点最大辐射半径,AP表示接入点,即其他节点都向该接入点 进行数据帧的传输,ACK表示在正确收到数据帧以后反馈给发送发的确认帧,SIFS (Short Interframe Space)表示最小的帧间间隔,DIFS(DCF Interframe Space)表示在 DCF协议中需要等待的时间。

具体实施方式

下面结合附图和实施例对本发明进一步说明。

一、网络编码机制

协作通信MAC(NCC-MAC)协议采用了随机线性网络编码来提高自身网络性能, 不同于传统的数据帧格式,一帧的有效数据载荷被划分成了N个子部分,N是在网络 编码中将数据帧被划分的数目,假设有效载荷的总长为L比特,因此每个子部分的长 度l=L/N比特,原始的数据就可以被表示成D=[d1,d2,…,dN]T,其中dn(n=1,2,…,N)是第n 个子部分,T表示矩阵转置;

发送节点,包括源节点或帮助节点,首先随机产生一个N×N阶的系数矩阵C, C=[c1,c2,…,cN]T,N即数据载荷被划分的子部分数目,其中cn=[cn1,cn2,…,cnN]是被称为 系数向量的1×N行向量,表示在一次对N个子部分编码的系数向量,这N个系数向量 彼此之间是线性无关,数据帧可以被编码成以下形式:

其中,D是原始有效数据载荷,D'表示已编码的数据载荷,dn'是第n个已编码的 子部分,由于dn'与系数向量cn一一对应,因此(dn',cn)为一个已编码对;

由于系数矩阵C并不是唯一的,而且数据可以被其他的系数矩阵进行编码,因此, 只要接收端收集齐N个已编码对,而且他们之间的系数向量线性不相关,即系数矩阵 的秩达到N,接收端即可正确解码出原始数据,即:

D=C-1·D'        (2)

其中C-1表示C的逆矩阵;

解码所需要的N个不相关的子部分意味着原始数据的解码过程不依赖于特定的某 一个系数矩阵或者是已编码的子部分,从而使得所需的这N个不相关的子部分并不一 定需要来自于同一个发送节点,接收节点可以分别从源节点以及帮助节点接收不同的 子部分,组合成一个完整的数据帧,实现正确的解码。

在此环境与节点的初始化阶段,本发明主要采用含有接入节点的基础架构系统模 型,多个节点Node随机分布在接入点接入节点可监听的范围之内,如图1所示,其中, 每个节点的最大辐射半径为R,即节点距离在R范围内的可以相互感知,在之外的无 法感知,即互为隐藏终端。在整个过程中,网络处于饱和状态,即节点始终有数据需 要发送。

各个节点位置固定,且发射功率一定。系统的工作模式和典型配置根据IEEE 802.llb规范进行设置,节点数据传输速率设置为11Mbps,调制方式选择正交相移键控 QPSK,SIFS的时间长度定义为10μs,DIFS为50μs,以及时隙间隔Slot Time为20μs。 在指数退避相关参数的设置上,最小竞争窗口CWmin选择为31时隙间隔,最大竞争窗口 CWmax选择为1023时隙间隔,最大重传次数设置为7次,即对于一个数据包最多仅能重 传7次,当经过7次传输失败后,该数据帧将被直接丢弃。

二、帧格式设计

现有的802.11协议标准中的数据帧已经无法满足NCC-MAC协议的设计要求,为了 在载波侦听多路访问/冲突避免(CSMA/CA)的基础上实现协作通信以及网络编码,本 发明对现有的802.11的数据帧以及控制帧进行了一定的修改。

(A)数据帧结构设计

现有的802.11的MAC帧格式为:

其中,帧控制Frame Control部分记录了802.11MAC的属性,生存周期Duration/ID 主要用于虚拟载波监听机制中,地址Address1-Address4分别表示收发节点的地址, Sequence Control顺序控制字段Seq-Ctrl用来重组帧片段以及丢弃重复帧,Frame Body 存放用户有效的数据载荷部分,帧校验序列FCS使得工作站能够检查所收到的帧的完 整性;

在原有的数据帧格式的基础上,本发明对帧格式进行了以下两点的修正:

(A-1)在原有的Seq-Ctrl控制字之后添加了相同长度的Seq-Ctrl2,即Sequence  Control2,用以记录帮助节点中传送的源节点数据的序列号,当没有需要帮助发送的数 据时,Seq-Ctrl2置为空,因此,修正后的整体帧格式如下所示:

(A-2)原有的数据帧的数据载荷以及校验部分在NCC-MAC数据帧中被划分成了 N个子部分,其中每一个子部分包含一个已编码对以及对应的循环冗余校验位CRC, 其中,校验位用于校验数据是否被正确地接收,在数据载荷部分Frame body具体如下 所示:

其中,802.11帧头包括规定的数据帧格式中有效载荷以前的相应信息,之后每一 个子部分中的已编码对包括已编码的数据载荷以及对应的系数向量;

(B)控制帧结构设计

为了满足协作通信的要求,在接收完数据以后返回表明正确接收的确认帧ACK同 样需要做出相应的调整,原有的ACK帧格式如下:

Frame Control部分同数据帧格式对应的部分,含有802.11MAC的属性信息, Duration的作用同数据帧中生存周期Duration/ID相同,Receiver Address用于标明ACK 接收节点的ID,FCS表示该帧的帧校验序列,本发明中的ACK帧进行重新定义如下:

首先添加了第二个接收地址Address2,当接收节点同时收到源节点以及帮助节点 的数据帧时,需要两个地址来标识正确接收的数据的来源信息;Packet Information中 存储的是对应接收的数据帧的相关接收信息,包括在该数据帧中正确接收的子部分个 数以及对应的帧序列号;

三、基于竞争的类DCF信道接入机制

信道接入的基本机制采用类CSMA/CA机制,即:节点在发送数据前先监听信道; 当节点发现信道空闲时,开始执行指数退避机制;

第1步:在NCC-MAC协作通信中,源节点首先发送一个具有N个子部分的数据帧, 在源节点传输范围内的节点,即邻居节点同时开始接收这些数据帧,并将这些数据帧 进行解码,放入各自的缓存区,此时,邻居节点即成为了源节点的帮助节点;

如果接入节点正确地接收完所有利用网络编码的已编码对,将在一个短帧间隔 SIFS之后回复一个标准的ACK控制帧,接收到ACK的源节点以及相应的帮助节点们将 会丢掉对应已经成功发送的缓存包,一轮传输顺利完成,开始下一轮传输;

如果由于隐藏终端的干扰,接入节点仅正确接收到了m1个已编码对,其中 0≤m1<N,无法正确地解码,则认定本次传输失败,进入第2步;

(1)源节点S数据发送阶段

(1-1)源节点进行网络编码,生成N对已编码对,按照以下格式完成数据帧。

其中,Address1中设置为自身节点的地址,Address2设置为接入节点节点的地址, Seq-Ctrl记录当前数据帧的序列号,Seq-Ctrl2设置为空,有效数据载荷部分(Frame Body) 分别存放着第1个到第N个子部分,其中每一部分包含一个已编码对以及对应的循环冗 余校验位CRC。

(1-2)源节点发送数据帧。当数据帧完成的时候,源节点在发送之前首先执行指数 退避机制,即源节点首先将从[0,CWmin]中随机选取一个整数并乘以时隙间隔(Slot Time) 得到的时间作为退避初始时间,开始退避。当信道处于空闲状态且退避时间倒计时至0 时,源节点开始发送数据帧。

由于无线网络的广播特性,在源节点辐射范围内的邻居节点也可以侦听到数据帧 的发送。因此,邻居节点接收来自源节点S发送给接入节点的数据帧。若在整个接收 过程中没有其他信号的干扰,即源节点S的隐藏终端同时发送数据帧,使得某些邻居 节点同时接收到两个数据帧而产生冲突时,邻居节点将正确接收的数据帧放入自己的 缓存区内。若产生冲突,邻居节点则放弃协作。同时,如果邻居节点缓存区内已经有 一个来自其他节点并需要协作的数据帧时,邻居节点仍然丢弃此次接收的数据帧,放 弃协作,即一个节点同一时间仅帮助其他的一个节点进行协作通信。若正确接收的邻 居节点确定参与此次协作时,该邻居节点即成为源节点的一个帮助节点。

当数据帧发送完成时,源节点进入等待确认正确接收的ACK阶段,并开始了等待 超时的计时。计时器初始化等待时间Twait设置为其中,SIFS (Short Interframe Space)表示最小的帧间间隔,TACK是传输ACK控制帧需要的时间, TMax_delay表示由于信道或其他原因引起的最大时延,设置为30μs。

(1-3)其他节点的等待行为。所有检测到由于发送数据导致信道忙的节点,都将暂 停自身的退避机制,开始进入等待状态,等待ACK帧。源节点若在等待确认正确接收 的ACK帧超时后,同样进入等待广播ACK帧状态。

若数据帧被接入节点正确接收,则进入阶段(4-1),否则进入第2步。

第2步:所有之前侦听到信道忙碌从而暂停发送行为的节点,包括源节点和帮助节 点都将继续暂停,直到接收到由接入节点发送的广播ACK帧;

在本发明中,每个节点感知信道空闲状态同时由接入节点的发出的控制信号以及 自身物理载波侦听机制控制,因此,当接入节点感知信道空闲,即没有节点向接入节 点发送数据,所有节点都处于退避或等待状态的时候,接入节点将广播ACK帧;

(2-1)广播ACK以及重传准备阶段

(2-1-1)广播ACK帧的发送与接收。由于多个互为隐藏终端的节点同时向接入节点 发送数据,接入节点没有完全正确接收到来自源节点的数据帧。但由于网络编码特性, 接入节点仍部分正确接收了来自源节点的mk(0≤mk<N,k=1,2,...)个已编码对,其中k表示 接收源节点数据帧的次数(数据可以来自源节点本身或者通过帮助节点的协作)。而且, 之前累积接收的已编码对个数无法正确解码,因此接入节点开始产生如下 所示的对应的广播ACK帧。

其中Receiver Address的值被标识成了广播地址,Address2内填入了源节点的ID值, 在Packet Information中包含了源节点该数据帧的序列号以及已接收mk个已编码对的信 息。

当信道上没有节点给接入节点发送数据,即信道空闲的时候,接入节点开始广播 该ACK帧。所有节点在接收到广播ACK帧以后,首先将信道状态标识为空闲,即节点 可以开始或继续退避机制。

(2-1-2)源节点以及正确接收源节点数据帧的帮助节点接收到该ACK帧时,检测到 Address2被标识为源节点ID,因此将会依据帧中Packet Information信息对源节点数据帧 进行相应的删减。由于数据帧仍未完全正确接收,源节点将数据重新进行网络编码, 由于已经正确接收了mk个已编码对,源节点随机从新生成N个已编码对中随机选取 N-mk个已编码对并打包成新的数据帧。同时,帮助节点则将正确接收的数据帧进行解 码,放入缓存,而后将得到的数据同源节点进行相同的处理,重新编码,后将随机选 取的N-mk个源节点数据的已编码放在自身N个已编码对的前面,构成了以下协作数据 帧格式中的有效数据载荷部分。

在协作数据帧帧头中,Address2内填入了帮助节点的ID值,Address3被设置成了 源节点的ID,Seq-Ctrl记录帮助节点数据帧的序列号,Seq-Ctrl2设置为源节点数据帧的 序列号。需要注意的是,在数据载荷部分不一定是完整的N个已编码对,而是小于或 等于N个已编码对。

在接收到广播ACK帧,完成数据帧的打包后,源节点、帮助节点以及其他所有节 点都进入信道竞争阶段。

第3步:节点以及帮助节点们接收到广播ACK而非标准ACK帧时,即为传输失败; 此时,所有节点在此时如下完成两部分工作:

a)确定信道空闲状态,开始原有DCF标准的信道空闲响应机制;

b)获取广播ACK中的数据已编码对信息,包括发送节点的ID,接收已编码对的个 数n以及数据帧的序列号,对照自身即将发送的数据帧中相应的信息对数据帧进行再编 码以及删减工作;

其中,步骤b)主要针对的是ACK中指明的源节点以及其帮助节点,源节点和帮 助节点们都将对源节点数据进行重新编码,产生新的已编码对以及校验位,当源节点 发现ACK帧中数据帧ID是自身,且序列号正是准备重传的数据帧的序列号时,源节点 会删去m1个数据帧已编码对,仅仅传送N-m1个已编码对,对于源节点对应的帮助节点 们来说,它们同样按照源节点的做法缩减源节点数据帧部分的已编码对个数,仅传送 其中的N-m1个已编码对,生成由帧头、N-m1个已编码对以及对应的校验位构成的协 作数据帧,源节点以及帮助节点们都完成数据帧的重新打包,只要收集齐N个不相关 的已编码对,接入节点便可成功解码出数据帧;

(3-1)信道竞争阶段

在本阶段,由于隐藏终端的信号检测不到,因此隐藏终端的行为并不会影响源节 点行为,在此仅考虑源节点及其邻居节点的行为。所以,主要会出现以下状态:

(3-1-1)若此次是源节点以及帮助节点能侦测到的其他节点占用信道,则源节点及 帮助节点侦听到信道为忙,返回第2步,等待ACK帧(广播ACK或标准ACK帧)。

(3-1-2)若源节点竞争到信道使用权,率先发送数据帧,则其他邻居节点包括帮助 节点进入等待状态,进入最初的源节点发送阶段(1-2)。

(3-1-3)若帮助节点首先得到信道使用权,则帮助节点开始传输数据。在传输时, 接入节点接收的数据帧可能不仅仅是源节点的数据帧,还有可能接收到帮助节点的数 据。

(3-1-3-1)帮助节点发送数据帧。当帮助节点感知信道空闲且指数退避已经结束 时,帮助节点开始发送含有源节点数据以及自身数据的协作帧,邻居节点侦听到信号, 认定信道进入忙状态,暂停退避,进入等待阶段。

(3-1-3-2)协作帧的接收。当帮助节点发送完协作帧时,接入节点及其周围邻居 节点有可能正确接收数据帧。由于该数据帧已经是协作帧,因此,无论邻居节点正确 接收与否,邻居节点都将丢弃该数据帧。接入节点对于该数据帧的接收情况,共有以 下四种:

a)接入节点完全正确接收,即源节点数据帧以及帮助节点数据帧完全解码,得到 正确数据时,进入(4-1),完成此次协作。

b)接入节点接收失败,即没有正确接收任何一个已编码对,则接入节点开始进入 第2步,准备进行重传,且此次mk=0,

c)接入节点仅仅部分正确接收了源节点的数据帧,即此次接收了mk个已编码对。 若之前累积的已编码对且系数矩阵各自线性无关,则接入节点可以正确解码, 因此接入节点进入(4-1),完成此次协作。

d)接入节点正确接收了源节点的全部数据帧,但部分接收了帮助节点自身的 mk'(0≤mk'<N)个已编码对,此时,接入节点仍进入(4-1),但仍需要发送广播ACK帧, 此时不仅需要广播对源节点数据帧的正确接收的信息,还要标识出对帮助节点的接收 情况。

不论是数据帧的完全接收或者通过多次部分接收的累积,接入节点将会正确解码 出源节点数据,并有机会接收来自帮助节点的数据,因此将进入以下阶段。

第4步:在信道已经完全空闲时,所有节点按照DCF标准重新开始竞争机制,包括 源节点以及携带协作包的帮助节点,若源节点再一次赢得了信道的使用权,源节点将 发送经过重新编码删减的数据帧,如果其中一个帮助节点赢得了使用权,该帮助节点 将发送协作数据帧,即在自身的数据帧中传送源节点的数据帧信息,从而完成了协作 任务;

当重传仍再次冲突,假设第k次重传成功接收的数据已编码对个数为 mk(0≤mk<N,k=1,2,3...),当接入节点经过k次重发接收工作之后,共收集个已编码 对,且由网络编码原理可知,接入节点可正确地解出来自源节点的原始数据, 并回送标准ACK帧,标明数据帧的成功接收

(4-1)正确接收处理阶段

主要分为两种情况:

(4-1-1)接入节点对数据正确接收的处理。正确接收数据帧主要分为两种:a)仅 正确接收了源节点的数据帧;b)在正确接收源节点数据帧的同时一并正确或部分接收 了帮助节点的数据帧。

(4-1-1-1)仅源节点数据被正确接收。此时,接入节点将发送标准的ACK帧,其 中Receiver Address被标识为源节点的ID。

(4-1-1-2)源节点正确接收,且帮助节点部分接收时,由于需要告知两个节点的 接收信息,在这里使用广播ACK帧来完成该任务。在该ACK帧中,Receiver Address被 标识为源节点的ID,Address2被标识为了帮助节点的ID,Packet Information中存放着 源节点数据帧被全部正确接收的信息,以及正确接收帮助节点数据的序列号以及已编 码对的个数信息。

(4-1-2)节点接收到ACK帧后的反应机制各节点对广播ACK帧的接收反应

当源节点收到确认正确接收的ACK帧时,源节点将删除该缓存中的该数据帧,进 入准备下一个数据帧的传输工作。

当帮助节点接收到确认接收的ACK帧时,帮助节点首先也将放在缓存区内的源节 点的数据进行丢弃,标识此次协作结束。同时,若此次接收到的ACK帧是广播ACK帧 的格式,且Address2的地址等于该帮助节点的ID时,该帮助节点将重新编码发送的数 据载荷,记录下正确接收到的已编码对的数目,进行如阶段(C-2)类似的数据子部分数 目的删减工作。

同时,所有节点在接收到ACK帧后都将信道状态标识为空闲,开始或继续退避机 制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号