本公开涉及车联网(v2x)领域,更具体地,涉及用于远程软件更新的方法和系统。
背景技术:
1、随着高级辅助驾驶和自动驾驶的发展,汽车变得愈发智能,这些智能汽车装有大量的软件程序,目前可以利用整车ota(over-the-air)来对车辆进行软件更新和升级,从而能够对汽车软件进行优化并增加更多功能。
2、目前的远程汽车软件更新技术(即,ota技术)是以中心化的方式(例如,星形拓扑)来实现的,其是指通过移动通信网络对车辆的零部件终端上固件、数据及应用进行远程管理的技术,其简单分为三步:首先将更新软件上传到ota中心,随后ota中心将更新软件无线传送到车辆端,最后车辆端自动更新软件。
3、然而这种传统的方式存在带宽限制问题(例如,存在所规定的针对v2x的最大带宽限制20mhz),并且由大量车辆同时触发软件更新时可能导致服务器崩溃或下载缓慢的问题。
4、因此,期望能够提供一种改进的远程软件更新方案,从而避免了由于大量同时的远程更新包获取/下载导致的服务器崩溃问题和带宽限制/拥堵问题,进一步改进了用户的远程升级体验。
技术实现思路
1、提供本公开内容以便以简化形式介绍将在以下具体实施方式中进一步的描述一些概念。本公开内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
2、针对以上问题,根据本公开的第一方面,提供了一种用于车辆的远程软件更新方法,所述方法包括:确定是否需要获取目标软件包以进行软件更新,其中所述目标软件包被划分为多个目标子包;响应于确定要进行软件更新,从与所述车辆处于车联网通信距离内的种子车辆接收所述多个目标子包中的一者或多者,所述种子车辆具有已获取的所述多个目标子包中的一者或多者;以及在接收到所述目标软件包的所有目标子包时完成远程软件更新。
3、本公开的实施方案中,利用分布式拓扑,通过在进行远程软件更新/升级期间利用种子下载技术经由v2v通信来从已经下载更新包的各种子车辆获取更新子包,以实现车端的软件更新/升级,可以避免由于大量同时的远程更新包获取/下载导致的服务器崩溃问题和带宽限制问题,实现了下载更新包的车辆越多,就可以越快地完成软件更新,进一步提升了用户的远程升级体验。
4、根据本公开的一个实施例,确定是否需要获取目标软件包以进行软件更新进一步包括:在从远程更新服务器接收到软件更新通知时或者在检查到当前软件版本与来自所述远程更新服务器的最新软件版本不一致时确定需要获取目标软件包以进行软件更新。
5、根据本公开的进一步实施例,从所述种子车辆接收所述多个目标子包中的一者或多者进一步包括:被动地从所述种子车辆接收所述多个目标子包中的一者或多者,所述多个目标子包中的一者或多者是随机广播的或按序广播的;以及丢弃所述车辆已有的目标子包。
6、根据本公开的进一步实施例,从所述种子车辆接收所述多个目标子包中的一者或多者进一步包括:向所述种子车辆请求所需的目标子包;以及从所述种子车辆接收所需的目标子包,其中所需的目标子包由所述种子车辆进行优先化传送。
7、根据本公开的进一步实施例,所述方法进一步包括:在接收到所述多个目标子包中的一者或多者之际,作为种子车辆向与所述车辆处于车联网通信距离内的其他车辆广播接收到的所述多个目标子包中的一者或多者。
8、根据本公开的进一步实施例,所述目标软件包的目标子包数目是基于目标软件包的大小和网络带宽限制来确定的。
9、根据本公开的进一步实施例,所述目标软件包的目标子包数目是基于当前的网络拥塞情形来调整的,其中在网络空闲时,目标子包数目较小,在网络繁忙时,目标子包数目较大。
10、根据本公开的进一步实施例,所述方法进一步包括:在尚未接收到所述目标软件包的所有目标子包时,直接从远程更新服务器下载尚未从所述种子车辆接收到的剩余目标子包。
11、根据本公开的进一步实施例,所述种子车辆是按以下各项中的一者或多者进行排名来筛选得到的:虚拟分数,所述虚拟分数指示作为种子车辆的贡献度;软件安装完成率;软件安装历时;或者用户等级。
12、根据本公开的第二方面,提供了一种用于车辆的远程软件更新方法,所述方法包括:响应于从远程更新服务器接收到软件更新通知,从所述远程更新服务器接收目标软件包以完成远程软件更新,其中所述目标软件包被划分为多个目标子包;以及向与所述车辆处于车联网通信距离内的其他车辆随机广播或按序广播所述多个目标子包中的一者或多者。
13、根据本公开的一个实施例,所述方法进一步包括:从与所述车辆处于车联网通信距离内的另一车辆接收对所需的目标子包的请求;以及向所述另一车辆优先化传送所需的目标子包。
14、根据本公开的第三方面,提供了一种用于车辆的远程软件更新系统,所述系统包括:更新检查模块,所述更新检查模块被配置成确定是否需要获取目标软件包以进行软件更新,其中所述目标软件包被划分为多个目标子包;更新获取模块,响应于确定要进行软件更新,从与所述车辆处于车联网通信距离内的种子车辆接收所述多个目标子包中的一者或多者,所述种子车辆具有已获取的所述多个目标子包中的一者或多者;以及更新完成模块,在接收到所述目标软件包的所有目标子包时完成远程软件更新。
15、根据本公开的一个实施例,所述更新获取模块被进一步配置成:被动地从所述种子车辆接收所述多个目标子包中的一者或多者,所述多个目标子包中的一者或多者是随机广播的或按序广播的;以及丢弃所述车辆已有的目标子包。
16、根据本公开的进一步实施例,所述更新获取模块被进一步配置成:向所述种子车辆请求所需的目标子包;以及从所述种子车辆接收所需的目标子包,其中所需的目标子包由所述种子车辆进行优先化传送。
17、根据本公开的进一步实施例,所述系统进一步包括:更新广播模块,所述更新广播模块被配置成在接收到所述多个目标子包中的一者或多者之际,作为种子车辆向与所述车辆处于车联网通信距离内的其他车辆广播接收到的所述多个目标子包中的一者或多者。
18、根据本公开第四方面,提供了一种包括如前述方面中任一项所述的远程软件更新系统的车辆。
19、根据本公开的第五方面,提供了一种存储有指令的计算机可读存储介质,当这些指令被执行时使得车辆执行前述方面中的任一者所述的方法。
20、通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。应该理解,前面的概括说明和下面的详细描述只是说明性的,不会对所要求保护的各方面形成限制。
1.一种用于车辆的远程软件更新方法,所述方法包括:
2.如权利要求1所述的方法,其特征在于,确定是否需要获取目标软件包以进行软件更新进一步包括:
3.如权利要求1所述的方法,其特征在于,从所述种子车辆接收所述多个目标子包中的一者或多者进一步包括:
4.如权利要求1所述的方法,其特征在于,从所述种子车辆接收所述多个目标子包中的一者或多者进一步包括:
5.如权利要求1所述的方法,其特征在于,进一步包括:
6.如权利要求1所述的方法,其特征在于,所述目标软件包的目标子包数目是基于目标软件包的大小和网络带宽限制来确定的。
7.如权利要求6所述的方法,其特征在于,所述目标软件包的目标子包数目是基于当前的网络拥塞情形来调整的,其中在网络空闲时,目标子包数目较小,在网络繁忙时,目标子包数目较大。
8.如权利要求1所述的方法,其特征在于,进一步包括:
9.如权利要求1所述的方法,其特征在于,所述种子车辆是按以下各项中的一者或多者进行排名来筛选得到的:
10.一种用于车辆的远程软件更新方法,所述方法包括:
11.如权利要求10所述的方法,其特征在于,进一步包括:
12.一种用于车辆的远程软件更新系统,所述系统包括:
13.如权利要求12所述的系统,其特征在于,所述更新获取模块被进一步配置成:
14.如权利要求12所述的系统,其特征在于,所述更新获取模块被进一步配置成:
15.如权利要求12所述的系统,其特征在于,进一步包括:
16.一种包括如权利要求12-15中任一项所述的远程软件更新系统的车辆。
17.一种存储有指令的计算机可读存储介质,当所述指令被执行时使得车辆执行如权利要求1-11中任一项所述的方法。