(57)【要約】【課題】特定の装置のみを同期の対象とできる。【解決手段】情報処理装置は、種別を示す通信ＩＤが付されたメッセージを送受信する情報処理装置であって、通信の最新性を検証するための通信用カウンタを通信ＩＤごとに記憶する記憶部と、通信用カウンタを所定の条件に基づき更新する最新性情報管理部と、発生した異常の影響範囲を特定する異常監視部と、通信用カウンタの同期を依頼するメッセージであることを示す通信ＩＤ、および異常監視部が特定した影響範囲を示す同期対象識別子を含む同期依頼メッセージを生成するメッセージ生成部とを備える。【選択図】図１
2020065176.tif 000002
【特許請求の範囲】
【請求項１】
種別を示す通信ＩＤが付されたメッセージを送受信する情報処理装置であって、
通信の最新性を検証するための通信用カウンタを前記通信ＩＤごとに記憶する記憶部と、
前記通信用カウンタを所定の条件に基づき更新する最新性情報管理部と、
発生した異常の影響範囲を特定する異常監視部と、
前記通信用カウンタの同期を依頼するメッセージであることを示す前記通信ＩＤ、および前記異常監視部が特定した影響範囲を示す同期対象識別子を含む同期依頼メッセージを生成するメッセージ生成部とを備える情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記記憶部には、異常の種類と前記影響範囲との対応を示す対応情報がさらに格納され、
前記異常監視部は特定された異常の種類と前記対応情報に基づき前記影響範囲を特定する情報処理装置。
【請求項３】
請求項１に記載の情報処理装置において、
前記記憶部には、前記通信用カウンタの同期の検証に用いられる同期用カウンタがさらに格納され、
前記最新性情報管理部は、同期後の前記通信用カウンタの値および同期後の前記同期用カウンタの値を決定し、
前記同期依頼メッセージには、同期後の前記通信用カウンタの値および同期後の前記同期用カウンタの値を示す情報がさらに含まれる情報処理装置。
【請求項４】
請求項３に記載の情報処理装置において、
前記最新性情報管理部は、同期対象となる前記通信ＩＤが複数存在する場合は、同期対象となる複数の前記通信ＩＤに対応する前記同期用カウンタの値のうち、最も大きい前記同期用カウンタの値に基づき、同期後の前記同期用カウンタの値を決定する情報処理装置。
【請求項５】
請求項３に記載の情報処理装置において、
前記最新性情報管理部は、同期対象となる前記通信ＩＤが複数存在する場合は、同期対象となる複数の前記通信ＩＤに対応する前記同期用カウンタの値のうち、最も大きい前記同期用カウンタの値に１を加えて同期後の前記同期用カウンタの値とし、同期後の前記通信用カウンタの値をゼロとする情報処理装置。
【請求項６】
請求項１に記載の情報処理装置において、
前記同期対象識別子には、同期対象となる前記通信ＩＤを示す情報、または異常が発生した情報処理装置を示す情報が含まれる情報処理装置。
【請求項７】
請求項１に記載の情報処理装置において、
前記最新性情報管理部は、メッセージを受信すると受信したメッセージに含まれる前記通信ＩＤに対応する前記通信用カウンタの値を１増加させ、
前記最新性情報管理部は、受信したメッセージに含まれる前記通信ＩＤが前記通信用カウンタの同期を依頼するメッセージであることを示す前記通信ＩＤ以外の場合は、受信したメッセージに含まれる前記通信用カウンタの値と、前記最新性情報管理部が１増加させた後の前記通信用カウンタの値とを比較することで受信したメッセージの最新性を確認する情報処理装置。
【請求項８】
請求項１に記載の情報処理装置が接続される通信セグメント同士の通信を中継する管理装置であって、
複数の前記情報処理装置は、２以上のセグメントに分かれて配置され、
前記２以上のセグメントのそれぞれと通信する通信部と、
前記同期依頼メッセージを受信すると、前記同期依頼メッセージに基づき前記通信用カウンタを同期すべき前記情報処理装置が属する前記セグメントにのみ前記同期依頼メッセージを転送する転送部とを備える管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、および管理装置に関する。
【背景技術】
【０００２】
自動車の車載ネットワークにおける代表的な標準プロトコルとしてＣＡＮ（Controller  Area  Network）（登録商標）が普及している。このような車載ネットワークでは、たとえばＯＢＤ２（On-Board-Diagnostics  ２）ポートのような車載ネットワークに直接繋がっているインタフェースに不正な機器を接続し、不正なメッセージを車載ネットワークに送信される危険性がある。ＣＡＮの通信データには発信元（ソースアドレス）を示すフィールドがなく、なりすましが容易であり、特にリプレイ攻撃に対して脆弱である。リプレイ攻撃とは、通信路上を流れるメッセージを盗聴して事前に取得し、取得したメッセージを再送することで不正な動作を引き起こす攻撃である。
【０００３】
通常、このような脅威に対しては、各情報処理装置間を流れるメッセージに改ざん検知符号としてメッセージ認証コード（ＭＡＣ：message  authentication  code）を活用し、再送攻撃対策も考慮したメッセージ認証を実施することが有効とされている。しかしながら、車載システムに再送攻撃対策も考慮したメッセージ認証を適用する場合、たとえば情報処理装置における予期せぬリセットなどの異常が発生してしまうと、送受信関係にある情報処理装置間で共有されている通信用カウンタ値の同期がずれてしまう。その結果、情報処理装置は受信するメッセージを正しく検証できなくなる問題がある。
【０００４】
特許文献１には、相互に接続された複数のノードを備え、各ノードはカウンタのカウント値を用いてメッセージ認証コードを生成し、該メッセージ認証コードを用いて、前記ノード間で送受信されるメッセージを検証する通信システムであって、前記ノードの一つを管理ノード、前記メッセージの送受信を行う前記ノードを通常ノードとし、前記カウンタのカウント値を２分割した上位側を上位カウント値、下位側を下位カウント値として、前記管理ノードは、前記上位カウント値を保持する上位カウント値保持部と、予め設定された上位更新条件に従って前記上位カウント値を更新する上位カウント値更新部と、前記上位カウント値保持部が保持する前記上位カウント値を、予め設定された配信条件に従って前記通常ノードに配信する上位カウント値配信部と、を備え、前記通常ノードは、前記カウント値を保持するカウント値保持部と、予め設定された下位更新条件に従って前記カウント値保持部が保持する前記下位カウント値を更新する下位更新部と、前記管理ノードから配信される前記上位カウント値を用いて、前記カウント値保持部が保持する前記上位カウント値を更新する上位更新部と、前記上位更新部によって前記上位カウント値が更新されると、前記下位カウント値を初期化する下位初期化部と、を備える通信システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１７−３８３６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載されている発明では、特定の装置のみを同期の対象とできない。
【課題を解決するための手段】
【０００７】
本発明の第１の態様による情報処理装置は、種別を示す通信ＩＤが付されたメッセージを送受信する情報処理装置であって、通信の最新性を検証するための通信用カウンタを前記通信ＩＤごとに記憶する記憶部と、前記通信用カウンタを所定の条件に基づき更新する最新性情報管理部と、発生した異常の影響範囲を特定する異常監視部と、前記通信用カウンタの同期を依頼するメッセージであることを示す前記通信ＩＤ、および前記異常監視部が特定した影響範囲を示す同期対象識別子を含む同期依頼メッセージを生成するメッセージ生成部とを備える。
本発明の第２の態様による管理装置は、上述した情報処理装置が接続される通信セグメント同士の通信を中継する管理装置であって、複数の前記情報処理装置は、２以上のセグメントに分かれて配置され、前記２以上のセグメントのそれぞれと通信する通信部と、前記同期依頼メッセージを受信すると、前記同期依頼メッセージに基づき前記通信用カウンタを同期すべき前記情報処理装置が属する前記セグメントにのみ前記同期依頼メッセージを転送する転送部とを備える。
【発明の効果】
【０００８】
本発明によれば、特定の装置のみを同期の対象とできる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施の形態における情報処理装置１の構成を示す図
【図２】ＲＡＭ１９Ｂに格納される情報の一例を示す図
【図３】影響範囲情報１９１の一例を示す図
【図４】最新性関連情報１９２の一例を示す図
【図５】同期依頼メッセージの構造の一例を示す図
【図６】同期対象識別子７０２のデータ構造の一例を示す図
【図７】通信関係情報１９３の一例を示す図
【図８】通信用カウンタ値の再同期処理シーケンスを示す図
【図９】図８のステップ２１１からステップ２１６までの詳細な処理を示すフローチャート
【図１０】図８のステップ２３１からステップ２３５までの詳細な処理を示すフローチャート
【図１１】第２の実施の形態における情報処理装置１を含むネットワークＮの構成図
【図１２】管理装置９５０の構成図
【図１３】管理装置９５０の転送部９５２の動作を示すフローチャート
【発明を実施するための形態】
【００１０】
―第１の実施の形態―
以下、図１〜図１０を参照して、情報処理装置の第１の実施の形態を説明する。
【００１１】
（構成）
図１は、第１の実施の形態における情報処理装置１の構成を示す図である。第１情報処理装置１Ａは、第２情報処理装置１Ｂおよび第３情報処理装置１Ｃと通信バス２を介して互いに接続されている。ただし第１情報処理装置１Ａ、第２情報処理装置１Ｂ、および第３情報処理装置１Ｃの構成は同一である。以下では第１情報処理装置１Ａ、第２情報処理装置１Ｂ、および第３情報処理装置１Ｃを特に区別しない場合は「情報処理装置１」と呼ぶ。また図１では３つの情報処理装置１を図示しているが、４以上の情報処理装置１が接続されてもよい。
【００１２】
通信バス２は、たとえばＣＡＮに対応する。通信バス２を流れるメッセージは、そのメッセージの種別を示す通信ＩＤが付与されている。メッセージとはたとえばＣＡＮのフレームであり、通信ＩＤはたとえばＣＡＮ−ＩＤである。すなわちメッセージは、フレーム、データグラム、パケットなどと同じ意味である。
【００１３】
情報処理装置１は、通信部１０と、異常監視部１１、異常検知部１１Ａ、同期範囲特定部１２、最新性情報管理部１３、最新性情報算出部１４、メッセージ生成部１５、同期処理実行判定部１６、最新性情報検証部１７、メッセージ検証部１８、同期処理制御部１９、記憶部１９Ａ、およびＲＡＭ１９Ｂを備える。通信部１０は、通信バス２を介して、他の情報処理装置１からのメッセージの受信、および他の情報処理装置１に対してメッセージの送信を行う。
【００１４】
同期回復処理関連情報記憶部１９Ａには、同期回復処理に関する情報である影響範囲情報１９１、最新性関連情報１９２、および通信関係情報１９３が格納される。影響範囲情報１９１とは、検知された異常とその異常が影響を及ぼす範囲を示す情報である。最新性関連情報１９２とは、後述する同期回復処理時に更新される同期用カウンタと、通信が行われるたびに更新される通信用カウンタのそれぞれが、通信ＩＤごとに記録されたものである。通信関係情報１９３とは、通信ＩＤごとにその通信を受信する装置を示す情報である。
【００１５】
影響範囲情報１９１および通信関係情報１９３は、通信バス２に接続されたすべての情報処理装置１で共通した内容でもよいし、それぞれの情報処理装置１に必須の情報のみが含まれてもよい。本実施の形態で説明する範囲では、影響範囲情報１９１および通信関係情報１９３に格納される情報は固定、すなわち更新されない。最新性関連情報１９２は、情報処理装置１ごとに独立して値が更新される。詳述すると、同期用カウンタの値および通信用カウンタの値は、情報処理装置１ごとに更新される。なお処理が正常に行われていれば全ての情報処理装置１で同一の値となる。
【００１６】
ＲＡＭ１９Ｂには、記憶領域である複数の通信ＩＤスロットおよび複数の装置ＩＤスロットが確保され、それぞれに通信ＩＤおよび装置ＩＤが格納される。ＲＡＭ１９Ｂに格納される情報は通信バス２に接続される全ての情報処理装置１で同一である。そのためスロットを少量のみ用意し、それぞれのスロットにスロットの識別情報よりも長い情報を格納することで、通信バス２を流れる通信データの総量を削減できる。ＲＡＭ１９Ｂに格納される情報の例は後述する。ただしＲＡＭ１９Ｂに格納される情報は不図示のＣＰＵのキャッシュメモリや記憶部１９Ａに格納されてもよい。
【００１７】
異常監視部１１は、影響範囲情報１９１に基づいて異常を検知する。異常検知部１１Ａは、異常を検出して後述する異常コード１９１１を作成する。同期範囲特定部１２は、影響範囲情報１９１を用いて同期範囲を特定する。最新性情報管理部１３は、最新性関連情報１９２を管理する。最新性情報算出部１４は、同期範囲特定部１２によって指定された範囲で新たな最新性情報を算出する。メッセージ生成部１５は、通信部１０を介して他の情報処理装置に送信する、制御データを含むメッセージや同期依頼を含むメッセージを生成する。以下では、同期依頼を含むメッセージを「同期依頼メッセージ」と呼ぶ。同期依頼メッセージの具体例は後述する。また本実施の形態では、同期依頼メッセージ以外のメッセージを「通常メッセージ」と呼ぶ。
【００１８】
同期処理実行判定部１６は、受信した同期依頼メッセージが自身に関連するかどうかを判定する。最新性情報検証部１７は、受信したメッセージの最新性を検証する。メッセージ検証部１８は、通信メッセージの完全性を検証する。同期処理制御部１９は、各種検証結果が正しい場合において、最新性情報管理部１３を用いて所定のルールに従って設定される最新性関連情報１９２の値を新たな最新性情報として登録する。最新性関連情報１９２に含まれる通信用カウンタは起動時に不揮発性メモリから揮発性メモリに読み出され、停止時に不揮発性メモリに格納されてもよい。
【００１９】
通信部１０はたとえばＣＡＮに対応する通信モジュールなど、通信を行うハードウエアを含んで構成される。記憶部１９Ａは、不揮発性の記憶装置、たとえばフラッシュメモリである。
【００２０】
異常監視部１１、異常検知部１１Ａ、同期範囲特定部１２、最新性情報管理部１３、最新性情報算出部１４、メッセージ生成部１５、同期処理実行判定部１６、最新性情報検証部１７、メッセージ検証部１８、および同期処理制御部１９は、情報処理装置１に備えられる不図示の中央演算装置であるＣＰＵがプログラムを実行することで実現される。各プログラムは、あらかじめ、情報処理装置１内に不図示のメモリ、またはＲＯＭ（Read  Only  Memory）等に格納されていてもよいし、入出力インタフェースを情報処理装置１に具備しておき、必要なときに、入出力インタフェースと情報処理装置１が利用可能な媒体を介して、他の装置から不揮発性メモリ、またはＲＯＭに導入されてもよい。ここで媒体とは、たとえば入出力インタフェースに着脱可能な記憶媒体、または通信媒体（すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号）を指す。
【００２１】
ただし異常監視部１１、異常検知部１１Ａ、同期範囲特定部１２、最新性情報管理部１３、最新性情報算出部１４、メッセージ生成部１５、同期処理実行判定部１６、最新性情報検証部１７、メッセージ検証部１８、および同期処理制御部１９は、書き換え可能な論理回路であるＦＰＧＡ（Field  Programmable  Gate  Array）や特定用途向け集積回路であるＡＳＩＣ（Application  Specific  Integrated  Circuit）により実現されてもよい。またそれらは、ＣＰＵ、ＲＯＭ、およびＲＡＭの組み合わせの代わりに、異なる構成の組み合わせ、たとえばＣＰＵ、ＲＯＭ、ＲＡＭとＦＰＧＡの組み合わせにより実現されてもよい。
【００２２】
（スロット）
図２は、ＲＡＭ１９Ｂに格納される情報の一例を示す図である。ＲＡＭ１９Ｂには、通信ＩＤスロットと装置ＩＤスロットのそれぞれについて、スロットＩＤと通信ＩＤの組み合わせ、およびスロットＩＤと装置ＩＤの組み合わせが格納されている。たとえばスロットＩＤは４ビットで表現可能な１〜１６であり、それぞれのスロットＩＤに対応する通信ＩＤや装置ＩＤの情報量、すなわち対応するデータのビット長はスロットＩＤのビット長よりも長い。
【００２３】
通信ＩＤは所定の長さを有する情報であり、たとえば１１ビットの長さを有する。ここで、通信メッセージのペイロードに通信ＩＤの情報を含める場合を考える。ペイロードに通信ＩＤをそのまま含める場合には、ペイロードは必ず１１ビット以上となる。しかし通信ＩＤの代わりに通信ＩＤが格納された通信ＩＤスロットのスロットＩＤをペイロードを用いれば、小さいデータ量、たとえば４ビットに短縮できる。なお図２は単なる例示であり、スロットＩＤは４ビット以上でもよいし、通信ＩＤスロットのスロットＩＤと装置ＩＤスロットのスロットＩＤは独立していてもよい。
【００２４】
（影響範囲情報１９１）
図３は、影響範囲情報１９１の一例を示す図である。影響範囲情報１９１は複数のレコードから構成され、各レコードは異常コード１９１１、異常内容１９１２、異常影響範囲コード１９１３、および影響範囲１９１４から構成される。異常コード１９１１は、発生した異常の種類ごとに定義されたコードである。異常内容欄１９１２は、発生した異常の種類を示す。異常影響範囲コード１９１３は、発生した異常が影響を及ぼす範囲ごとに定義されたコードを示す。影響範囲１９１４は影響範囲を示す。
【００２５】
影響範囲１９１４はたとえば、通信ＩＤ単体、通信ＩＤの組み合わせ、情報処理装置で管理されるすべての通信ＩＤ、ネットワークのドメイン、車載システム全体等である。たとえば予期せぬタイミングで電源が消失した場合、情報処理装置１は異常コード１９１１の「０ｘ１０１」に対する異常影響範囲コード１９１３に基づいて影響範囲を特定する。また、異常影響範囲コード１９１３が「０ｘｆ０３」と判定された場合、同期回復処理を実行するのではなく、たとえば縮退稼動に移行し、自動車を安全に停車させることが望ましい。
【００２６】
（最新性関連情報１９２）
図４は、最新性関連情報１９２の一例を示す図である。最新性関連情報１９２は、通信ＩＤ１９２１ごとに最新性情報１９２３を有する。最新性情報１９２３は、同期用カウンタ１９２４と通信用カウンタ１９２５から構成される。図４に示す例では、最新性情報１９２３の上位ビットが同期用カウンタ１９２４として用いられ、下位ビットが通信用カウンタ１９２５として用いられる。
【００２７】
（同期依頼メッセージ）
図５は、メッセージ生成部１５が生成する同期依頼メッセージの構造の一例を示す図である。同期依頼メッセージは、同期依頼用通信ＩＤ７０１と、同期対象識別子７０２と、最新性情報７０３と、ＭＡＣ７０４とから構成される。同期依頼用通信ＩＤ７０１は、同期依頼用の通信メッセージであることを示す識別子である。同期対象識別子７０２は、この同期依頼メッセージを受信して同期回復処理を実行する対象を示す識別子である。最新性情報７０３はステップ２１３で更新した最新性情報１９２３、または最新性情報１９２３に含まれる同期用カウンタ１９２４を示す。ＭＡＣ７０４は、当該同期依頼用通信ＩＤ７０１、同期対象識別子７０２、最新性情報７０３と、不図示の事前共有鍵とを用いて算出されるメッセージ認証コード（ＭＡＣ）である。ただし算出したＭＡＣをそのままＭＡＣ７０４としてもよいし、算出したＭＡＣに対してＡＥＳ１２８などの暗号化を施したものをＭＡＣ７０４としてもよい。
【００２８】
（同期対象識別子７０２）
図６は、図５に示した同期対象識別子７０２のデータ構造の一例を示す図である。図６（ａ）は同期依頼用通信ＩＤを情報処理装置ごとに割り当てることができる場合の例、図６（ｂ）は同期依頼用通信ＩＤを情報処理装置ごとに割り当てることができない場合の例を示す。同期依頼用通信ＩＤを情報処理装置ごとに割り当てることができる場合には、たとえば第１情報処理装置１Ａから第２情報処理装置１Ｂへの同期依頼の通信ＩＤと、第１情報処理装置１Ａから第３情報処理装置１Ｃへの同期依頼の通信ＩＤと、第３情報処理装置１Ｃから第２情報処理装置１Ｂへの同期依頼の通信ＩＤとがすべて異なるものになる。
【００２９】
まず図６（ａ）を参照して同期依頼用通信ＩＤ７０１を情報処理装置ごとに割り当てることができる場合の構成を説明する。この場合は、同期対象の情報端末装置に対応するＩＤを同期依頼用通信ＩＤ７０１とし、同期を回復する範囲を同期範囲８０１とし、同期対象となる通信ＩＤを特定するためのスロットのＩＤを同期対象スロット８０２とする。ただし同期範囲８０１は「０」または「１」の値をとり、同期範囲８０１の値により同期対象スロット８０２に格納された値の解釈が異なる。
【００３０】
同期範囲８０１の値が「０」の場合は同期範囲を通信ＩＤ単位で設定することを示し、同期範囲８０１の値が「１」の場合は同期範囲を通信先の情報処理装置単位で設定することを示す。同期範囲８０１の値が「０」の場合は、同期対象スロット８０２には通信ＩＤを特定するためのスロットＩＤの情報が格納される。たとえば、同期対象となる通信ＩＤを示す通信ＩＤスロットのスロットＩＤが格納されてもよいし、通信ＩＤスロットのスロットＩＤごとに対象か否かを示すビットを並べてもよい。たとえば図２に示す例で通信ＩＤ「０ｘ２５０」と「０ｘ７ｆｆ」が対象の場合に、対象のスロットＩＤである「２，４」としてもよいし、スロットＩＤ１〜４の順に対象を「１」で表して「０１０１」としてもよい。
【００３１】
同期範囲８０１の値が「１」の場合は、同期対象通信ＩＤスロットの値は「０」として、同期依頼用通信ＩＤ７０１が示す情報処理装置に関るすべての通信ＩＤが同期対象となる。同期対象となる具体的な通信ＩＤは、同期依頼メッセージを受信した情報処理装置１が判断する。
【００３２】
次に図６（ｂ）を参照して同期依頼用通信ＩＤ７０１を情報処理装置ごとに割り当てることができない場合の構成を説明する。この場合には同期対象識別子７０２は、同期範囲８０１、同期対象スロット８０２、および装置ＩＤ８０３から構成される。装置ＩＤ８０３には各情報処理装置を区別できる識別子が格納される。なお、同期対象識別子は該当する情報処理装置や通信ＩＤを特定できればよく、同期依頼用通信ＩＤ７０１と合わせて一つの識別子としてもよい。
【００３３】
（通信関係情報１９３）
図７は、通信関係情報１９３の一例を示す図である。通信関係情報１９３は、通信ＩＤと通信先の情報処理装置１との対応を示す。通信関係情報１９３は、通信ＩＤ１９３１と、通信先情報処理装置１９３２とから構成される。通信ＩＤ１９３１には、通信ＩＤが格納され、通信先情報処理装置１９３２には、通信ＩＤ１９３１を用いた通信メッセージの送受信関係にあたる情報処理装置の名称などが格納される。たとえば、同期対象識別子７０２に含まれる装置ＩＤ８０３が「情報処理装置１」を示す場合、同期依頼メッセージを受信した情報処理装置は、次の通信ＩＤを同期対象と判断する。すなわち、「情報処理装置１」に紐付けられた「０ｘ００１」、「０ｘ０１０」、および「０ｘ０１４」の３つの通信ＩＤが同期対象と判断される。
【００３４】
（通常メッセージの処理）
通常メッセージ、すなわち同期依頼メッセージ以外のメッセージの処理を説明する。情報処理装置１のメッセージ生成部１５は、たとえば制御データを送信する場合には、通信ＩＤ、制御データ、通信用カウンタの値、およびＭＡＣを含むメッセージを生成する。このメッセージに含まれる通信用カウンタの値は、送信する通信ＩＤに対応するものであり最新性関連情報１９２に格納されている値である。ただしメッセージ生成部１５が通信カウンタの値を読み出す直前に、最新性情報管理部１３がその通信ＩＤの通信用カウンタの値を１だけ増加させる。
【００３５】
また通常メッセージに含まれるＭＡＣは、その通常メッセージの通信ＩＤ、制御データ、および通信用カウンタの値を処理対象とし、不図示の事前共有鍵を用いて算出したメッセージ認証コードである。通常メッセージを受信すると、情報処理装置１のメッセージ検証部１８および最新性情報検証部１７がメッセージの完全性を確認する。完全性が確認できれば通常メッセージに含まれる制御データを用いた制御が行われ、完全性が確認できなければそのメッセージは破棄される。なおメッセージ検証部１８および最新性情報検証部１７が動作する順番は任意であり、同時に動作してもよい。両者の検証で問題がないことが確認されて初めて、完全性が確認されたことになる。
【００３６】
最新性情報検証部１７は、受信した通常メッセージの通信ＩＤに対応する通信用カウンタの値を最新性関連情報１９２から読み出す。そして読み出した値よりも受信した通常メッセージに含まれる通常用カウンタの値の方が新しい、すなわちより大きな数字である場合に最新性が確認されたと判断する。ただし両者の差が所定の閾値よりも大きい場合は、不正に大きな値が送信されたとして最新性が確認されないと判断してもよい。
【００３７】
メッセージ検証部１８によるＭＡＣの検証は次のとおりである。メッセージ検証部１８はまず、受信した通常メッセージに含まれる通信ＩＤ、制御データ、および最新性情報を処理対象とし、不図示の事前共有鍵を用いてＭＡＣを算出する。そしてメッセージ検証部１８は、算出したＭＡＣと受信した通常メッセージに含まれるＭＡＣとが一致するか否かを判断する。メッセージ検証部１８は、両者が一致する場合は問題がないと判断し、両者が一致しない場合は問題が発生、すなわち不正なメッセージと判断する。
【００３８】
（再同期処理の概要）
図８は、依頼側装置１Ｐと検証側装置１Ｑとの間における通信用カウンタ値の再同期処理シーケンスを示す図である。なお、依頼側装置１Ｐと検証側装置１Ｑは便宜的に付した名称であり、実際にはいずれかの情報処理装置１である。
【００３９】
ステップ２１１では、異常検知部１１Ａが生成した影響範囲情報１９１に基づいて異常監視部１１が異常を検知し、異常を検知するとステップ２１２に進む。異常監視部１１は影響範囲情報１９１を起動時に確認してもよいし、定期的に確認してもよいし、異常を検知するたびに確認してもよい。
【００４０】
ステップ２１２では、同期範囲特定部１２はステップ２１１で取得した異常影響範囲コード１９１３に基づいて同期範囲を特定する。たとえば、異常影響範囲コード１９１３が「０ｘｆ０２」だった場合、自身が管理するすべての通信ＩＤに影響を及ぼすと判定し、最新性関連情報１９２に記載されるすべての通信ＩＤを同期範囲として特定する。
続くステップ２１３では、最新性情報管理部１３はステップ２１２で特定した同期範囲に関する通信ＩＤの最新性情報を最新性関連情報１９２から取得し、最新性情報算出部１４は新たな最新性情報を算出する。
【００４１】
たとえばすべての通信ＩＤを同期対象として判定した場合は、ステップ２１３において、最新性情報管理部１３は、最新性関連情報１９２に登録されているすべての通信ＩＤ１９２１に紐付けられる同期用カウンタ１９２４を取得し、最新性情報算出部１４は、その中の最大値に「１」をインクリメントした値を上位ビットとする新たな最新性情報を算出する。なお、新たな最新性情報は、通信ＩＤごとに算出して更新してもよい。なおここで算出される新たな最新性情報は、同期処理により他の情報処理装置１に書き込まれるので、新たな最新性情報は「同期後の」最新性情報と呼ぶこともできる。
【００４２】
続くステップ２１４では、メッセージ生成部１５はステップ２１３で更新した最新性情報と、同期依頼用通信ＩＤ等を用いてＭＡＣを算出し、同期対象として特定した対象を示す同期対象識別子、同期依頼用通信ＩＤ、最新性情報、およびＭＡＣを含む同期依頼メッセージを生成する。ステップ２１５では、通信部１０はステップ２１４で生成した同期依頼メッセージを通信バス２を介して他の情報処理装置に送信する。続くステップ２１６では、同期処理制御部１９はステップ２１３で算出した最新性情報を最新性関連情報１９２に登録する。
【００４３】
検証側装置１Ｑは、依頼側装置１Ｐがステップ２１５において送信した同期依頼メッセージを受信するとステップ２３０を実行する。ステップ２３０では検証側装置１Ｑは、受信した同期依頼メッセージの同期依頼用通信ＩＤ７０１および同期対象識別子７０２を参照し、同期の要否を判断する。検証側装置１Ｑは同期が必要と判断するとステップ２３１に進み、同期が不要と判断すると図８の処理を終了する。
【００４４】
ステップ２３１では検証側装置１Ｑはカウンタ処理として次の２つの処理を行う。検証側装置１Ｑは、まず最新性情報管理部１３は該当する通信ＩＤ１９３１に該当する通信用カウンタ１９２５から取得した通信用カウンタを所定のルールに従って更新する。次に検証側装置１Ｑは、該当する同期用カウンタ１９２４の値を取得してステップ２３２に進む。
【００４５】
ステップ２３２では最新性情報検証部１７は、受信した通信メッセージに付与された最新性情報７０３に含まれる同期用カウンタと、ステップ２３１で取得した同期用カウンタ１９２４の値を比較して最新性を検証する。換言すると最新性情報検証部１７は、受信した最新性情報７０３に含まれる同期用カウンタの値が、同期用カウンタ１９２４の値よりも新しいことを確認する。検証側装置１Ｑは最新性が確認できるとステップ２３３に進み、最新性が確認できない場合は図８の処理を終了する。
【００４６】
最新性の検証は、受信した最新性情報７０３の値が同期用カウンタ１９２４の値よりも大きい場合に最新であると判断することができる。さらに、受信した最新性情報７０３に含まれる同期用カウンタの値と同期用カウンタ１９２４の値との差が所定の閾値以内の場合のみ最新と判断してもよい。仮に両者の差が閾値を超える場合は、不正なカウンタ値を受信したと判断して本処理を終了する。
【００４７】
なお検証側装置１Ｑのメッセージ検証部１８は、受信したメッセージに含まれるＭＡＣ７０４を検証し、一致しないと判断する場合は図８に示す処理を終了してもよい。詳述するとメッセージ検証部１８は、最新性が確認された最新性情報７０３に含まれる同期用カウンタの値と、更新された通信用カウンタの値と、同期依頼用通信ＩＤ７０１を用いてＭＡＣを算出する。そしてメッセージ検証部１８は、受信したＭＡＣ７０４と算出したＭＡＣを比較し、一致している場合はステップ２３３に進み、一致していない場合は本処理を終了する。
【００４８】
ステップ２３３では同期処理制御部１９は、受信した最新性情報７０３に含まれる同期用カウンタの値を同期用カウンタ１９２４に格納し、ステップ２３２で更新された通信用カウンタの値を通信用カウンタ１９２５に格納する。すなわち本ステップの処理により同期用カウンタ１９２４の値が更新される。続くステップ２３４では、メッセージ生成部１５は同期完了ＩＤ、情報処理装置ＩＤを含んだ同期完了メッセージを生成する。ステップ２３５では、通信部１０はステップ２３４で生成した同期完了メッセージを通信バス２を介して他の情報処理装置に送信する。
【００４９】
依頼側装置１Ｐは、検証側装置１Ｑから同期完了メッセージを受信するとステップ２１７を実行する。ステップ２１７では、依頼側装置１Ｐの通信部１０は、同期処理制御部１９を用いて同期回復処理を完了し、通常モードに移行する。
【００５０】
以上説明したように、依頼側装置１Ｐは検証側装置１Ｑに同期依頼メッセージを送信し、検証側装置１Ｑは所定のルールに従って同期用カウンタ１９２４及び通信用カウンタ１９２５を更新する。これにより、依頼側装置１Ｐと検証側装置１Ｑとで通信用カウンタ１９２５の値が再同期される。換言すると、両者で通信用カウンタ１９２５の値が共有される。
【００５１】
（同期依頼側の詳細）
図９は、図８のステップ２１１からステップ２１６までの詳細な処理を示すフローチャートである。ステップ３０１では、異常監視部１１は異常検知部１１Ａの出力の有無、すなわち異常の発生有無を監視する。ステップ３０２では異常監視部１１は、ステップ３０１で異常を検知するとステップ３０３に進み、異常を検知しないとステップ３１１に進む。ステップ３０３では、同期範囲特定部１２は異常検知部１１Ａが出力した異常コード１９１１を取得する。
【００５２】
ステップ３０４では、同期範囲特定部１２は影響範囲情報１９１を参照し、ステップ３０３において取得した異常コード１９１１に対応する異常影響範囲コード１９１３および影響範囲１９１４を取得する。そして同期範囲特定部１２は、影響範囲１９１４に基づいて同期回復処理の実行可否を判定する。具体的には、影響範囲１９１４が同期不可であれば同期回復処理が実行不可能と判断し、それ以外の場合は同期回復処理を実行可能と判断する。
【００５３】
ステップ３０５では、同期処理実行判定部１６はステップ３０４の判定が同期回復処理を実行可能であればステップ３０６に進み、実行不可能であればステップ３１２に進む。ステップ３０６では、ステップ３０４において読み込んだ影響範囲１９１４に基づき、具体的な最新性情報１９２３の影響範囲を特定する。たとえば影響範囲１９１４が通信ＩＤの場合は、異常が発生した通信ＩＤ１９２１を影響範囲として特定する。またたとえば影響範囲１９１４が情報処理装置の場合は、当該情報処理装置１が管理する通信ＩＤ１９２１のすべてを影響範囲として特定する。
【００５４】
続くステップ３０７では、最新性情報算出部１４は、ステップ３０６で特定した影響範囲における新たな最新性情報を算出する。たとえば、影響範囲における同期用カウンタ１９２４の最大値に「１」を加算し、通信用カウンタの値を「０」とした値を影響範囲に該当する通信ＩＤの新たな最新性情報とする。前述のとおり、最新性情報の上位ビットが同期用カウンタ、下位ビットが通信用カウンタなので、通信用カウンタの値をゼロにリセットしても、同期用カウンタ１９２４の値が増加することで最新性情報の値は大きくなる。
【００５５】
続くステップ３０８では、メッセージ生成部１５は同期依頼メッセージを生成する。この同期依頼メッセージには、ステップ３０７で算出した最新性情報７０３、同期依頼用の通信ＩＤ７０１、同期対象範囲を示す同期対象識別子７０２、およびこれらの情報から算出されるＭＡＣ７０４が含まれる。続くステップ３０９では、通信部１０はステップ３０８で生成した同期依頼メッセージを通信バス２を介して検証側装置１Ｑに送信する。続くステップ３１０では、同期処理制御部１９はステップ３０７で算出した最新性情報を最新性関連情報１９２の該当する通信ＩＤ１９２１に紐づく最新性情報１９２３として登録する。
【００５６】
ステップ３０２において否定判断されると実行されるステップ３１１では、同期処理制御部１９は通常の制御処理を継続する。ステップ３０５において否定判断されると実行されるステップ３１２では、同期処理制御部１９は機能を縮退させて稼動するフェールセーフモードに移行するように指示を出す。以上のステップにより、依頼側装置１Ｐは、異常を検知した場合に生成する同期依頼メッセージを検証側装置１Ｑに送信する。そして図８に示したように検証側装置１Ｑから同期完了通知を受信することで、同期が取れたことを確認できる。
【００５７】
（同期検証側の詳細）
図１０は、図８のステップ２３１からステップ２３５までの詳細な処理を示すフローチャートである。ステップ４０１では、メッセージ検証部１８は通信部１０を用いて受信した同期依頼メッセージを確認する。具体的にはメッセージ検証部１８は、受信した同期依頼メッセージから同期対象識別子７０２を取得し、通信関係情報１９３を参照して当該同期対象識別子７０２に該当する通信ＩＤの有無を検証する。たとえば図１０に示すフローチャートを実行している検証側装置１Ｑが第２情報処理装置１Ｂであり、通信関係情報１９３が図７に示すものの場合に、通信ＩＤ１９３１に「０ｘ００ｄ」が含まれるか否かを検証する。
【００５８】
ステップ４０２では、同期処理実行判定部１６はステップ４０１の検証に基づき、同期対象識別子７０２に該当する通信ＩＤがあると判断するとステップ４０３に進み、該当する通信ＩＤがないと判断するとステップ４０９に進む。
【００５９】
ステップ４０３ではまず、最新性情報管理部１３は、該当する通信ＩＤ１９３１に該当する通信用カウンタ１９２５の値を所定のルールに従って更新する。次に最新性情報検証部１７は、該当する同期用カウンタ１９２４の値を取得して、受信した通信メッセージに付与された最新性情報７０３に含まれる同期用カウンタと比較する。そして最新性情報検証部１７は、受信した最新性情報７０３に含まれる同期用カウンタの値が同期用カウンタ１９２４よりも新しいことを確認する。
【００６０】
ステップＳ４０３ではさらに、メッセージ検証部１８は、最新性が確認された最新性情報７０３に含まれる同期用カウンタの値と、更新された通信用カウンタの値と、同期依頼用通信ＩＤ７０１等を用いてＭＡＣを算出する。そしてメッセージ検証部１８は、算出したＭＡＣと受信したＭＡＣ７０４とが一致することを確認する。受信した最新性情報７０３に含まれる同期用カウンタの値が同期用カウンタ１９２４よりも新しいことが確認できない場合、または算出したＭＡＣと受信したＭＡＣ７０４との一致が確認できない場合はステップ４０９に進み、それ以外の場合はステップ４０４に進む。
【００６１】
ステップ４０４では、最新性情報管理部１３はステップ４０３で確認した最新性情報を新たな最新性情報として更新する。続くステップ４０５では、同期処理制御部１９はステップ４０１で該当した通信ＩＤ１９３１を同期対象範囲として特定する。続くステップ４０６では、最新性情報管理部１３はステップ４０４で更新した最新性情報を４０５で特定した同期対象範囲の通信ＩＤ１９３１に紐付いた最新性情報１９２３として登録する。
【００６２】
続くステップ４０７では、メッセージ生成部１５は同期完了ＩＤ、および情報処理装置ＩＤを含んだ同期完了メッセージを生成する。続くステップ４０８では、通信部１０はステップ４０７で生成した同期完了メッセージを通信バス２を介して他の情報処理装置に送信して図１０に示す処理を終了する。ステップ４０９では、同期処理制御部１９は受信した同期依頼メッセージを破棄して図１０に示す処理を終了する。
【００６３】
上述した第１の実施の形態によれば、次の作用効果が得られる。
（１）情報処理装置１は、種別を示す通信ＩＤが付されたメッセージを送受信する。情報処理装置１は、通信の最新性を検証するための通信用カウンタ１９２５を通信ＩＤごとに記憶する記憶部１９Ａと、通信用カウンタを所定の条件に基づき更新する最新性情報管理部１３と、発生した異常の影響範囲を特定する異常監視部１１と、通信用カウンタの同期を依頼するメッセージであることを示す通信ＩＤ、および異常監視部が特定した影響範囲を示す同期対象識別子を含む同期依頼メッセージを生成するメッセージ生成部１５とを備える。そのため特定の情報処理装置１のみを同期の対象とでき、同期の対象外の装置は通常どおりの動作が可能である。
【００６４】
（２）記憶部１９には、異常の種類と影響範囲との対応を示す影響範囲情報１９１が格納される。異常監視部１１は特定された異常の種類と影響範囲情報１９１に基づき影響範囲を特定する。そのため異常の種類に応じて適切な装置と同期できる。
【００６５】
（３）記憶部１９には、通信用カウンタ１９２５の同期の検証に用いられる同期用カウンタ１９２４が格納される。最新性情報管理部１３は、同期後の通信用カウンタの値および同期後の同期用カウンタ１９２４の値を決定する。同期依頼メッセージには、同期後の通信用カウンタ１９２５の値および同期後の同期用カウンタ１９２４の値を示す情報が含まれる。そのため同期後のカウンタの値を完全に一致させることができる。
【００６６】
（４）最新性情報管理部１３は、同期対象となる通信ＩＤが複数存在する場合は、同期対象となる複数の通信ＩＤに対応する同期用カウンタ１９２４の値のうち、最も大きい同期用カウンタ１９２４の値に基づき、同期後の同期用カウンタ１９２４の値を決定する。そのため効率的に同期を行うことができる。
【００６７】
（５）最新性情報管理部１３は、同期対象となる通信ＩＤが複数存在する場合は、同期対象となる複数の通信ＩＤに対応する同期用カウンタ１９２４の値のうち、最も大きい同期用カウンタ１９２４の値に１を加えて同期後の同期用カウンタ１９２４の値とし、同期後の通信用カウンタ１９２５の値をゼロとする。
【００６８】
（６）同期対象識別子７０２には、同期対象となる通信ＩＤを示す情報、または異常が発生した情報処理装置を示す情報が含まれる。そのため同期依頼メッセージを受信したそれぞれの情報処理装置１が同期の要否を判断するので、通信バス２に接続される情報処理装置１が増加しても同期依頼メッセージは特に変更する必要がなく、ネットワーク構成の変更が容易である。
【００６９】
（７）最新性情報管理部１３は、メッセージを受信すると受信したメッセージに含まれる通信ＩＤに対応する通信用カウンタの値を１増加させる。最新性情報管理部１３は、受信したメッセージに含まれる通信ＩＤが通信用カウンタ１９２５の同期を依頼するメッセージであることを示す通信ＩＤ以外の場合は、受信したメッセージに含まれる通信用カウンタ１９２５の値と、最新性情報管理部１３が１増加させた後の通信用カウンタ１９２５の値とを比較することで受信したメッセージの最新性を確認する。
【００７０】
（変形例１）
上述した実施の形態では、異常検知部１１Ａは情報処理装置１に備えられた。しかし情報処理装置１は異常検知部１１Ａを備えず、通信バス２に接続された他の装置に異常検知部１１Ａが備えられてもよい。その場合は異常監視部１１は、他の装置に備えられた異常検知部１１Ａから異常コード１９１１を受信する。
【００７１】
（変形例２）
通信バス２は、ＩＥＥＥ８０２．３、ＭＯＳＴ、ＦｌｅｘＲａｙなどＣＡＮ以外の通信プロトコルに対応する通信バスでもよい。通信バス２がＩＥＥＥ８０２．３に対応する場合は、通信ＩＤは宛先ＩＰアドレスと送信元ＩＰアドレスの組み合わせでもよいし、ペイロードに含まれる情報であってもよい。たとえばＩＥＥＥ８０２．３のパケットのペイロードの特定の領域に本実施の形態で説明した通信ＩＤを含めて、これを用いてもよい。すなわち通信ＩＤは、通信プロトコルのヘッダ部に格納される情報に限定されない。
【００７２】
（変形例３）
情報処理装置１のＲＡＭ１９Ｂにはスロット情報が格納されなくてもよい。その場合には、通常メッセージにはスロットＩＤではなく通信ＩＤや装置ＩＤを格納する。
【００７３】
（変形例４）
上述した実施の形態では、情報処理装置１は車載ネットワークに搭載された。しかし情報処理装置１が搭載される場所はこれに限定されず、制御系システムや情報系システムにも適用可能である。
【００７４】
（変形例５）
同期依頼メッセージに同期後の通信用カウンタの値を含めず、事前に取り決めた値、たとえばゼロを用いることにしてもよい。
【００７５】
―第２の実施の形態―
図１１〜図１３を参照して、情報処理装置の第２の実施の形態を説明する。以下の説明では、第１の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第１の実施の形態と同じである。本実施の形態では、主に、通信バス上に管理装置が存在する点で、第１の実施の形態と異なる。
【００７６】
図１１は、第２の実施の形態における情報処理装置１を含むネットワークＮの構成図である。ネットワークＮには、第１情報処理装置１Ａ、第２情報処理装置１Ｂ、第３情報処理装置１Ｃ、第４情報処理装置１Ｄ、第５情報処理装置１Ｅ、第６情報処理装置１Ｆ、第７情報処理装置１Ｇ、第８情報処理装置１Ｈ、第９情報処理装置１Ｉ、および管理装置９５０が接続される。以下では、第１情報処理装置１Ａ、第２情報処理装置１Ｂ、第３情報処理装置１Ｃ、第４情報処理装置１Ｄ、第５情報処理装置１Ｅ、第６情報処理装置１Ｆ、第７情報処理装置１Ｇ、第８情報処理装置１Ｈ、および第９情報処理装置１Ｉを区別しない場合にこれらを情報処理装置１と呼ぶ。
【００７７】
第１情報処理装置１Ａ、第２情報処理装置１Ｂ、および第３情報処理装置１Ｃは第１セグメント２１に接続される。第４情報処理装置１Ｄ、第５情報処理装置１Ｅ、および第６情報処理装置１Ｆは第２セグメント２２に接続される。第７情報処理装置１Ｇ、第８情報処理装置１Ｈ、および第９情報処理装置１Ｉは第３セグメント２３に接続される。管理装置９５０は、第１セグメント２１、第２セグメント２２、および第３セグメント２３に接続される。
【００７８】
管理装置９５０はあるセグメントから受信した通信メッセージを他のセグメントに送信する。ただし管理装置９５０は、後述するように同期依頼メッセージはその内容に基づき送信するセグメントを決定する。すなわち管理装置９５０は、特定の条件に合致する同期依頼メッセージは、あるセグメントには送信しないことがある。
【００７９】
図１１において、それぞれの情報処理装置１の内部には、その情報処理装置１が送信する通信メッセージに付されるメッセージＩＤを「送信ＩＤ」として記載し、その情報処理装置１が受信する通信メッセージに付されるメッセージＩＤを「受信ＩＤ」として記載している。たとえば第１情報処理装置１Ａの送信ＩＤは「０ｘ００１」および「０ｘ００２」であり、第１情報処理装置１Ａの受信ＩＤは「０ｘ００３」および「０ｘ００５」である。第１情報処理装置１Ａが送信するＩＤが「０ｘ００１」の通信メッセージを受信する情報処理装置１は、受信ＩＤが「０ｘ００１」と記載されている情報処理装置１なので、第２情報処理装置１Ｂおよび第７情報処理装置１Ｇである。
【００８０】
管理装置９５０には、各セグメントにおいて送受信される通信メッセージのＩＤの情報があらかじめ格納されている。ただし管理装置９５０にはそれぞれの情報処理装置１単位での送信ＩＤや受信ＩＤの情報が格納されていなくてもよい。図１１では、後述する動作例の説明のために、第７情報処理装置１Ｇが送受信する通信ＩＤを太字で記載している。
【００８１】
（管理装置９５０の構成）
図１２は管理装置９５０の構成を示す図である。管理装置９５０は、通信部９５１と、転送部９５２と、記憶部９６０とを備える。通信部９５１はたとえばＣＡＮに対応する通信インタフェースであり、第１セグメント２１、第２セグメント２２、および第３セグメント２３と通信する。転送部９５２は、たとえば不図示のＲＯＭに格納されたプログラムをＣＰＵがＲＡＭに展開して実行することで実現される。転送部９５２は、管理装置９５０がいずれかのセグメントから同期依頼メッセージを受信すると、同期依頼メッセージに基づき通信用カウンタを同期すべき情報処理装置１が属するセグメントにのみ同期依頼メッセージを転送する。転送部９５２の動作は後述する。
【００８２】
記憶部９６０は不揮発性の記憶装置、たとえばフラッシュメモリであり、宛先対応表９６１、ネットワーク情報９６２、およびスロット情報９６３が格納される。宛先対応表９６１とは、同期依頼用通信ＩＤを情報処理装置１ごとに割り当てることができる場合における、同期依頼用通信ＩＤ７０１と宛先の情報処理装置１との対応を示す情報である。ネットワーク情報９６２とは、図１１に示す情報である。すなわち、ネットワーク情報９６２とはそれぞれの情報処理装置１についての、属するセグメント、送信ＩＤ、および受信ＩＤの情報が格納される。スロット情報９６３とは、通信メッセージに含まれるスロットＩＤの情報であり、たとえば図２に示したような通信ＩＤスロットのスロットＩＤと通信ＩＤの対応、および装置ＩＤスロットのスロットＩＤと装置ＩＤの対応である。
【００８３】
（管理装置９５０の動作）
図１３は管理装置９５０の転送部９５２の動作を示すフローチャートである。ステップ５０１では管理装置９５０は、同期依頼用通信ＩＤが情報処理装置ごとに割り当てられているか否かを判断する。第１の実施の形態で説明したように、同期依頼用通信ＩＤが情報処理装置ごとに割り当てられているか否かは使用可能な通信ＩＤの数と情報処理装置１の数などで制約され、ネットワークの設計事項となる。そのため同期依頼用通信ＩＤが情報処理装置ごとに割り当てられているか否かはあらかじめ決定され、その情報は管理装置９５０の記憶部９６０に格納される。管理装置９５０はステップ５０１を肯定判断するとステップ５０２に進み、否定判断するとステップ５０３に進む。
【００８４】
ステップ５０２では、管理装置９５０は宛先対応表９６１を参照し、受信した同期依頼メッセージに含まれる同期依頼用通信ＩＤ７０１に対応する情報処理装置１、すなわちその同期依頼メッセージの宛先となる情報処理装置１を特定する。さらに管理装置９５０は、ネットワーク情報９６２を参照し、その特定した情報処理装置１が属するセグメントを特定してステップ５１０に進む。
【００８５】
ステップ５０３では管理装置９５０は、受信した同期依頼メッセージに含まれる同期範囲８０１の値を判断する。管理装置９５０は、同期範囲８０１の値が「０」と判断する場合はステップ５０４に進み、「１」と判断する場合はステップ５０７に進む。ステップ５０４では管理装置９５０は、同期対象スロット８０２に格納されているスロットＩＤを通信スロットＩＤとして解釈し、スロット情報９６３と合わせることで同期対象の通信ＩＤを特定してステップ５０５に進む。たとえばスロット情報９６３が図２に示す例であり、同期対象スロット８０２に格納されているスロットＩＤが「１」の場合は、通信ＩＤは「０ｘ００１」と特定される。
【００８６】
ステップ５０５では管理装置９５０は、ステップ５０４またはステップ５０８で特定した通信ＩＤが受信されるセグメントを特定する。たとえば特定された通信ＩＤが「０ｘ００１」の場合は、ネットワーク情報９６２を参照して送信ＩＤまたは受信ＩＤが「０ｘ００１」の情報処理装置１が含まれるセグメントを特定する。すなわち、第１情報処理装置１Ａおよび第２情報処理装置１Ｂが属する第１セグメント２１と、第７情報処理装置１Ｇが属する第３セグメント２３が特定される。
【００８７】
ステップ５０７では管理装置９５０は、装置ＩＤ８０３を参照して送信元の情報処理装置１を特定してステップ５０５に進む。続くステップ５０８では管理装置９５０は、特定した情報処理装置１に関連する通信ＩＤをネットワーク情報９６２を参照して特定する。たとえば特定した情報処理装置１が第７情報処理装置１Ｇの場合は、たとえば図１１に示す第７情報処理装置１Ｇが送信または受信するＩＤである５つのＩＤが特定される。
【００８８】
ステップ５０２またはステップ５０５の次に実行されるステップ５１０では管理装置９５０は、ステップ５０２またはステップ５０５で特定したセグメントに対して、受信した同期依頼メッセージと同一の同期依頼メッセージを送信する。ただし管理装置９５０は、同期依頼メッセージを受信したセグメントに対しては、その同期依頼メッセージの送信は行わない。
【００８９】
（動作例）
第７情報処理装置１Ｇが第７情報処理装置１Ｇ自身の異常なリセットを検出して、同期依頼メッセージを送信したケースの動作を説明する。このケースでは、第７情報処理装置１Ｇが送信するメッセージＩＤおよび第７情報処理装置１Ｇが受信するＩＤについて同期が必要となる。具体的には、第１情報処理装置１Ａ、第２情報処理装置１Ｂ、第８情報処理装置１Ｈ、および第９情報処理装置１Ｉが送信または受信する、図８において太字で示すＩＤが同期が必要となる。第７情報処理装置１Ｇが送信した同期依頼メッセージは、同一の第３セグメント２３に属する第８情報処理装置１Ｈおよび第９情報処理装置１Ｉには、直接に届けられる。またこの同期依頼メッセージは、管理装置９５０にも受信される。
【００９０】
管理装置９５０は、前述の処理を行い、ステップ５０２またはステップ５０５において第１セグメント２１および第３セグメント２３を特定する。そして管理装置９５０はステップ５１０において、その同期依頼メッセージはもともと第３セグメント２３から受信したものなので、送信先から第３セグメント２３を除いた第１セグメント２１へのみ送信する。そのため第２セグメント２２には、第７情報処理装置１Ｇが送信した同期依頼メッセージそのものが流れないので第２セグメント２２の通信量を削減できる。
【００９１】
上述した第２の実施の形態によれば、次の作用効果が得られる。
（８）管理装置９５０は、情報処理装置１が接続される通信セグメント同士の通信を中継する。複数の情報処理装置１は、２以上のセグメントに分かれて配置される。管理装置９５０は、２以上のセグメントのそれぞれと通信する通信部９５１と、同期依頼メッセージを受信すると、同期依頼メッセージに基づき通信用カウンタを同期すべき情報処理装置１が属するセグメントにのみ同期依頼メッセージを転送する転送部９５２とを備える。そのため管理装置９５０は、同期依頼メッセージを必要なセグメントのみに送信し、同期が不要なセグメントへの影響を排除できる。
【００９２】
上述した各実施の形態および変形例において、各装置で利用する暗号用の鍵およびシードは安全に配布、管理、更新されていればよく、エンジン起動時／停止時、製品開発時、メンテナンス時などの任意のタイミングで配布や更新が行なわれてもよい。上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【符号の説明】
【００９３】
１…情報処理装置
１０…通信部
１１…異常監視部
１２…同期範囲特定部
１３…最新性情報管理部
１４…最新性情報算出部
１５…メッセージ生成部
１６…同期処理実行判定部
１７…最新性情報検証部
１８…メッセージ検証部
１９…同期処理制御部
１９１…影響範囲情報
１９２…最新性関連情報
１９３…通信関係情報
７０２…同期対象識別子
７０３…最新性情報
９５０…管理装置
９６０…記憶部
９６１…宛先対応表
９６２…ネットワーク情報
９６３…スロット情報
【図１】
2020065176.tif 000003
【図２】
2020065176.tif 000004
【図３】
2020065176.tif 000005
【図４】
2020065176.tif 000006
【図５】
2020065176.tif 000007
【図６】
2020065176.tif 000008
【図７】
2020065176.tif 000009
【図８】
2020065176.tif 000010
【図９】
2020065176.tif 000011
【図１０】
2020065176.tif 000012
【図１１】
2020065176.tif 000013
【図１２】
2020065176.tif 000014
【図１３】
2020065176.tif 000015