车载网络的防护方法及装置与流程

文档序号:18471431发布日期:2019-08-20 20:20阅读:222来源:国知局
车载网络的防护方法及装置与流程

本发明涉及车载网关控制器技术领域,特别涉及一种车载网络的防护方法及装置。



背景技术:

随着人们生活水平的提高,越来越多的人拥有了自己的汽车。同时,人们对自己驾驶的汽车的安全性要求越来越高。在整车系统的内部划分了多个控制器局域网络(controllerareanetwork,can)总线网段,每个网段有不定数量的电子控制单元(electroniccontrolunit,ecu),且网段间相互物理隔绝,通过车载网关控制器实现信息互联互通。随着目前网络技术的应用以及车载终端设备的普及,车联网与车载网络的信息安全处于越来越重要的位置,当车载网络受到恶意攻击时,来自外部恶意攻击最终都会体现在can总线中。

目前,由于can总线是一种完全开放的通信协议,本身没有设计安全相关的防护机制,所以无法从物理上杜绝这些攻击,一般情况下对车载网络进行攻击,都是通过大规模、长时间的尝试通信,破解can总线通信规则,从而达到控制整车或者干扰整车运行的目的,这会使得can总线上的负载率过高,此时对于车辆用户的人身安全和信息安全都会产生致命影响。



技术实现要素:

有鉴于此,本发明实施例提供一种车载网络的防护方法,在判断出车载网络中的总线通信异常后,对车联网与车载网络的信息安全进行防护。

为实现上述目的,本发明实施例提供如下技术方案:

一种车载网络的防护方法,包括:

获取车载网络中的总线上的报文的负载率;其中,所述报文的负载率为报文在车载网络中的总线上出现的频率;

根据所述报文的负载率,判断车载网络中的总线通信是否异常;

若判断出所述车载网络中的总线通信异常,则停止所述车载网络中的总线通信。

可选的,所述车载网络中的总线上的报文至少包括探测报文;所述探测报文为车载网络总线上优先级最低的报文:其中,所述获取车载网络中的总线上的报文的负载率,包括:

获取一个周期内通过所述车载网络中的总线,只发送所述探测报文的最大发送数量,和所述周期内通过所述车载网络中的总线,发送的所述探测报文的实际发送数量;

根据所述探测报文的最大发送数量和所述探测报文的实际发送数量,计算所述探测报文的负载率。

可选的,所述车载网络中的总线上的报文包括非探测报文,所述获取车载网络中的总线上的报文的负载率,包括:

获取一个周期内通过所述车载网络中的总线,只发送所述探测报文的最大发送数量,和所述周期内通过所述车载网络中的总线,发送的所述探测报文的实际发送数量;

根据所述探测报文的最大发送数量和所述探测报文的实际发送数量,计算所述非探测报文的负载率。

可选的,获取一个周期内通过所述车载网络中的总线,只发送所述探测报文的最大发送数量,包括:

利用公式n=t/(l/f)计算出所述周期内只发送探测报文的最大发送数量;其中,n为所述周期内只发送探测报文的最大发送数量,t为所述周期,f为车载网络中的总线的通信速率,l为所述探测报文的长度。

可选的,所述根据所述探测报文的最大发送数量和所述探测报文的实际发送数量,计算所述探测报文的负载率,包括:

利用公式q=m/n计算出所述探测报文的负载率;其中,q为所述探测报文的负载率,n为周期内只发送探测报文的最大发送数量,m为所述周期内所发送的所述探测报文的实际发送数量。

可选的,所述根据所述报文的负载率,判断车载网络中的总线通信是否异常,包括:

判断所述探测报文的负载率是否小于探测报文的负载率阈值;其中,所述探测报文的负载率阈值为,所述车载网络中的总线上可以发送所述探测报文的最大发送数量的占比;

若判断出所述探测报文的负载率小于所述探测报文的负载率阈值,则所述车载网络中的总线通信异常。

判断所述探测报文的负载率是否小于或等于应用报文的负载率阈值;其中,所述应用报文的负载率阈值为,在整车设计确定的所述车载网络中的总线上,可以发送所述应用报文的最大发送数量的占比;

