一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

低功耗设备的通信优化方法、装置、设备、服务器及通信系统与流程

2021-11-15 14:12:00 来源:中国专利 TAG:


1.本技术实施例涉及通信领域,具体涉及低功耗设备的通信优化方法、低功耗设备的通信优化装置、设备、服务器及通信系统。


背景技术:

2.窄带物联网(narrow band internet of things, nb

iot)作为物联网(internet of things, nb

iot)的一种新兴技术,可以部署于接入网络,例如蜂窝网络。然而,nb

iot中的nb

iot终端或nb

iot设备在进行nb

iot通信时仍然面临功耗高和通信效率低等问题。


技术实现要素:

3.本技术实施例提出了低功耗设备的通信优化方法、低功耗设备的通信优化装置、设备、服务器及通信系统。
4.第一方面,本技术实施例提供了一种低功耗设备的通信优化方法。该方法包括:接收第一设备通过接入网络发送的第一请求,所述第一请求用于请求至少一个第一待执行指令;从第一待发送队列中获取所述至少一个第一待执行指令,所述第一待发送队列中缓存了所述第一设备的多个待执行指令;根据所述至少一个第一待执行指令生成第一应答消息;以及通过所述接入网络向所述第一设备发送所述第一应答消息。
5.在一些实施例中,所述第一请求包括第一编号、第一阈值和第二编号中的至少一个,所述第一编号用于指示所述第一设备中已执行指令的编号中的第一最大编号,所述第一阈值用于指示所述第一设备中可执行指令的第一个数,以及所述第二编号用于指示所述第一设备中第一重试指令的编号。
6.在一些实施例中,所述从第一待发送队列中获取所述至少一个第一待执行指令,包括:当所述第一请求包括所述第一编号和所述第一阈值时,从所述第一待发送队列中获取第一阈值个数的指令且所述第一阈值个数的指令中的编号大于所述第一编号,并将所述第一阈值个数的指令作为所述至少一个第一待执行指令。
7.在一些实施例中,所述从第一待发送队列中获取所述至少一个第一待执行指令,包括:当所述第一请求包括所述第二编号时,根据所述第二编号从所述第一待发送队列中获取所述第一重试指令,并将所述第一重试指令作为所述至少一个第一待执行指令。
8.在一些实施例中,该方法还包括:接收所述第一设备通过所述接入网络发送的所述至少一个第一待执行指令的执行结果。
9.在一些实施例中,该方法还包括:同时接收所述第一设备通过所述接入网络发送的所述至少一个第一待执行指令的执行结果和第二请求,所述第二请求用于请求至少一个第二待执行指令。
10.在一些实施例中,所述第二请求包括第三编号、第二阈值和第四编号中的至少一个,所述第三编号用于指示所述第一设备中已执行指令的编号中的第二最大编号,所述第二阈值用于指示所述第一设备中可执行指令的第二个数,以及所述第四编号用于指示所述
第一设备中第二重试指令的编号。
11.在一些实施例中,所述第一最大编号与所述第二最大编号不同或者相同;或所述第一个数与所述第二个数不同或者相同。
12.在一些实施例中,所述第一待发送队列中的所述多个待执行指令按照指令的优先级排列,或所述第一待发送队列中的所述多个待执行指令按照指令的时间要素排列。
13.第二方面,本技术实施例提供了一种低功耗设备的通信优化方法。该方法包括:通过接入网络发送第一请求给服务器,所述第一请求用于请求至少一个第一待执行指令;以及接收所述服务器通过所述接入网络发送的第一应答消息,所述第一应答消息包括所述至少一个第一待执行指令。
14.在一些实施例中,所述第一请求包括第一编号、第一阈值和第二编号中的至少一个,所述第一编号用于指示所述低功耗设备中已执行指令的编号中的第一最大编号,所述第一阈值用于指示所述低功耗设备中可执行指令的第一个数,所述第二编号用于指示所述低功耗设备中第一重试指令的编号。
15.在一些实施例中,该方法还包括:通过所述接入网络发送所述至少一个第一待执行指令的执行结果到所述服务器。
16.在一些实施例中,该方法还包括:a, 将所述至少一个第一待执行指令加入到待执行指令队列,所述待执行指令队列包括多个待执行指令,所述多个待执行指令按照指令的优先权排列或者按照指令的时间要素排列;b, 在将所述至少一个第一待执行指令加入到所述待执行指令队列时,从所述待执行指令队列中获取待执行指令进行执行;c, 在执行所述待执行指令时,将所述待执行指令的上一条指令的执行结果加入到回复队列;循环执行a,b和c直至所述至少一个第一待执行指令的执行结果全部加入到所述回复队列;从所述回复队列中读取所述至少一个第一待执行指令的执行结果;以及通过所述接入网络发送所述至少一个第一待执行指令的执行结果到所述服务器。
17.在一些实施例中,该方法还包括:通过所述接入网络同步发送所述至少一个第一待执行指令的执行结果和第二请求到所述服务器,所述第二请求用于请求至少一个第二待执行指令。
18.在一些实施例中,所述第二请求包括第三编号、第二阈值和第四编号中的至少一个,所述第三编号用于指示所述低功耗设备中已执行指令的编号中的第二最大编号,所述第二阈值用于指示所述低功耗设备中可执行指令的第二个数,以及所述第四编号用于指示所述低功耗设备中第二重试指令的编号。
19.在一些实施例中,所述第一最大编号与所述第二最大编号不同或者相同;或所述第一个数与所述第二个数不同或者相同。
20.第三方面,本技术实施例提供了一种低功耗设备的通信优化装置。该装置包括:第一接收模块,被配置以接收第一设备通过接入网络发送的第一请求,所述第一请求用于请求至少一个第一待执行指令;生成模块,被配置以从第一待发送队列中获取所述至少一个第一待执行指令,所述第一待发送队列中缓存了所述第一设备的多个待执行指令;以及根据所述至少一个第一待执行指令生成第一应答消息;以及第一发送模块,被配置以通过所述接入网络向所述第一设备发送所述第一应答消息。
21.在一些实施例中,所述第一请求包括第一编号、第一阈值和第二编号中的至少一
个,所述第一编号用于指示所述第一设备中已执行指令的编号中的第一最大编号,所述第一阈值用于指示所述第一设备中可执行指令的第一个数,以及所述第二编号用于指示所述第一设备中第一重试指令的编号。
22.在一些实施例中,所述生成模块被配置以当所述第一请求包括所述第一编号和所述第一阈值时,从所述第一待发送队列中获取第一阈值个数的指令且所述第一阈值个数的指令中的编号大于所述第一编号,并将所述第一阈值个数的指令作为所述至少一个第一待执行指令。
23.在一些实施例中,所述生成模块被配置以当所述第一请求包括所述第二编号时,根据所述第二编号从所述第一待发送队列中获取所述第一重试指令,并将所述第一重试指令作为所述至少一个第一待执行指令。
24.在一些实施例中,所述第一接收模块被配置以接收所述第一设备通过所述接入网络发送的所述至少一个第一待执行指令的执行结果。
25.在一些实施例中,所述第一接收模块被配置以同时接收所述第一设备通过所述接入网络发送的所述至少一个第一待执行指令的执行结果和第二请求,所述第二请求用于请求至少一个第二待执行指令。
26.在一些实施例中,所述第二请求包括第三编号、第二阈值和第四编号中的至少一个,所述第三编号用于指示所述第一设备中已执行指令的编号中的第二最大编号,所述第二阈值用于指示所述第一设备中可执行指令的第二个数,以及所述第四编号用于指示所述第一设备中第二重试指令的编号。
27.在一些实施例中,所述第一最大编号与所述第二最大编号不同或者相同;或所述第一个数与所述第二个数不同或者相同。
28.第四方面,本技术实施例提供了一种低功耗设备的通信优化装置。该装置包括:第二发送模块,被配置以通过接入网络发送第一请求给服务器,所述第一请求用于请求至少一个第一待执行指令;以及第二接收模块,被配置以接收所述服务器通过所述接入网络发送的第一应答消息,所述第一应答消息包括所述至少一个第一待执行指令。
29.在一些实施例中,所述第一请求包括第一编号、第一阈值和第二编号中的至少一个,所述第一编号用于指示所述低功耗设备中已执行指令的编号中的第一最大编号,所述第一阈值用于指示所述低功耗设备中可执行指令的第一个数,所述第二编号用于指示所述低功耗设备中第一重试指令的编号。
30.在一些实施例中,所述第二发送模块被配置以:通过所述接入网络发送所述至少一个第一待执行指令的执行结果到所述服务器。
31.在一些实施例中,所述装置被配置以:a, 将所述至少一个第一待执行指令加入到待执行指令队列,所述待执行指令队列包括多个待执行指令,所述多个待执行指令按照指令的优先权排列或者按照指令的时间要素排列;b, 在将所述至少一个第一待执行指令加入到所述待执行指令队列时,从所述待执行指令队列中获取待执行指令进行执行;c, 在执行所述待执行指令时,将所述待执行指令的上一条指令的执行结果加入到回复队列;循环执行a,b和c直至所述至少一个第一待执行指令的执行结果全部加入到所述回复队列;从所述回复队列中读取所述至少一个第一待执行指令的执行结果;以及通过所述接入网络发送所述至少一个第一待执行指令的执行结果到所述服务器。
32.在一些实施例中,所述第二发送模块被配置以:通过所述接入网络同步发送所述至少一个第一待执行指令的执行结果和第二请求到所述服务器,所述第二请求用于请求至少一个第二待执行指令。
33.在一些实施例中,所述第二请求包括第三编号、第二阈值和第四编号中的至少一个,所述第三编号用于指示所述低功耗设备中已执行指令的编号中的第二最大编号,所述第二阈值用于指示所述低功耗设备中可执行指令的第二个数,以及所述第四编号用于指示所述低功耗设备中第二重试指令的编号。
34.在一些实施例中,所述第一最大编号与所述第二最大编号不同或者相同;或所述第一个数与所述第二个数不同或者相同。
35.第五方面,本技术实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如第一方面或第二方面中任一实现方式描述的方法。
36.第六方面,本技术实施例提供了一种处理器,该处理器用于运行程序,其中,该程序运行时执行如第一方面或第二方面中任一实现方式描述的方法。
37.第七方面,本技术实施例提供了一种低功耗设备的通信优化设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当该一个或多个程序被该一个或多个处理器执行时,使得该一个或多个处理器实现如第一方面中任一实现方式描述的方法。
38.第八方面,本技术实施例提供了一种服务器,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当该一个或多个程序被该一个或多个处理器执行时,使得该一个或多个处理器实现如第二方面中任一实现方式描述的方法。
39.第九方面,本技术实施例提供了一种通信系统,包括:第七方面所描述的设备;接入网络;以及第八方面所描述的服务器。
40.根据本技术实施例提供的方法、装置、设备、服务器及系统,设备可以在一次请求如第一请求中请求至少一个第一待执行指令,从而可以在一次通信过程中实现至少一个待执行指令的执行。在一次通信过程中实现至少一个待执行指令的执行,一方面提升了通信效率,另一方面可以减少设备的活跃时间,进而降低设备的功耗。
附图说明
41.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,而且还可以根据提供的附图将本技术应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
42.图1是根据本技术一些实施例的应用场景的示意图。
43.图2是根据现有技术的通信方法的信令图。
44.图3是根据本技术一些实施例的低功耗设备的通信优化方法的流程图。
45.图4是根据本技术一些实施例的低功耗设备的通信优化方法的流程图。
46.图5是根据本技术一些实施例的低功耗设备的通信优化方法的流程图。
47.图6是根据本技术一些实施例的低功耗设备的通信优化方法的流程图。
48.图7是根据本技术一些实施例的低功耗设备的通信优化方法的流程图。
49.图8是根据本技术一些实施例的低功耗设备的通信优化方法的流程图。
50.图9是根据本技术一些实施例的低功耗设备的通信优化方法的流程图。
51.图10是根据本技术一些实施例的通信方法的信令图。
52.图11是根据本技术一些实施例的低功耗设备的通信优化装置的框图。
53.图12是根据本技术一些实施例的低功耗设备的通信优化装置的框图。
54.图13是适于用来实现本技术一些实施例的电子设备的结构示意图。
具体实施方式
55.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
56.需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
57.应当理解,本技术中使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
58.如本技术和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
59.其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
60.以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
61.本技术中使用了流程图用来说明根据本技术的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
62.图1是根据本技术一些实施例的应用场景的示意图。如图1所示,该应用场景包括服务器11、接入网络12和多个设备131

134。
63.服务器11可以提供各种服务。
64.可以利用硬件实施服务器11,也可以利用软件实施服务器11。
65.当利用硬件实施服务器11时,服务器11可以实施为多个服务器组成的分布式服务器集群或者实施为单个服务器。如图1所示,服务器11可以实施为服务器111和服务器112组
成的分布式服务器集群。应当理解,在图1的基础上,服务器11还可以实施为三个服务器或者三个以上服务器组成的分布式服务器集群。服务器11还可以实施为单个服务器,例如,服务器11可以实施为图1中的服务器111或服务器112。
66.当利用软件实施服务器11时,服务器11可以实施为多个软件或软件模块或者实施为单个软件或软件模块。软件或软件模块可以实施在计算设备上,例如服务器或者服务器集群上。
67.接入网络12可以包括多个接入网设备。如图1所示,接入网络12包括接入网设备121

122。应当理解,在图1的基础上,接入网络12还可以包括三个接入网设备或者三个以上接入网设备;接入网络12还可以包括单个接入网设备。
68.接入网络12可以为gsm(global system for mobile communications)系统,umts(universal mobile telecommunications system),lte(long term evolution)系统,5g nr(new radio)系统等。接入网络12还可以是未来演进或发展的任何通信技术。本技术实施例对接入网络12不进行限定。
69.接入网络12还可以是wi

fi(wireless fidelity)、蓝牙或者其他网关技术组成的网络。
70.接入网络12的接入网设备121

122和服务器11之间通过某种接口技术或协议互相通信。例如,接入网设备121

122和服务器11之间通过高级消息队列协议(advanced message queuing protocol)互相通信。
71.接入网设备121

122可以是基站。基站是一种部署在接入网络12中用以为设备131

134提供无线通信功能的装置。基站可以包括各种形式的宏基站,微基站,中继站,接入点等等。在采用不同的无线接入技术的系统中,具备基站功能的设备的名称可能会有所不同,例如在lte系统中,称为enodeb或者enb;在5g nr系统中,称为gnodeb或者gnb。随着通信技术的演进或发展,“基站”这一名称可能描述,会变化。为方便本技术实施例,上述为设备提供无线通信功能的装置统称为接入网设备。
72.接入网设备121

122可以是wi

fi设备或者网关。
73.可以利用硬件实施设备131

134,也可以利用软件实施设备131

134。
74.当利用硬件实施设备131

134时,设备131

134可以是各种电子设备,包括但不限于智能手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、超级移动个人计算机(ultra

mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)、电子书阅读器、mp3(moving picture experts group audio layer iii,动态影像专家压缩标准音频层面3)播放器、mp4(moving picture experts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机、台式计算机、智能电表、智能水表、智能猫眼、网关等电子设备。
75.当利用软件实施设备131

134时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。本技术实施例对电子设备的具体类型不作任何限制。
76.接入网设备121

122与设备131

134之间通过某种技术互相通信,例如nb

iot、蓝牙或wi

fi等。
77.设备131

134具有nb

iot模块以利用nb

iot模块与接入网设备121

122之间进行nb

iot通信。
78.设备131

134也可以具有低功耗蓝牙模块以利用低功耗蓝牙模块与接入网设备121

122之间进行蓝牙通信。
79.设备131

134也可以具有低功耗wi

fi模块以利用低功耗wi

fi模块与接入网设备121

122之间进行wi

fi通信。应该理解,图1中的设备、接入网络和服务器的个数仅仅是示意性的。根据实现需要,可以具有任意个数的设备、接入网络和服务器。
80.下述实施例以nb

iot为主要方式对本技术进行解释和说明。应当理解的是,本技术下述的实施例可以很容易实施在蓝牙、wi

fi等其他通信场景,在此不再一一赘述。
81.图2是根据现有技术的通信方法的信令图。在与接入网络12进行nb

iot上下行通信时,设备13非常耗电;另外,设备13并不总是有指令执行,因此nb

iot通信并不总是执行,从而设备13并不总是处于激活状态。设备13通常处于低功耗状态。低功耗状态的设备13的通信链路(与接入网络12)并非实时维护。在必要时,设备13定时与接入网络12建立通信进而与服务器11建立通信以执行指令或者完成任务。因此,服务器11需要将待执行指令缓存起来。当设备13与服务器11建立通信时,服务器11将待执行指令经由接入网络12发送给设备13。设备13接收到指令后将处理结果经由接入网络12返回给服务器11。
82.具体地,如图2所示,在21中,服务器11中缓存有多个指令。该多个指令需要发送给设备13以在设备13完成执行。服务器11需要等待设备13进入活跃状态即与服务器11建立通信链路之后再发送给设备13。在22中,设备13建立了与接入网络12以及服务器11的通信链路,并向接入网络12发送消息以请求指令,例如可以发送getcmd给接入网络12。在23中,接入网络12将该消息转发给服务器11,例如可以转发getcmd给服务器11。在24中,服务器11从缓存中顺序地读取指令并将该指令发送给接入网络12,例如可以发送cmd给接入网络12。在25中,接入网络12将该指令转发给设备13,例如可以转发cmd给设备13。设备13执行该指令。在26中,设备13将该指令的响应发送给接入网络12,例如可以发送cmdrsp给接入网络12。在27中,接入网络12将该指令的响应转发给服务器11,例如可以转发cmdrsp给服务器11。
83.本技术的发明人经研究发现:设备经由接入网络发送请求给服务器,服务器经由接入网络返回指令给设备,设备执行该指令并经由接入网络返回该指令的执行结果给服务器;上述过程中,发送请求

响应请求以发送指令

反馈指令的执行结果的一次通信过程中执行一个指令,通信效率低;如果一次指令的执行过程中或者一次通信过程中存在冗余的通信资源则无法得到充分利用,因此可能导致无法充分利用带宽资源;在nb

iot通信中,通信效率低进一步导致设备需要更多的活跃时间以完成规定的指令或者任务,因此进一步增加了设备的功耗。
84.为了解决上述问题,根据本技术实施例,设备13可以在一次通信过程中根据自身通信状况请求至少一个指令;另外,设备13在执行指令时将上述顺序串行的方式转换为流水线的方式。
85.下面从服务器侧的角度说明本技术实施例的方法。
86.继续参考图3,其示出了根据本技术一些实施例的低功耗设备的通信优化方法的流程300。具体的,如图3所示,该流程300包括302、304、306和308。
87.302,接收第一设备通过接入网络发送的第一请求。
88.第一请求用于请求至少一个第一待执行指令。
89.第一设备在此仅仅为了描述方便。在本技术中,第一设备即上述的任何设备或者下述的任何设备。此外,本技术所述的设备也可以理解为终端。
90.304,从第一待发送队列中获取至少一个第一待执行指令。
91.第一待发送队列中缓存了第一设备的多个待执行指令。
92.306,根据至少一个第一待执行指令生成第一应答消息。
93.308,通过接入网络向第一设备发送第一应答消息。
94.根据本技术实施例提供的方法,设备可以在一次请求如第一请求中请求至少一个第一待执行指令,从而可以在一次通信过程中实现至少一个待执行指令的执行。在一次通信过程中实现至少一个待执行指令的执行,一方面提升了通信效率,另一方面可以减少设备的活跃时间,进而降低设备的功耗。
95.在一些实施例中,设备在发送第一请求给接入网络之前,建立与接入网络之间的通信链路;进而经由接入网络建立与服务器之间的通信链路。设备发送第一请求给接入网络。接入网络将第一请求转发给服务器。服务器根据第一请求生成响应消息,并将响应消息发送给接入网络。接入网络将响应消息转发给设备。
96.在一些实施例中,第一请求包括第一编号、第一阈值和第二编号中的至少一个。第一编号用于指示第一设备中已执行指令的编号中的第一最大编号。第一阈值用于指示第一设备中可执行指令的第一个数。第二编号用于指示第一设备中第一重试指令的编号。
97.在本技术的一些实施例中,304可以包括:当第一请求包括第一编号和第一阈值时,从第一待发送队列中获取第一阈值个数的指令且第一阈值个数的指令中的编号大于第一编号,并将第一阈值个数的指令作为至少一个第一待执行指令。
98.在本技术的一些实施例中,304可以包括:当第一请求包括第二编号时,根据第二编号从第一待发送队列中获取第一重试指令,并将第一重试指令作为至少一个第一待执行指令。
99.例如,设备经由接入网络向服务器发送请求getcmd,并在getcmd中携带第一编号max_id,第一阈值cmd_count和第三编号seq_id中的至少一个。
100.应当理解,在设备、接入网络和服务器中,每个指令具有唯一的编号,且多个指令可以按照执行顺序进行编号并依据编号顺序地执行。
101.例如,设备已经执行了4条指令,即id等于1,2,3和4的指令。此时,设备中已执行指令的编号1,2,3和4中的第一最大编号为4,则max_id等于4;设备已经执行了5条指令,即id等于1,2,3,4和5的指令。此时,设备中已执行指令的编号1,2,3,4和5中的第一最大编号为5,则max_id等于5。应当理解,该示例是为了举例说明第一编号的含义。第一编号的具体数值根据实际场景会有所不同。
102.第一阈值cmd_count表示设备希望服务器能够返回的指令的个数,或者设备此时能够处理的指令的个数。设备可以根据自身的网络状况,动态地调整第一阈值,从而减少指令的重试。
103.第三编号seq_id表示设备在处理某个指令时,该指令处理错误,需要进行指令重试,此时可以向服务器请求重新发送编号为第三编号seq_id的指令。
104.根据本技术实施例的方法,可以根据第一编号、第一阈值和第二编号中的至少一
个指定至少一个指令;同时第一阈值可以根据设备的网络状况,动态地调整第一阈值,从而减少指令的重试,进而进一步提升通信效率。
105.应当理解,如果请求多个指令,服务器可以将多个指令合并发送,也可以一个一个分别进行发送。合并发送多个指令或者一个一个分别发送多个指令依据与发送的数据包的大小。例如,如果nb

iot的带宽为512字节,且单个指令的长度为100字节,可以将多个指令合并一包数据发送给设备。
106.继续参考图4,其示出了根据本技术一些实施例的低功耗设备的通信优化方法的流程400。具体的,如图4所示,该流程400包括402、404、406、408和410。
107.402,接收第一设备通过接入网络发送的第一请求。
108.第一请求用于请求至少一个第一待执行指令。
109.404,从第一待发送队列中获取至少一个第一待执行指令。
110.第一待发送队列中缓存了第一设备的多个待执行指令。
111.406,根据至少一个第一待执行指令生成第一应答消息。
112.408,通过接入网络向第一设备发送第一应答消息。
113.410,接收第一设备通过接入网络发送的至少一个第一待执行指令的执行结果。
114.根据本技术实施例的方法,可以在一次通信过程中将至少一个第一待执行指令的执行结果进行反馈,进一步提升通信效率和降低设备的功耗。
115.继续参考图5,其示出了根据本技术一些实施例的设备低功耗设备的通信优化方法的流程500。具体的,如图5所示,该流程500包括502、504、506、508和510。
116.502,接收第一设备通过接入网络发送的第一请求。
117.第一请求用于请求至少一个第一待执行指令。
118.504,从第一待发送队列中获取至少一个第一待执行指令。
119.第一待发送队列中缓存了第一设备的多个待执行指令。
120.506,根据至少一个第一待执行指令生成第一应答消息。
121.508,通过接入网络向第一设备发送第一应答消息。
122.510,同时接收第一设备通过接入网络发送的至少一个第一待执行指令的执行结果和第二请求,第二请求用于请求至少一个第二待执行指令。
123.根据本技术实施例的方法,可以在一次通信过程中将至少一个第一待执行指令的执行结果进行反馈,同时还能请求下一轮的指令,进一步提升通信效率和降低设备的功耗。
124.第二请求包括第三编号、第二阈值和第四编号中的至少一个。第三编号用于指示第一设备中已执行指令的编号中的第二最大编号。第二阈值用于指示第一设备中可执行指令的第二个数。第四编号用于指示第一设备中第二重试指令的编号。
125.上述第二请求中的第三编号的含义与上述第一请求中的第一编号的含义相同。上述第二请求中的第四编号的含义与上述第一请求中的第二编号的含义相同。上述第二请求中的第二阈值的含义与上述第一请求中的第一阈值的含义相同。因此,相同含义的参数在此不再赘述。
126.在一些实施例中,第一最大编号与第二最大编号不同或者相同;或第一个数与第二个数不同或者相同。
127.第一最大编号与第二最大编号不同,说明设备当前执行的指令已经发生变化;第
一最大编号与第二最大编号相同,说明设备当前执行的指令出错。第一个数与第二个数不同,说明设备当前的网络状况发生变化;第一个数与第二个数相同,说明设备当前的网络状况没有发生变化。
128.在本技术的一些实施例中,第一待发送队列中的多个待执行指令按照指令的优先级排列,或第一待发送队列中的多个待执行指令按照指令的时间要素排列。时间要素可以是指令的生成时间,要求指令执行的时间,或指令生效和结束的时间等。
129.在本技术的实施例中,服务器可以检测到设备是否在线。如果设备在线,则服务器可以依据上述实施例中的方法将该设备对应的待发送队列中的多个待执行指令发送给设备。如果设备不在线,则服务器将该设备的待执行指令缓存到该设备对应的待发送队列中;等待设备上线之后,服务器再将该设备的待发送队列中的多个待执行指令发送给设备。
130.在一个实际场景中,例如设备可以为智能锁。设备的待执行指令可以包括:时效性密码,密码修改,ota(over the air technology)升级等待。可以基于时效性,重要级别,和耗时长短等多个维度来筛选执行顺序从而在待发送队列中进行排序。例如,时效性密码可以排列在优先处理的位置。
131.以上从服务器侧的角度说明了本技术实施例的方法。下面从设备侧的角度说明本技术实施例的方法。
132.继续参考图6,其示出了根据本技术一些实施例的设备低功耗设备的通信优化方法的流程600。具体的,如图6所示,该流程600包括602和604。
133.602,通过接入网络发送第一请求给服务器。
134.第一请求用于请求至少一个第一待执行指令。
135.604,接收服务器通过接入网络发送的第一应答消息。
136.第一应答消息包括至少一个第一待执行指令。
137.根据本技术实施例提供的方法,设备可以在一次请求如第一请求中请求至少一个第一待执行指令,从而可以在一次通信过程中实现至少一个待执行指令的执行。在一次通信过程中实现至少一个待执行指令的执行,一方面提升了通信效率,另一方面可以减少设备的活跃时间,进而降低设备的功耗。
138.在一些实施例中,第一请求包括第一编号、第一阈值和第二编号中的至少一个。第一编号用于指示低功耗设备中已执行指令的编号中的第一最大编号。第一阈值用于指示低功耗设备中可执行指令的第一个数。第二编号用于指示低功耗设备中第一重试指令的编号。其中,第一请求中各个参数的含义可以参考上述实施例,在此不再赘述。
139.继续参考图7,其示出了根据本技术一些实施例的设备低功耗设备的通信优化方法的流程700。具体的,如图7所示,该流程700包括702、704和706。
140.702,通过接入网络发送第一请求给服务器。
141.第一请求用于请求至少一个第一待执行指令。
142.704,接收服务器通过接入网络发送的第一应答消息。
143.第一应答消息包括至少一个第一待执行指令。
144.706,通过接入网络发送至少一个第一待执行指令的执行结果到服务器。
145.根据本技术实施例提供的方法,可以在一次通信过程中将至少一个第一待执行指令的执行结果进行反馈,进一步提升通信效率和降低设备的功耗。
146.继续参考图8,其示出了根据本技术一些实施例的设备低功耗设备的通信优化方法的流程800。具体的,在设备侧可以进一步优化通信方法。流程800包括:801,将至少一个第一待执行指令加入到待执行指令队列,待执行指令队列包括多个待执行指令,多个待执行指令按照指令的优先权排列或者按照指令的时间要素排列。该排列方式可以参考服务器侧的队列的排序方式;还可以不同于服务器侧的队列排列方式,设备可以根据自身的计算功能进行调整。
147.802,在将至少一个第一待执行指令加入到待执行指令队列时,从待执行指令队列中获取待执行指令进行执行。
148.803,在执行待执行指令时,将待执行指令的上一条指令的执行结果加入到回复队列;804,循环执行801,802,803直至至少一个第一待执行指令的执行结果全部加入到回复队列。
149.805,从回复队列中读取至少一个第一待执行指令的执行结果。
150.806,通过接入网络发送至少一个第一待执行指令的执行结果到服务器。
151.待执行指令队列,指令执行,待回复队列可以理解为3个池。3个池之间实施上述流水线作业。
152.根据本技术实施例的通信方法,设备将指令的处理分成三个阶段:待执行、执行中和待回复。
153.设备接收到至少一个第一待执行指令后,将至少一个第一待执行指令加入到本地的指令队列中。该指令队列中排列了多个待执行的指令。
154.设备获得指令队列中的指令进行执行,并将执行结果放入回复队列,以准备进行回复。
155.设备根据队列(指令队列和/或回复队列)当前的负载情况决定是否继续发送第二请求以请求至少一个第二待执行指令。也就是说,设备根据队列当前的负载情况决定是否继续向服务器请求至少一个指令。
156.如果设备根据队列当前的负载情况决定不发送第二请求以请求至少一个第二待执行指令,说明设备的性能已经饱和。在这种情况下,设备可以单独发送至少一个第一待执行指令的执行结果。或者设备等待一段时间后,单独发送至少一个第一待执行指令的执行结果。
157.如果设备根据队列当前的负载情况决定发送第二请求以请求至少一个第二待执行指令,说明设备的性能仍然具有冗余。在这种情况下,设备可以同时发送回复队列中至少一个第一待执行指令的执行结果和第二请求。
158.根据本技术实施例的方法,设备将顺序串行的通信方式变为流水线式的通信方式,从而进一步提升通信效率,降低设备中通信模块的供电时间,从而进一步降低设备的功耗。
159.继续参考图9,其示出了根据本技术一些实施例的设备低功耗设备的通信优化方法的流程900。具体的,如图9所示,该流程900包括902,通过接入网络发送第一请求给服务器。
160.第一请求用于请求至少一个第一待执行指令。
161.904,接收服务器通过接入网络发送的第一应答消息。
162.第一应答消息包括至少一个第一待执行指令。
163.906,通过接入网络同步发送至少一个第一待执行指令的执行结果和第二请求到服务器,第二请求用于请求至少一个第二待执行指令。
164.该第二请求可以参考上述任一项实施例,在此不再赘述。
165.下面结合时令图对本技术实施例的通信方法进行说明。
166.图10是根据本技术一些实施例的通信方法的信令图。如图10所示,以请求两个指令为例进行说明。
167.在131中,服务器11中缓存了多个指令。多个指令依据执行顺序顺序地排列,以等到设备13在线之后进行发送。
168.在132中,设备13发送消息给接入网络12以请求两个指令。该消息可以包括第一编号、第一阈值和第二编号中的至少一个。
169.例如,该消息可以包括第一编号、第一阈值和第二编号,通过第二编号指定一个指令,通过第一编号和第一阈值指定另一个指令。
170.例如,该消息可以包括第一编号和第一阈值,通过第一编号和第一阈值指定两个指令。
171.在133中,接入网络12将消息转发给服务器11。
172.在134中,服务器11下发一个指令给接入网络12。
173.在135中,接入网络12转发一个指令给设备13。
174.在136中,服务器11下发另一个指令给接入网络12。
175.在137中,接入网络12转发另一个指令给设备13。
176.应当理解,服务器11还可以将两个指令通过一个数据包发送给接入网络12,再由接入网络12通过一个数据包转发给设备13。
177.在138中,设备13将接收到指令加入指令队列。
178.在139中,设备13执行指令队列中的指令。
179.在1310中,设备13将执行结果加入回复队列。
180.在1311中,设备13发送一个指令的响应给接入网络12。
181.在1312中,接入网络12转发一个指令的响应给服务器11。
182.在1313中,设备13发送另一个指令的响应给接入网络13。
183.在1314中,接入网络13转发另一个指令的响应给服务器11。
184.应当理解,设备13可以将两个指令的响应通过一个数据包发送给接入网络12,再由接入网络12通过一个数据包转发给服务器11。
185.进一步参考图12,作为对以上一些图所示方法的实现,本技术提供了一种低功耗设备的通信优化装置。该装置实施例与图3

5所示的方法实施例相对应。如图11所示,该装置包括:第一接收模块1102,被配置以接收第一设备通过接入网络发送的第一请求,第一请求用于请求至少一个第一待执行指令;生成模块1104,被配置以从第一待发送队列中获取至少一个第一待执行指令,第一待发送队列中缓存了第一设备的多个待执行指令;以及根据至少一个第一待执行指令生成第一应答消息;以及第一发送模块1106,被配置以通过接入网络向第一设备发送第一应答消息。
186.在一些实施例中,第一请求包括第一编号、第一阈值和第二编号中的至少一个,第一编号用于指示第一设备中已执行指令的编号中的第一最大编号,第一阈值用于指示第一设备中可执行指令的第一个数,以及第二编号用于指示第一设备中第一重试指令的编号。
187.在一些实施例中,生成模块1104被配置以当第一请求包括第一编号和第一阈值时,从第一待发送队列中获取第一阈值个数的指令且第一阈值个数的指令中的编号大于第一编号,并将第一阈值个数的指令作为至少一个第一待执行指令。
188.在一些实施例中,生成模块1104被配置以当第一请求包括第二编号时,根据第二编号从第一待发送队列中获取第一重试指令,并将第一重试指令作为至少一个第一待执行指令。
189.在一些实施例中,第一接收模块1106被配置以接收第一设备通过接入网络发送的至少一个第一待执行指令的执行结果。
190.在一些实施例中,第一接收模块1106被配置以同时接收第一设备通过接入网络发送的至少一个第一待执行指令的执行结果和第二请求,第二请求用于请求至少一个第二待执行指令。
191.在一些实施例中,第二请求包括第三编号、第二阈值和第四编号中的至少一个,第三编号用于指示第一设备中已执行指令的编号中的第二最大编号,第二阈值用于指示第一设备中可执行指令的第二个数,以及第四编号用于指示第一设备中第二重试指令的编号。
192.在一些实施例中,第一最大编号与第二最大编号不同或者相同;或第一个数与第二个数不同或者相同。
193.进一步参考图12,作为对以上一些图所示方法的实现,本技术提供了一种低功耗设备的通信优化装置。该装置实施例与图6

9所示的方法实施例相对应。如图12所示,该装置包括:第二发送模块1202,被配置以通过接入网络发送第一请求给服务器,第一请求用于请求至少一个第一待执行指令;以及第二接收模块1204,被配置以接收服务器通过接入网络发送的第一应答消息,第一应答消息包括至少一个第一待执行指令。
194.在一些实施例中,第一请求包括第一编号、第一阈值和第二编号中的至少一个,第一编号用于指示低功耗设备中已执行指令的编号中的第一最大编号,第一阈值用于指示低功耗设备中可执行指令的第一个数,第二编号用于指示低功耗设备中第一重试指令的编号。
195.在一些实施例中,第二发送模块1202被配置以:通过接入网络发送至少一个第一待执行指令的执行结果到服务器。
196.在一些实施例中,装置被配置以:a, 将至少一个第一待执行指令加入到待执行指令队列,待执行指令队列包括多个待执行指令,多个待执行指令按照指令的优先权排列或者按照指令的时间要素排列;b, 在将至少一个第一待执行指令加入到待执行指令队列时,从待执行指令队列中获取待执行指令进行执行;c, 在执行待执行指令时,将待执行指令的上一条指令的执行结果加入到回复队列;循环执行a,b和c直至至少一个第一待执行指令的执行结果全部加入到回复队列;从回复队列中读取至少一个第一待执行指令的执行结果;以及通过接入网络发送至少一个第一待执行指令的执行结果到服务器。
197.在一些实施例中,第二发送模块1202被配置以:通过接入网络同步发送至少一个第一待执行指令的执行结果和第二请求到服务器,第二请求用于请求至少一个第二待执行
指令。
198.在一些实施例中,第二请求包括第三编号、第二阈值和第四编号中的至少一个,第三编号用于指示低功耗设备中已执行指令的编号中的第二最大编号,第二阈值用于指示低功耗设备中可执行指令的第二个数,以及第四编号用于指示低功耗设备中第二重试指令的编号。
199.在一些实施例中,第一最大编号与第二最大编号不同或者相同;或第一个数与第二个数不同或者相同。
200.应当理解,上述装置实施例的细节可以参考对应方法实施例,在此不再赘述。
201.需要说明的是,上述设备侧的装置以及服务器侧的装置可以是芯片,组件或模块。该芯片,组件或模块位于设备中或服务器中。装置可包括处理器和存储器。
202.第一接收模块1102、生成模块1104和第一发送模块1106,等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
203.第二发送模块1202和第二接收模块1204等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
204.处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来执行本技术设备侧的方法实施例,或者服务器侧的方法实施例。
205.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。
206.进一步参考图10,示出了通信系统的实施例的时序图。通信系统包括设备13、接入网络12和服务器11。设备13、接入网络12和服务器11的执行功能可参考上述任何相关的实施例,在此不再赘述。
207.下面参考图13,其示出了适于用来实现本技术一些实施例的电子设备1700的结构示意图。图13示出的电子设备仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。下述描述的电子设备的结构适用于上述设备,也适用于上述服务器。
208.如图13所示,电子设备1700可以包括处理器1701、存储器1702、通信接口1703、输入单元1704、输出单元1705和通信总线1706。其中,处理器1701和存储器1702通过通信总线1706彼此相连。通信接口1703、输入单元1704和输出单元1705也连接至通信总线1706。
209.其中,通信接口1703可以为通信模块的接口,如nb

iot模块的接口。通信接口1703可以用于发送第一请求;以及接收应答消息。
210.在本技术实施例中,处理器1701,可以为中央处理器(central processing unit,cpu)、特定应用集成电路(application

specific integrated circuit,asic)、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件等。
211.在一种可能的实现方式中,存储器1702可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、以及至少一个功能(比如收发和处理信息等)所需的应用程序等;存储数据区可存储根据计算机的使用过程中所创建的数据,比如,指令、执行结果等。
212.此外,存储器1702可以包括高速随机存取存储器,还可以包括非易失性存储器,例
如至少一个磁盘存储器件或其他易失性固态存储器件。
213.处理器1701可以调用存储器1702中存储的程序,具体的,处理器1701可以执行以上图3至图13中任一实施例所示的通信方法。
214.存储器1702中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本技术实施例中,存储器1702中至少存储有用于实现以下功能的程序:接收第一设备通过接入网络发送的第一请求,所述第一请求用于请求至少一个第一待执行指令;从第一待发送队列中获取所述至少一个第一待执行指令,所述第一待发送队列中缓存了所述第一设备的多个待执行指令;根据所述至少一个第一待执行指令生成第一应答消息;以及通过所述接入网络向所述第一设备发送所述第一应答消息。
215.或者存储器1702中用于存放一个或者一个以上程序,程序可以包括程序代码,所述程序代码包括计算机操作指令,在本技术实施例中,存储器1702中至少存储有用于实现以下功能的程序:通过接入网络发送第一请求给服务器,所述第一请求用于请求至少一个第一待执行指令;以及接收所述服务器通过所述接入网络发送的第一应答消息,所述第一应答消息包括所述至少一个第一待执行指令。
216.本技术还可以包括输入单元1705,输入单元1705可以包括感应触摸显示面板上的触摸事件的触摸感应单元、键盘、鼠标、摄像头、拾音器等设备中的至少一个。
217.输出单元1704可以包括:显示器、扬声器、振动机构、灯等设备中的至少一个。显示器可以包括显示面板,如触摸显示面板等。在一种可能的情况中,可以采用液晶显示器(liquid crystal display,lcd)、有机发光二极管(organic light

emitting diode,oled)等形式来配置显示面板。振动机构在工作时可以使电子设备700发生位移,在一种可能的实现方式中,振动机构包括电动机和偏心振子,电动机带动偏心振子转动从而产生振动。灯的亮度和/或颜色可调,在一种可能的实现方式中,可通过灯的亮灭、亮度、颜色中的至少一个体现不同的信息,如通过灯发出红色光体现报警信息。
218.当然,图13所示的电子设备1700的结构并不构成对本技术实施例中电子设备的限定,在实际应用中电子设备可以包括比图13所示的更多或更少的部件,或者组合某些部件。
219.本技术实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现以上各方法实施例描述的通信方法。
220.本技术实施例提供了一种处理器,该处理器用于运行程序,其中,该程序运行时实现以上各方法实施例描述的通信方法。
221.本技术还提供了一种计算机程序产品,当在数据处理设备上执行时,使得数据处理设备实现以上各方法实施例描述的通信方法。
222.其中,本技术的上述实施例提供的电子设备、处理器、计算机可读介质或计算机程序产品可以均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
223.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
224.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
225.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
226.在一个典型的配置中,计算设备包括一个或多个处理器 (cpu)、输入/输出接口、网络接口和内存。
227.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
228.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (pram)、静态随机存取存储器 (sram)、动态随机存取存储器 (dram)、其他类型的随机存取存储器 (ram)、只读存储器 (rom)、电可擦除可编程只读存储器 (eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器 (cd

rom)、数字多功能光盘 (dvd) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
229.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
230.以上描述仅为本技术的较佳实施例以及对所运用技术原理的说明而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。本技术中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本技术中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献