具体实施方式
请参阅图1,家庭无线控制网络包括家庭控制子网网关110、移动控制终端120和多个无线通讯模块130。
家庭控制子网网关110是家庭无线控制网络的中心。用于充当家庭无线控制网络的信息和控制中心;并且作为家庭无线控制网络和外界信息网络(如:以太网、电话系统等等,图未示)之间的接口或信息交换中心,以及家庭信息网络和家庭无线控制网络之间的联合点。
移动控制终端120在WHCN中是一个专用和简单的显示器和控制终端。用户可以通过移动控制终端120获得各种服务的平台;移动控制终端120可以与家庭控制子网网关110相互通讯,实现所有家庭控制子网设备140的集中控制;在紧急情况下,移动控制终端120可以和各个节点直接通讯。
移动控制终端120可以接收网络设备140的数据和状态并且借助子网网关110给每个设备发送控制命令。
无线通讯模块130是家庭控制子网设备的通讯核心,通讯模块是各个家庭控制子网设备和无线网络的无线通讯接口单元。
在家庭无线控制子网中,无线通讯模块130是基本单元。在家庭控制子网网关110和移动控制终端120中,无线通讯模块是部分功能模块。一般来说,子网网关110中的无线通讯模块,叫做无线通讯中心节点模块,发挥协调器的作用。
请参阅图2和图3,是家庭无线控制网络的拓扑结构图。
为满足实际应用的要求,WHCN有多种拓扑:例如,星状拓扑(图2参照)或对等拓扑(图3参照)。在网络拓扑中,节点必须有独一无二的地址。节点又可分为全功能节点221和简化功能节点222。
参阅图2,采用星状拓扑时,网络中存在一个中心节点210和若干子节点220,其它设备直接和中心节点210联接,通信建立在中心节点210和设备之间。WHCN中心节点210也叫中心控制器。设备的典型应用是作为网络通讯的起始节点或者终止节点,通过中心节点实现设备之间的通信。
WHCN中心节点210的具体应用是能够初始、终止或者路由网络中的通信。WHCN中心节点210是WHCN的主要控制中心。
全功能收发器第一次启动后,就建立自己的网络,成为WHCN中心节点210,所有的星状网络都独立于正在工作的其它星状网络。在射频通信范围内,通过选择没有被别的网络使用的WHCN标识,就可以建立一个新的网络。一旦WHCN标识被选定,WHCN中心节点允许别的设备加入网络。
如前所述,中心节点210是星状拓扑网络的中心点。一般情况下,子网网关的无线模块是中心节点。
在无线网络中,中心节点210遵循家庭控制子网通信协议,可以与家庭控制子网设备通过无线的方式进行数据交换。中心节点一般是有足够存储空间的专用节点。
中心节点210通过子网网关获得用户的查询/控制命令。中心节点210传输关于WHCN的这些查询和控制命令并传送到预期的节点,所述预期的节点与被控设备连接。
中心节点210也从被控制设备接收信息,并判断接收到的数据的正确性和有效性,如正确,则得到控制命令和有效数据信息。中心节点210可以决定向控制网络报告信息或转寄信息给与被控制设备相连接的其他无线节点。
在星状网络中,中心节点210提供必要的网络功能如:连接和分离、定时、路由路径等。
无线通讯模块是家庭无线控制子网设备的核心。无线收发器称为子节点220,安置在每个设备上;子网网关和中心节点通过无线收发器来实现。
从功能方面来看,中心节点210是全功能的无线收发器,而家电设备上的子节点220是简化功能的无线收发器。无线网络通信就是这些无线设备之间的通信。
子节点220是各个家庭控制子网设备的通讯接口单元。控制家电的通讯模块接收指令、数据和其它信息,并进行传输。如接收的数据正确,则得到控制命令和有效数据信息,再将其进行传输。这些指令可能来自子网网关、中心节点或其他通讯模块。
此设备根据这些数据信息执行相应的动作,在此动作完成后,返回给WHCN相应的反馈信息,反馈信息指示了当前此设备的现行状态或应答信息。
当然,子节点220也给WHCN传输连接设备的查询信号/反馈信息。
参阅图3,采用对等拓扑时,与星状拓扑不同的是:在网络中,设备之间没有中心、主从,或者等级的区分。设备之间的通讯,仅取决于网络状况、设备功能和许可。如果任何其他节点在某节点无线电范围内,这两个节点会开始通信。对等布局可以产生更复杂的网络形式,例如,网孔拓扑等。对等拓扑可以特设、自组织和自恢复,也支持多跳跃实现信息从一个设备到另一个设备的路由。当然,某个/些节点也可以作为连接简化功能节点的中心节点。
请参阅图4,是本发明的方法中WHCN网络建立和启动的流程图。
步骤S411,中心节点在当前未组网的情况下,将试图建立一个新网络。
步骤S412,中心节点进行能量检测扫描,检查各信道能量情况,查找可能存在的通道干扰。中心节点通过扫描记录各信道能量情况。
步骤S413,中心节点对各信道进行主动扫描,检查各信道网络活动情况,对各信道存在网络情况进行记录。
步骤S414,根据扫描信道的结果,选定一个最干净的信道作为新网络的工作信道。
步骤S415,如果找到一个合适的信道,中心节点将为这个待建网络选择一个网络标识符,这个标识符必须是在所有信道已发现网络中独以一无二的。
步骤S416,一旦WHCN网络标识符选定,中心节点将产生一个短地址,这个短地址在即将建立的这个网络中也是唯一的。
步骤S417,完成上述步骤,中心节点将启动这个网络。中心节点开始发出信标,子节点可以加入到这个网络。
请参阅图5,是本发明的方法中子节点添加到网络的流程图。
假定子节点没有被注册到任何网络或者子节点被从网络里删除。
步骤S511,用户输入子节点标识符(ID号),将子节点注册到中心节点上,中心节点允许设备注册(注册可以通过PDA、INTERNET网络或者中心节点上运行的应用程序等方式进行)。
步骤S512,子节点在每一个信道上监听,查找是否有活动的网络供其注册。
步骤S513,当子节点找到一个网络,子节点将停留在这个通道上向中心节点发出注册请求。
步骤S514,当发出注册请求时中心节点接收到一个注册请求,中心节点验证这个注册请求,如果通过验证,中心节点允许子节点加入网络,将向子节点发送允许加入网络命令。如果未通过验证,则中心节点发送注册失败命令或不做任何应答,子节点接受到注册失败命令或等待应答超时后,进入下一信道。
步骤S515,子节点接收到加入网络命令,将自身加入网络,并向中心节点发送加入网络信息。
步骤S516,中心节点接收到子节点应答,将这个节点注册成网络的一个成员。
步骤S517,中心节点提示这个设备成功注册到网络。
如果中心节点接收正确的响应失败或者接收响应超时,子节点返回步骤S512,以便重复开始进入下一个信道。
如果一个子节点扫描了所有信道仍不能得到注册,将进入下一轮循环。
请参阅图6,是本发明的方法中中心节点发起从网络中删除一个子节点的流程图。
假设一个子节点已经被注册到一个网络。
步骤S611,中心节点发送一个删除命令给要删除的子节点。
步骤S612,子节点接收命令并对命令进行校验。
步骤S613,如果校验通过,子节点将从网络中删除自己,通过内部复位清除所有内部变量为加入另一网络做准备。
步骤S614,中心节点将这个设备从设备列表和网络中删除。
中心节点删除子节点可以要求子节点的删除确认,也可以不要求子节点的删除确认。
请参阅图7,是本发明的方法中子节点发起从网络中删除一个子节点的流程图。
假设一个子节点已经注册到一个网络。
步骤S711,子节点发送一个删除请求命令给中心节点,希望从网络中被删除。
步骤S712,中心节点校验这个命令。
步骤S713,如果校验通过,中心节点将这个节点从网络中删除。
步骤S714,子节点将自己从网络中删除通过内部复位清除所有内部变量为加入另一网络做准备。
子节点自我删除可以要求中心节点的删除确认,也可以不要求中心节点的删除确认。
请参阅图8,是本发明的方法中工作信道选择和建立的流程图。
步骤S811,在WHCN中,无线收发器工作时,首先运行扫描程序。
步骤S812,在扫描过程中,中心节点逐个扫描WHCN中的每个信道。
步骤S813,在每个信道上,中心节点的接收端测量接收信号(例如ED和RSSI)的功率值。
步骤S814,如果中心节点接收到的ED或RSSI高于CCA允许的阈值,报告这个信道处于“工作”状态。
步骤S815,如果接收到的ED或RSSI低于设定的阈值,报告这个信道处于“闲置”状态。
步骤S816,扫描程序运行完,中心节点可以选择一个“闲置”的信道作为初始工作信道。
步骤S817,收发器或中心节点可以将选择信道的信息发送给别的收发器。
步骤S818,中心节点发送信道选择命令并且要求收发器工作在选定的信道。
步骤S819,当一个信道正常通信时,如果接收信号的ED很小,中心节点可以给别的接收器发送命令并且要求改变当前信道。
请参阅图9,下面介绍无线家庭控制子网通信协议体系结构。
无线家庭控制子网的基本网络体系结构包括:物理层(PHY层)910、媒介访问控制层(MAC层)920、网络层930和应用层940,此四层全部在无线模块内;在应用层940的顶部,有一个设备和无线模块共同拥有的设备亚层950。
需要说明的是,设备亚层950直接与设备(如家用电器、感应器等)和制造商有关。在应用中其功能和界面是不同的。在此,不对此层进行详细说明。
应用层(Application Layer)940负责处理特定的应用程序细节,实现设备与WHCN连接的接口和信息交换。通过应用层,在WHCN中的其它设备只需了解虚拟的网络对象描述而不必了解该设备的具体实现细节就能实现控制/状态查询。
WHCN使用网络层通讯中间件来实现统一的网络通讯。网络层(NetworkLayer,NWK)930隐藏底层通讯媒介的复杂性,为应用层940提供设备到设备的通信。其所做的工作包括:
数据管理,将应用程序交给其的数据传送给下面的媒介通讯接口层(MAC/PHY)。
传输服务管理,提供网络路径服务和网络信息,传输控制信息/状态查询在此层中进行,和网络信息共同被传送到预期设备。
由于不同的媒介所采用的码元编码方式,数据通讯速率、CSMA/CA实现方式、硬件连接方式等等各有不同。MAC层(媒介访问控制层,MAC)920就是根据不同的要求和网络来确定不同的媒介通讯接口。在MAC层920中,实现数据链路层部分,包括底层设备驱动程序和网络接口硬件。
物理层(Physical Level,PHY)910处于网络通讯协议的最底层。在无线通信中,物理层负责射频传输/接收端的启动。物理数据服务有助于物理协议数据单元(PDUs)的传输/接收越过物理无线电信道。物理层的主要的流出是无线收发器的活动和释放,能量探测,连接质量说明,频道选择,清晰频道评估,和越过物理媒介传输以及接收。
下面分别介绍各层在组网和通讯时的规范。
PHY层主要完成以下功能:启动和关闭无线收发器;当前通道的能量检测;信道清除估计以满足CSMA/CA方式的要求;信道频率选择;分时方式进行数据发射和接收。
一个设备可以工作在一个或者几个频带上。在不同频带上,调制/扩频方式可以完全不同。在430-435Mhz和787-797MHz频带上,目前采用FSK进行调制和扩频。在以后可能采用DSSS调制方法QPSK和OQPSK调制方式。在将来可以选择2405MHz频带。
为了满足WHCN的发展,在每个频带上,都分配多个工作信道。具体分配如下:
在430MHz频带上,每个工作信道带宽为1MHz,代表WHCN的1#、2#、3#和4#信道:
FC=431+1×(k-1)(MHz)其中,k=1,2,3,4
在787MHz频带上,每个工作信道带宽为1MHz,代表WHCN的5#、6#、7#、8#、9#、10#、11#、12#、13#和14#信道:
FC=788+1×(k-5)(MHz)其中,k=5,6,7,8,9,10,11,12,13,14
在2405MHz频带上,每个工作信道带宽为2MHz,代表WHCN的15#、16#、17#、18#、19#和20#信道:
FC=2405+2×(k-10)(MHz)其中,k=15,16,17,18,19,20
物理层帧通用数据单元的格式可以是:每个PPDU(PHY Layer ProtocolData Unit,简称PPDU)数据包中包括物理层头域和物理层负荷域。物理层头域保证接收设备同步和锁定比特流;物理层负荷域包含长度可变MAC层通用数据帧。
物理层头域包括训练序列域和帧分界域两部分。物理层头域确保发送端和接收端同步,使接收时钟和发送始钟同步,并确定帧接收的开始。接收端使用训练序列域确保码片和符号和一个输入信息同步。
物理层负荷域包括MAC数据和其他信息。通常,无线传输器的用户可允许根据不同的应用修改MAC层。
当用户不能定义物理层负荷域的帧长度,在MAC域中直接定义这个长度。
物理层负荷域长度可变(物理层头域设定长度),并且包含物理层数据包的数据。物理层负荷域包括MAC层帧。
物理层负荷域长度帧长度域长度为8比特,表示物理层负荷域的字节数。
在WHCN中,支持多信道通信,无线模块可以要求或选择工作在不同的射频信道。一般情况下,在WHCN中,中心节点决定WHCN中的工作信道;在一组收发器中,子中心节点决定这组收发器的工作信道。
在WHCN的某工作信道中,中心节点没有探测到传输的信号;或者,在某工作信道上,探测信号值低于接收端的灵敏度,则称所述信道为挂起信道。如果在某个信道上,中心节点探测到传输信号高于允许的阈值,就称这个信道没有挂起。
挂起信道估计(Clear channel assessment,简称CCA)允许阈值定义为:允许10dB,高于接收端的灵敏度。
在WHCN中,信道工作方式基于以下三个方面:使用挂起信道估计估测工作环境;使用CSMA/CA算法估测每个信道数据传输的状态;基于信道质量估测程序,无线子网中的收发器选择理想的工作信道。
工作信道选择和建立的流程具体是:
在WHCN中,无线收发器工作时,首先运行扫描程序。
在扫描过程中,中心节点逐个扫描WHCN中的每个信道。
在每个信道上,中心节点的接收端测量接收信号(例如ED和RSSI)的功率值。
如果中心节点接收到的ED或RSSI高于CCA允许的阈值,物理层会报告这个信道处于“工作”状态。
如果接收到的ED或RSSI低于设定的阈值,物理层报告这个信道处于“闲置”状态。
扫描程序运行完,中心节点可以选择一个“闲置”的信道作为初始工作信道。
收发器或中心节点可以将选择信道的信息发送给别的收发器。
中心节点发送信道选择命令并且要求收发器工作在选定的信道。
当一个信道正常通信时,如果接收信号的ED很小,中心节点可以给别的接收器发送命令并且要求改变当前信道。
WHCN中无线收发器的MAC层处理所有对物理射频信道的访问,并且完成以下功能:管理物理层以及提供数据和命令的接口;基于网络层和应用层命令,执行WHCN的基本功能;支持设备安全模式;采用CSMA/CA方式决定工作信道。
每个MAC帧包括以下几个基本部分:MAC头域,包括帧控制、序列数和地址信息。MAC负荷域,序列长度可变,不同的MAC帧类型含不同的信息。MAC尾域,包括帧校验序列。
MAC帧是一序列域的排列。所有帧的说明顺序是其从物理层被发射的顺序,从左到右,先发射最低有效位。在每个域中,比特位标号从0(最左边、最低有效位)到k-1(最右边、最高有效位),总长度为k比特。对于长度大于一个字节的域,物理层先发射包括最低标号的字节,然后发射包括最高标号的字节。
MAC负荷域包含不同类型帧内容信息,域长度可变。如果帧控制域中安全使能置1,MAC负荷受到安全组件的保护。
MAC尾域即帧校验序列(FCS)长度为16比特,是一个16比特ITU-T循环冗余校验。
FCS计算用16次多项式:G16(x)=x16+x12+x5+1
方法如下:
假设多项式M(x)=b0xk-1+b1xk-2+....+bk-2x+bk-1代表要计算校验和的序列 (模2方式),得多项余式R(x)=r0x15+r1x14+...+r14x+r15
FCS取余式的系数。
在MAC层目前主要有四种帧格式,分别是信标帧、应答帧、命令帧和数据帧。
信标帧信息包是中心节点发送的一个重要的和特别的信息包。
如下的信息被传送到信标信息包:信标信息为所有无线模块的工作建立一个时间尺度,每一个信标信号可以指出下一个信标信息的起始时间;信标信息从网关传播网络信息(包括连接、信道和更多的信息);信标信息包可将从网关的获得的路线信息发给每一个模块。
应答帧来自WHCN中的每个模块,应答帧分为广播型应答帧信息和预定型应答帧信息。
广播型应答帧信息广播应答信息给WHCN中所有的设备并希望所有的节点听到应答信息。
预定型应答帧信息是指当接收端收到来自一个信息源的特殊信息时,基于要求,接收端向发射端返回一个响应。
MAC命令帧格式的MAC头域包括帧控制、WHCN目标标识和地址、WHCN源标识和地址。如果帧控制域中的安全使能设置为0,命令负荷域应该包括MAC指令。如果帧控制域中的安全使能设置为1,根据选择的安全组件,设备对命令负荷域进行处理,以决定MAC指令。
如果对输出MAC命令帧有安全要求,应该根据安全组件,对这个域的字节进行处理。
在帧控制域中,帧类型取值100,表明是一个数据帧。根据要求适当设定数据帧格式中别的域。
如果帧控制域中的安全使能设置为0,数据负荷域应该包括传递给上层的字节序列。如果帧控制域中的安全使能设置为1,根据选择的安全组件,设备对数据负荷域进行处理,以决定传递给上层的字节序列。
数据帧的负荷域包括上层(网络层)要求MAC层发射的字节序列。如果对输出数据帧有安全要求,应该根据对应目标地址之一的安全组件,对这个域的字节序列进行处理。
WHCN中数据传输模式可分为三种数据传输类型:设备发射数据,数据传输给WHCN中的中心节点;设备接收数据,中心节点发射数据;两个对等设备之间数据的传输。
在星状拓扑中,使用前两种传输方式,因为数据只在中心节点和设备之间交换。在对等拓扑中,网络中两个设备也可以交换数据,因此使用三种传输方式。
请参阅图10,下面介绍数据从设备传输到中心节点的机制:
WHCN是一种信标使能的网络,这种网络支持信标的传送。
在一个信标使能的网络中,设备首先监听网络信标。发现信标后,设备与中心节点信标信号同步。当信道闲置时(使用CSMA/CA避免信道阻塞),设备发射数据帧到中心节点。中心节点发射一个可选的应答帧表明成功接收数据。数据传输完成。
请参阅图11,下面介绍数据从中心节点传输到设备的机制:
在一个启动信标的网络中,当中心节点发送数据到设备(收发器)时,在网络中,信标表明数据正在等待。设备周期性的监听网络信标。当设备探测到信息正在中心节点等待,就放射一个要求数据的MAC命令(数据要求)。中心节点发射一个应答帧表明成功接收数据要求。等待的数据通过信道被发送。设备发射一个应答帧表明成功接收数据。传输过程完成。凭借接收到的应答,信息从等待信息列中删除。
为了满足特殊要求,即使没有接收到信标帧,无线节点也向中心节点发送数据要求命令。
如果中心节点发射一个应答帧或者数据等待命令表明成功接收数据要求并且有数据在等待,等待的数据通过信道被发送到节点。设备发射一个应答帧表明成功接收数据。传输过程完成。凭借接收到的应答,在中心节点中,信息从等待信息列中删除。
如果没有数据等待,中心节点向节点发送0字节的数据帧。
请参阅图12和图13,下面介绍在对等网络中数据从设备传输到设备的机制:
在对等网络或星状网络中,一个设备可以和其射频影响范围内的别的设备通讯。为了有效完成这类通讯,设备需要连续接收或者设备间需要彼此同步。
参阅图12,当一个设备向另一个设备要求数据时,设备向期望的设备发射要求数据的命令。期望的设备发射应答帧表示数据要求成功的接收。如果数据正在等待,期望的设备就会发射数据帧。如果没有数据在等待,源设备发射0长度负荷的数据帧,表明没有数据等待。要求数据的设备发射应答帧表示数据帧的成功接收。传输过程结束。
参阅图13,当一个设备向另一个设备传输数据时,设备会让数据等待准备联接,并且向期望的目标设备发射数据等待的MAC命令(数据等待)。目标设备发射一个应答帧表示数据等待信号的成功接收。当源设备接收到目标设备的应答帧,源设备向目标设备发送数据帧。目标设备发射应答帧表示数据的成功接收。
当网络层要求对输入和输出的特殊帧信息提供安全功能时,MAC层负责支持下面的安全模式:非安全模式和安全模式。
非安全模式是MAC默认模式,不提供MAC安全功能。工作在非安全模式的设备不会对输入帧信息有任何安全处理。
安全模式是MAC对输入输出帧信息提供密码保护的机制。当设备工作在安全模式,会使用安全算法。安全算法包括一系列对MAC层帧信息的安全处理。例如,安全算法可以采用DES或AES算法。
网络层位于应用层和MAC层之间。不同通讯媒体要求独立的网络层。网络层的最重要工作是建立网络功能和设置网络路由选择路径。
下面以星形拓扑为例说明网络层的规范。在星形拓扑中,网络被中心节点的信号设备控制,WHCN中心节点在网络中负责启动和维护设备,以及所有其他的设备,如末端设备,直接与WHCN的中心节点联系。
网络层主要功能可划分为网络层数据服务和网络层管理服务。
网络层的数据服务包括:
(1)数据包单元的产生和分开。网络层获得应用层数据包单元(PacketData Unit,PDU)并且产生网络层PDU。采用通过将数据分成多个PDU传递给MAC层的分帧技术。
(2)具体拓扑路由。网络服务支持发送PDU给适当的设备,如通讯的结束位置或通讯链路的下一步。网络层负责在源节点和目标节点之间建立它们所使用的路由.网络层可以定义自己的路由地址结构,使本地WHCN网络上的节点可以建立通讯。
网络层的管理服务包括:
网络层从应用设备获得命令并且指示MAC层完成以下工作:
(1)启动WHCN:中心节点建立一个WHCN或联入存在的WHCN;
(2)发现和确定一个新设备,并建立联系和交换服务;
(3)联接和断开:联入WHCN或从WHCN中断开;
(4)编址技术:一个WHCN中心节点给加入到网络的设备分配地址的能力;
(5)接收控制:设备控制接收器活动时的能力;
(6)动态信道选择:当前信道因为干扰有问题,选择一个更好的信道;
(7)体拓扑维持:维持网络层的拓扑。
网络层通过一系列网络基元实现所有的网络服务。当网络层收到来自应用层的命令和数据,网络层设置这些基元的参数。MAC/PHY层执行这些基元。
请参阅图14,下面介绍WHCN中两个模块间数据的传输流程。
两个模块之间进行数据交流,发送模块网络层调用网络层数据发送基元。当发送端的网络层发送完这个要求命令,MAC/PHY层产生一个确信信息并且返回给网络层。当接收端得到数据,接收端的PHY/MAC向它的网络层汇报一个指示。
请参阅图15,为提高无线通信的准确性,在发射机的网络层,来自应用层的大数据包被分成小数据包,这种小数据包适合MAC层。
分帧的长度原则是:每一子帧的长度都小于NWK层帧长度。除最后一个子帧外,其余子帧的长度相等。除最后一个子帧外,其余子帧的长度必须是偶字节数。
在分帧时,创造出子帧序号并分配给每一个子帧,可应用于MAC负荷中。
在发送端NWK层中设置一个计数器,该计数器有一个最大值,表示发送一个数据包所允许的最长时间。这个计数器从发送第0个子帧开始计数,如果计数器累计到最大值,这个数据包还没有发送完毕,发送端NWK层就抛弃属于这个数据包还没有发送的子帧。
每一个子帧的发送是独立的,这样就允许一个子帧的重发。
一个数据包的若干子帧,在通道不发生拥塞的情况下,作为一个子帧列(burst)发送。
请参阅图16,在接收端的网络层,接收到的子帧,按序号重新组合成完整的数据包,这个过程称为子帧组合。
接收端网络层依靠帧类型、源地址、目的地址、子帧序列号将若干属于同一个数据包的子帧进行组合。
在接收端NWK层中为每一个正在接收的数据包设置一个计数器,该计数器有一个最大值,表示接收一个数据包所允许的最长时间。这个计数器从接收到当前数据包的第0个子帧开始计数,如果计数器累计到最大值,这个数据包还没有接收完毕,接收端NWK层就抛弃所有属于这个数据包的已接收的子帧。如果在计数器已经溢出的情况下,又收到属于此数据包的子帧,接收方向发送方发送ACK帧,并抛弃收到的子帧。
接收方NWK层抛弃收到的重复子帧。对应被抛弃的重复子帧接收方NWK层同样向发送方发送ACK帧。
服务品质和路由程序、MAC功能和信道选择有关系。网络层应该汇报以下信息给应用层。
无线信道联接质量指示。联接质量指示测量(link quality indication,简称LQI)是一个已接收信息包质量或强度特性。使用接收端能量探测、信噪比估计或联合两种方法完成联接质量的测量。
网络拓扑联接。启动网络时,中心节点的网络层汇报网络中所有节点的地址。可被定义成连接表。启动网络时,每个节点设备(收发机)汇报星状网络中中心节点的地址,以及对等网络或网孔网络中相关节点设备的地址。两种信息都来自节点的MAC层。
其它质量信息,网络层可以要求MAC层提供服务质量,MAC层接收质量服务(网络服务)请求后,给一个反馈和指示。
访问信道和信道扫描是基于星状拓扑网络的。
在网络建立之前,或网络中心节点安装信道之前,在网络中的所有无线节点可在一欠缺的信道或者任一安装成被用户配置的节点信道上运作。
一组节点访问信道的流程包括:
启动后,中心节点扫描所有的信道并且决定星状拓扑的工作信道。
中心节点发出信道信息。
无线收发机(节点)从中心节点得到信道信息。
在星状拓扑中,无线收发机将工作在给定工作信道。
在MAC帧中的MAC头标,如果中心节点要改变这个星状拓扑的工作信道,将置信道状态为1,同时,给出下一个操作信道号。
如果节点设备判断信道状态为1,将工作信道转变为当前信道域所指定的信道。
如果节点没有和中心节点连接上,会被动的扫描目前的WHCN网络的操作信道。如果得不到操作信道,会返回到默认信道。
信道扫描是启动程序中基本的部分。扫描基元可以对一系列给定的信道进行信道初始化。设备使用信道扫描测量信道上的能量,并且寻找中心节点,或者在扫描设备范围内,寻找中心节点发射的信标帧。能量探测扫描过程中,MAC层不应该处理任何从PHY层数据服务接收到的帧。网络层可以给出扫描要求,PHY层执行完扫描任务后,MAC层会向网络层发送一个确认信息。有如下两种扫描运作:WHCN中心节点的积极扫描运作。目的是为全部WHCN网络找出可用的和低干扰的信道。WHCN节点的被动扫描操作运作。目的是再跟踪WHCN的运作信道和恢复与WHCN的联系。
下面介绍在网络层实现启动WHCN流程:
完成信道扫描并且选择了一个适合的WHCN标识后,中心节点或网关会启动一个WHCN。网关或中心节点设置一个WHCN地址。
通过使用网络启动,网关或中心节点被命令启动一个WHCN。接收到网络启动基元后,MAC层设置当前信道为工作信道和WHCN标识。完成这些后,MAC层会汇报网络启动确认基元响应并且工作为WHCN中心节点。网络启动,汇报结果。
网关或中心节点使用网络启动要求基元开始发射信标。接收到这个基元后,MAC层会设置WHCN标识以及在信标帧的WHCN源标识域使用这个值。信标帧的源地址域应该包含WHCN地址的信息。
在WHCN中,中心节点或网关发射信标帧表示自己的存在。通过网络启动要求基元,完成信标帧发射的初始化。接收到这个基元后,借助设备联接的WHCN标识和设备联接的地址,中心节点或网关的MAC发射信标。
信标帧传输数据一律为每间隔信标帧周期发送周期一信标帧。所有的无线节点通过在空间中侦听信标帧来决定不同的中心节点,然后无线节点决定与哪个中心节点连接。
同时,中心节点设备的下一个更高层可要求允许一个设备为某固定时期连接。因此,设置NWK层连接允许标志在其可接受设备到网络中的某固定时期之中设置。
设备要联入一个中心节点设备的过程包括:
为了最优化WHCN的联接过程,设备首先追踪中心节点的信标。
WHCN中的节点,通过网络连接请求基元,仅和现存的WHCN联接,而不是启动自己的WHCN。
首先,收发机的网络层要求发送网络连接请求基元到MAC层和PHY发送基元。
中心节点一旦收到网络连接请求信息,中心节点的网络层会将设备UID与预先登记的UID列表比较。
如果设备UID在设备列表中,中心节点会将分配好的WHCN节点地址报告给中心节点的应用层。
同时,中心节点网络层告诉应用节点这个节点地址。
响应信息被返回到联接设备的收发机,联接收发机在网络层,会产生一个联接状态的确认信息。
完成了上面的程序,设备节点就联接到WHCN中的中心节点。
当然,如果中心节点的网络层没有在设备列表中找到设备UID,中心节点的网络层将会拒绝设备连接。
网络层实现设备断开过程:
已经联接的设备或中心节点可以发出断开要求,要求设备从WHCN中断开。要断开设备的网络层产生一个断开基元,并且被这个收发机的MAC和PHY层在断开命令中发送。
MAC层执行网络断开请求后,给网络层一个响应。
中心节点一旦收到这个命令,就收集以下命令并且汇报给网络层。中心节点的网络层执行断开并且不反馈反应。
从中心节点接收等待的数据过程:
在启动信标的WHCN中(星状网络),一个设备通过检查接收到的帧的内容,可以决定是否有帧正在等待。如果设备地址包含在信标帧地址序列中,设备的网络层会发送一个应答要求域设置为1的数据要求命令给中心节点。
还有另外一种情况,设备要求中心节点发送信息到设备。
设备的网络层产生网络登记请求基元。这些基元源自网络层。MAC/PHY层执行并且发送数据要求命令给中心节点。
设备的MAC/PHY层执行完网络登记请求基元后,会产生确认信息到设备的网络层。
成功接收到数据要求命令后,中心节点会发送一个应答帧来确认接收。如果设备有足够的时间决定是否设备有一个等待帧并且能在MAC应答等待周期内发送应答帧,设备会根据是否确实有一个帧在等待,来设置应答帧的帧等待域。接收到帧等待域设置为0的应答帧,设备断定中心节点没有数据在等待。
接收到帧等待域设置为1的应答帧后,设备启动接收端,在信标启动的WHCN中,接收端寻找至多最大帧响应时间个符号周期,在信标关闭的WHCN中,接收端工作数个符号周期,从中心节点终端接收相应的数据帧。如果中心节点有要求设备等待的数据,中心节点会发送数据帧到设备。如果中心节点没有要求设备等待的数据,中心节点会发送不要求应答帧并且负荷长度为0的一个数据帧给设备,表明现在没有数据,如果要求的设备确实从中心节点接收到一个数据帧,设备应该发送一个应答帧确认接收。如果从中心节点接收的数据帧的帧等待域设置为1,设备还得等待更多的来自中心节点的更多的数据。在这种情况下,设备通过给中心节点发射一个新的数据要求命令接收数据。
下面描述应答命令和应答要求域的关系:
发送数据或者MAC命令帧时,应答要求域应该适当取值。
应答要求域(acknowledgment request,简称AR)设置为0的发射的帧不会被应答。源设备认为帧信息传输成功。
接收端要应答那些应答要求域设置为1的发射帧。如果期望的接收端正确接收到帧,接收端产生并且发送一个应答帧,这个应答帧包括与正在被应答的数据帧或MAC命令帧相同的数据序列数。
下面描述重发机制:
发送应答要求域设置为0的设备认为发送被成功接收,因此不会执行重新发射程序。
发送一个应答要求域设置为1的数据帧或MAC命令帧的设备,等待最多MAC应答等待个符号周期来接收响应的应答帧信息。
如果在MAC应答等待个符号周期内接收到一个应答帧并且应答帧包含和源发射相同的数据序列数,设备认为这次传输成功并且不会有进一步的行为。如果在MAC应答等待个符号周期内没有接收到一个应答帧并且应答帧包含和源发射不相同的数据序列数,设备认为这次传输失败。设备会再次重发帧。程序会重复最大重发时间个符号周期。
下面描述注册节点清除过程:
应用层请求重新设置节点,然后,网络层和MAC层恢复到初始条件。网络重新设置要求基元处理优先级高于网络启动要求和网络联接要求基元,接收到这个基元后,网络层和MAC层被设置为初始条件,清除所有内部变量恢复成自定义的值。重新设置无线节点后,网络层汇报重新设置确认基元到应用层。
下面描述启动和关闭收发器过程:
收发器的接收端不需要总是处于工作状态,设备或网络层控制接收端的启动和关闭。基元定义设备怎样在给定的时间启动和关闭接收端。
接收活动包括启动、检验和禁止。通过说明接收器在正常情况下运作。检验说明接收器仅仅听从信标信号运作。禁止说明关闭接收器的运作。
接收端的工作时间给出执行这些接收活动的持续时间,单位可是字节/传输时间或MS。
MAC/PHY层实现这些基元后,MAC层向网络层发送确认信息报告接收端的状态。
应用层(Application Layer)位于整个WHCN体系的顶部,也是WHCN和具体设备之间统一接口层。
应用层主要完成如下功能:
(1)应用层发送对无线模块的设备控制命令。
(2)应用层监视无线模块的操作状况。
(3)应用层收集并格式化全部的设备信息和指挥命令。
(4)应用层通过设备命令给WHCN网络层发送设备请求和状态。
(5)应用层从模块的网络层收集网络信息(状态、数据、命令)。应用层会做一简单处理。
请参阅图17,示出信息在应用层和网络层之间的交换流程。此处,两者之间定义两种信息,询问/命令和ACK。
通信和应用层帧的格式化在应用层和网络层之间进行。
使用者或设备可发送命令控制相连接模块的运作。包括:启动/关闭模块运作、设置模块操作频道、请求模块扫描所有运作频道并可在一个可用频道中工作。
启动/关闭模块。设备给连接模块发送启动操作命令。该命令使模块从睡眠模式中唤醒进入到工作模式。设备给连接的模块发送停止操作命令。该命令使模块从工作模式返回至睡眠模式。无论该模块接收到的是启动命令还是停止命令,都会给设备提供一个快速的ACK,即使其正在执行命令。
设置操作频道。设置给连接模块发送询问。询问要求模块在给出的频道中工作。当要求模块的频带频道打开或者不能打开频道时,网络层给应用层发回ACK。
扫描操作群和设置操作频道。设备给连接模块发送请求,要求模块扫描所有的操作频道,并确定一个有用频道地址。
所有设备,包括网关和其他设备,自己的询问或网关(或其他设备)的需求加入WHCN,在网络层部分,详细的网络功能已讨论和定义。下面介绍网络层和应用层之间的相应活动。
设备和WHCN相连方式包括:设备直接申请和WHCN连接,网关注册确认相连接的设备;如果网关发现有一些设备未被注册,网关可以发送询问去查询未注册设备。
设备和网络信息在网关,移动控制中心和设备之间的交换包括:申请下载设备文件,网关询问和设备连接的模块报道的设备信息;上载设备文件,设备给网关传递设备信息;申请下载设备注册表,移动控制中心要求网关提供连接信息;上载设备注册表,网关给移动控制中心发送连接信息。
设备从WHCN断开方式包括:设备询问与WHCN断开;网关询问设备与WHCN断开。
实现设备与WHCN连接的过程如下:
从设备应用层发出设备申请注册询问:
设备应用层产生这个命令格式,格式被转换成网络层基元,由MAC和PHY层执行网络层的基元。WHCN的网关注册该模块,与设备连接,通过设备申请注册格式,设备,模块完成联接程序。联接完成后,无线模块在WHCN中注册并且得到一个WHCN地址。
网关注册确认后,设备获得网关报告及在WHCN中的节点地址。然后,从设备的网络层到应用层要求一个ACK。如果连接失败,ACK也要求报道失败。
网关应用层查询网关注册确认。网关收到设备申请注册的信息帧后。将设备UID和储备的设备UID进行比较,当确认应用设备属于该WHCN时,会给网关的应用层发送网关注册确认。
网关的网络层会给相连接的设备一个WHCN地址并发送确认命令。
当连接的设备收到这个确认后,会给网关回发一个ACK,然后,网关的网络层会给网关的应用层发送一个ACK。
网关的应用层中查问网关查询未注册设备:
当网关找到一些先前被网关注册的设备ID,没和目前的WHCN连接时,应用层就会发送网关查询未注册设备到网络层去寻找这个设备。
当网关的模块和目标设备连接时,会给网关报告连接成功信息。如果没有成功,一定时间间隔之后,会给网关报告连接失败信息。
设备和网络信息在网关,移动控制中心和设备之间交换过程如下:
申请下载设备信息:网关或或者其他设备询问目标设备并要求报告设备信息。网关从应用层发送一个询问到网络层。网络层从源设备或网关获得应用询问。然后网络层执行所有网络操作去和预期连接的设备模块通讯。目标程序(来自连接的模块)将在数据或ACK信号中回复设备信息。当源设备模块在固定的时间内得到或得不到它的必要设备信息时,网络层就会向应用层给出ACK回复。在ACK里报告设备信息。
上载设备信息:设备发送设备信息到目标设备或网关。上载设备信息是说设备或者网关直接发送信息到网关或目标设备。发送的包长度由网络层决定。源设备的网络层获得上载设备信息,MAC/PHY直接发送这个信息到目标模块(设备)。当源设备的网络层从目标设备获得成功的ACK信号,或没有在固定的时间内收到ACK信号时,源模块的网络层会给出一个ACK到它的应用层。
申请下载设备注册表:指命令/询问从移动控制中心到网关并查问网络连接信息。这是一个在移动控制中心和网关之间的特殊询问。模块网络层在移动控制中心会处理这个UAI,MAC/PHY层会给网关模块发送这个询问。当移动控制中心的网络层从网关获得请求网络连接信息时,或在固定时间内没收到时,移动控制中心的网络层DUO会给出一个带有网络信息的ACK到应用层中。
上载设备表注册表:指网关发送网络连接信息到移动控制中心。当网关的网络层从移动控制中心获得成功的ACK信号,或者在固定的时间内没有获得ACK信号时,网关的网络层会给出一个ACK到应用层。
通过以下过程实现设备与WHCN断开:
当设备不得不和网络断开,或者网关以任何理由期望设备和当前WHCN断开时,设备的应用层会给网关发送一个询问,或者网关将从它的应用层给出一个命令。
设备申请注销是指设备与WHCN断开。原则上,来自源设备的询问不需要网关的ACK.当网关的模块收到来自源设备MAC/PHY的询问时,网关将设备和WHCN断开。
网关申请注销设备指网关期望把设备和WHCN网络断开。从这个询问中,可能不需要来自目标模块或设备网络层的ACK。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。