若判断出所述探测报文的负载率小于或等于所述应用报文的负载率阈值,则所述车载网络中的总线通信异常。

可选的,所述根据所述探测报文的最大发送数量和所述探测报文的实际发送数量,计算所述非探测报文的负载率,包括:

利用公式s=(n-m)/n计算出所述非探测报文的负载率;其中,s为所述非探测报文的负载率,n为周期内只发送探测报文的最大发送数量,m为所述周期内所发送的所述探测报文的实际发送数量。

可选的,所述根据报文的负载率,判断车载网络中的总线通信是否异常,包括:

判断所述非探测报文的负载率是否大于所述应用报文的负载率阈值;其中,所述应用报文的负载率阈值为,所述车载网络中的总线上可以发送所述应用报文的最大发送数量的占比;

若判断出所述非探测报文的负载率大于所述应用报文的负载率阈值,则所述车载网络中的总线通信异常。

一种车载网络的防护装置,包括:

获取单元,用于获取车载网络中的总线上的报文的负载率;

判断单元,用于根据所述报文的负载率,判断所述车载网络中的总线通信是否异常;

执行单元,用于若所述判断单元判断出所述车载网络中的总线通信异常,则停止所述车载网络中的总线通信。

可选的,所述获取单元,包括:

第一获取子单元,用于获取一个周期内通过所述车载网络中的总线,只发送所述探测报文的最大发送数量,和所述周期内通过所述车载网络中的总线,发送的所述探测报文的实际发送数量;

第一计算单元,用于根据所述探测报文的最大发送数量和所述探测报文的实际发送数量,计算所述探测报文的负载率。

由以上方案可知,本发明提供的一种车载网络的防护方法及装置中,通过获取车载网络中的总线上的报文的负载率;其中,报文的负载率为报文在车载网络中的总线上出现的频率;根据报文的负载率,判断车载网络中的总线通信是否异常;若判断出车载网络中的总线通信异常,则停止车载网络中的总线通信。从而实现对车联网与车载网络的信息安全进行防护。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种车载网络的防护方法的流程图;

图2为本发明另一实施例提供的一种can总线仲裁机制的示意图;

图3为本发明另一实施例提供的一种车载网络的防护方法的流程图;

图4为本发明另一实施例提供的一种车载网络的防护方法的流程图;

图5为本发明实施例提供的一种车载网络的防护装置的示意图;

图6为本发明另一实施例提供的一种车载网络的防护装置的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供的一种车载网络的防护方法,如图1所示,包括:

s101、获取车载网络中的总线上的报文的负载率。

其中,报文的负载率为报文在车载网络中的总线上出现的频率。

可以理解的是:在需要进行车载网络中的总线通信是否异常的判断过程中,需要获取判断车载网络中的总线通信是否异常所需报文的负载率,而该类型报文的负载率是指:车载网络中的总线在单位时间内发送该报文的数量,相对于车载网络中的总线在单位时间内发送的所有报文的数量的占比。并且,车载网络中的总线可以为控制器局域网络(controllerareanetwork,can)总线。

需要说明的是,在一个车载网络中可以有多个总线,正常情况下,车载网络总线上的报文可以为应用报文,用来执行各种各样的动作,应用报文通过网关控制器进行发送,通过can总线进行传输,由电子控制单元(electroniccontrolunit,ecu)进行接收。探测报文是由一种在can总线仲裁机制中,优先级最低的报文,用于在can总线上不间断的发送。如果can总线上同时有报文要传输时,基于can的总线仲裁机制,选择优先级较高的报文进行传输。其中,优先级越高的报文,其id就越小。而探测报文是在车载网络节点相关的所有通信报文的id分配完成后,网关控制器选择的一个低于所有报文优先级的报文作为探测报文,所以当can总线上有其他报文要传输时,探测报文将被其他非探测报文所代替,选用非探测报文进行传输。

具体的,can总线的仲裁机制如图2所示,当can总线上有数据要发送时,都会对发送的数据的id场进行仲裁,id场为11个bit,如图2中的0到10,报文1的id为0x111,那么16进制转化成2进制为00100010001,报文2的id为0x211,那么16进制转化成2进制为01000010001,报文3的id为0x311,那么16进制转化成2进制为01100010001。其中,图2中的低的线表示0,高的线表示1。通过对转化为2进制的三个报文id的大小进行比较,其中,00100010001<01000010001<01100010001,因此,报文1的id较小,即报文1的优先级较高,则报文1获得本次发送机会。

