CN115941583B - 网关负载调整方法、装置、电子设备及存储介质 - Google Patents
网关负载调整方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115941583B CN115941583B CN202211320698.6A CN202211320698A CN115941583B CN 115941583 B CN115941583 B CN 115941583B CN 202211320698 A CN202211320698 A CN 202211320698A CN 115941583 B CN115941583 B CN 115941583B
- Authority
- CN
- China
- Prior art keywords
- load
- target
- bus loop
- bus
- ecu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000006854 communication Effects 0.000 claims description 22
- 230000002159 abnormal effect Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 15
- 239000011159 matrix material Substances 0.000 claims description 14
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Small-Scale Networks (AREA)
Abstract
本申请公开了一种网关负载调整方法、装置、电子设备及存储介质,方法包括:在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路;获取超负载总线回路对应的ECU,作为第一目标ECU;获取每个第一目标ECU对应的目标总线回路中负载最小的总线回路,若负载最小的总线回路的负载误差小于或等于预设负载误差,作为第二目标ECU,将第二目标ECU对应的负载最小的总线回路作为最小负载总线回路;依次变更每个第二目标ECU的开关位置,使其连接至该第二目标ECU对应的最小负载总线回路,直至每个目标总线回路的负载误差均小于或等于预设负载误差;记录每个ECU的开关位置,更新网关路由表。该方法可以使得总线回路的负载率能够实现自适应。
Description
技术领域
本申请涉及车辆通信技术领域,更具体地,涉及一种网关负载调整方法、装置、电子设备及存储介质。
背景技术
随着汽车内部的电子电器模块的数量以及功能的增加,控制器之间的通信数据量也随之增加,这使得CAN/CANFD(CANWithFlexibleDataRate的简称)总线网段的负载率急剧上升,负载率达到阈值后如需增加通信数据,则需要重新设计网络拓扑,为各个电子控制单元(ElectronicControlUnit,ECU)分配网段以及变更路由表。
目前CAN/CANFD总线均采用静态配置网络拓扑,这种方法在开发时期一旦设定,后续交付给消费者后无法更改。无法快速应对新需求,存在局限性。
发明内容
鉴于上述问题,本申请提出了一种网关负载调整方法、装置、电子设备及存储介质。
第一方面,本申请实施例提供了一种网关负载调整方法,所述方法包括:在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路;获取所述超负载总线回路对应的ECU,作为第一目标ECU;获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路;依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差;记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述ECU的开关位置,根据所述开关位置更新网关路由表。
第二方面,本申请实施例提供了一种网关负载调整装置,所述装置包括:超负载总线回路获取模块,用于在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路;第一目标ECU获取模块,用于获取所述超负载总线回路对应的ECU,作为第一目标ECU;第二目标ECU获取模块,用于获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路;变更模块,用于依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差;网关路由更新模块,用于记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述ECU的开关位置,根据所述开关位置更新网关路由表。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述第一方面提供的网关负载调整方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的网关负载调整方法。
本申请提供的方案,通过实时获取总线回路中的负载,获取负载误差超过预设误差且具有负载误差小于或等于所述预设负载误差的最小负载总线回路的目标ECU,将这些目标ECU开关依次连接到该ECU中的最小负载总线回路上,直到目标总线回路中的所有负载误差均小于或等于预设负载误差时,根据此时目标ECU的开关更新网关路由表,依据更新后的网关路由表传输数据,使得目标总线回路的负载率能够自适应各种情况,确保通信功能正常运行。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了车辆上多个控制模块之间的数据收发示意图。
图2示出了本申请一实施例提供的网关负载调整方法的流程示意图。
图3示出了本申请一实施例提供的多个控制模块之间的数据收发示意图。
图4示出了本申请另一实施例提供的网关负载调整方法的流程示意图。
图5示出了本申请又一实施例中步骤S230的流程示意图。
图6示出了本申请又一实施例中步骤S234的流程示意图。
图7示出了本申请又一实施例中调整负载流程示意图。
图8示出了本申请又一实施例中调整模式下调整总线负载的流程示意图。
图9示出了本申请再一实施例提供的网关负载调整方法的流程示意图。
图10示出了本申请实施例提供的网关负载调整装置的结构框图。
图11示出了本申请实施例提供的用于执行根据本申请实施例的网关负载调整方法的电子设备的结构框图。
图12示出了本申请实施例提供的用于保存或者携带实现根据本申请实施例的网关负载调整方法的程序代码的存储介质。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
总线回路是指两个或两个以上具有数据传输能力的设备或控制模块之间所形成的数据传输闭环。下面以控制模块为例,对总线回路的工作原理进行简单介绍。
请参阅图1,图1示出了车辆上多个控制模块之间的数据收发示意图。TBOX是指车联网控制模块,ICM车辆点火控制模块,BCM是车身控制模块,S1、S2、S3分别代表一个ECU。TBOX、ICM以及BCM分别通过S1、S2以及S3与微控制单元(MicrocontrollerUnit;MCU)通过总线回路A1或A2进行数据传输。
在这种情况下,由于ECU与总线回路之间是固定连接,当网络传输过程中遭受网络攻击时,会导致总线回路的负载急剧增加,导致数据传输速度变慢,影响系统的稳定。
针对上述问题,发明人提出一种网关负载调整方法、装置、电子设备及存储介质,在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路;获取所述超负载总线回路对应的ECU,作为第一目标ECU;获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路;依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差;记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述ECU的开关位置,根据所述开关位置更新网关路由表。
本申请方案,通过实时获取总线回路中的负载,获取负载误差超过预设误差且具有负载误差小于或等于所述预设负载误差的最小负载总线回路的目标ECU,将这些目标ECU开关依次连接到该ECU中的最小负载总线回路上,直到目标总线回路中的所有负载误差均小于或等于预设负载误差时,根据此时目标ECU的开关更新网关路由表,依据更新后的网关路由表传输数据,使得目标总线回路的负载率能够自适应各种情况,确保通信功能正常运行。
请参阅图2,图2示出了本申请一实施例提供的网关负载调整方法的流程示意图。在具体的实施例中,所述网关负载调整方法应用于如图10所示的网关负载调整装置300以及图11配置有所述网关负载调整装置300的电子设备100。
下面将针对图2所示的流程进行详细的阐述,所述网关负载调整方法具体可以包括以下步骤:
步骤S110:在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路。
负载的物理意义是指网络中继承载的数据流量以及网络设备承载的用户量。本申请实施例中负载误差指的是目标总线回路中实际所承受的负载率与该总线回路预先设定的承载负载率之差。
ECU由微控制器(MCU)、存储器(ROM、RAM)、输入/输出接口(I/O)、模数转换器(A/D)以及整形、驱动等大规模集成电路组成。因此,ECU上可以存在有多个总线回路。本申请中的目标总线回路指的车辆网关中各个ECU对应的CAN/CANFD总线回路。在本申请实施例中,每个待调整的ECU至少对应两个目标总线回路。可以理解的是,如果某个ECU只对应一个总线回路,则可以通过调整其他对应有至少两个目标总线回路的ECU的总线回路,来实现整体的负载调整。
在本申请方案中,先获取每个目标总线回路对应的负载误差,然后将每个目标总线回路对应的负载误差与预设负载误差做比较。预设负载误差可以是预先通过经验值设置的,也可以是根据实际需求,设置的允许偏差值。
在一些实施方式中,可以获取每个所述目标总线回路的期望负载率以及实际负载率,计算实际负载率与期望负载率的差,作为每个目标总线回路的负载误差。若负载误差大于预设负载误差,则将负载误差对应的总线回路为所述超负载总线回路。
步骤S120:获取所述超负载总线回路对应的ECU,作为第一目标ECU。
结合图1,假设在步骤S110中确定了目标总线回路A1的负载误差大于预设负载误差,而目标总线回路A2的负载误差小于或等于预设负载误差,那么将通过A1进行数据传输的S1以及S2为第一目标ECU。
步骤S130:获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路。
每个第一目标ECU对应的负载最小的总线回路可以通过对每个第一目标ECU各自对应的目标总线回路的实际负载进行排序获得,例如,第一目标ECU为S1和S2,那么可以对S1对应的A1的实际负载和S1对应的A2的实际负载排序,获得S1对应的最小负载总线回路。依照相同的方法,可以获得S2对应的最小负载总线回路。
由于确定出来的最小负载总线回路本身的负载误差有可能也是超过了预设负载误差的,因此可以再比较最小负载总线回路本身的负载误差与预设负载误差。若第一目标ECU中的最小负载总线回路对应的负载误差小于或等于预设负载误差,将该第一目标ECU做为第二目标ECU,若最小负载总线回路的负载误差大于预设负载误差,则该第一目标ECU就不作为第二目标ECU。上面的例子中,若S1对应的最小负载总线回路的负载误差大于预设负载误差,S2对应的最小负载总线回路的负载误差小于或等于预设负载误差,则S2作为第二目标ECU。
步骤S140:依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差。
ECU与目标总线回路连接与否由ECU的开关进行控制。当第二目标ECU中其中一个ECU的开关连接到该ECU中最小负载总线回路时,计算每个目标总线回路的负载误差是否均小于或等于预设负载误差,若否,继续将第二目标ECU中的其他ECU对应的开关连接到对应的最小负载总线回路上,直到每个目标总线回路的负载误差小于或等于预设负载误差。
步骤S150:记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述ECU的开关位置,根据所述开关位置更新网关路由表。
将第二目标ECU中的目标总线回路的负载误差均小于或等于预设负载误差对应的第二目标ECU的开关位置更新到网关路由表中,根据更新的网关路由表进行数据传输。
在具体实施过程中,请参阅图3,多个控制模块与ECU之间可以采用吸合开关进行连接,便于当ECU中存在超负载总线回路时及时将ECU的开关与最小负载总线回路进行连接,调整超负载总线回路的负载,使得超负载总线回路上的负载误差小于或等于预设负载误差,保证通信功能的正常运行。
在本申请实施例中,通过实时获取总线回路中的负载,获取负载误差超过预设误差且具有负载误差小于或等于所述预设负载误差的最小负载总线回路的目标ECU,将这些目标ECU开关依次连接到该ECU中的最小负载总线回路上,直到目标总线回路中的所有负载误差均小于或等于预设负载误差时,根据此时目标ECU的开关更新网关路由表,依据更新后的网关路由表传输数据,使得目标总线回路的负载率能够自适应各种情况,确保通信功能正常运行。
请参见图4,图4示出了本申请另一实施例提供的网关负载调整方法的流程示意图,具体包括以下步骤:
步骤S200:获取默认配置表,所述默认配置表包括每个ECU的开关默认位置、每个所述目标总线回路的期望负载率、每个所述目标总线回路的预设负载误差以及网关路由表。
默认配置表为ECU出厂前由开发人员按照一定规定进行设定的。默认配置表规定了ECU的开关默认位置、每个所述目标总线回路的期望负载率、每个所述目标总线回路的预设负载误差以及网关路由表。
期望负载率是指总线回路的设定最大负载量与该最大负载量所用周期之比。
网关路由表是指路由器或者其他互联网网络设备上存储的一张路由信息表。网关路由表可以如下表所示:
表1
如表1所示,网关路由表中包括有发送回路信息、接收回路信息、报文信息以及路由方式,根据网关路由表进行两个总线回路间的数据传输。
步骤S210:控制每个ECU的开关按照所述开关默认位置连接至对应的总线回路,并根据所述网关路由表中的信息通信。
步骤S220:以预设频率采集通信中的每个所述目标总线回路对应的实际负载率。
负载率是指总线回路中负载与该负载对应的周期的比值。
在总线回路按照默认配置表进行通信时,总线回路上的实际负载率会由于外界使用者对其的使用频率以及使用用途而发生改变,因此,需要以一定的周期频率采集总线回路上的实际负载率。预设频率可以是半小时,15min,或者一个小时,不同的总线回路对应的不同的用途,因此,采集频率可以由开发人员设定,也可以由使用者进行设定。
步骤S230:获取每个所述目标总线回路中的期望负载率以及实际负载率。
请参阅图5,在一些可选的实施方式中,步骤S230可以包括步骤S232~S234,详细阐述如下:
步骤S232:获取每个所述目标总线回路对应的收发矩阵。
收发矩阵是指对应的信号矩阵,就是确定了他们收发关系的信号矩阵表。收发矩阵包括但不限于发送回路、接收回路、报文长度等信息。收发矩阵具体信息请参见下表:
表2
由表2可知,可以通过收发矩阵清楚的知道数据信息在总线回路中所占负载率。发送回路可以与接收回路是相同回路,也可以是不同回路。当发送回路与接收回路为不同回路时,需要通过路由表进行转发,从而实现不同回路间的信息传递。转发信息表具体的请参见下表:
表3
由表3可知,路由转发原理是将发送回路的报文ID以及报文周期发送给接收回路,使得接收回路解析发送回路发送的信息上的封装协议,以获取发送回路所发送的信息数据。
步骤S234:根据所述收发矩阵,计算得到每个所述目标总线回路对应的实际负载率。
请参阅图6,在一些实施方式中,步骤S234可以包括步骤S2342~S2348,详细阐述如下:
步骤S2342:获取每个所述目标总线回路对应的报文对应的字节长度。
步骤S2344:将所述字节长度转化为比特长度。
步骤S2346:获取报文的比特长度与第一设定值之和与第二设定值的乘积。
步骤S2348:获取所述乘积与该目标总线回路对应的周期与第三设定值之积的商值,作为该目标总线回路的实际负载率。
报文是网络中交换与传输的数据单元,即站点一次性要发送的数据块。
总线回路中是通过比特数据流进行传输,因此需要将报文对应的字节长度转化为比特长度,报文对应的字节长度乘以8即可获的该字节长度对应的比特长度。
总线回路在传输报文过程中,由于报文内具有固定长度56比特长度,因此需要对存储有数据的报文比特长度加上固定比特长度。
具体的,实际负载率计算公式可以是:(报文长度*8+56)*1000*/周期/50000。
其中,报文长度与8的乘积是为将把报文的字节长度转化为比特长度。56为第一设定值,是为获取报文的全部比特长度。公式:报文长度*8+56为总线回路上该报文对应的负载量。
1000为第二设定值,由于周期对应的单位是ms,因此需要将负载量乘以1000,将负载量对应的时间单位s换算为ms。
5000为第三设定值。总线回路通信过程中速率为500kbps,即500*1000bps。由于负载率为百分比,因此需要除以100,获得最终的实际负载率计算公式。
通过实际负载率公式可以获得每个目标总线回路对应的实际负载率。
步骤S240:计算所述实际负载率与所述期望负载率的差,作为负载误差。
步骤S250:若所述负载误差大于所述预设负载误差,则所述负载误差对应的总线回路为所述超负载总线回路。
将实际负载率与期望负载率的差值与预设负载误差,判断该总线回路是否为超负载总线回路
步骤S260:获取所述超负载总线回路对应的ECU,作为第一目标ECU。
步骤S270:获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路。
将每个所述第一目标ECU对应的目标总线回路按照所述实际负载率进行排序;若所述最小实际负载率对应的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU;将最小实际负载率对应的目标总线回路确定为所述第二目标ECU对应的最小负载总线回路。
通过对第一目标ECU中的目标总线回路进行排序获取最小负载总线回路,再根据最小实际负载率对应的总线回路的负载误差是否小于或等于预设负载误差,若是该总线回路的负载误差小于或等于预设负载误差,将该第一目标ECU作为第二目标ECU。并且将最小实际负载率对应的总线回路作为第二目标ECU对应的最小负载总线回路。排序方式可以是顺序方式也可以是逆序方式,具体排序方式由使用者或开发人员进行设定,在此不做限定。
步骤S280:依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差。
步骤S290:记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述ECU的开关位置,根据所述开关位置更新网关路由表。
步骤S260~步骤S290参照步骤S120~步骤S150的详细阐述,在此不再赘述。
在具体实施过程中,请参阅图7,图7示出了本申请实施例中调整负载流程的示意图。从默认配置表中获取总线回路对应的期望负载率Br,在总线回路通信过程中,对通信过程中的总线负载总线回路进行采样获取总线回路当前的实际负载率Bw,通过计算期望负载率与实际负载率的差值获取负载误差e,比较负载误差与预设负载误差的大小,若负载误差大于预设负载误差,控制器输出开关指令使得ECU的开关连接到该ECU对应的最小负载总线回路,根据最新的ECU开关位置继续进行通信。并且在通信过程中实时采样获取总线回路的实际负载率,保证总线回路的负载误差通过调整后始终小于或等于预设负载误差。
具体的调整模式如图8所示,图8示例性的示出了本申请上述实施例在调整模式下调整总线负载的流程示意图。当总线回路的负载误差大于预设负载误差时,总线回路进行调整模式,对所有总线回路进行排序,获取超负载总线回路。获取连接超负载总线回路的第一目标ECU节点(也就是前述实施例中的第一目标ECU),判断所有连接超负载总线回路的第一目标ECU是否具有负载误差小于或等于所述预设负载误差的最小负载总线回路,将具有负载误差小于或等于所述预设负载误差的最小负载总线回路的第一目标ECU确定为第二目标ECU节点(也就是前述实施例中的第二目标ECU)。所有第二目标ECU进入模拟模式,将第一个第二目标ECU的开关S1连接到最小负载总线回路,计算此时所有目标总线回路对应的负载误差。判断此时目标总线回路对应的负载误差e是否小于或等于预设负载误差e0。若负载误差e小于或等于e0,则退出模拟模式,并且根据第二目标ECU节点的开关连接位置更新网关路由表,退出调整模式。
若负载误差e大于预设负载误差e0,则将第二个第二目标ECU的开关S2对应的开关与最小负载总线回路连接,再计算并判断此时的目标总线回路的负载误差是否小于或等于预设负载误差,若负载误差e大于预设负载误差e0,继续将其他的第二目标ECU的开关连接至最小负载总线回路,直至所有目标总线回路的负载误差e小于或等于预设负载误差e0,退出调整模式。
本申请实施例,实时获取总线回路通信过程的负载,并在通信过程对总线回路的负载进行调整,实现了总线回路负载的动态调整,保证了总线回路在通信过程中的实际负载率与期望负载率的差值始终处于预设负载误差内,很好地解决了因功能增加/网络攻击等对负载率的消极影响,从而提高系统稳定性和可拓展性,解决了静态配置的局限性。
请参见图9,图9示出了本申请再一实施例提供的网关负载调整方法的流程示意图,该实施例在前述实施例的基础上增加了对异常负载信息的处理过程,可以理解的是该实施例可以与前面的实施例进行结合:
步骤S310:在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路。
步骤S310参照步骤S110的详细阐述,在此不再赘述。
步骤S320:获取所述超负载总线回路对应的异常负载信息,所述异常负载信息包括ID信息以及报文周期。
超负载总线回路是由于该总线回路中所传输的负载误差超过了预设负载误差,导致总线回路成为超负载总线回路的原因可能是由于该总线回路周期内传输的数据量过大,也可能是数据量正常的数据在周期内的发送多次,导致总线回路的实际负载率在短时间内超过期望负载率。
步骤S330:记录所述超负载总线回路对应的异常负载信息。
异常负载信息可以是非法ID、报文周期非法等。
由于超负载总线回路的产生原因,因此将异常负载信息进行记录,方便后续对该总线回路进行安全检测,实现在线监控,避免网络被恶意入侵。
请参阅图10,其示出了本申请实施例提供的一种网关负载调整装置300的结构框图。该网关负载调整装置300应用于电子设备100,该网关负载调整装置300包括:超负载总线回路获取模块310,用于在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路;第一目标ECU获取模块320,用于获取所述超负载总线回路对应的ECU,作为第一目标ECU;第二目标ECU获取模块330,用于获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路;变更模块330,用于依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差;网关路由更新模块350,用于记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述ECU的开关位置,根据所述开关位置更新网关路由表。
在本申请的一些实施例中,网关负载调整装置300还包括:默认配置表获取模块,用于获取默认配置表,所述默认配置表包括每个ECU的开关默认位置、每个所述目标总线回路的期望负载率、每个所述目标总线回路的预设负载误差以及网关路由表;通信模块,用于控制每个ECU的开关按照所述开关默认位置连接至对应的总线回路,并根据所述网关路由表中的信息通信;采集模块,用于以预设频率采集通信中的每个所述目标总线回路对应的实际负载率。
在本申请的一些实施例中,超负载总线回路获取模块310包括:负载率获取模块,用于获取每个所述目标总线回路中的期望负载率以及实际负载率;计算模块,用于计算所述实际负载率与所述期望负载率的差,作为负载误差;超负载总线回路确定模块,用于若所述负载误差大于所述预设负载误差,则所述负载误差对应的总线回路为所述超负载总线回路。
在本申请的一些实施例中,采集模块包括:收发矩阵采集模块,用于获取每个所述目标总线回路对应的收发矩阵;实际负载率获取模块,用于根据所述收发矩阵,计算得到每个所述目标总线回路对应的实际负载率。
在本申请的一些实施例中,实际负载率获取模块包括:字节长度获取模块,用于获取每个所述目标总线回路对应的报文对应的字节长度;比特长度转换模块,用于将所述字节长度转化为比特长度;第一计算模块,用于获取报文的比特长度与第一设定值之和与第二设定值的乘积;第二计算模块,用于获取所述乘积与该目标总线回路对应的周期与第三设定值之积的商值,作为该目标总线回路的实际负载率。
在本申请的一些实施例中,第二目标ECU获取模块330块包括:排序模块,用于将每个所述第一目标ECU对应的目标总线回路按照所述实际负载率进行排序;第二目标ECU确定模块,用于若所述最小实际负载率对应的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU;最小负载总线回路确定模块,用于将最小实际负载率对应的目标总线回路确定为所述第二目标ECU对应的最小负载总线回路。
在本申请的一些实施例中,网关负载调整装置300还包括,异常负载信息获取模块,用于获取所述超负载总线回路对应的异常负载信息,所述异常负载信息包括ID信息以及报文周期;异常负载信息记录模块,用于记录所述超负载总线回路对应的异常负载信息。
本申请方案中,不仅可以实现在通信过程对总线回路进行负载调整,还可以用于记录导致负载总线回路产生的负载误差大于预设误差的异常负载信息,便于对异常负载信息进行排查,保证通信过程的安全。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图11,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备100可以交换机,也可以是计算机,或者是具有数据传输的控制单元。本申请中的电子设备100可以包括一个或多个如下部件:处理器110、存储器120、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(DigitalSignalProcessing,DSP)、现场可编程门阵列(Field-ProgrammableGateArray,FPGA)、可编程逻辑阵列(ProgrammableLogicArray,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(CentralProcessingUnit,CPU)、图形处理器(GraphicsProcessing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(RandomAccessMemory,RAM),也可以包括只读存储器(Read-OnlyMemory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图12,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读存储介质200中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质200可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质200包括非易失性计算机可读介质(non-transitorycomputer-readablestoragemedium)。计算机可读存储介质200具有执行上述方法中的任何方法步骤的程序代码210的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码210可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种网关负载调整方法,其特征在于,所述方法包括:
在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路;
获取所述超负载总线回路对应的电子控制单元ECU,作为第一目标ECU;
获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路;
依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差;
记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述目标总线回路对应的ECU的开关位置,根据所述开关位置更新网关路由表。
2.根据权利要求1所述的方法,其特征在于,所述在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路之前,还包括:
获取默认配置表,所述默认配置表包括每个ECU的开关默认位置、每个所述目标总线回路的期望负载率、每个所述目标总线回路的预设负载误差以及网关路由表;
控制每个ECU的开关按照所述开关默认位置连接至对应的总线回路,并根据所述网关路由表中的信息通信;
以预设频率采集通信中的每个所述目标总线回路对应的实际负载率。
3.根据权利要求2所述的方法,其特征在于,所述在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路,包括:
获取每个所述目标总线回路中的期望负载率以及实际负载率;
计算所述实际负载率与所述期望负载率的差,作为负载误差;
若所述负载误差大于所述预设负载误差,则所述负载误差对应的总线回路为所述超负载总线回路。
4.根据权利要求2所述的方法,其特征在于,所述以预设频率采集通信中的每个所述目标总线回路对应的实际负载率,包括:
获取每个所述目标总线回路对应的收发矩阵;
根据所述收发矩阵,计算得到每个所述目标总线回路对应的实际负载率。
5.根据权利要求4所述的方法,其特征在于,所述根据所述收发矩阵,计算得到每个所述目标总线回路对应的实际负载率,包括:
获取每个所述目标总线回路对应的报文对应的字节长度;
将所述字节长度转化为比特长度;
获取报文的比特长度与第一设定值之和与第二设定值的乘积;
获取所述乘积与该目标总线回路对应的周期与第三设定值之积的商值,作为该目标总线回路的实际负载率。
6.根据权利要求4所述的方法,其特征在于,所述获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路,包括:
将每个所述第一目标ECU对应的目标总线回路按照所述实际负载率进行排序;
若所述最小实际负载率对应的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU;
将最小实际负载率对应的目标总线回路确定为所述第二目标ECU对应的最小负载总线回路。
7.根据权利要求1-6所述的方法,其特征在于,所述在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路之后,还包括:
获取所述超负载总线回路对应的异常负载信息,所述异常负载信息包括ID信息以及报文周期;
记录所述超负载总线回路对应的异常负载信息。
8.一种网关负载调整装置,其特征在于,所述装置包括:
超负载总线回路获取模块,用于在多个目标总线回路中获取负载误差大于预设负载误差的总线回路,作为超负载总线回路;
第一目标ECU获取模块,用于获取所述超负载总线回路对应的电子控制单元ECU,作为第一目标ECU;
第二目标ECU获取模块,用于获取每个所述第一目标ECU对应的目标总线回路中负载最小的总线回路,若所述负载最小的总线回路的负载误差小于或等于所述预设负载误差,将该第一目标ECU作为第二目标ECU,将所述第二目标ECU对应的负载最小的总线回路作为最小负载总线回路;
变更模块,用于依次变更每个所述第二目标ECU的开关位置,使变更的第二目标ECU的开关连接至该第二目标ECU对应的最小负载总线回路,直至每个所述目标总线回路的负载误差均小于或等于所述预设负载误差;
网关路由更新模块,用于记录每个所述目标总线回路的负载误差均小于或等于所述预设负载误差时,每个所述目标总线回路对应的ECU的开关位置,根据所述开关位置更新网关路由表。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211320698.6A CN115941583B (zh) | 2022-10-26 | 2022-10-26 | 网关负载调整方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211320698.6A CN115941583B (zh) | 2022-10-26 | 2022-10-26 | 网关负载调整方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115941583A CN115941583A (zh) | 2023-04-07 |
CN115941583B true CN115941583B (zh) | 2024-03-29 |
Family
ID=86696588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211320698.6A Active CN115941583B (zh) | 2022-10-26 | 2022-10-26 | 网关负载调整方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115941583B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106953796A (zh) * | 2017-04-13 | 2017-07-14 | 北京汽车集团有限公司 | 安全网关、数据处理方法、装置、车辆网络拓扑及车辆 |
KR20190081958A (ko) * | 2017-12-29 | 2019-07-09 | 주식회사 유라코퍼레이션 | 차량 내부 통신 버스 부하율 제어 시스템, 방법, 및 상기 방법을 실행시키기 위한 컴퓨터 판독 가능한 프로그램을 기록한 기록 매체 |
CN111025974A (zh) * | 2019-12-13 | 2020-04-17 | 厦门宏发汽车电子有限公司 | 一种车载网关控制器、其配置方法及汽车系统 |
CN111211954A (zh) * | 2019-12-04 | 2020-05-29 | 一汽解放汽车有限公司 | 一种canfd总线负载率的确定方法及装置 |
CN114884813A (zh) * | 2022-05-05 | 2022-08-09 | 一汽解放青岛汽车有限公司 | 一种网络架构确定方法、装置、电子设备及存储介质 |
-
2022
- 2022-10-26 CN CN202211320698.6A patent/CN115941583B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106953796A (zh) * | 2017-04-13 | 2017-07-14 | 北京汽车集团有限公司 | 安全网关、数据处理方法、装置、车辆网络拓扑及车辆 |
KR20190081958A (ko) * | 2017-12-29 | 2019-07-09 | 주식회사 유라코퍼레이션 | 차량 내부 통신 버스 부하율 제어 시스템, 방법, 및 상기 방법을 실행시키기 위한 컴퓨터 판독 가능한 프로그램을 기록한 기록 매체 |
CN111211954A (zh) * | 2019-12-04 | 2020-05-29 | 一汽解放汽车有限公司 | 一种canfd总线负载率的确定方法及装置 |
CN111025974A (zh) * | 2019-12-13 | 2020-04-17 | 厦门宏发汽车电子有限公司 | 一种车载网关控制器、其配置方法及汽车系统 |
CN114884813A (zh) * | 2022-05-05 | 2022-08-09 | 一汽解放青岛汽车有限公司 | 一种网络架构确定方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115941583A (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11146420B2 (en) | Method for transmitting data via a serial communication bus, bus interface, and computer program | |
CN101663863B (zh) | Rstp处理方式 | |
JP2007324679A (ja) | シリアル通信用ボーレートジェネレータ | |
CN112887217B (zh) | 控制数据包发送方法、模型训练方法、装置及系统 | |
JP2007336267A (ja) | 車載通信システム | |
WO2024037303A1 (zh) | 车辆诊断方法、装置、设备、可读存储介质及程序产品 | |
CN115941583B (zh) | 网关负载调整方法、装置、电子设备及存储介质 | |
US10162777B2 (en) | Transmission unit with checking function | |
US7853706B2 (en) | Method, interface and network for cyclical sending of Ethernet telegrams | |
EP2336896B1 (en) | Serial communication module with multiple receiver/transmitters | |
WO2004109999A2 (en) | Master node for a lin network | |
CN110704361A (zh) | Rdma数据发送及接收方法、电子设备及可读存储介质 | |
Lin et al. | Gigabit Modbus user datagram protocol fieldbus network integrated with industrial vision communication | |
JP2019022170A (ja) | 通信モジュール及び通信方法 | |
CN110722572A (zh) | 一种控制系统的数据转接装置及机器人 | |
CN118101515B (zh) | 异常拓扑处理方法、系统、设备以及集群 | |
JP2020065110A (ja) | 通信装置 | |
JP2018056627A (ja) | 中継装置 | |
CN118540213B (zh) | 一种针对安全实时总线srb的节点配置方法和相关装置 | |
CN110224794B (zh) | 通信数据传输方法及系统 | |
US20230117118A1 (en) | Network access method, apparatus and device | |
JP2012114724A (ja) | 電子制御装置 | |
Yoo et al. | Unidirectional ring ethernet and media access controller with automatic relaying for low-complexity in-vehicle control network | |
JP2006042164A (ja) | ゲートウェイ装置 | |
Ventuneac et al. | Improving ModBus Extension performance using PRU unit from Sitara AM335x |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |