KR20180018293A - 네트워크 감시 장치 - Google Patents

네트워크 감시 장치 Download PDF

Info

Publication number
KR20180018293A
KR20180018293A KR1020170066105A KR20170066105A KR20180018293A KR 20180018293 A KR20180018293 A KR 20180018293A KR 1020170066105 A KR1020170066105 A KR 1020170066105A KR 20170066105 A KR20170066105 A KR 20170066105A KR 20180018293 A KR20180018293 A KR 20180018293A
Authority
KR
South Korea
Prior art keywords
transmission
message
time
processing
network
Prior art date
Application number
KR1020170066105A
Other languages
English (en)
Other versions
KR102030397B1 (ko
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 도시바 데지타루 소류숀즈 가부시키가이샤
Publication of KR20180018293A publication Critical patent/KR20180018293A/ko
Application granted granted Critical
Publication of KR102030397B1 publication Critical patent/KR102030397B1/ko

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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • 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]
    • 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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

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

Abstract

<네트워크 감시 장치>
실시 형태는, 네트워크 감시 장치에 관한 것이다.
실시 형태의 네트워크 감시 장치는, 식별자로 식별되는 메시지가 송수신되는 네트워크에 있어서 주기 송신되는 메시지를 감시 대상으로 하는 네트워크 감시 장치이며, 수신 시각 기록부와, 부정 송신 판정부를 구비한다. 수신 시각 기록부는, 감시 대상 메시지를 수신할 때마다, 수신 시각을 식별자와 대응지어서 기록한다. 부정 송신 판정부는, 감시 대상 메시지를 수신할 때마다, 수신한 감시 대상 메시지에 대해, 금회의 수신 시각 Ti와, m개 전의 수신 시각 Ti -m과, 메시지 송신 주기 F와, 미리 정한 상수 σ에 기초하여, 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신의 유무를 판정한다.

Description

네트워크 감시 장치{NETWORK MONITORING DEVICE}
본 출원은, 2016년 8월 9일에 먼저 제출된 일본 특허 출원 번호 2016-156475호의 우선권 이익을 향수함과 함께, 그의 전체 내용을 포함하고 있다.
본 발명의 실시 형태는, 네트워크 감시 장치에 관한 것이다.
예를 들면 자동차에 탑재되는 차량 탑재 네트워크에서는, 메시지의 부정 송신에 의해 자동차가 운전자의 의도와 다른 거동을 하는 것이 알려져 있다. 이러한 네트워크의 공격에 대한 대책으로서, 메시지의 부정 송신을 검지하는 기술의 개발이 진행되고 있다. 예를 들면, 송신 메시지의 주기성에 착안하여, 소정 송신 주기에 대한 필터링을 행하는 기술이나, 주기 이상을 검지하여 부정 송신된 메시지의 파기 등을 행하는 기술 등이 제안되어 있다.
그러나, 송신 메시지의 주기성에 착안하여 부정 송신을 검지하는 종래의 기술은, 메시지를 수신했을 때에 그 메시지의 정당성을 판정하는 것을 주목적으로 한다. 이로 인해, 주기 변동 등을 고려하여 메시지의 정당성을 고정밀도로 판정하고자 하면, 대기 시간이 길어져서 리얼 타임성이 손상된다. 한편, 리얼 타임성을 중시하면 판정 정밀도가 저하되고, 부정 송신의 간과나 오 검지가 발생하기 쉬워진다. 따라서, 리얼 타임성을 손상시키지 않고 메시지의 부정 송신의 유무를 고정밀도로 판정할 수 있는 새로운 기술이 요망되어 왔다.
실시 형태의 네트워크 감시 장치는, 식별자로 식별되는 메시지가 송수신되는 네트워크에 있어서 주기 송신되는 메시지를 감시 대상으로 하는 네트워크 감시 장치이며, 수신 시각 기록부와, 부정 송신 판정부를 구비한다. 수신 시각 기록부는, 감시 대상 메시지를 수신할 때마다, 수신 시각을 식별자와 대응지어서 기록한다. 부정 송신 판정부는, 감시 대상 메시지를 수신할 때마다, 수신한 감시 대상 메시지에 대해, 금회의 수신 시각 Ti와, m개 전의 수신 시각 Ti -m과, 메시지 송신 주기 F와, 미리 정한 상수 σ에 기초하여, 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신의 유무를 판정한다.
본 실시 형태에 따르면, 리얼 타임성을 손상시키지 않고 메시지의 부정 송신의 유무를 고정밀도로 판정할 수 있다.
도 1은, 차량 탑재 네트워크의 구성예를 나타내는 도면.
도 2는, CGW의 하드웨어 구성예를 나타내는 블록도.
도 3은, CGW의 기능적인 구성예를 나타내는 블록도.
도 4는, 감시 전송 테이블의 일례를 나타내는 도면.
도 5는, 감시 기록 테이블의 일례를 나타내는 도면.
도 6은, 상수 σ에 대해 설명하는 도면.
도 7은, 상수 σ에 대해 설명하는 도면.
도 8은, 상수 σ에 대해 설명하는 도면.
도 9는, 부정 송신 검지 메시지의 데이터 포맷의 일례를 나타내는 도면.
도 10은, 검지시 처리 테이블의 일례를 나타내는 도면.
도 11은, 감시 전송부에 의해 실행되는 일련의 처리 순서를 나타내는 흐름도.
도 12a는, 부정 송신 판정 처리의 처리 순서의 일례를 나타내는 흐름도.
도 12b는, 부정 송신 판정 처리의 처리 순서의 다른 예를 나타내는 흐름도.
도 13은, 부정 송신 검지시 처리의 처리 순서를 나타내는 흐름도.
이하, 실시 형태의 네트워크 감시 장치 및 프로그램을, 도면을 참조하여 상세하게 설명한다. 이하에서는, 자동차에 탑재되는 차량 탑재 네트워크에 대한 적용예를 예시하지만, 적용 가능한 네트워크는 차량 탑재 네트워크에 제한되지 않는다. 실시 형태의 네트워크 감시 장치 및 프로그램은, 식별자로 식별되는 메시지가 송수신되는 네트워크이며, 적어도 일부의 메시지가 주기 송신(소정의 주기로 반복 송신)되는 네트워크에 대해 널리 적용 가능하다.
<실시 형태의 개요>
본 실시 형태의 네트워크 감시 장치는, 식별자(ID)로 식별되는 메시지가 송수신되는 예를 들어 CAN(Controller Area Network) 등의 차량 탑재 네트워크에 있어서, 주기 송신되는 메시지를 감시 대상으로 한다. 그리고, ID로 식별되는 감시 대상 메시지에, 정규의 메시지와 동일 ID를 갖는 「위장」메시지 등의 부정 송신이 포함되어 있는지 여부를 판정한다. 본 실시 형태의 네트워크 감시 장치에 의한 부정 송신의 유무 판정은, 수신된 메시지가 부정 송신된 메시지인지 여부를 판정하는 것이 아니고, 동일한 ID를 갖는 감시 대상 메시지에 대해, 지금까지 수신된 몇개의 메시지 중에, 부정 송신된 메시지가 포함되어 있는지 여부를 판정하는 것이다.
감시 대상 메시지의 부정 송신을 판정하기 위하여, 본 실시 형태에서는, 감시 대상 메시지를 수신할 때마다, 수신 시각을 그 메시지의 ID와 대응지어서 기록한다. 수신된 메시지와 동일 ID의 메시지에 부정 송신이 포함되어 있는 경우, 메시지의 수신 간격에 주목하면, 정규 송신 이외에 부정 송신의 메시지도 포함되기 때문에 수신 간격이 소정의 메시지 송신 주기보다도 짧아진다. 본 실시 형태에서는, 이러한 메시지의 수신 간격의 변화를 이용하여, 부정 송신의 유무를 판정한다.
메시지의 수신 간격의 변화는, 네트워크가 다양한 요인에 의한 지연에 의해서도 발생할 수 있다. 이로 인해, 메시지의 수신 간격의 변화가 작은 경우, 금회 수신된 메시지가 부정 송신된 것인지 여부를 바로 판정할 수 없다. 그러나, 부정 송신이 있으면, 부정 송신된 메시지의 수신 시에 부정 송신을 검지할 수 없다고 해도, 그 다음의 메시지를 수신했을 때에 수신 간격이 크게 변화하므로, 다음 메시지의 수신 시에는 부정 송신이 있었음을 검지할 수 있다. 즉, m개 전의 메시지의 수신 시각으로부터 금회의 메시지의 수신 시각까지의 기간 내에 부정 송신이 있었는지 여부를 판정하는 것은 가능하다. 또한, m은 1 이상의 자연수이며, 본 실시 형태에서는 m의 값이 1 또는 2인 것을 상정하지만, 3 이상의 값이어도 마찬가지의 효과가 얻어진다.
본 실시 형태에서는, 이상과 같이, 감시 대상 메시지에 대해, m개 전의 메시지의 수신 시각으로부터 금회의 메시지의 수신 시각까지의 기간 내에 있어서의 부정 송신의 유무를 판정하고, 부정 송신 있음으로 판정된 경우에, 예를 들어 부정 송신이 있었던 감시 대상 메시지의 ID를 포함하는 부정 검지 메시지를 송신하는 등, 미리 정한 소정의 부정 검지시 처리를 실행한다.
<차량 탑재 네트워크의 구성예>
도 1은, 본 실시 형태의 네트워크 감시 장치가 적용되는 차량 탑재 네트워크의 구성예를 나타내는 도면이다. 도 1에 도시하는 차량 탑재 네트워크는, 자동차에 탑재되는 전자 제어 유닛(이하, 「ECU」라고 칭함)간에서 통신을 행하는 네트워크이다. 자동차에는 다수의 ECU가 탑재된다. 다수의 ECU는 복수의 버스(도 1의 예에서는, 제1 버스 B1, 제2 버스 B2 및 제3 버스 B3)에 분산하여 배치되고, 서로 메시지의 송수신을 행한다. 본 실시 형태에서는, 각 ECU가 CAN의 프로토콜을 따른 통신을 행하는 것으로 한다.
도 1에 도시하는 예에서는, 정규의 ECU로서, 제1 버스 B1에 ECU(101, 102)가 접속되고, 제2 버스 B2에 ECU(201, 202, 203)가 접속되고, 제3 버스 B3에 ECU(301, 302, 303)가 접속되어 있다. 이 중, 제3 버스 B3에 접속되어 있는 ECU(301)는, 차량 탑재 인포테인먼트(IVI: In-Vehicle Infotainment)용 ECU이며, 도시되지 않은 디지털 통신 모듈(DCM: Digital Communication Module)에 접속되어, 이동체 통신 망을 통해 차량 외부의 IP망에 접속하고 있다.
CGW(Central Gateway)(10)는, 제1 버스 B1, 제2 버스 B2 및 제3 버스 B3에 각각 접속되어 있다. 어느 버스 상의 ECU가 다른 버스 상의 ECU에 대해 메시지를 송신하는 경우, CGW(10)는, 그 메시지의 전송을 행한다. 본 실시 형태에서는, 이 CGW(10)가, 상술한 네트워크 감시 장치로서의 기능을 갖는 것으로 한다.
또한, 도 1에 도시하는 예에서는, 제1 버스 B1에, 부정 ECU인 ECU(501)가 접속되어 있다. 본 실시 형태에서는, 이 부정 ECU(501)로부터, 정규의 ECU 중에서 메시지를 주기 송신하는 감시 대상의 ECU가 송신하는 메시지(정규 송신의 메시지)와 동일 ID를 갖는 메시지(부정 송신의 메시지)가 송신되는 것을 상정한다. 또한, 도 1에 도시한 차량 탑재 네트워크의 구성은 일례이며, 본 실시 형태의 네트워크 감시 장치가 적용되는 차량 탑재 네트워크의 구성은 이 예에 제한되지 않는다. 또한, 통신 방식도 CAN에 한정되지 않고, 다른 통신 방식으로 ECU간의 통신을 행하는 것이어도 된다. 서로 통신 방식의 다른 네트워크가 CGW(10)를 통해 접속된 구성이어도 된다. 또한, 본 실시 형태에서는 CGW(10)가 네트워크 감시 장치로서의 기능을 갖는 것으로 하지만, CGW(10) 대신에, 혹은 CGW(10)와 함께 다른 하나 이상의 ECU에 네트워크 감시 장치로서의 기능을 갖게 해도 된다. 또한, CGW(10)나 ECU는 별체의(독립의) 네트워크 감시 장치를 차량 탑재 네트워크에 접속하는 구성이어도 된다.
<CGW(네트워크 감시 장치)의 구성예>
도 2는, 본 실시 형태의 네트워크 감시 장치로서의 기능을 갖는 CGW(10)의 하드웨어 구성예를 나타내는 도면이다. CGW(10)는, 도 2에 도시된 바와 같이, LSI(Large-Scale Integration)(50)와, 제1 버스 B1에 접속된 트랜시버(60a), 제2 버스 B2에 접속된 트랜시버(60b) 및 제3 버스 B3에 접속된 트랜시버(60c)를 구비한다. 트랜시버(60a, 60b, 60c)는, 제1 버스 B1, 제2 버스 B2 및 제3 버스 B3에 있어서의 차동 전위를 디지털 신호로 변환하거나, 디지털 신호를 차동 전위로 변환하거나 한 아날로그 처리를 행한다.
LSI(50)는, 디지털 신호 처리를 행하는 집적 회로(마이크로 컴퓨터)이며, CPU(51), RAM(52), ROM(53), 통신 컨트롤러(54a, 54b, 54c) 및 타이머(55) 등이 실장되어 있다. CPU(51)는, 소정의 프로그램을 실행하여 CGW(10) 전체의 동작을 제어하는 프로세서이다. RAM(52)은, CPU(51)가 프로그램을 실행할 때의 워크 에리어가 되는 메모리이며, ROM(53)은, CPU(51)가 실행하는 프로그램이나 데이터를 저장하는 메모리이다. 통신 컨트롤러(54a, 54b, 54c)는, 트랜시버(60a, 60b, 60c)와 협동하여, 각 버스(제1 버스 B1, 제2 버스 B2 및 제3 버스 B3)로의 메시지의 송신과 각 버스로부터의 메시지의 수신을 행하기 위한 컨트롤러이다. 타이머(55)는, CGW(10)로 취급하는 시간의 계측을 행하고, 예를 들어 스케줄의 관리나 후술하는 수신 시각의 기록 등을 위하여 시간을 계측한다.
또한, 도 2는 CGW(10)의 하드웨어 구성예를 나타내고 있지만, 다른 ECU의 하드웨어 구성도, 기본적으로는 도 2에 도시한 CGW(10)의 하드웨어 구성과 동일하다. 도 2의 구성예에서는, CGW(10)가 제1 버스 B1, 제2 버스 B2 및 제3 버스 B3의 3개의 버스에 접속되기 때문에, 3개의 버스에 대응하는 3개의 트랜시버(60a, 60b, 60c) 및 LSI(50) 내의 통신 컨트롤러(54a, 54b, 54c)를 구비하지만, 각 ECU는, 자신이 접속되는 버스에 대응하는 트랜시버 및 통신 컨트롤러를 구비하고 있으면 된다.
본 실시 형태의 네트워크 감시 장치로서의 기능은, 일례로서, 상술한 CGW(10)의 하드웨어와 소프트웨어(프로그램)의 협동에 의해 실현할 수 있다. 즉, CGW(10)를 네트워크 감시 장치로서 기능시키기 위한 프로그램을 ROM(53)에 저장하고, CPU(51)가, RAM(52)을 워크 에리어로서 이용하여, ROM(53)에 저장된 프로그램을 판독하여 실행함으로써, CGW(10)를 네트워크 감시 장치로서 기능시킬 수 있다.
도 3은, 본 실시 형태의 네트워크 감시 장치로서의 기능을 갖는 CGW(10)가 기능적인 구성예를 도시하는 블록도이다. CGW(10)는, 기능적인 구성 요소로서, 도 3에 도시된 바와 같이, 감시 전송부(11)와, 수신부(12)와, 송신부(13)와, 스케줄러(14)를 구비한다.
수신부(12)는, 통신 컨트롤러(54a, 54b, 54c)를 통해 메시지를 수신하는 기능이며, 송신부(13)는, 통신 컨트롤러(54a, 54b, 54c)를 통해 메시지를 송신하는 기능이다. 스케줄러(14)는, 송신부(13)에 의한 메시지의 송신 타이밍을 관리한다. 또한, CGW(10)는, 감시 전송부(11)가 참조 또는 판독 기입하는 테이블로서, 감시 전송 테이블(15), 감시 기록 테이블(16) 및 검지시 처리 테이블(17)을 구비한다.
또한, 도 3은 CGW(10)의 하드웨어와 소프트웨어의 협동에 의해 실현되는 기능적인 구성예를 나타내고 있지만, 다른 ECU가 기능적인 구성은, 감시 전송부(11)를 그 ECU의 본래의 기능으로 치환한 것이 되고, 수신부(12), 송신부(13) 및 스케줄러(14)를 구비하는 것은 공통이다.
감시 전송부(11)는, 본 실시 형태의 네트워크 감시 장치가 주요한 기능이다. 감시 전송부(11)는, 수신 시각 기록부(21), 부정 송신 판정부(22), 통상 처리부(23) 및 부정 송신 검지시 처리부(24)를 갖는다.
수신 시각 기록부(21)는, 수신부(12)가 감시 대상 메시지를 수신할 때마다, 그 메시지의 수신 시각을 그 메시지의 ID(본 실시 형태에서는 CAN ID)와 대응지어서 기록한다. 수신 시각 기록부(21)는, 수신부(12)가 수신한 메시지가 감시 대상 메시지인지 여부를 판단하기 위하여, 감시 전송 테이블(15)을 참조한다.
도 4는, 감시 전송 테이블(15)의 일례를 나타내는 도면이다. 이 도 4에 도시하는 감시 전송 테이블(15)에서는, 차량 탑재 네트워크로 송수신되는 메시지의 CAN ID마다, 주기 송신의 경우의 주기(후술하는 메시지 송신 주기 F), 송신원 버스, 주기 감시의 필요 여부 및 전송처 버스가 도시되어 있다. 주기 감시의 「○」은 그 CAN ID를 갖는 메시지가 감시 대상 메시지인 것을 나타내며, 「-」은 주기 송신이 아니기 때문에 감시 불가, 「×」는 주기 송신이지만 감시 대상 외인 것을 나타낸다. 전송처 버스의 「○」은 그 버스가 전송처인 것, 「/」은 그 버스가 송신원 버스이기 때문에 전송 불가, 「-」은 그 버스로 전송하지 않는 것을 나타낸다.
수신 시각 기록부(21)는, 도 4에 도시된 바와 같은 감시 전송 테이블(15)을 참조하고, 수신부(12)가 수신한 메시지의 CAN ID에 대응하는 주기 감시가 「○」이 되어 있는지 여부를 확인함으로써, 수신부(12)가 수신한 메시지가 감시 대상 메시지인지 여부를 판단할 수 있다. 그리고, 수신부(12)가 수신한 메시지가 감시 대상 메시지이면, 그 메시지의 수신 시각을 감시 기록 테이블(16)에 기록한다.
도 5는, 감시 기록 테이블(16)의 일례를 나타내는 도면이다. 감시 기록 테이블(16)에는, 수신부(12)가 감시 대상 메시지를 수신할 때마다, 수신 시각 기록부(21)에 의해, 그 메시지의 수신 시각이 CAN ID와 대응지어서 기록된다. 감시 기록 테이블(16)에 기록되는 수신 시각은, 후술하는 부정 송신 판정부(22)가 부정 송신의 유무를 판정하기 위하여 사용된다. 그래서, 부정 송신 판정부(22)에서의 판정에 필요로 하는 m개 전의 메시지의 수신 시각보다도 오래된 수신 시각은, 감시 기록 테이블(16)로부터 소거해도 된다. 도 5에 예시하는 감시 기록 테이블(16)은, 최신 수신 시각으로부터 3개 전의 수신 시각까지가 기록되어 있다. 또한, 감시 기록 테이블(16)에 기록되는 수신 시각은, 예를 들어 상술한 타이머(55)에 의해 계측된다.
부정 송신 판정부(22)는, 수신부(12)가 감시 대상 메시지를 수신할 때마다, 즉 수신 시각 기록부(21)에 의해 감시 대상 메시지의 최신 수신 시각이 감시 기록 테이블(16)에 기록될 때마다, 수신부(12)가 수신한 감시 대상 메시지에 대해, 금회의 수신 시각 Ti와, m개 전의 수신 시각 Ti -m과, 메시지 송신 주기 F와, 미리 정해진 상수 σ에 기초하여, 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신의 유무를 판정한다.
예를 들어, 부정 송신 판정부(22)는, 수신부(12)가 수신한 감시 대상 메시지의 금회의 수신 시각 Ti와, m개 전의 수신 시각 Ti -m과, 메시지 송신 주기 F와, 미리 결정지은 상수 σ에 기초하여, 하기 식(1)에 의해, 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신수의 추정값 N을 구하고, N이 1 이상인 경우에, 부정 송신 있음으로 판정하는 구성으로 할 수 있다.
N=m-INT((Ti-Ti-m+σ)/F)...(1)
이 식(1)에 있어서, INT(X)는, X의 정수부를 구하는 함수(INT 함수)이다. 즉, 상기 식(1)은, (Ti-Ti -m+σ)/F의 정수부 k를 구하고, m-k로 표현되는 부정 송신수의 추정값 N을 산출하는 산출식으로 되어 있다.
여기서, 상수 σ에 대해 설명한다. CAN 등의 차량 탑재 네트워크 상에 메시지를 주기 송신하는 ECU는, 많은 경우, 소프트웨어에 의해 실현되는 송신부(도 3 참조)가 타이머의 주기 인터럽트에 의해 기동되고, 이 송신부와 통신 컨트롤러(도 2 참조)의 처리에 의해, 메시지가 트랜시버를 통해 버스로 송출된다. 이 때 타이머의 주기 인터럽트는 높은 정밀도로 발생하지만, 메시지가 버스로 송출될 때까지는, 하기의 다양한 요인에 의해 지연이 발생된다.
ㆍ실행 중 소프트웨어의 종료 대기
ㆍ스케줄러의 대기 큐에 있어서의 기동의 우선 순위
ㆍ통신 컨트롤러 내에서의 메시지의 송신 순위
ㆍ버스 상에서의 메시지의 송신 완료 대기
ㆍ송신 대기 메시지의 송신 개시 시의 버스 상에서의 조정
그로 인해, 정규 송신된 메시지의 수신 시각을 T(i)라 하면, 이 T(i)는, 도 6에 도시된 바와 같이, 타이머의 주기 인터럽트 시각 TF(i)와, 거기에서의 지연Δ(i)(Δ(i)>0)에 의해 표현된다. 단, TF(i)와 Δ(i)는 외부에서는 관측할 수 없다.
여기서, m=1인 경우에 대해 분석한다. 도 7에 도시된 바와 같이, Δ(i-2)=Δ(i)=0이며, Δ(i-1)=Δmax(Δmax는 차량 탑재 네트워크의 설계 상 상정하는 지연의 최댓값)라 하면, 최단의 정규 송신의 구간(T(i-1), T(i))에서 정규 송신을 부정 송신이라고 판정하지 않기 위한 조건(A)은, (T(i)-T(i-1)+σ)/F=(F-Δmax+σ)/F≥1, 즉, Δmax≤σ이다. 또한, 최장의 정규 송신의 구간(T(i-2), T(i-1))에 있어서의 부정 송신을 검지하기 위한 조건(B)은, ((T(i-1)-T(i-2))/2+σ)/F=((F+Δmax)/2+σ)/F<1, 즉, Δmax+2σ<F이다. 단, 정규 송신의 수신 시각 T(i-2)와 T(i-1)의 사이의 부정 송신이, 전후의 정규 송신과의 간격이 작은 쪽을 최대로 하는 경우에, (T(i-1)-T(i-2))/2가 된다.
이상의 조건(A)과 조건(B)에서, Δmax가 Δmax <F/3을 충족시킬 때, m=1이면, 부정 송신을 정확하게 검지하기 위하여 상수 σ에 요구되는 필요 조건은, Δmax≤σ<(F-Δmax)/2가 된다. 또한, 상수 σ의 값이 작을수록 부정 송신의 검지가 지연되는 케이스, 즉, 부정 송신을 수신한 타이밍이 아니라 다음의 정규 송신을 수신한 타이밍에 부정 송신이 검지되는 케이스가 적어지므로, 상수 σ는, 상기 필요 조건을 충족하는 범위 내에서 작은 값으로 설정하는 것이 바람직하다.
또한, 차량 탑재 네트워크에서는, 통신 환경이나 기기의 상황(온도 등)에 의해 일시적으로 통신 에러가 다발하는 경우가 있다. CAN에서는, 통신 에러가 발생하면 통신 컨트롤러가 자동으로 메시지의 재송을 행하기 때문에, 이러한 경우에 버스 전체적으로 지연이 커진다. 차량 탑재 네트워크의 설계에서는 어느 정도의 통신 에러를 상정하지만, 반드시 최악의 통신 에러를 상정하지는 않는다. 따라서, 실제의 차량 탑재 네트워크에 있어서는, 설계상 상정하는 지연의 최댓값 Δmax를 초과하는 지연이 발생하는 경우도 있다. 상수 σ를 Δmax보다도 큰 값으로 해 둠으로써, 이러한 상정 외의 지연이 발생한 경우의 오판정을 억제할 수 있다.
다음으로, m=2인 경우에 대해 분석한다. 도 8에 도시된 바와 같이, Δ(i-1)=Δ(i)=0이며, Δ(i-2)=Δ(i+1)=Δmax라 하면, 최단의 정규 송신의 구간(T(i-2), T(i))에서 정규 송신을 부정 송신으로 판정하지 않기 위한 조건(C)은, (T(i)-T(i-2)+σ)/F=(2F-Δmax+σ)/F≥2, 즉, Δmax≤σ이다. 또한, 최장의 정규 송신의 구간(T(i), T(i+1))에 있어서의 부정 송신을 검지하기 위한 조건(D)은, (T(i+1)-T(i)+σ)/F=(F+Δmax+σ)/F<2, 즉, Δmax+σ<F이다.
이상의 조건(C)과 조건(D)에서, Δmax가 Δmax<F/2를 충족시킬 때, m=2이면, 부정 송신을 정확하게 검지하기 위하여 상수 σ에 요구되는 필요 조건은, Δmax≤σ<F-Δmax가 된다. 또한, m=1의 경우와 마찬가지로, 상수 σ의 값이 작을수록 부정 송신의 검지가 지연되는 케이스가 적어지므로, 상수 σ는, 상기 필요 조건을 충족하는 범위 내에서 작은 값으로 설정하는 것이 바람직하다. 또한, m=2인 경우는, 3개의 메시지의 최초와 최후가 정규 송신인 케이스에 있어서 부정 송신을 확실하게 검지할 수 있다.
이어서, m=3인 경우에 대해, m=2인 경우와 마찬가지로 분석한다. Δ(i-2)=Δ(i-1)=Δ(i)=0이며, Δ(i-3)=Δ(i+1)=Δmax라 하면, 최단의 정규 송신의 구간(T(i-3), T(i))에서 정규 송신을 부정 송신으로 판정하지 않기 위한 조건(E)은, (T(i)-T(i-3)+σ)/F=(3F-Δmax+σ)/F≥2, 즉, Δmax≤σ이다. 또한, 최장의 정규 송신의 구간(T(i-1), T(i+1))에 있어서의 부정 송신을 검지하기 위한 조건(F)은, (T(i+1)-T(i-1)+σ)/F=(2F+Δmax+σ)/F <3, 즉, Δmax+σ<F이다.
이상의 조건(E)과 조건(F)에서, Δmax가 Δmax <F/2를 충족시킬 때, m=3이면, 부정 송신을 정확하게 검지하기 위하여 상수 σ에 요구되는 필요 조건은, m=2의 경우와 마찬가지로, Δmax≤σ<F-Δmax가 된다. 또한, m>3인 경우도 마찬가지로 분석할 수 있다. 즉, m≥2인 경우에는, Δmax≤σ<F-Δmax를 충족하는 값에 상수 σ를 정하면, 부정 송신을 정확하게 검지할 수 있다.
또한, 이상은, 부정 송신 판정부(22)가, 상기 식(1)에 의해 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신수의 추정값 N을 구하고, N이 1 이상인지 여부에 따라 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신의 유무를 판정하는 예를 설명했지만, 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신의 유무를 판정하는 방법은 이 예에 제한되지 않는다. 예를 들어, 부정 송신 판정부(22)는, M=m×F-σ가 되는 역치 M을 설정하고, Ti-Ti -m이 역치 M 미만인 경우에 부정 송신 있음으로 판정하는 구성이어도 된다. 이 경우, 역치 M은, 수신부(12)가 감시 대상 메시지를 수신할 때마다 계산해도 되지만, 감시 대상 메시지마다의 역치 M을 사전에 계산하여 기억해 두면, 부정 송신의 유무를 판정하는 처리 시간을 단축할 수 있다.
통상 처리부(23)는, 수신부(12)가 수신한 메시지가 감시 대상 메시지가 아닐 경우, 혹은, 부정 송신 판정부(22)에 의해 부정 송신 없음으로 판정된 경우에, 수신부(12)가 수신한 메시지에 대해 통상 처리를 실행한다. 여기에서 통상 처리란, CGW(10)의 본래 기능에 기초하는 처리, 예를 들어 어느 버스로부터 수신된 메시지를 다른 버스로 전송하는 처리이다. 또한, 본 실시 형태의 네트워크 감시 장치를 CGW(10) 이외의 다른 ECU에서 실현하는 경우, 통상 처리는, 그 ECU의 본래의 기능에 기초하는 처리가 된다.
부정 송신 검지시 처리부(24)는, 부정 송신 판정부(22)에 의해 부정 송신 있음으로 판정된 경우에, 소정의 부정 송신 검지시 처리를 실행한다. 부정 송신 검지시 처리부(24)가 실행하는 부정 송신 검지시 처리는, 예를 들어 부정 송신 있음으로 판정된 감시 대상 메시지의 CAN ID를 포함하는 부정 송신 검지 메시지를 네트워크에 송신하는 처리를 포함한다. 구체적으로는, 예를 들어 도 9에 도시된 바와 같은 부정 송신 검지 메시지를, 부정 송신 있음으로 판정된 감시 대상 메시지의 송신원 버스와 전송처 버스로 송신한다. 도 9는, 부정 송신 검지 메시지의 데이터 포맷의 일례를 나타내고 있다.
또한, 부정 송신 검지시 처리는, 예를 들어 부정 송신 있음으로 판정된 감시 대상 메시지의 송신원 버스가, 차량 외부 접속 기능을 갖는 IVI용의 ECU(301)를 포함하는 제3 버스 B3인 경우에, 그 후, 제3 버스 B3으로부터 수신한 메시지에 대한 통상 처리(예를 들어, 다른 버스로의 전송)를 모두 정지하는 처리를 더 포함하고 있어도 된다.
또한, 부정 송신 검지시 처리는, 예를 들어 도 10에 도시된 바와 같은 검지시 처리 테이블(17)에 따라, 수신부(12)가 수신한 감시 대상 메시지를 파기하거나, 수신부(12)가 수신한 감시 대상 메시지의 특정의 위치를 마스크하거나 하는 처리를 더 포함하고 있어도 된다. 도 10은, 부정 송신 검지시 처리부(24)가 참조하는 검지시 처리 테이블(17)의 일례를 나타내는 도면이다. 이 도 10에 도시하는 검지시 처리 테이블(17)에서는, 파기나 마스크 처리가 대상이 되는 감시 대상 메시지의 CAN ID마다, 파기/마스크의 어느 것을 나타내는 처리, 감시 바이트, 위험 값 및 처리가 마스크인 경우의 마스크 값을 나타내고 있다.
부정 송신 검지시 처리부(24)는, 부정 송신 판정부(22)에 의해 부정 송신 있음으로 판정된 경우에, 검지시 처리 테이블(17)을 참조하여, 수신부(12)가 수신한 감시 대상 메시지의 CAN ID가 검지시 처리 테이블(17)에 등록되어 있는지 여부를 확인한다. 그리고, 수신부(12)가 수신한 감시 대상 메시지의 CAN ID가 검지시 처리 테이블(17)에 등록되어 있으면, 그 CAN ID에 대응하는 처리가 파기인지 마스크인지를 확인한다. 처리가 파기인 경우, 부정 송신 검지시 처리부(24)는, 그 CAN ID에 대응하는 감시 바이트와 위험 값을 참조하고, 수신부(12)가 수신한 감시 대상 메시지의 감시 바이트의 값이 위험 값과 일치하고 있으면, 그 감시 대상 메시지를 파기한다. 또한, CAN ID에 대응하는 감시 바이트가 「-」로 되어 있는 경우도, 수신부(12)가 수신한 감시 대상 메시지를 파기한다.
또한, 부정 송신 검지시 처리부(24)는, 수신부(12)가 수신한 감시 대상 메시지의 CAN ID에 대응하는 처리가 마스크인 경우에는, 그 CAN ID에 대응하는 감시 바이트와 위험 값과 마스크 값을 참조하고, 수신부(12)가 수신한 감시 대상 메시지의 감시 바이트의 값이 위험 값과 일치하고 있으면, 감시 바이트의 값을 마스크 값에 의해 마스크한 후에, 수신부(12)가 수신한 감시 대상 메시지를 송신부(13)로부터 전송처 버스로 전송한다. 또한, CAN ID에 대응하는 위험 값이 「-」로 되어 있는 경우도, 감시 바이트의 값을 마스크 값에 의해 마스크한 후에, 수신부(12)가 수신한 감시 대상 메시지를 송신부(13)로부터 전송처 버스로 전송한다.
본 실시 형태에서는, 상술한 바와 같이, 감시 대상 메시지를 수신했을 때에, 그 메시지가 부정 송신인지 여부를 판정하는 것이 아니고, 동일한 CAN ID를 갖는 감시 대상 메시지에 대해, m개 전의 메시지의 수신 시각 Ti -m으로부터 금회의 수신 시각 Ti의 기간 내에 있어서의 부정 송신의 유무를 판정한다. 그래서, 부정 송신 있음으로 판정된 경우에는, 종래와 같이 수신된 메시지의 파기 등을 행하는 것이 아니라, 상술한 부정 송신 검지 메시지를 송신하고, 부가적인 처리로서, 조건에 따른 통상 처리의 정지나 메시지의 파기, 마스크 처리 등을 행하도록 하고 있다.
<CGW(네트워크 감시 장치)의 동작 설명>
다음에, 본 실시 형태의 CGW(10)의 동작예에 대해 설명한다. 먼저, 도 11을 참조하여 CGW(10)에 의한 처리 순서의 개요를 설명한다. 도 11은, 수신부(12)가 메시지를 수신할 때마다, CGW(10)의 감시 전송부(11)에 의해 실행되는 일련의 처리 순서를 나타내는 흐름도이다.
수신부(12)에 의해 메시지가 수신되면, 먼저, 감시 전송부(11)의 수신 시각 기록부(21)가, 감시 전송 테이블(15)을 참조하고, 수신된 메시지가 감시 대상 메시지인지 여부를 판정한다(스텝 S101). 그리고, 감시 대상 메시지이면(스텝 S101: "예"), 수신 시각 기록부(21)는, 그 메시지의 수신 시각을 CAN ID와 대응지어서 감시 기록 테이블(16)에 기록한다(스텝 S102).
다음에, 부정 송신 판정부(22)가, 도 12a 또는 도 12b에 예시하는 부정 송신 판정 처리를 실행한다(스텝 S103). 그리고, 부정 송신 판정 처리의 결과, 부정 송신 있음으로 판정된 경우는(스텝 S104: "예"), 부정 송신 검지시 처리부(24)가, 도 13에 예시하는 부정 송신 검지시 처리를 실행한다(스텝 S105). 한편, 부정 송신 판정 처리의 결과, 부정 송신 없음으로 판정된 경우(스텝 S104: "아니오"), 혹은 수신부(12)가 수신한 메시지가 감시 대상 메시지가 아닐 경우(스텝 S101: "아니오")는, 통상 처리부(23)가, 수신부(12)가 수신한 메시지에 대한 통상 처리를 실행한다(스텝 S106).
다음에, 도 11의 스텝 S103의 부정 송신 판정 처리의 일례에 대해, 도 12a을 참조하여 설명한다. 도 12a는, 부정 송신 판정부(22)가 실행하는 부정 송신 판정 처리의 처리 순서의 일례를 나타내는 흐름도이다.
도 12a에 나타내는 부정 송신 판정 처리가 개시되면, 부정 송신 판정부(22)는, 먼저, 수신부(12)가 수신한 메시지의 최신 수신 시각 Ti와 m개 전의 수신 시각 Ti-m을 감시 기록 테이블(16)로부터 판독함과 함께, 메시지 송신 주기 F를 감시 전송 테이블(15)로부터 판독한다(스텝 S201). 그리고, 부정 송신 판정부(22)는, 스텝 S201에서 판독한 수신 시각 Ti, Ti -m과, 메시지 송신 주기 F와, m의 값에 따라 정해진 상수 σ로부터, 상기 식(1)에 의해, Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신수의 추정값 N을 산출한다(스텝 S202).
다음에, 부정 송신 판정부(22)는, 스텝 S202에서 산출된 부정 송신수의 추정값 N이 1 이상인지 여부를 판정한다(스텝 S203). 그리고, 부정 송신수의 추정값 N이 1 이상이면(스텝 S203: "예"), Ti -m으로부터 Ti의 기간 내에 부정 송신이 있다고 판정하고(스텝 S204), 부정 송신수의 추정값 N이 0이면(스텝 S203: "아니오"), Ti -m으로부터 Ti의 기간 내에 부정 송신은 없다고 판정한다(스텝 S205).
다음에, 도 11의 스텝 S103의 부정 송신 판정 처리의 다른 예에 대해, 도 12b를 참조하여 설명한다. 도 12b는, 부정 송신 판정부(22)가 실행하는 부정 송신 판정 처리의 처리 순서의 다른 예를 나타내는 흐름도이다.
도 12b에 나타내는 부정 송신 판정 처리가 개시되면, 부정 송신 판정부(22)는, 먼저, 수신부(12)가 수신한 메시지의 최신 수신 시각 Ti와 m개 전의 수신 시각 Ti-m을 감시 기록 테이블(16)로부터 판독함과 함께, 메시지 송신 주기 F를 감시 전송 테이블(15)로부터 판독한다(스텝 S301). 그리고, 부정 송신 판정부(22)는, 스텝 S301에서 판독한 수신 시각 Ti, Ti -m과, 메시지 송신 주기 F와, m의 값에 따라 정해진 상수 σ에 기초하여, Ti-Ti -m <M(M=m×F-σ)인지 여부를 판정한다(스텝 S302). 그리고, Ti-Ti -m<M이면(스텝 S302: "예"), Ti -m으로부터 Ti의 기간 내에 부정 송신이 있다고 판정하고(스텝 S303), Ti-Ti -m≥M이면(스텝 S302: "아니오"), Ti -m으로부터 Ti의 기간 내에 부정 송신은 없다고 판정한다(스텝 S304).
다음에, 도 11의 스텝 S105의 부정 송신 검지시 처리의 일례에 대해, 도 13을 참조하여 설명한다. 도 13은, 부정 송신 검지시 처리부(24)가 실행하는 부정 송신 검지시 처리의 처리 순서를 나타내는 흐름도이다.
부정 송신 검지시 처리가 개시되면, 부정 송신 검지시 처리부(24)는, 먼저, 수신부(12)가 수신한 감시 대상 메시지의 송신원 버스와 전송처 버스에, 송신부(13)로부터 부정 송신 검지 메시지를 송신한다(스텝 S401).
다음에, 부정 송신 검지시 처리부(24)는, 수신부(12)가 수신한 감시 대상 메시지의 송신원 버스가, IVI용의 ECU(301)를 포함하는 제3 버스 B3인지 여부를 판정한다(스텝 S402). 그리고, 송신원 버스가 제3 버스 B3이면(스텝 S402: "예"), 제3 버스 B3으로부터 다른 버스로의 메시지의 전송을 정지한다(스텝 S403).
한편, 송신원 버스가 제3 버스 B3이 아니면(스텝 S402: "아니오"), 부정 송신 검지시 처리부(24)는, 검지시 처리 테이블(17)을 참조하여, 수신부(12)가 수신한 감시 대상 메시지가 파기 대상 메시지인지 여부를 판정한다(스텝 S404). 그리고, 수신부(12)가 수신한 감시 대상 메시지가 파기 대상 메시지이면(스텝 S404: "예"), 다시 그 감시 대상 메시지에 대해 감시 바이트의 지정이 있는지를 판정한다(스텝 S405).
여기서, 감시 바이트의 지정이 있으면(스텝 S405: "예"), 부정 송신 검지시 처리부(24)는, 수신부(12)가 수신한 감시 대상 메시지의 감시 바이트의 값이 위험 값과 일치하는지 여부를 판정하고(스텝 S406), 감시 바이트의 값이 위험 값과 일치하는 경우(스텝 S406: "예"), 수신부(12)가 수신한 감시 대상 메시지를 파기한다(스텝 S407). 또한, 수신부(12)가 수신한 감시 대상 메시지에 대해 감시 바이트의 지정이 없는 경우도(스텝 S405: "아니오"), 수신부(12)가 수신한 감시 대상 메시지를 파기한다(스텝 S407). 한편, 감시 바이트의 값이 위험 값과 일치하지 않는 경우는(스텝 S406: "아니오"), 후술하는 스텝 S412로 진행하고, 수신부(12)가 수신한 감시 대상 메시지를 전송처 버스로 전송한다.
또한, 수신부(12)가 수신한 감시 대상 메시지가 파기 대상 메시지가 아닐 경우(스텝 S404: "아니오"), 부정 송신 검지시 처리부(24)는, 다음에, 수신부(12)가 수신한 감시 대상 메시지가 마스크 대상 메시지인지 여부를 판정한다(스텝 S408). 그리고, 수신부(12)가 수신한 감시 대상 메시지가 마스크 대상 메시지이면(스텝 S408: "예"), 또한 그 감시 대상 메시지에 위험 값의 지정이 있는지를 판정한다(스텝 S409).
여기서, 위험 값의 지정이 있으면(스텝 S409: "예"), 부정 송신 검지시 처리부(24)는, 수신부(12)가 수신한 감시 대상 메시지의 감시 바이트의 값이 위험 값과 일치하는지 여부를 판정한다(스텝 S410). 그리고, 감시 바이트의 값이 위험 값과 일치하는 경우(스텝 S410: "예"), 감시 바이트의 값을 마스크 값에서 마스크한 후에(스텝 S411), 수신부(12)가 수신한 감시 대상 메시지를 전송처 버스로 전송한다(스텝 S412). 또한, 수신부(12)가 수신한 감시 대상 메시지에 대해 위험 값의 지정이 없는 경우도(스텝 S409: "아니오"), 감시 바이트의 값을 마스크 값으로 마스크한 후에(스텝 S411), 수신부(12)가 수신한 감시 대상 메시지를 전송처 버스로 전송한다(스텝 S412).
한편, 감시 바이트의 값이 위험 값과 일치하지 않는 경우는(스텝 S410: "아니오"), 부정 송신 검지시 처리부(24)는, 감시 바이트의 값을 마스크하지 않고, 수신부(12)가 수신한 감시 대상 메시지를 전송처 버스로 전송한다(스텝 S412). 또한, 수신부(12)가 수신한 감시 대상 메시지가 마스크 대상 메시지가 아닐 경우(스텝 S408: "아니오"), 부정 송신 검지시 처리부(24)는, 수신부(12)가 수신한 감시 대상 메시지를 그대로 전송처 버스로 전송한다(스텝 S412).
<실시 형태의 효과>
이상, 구체적인 예를 들면서 상세하게 설명한 바와 같이, 본 실시 형태에서는, 감시 대상 메시지를 수신할 때마다, 수신한 감시 대상 메시지에 대해, m개 전의 수신 시각 Ti -m로부터 금회의 수신 시각 Ti까지 기간 내에 있어서의 부정 송신의 유무를 판정하도록 하고 있다. 그래서, 본 실시 형태에 따르면, 리얼 타임성을 손상시키지 않고 메시지의 부정 송신의 유무를 고정밀도로 판정할 수 있다.
상세하게 설명하면, 주기 송신되는 메시지의 부정 송신을 검지하는 종래의 기술은, 메시지를 수신했을 때에 그 메시지의 정당성을 판정하는 것을 주목적으로 한다. 이로 인해, 예를 들어 주기 이상을 검지하는 방법에서는, 상술한 네트워크의 지연 등을 고려하면서 수신된 메시지의 정당성을 정확하게 판정하고자 하면, 긴 대기 시간이 필요해져서 처리의 지연(즉, 리얼 타임성의 저하)을 초래하고, 리얼 타임성을 손상시키지 않도록 대기 시간을 단축시키면, 부정 송신의 간과나 오 검지가 발생하기 쉬워진다. 또한, 메시지의 소정 송신 주기에 대해 필터를 적용함으로써 부정 송신의 검지를 행하는 방법에서는, 필터에는 수신 주기의 변동에 구비한 마진을 설정할 필요가 있고, 마진을 넓게 하면 부정 송신의 메시지 간과가 발생하기 쉽고, 마진을 좁게 하면 정규의 메시지를 부정 송신과 오 검지하기 쉬워진다. 또한, 상기 2개의 방법 모두, 판정의 기준이 되는 시각을 필요로 하지만, 메시지 송신측의 ECU의 사이에서 송수신 시각을 동기시키는 방법에 의해 기준의 시각을 정하려고 하면, 동기를 유지하는 기구가 필요해져서 비용이 높아진다. 또한, 과거의 메시지의 수신 시각을 기준으로 하는 방법에서는, 과거의 메시지가 부정 송신된 것인 경우(부정 송신의 간과가 있는 경우)는, 올바른 판정을 행할 수 없다.
이에 비해, 본 실시 형태에 따르면, 수신된 메시지가 부정 송신된 메시지인지 여부를 판정하는 것이 아니고, m개 전의 수신 시각 Ti -m부터 금회의 수신 시각 Ti까지 기간 내에 있어서의 부정 송신의 유무를 판정하기 때문에, 감시 대상 메시지의 수신 시에 부정 송신의 유무를 바로 판정할 수 있다. 또한, 금회 수신한 감시 대상 메시지가 부정 송신의 메시지이며, 그때에 부정 송신을 검지할 수 없다고 해도, 다음에 동일한 CAN ID의 감시 대상 메시지를 수신했을 때에는 부정 송신을 검지할 수 있다.
또한, 본 실시 형태에 따르면, 부정 송신 있음으로 판정된 경우의 부정 송신 검지시 처리로서, 부정 송신 검지 메시지를 네트워크에 송신하도록 하고 있으므로, 네트워크 상의 다른 ECU 등이 부정 송신 검지 메시지에 기초하는 소급적인 처리를 행할 수 있다. 또한, 부정 송신 검지시 처리로서, 부정 송신 있음으로 판정된 감시 대상 메시지의 송신원 버스가 차량 외부 접속되는 버스인 경우에, 그 버스로부터의 메시지의 전송을 모두 정지시킴으로써, 정보 보안 상의 안전성을 확보할 수 있다. 또한, 부정 송신 검지시 처리로서, 예를 들어 부정 송신 있음으로 판정된 감시 대상 메시지가 자동차의 제어에 영향을 주는 메시지이면, 수신한 감시 대상 메시지를 파기하거나, 일부를 마스크하거나 함으로써, 메시지의 부정 송신에 의한 자동차의 예기치 못한 거동 등을 미연에 방지할 수 있다.
이상, 본 발명의 실시 형태를 설명했지만, 여기에서 설명한 실시 형태는, 예로서 제시한 것이며, 발명의 범위를 한정하는 것은 의도하고 있지 않다. 여기서 설명한 신규의 실시 형태는, 그 외의 다양한 형태로 실시될 수 있으며, 발명의 요지를 일탈하지 않는 범상에서, 다양한 생략, 치환, 변경을 할 수 있다. 여기서 설명한 실시 형태나 그 변형은, 발명의 범위와 요지에 포함됨과 함께, 청구범상에 기재된 발명과 그 균등의 범위에 포함된다.

Claims (12)

  1. 식별자로 식별되는 메시지가 송수신되는 네트워크에 있어서 주기 송신되는 메시지를 감시 대상으로 하는 네트워크 감시 장치이며,
    감시 대상 메시지를 수신할 때마다, 수신 시각을 식별자와 대응지어서 기록하는 수신 시각 기록부와,
    감시 대상 메시지를 수신할 때마다, 수신한 감시 대상 메시지에 대해, 금회의 수신 시각 Ti와, m개 전의 수신 시각 Ti -m과, 메시지 송신 주기 F와, 미리 정한 상수 σ에 기초하여, 수신 시각 Ti -m으로부터 Ti의 기간 내에 있어서의 부정 송신의 유무를 판정하는 부정 송신 판정부를 구비하는, 네트워크 감시 장치.
  2. 제1항에 있어서, 상기 부정 송신 판정부는, (Ti-Ti -m+σ)/F의 정수부 k를 구하고, m-k가 1 이상인 경우에 부정 송신 있음으로 판정하는, 네트워크 감시 장치.
  3. 제1항에 있어서, 상기 부정 송신 판정부는, M=m×F-σ가 되는 역치 M을 설정하고, Ti-Ti -m이 역치 M 미만인 경우에 부정 송신 있음으로 판정하는, 네트워크 감시 장치.
  4. 제2항 또는 제3항에 있어서, m=1인 경우, 상기 네트워크에서의 지연의 최댓값을 Δmax라 했을 때에, 상기 상수 σ는, Δmax≤σ<(F-Δmax)/2을 충족하는 값으로 정해지는, 네트워크 감시 장치.
  5. 제2항 또는 제3항에 있어서,
    m≥2인 경우, 상기 네트워크에 있어서의 지연의 최댓값을 Δmax라 했을 때에, 상기 상수 σ는, Δmax≤σ<F-Δmax를 충족하는 값으로 정해지는, 네트워크 감시 장치.
  6. 제1항에 있어서, 상기 부정 송신 판정부가 부정 송신 있음으로 판정한 경우에, 소정의 부정 송신 검지시 처리를 실행하는 부정 송신 검지시 처리부를 더 구비하는, 네트워크 감시 장치.
  7. 제6항에 있어서, 상기 부정 송신 검지시 처리부는, 상기 부정 송신 검지시 처리로서, 부정 송신 있음으로 판정된 감시 대상 메시지의 식별자를 포함하는 부정 송신 검지 메시지를 네트워크에 송신하는 처리를 실행하는, 네트워크 감시 장치.
  8. 제7항에 있어서, 상기 부정 송신 검지시 처리부는, 상기 부정 송신 검지시 처리로서, 수신한 감시 대상 메시지를 파기하는 처리를 추가로 실행하는, 네트워크 감시 장치.
  9. 제8항에 있어서, 상기 부정 송신 검지시 처리부는, 수신한 감시 대상 메시지가 특정의 위치의 값이 소정값인 경우에 당해 감시 대상 메시지를 파기하는, 네트워크 감시 장치.
  10. 제6항에 있어서, 상기 부정 송신 검지시 처리부는, 상기 부정 송신 검지시 처리로서, 수신한 감시 대상 메시지가 특정의 위치를 특정의 값으로 마스크한 후에, 상기 부정 송신 판정부가 부정 송신 없음으로 판정된 경우에 실행되는 통상 시 처리와 동등한 처리를 실행하는, 네트워크 감시 장치.
  11. 제10항에 있어서, 상기 부정 송신 검지시 처리부는, 수신한 감시 대상 메시지가 특정의 위치의 값이 소정값인 경우에 당해 감시 대상 메시지가 특정의 위치를 특정의 값으로 마스크하는, 네트워크 감시 장치.
  12. 제6항에 있어서, 상기 부정 송신 검지시 처리부는, 상기 부정 송신 검지시 처리로서, 부정 송신 있음으로 판정된 감시 대상 메시지와 같은 버스로부터 수신된 메시지에 대해, 상기 부정 송신 판정부가 부정 송신 없음으로 판정된 경우에 실행되는 통상 시 처리를 정지시키는 처리를 실행하는, 네트워크 감시 장치.
KR1020170066105A 2016-08-09 2017-05-29 네트워크 감시 장치 KR102030397B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2016-156475 2016-08-09
JP2016156475A JP6433951B2 (ja) 2016-08-09 2016-08-09 ネットワーク監視装置およびプログラム

Publications (2)

Publication Number Publication Date
KR20180018293A true KR20180018293A (ko) 2018-02-21
KR102030397B1 KR102030397B1 (ko) 2019-10-10

Family

ID=59501314

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170066105A KR102030397B1 (ko) 2016-08-09 2017-05-29 네트워크 감시 장치

Country Status (7)

Country Link
US (1) US10326782B2 (ko)
EP (1) EP3282646B1 (ko)
JP (1) JP6433951B2 (ko)
KR (1) KR102030397B1 (ko)
CN (1) CN107707520B (ko)
BR (1) BR102017017027A8 (ko)
RU (1) RU2676236C1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10050983B2 (en) * 2015-11-13 2018-08-14 Kabushiki Kaisha Toshiba Communication system, receiving apparatus, receiving method, and computer program product
WO2018230988A1 (ko) * 2017-06-16 2018-12-20 주식회사 페스카로 Can 통신 기반 해킹공격 탐지 방법 및 시스템
DE102017218134B3 (de) * 2017-10-11 2019-02-14 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zum Übertragen einer Botschaftsfolge über einen Datenbus sowie Verfahren und Vorrichtung zum Erkennen eines Angriffs auf eine so übertragene Botschaftsfolge
JPWO2020079874A1 (ja) * 2018-10-18 2021-09-09 住友電気工業株式会社 検知装置、ゲートウェイ装置、検知方法および検知プログラム
JP7124679B2 (ja) * 2018-12-07 2022-08-24 トヨタ自動車株式会社 監視装置
JP7147635B2 (ja) * 2019-03-05 2022-10-05 トヨタ自動車株式会社 不正送信データ検知装置
JP7176456B2 (ja) * 2019-03-29 2022-11-22 株式会社デンソー メッセージ監視システム、メッセージ送信電子制御装置、および監視用電子制御装置
JP7234839B2 (ja) * 2019-07-17 2023-03-08 株式会社デンソー ゲートウェイ装置、異常監視方法、及び異常監視プログラム
JP7175858B2 (ja) * 2019-08-07 2022-11-21 株式会社日立製作所 情報処理装置および正規通信判定方法
WO2021065069A1 (ja) * 2019-09-30 2021-04-08 株式会社オートネットワーク技術研究所 検知装置、車両、検知方法および検知プログラム
US11627152B2 (en) 2020-01-08 2023-04-11 Bank Of America Corporation Real-time classification of content in a data transmission
US11297085B2 (en) * 2020-01-08 2022-04-05 Bank Of America Corporation Real-time validation of data transmissions based on security profiles
US11184381B2 (en) 2020-01-08 2021-11-23 Bank Of America Corporation Real-time validation of application data
WO2022185370A1 (ja) * 2021-03-01 2022-09-09 株式会社オートネットワーク技術研究所 車載装置、プログラム及び情報処理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090063430A (ko) * 2007-12-14 2009-06-18 현대자동차주식회사 차량 내 네트워크 고장 진단 모니터링 시스템 및 그 방법
KR101472896B1 (ko) * 2013-12-13 2014-12-16 현대자동차주식회사 차량 내 통신 네트워크에서의 보안 강화 방법 및 그 장치

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4725070B2 (ja) * 2004-10-13 2011-07-13 パナソニック株式会社 正規コンテンツ確認方法、コンテンツ送受信システム、送信機、および受信機
JP2007312193A (ja) * 2006-05-19 2007-11-29 Auto Network Gijutsu Kenkyusho:Kk 異常監視ユニット
US9215274B2 (en) * 2011-04-22 2015-12-15 Angel A. Penilla Methods and systems for generating recommendations to make settings at vehicles via cloud systems
JP6163502B2 (ja) * 2012-03-02 2017-07-12 アカデミア シニカAcademia Sinica 抗上皮細胞接着分子(EpCAM)抗体及びその使用方法
US8792347B2 (en) * 2012-06-01 2014-07-29 Opera Software Ireland Limited Real-time network monitoring and subscriber identification with an on-demand appliance
US9298577B2 (en) * 2012-09-19 2016-03-29 Toyota Jidosha Kabushiki Kaisha Predicting bus idle time based on obtained usage data of a bus
JP5919205B2 (ja) 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
JP5954228B2 (ja) * 2013-03-22 2016-07-20 トヨタ自動車株式会社 ネットワーク監視装置及びネットワーク監視方法
JP6126980B2 (ja) * 2013-12-12 2017-05-10 日立オートモティブシステムズ株式会社 ネットワーク装置およびネットワークシステム
WO2015170451A1 (ja) 2014-05-08 2015-11-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車載ネットワークシステム、電子制御ユニット及び不正検知方法
JP6079768B2 (ja) * 2014-12-15 2017-02-15 トヨタ自動車株式会社 車載通信システム
JP6603617B2 (ja) * 2015-08-31 2019-11-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ ゲートウェイ装置、車載ネットワークシステム及び通信方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090063430A (ko) * 2007-12-14 2009-06-18 현대자동차주식회사 차량 내 네트워크 고장 진단 모니터링 시스템 및 그 방법
KR101472896B1 (ko) * 2013-12-13 2014-12-16 현대자동차주식회사 차량 내 통신 네트워크에서의 보안 강화 방법 및 그 장치

Also Published As

Publication number Publication date
CN107707520B (zh) 2020-11-10
CN107707520A (zh) 2018-02-16
BR102017017027A8 (pt) 2022-10-18
EP3282646B1 (en) 2019-01-02
BR102017017027A2 (pt) 2018-03-06
US10326782B2 (en) 2019-06-18
KR102030397B1 (ko) 2019-10-10
JP6433951B2 (ja) 2018-12-05
JP2018026663A (ja) 2018-02-15
EP3282646A1 (en) 2018-02-14
US20180048663A1 (en) 2018-02-15
RU2676236C1 (ru) 2018-12-26

Similar Documents

Publication Publication Date Title
KR20180018293A (ko) 네트워크 감시 장치
US11570184B2 (en) In-vehicle network system, fraud-detection electronic control unit, and fraud-detection method
US11356475B2 (en) Frame transmission prevention apparatus, frame transmission prevention method, and in-vehicle network system
CN107113214B (zh) 不正常检测电子控制单元、车载网络系统以及通信方法
CN106031098B (zh) 不正常帧应对方法、不正常检测电子控制单元以及车载网络系统
EP3744584A1 (en) Vehicle monitoring device, fraud detection server, and control method
CN106105105B9 (zh) 网络通信系统、不正常检测电子控制单元以及不正常应对方法
CN104956626B (zh) 网络装置以及数据收发系统
US10713106B2 (en) Communication device, communication method and non-transitory storage medium
JP5999178B2 (ja) 車両用ネットワークの通信管理装置及び通信管理方法
EP3793141B1 (en) Anomaly sensing electronic control unit, vehicle-mounted network system, and anomaly sensing method
EP3396900B1 (en) Fraudulent message detection
WO2017038500A1 (ja) 中継装置
US20200021611A1 (en) Fraud detection method, fraud detection device, and recording medium
WO2018110046A1 (ja) 制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体
WO2018173732A1 (ja) 車載通信装置、コンピュータプログラム及びメッセージ判定方法
US20180375879A1 (en) Vehicle network operating protocol and method
CN111066001A (zh) 日志输出方法、日志输出装置以及程序
JP2019174426A (ja) 異常検知装置、異常検知方法およびプログラム
KR101714526B1 (ko) 차량 네트워크 해킹 방지 방법 및 장치
JP6532162B2 (ja) 通信装置、および通信システム
JP7110950B2 (ja) ネットワークシステム
CN113783958A (zh) 网关装置、方法及车载网络系统
JP2017085197A (ja) 通信システム、送信装置、及び通信方法
JP2020096322A (ja) 不正信号処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant