网关的升级和数据路由方法、装置、设备及存储介质与流程

文档序号:31729500发布日期:2022-10-05 01:31阅读:84来源:国知局
网关的升级和数据路由方法、装置、设备及存储介质与流程

1.本技术实施例涉及车联网技术领域,尤其涉及一种网关的升级和数据路由方法、装置、设备及存储介质。


背景技术:

2.随着汽车智能化的迅速发展,绝大多数车辆控制器都有功能性程序升级的需求,即增加各种功能,而每种功能都可能需要基于总线来实现,因此,车辆控制器程序的升级会导致车身总线的数据产生变化。
3.一方面,作为整车数据交互枢纽的中央网关,需要跟随总线数据的变化更新自身的数据路由功能,需要对网关进行升级;另一方面,中央网关集成的功能越来越多,对网关升级的程序规模越来越大。
4.这两方面就会导致网关程序的升级包越来越大,对网关升级时,会造成网络资源和升级时间的极大浪费,从而带来升级中断导致的风险,造成很大不便。


技术实现要素:

5.本技术实施例提供一种网关的升级和数据路由方法、装置、设备及存储介质,以使车身控制器升级只需升级网关的路由配置数据,无需对网关的全部程序进行升级。
6.第一方面,本技术实施例提供了一种网关的升级方法,所述方法包括:
7.在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;
8.基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;
9.将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据。
10.第二方面,本技术实施例提供了一种网关的数据路由方法,所述方法包括:
11.在接收到携带有路由类型的数据路由请求的情况下,从第二存储空间中调取空间信息;
12.从所述第二存储空间中所述空间信息标识的目标存储子空间调取所述路由类型对应的目标路由配置数据;
13.基于所述目标路由配置数据完成网关的数据路由。
14.第三方面,本技术实施例还提供了一种网关的升级装置装置,该网关的升级装置包括:
15.接收模块,用于在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;
16.升级模块,用于基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;
17.设置模块,用于将升级后的路由配置数据设置为所述网关基于所述路由程序代码
进行数据路由时所需调用的路由配置数据。
18.第四方面,本技术实施例还提供了一种电子设备包括:
19.一个或多个处理器;
20.存储装置,用于存储一个或多个程序,
21.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本技术任一实施例提供的网关的升级和数据路由方法。
22.第五方面,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如本技术任一实施例提供的网关的升级和数据路由方法。
23.本技术实施例的技术方案,通过在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据;以及在接收到携带有路由类型的数据路由请求的情况下,从第二存储空间中调取空间信息;从所述第二存储空间中所述空间信息标识的目标存储子空间调取所述路由类型对应的目标路由配置数据;基于所述目标路由配置数据完成网关的数据路由,实现了网关路由配置数据的升级及升级后的数据路由,因此,本技术的方案仅需要对网关的路由配置数据进行升级,无需对网关的全部程序进行升级,这就极大的节约了升级所需的网络资源和时间,规避了升级中断带来的风险。
附图说明
24.图1为本技术实施例一提供的一种网关的升级方法的流程示意图;
25.图2是本技术实施例一提供的一种网关升级示意图;
26.图3是本技术实施例一提供的一种对诊断仪进行认证的流程示意图;
27.图4是本技术实施例一提供的一种数据存储结构图;
28.图5是本技术实施例一提供的一种基于路由配置文件对第二存储空间中的路由配置数据进行升级的流程示意图;
29.图6是本技术实施例一提供的一种对目标存储子空间进行扩展的流程示意图;
30.图7为本技术实施例一提供的一种网关的数据路由方法的流程示意图;
31.图8是本技术实施例二提供的一种网关的升级装置的结构示意图;
32.图9为本技术实施例三提供的一种电子设备的结构示意图。
具体实施方式
33.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。
34.实施例一
35.图1为本技术实施例一提供的网关的升级方法的流程示意图,本实施例可适用于网关的升级的场景,该方法可以由网关的升级装置来执行,该装置可采用硬件和/或软件的
方式实现,并一般可以集成在具有数据运算能力的计算机等车载网关中。
36.如图1所示,本实施例的所述方法可以包括:
37.步骤101、在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件。
38.需要说明的是,诊断仪通常为可以诊断当前是否有更新版本的程序代码的设备,其可以根据前次更新版本以及最新程序版本来判断是否有更新版本的程序代码。一旦有新的版本,则向网关控制器发送升级请求,该升级请求中包括路由配置文件。
39.具体可以参阅图2,图2是本技术实施例一提供的一种网关升级示意图,如图2所示,诊断仪通过诊断can总线,在网关数据路由功能需要升级时,发送升级请求至网关控制器,升级请求中包括路由cfg文件,即路由配置文件,路由配置文件中包含路由配置数据。
40.另外,为了网关数据安全,网关控制器在接收到升级请求后,且在进行升级之前,需要对发送该升级请求的诊断仪进行认证,本实施例对诊断仪进行认证的过程,可以参阅图3,图3是本技术实施例一提供的一种对诊断仪进行认证的流程示意图。
41.如图3所示,在所述接收诊断仪发送的升级请求之后,且在所述基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级之前,所述方法还可以包括:
42.步骤301、生成认证随机数,并将所述认证随机数反馈给所述诊断仪,以使所述诊断仪基于所述认证随机数和所述诊断仪内部存储的第一密钥生成第一认证值。
43.在本步骤中,网关控制器接收到诊断仪发起的升级请求后,对诊断仪发送认证请求,认证请求可以带有一个四位数的认证随机数,示例性的,该认证随机数可以为1053。
44.诊断仪基于接收到的认证随机数和内部存储的密钥,计算认证值,并将得到的第一认证值反馈给网关控制器。本实施例中,该计算的方式包括但不仅限于先移位再进行与运算。需要说明的是,移位的方式可以预先约定,此处不再赘述。
45.步骤302、接收所述诊断仪反馈的第一认证值,并基于所述认证随机数和所述网关内部存储的第二密钥生成第二认证值。
46.在本步骤中,可选的,网关控制器如果超出设定时间后,仍然没有收到认证值,则重新发送认证请求,如果连续超过设定的次数,认证请求均无响应,认为认证失败,结束升级。示例性的,该设定时间可以为5秒,设定的次数可以为3次。
47.若网关控制器成功接收到诊断仪反馈的第一认证值,网关控制器基于认证随机数和网关内部存储的密钥生成第二认证值。需要说明的是,网关控制器生成第二认证值所基于的算法可以参考诊断仪计算第一认证值的算法,若该诊断仪可以认证成功,通常两者的算法是一致的,以及第一密钥和第二密钥也是一致的。
48.具体的,生成第二认证值时,可以将所述认证随机数和所述网关内部存储的第二密钥输入到预设加密算法中,并获取所述预设加密算法输出的第二认证值。
49.在本步骤中,预设加密算法可以但不仅限于为移位后进行与运算。当然,计算第一认证值同样可以基于该预设加密算法。
50.步骤303、基于所述第一认证值和所述第二认证值对所述诊断仪进行认证,并在认证成功的情况下,执行所述基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级的步骤。
51.在本步骤中,若第一认证值和第二认证值相同即为认证成功。此时便可以继续执
行后续步骤102。
52.步骤102、基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级。
53.需要说明的是,所述网关的rom中设置有第一存储空间和第二存储空间,所述第一存储空间存储有路由程序代码,所述第二存储空间存储有路由配置数据,所述网关基于所述路由程序代码进行数据路由时,通过从所述第二存储空间调用路由配置数据实现所述数据路由的过程。
54.其中,rom也叫作只读存储器,通常以非破坏性读出方式工作,只能读出无法写入信息。信息一旦写入后就固定下来,即使切断电源,信息也不会丢失,所以又称为固定存储器。
55.本实施例可以在rom内部设置第一、第二存储空间,使其分别存储不同的数据,使第一存储空间存储路由程序代码,即code代码,第二存储空间存储路由配置数据,也就是路由cfg数据,包括当前路由配置及备份路由配置。
56.具体可以参阅图4,图4是本技术实施例一提供的一种数据存储结构图。如图4所示,第一存储空间可以为code代码段,第二存储空间可以为路由cfg数据段。
57.在本步骤中,所述第二存储空间还可以设置有第一存储子空间、第二存储子空间以及第三存储子空间。如图4所示,select header为第一存储子空间,cfga为第二存储子空间,cfgb为第三存储子空间。其中,第一存储子空间可以用来储存第二存储子空间和第三存储子空间的空间信息以及数据更新时间等信息。
58.本步骤基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级的过程,可以参阅图5,图5是本技术实施例一提供的一种基于路由配置文件对第二存储空间中的路由配置数据进行升级的流程示意图。
59.如图5所示,本实施例基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级的方法可以包括:
60.步骤501、从所述第一存储子空间中调取当前所需调用的路由配置数据对应的空间信息。
61.具体的,当前所需调用的路由配置数据指的是当前网关进行数据路由所使用的数据。当前所需调用的路由配置数据对应的空间信息指的是当前网关进行数据路由所使用的数据的存储位置,该存储位置可以用空间标识表示,可以是第二存储子空间,也可以是第三存储子空间。其中,空间信息包括子空间的空间大小信息、空间标识等。本步骤获取的空间信息中便可以包括空间标识。
62.示例性的,若当前网关进行数据路由所使用的数据的存储在第二存储子空间,则本步骤从第一存储子空间中调取到的当前所需调用的路由配置数据对应的空间标识为:第二存储子空间的空间标识。
63.步骤502、基于所述空间信息确定当前未使用的目标存储子空间,所述目标存储子空间为所述第二存储子空间或所述第三存储子空间。
64.在本步骤中,基于上述步骤获取的当前网关进行数据路由所使用的数据的空间标识,选择当前未使用的子空间作为目标存储子空间即可,该目标存储子空间为本次升级所需的路由配置文件的存储空间。
65.示例性的,若识别到从第一存储子空间中调取到的当前所需调用的路由配置数据对应的空间标识为第二存储子空间,则选择第三存储子空间为目标存储子空间。
66.步骤503、将所述路由配置文件中的路由配置数据覆盖存储到所述目标存储子空间中,以完成对所述第二存储空间中的所述路由配置数据的升级。
67.在本步骤中,将本次升级所需的路由配置文件传输并保存在目标存储子空间中,以便后续进行数据路由时直接从目标存储子空间调用本次升级后的路由配置数据。
68.另外,在升级的过程中,还可能会遇到子空间无法满足路由配置文件所需空间的情况,因此,本实施例还可以对目标存储子空间进行扩展,具体可以参阅图6,图6是本技术实施例一提供的一种对目标存储子空间进行扩展的流程示意图。
69.如图6所示,本实施例在所述基于所述空间信息确定当前未使用的目标存储子空间之后,所述将所述路由配置文件中的路由配置数据覆盖存储到所述目标存储子空间中之前,所述基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级的方法还可以包括:
70.步骤601、获取所述目标存储子空间的空间大小信息以及所述路由配置文件的空间占用大小信息。
71.在本步骤中,可以从第一存储子空间调取目标存储子空间的空间大小信息以及路由配置文件的空间占用大小信息。
72.步骤602、若所述空间大小信息和所述空间占用大小信息不满足预设条件,对所述目标存储子空间进行扩展。
73.在本步骤中,预设条件指的是目标存储子空间的空间大小大于路由配置文件的空间占用大小。当目标存储子空间的空间大小小于或等于路由配置文件的空间占用大小时,表示空间大小信息和所述空间占用大小信息不满足预设条件,此时需要对目标存储子空间进行空间扩展,直至目标存储子空间的空间大小大于或等于路由配置文件的空间占用大小。
74.具体的,可以先根据目标存储子空间的空间大小信息以及所述路由配置文件的空间占用大小信息计算出所需扩展的空间大小信息,然后从rom的空白存储空间中截取出所需扩展的空间大小信息对应的待扩展空间,最后将该待扩展空间合并到目标存储子空间中即可。
75.步骤603、若所述空间大小信息和所述空间占用大小信息满足预设条件,执行所述将所述路由配置文件中的路由配置数据覆盖存储到所述目标存储子空间中的步骤。
76.在本步骤中,目标存储子空间的空间大小大于路由配置文件的大小,即为满足预设条件,才能确保目标存储子空间能够保存路由配置文件。此时执行步骤503即可。
77.步骤103、将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据。本步骤中,具体可以将所述第一存储子空间中的空间信息更新为所述目标存储子空间对应的空间标识,以使所述网关基于所述路由程序代码进行数据路由基于所述空间标识调用所述目标存储子空间中的路由配置数据。
78.在本步骤中,将第一存储子空间中的空间信息更新为目标存储子空间对应的空间标识指的是将第一存储子空间中存储的当前网关进行数据路由所使用的数据对应的空间标识更新为目标存储子空间对应的空间标识。将第一存储子空间中存储的当前网关进行数
据路由所使用的数据对应的空间标识更新为目标存储子空间对应的空间标识后,重启网管控制器即可使用升级后的路由配置数据进行数据路由工作。
79.示例性的,若第一存储子空间中存储的当前所需调用的路由配置数据对应的空间标识为第二存储子空间的空间标识,而目标存储子空间为第三存储子空间,则将第一存储子空间中存储的当前所需调用的路由配置数据对应的空间标识由第二存储子空间的空间标识更新为第三存储子空间的空间标识。
80.本实施例还提供了一种网关的数据路由方法,可适用于网关的数据路由场景,图7为本技术实施例一提供的网关的数据路由方法的流程示意图。
81.如图7所示,本实施例提供的网关的数据路由方法可以包括:
82.步骤701、在接收到携带有路由类型的数据路由请求的情况下,从第二存储空间中调取空间信息。
83.在本步骤中,网管控制器接收到数据路由请求时,从第二存储空间中的第一存储子空间中调取当前所需调用的路由配置数据对应的空间标识。示例性的,为第三存储子空间。
84.步骤702、从所述第二存储空间中所述空间信息标识的目标存储子空间调取所述路由类型对应的目标路由配置数据。
85.在本步骤中,根据步骤701获取的空间标识找到对应的目标存储子空间,从目标存储子空间中调取当前所需类型的路由配置数据。
86.步骤703、基于所述目标路由配置数据完成网关的数据路由。
87.在本步骤中,基于步骤702调取的路由配置数据即可完成网关的数据路由工作。
88.本实施例中,通过在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据;以及在接收到携带有路由类型的数据路由请求的情况下,从第二存储空间中调取空间信息;从所述第二存储空间中所述空间信息标识的目标存储子空间调取所述路由类型对应的目标路由配置数据;基于所述目标路由配置数据完成网关的数据路由,实现了网关路由配置数据的升级及升级后的数据路由。因此,本技术的方案仅需要对网关的路由配置数据进行升级,无需对网关的全部程序进行升级,这就极大的节约了升级所需的网络资源和时间,规避了升级中断带来的风险。
89.实施例二
90.请参阅图8,图8是本技术的实施例二提供的一种网关的升级装置的结构示意图。本技术实施例所提供的网关的升级和数据路由装置可执行本技术任意实施例所提供的网关的升级方法,具备执行方法相应的功能模块和有益效果。该装置可采用软件和/或硬件的方式实现,如图8所示,网关的升级和数据路由装置具体包括:接收模块801、升级模块802、设置模块803。
91.其中,接收模块801,用于在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;
92.升级模块802,用于基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;
93.设置模块803,用于将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据。
94.本实施例中,通过在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据;以及在接收到携带有路由类型的数据路由请求的情况下,从第二存储空间中调取空间信息;从所述第二存储空间中所述空间信息标识的目标存储子空间调取所述路由类型对应的目标路由配置数据;基于所述目标路由配置数据完成网关的数据路由,实现了网关路由配置数据的升级及升级后的数据路由。因此,本技术的方案仅需要对网关的路由配置数据进行升级,无需对网关的全部程序进行升级,这就极大的节约了升级所需的网络资源和时间,规避了升级中断带来的风险。
95.实施例三
96.图9为本技术实施例三提供的一种电子设备的结构示意图,如图9所示,该电子设备包括处理器910、存储器920、输入装置930和输出装置940;电子设备中处理器910的数量可以是一个或多个,图9中以一个处理器910为例;电子设备中的处理器910、存储器920、输入装置930和输出装置940可以通过总线或其他方式连接,图9中以通过总线连接为例。
97.存储器920作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本技术实施例中的网关的升级或数据路由方法对应的程序指令/模块(例如,网关的升级和数据路由装置中的接收模块801、升级模块802、设置模块803。)。处理器910通过运行存储在存储器920中的软件程序、指令以及模块,从而执行车载网关的各种功能应用以及数据处理,即实现上述的网关的升级或数据路由方法。
98.也即,在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;
99.基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;
100.将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据。
101.或
102.在接收到携带有路由类型的数据路由请求的情况下,从第二存储空间中调取空间信息;
103.从所述第二存储空间中所述空间信息标识的目标存储子空间调取所述路由类型对应的目标路由配置数据;
104.基于所述目标路由配置数据完成网关的数据路由。存储器920可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器920可进一步包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
105.输入装置930可用于接收输入的升级请求或路由请求,以及产生与电子设备的用
户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。
106.实施例四
107.本技术实施例四还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种网关的升级或数据路由方法,该方法包括:
108.在需要对网关的数据路由功能进行升级的情况下,接收诊断仪发送的升级请求,所述升级请求中包括路由配置文件;
109.基于所述路由配置文件对所述第二存储空间中的所述路由配置数据进行升级;
110.将升级后的路由配置数据设置为所述网关基于所述路由程序代码进行数据路由时所需调用的路由配置数据。
111.或
112.在接收到携带有路由类型的数据路由请求的情况下,从第二存储空间中调取空间信息;
113.从所述第二存储空间中所述空间信息标识的目标存储子空间调取所述路由类型对应的目标路由配置数据;
114.基于所述目标路由配置数据完成网关的数据路由。
115.当然,本技术实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本技术任意实施例所提供的网关的升级和数据路由方法中的相关操作。
116.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本技术可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
117.值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
118.注意,上述仅为本技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本技术不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1