(57)【要約】【課題】ＥＣＵの追加や交換を容易に行うことが可能となる車載用ゲートウェイを提供する。【解決手段】ゲートウェイは、外部装置やＥＣＵから中継要求フレームを受信すると、該フレームに設定されている中継先のＥＣＵ等の論理アドレスに基づき、ルーティングテーブルから中継先の物理アドレス等を検索し（Ｓ１０５）、検索に成功すると（Ｓ１１０：Ｙｅｓ）、検索結果に基づき中継を行う。一方、検索に失敗した場合（Ｓ１１０：Ｎｏ）、ゲートウェイは、中継先に対し物理アドレス等の送信を指示するフレームをブロードキャスト送信し（Ｓ１１５）、中継先から該物理アドレス等を受信すると、ルーティングテーブルにこれを登録すると共に（Ｓ１２５）、中継先のＥＣＵ等への中継を行う。【選択図】図６
2014154920.tif 000002
【特許請求の範囲】
【請求項１】
自車両に設けられた複数の車載ネットワーク（４０）を構成する各車載装置（３０）、或いは、自装置に一時的に接続された外部装置（２０）と通信を行う通信手段と（１５〜１７）、
前記車載装置を示す論理アドレスと、該論理アドレスが示す前記車載装置に関する識別情報とが対応付けて登録されている対応情報（５０）を記憶している記憶手段（１２，１３）と、
前記通信手段を介して、前記車載装置或いは前記外部装置から、前記論理アドレスを含む中継要求データ（６０）を受信すると、前記対応情報に登録されている、該論理アドレスが示す前記車載装置に関する前記識別情報を特定する特定手段（Ｓ１０５）と、
前記特定手段が前記識別情報の特定に失敗した場合、該識別情報に係る前記車載装置に対し該識別情報を含む応答データ（３１０，３３０，３５０，３７０）を自装置に送信することを指示する指示データ（３００，３２０，３４０，３６０）を、前記通信手段を介して複数の前記車載装置にブロードキャスト送信する指示手段（Ｓ１１５）と、
前記通信手段を介して前記応答データを受信すると、該応答データに含まれている前記識別情報と、該識別情報に係る前記車載装置を示す前記論理アドレスとを、前記対応情報に対応付けて登録する登録手段（Ｓ１２５）と、
前記特定手段が前記識別情報の特定に成功した場合、該識別情報と、該識別情報に係る前記車載装置を示す前記論理アドレスを含む前記中継要求データとに基づき、該車載装置に対応する中継データを生成し、前記特定手段が前記識別情報の特定に失敗した場合、該失敗により送信された前記指示データに応じて受信した前記応答データに含まれる前記識別情報と、該識別情報に係る前記車載装置を示す前記論理アドレスを含む前記中継要求データとに基づき、該車載装置に対応する前記中継データを生成する生成手段（Ｓ１３０）と、
前記通信手段を介して、前記生成手段により生成された前記中継データを、該中継データに対応する前記車載装置に送信する送信手段（Ｓ１３５）と、
を備えることを特徴とする車載用中継装置（１０）。
【請求項２】
請求項１に記載の車載用中継装置において、
前記中継要求データとは、いずれかの前記車載装置から他の前記車載装置に対して送信されるデータであること、
を特徴とする車載用中継装置。
【請求項３】
請求項１または請求項２に記載の車載用中継装置において、
前記中継要求データとは、前記外部装置から、前記車載装置の故障診断を行うため送信されたデータであること、
を特徴とする車載用中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車載装置へのデータの中継を行う車載用中継装置に関する。
【背景技術】
【０００２】
近年では、車両には多くの車載装置が搭載されているが、これらの車載装置はその機能，用途等に応じて分類され、同種の機能，用途等を有する複数の車載装置は、例えばＣＡＮ，ＬＩＮ等の通信プロトコルに準拠した車載ネットワークを形成している。
【０００３】
そして、各車載ネットワークは中継装置に接続されており、異なる車載ネットワークに接続された車載装置は、中継装置を経由して通信を行う。また、中継装置に故障診断用の外部装置を接続し、中継装置を経由して外部装置と車載装置とが通信を行うことで、車載装置の故障診断を行うことが知られている。
【０００４】
ここで、特許文献１に記載のゲートウェイは、自装置を統括制御するＣＰＵとは別に、中継されるメッセージに対応するイベントや、該イベントの実行タイミング等が登録された情報を有するゲートウェイ制御ユニットを備える。そして、ゲートウェイ制御ユニットは、メッセージを受信すると、該情報に基づき該メッセージに対応するイベントを登録された実行タイミングにて実行し、これにより、ＣＰＵの処理負荷を低減させつつ高速にメッセージの中継が行われる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００９−５２７１６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、中継装置は、各車載装置の識別情報や、該車載装置が接続されている車載ネットワークの識別情報等を有しており、これらの情報に基づき、異なる車載ネットワークに接続された車載装置間、或いは、外部装置と車載装置との間の通信を中継する。
【０００７】
したがって、車載装置の交換や追加がなされた場合には、交換等された新たな車載装置の識別情報や、該車載装置が接続されている車載ネットワークの識別情報を中継装置に設定する必要があり、車載装置の交換や追加を容易に行うことができないという問題があった。
【０００８】
本願発明は上記課題に鑑みてなされたものであり、車載装置の追加や交換を容易に行うことが可能となる車載用中継装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題に鑑みてなされた請求項１に係る車載用中継装置は、自車両に設けられた複数の車載ネットワークを構成する各車載装置、或いは、自装置に一時的に接続された外部装置と通信を行う通信手段と、車載装置を示す論理アドレスと、該論理アドレスが示す車載装置に関する識別情報とが対応付けて登録されている対応情報を記憶している記憶手段と、通信手段を介して、車載装置或いは外部装置から、論理アドレスを含む中継要求データを受信すると、対応情報に登録されている、該論理アドレスが示す車載装置に関する識別情報を特定する特定手段と、を備える。
【００１０】
また、該車載用中継装置は、特定手段が識別情報の特定に失敗した場合、該識別情報に係る車載装置に対し該識別情報を含む応答データを自装置に送信することを指示する指示データを、通信手段を介して複数の車載装置にブロードキャスト送信する指示手段と、通信手段を介して応答データを受信すると、該応答データに含まれている識別情報と、該識別情報に係る車載装置を示す論理アドレスとを、対応情報に対応付けて登録する登録手段と、を備える。
【００１１】
また、該車載用中継装置は、特定手段が識別情報の特定に成功した場合、該識別情報と、該識別情報に係る車載装置を示す論理アドレスを含む中継要求データとに基づき、該車載装置に対応する中継データを生成し、特定手段が識別情報の特定に失敗した場合、該失敗により送信された指示データに応じて受信した応答データに含まれる識別情報と、該識別情報に係る車載装置を示す論理アドレスを含む中継要求データとに基づき、該車載装置に対応する中継データを生成する生成手段と、通信手段を介して、生成手段により生成された中継データを、該中継データに対応する車載装置に送信する送信手段と、を備える。
【００１２】
このような構成によれば、車載装置や外部装置は、送信先となる車載装置や外部装置の論理アドレスが設定された中継要求データを車載用中継装置に送信することで、送信先の車載装置等にデータを送信することができる。このため、車載装置等は、送信先の車載装置等の物理アドレスや通信プロトコル等を把握していなくても、論理アドレスさえ把握していれば、車両用中継装置を経由して他の車載装置等と通信を行うことができる。
【００１３】
また、車載用中継装置の対応情報に送信先の論理アドレスが登録されてない場合には、車載用中継装置では、指示データをブロードキャスト送信することでアドレス解決がなされ、該論理アドレスに対応する車載装置等に関する識別情報が対応情報に登録される。これにより、車載用中継装置は、送信先の車載装置等に関する識別情報を把握していなくても、該車載装置等にデータを中継することができる。
【００１４】
このため、車載装置が新たに追加された場合や、車載装置が交換された場合であっても、他の車載装置は、新たに追加等された車載装置の論理アドレスを把握していれば、車載用中継装置を介してデータの送受信を行うことができる。また、外部装置についても同様に、新たに追加等された車載装置の論理アドレスを把握していれば、車載用中継装置を介して該車載装置とデータの送受信を行い、該車載装置の故障診断等を行うことができる。
【００１５】
したがって、請求項１に記載の車載用中継装置によれば、車載装置の追加や交換を容易に行うことが可能となる。
【図面の簡単な説明】
【００１６】
【図１】ゲートウェイの構成を示すブロック図である。
【図２】ルーティングテーブルの構成を示すブロック図である。
【図３】アプリケーションレベルの中継が行われる場合のゲートウェイ等の通信機能の階層構造を示す説明図である。
【図４】ネットワークレベルの中継が行われる場合のゲートウェイ等の通信機能の階層構造を示す説明図である。
【図５】中継要求フレームの構造を示す説明図である。
【図６】中継処理のフローチャートである。
【図７】外部通信処理のフローチャートである。
【図８】アプリケーションレベルの中継が行われる場合の、ＣＡＮに準拠したアドレス解決指示フレーム，アドレス解決応答フレームの構造を示す説明図である。
【図９】アプリケーションレベルの中継が行われる場合における、ＣＡＮに準拠した各車載ネットワークに接続された外部装置とＥＣＵとの間で中継が行われる際のアドレス解決についてのフローチャートである。
【図１０】ネットワークレベルの中継が行われる場合の、ＣＡＮに準拠したアドレス解決指示フレーム，アドレス解決応答フレームの構造を示す説明図である。
【図１１】ネットワークレベルの中継が行われる場合における、ＣＡＮに準拠した各車載ネットワークに接続された外部装置とＥＣＵとの間で中継が行われる際のアドレス解決についてのフローチャートである。
【図１２】アプリケーションレベルの中継が行われる場合の、ＬＩＮに準拠したアドレス解決指示フレーム，アドレス解決応答フレームの構造を示す説明図である。
【図１３】アプリケーションレベルの中継が行われる場合の、ＦｌｅｘＲａｙに準拠したアドレス解決指示フレーム，アドレス解決応答フレームの構造を示す説明図である。
【図１４】異なる通信プロトコルに準拠した各車載ネットワークに接続された外部装置とＥＣＵとの間で中継が行われる際のアドレス解決についてのフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について図面を用いて説明する。なお、本発明の実施の形態は、下記の実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態を採りうる。
【００１８】
［構成の説明］
＜ゲートウェイについて＞
本実施形態の車載用のゲートウェイ１０は、ＣＡＮ，ＬＩＮ等の通信プロトコルに準拠した複数の車載ネットワーク４０に接続され、車載ネットワーク４０に接続されたＥＣＵ３０間の通信を中継するよう構成されている（図１参照）。なお、ゲートウェイ１０は、同一の通信プロトコルに準拠した複数の車載ネットワーク４０に接続されていても良い。
【００１９】
また、ゲートウェイ１０は、例えば、ＥＣＵ３０の故障診断用のアプリケーションを搭載したスマートフォンや、故障診断用ツール等として構成された外部装置２０と通信を行うことができる。そして、外部装置２０は、ゲートウェイ１０を経由してＥＣＵ３０と通信を行うことで、ＥＣＵ３０の故障診断等を行うことが可能となっている。
【００２０】
なお、外部装置２０は、無線ＬＡＮ等の通信プロトコルに準拠した無線通信によりゲートウェイ１０と通信を行っても良いし、車載ネットワーク４０に一時的に接続され、該車載ネットワーク４０を介してゲートウェイ１０と通信を行っても良い。また、外部装置２０は、無線通信網にアクセス可能に構成され、無線通信網を介してゲートウェイ１０と通信を行っても良い。
【００２１】
ゲートウェイ１０は、ＣＰＵ１１，ＲＡＭ１２，ＲＯＭ１３，通信部１７，テレマティクス用通信部１６等から構成され、これらは、内部バス１４により接続されている。
ＣＰＵ１１は、ＲＯＭ１３に記憶されているプログラムに従って動作し、ゲートウェイ１０を統括制御する。なお、該プログラムの一つとして、通信部１７を制御するための通信処理部１５が設けられている。
【００２２】
また、テレマティクス用通信部１６は、無線通信網にアクセスするための部位であり、該部位により、無線通信網を介して外部装置２０と通信が行われる。
また、通信部１７は、一例として、無線ＬＡＮ，ＷｉＦｉ，ＢＴ（Bluetooth（登録商標））等に準拠した無線通信を行う部位１７ａ〜１７ｃを有しており、これらの部位により外部装置２０と無線通信が行われる。また、通信部１７は、一例として、ＣＡＮ，ＬＩＮ，ＭＯＳＴ，イーサネット（登録商標），ＦｌｅｘＲａｙ，ＵＳＢ等に準拠した通信を行う部位１７ｄ〜１７ｉを有している。これらの部位により、車載ネットワーク４０を構成するＥＣＵ３０や、車載ネットワーク４０に一時的に接続された外部装置２０と通信が行われる。
【００２３】
そして、ＣＰＵ１１は、通信処理部１５に従い動作することで、通信部１７を介して、外部装置２０や車載ネットワーク４０に接続されたＥＣＵ３０と通信を行う。
また、本実施形態では、各ＥＣＵ３０，外部装置２０には固有の論理アドレスが設定されており、ＥＣＵ３０及び外部装置２０は、ゲートウェイ１０を介して通信を行う場合等には、論理アドレスにより中継先を指定する構成となっている。なお、複数のＥＣＵ３０に対応する論理アドレスが設けられていても良く、このような場合には、該論理アドレスを中継先として指定することで、対応する複数のＥＣＵ３０に同時に中継がなされる。
【００２４】
このような中継を行うため、ゲートウェイ１０は、論理アドレスと、該論理アドレスが設定されたＥＣＵ３０或いは外部装置２０に関する識別情報（例えば物理アドレス）等との対応関係を示すルーティングテーブルを有している。ルーティングテーブルは、ＲＯＭ１３及びＲＡＭ１２に記憶されており、ゲートウェイ１０では、該ルーティングテーブルを検索することで、中継先となる車載ネットワーク４０やＥＣＵ３０等に関する情報が特定される。
【００２５】
さらに、ゲートウェイ１０は、ルーティングテーブルに登録されていない論理アドレスが中継先となっている場合には、アドレス解決を行い、該論理アドレスに対応するＥＣＵ３０或いは外部装置２０に中継を行うために必要な情報を取得する（詳細は後述する）。
【００２６】
＜ルーティングテーブルついて＞
ルーティングテーブル５０には、各ＥＣＵ３０或いは外部装置２０の「論理アドレス」を示す項目が設けられている。そして、「論理アドレス」に対応して、「中継可否情報」，「中継用バッファサイズ」，「中継タイプ」，「ＥＣＵ識別情報」，「通信プロトコル」，「車載ネットワーク識別情報」，「送信Ｉ／Ｆ」，「中継先バッファサイズ」，「履歴情報」等の項目が設けられている（図２参照）。
【００２７】
「中継可否情報」とは、対応する論理アドレスが示すＥＣＵ３０等との通信が許可されたＥＣＵ３０や外部装置２０の論理アドレスを示す項目である。該項目により、例えば、一般ユーザが所持するスマートフォンとして構成された外部装置２０からエアバック等のＥＣＵ３０への通信が禁止され、その結果、例えば、スマートフォンからエアバックの機能を停止させるような不適切な処理が防止される。
【００２８】
また、「中継用バッファサイズ」とは、ゲートウェイ１０が、対応する論理アドレスが示すＥＣＵ３０等への通信を中継する際に用いる中継用バッファのサイズを示す。
具体的に説明すると、例えば、イーサネットはＣＡＮよりも通信速度が速く、１フレームのデータ長も大きい。このため、イーサネットに接続されたＥＣＵ３０からＣＡＮに接続されたＥＣＵ３０への中継を行う場合、中継元から受信したデータを一旦バッファし、該データを分割して順次中継する蓄積中継を行う必要がある。「中継用バッファサイズ」とは、このような蓄積中継等に用いる中継用バッファのサイズを示す。
【００２９】
また、「中継タイプ」とは、ゲートウェイ１０が対応する論理アドレスが示すＥＣＵに中継を行う際の方式を示す項目である。
中継方式としては、上述した蓄積中継のほか、中継元からフレームを受信する度に、必要に応じて該フレームに改変を加えて中継先の車載ネットワーク４０等に送出する方式（逐次中継）が考えられる。中継方式を蓄積中継とするか逐次中継とするかは、例えば、中継先となる車載ネットワーク４０等の通信速度等に基づき決定される。
【００３０】
また、「ＥＣＵ識別情報」とは、対応する論理アドレスが示すＥＣＵ３０等に関する識別情報（例えば物理アドレス）を示す項目である。なお、該ＥＣＵ３０等がＣＡＮに接続されている場合には、該項目は、例えば、該ＥＣＵ３０等への送信時や、該ＥＣＵ３０等からの応答時に用いられるＣＡＮ−ＩＤ等通信上必要な情報を引き当てるために使用する。
【００３１】
また、「通信プロトコル」とは、対応する論理アドレスが示すＥＣＵ３０等が接続されている車載ネットワーク４０の通信プロトコルや、該論理アドレスが示す外部装置２０と無線通信を行う際の通信プロトコルを示す。
【００３２】
また、「車載ネットワーク識別情報」とは、対応する論理アドレスが示すＥＣＵ３０等が接続されている車載ネットワーク４０の識別情報を示す。
また、「送信Ｉ／Ｆ」とは、対応する論理アドレスが示すＥＣＵ３０等（中継先のＥＣＵ３０等）が接続されている車載ネットワーク４０と中継元の車載ネットワーク４０の通信プロトコルが異なる場合における、中継するフレームの変換方法を示す。
【００３３】
また、「中継先バッファサイズ」とは、論理アドレスに対応するＥＣＵ３０等が備える通信用のバッファサイズを示す。ゲートウェイ１０は、該ＥＣＵ３０への中継を行う場合には、該バッファサイズを考慮して該ＥＣＵ３０に中継するフレームのデータ長等を決定する。
【００３４】
また、「履歴情報」とは、論理アドレスに対応するＥＣＵ３０等への中継の記録を示す。「履歴情報」は、ＲＡＭ１２や、図示しない書き換え可能な不揮発性メモリ（フラッシュメモリ等）に保存することが考えられる。
【００３５】
なお、ルーティングテーブル５０には、ＲＯＭ１３（或いは、図示しないフラッシュメモリ等）に保存されている部分（プリセットテーブル）と、ＲＡＭ１２（或いは、図示しないフラッシュメモリ等）に保存されている部分（キャッシュテーブル）が存在する。
【００３６】
そして、通信を行うことが予定されているＥＣＵ３０や外部装置２０の論理アドレス等は、プリセットテーブルに登録されている。一方、車載ネットワーク４０に新たに接続されたＥＣＵ３０等の論理アドレス等は、後述するアドレス解決によりキャッシュテーブルに登録される。
【００３７】
また、複数のＥＣＵ３０を示す論理アドレスについては、該論理アドレスに対応する各項目に、これらのＥＣＵ３０に関する情報が登録されている。
＜ゲートウェイ等の通信機能について＞
次に、ゲートウェイ１０，ＥＣＵ３０，外部装置２０における通信機能について説明する。該通信機能は、ＡＰ（アプリケーション）層，ＴＰ（トランスポート）層，ＮＷ（ネットワーク）層，ＤＬ（データリンク）層，物理層に階層化される（図３，４参照）。
【００３８】
また、上述したように、ゲートウェイ１０は、蓄積中継と逐次中継の２種類の方式により中継を行うことができるが、各方式の中継がなされる場合には、通信機能の各階層で行われる処理が一部異なるものとなる。
【００３９】
まず、蓄積中継が行われる場合であるが（図３参照）、蓄積中継は、主に、異なる通信プロトコルに準拠した車載ネットワーク４０に接続されたＥＣＵ３０や外部装置２０の通信を中継する場合に行われる（無論、同一の通信プロトコルに準拠した車載ネットワーク４０に接続されたＥＣＵ３０や外部装置２０の通信を中継する場合に行われる場合もある）。また、このほかにも、無線ＬＡＮや無線通信網等を介してゲートウェイ１０と通信を行う外部装置２０とＥＣＵ３０との間の通信を中継する場合にも、主に蓄積中継が行われる。
【００４０】
蓄積中継が行われる場合には、ＡＰ層中心に中継やアドレス解決が行われる（換言すれば、蓄積中継は、アプリケーションレベルでの中継と言える）。
すなわち、ゲートウェイ１０では、通信部１７がＤＬ層，物理層として機能し、通信処理部１５がＴＰ層，ＮＷ層として機能する。また、ゲートウェイ１０には、ＣＰＵ１１を制御するプログラムとしてＧＷ制御部１１ａ，アドレス解決部１１ｂが設けられており、これらがＡＰ層として機能する。
【００４１】
一方、ＥＣＵ３０は、自装置が接続された車載ネットワーク４０の通信プロトコルに準拠した通信を行う通信部３４がＤＬ層，物理層として機能し、通信部３４を制御する通信処理部３３がＴＰ層，ＮＷ層として機能する。また、ＥＣＵ３０には、ＣＰＵを制御するプログラムであって、ＡＰ層として機能するサーバ部３１，アドレス解決部３２が設けられている。サーバ部３１は、ゲートウェイ１０を経由して他のＥＣＵ３０や外部装置２０と通信を行い、アドレス解決部３２は、上述したアドレス解決のための処理を行う。
【００４２】
また、外部装置２０は、予め定められた通信プロトコルに準拠した通信を行う通信部２３がＤＬ層，物理層として機能し、通信部２３を制御する通信処理部２２がＴＰ層，ＮＷ層として機能する。また、外部装置２０のＣＰＵを制御するプログラムであって、ＡＰ層として機能するクライアント部２１が設けられ、該クライアント部２１は、ゲートウェイ１０を経由してＥＣＵ３０と通信を行うことで、ＥＣＵ３０の故障診断等を行う。
【００４３】
そして、外部装置２０やＥＣＵ３０からゲートウェイ１０に中継要求フレームの送信が開始されると、ゲートウェイ１０のＧＷ制御部１１ａは、通信部１７，通信処理部１５を介してこれらの中継要求フレームを受信し、ＲＡＭ１２に設けられたバッファに保存する。
【００４４】
その後、全ての中継要求フレームの受信を完了すると、ＧＷ制御部１１ａは、該中継要求フレームに中継先として設定された論理アドレスに基づき、ルーティングテーブル５０から中継先のＥＣＵ３０の物理アドレスや車載ネットワーク４０の識別情報等を検索する。そして、検索結果に基づき、中継先に対応する中継フレームを生成し、通信処理部１５，通信部１７を介して、中継先のＥＣＵ３０が接続された車載ネットワーク４０に送出する。
【００４５】
また、アドレス解決部１１ｂは、上述したアドレス解決のための処理を行う。
これに対し、逐次中継は、主に、同一の通信プロトコルに準拠した車載ネットワーク４０に接続されたＥＣＵ３０や外部装置２０の通信を中継する場合に行われる（無論、異なる通信プロトコルに準拠した車載ネットワーク４０に接続されたＥＣＵ３０や外部装置２０間の通信を中継する場合に行われても良い）。なお、図４は、一例として、ＣＡＮに準拠した異なる車載ネットワーク４０に接続された外部装置２０とＥＣＵ３０との間の通信を中継する場合を示している。
【００４６】
逐次中継が行われる場合には、ＮＷ層，ＴＰ層，ＡＰ層を中心に中継やアドレス解決が行われる（換言すれば、逐次中継は、ネットワークレベルでの中継と言える）。
すなわち、ゲートウェイ１０では、通信部１７がＤＬ層，物理層として機能する。また、ゲートウェイ１０には、ＣＰＵ１１を制御するプログラムと通信処理部１５とから構成されるルータ制御部１５ａ，アドレス解決部１５ｂが設けられており、これらがＡＰ層，ＴＰ層，ＮＷ層として機能する。
【００４７】
一方、ＥＣＵ３０は、通信部３４がＤＬ層，物理層として機能し、通信処理部３３がＴＰ層，ＮＷ層として機能し、サーバ部３１がＡＰ層として機能する。また、ＣＰＵを制御するプログラムと、通信処理部３３とから構成されるアドレス解決部３５が設けられており、該アドレス解決部３５は、ＡＰ層，ＴＰ層，ＮＷ層として機能し、上述したアドレス解決のための処理を行う。
【００４８】
なお、外部装置２０は、蓄積中継が行われる場合と同様の構成を有している。
そして、外部装置２０やＥＣＵ３０からゲートウェイ１０に中継要求フレームの送信が開始されると、ゲートウェイ１０のルータ制御部１５ａは、通信部１７を介して該中継要求フレームを受信する。また、ルータ制御部１５ａは、該中継要求フレームに送信先として設定された論理アドレスに基づき、ルーティングテーブル５０から送信先のＥＣＵ３０や車載ネットワーク４０の識別情報等を検索する。
【００４９】
さらに、ルータ制御部１５ａは、必要に応じて検索結果に基づき該中継要求フレームに改変を加え、中継フレームを生成し、通信部１７を介して送信先のＥＣＵ３０が接続された車載ネットワーク４０に送信する。なお、該改変の具体例としては、車載ネットワーク４０がＣＡＮに準拠している場合であれば、送信先に応じてＣＡＮ−ＩＤを変換すること等が考えられる。
【００５０】
また、アドレス解決部１５ｂは、上述したアドレス解決のための処理を行う。
＜中継要求フレームについて＞
ゲートウェイ１０による中継の際、中継元のＥＣＵ３０等からゲートウェイ１０に送信される中継要求フレーム６０は、概略的には、プロトコル依存部６１，ソースアドレス６２，ターゲットアドレス６３，メッセージ６４等から構成されている（図５参照）。
【００５１】
プロトコル依存部６１は、中継元（中継要求フレーム６０の送信元）のＥＣＵ３０等からゲートウェイ１０に送信を行うためのデータであり、これらの装置間の通信プロトコルに応じて定められる。
【００５２】
また、ソースアドレス６２は、中継元のＥＣＵ３０或いは外部装置２０の論理アドレスを示すデータである。
また、ターゲットアドレス６３は、中継先のＥＣＵ３０或いは外部装置２０の論理アドレスを示すデータである。
【００５３】
また、メッセージ６４は、中継先のＥＣＵ３０等に対する指示内容等を示すデータである。具体的には、例えば、外部装置２０からＥＣＵ３０の故障診断を指示する場合であれば、故障コードや指定したアドレスに保存されたデータの送信要求をメッセージとすることが考えられる。また、例えば、ＥＣＵ３０から外部装置２０に対し故障診断に対する応答を行う場合であれば、故障コードや、該外部装置２０からの指示に応じて読み出したデータをメッセージとすることが考えられる。
【００５４】
［動作の説明］
＜中継処理について＞
次に、ゲートウェイ１０がＥＣＵ３０間、或いは、ＥＣＵ３０，外部装置２０間の通信を中継する中継処理について、図６に記載のフローチャートを用いて説明する。なお、本処理は、ゲートウェイ１０の起動時に開始される。
【００５５】
Ｓ１００では、ゲートウェイ１０のＣＰＵ１１は、ＥＣＵ３０や外部装置２０からの中継要求フレーム６０の受信を待つ。なお、中継要求フレーム６０は、車載ネットワーク４０から受信する場合や、無線通信を介して受信する場合や、テレマティクス用通信部１６を介して無線通信網から受信する場合が想定される。そして、ＣＰＵ１１は、中継要求フレーム６０を受信すると、Ｓ１０５に処理を移行する。
【００５６】
Ｓ１０５では、ＣＰＵ１１は、受信した中継要求フレーム６０のソースアドレス６２を、中継元のＥＣＵ３０等の論理アドレスとして特定すると共に、ターゲットアドレス６３を、中継先のＥＣＵ３０等の論理アドレスとして特定する。そして、ＣＰＵ１１は、中継先の論理アドレスをルーティングテーブル５０から検索する。
【００５７】
続くＳ１１０では、ＣＰＵ１１は、中継先の論理アドレスの検索に成功したか否かを判定し、成功した場合には（Ｓ１１０：Ｙｅｓ）、Ｓ１３０に処理を移行すると共に、失敗した場合には（Ｓ１１０：Ｎｏ）、Ｓ１１５に処理を移行する。
【００５８】
Ｓ１１５では、ＣＰＵ１１は、車載ネットワーク４０や無線通信を介して当該ゲートウェイ１０に接続されている全てのＥＣＵ３０や外部装置２０を対象として、アドレス解決指示フレーム（詳細は後述する）をブロードキャスト送信する。このアドレス解決指示フレームには、中継先の論理アドレスが含まれており、該論理アドレスが示すＥＣＵ３０等に対し、当該ゲートウェイ１０に自装置の識別情報等を送信することを指示するものである。
【００５９】
なお、この識別情報とは、中継先の論理アドレスが示すＥＣＵ３０の物理アドレスであっても良い。また、該ＥＣＵ３０が接続された車載ネットワーク４０の通信プロトコルがＣＡＮである場合には、該ＥＣＵ３０への送信や応答に用いられるＣＡＮ−ＩＤであっても良い。
【００６０】
また、アドレス解決の対象となる車載ネットワーク４０やＥＣＵ３０等を予め定めておき、これらを対象としてアドレス解決指示フレームをブロードキャスト送信する構成としても良い。
【００６１】
続くＳ１２０では、ＣＰＵ１１は、中継先の論理アドレスが示すＥＣＵ３０から、該ＥＣＵ３０の識別情報等を含むアドレス解決応答フレームを受信したか否かを判定し、肯定判定が得られた場合には（Ｓ１２０：Ｙｅｓ）、Ｓ１２５に処理を移行する。
【００６２】
一方、アドレス解決指示フレームの送信後、制限時間が経過してもアドレス解決応答フレームを受信できない場合には（Ｓ１２０：Ｎｏ）、ＣＰＵ１１は、Ｓ１００に処理を移行し、中継を中止する。
【００６３】
Ｓ１２５では、ＣＰＵ１１は、ルーティングテーブル５０（キャッシュテーブル）に、中継先の論理アドレスを新たに登録すると共に、該論理アドレスに対応する「ＥＣＵ識別情報」として、受信したアドレス解決応答フレームに含まれている識別情報を登録する。
【００６４】
また、ＣＰＵ１１は、アドレス解決応答フレームを受信した車載ネットワーク４０の識別情報と通信プロトコルを特定し、中継先の論理アドレスに対応する「車載ネットワーク識別情報」，「通信プロトコル」として登録する。
【００６５】
また、ＣＰＵ１１は、中継先の論理アドレスが示すＥＣＵ３０等への通信を中継する際に用いることができる中継用バッファサイズを決定し、該論理アドレスに対応する「中継用バッファサイズ」として登録する。
【００６６】
また、ＣＰＵ１１は、中継先の論理アドレスが示すＥＣＵ３０等が接続された車載ネットワーク４０の通信速度等に基づき、中継方式やフレームの変換方法を決定し、該論理アドレスに対応する「中継タイプ」，「通信Ｉ／Ｆ」として登録する。なお、ＣＰＵ１１は、該ＥＣＵ３０等と通信を行い、該ＥＣＵ３０等から取得した情報に基づき、中継方式やフレームの変換方法を決定しても良い。
【００６７】
さらに、ＣＰＵ１１は、中継先の論理アドレスが示すＥＣＵ３０等と通信を行い、該ＥＣＵ３０等との通信が許可されたＥＣＵ３０等を示す論理アドレスを取得すると共に、該ＥＣＵ３０等が備える通信用のバッファサイズを取得する（無論、これらの情報は、アドレス解決応答フレームに含まれていても良い）。そして、取得した論理アドレス，バッファサイズを、該論理アドレスに対応する「中継可否情報」，「中継先バッファサイズ」として登録する。
【００６８】
続くＳ１３０では、ＣＰＵ１１は、ルーティングテーブル５０に中継先の論理アドレスに対応して登録されている情報に基づき、受信した中継要求フレームから新たな中継フレームを生成し、その後、該中継フレームを中継先のＥＣＵ３０等に送信する（Ｓ１３５）。なお、アドレス解決応答フレームを受信した場合であれば、ＣＰＵ１１は、アドレス解決応答フレームや受信した中継要求フレーム等に基づき、中継フレームを生成しても良い。
【００６９】
具体的には、ＣＰＵ１１は、中継元のＥＣＵ３０等の論理アドレスが、中継先の論理アドレスの「中継可否情報」に登録されているか判定し、登録されていない場合には、中継を行うこと無くＳ１００に処理を移行する。
【００７０】
一方、中継元の論理アドレスが登録されている場合には、ＣＰＵ１１は、中継先の論理アドレスに対応する「中継タイプ」を参照し、中継方式が蓄積中継か逐次中継か等の中継の仕方を判別する。なお、ＣＰＵ１１は、同一の通信プロトコルに準拠した２つの車載ネットワーク４０に接続されているＥＣＵ３０等の間の通信を中継する場合には、「中継タイプ」が示す中継方式に関らず、逐次中継を行うことを選択しても良い。
【００７１】
また、ＣＰＵ１１は、中継先の論理アドレスに対応する「ＥＣＵ識別情報」，「通信プロトコル」，「車載ネットワーク識別情報」，「送信Ｉ／Ｆ」，「中継先バッファサイズ」を参照する。そして、ＣＰＵ１１は、これらの項目が示す情報に基づき、受信した中継要求フレームから中継先のＥＣＵ３０や車載ネットワーク４０の通信プロトコル等に対応する中継フレームの生成方法を特定する。
【００７２】
そして、中継方式が蓄積中継である場合には、全ての中継要求フレームの受信が完了した後に、上記生成方法に従い、受信した中継要求フレームに基づき新たな中継フレームを生成し、中継先のＥＣＵ３０等への該中継フレームの送信を開始する。
【００７３】
一方、逐次中継である場合には、ＣＰＵ１１は、中継要求フレームを受信する度に、上記生成方法に従い該中継要求フレームに基づき新たな中継フレームを生成し、中継先のＥＣＵ３０等に送信する。このとき、ＣＰＵ１１は、受信した中継要求フレームを、そのまま中継先のＥＣＵ３０に送信するということも考えられる。
【００７４】
なお、使用している中継用バッファのサイズが「中継用バッファサイズ」が示すバッファのサイズに達した場合には、ＣＰＵ１１は、中継を中断してＳ１００に処理を移行する。
【００７５】
また、中継がなされる間、ＣＰＵ１１は、中継したフレームのデータサイズや、中継に要した時間を計測し、中継が終了すると、これらの情報を中継先の論理アドレスに対応する「履歴情報」として登録し、その後、Ｓ１００に処理を移行する。
【００７６】
このような中継処理により、ＥＣＵ３０や外部装置２０は、中継先となるＥＣＵ３０や外部装置２０の論理アドレスが設定された中継要求フレームをゲートウェイ１０に送信することで、中継先にデータを送信することができる。このため、ＥＣＵ３０等は、中継先のＥＣＵ３０等の物理アドレスや通信プロトコル等を把握していなくても、論理アドレスさえ把握していれば、ゲートウェイ１０を経由して他のＥＣＵ３０等と通信を行うことができる。
【００７７】
また、ゲートウェイ１０のルーティングテーブル５０に論理アドレスが登録されてない場合には、ゲートウェイ１０ではアドレス解決がなされ、該論理アドレスに対応するＥＣＵ３０等に関する識別情報がルーティングテーブル５０に登録される。これにより、ゲートウェイ１０は、送信先のＥＣＵ３０等に関する識別情報を把握していなくても、該ＥＣＵ３０等にデータを中継することができる。
【００７８】
このため、ＥＣＵ３０が新たに追加された場合や交換された場合であっても、他のＥＣＵ３０は、新たに追加等されたＥＣＵ３０の論理アドレスを把握していれば、ゲートウェイ１０を介して通信を行うことができる。また、外部装置２０についても同様に、新たに追加等されたＥＣＵ３０の論理アドレスを把握していれば、ゲートウェイ１０を介して該ＥＣＵ３０と通信を行い、該ＥＣＵ３０の故障診断等を行うことができる。
【００７９】
したがって、本実施形態のゲートウェイ１０を用いることで、ＥＣＵ３０の追加や交換を容易に行うことが可能となる。
＜外部通信処理について＞
次に、故障診断用の外部装置２０がゲートウェイ１０を経由してＥＣＵ３０と通信を行い、ＥＣＵ３０の故障診断等を行う外部通信処理について、図７に記載のフローチャートを用いて説明する。なお、本処理は、外部装置２０にてユーザからの指示に応じて開始される。
【００８０】
Ｓ２００では、外部装置２０は、ＥＣＵ３０等の故障診断や各種設定等を行うための車載連携アプリを起動し、Ｓ２０５に処理を移行する。
Ｓ２０５では、外部装置２０は、エンジン，ブレーキ，エアコン等といった抽象的な車両の機能や診断項目をディスプレイに表示し、タッチパネル等を介してこれらの機能等の選択を受け付ける。各機能等には、これに関連する１または複数のＥＣＵ３０の論理アドレスが対応付けられており、機能等の選択を受け付けることで、故障診断のターゲットＥＣＵ３０が設定される。また、機能等の選択を受け付けた後には、外部装置２０は、該機能等に対してユーザが行おうとする処置（例えば、故障診断の内容や各種設定変更）の入力を受け付ける。
【００８１】
続くＳ２１０では、外部装置２０は、ユーザからの入力内容に基づき、ターゲットＥＣＵ３０に送信する中継要求フレーム６０を生成する。すなわち、外部装置２０は、ゲートウェイ１０との間の通信プロトコルに基づき、プロトコル依存部６１を生成する。また、外部装置２０は、ターゲットＥＣＵ３０の論理アドレスをターゲットアドレス６３として設定すると共に、自装置の論理アドレスをソースアドレス６２として設定する。
【００８２】
さらに、外部装置２０は、入力された処置に対応する内容のメッセージ６４（例えば、故障コードや指定したアドレスに保存されているデータの送信要求や、ＥＣＵ３０の設定値の変更要求等）を生成する。そして、外部装置２０は、これらに基づき中継要求フレーム６０を生成すると共に、該中継要求フレーム６０をゲートウェイ１０に送信する。
【００８３】
続くＳ２１５では、外部装置２０は、ゲートウェイ１０経由でターゲットＥＣＵ３０からの応答となる中継フレームを受信するのを待つ。そして、該中継フレームを受信すると、外部装置２０は、該中継フレームのメッセージの内容に応じた処理（例えば、故障コードや読み出したデータを表示する処理や、ＥＣＵ３０の設定値の変更の結果を表示する処理）を行い、Ｓ２０５に処理を移行する。
【００８４】
上述したように、外部装置２０は、ＥＣＵ３０の物理アドレスや通信プロトコル等を把握していなくても、論理アドレスさえ把握していれば、ゲートウェイ１０を経由してＥＣＵ３０と通信を行うことができる。さらに、ＥＣＵ３０が追加或いは交換され、ＥＣＵ３０の物理アドレスや通信に用いられるフレームのＩＤ等が変わった場合であっても、ゲートウェイ１０によりアドレス解決が行われるため、外部装置２０は、ＥＣＵ３０の追加等が行われる以前と同様に通信を行うことができる。
【００８５】
このため、故障診断用の外部装置２０は、メーカや車種、さらには車種の型に関り無くＥＣＵ３０と通信を行うことができ、メーカ等に応じて外部装置２０を使い分けたり、故障診断用のアプリを使い分けること無く、汎用的に故障診断を行うことが可能となる。
【００８６】
したがって、故障診断用の外部装置２０は、上述した外部通信処理のように、抽象的な車両の機能や診断項目に基づく故障診断機能を提供することが可能となる。このため、ユーザは、ＥＣＵ３０の物理アドレスや故障診断に用いられるフレームのＩＤ等、高度な車載ネットワークの知識を有していなくても、外部装置２０を用いて容易にその対象と故障診断を行うことができる。
【００８７】
さらに、外部装置２０としてスマートフォンを用いることで、一般ユーザでも容易に故障診断を行うことができる。
［アドレス解決の具体例について］
＜具体例１＞
まず、蓄積中継が行われる場合（アプリケーションレベルで中継が行われる場合）に、例えばＣＡＮに準拠した車載ネットワーク４０に接続されたＥＣＵ３０等のアドレス解決を行う処理の具体例の１つについて説明する。
【００８８】
このような場合のアドレス解決指示フレーム３００は、ＣＡＮ−ＩＤ３０１としてブロードキャスト送信を示すＩＤが設定される。また、データフィールドは、Ｎ＿ＰＣＩ（Network Protocol Control Information）３０２，ＳＩＤ（Service ID）３０３，送信先論理アドレス３０４，送信元論理アドレス３０５，オプション３０６から構成される（図８参照）。
【００８９】
Ｎ＿ＰＣＩ３０２は、ＳＦ（Single Frame），ＦＦ（First Frame）等といったフレームの種別を示し、ＳＩＤ３０３は、当該アドレス解決指示フレーム３００による指示内容等を示す。また、送信先論理アドレス３０４は、中継先のＥＣＵ３０等の論理アドレスを示し、送信元論理アドレス３０５は、中継元のＥＣＵ３０等の論理アドレスを示し、オプション３０６は、アドレス解決に関連する各種情報を示す。
【００９０】
また、アドレス解決応答フレーム３１０は、ＣＡＮ−ＩＤ３１１としてゲートウェイ１０を送信先とすることを示すＩＤが設定される。また、データフィールドには、Ｎ＿ＰＣＩ３１２，ＲＳＩＤ（Response Service ID）３１３，Ｔｙｐｅ３１４，要求ＣＡＮ−ＩＤ３１５，応答ＣＡＮ−ＩＤ３１６，オプション３１７から構成される。
【００９１】
ＲＳＩＤ３１３は、当該アドレス解決応答フレーム３１０による応答内容等を示し、Ｔｙｐｅ３１４は、中継先の車載ネットワーク４０の通信プロトコルを示す。また、要求ＣＡＮ−ＩＤ３１５は、中継先のＥＣＵ３０等への送信に用いられるＣＡＮ−ＩＤを示し、応答ＣＡＮ−ＩＤ３１６は中継先のＥＣＵ３０等からの応答に用いられるＣＡＮ−ＩＤを示す。
【００９２】
なお、例えば、中継先のＥＣＵ３０の故障診断がなされる場合であれば、要求ＣＡＮ−ＩＤ３１５，応答ＣＡＮ−ＩＤ３１６として、該ＥＣＵ３０の故障診断のためのＣＡＮ−ＩＤが設定される。
【００９３】
次に、ＣＡＮに準拠した各車載ネットワーク４０に接続された外部装置２０とＡＥＣＵ３０ａとの間の通信を、ゲートウェイ１０がアプリケーションレベルで中継する場合（蓄積中継が行われる場合）のアドレス解決の具体例について、図９に記載のフローチャートを用いて説明する。
【００９４】
Ｓ４００では、外部装置２０（論理アドレスは例として０ｘＥ４０３）が、ＡＥＣＵ３０ａ（論理アドレスは例として０ｘ１００Ａ）にデータを送信すべく、ゲートウェイ１０（論理アドレスは例として０ｘ１０００）に中継要求フレームを送信する。論理アドレスは、バイナリデータもしくは構造が定義されたオブジェクトであるが、本例ではバイナリデータとて記載している。
【００９５】
このとき、データサイズが８バイト以下の場合であれば、ＳＦとして構成された中継要求フレームが送信される。
一方、データサイズが８バイトより大きい場合には、ＦＦ，ＣＦ（Consecutive Frame）として構成された中継要求フレームが複数回にわたり送信される。すなわち、外部装置２０からゲートウェイ１０に対し、最初にＦＦとして構成された中継要求フレームが送信され、これに対する応答として、ゲートウェイ１０から外部装置２０にＦＣ（Flow Control）が送信される。その後、外部装置２０からゲートウェイ１０にＣＦとして構成された中継要求フレームが送信されると共に、ゲートウェイ１０から外部装置２０にＦＣが応答され、以後、送信が完了するまで、外部装置２０とゲートウェイ１０とは交互にＣＦ（中継要求フレーム）とＦＣを送信する。
【００９６】
そして、ゲートウェイ１０は、中継要求フレームを受信すると、上述した中継処理によりルーティングテーブル５０から中継先のＡＥＣＵ３０ａの論理アドレスを検索し（Ｓ４０５）、検索に失敗した場合には、アドレス解決のための処理を行う。
【００９７】
具体的には、ゲートウェイ１０は、接続されている全ての車載ネットワーク４０に、アドレス解決指示フレームをブロードキャスト送信し、中継先のＡＥＣＵ３０ａからのアドレス解決応答フレームの受信を待つ（Ｓ４１０）。なお、ＣＡＮに準拠した車載ネットワーク４０には、上述したアドレス解決指示フレーム３００がブロードキャスト送信される。
【００９８】
このとき、ＡＥＣＵ３０ａ以外の他のＥＣＵ３０等は、アドレス解決指示フレームを受信しても、送信先論理アドレスが自装置の論理アドレスを示していないため、該アドレス解決指示フレームを無視する。
【００９９】
そして、ゲートウェイ１０は、ＡＥＣＵ３０ａからアドレス解決応答フレーム３１０を受信すると、ＡＥＣＵ３０ａの論理アドレスや識別情報等をルーティングテーブル５０（キャッシュテーブル）に登録する（Ｓ４１５）。
【０１００】
なお、ゲートウェイ１０は、アドレス解決のための処理を、外部装置２０からの中継要求フレームの受信完了後に行っても良いし、中継要求フレームの受信と並行して行っても良い。
【０１０１】
その後、ゲートウェイ１０は、外部装置２０からの中継要求フレームの受信が完了すると共に、ＡＥＣＵ３０ａの登録が完了すると、受信した中継要求フレームからＡＥＣＵ３０ａに対応する中継フレームを生成し、該中継フレームをＡＥＣＵ３０ａに送信する（Ｓ４２０）。なお、中継フレームが複数である場合には、同様にして、ＦＦ，ＣＦとして構成された中継フレームが複数回にわたり送信される。
【０１０２】
その後、ＡＥＣＵ３０ａは、外部装置２０を中継先として、応答となる中継要求フレームを送信したとする（Ｓ４２５）。ゲートウェイ１０は、これらの中継要求フレームの受信が完了すると、ルーティングテーブル５０を参照して受信した中継要求フレームから外部装置２０に対応する中継フレームを生成し、該中継フレームを外部装置２０に送信する（Ｓ４３０）。
【０１０３】
なお、中継要求フレームや中継フレームが複数である場合には、同様にして、ＦＦ，ＣＦとして構成された中継要求フレーム等が複数回にわたり送信される。
また、ＣＡＮ以外の通信プロトコルに準拠した各車載ネットワーク４０に接続されたＥＣＵ３０等の間の通信をアプリケーションレベルで中継する場合においても、ゲートウェイ１０は、同様にしてアドレス解決を行う。
【０１０４】
＜具体例２＞
次に、逐次中継が行われる場合（ネットワークレベルで中継が行われる場合）に、例えばＣＡＮに準拠した車載ネットワーク４０に接続されたＥＣＵ３０等のアドレス解決を行う処理について説明する。
【０１０５】
このような場合のアドレス解決指示フレーム３２０は、ＣＡＮ−ＩＤ３２１としてブロードキャスト送信を示すＩＤが設定される。また、データフィールドは、アドレス解決指示を示すデータ（例として１１１１ｂ）が設定されたＮ＿ＰＣＩ３２２（４ビット），送信先論理アドレス３２３，送信元論理アドレス３２４，オプション３２５から構成される（図１０参照）。
【０１０６】
また、アドレス解決応答フレーム３３０は、ＣＡＮ−ＩＤ３３１としてゲートウェイ１０が受信できるＩＤが設定される。また、データフィールドには、アドレス解決応答を示すデータ（例として１１１０ｂ）が設定されたＮ＿ＰＣＩ３３２（４ビット），要求ＣＡＮ−ＩＤ３３３，応答ＣＡＮ−ＩＤ３３４，オプション３３５から構成される。
【０１０７】
Ｎ＿ＰＣＩ３２２，３３２は、ＳＦ，ＦＦ等のフレームの種別を示すものであるが、ネットワークレベルの中継が行われる場合、該種別の１つとしてアドレス解決指示やアドレス解決応答が設けられている。
【０１０８】
なお、送信先論理アドレス３２３，送信元論理アドレス３２４，要求ＣＡＮ−ＩＤ３３３，応答ＣＡＮ−ＩＤ３３４，オプション３２５，３３５は、アプリケーションレベルで中継が行われる場合と同様の構成要素である。
【０１０９】
次に、ＣＡＮに準拠した各車載ネットワーク４０に接続された外部装置２０とＡＥＣＵ３０ａとの間の通信を、ゲートウェイ１０がネットワークレベルで中継する場合のアドレス解決の具体例について、図１１に記載のフローチャートを用いて説明する。
【０１１０】
Ｓ５００では、外部装置２０が、ＡＥＣＵ３０ａに８バイトを越えるデータを送信すべく、ゲートウェイ１０にＦＦとして構成された中継要求フレームを送信する。
ゲートウェイ１０は、該中継要求フレームを受信すると、上述した中継処理によりルーティングテーブル５０から中継先のＡＥＣＵ３０の論理アドレスを検索し（Ｓ５０５）、検索に失敗した場合には、アドレス解決のための処理を行う。
【０１１１】
具体的には、ゲートウェイ１０は、全ての車載ネットワーク４０にアドレス解決指示フレームをブロードキャスト送信し、中継先のＡＥＣＵ３０ａからのアドレス解決応答フレーム３３０の受信を待つ（Ｓ５１０）。なお、ＣＡＮに準拠した車載ネットワーク４０には、上述したアドレス解決指示フレーム３２０がブロードキャスト送信される。
【０１１２】
このとき、ＡＥＣＵ３０ａ以外の他のＥＣＵ３０等は、アドレス解決指示フレームを受信しても、送信先論理アドレスが自装置の論理アドレスを示していないため、該アドレス解決指示フレームを無視する。
【０１１３】
そして、ゲートウェイ１０は、ＡＥＣＵ３０ａからアドレス解決応答フレーム３３０を受信すると、ＡＥＣＵ３０ａの論理アドレスや識別情報等をルーティングテーブル５０に登録する（Ｓ５１５）。
【０１１４】
これに続くＳ５２０では、ゲートウェイ１０は、受信した中継要求フレームからＡＥＣＵ３０ａに対応する中継フレーム（ＦＦ）を生成し、該中継フレームをＡＥＣＵ３０ａに送信する。そして、ゲートウェイ１０は、該中継フレームの応答としてＡＥＣＵ３０ａからＦＣを受信すると、該ＦＣを中継元の外部装置２０に対応するＦＣ（中継フレーム）を生成し、該ＦＣを外部装置２０に送信する。
【０１１５】
さらに、ＦＣを受信した外部装置２０は、ＣＦとして構成された中継要求フレームをゲートウェイ１０に送信する。ゲートウェイ１０は、該中継要求フレームを受信すると、該中継要求フレームからＡＥＣＵ３０ａに対応する中継フレーム（ＣＦ）を生成し、該中継フレームをＡＥＣＵ３０ａに送信する。
【０１１６】
これ以降、ゲートウェイ１０は、外部装置２０によるデータの送信が完了するまで、ＡＥＣＵ３０ａからのＦＣの中継と、外部装置２０からの中継要求フレーム（ＣＦ）の中継を交互に行う。
【０１１７】
そして、ＡＥＣＵ３０ａは、中継フレームの受信完了後、外部装置２０に対し、８バイトを越える応答データの送信を開始したとする（Ｓ５２５）。ＡＥＣＵ３０ａは、最初に、ＡＥＣＵ３０ａを中継先として、ゲートウェイ１０にＦＦとして構成された中継要求フレームを送信する。
【０１１８】
ゲートウェイ１０は、中継要求フレームを受信すると、該中継要求フレームから外部装置２０に対応する中継フレーム（ＦＦ）を生成し、該中継フレームを外部装置２０に送信する。そして、ゲートウェイ１０は、該中継フレームの応答として外部装置２０からＦＣを受信すると、該ＦＣを中継元のＡＥＣＵ３０ａに対応するＦＣ（中継フレーム）を生成し、ＡＥＣＵ３０ａに送信する。
【０１１９】
一方、ＦＣを受信したＡＥＣＵ３０ａは、ＣＦとして構成された中継要求フレームをゲートウェイ１０に送信する。ゲートウェイ１０は、該中継要求フレームを受信すると、該中継要求フレームから外部装置２０に対応する中継フレーム（ＣＦ）を生成し、外部装置２０に送信する。
【０１２０】
これ以降、ゲートウェイ１０は、ＡＥＣＵ３０ａによる送信が完了するまで、外部装置２０からのＦＣの中継と、ＡＥＣＵ３０ａからの中継要求フレーム（ＣＦ）の中継を交互に行う。
【０１２１】
なお、外部装置２０やＡＥＣＵ３０ａが８バイト以下のデータを送信する場合には、外部装置２０等は、ＳＦとして構成された１つの中継要求フレームが送信されるが、このような場合も、ゲートウェイ１０は、同様にして必要に応じてアドレス解決を行った後に中継を行う。
【０１２２】
また、ＣＡＮ以外の通信プロトコルに準拠した各車載ネットワーク４０に接続されたＥＣＵ３０等の間の通信をネットワークレベルで中継する場合においても、ゲートウェイ１０は、同様にしてアドレス解決を行う。
【０１２３】
＜具体例３＞
次に、異なる通信プロトコルに準拠した車載ネットワーク４０に接続されたＥＣＵ３０等の間で中継が行われる場合のアドレス解決について説明する。このような場合には、一般的にアプリケーションレベルの中継を行うことが考えられる（無論、ネットワークレベルの中継が行われても良い）。
【０１２４】
このような場合、中継先の車載ネットワーク４０がＣＡＮに準拠している場合には、図８に記載のアドレス解決指示フレーム３００，アドレス解決応答フレーム３１０が用いられる。
【０１２５】
また、中継先の車載ネットワーク４０がＬＩＮに準拠している場合には、次のようなアドレス解決指示フレーム３４０，アドレス解決応答フレーム３５０が用いられる（図１２）。
【０１２６】
すなわち、アドレス解決指示フレーム３４０は、ＩＤフィールド３４１にアドレス解決指示を示すＩＤ（例として０ｘ３Ｃ）が設定される。また、データフィールドは、ノードアドレス３４２，ＰＣＩ（Protocol Control Information）３４３，ＳＩＤ３４４，送信先論理アドレス３４５，送信元論理アドレス３４６，オプション３４７から構成される。
【０１２７】
ノードアドレス３４２は、ブロードキャスト（例として０ｘ７Ｅ）が設定され、ＰＣＩ３４３は、ＳＦ，ＦＦ等といったフレームの種別を示し、ＳＩＤ３４４は、当該アドレス解決指示フレーム３４０による指示内容等を示す。また、送信先論理アドレス３４５は、中継先のＥＣＵ３０等の論理アドレスを示し、送信元論理アドレス３４６は、中継元のＥＣＵ３０等の論理アドレスを示し、オプション３４７は、アドレス解決に関連する各種情報を示す。
【０１２８】
また、アドレス解決応答フレーム３５０は、ＩＤフィールド３５１にアドレス解決応答を示すＩＤである０ｘ３Ｄが設定される。また、データフィールドは、ノードアドレス３５２，ＰＣＩ３５３，ＲＳＩＤ３５４，中継先ノードアドレス３５５，オプション３５６から構成される。
【０１２９】
ノードアドレス３５２は、ゲートウェイ１０を示すＩＤ（例として０ｘ７０）が設定され、ＲＳＩＤ３５４は、当該アドレス解決応答フレーム３５０による応答内容等を示し、中継先ノードアドレス３５５は、中継先のＥＣＵ３０等のノードアドレスを示す。
【０１３０】
また、中継先の車載ネットワーク４０がＦｌｅｘＲａｙに準拠している場合には、次のようなアドレス解決指示フレーム３６０，アドレス解決応答フレーム３７０が用いられる（図１３参照）。
【０１３１】
すなわち、アドレス解決指示フレーム３６０は、フレームＩＤ３６１にアドレス解決指示を示すＩＤである０ｘ１００が設定される。また、データフィールドは、ＴＡ（Target Address）３６２，ＳＡ（Source Address）３６３，ＰＣＩ３６４，送信先論理アドレス３６５，送信元論理アドレス３６６等から構成される。
【０１３２】
ＴＡ３６２は、ブロードキャストを示すＩＤが設定され、ＳＡ３６３はゲートウェイ１０が受信できるＩＤが設定され、ＰＣＩ３６４は、ＳＦ（Start Frame），ＣＦ等といったフレームの種別を示す。また、送信先論理アドレス３６５は、中継先のＥＣＵ３０等の論理アドレスを示し、送信元論理アドレス３６６は、中継元のＥＣＵ３０等の論理アドレスを示す。
【０１３３】
また、アドレス解決応答フレーム３７０は、フレームＩＤ３７１にアドレス解決応答を示すＩＤである０ｘ１０１が設定され、データフィールドは、ＴＡ３７２，ＳＡ３７３，ＰＣＩ３７４等から構成される。
【０１３４】
ＴＡ３７２は、ゲートウェイ１０が受信できるＩＤが設定され、ＳＡ３７３はアドレス解決応答フレーム３７０の送信元の物理アドレス（換言すれば、中継先のＥＣＵ３０等の物理アドレス）が設定される。
【０１３５】
次に、異なる通信プロトコルに準拠した各車載ネットワーク４０に接続された外部装置２０とＡＥＣＵ３０ａとの間で中継が行われる場合のアドレス解決の具体例について、図１４に記載のフローチャートを用いて説明する。
【０１３６】
Ｓ６００では、外部装置２０は、ＡＥＣＵ３０ａにデータを送信すべく、ゲートウェイ１０に中継要求フレームを送信する。このとき、データサイズに応じて、１回或いは複数回にわたり中継要求フレームが送信される。
【０１３７】
一方、ゲートウェイ１０は、中継要求フレームを受信すると、上述した中継処理によりルーティングテーブル５０から中継先のＡＥＣＵ３０ａの論理アドレスを検索し（Ｓ６０５）、検索に失敗した場合には、アドレス解決のための処理を行う。
【０１３８】
具体的には、ゲートウェイ１０は、接続されている全ての車載ネットワーク４０に、アドレス解決指示フレームをブロードキャスト送信し、中継先のＡＥＣＵ３０ａからのアドレス解決応答フレームの受信を待つ（Ｓ６１０）。
【０１３９】
なお、ＣＡＮ，ＬＩＮ，ＦｌｅｘＲａｙに準拠した車載ネットワーク４０には、それぞれ、上述したアドレス解決指示フレーム３００，３４０，３６０がブロードキャスト送信される。
【０１４０】
このとき、ＡＥＣＵ３０ａ以外の他のＥＣＵ３０等は、アドレス解決指示フレームを受信しても、送信先論理アドレスが自装置の論理アドレスを示していないため、該アドレス解決指示フレームを無視する。
【０１４１】
そして、ゲートウェイ１０は、ＡＥＣＵ３０ａからアドレス解決応答フレームを受信すると、ＡＥＣＵ３０ａの論理アドレスや識別情報等をルーティングテーブル５０に登録する（Ｓ６１５）。
【０１４２】
また、ゲートウェイ１０は、外部装置２０からの中継要求フレームの受信が完了すると共に、ＡＥＣＵ３０ａの登録が完了すると、受信した中継要求フレームからＡＥＣＵ３０ａに対応する中継フレームを生成し、該中継フレームをＡＥＣＵ３０ａに送信する（Ｓ６２０）。このとき、中継されるデータサイズや、中継先の車載ネットワーク４０の通信プロトコル等に応じて、１回或いは複数回にわたり中継フレームが送信される。
【０１４３】
その後、ＡＥＣＵ３０ａは、外部装置２０を中継先として、応答となる中継要求フレームを送信したとする（Ｓ６２５）。ゲートウェイ１０は、これらの中継要求フレームの受信が完了すると、受信した中継要求フレームから外部装置２０に対応する中継フレームを生成し、該中継フレームを外部装置２０に送信する（Ｓ６３０）。
【０１４４】
＜その他＞
具体例１〜３では、フローチャートにより異なる車載ネットワーク４０に接続された外部装置２０とＥＣＵ３０との間の通信が行われる場合の中継やアドレス解決について説明した。
【０１４５】
しかし、異なる車載ネットワーク４０に接続されたＥＣＵ３０間の通信が行われる場合や、無線通信等を介してゲートウェイ１０と通信を行う外部装置２０とＥＣＵとの間で通信が行われる場合も、同様にして中継やアドレス解決がなされる。
【０１４６】
また、同一の車載ネットワーク４０に接続された外部装置２０とＥＣＵ３０との間や、ＥＣＵ３０間においては、具体例２と同様にして中継やアドレス解決がなされる。
［他の実施形態］
（１）車載ネットワーク４０の通信プロトコルとしてイーサネットが用いられる場合が想定されるが、このような場合、ＰＣ等により構成されるネットワークにおけるアドレス解決を行うＡＲＰ（Address Resolution Protocol）に準拠したフレームや手順によりアドレス解決を行っても良い。こうすることにより、既存のリソースを流用することができ、開発コストを抑えつつ、信頼性を向上させることが可能となる。
【０１４７】
しかし、ＡＲＰは、ＰＣ等のアドレス解決を想定しているため、本実施形態のアドレス解決に比べ、用いられるフレームの構成や手順が複雑なものとなっている。このため、車載ネットワーク４０の通信プロトコルとして、ＣＡＮ，ＬＩＮ等の車載用の通信プロトコルが主に用いられるという場合には、本実施形態のように、簡易的な構成のフレームや手順によりアドレス解決を行うのが好適であると考えられる。
【０１４８】
（２）また、従来、ゲートウェイでは、該ゲートウェイに接続された複数の車載ネットワーク毎に予め中継用バッファが確保されており、中継を行う際には、中継先の車載ネットワークに対応する中継用バッファを用いる構成となっていた。このため、車載ネットワークの数の増加に伴い予め確保すべき中継用バッファのサイズが増加し、ＲＡＭの容量が枯渇するという問題があった。
【０１４９】
そこで、本実施形態のゲートウェイ１０では、各車載ネットワーク４０に共通の中継用領域を設け、中継を行う際、該中継用領域から、中継先の車載ネットワーク４０の通信プロトコル等に応じたサイズの中継用バッファを動的に確保する構成としても良い。こうすることにより、中継に必要なＲＡＭ容量を節約することができる。
【０１５０】
（３）本実施形態のゲートウェイ１０は、外部装置２０と通信可能に構成されているが、外部装置２０と通信を行うこと無く、ＥＣＵ３０間の通信を中継する構成としても良い。このような構成を有する場合であっても、同様の効果を得ることができる。
【０１５１】
［特許請求の範囲との対応］
上記実施形態の説明で用いた用語と、特許請求の範囲の記載に用いた用語との対応を示す。
【０１５２】
ゲートウェイ１０が車載用中継装置に、ＥＣＵ３０が車載装置に相当し、ゲートウェイ１０の通信処理部１５，テレマティクス用通信部１６，通信部１７が通信手段に、ＲＡＭ１２，ＲＯＭ１３が記憶手段に相当する。
【０１５３】
また、ルーティングテーブル５０が対応情報に、中継要求フレーム６０が中継要求データに、中継フレームが中継データに相当する。
また、アドレス解決指示フレーム３００，３２０，３４０，３６０が指示データに、アドレス解決応答フレーム３１０，３３０，３５０，３７０が応答データに相当する。
【０１５４】
また、中継処理のＳ１０５が特定手段に、Ｓ１１５が指示手段に、Ｓ１２５が登録手段に、Ｓ１３０が生成手段に、Ｓ１３５が送信手段に相当する。
【符号の説明】
【０１５５】
１０…ゲートウェイ、１１…ＣＰＵ、１２…ＲＡＭ、１３…ＲＯＭ、１４…内部バス、１５…通信処理部、１６…テレマティクス用通信部、１７…通信部、２０…外部装置、３０…ＥＣＵ、４０…車載ネットワーク、５０…ルーティングテーブル、６０…中継要求フレーム、６１…プロトコル依存部、６２…ソースアドレス、６３…ターゲットアドレス、６４…メッセージ、３００…アドレス解決指示フレーム、３１０…アドレス解決応答フレーム、３２０…アドレス解決指示フレーム、３３０…アドレス解決応答フレーム、３４０…アドレス解決指示フレーム、３５０…アドレス解決応答フレーム、３６０…アドレス解決指示フレーム、３７０…アドレス解決応答フレーム。
【図１】
2014154920.tif 000003
【図２】
2014154920.tif 000004
【図３】
2014154920.tif 000005
【図４】
2014154920.tif 000006
【図５】
2014154920.tif 000007
【図６】
2014154920.tif 000008
【図７】
2014154920.tif 000009
【図８】
2014154920.tif 000010
【図９】
2014154920.tif 000011
【図１０】
2014154920.tif 000012
【図１１】
2014154920.tif 000013
【図１２】
2014154920.tif 000014
【図１３】
2014154920.tif 000015
【図１４】
2014154920.tif 000016