(57)【要約】【課題】車載ネットワークにおいてより安定した通信環境を実現することが可能なスイッチ装置、通信制御方法および通信制御プログラムを提供する。【解決手段】スイッチ装置は、車両に搭載されるスイッチ装置であって、前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、中継すべき前記通信データを保持する記憶部と、前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部とを備える。【選択図】図６
2020077915.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載されるスイッチ装置であって、
前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、
中継すべき前記通信データを保持する記憶部と、
前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部とを備える、スイッチ装置。
【請求項２】
前記機能部は、他の前記機能部からＡＣＫを受信すると前記通信データを送信し、
前記制御部は、前記スイッチ部による前記ＡＣＫの中継を遅延させることにより前記スループットを調整する、請求項１に記載のスイッチ装置。
【請求項３】
前記機能部は、他の前記機能部から受信した送信サイズ情報に応じた量の前記通信データを単位時間あたりで送信し、
前記制御部は、前記スイッチ部が受信した前記送信サイズ情報の内容を変更して前記スイッチ部に中継させることにより前記スループットを調整する、請求項１または請求項２に記載のスイッチ装置。
【請求項４】
前記スイッチ装置は、さらに、複数の通信ポートを備え、
前記スイッチ部は、前記通信ポートを介して前記通信データを送受信し、
前記制御部は、前記通信ポートにおける前記通信データの送信レートに基づいて前記状態を判定する、請求項１から請求項３のいずれか１項に記載のスイッチ装置。
【請求項５】
前記制御部は、同じ前記機能部から今回受信した前記ＡＣＫおよび前回受信した前記ＡＣＫを比較し、比較結果に応じて、今回受信した前記ＡＣＫの中継を遅延させるか否かを決定する、請求項２に記載のスイッチ装置。
【請求項６】
車両に搭載されるスイッチ装置であって、中継すべき通信データを保持する記憶部を備えるスイッチ装置における通信制御方法であって、
前記車両に搭載される複数の機能部間の通信データを中継するステップと、
前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整するステップとを含む、通信制御方法。
【請求項７】
車両に搭載されるスイッチ装置であって中継すべき通信データを保持する記憶部を備えるスイッチ装置における通信制御プログラムであって、
コンピュータを、
前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、
前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部、
として機能させるための、通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スイッチ装置、通信制御方法および通信制御プログラムに関する。
【背景技術】
【０００２】
従来、車載ネットワークにおけるセキュリティを向上させるための車載ネットワークシステムが開発されている。
【０００３】
たとえば、特許文献１（特開２０１３−１６８８６５号公報）には、以下のような車載ネットワークシステムが開示されている。すなわち、車載ネットワークシステムは、車載ネットワーク上で用いられる通信規約のうち前記車載ネットワーク上における実装に依拠する部分を定義する定義データを格納するメモリを備えた車載制御装置と、前記車載制御装置に対して前記定義データを発行する通信規約発行装置とを備える。前記通信規約発行装置は、前記車載制御装置を前記車載ネットワークに参加させる登録装置から、前記車載制御装置を前記車載ネットワークに参加させるよう要求する登録要求を受け取ると、前記登録装置に対する認証を実施した上で、前記車載ネットワークに上における実装に準拠した前記定義データを作成して前記登録装置に返信する。前記登録装置は、前記通信規約発行装置が送信した前記定義データを受け取り、受け取った前記定義データを前記メモリ上に格納するよう前記車載制御装置に対して要求する。そして、前記車載制御装置は、前記登録装置から定義データを受け取って前記メモリ上に格納し、前記定義データが定義する前記部分にしたがって、前記通信規約に準拠して前記車載ネットワークを用いて通信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１６８８６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の車載ネットワークでは、車載ＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）間で送受信される通信データを中継する通信ゲートウェイが設けられる。
【０００６】
たとえば、通信ゲートウェイが車載ＥＣＵから多量の通信データを受信して輻輳状態となる場合がある。
【０００７】
この発明は、上述の課題を解決するためになされたもので、その目的は、車載ネットワークにおいてより安定した通信環境を実現することが可能なスイッチ装置、通信制御方法および通信制御プログラムを提供することである。
【課題を解決するための手段】
【０００８】
（１）上記課題を解決するために、この発明のある局面に係わるスイッチ装置は、車両に搭載されるスイッチ装置であって、前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、中継すべき前記通信データを保持する記憶部と、前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部とを備える。
【０００９】
（６）上記課題を解決するために、この発明のある局面に係わる通信制御方法は、車両に搭載されるスイッチ装置であって中継すべき通信データを保持する記憶部を備えるスイッチ装置における通信制御方法であって、前記車両に搭載される複数の機能部間の通信データを中継するステップと、前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整するステップとを含む。
【００１０】
（７）上記課題を解決するために、この発明のある局面に係わる通信制御プログラムは、車両に搭載されるスイッチ装置であって中継すべき通信データを保持する記憶部を備えるスイッチ装置における通信制御プログラムであって、コンピュータを、前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部、として機能させるためのプログラムである。
【００１１】
本発明は、このような特徴的な処理部を備えるスイッチ装置として実現することができるだけでなく、スイッチ装置を備える車載通信システムとして実現することができる。また、本発明は、スイッチ装置の一部または全部を実現する半導体集積回路として実現することができる。
【発明の効果】
【００１２】
本発明によれば、車載ネットワークにおいてより安定した通信環境を実現することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の実施の形態に係る車載通信システムの構成を示す図である。
【図２】図２は、本発明の実施の形態に係る車載通信システムにおける各装置のＶＩＤ、ＭＡＣアドレスおよびＩＰアドレスの一例を示す図である。
【図３】図３は、本発明の実施の形態に係る車載通信システムにおいて伝送されるイーサネットフレームの一例を示す図である。
【図４】図４は、本発明の実施の形態に係る車載通信システムにおけるスイッチ装置の構成を示す図である。
【図５】図５は、本発明の実施の形態に係るスイッチ装置におけるＬ２スイッチ処理部の構成を示す図である。
【図６】図６は、本発明の実施の形態に係るスイッチ装置におけるＬ３中継処理部の構成を示す図である。
【図７】図７は、本発明の実施の形態に係るスイッチ装置におけるＬ３中継処理部の記憶部に保存されるデータを示す図である。
【図８】図８は、本発明の実施の形態に係る車載通信システムにおける、Ｌ３中継処理されるイーサネットフレームの伝送経路の一例を示す図である。
【図９】図９は、本発明の実施の形態に係るスイッチ装置における制御部が保持している遅延時間テーブルの一例を示す図である。
【図１０】図１０は、本発明の実施の形態に係るスイッチ装置における記憶部の使用量とＡＣＫフレームの遅延時間との関係の一例を示す図である。
【図１１】図１１は、本発明の実施の形態に係る車載通信システムにおける、通信データのスループット調整のシーケンスの一例を示す図である。
【図１２】図１２は、本発明の実施の形態に係るスイッチ装置における制御部が保持しているウィンドウサイズテーブルの一例を示す図である。
【図１３】図１３は、本発明の実施の形態に係るスイッチ装置における記憶部の使用量とウィンドウサイズの縮小量との関係の一例を示す図である。
【図１４】図１４は、本発明の実施の形態に係る車載通信システムにおける、通信データのスループット調整のシーケンスの一例を示す図である。
【図１５】図１５は、本発明の実施の形態に係るスイッチ装置における制御部が保持している使用量推測テーブルの一例を示す図である。
【図１６】図１６は、本発明の実施の形態に係る車載通信システムにおいて、スイッチ装置が車載デバイスから送信される通信データのスループットを調整する際の動作手順を定めたフローチャートである。
【図１７】図１７は、本発明の実施の形態に係る車載通信システムにおいて、スイッチ装置が車載デバイスから送信される通信データのスループットを調整する際の動作手順を定めたフローチャートである。
【発明を実施するための形態】
【００１４】
最初に、本発明の実施形態の内容を列記して説明する。
【００１５】
（１）本発明の実施の形態に係るスイッチ装置は、車両に搭載されるスイッチ装置であって、前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、中継すべき前記通信データを保持する記憶部と、前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部とを備える。
【００１６】
このような構成により、記憶部の状態に応じて、機能部から送信される通信データのスループットをアプリケーションごとに調整することができる。たとえば、スイッチ装置において輻輳状態となった場合に、アプリケーションの優先度に応じて通信データの送信を選択的に制限することができる。これにより、優先度が高いアプリケーションに関する通信データのスループットを大幅に低下させることなく、スイッチ装置の輻輳状態を緩和することができ、スイッチ装置における通信データの滞留および伝送遅延をバランス良く調整することができる。したがって、車載ネットワークにおいてより安定した通信環境を実現することができる。
【００１７】
（２）好ましくは、前記機能部は、他の前記機能部からＡＣＫを受信すると前記通信データを送信し、前記制御部は、前記スイッチ部による前記ＡＣＫの中継を遅延させることにより前記スループットを調整する。
【００１８】
このような構成により、制御部がＡＣＫの中継を遅延させることで、機能部による次の通信データの送信タイミングを遅延させることができる。これにより、既存の処理を利用しながら、スループットをアプリケーションごとに調整することができる。
【００１９】
（３）好ましくは、前記機能部は、他の前記機能部から受信した送信サイズ情報に応じた量の前記通信データを単位時間あたりで送信し、前記制御部は、前記スイッチ部が受信した前記送信サイズ情報の内容を変更して前記スイッチ部に中継させることにより前記スループットを調整する。
【００２０】
このような構成により、制御部が送信サイズ情報の内容を変更してスイッチ部に中継させることで、機能部が次に送信する通信データの量を調整することができる。これにより、既存の処理を利用しながら、スループットをアプリケーションごとに調整することができる。
【００２１】
（４）好ましくは、前記スイッチ装置は、さらに、複数の通信ポートを備え、前記スイッチ部は、前記通信ポートを介して前記通信データを送受信し、前記制御部は、前記通信ポートにおける前記通信データの送信レートに基づいて前記状態を判定する。
【００２２】
このような構成により、通信ポートにおける送信レートに基づいて記憶部の状態を事前に予測し、予測結果に基づいて記憶部の状態を判定することができる。これにより、たとえば、記憶部の容量が実際に不足する前に、機能部から送信される通信データのスループットをアプリケーションごとに調整することができる。
【００２３】
（５）好ましくは、前記制御部は、同じ前記機能部から今回受信した前記ＡＣＫおよび前回受信した前記ＡＣＫを比較し、比較結果に応じて、今回受信した前記ＡＣＫの中継を遅延させるか否かを決定する。
【００２４】
たとえば、機能部は、他の機能部から送信される通信データを正常に受信できなかった場合に、当該他の機能部に通信データの再送を要求するために当該他の機能部へＡＣＫを複数回連続で送信する場合がある。この場合、上記の構成により、通信データの再送が遅延することを防ぐことができる。
【００２５】
（６）本発明の実施の形態に係る通信制御方法は、車両に搭載されるスイッチ装置であって中継すべき通信データを保持する記憶部を備えるスイッチ装置における通信制御方法であって、前記車両に搭載される複数の機能部間の通信データを中継するステップと、前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整するステップとを含む。
【００２６】
このような構成により、記憶部の状態に応じて、機能部から送信される通信データのスループットをアプリケーションごとに調整することができる。たとえば、スイッチ装置において輻輳状態となった場合に、アプリケーションの優先度に応じて通信データの送信を選択的に制限することができる。これにより、優先度が高いアプリケーションに関する通信データのスループットを大幅に低下させることなく、スイッチ装置の輻輳状態を緩和することができ、スイッチ装置における通信データの滞留および伝送遅延をバランス良く調整することができる。したがって、車載ネットワークにおいてより安定した通信環境を実現することができる。
【００２７】
（７）本発明の実施の形態に係る通信制御プログラムは、車両に搭載されるスイッチ装置であって中継すべき通信データを保持する記憶部を備えるスイッチ装置における通信制御プログラムであって、コンピュータを、前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部、として機能させるためのプログラムである。
【００２８】
このような構成により、記憶部の状態に応じて、機能部から送信される通信データのスループットをアプリケーションごとに調整することができる。たとえば、スイッチ装置において輻輳状態となった場合に、アプリケーションの優先度に応じて通信データの送信を選択的に制限することができる。これにより、優先度が高いアプリケーションに関する通信データのスループットを大幅に低下させることなく、スイッチ装置の輻輳状態を緩和することができ、スイッチ装置における通信データの滞留および伝送遅延をバランス良く調整することができる。したがって、車載ネットワークにおいてより安定した通信環境を実現することができる。
【００２９】
以下、本発明の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。また、以下に記載する実施の形態の少なくとも一部を任意に組み合わせてもよい。
【００３０】
＜実施の形態＞
［構成および基本動作］
図１は、本発明の実施の形態に係る車載通信システムの構成を示す図である。
【００３１】
図１を参照して、車載通信システム３０１は、スイッチ装置１０１と、複数の車載デバイス１１１とを備える。車載通信システム３０１は、車両１に搭載される。
【００３２】
以下、車載デバイス１１１Ａ，１１１Ｂ，１１１Ｃ，１１１Ｄ，１１１Ｅの各々を、車載デバイス１１１とも称する。車載デバイス１１１は、機能部の一例である。なお、車載通信システム３０１は、５つの車載デバイス１１１を備える構成に限らず、２つ、３つ、４つまたは６つ以上の車載デバイス１１１を備える構成であってもよい。
【００３３】
車載デバイス１１１は、たとえば、自動運転ＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）、画像センサ、レーダ装置、ナビゲーション装置、ＴＣＵ（Ｔｅｌｅｍａｔｉｃｓ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｔ）、セントラルゲートウェイ（ＣＧＷ）、およびヒューマンマシンインタフェース等であり、スイッチ装置１０１と通信を行うことが可能である。
【００３４】
なお、車載デバイス１１１は、これらの具体例に限らず、車両１に搭載され、かつスイッチ装置１０１と通信可能な他のデバイスであってもよい。
【００３５】
スイッチ装置１０１および車載デバイス１１１は、たとえば、イーサネット（登録商標）ケーブル１０により、互いに接続されている。車両１の車載ネットワークにおけるスイッチ装置１０１および各車載デバイス１１１の接続関係は、たとえば固定されている。
【００３６】
スイッチ装置１０１および車載デバイス１１１は、イーサネットケーブルを用いて互いに通信する。スイッチ装置１０１および車載デバイス１１１間では、たとえば、ＩＥＥＥ８０２．３に従うイーサネットフレームを用いて通信データのやり取りが行われる。
【００３７】
［車載デバイス］
車載デバイス１１１は、１または複数のアプリケーションの機能を有している。車載デバイス１１１は、自己のアプリケーションに関する情報を、スイッチ装置１０１を介して送受信する。
【００３８】
車載デバイス１１１のアプリケーションの一例として、画像センサである車載デバイス１１１は、たとえば、車両１の周囲を周期的に撮影し、撮影結果を示す画像情報を作成する。
【００３９】
車載デバイス１１１のアプリケーションの他の例として、レーダ装置である車載デバイス１１１は、たとえば、ミリ波を用いて、車両１の周囲における歩行者等の物体の検知結果を示す検知情報を周期的に作成する。
【００４０】
車載デバイス１１１のアプリケーションの他の例として、自動運転ＥＣＵである車載デバイス１１１は、たとえば、画像センサから受けた画像情報およびレーダ装置から受けた検知情報に基づいて、自動運転を補助する。
【００４１】
図２は、本発明の実施の形態に係る車載通信システムにおける各装置のＶＩＤ、ＭＡＣアドレスおよびＩＰアドレスの一例を示す図である。
【００４２】
図２を参照して、車載ネットワークにおいて、たとえば、車載デバイス１１１Ａ，１１１Ｂ，１１１Ｃと車載デバイス１１１Ｄ，１１１Ｅとは、互いに異なるＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）に属する。
【００４３】
この例では、車載デバイス１１１Ａ，１１１Ｂ，１１１Ｃの属するＶＬＡＮのＩＤ（以下、ＶＩＤとも称する。）は、１である。また、車載デバイス１１１Ｄ，１１１Ｅの属するＶＩＤは、２である。
【００４４】
スイッチ装置１０１および車載デバイス１１１は、固有のＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスおよびＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを有する。
【００４５】
［スイッチ装置］
再び図１を参照して、スイッチ装置１０１は、車載ネットワークにおける複数の車載デバイス１１１間の通信データを中継する中継処理を行う。
【００４６】
具体的には、車載ネットワークでは、たとえば、ＩＰプロトコルに従って、ＩＰパケットを用いて情報の送受信が行われる。ＩＰパケットは、通信データの一例であるイーサネットフレームに格納されて伝送される。
【００４７】
スイッチ装置１０１は、各車載デバイス１１１間で伝送されるイーサネットフレームを中継する中継処理を行う。
【００４８】
詳細には、スイッチ装置１０１は、複数のレイヤを有する通信プロトコルに従って動作する。より詳細には、スイッチ装置１０１は、Ｌ２（レイヤ２）スイッチとして機能することが可能であり、同じＶＬＡＮに属する車載デバイス１１１間のイーサネットフレームを中継する。また、スイッチ装置１０１は、Ｌ３（レイヤ３）中継装置としても機能することが可能であり、異なるＶＬＡＮに属する車載デバイス１１１間のイーサネットフレームを中継する。
【００４９】
図３は、本発明の実施の形態に係る車載通信システムにおいて伝送されるイーサネットフレームの一例を示す図である。
【００５０】
図３を参照して、イーサネットフレームは、イーサネットヘッダフィールドと、ＩＰヘッダフィールドと、ＴＣＰヘッダフィールドと、データフィールドと、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）フィールドとを有する。
【００５１】
イーサネットヘッダフィールドには、送信先ＭＡＣアドレスと、送信元ＭＡＣアドレスと、タイプとが格納される。ＩＰヘッダフィールドには、ＩＰヘッダと、送信元ＩＰアドレスと、送信先ＩＰアドレスとが格納される。データフィールドには、任意のデータと、必要に応じてパディングとが格納される。ＣＲＣフィールドには、ＣＲＣ値が格納される。
【００５２】
ＴＣＰヘッダフィールドには、送信先ポート番号と、送信元ポート番号と、シーケンス番号と、確認応答番号と、ヘッダ長およびセッションフラグと、ウィンドウサイズと、チェックサムと、緊急ポインタとが格納される。
【００５３】
ヘッダ長およびセッションフラグのフィールドには、ヘッダ長と、ＮＳ（Ｎｏｎｃｅ  Ｓｕｍ）フラグと、ＣＷＲ（Ｃｏｎｇｅｓｔｉｏｎ  Ｗｉｎｄｏｗ  Ｒｅｄｕｃｅｄ）フラグと、ＥＳＥフラグと、ＵＲＧ（Ｕｒｇｅｎｔ）フラグと、ＡＣＫ（Ａｃｋｎｏｗｌｅｄｇｅｍｅｎｔ）フラグと、ＰＳＨ（Ｐｕｓｈ）フラグと、ＲＳＴ（Ｒｅｓｅｔ）フラグと、ＳＹＮ（Ｓｙｎｃｈｒｏｎｉｚｅ）フラグと、ＦＩＮ（Ｆｉｎ）フラグとが格納される。
【００５４】
たとえば、車載デバイス１１１Ｂが画像情報または検知情報を含むＩＰパケットを車載デバイス１１１Ｃへ送信する場合、このＩＰパケットには、送信元ＩＰアドレスおよび送信先ＩＰアドレスとして、ＩＰ−ＢおよびＩＰ−Ｃがそれぞれ含まれる。
【００５５】
車載デバイス１１１Ｂは、自己と車載デバイス１１１Ｃとが同じＶＬＡＮに属していることから、１、ＭＡＣ−ＣおよびＭＡＣ−Ｂを、ＶＩＤ、送信先ＭＡＣアドレスおよび送信元ＭＡＣアドレスとしてそれぞれイーサネットフレームに書き込む。
【００５６】
車載デバイス１１１Ｂは、ＩＰパケットを格納したイーサネットフレームをスイッチ装置１０１へ送信する。
【００５７】
スイッチ装置１０１は、車載デバイス１１１Ｂからイーサネットフレームを受信すると、受信したイーサネットフレームに対してレイヤ２のスイッチ処理を行うことで、当該イーサネットフレームを車載デバイス１１１Ｃへ送信する。
【００５８】
また、たとえば、車載デバイス１１１Ｂが画像情報または検知情報を含むＩＰパケットを車載デバイス１１１Ｄへ送信する場合、このＩＰパケットには、送信元ＩＰアドレスおよび送信先ＩＰアドレスとして、ＩＰ−ＢおよびＩＰ−Ｄがそれぞれ含まれる。
【００５９】
車載デバイス１１１Ｂは、自己と車載デバイス１１１Ｄとが異なるＶＬＡＮに属していることから、１、デフォルトゲートウェイであるスイッチ装置１０１のＭＡＣアドレスすなわちＭＡＣ−Ｇ、およびＭＡＣ−Ｂを、ＶＩＤ、送信先ＭＡＣアドレスおよび送信元ＭＡＣアドレスとしてそれぞれイーサネットフレームに書き込む。
【００６０】
車載デバイス１１１Ｂは、ＩＰパケットを格納したイーサネットフレームをスイッチ装置１０１へ送信する。
【００６１】
スイッチ装置１０１は、車載デバイス１１１Ｂからイーサネットフレームを受信すると、受信したイーサネットフレームに対してレイヤ３の中継処理を行うことで、当該イーサネットフレームを車載デバイス１１１Ｄへ送信する。
【００６２】
そして、車載デバイス１１１Ｃまたは１１１Ｄは、スイッチ装置１０１を経由してイーサネットフレームを受信すると、ＡＣＫフラグを１に設定したイーサネットフレーム（以下、ＡＣＫフレームとも称する。）を車載デバイス１１１Ｂへ返信する。
【００６３】
車載デバイス１１１Ｂは、車載デバイス１１１Ｃまたは１１１ＤからＡＣＫフレームを受信すると、次のイーサネットフレームを車載デバイス１１１Ｃまたは１１１Ｄへ送信する。
【００６４】
車載デバイス１１１Ｃまたは１１１Ｄは、自己が次に受信可能なデータ量に関する送信サイズ情報を、車載デバイス１１１Ｂに通知する。車載デバイス１１１Ｂは、通知された送信サイズ情報に応じたデータ量のイーサネットフレームを単位時間あたりで送信する。
【００６５】
具体的には、たとえば、車載デバイス１１１Ｃまたは１１１Ｄは、送信サイズ情報たとえばウィンドウサイズが格納されたＡＣＫフレームを送信する。車載デバイス１１１Ｂは、ＡＣＫフレームを受信して、ＡＣＫフレームに格納されたウィンドウサイズに応じたデータ量を上限とするイーサネットフレームを、車載デバイス１１１Ｃまたは１１１Ｄへ送信する。
【００６６】
［スイッチ装置の構成］
図４は、本発明の実施の形態に係る車載通信システムにおけるスイッチ装置の構成を示す図である。
【００６７】
図４を参照して、スイッチ装置１０１は、Ｌ２スイッチ処理部６０と、Ｌ３中継処理部７０と、通信ポート５４である通信ポート５４Ａ，５４Ｂ，５４Ｃ，５４Ｄ，５４Ｅとを備える。
【００６８】
なお、スイッチ装置１０１では、５つの通信ポート５４が設けられる構成に限らず、２つ、３つ、４つ、または６つ以上の通信ポート５４が設けられる構成であってもよい。
【００６９】
通信ポート５４は、たとえばイーサネットケーブル１０を接続可能な端子である。なお、通信ポート５４は、集積回路の端子であってもよい。
【００７０】
複数の通信ポート５４の各々は、イーサネットケーブル１０を介して複数の車載デバイス１１１のうちのいずれか１つに接続されている。また、複数の通信ポート５４の各々は、たとえばＶＬＡＮと対応付けられている。
【００７１】
Ｌ２スイッチ処理部６０は、たとえば、Ｌ２スイッチとして動作し、同じＶＬＡＮに属する車載デバイス１１１間のイーサネットフレームを中継する。
【００７２】
Ｌ３中継処理部７０は、たとえば、Ｌ３スイッチとして動作し、異なるＶＬＡＮに属する車載デバイス１１１間のイーサネットフレームを中継する。
【００７３】
図５は、本発明の実施の形態に係るスイッチ装置におけるＬ２スイッチ処理部の構成を示す図である。
【００７４】
図５を参照して、Ｌ２スイッチ処理部６０は、Ｌ２スイッチ部６１と、記憶部６２とを含む。
【００７５】
Ｌ２スイッチ部６１は、通信ポート５４を介して受信したイーサネットフレームに対してレイヤ２のスイッチ処理を行う。Ｌ２スイッチ部６１は、中継すべきイーサネットフレームを受信すると、受信したイーサネットフレームを記憶部６２に保存する。
【００７６】
図６は、本発明の実施の形態に係るスイッチ装置におけるＬ３中継処理部の構成を示す図である。
【００７７】
図６を参照して、Ｌ３中継処理部７０は、Ｌ３中継部７１と、記憶部７２と、制御部７３と、タイマ７４とを含む。
【００７８】
Ｌ３中継部７１は、Ｌ２スイッチ部６１から受信したイーサネットフレームに対してレイヤ３のスイッチ処理を行う。Ｌ３中継部７１は、中継すべきイーサネットフレームを受信すると、受信したイーサネットフレームを記憶部７２に保存する。記憶部７２には、たとえば、アプリケーションごとのキューが設けられている。
【００７９】
図７は、本発明の実施の形態に係るスイッチ装置におけるＬ３中継処理部の記憶部に保存されるデータを示す図である。
【００８０】
図７を参照して、記憶部７２には、あるアプリケーションに対応するキュー７２Ａと、別のアプリケーションに対応するキュー７２Ｂとが設けられている。Ｌ３中継部７１は、たとえば、イーサネットフレームに含まれる送信元ポート番号を参照することにより、対応のアプリケーションを特定し、イーサネットフレームをアプリケーションごとに対応のキューに振り分けて記憶部７２に保存する。なお、記憶部７２には３つ以上のキューが設けられている構成であってもよい。
【００８１】
制御部７３は、記憶部７２の状態を判定し、判定結果に基づいて、車載デバイス１１１から送信される通信データのスループットをアプリケーションごとに調整する。制御部７３が通信データのスループットをアプリケーションごとに調整する方法の詳細については後述する。
【００８２】
［レイヤ２のスイッチ処理］
Ｌ２スイッチ部６１は、たとえば、レイヤ２に従って、Ｌ３中継処理部７０を介さずに中継処理を行うことが可能である。
【００８３】
図５を参照して、Ｌ２スイッチ部６１は、たとえば、Ｌ３中継処理部７０および通信ポート５４Ａ，５４Ｂ，５４Ｃ，５４Ｄ，５４Ｅにそれぞれ接続される複数の端子を有する。各端子には、固有の論理ポート番号が割り当てられている。
【００８４】
この例では、Ｌ３中継処理部７０および通信ポート５４Ａ，５４Ｂ，５４Ｃ，５４Ｄ，５４Ｅに接続された端子の論理ポート番号は、それぞれ＃０、＃１、＃２、＃３、＃４および＃５である。
【００８５】
また、Ｌ２スイッチ部６１は、たとえば、ＡＲＬテーブル（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｌｏｇｉｃ）を保持している。
【００８６】
ＡＲＬテーブルの内容は、上述したように車載ネットワークにおいて固定されている接続関係に基づいて、たとえばユーザにより予め定められている。
【００８７】
ＡＲＬテーブルは、たとえば、送信先ＭＡＣアドレスと出力先との対応関係を示す。ここで、出力先は、論理ポート番号である。
【００８８】
具体的には、ＡＲＬテーブルには、車載デバイス１１１のＭＡＣアドレスと当該車載デバイス１１１を接続先とする端子の論理ポート番号との対応関係、および自己のスイッチ装置１０１のＭＡＣアドレスとＬ３中継処理部７０の論理ポート番号との対応関係が含まれる。
【００８９】
Ｌ２スイッチ部６１は、通信ポート５４経由でイーサネットフレームを受信すると、受信したイーサネットフレームを記憶部６２に保存するとともに、当該イーサネットフレームに含まれる送信先ＭＡＣアドレスを取得する。
【００９０】
Ｌ２スイッチ部６１は、取得した送信先ＭＡＣアドレスに対応する論理ポート番号をＡＲＬテーブルから取得する。具体的には、Ｌ２スイッチ部６１は、たとえば、車載デバイス１１１Ｂから車載デバイス１１１Ｃへ伝送されるイーサネットフレームのように、同一のＶＬＡＮ内で伝送されるイーサネットフレームに対しては、取得した送信先ＭＡＣアドレスに対応する論理ポート番号として、＃１〜＃５のうちのいずれか１つを取得する。
【００９１】
そして、Ｌ２スイッチ部６１は、対応のイーサネットフレームを記憶部６２から取得し、取得したイーサネットフレームを、取得した論理ポート番号の端子から通信ポート５４経由で車載デバイス１１１へ送信する。
【００９２】
一方、Ｌ２スイッチ部６１は、たとえば、車載デバイス１１１Ａから車載デバイス１１１Ｅへ伝送されるイーサネットフレームのように、異なるＶＬＡＮ間で伝送されるイーサネットフレームに対しては、取得した送信先ＭＡＣアドレスに対応する論理ポート番号として＃０を取得する。
【００９３】
そして、Ｌ２スイッチ部６１は、対応のイーサネットフレームを記憶部６２から取得し、取得したイーサネットフレームをＬ３中継処理部７０へ出力する。
【００９４】
［レイヤ３の中継処理］
Ｌ３中継部７１は、Ｌ２スイッチ処理部６０を介して中継処理を行う。具体的には、Ｌ３中継部７１は、レイヤ２よりも上位のレイヤ３に従って中継処理行う。
【００９５】
Ｌ３中継部７１は、Ｌ２スイッチ処理部６０から受信したイーサネットフレームに対してレイヤ３の中継処理（以下、Ｌ３中継処理とも称する。）を行う。
【００９６】
詳細には、Ｌ３中継部７１は、Ｌ２スイッチ処理部６０からイーサネットフレームを受けて、受けたイーサネットフレームの送信先ＭＡＣアドレスおよび送信元ＭＡＣアドレスを書き換える。
【００９７】
より詳細には、Ｌ３中継部７１は、たとえば、レイヤ３の中継処理に用いるＩＰアドレスとＭＡＣアドレスとの対応関係を示すテーブル情報ＴＩＡを保持する。
【００９８】
具体的には、Ｌ３中継部７１は、自己が中継対象とする送信先ネットワークたとえばＶＬＡＮとＶＩＤとの対応関係を示すルーティングテーブル、およびＶＩＤごとの、ＩＰアドレスとＭＡＣアドレスとの対応関係を示すＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）テーブルを含むテーブル情報ＴＩＡを保持する。
【００９９】
テーブル情報ＴＩＡの内容は、上述したように車載ネットワークにおいて固定されている接続関係に基づいて、たとえばユーザにより予め定められている。
【０１００】
Ｌ３中継部７１は、Ｌ２スイッチ処理部６０からイーサネットフレームを受けると、受けたイーサネットフレームを記憶部７２に保存する。さらに、Ｌ３中継部７１は、受けたイーサネットフレームに含まれるＩＰパケットから送信先ＩＰアドレスを取得し、たとえば、取得した送信先ＩＰアドレスに対してサブネットマスク計算を行うことによりＶＬＡＮを特定する。
【０１０１】
Ｌ３中継部７１は、ルーティングテーブルを参照し、特定したＶＬＡＮに対応するＶＩＤを取得する。
【０１０２】
そして、Ｌ３中継部７１は、取得したＶＩＤに対応するＡＲＰテーブルを参照し、送信先ＩＰアドレスに対応するＭＡＣアドレスを当該ＡＲＰテーブルから取得する。
【０１０３】
Ｌ３中継部７１は、当該イーサネットフレームを記憶部７２から取得し、取得したイーサネットフレームにおけるＶＩＤ、送信先ＭＡＣアドレスおよび送信元ＭＡＣアドレスを、取得したＶＩＤおよびＭＡＣアドレス、ならびに自己のスイッチ装置１０１のＭＡＣアドレスにそれぞれ書き換えてＬ２スイッチ処理部６０へ出力する。
【０１０４】
［Ｌ３中継処理の具体例］
図８は、本発明の実施の形態に係る車載通信システムにおける、Ｌ３中継処理されるイーサネットフレームの伝送経路の一例を示す図である。
【０１０５】
図８を参照して、車載デバイス１１１Ａが、たとえば、車載デバイス１１１Ｅを宛先とするイーサネットフレームを送信する状況を想定する。
【０１０６】
この場合、車載デバイス１１１Ａは、ＶＩＤ、送信元ＭＡＣアドレス、送信先ＭＡＣアドレスおよび送信先ＩＰアドレスとして、１、ＭＡＣ−Ａ、ＭＡＣ−ＧおよびＩＰ−Ｅをそれぞれ含むイーサネットフレームをスイッチ装置１０１へ送信する。
【０１０７】
スイッチ装置１０１におけるＬ３中継処理部７０は、通信ポート５４ＡおよびＬ２スイッチ処理部６０経由で車載デバイス１１１Ａからイーサネットフレームを受信すると、テーブル情報ＴＩＡに基づいて、受信したイーサネットフレームに対してＬ３中継処理を行う。
【０１０８】
より詳細には、Ｌ３中継部７１は、Ｌ２スイッチ処理部６０からイーサネットフレームを受けて、受けたイーサネットフレームを記憶部７２に保存する。そして、Ｌ３中継部７１は、イーサネットフレームを記憶部７２から取得し、取得したイーサネットフレームに含まれるＶＩＤ、送信元ＭＡＣアドレスおよび送信先ＭＡＣアドレスを、２、ＭＡＣ−ＧおよびＭＡＣ−Ｅにそれぞれ書き換える。Ｌ３中継部７１は、書き換え後のイーサネットフレームをＬ２スイッチ処理部６０へ出力する。
【０１０９】
Ｌ２スイッチ処理部６０は、Ｌ３中継処理部７０からイーサネットフレームを受けると、ＡＲＬテーブルに基づいて、受けたイーサネットフレームに含まれる送信先ＭＡＣアドレスに対応する論理ポート番号＃５を取得する。
【０１１０】
Ｌ２スイッチ処理部６０は、取得した論理ポート番号＃５の端子から通信ポート５４Ｅ経由でイーサネットフレームを送信する。これにより、当該イーサネットフレームは、通信ポート５４Ｅ経由で車載デバイス１１１Ｅへ送信される。
【０１１１】
［課題］
ところで、スイッチ装置１０１が車載デバイス１１１から多量の通信データたとえばイーサネットフレームを受信すると、たとえば、Ｌ３中継処理部７０の記憶部７２においてオーバーフローが生じる場合がある。
【０１１２】
記憶部７２のオーバーフローを解消するために、たとえば、スイッチ装置１０１から車載デバイス１１１へポーズフレームを送信することにより、車載デバイス１１１からイーサネットフレームが送信されてくる頻度を下げることが考えられる。
【０１１３】
たとえば、イーサネットフレームの送信元の車載デバイス１１１の別に応じて優先度を設定しておき、優先度の低い車載デバイス１１１へポーズフレームを送信する。
【０１１４】
これにより、優先度の低い車載デバイス１１１からイーサネットフレームが送信されてくる頻度を下げ、優先度の高い車載デバイス１１１からのイーサネットフレームを優先的に中継することができるため、記憶部７２がオーバーフロー状態となる可能性を低減することができる。
【０１１５】
しかしながら、車載デバイス１１１が複数のアプリケーションの機能を有している場合、アプリケーションの優先度に応じて、優先度の高いアプリケーションに対応するイーサネットフレームを優先的に中継することはできない。
［スループットの調整］
【０１１６】
制御部７３は、記憶部７２の状態を判定する。より詳細には、制御部７３は、記憶部７２を定期的または不定期に監視し、記憶部７２が保持しているデータの量またはイーサネットフレームの数を参照することにより記憶部７２の状態を判定する。なお、制御部７３は、Ｌ３中継部７１を監視し、Ｌ３中継部７１がＬ２スイッチ処理部６０からイーサネットフレームを受信すると、記憶部７２が保持しているデータの量またはイーサネットフレームの数を参照することにより記憶部７２の状態を判定してもよい。
【０１１７】
制御部７３は、判定した結果に基づいて、車載デバイス１１１から送信される通信データのスループットをアプリケーションごとに調整する。通信データのスループットは、ウィンドウサイズをＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）で除した値に比例する。
【０１１８】
［動作の流れ］
車載通信システム３０１における各装置は、メモリを含むコンピュータを備え、当該コンピュータにおけるＣＰＵ等の演算処理部は、以下のフローチャートおよびシーケンスの各ステップの一部または全部を含むプログラムを当該メモリからそれぞれ読み出して実行する。これら複数の装置のプログラムは、それぞれ、外部からインストールすることができる。これら複数の装置のプログラムは、それぞれ、記録媒体に格納された状態で流通する。
【０１１９】
［ＡＣＫフレームの中継保留］
たとえば、スイッチ装置１０１は、送信先の車載デバイス１１１からのＡＣＫの中継を遅延させることにより、車載デバイス１１１間のＲＴＴを増大させることで通信データのスループットをアプリケーションごとに調整する。
【０１２０】
たとえば、スイッチ装置１０１は、送信先の車載デバイス１１１から受信したＡＣＫフレームの中継を遅延させる。より詳細には、制御部７３は、Ｌ３中継部７１によるＡＣＫフレームの送信タイミングを遅延させる。
【０１２１】
再び図８を参照して、たとえば、車載デバイス１１１Ａが２つのアプリケーション１，２を有しており、各アプリケーションに対応するイーサネットフレームを車載デバイス１１１Ｅへ送信する状況を想定する。
【０１２２】
ここでは、アプリケーション１の優先度はアプリケーション２の優先度よりも高く、アプリケーション１に対応するイーサネットフレームＦ１はアプリケーション２に対応するイーサネットフレームＦ２よりも優先的に中継されて車載デバイス１１１Ｅへ送信される必要があるものとする。
【０１２３】
制御部７３は、記憶部７２の状態に応じて、Ｌ３中継部７１によるＡＣＫフレームの送信タイミングの遅延時間（以下、中継遅延時間とも称する。）を決定し、ＡＣＫフレームを中継するタイミングを調整する。
【０１２４】
図９は、本発明の実施の形態に係るスイッチ装置における制御部が保持している遅延時間テーブルの一例を示す図である。
【０１２５】
図９を参照して、たとえば、制御部７３は、記憶部７２が保持しているデータの量（以下、記憶部７２の使用量とも称する。）Ｃと中継遅延時間Ｔとのアプリケーションごとの対応関係を示す遅延時間テーブルを保持しており、遅延時間テーブルを参照することにより中継遅延時間を決定する。
【０１２６】
具体的には、たとえば、記憶部７２の使用量Ｃ１が１０００ｋバイト以上１５００ｋバイト未満の状態におけるアプリケーション１の中継遅延時間Ｔ１は１０ミリ秒であり、アプリケーション２の中継遅延時間Ｔ２は２０ミリ秒である。また、たとえば、記憶部７２の使用量Ｃ１が１５００ｋバイト以上２０００ｋバイト未満の状態におけるアプリケーション１の中継遅延時間Ｔ１は１５ミリ秒であり、アプリケーション２の中継遅延時間Ｔ２は３０ミリ秒である。
【０１２７】
すなわち、制御部７３は、記憶部７２の使用量Ｃ１が１０００ｋバイト以上の場合には、Ｌ３中継部７１によるＡＣＫフレームの送信タイミングを遅延させる必要があると判断し、記憶部７２の使用量Ｃ１が１０００ｋバイト未満の場合には、Ｌ３中継部７１によるＡＣＫフレームの送信タイミングを遅延させる必要がないと判断する。
【０１２８】
図１０は、本発明の実施の形態に係るスイッチ装置における記憶部の使用量とＡＣＫフレームの遅延時間との関係の一例を示す図である。図１０において、縦軸は中継遅延時間（秒）を示し、横軸は記憶部の使用量（ｂｙｔｅ）を示す。
【０１２９】
図１０を参照して、制御部７３が保持する遅延時間テーブルは、記憶部７２の使用量Ｃが所定の値であるＣ０以上の場合において、中継遅延時間Ｔが記憶部７２の使用量Ｃに比例し、かつ、アプリケーションの優先度が低いほど記憶部７２の使用量Ｃの増加に対する中継遅延時間Ｔの増加量が大きくなるように設定されている。
【０１３０】
図１１は、本発明の実施の形態に係る車載通信システムにおける、通信データのスループット調整のシーケンスの一例を示す図である。
【０１３１】
図１１を参照して、まず、スイッチ装置１０１において、制御部７３は、所定のタイミングにおいて記憶部７２の状態を判定する（ステップＳ１１）。
【０１３２】
次に、制御部７３は、記憶部７２の状態を判定した結果、Ｌ３中継部７１によるＡＣＫフレームの送信タイミングを遅延させる必要があると判断すると、アプリケーションごとに中継遅延時間Ｔを設定する。具体的には、制御部７３は、遅延時間テーブルを参照することにより中継遅延時間Ｔを設定する（ステップＳ１２）。
【０１３３】
次に、車載デバイス１１１Ａは、アプリケーション１に対応するイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ１３）。
【０１３４】
次に、車載デバイス１１１Ａは、アプリケーション２に対応するイーサネットフレームＦ２を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ１４）。
【０１３５】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ１を受信すると、イーサネットフレームＦ１に対するＡＣＫフレームａｃｋＦ１をスイッチ装置１０１へ送信する（ステップＳ１５）。
【０１３６】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ２を受信すると、イーサネットフレームＦ２に対するＡＣＫフレームａｃｋＦ２をスイッチ装置１０１へ送信する（ステップＳ１６）。
【０１３７】
次に、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ１を受信すると、ＡＣＫフレームａｃｋＦ１の転送を中継遅延時間Ｔ１だけ保留し（ステップＳ１７）、車載デバイス１１１Ａへ送信する（ステップＳ１８）。
【０１３８】
次に、車載デバイス１１１Ａは、ＡＣＫフレームａｃｋＦ１を受信すると、次に送信すべきイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ１９）。
【０１３９】
一方、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ２を受信すると、ＡＣＫフレームａｃｋＦ２の転送を中継遅延時間Ｔ２だけ保留し（ステップＳ２０）、車載デバイス１１１Ａへ送信する（ステップＳ２１）。
【０１４０】
次に、車載デバイス１１１Ａは、ＡＣＫフレームａｃｋＦ２を受信すると、次に送信すべきイーサネットフレームＦ２を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ２２）。
【０１４１】
次に、制御部７３は、前回記憶部７２の状態を判定したタイミングから所定時間経過後の所定のタイミングにおいて記憶部７２の状態を判定する（ステップＳ２３）。
【０１４２】
次に、制御部７３は、記憶部７２の状態を判定した結果、Ｌ３中継部７１によるＡＣＫフレームの送信タイミングを遅延させる必要がないと判断すると、中継遅延時間Ｔの設定を解除する（ステップＳ２４）。
【０１４３】
次に、車載デバイス１１１Ａは、アプリケーション１に対応するイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ２５）。
【０１４４】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ１を受信すると、イーサネットフレームＦ１に対するＡＣＫフレームａｃｋＦ１をスイッチ装置１０１へ送信する（ステップＳ２６）。
【０１４５】
次に、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ１を受信すると、ＡＣＫフレームａｃｋＦ１の中継を保留することなく、車載デバイス１１１Ａへ送信する（ステップＳ２７）。
【０１４６】
次に、車載デバイス１１１Ａは、アプリケーション２に対応するイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ２８）。
【０１４７】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ２を受信すると、イーサネットフレームＦ２に対するＡＣＫフレームａｃｋＦ２をスイッチ装置１０１へ送信する（ステップＳ２９）。
【０１４８】
次に、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ２を受信すると、ＡＣＫフレームａｃｋＦ２の中継を保留することなく、車載デバイス１１１Ａへ送信する（ステップＳ３０）。
【０１４９】
より詳細には、ステップＳ１７において、スイッチ装置１０１におけるＬ３中継部７１は、Ｌ２スイッチ処理部６０を介してＡＣＫフレームａｃｋＦ１を受信すると、受信したＡＣＫフレームａｃｋＦ１を記憶部７２に保存する。制御部７３は、Ｌ３中継部７１がＡＣＫフレームａｃｋＦ１を受信すると、設定している中継遅延時間Ｔ１をタイマ７４にセットする。
【０１５０】
タイマ７４にセットした中継遅延時間Ｔ１が経過すると、制御部７３は、タイマ７４からの中継遅延時間Ｔ１が経過した旨の通知を受けて、中継遅延時間Ｔ１の経過をＬ３中継部７１に通知する。Ｌ３中継部７１は、制御部７３からの通知を受けて、ＡＣＫフレームａｃｋＦ１を記憶部７２から取得し、取得したＡＣＫフレームａｃｋＦ１に含まれるＶＩＤ等を書き換えてＬ２スイッチ処理部６０へ出力する。
【０１５１】
また、ステップＳ２０において、スイッチ装置１０１におけるＬ３中継部７１は、Ｌ２スイッチ処理部６０を介してＡＣＫフレームａｃｋＦ２を受信すると、受信したＡＣＫフレームａｃｋＦ２を記憶部７２に保存する。制御部７３は、Ｌ３中継部７１がＡＣＫフレームａｃｋＦ２を受信すると、設定している中継遅延時間Ｔ２をタイマ７４にセットする。
【０１５２】
タイマ７４にセットした中継遅延時間Ｔ２が経過すると、制御部７３は、タイマ７４からの中継遅延時間Ｔ２が経過した旨の通知を受けて、中継遅延時間Ｔ２の経過をＬ３中継部７１に通知する。Ｌ３中継部７１は、制御部７３からの通知を受けて、ＡＣＫフレームａｃｋＦ２を記憶部７２から取得し、取得したＡＣＫフレームａｃｋＦ２に含まれるＶＩＤ等を書き換えてＬ２スイッチ処理部６０へ出力する。
【０１５３】
このようにして、スイッチ装置１０１は、記憶部７２の使用量に応じて、ＡＣＫフレームを宛先の車載デバイス１１１へ送信するタイミングを調整する。
【０１５４】
［ウィンドウサイズの変更］
たとえば、スイッチ装置１０１は、送信先の車載デバイス１１１から受信した送信サイズ情報の内容を変更することにより、送信元の車載デバイス１１１が次回送信する通信データの単位時間あたりのデータ量を調整することで通信データのスループットをアプリケーションごとに調整する。
【０１５５】
たとえば、スイッチ装置１０１は、送信先の車載デバイス１１１から受信したＡＣＫフレームにおけるウィンドウサイズを変更する。より詳細には、制御部７３は、ＡＣＫフレームにおけるウィンドウサイズをＬ３中継部７１に変更させる。
【０１５６】
制御部７３は、記憶部７２の状態に応じてウィンドウサイズの縮小量を決定し、次回送信されるイーサネットフレームのデータ量を調整する。
【０１５７】
図１２は、本発明の実施の形態に係るスイッチ装置における制御部が保持しているウィンドウサイズテーブルの一例を示す図である。
【０１５８】
図１２を参照して、たとえば、制御部７３は、記憶部７２の使用量Ｃとウィンドウサイズの縮小量Ｗとのアプリケーションごとの対応関係を示すウィンドウサイズテーブルを保持しており、ウィンドウサイズテーブルを参照することにより、ウィンドウサイズの縮小量Ｗを決定し、次回送信されるイーサネットフレームのデータ量の上限を調整する。
【０１５９】
具体的には、たとえば、記憶部７２の使用量Ｃ１が１０００ｋバイト以上１５００ｋバイト未満の状態におけるアプリケーション１のウィンドウサイズの縮小量Ｗ１は１０００バイトであり、アプリケーション２のウィンドウサイズの縮小量Ｗ２は２０００バイトである。また、たとえば、記憶部７２の使用量Ｃ１が１５００ｋバイト以上２０００ｋバイト未満の状態におけるアプリケーション１のウィンドウサイズの縮小量Ｗ１は１５００バイトであり、アプリケーション２のウィンドウサイズの縮小量Ｗ２は３０００バイトである。
【０１６０】
図１３は、本発明の実施の形態に係るスイッチ装置における記憶部の使用量とウィンドウサイズの縮小量との関係の一例を示す図である。図１３において、縦軸はウィンドウサイズの縮小量（ｂｙｔｅ）を示し、横軸は記憶部の使用量（ｂｙｔｅ）を示す。
【０１６１】
すなわち、制御部７３は、記憶部７２の使用量Ｃ１が１０００ｋバイト以上の場合には、ウィンドウサイズを縮小させる必要があると判断し、記憶部７２の使用量Ｃ１が１０００ｋバイト未満の場合には、ウィンドウサイズを縮小させる必要があると判断する。
【０１６２】
図１３を参照して、制御部７３が保持するウィンドウサイズテーブルは、記憶部７２の使用量Ｃが所定の値Ｃ０以上の場合において、ウィンドウサイズの縮小量Ｗが記憶部７２の使用量Ｃに比例し、かつ、アプリケーションの優先度が低いほど記憶部７２の使用量Ｃの増加に対するウィンドウサイズの縮小量Ｗの増加量が大きくなるように設定されている。
【０１６３】
図１４は、本発明の実施の形態に係る車載通信システムにおける、通信データのスループット調整のシーケンスの一例を示す図である。
【０１６４】
図１４を参照して、まず、スイッチ装置１０１において、制御部７３は、所定のタイミングにおいて記憶部７２の状態を判定する（ステップＳ３１）。
【０１６５】
次に、制御部７３は、記憶部７２の状態を判定した結果、ウィンドウサイズを縮小させる必要があると判断すると、アプリケーションごとにウィンドウサイズの縮小量Ｗを設定する。具体的には、制御部７３は、ウィンドウサイズテーブルを参照することにより縮小量Ｗを決定する（ステップＳ３２）。
【０１６６】
次に、車載デバイス１１１Ａは、アプリケーション１に対応するイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ３３）。
【０１６７】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ１を受信すると、イーサネットフレームＦ１に対するＡＣＫフレームａｃｋＦ１をスイッチ装置１０１へ送信する（ステップＳ３４）。
【０１６８】
次に、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ１を受信すると、ＡＣＫフレームａｃｋＦ１のＴＣＰヘッダフィールドに含まれるウィンドウサイズを書き換え（ステップＳ３５）、書き換え後のＡＣＫフレームａｃｋＦ１を車載デバイス１１１Ａへ送信する（ステップＳ３６）。
【０１６９】
次に、車載デバイス１１１Ａは、ＡＣＫフレームａｃｋＦ１を受信すると、ＡＣＫフレームａｃｋＦ１のＴＣＰヘッダフィールドに含まれるウィンドウサイズで指定されたデータ量を上限として、次に送信すべきイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ３７）。
【０１７０】
次に、車載デバイス１１１Ａは、アプリケーション２に対応するイーサネットフレームＦ２を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ３８）。
【０１７１】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ２を受信すると、イーサネットフレームＦ２に対するＡＣＫフレームａｃｋＦ２をスイッチ装置１０１へ送信する（ステップＳ３９）。
【０１７２】
次に、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ２を受信すると、ＡＣＫフレームａｃｋＦ２のＴＣＰヘッダフィールドに含まれるウィンドウサイズを書き換え（ステップＳ４０）、書き換え後のＡＣＫフレームａｃｋＦ２を車載デバイス１１１Ａへ送信する（ステップＳ４１）。
【０１７３】
次に、車載デバイス１１１Ａは、ＡＣＫフレームａｃｋＦ２を受信すると、ＡＣＫフレームａｃｋＦ１のＴＣＰヘッダフィールドに含まれるウィンドウサイズで指定されたデータ量を上限として、次に送信すべきイーサネットフレームＦ２を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ４２）。
【０１７４】
次に、制御部７３は、前回記憶部７２の状態を判定したタイミングから所定時間経過後の所定のタイミングにおいて記憶部７２の状態を判定する（ステップＳ４３）。
【０１７５】
次に、制御部７３は、記憶部７２の状態を判定した結果、ウィンドウサイズを縮小させる必要がないと判断すると、ウィンドウサイズの縮小量Ｗの設定を解除する（ステップＳ４４）。
【０１７６】
次に、車載デバイス１１１Ａは、アプリケーション１に対応するイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ４５）。
【０１７７】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ１を受信すると、イーサネットフレームＦ１に対するＡＣＫフレームａｃｋＦ１をスイッチ装置１０１へ送信する（ステップＳ４６）。
【０１７８】
次に、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ１を受信すると、ＡＣＫフレームａｃｋＦ１に含まれるウィンドウサイズを書き換えることなく、車載デバイス１１１Ａへ送信する（ステップＳ４７）。
【０１７９】
次に、車載デバイス１１１Ａは、アプリケーション２に対応するイーサネットフレームＦ１を、スイッチ装置１０１を介して車載デバイス１１１Ｅへ送信する（ステップＳ４８）。
【０１８０】
次に、車載デバイス１１１Ｅは、イーサネットフレームＦ２を受信すると、イーサネットフレームＦ２に対するＡＣＫフレームａｃｋＦ２をスイッチ装置１０１へ送信する（ステップＳ４９）。
【０１８１】
次に、スイッチ装置１０１は、ＡＣＫフレームａｃｋＦ２を受信すると、ＡＣＫフレームａｃｋＦ２に含まれるウィンドウサイズを書き換えることなく、車載デバイス１１１Ａへ送信する（ステップＳ５０）。
【０１８２】
より詳細には、ステップＳ３５において、スイッチ装置１０１におけるＬ３中継部７１は、Ｌ２スイッチ処理部６０を介してＡＣＫフレームａｃｋＦ１を受信すると、受信したＡＣＫフレームａｃｋＦ１を記憶部７２に保存する。制御部７３は、Ｌ３中継部７１がＡＣＫフレームａｃｋＦ１を受信すると、設定しているウィンドウサイズの縮小量Ｗ１をＬ３中継部７１に通知する。
【０１８３】
Ｌ３中継部７１は、ＡＣＫフレームａｃｋＦ１を記憶部７２から取得し、ＡＣＫフレームａｃｋＦ１に含まれるウィンドウサイズを縮小量Ｗ１に従って書き換えるとともに、ＡＣＫフレームａｃｋＦ１に含まれるＶＩＤ等を書き換えてＬ２スイッチ処理部６０へ出力する。
【０１８４】
また、ステップＳ４０において、スイッチ装置１０１におけるＬ３中継部７１は、Ｌ２スイッチ処理部６０を介してＡＣＫフレームａｃｋＦ２を受信すると、受信したＡＣＫフレームａｃｋＦ２を記憶部７２に保存する。制御部７３は、Ｌ３中継部７１がＡＣＫフレームａｃｋＦ１を受信すると、設定しているウィンドウサイズの縮小量Ｗ２をＬ３中継部７１に通知する。
【０１８５】
Ｌ３中継部７１は、ＡＣＫフレームａｃｋＦ２を記憶部７２から取得し、ＡＣＫフレームａｃｋＦ２に含まれるウィンドウサイズを縮小量Ｗ２に従って書き換えるとともに、ＡＣＫフレームａｃｋＦ２に含まれるＶＩＤ等を書き換えてＬ２スイッチ処理部６０へ出力する。
【０１８６】
このようにして、スイッチ装置１０１は、記憶部７２の使用量に応じて、車載デバイス１１１Ａが次に送信するイーサネットフレームのデータ量を調整する。
【０１８７】
［送信レートからの推測］
スイッチ装置１０１では、制御部７３は、通信ポート５４における通信データの送信レートに基づいて、記憶部７２の状態を判定してもよい。
【０１８８】
より詳細には、制御部７３は、少なくともいずれか１つの通信ポート５４を定期的または不定期に監視し、通信ポート５４における通信データの送信レートに基づいて、記憶部７２の状態を判定する。
【０１８９】
たとえば、制御部７３は、各通信ポート５４を監視し、たとえば平均送信レートが最大である通信ポートの送信レート（以下、最大送信レートとも称する。）に基づいて、記憶部７２の状態を判定する。あるいは、制御部７３は、各通信ポート５４を監視し、各通信ポートの送信レートの平均値に基づいて、記憶部７２の状態を判定する。
【０１９０】
図１５は、本発明の実施の形態に係るスイッチ装置における制御部が保持している使用量推測テーブルの一例を示す図である。
【０１９１】
図１５を参照して、たとえば、制御部７３は、最大送信レートと所定時間後の記憶部７２の使用量との対応関係を示す使用量推測テーブルを保持している。制御部７３は、使用量推測テーブルを参照することにより、所定時間後の記憶部７２の使用量を推測する。
【０１９２】
具体的には、たとえば、制御部７３は、最大送信レートが５０Ｍｂｐｓ未満の場合、所定時間後の記憶部７２の使用量の推定値を５００ｋｂｙｔｅ未満であると推測し、最大送信レートが５０Ｍｂｐｓ以上の場合、所定時間後の記憶部７２の使用量の推定値を５００ｋｂｙｔｅ以上１０００ｋｂｙｔｅ未満であると推測し、最大送信レートが７５Ｍｂｐｓ以上の場合、所定時間後の記憶部７２の使用量の推定値を１０００ｋｂｙｔｅ以上１５００ｋｂｙｔｅ未満であると推測し、最大送信レートが１００Ｍｂｐｓ以上の場合、所定時間後の記憶部７２の使用量の推定値を１５００ｋｂｙｔｅ以上２０００ｋｂｙｔｅ未満であると推測する。
【０１９３】
制御部７３は、上記推測結果に基づいて記憶部７２の状態を判定し、通信データのスループットをアプリケーションごとに調整する。
【０１９４】
より詳細には、制御部７３は、推測した記憶部７２の使用量に基づいて、図９に示す遅延時間テーブルを参照することにより中継遅延時間Ｔを決定する。あるいは、制御部７３は、推測した記憶部７２の使用量に基づいて、図１２に示すウィンドウサイズテーブルを参照することによりウィンドウサイズの縮小量Ｗを決定する。
【０１９５】
［動作の流れ］
図１６は、本発明の実施の形態に係る車載通信システムにおいて、スイッチ装置が車載デバイスから送信される通信データのスループットを調整する際の動作手順を定めたフローチャートである。
【０１９６】
図１６を参照して、制御部７３は、記憶部７２の状態を定期的または不定期に判定する（ステップＳ１０２）。具体的には、制御部７３は、記憶部７２を定期的または不定期に監視し、記憶部７２が保持しているデータの量またはイーサネットフレームの数に基づいて記憶部７２の状態を判定する。あるいは、制御部７３は、通信ポート５４を定期的または不定期に監視し、通信ポート５４における通信データの送信レートに基づいて記憶部７２の状態を判定する。
【０１９７】
次に、制御部７３は、記憶部７２の状態の判定結果に基づいて、通信データのスループットを低減する必要があるかを判断する（ステップＳ１０４）。たとえば、図９に示す遅延時間テーブルまたは図１２に示すウィンドウサイズテーブルを参照することにより、通信データのスループットを低減する必要があるかを判断する。
【０１９８】
次に、制御部７３は、通信データのスループットを低減する必要があると判断した場合（ステップＳ１０４でＹＥＳ）、スループットの低減量をアプリケーションごとに設定する（ステップＳ１０６）。たとえば、制御部７３は、記憶部７２の状態に応じて中継遅延時間Ｔまたはウィンドウサイズの縮小量Ｗをアプリケーションごとに設定する。
【０１９９】
一方、制御部７３は、通信データのスループットを低減する必要がないと判断した場合（ステップＳ１０４でＮＯ）、スループットの低減を解除する（ステップＳ１０８）。たとえば、制御部７３は、中継遅延時間Ｔまたはウィンドウサイズの縮小量Ｗの設定を解除する。
【０２００】
なお、本発明の実施の形態に係る車載通信システムでは、制御部７３は、記憶部７２の状態に応じて、ＡＣＫフレームの送信タイミングの遅延および送信サイズ情報の内容の変更のうち、いずれか一方のみを行う構成であってもよいし、両方を行う構成であってもよい。
【０２０１】
また、本発明の実施の形態に係る車載通信システムでは、１つの車載デバイス１１１が２つのアプリケーションを有しており、スイッチ装置１０１は、各アプリケーションに対応するイーサネットフレームを他の車載デバイス１１１へ送信する場合に通信データのスループットをアプリケーションごとに調整する構成であるとしたが、これに限定するものではない。
【０２０２】
制御部７３は、１つの車載デバイス１１１が有するアプリケーションに対応するイーサネットフレームと、他の車載デバイス１１１が有するアプリケーションに対応するイーサネットフレームとを、さらに他の車載デバイス１１１へ送信する場合に通信データのスループットをアプリケーションごとに調整する構成であってもよい。
【０２０３】
また、本発明の実施の形態に係る車載通信システムでは、Ｌ３中継処理部７０が制御部７３を有しており、制御部７３が、記憶部７２の状態を判定し、判定結果に基づいて、車載デバイスから送信される通信データのスループットをアプリケーションごとに調整する構成であるとしたが、これに限定するものではない。
【０２０４】
制御部７３が、上記判定結果に基づいて、図９に示す遅延時間テーブルを参照することにより中継遅延時間Ｔを決定し、Ｌ２スイッチ処理部６０におけるＬ２スイッチ部６１によるＡＣＫフレームの送信タイミングを遅延させることにより、通信データのスループットをアプリケーションごとに調整する構成であってもよい。さらに、制御部７３が、上記判定結果に基づいて、図１２に示すウィンドウサイズテーブルを参照することにより縮小量Ｗを決定し、Ｌ２スイッチ部６１に送信サイズ情報の内容を変更させることにより、通信データのスループットをアプリケーションごとに調整する構成であってもよい。
【０２０５】
さらに、制御部７３が、Ｌ２スイッチ処理部６０における記憶部６２の状態を判定し、判定結果に基づいて、Ｌ３中継部７１またはＬ２スイッチ部６１によるＡＣＫフレームの送信タイミングを遅延させることにより、通信データのスループットをアプリケーションごとに調整する構成であってもよい。あるいは、制御部７３が、Ｌ２スイッチ処理部６０における記憶部６２の状態を判定し、判定結果に基づいて、Ｌ３中継部７１またはＬ２スイッチ部６１に送信サイズ情報の内容を変更させることにより、通信データのスループットをアプリケーションごとに調整する構成であってもよい。
【０２０６】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置１０１は、２つのアプリケーションに対応する各イーサネットフレームを他の車載デバイス１１１へ送信する場合に、いずれのアプリケーションについても通信データのスループットを調整する構成であるとしたが、これに限定するものではない。スイッチ装置１０１は、制御部７３が記憶部７２の状態を判定した結果、一方のアプリケーションについては通信データのスループットを調整せず、他方のアプリケーションについてのみ通信データのスループットを調整する構成であってもよい。また、スイッチ装置１０１は、３つ以上のアプリケーションに対応する各イーサネットフレームを他の車載デバイス１１１へ送信する場合に、少なくともいずれか１つのアプリケーションについて通信データのスループットを調整する構成であってもよい。
【０２０７】
ところで、特許文献１に記載の車載ネットワークでは、車載ＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）間で送受信される通信データを中継する通信ゲートウェイが設けられる。
【０２０８】
たとえば、通信ゲートウェイが車載ＥＣＵから多量の通信データを受信して輻輳状態となる場合がある。
【０２０９】
具体的には、たとえば、車載ネットワークにおいて、スイッチ装置１０１が車載デバイス１１１から多量の通信データたとえばイーサネットフレームを受信すると、たとえば、Ｌ３中継処理部７０の記憶部においてオーバーフローが生じる場合がある。
【０２１０】
記憶部のオーバーフローを解消するために、たとえば、スイッチ装置１０１から車載デバイス１１１へポーズフレームを送信することにより、車載デバイスからイーサネットフレームが送信されてくる頻度を下げることが考えられる。
【０２１１】
しかしながら、車載デバイス１１１が複数のアプリケーションの機能を有している場合、アプリケーションの優先度に応じて、優先度の高いアプリケーションに対応するイーサネットフレームを優先的に中継することはできない。
【０２１２】
これに対して、本発明の実施の形態に係るスイッチ装置１０１では、車両１に搭載される。Ｌ３中継部７１は、車両１に搭載される複数の車載デバイス１１１間のイーサネットフレームを中継する。記憶部７２は、中継すべきイーサネットフレームを保持する。そして、制御部７３は、記憶部７２の状態を判定し、判定結果に基づいて、車載デバイス１１１から送信されるイーサネットフレームのスループットをアプリケーションごとに調整する。
【０２１３】
このような構成により、記憶部７２の状態に応じて、車載デバイス１１１から送信されるイーサネットフレームのスループットをアプリケーションごとに調整することができる。たとえば、スイッチ装置１０１において輻輳状態となった場合に、アプリケーションの優先度に応じてイーサネットフレームの送信を選択的に制限することができる。これにより、優先度が高いアプリケーションに関するイーサネットフレームのスループットを大幅に低下させることなく、スイッチ装置１０１の輻輳状態を緩和することができ、スイッチ装置１０１におけるイーサネットフレームの滞留および伝送遅延をバランス良く調整することができる。
【０２１４】
したがって、本発明の実施の形態に係るスイッチ装置１０１では、車載ネットワークにおいてより安定した通信環境を実現することができる。
【０２１５】
また、本発明の実施の形態に係るスイッチ装置１０１では、車載デバイス１１１は、他の車載デバイス１１１からＡＣＫフレームを受信するとイーサネットフレームを送信する。制御部７３は、Ｌ３中継部７１によるＡＣＫフレームの中継を遅延させることによりスループットを調整する。
【０２１６】
このような構成により、制御部７３がＡＣＫフレームの中継を遅延させることで、車載デバイス１１１による次のイーサネットフレームの送信タイミングを遅延させることができる。これにより、既存の処理を利用しながら、スループットをアプリケーションごとに調整することができる。
【０２１７】
また、本発明の実施の形態に係るスイッチ装置１０１では、車載デバイス１１１は、他の車載デバイス１１１から受信したＡＣＫフレームにおけるウィンドウサイズに応じた量のイーサネットフレームを単位時間あたりで送信する。制御部７３は、Ｌ３中継部７１が受信したＡＣＫフレームにおけるウィンドウサイズの内容を変更してＬ３中継部７１に中継させることによりスループットを調整する。
【０２１８】
このような構成により、制御部７３がＡＣＫフレームにおけるウィンドウサイズの内容を変更してＬ３中継部７１に中継させることで、車載デバイス１１１が次に送信するイーサネットフレームの量を調整することができる。これにより、既存の処理を利用しながら、スループットをアプリケーションごとに調整することができる。
【０２１９】
また、本発明の実施の形態に係るスイッチ装置１０１は、複数の通信ポート５４を備える。Ｌ３中継部７１は、通信ポート５４を介してイーサネットフレームを送受信する。そして、制御部７３は、通信ポート５４におけるイーサネットフレームの送信レートに基づいて記憶部７２の状態を判定する。
【０２２０】
このような構成により、通信ポート５４における送信レートに基づいて記憶部７２の状態を事前に予測し、予測結果に基づいて記憶部７２の状態を判定することができる。これにより、たとえば、記憶部７２の容量が実際に不足する前に、車載デバイス１１１から送信されるイーサネットフレームのスループットをアプリケーションごとに調整することができる。
【０２２１】
本発明の実施の形態に係る通信制御方法では、まず、スイッチ装置１０１が、車両１に搭載される複数の車載デバイス１１１間のイーサネットフレームを中継する。次に、スイッチ装置１０１が、記憶部７２の状態を判定し、判定結果に基づいて、車載デバイス１１１から送信されるイーサネットフレームのスループットをアプリケーションごとに調整する。
【０２２２】
このような方法により、記憶部７２の状態に応じて、車載デバイス１１１から送信されるイーサネットフレームのスループットをアプリケーションごとに調整することができる。たとえば、スイッチ装置１０１において輻輳状態となった場合に、アプリケーションの優先度に応じてイーサネットフレームの送信を選択的に制限することができる。これにより、優先度が高いアプリケーションに関するイーサネットフレームのスループットを大幅に低下させることなく、スイッチ装置１０１の輻輳状態を緩和することができ、スイッチ装置１０１におけるイーサネットフレームの滞留および伝送遅延をバランス良く調整することができる。
【０２２３】
したがって、本発明の実施の形態に係る通信制御方法では、車載ネットワークにおいてより安定した通信環境を実現することができる。
【０２２４】
［スイッチ装置１０１の変形例１］
再び図１を参照して、車載デバイス１１１は、イーサネットフレームを正常に受信できなかった場合、イーサネットフレームの再送を要求するために、同一のＡＣＫフレームを３回連続で送信元の車載デバイス１１１へ送信する。
【０２２５】
より詳細には、車載デバイス１１１は、イーサネットフレームを正常に受信できなかった場合、イーサネットヘッダフィールド、ＩＰヘッダフィールド、およびＴＣＰヘッダフィールドが同一であるＡＣＫフレームを３回連続で送信元の車載デバイス１１１へ送信する。
【０２２６】
車載デバイス１１１は、同一のＡＣＫフレームを所定時間内に３回連続で受信すると、前回送信したイーサネットフレームを再送する。
【０２２７】
このような構成においては、記憶部７２の状態に関わらず、送信元の車載デバイス１１１によるイーサネットフレームの再送は遅滞なく行われることが好ましい。
【０２２８】
そこで、変形例１に係るスイッチ装置１０１では、制御部７３は、たとえば、Ｌ３中継部７１が車載デバイス１１１からあるアプリケーションに関するＡＣＫフレームを受信すると、当該車載デバイスの当該アプリケーションに関して前回受信したＡＣＫフレームと今回受信したＡＣＫフレームとを比較し、比較結果に応じて、今回受信したＡＣＫフレームの中継処理を遅延させるか否かを決定する。
【０２２９】
より詳細には、制御部７３は、たとえば、Ｌ３中継部７１が車載デバイス１１１からあるアプリケーションに関するＡＣＫフレームを受信すると、当該車載デバイスから当該アプリケーションに関する前回受信したＡＣＫフレームの上記フィールドと今回受信したＡＣＫフレームの上記フィールドとが同一である場合、記憶部７２の状態の判定結果に関わらず、今回受信したＡＣＫフレームを遅延させることなく中継させる。
【０２３０】
図１７は、本発明の実施の形態に係る車載通信システムにおいて、スイッチ装置が車載デバイスから送信される通信データのスループットを調整する際の動作手順を定めたフローチャートである。
【０２３１】
図１７を参照して、制御部７３は、Ｌ３中継部７１を監視し、Ｌ３中継部７１がＡＣＫフレームを受信するまで待機する（ステップＳ２０２でＮＯ）。
【０２３２】
制御部７３は、Ｌ３中継部７１がＡＣＫフレームを受信すると（ステップＳ２０２でＹＥＳ）、ＡＣＫフレームに関する所定条件を満たすか否かを確認する（ステップＳ２０４）上記所定条件とは、具体的には、Ｌ３中継部７１が、対応の車載デバイス１１１およびアプリケーションが今回受信したＡＣＫフレームと同一であるＡＣＫフレームであって、イーサネットヘッダフィールド、ＩＰヘッダフィールド、およびＴＣＰヘッダフィールドが今回受信したＡＣＫフレームと同一であるＡＣＫフレームを、所定時間以下の間隔で３回連続で受信したか否かである。
【０２３３】
制御部７３は、ＡＣＫフレームに関する上記所定条件を満たす場合（ステップＳ２０４でＹＥＳ）、記憶部７２の状態に関わらず、今回受信したＡＣＫフレームをＬ３中継部７１に遅滞なく送信させる（ステップＳ２０６）。
【０２３４】
制御部７３は、ＡＣＫフレームに関する上記所定条件を満たさない場合（ステップＳ２０４でＮＯ）、今回受信したＡＣＫフレームをスループットの調整量に従ってＬ３中継部７１に送信させる（ステップＳ２０８）。
【０２３５】
以上のように、本発明の実施の形態の変形例に係るスイッチ装置１０１では、制御部７３は、同じ車載デバイス１１１から今回受信したＡＣＫフレームおよび前回受信したＡＣＫフレームを比較し、比較結果に応じて、今回受信したＡＣＫフレームの中継を遅延させるか否かを決定する。
【０２３６】
車載デバイス１１１は、他の車載デバイス１１１から送信されるイーサネットフレームを正常に受信できなかった場合に、当該他の車載デバイスにイーサネットフレームの再送を要求するために当該他の車載デバイス１１１へＡＣＫフレームを複数回連続で送信する場合がある。この場合、変形例に係るスイッチ装置１０１の構成によれば、イーサネットフレームの再送が遅延することを防ぐことができる。
【０２３７】
上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【０２３８】
以上の説明は、以下に付記する特徴を含む。
【０２３９】
［付記１］
車両に搭載されるスイッチ装置であって、
前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、
中継すべき前記通信データを保持する記憶部と、
前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部とを備え、
前記制御部は、前記記憶部の使用量と中継遅延時間とのアプリケーションごとの対応関係を示す遅延時間テーブルを参照することにより前記中継遅延時間を取得し、前記スイッチ部によるＡＣＫフレームの中継を取得した前記中継遅延時間だけ遅延させることにより前記スループットを調整する、スイッチ装置。
【０２４０】
［付記１］
車両に搭載されるスイッチ装置であって、
前記車両に搭載される複数の機能部間の通信データを中継するスイッチ部と、
中継すべき前記通信データを保持する記憶部と、
前記記憶部の状態を判定し、判定結果に基づいて、前記機能部から送信される前記通信データのスループットをアプリケーションごとに調整する制御部とを備え、
前記制御部は、前記記憶部の使用量とウィンドウサイズの縮小量とのアプリケーションごとの対応関係を示すウィンドウサイズテーブルを参照することにより前記縮小量を取得し、前記スイッチ部が受信したＡＣＫフレームのウィンドウサイズを取得した前記縮小量に応じて変更することにより前記スループットを調整する、スイッチ装置。
【符号の説明】
【０２４１】
１  車両
１０  イーサネットケーブル
５４  通信ポート
６０  Ｌ２スイッチ処理部
６１  Ｌ２スイッチ部
６２  記憶部
７０  Ｌ３中継処理部
７１  Ｌ３中継部
７２  記憶部
７３  制御部
７４  タイマ
１０１  スイッチ装置
１１１  車載デバイス
３０１  車載通信システム
【図１】
2020077915.tif 000003
【図２】
2020077915.tif 000004
【図３】
2020077915.tif 000005
【図４】
2020077915.tif 000006
【図５】
2020077915.tif 000007
【図６】
2020077915.tif 000008
【図７】
2020077915.tif 000009
【図８】
2020077915.tif 000010
【図９】
2020077915.tif 000011
【図１０】
2020077915.tif 000012
【図１１】
2020077915.tif 000013
【図１２】
2020077915.tif 000014
【図１３】
2020077915.tif 000015
【図１４】
2020077915.tif 000016
【図１５】
2020077915.tif 000017
【図１６】
2020077915.tif 000018
【図１７】
2020077915.tif 000019