可选的,在本发明的另一实施例中,步骤s101的一种实施方式,如图3所示,包括:

s301、获取一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,和周期内通过车载网络中的总线,发送探测报文的实际发送数量。

其中,一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,是通过计算得到的理论值;而周期内通过车载网络中的总线发送探测报文的实际发送数量,是在车载网络的实际应用中,网关控制器,在周期内每发送一个探测报文就记录一次,直到周期结束后得到的探测报文的实际发送数量。

可选的,在本发明的另一实施例中,获取一个周期内通过车载网络中的总线只发送探测报文的最大发送数量的一种计算方式,包括:

利用公式n=t/(l/f)计算出周期内只发送探测报文的最大发送数量;其中,n为周期内只发送探测报文的最大发送数量,t为周期,f为车载网络中的总线的通信速率,l为探测报文的长度。

需要说明的是,周期内通过车载网络中的总线只发送探测报文的最大发送数量,可以是在can总线使用过程中进行计算得到,也可以是在can总线未使用时提前计算并进行存储。

在本实施例的具体实现过程中,周期内实际发送的探测报文的实际发送数量由网关控制器进行统计,计算周期内通过车载网络中的总线,只发送探测报文的最大发送数量也是通过网关控制器进行统计或计算。

s302、根据探测报文的最大发送数量和探测报文的实际发送数量,计算探测报文的负载率。

其中,探测报文的负载率,可以理解成车载网络中的总线实际发送探测报文的数量,相对于车载网络中的总线单独发送探测报文的最大发送数量的占比。

可选的,本发明的另一实施例中,步骤s302的一种实施方式,包括:

利用公式q=m/n计算出所述探测报文的负载率;其中,q为探测报文的负载率,n为周期内只发送探测报文的最大发送数量,m为周期内所发送的探测报文的实际发送数量。

s102、根据报文的负载率,判断车载网络中的总线通信是否异常。

在本实施例的具体实现过程中,总线上单位时间内传输的报文的数量是有限制的,所以,报文的负载率不会超过报文的最大负载率,当报文的负载率超过报文的最大负载率时,说明车载网络中的总线通信出现了异常。

可选的,本发明的另一实施例中,步骤s102的一种实施方式,包括:

判断探测报文的负载率是否小于探测报文的负载率阈值。

其中,探测报文的负载率阈值为:所述车载网络中的总线上在单位时间内可以发送所述探测报文的最大发送数量,相对于车载网络中的总线在单位时间内发送的所有报文的数量的占比。具体的,是在进行整车网络架构搭建和后期实车测试优化后,车辆内每个can总线网络的探测报文的负载率基本就确定下来了,探测报文在发送时,探测报文的负载率不会小于探测报文的负载率阈值。

还需要说明的是,在本实施例的具体实现过程中,在正常情况下,车载网络中的总线上只有探测报文和应用报文进行传输,当车载网络受到攻击时,车载网络中的总线上会出现额外的干扰报文,影响应用报文和探测报文在车载总线上的占比,而由于探测报文为优先级最低的报文,根据can总线的仲裁机制,干扰报文将占用探测报文发送机会,所以探测报文的在总线通信中占有量会减少,负载率变低。所以当探测报文的负载率阈值低于探测报文的负载率阈值,就可以说明网络出现异常。

具体的,若判断出探测报文的负载率小于探测报文的负载率阈值,则说明车载网络中的总线通信异常。若判断出车载网络中的总线通信异常,则执行步骤s103。

s103、停止车载网络中的总线通信。

需要说明的是,车载网络中有多个总线时,仅仅停止车载网络中出现异常的总线通信。

由以上方案可知,本发明提供的一种车载网络防护的方法中,通过获取车载网络中的总线上的报文的负载率;其中,报文的负载率为报文在车载网络中的总线上出现的频率;根据报文的负载率,判断车载网络中的总线通信是否异常;若判断出车载网络中的总线通信异常,则停止车载网络中的总线通信。从而实现对车联网与车载网络的信息安全进行防护。

本发明另一实施例提供的一种车载网络的防护方法,如图4所示,包括:

s401、获取一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,和周期内通过车载网络中的总线,发送探测报文的实际发送数量。

其中,一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,是通过计算得到的理论值;而周期内通过车载网络中的总线,发送探测报文的实际发送数量,是在车载网络的实际应用中,网关控制器,在周期内每发送一个探测报文就记录一次,直到周期结束后得到的探测报文的实际发送数量。

可选的,在本发明的另一实施例中,获取一个周期内通过车载网络中的总线只发送探测报文的最大发送数量的一种计算方式,包括:

利用公式n=t/(l/f)计算出周期内只发送探测报文的最大发送数量;其中,n为周期内只发送探测报文的最大发送数量,t为周期,f为车载网络中的总线的通信速率,l为探测报文的长度。

需要说明的是,周期内通过车载网络中的总线只发送探测报文的最大发送数量,可以是在can总线使用过程中进行计算得到,也可以是在can总线未使用时提前计算并进行存储。

s402、根据探测报文的最大发送数量和探测报文的实际发送数量,计算非探测报文的负载率。

需要说明的是,非探测报文可以为应用报文,干扰报文等,非探测报文的优先级要比探测报文高,所以,根据can总线的仲裁机制,在探测报文和非探测报文同时发送时,优先选择非探测报文进行发送。

可选的,本发明的另一实施例中,步骤s402的一种实施方式,包括:

利用公式s=(n-m)/n计算出非探测报文的负载率;其中,s为非探测报文的负载率,n为周期内只发送探测报文的最大发送数量,m为周期内所发送的探测报文的实际发送数量。

s403、判断非探测报文的负载率是否大于应用报文的负载率阈值。

其中,应用报文的的负载率阈值为,车载网络中的总线上可以发送应用报文的最大发送数量的占比。具体的,是在进行整车网络架构搭建和后期实车测试优化后,车辆内每个can总线网络的应用报文的负载率基本就确定下来了,应用报文在发送时,应用报文的负载率不会大于应用报文的负载率阈值。

需要说明的是,应用报文可以是携带控制汽车开关门、开灯、熄火等操作的报文,而在发生网络攻击时,会在已有的车载通信基础上出现干扰报文,干扰报文对整车现有报文的内容进行解析,这个解析的过程会不断的模拟测试车载通信中应用报文的数据,如,整车通信中有某个报文中的信号是控制发动机启动的,这个信号值为0x55时,发动机启动,但是破解的人不知道,他只有不停的尝试这个值是多少,才会让发动机启动,在不断的尝试过程中会导致can总线中的非探测报文数量不断增加,导致can总线的负载升高。

具体的,若判断出非探测报文的负载率大于应用报文的负载率阈值,则说明车载网络中的总线通信异常,执行步骤s404。

s404、停止车载网络中的总线通信。

需要说明的是,车载网络中有多个总线时,仅仅停止车载网络中出现异常的总线通信。

由以上方案可知,本发明提供的一种车载网络防护的方法中,通过获取车载网络中的总线上的报文的负载率;其中,报文的负载率为报文在车载网络中的总线上出现的频率;根据报文的负载率,判断车载网络中的总线通信是否异常;若判断出车载网络中的总线通信异常,则停止车载网络中的总线通信。从而实现对车联网与车载网络的信息安全进行防护。

本发明另一实施例提供的一种车载网络的防护装置,如图5所示,包括:

获取单元501,用于获取车载网络中的总线上的报文的负载率。

其中,报文的负载率为报文在车载网络中的总线上出现的频率,车载网络中的总线可以为控制器局域网络(controllerareanetwork,can)总线。

具体的,获取单元501的具体工作过程,可参见对应的方法实施例内容,如s101所示,此处不再赘述。

可选的,本发明的另一实施例中,获取单元501的一种实施方式,如图6所示,包括:

第一获取子单元601,用于获取一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,和周期内通过车载网络中的总线发送的探测报文的实际发送数量。

其中,一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,是通过计算得到的理论值;而周期内通过车载网络中的总线,发送探测报文的实际发送数量,是在车载网络的实际应用中,网关控制器,在周期内每发送一个探测报文就记录一次,直到周期结束后得到的探测报文的实际发送数量。

可选的,本发明的另一实施例中,第一获取子单元601的一种实施方式,包括:

利用公式n=t/(l/f)计算出周期内只发送探测报文的最大发送数量;其中,n为周期内只发送探测报文的最大发送数量,t为周期,f为车载网络中的总线的通信速率,l为探测报文的长度。

第一计算单元602,用于根据探测报文的最大发送数量和探测报文的实际发送数量,计算探测报文的负载率。

可选的,本发明的另一实施例中,第一计算单元602的一种实施方式,包括:

利用公式q=m/n计算出所述探测报文的负载率;其中,q为探测报文的负载率,n为周期内只发送探测报文的最大发送数量,m为周期内所发送的探测报文的实际发送数量。

具体的,第一计算单元602的具体工作过程,可参见对应的方法实施例内容,如s302所示,此处不再赘述。

判断单元502,用于根据报文的负载率,判断车载网络中的总线是否异常。

其中,在车载网络中的总线中使用的报文的数量是固定的,所以,报文的负载率不会超过该报文的最大负载率,当报文的负载率出现变化时说明车载网络中的总线通信出现了异常。

可选的,本发明的另一实施例中,判断单元502的一种实施方式,包括:

第一判断子单元,用于判断探测报文的负载率是否小于探测报文的负载率阈值;其中,探测报文的负载率阈值为,车载网络中的总线上可以发送探测报文的最大发送数量的占比。

若第一判断子单元判断出探测报文的负载率小于探测报文的负载率阈值,则车载网络中的总线通信异常。

执行单元503,用于若判断单元502判断出车载网络中的总线通信异常,则停止车载网络中的总线通信。

需要说明的是,车载网络中有多个总线时,仅仅停止车载网络中出现异常的总线通信。

具体的,执行单元503的具体工作过程,可参见对应的方法实施例内容,如s103所示,此处不再赘述。

可选的,本发明的另一实施例中,获取单元501的一种实施方式,包括:

第二获取子单元,用于获取一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,和周期内通过车载网络中的总线,发送的探测报文的实际发送数量。

其中,一个周期内通过车载网络中的总线,只发送探测报文的最大发送数量,是通过计算得到的理论值;而周期内通过车载网络中的总线,发送探测报文的实际发送数量,是在车载网络的实际应用中,网关控制器,在周期内每发送一个探测报文就记录一次,直到周期结束后得到的探测报文的实际发送数量。

可选的,本发明的另一实施例中,第二获取子单元的一种实施方式,包括:

利用公式n=t/(l/f)计算出周期内只发送探测报文的最大发送数量;其中,n为周期内只发送探测报文的最大发送数量,t为周期,f为车载网络中的总线的通信速率,l为探测报文的长度。

第二计算单元,用于根据探测报文的最大发送数量和探测报文的实际发送数量,计算非探测报文的负载率。

可选的,本发明的另一实施例中,第二计算单元的一种实施方式,包括:

利用公式s=(n-m)/n计算出非探测报文的负载率;其中,s为非探测报文的负载率,n为周期内只发送探测报文的最大发送数量,m为周期内所发送的探测报文的实际发送数量。

可选的,本发明的另一实施例中,判断单元502的一种实施方式,包括:

第二判断子单元,用于判断非探测报文的负载率是否大于应用报文的负载率阈值;其中,应用报文的负载率阈值为,车载网络中的总线上可以发送应用报文的最大发送数量的占比。

若第二判断子单元判断出,非探测报文的负载率大于应用报文的负载率阈值,则车载网络中的总线通信异常。

本发明上述实施例公开的单元的具体工作过程,可参见对应的方法实施例内容,此处不再赘述。

由以上方案可知,本发明提供的一种车载网络防护的装置中,通过获取单元501获取车载网络中的总线上的报文的负载率;其中,报文的负载率为报文在车载网络中的总线上出现的频率;判断单元502根据报文的负载率,判断车载网络中的总线通信是否异常;执行单元503用于若判断单元502判断出,车载网络中的总线通信异常,则停止车载网络中的总线通信。从而实现对车联网与车载网络的信息安全进行防护。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1