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

智能设备升级方法、系统、计算机设备和存储介质与流程

2022-11-19 13:58:38 来源:中国专利 TAG:


1.本技术涉及通信技术领域,特别是涉及一种智能设备升级方法、系统、计算机设备和存储介质。


背景技术:

2.随着物联网的快速发展和无线网络的快速普及,越来越多智能设备可以支持在线升级,例如可以通过空中下载技术(over-the-air technology,ota)对待升级智能设备进行在线升级。但是,在待升级智能设备信号不好的情况下,控制终端在将固件升级数据发送给待升级智能设备的过程中可能导致数据丢失。因此,为了保证待升级智能设备接收到完整的固件升级数据,控制终端需要重新将丢失的数据发送给待升级智能设备。但是,这样会影响智能设备升级的效率。


技术实现要素:

3.基于此,有必要针对上述技术问题,提供一种能够提高智能设备升级效率的智能设备升级方法、系统、计算机设备、存储介质和计算机程序产品。
4.第一方面,本技术提供了一种智能设备升级方法,所述方法包括:
5.确定与固件升级数据对应的待升级智能设备;待升级智能设备是待升级的、且能够被控制终端控制的受控设备;
6.确定待升级智能设备的目标丢包率;目标丢包率是由控制终端对待升级智能设备进行丢包测试得到的;
7.根据目标丢包率,确定用于修复固件升级数据的冗余数据包;
8.将固件升级数据和冗余数据包发送给待升级智能设备,以使待升级智能设备根据固件升级数据进行设备升级;冗余数据包用于在待升级智能设备接收的固件升级数据不完整的情况下,对接收的固件升级数据进行修复。
9.第二方面,本技术提供了一种智能设备升级系统,所述系统包括:控制终端和待升级智能设备;
10.控制终端,用于确定与固件升级数据对应的待升级智能设备;确定待升级智能设备的目标丢包率;根据目标丢包率,确定用于修复固件升级数据的冗余数据包;将固件升级数据和冗余数据包发送给待升级智能设备;待升级智能设备是待升级的、且能够被控制终端控制的受控设备;丢包率是由控制终端对待升级智能设备进行丢包测试得到的;
11.待升级智能设备,用于根据固件升级数据进行设备升级,还用于在接收的固件升级数据不完整的情况下,根据冗余数据包对接收的固件升级数据进行修复。
12.在一些实施例中,待升级智能设备为多个。控制终端还用于:向多个待升级智能设备发送用于进行丢包测试的多个测试包;根据发送给各待升级智能设备的测试包数量,以及各待升级智能设备接收到的测试包数量,计算出各待升级智能设备的丢包率;从各待升级智能设备的丢包率中选取目标丢包率。
13.在一些实施例中,控制终端还用于:将固件升级数据和冗余数据包发送给多个待升级智能设备,以使多个待升级智能设备进行设备升级。
14.在一些实施例中,控制终端还用于:对固件升级数据进行分割,得到多个升级包组合;每个升级包组合中包括至少一个固件升级包。控制终端还用于:根据目标丢包率,确定与每个升级包组合匹配的冗余数据包。控制终端还用于:依次将每个升级包组合和相匹配的冗余数据包作为同一发送数据组,向待升级智能设备传输发送数据组。
15.在一些实施例中,控制终端还用于:针对每个升级包组合,根据升级包组合中的升级固件包的数量和目标丢包率,确定出与升级包组合匹配的冗余数据包的待生成数量;基于待生成数量对升级包组合中的升级固件包进行编码转换,生成与升级包组合匹配的、且符合待生成数量的冗余数据包。
16.在一些实施例中,发送数据组,用于在发送数据组中的升级包组合未被待升级智能设备完整接收的情况下,触发待升级智能设备确定发送数据组在向待升级智能设备传输的过程中的丢包数量,并在丢包数量小于或等于发送数据组中冗余数据包的数量时,根据所接收到的发送数据组中的冗余数据包对未完整接收的升级包组合进行数据修复;其中,修复后的升级包组合用于对待升级智能设备进行设备升级。
17.在一些实施例中,控制终端还用于:在待升级智能设备所确定的丢包数量大于发送数据组中冗余数据包的数量的情况下,根据发送数据组中固件升级包的序号确定出待补齐的固件升级包;将待补齐的固件升级包发送给待升级智能设备,以使待升级智能设备根据接收到的发送数据组中的固件升级包和待补齐的升级固件包进行设备升级。
18.第三方面,本技术提供了一种控制终端,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的智能设备升级方法的步骤。
19.第四方面,本技术提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的智能设备升级方法的步骤。
20.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的智能设备升级方法中的步骤。
21.上述智能设备升级方法、系统、计算机设备、存储介质和计算机程序产品,当控制终端需要对智能设备进行固件升级时,首先需要确定与固件升级数据对应的待升级智能设备,有效避免对不需要进行固件升级的智能设备进行重复升级,能够节省固件升级的时长。其次,控制终端对各待升级智能设备进行丢包测试得到目标丢包率,并根据目标丢包率确定出用于修复固件升级数据的冗余数据包。接着,控制终端将固件升级数据和冗余数据包一并发送给待升级智能设备,若待升级智能设备接收到的固件升级数据是完整的,则待升级设备则可以根据固件升级数据进行设备升级,若待升级智能设备接收到的固件升级数据是不完整的,则待升级设备还可以直接通过接收到的冗余数据包自行对接收到的固件升级包进行恢复,从而减少丢包重传的次数,进而提高智能设备升级的效率。
附图说明
22.图1为本技术实施例提供的一种智能设备升级方法的应用环境示意图;
23.图2为本技术实施例提供的一种智能设备升级方法的流程示意图;
24.图3为本技术实施例提供的一种数据修复过程的示意图;
25.图4为本技术实施例提供的另一种智能设备升级方法的流程示意图;
26.图5为本技术实施例提供的一种智能设备升级系统的结构示意图;
27.图6为本技术实施例提供的一种计算机设备的内部结构图。
具体实施方式
28.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
29.本技术实施例提供的智能设备升级方法,可以应用于如图1所示的应用环境中。
30.可以理解,控制终端通过通信网络,例如通过无线通信技术(wifi)与智能设备进行通信,并负责对智能设备中的待升级智能设备进行设备升级。
31.数据存储系统,可以存储控制终端需要处理的数据,数据存储系统可以集成在控制终端上,也可以放在云服务或其他网络服务器上。若数据存储系统放在云服务上、且数据存储系统接收到最新版本的固件升级数据时,数据存储系统会通知控制终端,以使控制终端下载最新版本的固件升级数据,并使控制终端在各个智能设备中选取需要进行固件升级的待升级智能设备,接着根据最新版本的固件升级数据对需要进行固件升级的待升级智能设备进行设备升级。
32.其中,控制终端可以理解为智能中控,可以是安装特定程序软件的个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备、便携式可穿戴设备、控制终端、服务器、可移动的控制面板或控制旋钮等中的至少一种。物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。智能设备可以但不限于是智能灯具、智控面板、智能音箱、智能电视或智能空调等中的至少一种智能家居设备。
33.在一些实施例中,如图2所示,提供了一种智能设备升级方法,本技术实施例以该方法应用于图1所示的控制终端为例进行说明,包括但不限于包括以下步骤:
34.步骤202,确定与固件升级数据对应的待升级智能设备。
35.其中,固件指的是智能设备内部所保存的智能设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作。
36.固件升级数据,指的是对用于对智能设备的固件进行升级的相关数据。
37.待升级智能设备,指的是待升级的、且能够被控制终端控制的受控设备。可以理解,控制终端可以通过查看各个智能设备的固件版本,来确定对应的智能设备是不是待升级设备。
38.在一些实施例中,控制终端在获取最新的固件升级数据之后,可以根据固件升级数据的固件版本信息判断最新的固件版本。接着,控制终端将该固件版本分别与各个智能设备当前的固件版本进行比对。若控制终端接收到的固件版本高于智能设备当前的固件版本,则说明该智能设备当前的固件版本不是最新版本,且可以确定该智能设备为待升级设备。若控制终端接收到的固件版本不高于智能设备当前的固件版本,则说明该智能设备当前的固件版本已经为最新版本,此时控制终端不需要对该智能设备进行设备升级。本技术通过比对各个智能设备的固件版本,能够有效避免对不需要进行固件升级的智能设备进行
重复升级,从而节省设备升级的时长。
39.具体地,控制终端从各个智能设备中确定与固件升级数据对应的待升级智能设备。
40.步骤204,确定待升级智能设备的目标丢包率。
41.其中,目标丢包率是由控制终端对待升级智能设备进行丢包测试得到的、且用于表征待升级智能设备的丢包情况。
42.丢包测试,指的是通过对待升级智能设备发送数据包,以计算该智能设备丢包情况的测试。
43.丢包(packet loss),是指一个或多个数据包(packet)的数据在传输过程中无法到达指定的目的地。
44.丢包率,指的是数据包在传输中所丢失的数据包数量占所发送的数据包数量的比率。
45.具体地,控制终端通过对各个待升级智能设备进行丢包测试,确定出待升级设备的目标丢包率。
46.步骤206,根据目标丢包率,确定用于修复固件升级数据的冗余数据包。
47.具体地,控制终端根据目标丢包率确定出用于修复固件升级数据的冗余数据包。其中,确定冗余数据包的目的在于,在待升级智能设备不能接收到完整的固件升级数据的情况下,待升级智能设备可以直接根据冗余数据包对不完整的固件升级数据进行修复,以将其修复成完整的固件升级数据,保证待升级智能设备能及时根据完整的固件升级数据进行设备升级。
48.步骤208,将固件升级数据和冗余数据包发送给待升级智能设备,以使待升级智能设备根据固件升级数据进行设备升级。
49.其中,冗余数据包用于在待升级智能设备接收的固件升级数据不完整的情况下,对接收的固件升级数据进行修复。
50.具体地,控制终端将固件升级数据和冗余数据包一并发送给待升级智能设备,以使待升级智能设备在接收到完整的固件升级数据的情况下,可以直接根据完整的固件升级数据进行设备升级。此外,在待升级智能设备在接受不到完整的固件升级数据的情况下,还能够直接通过冗余数据包自行对不完整的固件升级数据进行修复,将其修复成完整的固件升级数据后再进行设备升级,从而减少丢包重传的次数,进而提高智能设备升级的效率。
51.上述智能设备升级方法,当控制终端需要对智能设备进行固件升级时,首先需要确定与固件升级数据对应的待升级智能设备,有效避免对不需要进行固件升级的智能设备进行重复升级,能够节省固件升级的时长。其次,控制终端对各待升级智能设备进行丢包测试得到目标丢包率,并根据目标丢包率确定出用于修复固件升级数据的冗余数据包。接着,控制终端将固件升级数据和冗余数据包一并发送给待升级智能设备,若待升级智能设备接收到的固件升级数据是完整的,则待升级设备则可以根据固件升级数据进行设备升级,若待升级智能设备接收到的固件升级数据是不完整的,则待升级设备还可以直接通过接收到的冗余数据包自行对接收到的固件升级包进行恢复,从而减少丢包重传的次数,进而提高智能设备升级的效率。
52.在一些实施例中,待升级智能设备为多个,步骤204具体包括但不限于包括:向多
个待升级智能设备发送用于进行丢包测试的多个测试包;根据发送给各待升级智能设备的测试包数量,以及各待升级智能设备接收到的测试包数量,计算出各待升级智能设备的丢包率;从各待升级智能设备的丢包率中选取目标丢包率。
53.其中,测试包指的是控制终端对各个待升级智能设备进行丢包测试时,向各个待升级智能设备所发送的数据包。
54.具体地,控制终端向多个待升级智能设备发送用于进行丢包测试的多个数据包,作为测试包。接着,控制终端根据其发送给各个待升级智能设备的测试包的数量,以及各个待升级设备实际接收到的测试包的数量,计算出各待升级设备的丢包率。最后,控制终端从各待升级设备的丢包率中选取其中一个丢包率,作为目标丢包率。本技术通过计算各个待升级智能设备的丢包率,能够在对各个待升级智能设备进行设备升级之前,提前了解待升级智能设备整体的丢包情况,并根据目标丢包率生成冗余数据包,以通过冗余数据包对固件升级数据进行修复,提高设备升级效率。
55.在一些实施例中,若待升级智能设备为智能灯具,该智能灯具包括智能灯1、智能灯2、智能灯3、智能灯4和智能灯5,则控制终端则可以将智能灯1、智能灯2、智能灯3、智能灯4和智能灯5拉到同一个组,例如组1,以便对同一个组内的智能灯具进行批量的丢包测试。其次,控制终端通过组播技术(multicast technology)针对组1中的智能灯1、智能灯2、智能灯3、智能灯4和智能灯5以一定速率连续发送n个测试包。由于智能灯具在信号不好的情况下可能出现丢包,所以控制终端需要通过单播的方式分别读取智能灯1、智能灯2、智能灯3、智能灯4和智能灯5实际接收到的测试包的数量m。接着,控制终端根据各个智能灯具实际接收到测试包的数量m,与发送给各个智能灯具的测试包的数量n的比值,得到各个智能灯具的丢包率k。在计算出各个智能灯具的丢包率之后,再选取一个丢包率作为目标丢包率。
56.其中,组播技术指的是单个发送者对应多个接收者的一种网络通信。
57.在一些实施例中,从多个丢包率中选取目标丢包率的过程可以是从多个丢包率中选取最大的丢包率,作为目标丢包率。在一些实施例中,还可以将多个丢包率从大到小或者从小到大进行排序,排序后筛选出一定范围内的丢包率,再选取最大的丢包率,作为目标丢包率。
58.在一些实施例中,步骤208具体包括但不限于包括:将固件升级数据和冗余数据包发送给多个待升级智能设备,以使多个待升级智能设备进行设备升级。
59.具体地,控制终端将固件升级数据和冗余数据包发送给多个待升级智能设备,以使多个待升级智能设备同时进行设备升级。本技术的控制终端除了可以给单个待升级智能设备进行设备升级,还可以同时给多个待升级设备进行批量化的设备升级,能够有效减少设备升级所花费的时间。
60.在一些实施例中,在步骤206之前,本技术的智能设备升级方法具体还包括但不限于包括:对固件升级数据进行分割,得到多个升级包组合。
61.其中,每个升级包组合中包括至少一个固件升级包。
62.具体地,控制终端还可以对固件升级数据进行分割,得到多个升级包组合。
63.可以理解,控制终端可以先将固件升级数据分割成多个固件升级包,并将一定数量的固件升级包进行组合得到升级包组合。例如,若固件升级数据的大小为100kb,若按照1kb的标准将100kb大小的固件升级数据分割成固件升级包,则可以得到100个固件升级包,
若按照10个固件升级包组合成一个升级包组合的标准,则可以得到10个升级包组合。
64.对应的,步骤206具体包括但不限于包括:根据目标丢包率,确定与每个升级包组合匹配的冗余数据包。
65.具体地,控制终端根据计算出的目标丢包率,确定与每个升级包组合匹配的冗余数据包。
66.对应的,步骤208具体还包括但不限于包括:依次将每个升级包组合和相匹配的冗余数据包作为同一发送数据组,向待升级智能设备传输发送数据组。
67.具体地,控制终端依次将每个升级包组合和相匹配的冗余数据包进行组合,即,将每个升级包组合和相匹配的冗余数据包作为同一发送数据组,分别向每个待升级智能设备传输对应的发送数据组。
68.在一些实施例中,步骤“根据目标丢包率,确定与每个升级包组合匹配的冗余数据包”具体包括但不限于包括:针对每个升级包组合,根据升级包组合中的升级固件包的数量和目标丢包率,确定出与升级包组合匹配的冗余数据包的待生成数量;基于待生成数量对升级包组合中的升级固件包进行编码转换,生成与升级包组合匹配的、且符合待生成数量的冗余数据包。
69.可以理解,根据无线信道的传输特征,升级固件包的丢包一般是呈现随机性的,所以控制终端在发送升级固件包给对应的待升级智能设备之前,需要使用一些编码算法,例如使用前向纠错编码技术生成升级固件包对应的冗余数据包。
70.在一些实施例中,冗余数据包的待生成数量是根据上述实施例计算出来的目标丢包率所确定。例如,目标丢包率r为20%,则可以考虑在通过10个固件升级包进行组合得到的升级包组合中设置2个冗余数据包。此外,可以考虑对每个升级包组合中的每个升级固件包进行编号,以及对每个升级包组合所对应的冗余数据包进行编号,以便识别出各个具体的升级固件包和冗余数据包。当确定出各升级包组合和对应的冗余数据包之后,可以依次将各升级包组合和对应的冗余数据包发送给待升级智能设备,直到所有数据发送完成。
71.具体地,控制终端针对每个升级包组合,并根据对应升级包组合中的升级固件包的数量和目标丢包率,确定出与升级包组合匹配的冗余数据包的待生成数量。接着,利用向前纠错编码算法,并基于待生成数量对升级包组合中的升级固件包进行编码转换,生成与升级包组合匹配的、且符合待生成数量的冗余数据包。可以理解,若待生成数量为2,则利用纠错编码算法所生成的冗余数据包也应该为2个。
72.在一些实施例中,发送数据组,用于在发送数据组中的升级包组合未被待升级智能设备完整接收的情况下,触发待升级智能设备确定发送数据组在向待升级智能设备传输的过程中的丢包数量,并在丢包数量小于或等于发送数据组中冗余数据包的数量时,根据所接收到的发送数据组中的冗余数据包对未完整接收的升级包组合进行数据修复。
73.其中,修复后的升级包组合用于对待升级智能设备进行设备升级。
74.丢包数量,指的是控制终端在发送升级包组合的过程中,所丢失的升级固件包的数量。
75.具体地,若发送数据组在向待升级智能设备传输的过程中的丢包数量小于或等于发送数据组中冗余数据包的数量时,则待升级智能设备可以通过对冗余数据包进行编码的编码算法将丢失的升级固件包进行数据修复,以得到完整的升级包组合。待升级智能设备
在得到完整的升级包组合之后,再根据完整的升级包组合进行设备升级。
76.在一些实施例中,如图3所示,控制终端向待升级智能设备发送的发送数据组包括10个升级固件包,简称数据包,还包括2个冗余数据包,简称冗余包。但是,在数据传输的过程中,可能存在丢包的情况,导致待升级智能设备接收不到完整的数据包和冗余包,例如待升级智能设备无法接收到数据包4和冗余包1,总共丢失2包数据。由于丢失的包数没有大于设置的冗余数据包的数量,所以可以利用对冗余数据包进行编码的编码算法,例如利用向前纠错编码算法对数据包4进行数据恢复,并且在成功恢复后,去掉多余的冗余包2,从而得到完整的升级固件包,以供控制终端根据完整的升级固件包进行设备升级,从而减少丢包重传的开销,提高设备升级效率。
77.在一些实施例中,若一个发送数据组在数据传输过程中,没有丢失任何升级固件包,则控制终端可以直接去除该发送数据组中的冗余数据包,并保存至本地以供待升级设备进行设备升级即可。
78.在一些实施例中,本技术的智能设备升级方法具体还包括但不限于包括:在待升级智能设备所确定的丢包数量大于发送数据组中冗余数据包的数量的情况下,根据发送数据组中固件升级包的序号确定出待补齐的固件升级包;将待补齐的固件升级包发送给待升级智能设备,以使待升级智能设备根据接收到的发送数据组中的固件升级包和待补齐的升级固件包进行设备升级。
79.具体地,在待升级智能设备所确定的丢包数量大于发送数据组中冗余数据包的数量的情况下,待升级智能设备不能利用对冗余数据包进行编码的编码算法进行数据修复,此时待升级设备则先保存已经收到的固件升级包。接着,待升级设备根据所保存的固件升级包对应的序号,确定出需要补齐的固件升级包,即待补齐固件升级包。控制终端则重新将待补齐固件升级包单播发送给待升级设备,以使待升级智能设备根据接收到的发送数据组中的固件升级包和待补齐的升级固件包组合成完整的升级包之后,根据完整的升级包进行设备升级。本技术在待升级智能设备不能直接进行数据修复的情况下,还能够通过定向补包技术向对应的待升级智能设备单播发送其丢失的固件升级包,能够进一步保证其进行设备升级的准确性。
80.在一些实施例中,若待升级智能设备完成升级,则控制终端可以生成对应的提示信息,以提醒用户该待升级智能设备升级完成。
81.在一些实施例中,若存在网络故障或者控制终端故障而导致升级固件包多次发送失败,则可以控制待升级智能设备进入设备升级失败状态,并提示用户进行相应的处理,保证能够及时解决。
82.在一些实施例中,如图4所示,本技术实施例的智能设备升级方法,具体还包括如下步骤:
83.步骤402,确定与固件升级数据对应的待升级智能设备。
84.步骤404,向多个待升级智能设备发送用于进行丢包测试的多个测试包。
85.步骤406,根据发送给各待升级智能设备的测试包数量,以及各待升级智能设备接收到的测试包数量,计算出各待升级智能设备的丢包率。
86.步骤408,从各待升级智能设备的丢包率中选取目标丢包率。
87.步骤410,对固件升级数据进行分割,得到多个升级包组合。
88.步骤412,针对每个升级包组合,根据升级包组合中的升级固件包的数量和目标丢包率,确定出与升级包组合匹配的冗余数据包的待生成数量。
89.步骤414,基于待生成数量对升级包组合中的升级固件包进行编码转换,生成与升级包组合匹配的、且符合待生成数量的冗余数据包。
90.步骤416,依次将每个升级包组合和相匹配的冗余数据包作为同一发送数据组,向待升级智能设备传输发送数据组。
91.步骤418,判断待升级智能设备接收到的升级包组合是否完整,若是,则执行步骤428。若否,则执行步骤420。
92.步骤420,判断待升级智能设备的丢包数量是否大于接收到的冗余数据包的数量,若是,则执行步骤422,若否,则执行步骤426。
93.步骤422,根据发送数据组中固件升级包的序号确定出待补齐的固件升级包。
94.步骤424,将待补齐的固件升级包发送给待升级智能设备。
95.步骤426,根据待升级智能设备接收到的发送数据组中的冗余数据包对未完整接收的升级包组合进行数据修复。
96.步骤428,根据升级包组合进行智能设备升级。
97.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
98.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的智能设备升级方法的智能设备升级系统。该系统所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个智能设备升级系统实施例中的具体限定可以参见上文中对于智能设备升级方法的限定,在此不再赘述。
99.参考图5,为本技术实施例提供的一种智能设备升级系统的结构示意图。在一些实施例中,如图5所示,提供了一种智能设备升级系统,包括控制终端502和待升级智能设备504,其中:
100.控制终端502,用于确定与固件升级数据对应的待升级智能设备504;确定待升级智能设备504的目标丢包率;根据目标丢包率,确定用于修复固件升级数据的冗余数据包;将固件升级数据和冗余数据包发送给待升级智能设备504;待升级智能设备504是待升级的、且能够被控制终端502控制的受控设备;丢包率是由控制终端502对待升级智能设备504进行丢包测试得到的;
101.待升级智能设备504,用于根据固件升级数据进行设备升级,还用于在接收的固件升级数据不完整的情况下,根据冗余数据包对接收的固件升级数据进行修复。
102.在一些实施例中,待升级智能设备504为多个。控制终端502还用于:向多个待升级智能设备504发送用于进行丢包测试的多个测试包;根据发送给各待升级智能设备504的测试包数量,以及各待升级智能设备504接收到的测试包数量,计算出各待升级智能设备504
的丢包率;从各待升级智能设备504的丢包率中选取目标丢包率。
103.在一些实施例中,控制终端502还用于:将固件升级数据和冗余数据包发送给多个待升级智能设备504,以使多个待升级智能设备504进行设备升级。
104.在一些实施例中,控制终端502还用于:对固件升级数据进行分割,得到多个升级包组合;每个升级包组合中包括至少一个固件升级包。控制终端502还用于:根据目标丢包率,确定与每个升级包组合匹配的冗余数据包。控制终端502还用于:
105.依次将每个升级包组合和相匹配的冗余数据包作为同一发送数据组,向待升级智能设备504传输发送数据组。
106.在一些实施例中,控制终端502还用于:针对每个升级包组合,根据升级包组合中的升级固件包的数量和目标丢包率,确定出与升级包组合匹配的冗余数据包的待生成数量;基于待生成数量对升级包组合中的升级固件包进行编码转换,生成与升级包组合匹配的、且符合待生成数量的冗余数据包。
107.在一些实施例中,发送数据组,用于在发送数据组中的升级包组合未被待升级智能设备504完整接收的情况下,触发待升级智能设备504确定发送数据组在向待升级智能设备504传输的过程中的丢包数量,并在丢包数量小于或等于发送数据组中冗余数据包的数量时,根据所接收到的发送数据组中的冗余数据包对未完整接收的升级包组合进行数据修复;其中,修复后的升级包组合用于对待升级智能设备504进行设备升级。
108.在一些实施例中,控制终端502还用于:在待升级智能设备504所确定的丢包数量大于发送数据组中冗余数据包的数量的情况下,根据发送数据组中固件升级包的序号确定出待补齐的固件升级包;将待补齐的固件升级包发送给待升级智能设备504,以使待升级智能设备504根据接收到的发送数据组中的固件升级包和待补齐的升级固件包进行设备升级。
109.在一些实施例中,提供了一种计算机设备,该计算机设备可以是控制终端,其内部结构图可以如图6所示,该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示单元和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种应用内存智能化分配方法。该计算机设备的显示单元可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示单元上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
110.本领域技术人员可以理解,图6中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
111.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
112.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
113.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
114.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
115.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献