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

OTA升级包的下载方法、装置、计算机设备及存储介质与流程

2022-12-06 19:25:04 来源:中国专利 TAG:

ota升级包的下载方法、装置、计算机设备及存储介质
技术领域
1.本公开涉及智能网联汽车技术领域,尤其涉及一种ota升级包的下载方法、装置、计算机设备及存储介质。


背景技术:

2.ota(over the air,空中下载)技术可以通过网络的空中接口对终端设备进行远程管理,用户可以通过下载差分升级包或全量升级包完成终端设备的软件升级。随着汽车网联技术不断发展,汽车ota技术被提出。
3.汽车ota技术,即通过移动通信实现智能网联汽车的车联网系统升级的技术。汽车ota技术给汽车企业提供了方便快捷的软件缺陷修复手段,给用户提供了便捷的升级服务,因此受到了汽车企业的高度关注和消费者的广泛青睐。
4.在汽车ota技术的实际应用中,当云端服务器下发升级任务后,经常会出现大量汽车同时下载升级包的情况。然而,由于云端服务器的处理能力及网络带宽有限,当大量汽车同时下载升级包时,会给云端服务器带来很大的流量压力,导致单辆汽车的下载速度十分缓慢,从而导致升级包的下载时间较长。


技术实现要素:

5.为了解决上述技术问题或者至少部分地解决上述技术问题,本公开的至少一个实施例提供了一种ota升级包的下载方法、装置、计算机设备及存储介质。
6.第一方面,本公开提供了一种ota升级包的下载方法,应用于车辆,包括:
7.从云端服务器获取文件下载列表,所述文件下载列表中包括组成ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址;
8.基于所述每个文件块对应的至少一个下载地址,下载至少一个文件块;
9.在第一文件块下载完成后,将所述第一文件块的索引以及所述车辆的网络地址上报至云端服务器,以使所述云端服务器将所述网络地址作为所述第一文件块的下载地址更新至所述文件下载列表中。
10.第二方面,本公开提供了另一种ota升级包的下载方法,应用于云端服务器,包括:
11.向车辆下发文件下载列表,以使所述车辆根据所述文件下载列表下载ota升级包的至少一个文件块,其中,所述文件下载列表中包括组成所述ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址;
12.接收所述车辆发送的第一文件块的索引以及所述车辆的网络地址,其中,所述第一文件块为所述车辆下载完成的文件块;
13.根据所述第一文件块的索引和所述车辆的网络地址,更新所述文件下载列表,其中,更新后的文件下载列表中所述第一文件块对应的至少一个下载地址包括所述车辆的网络地址。
14.第三方面,本公开提供了一种ota升级包的下载装置,应用于车辆,包括:
15.获取模块,用于从云端服务器获取文件下载列表,所述文件下载列表中包括组成ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址;
16.下载模块,用于基于所述每个文件块对应的至少一个下载地址,下载至少一个文件块;
17.上传模块,用于在第一文件块下载完成后,将所述第一文件块的索引以及所述车辆的网络地址上报至云端服务器,以使所述云端服务器将所述网络地址作为所述第一文件块的下载地址更新至所述文件下载列表中。
18.第四方面,本公开提供了另一种ota升级包的下载装置,应用于云端服务器,包括:
19.发送模块,用于向车辆下发文件下载列表,以使所述车辆根据所述文件下载列表下载ota升级包的至少一个文件块,其中,所述文件下载列表中包括组成所述ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址;
20.接收模块,用于接收所述车辆发送的第一文件块的索引以及所述车辆的网络地址,其中,所述第一文件块为所述车辆下载完成的文件块;
21.更新模块,用于根据所述第一文件块的索引和所述车辆的网络地址,更新所述文件下载列表,其中,更新后的文件下载列表中所述第一文件块对应的至少一个下载地址包括所述车辆的网络地址。
22.第五方面,本公开提供了一种计算机设备,包括:处理器和存储器;所述处理器通过调用所述存储器存储的程序或指令,用于执行本公开实施例提供的任一所述的ota升级包的下载方法。
23.第六方面,本公开提供了一种计算机可读存储介质,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行本公开实施例提供的任一所述的ota升级包的下载方法。
24.第七方面,本公开提供了一种计算机程序产品,所述计算机程序产品用于执行本公开实施例提供的任一所述的ota升级包的下载方法。
25.本公开实施例提供的技术方案与现有技术相比至少具有如下优点:
26.在本公开实施例中,车辆通过从云端服务器获取文件下载列表,文件下载列表中包括组成ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址,并基于每个文件块对应的至少一个下载地址,下载至少一个文件块,进而在第一文件块下载完成后,将第一文件块的索引以及车辆的网络地址上报至云端服务器,以使云端服务器将网络地址作为第一文件块的下载地址更新至文件下载列表中。采用上述技术方案,车辆将下载完成的文件块的信息及车辆的网络地址上报给云端服务器,由云端服务器将该车辆的网络地址作为该文件块的一个下载地址更新至文件下载列表中,使得其他车辆能够从该车辆下载该文件块,从而使得车辆在下载ota升级包时,不仅是数据接收端,还能作为数据提供端为其他车辆提供文件块下载服务,从而降低了云端服务器的流量压力,能够提高ota升级包的下载速度,缩短下载时长,提高下载效率。
附图说明
27.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
28.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
29.图1为本公开一实施例提供的ota升级包的下载方法的流程示意图;
30.图2为本公开另一实施例提供的ota升级包的下载方法的流程示意图;
31.图3为本公开一实施例提供的ota升级包的下载装置的结构示意图;
32.图4为本公开另一实施例提供的ota升级包的下载装置的结构示意图。
具体实施方式
33.为了能够更清楚地理解本公开的上述目的、特征和优点,下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,所描述的实施例是本公开的一部分实施例,而不是全部的实施例,此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。基于所描述的本公开的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本公开保护的范围。
34.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
35.目前,现有的ota技术中,车辆进行系统升级时,通常仅能从云端服务器下载ota升级包,而在汽车ota技术的实际应用中,经常会出现大量汽车同时下载升级包的情况。由于云端服务器的处理能力及网络带宽有限,当大量汽车同时下载升级包时,会给云端服务器带来很大的流量压力,导致单辆汽车的下载速度十分缓慢,从而导致升级包的下载时间较长,并且车辆越多,下载升级包的速度越慢。
36.针对上述问题,本公开提供了一种ota升级包的下载方法,车辆通过从云端服务器获取文件下载列表,文件下载列表中包括组成ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址,并基于每个文件块对应的至少一个下载地址,下载至少一个文件块,进而在第一文件块下载完成后,将第一文件块的索引以及车辆的网络地址上报至云端服务器,以使云端服务器将网络地址作为第一文件块的下载地址更新至文件下载列表中。采用上述技术方案,车辆将下载完成的文件块的信息及车辆的网络地址上报给云端服务器,由云端服务器将该车辆的网络地址作为该文件块的一个下载地址更新至文件下载列表中,使得其他车辆能够从该车辆下载该文件块,从而使得车辆在下载ota升级包时,不仅是数据接收端,还能作为数据提供端为其他车辆提供文件块下载服务,从而降低了云端服务器的流量压力,能够提高ota升级包的下载速度,缩短下载时长,提高下载效率,并且同时在线的车辆越多,下载升级包的速度越快。
37.图1为本公开一实施例提供的ota升级包的下载方法的流程示意图,该ota升级包的下载方法可以由本公开实施例提供的ota升级包的下载装置执行,该ota升级包的下载装置可以采用软件和/或硬件实现,并可集成在车辆上,具体可以集成在车辆中任意具有处理能力的计算机设备上,例如车载终端设备。
38.如图1所示,本公开实施例提供的ota升级包的下载方法,应用于车辆,可以包括以下步骤:
39.步骤101,从云端服务器获取文件下载列表,所述文件下载列表中包括组成ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址。
40.本公开实施例中,文件下载列表由云端服务器进行生成和管理,车辆从云端服务器获取文件下载列表,以根据获取的文件下载列表下载文件块组成ota升级包进行车辆系统升级。
41.示例性地,云端服务器可以在检测到有新版本的ota升级包时,将整个ota升级包切分为预设大小(2n个字节,n为正整数)的多个文件块,并按照文件块的顺序为每个文件块分配对应的索引,以及为每个文件块设置对应的至少一个下载地址,进而根据每个文件块的索引及对应的至少一个下载地址,生成文件下载列表。能够理解的是,在本公开实施例中,在最初生成的文件下载列表中,每个文件块对应的下载地址相同,均为云端服务器,随着下载过程的持续,当有车辆下载完成某个文件块时,云端服务器将该车辆的网络地址作为该文件块的下载地址更新在文件下载列表中,得到更新后的文件下载列表,此时,文件下载列表中该文件块的下载地址包括已下载完成该文件块的车辆的网络地址。
42.本公开实施例中,车辆可以采用不同的方式获取文件下载列表。
43.一种可选的实施方式中,云端服务器生成或更新文件下载列表之后,可以将生成或更新的文件下载列表主动下发至车辆。
44.一种可选的实施方式中,云端服务器生成或更新文件下载列表之后,可以向车辆发送升级通知,由车辆自主选择是否获取文件下载列表进行系统升级。其中,升级通知用于提示车辆有新版本的ota升级包供下载用于系统升级。车辆在接收到云端服务器发送的升级通知后,在车辆选择进行系统升级时,可以按照预设的时间间隔从云端服务器获取文件下载列表。
45.其中,时间间隔可以根据实际需求或经验预先设定,比如可以设置时间间隔为10秒、15秒等,本公开对时间间隔的取值不作限制。
46.在本公开实施例中,车辆在接收到云端服务器发送的升级通知时,按照预设的时间间隔从云端服务器获取文件下载列表,由于本公开实施例中,云端服务器会对文件下载列表进行更新,从而,车辆按照预设的时间间隔从云端服务器获取文件下载列表,能够保证车辆获取的文件下载列表是最新的,从而保证文件下载列表中各个文件块对应的下载地址是最新的,使得车辆能够获取到可用的新下载地址,有利于提高ota升级包的下载速度。
47.为了避免车辆一直按照预设的时间间隔从云端服务器获取文件下载列表导致的带宽资源浪费,可以预先设置车辆停止从云端服务器拉取文件下载列表的条件。
48.示例性地,车辆停止从云端服务器获取文件下载列表的条件可以设置为:从车辆首次获取文件下载列表时开始计时,计时时长达到预设时长后,车辆停止从云端服务器获取文件下载列表。其中,预设时长可以预先设定,比如可以将车辆仅从云端服务器下载完成整个ota升级包所需的时长确定为预设时长。
49.示例性地,车辆停止从云端服务器获取文件下载列表的条件可以设置为:在车辆下载完成ota升级包的所有文件块之后,停止从云端服务器获取文件下载列表。
50.示例性地,车辆停止从云端服务器获取文件下载列表的条件可以设置为:在车辆接收到云端服务器下发的文件下载列表停止更新的消息后,停止从云端服务器获取文件下载列表。其中,云端服务器可以在文件下载列表停止更新一定时间后,向车辆下发文件下载
列表停止更新的消息,该一定时长应当大于车辆从云端服务器获取文件下载列表的时间间隔,以保证车辆能够获取到最近一次更新的文件下载列表。
51.示例性地,车辆停止从云端服务器获取文件下载列表的条件可以设置为:在车辆获取到相同的文件下载列表的次数达到预设次数时,停止从云端服务器获取文件下载列表。其中,预设次数可以根据实际需求预先设定。
52.步骤102,基于所述每个文件块对应的至少一个下载地址,下载至少一个文件块。
53.本公开实施例中,车辆获取到文件下载列表之后,可以根据文件下载列表设定当前的下载任务,基于每个文件块对应的至少一个下载地址,下载至少一个文件块。其中,车辆可以同时从不同的下载地址下载不同的文件块,但从同一下载地址每次仅能下载一个文件块。
54.示例性地,假设文件下载列表如表1所示,车辆可以设定当前的下载任务为从下载地址1依次下载文件块1、文件块2和文件块3,车辆每次从下载地址1下载一个文件块。
55.表1
56.文件块索引下载地址文件块1地址1文件块2地址1文件块3地址1
57.示例性地,假设文件下载列表如表2所示,车辆可以设定下载任务为从地址3下载文件块1,从地址2下载文件2以及从地址1依次下载文件块3和文件块4。
58.表2
[0059][0060]
能够理解的是,上述表1和表2中,地址1可以是云端服务器的ip地址,地址2可以是已下载完成文件块1和文件块2的车辆的网络地址(即ip地址),地址3可以是已下载完成文件块1的车辆的ip地址。
[0061]
步骤103,在第一文件块下载完成后,将所述第一文件块的索引以及所述车辆的网络地址上报至云端服务器,以使所述云端服务器将所述网络地址作为所述第一文件块的下载地址更新至所述文件下载列表中。
[0062]
其中,第一文件块为车辆下载完成的一个文件块。
[0063]
本公开实施例中,在车辆下载完成第一文件块之后,可以将第一文件块的索引以及车辆的网络地址上报至云端服务器。云端服务器接收到车辆上报的第一文件块的索引和
车辆的网络地址之后,可以根据第一文件块的索引,从本地存储的文件下载列表中找到索引对应的第一文件块,并将车辆的网络地址作为第一文件块的下载地址,更新至文件下载列表中,得到更新后的文件下载列表。从而,其他车辆获取到更新后的文件下载列表后,可以通过车辆的网络地址,从车辆下载第一文件块,而从云端服务器下载其他文件块,这样,其他车辆可以同时下载至少两个文件块,相较于现有技术中仅从云端服务器下载文件块,一次仅能下载一个文件块,下载速度得到提高。
[0064]
能够理解的是,车辆与云端服务器进行通信时,云端服务器能够获取到信息的来源地址,即车辆的网络地址,因此本公开实施例中,车辆可以不上报车辆的网络地址,仅上报下载完成的第一文件块的索引即可,云端服务器接收到车辆上报的第一文件块的索引时,可以获取到上报车辆的网络地址,将该网络地址作为第一文件块的下载地址更新在文件下载列表中的相应位置处。
[0065]
本公开实施例的ota升级包的下载方法,车辆通过从云端服务器获取文件下载列表,文件下载列表中包括组成ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址,并基于每个文件块对应的至少一个下载地址,下载至少一个文件块,进而在第一文件块下载完成后,将第一文件块的索引以及车辆的网络地址上报至云端服务器,以使云端服务器将网络地址作为第一文件块的下载地址更新至文件下载列表中。采用上述技术方案,车辆将下载完成的文件块的信息及车辆的网络地址上报给云端服务器,由云端服务器将该车辆的网络地址作为该文件块的一个下载地址更新至文件下载列表中,使得其他车辆能够从该车辆下载该文件块,从而使得车辆在下载ota升级包时,不仅是数据接收端,还能作为数据提供端为其他车辆提供文件块下载服务,从而降低了云端服务器的流量压力,能够提高ota升级包的下载速度,缩短下载时长,提高下载效率。
[0066]
在本公开的一种可选实施方式中,文件下载列表中还可以包括每个文件块分别对应的哈希值,哈希值可以用于校验文件块。从而,本公开实施例中,在将所述第一文件块的索引以及所述车辆的网络地址上报至云端服务器之前,所述方法还包括:
[0067]
根据所述第一文件块,计算所述第一文件块的哈希值作为第一哈希值;
[0068]
根据所述第一文件块的索引,从所述文件下载列表中查询所述第一文件块对应的哈希值作为第二哈希值;
[0069]
确定所述第一哈希值与所述第二哈希值匹配。
[0070]
本公开实施例中,车辆下载完成第一文件块之后,可以采用预设的哈希函数对第一文件块进行哈希值计算,将得到的哈希值作为第一哈希值,以及根据第一文件块的索引,从文件下载列表中查询第一文件块对应的哈希值,并将查询得到的哈希值作为第二哈希值,进而比较第一哈希值和第二哈希值是否匹配。如果确定第一哈希值与第二哈希值匹配,即二者一致,则表明下载的第一文件块是完整的,则车辆将第一文件块的索引及车辆的网络地址上报至云端服务器;如果确定第一哈希值与第二哈希值不匹配,则表明下载的第一文件块有误,则车辆可以重新下载第一文件块。在车辆重新下载第一文件块时,车辆可以继续从原下载地址下载第一文件块,也可以切换新的下载地址下载第一文件块,本公开对此不作限制。
[0071]
在本公开实施例中,通过计算下载完成的第一文件块的哈希值与文件下载列表中记录的第一文件块的哈希值进行比较,在确定二者匹配时才将第一文件块的索引以及车辆
的网络地址上报至云端服务器,由此,能够保证车辆下载的第一文件块的完整性和正确性,从而提高其他车辆从该车辆下载第一文件块的成功率。
[0072]
在本公开的一种可选实施方式中,车辆在将第一文件块的索引以及车辆的网络地址上报至云端服务器之前,还可以先确定车辆未接收到云端服务器发送的停止上传通知,且车辆的剩余流量大于预设的流量阈值。
[0073]
其中,停止上传通知用于指示车辆停止向云端服务器上传完成下载的文件块的索引以及车辆的网络地址。
[0074]
示例性地,云端服务器可以统计最新的文件下载列表中,各个下载地址对应的不同下载源的个数,当下载源的个数达到预设的下载源阈值时,可以认为此时的下载源已足够,无需新的下载源,此时,云端服务器可以向各个车辆下发停止上传通知,车辆收到停止上传通知后,则停止上传之后下载完成的文件块的索引。其中,预设的下载源阈值可以根据实际需求设定,比如,下载源阈值可以设置为与ota升级包划分为的文件块的数量一致。
[0075]
通常,车辆的流量是有限的,为了避免车辆作为数据提供端为其他车辆提供文件块的下载服务占用较多的流量而影响用户使用车辆的体验,本公开实施例中,可以在车辆的剩余流量小于或等于预设的流量阈值时,车辆停止上传之后下载完成的文件块的索引。其中,流量阈值可以根据实际需求预先设定,流量阈值可以是流量值,比如1g,也可以是一个百分比值,比如30%,即在剩余流量占总流量的比值小于或等于30%时,车辆停止上传之后下载完成的文件块的索引。
[0076]
在本公开实施例中,在确定车辆未接收到云端服务器发送的停止上传通知,且车辆的剩余流量大于预设的流量阈值时,车辆才将第一文件块的索引以及车辆的网络地址上报至云端服务器,而在车辆收到云端服务器发送的停止上传通知时,或者车辆的剩余流量小于或等于预设的流量阈值时,则停止上传之后下载完成的文件块的索引,由此,避免了在不必要的情况下继续上传文件块信息导致的流量资源浪费,有利于减小车辆的流量压力。
[0077]
相应地,为了实现上述实施例,本公开还提供了另一种ota升级包的下载方法。
[0078]
图2为本公开另一实施例提供的ota升级包的下载方法的流程示意图,该ota升级包的下载方法可以由本公开实施例提供的ota升级包的下载装置执行,该ota升级包的下载装置可以采用软件和/或硬件实现,并可集成在云端服务器上。
[0079]
如图2所示,本公开实施例提供的ota升级包的下载方法,应用于云端服务器,可以包括以下步骤:
[0080]
步骤201,向车辆下发文件下载列表,以使所述车辆根据所述文件下载列表下载ota升级包的至少一个文件块,其中,所述文件下载列表中包括组成所述ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址。
[0081]
本公开实施例中,文件下载列表由云端服务器进行生成和管理,具体地,可以由云端服务器的p2p服务模块生成和管理文件下载列表。云端服务器可以包括三个模块,用于提供三类服务,一是通讯服务模块提供的通讯服务,用于与车端进行常规通讯,包括下发文件下载列表、发送各类通知消息等;二是下载服务模块提供的下载服务,用于向车端提供ota升级包,车辆从云端服务器下载ota升级包的文件块时,是从下载服务模块下载获得文件块;三是p2p服务模块提供的p2p服务,用于管理p2p节点信息,将上报文件块索引的车辆作为一个p2p节点,车辆的网络地址作为所上报文件块的下载地址更新在文件下载列表中。
[0082]
示例性地,云端服务器可以在检测到有新版本的ota升级包时,将整个ota升级包切分为预设大小(2n个字节,n为正整数)的多个文件块,并按照文件块的顺序为每个文件块分配对应的索引,以及为每个文件块设置对应的至少一个下载地址,进而根据每个文件块的索引及对应的至少一个下载地址,生成文件下载列表。
[0083]
之后,随着下载过程的持续,当有车辆上报已下载完成的文件块的索引及车辆的网络地址时,云端服务器的p2p服务模块将该车辆的网络地址作为该文件块的一个下载地址,添加至文件下载列表中,得到更新后的文件下载列表。
[0084]
本公开实施例中,云端服务器生成或更新文件下载列表之后,可以主动向各个车辆下发最新的文件下载列表,或者,云端服务器可以在检测到车辆发送的获取文件下载列表的请求后,再向车辆下发最新的文件下载列表。
[0085]
步骤202,接收所述车辆发送的第一文件块的索引以及所述车辆的网络地址,其中,所述第一文件块为所述车辆下载完成的文件块。
[0086]
本公开实施例中,车辆根据文件下载列表下载至少一个文件块,并在下载完成任一文件块(称为第一文件块)后,向云端服务器上报第一文件块的索引以及车辆的网络地址。云端服务器接收车辆上报的第一文件块的索引及车辆的网络地址。
[0087]
步骤203,根据所述第一文件块的索引和所述车辆的网络地址,更新所述文件下载列表,其中,更新后的文件下载列表中所述第一文件块对应的至少一个下载地址包括所述车辆的网络地址。
[0088]
本公开实施例中,云端服务器接收到车辆上报的第一文件块的索引及车辆的网络地址之后,可以根据第一文件块的索引,从本地存储的文件下载列表中找到索引对应的第一文件块,并将车辆的网络地址作为第一文件块的下载地址,更新至文件下载列表中,得到更新后的文件下载列表。能够理解的是,更新后的文件下载列表中第一文件块对应的至少一个下载地址包括车辆的网络地址。从而,其他车辆获取到更新后的文件下载列表后,可以通过车辆的网络地址,从车辆下载第一文件块,而从云端服务器下载其他文件块,这样,其他车辆可以同时下载至少两个文件块,相较于现有技术中仅从云端服务器下载文件块,一次仅能下载一个文件块,下载速度得到提高。
[0089]
本公开实施例的ota升级包的下载方法,云端服务器通过向车辆下发文件下载列表,以使车辆根据文件下载列表下载ota升级包的至少一个文件块,并接收车辆发送的已下载完成的第一文件块的索引以及车辆的网络地址,进而根据第一文件块的索引和车辆的网络地址,更新文件下载列表,其中,更新后的文件下载列表中第一文件块对应的至少一个下载地址包括车辆的网络地址。采用上述技术方案,车辆将下载完成的文件块的信息及车辆的网络地址上报给云端服务器,由云端服务器将该车辆的网络地址作为该文件块的一个下载地址更新至文件下载列表中,使得其他车辆能够从该车辆下载该文件块,从而使得车辆在下载ota升级包时,不仅是数据接收端,还能作为数据提供端为其他车辆提供文件块下载服务,从而降低了云端服务器的流量压力,能够提高ota升级包的下载速度,缩短下载时长,提高下载效率。
[0090]
在本公开的一种可选实施方式中,云端服务器还可以统计文件下载列表中的各个下载地址对应的下载源的个数,并在确定下载源的个数大于预设的下载源阈值的情况下,向车辆发送停止上传通知。
[0091]
其中,停止上传通知用于指示车辆停止向云端服务器上传完成下载的文件块的索引以及车辆的网络地址。预设的下载源阈值可以根据实际需求设定,比如,下载源阈值可以设置为与ota升级包划分为的文件块的数量一致。
[0092]
示例性地,假设云端服务器本地存储的最新的文件下载列表如上述表2所示,经统计可知,各个下载地址对应的不同下载源的个数为3个,之后将统计结果与预设的下载源阈值进行比较,如果下载源的个数大于下载源阈值,则云端服务器向各个车辆下发停止上传通知,否则,云端服务器继续接收各个车辆上报的已完成下载的文件块的索引及车辆的网络地址。
[0093]
在本公开实施例中,云端服务器通过统计文件下载列表中的各个下载地址对应的下载源的个数,并在确定下载源的个数大于预设的下载源阈值的情况下,向车辆发送停止上传通知,由此,能够在无需更多的下载源时及时地通知各个车辆停止上报文件块信息,有利于减小车辆的流量压力。
[0094]
为了实现上述实施例,本公开还提供了一种ota升级包的下载装置。
[0095]
图3为本公开一实施例提供的ota升级包的下载装置的结构示意图,该装置可以采用软件和/或硬件实现,并可应用于车辆上。
[0096]
如图3所示,本公开实施例提供的ota升级包的下载装置30可以包括:获取模块301、下载模块302和上传模块303,其中:
[0097]
获取模块301,用于从云端服务器获取文件下载列表,所述文件下载列表中包括组成ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址;
[0098]
下载模块302,用于基于所述每个文件块对应的至少一个下载地址,下载至少一个文件块;
[0099]
上传模块303,用于在第一文件块下载完成后,将所述第一文件块的索引以及所述车辆的网络地址上报至云端服务器,以使所述云端服务器将所述网络地址作为所述第一文件块的下载地址更新至所述文件下载列表中。
[0100]
可选地,所述获取模块301,还用于:
[0101]
在接收到所述云端服务器发送的升级通知时,按照预设的时间间隔从所述云端服务器获取所述文件下载列表。
[0102]
可选地,所述文件下载列表中还包括所述每个文件块分别对应的哈希值,所述ota升级包的下载装置30还包括:
[0103]
计算模块,用于根据所述第一文件块,计算所述第一文件块的哈希值作为第一哈希值;
[0104]
查询模块,用于根据所述第一文件块的索引,从所述文件下载列表中查询所述第一文件块对应的哈希值作为第二哈希值;
[0105]
第一确定模块,用于确定所述第一哈希值与所述第二哈希值匹配。
[0106]
可选地,所述ota升级包的下载装置30还包括:
[0107]
第二确定模块,用于确定所述车辆未接收到所述云端服务器发送的停止上传通知,且所述车辆的剩余流量大于预设的流量阈值。
[0108]
本公开实施例所提供的可配置于车辆上的ota升级包的下载装置,可执行本公开实施例所提供的任意应用于车辆的ota升级包的下载方法,具备执行方法相应的功能模块
和有益效果。本公开装置实施例中未详尽描述的内容可以参考本公开任意方法实施例中的描述。
[0109]
为了实现上述实施例,本公开还提供了另一种ota升级包的下载装置。
[0110]
图4为本公开另一实施例提供的ota升级包的下载装置的结构示意图,该装置可以采用软件和/或硬件实现,并可应用于云端服务器上。
[0111]
如图4所示,本公开实施例提供的ota升级包的下载装置40可以包括:发送模块401、接收模块402和更新模块403,其中:
[0112]
发送模块401,用于向车辆下发文件下载列表,以使所述车辆根据所述文件下载列表下载ota升级包的至少一个文件块,其中,所述文件下载列表中包括组成所述ota升级包的多个文件块的索引以及每个文件块对应的至少一个下载地址;
[0113]
接收模块402,用于接收所述车辆发送的第一文件块的索引以及所述车辆的网络地址,其中,所述第一文件块为所述车辆下载完成的文件块;
[0114]
更新模块403,用于根据所述第一文件块的索引和所述车辆的网络地址,更新所述文件下载列表,其中,更新后的文件下载列表中所述第一文件块对应的至少一个下载地址包括所述车辆的网络地址。
[0115]
可选地,所述ota升级包的下载装置40还包括:
[0116]
统计模块,用于统计所述文件下载列表中的各个下载地址对应的下载源的个数;
[0117]
所述发送模块401,还用于:
[0118]
在确定所述下载源的个数大于预设的下载源阈值的情况下,向所述车辆发送停止上传通知。
[0119]
本公开实施例所提供的可配置于云端服务器上的ota升级包的下载装置,可执行本公开实施例所提供的任意应用于云端服务器的ota升级包的下载方法,具备执行方法相应的功能模块和有益效果。本公开装置实施例中未详尽描述的内容可以参考本公开任意方法实施例中的描述。
[0120]
本公开实施例还提供了一种计算机设备,包括处理器和存储器;所述处理器通过调用所述存储器存储的程序或指令,用于执行如前述任意实施例所述ota升级包的下载方法各实施例的步骤,为避免重复描述,在此不再赘述。
[0121]
本公开实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质是非暂态的,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如前述任意实施例所述ota升级包的下载方法各实施例的步骤,为避免重复描述,在此不再赘述。
[0122]
本公开实施例还提供了一种计算机程序产品,所述计算机程序产品用于执行如前述任意实施例所述ota升级包的下载方法各实施例的步骤。
[0123]
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0124]
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

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

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

相关文献