远程升级异常原因确定方法、装置、电子设备及存储介质与流程

文档序号:31665006发布日期:2022-09-27 23:46阅读:189来源:国知局
远程升级异常原因确定方法、装置、电子设备及存储介质与流程

1.本技术实施例涉及汽车技术领域,具体涉及一种远程升级异常原因确定方法、装置、电子设备及存储介质。


背景技术:

2.随着汽车智能化的普及,汽车软件升级变得愈发重要,ota(over-the-air technology,空间下载技术)作为汽车量产后软件升级的一种主要方式,其重要性也愈发体现。ota技术通过技术人员在车辆对应的云端上传新版本的软件升级包,汽车在联网的状态下连接云端并下载软件升级包(或者通过拷贝软件升级包到汽车本地)进行升级,这一过程可以简称为ota升级过程(车辆远程升级过程)。ota升级过程除了需要专业人员在云端上传升级包以外,整个过程无需专业人员参与,并且可以实现大批量车同时升级,极大的便利了车辆厂商(original equipment manufacturer,oem,或者称为原始设备制造商)通过ota技术升级车辆软件或相关硬件的工作,有利于降低车辆厂商的召回成本、提升响应需求速度以及提升客户体验度。
3.但也由于整个ota升级过程中无专业工程人员参与,一旦出现软件升级失败,就会导致工程师不能立马到达问题现场,不能及时拿到车辆升级失败的数据,很难快速找到出现失败的原因,导致ota升级问题排查十分困难,相关技术中,分析远程升级异常原因往往基于系统日志实现,即便工程师能够获取到系统日志,由于升级数据(系统日志)的数据量很大,也很难定位远程升级异常原因所需要的数据,人工进行远程升级异常原因确定效率低、成本高。


技术实现要素:

4.鉴于以上所述现有技术的缺点,本发明提供一种远程升级异常原因确定方法、装置、电子设备及存储介质,以解决上述技术问题。
5.本发明提供的一种远程升级异常原因确定方法,包括:
6.获取目标车辆远程升级过程中升级安装包的升级互动数据及升级结果,所述升级互动数据包括升级请求数据的升级请求帧头数据和升级响应数据;
7.若所述升级结果包括失败,将升级安装包确定为异常安装包;
8.基于所述异常安装包的升级请求帧头数据确定升级异常请求参数,基于所述异常安装包的升级响应数据中确定升级异常响应参数;
9.根据所述异常请求参数、异常响应参数和预设参数-异常原因映射关系确定所述异常安装包的远程升级异常原因。
10.于本发明的一实施例中,根据所述异常请求参数、异常响应参数和预设参数-异常原因映射关系确定所述异常安装包的远程升级异常原因包括:
11.根据预设升级请求验证数据验证所述升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果;
12.若升级请求验证结果或升级响应验证结果中至少之一包括验证未通过,基于预设参数-异常原因映射关系根据验证未通过的升级异常请求参数和验证未通过的升级异常响应参数确定所述异常安装包的远程升级异常原因。
13.于本发明的一实施例中,根据预设升级请求验证数据验证所述升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果之后,所述方法还包括以下至少之一:
14.若所述升级请求验证结果包括验证未通过,所述异常安装包的远程升级异常原因包括目标车辆的远程升级客户端异常;
15.若所述升级响应验证结果包括验证未通过,所述异常安装包的远程升级异常原因包括目标车辆的远程升级服务端异常。
16.于本发明的一实施例中,所述升级互动数据包括汽车盒子与网关之间的部署请求消息的部署请求帧头数据和部署响应消息。
17.于本发明的一实施例中,所述部署请求帧头数据包括部署数据包标识,所述部署数据包标识用于标识所述升级安装包的部分部署数据生成的部署数据包,根据预设升级请求验证数据验证所述升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果之后,所述方法还包括以下至少之一:
18.根据验证未通过的部署请求帧头数据中部署数据包标识确定目标数据包,将所述目标数据包对应的部署数据包确定为问题部署数据包;
19.根据验证未通过的升级异常响应参数对应的部署请求帧头数据中部署数据包标识确定目标数据包,将所述目标数据包对应的部署数据包确定为问题部署数据包。
20.于本发明的一实施例中,所述升级互动数据包括网关与被刷写对象之间的刷写请求消息的刷写请求帧头数据和刷写响应消息。
21.于本发明的一实施例中,所述刷写请求帧头数据包括刷写数据包标识,所述刷写数据包标识用于标识被刷写对象,根据预设升级请求验证数据验证所述升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果之后,所述方法还包括以下至少之一:
22.根据验证未通过的升级异常请求参数对应的刷写请求帧头数据中刷写数据包标识从各被刷写对象中确定问题被刷写对象;
23.根据验证未通过的升级异常响应参数对应的刷写请求帧头数据中刷写数据包标识从各被刷写对象中确定问题被刷写对象。
24.于本发明的一实施例中,基于所述异常安装包的升级请求帧头数据确定升级异常请求参数包括,获取所述升级请求帧头数据的升级请求有效性、升级请求标识、升级请求格式、升级请求数据长度、升级请求数据流程信息中至少之一,并确定为升级异常请求参数;
25.基于所述异常安装包的升级响应数据中确定升级异常响应参数包括,获取升级响应数据的升级响应有效性、升级响应时间、升级响应标识、升级响应格式、升级响应类型、升级响应匹配性中至少之一,并确定为升级异常响应参数。
26.于本发明的一实施例中,根据所述异常请求参数、异常响应参数和预设参数-异常原因映射关系确定所述异常安装包的远程升级异常原因之前,所述方法包括:
27.预先设定所述异常请求参数所归属的预设请求参数类型,以及预先设定所述异常
响应参数所归属的预设响应参数类型;
28.对各所述预设请求参数类型预先设定异常原因,生成预设请求参数类型-异常原因映射关系;
29.对各所述预设响应参数类型预先设定异常原因,生成预设响应参数类型-异常原因映射关系。
30.于本发明的一实施例中,若所述升级异常请求参数包括升级请求有效性,所述预设请求参数类型包括请求是否正常发出,所述异常原因包括请求未发出;
31.若所述升级异常请求参数包括升级请求标识,所述预设请求参数类型包括请求发送主体是否合法,所述异常原因包括请求发送主体非法;
32.若所述升级异常请求参数包括升级请求格式,所述预设请求参数类型包括请求消息格式是否合法,所述异常原因包括请求消息格式非法;
33.若所述升级异常请求参数包括升级请求数据长度,所述预设请求参数类型包括请求消息长度是否合法,所述异常原因包括请求消息长度非法;
34.若所述升级异常请求参数包括升级请求数据流程信息,所述预设请求参数类型包括请求发送流程是否合法,所述异常原因包括请求发送流程非法;
35.若所述升级异常响应参数包括升级响应有效性,所述预设响应参数类型包括响应是否正常发出,所述异常原因包括响应未发出;
36.若所述升级异常响应参数包括升级响应时间,所述预设响应参数类型包括响应发送时长合法,所述异常原因包括响应发送超时;
37.若所述升级异常响应参数包括升级响应标识,所述预设响应参数类型包括响应发送主体是否合法,所述异常原因包括响应发送主体非法;
38.若所述升级异常响应参数包括升级响应格式,所述预设响应参数类型包括响应消息格式是否合法,所述异常原因包括响应消息格式非法;
39.若所述升级异常响应参数包括升级响应类型,所述预设响应参数类型包括响应是否为否定响应,所述异常原因包括否定响应;
40.若所述升级异常响应参数包括升级响应匹配性,所述预设响应参数类型包括响应是否对应的请求消息,所述异常原因包括无对应的请求消息。
41.于本发明的一实施例中,所述预设参数-异常原因映射关系包括预设请求参数类型-异常原因映射关系和预设响应参数类型-异常原因映射关系,基于预设参数-异常原因映射关系根据验证未通过的升级异常请求参数和验证未通过的升级异常响应参数确定所述异常安装包的远程升级异常原因包括以下至少之一:
42.获取验证未通过的升级异常请求参数的请求参数类型,根据所述请求参数类型和预设请求参数类型-异常原因映射关系确定所述远程升级异常原因;
43.获取验证未通过的升级异常响应参数的响应参数类型,根据所述响应参数类型和预设响应参数类型-异常原因映射关系确定所述远程升级异常原因。
44.本发明提供的一种远程升级异常原因确定方法,包括:
45.采集目标车辆远程升级过程中汽车盒子与网关之间基于升级安装包生成的部署请求消息和部署响应消息,以及获取所述网关与被刷写对象之间的刷写请求消息和刷写响应消息;
46.根据所述部署响应消息和所述部署请求消息的部署请求帧头数据生成部署互动数据,根据所述刷写响应消息和所述刷写请求消息的刷写请求帧头数据生成刷写互动数据;
47.基于所述升级安装包的部署响应消息确定部署结果,以及基于刷写响应消息确定刷写结果;
48.将部署互动消息和刷写互动消息中至少之一确定为升级互动数据,将部署结果和刷写结果中至少之一确定为升级结果;
49.发送所述升级互动数据和所述升级结果至预设对象,以供所述预设对象从各所述升级安装包中确定异常安装包及异常安装包的远程升级异常原因。
50.于本发明的一实施例中,获取所述网关与被刷写对象之间的刷写请求消息和所述刷写请求消息对应的刷写响应消息包括:
51.刷写过程中,所述网关采集所述刷写请求消息和所述刷写响应消息,将所述刷写请求消息和所述刷写响应消息进行保存;
52.所述网关完成对所述被刷写对象进行刷写之后,基于所述刷写响应消息确定所述刷写请求消息的刷写结果,将所述刷写结果、所述刷写响应消息和所述刷写请求消息发送至所述汽车盒子,以供所述汽车盒子获取所述刷写结果、所述刷写响应消息和所述刷写请求消息。
53.本发明提供的一种第一远程升级异常原因确定装置,所述装置包括:
54.数据获取模块,用于获取目标车辆远程升级过程中升级安装包的升级互动数据及升级结果,所述升级互动数据包括升级请求数据的升级请求帧头数据和升级响应数据;
55.异常安装包确定模块,用于若所述升级结果包括失败,将升级安装包确定为异常安装包;
56.参数获取模块,用于基于所述异常安装包的升级请求帧头数据确定升级异常请求参数,基于所述异常安装包的升级响应数据中确定升级异常响应参数;
57.原因确定模块,用于根据所述异常请求参数、异常响应参数和预设参数-异常原因映射关系确定所述异常安装包的远程升级异常原因。
58.本发明提供的一种第二远程升级异常原因确定装置,所述装置包括:
59.采集模块,用于采集目标车辆远程升级过程中汽车盒子与网关之间基于升级安装包生成的部署请求消息和部署响应消息,以及获取所述网关与被刷写对象之间的刷写请求消息和刷写响应消息;
60.生成模块,用于根据所述部署响应消息和所述部署请求消息的部署请求帧头数据生成部署互动数据,根据所述刷写响应消息和所述刷写请求消息的刷写请求帧头数据生成刷写互动数据;
61.结果确定模块,用于基于所述升级安装包的部署响应消息确定部署结果,以及基于刷写响应消息确定刷写结果;
62.数据确定模块,用于将部署互动消息和刷写互动消息中至少之一确定为升级互动数据,将部署结果和刷写结果中至少之一确定为升级结果;
63.发送模块,用于发送所述升级互动数据和所述升级结果至预设对象,以供所述预设对象从各所述升级安装包中确定异常安装包及异常安装包的远程升级异常原因。
64.本发明提供的一种远程升级异常原因确定系统,所述系统包括如上述实施例中任一项所述的远程升级异常原因确定装置。
65.本发明提供的一种电子设备,包括:
66.一个或多个处理器;
67.存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如上述实施例中任一项所述的远程升级异常原因确定方法。
68.本发明提供的一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行上述实施例中任一项所述的远程升级异常原因确定方法。
69.本发明的有益效果:本发明中的远程升级异常原因确定方法、装置、电子设备及存储介质,通过获取目标车辆远程升级过程中升级安装包的升级互动数据及升级结果,若升级结果包括失败,将该升级安装包确定为异常安装包,基于异常安装包的升级请求帧头数据确定升级异常请求参数,基于异常安装包的升级响应数据中确定升级异常响应参数,根据异常请求参数、异常响应参数和预设参数-异常原因映射关系确定异常安装包的远程升级异常原因,能够方便快速的确定远程升级异常的异常安装包的升级请求帧头数据和升级响应数据,基于上述数据确定远程升级异常原因,效率更高、降低了成本,提升了用户体验度。
70.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
71.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
72.在附图中:
73.图1是本技术的一示例性实施例示出的远程升级异常原因确定的实施环境示意图;
74.图2是本技术的一示例性实施例示出的远程升级异常原因确定方法的流程图;
75.图3是本技术的另一示例性实施例示出的远程升级异常原因确定方法的流程图;
76.图4是本技术的另一示例性实施例示出的远程升级异常原因确定方法的流程图;
77.图5是本技术的另一示例性实施例示出的远程升级异常原因确定方法的流程图;
78.图6是本技术的另一示例性实施例示出的远程升级异常原因确定方法的流程图;
79.图7是本技术的一示例性实施例所示的部署交互数据的示意图;
80.图8是本技术的一示例性实施例所示的刷写交互数据的示意图;
81.图9是本技术的一示例性的实施例中升级请求消息与升级响应消息交互过程的示意图;
82.图10是本技术的一示例性的实施例中汽车盒子与网关之间基于升级安装包生成
的多个部署请求消息和部署响应消息的流程示意图;
83.图11是本技术的一示例性的实施例中网关与被刷写对象(以被刷控制器为例)之间基于升级安装包生成的多个刷写请求消息和刷写响应消息的流程示意图;
84.图12是本技术的一示例性的将图2-图6所示的方法应用于车辆进行ota升级过程的流程示意图;
85.图13是本技术的另一示例性的将图2-图6所示的方法应用于车辆进行ota升级过程的流程示意图;
86.图14是本技术的一示例性实施例示出的远程升级异常原因确定系统的框图;
87.图15是本技术的一示例性实施例示出的远程升级异常原因确定装置的框图;
88.图16是本技术的另一示例性实施例示出的远程升级异常原因确定装置的框图;
89.图17示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
90.以下将参照附图和优选实施例来说明本发明的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
91.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
92.在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
93.ota技术通过技术人员在车辆对应的云端上传新版本的软件升级包,汽车在联网的状态下连接云端并下载软件升级包(或者通过拷贝软件升级包到汽车本地)进行升级,这一过程可以简称为ota升级过程(车辆远程升级过程)。例如,网联汽车自动连接云端并下载软件升级包,并将升级包部署到相应的控制器,然后对控制器进行安装升级。ota升级过程除了需要专业人员在云端上传升级包以外,整个过程无需专业人员参与,并且可以实现大批量车同时升级,极大的便利了车辆厂商(original equipment manufacturer,oem,或者称为原始设备制造商)通过ota技术升级车辆软件或相关硬件的工作,有利于降低车辆厂商的召回成本、提升响应需求速度以及提升客户体验度。
94.请参见图1,图1是本技术的一示例性实施例示出的远程升级异常原因确定方法的实施环境示意图。如图1所示,一种示例的智能网联汽车的ota架构包括ota云端101、ota终端102和ota升级,其中,ota云端为oem(original equipment manufacturer,原始设备制造商)专属的云端服务器平台,其包括oem支持ota升级的ecu(electronic control unit,电子控制单元)全部完整升级包(软件升级包),远程升级前,由专业人员在云端上传软件升级
包。ota终端可以为智能网联汽车,其通过从tbox端(如4g lte等)经网关,通过总线通讯(can或以太网)将软件刷写到车内嵌入式设备ecu(目标ecu)中。智能终端103通过与ota云端101通信,以取得相关数据,进而根据其所取得的数据进行远程升级异常原因检测。
95.图1所示的智能终端103可以是智能手机、车载电脑、平板电脑、笔记本电脑或者可穿戴设备等任意支持远程升级异常原因检测的终端设备,但并不限于此。
96.当然,本领域技术人员根据需要也可以直接将该远程升级异常原因确定方法部署在ota云端、服务器或者ota终端102,通过ota云端、服务器或者ota终端102基于所获取的相关数据实现该远程升级异常原因的确定。
97.ota终端102可以是车辆,该车辆可以是基于车辆电子电气(electrical/electronic architecture,e/e)架构的车辆,该车辆可以包括以下部件中至少之一:网关(gateway,gw)、汽车盒子(telematics box,tbox或者称为tcu)、电子控制单元(electronic control unit,ecu,控制器)等模块。其中,gw是整车电子电气架构中的核心部件,其作为整车网络的数据交互枢纽,可将控制区域网络(controller area network,can)、局域互联网络(local interconnect network,lin)、多媒体数据传输(media oriented system transport,most)、flexray等网络数据在不同网络中进行路由。t-box主要用于和汽车外部、后台系统和手机应用(application,app)通信。ecu是汽车专用微机控制器。gw接收ota云端101发送的升级包,将其分发以指挥车辆内的零部件安装和激活升级包,完成对车辆中的一个或者多个ecu、零部件等的升级。
98.由于ota技术发展尚未成熟,在ota升级过程中,可能存在部分车辆远程升级故障,进而有可能导致远程升级失败。这样很有可能使用户体验低,增加用户的用车风险,甚至影响主机厂的产品美誉度。如果尽快定位远程升级过程中的故障原因,就可以尽快的解决故障,避免上述问题,故对远程升级异常原因的检测具有重要意义。
99.但也由于整个ota升级过程中无专业工程人员参与,一旦出现软件升级失败,就会导致工程师不能立马到达问题现场,不能及时拿到车辆升级失败的数据,很难快速找到出现失败的原因,导致ota升级问题排查十分困难,相关技术中,升级数据往往是系统日志,即便工程师能够获取到系统日志,由于升级数据(系统日志)的数据量很大,人工进行数据分析效率低、成本高。当然,也可以通过一定的手段找到升级失败的车辆,再进行针对性的检测,但即使工程师能够拿到升级失败的车辆,一般也很难复现出升级失败的场景,进而很难找出升级失败的原因,导致ota升级故障的原因排查非常困难。相关技术中,给出了基于系统日志进行ota升级故障检测的方法,基于系统日志本身并不能直接确定故障原因,需要进行进一步的分析才有可能得到故障原因,且系统日志的数据量很大,不利于快速的确定远程升级异常原因,效率低下。具体的,相关技术中ota问题排查方案通常是通过车辆中带智能操作系统的电子控制单元记录日志去排查问题,通过升级失败的日志去找到具体原因。但是日志记录存在着日志数据量大,记录内容只能限制在自身控制器的范围,无法很好的指导问题分析,且车辆中大多数控制器并不具有日志记录功能,这类控制器升级失败后,不会有任何记录,问题更无从查起。为解决这些问题,本技术的实施例分别提出一种远程升级异常原因确定方法、一种远程升级异常原因确定装置、一种电子设备、一种计算机可读存储介质以及一种计算机程序产品,以下将对这些实施例进行详细描述。
100.请参阅图2,图2是本技术的一示例性实施例示出的远程升级异常原因确定方法的
流程图。该方法可以应用于图1所示的实施环境,并由该实施环境中的智能终端103具体执行。应理解的是,该方法也可以适用于其它的示例性实施环境,并由其它实施环境中的设备具体执行,本实施例不对该方法所适用的实施环境进行限制。
101.如图2所示,在一示例性的实施例中,远程升级异常原因确定方法至少包括步骤s201至步骤s204,详细介绍如下:
102.步骤s201,获取目标车辆远程升级过程中升级安装包的升级互动数据及升级结果。
103.其中,升级互动数据包括升级请求数据的升级请求帧头数据和升级响应数据。
104.升级请求数据包括升级请求帧头数据和所携带的升级数据包,该升级数据包为根据升级安装包所生成的多个数据包的一个,通过将升级安装包进行数据拆分,可以方便数据传输,提升传输效率,便于进行部署和对被刷写对象的刷写。但在远程升级异常原因确定的过程中,并不关心升级数据包或者升级安装包的具体内容,若将升级数据包一并获取进行分析,将极大的占用内存和拖慢分析效率,故可以将升级请求数据中的升级数据包进行舍弃,提取其中的升级请求帧头数据,这样既能够保留下远程升级异常原因确定所需要的相关参数,又能避免过于冗杂的数据传输,提升原因确定效率。
105.可选的,一个异常安装包可以对应一个或多个升级请求数据(升级请求消息),也即对对应一个或多个升级请求帧头数据,对于一个升级请求帧头数可以对应有一个升级响应数据,当然,也有可能某一个升级请求由于种种原因导致服务端(部署阶段的网关,刷写阶段的控制器)没有反馈对应的升级响应数据(升级响应消息),此时也就不存在该升级请求数据对应的升级响应数据,对于这种情况,可以生成一个“空数据”进行“占位”,也可以设置为不强制要求一个升级请求数据对应一个升级响应数据,当不存在升级响应数据时,则跳过,此时升级响应数据为“空”(不存在)。可选的,一个升级安装包可以对应一个或多个升级互动数据。
106.在一个实施例中,目标车辆可以为一辆或多辆需要进行远程升级的车辆。当目标车辆为多辆车辆时,升级互动数据和升级结果均具有能够区别不同车辆的车辆标识,以便后续进行不同车辆的区分。
107.目标车辆的选取可以由本领域技术人员根据需要进行确定,也可以从本次远程升级(ota升级)之前,通过ota云端等方式选定升级车辆范围,从待升级的车辆中确定至少一个目标车辆。
108.远程升级过程可以理解为远程升级开启至远程升级结束的全过程,该过程并不仅限于远程升级成功或远程升级失败,换句话说,因远程升级失败导致升级任务结束也可以视为远程升级结束。
109.可选的,在步骤s201之前,需提前在ota云端上传远程上级所需要的升级安装包,配置车辆升级任务,推送该升级任务,待目标车辆正常启动后,先进行整车控制器(被刷写对象)的版本收集,tbox连入到云端,并检测到升级任务,自动将升级安装包和升级任务配置文件下载到tbox中并存到本地。通过目标车辆tbox解析升级配置文件,并将升级安装包通过提前制定好的部署协议部署到车辆的网关gw,tbox在部署软件包的同时记录下部署交互数据,并将部署交互数据和部署结果文件上传到云端。车辆网关在正确接收到升级安装包和升级配置文件后,然后通过中控屏的ota升级功能触发整车安装,网关会基于诊断协议
和刷写规范对所有下属控制器进行软件刷写,刷写的同时,网关记录下软件刷写的刷写交互数据,并保存到本地。网关完成控制器软件刷写后,将升级结果和软件刷写的刷写交互数据上传到tbox,tbox将升级结果和软件刷写交互数据上传到云端,云端使用预先设计好的数据分析方法对升级互动数据(部署交互数据和刷写互动数据中至少之一)进行分析,实现步骤s201-步骤s204。需要说明的是,上述步骤s201-步骤s204可以基于ota云端实现,也可以如图1所示通过第三方的智能终端103或其他服务器实现,还可以直接在目标车辆本地实现,具体的实现环境可以由本领域技术人员根据需要进行选取。
110.在一个可能的实施例中,本实施例远程升级异常所探讨异常原因为tbox的部署阶段和对被刷写对象(如控制器ecu)进行刷写的刷写阶段中至少之一,升级互动数据包括以下至少之一:
111.汽车盒子tbox与网关gw之间的多个部署请求消息的部署请求帧头数据和各部署请求消息对应的部署响应消息(此处部署响应消息的数量可能小于或等于部署请求帧头数据的数量);
112.网关与被刷写对象之间的多个刷写请求消息的刷写请求帧头数据和各刷写请求消息对应的刷写响应消息(此处部刷写响应消息的数量可能小于或等于刷写请求帧头数据的数量)。
113.步骤s202,若升级结果包括失败,将升级安装包确定为异常安装包。
114.可选的,对于每一个升级安装包可能会对应有一个或多个升级结果,在远程升级过程中,部署阶段会得到一个或多个部署结果(升级结果a),对控制器进行刷写的刷写阶段会生成一个或多个刷写结果(升级结果b),根据升级互动数据的具体种类,可以对应有一类或两类升级结果。不论是部署阶段的升级结果存在至少一个失败,还是刷写阶段的升级结果存在至少一个失败,均将升级结果存在失败的升级安装包确定为异常安装包,需要重点分析。
115.步骤s203,基于异常安装包的升级请求帧头数据确定升级异常请求参数,基于异常安装包的升级响应数据中确定升级异常响应参数。
116.在一个实施例中,基于异常安装包的升级请求帧头数据确定升级异常请求参数包括:
117.获取升级请求帧头数据的升级请求有效性(表征是否存在升级请求数据)、升级请求标识(升级请求数据id)、升级请求格式(升级请求数据的数据格式,报文头格式等)、升级请求数据长度、升级请求数据流程信息(升级请求数据流程信息可以表征升级请求数据的发送顺序是否符合预设规范定义的流程)中至少之一,并确定为升级异常请求参数。
118.在一个实施例中,基于异常安装包的升级响应数据中确定升级异常响应参数包括:
119.获取升级响应数据的升级响应有效性(表征升级响应数据是否存在)、升级响应时间(表征升级响应消息的响应时长,如从接受到升级请求消息到发出升级响应消息的时长,可以通过升级请求消息的请求时间戳和升级响应消息的响应时间戳来确定)、升级响应标识(升级响应数据id)、升级响应格式(升级响应数据的数据格式,报文头格式等)、升级响应类型(是肯定响应或否定响应,或者由本领域技术人员根据需要进行设定,基于该升级响应类型可以确定升级结果)、升级响应匹配性(该升级响应消息是否能够匹配到一个对应的升
级请求数据)中至少之一,并确定为升级异常响应参数。
120.可选的,升级响应匹配性的确定方式可以为通过预先规定升级响应消息的升级响应帧头包括有其响应的升级请求消息的消息id(升级请求标识),这样通过提取升级响应消息中的消息id与升级请求消息的消息id进行比对,就能够知晓该升级响应消息是否有与之匹配的升级请求消息,每一个升级请求消息的消息id均是唯一的。
121.可选的,升级请求数据流程信息可以通过本领域技术人员所知晓的方式得到,也可以通过跟踪升级请求报文的传输过程得到。
122.可选的,可以预先设定升级响应消息和升级请求消息的消息帧报头格式,规定升级消息的升级请求帧头包括升级请求有效性(表征是否存在升级请求数据)、升级请求标识(升级请求数据id)、升级请求格式(升级请求数据的数据格式,报文头格式等)、升级请求数据长度、升级请求数据流程信息(记录该升级请求消息的流转信息)等中至少之一。相应的,可以规定升级响应消息的升级响应帧头包括升级响应有效性(表征升级响应数据是否存在)、升级响应时间(表征升级响应消息的响应时长,如从接受到升级请求消息到发出升级响应消息的时长,可以通过升级请求消息的请求时间戳和升级响应消息的响应时间戳来确定,可以是分别记录升级请求消息的时间戳和升级响应消息的时间戳)升级响应标识(升级响应数据id)、升级响应格式(升级响应数据的数据格式,报文头格式等)、升级响应类型(是肯定响应或否定响应,或者由本领域技术人员根据需要进行设定,基于该升级响应类型可以确定升级结果)、升级响应匹配性(该升级响应消息是否能够匹配到一个对应的升级请求数据)等至少之一。
123.可选的,当升级请求数据为多个时,可以从每一个升级请求帧头数据中获取一份升级异常请求参数(如上述实施例所示,一个升级请求帧头数据中可以包括多个升级异常请求参数如id、格式等),从每一个升级响应数据中获取一份升级异常响应参数(如上述实施例所示,一个升级响应数据中可以包括多个升级异常响应参数如id、类型等)。
124.可选的,当存在多个升级异常请求参数时,可以按照一定的预设参数顺序进行升级异常请求参数的获取,每获取到一个升级异常请求参数,将其与预先设定的预设升级请求验证数据进行验证,若验证未通过,则停止流程,这样可以避免一次性获取较多的参数,而实际验证过程中有一些参数并没有被应用到,导致运算资源浪费,拖慢验证效率。类似的,当存在多个升级异常响应参数时,可以按照一定的预设参数顺序进行升级异常响应参数的获取,每获取到一个升级异常响应参数,将其与预先设定的预设升级响应验证数据进行验证,若验证未通过,则停止流程,这样可以避免一次性获取较多的参数,而实际验证过程中有一些参数并没有被应用到,导致运算资源浪费,拖慢验证效率。当然上述方式具有局限性,有时可能一次远程升级过程中不止存在一个故障因素,故也可以将全部的升级异常请求参数和升级异常响应参数进行验证,统一根据验证结果来确定远程升级异常原因。
125.步骤s204,根据异常请求参数、异常响应参数和预设参数-异常原因映射关系确定异常安装包的远程升级异常原因。
126.可选的,可以预先在异常请求参数、异常响应参数中设定必要参数,在获取异常请求参数、到异常响应参数之后,先判断是否存在必要参数,若必要参数不存在,或者其参数值不是某一固定值时,可以直接基于预设参数-异常原因映射关系确定异常安装包的远程升级异常原因,这样更加方便快捷,效率更高。其中,必要参数可以为上述实施例中提到的
升级响应有效性、升级请求有效性等。
127.在一个实施例中,有时单纯根据某一个或多个必要参数并不能直接定位到异常原因,若异常安装包的升级互动数据包括多个升级请求数据,根据异常请求参数、异常响应参数和预设参数-异常原因映射关系确定异常安装包的远程升级异常原因包括:
128.根据预设升级请求验证数据验证升级异常请求参数(异常安装包对应的各升级请求帧头数据提取的升级异常请求参数),得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数(与升级请求帧头数据对应的升级响应数据提取的升级异常响应参数),得到升级响应验证结果;
129.若升级请求验证结果或升级响应验证结果中至少之一包括验证未通过,基于预设参数-异常原因映射关系根据验证未通过的升级异常请求参数和验证未通过的升级异常响应参数确定异常安装包的远程升级异常原因。
130.可选的,预设参数-异常原因映射关系包括预设请求参数类型-异常原因映射关系和预设响应参数类型-异常原因映射关系,基于预设参数-异常原因映射关系根据验证未通过的升级异常请求参数和验证未通过的升级异常响应参数确定异常安装包的远程升级异常原因包括以下至少之一:
131.获取验证未通过的升级异常请求参数的请求参数类型,根据请求参数类型和预设请求参数类型-异常原因映射关系确定远程升级异常原因;
132.获取验证未通过的升级异常响应参数的响应参数类型,根据响应参数类型和预设响应参数类型-异常原因映射关系确定远程升级异常原因。
133.可选的,预设参数-异常原因映射关系可以由本领域技术人员根据需要进行设定,例如,针对于不同类型的预设参数设定相应类别的远程升级异常原因。当获取到一个验证未通过的升级异常请求参数或升级异常响应参数后,确定该参数的类型,基于该参数类型从预设参数-异常原因映射关系确定相应的远程升级异常原因。
134.预设升级请求验证数据、预设升级响应验证数据可以由本领域技术人员根据需要进行预先设定,可以针对于不同类型的参数设定相应的数据,该预设升级请求验证数据、预设升级响应验证数据可以是某一个具体的数据、数据范围或规则等,例如对于升级响应时间,对应的预设升级响应验证数据可以是3ms,对于升级请求数据长度,对应的预设升级请求验证数据可以是8bite-12bite等。
135.在一个可选的实施例中,根据异常请求参数、异常响应参数和预设参数-异常原因映射关系确定异常安装包的远程升级异常原因之前,方法包括:
136.预先设定异常请求参数所归属的预设请求参数类型,以及预先设定异常响应参数所归属的预设响应参数类型;
137.对各预设请求参数类型预先设定异常原因,生成预设请求参数类型-异常原因映射关系;
138.对各预设响应参数类型预先设定异常原因,生成预设响应参数类型-异常原因映射关系。
139.在一个可选的实施例中,若升级异常请求参数包括升级请求有效性,预设请求参数类型包括请求是否正常发出,异常原因包括请求未发出;
140.若升级异常请求参数包括升级请求标识,预设请求参数类型包括请求发送主体是
否合法,异常原因包括请求发送主体非法;
141.若升级异常请求参数包括升级请求格式,预设请求参数类型包括请求消息格式是否合法,异常原因包括请求消息格式非法;
142.若升级异常请求参数包括升级请求数据长度,预设请求参数类型包括请求消息长度是否合法,异常原因包括请求消息长度非法;
143.若升级异常请求参数包括升级请求数据流程信息,预设请求参数类型包括请求发送流程是否合法,异常原因包括请求发送流程非法;
144.若升级异常响应参数包括升级响应有效性,预设响应参数类型包括响应是否正常发出,异常原因包括响应未发出;
145.若升级异常响应参数包括升级响应时间,预设响应参数类型包括响应发送时长合法,异常原因包括响应发送超时;
146.若升级异常响应参数包括升级响应标识,预设响应参数类型包括响应发送主体是否合法,异常原因包括响应发送主体非法;
147.若升级异常响应参数包括升级响应格式,预设响应参数类型包括响应消息格式是否合法,异常原因包括响应消息格式非法;
148.若升级异常响应参数包括升级响应类型,预设响应参数类型包括响应是否为否定响应,异常原因包括否定响应,表明请求对应的客户端执行相关指令失败;
149.若升级异常响应参数包括升级响应匹配性,预设响应参数类型包括响应是否对应的请求消息,异常原因包括无对应的请求消息。
150.在一个实施例中,根据预设升级请求验证数据验证升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果包括:
151.根据预设升级请求验证数据对一个升级请求帧头数据的升级异常请求参数进行验证;
152.若升级请求验证结果包括验证未通过,停止验证;
153.若升级请求验证结果包括验证成功,根据预设升级响应验证数据对与升级请求帧头数据对应的升级响应数据的升级异常响应参数进行验证;
154.若响应验证结果包括验证成功,继续对下一个升级请求帧头数据根据预设升级请求验证数据进行验证,直到存在一个升级请求验证结果或一个升级响应验证结果包括验证未通过。
155.换句话说,本实施例中,当某一个请求发生异常后,有可能不会再生成该请求对应的响应消息,以及该升级安装包(此时为异常安装包)如果有其他待发送的数据包也将停止发送,故可以不再对之后的数据进行分析,也即由于确定到了异常安装包及异常安装包对应的升级请求数据和升级响应数据,此时可以通过先对该异常安装包的一个升级请求数据的升级请求帧头数据所确定得到的升级异常请求参数进行验证,当验证结果为验证未通过时,直接结束流程,将该升级异常请求参数在预设参数-异常原因映射关系中确定该异常安装包的远程升级异常原因。这样可以节约流程,提升效率。但当验证结果为验证通过时,则需要对该升级请求数据的升级响应数据所得到的升级异常响应参数进行验证,得到验证结果,当验证结果为验证未通过时,基于该升级异常响应参数和预设参数-异常原因映射关系
确定该异常安装包的远程升级异常原因。当某一对升级请求数据、升级响应数据均验证通过,再对该异常安装包对应的下一对升级请求数据、升级响应数据得到的升级异常请求参数、升级异常响应参数进行逐一验证,直到得到一个升级请求验证结果或一个升级响应验证结果包括验证未通过,再基于预设参数-异常原因映射关系根据验证未通过的升级异常请求参数或升级异常响应参数确定异常安装包的远程升级异常原因。
156.可选的,当从一个升级请求帧头数据中获取到多个升级异常请求参数时,可以按照预设顺序依次基于预设升级请求验证数据对各升级异常请求参数进行验证。相似的,当从一个级响应数据中获取到多个升级异常响应参数时,可以按照预设顺序依次基于预设升级响应验证数据对各升级异常响应参数进行验证。
157.在一个实施例中,根据预设升级请求验证数据验证升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果之后,该方法还包括以下至少之一:
158.若升级请求验证结果包括验证未通过,异常安装包的远程升级异常原因包括目标车辆的远程升级客户端异常;
159.若升级响应验证结果包括验证未通过,异常安装包的远程升级异常原因包括目标车辆的远程升级服务端异常。
160.可选的,若是请求消息一侧发生异常,往往是目标车辆的远程升级客户端异常,若是响应消息一侧放生了异常,则是目标车辆的远程升级服务端发生了异常。其中,当该远程升级异常原因确定方法应用于部署阶段时,由于部署阶段是由tbox向gw进行部署、发送请求,此场景下,远程升级客户端为tbox,远程升级服务端为gw;当该远程升级异常原因确定方法应用于刷写阶段时,由于刷写阶段是由gw向控制器等被刷写对象进行刷写、由被刷写对象基于接收到的请求消息生成响应消息,此场景下,远程升级客户端为gw,远程升级服务端为被刷写对象(如控制器ecu)。
161.通过以上方式,能够快速的定位异常所发生的设备侧,进而可以初步锁定异常对象,为后续远程升级异常原因的确定缩短时间。
162.在一个实施例中,升级互动数据包括汽车盒子与网关之间的部署请求消息的部署请求帧头数据和部署响应消息,部署请求帧头数据包括部署数据包标识,部署数据包标识用于标识升级安装包的部分部署数据生成的部署数据包,根据预设升级请求验证数据验证升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果之后,该方法还包括以下至少之一:
163.根据验证未通过的部署请求帧头数据中部署数据包标识确定目标数据包,将目标数据包对应的部署数据包确定为问题部署数据包;
164.根据验证未通过的升级异常响应参数对应的部署请求帧头数据中部署数据包标识确定目标数据包,将目标数据包对应的部署数据包确定为问题部署数据包。
165.可选的,一个升级安装包的部署数据可能会拆分为多个部署数据包进行部署,此时该升级安装包将对应有多个部署请求消息、部署响应消息。通过部署数据包标识能够知晓某一部署请求数据所携带的部署数据包是哪一个,当确定到基于某一个部署请求数据m的升级请求帧数据的升级异常请求参数为验证不通过时,可以说明该部署请求数据所携带的部署数据包没有正常被发送到网关,则可以基于该部署请求数据m的升级请求帧数据中
的部署数据包标识确定究竟是哪一个部署数据包没有部署成功,便于相关工作人员后续进行处理。相应的,若验证未通过的不是升级异常请求参数,而是一个升级异常响应参数,此时可以通过确定与升级异常响应参数对应的部署响应消息(部署响应数据),确定该部署响应消息对应的部署请求消息(部署请求数据),进而根据部署请求消息的升级请求帧数据中的部署数据包标识确定究竟是哪一个部署数据包没有部署成功。
166.在一个实施例中,若升级互动数据包括汽车盒子与网关之间的部署请求消息的部署请求帧头数据和部署响应消息,且该部署过程的升级结果(部署结果)为失败时,可以根据该升级结果将该部署请求消息所携带的部署数据包对应的升级安装包中确定异常安装包,将该异常安装包对应的各部署请求消息的部署请求帧头数据和部署响应消息作为异常数据,从部署请求帧头数据中获取升级异常请求参数,从部署响应消息中获取升级异常响应参数,通过预设升级请求验证数据对一个升级异常请求参数进行验证,若验证结果为验证通过,再基于预设升级响应验证数据对该升级异常请求参数对应的部署请求消息的部署响应消息所生成的升级异常响应参数进行验证,若验证通过再对下一个升级异常请求参数进行验证,直到将该异常数据中提取的各升级异常请求参数和升级异常响应参数均验证完成,基于预设参数-异常原因映射关系根据验证未通过的升级异常请求参数和/或升级异常响应参数确定异常安装包的远程升级异常原因,同时还可以根据验证未通过的升级异常请求参数和/或升级异常响应参数所对应的部署请求帧头数据或部署响应消息确定部署数据包标识,进而确定问题部署数据包。通过上述方式能够协助相关工作人员及时快速的定位部署失败的升级数据包,以及部署失败的原因,进而便于后续进行处置。
167.在一个实施例中,升级互动数据包括网关与被刷写对象之间的刷写请求消息的刷写请求帧头数据和各刷写请求消息对应的刷写响应消息,刷写请求帧头数据包括刷写数据包标识,刷写数据包标识用于标识被刷写对象,根据预设升级请求验证数据验证升级异常请求参数,得到升级请求验证结果,根据预设升级响应验证数据验证升级异常响应参数,得到升级响应验证结果之后,方法还包括以下至少之一:
168.根据验证未通过的升级异常请求参数对应的刷写请求帧头数据中刷写数据包标识从各被刷写对象中确定问题被刷写对象;
169.根据验证未通过的升级异常响应参数对应的刷写请求帧头数据中刷写数据包标识从各被刷写对象中确定问题被刷写对象。
170.例如,若升级互动数据包括网关与被刷写对象之间的刷写请求消息的刷写请求帧头数据和刷写响应消息时,且该刷写过程的升级结果(刷写结果)为失败时,可以根据该升级结果将该刷写请求消息所携带的刷写数据包对应的升级安装包中确定异常安装包,将该异常安装包对应的各刷写请求消息的刷写请求帧头数据和刷写响应消息作为异常数据,从刷写请求帧头数据中获取升级异常请求参数,从刷写响应消息中获取升级异常响应参数,通过预设升级请求验证数据对一个升级异常请求参数进行验证,若验证结果为验证通过,再基于预设升级响应验证数据对该升级异常请求参数对应的部署请求消息的部署响应消息所生成的升级异常响应参数进行验证,若验证通过再对下一个升级异常请求参数进行验证,直到异常数据中各升级异常请求参数、升级异常响应参数均完成验证,基于预设参数-异常原因映射关系根据验证未通过的升级异常请求参数和/或升级异常响应参数确定异常安装包的远程升级异常原因,同时还可以根据验证未通过的升级异常请求参数和/或升级
异常响应参数所对应的刷写请求帧头数据或刷写响应消息确定刷写数据包标识,进而确定问题刷写数据包。通过上述方式能够协助相关工作人员及时快速的定位刷写失败的被刷写对象如控制器(可以通过刷写结果直接定位刷写失败的控制器)等,以及刷写失败的原因,进而便于后续进行处置。
171.在一个可选的实施例中,升级互动数据包括部署请求帧头数据、部署响应消息、刷写请求帧头数据和刷写响应消息时,升级结果包括部署结果和刷写结果,此时可以先对部署结果进行判别,当部署结果为成功时,再对刷写结果进行判别,当刷写结果也为成功时,即升级结果为成功时,则没有异常安装包,此时可以结束该流程。当部署结果为成功、刷写结果为失败时,则对刷写请求帧头数据和刷写响应消息进行分析以确定远程升级异常原因。当部署结果为失败,则可以仅对部署请求帧头数据和部署响应消息进行分析以确定远程升级异常原因,此时可能不再有刷写互动数据和刷写结果被获取到,或者刷写互动数据和刷写结果均为空。
172.参见图3,图3是本技术的另一示例性实施例示出的远程升级异常原因确定方法的流程图,若升级异常请求参数包括升级请求帧头数据的升级请求有效性、升级请求标识、升级请求格式、升级请求数据长度、升级请求数据流程信息,升级异常响应参数包括升级响应数据的升级响应有效性、升级响应时间、升级响应标识、升级响应格式、升级响应类型、升级响应匹配性,如图3所示,该具体的方法包括:
173.首先可以由ota云端等预设对象来获取升级结果、升级互动数据,解析升级结果,若升级结果包括失败,则基于该升级结果确定对应的升级安装包为异常安装包,并将该异常升级安装包对应的升级请求数据的升级请求帧头数据、升级响应数据作为异常数据,从异常安装包的升级请求帧头数据中获取升级异常请求参数,从异常安装包的升级响应数据中获取升级异常响应参数。分别判断升级请求是否发出(也即判断升级请求有效性)、升级请求数据id(升级请求标识)、格式(升级请求格式)是否正确、升级请求数据长度是否正确、升级请求数据流程信息是否正确、升级响应时间是否超时、是否收到升级响应数据(也即判断升级响应有效性)、升级响应id(升级响应标识)、格式(升级响应格式)是否正确、升级响应数据是否为肯定响应(也即判断升级响应类型)、升级响应数据能否匹配升级请求数据(也即判断升级响应匹配性),根据上述验证过程中未通过验证(图中的“n”)的升级异常请求参数和升级异常响应参数中至少之一基于预设参数-异常原因映射关系确定异常安装包的远程升级异常原因。例如,判断是否发出升级请求命令,如果未发出,则判断客户端存在问题;判断升级请求命令使用的id和数据格式是否符合规范定义,数据长度是否满足规范要求,如果不满足,则判断客户端存在问题;判断该升级请求发送顺序是否满足了规范中定义的流程,如果不满足,则判断客户端存在问题;判断升级响应数据是否超时,如果超时,则判断服务器存在问题;判断是否收到了升级响应,如果未收到,则判断服务器存在问题;判断升级响应id和数据格式是否正确,数据长度是否正确,并确认是否收到的是一个肯定响应(正响应),且响应的数据能够正确匹配请求数据,如不满足这些条件,则判断服务器出现问题,如果都满足(均为y),则按照上述步骤对该异常安装包所对应的下一组升级异常请求参数和升级异常响应参数进行判定。
174.通过上述方式可以得到初步分析的异常安装包的远程升级异常原因,可以便于工程师直接在云端根据数据分析得到结果,快速定位问题点,锁定问题样件,提高问题发现的
和解决的效率。
175.参见图4,图4是本技术的另一示例性实施例示出的远程升级异常原因确定方法的流程图,以该方法应用于部署阶段的远程升级异常原因确定,升级互动数据为部署互动数据,以该部署互动数据包括汽车盒子与网关之间的多个部署请求消息的部署请求帧头数据和部署响应消息为例,升级结果为部署结果,升级异常请求参数包括部署请求帧头数据的部署请求有效性、部署请求标识、部署请求格式、部署请求数据长度、部署请求数据流程信息,部署异常请求参数包括部署响应数据的部署响应有效性、部署响应时间、部署响应标识、部署响应格式、部署响应类型、部署响应匹配性,升级安装包被拆分为多个数据包进行部署,也即该升级安装包存在多组部署请求消息和部署响应消息,如图4所示,该具体的方法包括:
176.首先可以由ota云端等预设对象来获取部署结果(部署结果文件)、部署互动数据(部署请求数据的部署请求帧头数据和部署响应数据),解析部署结果(部署结果文件),判断部署结果是否包括失败,若部署结果失败,则基于该部署结果确定对应的升级安装包为异常安装包,并将该异常升级安装包对应的部署请求数据的部署请求帧头数据、部署响应数据作为异常数据,从异常安装包的部署请求帧头数据中获取部署异常请求参数,从异常安装包的部署响应数据中获取部署异常响应参数。分别判断部署请求是否发出(也即判断部署请求有效性)、部署请求数据id(部署请求标识)、格式(部署请求格式)是否正确、部署请求数据长度是否正确、部署请求数据流程信息是否正确、部署响应时间是否超时、是否收到部署响应数据(也即判断部署响应有效性)、部署响应id(部署响应标识)、格式(部署响应格式)是否正确、部署响应数据是否为肯定响应(也即判断部署响应类型)、部署响应数据能否匹配部署请求数据(也即判断部署响应匹配性),根据上述验证过程中未通过验证(图中的“n”)的部署异常请求参数和部署异常响应参数中至少之一基于预设参数-异常原因映射关系确定异常安装包的远程部署异常原因。同时,也可以基于上述验证过程中未通过验证(图中的“n”)的部署异常请求参数和部署异常响应参数来确定哪些数据包部署失败,定位到部署失败的问题样件。例如,判断是否发出部署请求命令,如果未发出,则判断客户端存在问题;判断部署请求命令使用的id和数据格式是否符合规范定义,数据长度是否满足规范要求,如果不满足,则判断客户端存在问题;判断该部署请求发送顺序是否满足了规范中定义的流程,如果不满足,则判断客户端存在问题;判断部署响应数据是否超时,如果超时,则判断服务器存在问题;判断是否收到了部署响应,如果未收到,则判断服务器存在问题;判断部署响应id和数据格式是否正确,数据长度是否正确,并确认是否收到的是一个肯定响应(正响应),且响应的数据能够正确匹配请求数据,如不满足这些条件,则判断服务器出现问题,如果都满足(均为y)。上述客户端为tbox,服务端为gw。判断是否存在下一组部署异常请求参数和部署异常响应参数,若存在则按照上述步骤对该异常安装包所对应的下一组部署异常请求参数和部署异常响应参数进行判定。
177.参见图5,图5是本技术的另一示例性实施例示出的远程升级异常原因确定方法的流程图,以该方法应用于刷写阶段的远程升级异常原因确定,升级互动数据为刷写互动数据,以该刷写互动数据包括网关与被刷写对象(如控制器等)之间的多个刷写请求消息的刷写请求帧头数据和刷写响应消息为例,升级结果为刷写结果,升级异常请求参数包括刷写请求帧头数据的刷写请求有效性、刷写请求标识、刷写请求格式、刷写请求数据长度、刷写
请求数据流程信息,刷写异常请求参数包括刷写响应数据的刷写响应有效性、刷写响应时间、刷写响应标识、刷写响应格式、刷写响应类型、刷写响应匹配性,升级安装包被拆分为多个数据包进行刷写,也即该升级安装包存在多组刷写请求消息和刷写响应消息,如图5所示,该具体的方法包括:
178.首先可以由ota云端等预设对象来获取刷写结果(图中的升级结果文件)、刷写互动数据(刷写请求数据的刷写请求帧头数据和刷写响应数据),解析刷写结果(刷写结果文件),判断刷写结果是否包括失败,也即判断是否存在升级失败的控制器,若刷写结果失败,则基于该刷写结果确定对应的升级安装包为异常安装包,并将该异常升级安装包对应的刷写请求数据的刷写请求帧头数据、刷写响应数据作为异常数据(或者将该控制器对应的刷写交互数据作为异常数据),从异常安装包的刷写请求帧头数据中获取刷写异常请求参数,从异常安装包的刷写响应数据中获取刷写异常响应参数。分别判断刷写诊断请求是否发出(也即判断刷写请求有效性)、刷写诊断请求数据id(刷写请求标识)、格式(刷写请求格式)是否正确、刷写请求数据长度是否正确、刷写请求数据流程信息是否正确(图中的刷写流程)、刷写响应(诊断响应)时间是否超时、是否收到刷写响应(诊断响应)数据(也即判断刷写响应有效性)、刷写响应(诊断响应)id(刷写响应标识)、格式(刷写响应格式)是否正确、刷写响应(诊断响应)数据是否为肯定响应(也即判断刷写响应类型)、刷写响应(诊断响应)数据能否匹配刷写请求数据(也即判断刷写响应匹配性),根据上述验证过程中未通过验证(图中的“n”)的刷写异常请求参数和刷写异常响应参数中至少之一基于预设参数-异常原因映射关系确定异常安装包的远程刷写异常原因。同时,也可以基于上述验证过程中未通过验证(图中的“n”)的刷写异常请求参数和刷写异常响应参数来确定哪些数据包刷写失败,定位到刷写失败的问题样件。例如,判断是否发出刷写请求命令,如果未发出,则判断客户端存在问题;判断刷写请求命令使用的id和数据格式是否符合规范定义,数据长度是否满足规范要求,如果不满足,则判断客户端存在问题;判断该刷写请求发送顺序是否满足了规范中定义的流程,如果不满足,则判断客户端存在问题;判断刷写响应数据是否超时,如果超时,则判断服务器存在问题;判断是否收到了刷写响应,如果未收到,则判断服务器存在问题;判断刷写响应id和数据格式是否正确,数据长度是否正确,并确认是否收到的是一个肯定响应(正响应),且响应的数据能够正确匹配请求数据,如不满足这些条件,则判断服务器出现问题,如果都满足(均为y)。上述客户端为gw,服务端为被刷写对象(控制器)。判断是否存在下一组刷写异常请求参数和刷写异常响应参数,若存在则按照上述步骤对该异常安装包所对应的下一组刷写异常请求参数和刷写异常响应参数进行判定。
179.上述实施例提供的远程升级异常原因确定方法,通过获取目标车辆远程升级过程中多个升级安装包的升级互动数据及升级结果,若存在至少一个升级结果包括失败,将升级结果对应的升级安装包确定为异常安装包,基于异常安装包的升级请求帧头数据中确定升级异常请求参数,基于异常安装包的升级响应数据中确定升级异常响应参数,根据异常请求参数、异常响应参数和预设参数-异常原因映射关系确定异常安装包的远程升级异常原因,能够方便快速的确定远程升级异常的异常安装包的升级请求帧头数据和升级响应数据,基于上述数据确定远程升级异常原因,效率更高、准确性更佳、降低了成本,提升了用户体验度。
180.参见图6,图6是本技术的一示例性实施例示出的远程升级异常原因确定方法的流
程图。该方法可以应用于图1所示的实施环境,并由该实施环境中的ota终端102具体执行。应理解的是,该方法也可以适用于其它的示例性实施环境,并由其它实施环境中的设备具体执行,本实施例不对该方法所适用的实施环境进行限制。
181.如图6所示,在一示例性的实施例中,远程升级异常原因确定方法至少包括步骤s601至步骤s605,详细介绍如下:
182.步骤s601,采集目标车辆远程升级过程中汽车盒子与网关之间基于升级安装包生成的部署请求消息和部署响应消息(可能存在多组部署请求消息和部署响应消息,此处的部署请求消息可以理解为上述实施例中的部署请求数据,部署响应消息可以理解为上述实施例中的部署响应数据),以及获取网关与被刷写对象之间的刷写请求消息和刷写响应消息;
183.步骤s602,根据部署响应消息和部署请求消息的部署请求帧头数据生成部署互动数据,根据刷写响应消息和刷写请求消息的刷写请求帧头数据生成刷写互动数据;
184.步骤s603,基于升级安装包的部署响应消息确定部署结果,以及基于刷写响应消息确定刷写结果;
185.步骤s604,将部署互动消息和刷写互动消息中至少之一确定为升级互动数据,将部署结果和刷写结果中至少之一确定为升级结果;
186.步骤s605,发送升级互动数据和升级结果至预设对象,以供预设对象从各升级安装包中确定异常安装包及异常安装包的远程升级异常原因。
187.其中,升级安装包的介绍可以参照前述实施例的说明,在此不再赘述。
188.可选的,该远程升级异常原因确定方法可以应用于目标车辆的汽车盒子tbox或其他本领域技术人员所设定的设备。
189.在步骤s603中,部署结果可以由tbox来确定,也可以由第三方设备基于获取到的部署响应消息来确定部署结果,当某一个升级安装包的多个部署响应消息中存在至少一个部署响应消息的消息类型为否定类型,此时该升级安装包的部署结果为失败,否则,当某一个升级安装包的多个部署响应消息中存在各部署响应消息的消息类型均为肯定类型,此时该升级安装包的部署结果为成功。
190.在步骤s603中,刷写结果可以由网关来确定,也可以由第三方设备基于获取到的刷写响应消息来确定部署结果,当某一个升级安装包的多个刷写响应消息中存在至少一个刷写响应消息的消息类型为否定类型,此时该升级安装包的刷写结果为失败,否则,当某一个升级安装包的多个刷写响应消息中存在各刷写响应消息的消息类型均为肯定类型,此时该升级安装包的刷写结果为成功。
191.预设对象可以为图1中的智能终端,也可以为ota云端、目标车辆的预设模块或本领域技术人员所制定的其他设备。
192.其中,预设对象从各升级安装包中确定异常安装包及异常安装包的远程升级异常原因的方式可以参考图2所示的实施例中的方法。图2中获取的升级互动数据、升级结果可以通过图3所示的方法提供,也可以通过本领域技术人员所知晓的方式获取。
193.可选的,可以预先对目标车辆中的tbox和网关进行配置,使其能够在目标车辆远程升级过程中记录部署请求数据和刷写请求数据。
194.可选的,部署请求消息包括部署请求帧头数据和部署数据包数据,对于部署数据
包数据在后续进行远程升级异常原因确定的过程中并没有实际价值,为避免数据量过大拖慢运算效率和内存占用过高,可以仅提取部署请求消息中的部署请求帧头数据以及部署响应数据作为部署互动数据。相似的,部署请求消息包括刷写请求帧头数据和刷写数据包数据,对于刷写数据包数据在后续进行远程升级异常原因确定的过程中并没有实际价值,为避免数据量过大拖慢运算效率和内存占用过高,可以仅提取刷写请求消息中的刷写请求帧头数据以及刷写响应数据作为刷写互动数据。
195.在一个实施例中,获取网关与被刷写对象之间的刷写请求消息和刷写请求消息对应的刷写响应消息包括:
196.刷写过程中,网关采集刷写请求消息和刷写响应消息,将刷写请求消息和刷写响应消息进行保存,此处的保存可以是本地保存等保存方式;
197.可选的,网关完成对被刷写对象进行刷写之后,基于刷写响应消息确定刷写请求消息的刷写结果,将刷写结果、刷写响应消息和刷写请求消息发送至汽车盒子,以供汽车盒子获取刷写结果、刷写响应消息和刷写请求消息,由于刷写过程中可能会将升级安装包拆解为多个刷写数据包进行刷写,待各个刷写数据包均被发送给被刷写对象,且被刷写对象反馈了刷写反馈消息后可以视为网关完成对被刷写对象进行刷写,特殊情况下,由于异常因素导致长时间接收不到刷写反馈消息,也可以视为网关完成对被刷写对象进行刷写。
198.参见图7和图8,图7为一示例性实施例所示的部署交互数据的示意图,图8为一示例性实施例所示的刷写交互数据的示意图。
199.参见表1,表1为一种示例性的升级任务和升级安装包的示例,可见每一个被刷写对象均对应有一个升级安装包,其中升级控制器即为被刷写对象,升级包版本即为升级安装包的版本号。
200.表1
201.任务序号升级控制器升级包版本1ecu1ecu1_swa.12ecu2ecu2_swa.23ecu3ecu3_swa.34ecu4ecu4_swa.4
202.参见表2,以部署阶段为例,表2为一种示例性的升级结果(部署结果)的示例,其中部署软件包列标识升级安装包的部署数据包标识。
203.表2
204.任务序号部署软件包部署结果1ecu1_swa.1成功/失败2ecu2_swa.2成功/失败3ecu3_swa.3成功/失败4ecu4_swa.4成功/失败
205.参见表3,以刷写阶段为例,表3为一种示例性的升级结果(刷写结果)的示例,其中升级控制器即为被刷写对象。
206.表3
207.任务序号升级控制器升级结果1ecu1成功/失败2ecu2成功/失败3ecu3成功/失败4ecu4成功/失败
208.如图9所示,图9为在一示例性的实施例中升级请求消息与升级响应消息交互过程的示意图,如图9所示,客户端首先发送升级请求消息给服务端,服务端接收到升级请求后生成升级响应消息并反馈给客户端,完成认证后,开始将升级安装包生成的多个数据包依次通过升级请求消息依次向客户端发送,客户端反馈升级响应消息给服务端,完成最后一包数据的发送后,客户端发送升级校验请求,服务端生成升级响应消息反馈给客户端,记录上述过程中的升级响应消息和升级请求消息的升级请求帧头数据(图中的发送帧头数据)作为升级互动数据。
209.请参见图10,图10为在一示例性的实施例中汽车盒子与网关之间基于升级安装包生成的多个部署请求消息和部署响应消息的流程示意图,如图10所示,tbox(图中的t-box)首先发送部署请求消息给网关请求部署升级包,网关接收到升级请求后生成部署响应消息(应答响应)并反馈给tbox,完成认证后,tbox开始将升级安装包生成的多个部署数据包依次通过部署请求消息依次向网关发送,网关反馈升级响应消息给网关,完成最后一包数据的发送后,tbox发送请求结束部署请求,网关生成部署响应消息(应答响应)反馈给tbox,记录上述过程中的部署响应消息和部署请求消息的部署请求帧头数据(图中的发送帧头数据)作为部署互动数据。
210.请参见图11,图11为在一示例性的实施例中网关与被刷写对象(以被刷控制器为例)之间基于升级安装包生成的多个刷写请求消息和刷写响应消息的流程示意图,如图11所示,网关首先发送刷写请求消息给网关请求安装,被刷控制器接收到升级请求后生成刷写响应消息(应答响应)并反馈给网关,完成认证后,开始将升级安装包生成的多个刷写数据包依次通过刷写请求消息依次向被刷控制器发送,被刷控制器反馈升级响应消息给网关,完成最后一包数据的发送后,网关发送刷写校验,被刷控制器生成刷写响应消息(应答响应)反馈给网关,记录上述过程中的刷写响应消息和刷写请求消息的刷写请求帧头数据(图中的发送帧头数据)作为刷写互动数据。
211.参见图12和图13,图12为一种示例性的将上述实施例的方法应用于车辆进行ota升级过程的流程示意图,图13为另一种示例性的将上述实施例的方法应用于车辆进行ota升级过程的流程示意图,如图12和图13所示,首先由云端(ota云端)配置升级任务,在云端选择测试车型,在云端上传该车型控制器的软件升级包(升级安装包),云端生成升级任务,车端下载升级包和升级任务文件到tbox,车端tbox将升级包通过部署协议部署到网关,记录整个部署交互过程,tbox并将部署交互数据和部署结果上传到云端,部署完成后,如果部署不成功,则本次升级任务结束,云端收到部署结果和部署数据文件,根据部署结果文件找出部署失败软件包(异常安装包),并使用自动分析方法(图2所示的方法)对部署交互数据进行分析,如果部署成功,ota升级触发(如通过中控屏的ota升级功能触发整车安装等),网关解析升级包,并对被刷写对象(被刷控制器)进行刷写,记录整个刷写过程中的关键数据流(刷写交互数据),存储在本地,刷写完成后,上传升级结果(刷写结果)和刷写交互数据到
tbox,还可以对升级结果进行提示,tbox将升级结果(刷写结果)和刷写交互数据文件上传到云端。云端收到升级结果和刷写交互数据后,先判断升级结果,如果所有控制器都升级成功,则流程结束,如果有控制器升级失败,则列出所有升级失败的控制器,并使用制定的刷写数据分析方法(图6所示的方法)对刷写失败的控制器的刷写交互数据进行自动化分析,定位到数据中出现问题的数据及原因,协助工程师定位问题样件。
212.可选的,云端收到上传的部署结果和部署交互数据文件以及刷写结果和刷写交互数据文件后先对部署结果(部署阶段的升级结果)进行判断,如果是部署阶段出现的问题,列出部署失败的软件包(问题部署数据包),云端使用部署数据分析方法(图4所示的实施例的方法)对收到部署数据进行自动化分析,分析后自动定位到出现问题时间点的数据段(问题部署数据包),便于工程师根据数据锁定问题样件(问题部署数据包);如果部署阶段正常(部署结果成功),则云端对刷写结果(刷写阶段的升级结果)进行判定,如果所有控制器升级成功,则流程结束,如果有控制器升级失败,则云端根据升级结果文件,列出所有升级失败的控制器,云端开始对升级失败控制器的刷写交互数据进行分析,云端从软件刷写交互数据中找到失败控制器的数据,根据预先设计的刷写数据分析方法(图5所示的方法)对该数据进行自动化分析,分析后自动定位到出现问题时间点的数据段(问题刷写数据包),分析完成后,云端自动分析下一个升级失败控制器(下一个异常升级包)的刷写交互数据,直到遍历所有升级失败控制器。
213.上述实施例提供的远程升级异常原因确定方法,通过采集目标车辆远程升级过程中汽车盒子与网关之间基于升级安装包生成的部署请求消息和部署响应消息,以及获取网关与被刷写对象之间的刷写请求消息和刷写响应消息,根据部署响应消息和部署请求消息的部署请求帧头数据生成部署互动数据,根据刷写响应消息和刷写请求消息的刷写请求帧头数据生成刷写互动数据,基于升级安装包的部署响应消息确定部署结果,以及基于刷写响应消息确定刷写结果,将部署互动消息和刷写互动消息中至少之一确定为升级互动数据,将部署结果和刷写结果中至少之一确定为升级结果,发送升级互动数据和升级结果至预设对象,以供预设对象从各升级安装包中确定异常安装包及异常安装包的远程升级异常原因,提供了一种新型的ota升级过程中升级关键数据(升级互动数据)的采集方式,与相关技术中以日志文件作为远程升级异常原因确定的数据的方式相比,更具有针对性,也更加容易被筛选得到,更为高效便利,有效降低了人工的工作量,降低人工成本。
214.可选的,该方法可以基于实时数据分析检测ota升级故障原因,通过根据车辆ota升级中用的部署协议和安装协议,制定上述实施例提供的方法来监控整个ota升级过程。车辆升级过程中,根据升级数据协议,记录关键升级数据(升级互动数据),过滤了无用数据(如升级数据包等),解决了升级数据采集难和升级数据量太大的问题,采集后的数据能够自动上传到云端服务器,无需工程师到问题现场,节约了问题排查时间,同时数据上传云端后,使用自动化的分析方法(如图2所示的方法)对数据进行分析,解决了人工分析数据时间长,易出错的问题。该方法能够在ota升级故障出现时,自动采集数据,并上传云端,能够快速分析数据找出问题原因,提高问题排查的效率。
215.可选的,上述实施例提供的方法,车端(目标车辆)能够自动采集ota失败车辆的数据,会自动将部署结果文件和刷写结果文件上传到云端,解决了ota云端对车辆升级失败时升级失败数据采集困难的问题,部署结果文件采集到云端后,云端可以利用图2-图5所述的
方法自动化分析部署数据并定位问题点,锁定问题控制器,解决了问题难定位的问题。升级结果文件采集到云端后,云端会使用升级文件数据分析方法(图2-图5所示的方法)进行自动化分析,找出刷写失败的数据点,定位问题样件,解决了升级数据量大,升级数据难分析的问题,提高了ota问题排查效率。
216.参见图14,如图14所示,上述各实施例的方法可以应用于图14所示的远程升级异常原因确定系统,该系统包括:
217.软件与升级任务管理模块:负责维护车型各个控制器的软件信息,包含曾经的和最新的软件包、软件唯一标识、软件版本信息,在接收到车端上传的各个控制器的软件信息后与最新的各个控制器的软件信息进行比并生成升级任务;
218.升级结果(刷写结果)分析模块:负责对车端上传的升级结果文件进行分析,提取升级失败的控制器列表(确定刷写失败的被刷写对象);
219.部署交互数据分析模块:负责分析tbox将数据包部署给网关的部署数据流(汽车盒子与网关之间的多个部署请求消息的部署请求帧头数据和部署响应消息),根据预先制定的部署协议(预设升级请求验证数据),找出数据流(部署请求消息的部署请求帧头数据和部署响应消息)中不符合规则的数据内容(确定验证未通过的升级异常请求参数和升级异常响应参数);
220.刷写交互数据分析模块:负责分析网关刷写控制器的刷写数据流(网关与被刷写对象之间的多个刷写请求消息的刷写请求帧头数据和刷写响应消息),根据预先制定的刷写协议和刷写流程(预设升级请求验证数据),找出数据流中不符合规则的数据内容(定验证未通过的升级异常请求参数和升级异常响应参数);
221.软件包部署模块(如tbox):负责将软件包下发给网关;
222.部署数据记录模块:负责记录整个部署过程中的关键交互数据(部署交互数据),并存在本地;
223.数据上传模块(如tbox):负责上传部署交互数据和刷写交互数据到云端;
224.ota刷写模块:负责解析软件包,提取软件数据对控制器ecu进行刷写;
225.刷写数据记录模块:负责记录刷写数据,并将数据传输给tbox。
226.工程师可以通过查询上述部署交互数据分析模块、刷写交互数据分析模块所确定得到的远程升级异常原因(分析结果),确定问题样件(问题部署数据包、问题被刷写对象)。
227.图15是本技术的一示例性实施例示出的第一远程升级异常原因确定装置的框图。该装置可以应用于图1所示的实施环境。该装置也可以适用于其它的示例性实施环境,并具体配置在其它设备中,本实施例不对该装置所适用的实施环境进行限制。
228.如图15所示,该示例性的第一远程升级异常原因确定装置1500包括:
229.数据获取模块1501,用于获取目标车辆远程升级过程中升级安装包的升级互动数据及升级结果,升级互动数据包括升级请求数据的升级请求帧头数据和升级响应数据;
230.异常安装包确定模块1502,用于若升级结果包括失败,将升级安装包确定为异常安装包;
231.参数获取模块1503,用于基于异常安装包的升级请求帧头数据确定升级异常请求参数,基于异常安装包的升级响应数据中确定升级异常响应参数;
232.原因确定模块1504,用于根据异常请求参数、异常响应参数和预设参数-异常原因
映射关系确定异常安装包的远程升级异常原因。
233.需要说明的是,上述实施例所提供的远程升级异常原因确定装置与上述实施例图2所提供的远程升级异常原因确定方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的远程升级异常原因确定装置在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
234.图16是本技术的一示例性实施例示出的第二远程升级异常原因确定装置的框图。该装置可以应用于图1所示的实施环境。该装置也可以适用于其它的示例性实施环境,并具体配置在其它设备中,本实施例不对该装置所适用的实施环境进行限制。
235.如图16所示,该示例性的第二远程升级异常原因确定装置1600包括:
236.采集模块1601,用于采集目标车辆远程升级过程中汽车盒子与网关之间基于升级安装包生成的部署请求消息和部署响应消息,以及获取网关与被刷写对象之间的刷写请求消息和刷写响应消息;
237.生成模块1602,用于根据部署响应消息和部署请求消息的部署请求帧头数据生成部署互动数据,根据刷写响应消息和刷写请求消息的刷写请求帧头数据生成刷写互动数据;
238.结果确定模块1603,用于基于升级安装包的部署响应消息确定部署结果,以及基于刷写响应消息确定刷写结果;
239.数据确定模块1604,用于将部署互动消息和刷写互动消息中至少之一确定为升级互动数据,将部署结果和刷写结果中至少之一确定为升级结果;
240.发送模块1605,用于发送升级互动数据和升级结果至预设对象,以供预设对象从各升级安装包中确定异常安装包及异常安装包的远程升级异常原因。
241.需要说明的是,上述实施例所提供的远程升级异常原因确定装置与上述实施例图6所提供的远程升级异常原因确定方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的远程升级异常原因确定装置在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
242.本技术实施例还提供了一种远程升级异常原因确定系统,该系统包括图15或图16任一个所示的远程升级异常原因确定装置,需要说明的是,上述实施例所提供的远程升级异常原因确定系统与上述实施例图2、图6所提供的远程升级异常原因确定方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的远程升级异常原因确定系统在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
243.本技术的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现上述各个实施例中提供的远程升级异常原因确定方法。
244.图17示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。需要说明的是,图17示出的电子设备的计算机系统1700仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
245.如图17所示,计算机系统1700包括中央处理单元(central processing unit,cpu)1701,其可以根据存储在只读存储器(read-only memory,rom)1702中的程序或者从储存部分1208加载到随机访问存储器(random access memory,ram)1703中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在ram 1703中,还存储有系统操作所需的各种程序和数据。cpu 1701、rom 1702以及ram 1703通过总线1704彼此相连。输入/输出(input/output,i/o)接口1705也连接至总线1704。
246.以下部件连接至i/o接口1705:包括键盘、鼠标等的输入部分1706;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分1707;包括硬盘等的储存部分1708;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分1709。通信部分1709经由诸如因特网的网络执行通信处理。驱动器1710也根据需要连接至i/o接口1705。可拆卸介质1711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1710上,以便于从其上读出的计算机程序根据需要被安装入储存部分1708。
247.特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1709从网络上被下载和安装,和/或从可拆卸介质1711被安装。在该计算机程序被中央处理单元(cpu)1701执行时,执行本技术的系统中限定的各种功能。
248.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
249.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于
实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
250.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
251.本技术的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前所述的远程升级异常原因确定方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
252.本技术的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的远程升级异常原因确定方法。
253.上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1