WO2016038816A1 - 車両用通信装置、車載ネットワークシステム及び車両用通信方法 - Google Patents

車両用通信装置、車載ネットワークシステム及び車両用通信方法 Download PDF

Info

Publication number
WO2016038816A1
WO2016038816A1 PCT/JP2015/004236 JP2015004236W WO2016038816A1 WO 2016038816 A1 WO2016038816 A1 WO 2016038816A1 JP 2015004236 W JP2015004236 W JP 2015004236W WO 2016038816 A1 WO2016038816 A1 WO 2016038816A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame
control unit
determination
unit
transmission
Prior art date
Application number
PCT/JP2015/004236
Other languages
English (en)
French (fr)
Inventor
良浩 氏家
安齋 潤
嘉彦 北村
正人 田邉
松島 秀樹
芳賀 智之
剛 岸川
良太 杉山
Original Assignee
パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
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 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ filed Critical パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
Priority to CN201580022868.4A priority Critical patent/CN106458115B/zh
Priority to EP22150191.9A priority patent/EP3998747A1/en
Priority to JP2016547671A priority patent/JP6152228B2/ja
Priority to EP15839733.1A priority patent/EP3192703B1/en
Priority to EP20184415.6A priority patent/EP3738836B1/en
Priority to EP18212429.7A priority patent/EP3480064B1/en
Publication of WO2016038816A1 publication Critical patent/WO2016038816A1/ja
Priority to US15/407,738 priority patent/US10193896B2/en
Priority to US16/217,460 priority patent/US10693889B2/en
Priority to US15/930,093 priority patent/US11240253B2/en
Priority to US17/559,749 priority patent/US11943233B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • 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
    • 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

Definitions

  • the present invention relates to a vehicle communication device that is connected to an in-vehicle network and transmits and receives messages (frames), a vehicle communication method, and the like.
  • a communication path is composed of two buses, and an ECU connected to the bus is called a node.
  • Each node connected to the bus transmits and receives a message called a frame.
  • a transmission node that transmits a frame applies a voltage to two buses to generate a potential difference between the buses, thereby transmitting a value of “1” called recessive and a value of “0” called dominant.
  • the dominant is transmitted with priority.
  • the receiving node transmits a frame called an error frame.
  • An error frame is a notification of frame abnormality to a transmitting node or another receiving node by transmitting dominants continuously for 6 bits.
  • the transmission node transmits an ID called a message ID for each frame (that is, sends a signal to the bus), and each reception node is predetermined. Only the message ID is received (that is, the signal is read from the bus).
  • a CSMA / CA Carrier Sense Multiple Access / Collision Avoidance
  • arbitration is performed using a message ID during simultaneous transmission of a plurality of nodes, and a frame with a small message ID value is preferentially transmitted.
  • Non-patent Document 1 a technique is known in which the period of a message sent periodically is checked to determine an illegal frame.
  • an unauthorized operation may be performed by an unauthorized application program.
  • An illegal application program may illegally control the vehicle by generating an illegal frame and sending it to the bus, and may increase the load on the bus. As a result, the burden of frame monitoring (checking) on the bus increases.
  • the present invention provides an in-vehicle network system useful for reducing the sending of illegal frames to the bus.
  • the present invention also provides a vehicular communication device as an ECU used in the in-vehicle network system and a vehicular communication method useful for reducing the sending of illegal frames to the bus.
  • a vehicle communication device is a vehicle communication device connected to a bus in an in-vehicle network system including a plurality of devices that perform communication related to a frame via a bus.
  • a first control unit that specifies a transmission frame that is a frame for transmission to the bus and a first control unit that can exchange information about the frame by wired communication or wireless communication between the first control unit and the first control unit.
  • 2 is a vehicular communication device in which at least one of the first control unit and the second control unit makes a determination regarding conformity to a rule for the transmission frame.
  • an in-vehicle network system is an in-vehicle network system including a plurality of devices that perform communication related to a frame via a bus, and at least of the plurality of devices.
  • One is a vehicle communication device connected to the bus, and the vehicle communication device includes a first control unit that identifies a transmission frame that is a frame for transmission to the bus, and the first control unit.
  • a second control unit capable of transmitting and receiving information relating to the frame by wired communication or wireless communication, and at least one of the first control unit and the second control unit has a rule for the transmission frame. It is an in-vehicle network system that performs a determination related to suitability for the vehicle.
  • a vehicle communication method is provided between a first control unit that specifies a transmission frame that is a frame for transmission to a bus, and the first control unit.
  • An in-vehicle network system in which a plurality of devices including a vehicle communication device having a second control unit capable of transmitting and receiving information related to a frame by wired communication or wireless communication perform communication related to the frame via the bus.
  • at least one of the first control unit and the second control unit makes a determination on conformity to a rule for the transmission frame.
  • FIG. 1 is a diagram showing an overall configuration of the in-vehicle network system according to the first embodiment.
  • FIG. 2 is a diagram showing a format of a data frame defined by the CAN protocol.
  • FIG. 3 is a diagram illustrating an error frame format defined by the CAN protocol.
  • FIG. 4 is a configuration diagram of the head unit according to the first embodiment.
  • FIG. 5 is a diagram illustrating an example of a reception ID list held by the head unit.
  • FIG. 6 is a diagram illustrating an example of a determination rule held by the determination rule holding unit.
  • FIG. 7 is a configuration diagram of the ECU.
  • FIG. 8 is a diagram illustrating an example of a reception ID list held by the ECU.
  • FIG. 1 is a diagram showing an overall configuration of the in-vehicle network system according to the first embodiment.
  • FIG. 2 is a diagram showing a format of a data frame defined by the CAN protocol.
  • FIG. 3 is a diagram illustrating an error frame format
  • FIG. 9 is a diagram illustrating an example of an ID and a data field in a frame transmitted from an ECU connected to the engine.
  • FIG. 10 is a diagram illustrating an example of an ID and a data field in a frame transmitted from the ECU connected to the brake.
  • FIG. 11 is a diagram illustrating an example of an ID and a data field in a frame transmitted from the ECU connected to the door opening / closing sensor.
  • FIG. 12 is a diagram illustrating an example of an ID and a data field in a frame transmitted from the ECU connected to the window opening / closing sensor.
  • FIG. 13 is a flowchart illustrating an example of a frame reception process in the head unit according to the first embodiment.
  • FIG. 14 is a flowchart illustrating an example of a frame transmission process in the head unit according to the first embodiment.
  • FIG. 15 is a flowchart illustrating an example of a frame determination process in the system control unit according to the first embodiment.
  • FIG. 16 is a flowchart showing an example of frame determination processing in the multimedia control unit according to the first embodiment.
  • FIG. 17 is a flowchart illustrating an example of a frame period determination process according to the first embodiment.
  • FIG. 18 is a flowchart illustrating an example of the frame frequency determination process.
  • FIG. 19 is a flowchart showing a frame period determination process according to the first modification of the first embodiment.
  • FIG. 20 is a flowchart showing frame determination processing in the system control unit according to the second modification of the first embodiment.
  • FIG. 21 is a flowchart showing frame determination processing in the multimedia control unit according to the second modification of the first embodiment.
  • FIG. 22 is a flowchart showing a frame determination process in the system control unit according to the third modification of the first embodiment.
  • FIG. 23 is a flowchart showing frame determination processing in the multimedia control unit according to the third modification of the first embodiment.
  • FIG. 24 is a configuration diagram of a head unit according to the second embodiment.
  • FIG. 25 is a flowchart illustrating an example of frame reception processing in the head unit according to the second embodiment.
  • FIG. 26 is a flowchart illustrating an example of a frame transmission process in the head unit according to the second embodiment.
  • FIG. 27 is a diagram illustrating an overall configuration of a network system according to the third embodiment.
  • FIG. 28 is a configuration diagram of a head unit according to the third embodiment.
  • FIG. 29 is a flowchart illustrating an example of a frame reception process in the head unit according to the third embodiment.
  • FIG. 30 is a flowchart illustrating an example of a frame transmission process in the head unit according to the third embodiment.
  • a vehicle communication device is a vehicle communication device connected to a bus in an in-vehicle network system including a plurality of devices that perform communication related to a frame via a bus, A first control unit that identifies a transmission frame that is a frame for transmission; and a second control unit that can exchange information regarding the frame by wired communication or wireless communication between the first control unit, At least one of the first control unit and the second control unit is a vehicle communication device that makes a determination on conformity to a rule for the transmission frame.
  • the frame of the content specified by, for example, the application program in the first control unit is illegal (non-conforming) in accordance with the rules in the in-vehicle network system (for example, criteria regarding the allowable range of data values, transmission cycle, transmission frequency, etc.) ) Or the like can be determined. This determination is useful for reducing transmission of illegal frames to the bus.
  • At least one of the first control unit and the second control unit is transmitted by any device other than the own device among the plurality of devices in the in-vehicle network system, and is acquired via the bus. It is also possible to make a determination relating to conformity to the rule for a received frame that is a frame that has been processed. As a result, it can be determined whether or not the frame received from the bus is illegal (non-conforming) in light of rules in the in-vehicle network system (for example, standards regarding the allowable range of data values, reception cycle, reception frequency, etc.). This determination is useful for improving the security of the in-vehicle network system. The result of this determination can be used to analyze whether or not an illegal frame has been sent to the bus due to reception of an illegal frame. Can also be useful.
  • the first control unit includes a first determination unit that determines whether the transmission frame conforms to or does not conform to a first predetermined rule, and the second control unit performs second operation on the reception frame. It is good also as having the 2nd judgment part which judges whether it is in conformity with a predetermined rule. Thereby, determination of a frame can be shared by each control unit. Note that the first control unit does not necessarily need to make a determination on every criterion (rule item) related to the transmission frame, and the second control unit does not necessarily need to make a determination on every criterion (rule item) related to the reception frame.
  • the first control unit has a function of transmitting information related to the specified transmission frame to the second control unit, and the second control unit is configured to transmit the transmission frame specified by the first control unit.
  • the second predetermined rule defines a condition regarding a reception cycle or a reception frequency for a received frame
  • the first control unit conforms to a third predetermined rule different from the second predetermined rule for the received frame. It is good also as having the 3rd determination part which determines whether it is doing or it is nonconforming. Accordingly, the first control unit between the second control unit and the bus can accurately determine the period or frequency without being affected by the signal transmission time (delay) between the two control units. it can.
  • the first control unit may include a third determination unit that determines whether the received frame conforms to or does not conform to a third predetermined rule different from the second predetermined rule.
  • the rule determination for the received frame is shared by each control unit, so that, for example, when the first control unit is higher in performance than the second control unit, an appropriate distribution of processing load can be realized.
  • the first control unit is a semiconductor integrated circuit including a first microprocessor and a first memory
  • the first determination unit is executed by executing a program stored in the first memory by the first microprocessor.
  • the second control unit is a semiconductor integrated circuit including a second microprocessor and a second memory whose processing performance is lower than that of the first microprocessor.
  • the second memory The function as the second determination unit may be realized by executing the program stored in the second microprocessor by the second microprocessor. Thereby, appropriate processing sharing according to the processing performance of each microprocessor can be realized.
  • the vehicle communication device determines whether the received frame conforms to the rule or not as the determination as to the conformity to the rule with respect to the received frame. If it is determined, a predetermined received frame handling process based on the content of the received frame is executed, and if it is determined that it is incompatible, execution of the predetermined received frame handling process may be suppressed. As a result, it is possible to prevent the received frame handling process from being performed by an illegal received frame that does not conform to the rules.
  • the vehicle communication device determines whether or not the transmission frame conforms to the rule as the determination related to conformity to the rule for the transmission frame, and conforms to the rule. If it is determined, the transmission frame is transmitted onto the bus. If it is determined that the transmission frame is incompatible, transmission of the transmission frame onto the bus may be suppressed. As a result, transmission of illegal frames to the bus can be reduced. For this reason, the frame monitoring burden on the bus can be reduced.
  • the vehicular communication device may transmit information indicating the result of the determination relating to the conformity to the rule for the transmission frame to an external server device.
  • the server device can analyze the conformity to the rules of the frame, and it is possible to improve the security of the in-vehicle network system using the result of the analysis.
  • the vehicular communication device may record information indicating a result of the determination relating to the conformity to the rule for the transmission frame on a predetermined recording medium.
  • the information recorded on the recording medium can be analyzed, and the security of the in-vehicle network system can be improved using the analysis result.
  • the plurality of devices including the vehicle communication device may perform communication related to the frame according to a CAN (Controller Area Network) protocol. This makes it possible to reduce transmission of illegal frames to the bus in an in-vehicle network system that performs communication according to the CAN protocol.
  • CAN Controller Area Network
  • the in-vehicle network system is an in-vehicle network system including a plurality of devices that perform communication related to a frame via a bus, and at least one of the plurality of devices is connected to the bus.
  • a vehicle communication device wherein the vehicle communication device performs wired communication or communication between a first control unit that identifies a transmission frame that is a frame for transmission to the bus and the first control unit.
  • a second control unit capable of transmitting and receiving information related to the frame by wireless communication, and at least one of the first control unit and the second control unit determines whether the transmission frame is compatible with a rule It is an in-vehicle network system that performs This makes it possible to reduce the sending of illegal frames to the bus.
  • the vehicle communication method includes wired communication or wireless communication between a first control unit that identifies a transmission frame that is a frame for transmission to a bus and the first control unit.
  • a vehicle communication method used in an in-vehicle network system in which a plurality of devices including a vehicle communication device having a second control unit capable of transmitting and receiving information related to the frame performs communication related to the frame via the bus
  • at least one of the first control unit and the second control unit makes a determination on conformity to a rule for the transmission frame. The determination in this vehicle communication method is useful for reducing the sending of illegal frames to the bus.
  • an in-vehicle network system 10 including a vehicular communication device (head unit 100) that performs a vehicular communication method for determining conformity to a rule for a frame including a transmission frame transmitted to a bus.
  • a vehicular communication device head unit 100
  • a vehicular communication method for determining conformity to a rule for a frame including a transmission frame transmitted to a bus Will be described with reference to the drawings.
  • FIG. 1 is a diagram illustrating an overall configuration of an in-vehicle network system 10 according to the first embodiment.
  • the in-vehicle network system 10 is an example of a network communication system that performs communication according to a CAN protocol, and is a network communication system in an automobile on which various devices such as a control device and a sensor are mounted.
  • the in-vehicle network system 10 includes a plurality of devices that perform communication related to a frame via a bus, and uses a vehicle communication method. Specifically, as shown in FIG.
  • the in-vehicle network system 10 includes a bus 200, a head unit 100, and nodes connected to the bus such as ECUs such as ECUs 400 a to 400 d connected to various devices.
  • the The in-vehicle network system 10 may include a number of ECUs in addition to the head unit 100 and the ECUs 400a to 400d.
  • the head unit 100 and the ECUs 400a to 400d will be described for convenience.
  • the ECU is a device including, for example, a processor (microprocessor), a digital circuit such as a memory, an analog circuit, a communication circuit, and the like.
  • the memory is a ROM, a RAM, or the like, and can store a control program (computer program) executed by the processor.
  • the processor operates according to a control program (computer program)
  • the ECU realizes various functions.
  • the computer program is configured by combining a plurality of instruction codes indicating instructions for the processor in order to achieve a predetermined function.
  • the ECUs 400a to 400d are connected to the bus 200, and are connected to the engine 310, the brake 320, the door opening / closing sensor 330, and the window opening / closing sensor 340, respectively.
  • Each of the ECUs 400a to 400d acquires the state of a connected device (such as the engine 310) and periodically transmits a frame (a data frame described later) indicating the state to a network (that is, a bus).
  • the head unit 100 has a function of receiving frames transmitted from the ECUs 400a to 400d, displaying various states on a display (not shown), and presenting them to the user. Further, it has a function of generating a frame indicating each piece of information acquired by the head unit 100 and transmitting the frame to one or more ECUs via the bus 200. In addition, it has a function of determining whether or not it is an illegal frame (that is, a frame that does not conform to the rule) by determining whether or not the frame to be transmitted / received is conforming to the rule, and filtering the frame as necessary.
  • the head unit 100 may have functions such as car navigation, music playback, video playback, web page display, cooperation with a smartphone, and download and execution of an application program.
  • the head unit 100 is also a kind of ECU.
  • each ECU including the head unit 100 exchanges frames according to the CAN protocol.
  • Frames in the CAN protocol include a data frame, a remote frame, an overload frame, and an error frame.
  • the explanation will focus on the data frame and the error frame.
  • FIG. 2 is a diagram showing a data frame format defined by the CAN protocol.
  • a data frame in a standard ID format defined by the CAN protocol is shown.
  • the data frame includes an SOF (Start Of Frame), ID field, RTR (Remote Transmission Request), IDE (Identifier Extension), reserved bit “r”, DLC (Data Length Code), data field, CRC (Cyclic Redundancy Check) sequence.
  • SOF is composed of 1-bit dominant. When the bus is idle, it is recessive, and the start of frame transmission is notified by changing to dominant by SOF.
  • the ID field is a field for storing an ID (message ID) that is a value indicating the type of data, which is composed of 11 bits.
  • ID message ID
  • a frame having a small ID is designed to have a high priority in order to perform communication arbitration in this ID field.
  • RTR is a value for identifying a data frame and a remote frame, and is composed of a dominant 1 bit in the data frame.
  • IDE and “r” are both composed of dominant 1 bit.
  • DLC is composed of 4 bits and is a value indicating the length of the data field. IDE, “r”, and DLC are collectively referred to as a control field.
  • the data field is a value indicating the content of data to be transmitted composed of a maximum of 64 bits. The length can be adjusted every 8 bits.
  • the specification of the data to be sent is not defined by the CAN protocol, but is defined in the in-vehicle network system 10. Therefore, the specification depends on the vehicle type, manufacturer (manufacturer), and the like.
  • CRC sequence consists of 15 bits. It is calculated from the transmission values of the SOF, ID field, control field and data field.
  • CRC delimiter is a delimiter representing the end of a CRC sequence composed of 1-bit recessive.
  • the CRC sequence and the CRC delimiter are collectively referred to as a CRC field.
  • ACK slot consists of 1 bit.
  • the transmitting node performs transmission with the ACK slot being recessive.
  • the receiving node transmits an ACK slot as a dominant if reception is successful up to the CRC sequence. Since dominant is given priority over recessive, if the ACK slot is dominant after transmission, the transmitting node can confirm that any receiving node has received successfully.
  • ACK delimiter is a delimiter representing the end of ACK composed of 1-bit recessive.
  • EOF is composed of 7 bits recessive and indicates the end of the data frame.
  • FIG. 3 is a diagram illustrating an error frame format defined by the CAN protocol.
  • the error frame includes an error flag (primary), an error flag (secondary), and an error delimiter.
  • the error flag (primary) is used to notify other nodes of the occurrence of an error.
  • a node that detects an error continuously transmits a 6-bit dominant to notify other nodes of the occurrence of the error. This transmission violates the bit stuffing rule in the CAN protocol (the same value is not transmitted continuously for 6 bits or more), and causes the transmission of an error frame (secondary) from another node.
  • the error flag (secondary) is composed of a continuous 6-bit dominant used to notify other nodes of the occurrence of an error. All nodes that have received the error flag (primary) and detected a violation of the bit stuffing rule will transmit the error flag (secondary).
  • the error delimiter “DEL” is an 8-bit continuous recess and indicates the end of the error frame.
  • the head unit 100 is a vehicle communication device, such as a liquid crystal display (LCD) that is provided on an instrument panel (instrument) of an automobile and displays information to be visually recognized by a driver. It is a kind of ECU provided with a display device, input means for accepting a driver's operation, and the like.
  • LCD liquid crystal display
  • FIG. 4 is a configuration diagram of the head unit 100.
  • the head unit 100 includes a multimedia control unit 150 (first control unit) and a system control unit 110 (second control unit).
  • Each of the system control unit 110 and the multimedia control unit 150 is, for example, a chip (microchip) that is a packaged semiconductor integrated circuit, and these are configured to be able to communicate with each other by wire or wirelessly.
  • the system control unit 110 is mainly responsible for control related to cooperation with other in-vehicle devices (ECUs 400a to 400d), that is, control of communication on the bus 200.
  • the system control unit 110 includes a frame transmission / reception unit 111, a reception frame interpretation unit 112, a reception ID determination unit 113, a reception ID list storage unit 114, a frame determination unit 115, a determination rule storage unit 116, and inter-unit communication.
  • a processing unit 117 and a transmission frame generation unit 118 are included.
  • Each of these components is a functional component, and each function includes a communication circuit integrated in a chip, a memory, a processor (microprocessor) that executes a control program stored in the memory, and other circuits. It is realized by.
  • the frame transmission / reception unit 111 transmits / receives a frame according to the CAN protocol to / from the bus 200.
  • a frame is received bit by bit from the bus 200 and transferred to the received frame interpretation unit 112. Further, the contents of the frame notified from the transmission frame generation unit 118 are transmitted to the bus 200 bit by bit.
  • the received frame interpretation unit 112 receives a frame value from the frame transmission / reception unit 111 and interprets it so as to map it to each field in a frame format defined by the CAN protocol.
  • the reception frame interpretation unit 112 transfers the value determined as the ID field to the reception ID determination unit 113.
  • the reception frame interpretation unit 112 transfers the value of the ID field and the data field appearing after the ID field to the frame determination unit 115 according to the determination result notified from the reception ID determination unit 113, or the determination result After receiving, it is determined whether to stop receiving the frame (that is, stop the interpretation as the frame).
  • the received frame interpretation unit 112 transmits an error frame when determining that the frame does not conform to the CAN protocol, for example, the CRC value does not match or the dominant fixed item is recessive. Then, the transmission frame generation unit 118 is notified.
  • the received frame interpreter 112 receives an error frame, that is, when it interprets that the value in the received frame is an error frame, the received frame is discarded after that, that is, the frame is interpreted. Cancel. For example, when an error frame is interpreted from the middle of a data frame, the interpretation of the data frame is stopped, and no special processing is performed according to the data frame.
  • the reception ID determination unit 113 receives the value of the ID field notified from the reception frame interpretation unit 112, and in accordance with the list of message IDs held by the reception ID list holding unit 114, each field of the frames after the ID field is displayed. Judge whether to receive. The reception ID determination unit 113 notifies the reception frame interpretation unit 112 of this determination result.
  • the reception ID list holding unit 114 holds a reception ID list that is a list of IDs (message IDs) received by the head unit 100.
  • FIG. 5 shows an example of the reception ID list.
  • the frame determination unit 115 receives the value of the frame received from the received frame interpretation unit 112 or the value that is the content of the frame to be transmitted from the inter-unit communication processing unit 117. Then, the determination rule is acquired from the determination rule holding unit 116, and the transmission frame generation unit 118 or the inter-unit communication processing unit 117 is obtained according to the result of the frame determination process (system control unit frame determination process) based on the determination rule. It is determined whether or not to notify the frame value.
  • This frame determination process (system control unit frame determination process) is a process for determining conformity to a determination rule for a frame (for example, determining whether or not a frame is invalid). Detailed description will be made using this method.
  • the determination rule holding unit 116 holds a determination rule used for performing a frame determination process for a frame transmitted or received by the head unit 100.
  • This determination rule is a rule to which a frame exchanged on the bus in the in-vehicle network system 10 should comply.
  • FIG. 6 shows an example of the determination rule.
  • the inter-unit communication processing unit 117 performs communication processing between different units. That is, the inter-unit communication processing unit 117 exchanges information with the multimedia control unit 150 through wired or wireless communication (transmission or reception).
  • the transmission frame generation unit 118 configures an error frame according to the notification instructing transmission of the error frame from the reception frame interpretation unit 112, and notifies the frame transmission / reception unit 111 to transmit the error frame. Also, the transmission frame generation unit 118 generates a data frame to be transmitted using the ID, data, etc. received from the frame determination unit 115.
  • the multimedia control unit 150 mainly executes application programs for realizing various functions (for example, functions such as car navigation, music playback, video playback, web page display, and cooperation with a smartphone) in the head unit 100.
  • the multimedia control unit 150 includes an inter-unit communication processing unit 151, a frame determination unit 152, a determination rule holding unit 153, and an application execution unit 154.
  • Each of these components is a functional component, and each function is realized by a communication circuit integrated in a chip, a memory, a processor that executes a control program stored in the memory, and other circuits. .
  • the inter-unit communication processing unit 151 performs communication processing between different units. That is, the inter-unit communication processing unit 151 exchanges information with the system control unit 110 through wired or wireless communication (transmission or reception).
  • the frame determination unit 152 receives the value that is the content of the frame to be transmitted from the application execution unit 154 or the value of the frame received from the inter-unit communication processing unit 151. Then, the determination rule is acquired from the determination rule holding unit 153, and depending on the result of the frame determination process (multimedia control unit frame determination process) based on the determination rule, the application execution unit 154 or the inter-unit communication processing unit 151 It is determined whether or not to notify the frame value.
  • This frame determination process (multimedia control unit frame determination process) is a process for determining conformity of a frame to a determination rule (for example, determining whether or not a frame is invalid). Will be described in detail.
  • the determination rule holding unit 153 holds a determination rule used for performing a frame determination process on a frame transmitted or received by the head unit 100.
  • This determination rule is a rule to which a frame exchanged on the bus in the in-vehicle network system 10 should comply.
  • the determination rule held by the determination rule holding unit 153 of the multimedia control unit 150 and the determination rule held by the determination rule holding unit 116 of the system control unit 110 are determined by the frame determination unit 152 and the frame determination unit 115, respectively. It is sufficient to include at least information such as criteria and conditions necessary for the data, and they may be the same or different from each other.
  • the application execution unit 154 performs execution control of an application program for realizing various functions of the head unit 100 (for example, functions such as navigation, moving image reproduction, music reproduction, and Web browsing). For example, execution control of the application program is performed according to an operation by the driver (user) received through the input unit, and information to be presented to the user can be displayed on the display device, for example, by executing the application program.
  • the application program is downloaded via an external network other than the bus 200 and executed by the processor in an execution environment such as a predetermined operating system (OS) that operates on the processor of the multimedia control unit 150, for example. Operate.
  • OS operating system
  • FIG. 5 is a diagram illustrating an example of the reception ID list held in the reception ID list holding unit 114 of the head unit 100.
  • the reception ID list illustrated in the figure selectively receives a frame including a message ID whose ID (message ID) value is “1”, “2”, “3”, or “4”. Used for processing.
  • the head unit 100 receives a frame (message) whose message ID is “1” from the ECU 400 a connected to the engine 310, and receives a frame whose message ID is “2” from the ECU 400 b connected to the brake 320, A frame whose message ID is “3” is received from the ECU 400 c connected to the door opening / closing sensor 330, and a frame whose message ID is “4” is received from the ECU 400 d connected to the window opening / closing sensor 340.
  • a frame (message) whose message ID is “1” from the ECU 400 a connected to the engine 310
  • receives a frame whose message ID is “2” from the ECU 400 b connected to the brake 320 A frame whose message ID is “3” is received from the ECU 400 c connected to the door opening / closing sensor 330
  • a frame whose message ID is “4” is received from the ECU 400 d connected to the window opening / closing sensor 340.
  • FIG. 6 is a diagram illustrating an example of determination rules held by the determination rule holding unit 116 and the determination rule holding unit 153 of the head unit 100.
  • the determination rule illustrated in the figure indicates a rule (standard) to which the message (frame) of the message ID should comply for each ID (message ID).
  • This determination rule includes items such as transmission / reception type, data length, data range, period (ms), margin (ms), presence / absence of event, and frequency threshold (times / sec) for each message ID.
  • the transmission / reception type indicates that a reception frame, which is a frame transmitted by the head unit 100 from another ECU and acquired via the bus 200, is represented by a value of 1, and is used for transmission from the head unit 100 to the bus 200.
  • the transmission frame, which is a frame of, is indicated by a value of 0 to distinguish them.
  • the data length indicates a standard for the length (number of bytes) of the data field included in the frame (data frame).
  • the data range indicates a standard for a range of values that the data can take for each 1 byte of 1 byte to 8 bytes of the data field.
  • the symbol “**” in FIG. 6 indicates that any value can be taken.
  • the value connected with the symbol “,” indicates that any value can be taken, and the value connected with “ ⁇ ” indicates that any value within the range of the upper limit and the lower limit can be taken. Show.
  • the period indicates a reference for the transmission or reception period when a frame is repeatedly transmitted or received.
  • the period is represented by a value in milliseconds.
  • the symbol “-” in FIG. 6 indicates that there is no frame periodically transmitted or received as a frame of the corresponding message ID.
  • the margin indicates a deviation (allowable range of error) from the period allowed in the determination of conformity with respect to the period standard.
  • the margin is represented by a value in milliseconds.
  • the presence / absence of an event indicates a criterion as to whether or not there can be an event frame transmitted or received separately from the period as a frame of the corresponding message ID.
  • a value of 0 indicates that there is no event frame.
  • the frequency period indicates a reference for the frequency of frame transmission or reception when there can be an event frame transmitted or received as a frame of the corresponding message ID.
  • the frequency period is represented by the number of transmissions or receptions per second.
  • the example of FIG. 6 is merely an example of a determination rule, and the determination rule may have any content as long as it is a standard defined as a frame requirement.
  • the rules (references) of the data range are expressed in units of bytes, but are not necessarily expressed in units of bytes.
  • the rule item (reference) for the transmission frame and the rule item (reference) for the reception frame are not necessarily matched.
  • the determination rule may be expressed as a table, or may be expressed by a mathematical formula, a program (instruction sequence), or the like.
  • FIG. 7 is a configuration diagram of the ECU 400a.
  • the ECU 400a includes a frame transmission / reception unit 460, a reception frame interpretation unit 450, a reception ID determination unit 430, a reception ID list holding unit 440, a frame processing unit 410, a transmission frame generation unit 420, and a data acquisition unit 470. Consists of including. Each of these components is a functional component, and each function is realized by a communication circuit in the ECU 400a, a processor that executes a control program stored in a memory, a digital circuit, or the like.
  • the frame transmission / reception unit 460 transmits / receives a frame according to the CAN protocol to / from the bus 200.
  • a frame is received bit by bit from the bus 200 and transferred to the received frame interpretation unit 450. Further, the content of the frame notified from the transmission frame generation unit 420 is transmitted to the bus 200.
  • the received frame interpretation unit 450 receives the frame value from the frame transmission / reception unit 460 and interprets it so as to map it to each field in the frame format defined by the CAN protocol.
  • the value determined as the ID field is transferred to the reception ID determination unit 430.
  • the reception frame interpretation unit 450 transfers the value of the ID field and the data field appearing after the ID field to the frame processing unit 410 according to the determination result notified from the reception ID determination unit 430, or the determination result After receiving, it is determined whether to stop receiving the frame (that is, stop the interpretation as the frame).
  • the received frame interpretation unit 450 determines that the frame does not conform to the CAN protocol, the received frame interpretation unit 450 notifies the transmission frame generation unit 420 to transmit an error frame.
  • the received frame interpretation unit 450 receives an error frame, that is, when it interprets that the value in the received frame is an error frame, it discards the frame thereafter, that is, interprets the frame. Cancel.
  • the reception ID determination unit 430 receives the value of the ID field notified from the reception frame interpretation unit 450, and in accordance with the list of message IDs held by the reception ID list holding unit 440, each field of frames after that ID field is displayed. Judge whether to receive. The reception ID determination unit 430 notifies the reception frame interpretation unit 450 of the determination result.
  • the reception ID list holding unit 440 holds a reception ID list that is a list of IDs (message IDs) received by the ECU 400a.
  • FIG. 8 shows an example of the reception ID list.
  • the frame processing unit 410 performs processing related to different functions for each ECU according to the received frame data.
  • the ECU 400a connected to the engine 310 has a function of sounding an alarm sound when the door is open with a speed exceeding 30 km / h.
  • the ECU 400a has, for example, a speaker for sounding an alarm sound.
  • the frame processing unit 410 of the ECU 400a manages data received from other ECUs (for example, information indicating the state of the door), and processes to sound an alarm sound under a certain condition based on the speed obtained from the engine 310. I do.
  • the data acquisition unit 470 acquires data indicating the state of devices, sensors, and the like connected to the ECU 400a and notifies the transmission frame generation unit 420 of the data.
  • the transmission frame generation unit 420 configures an error frame according to the notification instructing transmission of the error frame notified from the reception frame interpretation unit 450, and notifies the frame transmission / reception unit 460 to transmit the error frame. Also, the transmission frame generation unit 420 configures a frame by attaching a predetermined message ID to the data value notified from the data acquisition unit 470 and notifies the frame transmission / reception unit 460 of the frame.
  • the ECUs 400b to 400d also have basically the same configuration as the ECU 400a described above.
  • the reception ID list held in the reception ID list holding unit 440 may have different contents for each ECU, but may have the same contents.
  • the processing contents of the frame processing unit 410 are different for each ECU.
  • the processing content of the frame processing unit 410 in the ECU 400c includes processing related to a function of sounding an alarm sound when the door is opened in a state where the brake is not applied.
  • the frame processing unit 410 in the ECU 400b and the ECU 400d does not perform special processing.
  • Each ECU may have functions other than those exemplified here. The contents of the frames transmitted by each of the ECUs 400a to 400d will be described later with reference to FIGS.
  • FIG. 8 is a diagram illustrating an example of a reception ID list held in each of ECU 400a, ECU 400b, ECU 400c, and ECU 400d.
  • the ID (message ID) value is any one of “1”, “2”, “3”, “4”, “5”, “6”, and “7”. Used to selectively receive and process a frame containing a message ID.
  • FIG. 9 is a diagram illustrating an example of an ID (message ID) and a data field (data) in a frame transmitted from the ECU 400 a connected to the engine 310.
  • the message ID of the frame transmitted by the ECU 400a is “1”.
  • the data represents a speed per hour (km / hour), takes a value ranging from a minimum of 0 (km / hour) to a maximum of 180 (km / hour), and the data length is 1 byte.
  • FIG. 9 illustrates the message ID and data corresponding to each frame sequentially transmitted from the ECU 400a from the upper row to the lower row, and shows a state where the vehicle is accelerated from 0 km / hour to 1 km / hour.
  • FIG. 10 is a diagram illustrating an example of an ID (message ID) and a data field (data) in a frame transmitted from the ECU 400b connected to the brake 320.
  • the message ID of the frame transmitted by the ECU 400b is “2”.
  • the data represents the degree of brake application as a percentage (%), and the data length is 1 byte. This ratio is 0 (%) when no brake is applied and 100 (%) when the brake is applied to the maximum.
  • FIG. 10 illustrates the message ID and data corresponding to each frame sequentially transmitted from the ECU 400b from the upper row to the lower row, and shows a state where the brake is gradually weakened from 100%.
  • FIG. 11 is a diagram illustrating an example of an ID (message ID) and a data field (data) in a frame transmitted from the ECU 400 c connected to the door opening / closing sensor 330.
  • the message ID of the frame transmitted by the ECU 400c is “3”.
  • the data represents the open / closed state of the door, and the data length is 1 byte.
  • the data value is “1” when the door is open and “0” when the door is closed.
  • FIG. 11 illustrates the message ID and data corresponding to each frame sequentially transmitted from the ECU 400c from the upper row to the lower row, and shows a state in which the door has gradually moved from the open state to the closed state. ing.
  • FIG. 12 is a diagram illustrating an example of an ID (message ID) and a data field (data) in a frame transmitted from the ECU 400d connected to the window opening / closing sensor 340.
  • the message ID of the frame transmitted by the ECU 400d is “4”.
  • the data represents the open / closed state of the window as a percentage (%), and the data length is 1 byte. This ratio is 0 (%) when the window is completely closed and 100 (%) when the window is fully open.
  • FIG. 12 illustrates the message ID and data corresponding to each frame sequentially transmitted from the ECU 400d from the upper row to the lower row, and shows a state where the window is gradually opened from the closed state.
  • FIG. 13 is a flowchart illustrating an example of frame reception processing in the head unit 100. The operation at the time of receiving a data frame in the head unit 100 will be described below with reference to FIG.
  • the head unit 100 receives a frame appearing on the bus 200 by the frame transmission / reception unit 111 of the system control unit 110 (step S1100).
  • the reception frame interpretation unit 112 and the reception ID determination unit 113 refer to the reception ID list held by the reception ID list holding unit 114 and include the ID to be received. By discriminating whether or not it is a frame, it is determined whether or not the frame should be continuously received (step S1200). If the received frame includes an ID not listed in the reception ID list, the frame reception process is terminated.
  • step S1300 When the ID of the frame received in step S1200 is included in the received ID list, the frame is received, and the frame determination unit 115 performs system control unit frame determination processing (step S1300).
  • the system control unit frame determination process S1300 will be described later with reference to FIG.
  • step S1400 When the determination result of the system control unit frame determination process is OK (normal) (that is, when it is determined that the received frame conforms to the determination rule) (step S1400), the system control is performed by the communication process between the units.
  • the unit 110 notifies the multimedia control unit 150 of the contents of the frame (reception frame) (step S1500). If the determination result of the system control unit frame determination process is not OK in step S1400, the system control unit 110 does not notify the multimedia control unit 150 of the frame and ends the frame reception process.
  • the frame determination unit 152 performs a multimedia control unit frame determination process (step S1600).
  • the multimedia control unit frame determination process S1600 will be described later with reference to FIG.
  • the frame determination unit 152 includes the application execution unit 154. Is notified of the contents of the received frame. Then, the application execution unit 154 executes application programs for realizing various functions in the head unit 100, and performs processing according to the contents of the received frame (step S1800).
  • the processing according to the content of the received frame includes, for example, calculation based on the content of the data field of the received frame, and output of a control signal based on the calculation result (for example, control for displaying information on the display device) Signal output). If the determination result of the multimedia control unit frame determination process is not OK in step S1700, the multimedia control unit 150 does not perform a process according to the content of the received frame by the application program.
  • FIG. 14 is a flowchart illustrating an example of frame transmission processing in the head unit 100.
  • the application program executed by the application execution unit 154 indicates the content of the frame (transmission frame) to be transmitted (for example, the content of the ID and data field) at regular intervals or as necessary for function implementation. It is assumed that the contents (instruction sequence) for specifying a transmission instruction are included.
  • the application program is executed by the application execution unit 154, and a data frame transmission instruction is issued by the application program (step S2100).
  • the frame determination unit 152 receives the notification of the content of the transmission frame specified from the application execution unit 154, and performs multimedia control unit frame determination processing (step S1). S1600).
  • the same multimedia control unit frame determination process S1600 as the above-described frame reception process (FIG. 13) is performed in the frame transmission process.
  • the multimedia control unit frame determination process when the determination result is OK (that is, when it is determined that the transmission frame conforms to the determination rule) (step S2200), the multimedia control is performed by the communication process between the units.
  • the unit 150 notifies the system control unit 110 of the contents of the frame (transmission frame) (step S2300). If the determination result of the multimedia control unit frame determination process is not OK in step S2200, the multimedia control unit 150 ends the frame transmission process without notifying the system control unit 110 of the contents of the transmission frame.
  • step S1300 when the system control unit 110 receives notification of the contents of the transmission frame, the frame determination unit 115 performs system control unit frame determination processing (step S1300).
  • system control unit frame determination processing it is assumed that the same system control unit frame determination process S1300 as the above-described frame reception process (FIG. 13) is performed in the frame transmission process.
  • the transmission frame generation unit 118 transmits the content of the transmission frame.
  • a transmission frame (data frame) is generated based on (the content specified by the application program in the multimedia control unit 150) (step S2500).
  • the transmission / reception unit 111 transmits the transmission frame generated by the transmission frame generation unit 118 to the bus 200, thereby transmitting the data frame (step S2600).
  • the system control unit 110 does not send the transmission frame onto the bus 200. That is, when the transmission frame conforms to the rule, the transmission frame is sent out on the bus by the head unit 100, and when the transmission frame does not conform to the rule (non-conformity), the transmission frame is transmitted onto the bus. Sending is suppressed.
  • FIG. 15 is a flowchart illustrating an example of a frame determination process (system control unit frame determination process) in the system control unit 110.
  • system control unit frame determination processing S1300 by the frame determination unit 115 of the system control unit 110 will be described with reference to FIG.
  • the system control unit frame determination process S1300 with reference to the determination rule (see FIG. 6) held by the determination rule holding unit 116, the conformity of the frame to the determination rule is determined. If the frame matches the determination rule, the determination is made. The result is OK (normal), and if it does not match, the determination result is NG (illegal).
  • OK normal
  • NG illegal
  • the frame determination unit 115 determines whether the determination target is a transmission frame or a reception frame (step S1301). If the determination target is a transmission frame, the determination result is OK and the system control unit frame determination process ends (step S1302). In this case, the process proceeds to step S1303.
  • the frame determination unit 115 determines that the determination target is a reception frame when notified of data (reception frame) from the reception frame interpretation unit 112, and receives data (contents of the transmission frame) from the inter-unit communication processing unit 117. ) Is determined, it is determined that the determination target is a transmission frame.
  • step S1303 the frame determination unit 115 confirms whether an ID that matches the ID of the determination target frame is described in the determination rule (step S1303). If it is described, each item of the determination rule related to the ID is displayed. Obtain (step S1304). If the ID that matches the ID of the determination target frame is not described in the determination rule, the determination result is set to NG (step S1306), and the system control unit frame determination process is ended.
  • the frame determination unit 115 determines whether or not the determination target frame conforms to the criteria of the items of the data length and data range of the determination rule acquired in step S1304 (step S1305). If the determination target frame does not meet either the data length criterion or the data range criterion, the frame determination unit 115 sets the determination result to NG (step S1306) and ends the system control unit frame determination process.
  • the frame determination unit 115 When it is determined in step S1305 that the determination target frame conforms to both the data length criterion and the data range criterion, the frame determination unit 115 periodically transmits or receives the determination target frame. It is determined whether or not it is a frame to be processed (step S1307). Specifically, when the period item of the determination rule does not represent that there is no frame that is periodically transmitted or received, and the event presence / absence item indicates that there is no event frame It is determined that the frame is periodically transmitted or received, and in other cases, it is determined that the frame is not periodically transmitted or received.
  • the frame determination unit 115 determines that the frame is periodically transmitted or received, the frame determination unit 115 performs a frame period determination process (step S1330), and when it is determined that the frame is not periodically transmitted or received, Frame frequency determination processing is performed (step S1350).
  • the frame period determination process S1330 and the frame frequency determination process S1350 will be described later.
  • FIG. 16 is a flowchart illustrating an example of a frame determination process (multimedia control unit frame determination process) in the multimedia control unit 150.
  • multimedia control unit frame determination processing S1600 by the frame determination unit 152 of the multimedia control unit 150 will be described with reference to FIG.
  • the multimedia control unit frame determination processing S1600 with reference to the determination rule held by the determination rule storage unit 153 (see FIG. 6), the conformity of the frame to the determination rule is determined, and if the frame conforms to the determination rule.
  • the determination result is OK (normal), and if it does not match, the determination result is NG (unauthorized).
  • the frame determination unit 152 determines whether the determination target is a transmission frame or a reception frame (step S1601). If the determination target is a reception frame, the determination result is OK and the multimedia control unit frame determination process ends (step S1602). In the case of a frame, the process proceeds to step S1303. In addition, when the data (reception frame) is notified from the inter-unit communication processing unit 151, the frame determination unit 152 determines that the determination target is the reception frame, and the data (content of the transmission frame) from the application execution unit 154. Is determined that the determination target is a transmission frame.
  • steps S1303, S1304, S1305, S1306, S1307, S1330, and S1350 in the multimedia control unit frame determination process S1600 have the same contents as the above-described system control unit frame determination process S1300 (FIG. 15), and the description thereof is omitted here. To do.
  • FIG. 17 is a flowchart illustrating an example of the frame period determination process S1330.
  • the frame determination unit that is, the frame determination unit 115 or the frame determination unit 152 executes the frame period determination process S1330.
  • the frame period determination process S1330 is a process for determining whether or not the determination target frame conforms to a criterion related to periodicity, that is, whether or not it is transmitted or received at a correct period.
  • the frame determination unit first acquires the current time (step S1331).
  • the frame determination unit 115 acquires the current time using a clocking mechanism (such as a timer) in the system control unit 110, and the frame determination unit 152 uses the clocking mechanism (such as a timer) in the multimedia control unit 150 to Get the time.
  • each frame determination unit may acquire the current time from a time measuring mechanism (such as a timer) that is a circuit different from the system control unit 110 and the multimedia control unit 150 in the head unit 100.
  • the frame determination unit calculates the difference between the acquired current time and the stored reference time (step S1332). Since the reference time is not stored when the frame period determination process S1330 is executed for the first time, for example, the determination result is exceptionally OK and the current time is stored as the reference time.
  • the frame determination unit determines whether or not the difference between the current time and the reference time (referred to as difference time) is within the range of the cycle ⁇ margin (step S1333). For this determination, a period and a margin corresponding to the ID of the frame to be determined by the frame determination unit are used in the determination rule (see FIG. 6).
  • step S1333 If it is determined in step S1333 that the difference time is within the range of the cycle ⁇ margin, the frame determination unit sets the determination result to OK (normal) (step S1334) and uses the current time acquired in step S1331. The reference time is updated (step S1337), and the frame period determination process S1330 ends.
  • step S1333 If it is determined in step S1333 that the difference time is not within the range of the cycle ⁇ margin, the frame determination unit sets the determination result to NG (illegal) (step S1335), and whether or not the difference time is greater than the cycle + margin. Is discriminated (step S1336). If it is determined in step S1336 that the difference time is not greater than the period + margin, the frame determination unit ends the frame period determination process S1330. If it is determined that the difference time is greater than the cycle + margin, the frame determination unit updates the reference time using the current time acquired in step S1331 (step S1337), and ends the frame cycle determination process S1330.
  • FIG. 18 is a flowchart illustrating an example of the frame frequency determination process S1350.
  • the frame determination unit that is, the frame determination unit 115 or the frame determination unit 152 executes the frame frequency determination process S1350.
  • the frame frequency determination process S1350 is a process for determining whether or not the determination target frame conforms to a frequency-related standard, that is, whether or not the frame is transmitted or received at a correct frequency (frequency less than the frequency threshold). is there.
  • the frame determination unit first determines whether or not the frequency confirmation timer has exceeded a set time (here, 1 second) (step S1351).
  • the frame determination unit 115 functions as a frequency confirmation timer using a clocking mechanism (such as a timer) in the system control unit 110
  • the frame determination unit 152 uses a clocking mechanism (such as a timer) in the multimedia control unit 150. It functions as a frequency check timer.
  • each frame determination unit may realize the function of the frequency check timer using a clocking mechanism (such as a timer) that is a circuit different from the system control unit 110 and the multimedia control unit 150 in the head unit 100.
  • the frame determination unit clears (resets) the frequency confirmation timer and clears the frequency counter as a variable for counting the frequency (step S1352).
  • the frame determination unit increments (increases by 1) the frequency counter when the frequency confirmation timer does not exceed the set time at step S1351 and when the frequency confirmation timer is reset at step S1352 (step S1353). Then, the frame determination unit determines whether the frequency counter is smaller than the frequency threshold corresponding to the ID of the frame to be determined by the frame determination unit in the determination rule (see FIG. 6) (step S1354).
  • step S1354 When it is determined in step S1354 that the frequency counter is smaller than the frequency threshold, the frame determination unit sets the determination result to OK (normal) (step S1355), and ends the frame frequency determination process S1350.
  • step S1354 If it is determined in step S1354 that the frequency counter is smaller than the frequency threshold, the frame determination unit sets the determination result to NG (invalid) (step S1356), and ends the frame frequency determination process S1350.
  • a plurality of rule items such as the frequency and period of frames to be transmitted / received are used to determine whether or not the frame conforms to a predetermined rule, and the case does not conform
  • the subsequent processing is filtered (suppressed). For this reason, transmission of an illegal frame to the bus 200 by an unauthorized application program is reduced.
  • transmission is performed by each frame determination unit of the system control unit 110 which is a chip mainly responsible for communication using the bus 200 and the multimedia control unit 150 which is a chip mainly responsible for control of execution of application programs and the like.
  • the determination of the frame and the received frame is shared, and it is determined whether or not the frame conforms to the rule. This reduces the processing load because frames that do not conform to the rule are not transmitted between chips.
  • FIG. 19 shows a flowchart of the frame period determination processing S3330.
  • the frame determination unit (that is, the frame determination unit 115 or the frame determination unit 152) executes a frame period determination process S3330 instead of the above-described frame period determination process S1330.
  • steps S1331 to S1336 in the frame period determination process S3330 have the same contents as the above-described frame period determination process S1330 (FIG. 17), and description thereof will be omitted as appropriate.
  • step S1333 If it is determined in step S1333 that the difference time is within the range of the cycle ⁇ margin, the frame determination unit sets the determination result to OK (normal) (step S1334), and the time when the determination target frame is received is the latest. The received time is stored (step S3331).
  • the frame determination unit determines whether or not the difference time is greater than the period + margin (step S1336). If it is determined in step S1336 that the difference time is not greater than the period + margin, the frame determination unit ends the frame period determination process S3330. If it is determined that the difference time is greater than the period + margin, the frame determination unit updates the reference time using the latest reception time stored in step S3331 (step S3332). In step S3332, the reference time is updated using the latest (last) reception time when a plurality of frames are received within a time range in which the determination result is OK. Instead, for example, the determination result is The reference time may be updated using the first reception time when a plurality of frames are received within the time range in which the time is OK. The reference time may be updated using the reception time closest to the time obtained by adding the period to the reference time before the update among the reception times of the plurality of frames.
  • the frame determination unit stores the reference time + cycle as the latest reception time (step S3333), and ends the frame cycle determination process S3330.
  • any time within the range of reference time + cycle ⁇ margin to reference time + cycle + margin may be saved as the latest reception time instead of the reference time + cycle.
  • the determination result of all the frames within the range of the reference time + cycle ⁇ margin is OK, so that it is possible to prevent the frame conforming to the rule from being erroneously determined to be illegal. Can do.
  • FIG. 20 is a flowchart showing a system control unit frame determination process S4300 as a modification of the system control unit frame determination process S1300. Note that steps S1301 to S1306 in the system control unit frame determination process S4300 have the same contents as the system control unit frame determination process S1300 (FIG. 15) described above, and a description thereof will be omitted here.
  • step S1305 If it is determined in step S1305 that the determination target frame conforms to both the data length criterion and the data range criterion, the frame determination unit 115 sets the determination result to OK (normal) (step S4301). ), The system control unit frame determination process ends.
  • the system control unit frame determination process S4300 does not include the frame period determination process S1330 and the frame frequency determination process S1350 in the system control unit frame determination process S1300 (FIG. 15).
  • FIG. 21 is a flowchart showing multimedia control unit frame determination processing S4600 as a modification of multimedia control unit frame determination processing S1600. Note that steps S1303 to S1307, S1601, S1602, S1330, and S1350 in the multimedia control unit frame determination process S4600 have the same contents as the above-described multimedia control unit frame determination process S1600 (FIG. 16), and thus description thereof will be omitted as appropriate. To do.
  • the frame determination unit 152 confirms whether an ID that matches the ID of the determination target frame is described in the determination rule (see FIG. 6) (step S1303). Is acquired (step S1304). If the ID that matches the ID of the frame to be determined is not described in the determination rule, the determination result is set to NG (step S1306), and the multimedia control unit frame determination process ends.
  • the frame determination unit 152 determines whether the determination target is a transmission frame or a reception frame (step S1601). If the determination target is a transmission frame, the determination target is based on the criteria of the data length and data range of the determination rule acquired in step S1304. It is determined whether or not these frames are compatible (step S1305). In addition, when the data (reception frame) is notified from the inter-unit communication processing unit 151, the frame determination unit 152 determines that the determination target is the reception frame, and the data (content of the transmission frame) from the application execution unit 154. Is determined that the determination target is a transmission frame. In step S1305, if the determination target frame does not meet either the data length criterion or the data range criterion, the frame determination unit 152 sets the determination result to NG (step S1306), and performs multimedia control unit frame determination processing. Finish.
  • step S1305 If it is determined in step S1305 that the determination target frame conforms to both the data length criterion and the data range criterion, or if it is determined as a received frame in step S1601, the frame determination unit 152 It is determined whether or not the determination target frame is a frame that is periodically transmitted or received (step S1307). When it is determined that the frame is a frame that is periodically transmitted or received, the frame determination unit 152 performs a frame cycle determination process (step S1330), and when it is determined that the frame is not a frame that is periodically transmitted or received, Frame frequency determination processing is performed (step S1350).
  • any one of the frame period determination process S1330 and the frame frequency determination process S1350 is targeted for not only the transmission frame but also the reception frame. Executed. That is, in the second modification as compared with the first embodiment, the sharing of a part of processing (frame period determination processing S1330, frame frequency determination processing S1350, etc.) for the received frame is transferred from the system control unit 110 to the multimedia control unit 150. It has moved.
  • This modification 2 is effective, for example, when the multimedia control unit has higher performance than the system control unit. As described above, it is useful to distribute the load of the determination process of the conformity to the rule of the frame according to the processing capability of each control unit.
  • FIG. 22 is a flowchart showing a system control unit frame determination process S5300 as another modification of the system control unit frame determination process S1300. Note that steps S1301 to S1304, S1306, S1307, S1330, and S1350 in the system control unit frame determination process S5300 have the same contents as the above-described system control unit frame determination process S1300 (FIG. 15), and thus description thereof will be omitted as appropriate. .
  • the frame determination unit 115 determines whether or not the determination target frame is a frame that is periodically transmitted or received (step S1307).
  • step S1305 for determining whether or not the determination target frame conforms to the data length and data range criteria of the determination rule in system control unit frame determination processing S1300 (FIG. 15). Does not include.
  • FIG. 23 is a flowchart showing multimedia control unit frame determination processing S5600 as another modification of multimedia control unit frame determination processing S1600. Note that steps S1303 to S1307, S1601, S1602, S1330, and S1350 in the multimedia control unit frame determination processing S5600 are the same as those in the above-described multimedia control unit frame determination processing S1600 (FIG. 16), and thus description thereof will be omitted as appropriate. To do.
  • the frame determination unit 152 confirms whether an ID that matches the ID of the determination target frame is described in the determination rule (see FIG. 6) (step S1303). Is acquired (step S1304). If the ID that matches the ID of the frame to be determined is not described in the determination rule, the determination result is set to NG (step S1306), and the multimedia control unit frame determination process ends.
  • step S1304 the frame determination unit 152 determines whether or not the determination target frame conforms to the criteria of the items of data length and data range of the determination rule (step S1305). In step S1305, if the determination target frame does not meet either the data length criterion or the data range criterion, the frame determination unit 152 sets the determination result to NG (step S1306), and performs multimedia control unit frame determination processing. Finish.
  • step S1305 If it is determined in step S1305 that the determination target frame conforms to both the data length criterion and the data range criterion, the frame determination unit 152 determines whether the determination target is a transmission frame or a reception frame. (Step S1601). If the frame is not a transmission frame but a reception frame, the frame determination unit 152 sets the determination result to OK and ends the multimedia control unit frame determination process (step S1602). If the frame is a transmission frame, the frame determination unit 152 proceeds to step S1307.
  • the multimedia control unit frame determination process S5600 not only the transmission frame but also the reception frame is targeted, and the frame to be determined based on the data length and data range criteria of the determination rule Step S1305 for determining whether or not is compatible is executed. That is, in the third modification as compared with the first embodiment, the sharing of a part of processing (step S1305) for the received frame is transferred from the system control unit 110 to the multimedia control unit 150.
  • the third modification is effective, for example, when the multimedia control unit has higher performance than the system control unit.
  • the system control unit 110 that processes the received frame from the bus 200 first determines the conformity to the rule item (standard) related to the period or frequency of the received frame. I do. For this reason, the determination can be performed with high accuracy without being affected by a delay or the like due to transmission between both units. As described above, it is useful to appropriately distribute the load of the determination process of the conformity to the frame rule in accordance with the positional relationship and the processing capability of each control unit with the bus 200.
  • a program stored in a memory is executed by a processor in a chip that is a multimedia control unit 150 (first control unit) of the head unit 100, whereby a first predetermined rule (for example, for a transmission frame) A function as a first determination unit that determines whether the data length, the data range, etc., the period, the frequency, etc.) are met or not is realized.
  • a first predetermined rule for example, for a transmission frame
  • a function as a first determination unit that determines whether the data length, the data range, etc., the period, the frequency, etc.
  • a program stored in a memory is executed by a processor in a chip which is a system control unit 110 (second control unit) of the head unit 100, so that the received frame conforms to a second predetermined rule (for example, cycle, frequency, etc.).
  • a second predetermined rule for example, cycle, frequency, etc.
  • the received frame is conforming to the third predetermined rule (for example, data length, data range, etc.) or not by executing the program stored in the memory in the chip which is the multimedia control unit 150 by the processor.
  • the first determination unit and the third determination unit are components of the frame determination unit 152, and the second determination unit is a component of the frame determination unit 115.
  • a vehicle communication device that performs a vehicle communication method for determining conformity to a rule for a frame including a transmission frame to be transmitted to a bus and storing the determination result as a log ( An in-vehicle network system including a head unit 2100) will be described with reference to the drawings.
  • the in-vehicle network system according to the present embodiment is obtained by replacing the head unit 100 of the in-vehicle network system 10 shown in the first embodiment with a head unit 2100.
  • the head unit 2100 is a vehicle communication device similar to the head unit 100.
  • the head unit 2100 is provided on an instrument panel or the like of an automobile, and displays a display device for displaying information to be visually recognized by the driver. It is a kind of ECU provided with a means.
  • FIG. 24 is a configuration diagram of the head unit 2100.
  • the head unit 2100 includes a system control unit 2110 and a multimedia control unit 2150.
  • symbol is attached
  • the system control unit 2110 is a part of the system control unit 110 shown in the first embodiment, and the multimedia control unit 2150 is a part of the multimedia control unit 150 shown in the first embodiment. Is.
  • the system control unit 2110 mainly controls communication on the bus 200, and includes a frame transmission / reception unit 111, a reception frame interpretation unit 112, a reception ID determination unit 113, a reception ID list holding unit 114, and a frame determination unit 2115. And a determination rule holding unit 116, an inter-unit communication processing unit 117, a transmission frame generation unit 118, and a determination result holding unit 2119.
  • the frame determination unit 2115 receives the value of the frame received from the received frame interpretation unit 112 or the value that is the content of the frame to be transmitted from the inter-unit communication processing unit 117. Then, the determination rule is acquired from the determination rule holding unit 116, and information on the result of the frame determination process (system control unit frame determination process) based on the determination rule is notified to the determination result holding unit 2119.
  • the contents of the system control unit frame determination process are the same as those shown in the first embodiment (see FIG. 15).
  • the frame determination unit 2115 notifies the transmission frame generation unit 118 or the inter-unit communication processing unit 117 of the frame value regardless of the result of the system control unit frame determination process.
  • the determination result holding unit 2119 is realized including a storage medium such as a memory, is notified of information about the result of the frame determination process from the frame determination unit 2115, and stores the information as a log in the storage medium.
  • the information related to the result of the frame determination process is information including the content of the determination target frame and the determination result.
  • the multimedia control unit 2150 is mainly responsible for application program execution control processing, and includes an inter-unit communication processing unit 151, a frame determination unit 2152, a determination rule storage unit 153, an application execution unit 154, and a determination result storage. A portion 2155 is included.
  • the frame determination unit 2152 receives the value that is the content of the frame to be transmitted from the application execution unit 154 or the value of the frame received from the inter-unit communication processing unit 151. Then, the determination rule is acquired from the determination rule holding unit 153, and information on the result of the frame determination process (multimedia control unit frame determination process) based on the determination rule is notified to the determination result holding unit 2155.
  • the contents of the multimedia control unit frame determination process are the same as those shown in the first embodiment (see FIG. 16).
  • the frame determination unit 2152 notifies the application execution unit 154 or the inter-unit communication processing unit 151 of the frame value regardless of the result of the multimedia control unit frame determination process.
  • the determination result holding unit 2155 is realized including a storage medium such as a memory, and is notified of information related to the result of the frame determination process (information including the content of the determination target frame and the determination result) from the frame determination unit 2152. Information is stored in a storage medium as a log.
  • FIG. 25 is a flowchart illustrating an example of frame reception processing in the head unit 2100.
  • the frame reception process in the head unit 2100 includes the same processes as steps S1100, S1200, S1300, S1500, S1600, and S1800 of the frame reception process (see FIG. 13) in the head unit 100. Description of the same processing is omitted as appropriate.
  • the frame determination unit 2115 in the system control unit 2110 of the head unit 2100 stores information about the determination result in the determination result holding unit 2119 (information including the content and the determination result in the determination target frame). ) And stored as a log (step S11001). Subsequently, the system control unit 2110 notifies the multimedia control unit 2150 of the contents of the frame (reception frame) through communication processing between the units (step S1500).
  • the frame determination unit 2152 in the multimedia control unit 2150 of the head unit 2100 stores information related to the determination result (the contents of the determination target frame and the determination result) in the determination result holding unit 2155. And information is saved as a log (step S11002). Subsequently, the frame determination unit 2152 notifies the application execution unit 154 of the contents of the received frame.
  • FIG. 26 is a flowchart illustrating an example of a frame transmission process in the head unit 2100.
  • the frame transmission process in the head unit 2100 includes the same processes as steps S2100, S1600, S2300, S1300, S2500, and S2600 of the frame transmission process in the head unit 100 (see FIG. 14). Description of the same processing is omitted as appropriate.
  • the frame determination unit 2152 in the multimedia control unit 2150 of the head unit 2100 stores information about the determination result (the contents of the determination target frame and the determination result) in the determination result holding unit 2155. Information) is stored as a log (step S11003). Subsequently, the multimedia control unit 2150 notifies the content of the frame (transmission frame) to the system control unit 2110 through communication processing between units (step S2300).
  • the frame determination unit 2115 in the system control unit 2110 of the head unit 2100 stores information about the determination result (the contents of the determination result frame and the determination result) in the determination result holding unit 2119. Information) is stored as a log (step S11004). Subsequently, the transmission frame generation unit 118 generates a transmission frame (data frame) based on the content of the transmission frame (the content specified by the application program in the multimedia control unit 2150) (step S2500).
  • the conformity to a plurality of rule items (references) such as frequency and period is determined for frames to be transmitted and received, and the determination result is stored as a log. deep.
  • each criterion of the determination rule can be reviewed, and the accuracy of frame determination can be improved.
  • the result of reviewing each criterion of the determination rule can be used for manufacturing a device or the like constituting the in-vehicle network system, or for updating data, a program, or the like used in the device.
  • FIG. 27 is a diagram showing the overall configuration of the network system 30 according to the present invention.
  • the network system 30 includes an in-vehicle network system 10a mounted on a vehicle and a server 3500 located outside the vehicle.
  • the in-vehicle network system 10a is a partial modification of the in-vehicle network system 10, and includes a bus 200, a head unit 3100, and nodes connected to the bus such as ECUs such as ECUs 400a to 400d connected to various devices. Consists of. Among the components of the in-vehicle network system 10a, the same components as those of the in-vehicle network system 10 (see FIG. 1) are denoted by the same reference numerals, and description thereof is omitted. In the in-vehicle network system 10a, each ECU including the head unit 3100 exchanges frames according to the CAN protocol.
  • the head unit 3100 is a vehicle communication device similar to the head unit 100.
  • the head unit 3100 is provided on a vehicle instrument panel or the like, and is a display device that displays information to be visually recognized by the driver. It is a kind of ECU provided with a means.
  • the head unit 3100 has a function of receiving frames transmitted from the ECUs 400a to 400d, displaying various states on a display (not shown), and presenting them to the user. Further, it has a function of generating a frame indicating each piece of information acquired by the head unit 3100 and transmitting the frame to one or more ECUs via the bus 200.
  • the head unit 3100 is also a kind of ECU.
  • the server 3500 is a device (server device) that can communicate with the head unit 3100, and is a computer having a function of receiving information from the head unit 3100 and collecting information about the frame determination result.
  • FIG. 28 is a configuration diagram of the head unit 3100.
  • the head unit 3100 includes a system control unit 3110, a multimedia control unit 3150, and an external communication control unit 3170.
  • symbol is attached
  • the system control unit 3110 is a partial modification of the system control unit 110 shown in the first embodiment
  • the multimedia control unit 3150 is a partial modification of the multimedia control unit 150 shown in the first embodiment. Is.
  • the system control unit 3110 mainly controls communication on the bus 200, and includes a frame transmission / reception unit 111, a reception frame interpretation unit 112, a reception ID determination unit 113, a reception ID list holding unit 114, and a frame determination unit 3115. And a determination rule holding unit 116, an inter-unit communication processing unit 117, and a transmission frame generating unit 118.
  • the frame determination unit 3115 receives the value of the frame received from the received frame interpretation unit 112 or the value that is the content of the frame to be transmitted from the inter-unit communication processing unit 117. Then, the determination rule is acquired from the determination rule holding unit 116, and information related to the result of the frame determination process (system control unit frame determination process) based on the determination rule is notified to the inter-unit communication processing unit 117, and the external communication control unit 3170 is obtained. To be notified.
  • the contents of the system control unit frame determination process are the same as those shown in the first embodiment (see FIG. 15).
  • the frame determination unit 3115 notifies the transmission frame generation unit 118 or the inter-unit communication processing unit 117 of the frame value regardless of the result of the system control unit frame determination process.
  • the multimedia control unit 3150 mainly performs execution control processing of the application program, and includes an inter-unit communication processing unit 151, a frame determination unit 3152, a determination rule holding unit 153, and an application execution unit 154. Is done.
  • the frame determination unit 3152 receives the value that is the content of the frame to be transmitted from the application execution unit 154 or the value of the frame received from the inter-unit communication processing unit 151. Then, the determination rule is acquired from the determination rule holding unit 153, and information related to the result of the frame determination process (multimedia control unit frame determination process) based on the determination rule is notified to the inter-unit communication processing unit 151, and the external communication control unit 3170 is notified.
  • the contents of the multimedia control unit frame determination process are the same as those shown in the first embodiment (see FIG. 16).
  • the frame determination unit 3152 notifies the application execution unit 154 or the inter-unit communication processing unit 151 of the frame value regardless of the result of the multimedia control unit frame determination process.
  • the external communication control unit 3170 is a chip different from the system control unit 3110 and the multimedia control unit 3150, for example, and includes an inter-unit communication processing unit 3171 and an external communication processing unit 3172 as functional components. Each of these functional components is realized by a communication circuit integrated on a chip, a memory, a processor that executes a control program stored in the memory, and other circuits.
  • the inter-unit communication processing unit 3171 performs communication processing between different units. That is, the inter-unit communication processing unit 117 exchanges information with the system control unit 3110 or the multimedia control unit 3150 by wired or wireless communication.
  • the external communication processing unit 3172 has a function for wirelessly communicating with the server 3500 outside the vehicle, and notifies (transmits) to the server 3500 when information about the frame determination result is notified from the inter-unit communication processing unit 3171. .
  • FIG. 29 is a flowchart illustrating an example of frame reception processing in the head unit 3100.
  • the frame reception process in the head unit 3100 includes the same processes as steps S1100, S1200, S1300, S1500, S1600, and S1800 of the frame reception process (see FIG. 13) in the head unit 100. Description of the same processing is omitted as appropriate.
  • the frame determination unit 3115 in the system control unit 3110 of the head unit 3100 transmits information related to the determination result (information including the content and the determination result in the determination target frame) between the units.
  • the external communication control unit 3170 is notified via the processing unit 117 (step S21001).
  • the external communication control unit 3170 notifies the server of information related to the determination result by the external communication processing unit 3172 (step S21002).
  • the system control unit 3110 notifies the multimedia control unit 3150 of the contents of the frame (reception frame) through communication processing between units (step S1500).
  • the frame determination unit 3152 in the multimedia control unit 3150 of the head unit 3100 provides information on the determination result (information including the content of the determination target frame and the determination result). Then, the external communication control unit 3170 is notified via the inter-unit communication processing unit 151 (step S21003). In response to this, the external communication control unit 3170 notifies the server of information related to the determination result by the external communication processing unit 3172 (step S21004). Subsequently, the frame determination unit 3152 notifies the application execution unit 154 of the contents of the received frame.
  • FIG. 30 is a flowchart illustrating an example of a frame transmission process in the head unit 3100.
  • the frame transmission process in the head unit 3100 includes the same processes as steps S2100, S1600, S2300, S1300, S2500, and S2600 of the frame transmission process in the head unit 100 (see FIG. 14). Description of the same processing is omitted as appropriate.
  • the frame determination unit 3152 in the multimedia control unit 3150 of the head unit 3100 receives information about the determination result (information including the content of the determination target frame and the determination result).
  • the external communication control unit 3170 is notified via the inter-communication processing unit 151 (step S21003).
  • the external communication control unit 3170 notifies the server of information related to the determination result by the external communication processing unit 3172 (step S21004).
  • the multimedia control unit 3150 notifies the system control unit 3110 of the contents of the frame (transmission frame) through communication processing between units (step S2300).
  • the frame determination unit 3115 in the system control unit 3110 of the head unit 3100 displays information related to the determination result (information including the contents of the determination result frame and the determination result).
  • the external communication control unit 3170 is notified via the inter-communication processing unit 117 (step S21001).
  • the external communication control unit 3170 notifies the server of information related to the determination result by the external communication processing unit 3172 (step S21002).
  • the transmission frame generation unit 118 generates a transmission frame (data frame) based on the content of the transmission frame (the content specified by the application program in the multimedia control unit 3150) (step S2500).
  • the head unit 3100 of the in-vehicle network system 10a determines conformity to a plurality of rule items (references) such as frequency and period with respect to a frame to be transmitted and received, and sends information related to the determination result to the server 3500. Send to.
  • the server 3500 collects and analyzes information related to the result of this determination, for example, each criterion of the determination rule can be reviewed, and the accuracy of frame determination can be improved.
  • the result of reviewing each criterion of the determination rule can be used for manufacturing a device or the like constituting the in-vehicle network system, or for updating data, a program, or the like used in the device.
  • Embodiments 1 to 3 have been described as examples of the technology according to the present invention.
  • the technology according to the present invention is not limited to this, and can also be applied to embodiments in which changes, replacements, additions, omissions, etc. are made as appropriate.
  • the following modifications are also included in one embodiment of the present invention.
  • the data frame in the CAN protocol is described in the standard ID format, but it may be combined in the extended ID format.
  • the extended ID format the base ID at the ID position in the standard ID format and the extended ID are combined to represent an ID (message ID) with 29 bits. Therefore, this 29-bit ID is used as the ID in the above embodiment. (Message ID) may be handled.
  • one margin is used in the frame period determination process, but a plurality of margins may be provided. Also, the determination results using each margin may be treated the same, or the determination results using each margin may be weighted. Further, the processing after the determination result may be changed for each margin. For example, the determination result of the frame that falls within the range of the first margin is left as a log, and the determination result of the frame that falls within the range of the second margin is used for filtering. You may do it.
  • the margin value in the determination rule is not limited to a fixed value, and may be a calculation formula. Further, the margin value may be dynamically changed according to the total number of frame processes for all IDs.
  • one threshold (frequency threshold) is used in the frame frequency determination process, but a plurality of thresholds may be used.
  • the determination results using each threshold may be treated the same, or the determination results using each threshold may be weighted.
  • the processing after the determination result may be changed for each threshold. For example, the determination result of the frame using the first threshold is only left as a log, the determination result of the frame corresponding to the second threshold is used for filtering, and the frame transmission / reception processing is suppressed when it is determined to be illegal. good.
  • the frequency threshold in the determination rule is not limited to a fixed value, and may be a calculation formula. Further, the frequency threshold value may be dynamically changed according to the total number of frame processes for all IDs.
  • the determination result may be included in the determination result.
  • the degree of conformity for example, 100% conformity, 80% conformance, etc.
  • the degree of conformity may be represented by a certain evaluation standard, and the degree of conformity may be used as a determination result.
  • the frame determination process is divided into the system control unit and the multimedia control unit, but may be performed by only one of them.
  • a vehicle communication device that is an ECU such as a head unit
  • the example in which the unit that performs the frame determination process is separated based on the distinction between the reception frame and the transmission frame is shown. good.
  • a portion that performs frame determination may be separated into a plurality of locations in the same unit.
  • the determination of conformity to the rules for the received frame or the transmitted frame may be shared in any way between the multimedia control unit and the system control unit. That is, each unit may share the determination of which rule item (reference).
  • a vehicle communication device that is an ECU such as a head unit connected to a bus of an in-vehicle network system includes a multimedia control unit (first control unit) that specifies a transmission frame that is a frame for transmission to the bus, A system control unit (second control unit) capable of exchanging information related to the frame by wired or wireless communication with one control unit, and at least one of the first control unit and the second control unit includes a transmission frame As long as the determination relating to conformity to the rule is made.
  • the first control unit includes a first determination unit that determines whether the transmission frame conforms to or does not conform to a first predetermined rule (for example, a criterion of any item of the determination rule in FIG. 6).
  • the second control unit may include a second determination unit that determines whether the received frame conforms to or does not conform to a second predetermined rule (for example, a criterion of any item of the determination rule of FIG. 6).
  • the period and the margin in the determination rule used in the frame period determination process are set to one for each ID, but may be set for each group unit in which a plurality of IDs are collected. .
  • the frame period determination process is performed once for each transmission or reception of one frame.
  • the present invention is not limited to this, and a plurality of frame period determination processes with different determination contents, such as a frame period determination process across all IDs and a frame period determination process for each group, may be performed in combination.
  • the threshold (frequency threshold) in the determination rule used in the frame frequency determination process is set to one for each ID, but may be determined for each group unit in which a plurality of IDs are collected. good. Further, the frame frequency determination process is performed once for each transmission or reception of one frame. However, the present invention is not limited to this, and a plurality of frame frequency determination processes with different determination contents, such as a frame frequency determination process across all IDs and a group-unit frame frequency determination process, may be performed in combination.
  • each unit (each of the system control unit and the multimedia control unit) has a determination result holding unit.
  • the present invention is not limited to this configuration, and only one of them may be included, or only another independent unit (such as a chip) in a head unit that is different from both may be included.
  • the storage medium (recording medium) in which the determination result holding unit stores the log may be a memory realized by an external circuit or device, a hard disk, or the like in addition to the memory inside the determination result holding unit. .
  • whether to store the determination result in a log may be switched according to the frame determination result. Also, determination results for all IDs may be stored, or only determination results for specific IDs may be stored. Further, whether to save the determination result for each unit may be switched.
  • the external communication control unit 3170 is provided for communication with the server.
  • the present invention is not limited to this configuration, and one or both of the system control unit 3110 and the multimedia control unit 3150 may include a configuration (such as an integrated circuit) for communication with the server.
  • transmission of information regarding the frame determination result from the system control unit 3110 to the external communication control unit 3170 is not performed directly but via the multimedia control unit 3150 (inter-unit communication processing unit 151). Also good.
  • whether to notify the determination result to the server may be switched according to the determination result of the frame. Further, the determination result of all IDs may be notified to the server, or only the determination result for a specific ID may be notified to the server. Moreover, you may switch whether a determination result is notified to a server for every unit.
  • the determination result is notified to the server every time the frame determination process is performed once for each unit.
  • the determination result of the frame may be periodically notified to the server at regular time intervals.
  • the determination rule (see FIG. 6) shown in the above embodiment is an example, and an item other than the exemplified rule item may be included, or may be a value different from the exemplified value.
  • the determination rule may be set at the time of manufacture of the vehicle communication device (for example, the head unit), at the time of shipment, or may be set at the time of shipment of the vehicle on which the in-vehicle network system is mounted.
  • the determination rule may be updated during operation of the in-vehicle network system.
  • the determination rule may be set and updated based on communication with the outside, may be set using various recording media, or may be set by tools.
  • the CAN protocol shown in the above embodiment may have a broad meaning including derivative protocols such as TTCAN (Time-Triggered CAN) and CANFD (CAN with Flexible Data Rate). good.
  • TTCAN Time-Triggered CAN
  • CANFD CAN with Flexible Data Rate
  • the head unit as an example of the vehicle communication device in the above embodiment includes a chip of a semiconductor integrated circuit including a communication circuit, a memory, a processor, and other circuits. Other hardware components such as a keyboard and a mouse may be included. Further, the function may be realized by an integrated circuit that does not use the control program, instead of realizing the function by software by the processor executing the control program stored in the memory. Note that the chip is not necessarily packaged.
  • a part or all of the constituent elements constituting each device in the above embodiment may be constituted by one system LSI (Large Scale Integration).
  • the system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip.
  • the system LSI is a computer system including a microprocessor, a ROM, a RAM, and the like. .
  • a computer program is recorded in the RAM.
  • the system LSI achieves its functions by the microprocessor operating according to the computer program.
  • each part of the components constituting each of the above devices may be individually made into one chip, or may be made into one chip so as to include a part or all of them.
  • the system LSI is used here, it may be called IC, LSI, super LSI, or ultra LSI depending on the degree of integration.
  • the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry or general purpose processors is also possible.
  • An FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
  • integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Biotechnology can be applied as a possibility.
  • a part or all of the constituent elements constituting each of the above devices may be composed of an IC card that can be attached to and detached from each device or a single module.
  • the IC card or the module is a computer system including a microprocessor, a ROM, a RAM, and the like.
  • the IC card or the module may include the super multifunctional LSI described above.
  • the IC card or the module achieves its function by the microprocessor operating according to the computer program. This IC card or this module may have tamper resistance.
  • the vehicle communication method described above may be used.
  • the present invention may be a computer program that realizes this method by a computer, or may be a digital signal composed of the computer program.
  • a computer-readable recording medium such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, or a BD can be used as the computer program or the digital signal. (Blu-ray (registered trademark) Disc), recorded on a semiconductor memory or the like. Further, the digital signal may be recorded on these recording media.
  • the computer program or the digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network typified by the Internet, data broadcasting, or the like.
  • an aspect of the present invention may be a computer system including a microprocessor and a memory, in which the memory records the computer program, and the microprocessor operates according to the computer program.
  • the program or the digital signal is recorded on the recording medium and transferred, or the program or the digital signal is transferred via the network or the like and executed by another independent computer system. You may do that.
  • the present invention can be used to reduce transmission of illegal frames to a bus in an in-vehicle network system.
  • Network system 100 2100, 3100 Head unit 110, 2110, 3110 System control unit (second control unit) 111,410 frame transmission / reception unit 112,450 reception frame interpretation unit 113,430 reception ID determination unit 114,440 reception ID list holding unit 115,152,2115,2152,3115,3152 frame determination unit 116,153 determination rule holding unit 117 151, 3171 Inter-unit communication processing unit 118, 420 Transmission frame generation unit 150, 2150, 3150 Multimedia control unit (first control unit) 154 Application execution unit 200 Bus 310 Engine 320 Brake 330 Door open / close sensor 340 Window open / close sensor 400a to 400d Electronic control unit (ECU) 410 frame processing unit 470 data acquisition unit 2119, 2155 determination result holding unit 3170 external communication control unit 3172 external communication processing unit 3500 server

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Small-Scale Networks (AREA)
  • Mechanical Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

 バスを介してフレームに係る通信を行う複数の装置を備える車載ネットワークシステムにおける当該バスに接続された車両用通信装置であるヘッドユニット(100)は、バスへの送出用のフレームである送信フレームを特定するマルチメディア制御ユニット(150)と、マルチメディア制御ユニット(150)との間で有線通信又は無線通信によりフレームに係る情報を授受し得るシステム制御ユニット(110)とを備え、マルチメディア制御ユニット(150)及びシステム制御ユニット(110)のうち少なくとも1つが、送信フレームについて、ルールへの適合性に係る判定を行う。

Description

車両用通信装置、車載ネットワークシステム及び車両用通信方法
 本発明は、車載ネットワークに接続されメッセージ(フレーム)を送受信する車両用通信装置、車両用通信方法等に関する。
 近年、自動車の中のシステムには、電子制御ユニット(ECU:Electronic Control Unit)と呼ばれる装置が多数配置されている。これらのECUをつなぐネットワークは車載ネットワークと呼ばれる。車載ネットワークには、多数の規格が存在する。その中でも最も主流な車載ネットワークの一つに、ISO11898-1で規定されているCAN(Controller Area Network)という規格が存在する(「非特許文献1」参照)。
 CANでは、通信路は2本のバスで構成され、バスに接続されているECUはノードと呼ばれる。バスに接続されている各ノードは、フレームと呼ばれるメッセージを送受信する。フレームを送信する送信ノードは、2本のバスに電圧をかけ、バス間で電位差を発生させることによって、レセシブと呼ばれる「1」の値と、ドミナントと呼ばれる「0」の値を送信する。複数の送信ノードが全く同一のタイミングで、レセシブとドミナントを送信した場合は、ドミナントが優先されて送信される。受信ノードは、受け取ったフレームのフォーマットに異常がある場合には、エラーフレームと呼ばれるフレームを送信する。エラーフレームとは、ドミナントを6bit連続して送信することで、送信ノードや他の受信ノードにフレームの異常を通知するものである。
 またCANでは送信先や送信元を指す識別子は存在せず、送信ノードはフレーム毎にメッセージIDと呼ばれるIDを付けて送信し(つまりバスに信号を送出し)、各受信ノードは予め定められたメッセージIDのみを受信する(つまりバスから信号を読み取る)。また、CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)方式を採用しており、複数ノードの同時送信時にはメッセージIDによる調停が行われ、メッセージIDの値が小さいフレームが優先的に送信される。
 従来、異常なメッセージがCANのバス上に送信された場合に、バス間を接続するゲートウェイ装置が異常メッセージを検出して、他のバスに転送しないことで、バスの負荷の上昇を抑える技術が知られている(「特許文献1」参照)。また、周期的に送られてくるメッセージの周期をチェックし、不正なフレームを判定する技術が知られている(「非特許文献2」参照)。
特開2007-38904号公報
"CAN Specification 2.0 Part A"、[online]、CAN in Automation(CiA)、[平成26年11月14日検索]、インターネット(URL:http://www.can-cia.org/fileadmin/cia/specifications/CAN20A.pdf) 大塚 敏史、石郷岡 祐、「既存ECUを変更不要な車載LAN向け侵入検知手法」、研究報告組込みシステム(EMB)、情報処理学会、2013年3月6日、2013-EMB-28巻、6号、1-5頁
 ところで、CANのバスに接続しているECUのうち、外部ネットワーク、外部装置等から取得したアプリケーションプログラムを実行するECUがあれば、不正なアプリケーションプログラムにより不正な動作が行われる可能性がある。不正なアプリケーションプログラムは、不正なフレームを生成してバスに送出することで、車両を不正にコントロールする可能性があり、また、バスの負荷を上昇させ得る。そして、バス上のフレーム監視(チェック)負担の増加を招く。
 そこで、本発明は、不正なフレームのバスへの送出を低減させるために有用な車載ネットワークシステムを提供する。また、本発明は、その車載ネットワークシステムで用いられるECUとしての車両用通信装置、及び、不正なフレームのバスへの送出を低減させるために有用な車両用通信方法を提供する。
 上記課題を解決するために本発明の一態様に係る車両用通信装置は、バスを介してフレームに係る通信を行う複数の装置を備える車載ネットワークシステムにおける当該バスに接続された車両用通信装置であって、前記バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを備え、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う車両用通信装置である。
 また、上記課題を解決するために本発明の一態様に係る車載ネットワークシステムは、バスを介してフレームに係る通信を行う複数の装置を備える車載ネットワークシステムであって、前記複数の装置のうち少なくとも1つは前記バスに接続された車両用通信装置であり、前記車両用通信装置は、前記バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを備え、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う車載ネットワークシステムである。
 また、上記課題を解決するために本発明の一態様に係る車両用通信方法は、バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを有する車両用通信装置を含む複数の装置が前記バスを介してフレームに係る通信を行うところの車載ネットワークシステムにおいて用いられる車両用通信方法であって、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う車両用通信方法である。
 本発明によれば、不正なフレームのバスへの送出を低減させることが実現可能となる。
図1は、実施の形態1に係る車載ネットワークシステムの全体構成を示す図である。 図2は、CANプロトコルで規定されるデータフレームのフォーマットを示す図である。 図3は、CANプロトコルで規定されるエラーフレームのフォーマットを示す図である。 図4は、実施の形態1に係るヘッドユニットの構成図である。 図5は、ヘッドユニットが保持する受信IDリストの一例を示す図である。 図6は、判定ルール保持部が保持する判定ルールの一例を示す図である。 図7は、ECUの構成図である。 図8は、ECUの保持する受信IDリストの一例を示す図である。 図9は、エンジンに接続されたECUから送信されるフレームにおけるID及びデータフィールドの一例を示す図である。 図10は、ブレーキに接続されたECUから送信されるフレームにおけるID及びデータフィールドの一例を示す図である。 図11は、ドア開閉センサに接続されたECUから送信されるフレームにおけるID及びデータフィールドの一例を示す図である。 図12は、窓開閉センサに接続されたECUから送信されるフレームにおけるID及びデータフィールドの一例を示す図である。 図13は、実施の形態1に係るヘッドユニットにおけるフレーム受信処理の一例を示すフローチャートである。 図14は、実施の形態1に係るヘッドユニットにおけるフレーム送信処理の一例を示すフローチャートである。 図15は、実施の形態1に係るシステム制御ユニットにおけるフレーム判定処理の一例を示すフローチャートである。 図16は、実施の形態1に係るマルチメディア制御ユニットにおけるフレーム判定処理の一例を示すフローチャートである。 図17は、実施の形態1に係るフレーム周期判定処理の一例を示すフローチャートである。 図18は、フレーム頻度判定処理の一例を示すフローチャートである。 図19は、実施の形態1の変形例1に係るフレーム周期判定処理を示すフローチャートである。 図20は、実施の形態1の変形例2に係るシステム制御ユニットにおけるフレーム判定処理を示すフローチャートである。 図21は、実施の形態1の変形例2に係るマルチメディア制御ユニットにおけるフレーム判定処理を示すフローチャートである。 図22は、実施の形態1の変形例3に係るシステム制御ユニットにおけるフレーム判定処理を示すフローチャートである。 図23は、実施の形態1の変形例3に係るマルチメディア制御ユニットにおけるフレーム判定処理を示すフローチャートである。 図24は、実施の形態2に係るヘッドユニットの構成図である。 図25は、実施の形態2に係るヘッドユニットにおけるフレーム受信処理の一例を示すフローチャートである。 図26は、実施の形態2に係るヘッドユニットにおけるフレーム送信処理の一例を示すフローチャートである。 図27は、実施の形態3に係るネットワークシステムの全体構成を示す図である。 図28は、実施の形態3に係るヘッドユニットの構成図である。 図29は、実施の形態3に係るヘッドユニットにおけるフレーム受信処理の一例を示すフローチャートである。 図30は、実施の形態3に係るヘッドユニットにおけるフレーム送信処理の一例を示すフローチャートである。
 本発明の一態様に係る車両用通信装置は、バスを介してフレームに係る通信を行う複数の装置を備える車載ネットワークシステムにおける当該バスに接続された車両用通信装置であって、前記バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを備え、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う車両用通信装置である。これにより、第1制御ユニットで例えばアプリケーションプログラム等により特定された内容のフレームが、車載ネットワークシステムにおけるルール(例えばデータ値の許容範囲、送信周期、送信頻度等に関する基準等)に照らして不正(不適合)か否か等が判定され得る。そして、この判定は、不正なフレームのバスへの送出の低減のために有用である。
 また、更に、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記車載ネットワークシステムにおける前記複数の装置のうち自装置以外のいずれかの装置により送信され、前記バスを介して取得したフレームである受信フレームについて、ルールへの適合性に係る判定を行うこととしても良い。これにより、バスから受信したフレームが車載ネットワークシステムにおけるルール(例えばデータ値の許容範囲、受信周期、受信頻度等に関する基準等)に照らして不正(不適合)か否か等が判定され得る。この判定は、車載ネットワークシステムのセキュリティ向上に有用である。また、この判定の結果は、不正なフレームの受信に起因して不正なフレームのバスへの送出がなされたか否かの分析に利用可能となり、不正なフレームのバスへの送出の低減のためにも有用となり得る。
 また、前記第1制御ユニットは、前記送信フレームについて第1所定ルールに適合しているか不適合であるかを判定する第1判定部を有し、前記第2制御ユニットは、前記受信フレームについて第2所定ルールに適合しているか不適合であるかを判定する第2判定部を有することとしても良い。これにより、フレームの判定をそれぞれの制御ユニットに分担させることができる。なお、第1制御ユニットにおいて必ずしも送信フレームに関するあらゆる基準(ルール項目)についての判定を行う必要はなく、第2制御ユニットにおいて必ずしも受信フレームに関するあらゆる基準(ルール項目)についての判定を行う必要はない。
 また、前記第1制御ユニットは、特定した前記送信フレームに係る情報を前記第2制御ユニットに送信する機能を有し、前記第2制御ユニットは、前記第1制御ユニットから特定された前記送信フレームに係る情報を受信した場合に、当該送信フレームを前記バスへと送出する機能と、前記受信フレームに係る情報を、前記第1制御ユニットに送信する機能とを有し、前記第1制御ユニットは、前記送信フレームについて前記第1判定部により不適合であると判定された場合に当該送信フレームに係る情報の前記第2制御ユニットへの送信を抑止し、前記第2制御ユニットは、前記受信フレームについて前記第2判定部により不適合であると判定された場合に当該受信フレームに係る情報の前記第1制御ユニットへの送信を抑止することとしても良い。これにより、一方の制御ユニットでルールへ不適合であると判定されたフレームについて、他方の制御ユニットで何らかの処理をすることが抑止され、各制御ユニットの処理負担が軽減され得る。
 また、前記第2所定ルールは、受信フレームについての受信周期又は受信頻度に関する条件を規定し、前記第1制御ユニットは、前記受信フレームについて、前記第2所定ルールとは異なる第3所定ルールに適合しているか不適合であるかを判定する第3判定部を有することとしても良い。これにより、第2制御ユニットとバスとの間の第1制御ユニットで、両制御ユニット間での信号伝達の時間(遅延)の影響を受けずに、周期又は頻度に関する判定を精度良く行うことができる。
 また、前記第1制御ユニットは、前記受信フレームについて、前記第2所定ルールとは異なる第3所定ルールに適合しているか不適合であるかを判定する第3判定部を有することとしても良い。これにより、受信フレームについてのルール判定を各制御ユニットに分担するため、例えば第1制御ユニットが第2制御ユニットより高性能である場合において適切な処理負荷の分散が実現され得る。
 また、前記第1制御ユニットは、第1マイクロプロセッサ及び第1メモリを含む半導体集積回路であり、当該第1メモリに格納されたプログラムを当該第1マイクロプロセッサで実行することにより前記第1判定部及び前記第3判定部としての機能を実現し、前記第2制御ユニットは、前記第1マイクロプロセッサより処理性能が低い第2マイクロプロセッサ及び第2メモリを含む半導体集積回路であり、当該第2メモリに格納されたプログラムを当該第2マイクロプロセッサで実行することにより前記第2判定部としての機能を実現することとしても良い。これにより、各マイクロプロセッサの処理性能に応じた適切な処理分担が実現され得る。
 また、前記車両用通信装置は、前記受信フレームについてのルールへの適合性に係る前記判定として、当該受信フレームが当該ルールに適合しているか不適合であるかの判定を行い、適合していると判定した場合には、当該受信フレームの内容に基づく所定の受信フレーム対応処理を実行し、不適合であると判定した場合には、前記所定の受信フレーム対応処理の実行を抑止することとしても良い。これにより、ルールに適合しない不正な受信フレームによって受信フレーム対応処理がなされることが防止される。
 また、前記車両用通信装置は、前記送信フレームについてのルールへの適合性に係る前記判定として、当該送信フレームが当該ルールに適合しているか不適合であるかの判定を行い、適合していると判定した場合には、当該送信フレームを前記バス上に送出し、不適合であると判定した場合には、当該送信フレームの前記バス上への送出を抑止することとしても良い。これにより、不正なフレームのバスへの送出が低減され得る。このため、バス上のフレーム監視負担が低減され得る。
 また、前記車両用通信装置は、前記送信フレームについてのルールへの適合性に係る前記判定の結果を示す情報を、外部のサーバ装置に送信することとしても良い。これにより、サーバ装置でフレームのルールへの適合性を分析でき、その分析の結果を用いて車載ネットワークシステムのセキュリティ向上を図ることが可能になる。
 また、前記車両用通信装置は、前記送信フレームについてのルールへの適合性に係る前記判定の結果を示す情報を、所定記録媒体に記録することとしても良い。これにより、記録媒体に記録された情報を分析でき、その分析の結果を用いて車載ネットワークシステムのセキュリティ向上を図ることが可能になる。
 また、前記車両用通信装置を含む前記複数の装置は、CAN(Controller Area Network)プロトコルに従って前記フレームに係る通信を行うこととしても良い。これにより、CANプロトコルに従って通信する車載ネットワークシステムにおいて不正なフレームのバスへの送出の低減を図ることが可能になる。
 また、本発明の一態様に係る車載ネットワークシステムは、バスを介してフレームに係る通信を行う複数の装置を備える車載ネットワークシステムであって、前記複数の装置のうち少なくとも1つは前記バスに接続された車両用通信装置であり、前記車両用通信装置は、前記バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを備え、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う車載ネットワークシステムである。これにより、不正なフレームのバスへの送出の低減が可能となる。
 また、本発明の一態様に係る車両用通信方法は、バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを有する車両用通信装置を含む複数の装置が前記バスを介してフレームに係る通信を行うところの車載ネットワークシステムにおいて用いられる車両用通信方法であって、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う車両用通信方法である。この車両用通信方法における判定は、不正なフレームのバスへの送出の低減に有用である。
 なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD-ROM等の記録媒体で実現されても良く、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されても良い。
 以下、実施の形態に係る車両用通信装置を含む車載ネットワークシステムについて、図面を参照しながら説明する。ここで示す実施の形態は、いずれも本発明の一具体例を示すものである。従って、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ(工程)及びステップの順序等は、一例であって本発明を限定するものではない。以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。
 (実施の形態1)
 以下、本発明の実施の形態として、バスに送出する送信フレーム等を含むフレームについてルールへの適合性を判定する車両用通信方法を行う車両用通信装置(ヘッドユニット100)を含む車載ネットワークシステム10について図面を用いて説明する。
 [1.1 車載ネットワークシステム10の全体構成]
 図1は、実施の形態1に係る車載ネットワークシステム10の全体構成を示す図である。車載ネットワークシステム10は、CANプロトコルに従って通信するネットワーク通信システムの一例であり、制御装置、センサ等の各種機器が搭載された自動車におけるネットワーク通信システムである。車載ネットワークシステム10は、バスを介してフレームに係る通信を行う複数の装置を備え、車両用通信方法を用いる。具体的には図1に示すように車載ネットワークシステム10は、バス200と、ヘッドユニット100、各種機器に接続されたECU400a~400d等のECUといったバスに接続された各ノードとを含んで構成される。なお、車載ネットワークシステム10には、ヘッドユニット100及びECU400a~400d以外にもいくつものECUが含まれ得るが、ここでは、便宜上ヘッドユニット100及びECU400a~400dに注目して説明を行う。ECUは、例えば、プロセッサ(マイクロプロセッサ)、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置である。メモリは、ROM、RAM等であり、プロセッサにより実行される制御プログラム(コンピュータプログラム)を記憶することができる。例えばプロセッサが、制御プログラム(コンピュータプログラム)に従って動作することにより、ECUは各種機能を実現することになる。なお、コンピュータプログラムは、所定の機能を達成するために、プロセッサに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
 ECU400a~400dは、バス200と接続され、それぞれエンジン310、ブレーキ320、ドア開閉センサ330、窓開閉センサ340に接続されている。ECU400a~400dのそれぞれは、接続されている機器(エンジン310等)の状態を取得し、定期的に状態を表すフレーム(後述するデータフレーム)等をネットワーク(つまりバス)に送信している。
 ヘッドユニット100は、ECU400a~400dから送信されるフレームを受信し、各種状態をディスプレイ(図示しない)に表示して、ユーザに提示する機能を持つ。また、ヘッドユニット100が取得する各情報を示すフレームを生成して、そのフレームを、バス200を介して1台以上のECUに送信する機能を持つ。また、送受信するフレームについてルールへの適合性を判定することで、不正なフレーム(つまりルールに適合しないフレーム)か否かの判別等を行い、必要に応じてフレームのフィルタリングを行う機能を有する。また、ヘッドユニット100は、例えばカーナビゲーション、音楽再生、動画再生、ウェブページ表示、スマートフォンとの連携、アプリケーションプログラムのダウンロード及び実行等の機能を有し得る。なお、ヘッドユニット100も一種のECUである。
 車載ネットワークシステム10においてはCANプロトコルに従って、ヘッドユニット100を含む各ECUがフレームの授受を行う。CANプロトコルにおけるフレームには、データフレーム、リモートフレーム、オーバーロードフレーム及びエラーフレームがある。説明の便宜上、ここではデータフレーム及びエラーフレームを中心に説明する。
 [1.2 データフレームフォーマット]
 以下、CANプロトコルに従ったネットワークで用いられるフレームの1つであるデータフレームについて説明する。
 図2は、CANプロトコルで規定されるデータフレームのフォーマットを示す図である。同図には、CANプロトコルで規定される標準IDフォーマットにおけるデータフレームを示している。データフレームは、SOF(Start Of Frame)、IDフィールド、RTR(Remote Transmission Request)、IDE(Identifier Extension)、予約ビット「r」、DLC(Data Length Code)、データフィールド、CRC(Cyclic Redundancy Check)シーケンス、CRCデリミタ「DEL」、ACK(Acknowledgement)スロット、ACKデリミタ「DEL」、及び、EOF(End Of Frame)の各フィールドで構成される。
 SOFは、1bitのドミナントで構成される。バスがアイドルの状態はレセシブになっており、SOFによりドミナントへ変更することでフレームの送信開始を通知する。
 IDフィールドは、11bitで構成される、データの種類を示す値であるID(メッセージID)を格納するフィールドである。複数のノードが同時に送信を開始した場合、このIDフィールドで通信調停を行うために、IDが小さい値を持つフレームが高い優先度となるよう設計されている。
 RTRは、データフレームとリモートフレームとを識別するための値であり、データフレームにおいてはドミナント1bitで構成される。
 IDEと「r」とは、両方ドミナント1bitで構成される。
 DLCは、4bitで構成され、データフィールドの長さを示す値である。なお、IDE、「r」及びDLCを合わせてコントロールフィールドと称する。
 データフィールドは、最大64bitで構成される送信するデータの内容を示す値である。8bit毎に長さを調整できる。送られるデータの仕様については、CANプロトコルで規定されておらず、車載ネットワークシステム10において定められる。従って、車種、製造者(製造メーカ)等に依存した仕様となる。
 CRCシーケンスは、15bitで構成される。SOF、IDフィールド、コントロールフィールド及びデータフィールドの送信値より算出される。
 CRCデリミタは、1bitのレセシブで構成されるCRCシーケンスの終了を表す区切り記号である。なお、CRCシーケンス及びCRCデリミタを合わせてCRCフィールドと称する。
 ACKスロットは、1bitで構成される。送信ノードはACKスロットをレセシブにして送信を行う。受信ノードはCRCシーケンスまで正常に受信ができていればACKスロットをドミナントとして送信する。レセシブよりドミナントが優先されるため、送信後にACKスロットがドミナントであれば、送信ノードは、いずれかの受信ノードが受信に成功していることを確認できる。
 ACKデリミタは、1bitのレセシブで構成されるACKの終了を表す区切り記号である。
 EOFは、7bitのレセシブで構成されており、データフレームの終了を示す。
 [1.3 エラーフレームフォーマット]
 図3は、CANプロトコルで規定されるエラーフレームのフォーマットを示す図である。エラーフレームは、エラーフラグ(プライマリ)と、エラーフラグ(セカンダリ)と、エラーデリミタとから構成される。
 エラーフラグ(プライマリ)は、エラーの発生を他のノードに知らせるために使用される。エラーを検知したノードはエラーの発生を他のノードに知らせるために6bitのドミナントを連続で送信する。この送信は、CANプロトコルにおけるビットスタッフィングルール(連続して同じ値を6bit以上送信しない)に違反し、他のノードからのエラーフレーム(セカンダリ)の送信を引き起こす。
 エラーフラグ(セカンダリ)は、エラーの発生を他のノードに知らせるために使用される連続した6ビットのドミナントで構成される。エラーフラグ(プライマリ)を受信してビットスタッフィングルール違反を検知した全てのノードがエラーフラグ(セカンダリ)を送信することになる。
 エラーデリミタ「DEL」は、8bitの連続したレセシブであり、エラーフレームの終了を示す。
 [1.4 ヘッドユニット100の構成]
 ヘッドユニット100は、車両用通信装置であり、例えば、自動車のインストルメントパネル(インパネ)等に設けられ、運転者に視認されるための情報を表示する液晶ディスプレイ(LCD:Liquid Crystal Display)等の表示装置、運転者の操作を受け付ける入力手段等を備える一種のECUである。
 図4は、ヘッドユニット100の構成図である。ヘッドユニット100は、マルチメディア制御ユニット150(第1制御ユニット)とシステム制御ユニット110(第2制御ユニット)とを含んで構成される。
 システム制御ユニット110及びマルチメディア制御ユニット150のそれぞれは、例えばパッケージ化された半導体集積回路であるチップ(マイクロチップ)等であり、これらは、有線又は無線で相互に通信可能となるように構成される。なお、無線での通信は、電磁波により信号を伝送することでなされ、光通信を含む。
 システム制御ユニット110は、主に他の車載装置(ECU400a~400d)との連携に係る制御、つまりバス200での通信の制御を担う。システム制御ユニット110は、フレーム送受信部111と、受信フレーム解釈部112と、受信ID判断部113と、受信IDリスト保持部114と、フレーム判定部115と、判定ルール保持部116と、ユニット間通信処理部117と、送信フレーム生成部118とを含んで構成される。これらの各構成要素は、機能的な構成要素であり、その各機能は、チップに集積された通信回路、メモリ及びこのメモリに格納された制御プログラムを実行するプロセッサ(マイクロプロセッサ)その他の回路等により実現される。
 フレーム送受信部111は、バス200に対して、CANプロトコルに従ったフレームを送受信する。バス200からフレームを1bitずつ受信し、受信フレーム解釈部112に転送する。また、送信フレーム生成部118より通知を受けたフレームの内容をバス200に1bitずつ送信する。
 受信フレーム解釈部112は、フレーム送受信部111よりフレームの値を受け取り、CANプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行う。受信フレーム解釈部112は、IDフィールドと判断した値は受信ID判断部113へ転送する。受信フレーム解釈部112は、受信ID判断部113から通知される判定結果に応じて、IDフィールドの値と、IDフィールド以降に現れるデータフィールドとを、フレーム判定部115へ転送するか、その判定結果を受けた以降においてフレームの受信を中止する(つまりそのフレームとしての解釈を中止する)かを決定する。また、受信フレーム解釈部112は、例えば、CRCの値が合わなかったり、ドミナント固定とされている項目がレセシブだったりする等、CANプロトコルに則っていないフレームと判断した場合は、エラーフレームを送信するように送信フレーム生成部118へ通知する。また、受信フレーム解釈部112は、エラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームになっていると解釈した場合には、それ以降はそのフレームを破棄する、つまりフレームの解釈を中止する。例えばデータフレームの途中からエラーフレームと解釈された場合においては、そのデータフレームの解釈は中止され、そのデータフレームに応じて特段の処理を行うことがなくなる。
 受信ID判断部113は、受信フレーム解釈部112から通知されるIDフィールドの値を受け取り、受信IDリスト保持部114が保持しているメッセージIDのリストに従い、そのIDフィールド以降のフレームの各フィールドを受信するかどうかの判定を行う。この判定結果を、受信ID判断部113は、受信フレーム解釈部112へ通知する。
 受信IDリスト保持部114は、ヘッドユニット100が受信するID(メッセージID)のリストである受信IDリストを保持する。図5に、受信IDリストの一例を示す。
 フレーム判定部115は、受信フレーム解釈部112から受信したフレームの値、或いは、ユニット間通信処理部117より送信すべきフレームの内容となる値を受け取る。そして、判定ルール保持部116から判定ルールを取得し、判定ルールに基づいたフレーム判定処理(システム制御ユニットフレーム判定処理)の結果に応じて、送信フレーム生成部118、或いは、ユニット間通信処理部117へフレームの値を通知するか否かを決定する。このフレーム判定処理(システム制御ユニットフレーム判定処理)は、フレームについて判定ルールへの適合性の判定(例えばフレームが不正であるか否か等の判定)を行うための処理であり、後に図15を用いて詳しく説明する。
 判定ルール保持部116は、ヘッドユニット100が送信或いは受信するフレームについて、フレーム判定処理を行うために用いる判定ルールを保持する。この判定ルールは、車載ネットワークシステム10においてバス上で授受されるフレームが準拠すべきルールである。図6に、判定ルールの一例を示す。
 ユニット間通信処理部117は、異なるユニット間の通信処理を行う。即ち、ユニット間通信処理部117は、マルチメディア制御ユニット150との間で、有線又は無線の通信(送信又は受信)により情報の授受を行う。
 送信フレーム生成部118は、受信フレーム解釈部112からのエラーフレームの送信を指示する通知に従い、エラーフレームを構成し、エラーフレームをフレーム送受信部111へ通知して送信させる。また、送信フレーム生成部118は、フレーム判定部115から通知を受けたID、データ等を用いて、送信するデータフレームを生成する。
 また、マルチメディア制御ユニット150は、主に、ヘッドユニット100で各種機能(例えばカーナビゲーション、音楽再生、動画再生、ウェブページ表示、スマートフォンとの連携等の機能)を実現するためのアプリケーションプログラムの実行制御処理を担う。マルチメディア制御ユニット150は、ユニット間通信処理部151と、フレーム判定部152と、判定ルール保持部153と、アプリケーション実行部154とを含んで構成される。これらの各構成要素は、機能的な構成要素であり、その各機能は、チップに集積された通信回路、メモリ及びこのメモリに格納された制御プログラムを実行するプロセッサその他の回路等により実現される。
 ユニット間通信処理部151は、異なるユニット間の通信処理を行う。即ち、ユニット間通信処理部151は、システム制御ユニット110との間で、有線又は無線の通信(送信又は受信)により情報の授受を行う。
 フレーム判定部152は、アプリケーション実行部154から送信すべきフレームの内容となる値、或いは、ユニット間通信処理部151から受信されたフレームの値を受け取る。そして、判定ルール保持部153から判定ルールを取得し、判定ルールに基づいたフレーム判定処理(マルチメディア制御ユニットフレーム判定処理)の結果に応じて、アプリケーション実行部154、或いは、ユニット間通信処理部151へフレームの値を通知するか否かを決定する。このフレーム判定処理(マルチメディア制御ユニットフレーム判定処理)は、フレームについて判定ルールへの適合性の判定(例えばフレームが不正であるか否か等の判定)を行うための処理であり、後に図16を用いて詳しく説明する。
 判定ルール保持部153は、ヘッドユニット100が送信或いは受信するフレームについて、フレーム判定処理を行うために用いる判定ルールを保持する。この判定ルールは、車載ネットワークシステム10においてバス上で授受されるフレームが準拠すべきルールである。なお、マルチメディア制御ユニット150の判定ルール保持部153が保持する判定ルールと、システム制御ユニット110の判定ルール保持部116が保持する判定ルールとは、それぞれフレーム判定部152、フレーム判定部115における判定に必要な基準、条件等の情報を少なくとも含めば十分であり、両者が同一であっても互いに異なっていても良い。
 アプリケーション実行部154は、ヘッドユニット100の各種機能(例えばナビゲーション、動画再生、音楽再生、Webブラウジング等の機能)を実現するためのアプリケーションプログラムの実行制御を行う。例えば、入力手段を通じて受け付けた運転者(ユーザ)による操作に応じて、アプリケーションプログラムの実行制御がなされ、アプリケーションプログラムの実行によって例えば表示装置へユーザに提示すべき情報の表示等がなされ得る。アプリケーションプログラムは、例えば、バス200以外の外部ネットワークを介してダウンロードされ、マルチメディア制御ユニット150のプロセッサ上で動作する所定のオペレーティングシステム(OS)等による実行環境上で、プロセッサにより実行されることで動作する。
 [1.5 ヘッドユニット100の受信IDリスト例]
 図5は、ヘッドユニット100の受信IDリスト保持部114において保持される受信IDリストの一例を示す図である。同図に例示する受信IDリストは、ID(メッセージID)の値が「1」、「2」、「3」及び「4」のいずれかであるメッセージIDを含むフレームを選択的に受信して処理するために用いられる。ヘッドユニット100は、エンジン310に接続されたECU400aからメッセージIDが「1」であるフレーム(メッセージ)を受信し、ブレーキ320に接続されたECU400bからメッセージIDが「2」であるフレームを受信し、ドア開閉センサ330に接続されたECU400cからメッセージIDが「3」であるフレームを受信し、窓開閉センサ340に接続されたECU400dからメッセージIDが「4」であるフレームを受信する。
 [1.6 判定ルール例]
 図6は、ヘッドユニット100の判定ルール保持部116及び判定ルール保持部153が保持する判定ルールの一例を示す図である。同図に例示する判定ルールは、ID(メッセージID)毎に、そのメッセージIDのメッセージ(フレーム)が準拠すべきルール(基準)を示す。この判定ルールは、メッセージID毎に、送受信種別、データ長、データ範囲、周期(ms)、マージン(ms)、イベント有無、及び、頻度閾値(回/sec)という項目を含んでいる。
 図6の例では、送受信種別は、ヘッドユニット100が、他のECUから送信されバス200を介して取得したフレームである受信フレームを1の値で示し、ヘッドユニット100からバス200への送信用のフレームである送信フレームを0の値で示し、両者を区別している。
 データ長は、フレーム(データフレーム)に含まれるデータフィールドの長さ(Byte数)についての基準を示す。
 データ範囲は、データフィールドの1Byte~8Byteについて1Byte毎に、データが取り得る値の範囲についての基準を示す。データが取り得る値の範囲として、図6の記号「**」は、どんな値でも取り得ることを示す。また、記号「,」で連結する値はいずれかの値を取り得ることを示し、「~」で連結する値は、それぞれを上限、下限とする範囲内のいずれかの値を取り得ることを示す。
 周期は、フレームが繰り返し送信又は受信される場合におけるその送信又は受信の周期についての基準を示し、図6では周期をミリ秒単位の値で表している。なお、周期として図6の記号「-」は、対応するメッセージIDのフレームとして、周期的に送信又は受信されるフレームが無いことを表している。
 マージンは、周期の基準についての適合性の判定において許容される周期とのズレ量(誤差の許容範囲)を示し、図6ではマージンをミリ秒単位の値で表している。
 イベント有無は、対応するメッセージIDのフレームとして、周期とは別に送信又は受信されるイベントフレームが有り得るか否かについての基準を示し、図6では、1の値でイベントフレームが有り得ることを示し、0の値でイベントフレームが無いことを示す。
 頻度周期は、対応するメッセージIDのフレームとして送信又は受信されるイベントフレームが有り得る場合において、フレームの送信又は受信の頻度についての基準を示す。図6では頻度周期を1秒当たりの送信又は受信の回数で表している。
 なお、図6の例は、判定ルールの一例にすぎず、判定ルールは、フレームの要件として定めた基準等であればいかなる内容でも良い。例えば、図6では、データ範囲のルール(基準)をByte単位で表現しているが、必ずしもByte単位で表現する必要はない。また、送信フレームについてのルール項目(基準)と受信フレームについてのルール項目(基準)とを、必ずしも一致させる必要はない。また判定ルールをテーブルとして表しても、数式、プログラム(命令列)等で表しても良い。
 [1.7 ECU400aの構成]
 図7は、ECU400aの構成図である。ECU400aは、フレーム送受信部460と、受信フレーム解釈部450と、受信ID判断部430と、受信IDリスト保持部440と、フレーム処理部410と、送信フレーム生成部420と、データ取得部470とを含んで構成される。これらの各構成要素は、機能的な構成要素であり、その各機能は、ECU400aにおける通信回路、メモリに格納された制御プログラムを実行するプロセッサ或いはデジタル回路等により実現される。
 フレーム送受信部460は、バス200に対して、CANプロトコルに従ったフレームを送受信する。バス200からフレームを1bitずつ受信し、受信フレーム解釈部450に転送する。また、送信フレーム生成部420より通知を受けたフレームの内容をバス200に送信する。
 受信フレーム解釈部450は、フレーム送受信部460よりフレームの値を受け取り、CANプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行う。IDフィールドと判断した値は受信ID判断部430へ転送する。受信フレーム解釈部450は、受信ID判断部430から通知される判定結果に応じて、IDフィールドの値と、IDフィールド以降に現れるデータフィールドとを、フレーム処理部410へ転送するか、その判定結果を受けた以降においてフレームの受信を中止する(つまりそのフレームとしての解釈を中止する)かを決定する。また、受信フレーム解釈部450は、CANプロトコルに則っていないフレームと判断した場合は、エラーフレームを送信するように送信フレーム生成部420へ通知する。また、受信フレーム解釈部450は、エラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームになっていると解釈した場合には、それ以降はそのフレームを破棄する、つまりフレームの解釈を中止する。
 受信ID判断部430は、受信フレーム解釈部450から通知されるIDフィールドの値を受け取り、受信IDリスト保持部440が保持しているメッセージIDのリストに従い、そのIDフィールド以降のフレームの各フィールドを受信するかどうかの判定を行う。この判定結果を、受信ID判断部430は、受信フレーム解釈部450へ通知する。
 受信IDリスト保持部440は、ECU400aが受信するID(メッセージID)のリストである受信IDリストを保持する。図8に、受信IDリストの一例を示す。
 フレーム処理部410は、受信したフレームのデータに応じてECU毎に異なる機能に係る処理を行う。例えば、エンジン310に接続されたECU400aは、時速が30kmを超えた状態でドアが開いている状態だと、アラーム音を鳴らす機能を備える。ECU400aは、例えばアラーム音を鳴らすためのスピーカ等を有している。そして、ECU400aのフレーム処理部410は、他のECUから受信したデータ(例えばドアの状態を示す情報)を管理し、エンジン310から取得された時速に基づいて一定条件下でアラーム音を鳴らす処理等を行う。
 データ取得部470は、ECU400aにつながっている機器、センサ等の状態を示すデータを取得し、送信フレーム生成部420に通知する。
 送信フレーム生成部420は、受信フレーム解釈部450から通知されたエラーフレームの送信を指示する通知に従い、エラーフレームを構成し、エラーフレームをフレーム送受信部460へ通知して送信させる。また、送信フレーム生成部420は、データ取得部470より通知されたデータの値に対して、予め定められたメッセージIDをつけてフレームを構成し、フレーム送受信部460へ通知する。
 なお、ECU400b~400dも、上述したECU400aと基本的に同様の構成を備える。受信IDリスト保持部440に保持される受信IDリストはECU毎に異なる内容となり得るが、同じ内容であっても良い。また、フレーム処理部410の処理内容は、ECU毎に異なる。例えば、ECU400cにおけるフレーム処理部410の処理内容は、ブレーキがかかっていない状況でドアが開くとアラーム音を鳴らす機能に係る処理を含む。例えば、ECU400b及びECU400dにおけるフレーム処理部410では特段の処理を行わない。なお、各ECUは、ここで例示した以外の機能を備えていても良い。なお、ECU400a~400dのそれぞれが送信するフレームの内容については後に図9~図12を用いて説明する。
 [1.8 ECU400a~400dの受信IDリスト例]
 図8は、ECU400a、ECU400b、ECU400c及びECU400dのそれぞれにおいて保持される受信IDリストの一例を示す図である。同図に例示する受信IDリストは、ID(メッセージID)の値が「1」、「2」、「3」、「4」、「5」、「6」及び「7」のいずれかであるメッセージIDを含むフレームを選択的に受信して処理するために用いられる。
 [1.9 エンジンに係るECU400aの送信フレーム例]
 図9は、エンジン310に接続されたECU400aから送信されるフレームにおけるID(メッセージID)及びデータフィールド(データ)の一例を示す図である。ECU400aが送信するフレームのメッセージIDは「1」である。データは、時速(km/時)を表し、最低0(km/時)~最高180(km/時)までの範囲の値を取り、データ長は1Byteである。図9の上行から下行へと、ECU400aから逐次送信される各フレームに対応する各メッセージID及びデータを例示しており、0km/時から1km/時ずつ加速されている様子を表している。
 [1.10 ブレーキに係るECU400bの送信フレーム例]
 図10は、ブレーキ320に接続されたECU400bから送信されるフレームにおけるID(メッセージID)及びデータフィールド(データ)の一例を示す図である。ECU400bが送信するフレームのメッセージIDは「2」である。データは、ブレーキのかかり具合を割合(%)で表し、データ長は1Byteである。この割合は、ブレーキを全くかけていない状態を0(%)、ブレーキを最大限かけている状態を100(%)としたものである。図10の上行から下行へと、ECU400bから逐次送信される各フレームに対応する各メッセージID及びデータを例示しており、100%から徐々にブレーキを弱めている様子を表している。
 [1.11 ドア開閉センサに係るECU400cの送信フレーム例]
 図11は、ドア開閉センサ330に接続されたECU400cから送信されるフレームにおけるID(メッセージID)及びデータフィールド(データ)の一例を示す図である。ECU400cが送信するフレームのメッセージIDは「3」である。データは、ドアの開閉状態を表し、データ長は1Byteである。データの値は、ドアが開いている状態が「1」、ドアが閉まっている状態が「0」である。図11の上行から下行へと、ECU400cから逐次送信される各フレームに対応する各メッセージID及びデータを例示しており、ドアが開いている状態から次第に閉められた状態へと移った様子を表している。
 [1.12 窓開閉センサに係るECU400dの送信フレーム例]
 図12は、窓開閉センサ340に接続されたECU400dから送信されるフレームにおけるID(メッセージID)及びデータフィールド(データ)の一例を示す図である。ECU400dが送信するフレームのメッセージIDは「4」である。データは、窓の開閉状態を割合(%)で表し、データ長は1Byteである。この割合は、窓が完全に閉まっている状態を0(%)、窓が全開の状態を100(%)としたものである。図12の上行から下行へと、ECU400dから逐次送信される各フレームに対応する各メッセージID及びデータを例示しており、窓が閉まっている状態から徐々に開いていく様子を表している。
 [1.13 ヘッドユニット100によるフレーム受信の動作]
 図13は、ヘッドユニット100におけるフレーム受信処理の一例を示すフローチャートである。以下、同図に即して、ヘッドユニット100におけるデータフレームの受信時の動作を説明する。
 ヘッドユニット100は、システム制御ユニット110のフレーム送受信部111により、バス200上に現れるフレームを受信する(ステップS1100)。
 フレーム送受信部111がフレームにおけるIDの部分を受信すると、受信フレーム解釈部112及び受信ID判断部113により、受信IDリスト保持部114が保持する受信IDリストを参照して、受信すべきIDを含むフレームか否かを判別することで、そのフレームを引き続き受信すべきかどうかを判定する(ステップS1200)。受信したフレームが受信IDリストに記載の無いIDを含む場合は、フレーム受信処理を終了する。
 ステップS1200において受信したフレームのIDが受信IDリストに含まれている場合に、フレームを受信して、フレーム判定部115においてシステム制御ユニットフレーム判定処理を行う(ステップS1300)。システム制御ユニットフレーム判定処理S1300については後に図15を用いて説明する。
 システム制御ユニットフレーム判定処理の判定結果がOK(正常)の場合(つまり受信フレームが判定ルールに適合していると判定された場合)には(ステップS1400)、ユニット間の通信処理により、システム制御ユニット110はマルチメディア制御ユニット150にフレーム(受信フレーム)の内容を通知する(ステップS1500)。なお、ステップS1400においてシステム制御ユニットフレーム判定処理の判定結果がOKでない場合には、システム制御ユニット110は、フレームをマルチメディア制御ユニット150へ通知せず、フレーム受信処理を終える。
 次にマルチメディア制御ユニット150では、受信フレームの通知を受けるとフレーム判定部152においてマルチメディア制御ユニットフレーム判定処理を行う(ステップS1600)。マルチメディア制御ユニットフレーム判定処理S1600については、後に図16を用いて説明する。
 マルチメディア制御ユニットフレーム判定処理において、判定結果がOKの場合(つまり受信フレームが判定ルールに適合していると判定された場合)には(ステップS1700)、フレーム判定部152は、アプリケーション実行部154に受信フレームの内容を通知する。そして、アプリケーション実行部154は、ヘッドユニット100における各種機能を実現するためのアプリケーションプログラムを実行して、受信フレームの内容に応じた処理を行う(ステップS1800)。受信フレームの内容に応じた処理(受信フレーム対応処理)は、例えば受信したフレームのデータフィールドの内容に基づく演算、その演算結果に基づく制御信号の出力(例えば表示装置へ情報を表示させるための制御信号の出力)等である。なお、ステップS1700においてマルチメディア制御ユニットフレーム判定処理の判定結果がOKでない場合には、マルチメディア制御ユニット150は、アプリケーションプログラムによる受信フレームの内容に応じた処理を行わない。
 [1.14 ヘッドユニット100によるフレーム送信の動作]
 図14は、ヘッドユニット100におけるフレーム送信処理の一例を示すフローチャートである。以下、同図に即して、ヘッドユニット100におけるデータフレームの送信のための動作を説明する。ここで、アプリケーション実行部154により実行されるアプリケーションプログラムは、一定期間毎に或いは機能実現上の必要に応じて、送信されるべきフレーム(送信フレーム)の内容(例えばID及びデータフィールドの内容)を特定して送信指示を行う内容(命令列)を含むものとする。
 アプリケーション実行部154により、アプリケーションプログラムが実行され、アプリケーションプログラムによりデータフレームの送信指示がなされる(ステップS2100)。
 送信フレームの内容を特定して送信指示がなされた場合に、アプリケーション実行部154から特定された送信フレームの内容の通知を受けてフレーム判定部152は、マルチメディア制御ユニットフレーム判定処理を行う(ステップS1600)。この例では、フレーム送信処理において上述したフレーム受信処理(図13)と同じマルチメディア制御ユニットフレーム判定処理S1600を行うものとする。
 マルチメディア制御ユニットフレーム判定処理において、判定結果がOKの場合(つまり送信フレームについて判定ルールに適合していると判定された場合)には(ステップS2200)、ユニット間の通信処理により、マルチメディア制御ユニット150はシステム制御ユニット110にフレーム(送信フレーム)の内容を通知する(ステップS2300)。なお、ステップS2200においてマルチメディア制御ユニットフレーム判定処理の判定結果がOKでない場合には、マルチメディア制御ユニット150は、送信フレームの内容をシステム制御ユニット110へ通知せず、フレーム送信処理を終える。
 次にシステム制御ユニット110では、送信フレームの内容の通知を受けるとフレーム判定部115においてシステム制御ユニットフレーム判定処理を行う(ステップS1300)。この例では、フレーム送信処理において上述したフレーム受信処理(図13)と同じシステム制御ユニットフレーム判定処理S1300を行うものとする。
 システム制御ユニットフレーム判定処理において、判定結果がOKの場合(つまり送信フレームについて判定ルールに適合していると判定された場合)には(ステップS2400)、送信フレーム生成部118は、送信フレームの内容(マルチメディア制御ユニット150においてアプリケーションプログラムにより特定された内容)に基づいて送信フレーム(データフレーム)を生成する(ステップS2500)。そして、送信フレーム生成部118により生成された送信フレームをフレーム送受信部111がバス200上に送出することでデータフレームの送信を行う(ステップS2600)。なお、ステップS2400においてシステム制御ユニットフレーム判定処理の判定結果がOKでない場合には、システム制御ユニット110は、送信フレームのバス200上への送出を行わない。即ち、送信フレームがルールに適合している場合には、送信フレームはヘッドユニット100によりバス上に送出され、ルールに適合していない(不適合である)場合には、送信フレームのバス上への送出が抑止される。
 [1.15 システム制御ユニットフレーム判定処理]
 図15は、システム制御ユニット110におけるフレーム判定処理(システム制御ユニットフレーム判定処理)の一例を示すフローチャートである。以下、同図に即して、システム制御ユニット110のフレーム判定部115によるシステム制御ユニットフレーム判定処理S1300について説明する。システム制御ユニットフレーム判定処理S1300では、判定ルール保持部116が保持する判定ルール(図6参照)を参照して、フレームについて判定ルールへの適合性が判定され、判定ルールに適合していれば判定結果はOK(正常)、適合していなければ判定結果はNG(不正)となる。ここでは、判定ルールには、ヘッドユニット100が送信又は受信する各フレームのIDが記載されているものとする。
 フレーム判定部115は、判定対象が送信フレームか、受信フレームかを判別し(ステップS1301)、送信フレームの場合は、判定結果をOKとしてシステム制御ユニットフレーム判定処理を終え(ステップS1302)、受信フレームの場合には、ステップS1303へと進む。なお、フレーム判定部115は、受信フレーム解釈部112からデータ(受信フレーム)を通知された場合に、判定対象が受信フレームであると判別し、ユニット間通信処理部117からデータ(送信フレームの内容)を通知された場合に、判定対象が送信フレームであると判別する。
 ステップS1303では、フレーム判定部115は、判定対象のフレームのIDと一致するIDが判定ルールに記載されているかを確認し(ステップS1303)、記載されていればそのIDに関する判定ルールの各項目を取得する(ステップS1304)。判定対象のフレームのIDと一致するIDが判定ルールに記載されていなければ、判定結果をNGとして(ステップS1306)、システム制御ユニットフレーム判定処理を終える。
 フレーム判定部115は、ステップS1304で取得した判定ルールのデータ長及びデータ範囲という項目の基準に判定対象のフレームが適合しているか否かを判定する(ステップS1305)。判定対象のフレームが、データ長の基準及びデータ範囲の基準のいずれかに適合しなければ、フレーム判定部115は、判定結果をNGとして(ステップS1306)、システム制御ユニットフレーム判定処理を終える。
 ステップS1305で、判定対象のフレームが、データ長の基準及びデータ範囲の基準の両方に適合していると判定した場合には、フレーム判定部115は、判定対象のフレームが周期的に送信又は受信されるフレームであるか否かを判別する(ステップS1307)。具体的には、判定ルールの周期の項目が、周期的に送信又は受信されるフレームが無いことを表しておらず、かつ、イベント有無の項目が、イベントフレームが無いことを表している場合に周期的に送信又は受信されるフレームであると判別され、その他の場合には周期的に送信又は受信されるフレームでないと判別される。フレーム判定部115は、周期的に送信又は受信されるフレームであると判別した場合に、フレーム周期判定処理を行い(ステップS1330)、周期的に送信又は受信されるフレームでないと判別した場合に、フレーム頻度判定処理を行う(ステップS1350)。フレーム周期判定処理S1330及びフレーム頻度判定処理S1350については後述する。
 [1.16 マルチメディア制御ユニットフレーム判定処理]
 図16は、マルチメディア制御ユニット150におけるフレーム判定処理(マルチメディア制御ユニットフレーム判定処理)の一例を示すフローチャートである。以下、同図に即して、マルチメディア制御ユニット150のフレーム判定部152によるマルチメディア制御ユニットフレーム判定処理S1600について説明する。マルチメディア制御ユニットフレーム判定処理S1600では、判定ルール保持部153が保持する判定ルール(図6参照)を参照して、フレームについて判定ルールへの適合性が判定され、判定ルールに適合していれば判定結果はOK(正常)、適合していなければ判定結果はNG(不正)となる。
 フレーム判定部152は、判定対象が送信フレームか、受信フレームかを判別し(ステップS1601)、受信フレームの場合は、判定結果をOKとしてマルチメディア制御ユニットフレーム判定処理を終え(ステップS1602)、送信フレームの場合には、ステップS1303へと進む。なお、フレーム判定部152は、ユニット間通信処理部151からデータ(受信フレーム)を通知された場合に、判定対象が受信フレームであると判別し、アプリケーション実行部154からデータ(送信フレームの内容)を通知された場合に、判定対象が送信フレームであると判別する。
 なお、マルチメディア制御ユニットフレーム判定処理S1600におけるステップS1303、S1304、S1305、S1306、S1307、S1330及びS1350は上述したシステム制御ユニットフレーム判定処理S1300(図15)と同一内容であり、ここでは説明を省略する。
 [1.17 フレーム周期判定処理]
 図17は、フレーム周期判定処理S1330の一例を示すフローチャートである。フレーム判定部(つまりフレーム判定部115或いはフレーム判定部152)は、フレーム周期判定処理S1330を実行する。フレーム周期判定処理S1330は、判定対象のフレームが周期性に関連する基準に適合するか否か、つまり正しい周期で送信又は受信されているか否かを判定するための処理である。
 フレーム周期判定処理S1330として、フレーム判定部は、まず現在時刻を取得する(ステップS1331)。例えば、フレーム判定部115はシステム制御ユニット110内の計時機構(タイマ等)を用いて現在時刻を取得し、フレーム判定部152はマルチメディア制御ユニット150内の計時機構(タイマ等)を用いて現在時刻を取得する。或いは各フレーム判定部は、ヘッドユニット100におけるシステム制御ユニット110及びマルチメディア制御ユニット150とは別の回路である計時機構(タイマ等)から現在時刻を取得しても良い。
 次にフレーム判定部は、取得した現在時刻と、保存しておいた基準時刻との差分を計算する(ステップS1332)。なお、フレーム周期判定処理S1330の初回の実行時においては、基準時刻を保存していないので、例えば、例外的に判定結果をOKとして、現在時刻を基準時刻として保存する。
 ステップS1332に続いて、フレーム判定部は、現在時刻と基準時刻との差分(差分時刻と称する)が、周期±マージンの範囲内であるか否かを判別する(ステップS1333)。この判別には、判定ルール(図6参照)において、フレーム判定部の判定対象となるフレームのIDに対応した周期及びマージンが用いられる。
 ステップS1333において、差分時刻が周期±マージンの範囲内であると判別した場合には、フレーム判定部は、判定結果をOK(正常)とし(ステップS1334)、ステップS1331で取得した現在時刻を用いて基準時刻を更新し(ステップS1337)、フレーム周期判定処理S1330を終える。
 ステップS1333において、差分時刻が周期±マージンの範囲内でないと判別した場合には、フレーム判定部は、判定結果をNG(不正)とし(ステップS1335)、差分時刻が周期+マージンより大きいか否かを判別する(ステップS1336)。このステップS1336で、差分時刻が周期+マージンより大きくないと判別した場合には、フレーム判定部は、フレーム周期判定処理S1330を終える。また、差分時刻が周期+マージンより大きいと判別した場合には、フレーム判定部は、ステップS1331で取得した現在時刻を用いて基準時刻を更新し(ステップS1337)、フレーム周期判定処理S1330を終える。
 [1.18 フレーム頻度判定処理]
 図18は、フレーム頻度判定処理S1350の一例を示すフローチャートである。フレーム判定部(つまりフレーム判定部115或いはフレーム判定部152)は、フレーム頻度判定処理S1350を実行する。フレーム頻度判定処理S1350は、判定対象のフレームが頻度に関連する基準に適合するか否か、つまり正しい頻度(頻度閾値未満の頻度)で送信又は受信されているか否かを判定するための処理である。
 フレーム頻度判定処理S1350として、フレーム判定部は、まず頻度確認タイマーが設定時間(ここでは1秒とする)を超えたか否かを判別する(ステップS1351)。例えば、フレーム判定部115はシステム制御ユニット110内の計時機構(タイマ等)を用いて頻度確認タイマーとして機能させ、フレーム判定部152はマルチメディア制御ユニット150内の計時機構(タイマ等)を用いて頻度確認タイマーとして機能させる。或いは各フレーム判定部は、ヘッドユニット100におけるシステム制御ユニット110及びマルチメディア制御ユニット150とは別の回路である計時機構(タイマ等)を用いて頻度確認タイマーの機能を実現しても良い。
 次にフレーム判定部は、頻度確認タイマーが設定時間を超えた場合には、頻度確認タイマーをクリア(リセット)し、頻度を計数するための変数としての頻度カウンタをクリアする(ステップS1352)。
 フレーム判定部は、ステップS1351で頻度確認タイマーが設定時間を超えていない場合、及び、ステップS1352で頻度確認タイマーをリセットした場合には、頻度カウンタをインクリメント(1増加)する(ステップS1353)。そして、フレーム判定部は、判定ルール(図6参照)において、フレーム判定部の判定対象となるフレームのIDに対応した頻度閾値より、頻度カウンタが小さいか否かを判別する(ステップS1354)。
 ステップS1354において、頻度カウンタが頻度閾値より小さいと判別した場合には、フレーム判定部は、判定結果をOK(正常)とし(ステップS1355)、フレーム頻度判定処理S1350を終える。
 ステップS1354において、頻度カウンタが頻度閾値より小さいと判別した場合には、フレーム判定部は、判定結果をNG(不正)とし(ステップS1356)、フレーム頻度判定処理S1350を終える。
 [1.19 実施の形態1の効果]
 実施の形態1に係る車載ネットワークシステム10では、送受信するフレームの頻度や周期等といった複数のルール項目(基準)を用いて、定められたルールに適合するフレームか否かを判定して不適合の場合にその後の処理をフィルタリング(抑止)する。このため、不正なアプリケーションプログラムによるバス200への不正なフレームの送出が低減される。また、主にバス200を用いた通信を担当するチップであるシステム制御ユニット110と、主にアプリケーションプログラムの実行制御等を担当するチップであるマルチメディア制御ユニット150とのそれぞれのフレーム判定部により送信フレームと受信フレームとの判定を分担して、フレームがルールに適合するか否かを判定している。これにより、ルールに適合しないフレームをチップ間で伝送しないため、処理負荷が軽減される。
 [1.20 実施の形態1の変形例1]
 以下、上述したフレーム周期判定処理S1330(図17参照)を一部変形したフレーム周期判定処理S3330について説明する。
 図19は、フレーム周期判定処理S3330のフローチャートを示す。フレーム判定部(つまりフレーム判定部115或いはフレーム判定部152)は、上述したフレーム周期判定処理S1330の代わりにフレーム周期判定処理S3330を実行する。
 なお、フレーム周期判定処理S3330におけるステップS1331~S1336は上述したフレーム周期判定処理S1330(図17)と同一内容であり、ここでは適宜説明を省略する。
 ステップS1333において、差分時刻が周期±マージンの範囲内であると判別した場合には、フレーム判定部は、判定結果をOK(正常)とし(ステップS1334)、判定対象のフレームを受信した時刻を最新受信時刻として保存する(ステップS3331)。
 ステップS1335又はステップS3331の後に、フレーム判定部は、差分時刻が周期+マージンより大きいか否かを判別する(ステップS1336)。このステップS1336で、差分時刻が周期+マージンより大きくないと判別した場合には、フレーム判定部は、フレーム周期判定処理S3330を終える。また、差分時刻が周期+マージンより大きいと判別した場合には、フレーム判定部は、ステップS3331で保存した最新受信時刻を用いて基準時刻を更新する(ステップS3332)。なお、ステップS3332では、判定結果がOKとなる時刻の範囲において複数のフレームを受信した場合における最新(最後)の受信時刻を用いて基準時刻を更新するが、この代わりに、例えば、判定結果がOKとなる時刻の範囲において複数のフレームを受信した場合における最初の受信時刻を用いて基準時刻を更新しても良い。また、その複数のフレームの受信時刻のうち、更新前の基準時刻に周期を加えた時刻に最も近い受信時刻を用いて基準時刻を更新しても良い。
 ステップS3332に続いて、フレーム判定部は、基準時刻+周期を最新受信時刻として保存し(ステップS3333)、フレーム周期判定処理S3330を終える。なお、ステップS3333で、基準時刻+周期の代わりに、基準時刻+周期-マージン~基準時刻+周期+マージンの範囲内のいずれかの時刻を、最新受信時刻として保存することとしても良い。
 実施の形態1の変形例1によれば、基準時刻+周期±マージンの範囲内の全てのフレームの判定結果をOKとするので、ルールに適合したフレームを不正と誤判定してしまうことを抑制し得る。
 [1.21 実施の形態1の変形例2]
 上述したシステム制御ユニット110のフレーム判定部115とマルチメディア制御ユニット150のフレーム判定部152とにおけるフレーム判定処理(判定ルールへの適合性の判定)の分担(図15、図16参照)を、変更しても良い。実施の形態1の変形例2として、図20及び図21に、別の分担の例を示す。
 図20は、システム制御ユニットフレーム判定処理S1300の変形例としてのシステム制御ユニットフレーム判定処理S4300を示すフローチャートである。なお、システム制御ユニットフレーム判定処理S4300におけるステップS1301~S1306は上述したシステム制御ユニットフレーム判定処理S1300(図15)と同一内容であり、ここでは説明を省略する。
 ステップS1305で、判定対象のフレームが、データ長の基準及びデータ範囲の基準の両方に適合していると判定した場合には、フレーム判定部115は、判定結果をOK(正常)とし(ステップS4301)、システム制御ユニットフレーム判定処理を終える。
 システム制御ユニットフレーム判定処理S4300では、システム制御ユニットフレーム判定処理S1300(図15)におけるフレーム周期判定処理S1330及びフレーム頻度判定処理S1350を含んでいない。
 図21は、マルチメディア制御ユニットフレーム判定処理S1600の変形例としてのマルチメディア制御ユニットフレーム判定処理S4600を示すフローチャートである。なお、マルチメディア制御ユニットフレーム判定処理S4600におけるステップS1303~S1307、S1601、S1602、S1330及びS1350は上述したマルチメディア制御ユニットフレーム判定処理S1600(図16)と同一内容であり、ここでは適宜説明を省略する。
 フレーム判定部152は、判定対象のフレームのIDと一致するIDが判定ルール(図6参照)に記載されているかを確認し(ステップS1303)、記載されていればそのIDに関する判定ルールの各項目を取得する(ステップS1304)。判定対象のフレームのIDと一致するIDが判定ルールに記載されていなければ、判定結果をNGとして(ステップS1306)、マルチメディア制御ユニットフレーム判定処理を終える。
 フレーム判定部152は、判定対象が送信フレームか、受信フレームかを判別し(ステップS1601)、送信フレームの場合は、ステップS1304で取得した判定ルールのデータ長及びデータ範囲という項目の基準に判定対象のフレームが適合しているか否かを判定する(ステップS1305)。なお、フレーム判定部152は、ユニット間通信処理部151からデータ(受信フレーム)を通知された場合に、判定対象が受信フレームであると判別し、アプリケーション実行部154からデータ(送信フレームの内容)を通知された場合に、判定対象が送信フレームであると判別する。ステップS1305において、判定対象のフレームがデータ長の基準及びデータ範囲の基準のいずれかに適合しなければ、フレーム判定部152は、判定結果をNGとして(ステップS1306)、マルチメディア制御ユニットフレーム判定処理を終える。
 ステップS1305で判定対象のフレームがデータ長の基準及びデータ範囲の基準の両方に適合していると判定した場合、又は、ステップS1601で受信フレームと判別された場合には、フレーム判定部152は、判定対象のフレームが周期的に送信又は受信されるフレームであるか否かを判別する(ステップS1307)。フレーム判定部152は、周期的に送信又は受信されるフレームであると判別した場合に、フレーム周期判定処理を行い(ステップS1330)、周期的に送信又は受信されるフレームでないと判別した場合に、フレーム頻度判定処理を行う(ステップS1350)。
 このように、実施の形態1の変形例2では、マルチメディア制御ユニットフレーム判定処理S4600において、送信フレームのみならず受信フレームも対象として、フレーム周期判定処理S1330及びフレーム頻度判定処理S1350のいずれかが実行される。即ち、実施の形態1と比較すると変形例2では、受信フレームについての一部の処理(フレーム周期判定処理S1330、フレーム頻度判定処理S1350等)の分担がシステム制御ユニット110からマルチメディア制御ユニット150へと移っている。この変形例2は、例えばマルチメディア制御ユニットがシステム制御ユニットよりも高性能な場合等において効果的である。このように、各制御ユニットの処理能力に応じて、フレームのルールへの適合性の判定処理の負荷分散を行うことが有用である。
 [1.22 実施の形態1の変形例3]
 以下、更に別の例として、システム制御ユニット110のフレーム判定部115とマルチメディア制御ユニット150のフレーム判定部152とにおけるフレーム判定処理(判定ルールへの適合性の判定)の分担(図15、図16参照)を変更した変形例3を示す。
 図22は、システム制御ユニットフレーム判定処理S1300の別の変形例としてのシステム制御ユニットフレーム判定処理S5300を示すフローチャートである。なお、システム制御ユニットフレーム判定処理S5300におけるステップS1301~S1304、S1306、S1307、S1330及びS1350は、上述したシステム制御ユニットフレーム判定処理S1300(図15)と同一内容であり、ここでは説明を適宜省略する。
 ステップS1304の後に、フレーム判定部115は、判定対象のフレームが周期的に送信又は受信されるフレームであるか否かを判別する(ステップS1307)。
 システム制御ユニットフレーム判定処理S5300では、システム制御ユニットフレーム判定処理S1300(図15)における、判定ルールのデータ長及びデータ範囲の基準に判定対象のフレームが適合しているか否かを判定するステップS1305を含んでいない。
 図23は、マルチメディア制御ユニットフレーム判定処理S1600の別の変形例としてのマルチメディア制御ユニットフレーム判定処理S5600を示すフローチャートである。なお、マルチメディア制御ユニットフレーム判定処理S5600におけるステップS1303~S1307、S1601、S1602、S1330及びS1350は上述したマルチメディア制御ユニットフレーム判定処理S1600(図16)と同一内容であり、ここでは適宜説明を省略する。
 フレーム判定部152は、判定対象のフレームのIDと一致するIDが判定ルール(図6参照)に記載されているかを確認し(ステップS1303)、記載されていればそのIDに関する判定ルールの各項目を取得する(ステップS1304)。判定対象のフレームのIDと一致するIDが判定ルールに記載されていなければ、判定結果をNGとして(ステップS1306)、マルチメディア制御ユニットフレーム判定処理を終える。
 ステップS1304に続いて、フレーム判定部152は、判定ルールのデータ長及びデータ範囲という項目の基準に判定対象のフレームが適合しているか否かを判定する(ステップS1305)。ステップS1305において、判定対象のフレームがデータ長の基準及びデータ範囲の基準のいずれかに適合しなければ、フレーム判定部152は、判定結果をNGとして(ステップS1306)、マルチメディア制御ユニットフレーム判定処理を終える。
 ステップS1305で判定対象のフレームがデータ長の基準及びデータ範囲の基準の両方に適合していると判定した場合には、フレーム判定部152は、判定対象が送信フレームか、受信フレームかを判別する(ステップS1601)。送信フレームでなく受信フレームの場合は、フレーム判定部152は判定結果をOKとしてマルチメディア制御ユニットフレーム判定処理を終え(ステップS1602)、送信フレームの場合には、ステップS1307へと進む。
 このように、実施の形態1の変形例3では、マルチメディア制御ユニットフレーム判定処理S5600において、送信フレームのみならず受信フレームも対象として、判定ルールのデータ長及びデータ範囲の基準に判定対象のフレームが適合しているか否かを判定するステップS1305が実行される。即ち、実施の形態1と比較すると変形例3では、受信フレームについての一部の処理(ステップS1305)の分担がシステム制御ユニット110からマルチメディア制御ユニット150へと移っている。この変形例3は、例えばマルチメディア制御ユニットがシステム制御ユニットよりも高性能な場合等において効果的である。また、システム制御ユニット110及びマルチメディア制御ユニット150のうち、バス200からの受信フレームを先に処理するシステム制御ユニット110で受信フレームの周期又は頻度に係るルール項目(基準)への適合性の判定を行う。このため、両ユニット間での伝達による遅延等の影響を受けることなく、精度良くその判定が行える。このように、各制御ユニットのバス200との位置関係及び処理能力に応じて、フレームのルールへの適合性の判定処理の負荷分散を適切に行うことが有用である。
 この変形例3では、例えば、ヘッドユニット100のマルチメディア制御ユニット150(第1制御ユニット)であるチップにおいてメモリに格納されたプログラムをプロセッサで実行することにより、送信フレームについて第1所定ルール(例えばデータ長、データ範囲等、或いは、周期、頻度等)に適合しているか不適合であるかを判定する第1判定部としての機能を実現している。送信フレームについては、第1判定部により不適合であると判定された場合に、その送信フレームに係る情報の第1制御ユニットからシステム制御ユニット110(第2制御ユニット)への送信は抑止される。また、ヘッドユニット100のシステム制御ユニット110(第2制御ユニット)であるチップにおいてメモリに格納されたプログラムをプロセッサで実行することにより、受信フレームについて第2所定ルール(例えば周期、頻度等)に適合しているか不適合であるかを判定する第2判定部としての機能を実現している。また、マルチメディア制御ユニット150であるチップにおいてメモリに格納されたプログラムをプロセッサで実行することにより、受信フレームについて第3所定ルール(例えばデータ長、データ範囲等)に適合しているか不適合であるかを判定する第3判定部としての機能を実現している。なお、第1判定部及び第3判定部は、フレーム判定部152の構成要素であり、第2判定部は、フレーム判定部115の構成要素である。
 (実施の形態2)
 以下、本発明の実施の形態として、バスに送出する送信フレーム等を含むフレームについてルールへの適合性を判定して、その判定結果をログとして保存する車両用通信方法を行う車両用通信装置(ヘッドユニット2100)を含む車載ネットワークシステムについて図面を用いて説明する。本実施の形態に係る車載ネットワークシステムは、実施の形態1で示した車載ネットワークシステム10のヘッドユニット100をヘッドユニット2100に置き換えたものである。
 [2.1 ヘッドユニット2100の構成]
 ヘッドユニット2100は、ヘッドユニット100と同様に車両用通信装置であり、例えば、自動車のインパネ等に設けられ、運転者に視認されるための情報を表示する表示装置、運転者の操作を受け付ける入力手段等を備える一種のECUである。
 図24は、ヘッドユニット2100の構成図である。同図に示すようにヘッドユニット2100は、システム制御ユニット2110と、マルチメディア制御ユニット2150とを含んで構成される。なお、実施の形態1で示した構成要素と同一のものには同じ符号を付しており、これらについては説明を省略する。
 システム制御ユニット2110は、実施の形態1で示したシステム制御ユニット110を一部変形したものであり、マルチメディア制御ユニット2150は、実施の形態1で示したマルチメディア制御ユニット150を一部変形したものである。
 システム制御ユニット2110は、主にバス200での通信の制御を担い、フレーム送受信部111と、受信フレーム解釈部112と、受信ID判断部113と、受信IDリスト保持部114と、フレーム判定部2115と、判定ルール保持部116と、ユニット間通信処理部117と、送信フレーム生成部118と、判定結果保持部2119とを含んで構成される。
 フレーム判定部2115は、受信フレーム解釈部112から受信したフレームの値、或いは、ユニット間通信処理部117より送信すべきフレームの内容となる値を受け取る。そして、判定ルール保持部116から判定ルールを取得し、判定ルールに基づいたフレーム判定処理(システム制御ユニットフレーム判定処理)の結果に関する情報を判定結果保持部2119に通知する。システム制御ユニットフレーム判定処理の内容は実施の形態1で示したものと同じである(図15参照)。また、フレーム判定部2115は、システム制御ユニットフレーム判定処理の結果に拘らず、送信フレーム生成部118、或いは、ユニット間通信処理部117へフレームの値を通知する。
 判定結果保持部2119は、メモリ等の記憶媒体を含んで実現され、フレーム判定部2115からフレーム判定処理の結果に関する情報を通知され、その情報をログとして記憶媒体に保存する。フレーム判定処理の結果に関する情報は、判定対象のフレームの内容と判定結果とを含む情報である。
 また、マルチメディア制御ユニット2150は、主にアプリケーションプログラムの実行制御処理を担い、ユニット間通信処理部151と、フレーム判定部2152と、判定ルール保持部153と、アプリケーション実行部154と、判定結果保持部2155を含んで構成される。
 フレーム判定部2152は、アプリケーション実行部154から送信すべきフレームの内容となる値、或いは、ユニット間通信処理部151から受信されたフレームの値を受け取る。そして、判定ルール保持部153から判定ルールを取得し、判定ルールに基づいたフレーム判定処理(マルチメディア制御ユニットフレーム判定処理)の結果に関する情報を判定結果保持部2155に通知する。マルチメディア制御ユニットフレーム判定処理の内容は実施の形態1で示したものと同じである(図16参照)。また、フレーム判定部2152は、マルチメディア制御ユニットフレーム判定処理の結果に拘らず、アプリケーション実行部154、或いは、ユニット間通信処理部151へフレームの値を通知する。
 判定結果保持部2155は、メモリ等の記憶媒体を含んで実現され、フレーム判定部2152からフレーム判定処理の結果に関する情報(判定対象のフレームの内容と判定結果とを含む情報)を通知され、その情報をログとして記憶媒体に保存する。
 [2.2 ヘッドユニット2100によるフレーム受信の動作]
 図25は、ヘッドユニット2100におけるフレーム受信処理の一例を示すフローチャートである。同図に示すように、ヘッドユニット2100におけるフレーム受信処理は、ヘッドユニット100におけるフレーム受信処理(図13参照)のステップS1100、S1200、S1300、S1500、S1600及びS1800と同一の処理を含む。この同一の処理については説明を適宜省略する。
 システム制御ユニットフレーム判定処理S1300に続いて、ヘッドユニット2100のシステム制御ユニット2110におけるフレーム判定部2115は、判定結果保持部2119に判定結果に関する情報(判定対象のフレームに内容と判定結果とを含む情報)を通知してログとして保存させる(ステップS11001)。続いて、ユニット間の通信処理により、システム制御ユニット2110はマルチメディア制御ユニット2150にフレーム(受信フレーム)の内容を通知する(ステップS1500)。
 また、マルチメディア制御ユニットフレーム判定処理S1600に続いて、ヘッドユニット2100のマルチメディア制御ユニット2150におけるフレーム判定部2152は、判定結果保持部2155に判定結果に関する情報(判定対象のフレームの内容と判定結果とを含む情報)を通知してログとして保存させる(ステップS11002)。続いて、フレーム判定部2152は、アプリケーション実行部154に受信フレームの内容を通知する。
 [2.3 ヘッドユニット2100によるフレーム送信の動作]
 図26は、ヘッドユニット2100におけるフレーム送信処理の一例を示すフローチャートである。同図に示すように、ヘッドユニット2100におけるフレーム送信処理は、ヘッドユニット100におけるフレーム送信処理(図14参照)のステップS2100、S1600、S2300、S1300、S2500及びS2600と同一の処理を含む。この同一の処理については説明を適宜省略する。
 マルチメディア制御ユニットフレーム判定処理S1600に続いて、ヘッドユニット2100のマルチメディア制御ユニット2150におけるフレーム判定部2152は、判定結果保持部2155に判定結果に関する情報(判定対象のフレームの内容と判定結果とを含む情報)をログとして保存させる(ステップS11003)。続いて、ユニット間の通信処理により、マルチメディア制御ユニット2150はシステム制御ユニット2110にフレーム(送信フレーム)の内容を通知する(ステップS2300)。
 また、システム制御ユニットフレーム判定処理S1300に続いて、ヘッドユニット2100のシステム制御ユニット2110におけるフレーム判定部2115は、判定結果保持部2119に判定結果に関する情報(判定結果のフレームの内容と判定結果とを含む情報)をログとして保存させる(ステップS11004)。続いて、送信フレーム生成部118は、送信フレームの内容(マルチメディア制御ユニット2150においてアプリケーションプログラムにより特定された内容)に基づいて送信フレーム(データフレーム)を生成する(ステップS2500)。
 [2.4 実施の形態2の効果]
 実施の形態2に係る車載ネットワークシステムのヘッドユニット2100では、送受信するフレームについて、頻度や周期等、複数のルール項目(基準)への適合性を判定して、判定の結果をログとして保存しておく。この保存したログを収集し、分析することにより、例えば、判定ルールの各基準の見直しを行うことができ、フレーム判定の精度の向上等を図ることができる。なお、判定ルールの各基準の見直しの結果は、車載ネットワークシステムを構成する装置等の製造、或いは、その装置で使用されるデータ、プログラム等の更新等に活用され得る。
 (実施の形態3)
 以下、本発明の実施の形態として、バスに送出する送信フレーム等を含むフレームについてルールへの適合性を判定して、その判定結果を車両外部に所在するサーバ(コンピュータ)に通知(送信)する車両用通信方法を行う車両用通信装置(ヘッドユニット3100)を含む車載ネットワークシステムについて図面を用いて説明する。本実施の形態に係る車載ネットワークシステム10aは、実施の形態1で示した車載ネットワークシステム10のヘッドユニット100をヘッドユニット3100に置き換えたものである。
 [3.1 ネットワークシステム30の全体構成]
 図27は、本発明に係るネットワークシステム30の全体構成を示す図である。ネットワークシステム30は、車両に搭載された車載ネットワークシステム10aと、車両外部に所在するサーバ3500とを含んで構成される。
 車載ネットワークシステム10aは、車載ネットワークシステム10を一部変形したものであり、バス200と、ヘッドユニット3100、各種機器に接続されたECU400a~400d等のECUといったバスに接続された各ノードとを含んで構成される。車載ネットワークシステム10aの構成要素のうち車載ネットワークシステム10(図1参照)の構成要素と同一のものには同じ符号を付しており、これらについては説明を省略する。車載ネットワークシステム10aにおいてはCANプロトコルに従って、ヘッドユニット3100を含む各ECUがフレームの授受を行う。
 ヘッドユニット3100は、ヘッドユニット100と同様に車両用通信装置であり、例えば、自動車のインパネ等に設けられ、運転者に視認されるための情報を表示する表示装置、運転者の操作を受け付ける入力手段等を備える一種のECUである。ヘッドユニット3100は、ECU400a~400dから送信されるフレームを受信し、各種状態をディスプレイ(図示しない)に表示して、ユーザに提示する機能を持つ。また、ヘッドユニット3100が取得する各情報を示すフレームを生成して、そのフレームを、バス200を介して1台以上のECUに送信する機能を持つ。また、送受信するフレームについてルールへの適合性を判定することで、不正なフレーム(つまりルールに適合しないフレーム)か否かの判別等を行い、その判定結果に関する情報をサーバ3500に通知(送信)する機能を有する。なお、ヘッドユニット3100も一種のECUである。
 サーバ3500は、ヘッドユニット3100と通信可能な装置(サーバ装置)であり、フレームの判定結果に関する情報をヘッドユニット3100から受信して、収集する機能を有するコンピュータである。
 [3.2 ヘッドユニット3100の構成]
 図28は、ヘッドユニット3100の構成図である。ヘッドユニット3100は、システム制御ユニット3110と、マルチメディア制御ユニット3150と、外部通信制御ユニット3170とを含んで構成される。なお、実施の形態1で示した構成要素と同一のものには同じ符号を付しており、これらについては説明を省略する。
 システム制御ユニット3110は、実施の形態1で示したシステム制御ユニット110を一部変形したものであり、マルチメディア制御ユニット3150は、実施の形態1で示したマルチメディア制御ユニット150を一部変形したものである。
 システム制御ユニット3110は、主にバス200での通信の制御を担い、フレーム送受信部111と、受信フレーム解釈部112と、受信ID判断部113と、受信IDリスト保持部114と、フレーム判定部3115と、判定ルール保持部116と、ユニット間通信処理部117と、送信フレーム生成部118とを含んで構成される。
 フレーム判定部3115は、受信フレーム解釈部112から受信したフレームの値、或いは、ユニット間通信処理部117より送信すべきフレームの内容となる値を受け取る。そして、判定ルール保持部116から判定ルールを取得し、判定ルールに基づいたフレーム判定処理(システム制御ユニットフレーム判定処理)の結果に関する情報をユニット間通信処理部117に通知して外部通信制御ユニット3170へと通知させる。システム制御ユニットフレーム判定処理の内容は実施の形態1で示したものと同じである(図15参照)。また、フレーム判定部3115は、システム制御ユニットフレーム判定処理の結果に拘らず、送信フレーム生成部118、或いは、ユニット間通信処理部117へフレームの値を通知する。
 また、マルチメディア制御ユニット3150は、主にアプリケーションプログラムの実行制御処理を担い、ユニット間通信処理部151と、フレーム判定部3152と、判定ルール保持部153と、アプリケーション実行部154とを含んで構成される。
 フレーム判定部3152は、アプリケーション実行部154から送信すべきフレームの内容となる値、或いは、ユニット間通信処理部151から受信されたフレームの値を受け取る。そして、判定ルール保持部153から判定ルールを取得し、判定ルールに基づいたフレーム判定処理(マルチメディア制御ユニットフレーム判定処理)の結果に関する情報をユニット間通信処理部151に通知して外部通信制御ユニット3170へと通知させる。マルチメディア制御ユニットフレーム判定処理の内容は実施の形態1で示したものと同じである(図16参照)。また、フレーム判定部3152は、マルチメディア制御ユニットフレーム判定処理の結果に拘らず、アプリケーション実行部154、或いは、ユニット間通信処理部151へフレームの値を通知する。
 外部通信制御ユニット3170は、例えばシステム制御ユニット3110及びマルチメディア制御ユニット3150とは異なるチップであり、機能構成要素としてユニット間通信処理部3171と、外部通信処理部3172とを含んで構成される。これらの各機能構成要素は、チップに集積された通信回路、メモリ及びこのメモリに格納された制御プログラムを実行するプロセッサその他の回路等により実現される。
 ユニット間通信処理部3171は、異なるユニット間の通信処理を行う。即ち、ユニット間通信処理部117は、システム制御ユニット3110或いはマルチメディア制御ユニット3150との間で、有線又は無線の通信により情報の授受を行う。
 外部通信処理部3172は、車両外部のサーバ3500と無線通信するための機能を有し、ユニット間通信処理部3171より、フレームの判定結果に関する情報を通知されるとサーバ3500へ通知(送信)する。
 [3.3 ヘッドユニット3100によるフレーム受信の動作]
 図29は、ヘッドユニット3100におけるフレーム受信処理の一例を示すフローチャートである。同図に示すように、ヘッドユニット3100におけるフレーム受信処理は、ヘッドユニット100におけるフレーム受信処理(図13参照)のステップS1100、S1200、S1300、S1500、S1600及びS1800と同一の処理を含む。この同一の処理については説明を適宜省略する。
 システム制御ユニットフレーム判定処理S1300に続いて、ヘッドユニット3100のシステム制御ユニット3110におけるフレーム判定部3115は、判定結果に関する情報(判定対象のフレームに内容と判定結果とを含む情報)を、ユニット間通信処理部117を介して外部通信制御ユニット3170へ通知する(ステップS21001)。これに対応して、外部通信制御ユニット3170は外部通信処理部3172により、判定結果に関する情報をサーバへ通知する(ステップS21002)。続いて、ユニット間の通信処理により、システム制御ユニット3110はマルチメディア制御ユニット3150にフレーム(受信フレーム)の内容を通知する(ステップS1500)。
 また、マルチメディア制御ユニットフレーム判定処理S1600に続いて、ヘッドユニット3100のマルチメディア制御ユニット3150におけるフレーム判定部3152は、判定結果に関する情報(判定対象のフレームの内容と判定結果とを含む情報)を、ユニット間通信処理部151を介して外部通信制御ユニット3170へ通知する(ステップS21003)。これに対応して、外部通信制御ユニット3170は外部通信処理部3172により、判定結果に関する情報をサーバへ通知する(ステップS21004)。続いて、フレーム判定部3152は、アプリケーション実行部154に受信フレームの内容を通知する。
 [3.4 ヘッドユニット3100によるフレーム送信の動作]
 図30は、ヘッドユニット3100におけるフレーム送信処理の一例を示すフローチャートである。同図に示すように、ヘッドユニット3100におけるフレーム送信処理は、ヘッドユニット100におけるフレーム送信処理(図14参照)のステップS2100、S1600、S2300、S1300、S2500及びS2600と同一の処理を含む。この同一の処理については説明を適宜省略する。
 マルチメディア制御ユニットフレーム判定処理S1600に続いて、ヘッドユニット3100のマルチメディア制御ユニット3150におけるフレーム判定部3152は、判定結果に関する情報(判定対象のフレームの内容と判定結果とを含む情報)を、ユニット間通信処理部151を介して外部通信制御ユニット3170へと通知する(ステップS21003)。これに対応して、外部通信制御ユニット3170は外部通信処理部3172により、判定結果に関する情報をサーバへ通知する(ステップS21004)。続いて、ユニット間の通信処理により、マルチメディア制御ユニット3150はシステム制御ユニット3110にフレーム(送信フレーム)の内容を通知する(ステップS2300)。
 また、システム制御ユニットフレーム判定処理S1300に続いて、ヘッドユニット3100のシステム制御ユニット3110におけるフレーム判定部3115は、判定結果に関する情報(判定結果のフレームの内容と判定結果とを含む情報)を、ユニット間通信処理部117を介して外部通信制御ユニット3170へと通知する(ステップS21001)。これに対応して、外部通信制御ユニット3170は外部通信処理部3172により、判定結果に関する情報をサーバへ通知する(ステップS21002)。続いて、送信フレーム生成部118は、送信フレームの内容(マルチメディア制御ユニット3150においてアプリケーションプログラムにより特定された内容)に基づいて送信フレーム(データフレーム)を生成する(ステップS2500)。
 [3.5 実施の形態3の効果]
 実施の形態3に係る車載ネットワークシステム10aのヘッドユニット3100は、送受信するフレームについて、頻度や周期等、複数のルール項目(基準)への適合性を判定して、判定の結果に関する情報をサーバ3500に送信する。サーバ3500が、この判定の結果に関する情報を収集して分析することにより、例えば、判定ルールの各基準の見直しを行うことができ、フレーム判定の精度の向上等を図ることができる。なお、判定ルールの各基準の見直しの結果は、車載ネットワークシステムを構成する装置等の製造、或いは、その装置で使用されるデータ、プログラム等の更新等に活用され得る。
 (他の実施の形態)
 以上のように、本発明に係る技術の例示として実施の形態1~3を説明した。しかしながら、本発明に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施態様に含まれる。
 (1)上記実施の形態では、CANプロトコルにおけるデータフレームを標準IDフォーマットで記述しているが、拡張IDフォーマットで合っても良い。拡張IDフォーマットの場合には、標準IDフォーマットにおけるID位置のベースIDと、拡張IDとを合わせて29ビットでID(メッセージID)を表すので、この29ビットのIDを上述の実施の形態におけるID(メッセージID)と扱えば良い。
 (2)上記実施の形態では、フレーム周期判定処理で利用するマージンを1つに定めているが、複数持っても良い。また、各マージンを用いた判定結果を同一の扱いとしても良いし、各マージンを用いた判定結果に重み付けを行っても良い。また、マージン毎に判定結果後の処理を変更しても良い。例えば、第一のマージンの範囲に当てはまるフレームの判定結果はログを残すだけにし、第二のマージンの範囲に当てはまるフレームの判定結果はフィルタリングに用い、不正と判定した場合にフレームの送受信処理を抑止しても良い。また、判定ルールにおけるマージンの値は固定値に限定されず、計算式であっても良い。また、全てのIDのフレーム処理総数に応じて、マージンの値を動的に変更しても良い。
 (3)上記実施の形態では、フレーム頻度判定処理で利用する閾値(頻度閾値)を1つに定めているが、複数持っても良い。また、各閾値を用いた判定結果を同一の扱いとしても良いし、各閾値を用いた判定結果に重み付けを行っても良い。また、閾値毎に判定結果後の処理を変更しても良い。例えば、第一の閾値を使ったフレームの判定結果はログを残すだけにし、第二の閾値に当てはまるフレームの判定結果はフィルタリングに用い、不正と判定した場合にフレームの送受信処理を抑止しても良い。また、判定ルールにおける頻度閾値は固定値に限定されず、計算式であっても良い。また、全てのIDのフレーム処理総数に応じて、頻度閾値を動的に変更しても良い。
 (4)上記実施の形態では、フレームの周期についての基準への適合性の判定結果をOK(正常)及びNG(不正)の2種類としているが、複数種類としても良い。例えば、実施の形態1の変形例1のように、一定のマージン範囲内に複数のフレームの受信を許容するような場合において、複数受信である旨を判定結果に含めるようにしても良い。また、判定ルールの各項目(基準)への適合性について、一定の評価基準で適合度合い(例えば100%適合、80%適合等)を表して、その適合度合いを判定結果としても良い。
 (5)上記実施の形態では、フレーム判定処理をシステム制御ユニットとマルチメディア制御ユニットとに分割して実施しているが、どちらか一方のみで行うようにしても良い。また、ヘッドユニット等のECUである車両用通信装置においては、送信フレームについてルールへの適合性の判定を行えば必ずしも受信フレームについてルールの適合性の判定を行わなくてもよい。また、上述の実施の形態では、受信フレームと送信フレームとの区別に基づいて、フレーム判定処理を実施するユニットを分離する例を示したが、ID毎、タイミング毎等の区別により分離しても良い。また、フレーム判定(フレームのルールへの適合性の判定)を行う部分を同一ユニット内の複数箇所に分離しても良い。例えば、アプリケーションプログラム毎に分離しても良く、また、同一チップ内において複数のオペレーティングシステム(OS)が稼働する場合においてはOS毎に分離しても良い。また、フレーム判定を実行可能な箇所を複数設けておき、システム全体の処理負荷や、フレーム処理の頻度等に応じて動的に、フレーム判定を実際に行う箇所を選定することとしても良い。また、受信フレーム或いは送信フレームについてのルールへの適合性の判定を、マルチメディア制御ユニットとシステム制御ユニットとの間でどのように分担しても良い。つまり、ユニットそれぞれがどのルール項目(基準)の判定を分担しても良い。車載ネットワークシステムのバスに接続されたヘッドユニット等のECUである車両用通信装置は、バスへの送出用のフレームである送信フレームを特定するマルチメディア制御ユニット(第1制御ユニット)と、この第1制御ユニットと有線又は無線により通信してフレームに係る情報を授受し得るシステム制御ユニット(第2制御ユニット)とを備え、これら第1制御ユニット及び第2制御ユニットのうち少なくとも1つが、送信フレーム等について、ルールへの適合性に係る判定を行うものであれば良い。また、第1制御ユニットは、送信フレームについて第1所定ルール(例えば図6の判定ルールのいずれかの項目の基準)に適合しているか不適合であるかを判定する第1判定部を有し、第2制御ユニットは、受信フレームについて第2所定ルール(例えば図6の判定ルールのいずれかの項目の基準)に適合しているか不適合であるかを判定する第2判定部を有してもよい。
 (6)上記実施の形態では、フレーム周期判定処理で利用する判定ルールにおける周期とマージンとを、ID毎に1つに定めているが、複数のIDをまとめたグループ単位毎に定めても良い。また、フレーム周期判定処理は1フレームの送信又は受信毎に1回ずつ行うようにしている。しかし、これに限定するものではなく、全てのIDにまたがったフレーム周期判定処理、グループ単位のフレーム周期判定処理等といった、判定内容の異なるフレーム周期判定処理を複数組み合わせて行うこととしても良い。
 (7)上記実施の形態では、フレーム頻度判定処理で利用する判定ルールにおける閾値(頻度閾値)を、ID毎に1つに定めているが、複数のIDをまとめたグループ単位毎に定めても良い。また、フレーム頻度判定処理は1フレームの送信又は受信毎に1回ずつ行うようにしている。しかし、これに限定するものではなく、全てのIDにまたがったフレーム頻度判定処理、グループ単位のフレーム頻度判定処理等といった、判定内容の異なるフレーム頻度判定処理を複数組み合わせて行うこととしても良い。
 (8)上記実施の形態2では、判定結果保持部を、各ユニット(システム制御ユニット及びマルチメディア制御ユニットのそれぞれ)が有している。しかし、この構成に限定するものではなく、どちらか一方だけが有しても良いし、どちらとも異なるヘッドユニット内の別の独立したユニット(チップ等)だけが有しても良い。また、判定結果保持部がログを保存する記憶媒体(記録媒体)は、判定結果保持部の内部のメモリ等の他、外部の回路、装置等で実現されたメモリ、ハードディスク等であっても良い。
 (9)上記実施の形態2では、フレームの判定結果に応じて、判定結果をログに保存するかしないかを切り替えても良い。また、全てのIDの判定結果を保存しても良いし、特定のIDに対する判定結果のみを保存しても良い。また、ユニット毎に判定結果を保存するかしないかを切り替えても良い。
 (10)上記実施の形態3では、サーバとの通信のために外部通信制御ユニット3170を有している。しかし、この構成に限定するものではなく、システム制御ユニット3110及びマルチメディア制御ユニット3150のどちらか一方、或いは、両方に、サーバとの通信のための構成(集積回路等)を含ませても良い。また、システム制御ユニット3110から外部通信制御ユニット3170への、フレームの判定結果に関する情報の伝達は、直接ではなく、マルチメディア制御ユニット3150(ユニット間通信処理部151)を介して行われるようにしても良い。
 (11)上記実施の形態3では、フレームの判定結果に応じて、判定結果をサーバに通知するかしないかを切り替えても良い。また、全てのIDの判定結果をサーバに通知しても良いし、特定のIDに対する判定結果のみをサーバに通知しても良い。また、ユニット毎に判定結果をサーバに通知するかしないかを切り替えても良い。
 (12)上記実施の形態3では、ユニット毎に一回のフレーム判定処理を行う度に判定結果をサーバに通知しているが、ある一定数のフレーム判定処理の判定結果が溜まった時点で、まとめてサーバに通知しても良い。また、一定時間間隔で定期的にフレームの判定結果をサーバに通知しても良い。
 (13)上記実施の形態で示した判定ルール(図6参照)は一例であり、例示したルール項目以外の項目を含めても良いし、例示した値と異なる値にしても良い。また、判定ルールは、車両用通信装置(例えばヘッドユニット)の製造時、出荷時等に設定されても良いし、車載ネットワークシステムが搭載される車両の出荷時に設定されても良い。判定ルールは、車載ネットワークシステムの稼働中に更新されても良い。また、判定ルールは、外部との通信に基づいて設定及び更新されても、各種記録媒体等を用いて設定されても、ツール類等によって設定されても良い。
 (14)上記実施の形態で示したCANプロトコルは、TTCAN(Time-Triggered CAN)、CANFD(CAN with Flexible Data Rate)等の派生的なプロトコルをも包含する広義の意味を有するものであっても良い。
 (15)上記実施の形態における車両用通信装置の一例としてのヘッドユニットは、例えば、通信回路、メモリ、プロセッサその他の回路等を含む半導体集積回路のチップを含むこととしたが、ハードディスク装置、ディスプレイ、キーボード、マウス等の他のハードウェア構成要素を含んでいても良い。また、メモリに記憶された制御プログラムをプロセッサが実行することでソフトウェア的に機能を実現する代わりに、制御プログラムを用いない集積回路でその機能を実現することとしても良い。なお、チップは、必ずしもパッケージ化されている必要はない。
 (16)上記実施の形態における各装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしても良い。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記録されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。また、上記各装置を構成する構成要素の各部は、個別に1チップ化されていても良いし、一部又はすべてを含むように1チップ化されても良い。また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
 (17)上記各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしても良い。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAM等から構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしても良い。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしても良い。
 (18)本発明の一態様としては、上記に示す車両用通信方法であるとしても良い。また、この方法をコンピュータにより実現するコンピュータプログラムであるとしても良いし、前記コンピュータプログラムからなるデジタル信号であるとしても良い。また、本発明の一態様としては、前記コンピュータプログラムまたは前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(登録商標) Disc)、半導体メモリ等に記録したものとしても良い。また、これらの記録媒体に記録されている前記デジタル信号であるとしても良い。また、本発明の一態様としては、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしても良い。また、本発明の一態様としては、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記録しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしても良い。また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしても良い。
 (19)上記実施の形態及び上記変形例で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本発明の範囲に含まれる。
 本発明は、車載ネットワークシステムにおいて不正なフレームのバスへの送出を低減させるために利用可能である。
 10,10a 車載ネットワークシステム
 30 ネットワークシステム
 100,2100,3100 ヘッドユニット
 110,2110,3110 システム制御ユニット(第2制御ユニット)
 111,410 フレーム送受信部
 112,450 受信フレーム解釈部
 113,430 受信ID判断部
 114,440 受信IDリスト保持部
 115,152,2115,2152,3115,3152 フレーム判定部
 116,153 判定ルール保持部
 117,151,3171 ユニット間通信処理部
 118,420 送信フレーム生成部
 150,2150,3150 マルチメディア制御ユニット(第1制御ユニット)
 154 アプリケーション実行部
 200 バス
 310 エンジン
 320 ブレーキ
 330 ドア開閉センサ
 340 窓開閉センサ
 400a~400d 電子制御ユニット(ECU)
 410 フレーム処理部
 470 データ取得部
 2119,2155 判定結果保持部
 3170 外部通信制御ユニット
 3172 外部通信処理部
 3500 サーバ

Claims (14)

  1.  バスを介してフレームに係る通信を行う複数の装置を備える車載ネットワークシステムにおける当該バスに接続された車両用通信装置であって、
     前記バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、
     前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを備え、
     前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う
     車両用通信装置。
  2.  更に、前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、
     前記車載ネットワークシステムにおける前記複数の装置のうち自装置以外のいずれかの装置により送信され、前記バスを介して取得したフレームである受信フレームについて、ルールへの適合性に係る判定を行う
     請求項1記載の車両用通信装置。
  3.  前記第1制御ユニットは、前記送信フレームについて第1所定ルールに適合しているか不適合であるかを判定する第1判定部を有し、
     前記第2制御ユニットは、前記受信フレームについて第2所定ルールに適合しているか不適合であるかを判定する第2判定部を有する
     請求項2記載の車両用通信装置。
  4.  前記第1制御ユニットは、特定した前記送信フレームに係る情報を前記第2制御ユニットに送信する機能を有し、
     前記第2制御ユニットは、前記第1制御ユニットから特定された前記送信フレームに係る情報を受信した場合に、当該送信フレームを前記バスへと送出する機能と、前記受信フレームに係る情報を、前記第1制御ユニットに送信する機能とを有し、
     前記第1制御ユニットは、前記送信フレームについて前記第1判定部により不適合であると判定された場合に当該送信フレームに係る情報の前記第2制御ユニットへの送信を抑止し、
     前記第2制御ユニットは、前記受信フレームについて前記第2判定部により不適合であると判定された場合に当該受信フレームに係る情報の前記第1制御ユニットへの送信を抑止する
     請求項3記載の車両用通信装置。
  5.  前記第2所定ルールは、受信フレームについての受信周期又は受信頻度に関する条件を規定し、
     前記第1制御ユニットは、前記受信フレームについて、前記第2所定ルールとは異なる第3所定ルールに適合しているか不適合であるかを判定する第3判定部を有する
     請求項4記載の車両用通信装置。
  6.  前記第1制御ユニットは、前記受信フレームについて、前記第2所定ルールとは異なる第3所定ルールに適合しているか不適合であるかを判定する第3判定部を有する
     請求項3記載の車両用通信装置。
  7.  前記第1制御ユニットは、第1マイクロプロセッサ及び第1メモリを含む半導体集積回路であり、当該第1メモリに格納されたプログラムを当該第1マイクロプロセッサで実行することにより前記第1判定部及び前記第3判定部としての機能を実現し、
     前記第2制御ユニットは、前記第1マイクロプロセッサより処理性能が低い第2マイクロプロセッサ及び第2メモリを含む半導体集積回路であり、当該第2メモリに格納されたプログラムを当該第2マイクロプロセッサで実行することにより前記第2判定部としての機能を実現する
     請求項5又は6記載の車両用通信装置。
  8.  前記車両用通信装置は、
     前記受信フレームについてのルールへの適合性に係る前記判定として、当該受信フレームが当該ルールに適合しているか不適合であるかの判定を行い、
     適合していると判定した場合には、当該受信フレームの内容に基づく所定の受信フレーム対応処理を実行し、
     不適合であると判定した場合には、前記所定の受信フレーム対応処理の実行を抑止する
     請求項2記載の車両用通信装置。
  9.  前記車両用通信装置は、
     前記送信フレームについてのルールへの適合性に係る前記判定として、当該送信フレームが当該ルールに適合しているか不適合であるかの判定を行い、
     適合していると判定した場合には、当該送信フレームを前記バス上に送出し、
     不適合であると判定した場合には、当該送信フレームの前記バス上への送出を抑止する
     請求項1記載の車両用通信装置。
  10.  前記車両用通信装置は、
     前記送信フレームについてのルールへの適合性に係る前記判定の結果を示す情報を、外部のサーバ装置に送信する
     請求項1又は9記載の車両用通信装置。
  11.  前記車両用通信装置は、
     前記送信フレームについてのルールへの適合性に係る前記判定の結果を示す情報を、所定記録媒体に記録する
     請求項1又は9記載の車両用通信装置。
  12.  前記車両用通信装置を含む前記複数の装置は、CAN(Controller Area Network)プロトコルに従って前記フレームに係る通信を行う
     請求項1記載の車両用通信装置。
  13.  バスを介してフレームに係る通信を行う複数の装置を備える車載ネットワークシステムであって、
     前記複数の装置のうち少なくとも1つは前記バスに接続された車両用通信装置であり、
     前記車両用通信装置は、
     前記バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、
     前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを備え、
     前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う
     車載ネットワークシステム。
  14.  バスへの送出用のフレームである送信フレームを特定する第1制御ユニットと、前記第1制御ユニットとの間で、有線通信又は無線通信により、フレームに係る情報を授受し得る第2制御ユニットとを有する車両用通信装置を含む複数の装置が前記バスを介してフレームに係る通信を行うところの車載ネットワークシステムにおいて用いられる車両用通信方法であって、
     前記第1制御ユニット及び前記第2制御ユニットのうち少なくとも1つが、前記送信フレームについて、ルールへの適合性に係る判定を行う
     車両用通信方法。
PCT/JP2015/004236 2014-09-12 2015-08-25 車両用通信装置、車載ネットワークシステム及び車両用通信方法 WO2016038816A1 (ja)

Priority Applications (10)

Application Number Priority Date Filing Date Title
CN201580022868.4A CN106458115B (zh) 2014-09-12 2015-08-25 电子控制单元、车载网络***以及车辆用通信方法
EP22150191.9A EP3998747A1 (en) 2014-09-12 2015-08-25 Vehicle communication device, in-vehicle network system, and vehicle communication method
JP2016547671A JP6152228B2 (ja) 2014-09-12 2015-08-25 電子制御ユニット、車載ネットワークシステム及び車両用通信方法
EP15839733.1A EP3192703B1 (en) 2014-09-12 2015-08-25 Vehicle communication device, in-vehicle network system, and vehicle communication method
EP20184415.6A EP3738836B1 (en) 2014-09-12 2015-08-25 Vehicle communication device, in-vehicle network system, and vehicle communication method
EP18212429.7A EP3480064B1 (en) 2014-09-12 2015-08-25 Vehicle communication device, in-vehicle network system, and vehicle communication method
US15/407,738 US10193896B2 (en) 2014-09-12 2017-01-17 Vehicle communication apparatus, in-vehicle network system, and vehicle communication method
US16/217,460 US10693889B2 (en) 2014-09-12 2018-12-12 Vehicle communication apparatus, in-vehicle network system, and vehicle communication method
US15/930,093 US11240253B2 (en) 2014-09-12 2020-05-12 Vehicle communication apparatus, in-vehicle network system, and vehicle communication method
US17/559,749 US11943233B2 (en) 2014-09-12 2021-12-22 Vehicle communication apparatus, in-vehicle network system, and vehicle communication method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201462049668P 2014-09-12 2014-09-12
US62/049,668 2014-09-12
JP2015150050 2015-07-29
JP2015-150050 2015-07-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/407,738 Continuation US10193896B2 (en) 2014-09-12 2017-01-17 Vehicle communication apparatus, in-vehicle network system, and vehicle communication method

Publications (1)

Publication Number Publication Date
WO2016038816A1 true WO2016038816A1 (ja) 2016-03-17

Family

ID=55458591

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/004236 WO2016038816A1 (ja) 2014-09-12 2015-08-25 車両用通信装置、車載ネットワークシステム及び車両用通信方法

Country Status (5)

Country Link
US (4) US10193896B2 (ja)
EP (4) EP3738836B1 (ja)
JP (6) JP6152228B2 (ja)
CN (4) CN110290038B (ja)
WO (1) WO2016038816A1 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018008453A1 (ja) * 2016-07-05 2018-01-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 異常検知電子制御ユニット、車載ネットワークシステム及び異常検知方法
WO2018008452A1 (ja) * 2016-07-05 2018-01-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム
JP2018011288A (ja) * 2016-07-05 2018-01-18 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム
JP2018056980A (ja) * 2016-09-27 2018-04-05 富士通株式会社 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム
JP2018137680A (ja) * 2017-02-23 2018-08-30 株式会社デンソー 通信システム及び中継装置
JP2018144800A (ja) * 2017-03-03 2018-09-20 株式会社日立製作所 連携クラウド・エッジ車両異常検出
WO2018211790A1 (ja) * 2017-05-18 2018-11-22 ボッシュ株式会社 Ecu
CN108886480A (zh) * 2016-07-05 2018-11-23 松下电器(美国)知识产权公司 异常检测电子控制单元、车载网络***以及异常检测方法
JP2019012899A (ja) * 2017-06-29 2019-01-24 富士通株式会社 攻撃検知装置および攻撃検知方法
JPWO2017203375A1 (ja) * 2016-05-27 2019-01-31 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング セキュリティ検査システム、セキュリティ検査方法、機能評価装置、及びプログラム
CN109922998A (zh) * 2016-10-27 2019-06-21 住友电气工业株式会社 控制装置、程序更新方法和计算机程序
US11288054B2 (en) 2018-02-06 2022-03-29 Toyota Jidosha Kabushiki Kaisha Vehicular communication system
JP7512473B2 (ja) 2018-03-29 2024-07-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正検知方法、不正検知装置及びプログラム

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10805331B2 (en) 2010-09-24 2020-10-13 BitSight Technologies, Inc. Information technology security assessment system
US9438615B2 (en) 2013-09-09 2016-09-06 BitSight Technologies, Inc. Security risk management
DE102015213522A1 (de) * 2015-07-17 2017-01-19 Robert Bosch Gmbh Bussystem, Teilnehmerstation dafür und Verfahren zur Konfiguration eines statischen Bussystems für eine dynamische Kommunikation
JP6747361B2 (ja) * 2016-09-02 2020-08-26 株式会社オートネットワーク技術研究所 通信システム、通信装置、中継装置、通信IC(Integrated Circuit)、制御IC及び通信方法
JP6438991B2 (ja) * 2017-03-14 2018-12-19 株式会社Subaru 車両用制御装置
US10389586B2 (en) * 2017-04-04 2019-08-20 International Business Machines Corporation Configuration and usage pattern of a cloud environment based on iterative learning
US10425380B2 (en) 2017-06-22 2019-09-24 BitSight Technologies, Inc. Methods for mapping IP addresses and domains to organizations using user activity data
JP6751057B2 (ja) * 2017-07-04 2020-09-02 日立オートモティブシステムズ株式会社 電子制御システム
US10257219B1 (en) 2018-03-12 2019-04-09 BitSight Technologies, Inc. Correlated risk in cybersecurity
US10812520B2 (en) 2018-04-17 2020-10-20 BitSight Technologies, Inc. Systems and methods for external detection of misconfigured systems
US11228614B1 (en) * 2018-07-24 2022-01-18 Amazon Technologies, Inc. Automated management of security operations centers
WO2020021715A1 (ja) * 2018-07-27 2020-01-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正対処方法、不正対処装置および通信システム
EP3698242A1 (en) * 2018-08-21 2020-08-26 Google LLC Extensible mapping for vehicle system buses
JP6969590B2 (ja) * 2018-09-06 2021-11-24 株式会社デンソー 車両制御システム
US11200323B2 (en) 2018-10-17 2021-12-14 BitSight Technologies, Inc. Systems and methods for forecasting cybersecurity ratings based on event-rate scenarios
US10521583B1 (en) 2018-10-25 2019-12-31 BitSight Technologies, Inc. Systems and methods for remote detection of software through browser webinjects
JP2021005821A (ja) * 2019-06-27 2021-01-14 矢崎総業株式会社 異常検出装置
JP7238650B2 (ja) * 2019-07-09 2023-03-14 トヨタ自動車株式会社 車載ネットワークシステム
US10726136B1 (en) 2019-07-17 2020-07-28 BitSight Technologies, Inc. Systems and methods for generating security improvement plans for entities
US11956265B2 (en) 2019-08-23 2024-04-09 BitSight Technologies, Inc. Systems and methods for inferring entity relationships via network communications of users or user devices
JP7147721B2 (ja) * 2019-09-05 2022-10-05 トヨタ自動車株式会社 車載通信装置及び通信方法
US10848382B1 (en) 2019-09-26 2020-11-24 BitSight Technologies, Inc. Systems and methods for network asset discovery and association thereof with entities
US11032244B2 (en) 2019-09-30 2021-06-08 BitSight Technologies, Inc. Systems and methods for determining asset importance in security risk management
US10893067B1 (en) 2020-01-31 2021-01-12 BitSight Technologies, Inc. Systems and methods for rapidly generating security ratings
US10764298B1 (en) 2020-02-26 2020-09-01 BitSight Technologies, Inc. Systems and methods for improving a security profile of an entity based on peer security profiles
CN111556011B (zh) * 2020-03-24 2022-07-12 浙江飞碟汽车制造有限公司 一种基于MATLAB/Simulink的车载总线的数据分析方法
US11023585B1 (en) 2020-05-27 2021-06-01 BitSight Technologies, Inc. Systems and methods for managing cybersecurity alerts
KR102411690B1 (ko) * 2020-08-14 2022-06-21 동서콘트롤(주) 듀얼 캔 통신을 이용한 클러스터
US11122073B1 (en) 2020-12-11 2021-09-14 BitSight Technologies, Inc. Systems and methods for cybersecurity risk mitigation and management
DE102021203230A1 (de) * 2021-03-30 2022-10-06 Robert Bosch Gesellschaft mit beschränkter Haftung Frame-Invalidierung im Bussystem mit Eindringenserkennungssystem
EP4318230A1 (en) * 2021-05-12 2024-02-07 Samsung Electronics Co., Ltd. Electronic apparatus comprising usb connection terminal and operating method therefor
JP2023102213A (ja) 2022-01-11 2023-07-24 トヨタ自動車株式会社 情報処理装置、車両、情報処理方法、及び情報処理プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007038904A (ja) * 2005-08-04 2007-02-15 Fujitsu Ten Ltd 車載ゲートウェイ装置及び同装置におけるメッセージ中継方法
JP2013187555A (ja) * 2012-03-05 2013-09-19 Auto Network Gijutsu Kenkyusho:Kk 通信システム
JP2014138380A (ja) * 2013-01-18 2014-07-28 Toyota Motor Corp 車両不正状態検出方法、車載システムにおける制御方法、およびシステム

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4124948B2 (ja) * 2000-08-25 2008-07-23 三菱電機株式会社 移動体電子装置
JP2002204243A (ja) 2000-12-28 2002-07-19 Denso Corp 車両用多重通信装置
JP3938858B2 (ja) 2001-09-27 2007-06-27 株式会社デンソー 車両用電子制御装置
JP4003062B2 (ja) * 2002-08-30 2007-11-07 三菱自動車工業株式会社 バス方式通信ネットワークにおける通信エラー検出方法
CN1703883A (zh) * 2002-10-08 2005-11-30 松下电器产业株式会社 传输数据结构、数据接收方法、数据接收装置和数据接收程序
JP2004146884A (ja) 2002-10-21 2004-05-20 Nec Access Technica Ltd パケット監視装置及びパケット監視プログラム
JP4139261B2 (ja) * 2003-04-09 2008-08-27 矢崎総業株式会社 フロント電装システム、フロント電装システム用電子制御ユニット及び電装コネクタ
JP3966231B2 (ja) 2003-06-11 2007-08-29 日本電信電話株式会社 ネットワークシステムと不正アクセス制御方法およびプログラム
US8050176B2 (en) * 2004-03-30 2011-11-01 The Boeing Company Methods and systems for a data processing system having radiation tolerant bus
CN100377123C (zh) * 2004-09-29 2008-03-26 浙江中科正方电子技术有限公司 Can总线汽车仪表控制***
CN100449436C (zh) * 2005-12-12 2009-01-07 天津卡达克汽车高新技术公司 智能汽车车身网络控制***装置及其方法
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
JP5286659B2 (ja) * 2006-11-07 2013-09-11 株式会社オートネットワーク技術研究所 車載装置中継システム、車載装置中継方法及び中継装置
CN101026527A (zh) * 2007-01-26 2007-08-29 武汉理工大学 一种汽车电子信息集成控制***中的can/can智能网桥
JP5138949B2 (ja) * 2007-02-07 2013-02-06 日立オートモティブシステムズ株式会社 車載ゲートウェイ装置
CN101360036A (zh) * 2007-07-31 2009-02-04 比亚迪股份有限公司 Can总线网关控制器及can总线之间数据传输方法
JP2009035237A (ja) * 2007-08-03 2009-02-19 Mitsubishi Fuso Truck & Bus Corp 故障診断装置及び故障診断方法
EP2234353A4 (en) * 2008-01-16 2013-12-25 Nec Corp GATEWAY DEVICE, COMMUNICATION SYSTEM AND METHOD
DE102008000561A1 (de) * 2008-03-07 2009-09-10 Robert Bosch Gmbh Kommunikationssystem mit einem CAN-Bus und Verfahren zum Betreiben eines solchen Kommunikationssystems
JP4458179B2 (ja) * 2008-03-27 2010-04-28 トヨタ自動車株式会社 故障検出装置、故障検出システム、故障検出方法
JP5062027B2 (ja) * 2008-05-14 2012-10-31 トヨタ自動車株式会社 車載通信ネットワークシステム及びその通信制御方法
JP5195913B2 (ja) 2008-07-22 2013-05-15 トヨタ自動車株式会社 マルチコアシステム、車両用電子制御ユニット、タスク切り替え方法
JP5440973B2 (ja) * 2009-02-23 2014-03-12 独立行政法人情報通信研究機構 コンピュータ検査システム、コンピュータ検査方法
JP5316128B2 (ja) 2009-03-17 2013-10-16 トヨタ自動車株式会社 故障診断システム、電子制御ユニット、故障診断方法
CN101559747B (zh) * 2009-05-27 2011-01-26 中国汽车技术研究中心 实现两路can过滤及转发的多功能汽车中央信息集成***
CN102416913B (zh) * 2010-09-27 2015-12-02 比亚迪股份有限公司 Can总线拓扑结构以及利用该拓扑结构的车辆启动方法
DE102012200997A1 (de) * 2011-08-29 2013-02-28 Robert Bosch Gmbh Verfahren und Vorrichtung zur Prüfung der korrekten Funktion einer seriellen Datenübertragung
US8861370B2 (en) * 2011-09-21 2014-10-14 Nxp B.V. System and method for testing a communications network having a central bus guardian (CBG) to detect a faulty condition associated with the CBG
JP2013082352A (ja) * 2011-10-11 2013-05-09 Denso Corp 車両用通信装置
KR101582062B1 (ko) * 2011-12-02 2015-12-31 가부시키가이샤 오토네트웍스 테크놀로지스 송신 메시지 생성 장치 및 차재 통신 시스템
JP5522160B2 (ja) * 2011-12-21 2014-06-18 トヨタ自動車株式会社 車両ネットワーク監視装置
CN103999410B (zh) * 2011-12-22 2017-04-12 丰田自动车株式会社 通信***及通信方法
ES2805290T3 (es) * 2012-03-29 2021-02-11 Arilou Information Security Tech Ltd Dispositivo para proteger un sistema electrónico de un vehículo
CN202856770U (zh) * 2012-05-25 2013-04-03 山东天海电装有限公司 一种新能源校车的集成与控制***
US8797884B2 (en) * 2012-06-27 2014-08-05 Nxp B.V. Network communication apparatus, system and method
JP5919205B2 (ja) 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
JP6110205B2 (ja) * 2013-05-02 2017-04-05 本田技研工業株式会社 車内通信システム
CN203267958U (zh) * 2013-05-21 2013-11-06 中国汽车技术研究中心 拥有两路can总线的混合动力汽车网络通讯装置
CN103812765B (zh) * 2014-02-14 2017-01-11 浙江大学 具有过滤功能的can转以太网网关及基于该网关的数据传输方法
CN111181732A (zh) * 2014-05-08 2020-05-19 松下电器(美国)知识产权公司 车载网络***、电子控制单元及不正常检测方法
JP6728700B2 (ja) 2016-01-15 2020-07-22 富士通株式会社 通信システム、通信プログラム、通信方法、および、通信装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007038904A (ja) * 2005-08-04 2007-02-15 Fujitsu Ten Ltd 車載ゲートウェイ装置及び同装置におけるメッセージ中継方法
JP2013187555A (ja) * 2012-03-05 2013-09-19 Auto Network Gijutsu Kenkyusho:Kk 通信システム
JP2014138380A (ja) * 2013-01-18 2014-07-28 Toyota Motor Corp 車両不正状態検出方法、車載システムにおける制御方法、およびシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SATOSHI OTSUKA ET AL.: "Intrusion Detection for In-vehicle Networks without Modifying Legacy ECUs", IPSJ SIG NOTES, vol. 2013, no. 6, 6 March 2013 (2013-03-06), pages 1 - 5, XP008182240, Retrieved from the Internet <URL:http://id.nii.ac.jp/1001/ 00090643> *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2017203375A1 (ja) * 2016-05-27 2019-01-31 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング セキュリティ検査システム、セキュリティ検査方法、機能評価装置、及びプログラム
US11184383B2 (en) 2016-05-27 2021-11-23 Etas Gmbh Security test system, security test method, function evaluation device, and program
WO2018008452A1 (ja) * 2016-07-05 2018-01-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム
JP2018011288A (ja) * 2016-07-05 2018-01-18 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム
JP2018064293A (ja) * 2016-07-05 2018-04-19 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム
CN108353014A (zh) * 2016-07-05 2018-07-31 松下电器(美国)知识产权公司 非法控制抑止方法、非法控制抑止装置和车载网络***
CN108353014B (zh) * 2016-07-05 2021-07-20 松下电器(美国)知识产权公司 非法控制抑止方法、非法控制抑止装置和车载网络***
JP2021040336A (ja) * 2016-07-05 2021-03-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム
CN108886480A (zh) * 2016-07-05 2018-11-23 松下电器(美国)知识产权公司 异常检测电子控制单元、车载网络***以及异常检测方法
WO2018008453A1 (ja) * 2016-07-05 2018-01-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 異常検知電子制御ユニット、車載ネットワークシステム及び異常検知方法
JP2018056980A (ja) * 2016-09-27 2018-04-05 富士通株式会社 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム
CN109922998A (zh) * 2016-10-27 2019-06-21 住友电气工业株式会社 控制装置、程序更新方法和计算机程序
JP2018137680A (ja) * 2017-02-23 2018-08-30 株式会社デンソー 通信システム及び中継装置
US10382466B2 (en) 2017-03-03 2019-08-13 Hitachi, Ltd. Cooperative cloud-edge vehicle anomaly detection
JP2018144800A (ja) * 2017-03-03 2018-09-20 株式会社日立製作所 連携クラウド・エッジ車両異常検出
WO2018211790A1 (ja) * 2017-05-18 2018-11-22 ボッシュ株式会社 Ecu
JP2019012899A (ja) * 2017-06-29 2019-01-24 富士通株式会社 攻撃検知装置および攻撃検知方法
US11288054B2 (en) 2018-02-06 2022-03-29 Toyota Jidosha Kabushiki Kaisha Vehicular communication system
JP7512473B2 (ja) 2018-03-29 2024-07-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正検知方法、不正検知装置及びプログラム

Also Published As

Publication number Publication date
US11943233B2 (en) 2024-03-26
US20200274883A1 (en) 2020-08-27
JP2017099013A (ja) 2017-06-01
US20190124091A1 (en) 2019-04-25
EP3480064A1 (en) 2019-05-08
EP3192703B1 (en) 2019-01-30
JPWO2016038816A1 (ja) 2017-06-15
EP3192703A1 (en) 2017-07-19
CN110290038B (zh) 2021-11-09
JP6152228B2 (ja) 2017-06-21
JP6353134B2 (ja) 2018-07-04
JP6639428B2 (ja) 2020-02-05
US10193896B2 (en) 2019-01-29
EP3998747A1 (en) 2022-05-18
EP3480064B1 (en) 2020-08-19
CN110290040B (zh) 2021-08-31
JP2021083126A (ja) 2021-05-27
JP2022087248A (ja) 2022-06-09
CN106458115B (zh) 2019-07-19
JP7059413B2 (ja) 2022-04-25
US11240253B2 (en) 2022-02-01
JP2017229076A (ja) 2017-12-28
JP7297118B2 (ja) 2023-06-23
EP3738836B1 (en) 2022-03-02
JP6175579B2 (ja) 2017-08-02
US20220116405A1 (en) 2022-04-14
CN106458115A (zh) 2017-02-22
CN110290039A (zh) 2019-09-27
US20170126703A1 (en) 2017-05-04
CN110290040A (zh) 2019-09-27
CN110290038A (zh) 2019-09-27
CN110290039B (zh) 2021-08-31
US10693889B2 (en) 2020-06-23
JP2017073834A (ja) 2017-04-13
EP3738836A1 (en) 2020-11-18
EP3192703A4 (en) 2017-08-02

Similar Documents

Publication Publication Date Title
JP6353134B2 (ja) 電子制御ユニット、車載ネットワークシステム及び車両用通信方法
JP7008100B2 (ja) 不正対処方法、不正検知電子制御ユニットおよびネットワーク通信システム
US11570184B2 (en) In-vehicle network system, fraud-detection electronic control unit, and fraud-detection method
JP6928051B2 (ja) ゲートウェイ装置、車載ネットワークシステム及び通信方法
JP6849782B2 (ja) 電子制御ユニット、車載ネットワークシステム及び車両用通信方法
JP6698190B2 (ja) 不正対処方法、不正検知電子制御ユニット、および、ネットワーク通信システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15839733

Country of ref document: EP

Kind code of ref document: A1

DPE2 Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101)
REEP Request for entry into the european phase

Ref document number: 2015839733

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015839733

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016547671

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE