(57)【要約】【課題】車載ネットワークシステムにおいて複数の電子制御ユニット（ＥＣＵ）が通信に用いるネットワークに接続され、車載ネットワークへの悪影響を抑制して、受信したフレームが適正か否かについてある程度時間を要する判定手法を用い得るゲートウェイ装置を提供する。【解決手段】ゲートウェイ３００ａは、第１フレームを受信する受信部と、受信部により、例えばＥＣＵ１００ａが送信した第１フレームが、受信された際に、第１フレームの内容に基づく情報を含む第２フレームに、第２フレームの受信後の処理の制限に関する第１制御情報を含めて、第２フレームをネットワークに送信する送信部とを備える。【選択図】図１
2020005322.tif 000002
【特許請求の範囲】
【請求項１】
車載ネットワークシステムにおいて複数の電子制御ユニットが通信に用いるネットワークに接続されるゲートウェイ装置であって、
第１フレームを受信する受信部と、
前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する送信部とを備える
ゲートウェイ装置。
【請求項２】
前記送信部は、
前記受信部により前記第１フレームが受信された際に、所定条件が満たされた場合に前記第２フレームに前記第１制御情報を含めて前記送信を行い、前記所定条件が満たされなかった場合には前記第１制御情報を含めずに前記第２フレームを前記ネットワークに送信し、
前記第１制御情報を含めた前記第２フレームを送信した後には、当該第２フレームの処理方法に関する第２制御情報を含む第３フレームを、前記ネットワークに送信する
請求項１記載のゲートウェイ装置。
【請求項３】
前記所定条件は、前記第２フレームの送信後に前記第１フレームが適正か否かについて決定される状況で満たされる条件であり、
前記送信部は、前記第３フレームに、前記第１フレームに係る前記決定の結果に応じた前記第２制御情報を含ませる
請求項２記載のゲートウェイ装置。
【請求項４】
前記ゲートウェイ装置は、
前記決定を行う不正判定処理部を備える
請求項３記載のゲートウェイ装置。
【請求項５】
前記受信部は、更に前記複数の電子制御ユニットのうちの１つにより行われた前記決定の結果を受信する
請求項３記載のゲートウェイ装置。
【請求項６】
前記ゲートウェイ装置は、自装置を搭載する車両の外部の装置に対して前記決定の要求を送信した後に前記決定の結果を受信する外部通信部を備える
請求項３記載のゲートウェイ装置。
【請求項７】
前記第２制御情報は、前記第２フレームの処理の実行を開始すべき旨を示す
請求項２〜６のいずれか一項に記載のゲートウェイ装置。
【請求項８】
前記第２制御情報は、前記第２フレームを破棄すべき旨を示す
請求項２〜６のいずれか一項に記載のゲートウェイ装置。
【請求項９】
前記第１制御情報は、当該第１制御情報を含む前記第２フレームを受信した電子制御ユニットに、当該第２フレームの処理方法に関する情報を含むフレームを受信するまで、当該第２フレームに対応した処理の実行開始を遅延させるべき旨を示す
請求項１〜８のいずれか一項に記載のゲートウェイ装置。
【請求項１０】
前記第１制御情報は、当該第１制御情報を含む前記第２フレームを受信した電子制御ユニットに、一定条件が満たされるまで当該第２フレームに対応した処理の実行を抑止させるべき旨を示す
請求項１〜８のいずれか一項に記載のゲートウェイ装置。
【請求項１１】
前記複数の電子制御ユニットは、Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＣＡＮ）プロトコルに従って前記ネットワークを介して通信を行う
請求項１〜１０のいずれか一項に記載のゲートウェイ装置。
【請求項１２】
前記送信部は、前記第２フレームのデータフィールドの全部又は一部で前記第１制御情報を表す
請求項１１記載のゲートウェイ装置。
【請求項１３】
前記送信部は、前記第２フレームの拡張ＩＤフィールドで前記第１制御情報を表す
請求項１１記載のゲートウェイ装置。
【請求項１４】
前記送信部は、前記第２フレームのＤＬＣフィールドで前記第１制御情報を表す
請求項１１記載のゲートウェイ装置。
【請求項１５】
前記送信部は、前記第２フレームのデータフィールドの少なくとも一部の内容を反映したデータを格納する、当該第２フレームの一領域で、前記第１制御情報を表す
請求項１１記載のゲートウェイ装置。
【請求項１６】
前記送信部は、前記第２フレームのＣＲＣフィールド内に格納するＣＲＣに前記第１制御情報を重畳して、前記第２フレームの前記送信を行う
請求項１５記載のゲートウェイ装置。
【請求項１７】
前記送信部は、前記第２フレームの前記一領域に格納するチェックサムに前記第１制御情報を重畳して、前記第２フレームの前記送信を行う
請求項１５記載のゲートウェイ装置。
【請求項１８】
前記送信部は、前記第２フレームの前記一領域に格納するメッセージ認証コードに前記第１制御情報を重畳して、前記第２フレームの前記送信を行う
請求項１５記載のゲートウェイ装置。
【請求項１９】
１以上のネットワークを介して通信する複数の電子制御ユニットと前記ネットワークに接続されたゲートウェイ装置とを備える車載ネットワークシステムであって、
前記ゲートウェイ装置は、第１フレームを受信する第１の受信部と、
前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する第１の送信部とを備える
車載ネットワークシステム。
【請求項２０】
前記ゲートウェイ装置の前記第１の送信部は、
前記第１の受信部により前記第１フレームが受信された際に、所定条件が満たされた場合に前記第２フレームに前記第１制御情報を含めて前記送信を行い、前記所定条件が満たされなかった場合には前記第１制御情報を含めずに前記第２フレームを前記ネットワークに送信し、
前記第１制御情報を含めた前記第２フレームを送信した後には、当該第２フレームの処理方法に関する第２制御情報を含む第３フレームを、前記ネットワークに送信し、
前記複数の電子制御ユニットのうちの第１の電子制御ユニットは、第１フレームを受信する第２の受信部と、
前記第１フレームが適正か否かを決定する判定部と、
前記決定の結果を送信する第２の送信部とを備え、
前記所定条件は、前記ゲートウェイ装置が前記第２フレームの送信後に、前記第１の電子制御ユニットにおいて前記第１フレームが適正か否かについて決定される状況で満たされる条件であり、
前記第１の受信部は、前記判定の結果を受信すると、
前記第１の送信部は、前記第３フレームに、前記第１フレームに係る前記決定の結果に応じた前記第２制御情報を含ませる
請求項１９記載の車載ネットワークシステム。
【請求項２１】
１以上のネットワークを介して通信する複数の電子制御ユニットを備える車載ネットワークシステムにおいて用いられる通信方法であって、
第１フレームを受信する受信ステップと、
前記受信ステップで前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する送信ステップとを含む
通信方法。
【請求項２２】
車両に搭載された複数の電子制御ユニットが通信に用いる車載ネットワークに接続されるゲートウェイ装置と通信する通信部と、
前記車両における前記車載ネットワークで送信されるフレームの種類ごとに、所定条件が満たされた回数を保持する保持部と、
不正判定部とを備え、
前記通信部は、前記ゲートウェイ装置から判定対象のフレームの判定依頼を受信すると、
前記不正判定部は、前記保持部に保持されている、前記判定対象のフレームのタイプに対する前記回数に基づいて、前記判定対象のフレームが不正であるか否かを判定し、
前記通信部は、判定結果を前記ゲートウェイ装置に送信する、
サーバ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子制御ユニットが通信を行う車載ネットワークにおいてフレームの転送等を行うゲートウェイ装置に関する。
【背景技術】
【０００２】
近年、自動車の中のシステムには、電子制御ユニット（ＥＣＵ：Electronic Control Unit）と呼ばれる装置が多数配置されている。これらのＥＣＵをつなぐネットワークは車載ネットワークと呼ばれる。車載ネットワークには、多数の規格が存在する。その中でも最も主流な車載ネットワークの一つに、ＩＳＯ１１８９８−１で規定されているＣＡＮ（Controller Area Network）という規格が存在する。
【０００３】
ＣＡＮでは、通信路は２本のバスで構成され、バスに接続されているＥＣＵはノードと呼ばれる。バスに接続されている各ノードは、フレームと呼ばれるメッセージを送受信する。フレームを送信する送信ノードは、２本のバスに電圧をかけ、バス間で電位差を発生させることによって、レセシブと呼ばれる「１」の値と、ドミナントと呼ばれる「０」の値を送信する。複数の送信ノードが全く同一のタイミングで、レセシブとドミナントを送信した場合は、ドミナントが優先されて送信される。受信ノードは、受け取ったフレームのフォーマットに異常がある場合には、エラーフレームと呼ばれるフレームを送信する。エラーフレームとは、ドミナントを６ｂｉｔ連続して送信することで、送信ノードや他の受信ノードにフレームの異常を通知するものである。
【０００４】
またＣＡＮでは送信先や送信元を指す識別子は存在せず、送信ノードはフレーム毎にメッセージＩＤと呼ばれるＩＤを付けて送信し（つまりバスに信号を送出し）、各受信ノードは予め定められたＩＤのフレームのみを受信する（つまりバスから信号を読み取る）。また、ＣＳＭＡ／ＣＡ（Carrier Sense Multiple Access/Collision Avoidance）方式を採用しており、複数ノードの同時送信時にはメッセージＩＤによる調停が行われ、メッセージＩＤの値が小さいフレームが優先的に送信される。
【０００５】
ＣＡＮの車載ネットワークシステムについては、攻撃者がバスにアクセスして不正なフレームを送信することでＥＣＵを不正に制御するといった脅威が存在し、セキュリティ対策が検討されている。
【０００６】
例えば、特許文献１に記載された、車載ネットワークにおいてバス間でフレームを転送するゲートウェイ装置（ＧＷ：gateway）は、バスに送信されたフレームの周期の異常を検出すると、そのフレームを他のバスに転送せず破棄することで、不正な制御を抑える（特許文献１）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１４−１４６８６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
フレームを転送するゲートウェイ装置が適正でないフレームを破棄するためには、フレームが適正か否かを判定する必要があり、フレームが適正か否かの判定に要する時間だけ適切なフレームの転送が遅延し、車載ネットワークへ悪影響を及ぼし得る。例えば、遅延時間が長いと、フレームの受信を待つＥＣＵが異常処理を実行してしまう可能性があり得る。
【０００９】
そこで、本発明は、受信したフレームが適正か否かの判定にある程度の時間を要する判定手法を用いた場合でも、車載ネットワークへの悪影響を抑制し得るゲートウェイ装置を提供する。また、本発明は、フレームが適正か否かの判定の時間の長さが車載ネットワークへ及ぼす悪影響を抑制するための車載ネットワークシステム、その車載ネットワークシステムで用いられる通信方法、及び、サーバ装置を提供する。
【課題を解決するための手段】
【００１０】
上記課題を解決するために本発明の一態様に係るゲートウェイ装置は、車載ネットワークシステムにおいて複数の電子制御ユニットが通信に用いるネットワークに接続されるゲートウェイ装置であって、第１フレームを受信する受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する送信部とを備える。
【００１１】
また、上記課題を解決するために本発明の一態様に係る車載ネットワークシステムは、１以上のネットワークを介して通信する複数の電子制御ユニットと前記ネットワークに接続されたゲートウェイ装置とを備える車載ネットワークシステムであって、前記ゲートウェイ装置は、第１フレームを受信する第１の受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する第１の送信部とを備える。
【００１２】
また、上記課題を解決するために本発明の一態様に係る通信方法は、１以上のネットワークを介して通信する複数の電子制御ユニットを備える車載ネットワークシステムにおいて用いられる通信方法であって、第１フレームを受信する受信ステップと、前記受信ステップで前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する送信ステップとを含む。
【００１３】
また、上記課題を解決するために本発明の一態様に係るサーバ装置は、車両に搭載された複数の電子制御ユニットが通信に用いる車載ネットワークに接続されるゲートウェイ装置と通信する通信部と、前記車両における前記車載ネットワークで送信されるフレームの種類ごとに、所定条件が満たされた回数を保持する保持部と、不正判定部とを備え、前記通信部は、前記ゲートウェイ装置から判定対象のフレームの判定依頼を受信すると、前記不正判定部は、前記保持部に保持されている、前記判定対象のフレームのタイプに対する前記回数に基づいて、前記判定対象のフレームが不正であるか否かを判定し、前記通信部は、判定結果を前記ゲートウェイ装置に送信する。
【００１４】
上記課題を解決するために本発明の他の一態様に係るゲートウェイ装置は、車載ネットワークシステムにおいて複数の電子制御ユニットが通信に用いるバスに接続されるゲートウェイ装置であって、第１フレームを受信する受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記バスに送信する送信部とを備えるゲートウェイ装置である。
【００１５】
また、上記課題を解決するために本発明の他の一態様に係る車載ネットワークシステムは、１以上のバスを介して通信する複数の電子制御ユニットと前記バスに接続されたゲートウェイ装置とを備える車載ネットワークシステムであって、前記ゲートウェイ装置は、第１フレームを受信する受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記バスに送信する送信部とを備える車載ネットワークシステムである。
【００１６】
また、上記課題を解決するために本発明の他の一態様に係る通信方法は、１以上のバスを介して通信する複数の電子制御ユニットを備える車載ネットワークシステムにおいて用いられる通信方法であって、第１フレームを受信する受信ステップと、前記受信ステップで前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記バスに送信する送信ステップとを含む通信方法である。
【発明の効果】
【００１７】
本発明によれば、フレームが適正か否かの判定の時間の長さが車載ネットワークへ及ぼす悪影響を抑制し、フレームが適正か否かの判定に要する時間を確保可能となる。
【図面の簡単な説明】
【００１８】
【図１】実施の形態１に係る車載ネットワークシステムの全体構成を示す図である。
【図２】ＣＡＮプロトコルで規定されるデータフレームのフォーマットを示す図である。
【図３】ＥＣＵの構成図である。
【図４】受信ＩＤリストの一例を示した図である。
【図５】エンジンに接続されたＥＣＵから送信されるフレームにおけるＩＤ及びデータフィールドの一例を示す図である。
【図６】ブレーキに接続されたＥＣＵから送信されるフレームにおけるＩＤ及びデータフィールドの一例を示す図である。
【図７】ドア開閉センサに接続されたＥＣＵから送信されるフレームにおけるＩＤ及びデータフィールドの一例を示す図である。
【図８】窓開閉センサに接続されたＥＣＵから送信されるフレームにおけるＩＤ及びデータフィールドの一例を示す図である。
【図９】コーナーセンサに接続されたＥＣＵから送信されるフレームにおけるＩＤ及びデータフィールドの一例を示す図である。
【図１０】実施の形態１に係るゲートウェイ（ゲートウェイ装置）の構成図である。
【図１１】実施の形態１に係るゲートウェイが送信するフレームのデータフィールドフォーマットの一例を示した図である。
【図１２】ゲートウェイが保持する不正判定ルールの一例を示す図である。
【図１３】ゲートウェイが保持する転送ルールの一例を示す図である。
【図１４】実施の形態１におけるフレームの転送に係る動作例を示すシーケンス図である。
【図１５】実施の形態１に係るＥＣＵにおけるフレーム送信処理の一例を示すフローチャートである。
【図１６】実施の形態１に係るゲートウェイにおけるフレーム転送処理の一例を示すフローチャートである。
【図１７】実施の形態１に係るゲートウェイにおける不正判定処理の一例を示すフローチャートである。
【図１８】ゲートウェイにおける最終判定処理の一例を示すフローチャートである。
【図１９】実施の形態１に係るＥＣＵにおけるフレーム受信処理の一例を示すフローチャートである。
【図２０】実施の形態２に係る車載ネットワークシステムの全体構成を示す図である。
【図２１】実施の形態２に係るゲートウェイ及びＥＣＵが送信するフレームのデータフィールドフォーマットの一例を示した図である。
【図２２】実施の形態２におけるチェックサムの算出に用いる情報の一例を示す図である。
【図２３】実施の形態２に係るゲートウェイの構成図である。
【図２４】サーバの構成図である。
【図２５】サーバが保持する車両データの一例を示す図である。
【図２６】実施の形態２に係るＥＣＵにおけるフレーム送信処理の一例を示すフローチャートである。
【図２７】実施の形態２に係るゲートウェイにおけるフレーム転送処理の一例を示すフローチャートである。
【図２８】実施の形態２に係るゲートウェイにおける不正判定処理の一例を示すフローチャートである。
【図２９】実施の形態２に係るゲートウェイにおけるサーバ判定対応処理の一例を示すフローチャートである。
【図３０】サーバにおける判定処理の一例を示すフローチャートである。
【図３１】実施の形態２に係るＥＣＵにおけるフレーム受信処理の一例を示すフローチャートである。
【図３２】実施の形態２に係るＥＣＵにおけるチェックサム確認処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１９】
上記課題を解決するために本発明の一態様に係るゲートウェイ装置は、車載ネットワークシステムにおいて複数の電子制御ユニットが通信に用いるネットワークに接続されるゲートウェイ装置であって、第１フレームを受信する受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する送信部とを備える。
【００２０】
また、前記送信部は、前記受信部により前記第１フレームが受信された際に、所定条件が満たされた場合に前記第２フレームに前記第１制御情報を含めて前記送信を行い、前記所定条件が満たされなかった場合には前記第１制御情報を含めずに前記第２フレームを前記ネットワークに送信し、前記第１制御情報を含めた前記第２フレームを送信した後には、当該第２フレームの処理方法に関する第２制御情報を含む第３フレームを、前記ネットワークに送信することとしても良い。
【００２１】
また、前記複数の電子制御ユニットは、Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＣＡＮ）プロトコルに従って前記ネットワークを介して通信を行うこととしても良い。
【００２２】
また、上記課題を解決するために本発明の一態様に係る車載ネットワークシステムは、１以上のネットワークを介して通信する複数の電子制御ユニットと前記ネットワークに接続されたゲートウェイ装置とを備える車載ネットワークシステムであって、前記ゲートウェイ装置は、第１フレームを受信する第１の受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する第１の送信部とを備える。
【００２３】
また、前記ゲートウェイ装置の前記第１の送信部は、前記第１の受信部により前記第１フレームが受信された際に、所定条件が満たされた場合に前記第２フレームに前記第１制御情報を含めて前記送信を行い、前記所定条件が満たされなかった場合には前記第１制御情報を含めずに前記第２フレームを前記ネットワークに送信し、前記第１制御情報を含めた前記第２フレームを送信した後には、当該第２フレームの処理方法に関する第２制御情報を含む第３フレームを、前記ネットワークに送信し、前記複数の電子制御ユニットのうちの第１の電子制御ユニットは、第１フレームを受信する第２の受信部と、前記第１フレームが適正か否かを決定する判定部と、前記決定の結果を送信する第２の送信部とを備え、前記所定条件は、前記ゲートウェイ装置が前記第２フレームの送信後に、前記第１の電子制御ユニットにおいて前記第１フレームが適正か否かについて決定される状況で満たされる条件であり、前記第１の受信部は、前記判定の結果を受信すると、前記第１の送信部は、前記第３フレームに、前記第１フレームに係る前記決定の結果に応じた前記第２制御情報を含ませることとしても良い。
【００２４】
また、上記課題を解決するために本発明の一態様に係る通信方法は、１以上のネットワークを介して通信する複数の電子制御ユニットを備える車載ネットワークシステムにおいて用いられる通信方法であって、第１フレームを受信する受信ステップと、前記受信ステップで前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記ネットワークに送信する送信ステップとを含む。
【００２５】
また、上記課題を解決するために本発明の一態様に係るサーバ装置は、車両に搭載された複数の電子制御ユニットが通信に用いる車載ネットワークに接続されるゲートウェイ装置と通信する通信部と、前記車両における前記車載ネットワークで送信されるフレームの種類ごとに、所定条件が満たされた回数を保持する保持部と、不正判定部とを備え、前記通信部は、前記ゲートウェイ装置から判定対象のフレームの判定依頼を受信すると、前記不正判定部は、前記保持部に保持されている、前記判定対象のフレームのタイプに対する前記回数に基づいて、前記判定対象のフレームが不正であるか否かを判定し、前記通信部は、判定結果を前記ゲートウェイ装置に送信する。
【００２６】
本発明の一態様に係るゲートウェイ装置は、車載ネットワークシステムにおいて複数の電子制御ユニットが通信に用いるバスに接続されるゲートウェイ装置であって、第１フレームを受信する受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記バスに送信する送信部とを備えるゲートウェイ装置である。これにより、フレームの転送に際して制御情報を含めたフレームの送信を行うため、例えば受信後にフレームの処理を抑止して待機させる等の制御が可能となる。このため、受信したフレームが適正か否かの判定にある程度の時間を要する判定手法を用いた場合でも、その判定が完了するより前に、待機等を指示する制御情報をフレームに付加して送信しておくことが可能となり、フレームを受信した電子制御ユニット（ＥＣＵ）において異常処理をしてしまうこと等を抑制できる。即ち、ゲートウェイ装置が受信したフレームが適正か否かの判定に時間を要することによる車載ネットワークへの悪影響を、抑制し得る。また、ゲートウェイ装置にとっては、フレームが適正か否かの判定に要する時間を確保可能となるので、より適切な判定が可能となり、車載ネットワークに不正なフレームが悪影響を及ぼすことを抑制可能となる。
【００２７】
また、前記送信部は、前記受信部により前記第１フレームが受信された際に、所定条件が満たされた場合に前記第２フレームに前記第１制御情報を含めて前記送信を行い、前記所定条件が満たされなかった場合には前記第１制御情報を含めずに前記第２フレームを前記バスに送信し、前記第１制御情報を含めた前記第２フレームを送信した後には、当該第２フレームの処理方法に関する第２制御情報を含む第３フレームを、前記バスに送信することとしても良い。これにより、第１制御情報が含まれる第２フレームを受信したＥＣＵにおいては、その第２フレームの処理方法に関する第２制御情報を含む第３フレームを後に受信できることとなるため、第２フレームを保持して第３フレームを待機する等の対応を行い得る。即ち、第１制御情報が含まれる第２フレームを受信したＥＣＵは、第３フレームの受信タイミングまで第２フレームに対する処理の実行開始を行わないようにすること等が可能となる。
【００２８】
また、前記所定条件は、前記第２フレームの送信後に前記第１フレームが適正か否かについて決定される状況で満たされる条件であり、前記送信部は、前記第３フレームに、前記第１フレームに係る前記決定の結果に応じた前記第２制御情報を含ませることとしても良い。これにより、第１制御情報が含まれる第２フレームを受信したＥＣＵにおいては、第２フレームの内容が適正でその内容に応じた機能処理等を実行すべきであるか、その内容が不正でその内容に応じた機能処理等を行うべきでないかを第３フレームの受信を待てば区別できるようになる。
【００２９】
また、前記ゲートウェイ装置は、前記決定を行う不正判定処理部を備えることとしても良い。これにより、車載ネットワークへの悪影響を抑制して、ゲートウェイ装置は、受信したフレームが適正か否かの判定（決定）をフレームの受信から、ある程度の時間を要する判定手法を用いて、自装置（不正判定処理部）で実行することが可能となる。
【００３０】
また、前記受信部は、更に前記複数の電子制御ユニットのうちの１つにより行われた前記決定の結果を受信することとしても良い。これにより、ゲートウェイ装置は、受信したフレームが適正か否かの判定（決定）を他のＥＣＵ（例えばフレームが適正か否かの判定を主として行うＥＣＵ等）に行わせてその結果を受信する判定手法を用いても、車載ネットワークへの悪影響が抑制され得る。
【００３１】
また、前記ゲートウェイ装置は、自装置を搭載する車両の外部の装置に対して前記決定の要求を送信した後に前記決定の結果を受信する外部通信部を備えることとしても良い。これにより、ゲートウェイ装置は、受信したフレームが適正か否かの判定（決定）を車両外の装置（例えばサーバ）に行わせてその結果を受信する判定手法を用いても、車載ネットワークへの悪影響が抑制され得る。なお、車両外の装置との通信によれば、例えば、その車両における過去のデータ或いは他の車両のデータ等に基づいて、フレームが適正か否かの判定（決定）を行うことが可能となり、より適切な判定が行える可能性がある。
【００３２】
また、前記第２制御情報は、前記第２フレームの処理の実行を開始すべき旨を示すこととしても良い。これにより、第１制御情報が含まれる第２フレームを受信したＥＣＵは、第２制御情報を含む第３フレームを受信したタイミングで、第２フレームが適正なものであるものとして適切に、第２フレームの処理の実行を開始できるようになる。
【００３３】
また、前記第２制御情報は、前記第２フレームを破棄すべき旨を示すこととしても良い。これにより、第１制御情報が含まれる第２フレームを受信したＥＣＵは、第２制御情報を含む第３フレームを受信したタイミングで、第２フレームを破棄でき、不適切な処理を行わないようにすることが可能となる。このように破棄すべき場合であってもその指示を含むフレームが送信されることは、破棄すべき旨の指示を受信したＥＣＵにとって、保持している第２フレームを即座に破棄できる点で有用である。
【００３４】
また、前記第１制御情報は、当該第１制御情報を含む前記第２フレームを受信した電子制御ユニットに、当該第２フレームの処理方法に関する情報を含むフレームを受信するまで、当該第２フレームに対応した処理の実行開始を遅延させるべき旨を示すこととしても良い。これにより、ゲートウェイ装置で第２フレームの処理方法（例えば対応処理の実行開始或いは破棄等）を決定するまで、第１制御情報を含む第２フレームを受信したＥＣＵにおいてその第２フレームの処理の実行開始がなされない。このため、ゲートウェイ装置ではその決定のための処理時間を確保できるようになる。
【００３５】
また、前記第１制御情報は、当該第１制御情報を含む前記第２フレームを受信した電子制御ユニットに、一定条件が満たされるまで当該第２フレームに対応した処理の実行を抑止させるべき旨を示すこととしても良い。これにより、ゲートウェイ装置で一定条件を満たすための措置（例えば第２フレームの対応処理の実行開始を指示するフレームの送信等）を行うまでは、第１制御情報を含む第２フレームを受信したＥＣＵにおいてその第２フレームの処理の実行が抑止される。このため、ゲートウェイ装置ではその措置の内容を決めるための処理時間を確保できるようになる。
【００３６】
また、前記複数の電子制御ユニットは、Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＣＡＮ）プロトコルに従って前記バスを介して通信を行うこととしても良い。これにより、ＣＡＮプロトコルに従った車載ネットワークに攻撃者がアクセスして不正なフレームが送信された場合にそのフレームが不正であることを、ある程度時間を要する精度の良い判定手法を用いて、適切に区別することが可能となり得る。
【００３７】
また、前記送信部は、前記第２フレームのデータフィールドの全部又は一部で前記第１制御情報を表すこととしても良い。これにより、フレームを受信したＥＣＵは、データフィールドを確認することで第１制御情報を認識可能となる。この場合に第１制御情報は、例えば、データフィールド内のある領域を特定値にすること等で表現され得る。また、ゲートウェイ装置はフレームの転送（フレームの受信及びその受信内容に基づくフレームの送信）において、受信したフレームの内容をある程度保ったまま（例えばＩＤフィールド等の内容を変更しないまま）、効率的に転送を行うことが可能となる。
【００３８】
また、前記送信部は、前記第２フレームの拡張ＩＤフィールドで前記第１制御情報を表すこととしても良い。これにより、フレームを受信したＥＣＵは、拡張ＩＤフィールドを確認することで第１制御情報を認識可能となる。この場合に第１制御情報は、例えば、拡張ＩＤフィールド内のある領域を特定値にすること等で表現され得る。
【００３９】
また、前記送信部は、前記第２フレームのＤＬＣフィールドで前記第１制御情報を表すこととしても良い。これにより、フレームを受信したＥＣＵは、ＤＬＣフィールドを確認することで第１制御情報を認識可能となる。この場合に第１制御情報は、例えば、ＤＬＣフィールド内のある領域を特定値にすること等で表現され得る。
【００４０】
また、前記送信部は、前記第２フレームのデータフィールドの少なくとも一部の内容を反映したデータを格納する、当該第２フレームの一領域で、前記第１制御情報を表すこととしても良い。これにより、データフィールドの内容を反映したデータ（例えばその内容の検証のための冗長性を有するデータ等）に第１制御情報を重畳するため、新たなデータ領域を付加せずに、効率的に第１制御情報を表現し得る。
【００４１】
また、前記送信部は、前記第２フレームのＣＲＣフィールド内に格納するＣＲＣに前記第１制御情報を重畳して、前記第２フレームの前記送信を行うこととしても良い。これにより、ＣＲＣに第１制御情報を重畳するため、効率的に第１制御情報を表現し得る。
【００４２】
また、前記送信部は、前記第２フレームの前記一領域に格納するチェックサムに前記第１制御情報を重畳して、前記第２フレームの前記送信を行うこととしても良い。これにより、チックサムに第１制御情報を重畳するため、チェックサムを含むフレームが送受信される車載ネットワークにおいて効率的に第１制御情報を表現し得る。
【００４３】
また、前記送信部は、前記第２フレームの前記一領域に格納するメッセージ認証コードに前記第１制御情報を重畳して、前記第２フレームの前記送信を行うこととしても良い。これにより、メッセージ認証コード（ＭＡＣ）に第１制御情報を重畳するため、ＭＡＣを含むフレームが送受信される車載ネットワークにおいて効率的に第１制御情報を表現し得る。
【００４４】
また、本発明の一態様に係る車載ネットワークシステムは、１以上のバスを介して通信する複数の電子制御ユニットと前記バスに接続されたゲートウェイ装置とを備える車載ネットワークシステムであって、前記ゲートウェイ装置は、第１フレームを受信する受信部と、前記受信部により前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記バスに送信する送信部とを備える車載ネットワークシステムである。これにより、ゲートウェイ装置からフレームの受信の際に（受信のタイミングで）、第１制御情報を含めたフレームを送信するので、ゲートウェイ装置が受信したフレームが適正か否かの判定（決定）がそのフレームの送信後まで時間を要する場合であっても車載ネットワークへの悪影響を、抑制し得る。第１制御情報を含むフレームを受信したＥＣＵにおいて、フレームの受信が遅れることにより異常処理を行ってしまうこと等が防止され得るからである。
【００４５】
また、本発明の一態様に係る通信方法は、１以上のバスを介して通信する複数の電子制御ユニットを備える車載ネットワークシステムにおいて用いられる通信方法であって、第１フレームを受信する受信ステップと、前記受信ステップで前記第１フレームが受信された際に、当該第１フレームの内容に基づく情報を含む第２フレームに、当該第２フレームの受信後の処理の制限に関する第１制御情報を含めて、当該第２フレームを前記バスに送信する送信ステップとを含む通信方法である。これにより、フレームを転送する装置において、第１フレームの受信に際して第１制御情報を含めた第２フレームを送信するので、第１フレームが適正か否かの判定（決定）がその第１フレームの送信後まで時間を要する場合であっても車載ネットワークへの悪影響を、抑制し得る。
【００４６】
なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なＣＤ−ＲＯＭ等の記録媒体で実現されても良く、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されても良い。
【００４７】
以下、実施の形態に係るゲートウェイ装置を含む車載ネットワークシステムについて、図面を参照しながら説明する。ここで示す実施の形態は、いずれも本発明の一具体例を示すものである。従って、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ（工程）及びステップの順序等は、一例であって本発明を限定するものではない。以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。
【００４８】
（実施の形態１）
以下、本発明の実施の形態として、複数の電子制御ユニット（ＥＣＵ）がバスを介して通信する車載ネットワークシステム１０について、図面を用いて説明する。
【００４９】
車載ネットワークシステム１０は、フレームを受信して、１つのバスにフレームを転送するゲートウェイ装置を含む。ゲートウェイ装置は、受信したフレームが適正か否かについての最終的な決定（判定）を行うまでに時間を要するか否かを判別しその判別結果に応じてフラグをフレームに付加して、フレームの転送を行う。フレームを受信したＥＣＵでは、フレームが適正か否かが未決定であるか否かをそのフラグを参照することで判別し得る。フレームを受信したＥＣＵは、そのフラグが未決定を表す場合にはそのフレームに対応した処理を保留（つまりフレームを保持したまま処理を抑止）して更なる指示（フレームが適正か否かの決定後になされる指示）を待機することが可能となる。このようにフラグが未決定を表す場合は、ＥＣＵにとって、そのフラグは待機を指示する制御情報として作用し得る。本実施の形態では、ゲートウェイ装置は、そのフラグを含む制御指示データをフレームに付加する。
【００５０】
［１．１  車載ネットワークシステム１０の全体構成］
図１は、実施の形態１に係る車載ネットワークシステム１０の全体構成を示す図である。車載ネットワークシステム１０は、ＣＡＮプロトコルに従って通信するネットワーク通信システムの一例であり、制御装置、センサ等の各種機器が搭載された自動車におけるネットワーク通信システムである。車載ネットワークシステム１０は、バス２００ａ、２００ｂ、２００ｃと、ゲートウェイ３００ａ、３００ｂ、及び、各種機器に接続されたＥＣＵ１００ａ〜１００ｅ等のＥＣＵといったバスに接続された各ノードとを含んで構成される。なお、図１では省略しているものの、車載ネットワークシステム１０にはＥＣＵ１００ａ〜１００ｅ以外にもいくつものＥＣＵが含まれ得る。ＥＣＵは、例えば、プロセッサ（マイクロプロセッサ）、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置である。メモリは、ＲＯＭ、ＲＡＭ等であり、プロセッサにより実行される制御プログラム（コンピュータプログラム）を記憶することができる。例えばプロセッサが、制御プログラム（コンピュータプログラム）に従って動作することにより、ＥＣＵは各種機能を実現することになる。なお、コンピュータプログラムは、所定の機能を達成するために、プロセッサに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【００５１】
ＥＣＵ１００ａ〜１００ｅは、いずれかのバスと接続され、また、それぞれエンジン１０１、ブレーキ１０２、ドア開閉センサ１０３、窓開閉センサ１０４、コーナーセンサ１０５に接続されている。ＥＣＵ１００ａ〜１００ｅのそれぞれは、接続されている機器（エンジン１０１等）の状態を取得し、定期的に状態を表すフレーム等をネットワーク（つまりバス）に送信している。
【００５２】
ゲートウェイ３００ａ、３００ｂは、異なる複数の通信路を接続して通信路間でデータを転送するゲートウェイ装置である。ゲートウェイ３００ａは、ＥＣＵ１００ａ及びＥＣＵ１００ｂがつながるバス２００ａと、ＥＣＵ１００ｃ及びＥＣＵ１００ｄがつながるバス２００ｂと接続している。また、ゲートウェイ３００ｂは、ＥＣＵ１００ｃ及びＥＣＵ１００ｄがつながるバス２００ｂと、ＥＣＵ１００ｅがつながるバス２００ｃと、接続している。
【００５３】
ゲートウェイ３００ａ、３００ｂは、一方のバスから受信したフレーム（データフレーム）について、適正か不正かに関連した条件判定を行って、判定結果に応じて制御指示データをデータフィールドに追加して、受信したフレームを他のバスに転送する機能を有する。ゲートウェイ３００ａ、３００ｂにおける制御指示データを追加したフレームの転送は、一方のバスから受信したフレームの内容に基づく情報を含む送信用フレームを生成して、その送信用フレームのＥＣＵにおける受信後の処理の制限に関する制御指示データをその送信用フレームのデータフィールドに含めて、その送信用フレームを他のバスに送信することで実現される。ゲートウェイ３００ａ、３００ｂは、受信したフレームを転送するかしないかを接続されたバス間毎に切り替えることも可能である。ゲートウェイ３００ａ、３００ｂも一種のＥＣＵである。
【００５４】
この車載ネットワークシステム１０においてはＣＡＮプロトコルに従って各ＥＣＵがフレームの授受を行う。ＣＡＮプロトコルにおけるフレームには、データフレーム、リモートフレーム、オーバーロードフレーム及びエラーフレームがあるが、ここでは主にデータフレームに注目して説明する。
【００５５】
［１．２  データフレームフォーマット］
以下、ＣＡＮプロトコルに従ったネットワークで用いられるフレームの１つであるデータフレームについて説明する。
【００５６】
図２は、ＣＡＮプロトコルで規定されるデータフレームのフォーマットを示す図である。同図には、ＣＡＮプロトコルで規定される標準ＩＤフォーマットにおけるデータフレームを示している。データフレームは、ＳＯＦ（Start Of Frame）、ＩＤフィールド、ＲＴＲ（Remote Transmission Request）、ＩＤＥ（Identifier Extension）、予約ビット「ｒ」、ＤＬＣ（Data Length Code）、データフィールド、ＣＲＣ（Cyclic Redundancy Check）シーケンス、ＣＲＣデリミタ「ＤＥＬ」、ＡＣＫ（Acknowledgement）スロット、ＡＣＫデリミタ「ＤＥＬ」、及び、ＥＯＦ（End Of Frame）の各フィールドで構成される。
【００５７】
ＳＯＦは、１ｂｉｔのドミナントで構成される。バスがアイドルの状態はレセシブになっており、ＳＯＦによりドミナントへ変更することでフレームの送信開始を通知する。
【００５８】
ＩＤフィールドは、１１ｂｉｔで構成される、データの種類を示す値であるＩＤ（メッセージＩＤ）を格納するフィールドである。複数のノードが同時に送信を開始した場合、このＩＤフィールドで通信調停を行うために、ＩＤが小さい値を持つフレームが高い優先度となるよう設計されている。
【００５９】
ＲＴＲは、データフレームとリモートフレームとを識別するための値であり、データフレームにおいてはドミナント１ｂｉｔで構成される。
【００６０】
ＩＤＥと「ｒ」とは、両方ドミナント１ｂｉｔで構成される。
【００６１】
ＤＬＣは、４ｂｉｔで構成され、データフィールドの長さを示す値である。なお、ＩＤＥ、「ｒ」及びＤＬＣを合わせてコントロールフィールドと称する。ここでは、データフレームにおけるＤＬＣの値を格納する４ｂｉｔをＤＬＣフィールドとも称する。
【００６２】
データフィールドは、最大６４ｂｉｔで構成される送信するデータの内容を示す値である。８ｂｉｔ毎に長さを調整できる。送られるデータの仕様については、ＣＡＮプロトコルで規定されておらず、車載ネットワークシステム１０において定められる。従って、車種、製造者（製造メーカ）等に依存した仕様となる。
【００６３】
ＣＲＣシーケンスは、１５ｂｉｔで構成される。ＳＯＦ、ＩＤフィールド、コントロールフィールド及びデータフィールドの送信値より算出される。
【００６４】
ＣＲＣデリミタは、１ｂｉｔのレセシブで構成されるＣＲＣシーケンスの終了を表す区切り記号である。なお、ＣＲＣシーケンス及びＣＲＣデリミタを合わせてＣＲＣフィールドと称する。
【００６５】
ＡＣＫスロットは、１ｂｉｔで構成される。送信ノードはＡＣＫスロットをレセシブにして送信を行う。受信ノードはＣＲＣシーケンスまで正常に受信ができていればＡＣＫスロットをドミナントとして送信する。レセシブよりドミナントが優先されるため、送信後にＡＣＫスロットがドミナントであれば、送信ノードは、いずれかの受信ノードが受信に成功していることを確認できる。
【００６６】
ＡＣＫデリミタは、１ｂｉｔのレセシブで構成されるＡＣＫの終了を表す区切り記号である。
【００６７】
ＥＯＦは、７ｂｉｔのレセシブで構成されており、データフレームの終了を示す。
【００６８】
［１．３  ＥＣＵ１００ａの構成］
図３は、ＥＣＵ１００ａの構成図である。ＥＣＵ１００ａは、フレーム送受信部１１０と、フレーム解釈部１２０と、受信ＩＤ判断部１３０と、受信ＩＤリスト保持部１４０と、フレーム処理部１５０と、フレーム保持部１６０と、データ取得部１７０と、フレーム生成部１８０とを含んで構成される。これらの各構成要素の各機能は、例えばＥＣＵ１００ａにおける通信回路、メモリに格納された制御プログラムを実行するプロセッサ或いはデジタル回路等により実現される。
【００６９】
フレーム送受信部１１０は、バス２００ａに対して、ＣＡＮプロトコルに従ったフレームを送受信する。バス２００ａからフレームを１ｂｉｔずつ受信し、フレーム解釈部１２０に転送する。また、フレーム生成部１８０より通知を受けたフレームの内容をバス２００ａに送信する。
【００７０】
フレーム解釈部１２０は、フレーム送受信部１１０よりフレームの値を受け取り、ＣＡＮプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行う。ＩＤフィールドと判断した値は受信ＩＤ判断部１３０へ転送する。フレーム解釈部１２０は、受信ＩＤ判断部１３０から通知される判定結果に応じて、ＩＤフィールドの値と、ＩＤフィールド以降に現れるデータフィールドとを、フレーム処理部１５０へ転送するか、その判定結果を受けた以降においてフレームの受信を中止する（つまりそのフレームとしての解釈を中止する）かを決定する。また、フレーム解釈部１２０は、ＣＡＮプロトコルに則っていないフレームと判断した場合は、エラーフレームを送信するようにフレーム生成部１８０へ通知する。また、フレーム解釈部１２０は、エラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームになっていると解釈した場合には、それ以降はそのフレームを破棄する、つまりフレームの解釈を中止する。
【００７１】
受信ＩＤ判断部１３０は、フレーム解釈部１２０から通知されるＩＤフィールドの値を受け取り、受信ＩＤリスト保持部１４０が保持しているメッセージＩＤのリストに従い、そのＩＤフィールド以降のフレームの各フィールドを受信するかどうかの判定を行う。この判定結果を、受信ＩＤ判断部１３０は、フレーム解釈部１２０へ通知する。
【００７２】
受信ＩＤリスト保持部１４０は、ＥＣＵ１００ａが受信するＩＤ（メッセージＩＤ）のリストである受信ＩＤリストを保持する。図４は、受信ＩＤリストの一例を示した図である。
【００７３】
フレーム処理部１５０は、受信したフレームのデータに応じてＥＣＵ毎に異なる機能に係る処理を行う。例えば、エンジン１０１に接続されたＥＣＵ１００ａは、時速が３０ｋｍを超えた状態でドアが開いている状態だと、アラーム音を鳴らす機能を備える。ＥＣＵ１００ａは、例えばアラーム音を鳴らすためのスピーカ等を有している。そして、ＥＣＵ１００ａのフレーム処理部１５０は、他のＥＣＵから受信したデータ（例えばドアの状態を示す情報）を管理し、エンジン１０１から取得された時速に基づいて一定条件下でアラーム音を鳴らす処理等を行う。なお、フレーム処理部１５０は、ここで例示した以外のフレームのデータに係る処理を行っても良い。また、フレーム処理部１５０は、受信したフレームにおける制御指示データの内容によっては、受信したフレームを、保存指示することでフレーム保持部１６０へ格納して、受信したフレームに応じた上述の処理（ＥＣＵの機能に係る処理）の開始を一定条件が満たされるまで抑止（つまり一定条件の成立まで上述の処理を待機）し、或いは、フレーム保持部１６０からフレームを読み出してそのフレームのデータに応じてＥＣＵの機能に係る処理を実行する。
【００７４】
フレーム保持部１６０は、フレーム処理部１５０の保存指示に従って、受信したフレームの情報をメモリ等の記憶媒体に保持する。また、フレーム処理部１５０からの読出し指示に従って、保存しているフレームを通知する。
【００７５】
データ取得部１７０は、ＥＣＵにつながっている機器、センサ等の状態を示すデータを取得し、フレーム生成部１８０に通知する。
【００７６】
フレーム生成部１８０は、フレーム解釈部１２０から通知されたエラーフレームの送信を指示する通知に従い、エラーフレームを構成し、エラーフレームをフレーム送受信部１１０へ通知して送信させる。また、フレーム生成部１８０は、データ取得部１７０より通知されたデータの値に対して、予め定められたメッセージＩＤをつけてフレームを構成し、フレーム送受信部１１０へ通知する。
【００７７】
なお、ＥＣＵ１００ｂ〜１００ｅも、上述したＥＣＵ１００ａと基本的に同様の構成を備える。但し、受信ＩＤリスト保持部１４０に保持される受信ＩＤリストはＥＣＵ毎に異なる内容となり得る。また、フレーム処理部１５０の処理内容は、ＥＣＵ毎に異なる。例えば、ＥＣＵ１００ｃにおけるフレーム処理部１５０の処理内容は、ブレーキがかかっていない状況でドアが開くとアラーム音を鳴らす機能に係る処理を含む。例えば、ＥＣＵ１００ｂ及びＥＣＵ１００ｄにおけるフレーム処理部１５０では特段の処理を行わない。なお、各ＥＣＵは、ここで例示した以外の機能を備えていても良い。なお、ＥＣＵ１００ａ〜１００ｅのそれぞれが送信するフレームの内容については後に図５〜図９を用いて説明する。
【００７８】
［１．４  受信ＩＤリスト例］
図４は、ＥＣＵ１００ａ〜１００ｅ、ゲートウェイ３００ａ、３００ｂのそれぞれにおいて保持される受信ＩＤリストの一例を示す図である。同図に例示する受信ＩＤリストは、ＩＤ（メッセージＩＤ）の値が「１」、「２」、「３」、「４」及び「５」のいずれかであるメッセージＩＤを含むフレームを選択的に受信して処理するために用いられる。例えば、ＥＣＵ１００ａの受信ＩＤリスト保持部１４０に図４の受信ＩＤリストが保持されていると、メッセージＩＤが「１」、「２」、「３」、「４」及び「５」のいずれでもないフレームについては、フレーム解釈部１２０でのＩＤフィールド以後のフレームの解釈が中止される。
【００７９】
［１．５  エンジンに係るＥＣＵ１００ａの送信フレーム例］
図５は、エンジン１０１に接続されたＥＣＵ１００ａから送信されるフレームにおけるＩＤ（メッセージＩＤ）及びデータフィールド（データ）の一例を示す図である。ＥＣＵ１００ａが送信するフレームのメッセージＩＤは「１」である。データは、時速（ｋｍ／時）を表し、最低０（ｋｍ／時）〜最高１８０（ｋｍ／時）までの範囲の値を取り、データ長は１ｂｙｔｅである。図５の上行から下行へと、ＥＣＵ１００ａから逐次送信される各フレームに対応する各メッセージＩＤ及びデータを例示しており、０ｋｍ／時から１ｋｍ／時ずつ加速されている様子を表している。
【００８０】
［１．６  ブレーキに係るＥＣＵ１００ｂの送信フレーム例］
図６は、ブレーキ１０２に接続されたＥＣＵ１００ｂから送信されるフレームにおけるＩＤ（メッセージＩＤ）及びデータフィールド（データ）の一例を示す図である。ＥＣＵ１００ｂが送信するフレームのメッセージＩＤは「２」である。データは、ブレーキのかかり具合を割合（％）で表し、データ長は１ｂｙｔｅである。この割合は、ブレーキを全くかけていない状態を０（％）、ブレーキを最大限かけている状態を１００（％）としたものである。図６の上行から下行へと、ＥＣＵ１００ｂから逐次送信される各フレームに対応する各メッセージＩＤ及びデータを例示しており、１００％から徐々にブレーキを弱めている様子を表している。
【００８１】
［１．７  ドア開閉センサに係るＥＣＵ１００ｃの送信フレーム例］
図７は、ドア開閉センサ１０３に接続されたＥＣＵ１００ｃから送信されるフレームにおけるＩＤ（メッセージＩＤ）及びデータフィールド（データ）の一例を示す図である。ＥＣＵ１００ｃが送信するフレームのメッセージＩＤは「３」である。データは、ドアの開閉状態を表し、データ長は１ｂｙｔｅである。データの値は、ドアが開いている状態が「１」、ドアが閉まっている状態が「０」である。図７の上行から下行へと、ＥＣＵ１００ｃから逐次送信される各フレームに対応する各メッセージＩＤ及びデータを例示しており、ドアが開いている状態から次第に閉められた状態へと移った様子を表している。
【００８２】
［１．８  窓開閉センサに係るＥＣＵ１００ｄの送信フレーム例］
図８は、窓開閉センサ１０４に接続されたＥＣＵ１００ｄから送信されるフレームにおけるＩＤ（メッセージＩＤ）及びデータフィールド（データ）の一例を示す図である。ＥＣＵ１００ｄが送信するフレームのメッセージＩＤは「４」である。データは、窓の開閉状態を割合（％）で表し、データ長は１ｂｙｔｅである。この割合は、窓が完全に閉まっている状態を０（％）、窓が全開の状態を１００（％）としたものである。図８の上行から下行へと、ＥＣＵ１００ｄから逐次送信される各フレームに対応する各メッセージＩＤ及びデータを例示しており、窓が閉まっている状態から徐々に開いていく様子を表している。
【００８３】
［１．９  コーナーセンサに係るＥＣＵ１００ｅの送信フレーム例］
図９は、コーナーセンサ１０５に接続されたＥＣＵ１００ｅから送信されるフレームにおけるＩＤ（メッセージＩＤ）及びデータフィールド（データ）の一例を示す図である。ＥＣＵ１００ｅが送信するフレームのメッセージＩＤは「５」である。データは、コーナーセンサ１０５が車両のコーナーから一定距離範囲に障害物が存在することを検知すれば「１」、障害物を検知しなければ「０」である。図９の上行から下行へと、ＥＣＵ１００ｅから逐次送信される各フレームに対応する各メッセージＩＤ及びデータを例示しており、車両のコーナーに障害物が検知されない状態から次第に障害物が検知される状態へと移った様子を表している。
【００８４】
［１．１０  ゲートウェイ３００ａの構成］
図１０は、ゲートウェイ３００ａの構成図である。ゲートウェイ３００ａは、フレーム送受信部３１０と、フレーム解釈部３２０と、受信ＩＤ判断部３３０と、受信ＩＤリスト保持部３４０と、不正判定処理部３５０と、不正判定ルール保持部３６０と、転送処理部３７０と、転送ルール保持部３８０と、フレーム生成部３９０とを含んで構成される。これらの各構成要素の各機能は、例えばゲートウェイ３００ａにおける通信回路、メモリに格納された制御プログラムを実行するプロセッサ或いはデジタル回路等により実現される。なお、ゲートウェイ３００ｂもゲートウェイ３００ａと基本的に同様の構成を備える。
【００８５】
フレーム送受信部３１０は、バス２００ａ、２００ｂそれぞれに対して、ＣＡＮプロトコルに従ったフレームを送受信する。バスからフレームを１ｂｉｔずつ受信し、フレーム解釈部３２０に転送する。また、フレーム生成部３９０より通知を受けた転送先のバスを示すバス情報及びフレームに基づいて、そのフレームの内容をバス２００ａ、２００ｂに１ｂｉｔずつ送信する。
【００８６】
フレーム解釈部３２０は、フレーム送受信部３１０よりフレームの値を受け取り、ＣＡＮプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行う。ＩＤフィールドと判断した値は受信ＩＤ判断部３３０へ転送する。フレーム解釈部３２０は、受信ＩＤ判断部３３０から通知される判定結果に応じて、ＩＤフィールドの値と、ＩＤフィールド以降に現れるデータフィールド（データ）とを、転送処理部３７０へ転送するか、その判定結果を受けた以降においてフレームの受信を中止するかを決定する。また、フレーム解釈部３２０は、ＣＡＮプロトコルに則っていないフレームと判断した場合は、エラーフレームを送信するようにフレーム生成部３９０へ通知する。また、フレーム解釈部３２０は、エラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームになっていると解釈した場合には、それ以降はそのフレームを破棄する、つまりフレームの解釈を中止する。
【００８７】
受信ＩＤ判断部３３０は、フレーム解釈部３２０から通知されるＩＤフィールドの値を受け取り、受信ＩＤリスト保持部３４０が保持しているメッセージＩＤのリストに従い、そのＩＤフィールド以降のフレームの各フィールドを受信するかどうかの判定を行う。この判定結果を、受信ＩＤ判断部３３０は、フレーム解釈部３２０へ通知する。
【００８８】
受信ＩＤリスト保持部３４０は、ゲートウェイ３００ａが受信するＩＤ（メッセージＩＤ）のリストである受信ＩＤリスト（図４参照）を保持する。
【００８９】
不正判定処理部３５０は、フレーム解釈部３２０から通知されるＩＤフィールドの値を受け取り、不正判定ルール保持部３６０に保持している不正判定ルール（メッセージＩＤと、フレームが送信される周期とを対応付けた情報）に基づいて、受信されたフレームが不正か適正かに関する不正判定処理を行う。不正判定処理では、フレームの受信に際して、適正か否かを決定できるか否かを判別してその判別結果に応じて、転送のための送信用フレームのデータフィールドに付加する制御指示データの内容を選定して、制御指示データを転送処理部３７０へ通知する。不正判定処理部３５０は、フレームの受信時に迅速に適正か否かを決定できない場合には、つまり受信したフレームを迅速に転送した後においてフレームが適正であるか否かが決定され得る可能性がある場合には、制御指示データの値で、待機を指示する制御情報を表す。図１１に、制御指示データを含むデータフィールドのデータフォーマットの一例を示す。
【００９０】
不正判定ルール保持部３６０は、ゲートウェイ３００ａが受信し得るフレームについての不正判定ルールを保持する。図１２に、不正判定ルールの一例を示す。
【００９１】
転送処理部３７０は、転送ルール保持部３８０が保持する転送ルールに従って、受信したフレームのＩＤ（メッセージＩＤ）に応じて、転送するバスを決定し、転送するバスを示すバス情報とフレーム解釈部３２０より通知されたメッセージＩＤとデータと不正判定処理部３５０から通知された制御指示データとをフレーム生成部３９０へ通知する。なお、ゲートウェイ３００ａは、あるバスから受信されたエラーフレームについては他のバスに転送しない。
【００９２】
転送ルール保持部３８０は、バス毎のフレームの転送についてのルールを表す情報である転送ルールを保持する。図１３は、転送ルールの一例を示した図である。
【００９３】
フレーム生成部３９０は、フレーム解釈部３２０から通知されたエラーフレームの送信を指示する通知に従い、エラーフレームを構成し、エラーフレームをフレーム送受信部３１０へ通知して送信させる。また、フレーム生成部３９０は、転送処理部３７０より通知されたメッセージＩＤとデータと制御指示データとを使ってフレームを構成し、そのフレーム及びバス情報をフレーム送受信部３１０へ通知する。
【００９４】
［１．１１  フレームのデータフィールドのフォーマット例］
図１１は、フレームの転送に際して送信に用いる送信用フレームのデータフィールドの一例を示す図である。
【００９５】
送信用フレームのデータフィールドには、ゲートウェイ３００ａがＥＣＵから受信したフレームのデータフィールドに格納されたデータに加えて、制御指示データが格納される。
【００９６】
送信用フレームにおける制御指示データは、図１１に例示するように、例えば、待機フラグ、待機終了指示フラグ、及び、待機終了指示有無フラグを含んで構成される。
【００９７】
待機フラグは、例えば制御指示データの領域の先頭ｂｉｔ等であり、送信用フレームの受信後にＥＣＵ（フレームを受信したＥＣＵ１００ａ〜１００ｅ等）でそのフレームのデータに対応した処理について待機の必要の有無を示す。図１１の例によれば、フレームを受信したＥＣＵにそのフレームのデータに対応した処理を実行せず待機するよう指示する場合には、待機フラグの値を「１」にし、待機の必要がない場合には、待機フラグの値を「０」にする。フレーム内の待機フラグの値が「１」であれば、受信したＥＣＵではそのフレームを保持して、一定条件（例えば後のフレーム内の待機終了指示フラグで待機解除つまり処理の実行開始の許可が指示される等）が成立するまで受信後の処理を抑止することになる。フレーム内の待機フラグの値が「０」であれば、受信したＥＣＵではそのフレームのデータに応じた機能処理を直ちに実行可能である。フレームの転送に際して送信用フレームに付加される制御指示データのデフォルト値は０であり、待機フラグは待機不要の旨を示す状態であるが、ゲートウェイ３００ａは、不正判定処理により一定の場合に、待機指示を示すように待機フラグを設定する。
【００９８】
待機終了指示フラグは、例えば制御指示データの領域の最後尾ｂｉｔ等であり、ＥＣＵにおいて過去に受信したフレームを保持して処理の実行開始の許可を待機していたそのフレームに応じた処理についての処理方法（待機解除又は破棄）を指示するフラグである。図１１の例によれば、待機解除（つまり処理の実行開始の許可）を指示する場合には、待機終了指示フラグの値を「１」とし、破棄（つまりフレームに応じた処理を実行せずフレームを破棄すること）を指示する場合には、待機終了指示フラグの値を「０」とする。
【００９９】
待機終了指示有無フラグは、例えば制御指示データの領域の先頭ｂｉｔと最後尾ｂｉｔとの間の１ｂｉｔ等であり、待機終了指示フラグが有効であるか否かを示すフラグである。あるフレームにおける制御指示データには、そのフレームの処理の待機に係る待機フラグが含まれるが、先行するフレームについての処理方法（待機解除又は破棄）を指示する待機終了指示フラグを含む場合と含まない場合があり得る。図１１の例によれば、制御指示データにおいて、有効な待機終了指示フラグを含む場合には待機終了指示有無フラグの値を「１」とし、有効な待機終了指示フラグを含まない場合には待機終了指示有無フラグの値を「０」とする。
【０１００】
［１．１２  不正判定ルール例］
図１２は、ゲートウェイ３００ａの不正判定ルール保持部３６０が保持する不正判定ルールの一例を示す。不正判定ルールは、フレームが車載ネットワークシステム１０において予め定められたルールに則って送信された適正なものか否か（不正なものか）を判別するために用いられる。図１２では不正判定ルール保持部３６０が保持する不正判定ルールのうち一部を例示している。図１２の不正判定ルールの例は、ゲートウェイ３００ａが接続するバスで送受信される各フレームのＩＤ（メッセージＩＤ）毎についてのフレームの送信周期について示している。図１２の例では、メッセージＩＤ「１」、「２」、「３」、「４」のそれぞれのフレームが送信される周期はそれぞれ、２４、２４、１２０、９０ｍｓｅｃであることを示している。
【０１０１】
ゲートウェイ３００ａでは、図１２に例示するような周期と、一定量（例えば３ｍｓ）のマージンとに基づいて、受信したフレームと、同じＩＤの１回前に受信したフレームとの受信間隔によってフレームが適正であるか否かを判定する。例えば、バスでフレーム間の衝突が生じた場合の調停（再送制御）による受信間隔のゆらぎを考慮して、受信間隔が周期プラスマイナス一定量（例えば３ｍｓ）のマージンの範囲内であれば受信したフレームは適正と判定される。また、そのマージンの範囲より短い受信間隔で受信したフレームであっても、マージンの範囲内に受信された同じＩＤのフレームがない場合には適正と判定される。マージンの範囲より短い受信間隔で受信したフレームは、そのマージンの範囲内に受信された同じＩＤのフレームがある場合には不正と判定される。ここでは、どのＩＤのフレームについても同じ量のマージンが定められるとして説明するが、ＩＤ毎にマージンの量を相違させても良い。
【０１０２】
［１．１３  転送ルール例］
図１３は、ゲートウェイ３００ａ等の転送ルール保持部３８０が保持する転送ルールの一例を示す。図１３の転送テーブルで規定された転送ルールは、転送元のバスと転送先のバスと転送対象のＩＤ（メッセージＩＤ）とを対応付けている。転送ルールに従ってゲートウェイ３００ａは、転送を行うか否か、どのバスへと転送を行うか等を決定する。
【０１０３】
図１３の例では、バス２００ａから受信するフレームはメッセージＩＤに関わらず、バス２００ｂに転送するように設定されていることを示している。また、バス２００ｂから受信するフレームのうち、バス２００ａにはメッセージＩＤが「３」であるフレームのみが転送されるように設定されていることを示している。なお、図１３の例では、ゲートウェイ３００ｂの転送ルール保持部３８０が保持する転送ルールを合わせて示しており、バス２００ｂから受信するフレームは全てバス２００ｃに転送されるが、バス２００ｃから受信するフレームは、バス２００ｂに転送されないように設定されていることを示している。
【０１０４】
［１．１４  フレームの転送に係る動作例］
図１４は、ＥＣＵ１００ａからバス２００ａに送信したフレームをゲートウェイ３００ａが受信した際に、フレームが適正か不正かの判定を行い、所定条件が満たされた場合に、待機を指示するよう待機フラグを設定した制御指示データをフレームに含めてバス２００ｂに転送する動作例を示す。この所定条件は、受信したフレームについての転送の際において、フレームが適正か否かを決定できない状況で満たされる条件である。以下、図１４に即して各装置の動作の概要を説明する。各装置の詳細な動作については後に図１５〜図１９を用いて説明する。
【０１０５】
まず、ＥＣＵ１００ａは、バス２００ａに対してフレームを送信するフレーム送信処理を実行する（ステップＳ１０）。
【０１０６】
ゲートウェイ３００ａは、ＥＣＵ１００ａから送信されたフレームを受信する（ステップＳ２０）。
【０１０７】
ゲートウェイ３００ａは、不正判定ルールに基づいて、受信したフレームが適正か不正かを判定する不正判定処理を行う（ステップＳ３０）。この不正判定処理により、例えば攻撃者が不正に車載ネットワーク（バス２００ａ〜２００ｃ等）にアクセスして不正なフレーム（フレームが則るべき予め定められたルールに適合していないフレーム）を送信した場合に、そのフレームを転送せずに破棄することが可能となり得る。但し、ゲートウェイ３００ａは、フレームが則るべきルールへの適合の度合いが低いものの、適正であると最終的に判定（決定）される可能性があるフレームについては直ちに破棄をせず、フレームの転送の後に最終的な判定のための最終判定処理を行い得る。受信したフレームが適正か否かを即座に判定できれば、ゲートウェイ３００ａは、待機不要を示すように待機フラグが設定されている制御指示データを含めた送信用フレームを生成する。図１４では、受信したフレームが適正か否かを即座に判定（決定）できない状況であるという所定条件が満たされる例を示している。この所定条件が満たされる場合には、フレームの転送に際してフレームが適正か否かについて未決定であることを通知すべく、ゲートウェイ３００ａは、待機指示を示すように待機フラグを設定した制御指示データを含めた送信用フレームを生成する。そして、ゲートウェイ３００ａは、受信したフレームが適正か否かを最終的に判定できるタイミングで最終判定処理が実行されるようにタイマーを設定する。
【０１０８】
ゲートウェイ３００ａは、待機指示を示すように待機フラグを設定した制御指示データを含めた送信用フレームを、バス２００ｂに送信する（ステップＳ３１）。
【０１０９】
ステップＳ３１でゲートウェイ３００ａによりバス２００ｂに送信されたフレームを、ＥＣＵ１００ｃが受信する（ステップＳ３２）。
【０１１０】
ＥＣＵ１００ｃは、受信したフレームに含まれる制御指示データの待機フラグを確認して、そのフレームの受信後の処理の実行を抑止してそのフレームを保持し、次の指示を待つ待機処理を行う（ステップＳ３３）。
【０１１１】
ゲートウェイ３００ａは、ステップＳ３０に際して設定したタイマーにより、受信したフレームが適正か否かを最終的に判定できるタイミングで最終判定処理を実行する（ステップＳ４０）。図１４では、最終判定処理では、フレームが適正であったと判定した例を示している。
【０１１２】
ゲートウェイ３００ａは、最終判定処理による判定結果に応じて、待機終了指示フラグを設定し、更に待機終了指示有無フラグの値を有効な待機終了指示フラグを含む旨の値「１」とした制御指示データを含めたフレームを生成して送信する（ステップＳ４１）。なお、ゲートウェイ３００ａは、最終判定処理による判定結果が適正であれば待機解除指示を示すように待機終了指示フラグを設定し、不正であれば破棄指示を示すように待機終了指示フラグを設定する。また、有効な待機終了指示フラグを含む制御指示データは、ゲートウェイ３００ａが別途受信したフレームを転送する際の送信用フレームに格納してもよいし、転送でなく新たに生成したフレームに格納してもよい。有効な待機終了指示フラグを含む制御指示データをゲートウェイ３００ａが別途受信したフレームを転送する際の送信用フレームに格納する場合には、その制御指示データの待機フラグは、その別途受信したフレームが適正か否かを即座に判定できるか否かに応じて設定される。
【０１１３】
ステップＳ４１でゲートウェイ３００ａによりバス２００ｂに送信されたフレームを、ＥＣＵ１００ｃが受信する（ステップＳ４２）。
【０１１４】
ＥＣＵ１００ｃは、ステップＳ４２で受信したフレームに含まれる制御指示データの待機終了指示有無フラグが「１」であることを確認し、待機終了指示フラグを確認し、待機解除指示を示す場合には既に待機処理をして保持していたフレームの実行を開始する（ステップＳ４３）。この待機解除指示を受けた場合にＥＣＵ１００ｃにとってステップＳ３２で受信した待機指示は、フレームの処理の実行開始を遅延させるべき旨を示す指示であったことになり、ステップＳ４３でフレームの受信から遅延して実行が開始される。
【０１１５】
その後、ＥＣＵ１００ａは、バス２００ａに対して次のフレームを送信し（ステップＳ５０）、ゲートウェイ３００ａは、ＥＣＵ１００ａから送信されたフレームを受信する（ステップＳ６０）。
【０１１６】
［１．１５  ＥＣＵ１００ａのフレーム送信処理］
図１５は、ＥＣＵ１００ａにおけるフレーム送信処理の一例を示すフローチャートである。
【０１１７】
ＥＣＵ１００ａは、データ取得部１７０により、ＥＣＵ１００ａにつながっているセンサ等の状態を示すセンサーデータを取得し、フレーム生成部１８０に通知する（ステップＳ１０１）。
【０１１８】
ＥＣＵ１００ａは、取得したセンサーデータに基づいて、フレーム生成部１８０で送信するフレームを生成する（ステップＳ１０２）。
【０１１９】
ＥＣＵ１００ａは、フレーム生成部１８０により生成されたフレームをフレーム送受信部１１０によりバス２００ａに対して送信する（ステップＳ１０３）。ＣＡＮにおいて送信されるフレームは、送信先を指定しないため、ブロードキャストされ、バス２００ａに接続された各ノード（ゲートウェイ３００ａ等）はそのフレームを受信し得る。
【０１２０】
［１．１６  ゲートウェイ３００ａのフレーム転送処理］
図１６は、ゲートウェイ３００ａにおける、バス２００ａから受信したフレームをバス２００ｂに転送するフレーム転送処理の一例を示すフローチャートである。以下、同図に即してゲートウェイ３００ａのフレーム転送処理について説明する。
【０１２１】
ゲートウェイ３００ａは、バス２００ａに送信されたフレームを受信する（ステップＳ２０１）。
【０１２２】
ゲートウェイ３００ａは、ステップＳ２０１で受信したフレームが適正か否かについて判定する不正判定処理を行う（ステップＳ２０２）。不正判定処理（図１７参照）において必要に応じてタイマーが設定され、タイマーによりステップＳ２０５の後において最終判定処理（図１８参照）が実行され得る。
【０１２３】
ゲートウェイ３００ａは、転送ルール保持部３８０に保持する転送テーブルで定めた転送ルールを確認する（ステップＳ２０３）。
【０１２４】
ゲートウェイ３００ａは、転送テーブルに転送先のバスが定められていれば、転送のために転送フレーム（送信用フレーム）を生成する（ステップＳ２０４）。
【０１２５】
ゲートウェイ３００ａは、生成した送信用フレームをバス２００ｂに送信（ブロードキャスト）する（ステップＳ２０５）。
【０１２６】
［１．１７  ゲートウェイ３００ａの不正判定処理］
図１７は、ゲートウェイ３００ａにおける、受信したフレームの送信間隔からフレームが適正か不正かの判定を行う不正判定処理の一例を示すフローチャートである。以下、同図に即してゲートウェイ３００ａの不正判定処理について説明する。
【０１２７】
ゲートウェイ３００ａは、不正判定ルール保持部３６０が保持する不正判定ルールにより、受信したフレームに含まれるメッセージＩＤに該当する周期を取得する（ステップＳ３０１）。
【０１２８】
ゲートウェイ３００ａは、受信したフレームと同じメッセージＩＤを有する、過去に受信したフレームの受信タイミングの情報を取得する（ステップＳ３０２）。
【０１２９】
ゲートウェイ３００ａは、過去に受信したフレームと、現在受信したフレームとの受信間隔を算出する（ステップＳ３０３）。
【０１３０】
ゲートウェイ３００ａは、ステップＳ３０３で算出した受信間隔が、周期−マージンより短いか否かを判定する（ステップＳ３０４）。
【０１３１】
ゲートウェイ３００ａは、ステップＳ３０４で受信間隔が周期−マージンより短いと判定された場合には、フレームの周期が異常であり、受信したフレームが適正か否かの決定に時間を要すると判断し、転送に係る送信用フレームに含ませる制御指示データについての待機フラグを、待機指示を示すように設定する（ステップＳ３０５）。ここでは説明の便宜上、受信間隔が周期−マージンより短い場合に、受信したフレームが適正か否かの決定に時間を要すると判断することとしたが、例えば、受信間隔が周期−マージンより短い程度が予め定められた一定程度より小さい場合に限って、受信したフレームが適正か否かの決定に時間を要すると判断し、一定程度より大きく周期とずれている場合には、フレームが不正と判断することとしても良い。
【０１３２】
ステップＳ３０５に続いてゲートウェイ３００ａは、不正判定ルールで定められた正規の周期±（プラスマイナス）マージンの範囲内に同じＩＤの別のフレームを受信するかどうかに基づいて現在受信したフレームが適正か否かを後に判定する最終判定処理を起動するために、タイマーをセットする（ステップＳ３０６）。なお、ゲートウェイ３００ａは、最終判定処理での判定対象としての現在受信したフレームについての情報を最終判定処理の起動まで保持する。ステップＳ３０６においては、現在受信したフレームと同じメッセージＩＤを有するフレームの過去の受信タイミングに、正規の周期＋マージンを加算したタイミングで最終判定処理が起動されるようにタイマーがセットされる。タイマーによって起動される最終判定処理については、後に図１８を用いて説明する。
【０１３３】
ゲートウェイ３００ａは、ステップＳ３０４で受信間隔が周期−マージンより短くないと判定した場合には、受信したフレームが適正であると判断し、過去に受信したフレームの受信タイミングの情報を破棄して（ステップＳ３０７）、現在受信したフレームの受信タイミングの情報を保存する（ステップＳ３０８）。なお、受信したフレームが適正であると判断するための条件は更に加えられていても良い。また、受信したフレームが適正であると判断した場合にゲートウェイ３００ａは、転送に係る送信用フレームに含ませる制御指示データについての待機フラグを、待機不要を示すデフォルト状態のままにしておく。
【０１３４】
［１．１８  ゲートウェイ３００ａの最終判定処理］
図１８は、ゲートウェイ３００ａにおける、受信したフレームが適正か不正かの最終的な判定を行う最終判定処理の一例を示すフローチャートである。以下、同図に即してゲートウェイ３００ａの最終判定処理について説明する。
【０１３５】
ゲートウェイ３００ａは、最終判定処理での判定対象とするフレームと同じＩＤの過去のフレームの受信タイミングからの経過時間が、正規の周期±マージンの範囲内の受信タイミングで、同じＩＤの別のフレームを受信したか否かを確認する（ステップＳ４０１）。ステップＳ４０１で、正規の周期±マージンの範囲内の受信タイミングで、同じＩＤの別のフレームを受信していたと確認した場合には、ゲートウェイ３００ａは、破棄指示を示す制御指示データを送信用フレームに含ませる。即ち、この場合にはゲートウェイ３００ａは、判定対象のフレームが不正であると最終的に判定（決定）して、転送に係る送信用フレームに含ませる制御指示データに、ＥＣＵに対してフレームの処理について抑止して待機させているところのフレームを破棄するように指示する情報を設定する（ステップＳ４０２）。ステップＳ４０２ではゲートウェイ３００ａは、制御指示データの待機終了指示フラグを、破棄指示を示すように設定し、待機終了指示有無フラグを待機終了指示フラグが有効である旨を示すように設定する。
【０１３６】
ステップＳ４０１で、正規の周期±マージンの範囲内の受信タイミングで、同じＩＤの別のフレームを受信していないと確認した場合には、ゲートウェイ３００ａは、待機解除を示す制御指示データを送信用フレームに含ませる。即ち、この場合にはゲートウェイ３００ａは、判定対象のフレームが適正であると最終的に判定（決定）して、転送に係る送信用フレームに含ませる制御指示データに、ＥＣＵに対してフレームの処理について抑止して待機させているところのフレームの処理の実行開始（つまり待機解除）を指示する情報を設定する（ステップＳ４０３）。ステップＳ４０３ではゲートウェイ３００ａは、制御指示データの待機終了指示フラグを、待機解除指示を示すように設定し、待機終了指示有無フラグを待機終了指示フラグが有効である旨を示すように設定する。このとき、図１８では省略しているが、ゲートウェイ３００ａは、過去のフレームの受信タイミングの情報の破棄及び判定対象のフレームの受信タイミングの保存（ステップＳ３０７、Ｓ３０８）を行い得る。
【０１３７】
ステップＳ４０２又はステップＳ４０３の後に、ゲートウェイ３００ａは、判定対象のフレームと同じメッセージＩＤを設定して制御指示データをデータフィールドに含めたフレームを、バス２００ａに送信（ブロードキャスト）する（ステップＳ４０４）。
【０１３８】
［１．１９  ＥＣＵ１００ｃのフレーム受信処理］
図１９は、ＥＣＵ１００ｃにおけるフレーム受信処理の一例を示すフローチャートである。以下、同図に即してＥＣＵ１００ｃのフレーム受信処理について説明する。
【０１３９】
ＥＣＵ１００ｃは、バス２００ｂに送信されたフレームを受信する（ステップＳ５０１）。
【０１４０】
ＥＣＵ１００ｃは、受信したフレームのデータフィールド内の制御指示データを確認し、待機指示が含まれていないかどうかを判定する（ステップＳ５０２）。制御指示データ内の待機フラグが待機指示を示す値「１」であれば、待機指示が含まれていると判定される。待機指示が含まれていない場合（つまり待機フラグが待機不要を示す場合）には、ＥＣＵ１００ｃは、受信したフレームに応じた処理（フレームのデータに応じた機能処理等）を実行する（ステップＳ５０３）。ステップＳ５０３での処理の実行は、フレームの受信後に速やかに開始される。
【０１４１】
ステップＳ５０２で、待機指示が含まれていると判定した場合は、ＥＣＵ１００ｃは、ステップＳ５０１で受信したフレームを保持し、そのフレームに対する機能処理の実行を開始せずに、一定時間、次の待機終了指示の受信を待つ（ステップＳ５０４）。つまり、ステップＳ５０４ではＥＣＵ１００ｃは、ステップＳ５０１で受信したフレームと同一ＩＤを有するフレームであって制御指示データの待機終了指示有無フラグが有効な待機終了指示フラグが有ることを示すフレームの受信を待機する。この一定時間は、待機終了指示が送信されるために十分な程度の時間である。一定時間経過しても、待機終了指示が受信されない場合には、ＥＣＵ１００ｃは、保持しているフレームについての待機を解除し、そのフレームを破棄する（ステップＳ５０７）。
【０１４２】
ステップＳ５０４で、制御指示データとして有効な待機終了指示フラグを含む、同一ＩＤを持つフレームが受信された場合には、ＥＣＵ１００ｃは、その待機終了指示フラグが待機解除を指示するものであるか否かを判別する（ステップＳ５０５）。つまり、ＥＣＵ１００ｃは、処理の実行について待機しているフレームの処理を実行開始する指示が制御指示データで示されているか否かを判別する。
【０１４３】
ステップＳ５０５で、待機解除が指示されていると判別した場合にはＥＣＵ１００ｃは、処理の実行について待機しているフレームについての待機状態を解除し、そのフレームに応じた機能処理の実行を開始する（ステップＳ５０６）。また、ステップＳ５０５で、待機解除ではなく破棄が指示されていると判別した場合（待機終了指示フラグが破棄を指示すると判別した場合）には、ＥＣＵ１００ｃは、待機しているフレームを破棄する（ステップＳ５０７）。
【０１４４】
［１．２０  実施の形態１の効果］
実施の形態１に係る車載ネットワークシステム１０では、ゲートウェイ３００ａがフレーム（データフレーム）のデータフィールドに制御指示データを設定してフレームの送信を行うことで、ＥＣＵにおける受信したフレームの処理をコントロールする。ゲートウェイ３００ａは、制御指示データに、フレームを受信するＥＣＵでの処理を制限する制御情報（例えば待機指示を示すように設定した待機フラグ）を含ませ得る。このように、ゲートウェイ３００ａが、受信したフレームの転送に際して、待機指示を表すように制御指示データを設定した送信用フレームを送信することで、受信したフレームが適正か否かの判定処理に要する時間の確保が可能になる。また、受信したフレームが最終的に適正と判定される可能性がある場合においてフレームの転送を止めてしまうのではなく、待機指示を付してフレームの転送を行うことで、受信するＥＣＵ側でフレームが到着しないことによって異常処理等を実行してしまうことを防止できる。つまり、転送に際してフレームに付加される制御指示データにより、フレームを受信するＥＣＵにおいては、フレームを送信する正規のＥＣＵが故障してフレームが届かない状態ではないことを識別可能となる。また、ゲートウェイ３００ａで、フレームが適正か不正かを判定することで、個別のＥＣＵ１００ａ〜１００ｅにそのような判定の機能を有する必要がなくなり、システム全体としてのコストを抑制でき、不正判定ルールの更新等を容易化できる。
【０１４５】
（実施の形態２）
以下、実施の形態１で示した車載ネットワークシステム１０の一部を変形した車載ネットワークシステム２０について説明する。
【０１４６】
本実施の形態に係る車載ネットワークシステム２０では、車載ネットワークにおいて、データフィールド内にデータとチェックサムとを含めたフレームが送受信されるようにしている。そして、バス間でフレームを転送するゲートウェイ装置がフレームに制御指示データを付加するのではなく、チェックサムへ必要に応じて制御情報を重畳させる。本実施の形態においてゲートウェイ装置（ゲートウェイ１３００ａ、１３００ｂ）がチェックサムへ重畳させる情報は、例えば、実施の形態１で示した制御指示データの待機フラグによる待機指示、待機終了指示フラグによる待機解除指示、及び、待機終了指示フラグによる破棄指示である。また、車載ネットワークシステム２０では、ゲートウェイ装置は、受信したフレームが適正か否かの最終的な判定を、車両外のサーバ４００との通信によって行う。
【０１４７】
［２．１  車載ネットワークシステム２０の全体構成］
図２０は、実施の形態２に係る車載ネットワークシステム２０の全体構成を示す図である。車載ネットワークシステム２０は、バス２００ａ、２００ｂ、２００ｃと、ゲートウェイ１３００ａ、１３００ｂ、及び、各種機器に接続されたＥＣＵ１１００ａ〜１１００ｅ等のＥＣＵといったバスに接続された各ノードと、車両外のネットワーク９０とサーバ４００とを含んで構成される。
【０１４８】
この車載ネットワークシステム２０は、実施の形態１で示した車載ネットワークシステム１０（図１参照）におけるゲートウェイ３００ａ、３００ｂ及びＥＣＵ１００ａ〜１００ｅを、ゲートウェイ１３００ａ、１３００ｂ及びＥＣＵ１１００ａ〜１１００ｅに置き換えて、サーバ４００及びネットワーク９０を追加したものである。実施の形態１と同一の構成については、図２０において同一の符号を付加しており、説明を省略する。ここで説明しない点については、車載ネットワークシステム２０は、車載ネットワークシステム１０と同様である。
【０１４９】
ＥＣＵ１１００ａ〜１１００ｅは、いずれかのバスと接続され、また、それぞれエンジン１０１、ブレーキ１０２、ドア開閉センサ１０３、窓開閉センサ１０４、コーナーセンサ１０５に接続されている。ＥＣＵ１１００ａ〜１１００ｅは、基本的には実施の形態１で示したＥＣＵ１００ａ〜１００ｅと同様の機能を有し、更に、フレームに含ませるチェックサムを取り扱うための機能が付加されている。ＥＣＵ１１００ａ〜１１００ｅのそれぞれは、接続されている機器の状態を取得し、定期的に状態を表すデータと、ＩＤ、ＤＬＣ及びそのデータから算出するチェックサムとを含むフレーム等をネットワーク（つまりバス）に送信している。また、ＥＣＵ１１００ａ〜１１００ｅは、受信したフレームにおけるチェックサムを確認し、チェックサムに重畳されている制御情報を抽出して、受信したフレームのデータに応じた機能処理を実行するか待機するか等に係る制御を行う。
【０１５０】
ゲートウェイ１３００ａ、１３００ｂは、異なる複数の通信路を接続して通信路間でデータを転送するゲートウェイ装置である。ゲートウェイ１３００ａは、ＥＣＵ１１００ａ及びＥＣＵ１１００ｂがつながるバス２００ａと、ＥＣＵ１１００ｃ及びＥＣＵ１１００ｄがつながるバス２００ｂと接続している。また、ゲートウェイ１３００ｂは、ＥＣＵ１１００ｃ及びＥＣＵ１１００ｄがつながるバス２００ｂと、ＥＣＵ１１００ｅがつながるバス２００ｃと、接続している。
【０１５１】
ゲートウェイ１３００ａ、１３００ｂは、一方のバスから受信したフレームについて、適正か不正かに関連した条件判定を行って、必要に応じて待機指示をフレーム内のチェックサムに重畳させて、他のバスに転送する機能を有する。ゲートウェイ１３００ａ、１３００ｂにおけるフレームの転送は、一方のバスから受信したフレームの内容に基づく情報を含む送信用フレームを生成して、その送信用フレームのＥＣＵにおける受信後の処理の制限に関する情報（例えば待機指示）を必要に応じてその送信用フレームのデータフィールド内のチェックサムに含めて、その送信用フレームを他のバスに送信することで実現される。また、ゲートウェイ１３００ａ、１３００ｂは、ネットワーク９０を介して車両外のサーバ４００との通信を行い、バスから受信したフレームについての情報を送信して、適正か不正かの判定結果を受信する機能を持つ。また、ゲートウェイ１３００ａ、１３００ｂは、受信したフレームを転送するかしないかを接続されたバス間毎に切り替えることも可能である。ゲートウェイ１３００ａ、１３００ｂも一種のＥＣＵである。
【０１５２】
サーバ４００は、ゲートウェイ１３００ａ、１３００ｂと、ネットワーク９０を介して通信し、車載ネットワークで送信されるフレームの情報を取得して蓄積するコンピュータである。サーバ４００は、例えば１日１回等の周期で、ゲートウェイ１３００ａ等からバスで受信されたフレームに関する情報を取得して蓄積し管理し得る。サーバ４００は、蓄積している情報に基づいて、ゲートウェイ１３００ａ、１３００ｂから情報が送信された判定対象のフレームについて適正か不正かを判定して、その判定結果をゲートウェイ１３００ａ、１３００ｂに通知する機能を持つ。ネットワーク９０を介した通信には、無線通信、或いは、有線通信のいかなる通信プロトコルを適用しても良い。
【０１５３】
［２．２  フレームのデータフィールドのフォーマット例］
図２１は、ＥＣＵ１１００ａ〜１１００ｅが送信するフレームのデータフィールドのフォーマットの一例を示す図である。このフォーマットのフレームが、転送を行うゲートウェイ１３００ａ、１３００ｂによっても送信される。
【０１５４】
データフィールドには、センサーデータの値を示すデータと、ＩＤ、ＤＬＣ及びそのデータから算出されるチェックサムとが含まれる。なお、ＩＤ、ＤＬＣ及びデータの全てをチェックサムの算出に用いる必要はなく、任意の組み合わせ等が利用され得る。チェックサムは、フレームの一部の内容であるＩＤ、ＤＬＣ或いはデータ等の値が伝送途中で変化していないことを確認するための、そのフレームの一部の内容を反映した検証用の情報である。フレームの少なくとも一部の内容を反映した値となるようにチェックサムをフレームの送信元のＥＣＵにおいて設定し、フレームを受信したＥＣＵではチェックサムを、フレームのその一部の内容に基づいて検証する。
【０１５５】
［２．３  チェックサムの算出例］
図２２は、チェックサムの算出に用いる情報の一例を示す図である。
【０１５６】
ＥＣＵ１１００ａ〜１１００ｅは、例えば、図２２に示すように、フレームの１１ｂｉｔのＩＤ（メッセージＩＤ）の上位８ｂｉｔと、４ｂｉｔのＤＬＣと、８ｂｉｔ（１Ｂｙｔｅ）ずつに分けたＤＬＣ分のデータとを全て加算することでチェックサムを算出する。この例においてチェックサムは８ｂｉｔであり、チェックサムの算出においてＩＤは、８ｂｉｔとなるよう上位ｂｉｔのみを抽出し、残りを削除する。またＤＬＣも、８ｂｉｔとなるよう、残り４ｂｉｔ（下位４ｂｉｔ）を「０」のｂｉｔ値でパディングする。全て８ｂｉｔに整形したＩＤ、ＤＬＣ、データ８ｂｉｔ分ずつを全て加算することでチェックサムが算出される。
【０１５７】
ゲートウェイ１３００ａ、１３００ｂは、実施の形態１で示したゲートウェイ３００ａ、３００ｂが設定した制御指示データの待機フラグによる待機指示、待機終了指示フラグによる待機解除指示、及び、待機終了指示フラグによる破棄指示のそれぞれに相当する各制御情報を、転送に際して必要に応じてチェックサムに重畳する。具体例としては、ＤＬＣのパディング部分の下位４ｂｉｔのうち、先頭の１ｂｉｔを待機指示の場合に「１」のｂｉｔ値にし、次の１ｂｉｔを待機解除指示の場合に「１」のｂｉｔ値にし、次の１ｂｉｔを破棄指示の場合に「１」のｂｉｔ値にして、チェックサムの算出を行う。ゲートウェイ１３００ａ、１３００ｂは、受信したフレームが適正か不正かの最終的な判定（決定）をその受信の際に完了できない場合に待機指示を示す制御情報を、フレームのチェックサムに重畳させて、そのフレームを送信することでフレームの転送を行う。また、ゲートウェイ１３００ａ、１３００ｂは、フレームについて待機指示をした後においてそのフレームが適正か不正かの最終的な判定（決定）が完了した際には、適正であれば待機解除指示、或いは、不正であれば破棄指示を示す制御情報をチェックサムに重畳させたフレームを送信する。
【０１５８】
［２．４  ＥＣＵ１１００ａの構成］
ＥＣＵ１１００ａは、基本的にＥＣＵ１００ａと同様の構成（図３参照）を有する。但し、ＥＣＵ１１００ａでは、フレーム生成部１８０では生成するフレームにチェックサムを付加する。また、フレーム処理部１５０では、フレーム内のチェックサムの確認を行って、待機指示、待機解除指示或いは破棄指示といった制御情報が付されていれば抽出して、その制御情報に応じて処理を抑止してフレームについて待機する、待機を解除して待機していたフレームの処理の実行を開始する、或いは、待機していたフレームを破棄する。
【０１５９】
［２．５  ゲートウェイ１３００ａの構成］
図２３は、ゲートウェイ１３００ａの構成図である。ゲートウェイ１３００ａは、フレーム送受信部３１０と、フレーム解釈部３２０と、受信ＩＤ判断部３３０と、受信ＩＤリスト保持部３４０と、不正判定処理部１３５０と、外部通信部１３５１と、不正判定ルール保持部３６０と、転送処理部３７０と、転送ルール保持部３８０と、フレーム生成部１３９０とを含んで構成される。これらの各構成要素の各機能は、例えばゲートウェイ１３００ａにおける通信回路、メモリに格納された制御プログラムを実行するプロセッサ或いはデジタル回路等により実現される。なお、ゲートウェイ１３００ｂもゲートウェイ１３００ａと基本的に同様の構成を備える。なお、ゲートウェイ１３００ａの構成のうち、実施の形態１で示したゲートウェイ３００ａ（図１０参照）と同一の構成については図２３で同一の符号を付加し、説明を省略する。
【０１６０】
不正判定処理部１３５０は、フレーム解釈部３２０から通知されるＩＤフィールドの値を受け取り、不正判定ルール保持部３６０に保持している不正判定ルール（メッセージＩＤと、フレームが送信される周期とを対応付けた情報）に基づいて、受信されたフレームが不正か適正かに関する不正判定処理を行う。不正判定処理では、フレームの受信に際して、適正か否かを決定できるか否かを判別してその判別結果に応じて、転送するフレームのチェックサムに待機指示を示す制御情報を重畳するか否かを選択して選択結果を転送処理部３７０へ通知する。この選択結果は例えば実施の形態１で示した制御指示データの待機フラグと同様である。不正判定処理部１３５０は、フレームの受信時に迅速に適正か否かを決定できない場合には、チェックサムに待機を指示する制御情報を重畳するように選択結果を転送処理部３７０に通知する。この選択結果は転送処理部３７０を経てフレーム生成部１３９０に伝達され、生成するフレームに含ませるチェックサムの算出に用いられる。なお、不正判定処理部１３５０は、フレームの受信時に迅速に適正か否かを決定できない場合において、受信したフレームのメッセージＩＤ、データフィールドの内容、及び、受信タイミング（時刻）等の情報を、外部通信部１３５１を介してサーバ４００に通知することでその受信したフレームを判定対象として最終的な判定を依頼する。この依頼を受けるとサーバ４００では、判定対象のフレームが適正であるか不正であるかが判定（決定）され、その判定結果がゲートウェイ３００ａの外部通信部１３５１を介して不正判定処理部１３５０に通知される。フレームの受信時に迅速に適正か否かを決定できない場合については、実施の形態１で示した不正判定処理部３５０と同様に、フレームの受信間隔が周期−マージンより短い場合である。なお、不正判定処理部１３５０は、フレームの受信間隔が周期−マージンより短い程度が予め定められた一定程度より小さい場合に限って、受信したフレームが適正か否かをフレームの受信時に迅速に適正か否かを決定できないと判断し、一定程度より大きく周期とずれている場合には、フレームが不正と判断することとしても良い。不正判定処理部１３５０は、サーバ４００での判定結果に応じて、転送処理部３７０を介してフレーム生成部１３９０にフレームを生成させて、そのフレームが、待機を指示する制御情報を含むフレームを先に送信したバスへ送信されるように制御する。即ち、不正判定処理部１３５０は、サーバ４００で不正と判定されていればチェックサムに破棄を指示する制御情報を重畳させ、適正と判定されていればチェックサムに待機解除を指示する制御情報を重畳させたフレームが、送信されるように制御する。
【０１６１】
外部通信部１３５１は、不正判定処理部１３５０から通知されたデータに従ってサーバ４００にデータを送信して判定を依頼（要求）する。また、サーバ４００から通知された判定結果を、不正判定処理部１３５０に通知する。即ち、外部通信部１３５１は、自装置（ゲートウェイ１３００ａ）を搭載する車両の外部の装置に対して、フレームが適正か否かについての判定（決定）の要求を送信した後にその決定の結果（判定結果）を受信する。
【０１６２】
フレーム生成部１３９０は、フレーム解釈部３２０から通知されたエラーフレームの送信を指示する通知に従い、エラーフレームを構成し、エラーフレームをフレーム送受信部３１０へ通知して送信させる。また、フレーム生成部１３９０は、転送処理部３７０より通知されたメッセージＩＤとデータと制御指示データ（待機、待機解除或いは破棄を指示する制御情報の指定）とを用いてチェックサムを算出してフレームを構成し、そのフレーム及びバス情報をフレーム送受信部３１０へ通知する。
【０１６３】
［２．６  サーバ４００の構成］
図２４は、サーバ４００の構成図である。サーバ４００は、通信部４１０と、不正判定部４２０と、車両データ保持部４３０とを含んで構成される。
【０１６４】
通信部４１０は、ネットワーク９０を介してゲートウェイ１３００ａ、１３００ｂと通信する。また、ゲートウェイ１３００ａ、１３００ｂからの通知された、車載ネットワークで送信されるフレームの情報を車両データ保持部４３０へと通知する。また、不正判定部４２０から受けた通知内容を、ゲートウェイ１３００ａ、１３００ｂに通知する。
【０１６５】
不正判定部４２０は、サーバ４００が、フレームが適正か否かについての最終的な判定をゲートウェイ１３００ａ等に依頼された際に、通信部４１０を介して受信した情報と、車両データ保持部４３０に蓄積している過去に取得した車載ネットワークで送信されるフレームに関する情報とに基づいて、判定対象のフレームが適正か不正かを判定する。不正判定部４２０は、判定結果を通信部４１０に通知する。
【０１６６】
車両データ保持部４３０は、車載ネットワークで送信されるフレームの情報である車両データを保持する機能を有する。
【０１６７】
［２．７  車両データ例］
図２５は、サーバ４００が保持する車両データの一例を示す図である。
【０１６８】
同図は、車両データとして、特定の車両に搭載しているＥＣＵが送信するフレームのメッセージＩＤ毎に、これまでの周期異常発生回数を記録している例を示す。サーバ４００は、ゲートウェイ１３００ａ、１３００ｂから、車載ネットワークで送信されたフレームの受信時刻等の情報を受信しているので、この情報を蓄積し、例えば随時フレームの周期を解析して周期異常が生じている回数を記録している。同図に例示する車両データは、１台の車両の情報について示したが、サーバ４００は複数の車両それぞれについての情報を保持し得る。
【０１６９】
［２．８  ＥＣＵ１１００ａのフレーム送信処理］
図２６は、ＥＣＵ１１００ａにおけるフレーム送信処理の一例を示すフローチャートである。同図において実施の形態１で示したＥＣＵ１００ａのフレーム送信処理（図１５参照）と同じステップについては、同じ符号を付しており、ここでは説明を適宜省略する。
【０１７０】
ＥＣＵ１１００ａは、ステップＳ１０１で取得したセンサーデータに基づいて、フレーム生成部１８０で、データフィールド内のデータの後にチェックサムを含めて、送信するフレームを生成する（ステップＳ１１０２）。ＥＣＵ１１００ａは、図２２で示した情報からチェックサムを算出する。そして、ステップＳ１０３で、ＥＣＵ１１００ａは、生成したフレームをバス２００ａに送信する。
【０１７１】
［２．９  ゲートウェイ１３００ａのフレーム転送処理］
図２７は、ゲートウェイ１３００ａにおける、バス２００ａから受信したフレームをバス２００ｂに転送するフレーム転送処理の一例を示すフローチャートである。同図において実施の形態１で示したゲートウェイ３００ａのフレーム転送処理（図１６参照）と同じステップについては、同じ符号を付しており、ここでは説明を適宜省略する。
【０１７２】
ゲートウェイ１３００ａは、ステップＳ２０１でバス２００ａから受信したフレームが適正か否かについて判定する不正判定処理を行う（ステップＳ１２０２）。ゲートウェイ１３００ａは不正判定処理では必要に応じてサーバ４００に判定を依頼する。不正判定処理については、図２８を用いて後に説明する。
【０１７３】
ゲートウェイ１３００ａは、転送ルールを定める転送テーブルに転送先のバスが定められていれば、転送のために転送フレーム（チェックサムを含む送信用フレーム）を生成する（ステップＳ１２０４）。チェックサムを含む送信用フレームを生成する際には、ゲートウェイ１３００ａは、ステップＳ１２０２での不正判定処理の結果に基づき、フレームの受信時に迅速に適正か否かを決定できない場合に限りチェックサムに待機を指示する制御情報を重畳し、その他の場合には図２２で示した情報からチェックサムを算出する。そしてステップＳ２０５で、ゲートウェイ１３００ａは、チェックサム付きの送信用フレームをバス２００ｂに送信（ブロードキャスト）する。
【０１７４】
［２．１０  ゲートウェイ１３００ａの不正判定処理］
図２８は、ゲートウェイ１３００ａにおける、受信したフレームの送信間隔からフレームが適正か不正かの判定を行う不正判定処理の一例を示すフローチャートである。同図において実施の形態１で示したゲートウェイ３００ａの不正判定処理（図１７参照）と同じステップについては、同じ符号を付しており、ここでは説明を適宜省略する。
【０１７５】
ゲートウェイ１３００ａは、ステップＳ３０４で受信間隔が周期−マージンより短いと判定された場合には、フレームの周期が異常であり、受信したフレームが適正か否かの決定に時間を要すると判断し、送信用フレームに含ませるチェックサムに待機指示を示す制御情報を重畳するように設定する（ステップＳ１３０５）。ゲートウェイ１３００ａは例えば制御指示データの待機フラグを、待機指示を示すように設定して、制御指示データを、転送処理部３７０を介してフレーム生成部１３９０に伝達する。そして、フレーム生成部１３９０では、その制御指示データに基づいてチェックサムに待機指示を示す制御情報を重畳させる。
【０１７６】
ステップＳ１３０５に続いてゲートウェイ１３００ａは、受信したフレームのメッセージＩＤと、データフィールドの内容と、受信タイミング（時刻）の情報を、サーバ４００に通知することでその受信したフレームを判定対象として最終的な判定を依頼する（ステップＳ１３０６）。ゲートウェイ１３００ａは、サーバ４００に判定を依頼した場合には、後にサーバ４００からの判定結果を得るためのサーバ判定対応処理を行う。
【０１７７】
［２．１１  ゲートウェイ１３００ａのサーバ判定対応処理］
図２９は、ゲートウェイ１３００ａがサーバ４００に判定を依頼した後に行うサーバ判定対応処理の一例を示すフローチャートである。以下、同図に即してゲートウェイ１３００ａのサーバ判定対応処理について説明する。
【０１７８】
ゲートウェイ１３００ａは、サーバ４００から判定結果を受信する（ステップＳ１４００）。
【０１７９】
サーバ４００の判定結果が、判定対象のフレームが不正であることを示す場合には（ステップＳ１４０１）、ゲートウェイ１３００ａは、チェックサムに破棄を指示する制御情報を重畳するように設定する（ステップＳ１４０２）。ゲートウェイ１３００ａは例えば制御指示データの待機終了指示フラグを、破棄指示を示すように設定して、制御指示データを、転送処理部３７０を介してフレーム生成部１３９０に伝達する。そして、フレーム生成部１３９０では、その制御指示データに基づいてチェックサムに破棄指示を示す制御情報を重畳させる。
【０１８０】
サーバ４００の判定結果が、判定対象のフレームが不正でない（適正である）ことを示す場合には（ステップＳ１４０１）、ゲートウェイ１３００ａは、チェックサムに待機解除（つまりフレームに対する機能処理の実行開始）を指示する制御情報を重畳するように設定する（ステップＳ１４０３）。ゲートウェイ１３００ａは例えば制御指示データの待機終了指示フラグを、待機解除指示を示すように設定して、制御指示データを、転送処理部３７０を介してフレーム生成部１３９０に伝達する。そして、フレーム生成部１３９０では、その制御指示データに基づいてチェックサムに待機解除指示を示す制御情報を重畳させる。図２９では省略しているが、ゲートウェイ１３００ａは、過去のフレームの受信タイミングの情報の破棄及び判定対象のフレームの受信タイミングの保存（ステップＳ３０７、Ｓ３０８）を行い得る。
【０１８１】
ステップＳ１４０２又はステップＳ１４０３の後に、ゲートウェイ１３００ａは、判定対象のフレームと同じメッセージＩＤを設定して待機解除或いは破棄指示を示す制御情報を重畳したチェックサムをデータフィールドに含めたフレームを、バス２００ａに送信（ブロードキャスト）する（ステップＳ１４０４）。
【０１８２】
［２．１２  サーバ４００の動作例］
図３０は、サーバ４００が、ゲートウェイ１３００ａからの判定対象のフレームについて適正か不正かの判定を依頼された場合に行う判定処理の動作例を示すフローチャートである。
【０１８３】
サーバ４００は、判定の依頼としてのデータ（判定対象のフレームのメッセージＩＤ、データフィールドの内容、受信タイミング（時刻）等の情報）を受信する（ステップＳ１６０１）。
【０１８４】
サーバ４００は、車両データ（図２５参照）に基づいて、判定対象のフレームのメッセージＩＤのフレームでこれまでに度々（一定数以上）の周期異常が発生しているか否かを確認し（ステップＳ１６０２）、度々周期異常が発生しているのであれば、判定対象のフレームが適正であると判定する（ステップＳ１６０３）。また、度々周期異常が発生していないのであれば、サーバ４００は、判定対象のフレームが不正であると判定する（ステップＳ１６０４）。
【０１８５】
ステップＳ１６０３又はステップＳ１６０４に続いて、判定対象のフレームが適正か不正かについての判定結果をサーバ４００は、判定の依頼元のゲートウェイ１３００ａに送信する（ステップＳ１６０５）。
【０１８６】
［２．１３  ＥＣＵ１１００ｃのフレーム受信処理］
図３１は、ＥＣＵ１１００ｃにおけるフレーム受信処理の一例を示すフローチャートである。同図において実施の形態１で示したＥＣＵ１００ｃのフレーム受信処理（図１９参照）と同じステップについては、同じ符号を付しており、ここでは説明を適宜省略する。
【０１８７】
ＥＣＵ１１００ｃは、ステップＳ５０１で受信したフレームのデータフィールド内のチェックサムを確認するためのチェックサム確認処理を行う（ステップＳ１５１１）。チェックサム確認処理によりチェックサムに待機指示、待機解除指示或いは破棄指示が重畳されている場合に、これらの各指示を抽出する。
【０１８８】
次に、ＥＣＵ１１００ｃは、受信したフレームに、待機指示が含まれていないかどうかを判定する（ステップＳ１５０２）。チェックサム確認処理により、待機指示が抽出されていれば待機指示が含まれていると判定される。待機指示が含まれていない場合（つまり待機指示を示す制御情報がチェックサムに重畳されていない場合）には、ＥＣＵ１１００ｃは、受信したフレームに応じた処理（フレームのデータに応じた機能処理等）を実行する（ステップＳ５０３）。
【０１８９】
ステップＳ１５０２で、待機指示が含まれていると判定した場合は、ＥＣＵ１１００ｃは、ステップＳ５０１で受信したフレームを保持し、そのフレームに対する機能処理の実行を開始せずに、一定時間、次の待機終了指示（待機解除指示或いは破棄指示）の受信を待つ（ステップＳ１５０４）。つまり、ステップＳ１５０４ではＥＣＵ１１００ｃは、ステップＳ５０１で受信したフレームと同一ＩＤを有するフレームであってチェックサムに待機解除或いは破棄を指示する制御情報が重畳されているフレームの受信を待機する。なお、制御情報が重畳されているか否かについてはステップＳ１５１１と同様のチェックサム確認処理を行うことで判定する。一定時間経過しても、待機終了指示が受信されない場合には、ＥＣＵ１１００ｃは、保持しているフレームについての待機を解除し、そのフレームを破棄する（ステップＳ５０７）。
【０１９０】
ステップＳ１５０４で、待機終了指示の受信がなされたと判定した場合は、ＥＣＵ１１００ｃは、処理の指示つまり待機解除指示であるかを判定する（ステップＳ１５０５）。待機解除指示は、待機フレーム（待機しているフレーム）についての機能処理の実行開始の指示である。つまり、ＥＣＵ１１００ｃは、処理の実行について待機しているフレームの処理を実行開始する指示としての待機解除を指示する制御情報がチェックサムに重畳されているか否かを判定する。なお、待機解除を指示する制御情報が重畳されているか否かについてはステップＳ１５１１と同様のチェックサム確認処理を行うことで判定する。
【０１９１】
ステップＳ１５０５で、待機解除が指示されていると判別した場合にはＥＣＵ１１００ｃは、処理の実行について待機しているフレームについての待機状態を解除し、そのフレームに応じた機能処理の実行を開始する（ステップＳ５０６）。また、ステップＳ１５０５で、待機解除ではなく破棄を指示する制御情報がチェックサムに重畳されていると判定した場合には、ＥＣＵ１１００ｃは、待機しているフレームを破棄する（ステップＳ５０７）。
【０１９２】
［２．１４  ＥＣＵ１１００ｃのチェックサム確認処理］
図３２は、ＥＣＵ１１００ｃにおけるチェックサム確認処理の一例を示すフローチャートである。
【０１９３】
ＥＣＵ１１００ｃは、受信したフレームに含まれる、メッセージＩＤと、ＤＬＣと、データとを用いて図２２に示すようにチェックサムを算出する通常の計算を行い、その通常の計算結果と受信したフレーム内のチェックサムとが、一致するかどうかを確認する（ステップＳ１７０１）。一致すれば、待機指示等の制御情報がチェックサムに重畳されていなかったことになる。
【０１９４】
ステップＳ１７０１で、受信したフレーム内のチェックサムが、チェックサムの通常の計算結果と一致しなかった場合には、ＥＣＵ１１００ｃは、受信したフレームに含まれるメッセージＩＤ、ＤＬＣ及びデータと、ＤＬＣをパディングする部分の１ｂｉｔに「１」を設定した待機指示の制御情報とに基づいてチェックサムを算出する計算を行い、その計算結果と受信したフレーム内のチェックサムとが一致するかどうかを確認する（ステップＳ１７０２）。一致すれば、待機指示の制御情報がチェックサムに重畳されていたことになり、ＥＣＵ１１００ｃはその待機指示を抽出する（ステップＳ１７０３）。
【０１９５】
ステップＳ１７０２で、受信したフレーム内のチェックサムが、チェックサムに待機指示の制御情報が重畳されているときの計算結果と一致しなかった場合には、ＥＣＵ１１００ｃは、受信したフレームに含まれるメッセージＩＤ、ＤＬＣ及びデータと、ＤＬＣをパディングする部分の別の１ｂｉｔに「１」を設定した待機解除指示の制御情報とに基づいてチェックサムを算出する計算を行い、その計算結果と受信したフレーム内のチェックサムとが一致するかどうかを確認する（ステップＳ１７０４）。一致すれば、待機解除指示の制御情報がチェックサムに重畳されていたことになり、ＥＣＵ１１００ｃはその待機解除指示を抽出する（ステップＳ１７０５）。
【０１９６】
ステップＳ１７０４で、受信したフレーム内のチェックサムが、チェックサムに待機解除指示の制御情報が重畳されているときの計算結果と一致しなかった場合には、ＥＣＵ１１００ｃは、受信したフレームに含まれるメッセージＩＤ、ＤＬＣ及びデータと、ＤＬＣをパディングする部分の更に別の１ｂｉｔに「１」を設定した破棄指示の制御情報とに基づいてチェックサムを算出する計算を行い、その計算結果と受信したフレーム内のチェックサムとが一致するかどうかを確認する（ステップＳ１７０６）。一致すれば、破棄指示の制御情報がチェックサムに重畳されていたことになり、ＥＣＵ１１００ｃはその破棄指示を抽出する（ステップＳ１７０７）。
【０１９７】
ステップＳ１７０６で、受信したフレーム内のチェックサムが、チェックサムに破棄指示の制御情報が重畳されているときの計算結果と一致しなかった場合には、ＥＣＵ１１００ｃは、受信したフレームのチェックサムの検証に失敗したため、エラー処理（フレームの処理の停止等）を行って、以後そのフレームについての処理を行わない（ステップＳ１７０８）。
【０１９８】
［２．１５  実施の形態２の効果］
実施の形態２に係る車載ネットワークシステム２０では、ゲートウェイ１３００ａがフレーム（データフレーム）のデータフィールド内のチェックサムに制御情報を重畳してフレームの送信を行うことで、ＥＣＵにおける受信したフレームの処理をコントロールする。ゲートウェイ１３００ａは、チェックサムに、フレームを受信するＥＣＵでの処理を制限する制御情報（例えば待機指示を示すように設定した制御情報）を重畳し得る。このように、ゲートウェイ１３００ａが、受信したフレームの転送に際して、待機指示を表すようにチェックサムを設定した送信用フレームを送信することで、受信したフレームが適正か否かの判定処理に要する時間の確保が可能になる。このため、車両外部のサーバ４００と通信してサーバ４００に判定を行わせる時間が確保され得る。また、各ＥＣＵがフレームに格納しているチェックサムの領域に制御情報が重畳されるので、ゲートウェイ１３００ａがフレームの転送に際して、フレームのデータ長を長くすることがない。また、受信したフレームが最終的に適正と判定される可能性がある場合においてフレームの転送を止めてしまうのではなく、待機指示を付してフレームの転送を行うことで、受信するＥＣＵ側でフレームが到着しないことによって異常処理等を実行してしまうことを防止できる。つまり、転送に際してフレームのチェックサムに重畳される制御情報により、フレームを受信するＥＣＵにおいては、フレームを送信する正規のＥＣＵが故障してフレームが届かない状態ではないことを識別可能となる。また、ゲートウェイ１３００ａ及びサーバ４００で、フレームが適正か不正かを判定することで、個別のＥＣＵ１００ａ〜１００ｅにそのような判定の機能を有する必要がなくなり、システム全体としてのコストを抑制でき、不正判定ルールの更新等を容易化できる。
【０１９９】
（他の実施の形態）
以上のように、本発明に係る技術の例示として実施の形態１、２を説明した。しかしながら、本発明に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施態様に含まれる。
【０２００】
（１）上記実施の形態では、ＣＡＮプロトコルにおけるデータフレームを標準ＩＤフォーマットで記述しているが、拡張ＩＤフォーマットであっても良い。
【０２０１】
（２）上記実施の形態１では、制御指示データをデータフィールドに含めているが、データフィールド内のどこに含めても良いし、他のフィールドに含めても良い。例えば、拡張ＩＤフィールドや、ＤＬＣフィールドの一部等に含んでも良い。拡張ＩＤフィールドは、拡張ＩＤフォーマットにおいて、ベースＩＤを格納する１１ｂｉｔ長のフィールドの次の１ｂｉｔ長のＳＲＲ（Substitute Remote Request）ｂｉｔの更に次の１ｂｉｔ長のＩＤＥ（Identifier Extension）ｂｉｔに後続し、１８ｂｉｔ長の拡張ＩＤを格納するフィールドである。
【０２０２】
（３）上記実施の形態２では、ゲートウェイ１３００ａが、待機指示、待機解除指示或いは破棄指示等を示す制御情報をフレームのデータフィールド内のチェックサムに重畳させるように、待機指示等を表わす制御情報をチェックサムの算出に用いるようにしている。しかし制御情報を重畳させる領域は、フレーム内の他の領域であっても良い。例えば、制御情報を例えばＣＲＣフィールドに重畳させても良いし、ＥＣＵがフレーム内にメッセージ認証コード（ＭＡＣ：Message Authentication Code）を設定する場合において、制御情報をＭＡＣに重畳させても良い。ＭＡＣは、例えばＥＣＵ、ゲートウェイ間で持つ共通鍵を利用して、例えばフレームのデータ、フレームの送信毎にカウントされるカウンタ等に基づいて生成され、その生成のための算出式において制御情報を含ませ得る。また、チェックサムを、データフィールド内のどこに含めても良いし、データフィールド以外に含めても良く、例えば拡張ＩＤフィールドに含めても良い。
【０２０３】
（４）上記実施の形態１では、有効な待機終了指示フラグを設定した制御指示データを、受信して待機させたフレームと同一のＩＤを持つ新たなフレームとして送信する例を示したが、ＥＣＵ１００ａから送信される次のフレームを転送する際の送信用フレームに制御指示データとして含ませても良い。また、実施の形態１では、制御指示データは、待機終了指示フラグにより１つ前のフレームの待機解除或いは破棄を指示する例を示したが、任意の個数前を示すデータを含ませて、待機解除或いは破棄の対象となるフレームを指定するようにしても良い。また、実施の形態１では、ゲートウェイ３００ａが、ステップＳ４０１の判定の結果に応じて待機解除指示を示すフレームを送信することとしたが、その他、任意の不正判定アルゴリズムを実行した結果に基づいて、待機解除指示或いは破棄指示を示すフレームを送信することとしても良い。また、実施の形態１では、受信するＥＣＵ１００ｃが一定時間内に待機しているフレームと同一ＩＤを持つフレームを受信しなければ待機しているフレームを破棄する例を示したが、破棄するフレームの個数、一定時間等として任意のものを設定し得る。また、ゲートウェイ３００ａが待機指示を含むフレームを送信する場合に、待機すべき時間その他の指示内容をそのフレームに含めても良い。これにより、待機すべき時間が経過したらＥＣＵは、待機解除或いは破棄を指示するフレームを待つことなく、待機のために保持していたフレームを破棄することができ、フレームの保持用のメモリ等の領域を効率良く利用できる。
【０２０４】
（５）上記実施の形態におけるゲートウェイ３００ａ、３００ｂ、１３００ａ、１３００ｂ等のゲートウェイ装置は、受信したフレームをバスに転送する機能を有する装置であればいかなる装置であっても良い。ゲートウェイ装置は、例えば、車両外部の装置からフレームを受信して車載ネットワークの１つのバスへと転送するヘッドユニット等のＥＣＵであっても良い。ここでの転送は、受信したフレーム（データ）に基づいて生成したフレームの送信であれば良く、受信したフレームの内容の一部を変更して送信するものであっても良い。例えば、特定のメッセージＩＤのフレームを受信して、メッセージＩＤやデータフィールドの一部を変更して再送するＥＣＵは、ゲートウェイ装置である。
【０２０５】
（６）上記実施の形態で示したＣＡＮプロトコルは、ＴＴＣＡＮ（Time-Triggered CAN）、ＣＡＮＦＤ（CAN with Flexible Data Rate）等の派生的なプロトコルをも包含する広義の意味を有するものであっても良い。
【０２０６】
（７）上記実施の形態で示したゲートウェイ装置（例えばゲートウェイ３００ａ、１３００ａ等）は、複数のバスにフレームを転送する場合において、特定のバス（例えば重要なバス等）に転送するフレームについてのみ、待機を指示する制御情報（例えば待機フラグを、待機を指示するように設定した制御指示データ、或いは、待機指示の１ｂｉｔを加えて算出させたチェックサム等）を含ませるようにしても良い。
【０２０７】
（８）上記実施の形態２では、ゲートウェイ装置（例えばゲートウェイ１３００ａ）が外部通信部１３５１を有する例を示したが、車載ネットワークに接続されたヘッドユニット或いは他のＥＣＵ（車外と通信する機能を有する装置）を経由して通信するとしても良い。ヘッドユニットは、例えば、マルチメディア再生、カーナビゲーション等の機能のために、車両外部との通信機能を有しているＥＣＵである。
【０２０８】
（９）上記実施の形態１で示したＥＣＵ１００ａ〜１００ｅは、バスに送信するフレームに、制御指示データ（例えば待機フラグを、待機不要を示すようにし、待機終了指示有無フラグを、無しを示すようにしたもの等）を含めるようにしても良い。この場合においてゲートウェイ３００ａ等のゲートウェイ装置がそのフレームの転送に際して制御指示データの内容を変更し得る。なお、制御指示データは、特定のメッセージＩＤを有するフレームに限定して、付加されることとしても良い。なお、フレームを受信するＥＣＵでは、メッセージＩＤ毎にＥＣＵに通常送信されるフレームのデータ長が予め定められているため、ＤＬＣに基づいて、ゲートウェイで制御指示データが付加されたか否か区別可能である。
【０２０９】
（１０）上記実施の形態で示したゲートウェイ装置は、受信したフレームの転送に関連して、送信用フレームに制御情報（一定の値を示す制御指示データを含む）を含ませた。この制御情報としては、例えばフレームの受信に際して送信する送信用フレームに含ませる第１制御情報と、その受信より後に、受信したフレームが適正か否かの最終的な判定結果に基づいて送信する送信用フレームに含ませる第２制御情報とがある。第１制御情報は、例えば、待機指示であり、これは例えば、その第１制御情報を含むフレームを受信したＥＣＵに、そのフレームの処理方法に関する情報を含むフレームを受信するまで、そのフレームに対応した処理の実行開始を遅延させるべき旨を示す。またその待機指示は、例えば、その第１制御情報を含むフレームを受信したＥＣＵに、一定条件（第２制御情報を含むフレームの受信或いは一定時間の経過等の条件）が満たされるまで、そのフレームに対応した処理の実行を抑止させるべき旨を示す。なお、第１制御情報は、その第１制御情報を含むフレームの取り扱いを追って指示するという予告（そのフレームが適正か否かの最終的な決定が未だなされていない状況の報知）を示すとも言える。また、第２制御情報は、ゲートウェイ装置が受信したフレームに係る最終的な判定結果に応じて定められるものであり、例えば、そのフレームの処理の実行を開始すべき旨を示す待機解除指示、或いは、そのフレームを破棄すべき旨を示す破棄指示等である。
【０２１０】
（１１）上記実施の形態１では、受信したフレームが適正であるか否かの判定（決定）に時間を要する最終判定処理をゲートウェイ３００ａが行い、実施の形態２では、ゲートウェイ１３００ａが受信したフレームが適正であるか否かの判定に時間を要する判定処理をサーバ４００が行う例を示した。この他に、ゲートウェイ３００ａ、１３００ａ等のゲートウェイ装置は、受信したフレームが適正であるか否かの判定（決定）を、他のＥＣＵに行わせても良い。この場合には、フレームの受信のための受信部として作用するフレーム送受信部３１０は、他のＥＣＵにより行われた判定（決定）の結果を受信する。また、フレーム送受信部３１０は、受信したフレームが適正であるか否かの決定の結果に応じて、待機解除或いは破棄を指示するフレームの送信等を行い得る。なお、フレーム送受信部３１０は、フレームの受信後の処理の制限に関する制御情報を含めたフレームをバスに送信する送信部として作用する。この送信部は、受信部によりフレームが受信された際に、所定条件が満たされた場合にそのフレームに第１制御情報を含めてバスに送信し、所定条件が満たされなかった場合には第１制御情報を含めずにフレームをバスに送信し、第１制御情報を含めたフレームを送信した後には、例えばそのフレームが適正か否かの決定の結果に応じてそのフレームの処理方法に関する第２制御情報を含むフレームを、バスに送信する。所定条件は、例えば受信したフレームの転送の後にそのフレームが適正か否かについて決定される状況で満たされる条件、つまり、フレームの受信の際に、フレームが適正か否かを迅速に判定できないという条件であるが、他の条件であっても良い。また、送信部は、データフィールドの少なくとも一部の内容を反映したデータを格納する、フレームの一領域（例えばチェックサムの領域）で、第１制御情報を表すようにしても良い。
【０２１１】
（１２）上記実施の形態における各ＥＣＵ（ゲートウェイを含む）は、例えば、プロセッサ、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置であることとしたが、ハードディスク装置、ディスプレイ、キーボード、マウス等の他のハードウェア構成要素を含んでいても良い。また、メモリに記憶された制御プログラムがプロセッサにより実行されてソフトウェア的に機能を実現する代わりに、専用のハードウェア（デジタル回路等）によりその機能を実現することとしても良い。
【０２１２】
（１３）上記実施の形態における各装置を構成する構成要素の一部または全部は、１個のシステムＬＳＩ（Large Scale Integration：大規模集積回路）から構成されているとしても良い。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ等を含んで構成されるコンピュータシステムである。前記ＲＡＭには、コンピュータプログラムが記録されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、システムＬＳＩは、その機能を達成する。また、上記各装置を構成する構成要素の各部は、個別に１チップ化されていても良いし、一部又はすべてを含むように１チップ化されても良い。また、ここでは、システムＬＳＩとしたが、集積度の違いにより、ＩＣ、ＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
【０２１３】
（１４）上記各装置を構成する構成要素の一部または全部は、各装置に脱着可能なＩＣカードまたは単体のモジュールから構成されているとしても良い。前記ＩＣカードまたは前記モジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭ等から構成されるコンピュータシステムである。前記ＩＣカードまたは前記モジュールは、上記の超多機能ＬＳＩを含むとしても良い。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、前記ＩＣカードまたは前記モジュールは、その機能を達成する。このＩＣカードまたはこのモジュールは、耐タンパ性を有するとしても良い。
【０２１４】
（１５）本発明の一態様としては、上述した車載ネットワークにおけるフレームの転送に係る通信方法等の方法であるとしても良い。例えば、通信方法は、フレーム（第１フレーム）を受信する受信ステップと、受信ステップで第１フレームが受信された際に、そのフレームの内容に基づく情報を含む送信用フレーム（第２フレーム）に、第２フレームの受信後の処理の制限に関する第１制御情報を含めて、その第２フレームをバスに送信する送信ステップとを含む。また、この方法をコンピュータにより実現するコンピュータプログラムであるとしても良いし、前記コンピュータプログラムからなるデジタル信号であるとしても良い。また、本発明の一態様としては、前記コンピュータプログラムまたは前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Blu-ray（登録商標） Disc）、半導体メモリ等に記録したものとしても良い。また、これらの記録媒体に記録されている前記デジタル信号であるとしても良い。また、本発明の一態様としては、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしても良い。また、本発明の一態様としては、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記録しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしても良い。また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしても良い。
【０２１５】
（１６）上記実施の形態及び上記変形例で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本発明の範囲に含まれる。
【産業上の利用可能性】
【０２１６】
本発明は、車載ネットワークで送信されたフレームが適正か否かを区別してそのフレームに対応した処理を適切に行うために利用可能である。
【符号の説明】
【０２１７】
１０、２０  車載ネットワークシステム
９０  ネットワーク
１００ａ〜１００ｅ、１１００ａ〜１１００ｅ  電子制御ユニット（ＥＣＵ）
１０１  エンジン
１０２  ブレーキ
１０３  ドア開閉センサ
１０４  窓開閉センサ
１０５  コーナーセンサ
１１０、３１０  フレーム送受信部
１２０、３２０  フレーム解釈部
１３０、３３０  受信ＩＤ判断部
１４０、３４０  受信ＩＤリスト保持部
１５０  フレーム処理部
１６０  フレーム保持部
１７０  データ取得部
１８０、３９０、１３９０  フレーム生成部
２００ａ〜２００ｃ  バス
３００ａ、３００ｂ、１３００ａ、１３００ｂ  ゲートウェイ
３５０、１３５０  不正判定処理部
３６０  不正判定ルール保持部
３７０  転送処理部
３８０  転送ルール保持部
４００  サーバ
４１０  通信部
４２０  不正判定部
４３０  車両データ保持部
１３５１  外部通信部
【図１】
2020005322.tif 000003
【図２】
2020005322.tif 000004
【図３】
2020005322.tif 000005
【図４】
2020005322.tif 000006
【図５】
2020005322.tif 000007
【図６】
2020005322.tif 000008
【図７】
2020005322.tif 000009
【図８】
2020005322.tif 000010
【図９】
2020005322.tif 000011
【図１０】
2020005322.tif 000012
【図１１】
2020005322.tif 000013
【図１２】
2020005322.tif 000014
【図１３】
2020005322.tif 000015
【図１４】
2020005322.tif 000016
【図１５】
2020005322.tif 000017
【図１６】
2020005322.tif 000018
【図１７】
2020005322.tif 000019
【図１８】
2020005322.tif 000020
【図１９】
2020005322.tif 000021
【図２０】
2020005322.tif 000022
【図２１】
2020005322.tif 000023
【図２２】
2020005322.tif 000024
【図２３】
2020005322.tif 000025
【図２４】
2020005322.tif 000026
【図２５】
2020005322.tif 000027
【図２６】
2020005322.tif 000028
【図２７】
2020005322.tif 000029
【図２８】
2020005322.tif 000030
【図２９】
2020005322.tif 000031
【図３０】
2020005322.tif 000032
【図３１】
2020005322.tif 000033
【図３２】
2020005322.tif 000034