CN112889246A - 异常判定方法、异常判定装置以及程序 - Google Patents

异常判定方法、异常判定装置以及程序 Download PDF

Info

Publication number
CN112889246A
CN112889246A CN201980069198.XA CN201980069198A CN112889246A CN 112889246 A CN112889246 A CN 112889246A CN 201980069198 A CN201980069198 A CN 201980069198A CN 112889246 A CN112889246 A CN 112889246A
Authority
CN
China
Prior art keywords
determination
abnormality
determination function
message
unit
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.)
Granted
Application number
CN201980069198.XA
Other languages
English (en)
Other versions
CN112889246B (zh
Inventor
前田学
中野稔久
今本吉治
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Priority to CN202311224624.7A priority Critical patent/CN117118776A/zh
Publication of CN112889246A publication Critical patent/CN112889246A/zh
Application granted granted Critical
Publication of CN112889246B publication Critical patent/CN112889246B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40071Packet processing; Packet format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40032Details regarding a bus interface enhancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40104Security; Encryption; Content protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • H04L12/40176Flexible bus arrangements involving redundancy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Small-Scale Networks (AREA)
  • Mechanical Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

一种异常判定方法,对接收消息的异常进行判定,包括:接收多个消息的各个消息来作为所述接收消息,所述多个消息包括具有周期性的多个消息,并且,分别包含具有固定的值的第1字段和具有变化的值的第2字段,根据能够执行所述异常判定方法的时间、负荷量、数据量和消息的个数中的一个以上的基准,选择以由多个异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合进行判定(S1103),所述多个异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定以及使用所述第2字段的异常判定。

Description

异常判定方法、异常判定装置以及程序
技术领域
本公开涉及与对车载网络中的异常的消息进行检测时的处理负荷相应的检测功能的判定方法等。
背景技术
近年来,在汽车中的系统配置有大量的被称为电子控制单元(ECU:ElectronicControl Unit)的装置。连接这些ECU的通信网络被称为车载网络。车载网络存在大量的通信标准。其中最主流的车载网络的标准之一存在控制器局域网络(Controller AreaNetwork(以后称为CAN))。
在遵循CAN标准的网络(以下也称为CAN网络)中,通信路径(总线)由两条电缆构成,与总线连接的ECU也被称为节点。与总线连接的各节点以被称为帧或者消息的单位收发数据。另外,在CAN中,不使用表示数据的发送目的地或者发送源的标识符。
发送帧的节点(以下也称为发送节点)按消息附加表示消息的种类的被称为消息ID的ID来发送消息、也即是向总线送出信号。接收消息的节点(以下也称为接收节点)仅接收包含预先决定的消息ID的消息、也即是从总线读取信号。同一ID的消息被以一定的周期进行发送。
如上述那样,在汽车中的系统大量配置的ECU分别连接于CAN网络,一边相互交换各种各样的消息,一边进行动作。
在此,具有与CAN网络的外部进行通信的功能的ECU有可能因被从外部不正常地访问等而被什么人不正常地控制,会引起对CAN网络发送异常的消息(也称为攻击消息)。这样的被什么人不正常地控制的ECU(也称为不正常ECU)例如可能伪装为其他ECU而发送异常的消息,不正常地对车辆进行控制。用于对这样的所谓的伪装攻击进行检测的方法例如公开于专利文献1。
现有技术文献
专利文献1:国际公开第2015/151418号
发明内容
发明要解决的技术问题
然而,在专利文献1所公开的方法中存在如下问题:在能够执行用于对被送出到车载网络的异常消息进行检测的异常检测处理的时间短的情况下,异常检测处理不会被执行。
于是,本公开提供能进行有效的异常检测处理的异常判定方法和异常判定装置等。
用于解决问题的技术方案
为了解决上述问题,本公开的一个技术方案涉及的异常判定方法是对接收消息的异常进行判定的异常判定方法,包括:接收多个消息的各个消息来作为所述接收消息,所述多个消息包括具有周期性的多个消息,并且,分别包含具有固定的值的第1字段和具有变化的值的第2字段,根据能够执行所述异常判定方法的时间、负荷量、数据量和消息的个数中的一个以上的基准,选择以由多个异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合进行判定,所述多个异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定以及使用所述第2字段的异常判定。
此外,这些包括性或者具体的技术方案既可以由系统、装置、方法、集成电路、计算机程序或者计算机能够读取的CD-ROM等的非暂时性的记录介质实现,也可以由系统、装置、方法、集成电路、计算机程序以及记录介质的任意组合来实现。
发明的效果
根据本公开的一个技术方案涉及的异常判定方法等,能够根据检测处理时间进行适当的异常检测处理。
附图说明
图1是表示实施方式1中的车载网络系统的整体构成的框图。
图2是表示实施方式1中的CAN协议的消息(数据帧)的格式的图。
图3是表示实施方式1中的车载网络系统所包括的网关的一个例子的框图。
图4是表示实施方式1中的接收ID列表的一个例子的图。
图5是表示实施方式1中的传送规则的一个例子的图。
图6是表示实施方式1中的异常检测处理功能组群的一个例子的框图。
图7是表示实施方式1中的判定功能与处理时间/检测性能的关系的一个例子的图。
图8是表示实施方式1中的判定功能与处理时间/检测性能的关系的一个例子的图。
图9是表示实施方式1中的判定功能与处理时间/检测性能的关系的一个例子的图。
图10是表示实施方式1中的车载网络系统所包括的ECU的一个例子的框图。
图11是表示实施方式1中的传送处理的一个例子的流程图。
图12是表示实施方式1中的异常检测处理的又一个例子的流程图。
图13是表示实施方式1中的异常检测处理的其他又一个例子的流程图。
图14是表示实施方式1中的异常检测处理的其他一个例子的流程图。
图15是表示实施方式1中的异常检测处理的其他又一个例子的流程图。
图16是表示实施方式1中的异常检测处理的其他一个例子的流程图。
图17是表示实施方式1中的包括复位处理的异常检测处理的一个例子的流程图。
图18是表示实施方式1中的包括复位处理的异常检测处理的又一个例子的流程图。
图19是表示实施方式1中的包括复位处理的异常检测处理的其他又一个例子的流程图。
图20是表示变形例中的复位处理的一个例子的图。
图21是表示实施方式2中的异常检测处理功能组群的一个例子的框图。
图22是表示实施方式2中的异常检测处理的一个例子的流程图。
图23是表示实施方式2中的异常检测处理的又一个例子的流程图。
图24是表示实施方式2中的异常检测处理的其他又一个例子的流程图。
图25是表示实施方式2中的异常检测处理的其他一个例子的流程图。
图26是表示实施方式2中的异常检测处理的又一其他一个例子的流程图。
图27是表示实施方式3中的异常检测处理功能组群的一个例子的框图。
图28是表示实施方式3中的异常检测处理功能组群的又一个例子的框图。
图29是表示实施方式3中的非选择信息的一个例子的图。
图30是表示实施方式3中的异常检测处理的一个例子的流程图。
图31是表示实施方式3中的异常检测处理的又一个例子的流程图。
图32是表示实施方式3中的非选择信息尾随处理的一个例子的流程图。
图33是表示变形例中的判定功能和判定功能的选择条件的表。
图34是表示变形例中的异常检测处理的一个例子的流程图。
图35是表示变形例中的异常检测处理的又一个例子的流程图。
图36是表示变形例中的ECU的一个例子的框图。
图37是表示变形例中的ECU的又一个例子的框图。
图38是表示变形例中的车载网络系统的整体构成的框图。
图39是表示变形例中的车载网络系统所包括的通信ECU的一个例子的框图。
图40是表示变形例中的服务器的一个例子的框图。
图41是表示变形例中的判定功能和判定功能的选择条件的表。
标号说明
10 车载网络系统
100、100a、100b、100c、100d、100e、100f、100g ECU
101 发动机
102 制动器
103 门开闭传感器
104 窗开闭传感器
110 帧收发部
120 帧解释部
130 接收ID判定部
140 接收ID列表保持部
150 帧处理部
170 数据取得部
171 发送数据取得部
180、380 帧生成部
200、200a、200b 总线
300 网关
310 帧收发部
320 帧解释部
330 接收ID判定部
340 接收ID列表保持部
350 帧处理部
360 传送规则保持部
370 异常检测处理功能组群
371 判定功能选择部
372、374、376、377 控制部
373 异常检测部
375 非选择信息保持部
381 检测规则保持部
390 外部通信部
400 外部网络
500 服务器
510 接收部
520 消息保持部
530 处理部
具体实施方式
(成为本公开的基础的见解)
为了在对异常的消息被发送到了CAN网络上这一情况进行检测的功能生成并输出该检测结果和与该检测结果关联的信息来作为日志的情况下,进行达到检测到异常的状况的详细的事后确认,需要许多的数据。但是,在日志的输出目的地的存储容量、或者用于向日志的输出目的地送出检测结果的通信量多的情况下,会花费极大的时间上的成本或者资源上的成本。
于是,本公开的一个技术方案涉及的异常判定方法是对接收消息的异常进行判定的异常判定方法,包括:接收多个消息的各个消息来作为所述接收消息,所述多个消息包括具有周期性的多个消息,并且,分别包含具有固定的值的第1字段和具有变化的值的第2字段,根据能够执行所述异常判定方法的时间、负荷量、数据量和消息的个数中的一个以上的基准,选择以由多个异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合进行判定,所述多个异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定以及使用所述第2字段的异常判定。
由此,本公开的一个技术方案涉及的异常判定方法能够根据作为有限的时间的检测处理时间,进行适当的异常检测处理。
另外,本公开的一个技术方案涉及的异常判定装置是包括网络和与所述网络连接的一个以上的电子控制单元的车载网络系统中的异常判定装置,包括:一个以上的处理器;和能够由所述一个以上的处理器进行访问的存储部,所述一个以上的处理器,从所述网络接收多个消息的各个消息来作为接收消息,所述多个消息包括具有周期性的多个消息,并且,分别包含具有固定的值的第1字段和具有变化的值的第2字段,根据能够执行所述异常判定方法的时间、负荷量、数据量和消息的个数中的一个以上的基准,选择以由多个异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合进行判定,所述多个异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定以及使用所述第2字段的异常判定。
由此,本公开的一个技术方案涉及的异常判定装置能够根据作为有限的时间的检测处理时间,进行适当的异常检测处理。
另外,本公开的一个技术方案涉及的程序是用于在上述异常判定装置中使所述一个以上的处理器实施上述异常判定方法的程序。
由此,能够根据检测处理时间,进行适当的异常检测处理。
以下,参照附图对实施方式进行具体的说明。
此外,以下说明的实施方式均是表示包括性的或者具体的例子。以下的实施方式所示的数值、形状、材料、构成要素、构成要素的配置以及连接形态、步骤、步骤的顺序等是一个例子,并不是意在限定本公开。以下的实施方式的构成要素中的未记载于表示最上位概念的独立权利要求的构成要素是作为可任意地包括的构成要素来说明的。
(实施方式1)
[1.概要]
在本实施方式中,参照附图对如下情况进行详细的说明,该情况为:在车载网络系统中,根据能执行异常检测处理的时间来适当地对判定异常的功能的执行进行控制,对异常进行判定。
[1.1车载网络系统的整体构成]
图1是表示本实施方式中的车载网络系统的整体构成的框图。
在图1中,车载网络系统10由CAN网络构成,包括ECU100a、ECU100b、ECU100c及ECU100d、总线200a及总线200b以及网关300。此外,ECU100a、ECU100b、ECU100c以及ECU100d等是电子控制单元的一个例子。
在以下中,对于ECU100a、ECU100b、ECU100c以及ECU100d,有时集合性地指代这些ECU或者指代不特定的一部分而作为ECU100来进行说明。
另外,在以下中,对于总线200a和总线200b,有时集合性地指代这些总线或者指代不特定的一方而作为总线200来进行说明。
ECU100a连接于发动机101,ECU100b连接于制动器102,ECU100c连接于门开闭传感器103,ECU100d连接于窗开闭传感器104。
ECU100取得表示所连接的设备的状态的消息,周期性地向总线200送出所取得的表示状态的消息。例如,ECU100a取得与作为发动机101的状态之一的转速有关的信息,对包含表示该转速的数据值的消息附加预定的ID来送出至总线200。
另外,各ECU100从总线200读出其他ECU100发送来的消息,根据附加于消息的ID来选择性地进行接收。关于该选择性的接收,将在后面进行描述。
网关300将连接有ECU100a以及ECU100b的总线200a和连接有ECU100c以及ECU100d的总线200b相连接。网关300具有如下功能:将从一方的总线200接收到的消息传送至另一方的总线200。另外,在CAN网络上,网关300也是一个节点。
此外,车载网络系统进行消息是否为异常消息的判定,是用于对异常判定方法等能够应用的对象进行说明的例子,该应用对象不限定于车载网络系统。
[1.2消息的数据格式]
图2是表示CAN协议的消息(数据帧)的格式的图。在此,示出CAN协议中的标准ID格式下的消息。
消息由帧开头(Start Of Frame(SOF))、ID字段、远程传输请求(RemoteTransimission Request(RTR))、IDE(Identifier Extension,标识符扩展)、预留位(r)、数据长度码(DLC)、数据字段、CRC(Cycric Redundancy Check,循环冗余校验)序列、CRC分隔符(图中为左方的DEL)、ACK(Acknowledgement,确认符)时隙、ACK分隔符(图中为右方的DEL)、EOF(End Of Frame,帧结束)构成。
SOF是1bit(1位)的显性。显性是优势之意。显性是指在数据传输使用数字方式的CAN网络中在构成总线的两条电缆施加了电压以使得发送“0”的值的状态、或者被发送的该“0”的值。与此相对,在构成总线的两条电缆施加了电压以使得发送“1”的值的状态、或者被发送的该“1”的值被称为隐性。隐性是劣势之意。在从两个节点同时向总线发送了“0”的值和“1”的值的情况下,“0”的值优先。怠速时的总线为隐性的状态。各ECU100通过使总线200的状态从隐性向显性变化,开始消息的发送,其他ECU100读取该变化来进行同步。在图2中,表示构成消息的显性或者隐性的线为实线的部分表示可取显性或者隐性的各值。SOF固定在显性的状态,因此,显性的线为实线,隐性的线为虚线。
ID是指表示消息包含的数据的种类的11bit的值。另外,在CAN中,设计为在多个节点同时开始了发送的消息间的通信仲裁中,ID的值更小的消息成为更高的优先级。ID与消息ID以及CAN ID是同义的。
RTR是指表示帧为消息的1bit的显性。
IDE是指分别1bit的显性。消息也称为数据帧。
DLC是表示接着的数据字段的长度的4bit的值。
数据字段是表示被发送的数据的内容的值,最大为64bit长度,能够以8bit为单位对长度进行调整。与所发送的数据向该部分的分配有关的方式取决于车型或者制造者。
CRC序列是根据SOF、ID字段、控制字段、数据字段的发送值算出的15bit的值。
CRC分隔符是1bit的隐性固定的表示CRC序列的结束的分隔记号。接收节点通过将根据所接收到的消息的SOF、ID字段、控制字段以及数据字段的值算出的结果与CRC序列的值进行比较,判断有无异常。
ACK时隙为1bit长度,发送节点用该部分发送隐性。接收节点若能够正常地进行接收直到CRC序列,则发送显性作为确认响应。由于显性优先,因此,若一个消息的通信正常进行到CRC序列,则ACK时隙的发送中的总线200为显性。
ACK分隔符固定为1bit的隐性,是表示ACK时隙的结束的分隔记号。
EOF固定为7bit的隐性,表示消息的结束。
[1.3网关的构成]
图3是表示实施方式1中的车载网络系统10所包括的网关300的一个例子的框图。在图3中,网关300具备帧收发部310、帧解释部320、接收ID判定部330、接收ID列表保持部340、帧处理部350、传送规则保持部360、异常检测处理功能组群370以及帧生成部380。
此外,这些构成是表示功能的构成,网关300例如被作为信息处理装置来进行提供,该信息处理装置具备由处理器实现的处理部、由半导体存储器等实现的存储部、由输入输出端口实现的输入输出部等。
表示上述功能的构成通过由处理部读出并执行保持于存储部的程序、向存储部记录预定的数据来实现。或者,也可以代替向存储部记录预定的数据,通过经由输入输出部执行数据的收发来实现这些构成。或者,表示上述功能的构成也可以由这些的组合来实现。
帧收发部310对于总线200a、200b分别收发遵循了CAN协议的消息。
更具体而言,帧收发部310一位(bit)一位地读出被送出到了总线200的消息,将所读出的消息传送至帧解释部320。
另外,帧收发部310根据由帧生成部380发送的总线信息,将消息一位一位地送出到总线200a和200b。
帧收发部310通过向总线200b发送从总线200a接收到的消息,向总线200a发送从总线200b接收到的消息,从而执行总线200间的消息的传送。
帧解释部320从帧收发部310接受消息的值,映射至CAN协议中的各字段,进行所接收到的消息的解释。帧解释部320向接收ID判定部330传送解释为ID字段的值的一连串值。
帧解释部320进一步根据从接收ID判定部330送出的判定结果,决定是向帧处理部350传送消息的ID字段的值和ID字段以后出现的数据字段、还是中止消息的接收。
另外,帧解释部320在判断为所接收到的消息是不遵循CAN协议的消息的情况下,对帧生成部380进行要求以使得发送出错帧。
出错帧是在CAN网络上产生了错误的情况下从节点发送的、与上述消息不同的、由CAN协议规定的预定格式的帧。当出错帧被送出到总线时,该网络中的消息的发送被中断。
另外,帧解释部320在解释为了接收到其他节点发送的出错帧的情况下,废弃读取中的消息。
接收ID判定部330从帧解释部320接受ID字段的值,按照接收ID列表保持部340保持的消息ID的列表,进行是否接收所读出的消息的判定。接收ID判定部330向帧解释部320送出该判定的结果。
接收ID列表保持部340保持网关300接收的消息ID的列表(也称为接收ID列表)。图4是表示实施方式1中的接收ID列表的一个例子的图。对于图4中的接收ID列表的详细,将在后面进行描述。
帧处理部350按照传送规则保持部360保持的与数据传送有关的规则,根据所接收到的消息的ID决定传送目的地的总线200,向帧生成部380送出表示成为传送目的地的总线200的信息、由帧解释部320送出的消息ID以及要传送的数据。
另外,帧处理部350向异常检测处理功能组群370发送由帧解释部320接受到的消息,对于异常检测处理功能组群370进行要求以使得进行该消息是否为异常消息的判定。帧处理部350不传送在异常检测处理功能组群370中判定为了是异常消息的消息。
传送规则保持部360保持与各总线200的数据传送有关的规则(以下也称为传送规则)。图5是表示实施方式1中的传送规则的一个例子的图。对于图5中的传送规则的详细,将在后面进行描述。
异常检测处理功能组群370是判定接收中的消息是否为异常消息的功能组群。对于异常检测处理功能组群370所包括的功能构成的详细,将在后面进行描述。异常检测处理功能组群370向帧处理部350送出判定结果。
帧生成部380按照来自帧解释部320的发送出错帧的要求,生成出错帧,使帧收发部310送出出错帧。
另外,帧生成部380使用由帧处理部350接受到的消息ID和数据生成消息帧,将消息帧与总线信息一起送出至帧收发部310。
[1.4接收ID列表]
如图4所示,接收ID列表是网关300接收并进行处理的消息的消息ID的列表,由接收ID列表保持部340保持。
在图4中,接收ID列表在各行保存有消息的ID。图4的接收ID列表的消息ID为“1”、“2”、“3”以及“4”,网关300接收这些消息ID的消息。网关300中止不包含于接收ID列表的消息ID的消息的接收。
此外,ID的值以及接收ID列表所包含的ID的个数是用于说明的一个例子,并不是将网关300中使用的接收ID列表的构成限定于此。
[1.5传送规则]
传送规则由传送规则保持部360保持。在图5中,传送规则在各行保存有消息的传送源的总线200和传送目的地的总线200以及传送对象的消息ID的组合。
具体而言,传送规则的第1行的传送源为“总线200a”,传送目的地为“总线200b”,ID为“*”,是如下规则:无论ID是什么,网关300都将从总线200a接收的消息传送至总线200b。传送规则的2行目的传送源为“总线200b”,传送目的地为“总线200a”,ID为“3”,是如下规则:若从总线200b接收的消息是ID为“3”的消息,则网关300将其传送至总线200a。
[1.6异常检测处理功能组群的构成]
图6是表示实施方式1中的异常检测处理功能组群的一个例子的框图。在图6中,异常检测处理功能组群370包括判定功能选择部371、控制部372、异常检测部373以及检测规则保持部381。
此外,这些构成是表示功能的构成,这些构成通过在网关300中处理部读出并执行保持于存储部的程序、处理部向存储部保存预定的数据或者处理部经由输入输出部执行数据的收发来实现,或者由这些的组合来实现。
判定功能选择部371对执行异常检测部373具备的判定功能中的哪个判定功能进行选择,并送出给控制部。判定功能选择部371算出能够在异常检测部373的异常检测处理中利用的时间(检测处理时间),对判定功能进行选择以使得落在该检测处理时间内。图7是表示实施方式1中的判定功能和处理时间/检测性能的关系的一个例子的图。例如,判定功能选择部371保持如图7所示那样的各判定功能的处理时间和检测性能(例如误检测率和检测率),求出落在判定功能选择部371算出的检测处理时间内的判定功能的组合,选择该判定功能。此时,若存在多个落在判定功能选择部371算出的检测处理时间内的判定功能的组合,则选择检测性能最好的组合(例如误检测率低、检测率高的组合)。
控制部372进行控制以使得异常检测部373执行异常检测部373具备的判定功能中的判定功能选择部371所选择的功能。
异常检测部373包括至少7种判定功能。具体而言,作为判定功能,包括根据每单位时间发送的消息量(消息量也称为数据量)判定是否发生了DoS攻击的功能、对消息的ID字段进行检查的功能、对消息的数据长度进行检查的功能、按CAN ID对发送消息的周期(周期也可以是时间间隔)进行检查的功能、按CAN ID对发送消息的频度进行检查的功能以及对消息的数据字段的值(将数据字段的值称为数据值)进行检查的功能。
上述的功能依次被称为DoS攻击判定功能、ID判定功能、数据长度判定功能、发送周期判定功能、发送频度判定功能以及数据值判定功能。使用基于周期性的接收定时或者接收消息的个数的异常判定是DoS攻击判定功能、发送周期判定功能、发送频度判定功能等。另外,使用值固定的字段的异常判定是ID判定功能等。ID字段等的值固定的字段是第1字段的具体例。而且,使用值变化的字段的异常判定是数据长度判定功能和数据值判定功能等。数据字段等的值变化的字段是第2字段的具体例。
还包括如下功能:基于这些判定功能的判定结果、发送周期、频度、数据值或者数据值的变化量等来识别车辆的状态,对车辆状态进行检查。该功能被称为车辆状态判定功能。进一步,异常检测部373包括综合判定功能,该综合判定功能根据这些判定功能的判定结果综合地判定从帧处理部350接收到的消息是否为异常消息。并且,通过综合判定功能判定的结果成为异常检测部373的检测处理的结果。
检测规则保持部381保持有为了执行各判定功能所需要的判定基准。检测规则保持部381按CAN ID保持个别的判定基准。另外,异常检测部373有时也由于未设定检测规则而不执行判定功能。控制部372按照保存于检测规则保持部381的判定基准,对判定功能的执行进行控制。
此外,检测规则保持部381保持的判定基准如上所述按CAN ID而存在,该判定基准进一步按判定功能而不同。另外,存在判定基准的判定功能按CAN ID而不同。并且,按CANID而存在的判定基准也可以对于一个判定功能存在多个。由此,判定功能选择部371优先选择的判定功能按接收消息的CAN ID而不同。
此外,设为了若存在多个落在所算出的检测处理时间内的判定功能的组合,则判定功能选择部371选择检测性能最好的判定功能的组合,但不限定于此。例如,设为了选择误检测率低、检测率高的组合,但不限定于此。判定功能选择部371既可以仅使用误检测率和检测率中的任一方来作为检测性能,对判定功能的组合进行选择,也可以不是使用误检测率或者检测率,而是使用检测精度(Precision)、F值(F-measure)、Infomedness(信息性)或者Markedness(显著度)等的表示检测性能的评价指标、或者这些的组合。因此,判定功能选择部371通过按系统而采用适当的指标,能够选择与成为对象的系统相应的有效的判定功能的组合。
此外,设为了判定功能选择部371求出落在所算出的检测处理时间内的判定功能的组合,从该判定功能的组合中选择适当的组合,但不限定于此。图8是表示实施方式1中的判定功能和处理时间/检测性能的关系的一个例子的图。如图8所示,例如也可以在按DoS攻击判定功能、ID判定功能、数据长度判定功能、发送周期判定功能、数据值(范围)判定功能以及车辆状态判定功能的顺序进行处理的情况下,进行要执行的判定功能的范围和不执行的判定功能的范围的选择。在此,判定功能的处理的顺序是一个例子,不限定于此。执行判定功能的顺序既可以不同,也可以在所说明过的判定功能中添加其他判定功能。
另外,图9是表示实施方式1中的判定功能和处理时间/检测性能的关系的一个例子的图。判定功能选择部371也可以事先保持如图9所示那样的对于各判定功能的组合的处理时间和检测性能,对所保持的组合之一进行选择。由此,异常检测部373能够按系统而以适当的顺序进行判定功能的处理,适当地对要执行的判定功能进行选择。另外,通过在设计时等事先决定判定功能选择部371选择的判定功能,能够减少选择所需要的时间。
此外,设为了判定功能选择部371求出落在所算出的检测处理时间内的判定功能的组合,对该判定功能进行选择,但不限定于此。例如,也可以在异常检测部373检测到某种异常时,异常检测部373必须选择检测到异常的判定功能,不选择未检测到异常的判定功能的一部分或者全部。也可以在异常检测部373未检测到异常的情况下,异常检测部373以落在检测处理时间内的范围来选择所需最低限度的判定功能。由此,由检测到异常的判定功能实现的异常判定处理会由异常检测部373持续选择,因此,能够持续地继续检测异常。另外,能够在异常检测部373未检测到异常的情况下缩短异常检测处理时间。
此外,也可以在帧收发部310从与网关300连接的多个网络接收消息的情况下,异常检测部373对判定功能进行选择以使得:与发送了即使产生异常也对车辆的动作没有影响的消息的网络相比,发送了当产生异常时对车辆的动作具有影响的消息的网络对于消息的异常检测处理长。另外,异常检测部373也可以决定按消息选择哪个判定功能。由此,由于异常检测部373能够充分地确保对于重要消息的检测处理时间的可能性变高,因此,车载网络系统10成为更加安全的系统。
此外,判定功能选择部371也可以为了算出检测处理时间,将从网关300接收到消息到传送完成为止所允许的时间(允许时间)中的除去了传送目的地的总线200的决定、或者帧收发部310实际向各总线200发送消息的处理等的传送处理所需要的传送处理时间之后的时间作为检测处理时间。另外,判定功能选择部371也可以算出从允许时间除去传送时间、进一步除去其他所需要的处理(的时间)后的时间来作为检测处理时间。由此,车载网络系统10既能够比其他处理优先地执行异常检测处理,另外,相反地也能够比异常检测处理优先地执行其他处理。
此外,设为了判定功能选择部371算出检测处理时间,但并不限定于此,既可以是在异常检测处理功能组群370具有算出检测处理时间的处理时间算出部,判定功能选择部371从处理时间算出部取得处理时间,对判定功能进行选择,也可以是异常检测处理功能组群370从帧处理部350接受检测处理时间,据此对判定功能进行选择。由此,在异常检测处理功能组群370以外算出处理时间的情况下,能够使处理时间的算出高效化。
[1.7ECU的构成]
图10是表示实施方式1中的车载网络系统所包括的ECU的一个例子的框图。在图10中,ECU100具备帧收发部110、帧解释部120、接收ID判定部130、接收ID列表保持部140、帧处理部150、数据取得部170以及帧生成部180。
此外,这些构成是表示功能的构成,这些构成通过在网关300中处理部读出并执行保持于存储部的程序、处理部向存储部保存预定的数据或者处理部经由输入输出部执行数据的收发来实现,或者由这些组合来实现。
帧收发部110对于总线200收发遵循了CAN协议的消息。
更具体而言,帧收发部110一位一位地读出被送出到总线200的消息,将所读出的消息传送至帧解释部120。
另外,帧收发部110向总线200送出由帧生成部180送出的消息。
帧解释部120从帧收发部110接受表示消息的值,映射至CAN协议中的各字段来进行消息的解释。帧解释部120向接收ID判定部130传送解释为是ID字段的一连串值。
帧解释部120进一步根据从接收ID判定部130送出的判定结果,决定是向帧处理部150传送消息所包含的ID字段的值和ID字段以后出现的数据字段的值、还是中止消息的接收。
另外,帧解释部120在判断为了成为对象的消息是不遵循CAN协议的消息的情况下,对帧生成部180进行要求以使得发送出错帧。
另外,帧解释部120在解释为了接收到其他节点发送的出错帧的情况下,废弃读取中的消息。
接收ID判定部130从帧解释部120接受ID字段的值,按照接收ID列表保持部140保持的消息ID的列表,进行是否接收所读出的消息的判定。接收ID判定部130向帧解释部120送出该判定的结果。
接收ID列表保持部140保持ECU100接收的接收ID列表。接收ID列表是与图4所示的列表同样的形式,因此,在此省略其说明。
帧处理部150进行与所接收到的消息的数据相应的处理。处理的内容按ECU100而不同。
例如,在ECU100a中,当在汽车的时速超过30km时接收到表示门打开的消息时,执行用于鸣叫警报音的处理。ECU100c当在接收到表示未挂上制动器的消息时门打开时,执行用于鸣叫警报音的处理。
这些处理是用于说明的一个例子,ECU100也可以执行上述以外的处理。帧处理部150使帧生成部180生成为了执行这样的处理而送出的帧。
数据取得部170取得对连接于ECU100的设备状态或者传感器的计测值等进行表示的输出数据,将所取得的输出数据传送至帧生成部180。
帧生成部180按照来自帧解释部120的发送出错帧的要求,构成出错帧并发送给帧收发部110。
另外,帧生成部180对由数据取得部170接受到的数据的值附加预先确定的消息ID来生成消息帧,将所生成的消息帧发送给帧收发部110。
[1.8传送处理]
图11是表示实施方式1中的传送处理的一个例子的流程图。网关300进行的传送处理与传送的方向无关而是共同的,因此,在此将向总线200b传送网关300从总线200a接收到的消息的情况作为一个例子来进行说明。
首先,帧收发部310从总线200a读出消息(步骤S1001)。帧收发部310向帧解释部320送出所读出的消息的各字段的数据。
接着,帧解释部120与接收ID判定部130协作,根据所读出的消息的ID字段的值(消息ID)判定是否为进行处理的对象的消息(步骤S1002)。
在帧解释部120将所读出的消息判定为了不是进行处理的对象的消息的情况下(步骤S1002:否),不进行该消息的传送。
在帧解释部120将所读出的消息判断为了是进行处理的对象的消息的情况下(步骤S1002:是),帧解释部120向帧处理部350传送消息内的各字段的值。然后,帧处理部350按照保持于传送规则保持部360的传送规则,决定成为传送目的地的总线(步骤S1003)。
帧处理部350向异常检测处理功能组群370送出从帧解释部320接受到的消息内的各字段的值,要求进行是否为异常消息的判定。异常检测处理功能组群370根据被送出了的消息的各字段的值来判定被送出了的消息是否为异常的消息,向帧处理部350送出该判定的结果(步骤S1004)。
在异常检测处理功能组群370判定为了消息是异常的消息的情况下(步骤S1005:是),不进行该消息的传送。
在异常检测处理功能组群370判定为了消息不是异常的消息、而是正常的消息的情况下(步骤S1005:否),帧处理部350对帧生成部380进行要求以使得将该消息传送至在步骤S1003中决定的传送目的地的总线。
帧生成部380接受来自帧处理部350的要求,生成消息以使得所指定的传送目的地进行接收,使帧收发部310送出该消息(步骤S1006)。
此外,在上述例子中,在所接收到的消息的传送目的地的决定(步骤S1003)之后,进行该消息是否为异常消息的判定(步骤S1004),但不限定于此。也可以在所接收到的消息是否为异常消息的判定之后进行该消息的传送目的地的决定。另外,也可以并行地进行所接收到的消息的传送目的地的决定和是否为异常消息的判定。
[1.9异常检测处理]
图12是表示实施方式1中的异常检测处理的其他一个例子的流程图。
首先,异常检测处理功能组群370从帧处理部350接受异常检测处理的要求,算出能够在异常检测处理中利用的时间(步骤S1101)。在此,将能够在异常检测处理中利用的时间称为检测处理时间。检测处理时间根据被送出到了网络的消息量、消息所包含的数据量或者消息的传送目的地的数量等来算出。
接着,判定功能选择部371判定所算出的检测处理时间是否比为了检测处理所需要的时间短(步骤S1102)。
在判定功能选择部371判定为了所算出的检测处理时间比为了检测处理所需要的时间短的情况下(步骤S1102:是),判定功能选择部371对执行处理的判定功能进行选择(步骤S1103)。
接着,判定功能选择部371向控制部372送出与所选择的判定功能有关的信息。
接着,控制部372对各判定功能进行控制以使得仅执行判定功能选择部371在步骤S1103中所选择的功能,异常检测部373执行异常检测处理(步骤S1104)。
在判定功能选择部371判定为了检测处理时间比为了检测处理所需要的时间长的情况下(步骤S1102:否),控制部372对异常检测部373的各判定功能进行控制以使得执行全部的本来应该执行的检测处理。
此外,在个别地对判定功能选择部371执行的判定功能进行选择的情况下,在图12的执行异常检测处理的步骤(步骤S1104)中进行的处理成为图13的在步骤S1110~步骤S1119中进行的处理。图13是表示实施方式1的异常检测处理的其他又一个例子的流程图。另外,在图12的对判定功能选择部371执行的判定功能进行选择的步骤S1103中进行的处理成为在图13的步骤S1105中进行的处理。
在判定功能选择部371判定为了所算出的检测处理时间比为了检测处理所需要的时间短的情况下(步骤S1102:是),判定功能选择部371对能够在检测处理时间内执行的判定功能进行选择(步骤S1105)。并且,判定功能选择部371向控制部372送出与所选择的判定功能有关的信息。
在判定功能选择部371判定为了所算出的检测处理时间比为了检测处理所需要的时间长的情况下(步骤S1102:否),进行以下说明的步骤S1110。
控制部372对判定功能选择部371是否选择了DoS攻击判定功能进行判定(步骤S1110)。
在控制部372判定为了由判定功能选择部371选择了DoS攻击判定功能的情况下(在步骤S1110中为“是”的情况下),控制部372执行异常检测部373的DoS攻击判定功能(步骤S1111)。
在控制部372判定为了未选择DoS攻击判定功能的情况下(在步骤S1110中为“否”的情况下),控制部372不执行异常检测部373的DoS攻击判定功能。
接着,控制部372对判定功能选择部371是否选择了ID判定功能进行判定(步骤S1112)。
在控制部372判定为了由判定功能选择部371选择了ID判定功能的情况下(在步骤S1112为“是”的情况下),控制部372执行异常检测部373的ID判定功能(步骤S1113)。
在控制部372判定为了未由判定功能选择部371选择ID判定功能的情况下(在步骤S1112中为“否”的情况下),控制部372不执行异常检测部373的ID判定功能。
接着,控制部372对判定功能选择部371是否选择了数据长度判定功能进行判定(步骤S1114)。
在控制部372判定为了由判定功能选择部371选择了数据长度判定功能的情况下(在步骤S1114中为“是”的情况下),控制部372执行异常检测部373的数据长度判定功能(步骤S1115)。
在控制部372判定为了未由判定功能选择部371选择数据长度判定功能的情况下(在步骤S1114中为“否”的情况下),控制部372不执行异常检测部373的数据长度判定功能。
控制部372对判定功能选择部371是否选择了发送周期判定功能进行判定(步骤S1116)。
在控制部372判定为了由判定功能选择部371选择了发送周期判定功能的情况下(在步骤S1116中为“是”的情况下),控制部372执行异常检测部373的发送周期判定功能(步骤S1117)。
在控制部372判定为了未由判定功能选择部371选择发送周期判定功能的情况下(在步骤S1116中为“否”的情况下),控制部372不执行异常检测部373的发送周期判定功能。
控制部372对判定功能选择部371是否选择了数据值判定功能进行判定(步骤S1118)。
在控制部372判定为了由判定功能选择部371选择了数据值判定功能的情况下(在步骤S1118中为“是”的情况下),控制部372执行异常检测部373的数据值判定功能(步骤S1119)。
在控制部372判定为了未由判定功能选择部371选择数据值判定功能的情况下(在步骤S1118在为“否”的情况下),控制部372不执行异常检测部373的数据值判定功能。
在此,记载了与DoS攻击判定、ID判定、数据长判定、发送周期判定以及数据值判定这5个判定功能有关的异常检测处理,但异常检测处理也可以还包括与发送频度判定和车辆状态判定有关的异常检测处理。另外,异常检测处理既可以包括上述判定功能中的几个的组合,也可以包括未被说明的其他判定处理。例如,也可以为包括如下处理:控制部372对判定功能选择部371是否选择了各判定功能进行判定,控制部372根据该判定结果来对判定功能的执行进行控制。由此,能够灵活地对要执行的判定功能进行控制。
此外,在进行判定功能选择部371执行的判定功能的范围、和不执行的判定功能的范围的选择的情况下,在图12的执行异常检测处理的步骤(S1104)中进行的处理成为图14所示的处理。另外,在图12的判定功能选择部371对功能进行选择的步骤S1103中进行的处理成为图14的在步骤S1106中进行的处理。
图14是表示实施方式1中的异常检测处理的其他一个例子的流程图。在判定功能选择部371判定为检测处理时间比为了检测处理所需要的时间短的情况下(步骤S1102:是),判定功能选择部371对能够在检测处理时间内执行的判定功能进行判定,对结束异常检测处理的时间点的判定功能进行选择(步骤S1106)。
然后,判定功能选择部371送出给控制部372。
在判定功能选择部371判定为检测处理时间比为了检测处理所需要的时间长的情况下(步骤S1102:否),进行以下说明的步骤S1120。
控制部372对判定功能选择部371是否选择了在DoS攻击判定功能前结束处理进行判定(步骤S1120)。
在控制部372判定为由判定功能选择部371作出了在DoS攻击判定功能前不结束处理的选择的情况下(在步骤S1120中为“否”的情况下),控制部372执行异常检测部373的DoS攻击判定功能(S1111)。
在控制部372判定为由判定功能选择部371作出了在DoS攻击判定功能前结束处理的选择的情况下(在步骤S1120中为“是”的情况下),控制部372结束异常检测处理。
接着,控制部372对判定功能选择部371是否选择了在ID判定功能前结束处理进行判定(步骤S1112)。
在控制部372判定为由判定功能选择部371作出了在ID判定功能前不结束处理的选择的情况下(步骤S1112:否),控制部372执行异常检测部373的ID判定功能(步骤S1113)。
在控制部372判定为由判定功能选择部371作出了在ID判定功能前结束处理的选择的情况下(步骤S1112:是),控制部372结束异常检测处理。
接着,控制部372对判定功能选择部371是否选择了在数据长度判定功能前结束处理进行判定(步骤S1122)。
在控制部372判定为由判定功能选择部371作出了在数据长度判定功能前不结束处理的选择的情况下(步骤S1122:否),控制部372执行异常检测部373的数据长度判定功能(步骤S1115)。
在控制部372判定为作出了在数据长度判定功能前结束处理的选择的情况下(步骤S1122:是),控制部372结束异常检测处理。
然后,控制部372对判定功能选择部371是否选择了在发送周期判定功能前结束处理进行判定(步骤S1123)。
在控制部372判定为由判定功能选择部371作出了在发送周期判定功能前不结束处理的选择的情况下(步骤S1123:否),控制部372执行异常检测部373的发送周期判定功能(步骤S1117)。
在控制部372判定为由判定功能选择部371作出了在发送周期判定功能前结束处理的选择的情况下(步骤S1123:是),控制部372结束异常检测处理。
接着,控制部372对判定功能选择部371是否选择了在数据值判定功能前结束处理进行判定(步骤S1124)。
在控制部372判定为由判定功能选择部371作出了在数据值判定功能前不结束处理的选择的情况下(步骤S1124:否),控制部372执行异常检测部373的数据值判定功能(步骤S1119)。
在控制部372判定为由判定功能选择部371作出了在数据值判定功能前结束处理的选择的情况下(步骤S1124:是),控制部372结束异常检测处理。
在此,说明了与DoS攻击判定、ID判定、数据长判定、发送周期判定以及数据值判定这5个判定功能有关的异常检测处理,但在图14中说明过的处理也可以还包括与发送频度判定和车辆状态判定有关的异常检测处理。另外,在图14中说明过的处理既可以是在上述说明过的判定功能中的几个的组合,也可以包括其他判定功能。在图14中说明过的处理也可以包括如下处理:控制部372对判定功能选择部371是否选择了要执行的判定功能的范围和不执行的判定功能的范围进行判定,根据其判定结果,控制部372对判定功能的执行进行控制。由此,不需要逐一确认是否选择了各判定功能,能够削减处理时间。
此外,在判定功能选择部371仅对是否执行发送周期判定功能和数据值判定功能进行选择的情况下,执行图12所示的异常检测处理的步骤(步骤S1104)成为图15所示的处理。
图15是表示实施方式1中的异常检测处理的又一其他一个例子的流程图。另外,图12所示的判定功能选择部371对判定功能进行选择的在步骤S1103中进行的处理成为图15所示的在步骤S1107中进行的处理。
判定功能选择部371判定在步骤S1101中算出的检测处理时间是否比为了通过发送周期判定功能和数据值判定功能实现的异常检测处理所需要的时间长(步骤S1102)。
在判定功能选择部371判定为该检测处理时间比上述的所需要的时间短的情况下(步骤S1102:是),判定功能选择部371不选择发送周期判定功能和数据值判定功能(步骤S1107)。
在判定功能选择部371判定为该检测处理时间比上述的所需要的时间长的情况下(步骤S1102:否),进行接下来说明的步骤S1111。
控制部372执行DoS攻击判定功能的处理(步骤S1111)。
然后,控制部372执行ID判定功能的处理(步骤S1113)。
接着,控制部372执行数据长度判定功能的处理(步骤S1115)。
然后,控制部372对判定功能选择部371是否选择了发送周期判定功能和数据值判定功能进行判定(步骤S1130)。
在控制部372判定为由判定功能选择部371选择了发送周期判定功能和数据值判定功能的情况下(步骤S1130:是),控制部372执行异常检测部373的发送周期判定功能(步骤S1117)。
接着,控制部372执行数据值判定功能(步骤S1119)。
在控制部372判定为未由判定功能选择部371选择发送周期判定功能和数据值判定功能的情况下(步骤S1130:否),控制部372不执行异常检测部373的发送周期判定功能和数据值判定功能。
在此,说明了与DoS攻击判定、ID判定、数据长判定、发送周期判定以及数据值判定这5个判定功能有关的异常检测处理,但在图15中说明过的处理也可以还包括与发送频度判定和车辆状态判定有关的异常检测处理。在图15中说明过的处理既可以是上述说明过的判定处理中的几个的组合,也可以包括其他判定功能。在图15中说明过的处理是如下处理即可,该处理为:不仅是仅对是否执行发送周期判定功能和数据值判定功能进行选择,控制部372还判定判定功能选择部371是否选择了各判定功能的一部分功能的组合,控制部372根据该判定结果对判定功能的执行进行控制。由此,能够在设计时等事先决定进行所执行的处理的组合,能够一并确认是否选择了判定功能,因此,能够缩短处理时间。
图16是表示实施方式1中的异常检测处理的其他一个例子的流程图。
此外,在判定功能选择部371不仅是对是否执行发送周期判定功能和数据值判定功能进行选择、还进行不执行全部的判定功能的选择的情况下,在图15中所示的步骤S1107中进行的处理与步骤S1131中进行的处理之间添加图16中所示的骤S1108中进行的处理和步骤S1109中进行的处理。
接着,判定功能选择部371判定在步骤S1101中算出的检测处理时间是否比为了由DoS攻击判定功能、ID判定功能以及数据长度判定功能实现的异常检测处理所需要的时间长(步骤S1108)。
在判定功能选择部371判定为该检测处理时间比上述的所需要的时间短的情况下,判定功能选择部371不选择全部判定功能(步骤S1109)。
接着,控制部372对判定功能选择部371是否选择了全部的判定功能进行判定(步骤S1131)。也即是,控制部372对判定功能选择部371是否未选择DoS攻击判定功能、ID判定功能或者数据长度判定功能进行判定。
在控制部372判定为由判定功能选择部371选择了DoS攻击判定功能、ID判定功能以及数据长度判定功能的情况下(步骤S1131:是),控制部372执行异常检测部373的DoS攻击判定功能(步骤S1111)。
然后,控制部372执行异常检测部373的ID判定功能(步骤S1113)。
然后,控制部372执行异常检测部373的数据长度判定功能(步骤S1115)。
之后的与发送周期判定功能和数据值判定功能有关的处理与在图15中说明过的处理是同样的,因此省略说明。
在控制部372判定为未由判定功能选择部371选择DoS攻击判定功能、ID判定功能以及数据长度判定功能的情况下(步骤S1131:否),控制部372不执行异常检测部373的各判定功能。
在此,记载了与DoS攻击判定、ID判定、数据长判定、发送周期判定以及数据值判定这5个判定功能有关的异常检测处理来作为在图16中说明的处理,但在图16中说明的处理也可以还包括与发送频度判定和车辆状态判定有关的异常检测处理。另外,在图16中说明的处理既可以是上述的判定处理的几个的组合,也可以包括其他判定功能。在图16中说明的处理被分为对是否选择了DoS攻击判定功能、ID判定功能以及数据长度判定功能进行判定的处理、和仅对是否执行发送周期判定功能和数据值判定功能进行选择的处理来进行了说明,但不限定于此。在图16中说明的处理是如下处理即可,该处理为:控制部372进行判定功能选择部371是否选择了全部判定功能这一判定,控制部372根据该判定结果对判定功能的执行进行控制。由此,本实施方式中的异常判定方法即使是在没有进行异常检测处理的时间的情况下也能够实施异常判定。
此外,判定功能选择部371和控制部372的异常检测处理并不限定于上述,也可以是上述的组合。
此外,设为了判定功能选择部371在判定为检测处理时间比为了检测处理所需要的时间短的情况下(步骤S1102),对进行处理的要执行的判定功能进行选择,但不限定于此。判定功能选择部371也可以在不进行步骤S1102的判定处理、而对进行处理的要执行的判定功能进行选择时,若检测处理时间比为了检测处理所需要的时间长,则选择全部判定功能。由此,能够简化由判定功能选择部371进行的处理。
此外,在控制部372执行各判定功能的情况下,控制部372对按CAN ID设定的检测规则进行参照。并且,控制部372进行控制以使得执行由判定功能选择部371选择、且记载于检测规则的判定功能。也即是,即使为由判定功能选择部371进行了选择,未记载于检测规则的判定功能也不被执行。另外,在判定为在步骤S1102中算出的检测处理时间比为了检测处理所需要的时间长的情况下,控制部372视为由判定功能选择部371选择了全部判定功能,执行记载于检测规则的功能。
[1.10复位处理]
在异常检测处理中,根据在判定功能选择部371对所执行的功能进行了选择时未被选择的判定功能的种类,有可能在接下来执行某一判定功能时成为与通常不同的判定结果。例如,发送周期判定功能以车载网络系统10周期性地接收消息为前提,在前次接收时记录接收时刻(称为前次接收时刻),根据该前次接收时刻与本次的接收时刻之差,判定本次接收到的消息是否为异常的消息。
此时,在尽管消息已正常来到、但未由判定功能选择部371选择发送周期判定功能的情况下,无法记录1次前的接收时刻,因此,成为对2次前的接收时刻和本次的接收时刻进行比较,有可能无法实现正常的判定。特别是,在连续地未选择发送周期判定功能的情况下,无法记录接收时刻的区间变长,因此,无法实现正常的判定的可能性变高。同样的顾虑也适用于在数据值判定功能中根据前次的数据值与本次的数据值的变化量判定是为正常消息、还是为异常消息的情况。
于是,在某判定功能未被判定功能选择部371选择而跳过了处理的情况下,需要在下一次执行该判定功能之前,通过对该判定功能进行复位处理,使得不会成为设想外的判定结果。特别是,如发送周期判定功能、或者判定数据的变化量的数据值判定功能等的通过前次的值与本次的值的比较来进行判定的功能、或者发送频度判定功能那样在未由判定功能选择部371选择进行累积计算的功能而跳过了处理的情况下,需要事先进行清除前次的值或者累积值的复位处理。
图17是表示实施方式1中的包括复位处理的异常检测处理的一个例子的流程图。另外,图18是表示实施方式1中的包括复位处理的异常检测处理的又一个例子的流程图,图19是表示实施方式1中的包括复位处理的异常检测处理的其他又一个例子的流程图。成为相对于图15所示的判定功能选择部371仅对是否执行发送周期判定功能和数据值判定功能进行选择的情况下的异常检测处理而追加了复位处理而得到的流程图。因此,关于复位处理以外的与图15相同的处理,省略说明。
首先,判定功能选择部371通过对表示跳过了发送周期判定功能和数据值判定功能的处理的标志进行确认,判定是否跳过了前次的处理(步骤S1140)。
在判定功能选择部371判定为跳过了前次的处理的情况下(步骤S1140:是),判定功能选择部371对控制部372请求执行发送周期判定功能和数据值判定功能的复位处理。
然后,控制部372接收来自判定功能选择部371的请求,执行发送周期判定功能的复位处理(步骤S1141)。
接着,控制部372执行数据值判定功能的复位处理(步骤S1142)。
另外,在步骤S1101和步骤S1102之后,判定功能选择部371在步骤S1107中进行了不选择发送周期判定功能和数据值判定功能这一处理之后,对表示跳过了发送周期判定功能和数据值判定功能的处理的标志进行置位(步骤S1143)。在此,表示跳过了发送周期判定功能和数据值判定功能的处理这一情况的标志按各CAN ID来设定。
此外,作为复位处理,例如既可以在清除了所存储的前次的值之后,在第一次执行了判定功能时存储其值来作为前次的值,也可以在清除了所存储的前次的值之后,存储不具有前次的值的判定功能第一次判定为了正常消息的消息来作为前次的值。在此,在按CANID来存储前次值的情况下,在第一接收到与清除了前次的值时相同的CAN ID的消息时第一次执行了判定功能时、或者在不具有前次值的判定功能对于与清除了前次的值时相同的CAN ID的消息第一次将所接收到的消息判定为了是正常消息时,作为前次值进行存储。另外,也可以不是相同的CAN ID的消息,而是以具有其他CAN ID的消息为基准,判断是否作为前次的值进行存储。
例如,既可以以附加了正确的消息认证码(MAC:Message Authentication Code)的消息为基准来判定是否作为前次值进行存储,也可以以发送周期接近或者发送周期相同的具有其他CAN ID的消息为基准来判定是否作为前次值进行存储。
图20是表示变形例中的复位处理的一个例子的图。在图20中示出发送周期相同的具有其他CAN ID的消息的例子。例如,在本公开涉及的异常判定方法中,在即将时刻T2之前负荷率低于了阈值的情况下,在以大致相同的定时接收到ID1、ID2以及ID3的消息时,ID1、ID2以及ID3的消息的接收时刻被作为前次值进行存储。另外,在本公开涉及的异常判定方法中,既可以对所存储的累积值进行初始化,也可以对所保持的车辆状态进行初始化。由此,能够更准确地进行通过复位处理后的判定功能实现的判定。
此外,在本公开涉及的异常判定方法中设为了对发送周期判定功能和数据值判定功能进行复位处理,但并不限定于此,既可以对具有前次值的其他判定功能进行复位处理,也可以对存储累积值或者车辆状态的发送频度判定功能和/或车辆状态判定功能进行复位处理。另外,复位处理也可以不需要在图17所示的定时进行,例如在图18、图19所示的定时进行。
进一步,在图17~图19中所示的处理对图15所示的流程图追加了复位处理,但并不限定于此,也可以对其他异常检测处理的流程图(例如图12~图14、图16、图21以后所示的流程图)追加复位处理。另外,也可以按CAN ID变更执行复位处理的定时。由此,在本公开的实施方式的异常判定方法中,能够根据所存储的信息,在适当的定时执行复位处理。
此外,设为了判定功能选择部371在未选择发送周期判定功能和数据值判定功能时对表示跳过了处理的标志进行置位,但并不限定于此。例如,判定功能选择部371既可以也参照按CAN ID设定的检测规则,在判定功能选择部371未选择的判定功能不被作为检测规则进行执行的情况下,不对表示跳过了处理的标志进行置位,也可以即使为对表示跳过了处理的标志进行了置位,也在复位处理时不执行复位处理。由此,能够减少不需要的复位处理,防止由处理时间的缩短或者复位处理导致的检测性能的降低。
[1.11效果]
在本实施方式中,异常检测处理功能组群370通过对根据为了异常检测处理所能够利用的时间(检测处理时间)来对要执行的判定功能进行选择,即使是在检测处理时间短的情况下,也能够选择使得能够根据检测处理时间来发挥大的异常检测效果的判定功能的组合。另外,通过对各判定功能中的几个或者全部实施复位处理,能够缓和由未执行该判定功能导致的弊病,因此,能够进一步提高异常检测性能。
(实施方式2)
[2.概要]
在实施方式1中,在异常检测处理功能组群370中,判定功能选择部371对进行处理的判定功能进行选择,控制部372根据判定功能选择部371的选择结果来控制了各判定功能的执行。在本实施方式中,参照附图对如下情况进行说明,该情况为:在车载网络系统中,控制部372根据检测处理时间,判定执行哪个判定功能。
[2.1异常检测处理功能组群的构成]
图21是表示实施方式2中的异常检测处理功能组群的一个例子的框图。在图21中,异常检测处理功能组群370包括控制部374和异常检测部373。此外,关于与实施方式1相同的构成要素,省略说明。
此外,这些构成是表示功能的构成,通过在网关300中处理部读出并执行保持于存储部的程序、向存储部保存预定的数据或者经由输入输出部执行数据的收发、或者这些的处理的组合来实现。
控制部374对异常检测部373具备的判定功能中的能够在检测处理时间内执行的判定功能进行判断,对判定功能的执行进行控制。控制部374算出为了异常检测部373的异常检测处理所能够利用的时间(检测处理时间),对判定功能的执行进行控制以使得落在该检测处理时间内。
例如,控制部374与实施方式1中的判定功能选择部371同样地,保持有如图7所示那样的各判定功能的处理时间和检测性能(例如误检测率和检测率)的数据,求出落在所算出的检测处理时间内的判定功能的组合,进行控制以使得仅执行该判定功能。此时,若具有多个落在所算出的检测处理时间内的判定功能的组合,则执行检测性能最好的判定功能的组合(例如误检测率低、检测率高的组合)。
此外,设为了控制部374算出检测处理时间,但并不限定于此。既可以是在异常检测处理功能组群370具有算出检测处理时间的处理时间算出部,控制部374从处理时间算出部取得处理时间,对判定功能进行选择,也可以是异常检测处理功能组群370从帧处理部350取得与检测处理时间有关的信息,据此来对要执行的判定功能进行选择。由此,控制部374仅对与异常检测处理有关的处理时间进行管理即可,因此,能够使异常检测处理与其他功能为松耦合,能够抑制其他功能对于异常检测处理的影响。
[2.2异常检测处理]
图22是表示实施方式2中的异常检测处理的一个例子的流程图。
首先,异常检测处理功能组群370从帧处理部350接受异常检测处理的要求,算出能够在异常检测处理中利用的时间(检测处理时间)(步骤S1101)。
接着,控制部374判定在步骤S1101中算出的检测处理时间是否比为了应该执行的检测处理所需要的时间长(步骤S1200)。
在步骤S1200中控制部374判定为检测处理时间比为了应该执行的检测处理所需要的时间长的情况下(步骤S1200:是),控制部374执行异常检测处理(步骤S1104)。
此外,在控制部374个别地对要执行的判定功能进行控制的情况下,执行图22所示的异常检测处理的步骤(步骤S1104)成为图23所示的处理。图23是表示实施方式2中的异常检测处理的又一个例子的流程图,图24是表示实施方式2中的异常检测处理的其他又一个例子的流程图。
控制部374在步骤S1101中算出了检测处理时间之后,判定是否具有执行DoS攻击判定功能的时间(步骤S1210)。
在控制部374判定为了具有执行DoS攻击判定功能的时间的情况下(步骤S1210:是),控制部374执行异常检测部373的DoS攻击判定功能(S1111)。
在控制部374判定为没有执行DoS攻击判定功能的时间的情况下(步骤S1210:否),控制部374不执行异常检测部373的DoS攻击判定功能。
接着,控制部374对于执行了DoS攻击判定功能之后的剩余检测处理时间,判定是否具有执行ID判定功能的时间(步骤S1211)。
在控制部374判定为具有执行ID判定功能的时间的情况下(步骤S1211:是),控制部374执行异常检测部373的ID判定功能(S1113)。
在控制部374判定为没有执行ID判定功能的时间的情况下(步骤S1211:否),控制部374不执行异常检测部373的ID判定功能。
接着,控制部374对于执行了ID判定功能之后的剩余的检测处理时间,判定是否具有执行数据长度判定功能的时间(步骤S1212)。
在控制部374判定为具有执行数据长度判定功能的时间的情况下(步骤S1212:是),控制部374执行异常检测部373的数据长度判定功能(S1115)。
在控制部374判定为没有执行数据长度判定功能的时间的情况下(步骤S1212:否),控制部374不执行异常检测部373的数据长度判定功能。
然后,控制部374对于执行了数据长度判定功能之后的剩余的检测处理时间,判定是否具有执行发送周期判定功能的时间(步骤S1213)。
在控制部374判定为具有执行发送周期判定功能的时间的情况下(步骤S1213:是),控制部374执行异常检测部373的发送周期判定功能(S1117)。
在控制部374判定为没有执行发送周期判定功能的时间的情况下(步骤S1213:否),控制部374不执行异常检测部373的发送周期判定功能。
接着,控制部374对于执行了发送周期判定功能之后的剩余的检测处理时间,判定是否具有执行数据值判定功能的时间(步骤S1214)。
在控制部374判定为具有执行数据值判定功能的时间的情况下(步骤S1214:是),控制部374执行异常检测部373的数据值判定功能(S1119)。
在控制部374判定为没有执行数据值判定功能的时间的情况下(步骤S1214:否),控制部374不执行异常检测部373的数据值判定功能。由此,本公开涉及的异常判定方法能够灵活地对要执行的判定功能的选择进行控制。
此外,在控制部374进行要执行的判定功能的范围的判定的情况下,实施方式1中的图14所示的流程图的处理成为图24所示的流程图的处理。由此,不需要对于各判定功能逐一确认是否被选择,能够削减用于确认的处理时间。
另外,在控制部374仅对是否执行发送周期判定功能和数据值判定功能进行判定的情况下,实施方式1中的图15所示的流程图的处理成为图25所示的流程图的处理。图25是表示实施方式2中的异常检测处理的其他一个例子的流程图。
首先,异常检测处理功能组群370从帧处理部350接受异常检测处理的要求,算出能够在异常检测处理中利用的时间(步骤S1101)。
接着,控制部374执行异常检测部373的DoS攻击判定功能(步骤S1111)。
接着,控制部374执行异常检测部373的ID判定功能(步骤S1113)。
然后,控制部374执行异常检测部373的数据长度判定功能(步骤S1115)。
接着,控制部374判定检测处理时间是否比应该执行的处理所需要的时间长(步骤S1230)。
接着,在控制部374判断为检测处理时间比应该执行的处理所需要的时间长的情况下(步骤S1230:是),控制部374执行异常检测部373的发送周期判定功能(步骤S1117)。
并且,在控制部374判断为检测处理时间比应该执行的处理所需要的时间长的情况下(步骤S1230:是),控制部374执行异常检测部373的数据值判定功能(步骤S1119)。
在控制部374判断为检测处理时间比应该执行的处理所需要的时间短的情况下(步骤S1230:否),控制部374结束动作。
由此,在设计时等能够事先决定进行所执行的处理的组合的情况下,能够一并确认是否选择了判定功能,能够缩短处理时间。另外,在不仅是对控制部374是否执行发送周期判定功能和数据值判定功能进行判定、还判定为不执行全部判定功能的情况下,实施方式1中的图16所示的流程图的处理成为图26所示的流程图的处理。图26是表示实施方式2中的异常检测处理的又一其他一个例子的流程图。由此,本公开涉及的异常判定方法也能够应对没有进行异常检测处理的时间的情况。
首先,异常检测处理功能组群370从帧处理部350接受异常检测处理的要求,算出能够在异常检测处理中利用的时间(步骤S1101)。
接着,控制部374判定检测处理时间是否比控制部374进行的最低限度的处理所需要的时间长(步骤S1231)。
接着,在控制部374判断为检测处理时间比控制部374进行的最低限度的处理所需要的时间长的情况下(步骤S1231:是),控制部374执行异常检测部373的DoS攻击判定功能(步骤S1111)。
接着,在控制部374判断为检测处理时间比控制部374进行的最低限度的处理所需要的时间长的情况下(步骤S1231:是),控制部374执行异常检测部373的ID判定功能(步骤S1113)。
并且,在控制部374判断为检测处理时间比控制部374进行的最低限度的处理所需要的时间长的情况下(步骤S1231:是),控制部374执行异常检测部373的数据长度判定功能(步骤S1115)。
接着,控制部374判定检测处理时间是否比应该执行的处理所需要的时间长(步骤S1230)。
接着,在控制部374判断为检测处理时间比应该执行的处理所需要的时间长的情况下(步骤S1230:是),控制部374执行异常检测部373的发送周期判定功能(步骤S1117)。
并且,在控制部374判断为检测处理时间比应该执行的处理所需要的时间长的情况下(步骤S1230:是),控制部374执行异常检测部373的数据值判定功能(步骤S1119)。
在控制部374判断为检测处理时间比控制部374进行的最低限度的处理所需要的时间短的情况下(步骤S1231:否),控制部374结束动作。
另外,在控制部374判断为检测处理时间比应该执行的处理所需要的时间短的情况下(步骤S1230:否),控制部374结束动作。
此外,对与DoS攻击判定、ID判定、数据长判定、发送周期判定以及数据值判定这5个判定功能有关的异常检测处理进行了说明,但本公开涉及的异常判定方法也可以还包括与发送频度判定和车辆状态判定有关的异常检测处理。另外,本公开涉及的异常判定方法既可以包括上述处理的几个的组合,也可以包括其他判定功能。
此外,控制部374进行的异常检测处理并不限定于上述,也可以是上述的组合。
此外,在图13~图19以及图23~图26中所示的与DoS攻击判定功能、ID判定功能、数据长度判定功能、发送周期判定功能以及数据值判定功能有关的处理也可以按消息ID以不同的顺序进行处理。
[2.3复位处理]
在异常检测处理中,根据控制部374对是否执行各判定功能进行了判定时未被执行的判定功能,在下一次执行该判定功能,有可能出现与通常不同的判定结果。因此,与实施方式1同样地,关于判定为不由控制部374执行的判定功能,需要实施复位处理。
在实施方式1中,在判定功能选择部371实施了对判定功能进行选择的处理时,表示跳过了处理的标志被进行了置位。在实施方式2中,需要在控制部374判定为不执行各判定功能时,设定表示跳过了处理的标志。对于控制部374根据表示跳过了处理的标志进行的、是否执行复位处理的判定,与实施方式1的图17~图19所示的处理是同样的,因此省略说明。
[2.4效果]
在本实施方式中,异常检测处理功能组群370通过在即将执行各判定功能之前判断是否执行该判定功能,能够在是否执行该判定功能的判断中准确地反映各判定功能的执行时间,能够执行能发挥较大的异常检测效果的判定功能的组合。
(实施方式3)
[3.概要]
在实施方式1中,在异常检测处理功能组群370中,判定功能选择部371对进行处理的判定功能进行选择,控制部372根据判定功能选择部371的选择结果来控制了各判定功能的执行。在本实施方式中,参照附图对如下情况进行说明,该情况为:在车载网络系统中,在判定功能未被执行的情况下,保存那时的消息,在检测处理时间具有余裕的情况下,稍后执行对于该消息的异常检测处理。
[3.1异常检测处理功能组群的构成]
图27是表示实施方式3中的异常检测处理功能组群的一个例子的框图。在图27中,异常检测处理功能组群370包括判定功能选择部371、异常检测部373、非选择信息保持部375以及控制部376。或者,如图28所示,也可以为如下构成:与实施方式2同样地不具备判定功能选择部371,包括异常检测部373、非选择信息保持部375以及控制部377。图28是表示实施方式3中的异常检测处理功能组群的又一个例子的框图。此外,关于与实施方式1相同的构成要素省略说明。
此外,这些构成是表示功能的构成,通过在网关300中由处理器读出并执行保存于存储部的程序、向存储部保持预定的数据或者经由输入输出部执行数据的收发、或者执行这些的组合来实现。
非选择信息保持部375在异常检测部373的各判定功能中的一部分的判定功能未被执行的情况下,送出并保持所接收到的消息的信息。另外,非选择信息保持部375根据来自控制部376的请求,向控制部376送出所保持的消息。
控制部376在实施方式1中的控制部372的功能的基础上,具有在过去的处理中未被选择的判定功能,并且,在非选择信息保持部375中保持有消息,在能够判定为具有执行该消息的异常检测处理的时间的情况下,从非选择信息保持部375取得消息,执行对于该消息的异常检测处理。
此外,控制部377除了代替实施方式1中的控制部372的功能而具备实施方式2中的控制部374的功能以外,具备与控制部376相同的功能。
此外,也可以设为:非选择信息保持部375在异常检测部373的各判定功能中的一部分判定功能未被执行的情况下,不仅是保持所接收到的消息,例如如图28所示,也保持与未被执行的判定功能有关的信息,在控制部376、控制部377执行异常检测处理时,能够执行仅与该未被执行的判定功能有关的异常检测处理。图29是表示实施方式3中的非选择信息的一个例子的图。由此,在本公开涉及的异常判定方法中,能够仅执行所需要的判定功能,因此,能够缩短处理时间。
[3.2异常检测处理]
图30是表示实施方式3中的异常检测处理的一个例子的流程图,图31是表示实施方式3中的异常检测处理的又一个例子的流程图。在图12所示的实施方式1的异常检测处理中,在某判定功能未被执行的情况下,保存在该时间点接收到的消息(步骤S1300)。并且,在检测处理时间具有余裕的情况下,稍后执行对于该消息的异常检测处理(步骤S1302)。在此,关于与图12所示的处理相同的处理省略说明。
判定功能选择部371在检测处理时间比为了本来应该执行的判定处理所需要的时间短、选择了进行处理的判定功能之后(步骤S1103之后),向非选择信息保持部375请求与消息有关的信息的保存。非选择信息保持部375根据来自判定功能选择部371的请求,保存与消息有关的信息(步骤S1300)。
然后,控制部376执行异常检测处理,询问非选择信息保持部375是否具有非选择信息,判定是否具有非选择信息(步骤S1301)。
在控制部376判定为具有非选择信息的情况下(步骤S1301:是),控制部376执行非选择信息尾随处理(步骤S1302)。关于非选择信息尾随处理,将在后面进行描述。
在控制部376判定为没有非选择信息的情况下(步骤S1301:否),控制部376结束异常检测处理。
此外,在非选择信息保持部375中保持有具有与从帧处理部350要求的进行异常检测处理的消息(接收消息)的CAN ID相同的CAN ID的消息的情况下,当在一部分的判定功能中具有使用前次值的处理时,有可能无法正确地进行异常检测处理。因此,在非选择信息保持部375中保持有具有与接收消息的CAN ID相同的CAN ID的消息的情况下,判定功能选择部371也可以不选择具有使用前次值的处理的判定功能,在对于具有与接收消息的CAN ID相同的CAN ID的消息的非选择信息尾随处理结束之后,执行通过全部判定功能实现的异常检测处理。
将以上的处理表示于图31。
在判定功能选择部371判定为检测处理时间比为了检测处理所需要的时间长的情况下(步骤S1102:否),判定功能选择部371判定在非选择信息保持部375中是否保持有具有与接收消息的CAN ID相同的CAN ID的消息(步骤S1310)。
在判定功能选择部371判定为在非选择信息保持部375中保持有具有与接收消息的CAN ID相同的CAN ID的消息的情况下(步骤S1310:是),判定功能选择部371仅选择不需要前次值的判定功能(步骤S1311)。
并且,判定功能选择部371跳过一部分判定功能,因此保存非选择信息(步骤S1300)。
在判定功能选择部371判定为在非选择信息保持部375中未保持具有与接收消息的CAN ID相同的CAN ID的消息的情况下(步骤S1310:否),控制部376执行异常检测处理(步骤S1104)。由此,在非选择信息尾随处理结束的定时,各判定功能的状态成为与未进行判定功能的选择处理的情况相同的状态,因此,不需要进行复位处理。
[3.3非选择信息尾随处理]
图32是表示实施方式3中的非选择信息尾随处理的一个例子的流程图。在图32中说明上述的非选择信息尾随处理。
首先,控制部376算出在用于非选择信息所包含的消息的异常检测处理中能够利用的时间(检测处理时间)(步骤S1320)。
接着,控制部376从非选择信息保持部375取得一个非选择信息(步骤S1321)。
接着,控制部376算出为了所取得的非选择信息所包含的消息的异常检测处理所需要的时间,判定是否比检测处理时间短(步骤S1322)。
在控制部376判定为检测处理时间比为了所取得的非选择信息所包含的消息的异常检测处理所需要的时间短、时间具有余裕的情况下(步骤S1322:是),控制部376对非选择信息所包含的消息执行异常检测处理(步骤S1323)。
然后,返回步骤S1320。
在控制部376判定为检测处理时间比所取得的非选择信息所包含的消息的异常检测处理所需要的时间长、时间没有余裕的情况下(步骤S1322:否),控制部376向非选择信息保持部375返回非选择信息(步骤S1324)。
在此,控制部376结束非选择信息尾随处理。
此外,在步骤S1323中对非选择信息所包含的消息执行异常检测处理的情况下,控制部376也可以仅执行在之前进行的异常检测处理中未被选择的判定功能。此时,在步骤S1322中时间是否具有余裕的判定中,对于进行之前进行了的异常检测处理中未被选择的判定功能的处理的时间判定是否具有余裕。由此,在本公开涉及的异常判定方法中,能够仅执行所需要的判定功能,因此,能够缩短处理时间。
[3.4效果]
在本实施方式中,异常检测处理功能组群370在判定功能未被执行的情况下,保存在该时间点接收到的消息,在检测处理时间具有余裕的情况下,稍后执行对于该消息的异常检测处理。由此,异常检测处理功能组群370不仅能进行能够在消息接收时满足时间制约的同时发挥最大限度的异常检测效果的判定,也能够尽管定时推迟但仍执行由如当初预定那样的判定功能实现的异常检测处理。由此,在本公开涉及的异常判定方法等中,能够不使异常检测性能降低地满足处理时间制约。
[4.其他变形例]
本公开不限定于上述说明过的各实施方式。另外,只要不脱离本公开的宗旨,对实施方式实施本领域技术人员能够想到的各种变形而得到的方式以及组合不同的实施方式中的构成要素而构成的方式也包含在本公开的范围内。例如,如以下那样的变形例也包含在本公开中。
(1)在上述实施方式中,异常检测处理功能组群370算出能够在异常检测处理中利用的时间(检测处理时间),根据该检测处理时间是否比为了本来应该执行的检测处理所需要的时间长,决定是否对在异常检测处理中执行的判定功能进行选择,或者决定所选择的判定功能,但本公开不限定于此。例如,也可以根据车载网络系统10的负荷率、数据量或者消息量等,决定是否对在异常检测处理中执行的判定功能进行选择,或者决定所选择的判定功能。在此,负荷率是指每单位时间所发送了的数据量或者消息量相对于能够发送至车载网络的数据量或者消息量的最大值的比例。
图33是表示变形例中的判定功能和判定功能的选择条件的表。另外,图34是表示变形例中的异常检测处理的一个例子的流程图。例如在图34中示出了根据负荷率进行选择的判定功能的例子。判定功能选择部371也可以代替在图7中说明过的实施方式1的信息,而基于在图33中说明过的信息来决定要选择的判定功能。
例如,在将负荷率为60%以上时定义为了高负荷的情况下,在图34所示的异常检测处理中,判定功能选择部371在步骤S1400中算出的负荷率为60%以上的值的情况下判定为是“高负荷”(步骤S1401)。
接着,判定功能选择部371基于图33所示的信息,选择进行处理的判定功能(步骤S1402)。
接着,控制部374执行异常检测处理(步骤S1104)。
另外,在判定功能选择部371判定为是“高负荷”的情况下(步骤S1401:否),控制部374执行异常检测处理(步骤S1104)。
图35是表示变形例中的异常检测处理的又一个例子的流程图。在将图34所示的负荷率设为消息量的这一点以外,所实施的处理是相同的。另外,虽未图示,但在根据数据量决定判定功能选择部371所选择的判定功能的情况下也是同样的。
此外,并不是仅在高负荷时对判定功能进行选择,既可以是用“高负荷”、“中负荷”、“低负荷”这三个阶段对根据负荷率确定的状态进行定义,根据处于哪个阶段,决定判定功能选择部371所选择的判定功能,也可以是使各个阶段进行组合,基于如“高负荷”、“高负荷”+“中负荷”、“全负荷”这样的条件,决定判定功能选择部371所选择的判定功能。另外,根据负荷率确定的状态也可以不是用三个阶段进行定义,而是用两个阶段或者四个阶段以上的阶段进行定义。
此外,既可以使用负荷率、数据量或者消息量以外的指标,也可以在算出负荷率、数据量或者消息量时从车载网络整体来进行算出。另外,例如若是网关300,则既可以对于网关300传送的消息算出与负荷率、数据量或者消息量等的指标有关的值,也可以对于被输入到网关300的消息算出与负荷率、数据量或者消息量等的指标有关的值。
此外,异常检测处理功能组群370也可以从帧处理部350接受负荷率、数据量或者消息量,据此对判定功能进行选择,以及对判定功能的执行进行控制。另外,也可以不是按消息接收来接受负荷率、数据量、消息量,而是在阶段性地存在了变化时进行接受。此时,异常检测处理功能组群370在从帧处理部350未接受到负荷率、数据量或者消息量时,判定为那些值与前次相同。
另外,也可以是,判定功能选择部371基于车辆为停车中、行驶中、高速行驶中、定速行驶中、自动驾驶中、开始了自动驾驶、结束了自动驾驶、驾驶辅助功能工作中、开始了驾驶辅助功能、或是结束了驾驶辅助功能等的车辆的状态来选择判定功能,控制部377对判定功能的执行进行控制。
此外,也可以是,判定功能选择部371根据按CAN ID而设定的检测规则中所利用的判定功能和检测处理时间、负荷率、数据量以及消息量,对判定功能进行选择,控制部377对判定功能的执行进行控制。也即是,判定功能选择部371或者控制部374、377从检测规则中利用的功能的组合中选择判定功能。
此外,判定功能选择部371基于图33所示的信息,决定了所选择的判定功能,但并不限定于此。例如,判定功能选择部371也可以如图41所示那样根据判定功能的组合和选择条件来决定所选择的判定功能。
图35是表示变形例中的异常检测处理的又一个例子的流程图。
首先,控制部374算出消息量(步骤S1410)。
接着,控制部374判定消息量是否多(步骤S1411)。
在控制部374判定为了消息量比预定值多的情况下(步骤S1411:是),控制部374选择进行处理的判定功能(步骤S1412)。
然后,控制部374执行异常检测处理(步骤S1104)。
另外,在控制部374判定为消息量比预定值少的情况下(步骤S1411:否),控制部374执行异常检测处理(步骤S1104)。
由此,本公开涉及的异常判定方法等即使在难以算出检测处理时间情况下、或者无法唯一地求出检测处理时间的情况下,也能够使用负荷率、数据量以及消息量等的其他指标进行判定功能的选择。
(2)在上述实施方式中,ECU100被说明为了具备帧收发部110、帧解释部120、接收ID判定部130、接收ID列表保持部140、帧处理部150、数据取得部170以及帧生成部180,但本公开中的车载网络系统具备的ECU的构成不限定于此。
图36是表示变形例中的ECU的一个例子的框图。在图36中,ECU100f由帧收发部110、帧解释部120、帧生成部180、异常检测处理功能组群370构成。帧解释部120例如也可以与ID无关地接收全部消息,关于全部消息向异常检测处理功能组群370请求进行是否为异常消息的判定。
另外,ECU100f也可以在图36的构成的基础上具备接收ID判定部130和接收ID列表保持部140,仅接收具有在接收ID列表保持部保持的接收ID列表中记载的消息ID的消息,关于该消息向异常检测处理功能组群370请求进行是否为异常的消息的判定。
此外,ECU100g也可以还具备外部通信部390。
由此,不仅是网关,ECU也能够对被发送到车载网络的消息是否为异常消息进行解析。其结果,例如车载网络系统中的用于异常检测的功能提高,能更高地确保安全。
图37是表示变形例中的ECU的又一个例子的框图。图37所示的ECU100g也可以具备从其他连接设备或者外部等取得向总线200发送的数据的发送数据取得部171和异常检测处理功能组群370g。ECU100g具备的异常检测处理功能组群370g也可以也判定从发送数据取得部171接收到的数据是否为异常消息,仅在判定为该接收到的数据不是异常消息的情况下,对帧生成部180请求进行消息的发送。
此外,ECU100g也可以还具备外部通信部390。
由此,本公开涉及的异常判定方法等例如能够在与车辆导航一起利用的ECU被从由外部不正常地进行了操作的车辆导航发送异常的消息的情况下,抑制该消息向包含ECU100g的车载网络的扩散。另外,本公开涉及的异常判定方法等能够抑制从车外尝试发送的异常消息向车载网络系统内部的侵入。
(3)在上述实施方式中,设为了判定功能选择部371为了决定所被选择的判定功能或者所被执行的判定功能而使用一个基准来进行判定,但并不限定于此。例如,判定功能选择部371也可以使用按CAN ID而不同的基准。另外,也可以在网关300、ECU连接有多个总线的情况下,判定功能选择部371使用按多个总线而不同的基准。另外,判定功能选择部371也可以使用按车辆为停车中、行驶中、高速行驶中、定速行驶中、自动驾驶中、开始了自动驾驶、结束了自动驾驶、驾驶辅助功能工作中、开始了驾驶辅助功能、或者结束了驾驶辅助功能等的车辆的状态而不同的基准。
此外,在按CAN ID而具有基准的情况下,判定功能选择部371也可以对于重要的CAN ID不选择判定功能,对于不重要的CAN ID选择判定功能。另外,判定功能选择部371也可以根据重要度,对要选择的判定功能进行变更。
由此,本公开涉及的异常判定方法等能够更灵活地对判定功能的执行进行控制,因此,能根据各种各样的系统、各种各样的状况来进行最合适的执行。
(4)在上述实施方式中,设为了异常检测处理功能组群370向帧处理部350返回判定结果,但并不限定于此,也可以与判定结果一起一并返回与所选择出的判定功能有关的信息或者与所执行了的判定功能有关的信息。
由此,调出了异常检测处理功能组群370的帧处理部350等能够对异常检测处理功能组群370的判定结果的可靠度进行确认。
(5)在上述的实施方式中,示出了车载网络来作为按照CAN协议进行通信的网络通信系统的例子。本公开涉及的技术并不限定为车载网络中的利用,在机器人、产业设备等网络之外,也可以利用于车载网络以外的按照CAN协议进行通信的网络通信系统。
另外,使用了CAN协议来作为车载网络,但并不限于此。例如,也可以使用CAN-FD(CAN with Flexible Data Rate)、FlexRay、Ethernet、LIN(Local InterconnectNetwork)、MOST(Media Oriented Systems Transport)等。或者,也可以是这些网络作为子网络而组合的网络。
例如,在Ethernet的情况下,判定功能选择部371从DoS攻击判定功能、发送源地址判定功能、发送目的地地址判定功能、协议判定功能、发送源端口编号判定功能、发送目的地端口编号判定功能或者数据值判定功能等的功能中选择判定功能。或者,判定功能选择部371从上述多个判定功能中选择一个以上的判定功能来作为控制部377执行的判定功能即可。在Ethernet以外的网络标准中,也可对于判定头信息或者有效负荷的值的功能等进行与CAN或者Ethernet的情况同样的处理。
(6)上述实施方式中的网关300也可以包括第一处理部和第二处理部,对于异常检测处理功能组群370中的判定功能选择部371的功能,在第一处理部中进行处理,对于控制部372和异常检测部373的功能,在第二处理部中进行处理。此时,判定功能选择部371所选择的结果被从第一处理部送出给第二处理部。并且,在第二处理部中,也可以根据从判定功能选择部371送出的选择结果,控制部372对异常检测部373的判定功能进行控制。
另外,网关300也可以包括第三处理部、第四处理部以及第五处理部。第三处理部包括算出判定功能选择部371进行了处理的检测处理时间的处理时间算出部,处理时间算出部算出的检测处理时间被送出给第四处理部。在第四处理部中,判定功能选择部371根据检测处理时间选择判定功能,所选择的结果被送出给第五处理部。在第五处理部中,也可以根据所送出的选择结果,控制部372对异常检测部373的判定功能进行控制。
另外,也可以是,第一处理部包括判定功能选择部371、控制部372以及异常检测部373,第二处理部包括控制部372和异常检测部373。在第一处理部中,也可以通过判定功能选择部371在进行使用了第一处理部的异常检测部373的异常检测处理时,对判定功能选择部371未选择的判定功能进行选择,并向第二处理部进行送出,第二处理部的控制部372和异常检测部373进行异常检测处理,从而进行本来希望执行的异常检测处理。
此外,不仅是在网关300中处理部被分割而存在,也可以在网关300中具有第二处理部和第五处理部,在其他ECU具备第一处理部、第三处理部以及第四处理部。另外,图38是表示变形例中的车载网络系统的整体构成的框图,图39是表示变形例中的车载网络系统所包括的通信ECU的一个例子的框图。如图37所示,也可以为:车载网络系统包括通信ECU100e,经由外部网络400与服务器500进行通信,通信ECU100e如图39所示那样包括外部通信部390,向服务器500送出从车载网络接收到的消息、异常检测处理功能组群370的异常检测处理结果以及与所执行的判定功能有关的信息。
图40是表示变形例中的服务器的一个例子的框图、图41是表示变形例中的判定功能和判定功能的选择条件的表。服务器500也可以如图40所示那样包括接收部510、消息保持部520以及处理部530,上述的第一处理部和第四处理部是处理部530。另外,处理部530也可以包括显示部和输入部,显示检测处理时间、负荷率、数据量、消息量或者车辆状态等,操作员根据所显示的信息或者从其他方面入手的信息来选择要执行的判定功能,经由输入部输入选择结果。
所被输入的结果也可以被从服务器500送出给控制部372,根据控制部372所输入的结果,对异常检测部373的判定功能进行控制。另外,服务器500也可以在根据与异常检测部373执行了的判定功能有关的信息判断为了未执行本来希望执行的判定功能的情况下,在服务器500的处理部530中进行对于该消息的异常检测处理。
由此,本公开的车载网络系统可由灵活的构成来实现,因此,能够成为立足于各种各样的系统制约的构成。
(7)具体而言,上述的实施方式中的各装置是由微处理器、ROM、RAM、硬盘单元、显示器单元、键盘、鼠标等构成的计算机系统。在RAM或者硬盘单元中记录有计算机程序。通过微处理器按照计算机程序进行动作,各装置达成其功能。在此,计算机程序是为了达成预定的功能而组合多个表示对于计算机的指令的命令代码来构成的。
(8)构成上述实施方式中的各装置的构成要素的一部分或者全部也可以由一个系统LSI(Large Scale Integration:大规模集成电路)构成。系统LSI是在一个芯片上集成多个构成部而制造的超多功能LSI,具体而言为包括微处理器、ROM、RAM等来构成的计算机系统。在RAM中记录有计算机程序。通过微处理器按照计算机程序进行动作,系统LSI达成其功能。
另外,构成上述各装置的构成要素的各部既可以个别地单芯片化,也可以以包括一部分或者全部的方式单芯片化。
另外,在此设为了构成实施方式中的各装置的构成要素的一部分或者全部由系统LSI实现,但有时根据集成度的不同,也被称为IC、LSI、超大LSI(super LSI)、甚大LSI(ultra LSI)。另外,集成电路化的方法并不限于LSI,也可以是由专用电路或者通用处理器来实现的方法。也可以利用能够在LSI制造后进行编程的FPGA(Field Programmable GateArray,现场可编程门阵列)、或者能够对LSI内部的电路单元的连接、设定进行重构的可重构处理器。
进一步,若通过半导体技术的进步或者派生的其他技术而对LSI进行置换的集成电路化的技术出现,则当然也可以使用该技术进行功能块的集成化。作为对LSI进行置换的集成电路化的技术,也设想生物技术的应用等的可能性。
(9)构成上述各装置的构成要素的一部分或者全部也可以设为由能够装卸于各装置的IC卡或者单体的模块来构成。IC卡或者模块是由微处理器、ROM、RAM等构成的计算机系统。IC卡或者模块也可以设为包括上述的超多功能LSI。通过微处理器按照计算机程序进行动作,IC卡或者所述模块达成其功能。该IC卡或者该模块也可以具有耐篡改性。
(10)本公开既可以设为是通过计算机实现上述所示的方法的计算机程序,也可以设为是由计算机程序构成的数字信号。
另外,本公开也可以设为将计算机程序或者数字信号记录于计算机能够读取的记录介质、例如软盘、硬盘、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(注册商标)Disc)或者半导体存储器等。另外,也可以设为是记录于这些记录介质的数字信号。
另外,本公开也可以设为经由以电通信线路、无线或者有线通信线路、互联网为代表的网络或者数据广播等传输计算机程序或者数字信号。
另外,本公开也可以设为是具备微处理器和存储器的计算机系统,存储器记录有上述计算机程序,微处理器按照计算机程序进行动作。
另外,也可以为通过将程序或者数字信号记录于记录介质来进行运送,或者通过经由网络等传送程序或者数字信号,从而通过独立的其他计算机系统进行实施。
(11)也可以为使上述实施方式和上述变形例分别进行组合。
以上,基于实施方式及其变形例对一个或者多个技术方案涉及的车载网络中的、用于对作为以基于不正常消息的不正常控制为目的的不正常通信检测的基准来使用的消息进行决定的技术进行了说明。
在这些各实施方式及其变形例中,根据与车载网络系统连接来进行通信的网关或者ECU、或者这些和服务器计算机的组合,决定被作为不正常通信检测的基准来使用的消息。
在本公开中,将执行这样的不正常通信检测的包括一个以上的处理器和存储部的系统称为不正常通信检测基准决定系统。
因此,不正常通信检测基准决定系统既包括如与车载网络系统连接的1台网关那样由一个装置实现的系统,也包括如这样的网关和ECU的组合、或者网关或ECU和处于远程的服务器计算机的组合那样由多个装置实现的系统。
另外,该技术也可以作为包括在上述各实施方式或者其变形例中各构成要素执行的处理的步骤的一部分或者全部的方法、或者用于由不正常通信检测基准决定系统的处理器执行、使得不正常通信检测基准决定系统实施该方法的程序来实现。
另外,也可以在上述实施方式或者其变形例中,代替特定的构成要素而由其他构成要素执行特定的构成要素所执行的处理。另外,既可以变更多个处理的顺序,也可以是并行地执行多个处理。
上述的异常判定方法也可以通过具备一个以上的处理器和能够由该一个以上的处理器访问的存储部的异常判定装置进行执行。该异常判定装置既可以是网关300或者服务器500等,也可以包含在那些中。
[效果等]
本公开中的异常判定方法是对接收消息的异常进行判定的异常判定方法,包括:接收多个消息的各个消息来作为所述接收消息,所述多个消息具有周期性,并且,分别具有包含固定的值的第1字段和包含变化的值的第2字段,根据能够执行所述异常判定方法的时间、负荷量、数据量或者消息的个数中的一个以上的基准,选择以由异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合进行判定,所述异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述值固定的字段的异常判定以及使用所述值发生变化的字段的异常判定。
由此,本公开涉及的异常判定方法能够在有限的时间内选择应该执行的异常判定来推进处理。由此,本公开涉及的异常判定方法能够有效地判定接收消息的异常。
另外,本公开中的异常判定方法也可以以所述选择出的组合执行所述异常判定。
由此,本公开涉及的异常判定方法通过执行预先选择出的异常判定的组合,能够在有限的时间内有效地判定接收消息的异常。
另外,本公开涉及的异常判定方法也可以在进行了所述异常判定方法时未执行所述多个异常判定中的使用前次信息的所述异常判定的情况下,在下一次进行异常判定方法时,对在使用所述前次信息的异常判定中使用的所述前次信息进行复位。
由此,本公开涉及的异常判定方法能够避免如下情况:由于在跳过了某异常判定之后,在进行同一异常判定时,因跳过了该异常判定而未记录正常数据,因而在进行同一异常判定时无法进行正常的判定。由此,本公开涉及的异常判定方法能够有效地判定接收消息的异常。
另外,本公开涉及的异常判定方法也可以在用于接收所述接收消息的网络的负荷率低于了预定阈值时,使用刚刚接收到的种类不同的所述接收消息的信息来作为代替所述被进行了复位的前次信息的信息。
由此,本公开涉及的异常判定方法能够避免如下事态:由于在跳过了某异常判定之后,在进行同一异常判定时,因跳过了该异常判定而未记录正常的数据,因而在进行同一异常判定时,无法进行该异常判定处理。也即是,本公开涉及的异常判定方法通过在上述的情况下使用刚刚接收到的ID不同的接收消息的信息,进行与被跳过了的异常判定处理相同的异常判定处理。
另外,本公开涉及的异常判定方法也可以在执行了所述选择出的判定处理之后在用于执行所述异常判定方法的时间产生了余裕的情况下,执行未被选择的所述异常判定。
由此,本公开涉及的异常判定方法能够进行更多的异常判定。由此,本公开涉及的异常判定方法能够更有效地判定接收消息的异常。
本公开涉及的异常判定装置是包括网络和与所述网络连接的一个以上的电子控制单元的车载网络系统中的异常判定装置,具备:一个以上的处理器;和能够由所述一个以上的处理器进行访问的存储部,所述一个以上的处理器,从所述网络接收多个消息的各个消息来作为接收消息,所述多个消息包括具有周期性的多个消息,并且,分别包含具有固定的值的第1字段和具有变化的值的第2字段,根据能够执行所述异常判定装置进行的异常判定方法的时间、负荷量、数据量或者消息的个数中的一个以上的基准,选择以由多个异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合进行判定,所述多个异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定以及使用所述第2字段的异常判定。
由此,本公开涉及的异常判定装置能够实现与上述异常判定方法同样的效果。
另外,本公开涉及的程序也可以是用于使计算机实施本公开涉及的异常判定方法的程序。
由此,本公开涉及的程序能够实现与上述异常判定方法同样的效果。
此外,本公开涉及的异常判定方法也可以在判定为能执行所述异常判定方法的时间比预定时间短的情况下,从使用了基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定、或者使用所述第2字段的异常判定中,执行与预定基准相比而误检测率低且检测率高的一个以上的异常判定的组合。
由此,本公开涉及的异常判定方法能够更有效地判定接收消息的异常。
此外,本公开涉及的异常判定方法也可以在判定为能执行所述异常判定方法的时间比预定时间短的情况下,不执行使用了基于所述周期性的接收定时、所述接收消息的个数的异常判定和使用所述第2字段的异常判定。
由此,本公开涉及的异常判定方法通过仅进行使用具有变化的值的字段的异常判定,能够在有限的时间内更有效地判定接收消息的异常。
本公开涉及的异常判定方法也可以在判定为能执行所述异常判定方法的时间比预定时间短的情况下,对在使用了基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定或者使用所述第2字段的异常判定中的任一异常判定之前结束处理这一情况进行选择。由此,本公开涉及的异常判定方法能够在有限的时间内更有效地判定接收消息的异常。
本公开涉及的异常判定方法也可以在判定为能执行所述异常判定方法的时间比预定时间短的情况下,将与使用了基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述值固定的字段的异常判定或者使用所述值变化的字段的异常判定中的被决定为不执行的异常判定有关的信息、或者与进行被决定为不执行的异常判定的对象的消息有关的信息存储于存储器。
由此,本公开涉及的异常判定方法能够根据状况,稍后执行被决定为不执行的异常判定。由此,本公开涉及的异常判定方法能够更有效地判定接收消息的异常。
产业上的可利用性
本公开涉及的异常检测方法等能够利用于车载网络中的消息的异常检测等。另外,本公开涉及的异常检测方法等能够根据能在异常检测处理中利用的检测处理时间来进行适当的异常检测处理。由此,本公开涉及的异常检测方法等在以往无法执行异常检测处理的定时也能够精度良好地对正常的消息进行识别,能够实现网络的保护。

Claims (7)

1.一种异常判定方法,对接收消息的异常进行判定,包括:
接收多个消息的各个消息来作为所述接收消息,所述多个消息包括具有周期性的多个消息、并且分别包含具有固定的值的第1字段和具有变化的值的第2字段,
根据能够执行所述异常判定方法的时间、负荷量、数据量和消息的个数中的一个以上的基准,选择以由多个异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合来进行判定,所述多个异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定以及使用所述第2字段的异常判定。
2.根据权利要求1所述的异常判定方法,
以所述选择出的组合来执行所述异常判定。
3.根据权利要求2所述的异常判定方法,
在执行了所述选择出的异常判定之后在用于执行所述异常判定方法的时间中剩余有能进行其他异常判定的时间的情况下,执行未被选择的所述异常判定。
4.根据权利要求1或者2所述的异常判定方法,
在进行了所述异常判定方法时未执行所述多个异常判定中的使用前次信息的所述异常判定的情况下,在下一次进行所述异常判定方法时,对在使用所述前次信息的异常判定中所使用的所述前次信息进行复位。
5.根据权利要求4所述的异常判定方法,
在用于接收所述接收消息的网络的负荷率低于了预定阈值时,使用刚刚接收到的种类不同的所述接收消息的信息来作为代替所述被复位了的前次信息的信息。
6.一种异常判定装置,是包括网络和与所述网络连接的一个以上的电子控制单元的车载网络系统中的异常判定装置,具备:
一个以上的处理器;和
能够由所述一个以上的处理器进行访问的存储部,
所述一个以上的处理器,
从所述网络接收多个消息的各个消息来作为接收消息,所述多个消息包括具有周期性的多个消息、并且分别包含具有固定的值的第1字段和具有变化的值的第2字段,
根据能够执行所述异常判定装置进行的异常判定方法的时间、负荷量、数据量和消息的个数中的一个以上的基准,选择以由多个异常判定中的一个以上的异常判定分别构成的多个组合中的哪个组合来进行判定,所述多个异常判定包括使用基于所述周期性的接收定时或者所述接收消息的个数的异常判定、使用所述第1字段的异常判定以及使用所述第2字段的异常判定。
7.一种程序,用于使计算机实施权利要求1所述的异常判定方法。
CN201980069198.XA 2019-02-08 2019-12-26 异常判定方法、异常判定装置以及程序 Active CN112889246B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311224624.7A CN117118776A (zh) 2019-02-08 2019-12-26 异常判定方法、异常判定装置以及程序

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962802963P 2019-02-08 2019-02-08
US62/802,963 2019-02-08
PCT/JP2019/051105 WO2020162075A1 (ja) 2019-02-08 2019-12-26 異常判定方法、異常判定装置およびプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311224624.7A Division CN117118776A (zh) 2019-02-08 2019-12-26 异常判定方法、异常判定装置以及程序

Publications (2)

Publication Number Publication Date
CN112889246A true CN112889246A (zh) 2021-06-01
CN112889246B CN112889246B (zh) 2023-09-22

Family

ID=71948271

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201980069198.XA Active CN112889246B (zh) 2019-02-08 2019-12-26 异常判定方法、异常判定装置以及程序
CN202311224624.7A Pending CN117118776A (zh) 2019-02-08 2019-12-26 异常判定方法、异常判定装置以及程序

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202311224624.7A Pending CN117118776A (zh) 2019-02-08 2019-12-26 异常判定方法、异常判定装置以及程序

Country Status (5)

Country Link
US (3) US11516045B2 (zh)
EP (1) EP3923519A4 (zh)
JP (1) JPWO2020162075A1 (zh)
CN (2) CN112889246B (zh)
WO (1) WO2020162075A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3799364A4 (en) * 2018-05-23 2021-07-14 Panasonic Intellectual Property Corporation of America COMMUNICATION CONTROL DEVICE, ELECTRONIC CONTROL UNIT FOR DETECTING UNAUTHORIZED ACCESS, MOBILITY NETWORK SYSTEM, COMMUNICATION CONTROL METHODS, METHODS FOR DETECTING UNAUTHORIZED PROGRAM ACCESS
US11711384B2 (en) * 2018-08-27 2023-07-25 Lear Corporation Method and system for detecting message injection anomalies
US11687504B2 (en) * 2021-01-25 2023-06-27 Rockwell Automation Technologies, Inc. Multimodal data reduction agent for high density data in IIoT applications
US11539621B2 (en) * 2021-02-03 2022-12-27 Motional Ad Llc Controller area network messages in an autonomous vehicle
US11586176B2 (en) 2021-04-19 2023-02-21 Rockwell Automation Technologies, Inc. High performance UI for customer edge IIoT applications

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017038351A1 (ja) * 2015-09-04 2017-03-09 日立オートモティブシステムズ株式会社 車載ネットワーク装置
WO2018012322A1 (ja) * 2016-07-14 2018-01-18 日立オートモティブシステムズ株式会社 演算装置
CN108028790A (zh) * 2016-01-08 2018-05-11 松下电器(美国)知识产权公司 异常检测方法、异常检测装置及异常检测系统
CN108401491A (zh) * 2016-12-06 2018-08-14 松下电器(美国)知识产权公司 信息处理方法、信息处理系统以及程序
CN108886480A (zh) * 2016-07-05 2018-11-23 松下电器(美国)知识产权公司 异常检测电子控制单元、车载网络系统以及异常检测方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6983323B2 (en) * 2002-08-12 2006-01-03 Tippingpoint Technologies, Inc. Multi-level packet screening with dynamically selected filtering criteria
JP4512196B2 (ja) * 2005-10-20 2010-07-28 アラクサラネットワークス株式会社 異常トラヒックの検出方法およびパケット中継装置
WO2009083022A1 (en) * 2007-12-31 2009-07-09 Telecom Italia S.P.A. Method of detecting anomalies in a communication system using numerical packet features
US8767642B2 (en) * 2009-12-18 2014-07-01 Samsung Electronics Co., Ltd. Efficient implicit indication of the size of messages containing variable-length fields in systems employing blind decoding
JP5906584B2 (ja) 2011-05-27 2016-04-20 トヨタ自動車株式会社 制御装置及び制御方法
US9384066B1 (en) * 2013-12-27 2016-07-05 Symantec Corporation Heuristics-based protocol labeling for industrial control systems
EP3852313B1 (en) 2014-04-03 2022-06-08 Panasonic Intellectual Property Corporation of America Network communication system, fraud detection electronic control unit and anti-fraud handling method
US10484406B2 (en) * 2015-01-22 2019-11-19 Cisco Technology, Inc. Data visualization in self-learning networks
JP6525825B2 (ja) * 2015-08-31 2019-06-05 国立大学法人名古屋大学 通信装置
US10757121B2 (en) * 2016-03-25 2020-08-25 Cisco Technology, Inc. Distributed anomaly detection management
JP6566902B2 (ja) * 2016-03-28 2019-08-28 株式会社ジャパンディスプレイ 半導体装置及び表示装置
JP6508427B2 (ja) * 2016-09-05 2019-05-08 株式会社村田製作所 電源システム
JP6798280B2 (ja) * 2016-11-29 2020-12-09 富士通株式会社 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム
JP6539363B2 (ja) * 2017-04-07 2019-07-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正通信検知方法、不正通信検知システム及びプログラム
US11449786B2 (en) * 2017-05-10 2022-09-20 Intel Corporation Methods and apparatus to generate anomaly detection datasets
KR101981138B1 (ko) * 2018-03-22 2019-08-30 아주대학교산학협력단 Can 트레이스의 필드 경계 구분 장치 및 방법
KR101940029B1 (ko) * 2018-07-11 2019-01-18 주식회사 마키나락스 어노말리 디텍션
US11252016B2 (en) * 2018-10-24 2022-02-15 Microsoft Technology Licensing, Llc Anomaly detection and classification in networked systems
JP7124679B2 (ja) * 2018-12-07 2022-08-24 トヨタ自動車株式会社 監視装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017038351A1 (ja) * 2015-09-04 2017-03-09 日立オートモティブシステムズ株式会社 車載ネットワーク装置
CN108028790A (zh) * 2016-01-08 2018-05-11 松下电器(美国)知识产权公司 异常检测方法、异常检测装置及异常检测系统
CN108886480A (zh) * 2016-07-05 2018-11-23 松下电器(美国)知识产权公司 异常检测电子控制单元、车载网络系统以及异常检测方法
WO2018012322A1 (ja) * 2016-07-14 2018-01-18 日立オートモティブシステムズ株式会社 演算装置
CN108401491A (zh) * 2016-12-06 2018-08-14 松下电器(美国)知识产权公司 信息处理方法、信息处理系统以及程序

Also Published As

Publication number Publication date
CN112889246B (zh) 2023-09-22
US11843477B2 (en) 2023-12-12
CN117118776A (zh) 2023-11-24
EP3923519A1 (en) 2021-12-15
EP3923519A4 (en) 2022-07-27
JPWO2020162075A1 (ja) 2021-12-09
WO2020162075A1 (ja) 2020-08-13
US20210297284A1 (en) 2021-09-23
US20240031199A1 (en) 2024-01-25
US11516045B2 (en) 2022-11-29
US20230048058A1 (en) 2023-02-16

Similar Documents

Publication Publication Date Title
CN112889246A (zh) 异常判定方法、异常判定装置以及程序
CN111478836B (zh) 车载网络系统、电子控制单元、接收方法以及发送方法
CN106105105B9 (zh) 网络通信系统、不正常检测电子控制单元以及不正常应对方法
US10693905B2 (en) Invalidity detection electronic control unit, in-vehicle network system, and communication method
EP3493480B1 (en) Frame transmission blocking device, frame transmission blocking method and vehicle-mounted network system
CN110406485B (zh) 非法检测方法及车载网络系统
CN108476162B (zh) 网络集线器、转发方法及车载网络系统
CN108476161B (zh) 电子控制单元、通信方法以及车载网络系统
US11838303B2 (en) Log generation method, log generation device, and recording medium
EP3799364A1 (en) Communication control device, unauthorized access-detecting electronic control unit, mobility network system, communication control method, unauthorized access detection method and program
US20140107863A1 (en) Vehicle Control Device, Vehicle Control System
CN112968821B (zh) 电子控制单元、通信方法以及车载网络系统
KR102204954B1 (ko) Can 컨트롤러 및 이를 이용한 데이터 전송 방법
CN112787901B (zh) 网络集线器、转发方法及车载网络系统
CN114731301B (zh) 决定方法、决定系统以及程序记录介质
EP4109826A1 (en) Frame transmission prevention apparatus, frame transmission prevention method, and in-vehicle network system
KR20220082550A (ko) 차량

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