CN117896809A - 低功耗的数据链路层协议的实现方法及应用 - Google Patents
低功耗的数据链路层协议的实现方法及应用 Download PDFInfo
- Publication number
- CN117896809A CN117896809A CN202410106429.2A CN202410106429A CN117896809A CN 117896809 A CN117896809 A CN 117896809A CN 202410106429 A CN202410106429 A CN 202410106429A CN 117896809 A CN117896809 A CN 117896809A
- Authority
- CN
- China
- Prior art keywords
- equipment
- time
- target
- data
- agent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000000737 periodic effect Effects 0.000 claims abstract description 78
- 238000004891 communication Methods 0.000 claims abstract description 67
- 230000005540 biological transmission Effects 0.000 claims abstract description 29
- 230000006855 networking Effects 0.000 claims abstract description 9
- 230000003993 interaction Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 10
- 239000002131 composite material Substances 0.000 claims description 7
- 230000008093 supporting effect Effects 0.000 claims description 6
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 230000001960 triggered effect Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 19
- 238000013461 design Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000005265 energy consumption Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000001976 improved effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0225—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
- H04W52/0248—Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal dependent on the time of the day, e.g. according to expected transmission activity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W56/00—Synchronisation arrangements
- H04W56/001—Synchronization between nodes
- H04W56/002—Mutual synchronization
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/02—Data link layer protocols
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了低功耗的数据链路层协议的实现方法及应用,涉及无线通信技术领域。所述方法用于对功耗敏感的第一设备和对功耗不敏感的第二设备在数据链路层的通信,第二设备保持射频收发机开启,其中,在设备组网阶段,设备建立连接时由第一设备提供一个间隔时间参数以用于建立连接后该第一设备同第二设备维持链路同步;在连接通信阶段,根据间隔时间发起周期性握手,通过周期性握手来维持设备之间的低功耗链路;在第一设备在低功耗模式时,第二设备能够利用所述周期性握手的时机向第一设备同步来自其它设备的数据信息。本发明提供了一种不同于现有WiFi、蓝牙、Zigbee等的超低功耗链路技术,提供了更节能和高效的数据传输。
Description
技术领域
本发明涉及无线通信技术领域,尤其涉及一种低功耗的数据链路层协议的实现方法及应用。
背景技术
低功耗链路(Low Power Link)是指在通信系统中采用了优化设计,以降低功耗消耗的链路。由于现代通信系统对电池寿命和能源效率的要求越来越高,开发低功耗链路也越来越重要。目前,低功耗链路在物联网IOT、移动通信和无线传感器网络等领域有着广泛的应用。它不仅可以延长设备的电池寿命,还可以减少能源消耗,提高系统的可靠性和可持续性。
在进行低功耗链路设计时,通常可以从硬件结构、协议选择和优化算法等方面进行设计,目前较为常见的低功耗链路技术可以包括:1)低功耗硬件设计:使用低功耗的电路设计技术,如功率管理单元(Power Management Unit)和时钟门控电路等,可以有效减少功耗。2)数据链路层优化:通过改进数据链路层协议,如使用低功耗蜂窝网络(Low-PowerWide Area Network,LPWAN)或低功耗蓝牙(Bluetooth Low Energy,BLE)等来减少数据传输时的能量消耗。3)数据压缩与优化:采用压缩算法对传输的数据进行压缩,在保证数据可靠性的前提下减少数据传输量,从而降低功耗。
其中,数据链路层优化是指在通信系统的数据链路层实现中采用了优化设计以降低功耗消耗的技术。除了当前公知的无线技术WiFi、蓝牙、Zigbee等提供的超低功耗链路,现有技术也提供了一些低功耗的私有协议链路,其是针对某些特定应用场景或行业的低功耗链路通信需求设计的自定义协议,这种私有链路协议通常用于无线传感器网络、物联网设备、电力系统、智能家居系统、智能建筑通信系统等低功耗应用中,旨在优化能量消耗、延长电池寿命并提高系统效率。
本发明就是基于实际的低功耗应用需求,提供了一种不同于WiFi、蓝牙、Zigbee等现有协议的私有协议链路,用于实现低功耗链路通信。
发明内容
本发明的目的在于:克服现有技术的不足,提供了一种低功耗的数据链路层协议的实现方法及应用。本发明设计的低功耗的数据链路层协议,提供了一种不同于WiFi、蓝牙、Zigbee等现有技术的超低功耗链路技术,提供了更节能和高效的数据传输配置,尤其适用于物联网设备的无线组网通信。本协议仅定义数据链路层,物理层可以充分利用已有技术的物理层。
为实现上述目标,本发明提供了如下技术方案:
一种低功耗的数据链路层协议的实现方法,协议用于对功耗敏感的第一设备和对功耗不敏感的第二设备在数据链路层的通信,包括设备组网阶段和连接通信阶段,所述第二设备保持射频收发机开启处于接收状态;
设备组网阶段:支持低功耗的第一设备获取周边环境中的第二设备信息;向选择的目标第二设备发出入网请求,目标第二设备触发对前述第一设备的身份认证;身份认证成功后第一设备加入所述目标第二设备组建的网络,第一设备与所述目标第二设备建立连接;其中,在建立连接时,第一设备提供一个间隔时间Interval参数,所述间隔时间用于建立连接后该第一设备同目标第二设备维持链路同步;
连接通信阶段:第一设备与目标第二设备连接成功后,第一设备在每个所述间隔时间向目标第二设备发起周期性握手,通过所述周期性握手来维持第一设备同目标第二设备之间的低功耗链路;其中,所述第一设备配置有低功耗模式,在所述低功耗模式下,所述目标第二设备能够利用周期性握手的时机向第一设备同步来自其它设备的数据信息;在有数据发送时,所述第一设备能够唤醒自己。
进一步,在连接通信阶段,所述目标第二设备还被配置为:利用周期性握手的时机,让第一设备退出低功耗休眠模式;
和/或,所述第一设备被配置为:利用周期性握手的时机,同目标第二设备重新协商链路参数,包括根据应用需求重新配置所述间隔时间的大小。
进一步,所述第一设备的状态机被配置为:包括对应低功耗模式的休眠状态DeepSleep,以及设备连接状态Agent connecting和设备连接完成状态Agent connected;所述设备连接状态Agent connecting为复合状态,里面包括发现子状态Discovering和认证子状态Authentication;
第一设备开机上电后进入前述设备连接状态的发现子状态Discovering以获取周边环境中的第二设备信息;第一设备同目标第二设备认证自己的身份时,第一设备进入认证子状态Authentication;当前述复合状态中的任一子状态发生超时,所述第一设备进入前述休眠状态Deep Sleep;
当第一设备的身份认证成功时,第一设备接入目标第二设备网络,进入前述设备连接完成状态Agent connected;
当设备连接完成状态Agent connected发起了断开连接事件时,第一设备进入休眠状态Deep Sleep。
进一步,当第一设备的身份认证失败时,第一设备再次进入发现子状态Discovering以重新尝试接入目标第二设备的网络;当重连尝试次数小于某个预设次数阈值时,第一设备反复尝试;当重连尝试次数大于等于预设次数阈值时,第一设备进入前述休眠状态Deep Sleep。
进一步,在所述休眠状态Deep Sleep下,所述第一设备被配置为:获取用户触发的设备入网操作信息,根据所述设备入网操作信息,重新进入发现子状态Discovering,并在身份认证成功后加入新的第二设备网络。
进一步,在所述发现子状态Discovering下,所述第一设备被配置为:与周边环境中处于工作态的第二设备进行交互,收集周边环境中的第二设备的响应信息,向用户输出可选择的第二设备以供用户选择,所述响应信息包括第二设备向第一设备反馈的设备名称、时钟信号与支持的服务类型信息;以及,获取用户选择的目标第二设备,向目标第二设备发送连接请求Connect命令;
所述第二设备在响应第一设备时被配置为:选择随机的回避时间而不是立刻返回消息;所述回避时间被配置为在第一设备预定的接收窗口对应的时间段以内,即不早于所述接收窗口的起始时间且不晚于所述接收窗口的结束时间。
进一步,所述第一设备发送连接请求Connect命令后,开启接收窗口,在前述接收窗口等待目标第二设备的确认信号ACK;当第一设备在接收窗口超时前收到ACK时,第一设备进入身份认证流程;否则,根据重连尝试次数选择下一次的重连时间;
其中,所述目标第二设备在ACK中为该第一设备分配了用于低功耗链路中通信的逻辑地址,第一设备进行身份认证时应用所述逻辑地址;
所述连接请求Connect命令中包括目标第二设备的网络地址和前述间隔时间Interval参数,所述间隔时间参数的大小由第一设备进行配置。
进一步,还包括步骤:当第一设备在接收窗口超时前未收到目标第二设备的ACK时,对当前重连尝试次数N进行加1运算,所述N为大于等于1的自然数;
判断当前N值是否小于预设次数阈值;
在当前N的值小于预设次数阈值时,根据重连尝试次数选择下一次的重连时间,包括步骤:获取预定的单元时间unit,所述单元时间unit根据无线通信的物理层特点进行配置;根据前述单元时间unit和前述重连尝试次数值N,配置第N次重连的时间,所述重连的时间对应一个时间区间,所述时间区间为单元时间unit的倍数,且时间区间与N呈正向变化,随着N的增大,所述时间区间对应的时间长度增加;当时间到达前述配置的时间区间时,第一设备向前述目标第二设备发起连接请求Connect命令;其中,对于第N次重连,其对应的时间区间为:从上一次接收窗口失败后的一段保护时间算起的2N个单元时间unit,即2N*unit;
在当前N的值大于等于预设次数阈值时,判定第一设备接入网络失败,第一设备进入前述休眠状态Deep Sleep。
进一步,所述第一设备根据间隔时间Interval参数来向目标第二设备发送周期性握手请求,发送请求完成后,开启接收窗口;
当一个周期间隔时间中的握手失败时,将第一设备的接收窗口结束到本周期间隔时间结束的这一段时间区间配置为重传窗口Retry Window;所述第一设备在重传窗口中选择一个随机值作为发射点来重新尝试与目标第二设备握手;
以及,当所述第一设备在预设的多个周期间隔时间内均未握手成功,判定该第一设备的低功耗链路丢失,此时,第一设备重新连接新的第二设备或者第一设备进入休眠状态。
进一步,当接入目标第二设备网络的多个第一设备配置了相同的间隔时间参数时,为各第一设备对应的间隔时间配置一个随机的等待时间random以延迟该第一设备发起周期性握手的时间点;此时,第一设备发起周期性握手的时间点是其对应的间隔时间的起点到来时刻再加上对应的等待时间random。
进一步,在连接通信阶段,利用周期性握手的时机,所述第一设备和第二设备进行实现长数据包的交互;
此时,在数据链路层的数据包的包头里,配置有更多数据指示位Moredata域,所述Moredata域的长度被配置为一个比特位,当Moredata域置为1时表示后续还有下一包数据,当Moredata域置为0时表示后续没有下一包数据;
所述第一设备与目标第二设备Agent的通信交互步骤如下:
S100,初始化参数Retry_count,令Retry_count=0;
S200,等待下一个间隔时间Interval起始点;
S300,间隔时间Interval起始点到时,在对应的random区间选择发送点;
S400,等待发送点到来;
S500,发送点到来,发送周期性握手请求;如果周期性握手请求后还有更多数据,更多数据指示位Moredata域置为1,否则置为0;
S600,发送完成后,开启接收窗口;
S700,判断是否收到Agent的确认信号ACK,以及是否发生周期性握手的重传Retry;当未收到Agent的ACK,且Retry已发生时,执行步骤S800;当未收到Agent的ACK,且Retry未发生时,执行步骤S900;当收到Agent的ACK时,执行步骤S1000;
S800,对Retry_count执行加一运算,并判断当前Retry_count是否大于预设的最大重传次数Max_Retry_Number;当Retry_count大于Max_Retry_Number时,判定同Agent的链路已断开,第一设备进入休眠状态,结束;当Retry_count小于等于Max_Retry_Number时,返回执行步骤S200;
S900,在重传窗口对应的时间区间中选择周期性握手的重传发送点;等待重传发送点,返回执行步骤S500;
S1000,解析Agent的数据包包头的更多数据指示位Moredata域是否置位;当Agent的数据包包头的Moredata=0,且第一设备无数据发送时,结束本轮周期性握手,返回执行步骤S200;否则,执行步骤S1100;
S1100,开启下一轮长数据收发模式;
S1200,发送本轮数据或者确认信号ACK,如果发送完本轮数据后,还有更多数据,则将第一设备数据包的Moredata域置为1,否则置为0;
S1300,接收Agent的数据或者确认信号ACK,返回执行步骤S1000。
本发明还提供了一种基于代理设备的低功耗通信系统,系统包括WiFi接入点AP、支持低功耗的客户终端STA和代理设备,所述AP用于接入互联网,所述客户终端STA对功耗敏感,所述代理设备对功耗不敏感;所述代理设备与AP通信连接;
所述客户终端STA与代理设备通过前述的方法来建立低功耗链路通信;
在无数据传输时,所述代理设备代替客户终端STA与AP通信,所述客户终端STA进入低功耗模式,此时代理设备利用周期性握手的时机将AP的状态信息同步给客户终端STA;
在客户终端STA和AP之间需要传输数据时,代理设备利用周期性握手的时机让客户终端STA退出低功耗模式,以同该客户终端STA做一次链路交接,通过所述链路交接,所述客户终端STA接管代理设备同AP的链路,使得客户终端STA能够与AP直接进行通信。
进一步,所述客户终端STA为低功耗物联网IOT设备,包括各种传感器设备;
所述代理设备与AP采用WiFi连接以进行通信;
所述客户终端STA与AP采用WiFi连接以用WiFi直接传输数据。
本发明还提供了一种网络设备,包括:
至少一个处理器;以及
至少一个存储器,其包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述网络设备能够:
保持射频收发机开启以保持接收状态;接收终端设备的入网请求,对终端设备进行身份认证,身份认证成功后建立与终端设备的连接;其中,在建立连接时,获取终端设备提供的间隔时间Interval参数,所述间隔时间用于建立连接后该终端设备同所述网络设备维持链路同步;
以及,在与终端设备建立连接后,接收该终端设备根据所述间隔时间发送的周期性握手请求,通过所述周期性握手来维持同该终端设备之间的低功耗链路;其中,在终端设备处于低功耗模式时,所述网络设备能够利用周期性握手的时机向该终端设备同步来自其它设备的数据信息。
本发明还提供了一种终端设备,包括:
至少一个处理器;以及
至少一个存储器,其包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述终端设备能够:
获取周边环境中的代理设备信息,向选择的目标代理设备发出入网请求;身份认证成功后加入所述目标代理设备组建的网络,与所述目标代理设备建立连接;其中,在建立连接时,终端设备提供一个间隔时间Interval参数,所述间隔时间用于建立连接后该终端设备同所述目标代理设备维持链路同步;
以及,在与目标代理设备建立连接后,终端设备在每个所述间隔时间向目标代理设备发起周期性握手,通过所述周期性握手来维持同该目标代理设备之间的低功耗链路;其中,所述终端设备配置有低功耗模式,在低功耗模式下,通过周期性握手的时机获取目标代理设备发送的来自其它设备的数据信息以进行同步;在有数据发送时,终端设备能够唤醒自己。
本发明由于采用以上技术方案,与现有技术相比,作为举例,具有以下的优点和积极效果:本发明设计的低功耗的数据链路层协议,提供了一种不同于现有无线技术WiFi、蓝牙、Zigbee的超低功耗链路技术,提供了更节能和高效的数据传输配置,尤其适用于物联网设备的无线组网通信。本协议仅定义数据链路层,物理层可以充分利用已有技术的物理层如蓝牙、WiFi、Zigbee等的物理层设计。
附图说明
图1为本发明提供的Agent与Station(简称STA)组成的网络拓扑结构图。
图2为本发明提供的Agent与Station通信时的数据包时序图。
图3为本发明提供的Station的状态机图。
图4为本发明提供的Station进入发现子状态后的设备信息交互示例图。
图5为图4对应的数据包时序图。
图6为本发明提供的Station与Agent进行连接时的设备信息交互示例图。
图7为图6对应的数据包时序图。
图8为本发明提供的Station连接入网过程的流程图。
图9为本发明提供的各次重连对应的时间区间图。
图10为本发明提供的低功耗链路周期性握手的数据包时序图。
图11为本发明提供的设置随机的等待时间后的数据包时序图。
图12为本发明提供的周期性握手失败的两种情况下的数据包时序图。
图13为本发明提供的两种情况下周期性握手重传的数据包时序图。
图14为本发明提供的Station有数据传输给Agent时Moredata域的变化图。
图15为本发明提供的Agent有数据传输给Station时Moredata域的变化图。
图16为本发明提供的Station与Agent进行连接通信的流程图。
图17为本发明提供的数据链路层的数据包的包格式图。
具体实施方式
以下结合附图和具体实施例对本发明公开的低功耗的数据链路层协议的实现方法及应用作进一步详细说明。需要说明的是,对于相关领域普通技术人员已知的技术(包括方法和装置)可能不作详细讨论,但在适当情况下,上述已知的技术被视为说明书的一部分。同时,示例性实施例的其它示例可以具有不同的值。本说明书附图中所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定发明可实施的限定条件。在本申请实施例的描述中,“/”表示或的意思,“和/或”用于描述关联对象的关联关系,表示可以存在三种关系,比如,“甲和/或乙”表示:单独存在甲乙,单独存在乙,同时存在甲和乙这三种情况。在本申请实施例的描述中,“多个”是指两个及以上,“多级”是指两级及以上。
实施例
本发明提供了一种不同于现有无线技术WiFi、蓝牙、Zigbee等的低功耗链路(LowPower Link),用于对功耗敏感的第一设备和对功耗不敏感的第二设备在数据链路层的低功耗通信,尤其适用于低功耗物联网设备(对功耗敏感)在低功耗模式(比如休眠sleep状态)与其它对功耗不敏感的网络设备(比如代理设备)的信息同步;在需要时,还可以通过此低功耗链路实现链路交接(handover)等功能。
下面以低功耗物联网IoT设备Station为例,结合具体应用场景详细描述本发明提供的低功耗链路技术。
物联网设备Station可以是各种信息传感器Senor设备和控制器,也可以是各种智能化的家用电器。物联网设备通过多种方式接入互联网。WiFi物联网接入方式是当前应用最广的物联网接入方式之一。通常,WiFi物联网设备直接通过WiFi接入点AP(AccessPoint,也称为无线路由器)接入网络。WiFi接入点AP是一个无线局域网WLAN中的设备,它充当无线网络的基础设施设备,用于将客户终端Station(也称STA)连接到网络。WiFi接入点AP具有无线信号发射和接收功能,并与有线网络进行连接,以便将无线数据传输到互联网。
本发明在物联网设备Station和WiFi接入点AP引入对功耗不敏感的代理设备Agent,并基于代理设备Agent、物联网设备Station、WiFi接入点AP三者之间的通信特点和需求,提供了一种低功耗的数据链路层协议,协议用于物联网设备Station同代理设备Agent之间的低功耗通信。
具体的,提供了一种基于代理设备的低功耗通信系统,包括WiFi接入点AP、支持低功耗的客户终端STA和代理设备。所述AP用于接入互联网。所述客户终端STA对功耗敏感,一般通过电池供电;所述代理设备对功耗不敏感,可以通过电网供电。所述代理设备与AP连接,优选的,代理设备与AP采用WiFi连接以用WiFi进行通信交互。
所述客户终端STA与代理设备通过如下方法来建立低功耗链路通信,建立通信的过程中所述第二设备保持射频收发机开启处于接收状态。
设备组网阶段:支持低功耗的客户终端STA开机后,获取周边环境中的代理设备信息;向选择的目标代理设备发出入网请求,目标代理设备触发对前述客户终端STA的身份认证;身份认证成功后客户终端STA加入所述目标代理设备组建的网络,客户终端STA与所述目标代理设备建立连接。其中,在建立连接时,客户终端STA提供一个间隔时间Interval参数,所述间隔时间用于建立连接后客户终端STA同目标代理设备维持链路同步。
连接通信阶段:客户终端STA与目标代理设备建立连接后,客户终端STA在每个所述间隔时间Interval向目标第二设备发起周期性握手handshack,通过所述周期性握手handshack来维持客户终端STA同目标代理设备之间的低功耗链路。其中,所述目标代理设备能够利用周期性握手handshack的时机向第一设备同步来自WiFi接入点AP的数据信息,比如AP的状态信息。
所述周期性握手是一种具有周期性特征的握手handshack,它在低功耗链路里面反复出现。握手也称交握,是在通信连接建立之后、信息传输开始之前的一种信息交互行为,一次握手对应一次信息交互。所述客户终端STA在每个间隔时间周期内可以发起一次握手handshack请求,当Agent收听到Station发出的前述handshack请求时,Agent进行响应,完成信息交互,从而便于后期进行信息传输。
对于客户终端STA来说,在无数据传输时,由所述代理设备代替该客户终端STA与AP通信,所述客户终端STA进入低功耗模式,此时代理设备利用周期性握手的时机将AP的状态信息同步给客户终端STA。
所述状态信息可以包括时钟信息,如此可以更新客户终端STA的时钟信号,使该时钟信号保持与AP的同步。因为在代理设备Agent代理客户终端STA同AP通信的期间,客户终端STA无法获取AP的状态信息,而随着时间的流逝,客户终端STA和AP之前的时钟偏差可能会越来越大,因此由代理设备利用周期性握手的时机将AP的时钟信息同步给客户终端STA,以保持时钟同步。
所述状态信息还可以包括会影响客户终端STA与AP后续的数据交互的AP状态的改变,比如网络中发生的管理数据包可能会改变AP状态,其后期可能会影响客户终端STA与AP后续的数据交互,因此由代理设备利用周期性握手的时机将AP的状态信息同步给客户终端STA,以保持状态同步。涉及这样的更新数据并不频繁,数据量通常也不大,因此配置为利用周期性握手的时机来传输,基本不会额外增加客户终端STA的功耗。
而在客户终端STA和AP之间需要传输数据时,所述代理设备可以利用周期性握手的时机让客户终端STA退出低功耗模式(即从休眠状态唤醒),以同该客户终端STA做一次链路交接handover。通过所述链路交接handover,所述客户终端STA接管代理设备同AP的链路,使得客户终端STA能够与AP直接进行通信。优选的,所述客户终端STA与AP采用WiFi连接以用WiFi直接传输数据,如此,可以拥有WiFi带来的高速率传输性能。
所述的链路交接,是根据数据传输需要,对客户终端STA和所述AP的通信链路进行调整,使得该链路要么由STA和AP直接交互,要么由代理设备Agent同AP交互(代理设备Agent代替STA同AP交互)。前者可以表示为可以表示为组(AP, STA),后者可以表示为组(AP, Agent)。
具体实施时,可以将客户终端STA与AP之间的通信链路配置具有两种状态,分别为活跃状态Active Mode和节电状态PowerSave Mode(简称PS Mode)。在任一时刻,通信链路仅处于其中一种状态下,即要么处于活跃状态Active Mode,要么处于节电状态PS Mode。
然后,基于前述两种状态,将AP与客户终端STA之间的通信链路进行一次切割:当链路在活跃状态Active Mode时,链路由STA和AP交互;当链路进入节电状态PS Mode时,链路由代理设备Agent同AP交互。这样切割之后,前述通信链路则需要根据其状态的变化在组(AP, STA)和(AP, Agent)之间来回交接,即链路交接handover。
在无数据传输时,对应的客户终端STA和AP的通信链路处于前述节电状态PSMode。此时,代理设备Agent接管通信链路,由代理设备代替对应的客户终端STA与AP进行通信交互,通信交互的行为包括该客户终端STA同AP配置的进入低功耗模式后的所有协议行为,比如, 该客户终端STA同AP配置的关于802.11定义的进入节电状态(对应低功耗模式)后所有协议行为。
在有数据传输时,对应的客户终端STA和AP的通信链路处于前述活跃状态ActiveMode。此时,对应的客户终端STA接管代理设备同AP的通信链路,该客户终端STA和AP直接进行通信交互。数据传输完成后,该客户终端STA对应的通信链路转为前述节电状态。
对于客户终端STA和AP的通信链路,其可以在前述活跃状态和前述节电状态之间来回切换,包括由活跃状态切换到节电状态、或者由节电状态切换到活跃状态。在进行状态切换时,处于活跃状态的客户终端STA可以通过发送给AP的数据包中的比特位,来告诉AP对应的通信链路状态将切换到节电状态。而处于节电状态的客户终端STA,则可以通过现有中的延迟传输指示映射DTIM机制、或者目标唤醒时间TWT机制中的相关方式触发状态切换到活跃状态。
下面详细描述客户终端STA和代理设备Agent通过本协议方法建立低功耗链路通信的步骤。
参见图1所示,示例了多个客户终端STA(即Station)接入Agent网络的拓扑结构,因为此处暂不分析Agent与AP之间的通信交互,故图中未示出Agent与AP之间WiFi链路。
考虑到Agent对功耗不敏感,通过电网供电,并且LowPower链路需要满足不同设备对实时性的需求,将Agent一直处于“工作态”,即射频收发机处于接收状态,参见图2所示。如此,Agent保持对周边环境监听,监听到请求就可以服务网络中的客户终端STA。
对客户终端STA而言,它的大多数时间都处于休眠的低功耗模式;当有数据发送时,它唤醒自己,然后发送数据(对应图2中的灰色区间), 并认为Agent此时就能提供服务。如此,使得客户终端STA的功耗尽可能低,因为射频收发机开启的长短是决定功耗的主要因素。
考虑到无线数据链路的不可靠性,本协议方法对客户终端STA加入Agent的网络、传输数据、数据可靠性、网络资源调度等方面进行了设计。
客户终端STA的入网过程可以概括为如下步骤:首先,设备开启后发现Agent设备( Discovering );然后,选择(比如由用户选择)加入的Agent网络后,同Agent设备认证自己的身份( Authentication );身份认证成功则进入网络。据此,配置客户终端STA的UML(Unified Modeling Language ,标准建模语言)状态机。
参见图3所示,示例了STA的UML复合状态机,包括:对应低功耗模式的休眠状态Deep Sleep,以及设备连接状态Agent connecting和设备连接完成状态Agent connected;所述设备连接状态Agent connecting为复合状态,里面包括发现子状态Discovering和认证子状态Authentication。
关机状态(图中用黑点表示)的STA开机上电后,就可以进入前述设备连接状态Agent connecting的发现子状态Discovering,在此状态下它以获取周边环境中的Agent信息。
客户终端STA同目标Agent认证自己的身份时,客户终端STA进入认证子状态Authentication;当前述复合状态中的任一子状态发生超时,所述客户终端STA进入前述休眠状态Deep Sleep。
当客户终端STA的身份认证成功时,客户终端STA接入目标Agent网络,进入前述设备连接完成状态Agent connected。当设备连接完成状态Agent connected发起了断开连接事件Disconnect时,STA也会进入休眠状态Deep Sleep。
当客户终端STA的身份认证失败时,客户终端STA再次进入发现子状态Discovering以重新尝试接入目标Agent的网络。参见图3所示,令重连尝试次数为count,预设次数阈值为n,当重连尝试次数count小于预设次数阈值n时,客户终端STA反复尝试。当重连尝试次数count大于等于预设次数阈值n时,客户终端STA进入前述休眠状态Deep Sleep。
在所述休眠状态Deep Sleep下,所述客户终端STA被配置为:获取用户触发的设备入网操作信息——比如用户可以通过按键来触发,根据所述设备入网操作信息,重新进入发现子状态Discovering,并在身份认证成功后加入新的Agent网络。
优先的,STA进入Discovering状态后,与周边环境中的Agent交互,获取周边的Agent设备信息后,可以交给用户进行选择,根据用户选择的目标代理设备与其建立低功耗LowPower连接。如此,考虑了环境中可能存在多个Agent的场景。
具体的,作为举例而非限制,比如某个STA进入Discovering状态后,STA发出Discovery命令,环境中有3个Agent响应,分别为Agent1、Agent2和Agent3,参见图4所示。除了响应STA自己的名字外,Agent还会把自己的时钟信息与支持的服务类型告与STA。
为了保证各Agent响应STA的Discovery命令不冲突,本实施例中,所述Agent在响应Discovery命令时,并不是立刻返回消息,而是选择随机的回避时间,以此来避免Agent的发送冲突。
所述随机时间的选择在STA的接收窗口RX window以内,最早不能早于RX start和最晚不超过Rx end, 参见图5所示。
STA根据用户选择的代理设备建立连接,STA主动向该代理设备发送连接请求Connect命令。
关于连接(Connecting),考虑到STA发起连接时,Agent可能在服务网络中的其它设备或者网络受到干扰,使得STA发起的此次连接请求可能会丢失,因此本本实施例中,所述STA的连接请求可以出现多次。
作为举例而非限制,参见图6所示,STA第一、二次的连接请求Connect命令由于某种原因均未成功;第三次成功,并收到了代理设备Agent的确认信号ACK,参见图7所示。
在所示确认信号ACK中,Agent给STA分配了用于低功耗LowPower链路中通信的地址,STA进行身份认证时应用所述地址信息。
所述地址优选为逻辑地址,因为逻辑地址相比于STA六字节的MAC地址可以把数据包长度配置的更短,如此,可以节省功耗。例如,如果数据包中逻辑地址域是8bit, 则网络中可以容纳256个STA设备;如果数据包中逻辑地址域是10bit,则网络中可以容纳1024个设备。
所述STA发送连接请求Connect命令后,开启接收窗口,在前述接收窗口等待目标Agent的确认信号ACK。当STA在接收窗口超时前收到ACK时,STA进入身份认证(Authentication)流程。否则,根据重连尝试次数选择下一次的重连时间。
Authentication的具体过程不属于本协议方法设计的低功耗范畴,可以参考现有技术中提出的各种成熟、安全的无线组网时的身份认证方法,在此不再赘述。
本实施例中,所述连接请求Connect命令中包括目标Agent的网络地址和前述间隔时间Interval参数,所述间隔时间Interval用于建立连接后STA同Agent维持链路同步。
所述间隔时间的大小由STA进行配置,具体的,STA根据自身应用和低功耗需求来配置间隔时间Interval的大小,作为举例而非限制,比如根据功耗、实时性等应用需求,间隔时间Interval可以是几十、几百毫秒,也可以是几秒、几分钟或者几小时等。
参见图8所示,示例了STA加入Agent网络以建立连接的流程图。
S11,初始化参数重连尝试次数N,令N=0。
S12,STA通过 Connect命令发起对Agent的连接请求。
S13,开启接收RX窗口。
S14,判断在RX窗口超时前是否收到Agent的确认信号ACK,如果收到ACK,执行步骤S15,如果未收到ACK,执行步骤S16;
S15,应用ACK中返回的逻辑地址,进入认证流程。
S16,对N执行加一运算,即N=N+1,进入步骤S17。
S17,判断当前N的值是否大于超过预设次数阈值,如果超过,执行步骤S18,否则执行步骤S19。
S18,判定设备连接失败,STA进入前述休眠状态Deep Sleep。
S19,根据重试次数N选择下一次的重连时间。
S20,等待重连时间到来;当重连时间开始点到来时,返回执行步骤S12。
本实施例中,通过预设次数阈值限制了重连次数,因为重连不能无限制的进行,这样会消耗大量功耗。且下一次的重新连接时间的时间点可以是某个时间段内的一个随机值。
同时,考虑到某些场景下,网络中可能有多个STA在同时连接该Agent,为了提高后续STA(前次连接失败的STA)成功连接上Agent的可能性, 本发明对重连时间的时间段进行了优化配置。
具体的,根据重连尝试次数选择下一次的重连时间的步骤包括:获取预定的单元时间unit,所述单元时间unit根据无线通信的物理层特点进行配置;根据前述单元时间unit和前述重连尝试次数值N,配置第N次重连的时间,所述重连的时间对应一个时间区间,所述时间区间为单元时间unit的倍数,且时间区间与N呈正向变化,随着N的增大,所述时间区间对应的时间长度增加;当时间到达前述配置的时间区间时,第一设备向前述目标第二设备发起连接请求Connect命令。
优选的,对于第N次重连,其对应的时间区间为:从上一次接收窗口失败后的一段保护时间算起的2N个单元时间unit,即2N*unit。
作为举例而非限制,下面结合图9详细描述重连时间的时间段配置方式。
当N=1时,即为第1次重连,第1次重连的时间区间为:从上一次RX接收窗口失败后的一段保护(guard)时间算起的2个单元时unit的时间区间,即2units区间。根据当前无线通信物理层的特点,所述单元时间unit可以配置为0.5毫秒、1毫秒、5毫秒或者其它时间长度,本领域技术人员可以根据需要对单元时间unit的时间长度进行适应性选择,在此不做限制。
当N=2时,即为第2次重连,第2次重连的时间区间为:从上一次RX接收窗口失败后的一段保护(guard)时间算起的22个单元时unit的时间区间,即4units区间。
当N=3时,即为第3次重连,第3次重连的时间区间为:从上一次RX接收窗口失败后的一段保护(guard)时间算起的23个单元时unit的时间区间,即8units区间。
以此类推,第N次重新连接为2N units,直到超过预设的重连次数阈值。
如此,通过根据重连次数增大重连对应的时间段范围,可以提高连接失败的STA后续连接上Agent的可能性。
STA和Agent建立连接成功后,STA和Agent进入连接通信阶段。在STA和Agent的连接通信阶段,在每个间隔时间Interval中,STA发起周期性握手请求,Agent则进行响应,参见图10所示。
本实施例中,Agent还可以利用周期性握手的时机,让STA退出低功耗休眠模式,同其做一次链路交接(handover)。
以及,STA可以利用周期性握手的时机,同Agent重新协商链路参数,比如根据应用需求重新配置所述间隔时间的大小。
所述周期性握手handshack时传输的数据包可以配置的尽可能短,以减少功耗。
为了避免相同interval的STA可能同时在某个时间点进行handshack, 并导致后面的持续冲突,在Interval到时的时刻,协议需要引入一个随机的等待时间random。
random的取值范围随着物理层的不同而不同,作为优选,可以设置在0-20毫秒之间。也就是说,STA真正发起handshack的时间点是Interval时刻,随机再等待random时间后发生,参见图11所示。
考虑到handshack本身也可能因为射频环境不佳而导致失败,比如图12示例的两种情况:图12a中,STA发出的handshack请求Agent未收到,导致周期性握手handshack失败;图12b中,STA发出的handshack请求,Agent进行响应,但Agent的响应STA未收到,导致handshack失败。图中的X区间表示接受失败。
针对周期性握手失败的情况,本实施例在协议中配置了周期性握手失败后的重传机制。
具体的,针对周期性握手失败后,将从STA的RX窗口结束到本周期Interval结束的这一段时间为重传窗口(Retry Window),参见图13所示,在Interval中标注为RetryWindow的灰色区间为重传窗口,图13a与图12a的情形对应,图13b与图12b的情形对应。
在重传窗口Retry Window中,STA可以选择一个随机值作为发射点(周期性握手重传时间点)来重新尝试handshack,参见图13所示的在Retry Window区间中的发送TX操作。
本实施例中,优选的,考虑到节省功耗,每个间隔时间Interval周期内,handshack的重传只进行一次。
如果多个(Max_Retry_Number)Interval内STA均未handshack成功,STA判定LowPower链路丢失,则需要重新连接Agent或者进入Deep Sleep状态。作为举例而非限制,比如预设的周期性握手最大重传次数Max_Retry_Number为3,则表示如果在3个周期的间隔时间Interval内,均未周期性握手成功,则判定该STA与Agent的低功耗LowPower链路丢失。
在大多数时间里,Agent和STA仅进行简单的handshack同步,而不需要发送大量数据,因此本发明在设计低功耗链路时,会将handshack的交互包设计的尽可能短,这样对功耗的好处显而易见。
考虑到在某些场景下,所述STA和Agent可能会存在长数据包交互需求,本实施例还进一步配置了利用handshack的时机让STA和Agent可以实现长数据包的交互的方案,具体的,是将handshack作为一个起点,以便Agent和STA有机会在后续开启连续的打包交互。
此时,在数据链路层的数据包的包头里,配置有一个更多数据指示位Moredata域,这个Moredata域的长度仅为一个比特位(bit):Moredata域为1时,是告知对方后续还有下一包数据;Moredata域为0时,是告知对方没有下一包数据了。
作为举例而非限制,参见图14所示,示例了STA有两包长数据传输给Agent时,数据链路层的数据包中Moredata域的变化情况。
首先,当一个Interval到时,在等待时间random后,STA发出的handshack请求(对应图中的数据包1),Agent发出ACK进行响应,STA收到响应后二者周期性握手成功。在数据包1(handshack请求数据包)中,因为Moredata域为1,表示告知Agent后续还有下一包数据。
STA在收到Agent的ACK后继续发送数据包(对应图中的数据包2)。Agent接收数据包2,接收完成后发出ACK。在数据包2中,Moredata域为1,表示告知Agent后续还有下一包数据。
STA在收到Agent的ACK后继续发送下一个数据包(对应图中的数据包3)。Agent接收数据包3,接收完成发出ACK。因为在数据包3中,Moredata域为0,表示告知Agent后续没有下一包数据了,此次长数据包传输完成。
等到下一个Interval到时,在等待时间random后,STA发出的handshack请求,Agent发出ACK进行响应,STA收到响应后二者周期性握手成功,维持链路同步。
再参见图15所示,示例了Agent有两包长数据传输给STA时,数据链路层的数据包中Moredata域的变化情况。
首先,当一个Interval到时,在等待时间random后,STA发出的handshack请求,Agent发出ACK进行响应,STA收到响应后二者周期性握手成功。
在Agent的前述ACK数据包(对应图中的数据包1)中,因为Moredata域为1,表示告知STA后续还有下一包数据发送。
STA发出ACK进行响应,表示准备接收数据包。
Agent在收到STA的ACK后,继续发送数据包(对应图中的数据包2)。STA接收数据包2,接收完成后发出ACK。在数据包2中,Moredata域为1,表示告知STA后续还有下一包数据。
Agent在收到STA的ACK后,继续发送数据包(对应图中的数据包3)。STA接收数据包3,接收完成后发出ACK。因为在数据包3中,Moredata域为0,表示告知Agent后续没有下一包数据了,此次长数据包传输完成。
等到下一个Interval到时,在等待时间random后,STA发出的handshack请求,Agent发出ACK进行响应,STA收到响应后二者周期性握手成功,维持链路同步。
参见图16所示,示例了STA与Agent在连接通信阶段进行通信交互的完整流程图。具体的,包括如下步骤:
S100,初始化参数Retry_count,令Retry_count=0;
S200,等待下一个间隔时间Interval起始点;
S300,间隔时间Interval起始点到时,在对应的random区间选择发送点;
S400,等待发送点到来;
S500,发送点到来,发送周期性握手请求;如果周期性握手请求后还有更多数据,更多数据指示位Moredata域置为1,否则置为0;
S600,发送完成后,开启接收窗口;
S700,判断是否收到Agent的确认信号ACK,以及是否发生周期性握手的重传Retry;当未收到Agent的ACK,且Retry已发生时,执行步骤S800;当未收到Agent的ACK,且Retry未发生时,执行步骤S900;当收到Agent的ACK时,执行步骤S1000;
S800,对Retry_count执行加一运算,并判断当前Retry_count是否大于预设的最大重传次数Max_Retry_Number;当Retry_count大于Max_Retry_Number时,判定同Agent的链路已断开,第一设备进入休眠状态,结束;当Retry_count小于等于Max_Retry_Number时,返回执行步骤S200;
S900,在重传窗口对应的时间区间中选择周期性握手的重传发送点;等待重传发送点,返回执行步骤S500;
S1000,解析Agent的数据包包头的更多数据指示位Moredata域是否置位;当Agent的数据包包头的Moredata=0,且第一设备无数据发送时,结束本轮周期性握手,返回执行步骤S200;否则,执行步骤S1100;
S1100,开启下一轮长数据收发模式;
S1200,发送本轮数据或者确认信号ACK,如果发送完本轮数据后,还有更多数据,则将第一设备数据包的Moredata域置为1,否则置为0;
S1300,接收Agent的数据或者确认信号ACK,返回执行步骤S1000。
参见图17所示,示例了本发明的数据链路层数据包的包格式信息。一个完整的数据包,一般包括接入码、包头、载荷与校验四个部分。
所述接入码,是用于识别所接收到的封包。
所述包头用于存储控制信息,比如逻辑地址以及传输相关参数等。
所述载荷是指在数据包中实际要传输的信息,例如文本、图片、音频等。
所述校验位于数据包的尾部,指数据包最后面的一段二进制数据,它通常用于校验和错误检测等操作。
本实施例中,所述数据包的包头被配置为至少包括如下域:逻辑地址、类型位、序列号位、确认指示位、更多数据指示位和奇偶校验位。根据需要,可以包括其它域。
本实施例中,所述逻辑地址为STA加入Agent网络时,Agent分配给STA的逻辑地址。如果此为长度为8bit,则网络的最大容量为256个设备;12bit则为4096个设备。
所述包类型,长度配置为1bit,当包类型为0表示STA和Agent的handshack交互包;当包类型为1表示后续交互的数据包。
所述序列号SEQ,在handshack交互时,STA和Agent将SEQ初始化为0;如果还有后续包,SEQ为其数值加1然后再模2。也就是说,只要后续还有数据,SEQ值会一直在0和1之间翻转。
所述确认指示用于回复对方数据包,当ACK为1时,表示已经收到前一数据包,对方不必重传;当ACK为0时,表示对方需要重传前一数据包。
所述更多数据指示,即Moredata域,用于表示本设备后续还有更多包发送。
所述包头奇偶校验位,用来校验包头。
本发明的另一实施例,还提供了一种网络设备,包括:
至少一个处理器;以及
至少一个存储器,其包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述网络设备能够:
保持射频收发机开启以保持接收状态;接收终端设备的入网请求,对终端设备进行身份认证,身份认证成功后建立与终端设备的连接;其中,在建立连接时,获取终端设备提供的间隔时间Interval参数,所述间隔时间用于建立连接后该终端设备同所述网络设备维持链路同步;
以及,在与终端设备建立连接后,接收该终端设备根据所述间隔时间发送的周期性握手请求,通过所述周期性握手来维持同该终端设备之间的低功耗链路;其中,在终端设备处于低功耗模式时,所述网络设备能够利用周期性握手的时机向该终端设备同步来自其它设备的数据信息。
所述网络设备的其它技术特征,可以参见在前实施例中代理设备的描述,在此不再赘述。
本发明的另一实施例,还提供了一种终端设备,包括:
至少一个处理器;以及
至少一个存储器,其包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述终端设备能够:
获取周边环境中的代理设备信息,向选择的目标代理设备发出入网请求;身份认证成功后加入所述目标代理设备组建的网络,与所述目标代理设备建立连接;其中,在建立连接时,终端设备提供一个间隔时间Interval参数,所述间隔时间用于建立连接后该终端设备同所述目标代理设备维持链路同步;
以及,在与目标代理设备建立连接后,终端设备在每个所述间隔时间向目标代理设备发起周期性握手,通过所述周期性握手来维持同该目标代理设备之间的低功耗链路;其中,所述终端设备配置有低功耗模式,在低功耗模式下,通过周期性握手的时机获取目标代理设备发送的来自其它设备的数据信息以进行同步;在有数据发送时,终端设备能够唤醒自己。
所述网络设备的其它技术特征,可以参见在前实施例中客户终端STA的描述,在此不再赘述。
在上面的描述中,本发明的公开内容并不旨在将其自身限于这些方面。而是,在本公开内容的目标保护范围内,各组件可以以任意数目选择性地且操作性地进行合并。另外,像“包括”、“囊括”以及“具有”的术语应当默认被解释为包括性的或开放性的,而不是排他性的或封闭性,除非其被明确限定为相反的含义。所有技术、科技或其他方面的术语都符合本领域技术人员所理解的含义,除非其被限定为相反的含义。在词典里找到的公共术语应当在相关技术文档的背景下不被太理想化或太不实际地解释,除非本公开内容明确将其限定成那样。本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
Claims (15)
1.一种低功耗的数据链路层协议的实现方法,其特征在于,协议用于对功耗敏感的第一设备和对功耗不敏感的第二设备在数据链路层的通信,包括设备组网阶段和连接通信阶段,所述第二设备保持射频收发机开启处于接收状态;
设备组网阶段:支持低功耗的第一设备获取周边环境中的第二设备信息;向选择的目标第二设备发出入网请求,目标第二设备触发对前述第一设备的身份认证;身份认证成功后第一设备加入所述目标第二设备组建的网络,第一设备与所述目标第二设备建立连接;其中,在建立连接时,第一设备提供一个间隔时间Interval参数,所述间隔时间用于建立连接后该第一设备同目标第二设备维持链路同步;
连接通信阶段:第一设备与目标第二设备连接成功后,第一设备在每个所述间隔时间向目标第二设备发起周期性握手,通过所述周期性握手来维持第一设备同目标第二设备之间的低功耗链路;其中,所述第一设备配置有低功耗模式,在所述低功耗模式下,所述目标第二设备能够利用周期性握手的时机向第一设备同步来自其它设备的数据信息;在有数据发送时,所述第一设备能够唤醒自己。
2.根据权利要求1所述的方法,其特征在于,在连接通信阶段,
所述目标第二设备还被配置为:利用周期性握手的时机,让第一设备退出低功耗休眠模式;
和/或,所述第一设备被配置为:利用周期性握手的时机,同目标第二设备重新协商链路参数,包括根据应用需求重新配置所述间隔时间的大小。
3.根据权利要求1或2所述的方法,其特征在于,所述第一设备的状态机被配置为:包括对应低功耗模式的休眠状态Deep Sleep,以及设备连接状态Agent connecting和设备连接完成状态Agent connected;所述设备连接状态Agent connecting为复合状态,里面包括发现子状态Discovering和认证子状态Authentication;
第一设备开机上电后进入前述设备连接状态的发现子状态Discovering以获取周边环境中的第二设备信息;第一设备同目标第二设备认证自己的身份时,第一设备进入认证子状态Authentication;当前述复合状态中的任一子状态发生超时,所述第一设备进入前述休眠状态Deep Sleep;
当第一设备的身份认证成功时,第一设备接入目标第二设备网络,进入前述设备连接完成状态Agent connected;
当设备连接完成状态Agent connected发起了断开连接事件时,第一设备进入休眠状态Deep Sleep。
4.根据权利要求3所述的方法,其特征在于,当第一设备的身份认证失败时,第一设备再次进入发现子状态Discovering以重新尝试接入目标第二设备的网络;当重连尝试次数小于某个预设次数阈值时,第一设备反复尝试;当重连尝试次数大于等于预设次数阈值时,第一设备进入前述休眠状态Deep Sleep。
5.根据权利要求3所述的方法,其特征在于,在所述休眠状态Deep Sleep下,所述第一设备被配置为:获取用户触发的设备入网操作信息,根据所述设备入网操作信息,重新进入发现子状态Discovering,并在身份认证成功后加入新的第二设备网络。
6.根据权利要求3的方法,其特征在于,在所述发现子状态Discovering下,所述第一设备被配置为:与周边环境中处于工作态的第二设备进行交互,收集周边环境中的第二设备的响应信息,向用户输出可选择的第二设备以供用户选择,所述响应信息包括第二设备向第一设备反馈的设备名称、时钟信号与支持的服务类型信息;以及,获取用户选择的目标第二设备,向目标第二设备发送连接请求Connect命令;
所述第二设备在响应第一设备时被配置为:选择随机的回避时间而不是立刻返回消息;所述回避时间被配置为在第一设备预定的接收窗口对应的时间段以内,即不早于所述接收窗口的起始时间且不晚于所述接收窗口的结束时间。
7.根据权利要求6的方法,其特征在于,所述第一设备发送连接请求Connect命令后,开启接收窗口,在前述接收窗口等待目标第二设备的确认信号ACK;当第一设备在接收窗口超时前收到ACK时,第一设备进入身份认证流程;否则,根据重连尝试次数选择下一次的重连时间;
其中,所述目标第二设备在ACK中为该第一设备分配了用于低功耗链路中通信的逻辑地址,第一设备进行身份认证时应用所述逻辑地址;
所述连接请求Connect命令中包括目标第二设备的网络地址和前述间隔时间Interval参数,所述间隔时间参数的大小由第一设备进行配置。
8.根据权利要求7所述的方法,其特征在于,还包括步骤:当第一设备在接收窗口超时前未收到目标第二设备的ACK时,对当前重连尝试次数N进行加1运算,所述N为大于等于1的自然数;
判断当前N值是否小于预设次数阈值;
在当前N的值小于预设次数阈值时,根据重连尝试次数选择下一次的重连时间,包括步骤:获取预定的单元时间unit,所述单元时间unit根据无线通信的物理层特点进行配置;根据前述单元时间unit和前述重连尝试次数值N,配置第N次重连的时间,所述重连的时间对应一个时间区间,所述时间区间为单元时间unit的倍数,且时间区间与N呈正向变化,随着N的增大,所述时间区间对应的时间长度增加;当时间到达前述配置的时间区间时,第一设备向前述目标第二设备发起连接请求Connect命令;其中,对于第N次重连,其对应的时间区间为:从上一次接收窗口失败后的一段保护时间算起的2N个单元时间unit,即2N*unit;
在当前N的值大于等于预设次数阈值时,判定第一设备接入网络失败,第一设备进入前述休眠状态Deep Sleep。
9.根据权利要求1所述的方法,其特征在于,所述第一设备根据间隔时间Interval参数来向目标第二设备发送周期性握手请求,发送请求完成后,开启接收窗口;
当一个周期间隔时间中的握手失败时,将第一设备的接收窗口结束到本周期间隔时间结束的这一段时间区间配置为重传窗口Retry Window;所述第一设备在重传窗口中选择一个随机值作为发射点来重新尝试与目标第二设备握手;
以及,当所述第一设备在预设的多个周期间隔时间内均未握手成功,判定该第一设备的低功耗链路丢失,此时,第一设备重新连接新的第二设备或者第一设备进入休眠状态。
10.根据权利要求9所述的方法,其特征在于,当接入目标第二设备网络的多个第一设备配置了相同的间隔时间参数时,为各第一设备对应的间隔时间配置一个随机的等待时间random以延迟该第一设备发起周期性握手的时间点;此时,第一设备发起周期性握手的时间点是其对应的间隔时间的起点到来时刻再加上对应的等待时间random。
11.根据权利要求10所述的方法,其特征在于:在连接通信阶段,利用周期性握手的时机,所述第一设备和第二设备进行实现长数据包的交互;
此时,在数据链路层的数据包的包头里,配置有更多数据指示位Moredata域,所述Moredata域的长度被配置为一个比特位,当Moredata域置为1时表示后续还有下一包数据,当Moredata域置为0时表示后续没有下一包数据;
所述第一设备与目标第二设备Agent的通信交互步骤如下:
S100,初始化参数Retry_count,令Retry_count=0;
S200,等待下一个间隔时间Interval起始点;
S300,间隔时间Interval起始点到时,在对应的random区间选择发送点;
S400,等待发送点到来;
S500,发送点到来,发送周期性握手请求;如果周期性握手请求后还有更多数据,更多数据指示位Moredata域置为1,否则置为0;
S600,发送完成后,开启接收窗口;
S700,判断是否收到Agent的确认信号ACK,以及是否发生周期性握手的重传Retry;当未收到Agent的ACK,且Retry已发生时,执行步骤S800;当未收到Agent的ACK,且 Retry未发生时,执行步骤S900;当收到Agent的ACK时,执行步骤S1000;
S800,对Retry_count执行加一运算,并判断当前Retry_count是否大于预设的最大重传次数Max_Retry_Number;当Retry_count大于Max_Retry_Number时,判定同Agent的链路已断开,第一设备进入休眠状态,结束;当Retry_count小于等于Max_Retry_Number时,返回执行步骤S200;
S900,在重传窗口对应的时间区间中选择周期性握手的重传发送点;等待重传发送点,返回执行步骤S500;
S1000,解析Agent的数据包包头的更多数据指示位Moredata域是否置位;当Agent的数据包包头的Moredata=0,且第一设备无数据发送时,结束本轮周期性握手,返回执行步骤S200;否则,执行步骤S1100;
S1100,开启下一轮长数据收发模式;
S1200,发送本轮数据或者确认信号ACK,如果发送完本轮数据后,还有更多数据,则将第一设备数据包的Moredata域置为1,否则置为0;
S1300,接收Agent的数据或者确认信号ACK,返回执行步骤S1000。
12.一种基于代理设备的低功耗通信系统,其特征在于:包括WiFi接入点AP、支持低功耗的客户终端STA和代理设备,所述AP用于接入互联网,所述客户终端STA对功耗敏感,所述代理设备对功耗不敏感;所述代理设备与AP通信连接;
所述客户终端STA与代理设备通过权利要求1-11中任一项所述的方法来建立低功耗链路通信;
在无数据传输时,所述代理设备代替客户终端STA与AP通信,所述客户终端STA进入低功耗模式,此时代理设备利用周期性握手的时机将AP的状态信息同步给客户终端STA;
在客户终端STA和AP之间需要传输数据时,代理设备利用周期性握手的时机让客户终端STA退出低功耗模式,以同该客户终端STA做一次链路交接,通过所述链路交接,所述客户终端STA接管代理设备同AP的链路,使得客户终端STA能够与AP直接进行通信。
13.根据权利要求12所述的系统,其特征在于:所述客户终端STA为低功耗物联网IOT设备,包括各种传感器设备;
所述代理设备与AP采用WiFi连接以进行通信;
所述客户终端STA与AP采用WiFi连接以用WiFi直接传输数据。
14.一种网络设备,其特征在于包括:
至少一个处理器;以及
至少一个存储器,其包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述网络设备能够:
保持射频收发机开启以保持接收状态;接收终端设备的入网请求,对终端设备进行身份认证,身份认证成功后建立与终端设备的连接;其中,在建立连接时,获取终端设备提供的间隔时间Interval参数,所述间隔时间用于建立连接后该终端设备同所述网络设备维持链路同步;
以及,在与终端设备建立连接后,接收该终端设备根据所述间隔时间发送的周期性握手请求,通过所述周期性握手来维持同该终端设备之间的低功耗链路;其中,在终端设备处于低功耗模式时,所述网络设备能够利用周期性握手的时机向该终端设备同步来自其它设备的数据信息。
15.一种终端设备,其特征在于包括:
至少一个处理器;以及
至少一个存储器,其包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为利用所述至少一个处理器使得所述终端设备能够:
获取周边环境中的代理设备信息,向选择的目标代理设备发出入网请求;身份认证成功后加入所述目标代理设备组建的网络,与所述目标代理设备建立连接;其中,在建立连接时,终端设备提供一个间隔时间Interval参数,所述间隔时间用于建立连接后该终端设备同所述目标代理设备维持链路同步;
以及,在与目标代理设备建立连接后,终端设备在每个所述间隔时间向目标代理设备发起周期性握手,通过所述周期性握手来维持同该目标代理设备之间的低功耗链路;其中,所述终端设备配置有低功耗模式,在低功耗模式下,通过周期性握手的时机获取目标代理设备发送的来自其它设备的数据信息以进行同步;在有数据发送时,终端设备能够唤醒自己。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410106429.2A CN117896809A (zh) | 2024-01-25 | 2024-01-25 | 低功耗的数据链路层协议的实现方法及应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410106429.2A CN117896809A (zh) | 2024-01-25 | 2024-01-25 | 低功耗的数据链路层协议的实现方法及应用 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117896809A true CN117896809A (zh) | 2024-04-16 |
Family
ID=90639282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410106429.2A Pending CN117896809A (zh) | 2024-01-25 | 2024-01-25 | 低功耗的数据链路层协议的实现方法及应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117896809A (zh) |
-
2024
- 2024-01-25 CN CN202410106429.2A patent/CN117896809A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9167515B2 (en) | Operation method in heterogeneous networks and gateway and wireless communication device using the same | |
EP2596673B1 (en) | User device dormancy | |
EP2727421B1 (en) | System and method for determining transmitting frequency to maintain remote application server connectivity | |
US8135446B2 (en) | Apparatus and method for maximum power saving in sleep mode | |
US9439142B2 (en) | Power saving for low latency deterministic networks in wireless personal area networks | |
JP2013084288A (ja) | ネットワークインターフェースモジュール内の電力を管理するための方法および装置 | |
US9055099B2 (en) | Method of preventing TCP-based denial-of-service attacks on mobile devices | |
US9510285B2 (en) | User device dormancy | |
KR101944556B1 (ko) | 무선부에서의 절전 모드 제어 방법 | |
Girling et al. | The design and implementation of a low power ad hoc protocol stack | |
CN112672360B (zh) | 自适应的WiFi通讯模组配网方法、装置、设备及存储介质 | |
WO2022027413A1 (en) | Method and device for managing sidelink transmission | |
CN109922537B (zh) | 无线模块及其实现方法 | |
CN110493856B (zh) | 无线网络休眠的数据帧重传方法、装置、设备和存储介质 | |
EP2865222B1 (en) | Radio resource control technique | |
EP2166723B1 (en) | Reception cycle control method, radio base station, and mobile station | |
CN117896809A (zh) | 低功耗的数据链路层协议的实现方法及应用 | |
Li et al. | RT-BLE: Real-time Multi-Connection Scheduling for Bluetooth Low Energy | |
CN113596803A (zh) | 一种蓝牙mesh低功耗节点与伙伴节点的数据交互方法 | |
Kumberg et al. | Improving the performance of the cross-layer wake-up routing protocol T-ROME | |
Tsao et al. | An energy‐efficient transmission mechanism for VoIP over IEEE 802.11 WLAN | |
CN117295143B (zh) | 一种终端低功耗数据传输方法 | |
US20240172183A1 (en) | Method and apparatus for selecting transmission resource in internet of vehicles, and terminal | |
WO2022205479A1 (zh) | 定时器状态更改方法、装置、终端及存储介质 | |
WO2021057616A1 (zh) | Rrc连接的管理方法及装置、存储介质和电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |