JP6964274B2 - 監視装置、監視システム及び監視方法 - Google Patents

監視装置、監視システム及び監視方法 Download PDF

Info

Publication number
JP6964274B2
JP6964274B2 JP2018003762A JP2018003762A JP6964274B2 JP 6964274 B2 JP6964274 B2 JP 6964274B2 JP 2018003762 A JP2018003762 A JP 2018003762A JP 2018003762 A JP2018003762 A JP 2018003762A JP 6964274 B2 JP6964274 B2 JP 6964274B2
Authority
JP
Japan
Prior art keywords
communication data
communication
data
server
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018003762A
Other languages
English (en)
Other versions
JP2019125867A (ja
Inventor
薫 横田
紘幸 和田
稔久 中野
崇之 藤井
祐輔 根本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2018003762A priority Critical patent/JP6964274B2/ja
Priority to US16/244,453 priority patent/US20190217869A1/en
Publication of JP2019125867A publication Critical patent/JP2019125867A/ja
Application granted granted Critical
Publication of JP6964274B2 publication Critical patent/JP6964274B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Description

本開示は、車載ネットワークに対して不正な制御コマンドを送信することによる車両の不正操作を監視する技術に関する。
特許文献1では、複数の車両の各々の車内に設置されたサイバーウォッチマンと、車外に設置されたサイバーハブとを備える自動車安全システムが開示されている。サイバーウォッチマンは、車載通信ネットワークに接続され、車載通信ネットワーク上の通信トラフィックデータを取得する。また、サイバーハブは、サイバーウォッチマンが取得した通信トラフィックデータを、サイバーウォッチマンから通信ネットワーク(例えばインターネットなど)を介して受信する。これにより、サイバーハブは、複数の車両から通信トラフィックデータを集約することができ、車両のサイバー攻撃に対する高次の情報を取得することができる。
特開2015−136107号公報
しかしながら、上記従来技術では、サイバーハブは、複数の車両のサイバーウォッチマンからデータを受信する必要があるため、通信データ量が膨大になる場合がある。また、各車両のサイバーウォッチマンは、車載通信ネットワークの監視のために常に通信トラフィックデータを取得する必要があるため、データの記憶のための記憶デバイスの容量が膨大になる場合がある。
そこで、本開示は、車載ネットワークの監視において、通信量及び/又は記憶デバイスの容量を削減することができる監視装置、監視システム及び監視方法を提供する。
本発明の一態様に係る監視装置は、車両に搭載され、車載ネットワークを監視する監視装置であって、前記車載ネットワーク上の通信データを取得する第1通信部と、前記車載ネットワークとは異なるネットワークを介してサーバと通信する第2通信部と、前記通信データのログを記憶するための第1記憶部と、前記第1通信部、前記第2通信部及び前記第1記憶部を制御する第1制御部と、を備え、前記第1制御部は、予め定められた判定ルールに基づいて、異常、正常及び判定不能を含む複数の異常レベルの中から前記通信データの異常レベルを判定する第1判定部を備え、前記第1制御部は、判定された前記通信データの異常レベルに応じて、前記通信データのログの前記サーバへの送信方法、及び、前記通信データのログの記憶方法のうちの少なくとも一方を変更し、前記第1制御部は、さらに、前記第2通信部を制御する第1通信制御部を備え、前記第1通信制御部は、前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記サーバに送信し、前記通信データの異常レベルが正常と判定された場合に、前記通信データのログを前記サーバに送信せず、前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データの特徴量を前記サーバに送信し、(ii)前記サーバから前記通信データの異常レベルが異常であることを示す判定結果を受信したときに、前記通信データのログを前記サーバに送信する
なお、これらの包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
本発明の一態様に係る監視装置等は、車載ネットワークの監視において、通信量及び/又は記憶デバイスの容量を削減することができる。
実施の形態1に係る監視システムの機能構成を示すブロック図 実施の形態1におけるフルログの一例を示す図 実施の形態1に係る監視システムのシーケンス図 実施の形態1に係る監視装置の第1動作を示すフローチャート 実施の形態1におけるCANメッセージ内のアクセル量の位置を示す図 実施の形態1における第1特徴量の一例を示す図 実施の形態1における第2特徴量の一例を示す図 実施の形態1における第3特徴量の一例を示す図 実施の形態1における複数の特徴量の組合せの一例を示す図 実施の形態1における1つの特徴量を用いた異常レベル判定の一例を示す概念図 実施の形態1における1つの特徴量を用いた異常レベル判定の他の一例を示す概念図 実施の形態1における2つの特徴量を用いた異常レベル判定の一例を示す概念図 実施の形態1における2つの特徴量を用いた異常レベル判定の他の一例を示す概念図 実施の形態1に係る監視装置の第2動作を示すフローチャート 実施の形態1に係るサーバの動作を示すフローチャート 実施の形態1における学習モデルを用いた異常レベル判定の一例を示す概念図 実施の形態2に係る監視システムの機能構成を示すブロック図 実施の形態2における監視データの一例を示す図 実施の形態2における重みデータの一例を示す図 実施の形態2における重みデータの一例を示す図 実施の形態2に係る監視装置の第1動作を示すフローチャート 実施の形態2に係る監視装置の第2動作を示すフローチャート 実施の形態2の変形例における重みデータの一例を示す図 実施の形態2の変形例における閾値データの一例を示す図
(本開示の概要)
本開示の一態様に係る監視装置は、車両に搭載され、車載ネットワークを監視する監視装置であって、前記車載ネットワーク上の通信データを取得する第1通信部と、前記車載ネットワークとは異なるネットワークを介してサーバと通信する第2通信部と、前記通信データのログを記憶するための第1記憶部と、前記第1通信部、前記第2通信部及び前記第1記憶部を制御する第1制御部と、を備え、前記第1制御部は、予め定められた判定ルールに基づいて、異常、正常及び判定不能を含む複数の異常レベルの中から前記通信データの異常レベルを判定する第1判定部を備え、前記第1制御部は、判定された前記通信データの異常レベルに応じて、前記通信データのログの前記サーバへの送信方法、及び、前記通信データのログの記憶方法のうちの少なくとも一方を変更する。
これによれば、車両に搭載された監視装置で、異常、正常及び判定不能を含む複数の異常レベルの中から通信データの異常レベルを判定することができる。したがって、監視装置で確度の高い異常か正常かの判定ができないケースにおいては必ずしも異常及び正常のどちらかを判定する必要がないため、監視装置において間違った異常レベルが判定されることを削減することができ、異常レベルの判定精度の向上を図ることができる。また、判定された通信データの異常レベルに応じて、通信データのログのサーバへの送信方法、及び、通信データのログの記憶方法のうちの少なくとも一方を変更することができるため、通信量及び/又は記憶デバイスの容量を削減することも可能となる。
また例えば、本開示の一態様に係る監視装置において、前記第1判定部は、前記通信データから特徴量を抽出し、抽出された前記特徴量を用いて前記通信データの異常レベルを判定してもよい。
これによれば、特徴量を用いて通信データの異常レベルを判定することができる。したがって、適切な特徴量を用いることにより、異常レベルの判定精度を向上させることができる。
また例えば、本開示の一態様に係る監視装置において、前記第1通信部は、前記通信データを含む複数の通信データを取得し、前記第1判定部は、前記複数の通信データのうち予め定められた識別子を有する1以上の通信データに含まれる値を、前記特徴量に含まれる第1特徴量として抽出してもよい。また例えば、本開示の一態様に係る監視装置において、前記第1通信部は、前記通信データを含む複数の通信データを取得し、前記第1判定部は、前記複数の通信データのうち予め定められた識別子を有する2以上の通信データに含まれる値の変化量を、前記特徴量に含まれる第2特徴量として抽出してもよい。また例えば、本開示の一態様に係る監視装置において、前記第1通信部は、前記通信データを含む複数の通信データを取得し、前記第1判定部は、前記複数の通信データのうち予め定められた識別子を有する2以上の通信データの送信時刻の差分時間を、前記特徴量に含まれる第3特徴量として抽出してもよい。
これによれば、様々な特徴量を異常レベルの判定に利用することができ、異常レベルの判定精度を向上させることができる。
また例えば、本開示の一態様に係る監視装置において、前記第1制御部は、さらに、前記第2通信部を制御する第1通信制御部を備え、前記第1通信制御部は、前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記サーバに送信し、前記通信データの異常レベルが正常と判定された場合に、前記通信データのログを前記サーバに送信せず、前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データの特徴量を前記サーバに送信し、(ii)前記サーバから前記通信データの異常レベルが黒であることを示す判定結果を受信したときに、前記通信データのログを前記サーバに送信してもよい。
これによれば、通信データの異常レベルが判定不能と判定された場合に、通信データの特徴量をサーバに送信することができる。その後、サーバから通信データの異常レベルが異常であることを示す判定結果を受信したときに、通信データのログをサーバに送信することができる。したがって、監視装置で判定不能な通信データのログを、サーバでの判定結果に基づいて必要に応じて送信することができ、通信量を削減することができる。
また例えば、本開示の一態様に係る監視装置において、前記監視装置は、さらに、前記通信データのログを一時的に記憶するための第2記憶部を備え、前記第1制御部は、さらに、前記第1記憶部及び前記第2記憶部を制御する記憶制御部を備え、前記記憶制御部は、前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記第1記憶部に格納し、前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データのログを前記第2記憶部に格納し、(ii-1)前記サーバから前記通信データの異常レベルが異常であることを示す判定結果を受信したときに、前記第2記憶部に格納された前記通信データのログを前記第1記憶部に移動し、(ii-2)前記サーバから前記通信データの異常レベルが正常であることを示す判定結果を受信したときに、前記通信データのログを削除してもよい。
これによれば、通信データの異常レベルが判定不能と判定された場合に、通信データのログを第2記憶部に一時的に格納し、サーバから通信データの異常レベルが異常であることを示す判定結果を受信したときに、第2記憶部に格納された通信データのログを第1記憶部に移動することができる。したがって、監視装置で判定不能な通信データのログを、サーバでの判定結果に基づいて必要に応じて第1記憶部に格納することができ、記憶デバイスの容量を削減することができる。
また例えば、本開示の一態様に係る監視装置において、前記第1通信部は、前記通信データを含む複数の通信データを取得し、前記第1記憶部は、前記複数の通信データを、判定された異常レベルで分類して監視データとして記憶し、前記第1制御部は、さらに、前記第2通信部を制御する第1通信制御部を備え、前記第1通信制御部は、前記第1記憶部に格納された前記監視データのデータ量を異常レベル毎に取得し、前記異常レベル毎に、前記データ量に応じて前記監視データを前記サーバに送信してもよい。
これによれば、異常レベル毎に、データ量に応じて監視データをサーバに送信することができる。したがって、監視データの送信頻度を制御することができ、通信量を削減することができる。
また例えば、本開示の一態様に係る監視装置において、前記第1通信制御部は、前記異常レベル毎に、当該異常レベルに対応する第1重み値を用いて前記データ量を重み付けし、前記異常レベル毎に、重み付けされた前記データ量が予め定められた閾値よりも大きい場合に、前記監視データを前記サーバに送信してもよい。
これによれば、異常レベルに対応する第1重み値を用いてデータ量を重み付けすることができる。したがって、異常レベルに応じて監視データの送信頻度を制御することができ、監視の重要度に応じて監視データを送信することが可能となる。
また例えば、本開示の一態様に係る監視装置において、前記第1制御部は、さらに、前記車両の運転状態を推定する運転状態推定部を備え、前記第1通信制御部は、前記データ量の重み付けにおいて、前記第1重み値に加えて、推定された前記運転状態に対応する第2重み値を用いてもよい。
これによれば、第1重み値に加えて、推定された運転状態に対応する第2重み値をデータ量の重み付けに用いることができる。したがって、車両の運転状態に応じて監視データの送信頻度を制御することができ、監視の重要度に応じて監視データを送信することが可能となる。
本開示の一態様に係る監視システムは、車載ネットワークを監視する監視システムであって、上記監視装置と、前記監視装置と通信可能なサーバと、を備える。
これによれば、上記監視装置と同様の効果を奏することができる。
また例えば、本開示の一態様に係る監視システムにおいて、前記第1制御部は、さらに、前記第2通信部を制御する第1通信制御部を備え、前記第1通信制御部は、前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記サーバに送信し、前記通信データの異常レベルが正常と判定された場合に、前記通信データのログを前記サーバに送信せず、前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データの特徴量を前記サーバに送信し、(ii)前記サーバから前記通信データの異常レベルが黒であることを示す判定結果を受信したときに、前記通信データのログを前記サーバに送信し、前記サーバは、前記ネットワークを介して前記監視装置と通信する第3通信部と、前記監視装置から受信した前記通信データのログを記憶する第3記憶部と、前記第3通信部を制御する第2制御部と、を備え、前記第2制御部は、異常レベルが判定不能と判定された通信データの特徴量を前記監視装置から前記第3通信部が受信した場合に、受信された前記通信データの特徴量を用いて、前記通信データの異常レベルが異常及び正常のいずれであるかを判定する第2判定部と、前記第2判定部による判定結果を前記監視装置に送信し、前記通信データの異常レベルが異常と判定された場合に前記監視装置から前記通信データのログを受信する第2通信制御部と、を備え、前記第3記憶部は、さらに、通信データの異常レベルを判定するための学習モデルを記憶しており、前記第2判定部は、前記学習モデルを用いて、前記通信データの異常レベルが異常及び正常のいずれであるかを判定してもよい。
これによれば、サーバでは、監視装置で異常レベルが判定不能と判定された通信データの異常レベルが異常及び正常のいずれであるかを判定すればよいため、サーバでの異常レベルの判定の負荷を低減することができる。さらに、サーバでは、学習モデルを用いて通信データの異常レベルを判定することができ、より高精度に異常レベルを判定することができる。
また例えば、本開示の一態様に係る監視システムにおいて、前記監視装置の前記第1通信制御部は、前記通信データの異常レベルが正常と判定された場合に、前記通信データの特徴量を前記サーバに送信し、前記サーバの前記第2制御部は、異常レベルが正常と判定された前記通信データの特徴量を前記監視装置から前記第3通信部が受信した場合に、当該特徴量を正常のラベルが付された訓練データとして用いて前記学習モデルを更新するモデル更新部を備えてもよい。
これによれば、サーバでは、正常と判定された通信データの特徴量を用いて学習モデルを更新することができる。したがって、より高い判定精度を有する学習モデルを構築することができ、環境の変化にも柔軟に対応することができる。
なお、これらの包括的又は具体的な態様は、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
以下、実施の形態について、図面を参照しながら具体的に説明する。
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、請求の範囲を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は、必ずしも厳密に図示したものではない。各図において、実質的に同一の構成については同一の符号を付し、重複する説明は省略又は簡略化する。
(実施の形態1)
[監視システムの構成]
まず、実施の形態1に係る監視システムの構成について、図1を参照しながら具体的に説明する。図1は、実施の形態1に係る監視システム10の機能構成を示すブロック図である。
監視システム10は、車載ネットワークを監視する。監視システム10は、車両20に搭載された監視装置100と、監視装置100と通信可能なサーバ30と、を備える。車両20は、例えば自動車であり、その原動機及び燃料は特に限定されない。
[監視装置の構成]
監視装置100は、車両20に搭載されており、車載ネットワークを監視する。本実施の形態では、車載ネットワークは、CAN(Controller Area Network)に基づいて車両20内に構築された通信ネットワークである。車載ネットワークでは、複数のECU(Electronic Control Unit)21が複数のCANバス22を介して接続され、その複数のCANバス22に監視装置100が接続される。なお、車載ネットワークは、CANに限定される必要はなく、例えば、Ethernet(登録商標)に基づく通信ネットワークであってもよい。
図1に示すように、監視装置100は、第1通信部110と、第2通信部120と、記憶部130と、一時記憶部140と、制御部150とを備える。以下、監視装置100の各構成要素について説明する。
[第1通信部]
第1通信部110は、複数のCANバス22上を流れるCANメッセージを経時的に取得する。CANメッセージは、通信データの一例であり、CANに基づく制御コマンドである。つまり、第1通信部110は、車載ネットワーク上の複数の通信データを取得する。第1通信部110で取得されたCANメッセージは、バッファメモリ(図示せず)に格納される。
[第2通信部]
第2通信部120は、車載ネットワークとは異なるネットワーク(例えば移動体通信ネットワーク、インターネット等)を介してサーバ30と通信する。第2通信部120は、例えばテレマティクス通信ユニット(TCU)あるいは車載インフォテインメント(IVI)等として実装される。
[記憶部]
記憶部130は、第1記憶部の一例であり、フルログ131及び判定ルール132を記憶する。記憶部130は、例えば1以上の半導体メモリ及び/又は1以上のハードディスクドライブを用いて実装される。
フルログとは、通信データのログを意味しており、ここではタイムスタンプが付されたCANメッセージの一覧データである。記憶部130に格納されるフルログ131には、異常と判定されたCANメッセージが含まれる。フルログ131は、データ圧縮されてもよいし、暗号化されてもよい。
図2は、実施の形態1におけるフルログ131の一例を示す。図2のフルログ131では、CAN ID及びペイロードを含むCANメッセージに対してタイムスタンプが秒単位で付されている。CAN IDは、CANにおいてメッセージを識別する識別子である。ペイロードは、CANメッセージのデータ本体であり、運転制御のための制御量(例えばアクセル量)等を示す値を含む。
判定ルール132は、CANメッセージの異常レベルを判定するために予め定められたルールである。判定ルール132は、例えば特徴量の閾値で定義される。また、判定ルール132は、例えば特徴量の関数で定義されてもよい。判定ルール132については、図面を用いて後述する。
[一時記憶部]
一時記憶部140は、第2記憶部の一例であり、フルログ141を一時的に記憶する。一時記憶部140に格納されるフルログ141には、正常及び異常のどちらであるか不明であると判定されたCANメッセージが含まれる。一時記憶部140は、例えば、1以上の半導体メモリ及び/又は1以上のハードディスクドライブを用いて実装される。また、前記記憶部130と一時記憶部140は、物理的に別の記憶媒体として実装されるとは限らない。例えば、物理的には同じ記憶媒体の上で論理的に分離された二つの領域として実現されてもよい。
[制御部]
制御部150は、第1制御部の一例であり、第1通信部110、第2通信部120、記憶部130及び一時記憶部140を制御する。制御部150は、CANメッセージの異常レベルに応じて、フルログのサーバ30への送信方法、及び、フルログの記憶方法のうちの少なくとも一方を変更する。
フルログの送信方法は、例えばフルログを送信するか否かの指定を含む。また例えば、フルログの送信方法は、フルログを送信するタイミングの指定を含んでもよい。また例えば、フルログの送信方法は、フルログを送信する手順の指定を含んでもよい。
フルログの記憶方法には、例えばフルログを記憶するか否かの指定が含まれる。また例えば、フルログの記憶方法は、フルログを記憶部130に格納する手順を含んでもよい。
図1に示すように、制御部150は、異常判定部151と、通信制御部152と、記憶制御部153と、を備える。制御部150は、1以上の汎用プロセッサ及びメモリを用いてソフトウェアで実装されてもよいし、1以上の専用集積回路を用いてハードウェアで実装されてもよい。
異常判定部151は、第1判定部の一例であり、判定ルール132に基づいて、異常を示す黒、正常を示す白及び判定不能を示すグレイを含む複数の異常レベルの中から、CANメッセージの異常レベルを判定する。具体的には、異常判定部151は、CANメッセージから特徴量を抽出し、抽出された特徴量を用いてCANメッセージの異常レベルを判定する。特徴量の詳細については、図面を用いて後述する。
通信制御部152は、第1通信制御部の一例であり、第2通信部120を制御する。通信制御部152は、判定された異常レベルに応じて変更される送信方法に従って、フルログをサーバ30に送信する。
具体的には、通信制御部152は、CANメッセージの異常レベルが黒と判定された場合に、フルログをサーバ30に送信する。一方、通信制御部152は、CANメッセージの異常レベルが白と判定された場合に、フルログをサーバ30に送信せず、CANメッセージの特徴量をサーバ30に送信する。
また、通信制御部152は、CANメッセージの異常レベルがグレイと判定された場合に、まず、CANメッセージの特徴量をサーバ30に送信する。そして、サーバ30から当該CANメッセージの異常レベルが黒であることを示す判定結果を受信した場合に、通信制御部152は、フルログをサーバ30に送信する。一方、サーバ30から当該CANメッセージの異常レベルが白であることを示す判定結果を受信した場合に、通信制御部152は、フルログをサーバ30に送信しない。
記憶制御部153は、記憶部130及び一時記憶部140を制御する。記憶制御部153は、判定された異常レベルに応じて変更される記憶方法に従って、フルログを記憶部130又は一時記憶部140に格納する。
具体的には、記憶制御部153は、CANメッセージの異常レベルが黒と判定された場合に、フルログ131を記憶部130に格納する。また、記憶制御部153は、CANメッセージの異常レベルがグレイと判定された場合に、まず、フルログ141を一時記憶部140に格納する。そして、サーバ30から当該CANメッセージの異常レベルが黒であることを示す判定結果を受信した場合に、記憶制御部153は、一時記憶部140に格納されたフルログ141を記憶部130に移動する。一方、サーバ30から当該CANメッセージの異常レベルが白であることを示す判定結果を受信した場合に、記憶制御部153は、一時記憶部140に格納されたフルログ141を削除する。なお、フルログ141の削除では、フルログ141の管理情報が管理領域から削除されるだけでもよいし、当該管理情報の削除に加えてフルログ141そのものが実データ領域から削除されてもよい。
[サーバの構成]
次に、サーバ30の構成について説明する。サーバ30は、車両20外に設置され、車載ネットワークとは異なるネットワークを介して監視装置100と通信する。図1に示すように、サーバ30は、通信部31と、記憶部32と、制御部33と、を備える。
通信部31は、第3通信部の一例であり、車両20に搭載された監視装置100と通信する。
記憶部32は、第3記憶部の一例であり、CANメッセージの異常レベルを判定するための学習モデル322を記憶している。さらに、記憶部32は、監視装置100から受信したフルログ321を記憶する。記憶部32は、例えば1以上の半導体メモリ及び/又は1以上のハードディスクドライブを用いて実装される。
学習モデル322は、CANメッセージの特徴量から、CANメッセージが異常(黒)であるか正常(白)であるかを判定するための数学モデルである。学習モデル322としては、特に限定される必要はないが、例えばLOF(Local Outlier Factor)あるいはSVM(Support Vector Machine)のような異常検知手法で使用される学習モデルが用いられる。
制御部33は、第2制御部の一例であり、通信部31及び記憶部32を制御する。制御部33は、1以上の汎用プロセッサ及びメモリを用いてソフトウェアで実装されてもよいし、1以上の専用集積回路を用いてハードウェアで実装されてもよい。図1に示すように、制御部33は、異常判定部331と、通信制御部332と、モデル更新部333と、を備える。
異常判定部331は、第2判定部の一例であり、監視装置100において異常レベルがグレイと判定されたCANメッセージの特徴量を監視装置100から通信部31が受信した場合に、受信されたCANメッセージの特徴量と記憶部32に記憶する学習モデル322を用いて、CANメッセージの異常レベルが黒及び白のいずれであるかを判定する。異常レベルの判定方法としては、特に限定される必要はないが、例えば前述のLOFあるいはSVMといった異常検知手法で使用される異常判定方法が用いられる。
通信制御部332は、第2通信制御部の一例であり、サーバ30における異常レベルの判定結果を監視装置100に送信する。さらに、通信制御部332は、CANメッセージの異常レベルが黒と判定された場合には、監視装置100からフルログを受信する。
[監視システムの動作]
次に、以上のように構成された監視システム10の動作について、図3を参照しながら具体的に説明する。図3は、実施の形態1に係る監視システム10のシーケンス図である。なお、以降の説明及び図において、データの後の括弧内の色(白、黒及びグレイ)は、異常レベルの判定結果を示す。例えば、(黒)は、監視装置100又はサーバ30で黒と判定されたことを表す。また、(グレイ−>黒)は、監視装置100でグレイと判定された後に、サーバ30で黒と判定されたことを表す。
まず、監視装置100において、異常判定部151は、CANメッセージの異常レベルを判定する(S102)。そして、監視装置100の通信制御部152は、異常レベルに応じてフルログの送信方法を変更する(S104)。これにより、特徴量データ(白/グレイ)又はフルログ(黒)がサーバ30に送信される。さらに、記憶制御部153は、異常レベルに応じてフルログの記憶方法を変更する(S106)。
サーバ30では、異常判定部331は、異常レベルがグレイと判定されたCANメッセージの特徴量(グレイ)を受信した場合に、特徴量(グレイ)と学習モデル322を用いて、CANメッセージの異常レベルが黒及び白のいずれであるかを判定する(S112)。そして、判定結果が監視装置100に送信される。一方、異常レベルが黒と判定されたCANメッセージのフルログ(黒)を受信した場合、制御部33は、フルログを記憶部32に格納する(S114)。また、異常レベルが白と判定されたCANメッセージの特徴量(白)を受信した場合には、特徴量(白)を訓練データとして用いて学習モデル322を更新する(S116)。
前記ステップS102において、監視装置100が異常レベルをグレイと判定したとき、監視装置100はサーバ30から送信される判定結果を待ち受けて受信する。監視装置100は、CANメッセージの異常レベルが黒であることを示す判定結果をサーバ30から受信した場合に、通信制御部152は、当該CANメッセージのフルログ(グレイ−>黒)をサーバ30に送信する(S108)。送信されたフルログ(グレイ−>黒)を受信したサーバ30では、制御部33が記憶部32に格納する(S118)。さらに、監視装置100では、記憶制御部153が、当該CANメッセージのフルログ(グレイ−>黒)を一時記憶部140から記憶部130に移動する(S110)。
一方、CANメッセージの異常レベルが白であることを示す判定結果をサーバ30から受信した場合には、監視装置100の制御部33は、一時記憶部140に格納された当該CANメッセージのフルログ(グレイ−>白)を削除する(S111)。
[監視装置の動作]
このような監視システム10における監視装置100の動作を図4〜図12を参照しながら具体的に説明する。図4は、実施の形態1に係る監視装置100の第1動作を示すフローチャートである。具体的には、図4は、図3のステップS102〜ステップS106の詳細を示す。
まず、第1通信部110は、車載ネットワーク上のCANメッセージを経時的に取得し、バッファメモリに蓄積する(S202)。異常判定部151は、バッファメモリに蓄積された複数のCANメッセージから特徴量を抽出する(S204)。
特徴量としては、CANメッセージのペイロードに含まれる値を用いることができる。この場合、異常判定部151は、複数のCANメッセージのうちの予め定められたCAN IDを有する1以上のCANメッセージに含まれる値を第1特徴量として抽出してもよい。
例えば、CANメッセージ内のアクセル量が第1特徴量として抽出される場合について図5及び図6を参照しながら説明する。図5は、実施の形態1におけるCANメッセージ内のアクセル量の位置を示す。図6は、実施の形態1における第1特徴量の一例を示し、具体的には、図5のCANメッセージから抽出された第1特徴量を示す。図5に示す「0x123」のCAN IDを有するCANメッセージに含まれる16進数で表されたアクセル量に基づいて、図6に示す10進数で表されたアクセル量が第1特徴量として抽出される。
また、特徴量としては、第1特徴量の変化量を用いることもできる。この場合、異常判定部151は、複数のCANメッセージのうちの予め定められたCAN IDを有する2以上のCANメッセージに含まれる値の変化量を、第2特徴量として抽出してもよい。図7は、実施の形態1における第2特徴量の一例を示し、具体的には、図6の第1特徴量の変化量を示す。ここでは、変化量は、CANメッセージに含まれる値と、当該CANメッセージの直前のCANメッセージに含まれる値との差分値の絶対値である。
また、特徴量としては、CANメッセージの送信間隔を用いることもできる。この場合、異常判定部151は、複数のCANメッセージのうちの予め定められたCAN IDを有する2以上のCANメッセージの送信時刻の差分時間を、第3特徴量として抽出してもよい。図8は、実施の形態1における第3特徴量の一例を示し、具体的には、図5のCANメッセージから抽出された第3特徴量を示す。
なお、特徴量として、第1特徴量、第2特徴量及び第3特徴量の任意の組合せが用いられてもよい。図9は、実施の形態1における複数の特徴量の組合せの一例を示し、具体的には、図7の第2特徴量と図8の第3特徴量との組み合わせを示す。
異常判定部151は、このように抽出された特徴量を用いて、予め定められた判定ルールに基づいて複数のCANメッセージの異常レベルを判定する(S206)。例えば、各CANメッセージの異常レベルを判定し、複数のCANメッセージの中に黒のCANメッセージが1つでも含まれる場合に、異常判定部151は、それら複数のCANメッセージを黒と判定する。また例えば、複数のCANメッセージの中にグレイのCANメッセージが含まれ、黒のCANメッセージが含まれない場合に、異常判定部151は、それら複数のCANメッセージをグレイと判定する。また例えば、複数のCANメッセージのすべてが白と判定された場合に、異常判定部151は、それら複数のCANメッセージを白と判定する。
このとき、各CANメッセージの異常レベルの判定では、各CANメッセージから抽出された1つの特徴量が閾値と比較されてもよい。図10A及び図10Bは、実施の形態1における1つの特徴量を用いた異常レベル判定の一例を示す概念図である。
図10Aでは、特徴量1が閾値Nより小さい場合に、異常レベルが白と判定される。また、特徴量1が閾値Nより大きい場合に、異常レベルが黒と判定される。また、特徴量1が閾値Nと閾値Nとの間にある場合に、異常レベルがグレイと判定される。
図10Bでは、特徴量1が閾値N1aより小さい場合、又は、閾値N2bより大きい場合に、異常レベルが黒と判定される。特徴量1が閾値N1bと閾値N2aとの間にある場合に、異常レベルが白と判定される。その他の場合には、異常レベルがグレイと判定される。
また例えば、各CANメッセージの異常レベルの判定では、各CANメッセージから抽出された2つの特徴量のうちの一方を他方の関数と比較することにより、各CANメッセージの異常レベルを判定してもよい。図11A及び図11Bは、実施の形態1における2つの特徴量を用いた異常レベル判定の一例を示す概念図である。
図11Aでは、特徴量2(Y)が、特徴量1(X)の関数Y=aX+bよりも小さい場合に、異常レベルが白と判定される。特徴量2(Y)が、特徴量1(X)の関数Y=aX+bよりも大きい場合に、異常レベルが黒と判定される。その他の場合には、異常レベルがグレイと判定される。
図11Bでは、特徴量2(Y)が、特徴量1(X)の関数Y=aX+bよりも小さい場合、又は、特徴量2(Y)が、特徴量1(X)の関数Y=aX+bよりも小さい場合に、異常レベルが黒と判定される。また、特徴量2(Y)が、特徴量1(X)の関数YaX+bと関数YaX+bとの間にある場合に、異常レベルが白と判定される。その他の場合には、異常レベルがグレイと判定される。
なお、図10A〜図11Bは、各CANメッセージの判定ルールの例示であり、これに限定される必要はない。例えば、図10Aにおいて、白及び黒の判定が反転してもよい。つまり、特徴量1が閾値Nより小さい場合に、異常レベルが黒と判定され、特徴量1が閾値Nより大きい場合に、異常レベルが白と判定されてもよい。
図4のフローチャートの説明に戻る。複数のCANメッセージの異常レベルが白と判定された場合(S206の白)、通信制御部152は、複数のCANメッセージの特徴量(白)をサーバ30に送信する(S208)。そして、複数のCANメッセージのフルログは破棄される(S210)。つまり、フルログは、記憶部130にも一時記憶部140にも格納されない。
複数のCANメッセージの異常レベルがグレイと判定された場合(S206のグレイ)、通信制御部152は、複数のCANメッセージの特徴量(グレイ)をサーバ30に送信する(S212)。さらに、記憶制御部153は、複数のCANメッセージのフルログ(グレイ)を一時記憶部140に格納する(S214)。
複数のCANメッセージの異常レベルが黒と判定された場合(S206の黒)、通信制御部152は、複数のCANメッセージのフルログ(黒)をサーバ30に送信する(S216)。さらに、記憶制御部153は、複数のCANメッセージのフルログ(黒)を記憶部130に格納する(S218)。
図12は、実施の形態1に係る監視装置100の第2動作を示すフローチャートである。具体的には、図12は、図3のステップS108〜ステップS111の詳細を示す。
監視装置100は、サーバ30から判定結果を受信する(S220)。この判定結果は、監視装置100でグレイと判定された複数のCANメッセージがサーバ30で黒及び白のいずれであるか判定された結果である。
ここで、受信した判定結果が白である場合(S222の白)、記憶制御部153は、一時記憶部に格納されたフルログを削除する(S224)。一方、受信した判定結果が黒である場合(S222の黒)、通信制御部152は、一時記憶部140に格納されたフルログをサーバ30に送信する(S226)。さらに、通信制御部152は、一時記憶部140に格納されたフルログを記憶部130に移動する(S228)。
[サーバの動作]
次に、サーバ30の動作を図13及び図14を参照しながら具体的に説明する。図13は、実施の形態1に係るサーバ30の動作を示すフローチャートである。具体的には、図13は、図3のステップS112〜ステップS118の詳細を示す。
まず、サーバ30の通信部31は、監視装置100から、データを受信する(S302)。受信したデータが監視装置100において白と判定されたCANメッセージの特徴量である場合(S304の白)、モデル更新部333は、受信した特徴量(白)を用いて学習モデル322を更新する(S306)。つまり、モデル更新部333は、受信した特徴量(白)を用いて教師あり学習を行う。
受信したデータが監視装置100において黒と判定されたCANメッセージのフルログである場合(S304の黒)、制御部33は、フルログ(黒)を記憶部32に格納する(S308)。
受信したデータが監視装置100においてグレイと判定されたCANメッセージの特徴量である場合(S304のグレイ)、異常判定部331は、学習モデル322を用いて、受信した特徴量からCANメッセージの異常レベルを判定する(S310)。つまり、異常判定部331は、CANメッセージの異常レベルが黒及び白のいずれであるかを判定する。
図14は、実施の形態1における学習モデルを用いた異常レベル判定の一例を示す概念図である。図14では、2つの特徴量に対して白及び黒の領域が定義されており、グレイの領域は存在しない。
ここで、異常レベルが白と判定された場合(S310の白)、通信制御部332は、白を示す判定結果(白)を監視装置100に送信する(S312)。さらに、モデル更新部333は、特徴量(グレイ−>白)を用いて学習モデル322を更新する(S314)。
一方、異常レベルが黒と判定された場合(S310の黒)、通信制御部332は、黒を示す判定結果(黒)を監視装置100に送信する(S316)。その後、通信部31は、監視装置100からフルログ(グレイ−>黒)を受信し(S318)、制御部33は、受信したフルログ(グレイ−>黒)を記憶部32に格納する(S320)。
[効果等]
以上のように、本実施の形態に係る監視装置100によれば、車両20に搭載された監視装置100で、異常を示す黒、正常を示す白及び判定不能を示すグレイを含む複数の異常レベルの中からCANメッセージの異常レベルを判定することができる。したがって、監視装置100で確度の高い黒か白の判定ができないケースにおいては、必ずしも黒及び白のどちらかを判定する必要がないため、監視装置において間違った異常レベルが判定されることを削減することができ、異常レベルの判定精度の向上を図ることができる。また、判定されたCANメッセージの異常レベルに応じて、CANメッセージのフルログのサーバ30への送信方法、及び、CANメッセージのフルログの記憶方法のうちの少なくとも一方を変更することができるため、通信量及び/又は記憶デバイスの容量を削減することも可能となる。
また、本実施の形態に係る監視装置100によれば、様々な特徴量を異常レベルの判定に利用することができ、異常レベルの判定精度を向上させることができる。
また、本実施の形態に係る監視装置100によれば、CANメッセージの異常レベルがグレイと判定された場合に、CANメッセージの特徴量をサーバ30に送信することができる。その後、サーバ30からCANメッセージの異常レベルが黒であることを示す判定結果を受信したときに、CANメッセージのフルログをサーバ30に送信することができる。したがって、監視装置で判定不能なCANメッセージのフルログを、サーバ30での判定結果に基づいて必要に応じて送信することができ、通信量を削減することができる。
また、本実施の形態に係る監視装置100によれば、CANメッセージの異常レベルがグレイと判定された場合に、CANメッセージの特徴量をサーバ30に送信することができる。その後、サーバ30からCANメッセージの異常レベルが黒であることを示す判定結果を受信したときに、CANメッセージのフルログをサーバ30に送信することができる。したがって、監視装置100で判定不能なCANメッセージのフルログを、サーバ30での判定結果に基づいて必要に応じて送信することができ、通信量を削減することができる。
また、本実施の形態に係る監視装置100によれば、CANメッセージの異常レベルがグレイと判定された場合に、CANメッセージのフルログを一時記憶部140に一時的に格納し、サーバ30からCANメッセージの異常レベルが黒であることを示す判定結果を受信したときに、一時記憶部140に格納されたCANメッセージのフルログを記憶部130に移動することができる。したがって、監視装置100で判定不能なCANメッセージのフルログを、サーバ30での判定結果に基づいて必要に応じて記憶部130に格納することができ、記憶デバイスの容量を削減することができる。
また、本実施の形態に係る監視システム10によれば、サーバ30では、監視装置100で異常レベルがグレイと判定されたCANメッセージの異常レベルが黒及び白のいずれであるかを判定すればよいため、サーバ30での異常レベル判定の負荷を低減することができる。
また、本実施の形態に係る監視システム10によれば、サーバ30では、学習モデル322を用いてCANメッセージの異常レベルを判定することができ、より高精度に異常レベルを判定することができる。
また、本実施の形態に係る監視システム10によれば、サーバ30では、白と判定されたCANメッセージの特徴量を用いて学習モデル322を更新することができる。したがって、より高い判定精度を有する学習モデル322を構築することができ、環境の変化にも柔軟に対応することができる。
[変形例]
以下に、上記実施の形態1の変形例について説明する。
上記実施の形態1では、監視装置100の異常レベル判定で用いる特徴量と、サーバ30の異常レベル判定で用いる特徴量とが一致していたが、監視装置100及びサーバ30で互いに異なる特徴量が用いられてもよい。この場合、監視装置100の通信制御部332は、CANメッセージがグレイと判定された場合に、CANメッセージの特徴量に加えて、各種センサ(例えばGPS(Global Positioning System)センサ、車載カメラ等)の出力値をサーバ30に送信してもよい。さらに、サーバ30は、各種センサの出力値から特徴量を抽出してもよい。
また、上記実施の形態1では、CANメッセージがグレイと判定された場合に、フルログが送信されずに特徴量が送信されていたが、特徴量及びフルログの両方もしくはフルログのみを送信してもよい。フルログのみを送信する場合、サーバ30はフルログから異常レベル判定で用いる特徴量の抽出を行ってもよい。監視装置100の異常レベル判定の精度が高ければ、グレイの判定結果は頻繁には発生しない。したがって、このような場合には、特徴量及びフルログの両方もしくはフルログのみが送信されても、通信量に与える悪影響は小さい。
また、上記実施の形態1では、CANメッセージが黒と判定された場合に、フルログが送信されていたが、単に黒の判定結果のみがサーバ30に通知されてもよい。この場合、サーバ30からの要求に応じて監視装置100からサーバ30にフルログが送信されてもよい。
また、上記実施の形態1では、一時記憶部140に格納されたフルログは、サーバ30から判定結果を受信した場合に、一時記憶部140から削除されていたが、これに限られない。例えば、他の所定の条件を満たす場合に、一時記憶部140からフルログが削除されてもよい。例えば、一時記憶部140にフルログが格納されてからの経過時間、ユーザによる明示的な削除指示、あるいは一時記憶部140の空き容量等に基づいて、一時記憶部140からフルログが削除されてもよい。
また、上記実施の形態1では、記憶部130に格納されたフルログの削除については特に説明されていなかったが、所定の条件を満たす場合に、記憶部130からフルログが削除されてもよい。例えば、サーバ30から削除指示を受信した場合に、記憶部130からフルログが削除されてもよい。この場合、サーバ30は、記憶部32にフルログを格納した後に削除指示を監視装置100に送信してもよい。これにより、サーバ30及び監視装置100の両方でフルログを記憶するという資源の無駄使いを減らすことができる。あるいは、記憶部130にフルログが格納されてからの経過時間、ユーザによる明示的な削除指示、あるいは記憶部130の空き容量等に基づいて、一記憶部130からフルログが削除されてもよい。
また、上記実施の形態1では、複数のCANメッセージが蓄積されてから異常レベルが判定されていたが、1つのCANメッセージが取得されるたびに当該CANメッセージの異常レベルが判定されてもよい。また、異常レベル判定の対象となるCANメッセージの量は特に限定される必要はなく、一定の時間サイクルで蓄積されたCANメッセージの異常レベルが判定されてもよい。
また、上記実施の形態1では、異常レベル判定では、1種類又は2種類の特徴量が用いられる例を説明したが、3種類以上の特徴量が用いられてもよい。この場合、3次元以上の多次元で異常レベルが判定される。
また、上記実施の形態1では、特定の1つのCAN IDを有するCANメッセージから特徴量が抽出されていたが、これに限られない。複数のCAN IDに対して、CAN ID毎に上記実施の形態1と同様に特徴量が抽出されてもよい。
また、上記実施の形態1では、特徴量として、第1〜第3特徴量を説明したが、特徴量はこれに限られない。例えば、上記実施の形態1における第1〜第3特徴量の各々の統計量(例えば、平均値、分散値等)が特徴量として利用されてもよい。
(実施の形態2)
次に、実施の形態2について説明する。本実施の形態では、異常判定の結果毎に、蓄積された通信データのログのデータ量に応じて当該ログが監視装置からサーバに送信される点が、上記実施の形態1と異なる。以下、本実施の形態に係る監視システムについて、上記実施の形態1と異なる点を中心に説明する。
[監視システムの構成]
実施の形態2に係る監視システムの構成について、図15を参照しながら具体的に説明する。図15は、実施の形態2に係る監視システム10Aの機能構成を示すブロック図である。
本実施の形態に係る監視システム10Aは、車両20Aに搭載された監視装置100Aと、監視装置100Aと通信可能なサーバ30Aと、を備える。
[監視装置の構成]
監視装置100Aは、実施の形態1と同様に、車両20Aに搭載されており、車載ネットワークを監視する。監視装置100Aは、第1通信部110と、第2通信部120と、記憶部130Aと、制御部150Aとを備える。以下、監視装置100Aの各構成要素について実施の形態1と異なる点を中心に説明する。
[記憶部]
記憶部130Aは、第1記憶部の一例であり、監視データ131A、判定ルール132及び重みデータ133Aを記憶する。記憶部130Aは、例えば1以上の半導体メモリ及び/又は1以上のハードディスクドライブを用いて実装される。
監視データ131Aは、異常レベルで分類された、車載ネットワーク上のCANメッセージのログである。図16は、実施の形態2における監視データ131Aの一例を示す。具体的には、図16の(a)、(b)及び(c)には、異常レベルが白、黒及びグレイと判定されたCANメッセージの監視データがそれぞれ表されている。
図16では、監視データ131Aは、タイムスタンプ(Timestamp)、CAN ID、及び実施の形態1におけるペイロードに相当するデータ(Data)に加えて、データ長コード(DLC)、バス(Bus)、レベル(Level)、エラーコード(ErrorCode)、車両情報(CarInfo)を含む。
ここで、データ長コードは、データのバイト数を示す。バスは、複数のCANバス22を個別に識別するための情報である。レベルは、異常レベルを示す。レベルでは、「W」は白を示し、「B」は黒を示し、「G」はグレイを示す。エラーコードは、エラーの内容を特定するための情報である。車両情報は、車両の種類を特定するための情報である。
重みデータ133Aは、異常レベルの判定で用いる重みを示すデータである。図17A及び図17Bは、実施の形態2における重みデータ133Aの一例を示す。具体的には、図17Aは、複数の異常レベルと複数の第1重み値(w1)とが対応付けられた第1重みテーブルである。第1重み値は、監視の重要度を表し、値が大きいほど重要度が高い。また、図17Bは、複数の運転状態と複数の第2重み値(w2)とが対応付けられた第2重みテーブルである。第2重み値は、通信の重要度を表し、値が大きいほど重要度が高い。
[制御部]
制御部150Aは、第1制御部の一例であり、第1通信部110、第2通信部120及び記憶部130Aを制御する。制御部150Aは、CANメッセージの異常レベルに応じて、監視データのサーバ30Aへの送信方法を変更する。本実施の形態では、監視データの送信方法は、異常レベル毎に送信タイミングを変更することにより変更される。
図15に示すように、制御部150Aは、異常判定部151と、通信制御部152Aと、運転状態推定部154Aと、を備える。制御部150Aは、1以上の汎用プロセッサ及びメモリを用いてソフトウェアで実装されてもよいし、1以上の専用集積回路を用いてハードウェアで実装されてもよい。
通信制御部152Aは、第1通信制御部の一例であり、第2通信部120を制御する。具体的には、通信制御部152Aは、記憶部130Aに格納された監視データ131Aのデータ量を異常レベル毎に取得する。データ量は、例えば、図16のテーブルにおけるレコード数で定義される。そして、通信制御部152Aは、異常レベル毎に、取得されたデータ量に応じて監視データをサーバ30Aに送信する。
より具体的には、通信制御部152Aは、まず、異常レベル毎に、異常レベルに対応する第1重み値及び運転状態に対応する第2重み値を用いてデータ量を重み付けする。重み付けされたデータ量Dwは、以下の式(1)で表される。
Dw=w1×w2×D (1)
ここで、w1は、第1重み値を表し、w2は、第2重み値を表す。Dは、異常レベル毎の監視データのデータ量を表し、まだ重み付けされていないデータ量を表す。
そして、通信制御部152Aは、異常レベル毎に、重み付けされたデータ量が予め定められた閾値よりも大きい場合に監視データをサーバ30Aに送信する。本実施の形態では、予め定められた閾値としては、複数の異常レベルで同一の閾値が用いられる。つまり、予め定められた閾値は、複数の異常レベルで共通である。
例えば、白、黒及びグレイの監視データのデータ量がそれぞれ1000、20及び6であり、車両20Aが自動運転レベル3で運転中であるとする。この場合、図17A及び図17Bの第1重み値及び第2重み値が用いられれば、重み付けされたデータ量は、それぞれ、40(=0.01×4×1000)、80(=1×4×20)及び120(=5×4×6)となる。ここで、閾値として100が用いられれば、重み付けされたデータ量が120のグレイの監視データのみがサーバ30Aに送信される。
運転状態推定部154Aは、車両20Aの運転状態を推定する。例えば、運転状態推定部154Aは、車載ネットワーク上のCANメッセージに基づいて運転状態を推定する。具体的には、運転状態推定部154Aは、例えば、特定のCAN IDを有するCANメッセージのデータに基づいて運転状態を推定する。
運転状態とは、運転中の車両の状態を意味する。本実施の形態では、運転状態は、主として自動運転レベルで定義される。例えば、図17Bでは、運転状態は、手動運転中(つまり、自動運転レベル0で運転中)、自動運転L2以下で作動中(つまり、自動運転レベル1又は2で運転中)、自動運転L3以上で作動中(つまり、自動運転レベル3、4又は5で運転中)及び緊急/故障で分類される。
[サーバの構成]
次に、サーバ30Aの構成について説明する。サーバ30Aは、車両20A外に設置され、車載ネットワークとは異なるネットワークを介して監視装置100Aと通信する。図15に示すように、サーバ30Aは、通信部31と、記憶部32Aと、制御部33Aと、を備える。
記憶部32Aは、監視装置100Aから受信した監視データ321Aを記憶する。記憶部32Aは、例えば1以上の半導体メモリ及び/又は1以上のハードディスクドライブを用いて実装される。
制御部33Aは、通信部31及び記憶部32Aを制御する。制御部33Aは、1以上の汎用プロセッサ及びメモリを用いてソフトウェアで実装されてもよいし、1以上の専用集積回路を用いてハードウェアで実装されてもよい。制御部33Aは、監視装置100Aから受信した監視データ321Aを記憶部32Aに格納する。
[監視装置の動作]
次に、以上のように構成された監視装置100Aの動作について、図18及び図19を参照しながら具体的に説明する。図18は、実施の形態2に係る監視装置100Aの第1動作を示すフローチャートである。図19は、実施の形態2に係る監視装置100Aの第2動作を示すフローチャートである。
図18に示すように、まず、第1通信部110は、車載ネットワーク上のCANメッセージを取得する(S402)。異常判定部151は、黒、白及びグレイを含む複数の異常レベルの中からCANメッセージの異常レベルを判定する(S404)。
制御部150Aは、異常判定部151による判定結果でCANメッセージを分類して監視データ131Aとして記憶部130Aに格納する(S406)。この第1動作は車載ネットワーク上にCANメッセージの通信トラフィックが発生する毎に実行される。これにより、例えば図16に示す監視データ131Aが記憶部130Aに格納される。
このように監視データ131Aが記憶部130Aに記憶された状態で、図19に示すように、運転状態推定部154Aは、車両20Aの運転状態を推定する(S408)。ここで、通信制御部152Aは、異常レベル毎に処理を行うために、未選択の異常レベルを選択する(S410)。通信制御部152Aは、選択された異常レベルの監視データ131Aのデータ量を取得する(S412)。
通信制御部152Aは、推定された運転状態及び選択された異常レベルに基づいて、取得されたデータ量を重み付けする(S414)。具体的には、通信制御部152Aは、重みデータ133Aを参照して、選択された異常レベルに対応する第1重み値及び推定された運転状態に対応する第2重み値を取得する。そして、通信制御部152Aは、取得した第1重み値及び第2重み値を取得されたデータ量に適用することにより、重み付けされたデータ量を算出する。
通信制御部152Aは、重み付けされたデータ量を予め定められた閾値と比較する(S416)。ここで、重み付けされたデータ量が予め定められた閾値より大きい場合(S416のYes)、通信制御部152Aは、選択された異常レベルの監視データ131Aをサーバ30Aに送信する(S418)。一方、重み付けされたデータ量が予め定められた閾値以下である場合(S416のNo)、通信制御部152Aは、選択された異常レベルの監視データ131Aの送信をスキップする。
通信制御部152Aは、複数の異常レベルの中で未選択の異常レベルがあるか否かを判定する(S420)。ここで、未選択の異常レベルがある場合(S420のYes)、異常レベルの選択処理(S410)に戻る。一方、すべての異常レベルがすでに選択された場合(S420のNo)、処理を終了する。
なお、監視装置100Aの第2動作は繰り返し実行する。すなわち、第2動作の処理が終了すると、全ての異常レベルを未選択の状態にリセットして次の第2動作の処理を開始するという動作を繰り返す。このとき、第2動作の処理が終了後直ちに次の第2動作の処理を開始してもよいし、終了後一定時間経過後に開始してもよい。あるいは、一定量の監視データが記憶部130Aに新たに格納される毎に開始してもよい。このとき、特定の監視レベルの監視データだけに着目して、着目する監視レベルの監視データが所定量新たに記憶部130Aに格納される毎に開始するようにしてもよい。また、車両の運転状態が変化するたびに開始してもよい。さらに、上記の開始条件から複数を選択して設定し、設定した開始条件のいずれか1つが満たされると開始するようにしてもよい。
[効果等]
以上のように、本実施の形態に係る監視装置100Aによれば、異常レベル毎に、データ量に応じて監視データをサーバに送信することができる。したがって、監視データの送信頻度を制御することができ、通信量を削減することができる。
また、本実施の形態に係る監視装置100Aによれば、異常レベルに対応する第1重み値を用いてデータ量を重み付けすることができる。したがって、異常レベルに応じて監視データの送信頻度を制御することができ、監視の重要度に応じて監視データを送信することが可能となる。
また、本実施の形態に係る監視装置100Aによれば、第1重み値に加えて、推定された運転状態に対応する第2重み値をデータ量の重み付けに用いることができる。したがって、車両の運転状態に応じて監視データの送信頻度を制御することができ、監視の重要度に応じて監視データを送信することが可能となる。
[変形例]
以下に、上記実施の形態2の変形例について説明する。
上記実施の形態2では、データ量の重み付けに第1重み値及び第2重み値の両方が用いられていたが、これに限られない。例えば、第1重み値及び第2重み値の一方のみを用いてデータ量が重み付けされてもよい。
また、上記実施の形態2の重みデータ133Aでは、異常レベルに対応する第1重み値及び運転状態に対応する第2重み値を別々に管理されていたが、第1重み値及び第2重み値を統合して管理してもよい。この場合、例えば図17A及び図17Bの重みデータ133Aの代わりに、図20の重みデータ133Bが記憶部130Aに記憶されてもよい。
また、上記実施の形態2では、重み付けされたデータ量が共通の閾値と比較されていたが、閾値が重み付けされてもよい。この場合、図17A及び図17Bの重みデータ133Aの代わりに、図21の閾値データ133Cが記憶部130Aに記憶されてもよい。
また、上記実施の形態2では、監視装置100Aの記憶部130Aに格納された監視データ131Aの記憶方法について特に説明はしていなかったが、異常レベルに応じて記憶方法が変更されてもよい。例えば、監視データ131Aは、まず、記憶部130Aの揮発領域に格納され、揮発領域での記憶時間又はデータ量に応じて記憶部130Aの不揮発領域に移動されてもよい。記憶部130Aの不揮発領域に格納された監視データ131Aは、通信制御部332によって異常レベル毎に送信されるが、所定の条件が満たされれば削除されずにそのまま不揮発領域に格納されてもよい。このとき、監視データ131Aは、データ圧縮されてもよいし、暗号化されてもよい。例えば、自動運転レベル3で運転中のグレイ又は黒の監視データは、サーバ30に送信された後も特定の期間、不揮発領域に保持されてもよい。これにより、サーバ30からの監視データの再送信要求に応じることもでき、さらにフォレンジックも可能となる。
また、上記実施の形態2では、重みデータ133Aは、特に更新されなかったが、更新されてもよい。例えば、監視装置100Aは、新たな重みデータをサーバ30Aから受信し、受信した新たな重みデータで記憶部130A内の重みデータ133Aを更新してもよい。
(他の実施の形態)
以上、本開示の1つ又は複数の態様に係る監視システム及び監視装置について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の1つ又は複数の態様の範囲内に含まれてもよい。
例えば、上記各実施の形態において、実施の形態1におけるログの送信において、実施の形態2のデータ量に応じた送信方法を適用してもよい。
なお、上記各実施の形態で示したデータの形式及び内容は、例示であり、これに限定されない。
また、上記各実施の形態における監視装置が備える制御部の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。
システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM(Read Only Memory)、RAM(Random Access Memory)などを含んで構成されるコンピュータシステムである。前記ROMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。
なお、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)、あるいはLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
また、本開示の一態様は、このような車載ネットワークの監視装置だけではなく、監視装置に含まれる特徴的な構成部をステップとする監視方法であってもよい。また、本開示の一態様は、監視方法に含まれる特徴的な各ステップをコンピュータに実行させるコンピュータプログラムであってもよい。また、本開示の一態様は、そのようなコンピュータプログラムが記録された、コンピュータ読み取り可能な非一時的な記録媒体であってもよい。
なお、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクドライブまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記各実施の形態の監視装置などを実現するソフトウェアは、次のようなプログラムである。
すなわち、このプログラムは、コンピュータに、車載ネットワークを監視する監視方法であって、前記車載ネットワーク上の通信データを取得し、予め定められた判定ルールに基づいて、異常、正常及び判定不能を含む複数の異常レベルの中から前記通信データの異常レベルを判定し、判定された前記通信データの異常レベルに応じて、前記通信データのログの前記サーバへの送信方法、及び、前記通信データのログの記憶方法のうちの少なくとも一方を変更する、監視方法を実行させる。
車載ネットワークを監視する監視装置として利用することができる。
10、10A 監視システム
20、20A 車両
30、30A サーバ
31 通信部
32、32A 記憶部
33、33A、150、150A 制御部
100、100A 監視装置
110 第1通信部
120 第2通信部
130、130A 記憶部
131、141、321 フルログ
131A 監視データ
132 判定ルール
133A、133B 重みデータ
133C 閾値データ
140 一時記憶部
151、331 異常判定部
152、152A、332 通信制御部
153 記憶制御部
154A 運転状態推定部
321A 監視データ
322 学習モデル
333 モデル更新部

Claims (14)

  1. 車両に搭載され、車載ネットワークを監視する監視装置であって、
    前記車載ネットワーク上の通信データを取得する第1通信部と、
    前記車載ネットワークとは異なるネットワークを介してサーバと通信する第2通信部と、
    前記通信データのログを記憶するための第1記憶部と、
    前記第1通信部、前記第2通信部及び前記第1記憶部を制御する第1制御部と、を備え、
    前記第1制御部は、予め定められた判定ルールに基づいて、異常、正常及び判定不能を含む複数の異常レベルの中から前記通信データの異常レベルを判定する第1判定部を備え、
    前記第1制御部は、判定された前記通信データの異常レベルに応じて、前記通信データのログの前記サーバへの送信方法、及び、前記通信データのログの記憶方法のうちの少なくとも一方を変更
    前記第1制御部は、さらに、前記第2通信部を制御する第1通信制御部を備え、
    前記第1通信制御部は、
    前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記サーバに送信し、
    前記通信データの異常レベルが正常と判定された場合に、前記通信データのログを前記サーバに送信せず、
    前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データの特徴量を前記サーバに送信し、(ii)前記サーバから前記通信データの異常レベルが異常であることを示す判定結果を受信したときに、前記通信データのログを前記サーバに送信する、
    監視装置。
  2. 前記第1判定部は、前記通信データから特徴量を抽出し、抽出された前記特徴量を用いて前記通信データの異常レベルを判定する、
    請求項1に記載の監視装置。
  3. 前記第1通信部は、前記通信データを含む複数の通信データを取得し、
    前記第1判定部は、前記複数の通信データのうち予め定められた識別子を有する1以上の通信データに含まれる値を、前記特徴量に含まれる第1特徴量として抽出する、
    請求項2に記載の監視装置。
  4. 前記第1通信部は、前記通信データを含む複数の通信データを取得し、
    前記第1判定部は、前記複数の通信データのうち予め定められた識別子を有する2以上の通信データに含まれる値の変化量を、前記特徴量に含まれる第2特徴量として抽出する、
    請求項2又は3に記載の監視装置。
  5. 前記第1通信部は、前記通信データを含む複数の通信データを取得し、
    前記第1判定部は、前記複数の通信データのうち予め定められた識別子を有する2以上の通信データの送信時刻の差分時間を、前記特徴量に含まれる第3特徴量として抽出する、
    請求項2〜4のいずれか1項に記載の監視装置。
  6. 前記監視装置は、さらに、前記通信データのログを一時的に記憶するための第2記憶部を備え、
    前記第1制御部は、さらに、前記第1記憶部及び前記第2記憶部を制御する記憶制御部を備え、
    前記記憶制御部は、
    前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記第1記憶部に格納し、
    前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データのログを前記第2記憶部に格納し、(ii-1)前記サーバから前記通信データの異常レベルが異常であることを示す判定結果を受信したときに、前記第2記憶部に格納された前記通信データのログを前記第1記憶部に移動し、(ii-2)前記サーバから前記通信データの異常レベルが正常であることを示す判定結果を受信したときに、前記通信データのログを削除する、
    請求項1〜のいずれか1項に記載の監視装置。
  7. 前記第1通信部は、前記通信データを含む複数の通信データを取得し、
    前記第1記憶部は、前記複数の通信データを、判定された異常レベルで分類して監視データとして記憶し
    前記第1通信制御部は、
    前記第1記憶部に格納された前記監視データのデータ量を異常レベル毎に取得し、
    前記異常レベル毎に、前記データ量に応じて前記監視データを前記サーバに送信する、
    請求項1〜のいずれか1項に記載の監視装置。
  8. 前記第1通信制御部は、
    前記異常レベル毎に、当該異常レベルに対応する第1重み値を用いて前記データ量を重み付けし、
    前記異常レベル毎に、重み付けされた前記データ量が予め定められた閾値よりも大きい場合に、前記監視データを前記サーバに送信する、
    請求項に記載の監視装置。
  9. 前記第1制御部は、さらに、前記車両の運転状態を推定する運転状態推定部を備え、
    前記第1通信制御部は、前記データ量の重み付けにおいて、前記第1重み値に加えて、推定された前記運転状態に対応する第2重み値を用いる、
    請求項に記載の監視装置。
  10. 車載ネットワークを監視する監視システムであって、
    請求項1〜のいずれか1項に記載の監視装置と、
    前記監視装置と通信可能なサーバと、を備える、
    監視システム。
  11. 前記第1制御部は、さらに、前記第2通信部を制御する第1通信制御部を備え、
    前記第1通信制御部は、
    前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記サーバに送信し、
    前記通信データの異常レベルが正常と判定された場合に、前記通信データのログを前記サーバに送信せず、
    前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データの特徴量を前記サーバに送信し、(ii)前記サーバから前記通信データの異常レベルが異常であることを示す判定結果を受信したときに、前記通信データのログを前記サーバに送信し、
    前記サーバは、
    前記ネットワークを介して前記監視装置と通信する第3通信部と、
    前記監視装置から受信した前記通信データのログを記憶する第3記憶部と、
    前記第3通信部を制御する第2制御部と、を備え、
    前記第2制御部は、
    異常レベルが判定不能と判定された通信データの特徴量を前記監視装置から前記第3通信部が受信した場合に、受信された前記通信データの特徴量を用いて、前記通信データの異常レベルが異常及び正常のいずれであるかを判定する第2判定部と、
    前記第2判定部による判定結果を前記監視装置に送信し、前記通信データの異常レベルが異常と判定された場合に前記監視装置から前記通信データのログを受信する第2通信制御部と、を備え、
    前記第3記憶部は、さらに、通信データの異常レベルを判定するための学習モデルを記憶しており、
    前記第2判定部は、前記学習モデルを用いて、前記通信データの異常レベルが異常及び正常のいずれであるかを判定する、
    請求項10に記載の監視システム。
  12. 前記監視装置の前記第1通信制御部は、前記通信データの異常レベルが正常と判定された場合に、前記通信データの特徴量を前記サーバに送信し、
    前記サーバの前記第2制御部は、異常レベルが正常と判定された前記通信データの特徴量を前記監視装置から前記第3通信部が受信した場合に、当該特徴量を正常のラベルが付された訓練データとして用いて前記学習モデルを更新するモデル更新部を備える、
    請求項11に記載の監視システム。
  13. 車載ネットワークを監視する監視方法であって、
    前記車載ネットワーク上の通信データを取得し、
    予め定められた判定ルールに基づいて、異常、正常及び判定不能を含む複数の異常レベルの中から前記通信データの異常レベルを判定し、
    判定された前記通信データの異常レベルに応じて、前記通信データのログのサーバへの送信方法、及び、前記通信データのログの記憶方法のうちの少なくとも一方を変更
    前記通信データの異常レベルが異常と判定された場合に、前記通信データのログを前記サーバに送信し、
    前記通信データの異常レベルが正常と判定された場合に、前記通信データのログを前記サーバに送信せず、
    前記通信データの異常レベルが判定不能と判定された場合に、(i)前記通信データの特徴量を前記サーバに送信し、(ii)前記サーバから前記通信データの異常レベルが異常であることを示す判定結果を受信したときに、前記通信データのログを前記サーバに送信する、
    監視方法。
  14. 請求項13に記載の監視方法をコンピュータに実行させるためのプログラム。
JP2018003762A 2018-01-12 2018-01-12 監視装置、監視システム及び監視方法 Active JP6964274B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018003762A JP6964274B2 (ja) 2018-01-12 2018-01-12 監視装置、監視システム及び監視方法
US16/244,453 US20190217869A1 (en) 2018-01-12 2019-01-10 Control apparatus, control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018003762A JP6964274B2 (ja) 2018-01-12 2018-01-12 監視装置、監視システム及び監視方法

Publications (2)

Publication Number Publication Date
JP2019125867A JP2019125867A (ja) 2019-07-25
JP6964274B2 true JP6964274B2 (ja) 2021-11-10

Family

ID=67399123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018003762A Active JP6964274B2 (ja) 2018-01-12 2018-01-12 監視装置、監視システム及び監視方法

Country Status (1)

Country Link
JP (1) JP6964274B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7383995B2 (ja) * 2019-11-19 2023-11-21 株式会社デンソー 通信システム及び通信装置
WO2021144858A1 (ja) * 2020-01-14 2021-07-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 異常検知システム、異常検知装置、及び異常検知方法
WO2021144860A1 (ja) 2020-01-14 2021-07-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車両ログ保存装置、車両ログ送信装置、車両ログ収集システムおよび車両ログ保存方法
JP7296555B2 (ja) * 2020-10-22 2023-06-23 パナソニックIpマネジメント株式会社 異常検知装置、異常検知方法及びプログラム
EP4228221A1 (en) * 2020-11-19 2023-08-16 Nippon Telegraph And Telephone Corporation Estimation device, estimation method, and estimation program
JP7309101B2 (ja) * 2021-06-16 2023-07-14 三菱電機株式会社 攻撃検知装置、敵対的サンプルパッチ検知システム、攻撃検知方法、及び、攻撃検知プログラム
CN113212460B (zh) * 2021-06-17 2022-08-09 广州文远知行科技有限公司 一种车辆控制方法、装置、设备和存储介质
JP2023112819A (ja) * 2022-02-02 2023-08-15 株式会社オートネットワーク技術研究所 監視装置、車両監視システムおよび車両監視方法
WO2023162043A1 (ja) * 2022-02-22 2023-08-31 日本電信電話株式会社 トラヒックデータ収集システム、トラヒックデータ収集方法及びトラヒックデータ収集プログラム
JP2023127404A (ja) * 2022-03-01 2023-09-13 日立Astemo株式会社 電子制御システム
WO2023210314A1 (ja) * 2022-04-27 2023-11-02 株式会社オートネットワーク技術研究所 車載装置、プログラム及び情報処理方法
CN115174554B (zh) * 2022-06-24 2023-07-11 北京经纬恒润科技股份有限公司 控制器的日志上传方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6649215B2 (ja) * 2015-12-14 2020-02-19 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America セキュリティ装置、ネットワークシステム及び攻撃検知方法
JP6423402B2 (ja) * 2015-12-16 2018-11-14 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America セキュリティ処理方法及びサーバ

Also Published As

Publication number Publication date
JP2019125867A (ja) 2019-07-25

Similar Documents

Publication Publication Date Title
JP6964274B2 (ja) 監視装置、監視システム及び監視方法
US11256500B2 (en) Assembling data deltas in controllers and managing interdependencies between software versions in controllers using tool chain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210826

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210914

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211005

R151 Written notification of patent or utility model registration

Ref document number: 6964274

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

SZ03 Written request for cancellation of trust registration

Free format text: JAPANESE INTERMEDIATE CODE: R313Z03