(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-11
(45)【発行日】2023-12-19
(54)【発明の名称】車載ハブ及び車載システム
(51)【国際特許分類】
H04L 12/44 20060101AFI20231212BHJP
【FI】
H04L12/44 300
(21)【出願番号】P 2020127331
(22)【出願日】2020-07-28
【審査請求日】2023-05-17
(73)【特許権者】
【識別番号】000006895
【氏名又は名称】矢崎総業株式会社
(74)【代理人】
【識別番号】100083806
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100101247
【氏名又は名称】高橋 俊一
(74)【代理人】
【識別番号】100095500
【氏名又は名称】伊藤 正和
(74)【代理人】
【識別番号】100098327
【氏名又は名称】高松 俊雄
(72)【発明者】
【氏名】井村 米和
(72)【発明者】
【氏名】上田 貴之
【審査官】岩田 玲彦
(56)【参考文献】
【文献】特開2010-178211(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/44
(57)【特許請求の範囲】
【請求項1】
車載ネットワークにおいて異なるセグメントに所属するように設定可能な複数のポートを有する車載ハブであって、
レイヤ2スイッチング手段と、
前記レイヤ2スイッチング手段に接続される補助スイッチング手段と、
を備え、
前記レイヤ2スイッチング手段は、
送信元ノードのMACアドレスと、宛先ノードのMACアドレスと、車載情報IDを含む車載メッセージとを含むフレームを、前記送信元ノードに接続された送信元ポートから受信するレイヤ2受信部と、
前記フレームが、前記送信元ポートが所属する第1セグメント内のポートに転送されるユニキャストフレームでないと判断すると、前記フレームに対して、前記第1セグメントに割り当てられた第1セグメントIDを挿入して、前記フレームを前記補助スイッチング手段に転送するレイヤ2処理部と、
を備え、
前記補助スイッチング手段は、
前記車載情報IDと、前記車載メッセージが送信される前記宛先ノードと、前記宛先ノードに接続された宛先ポートが所属する第2セグメントに割り当てられた第2セグメントIDとを紐付ける情報を記憶する補助記憶部と、
前記レイヤ2処理部から受信した前記フレームから、前記車載情報IDを抽出する抽出部と、
前記情報に基づいて、抽出した前記車載情報IDに紐付けられた前記宛先ノードを識別し、識別した前記宛先ノードに紐付けられた前記第2セグメントIDを取得する取得部と、
前記フレームに挿入された前記第1セグメントIDを、取得した前記第2セグメントIDに置き換えて、前記フレームを前記レイヤ2スイッチング手段に転送するフレーム処理部と、
を備え、
前記レイヤ2処理部は、前記フレーム処理部から受信した前記フレームに含まれる前記第2セグメントIDに基づいて、前記第2セグメントIDを取り除いた前記フレームを前記宛先ポートに転送する車載ハブ。
【請求項2】
前記フレーム処理部は、前記第2セグメントIDが前記第1セグメントIDと異なると判断する場合に、前記フレームに挿入された前記第1セグメントIDを前記第2セグメントIDに置き換えて、前記フレームを前記レイヤ2スイッチング手段に転送する請求項1に記載の車載ハブ。
【請求項3】
前記抽出部において、前記車載情報IDが抽出されない場合、前記フレーム処理部は、前記フレームを破棄する請求項1又は2に記載の車載ハブ。
【請求項4】
前記取得部において、前記宛先ノードが識別されない場合、前記フレーム処理部は、前記フレームを破棄する請求項1又は2に記載の車載ハブ。
【請求項5】
請求項1から4のいずれか一項に記載の車載ハブと、
前記車載ハブに収容される複数のノードと、
を備える車載システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車載ハブ及び車載システムに関する。
【背景技術】
【0002】
車両に搭載される複数の機器が、通信インタフェースを介して、互いに通信可能に接続されて、車載ネットワークを構成する車載システムが知られている(例えば、特許文献1参照)。
【0003】
特許文献1に開示された車載システムでは、車載ハブは、バーチャル・ローカル・エリア・ネットワーク(VLAN)により、車載ネットワークを複数のセグメントに仮想的に分割することができる。
【0004】
セグメント内において、車載ハブは、メディア・アクセス・コントロール(MAC)アドレスに基づいてフレームの転送を行う。一方、セグメント間において、車載ハブは、フレームの転送を遮断する。これにより、車載ネットワークのセキュリティを向上させることができる。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述の車載システムにおいて、異なるセグメント間で情報を共有する場合、セグメント間においてフレームの転送を行うために、ルーティング機能を有するレイヤ3スイッチング手段を別途設ける必要がある。
【0007】
レイヤ3スイッチング手段は、セグメント間において、インターネット・プロトコル(IP)アドレスに基づいてフレームを転送する。
【0008】
このように、従来の車載システムでは、車載ネットワークを複数のセグメントに分割する場合、セグメント内において、MACアドレスに基づくフレームの転送が行われ、かつ、セグメント間において、IPアドレスに基づくフレームの転送が行われる。このため、車載ネットワークの構成が複雑になり、車載システムの製造コストが増大するといった問題が生じていた。
【0009】
本発明は、このような従来技術が有する課題に鑑みてなされたものである。そして本発明の目的は、製造コストの増大を抑制しつつ、車載ネットワークのセキュリティを向上し得る車載ハブ及び車載システムを提供することにある。
【課題を解決するための手段】
【0010】
本発明の態様に係る車載ハブは、車載ネットワークにおいて異なるセグメントに所属するように設定可能な複数のポートを有し、レイヤ2スイッチング手段と、レイヤ2スイッチング手段に接続される補助スイッチング手段とを備える。レイヤ2スイッチング手段は、レイヤ2受信部と、レイヤ2処理部とを備える。レイヤ2受信部は、送信元ノードのMACアドレスと、宛先ノードのMACアドレスと、車載情報IDを含む車載メッセージとを含むフレームを、送信元ノードに接続された送信元ポートから受信する。レイヤ2処理部は、フレームが、送信元ポートが所属する第1セグメント内のポートに転送されるユニキャストフレームでないと判断すると、当該フレームに対して、第1セグメントに割り当てられた第1セグメントIDを挿入して、当該フレームを補助スイッチング手段に転送する。補助スイッチング手段は、補助記憶部と、抽出部と、取得部と、フレーム処理部とを備える。補助記憶部は、車載情報IDと、車載メッセージが送信される宛先ノードと、宛先ノードに接続された宛先ポートが所属する第2セグメントに割り当てられた第2セグメントIDとを紐付ける情報を記憶する。抽出部は、レイヤ2処理部から受信したフレームから、車載情報IDを抽出する。取得部は、前記情報に基づいて、抽出した車載情報IDに紐付けられた宛先ノードを識別し、識別した宛先ノードに紐付けられた第2セグメントIDを取得する。フレーム処理部は、フレームに挿入された第1セグメントIDを、取得した第2セグメントIDに置き換えて、当該フレームをレイヤ2スイッチング手段に転送する。レイヤ2処理部は、フレーム処理部から受信したフレームに含まれる第2セグメントIDに基づいて、第2セグメントIDを取り除いた当該フレームを宛先ポートに転送する。
【0011】
フレーム処理部は、第2セグメントIDが第1セグメントIDと異なると判断する場合に、フレームに挿入された前記第1セグメントIDを第2セグメントIDに置き換えて、当該フレームをレイヤ2スイッチング手段に転送することが好ましい。
【0012】
抽出部において、車載情報IDが抽出されない場合、フレーム処理部はフレームを破棄することが好ましい。
【0013】
取得部において、宛先ノードが識別されない場合、フレーム処理部はフレームを破棄することが好ましい。
【0014】
本発明の他の態様に係る車載システムは、上述した車載ハブと、当該車載ハブに収容される複数のノードとを備える。
【発明の効果】
【0015】
本発明によれば、製造コストの増大を抑制しつつ、車載ネットワークのセキュリティを向上し得る車載ハブ及び車載システムを提供することができる。
【図面の簡単な説明】
【0016】
【
図1】
図1は、本実施形態に係る車載システムの全体概略構成図である。
【
図2】
図2は、本実施形態に係るレイヤ2フレームの構成を示す図である。
【
図3】
図3は、本実施形態に係るレイヤ2スイッチング手段の機能ブロック構成図である。
【
図4】
図4は、本実施形態に係るレイヤ2スイッチング手段によって保持される、ポート番号とMACアドレスとを紐付けるMACアドレステーブルの一例を示す図である。
【
図5】
図5は、本実施形態に係るレイヤ2スイッチング手段によって保持される、ポート番号とVLAN IDとを紐付けるVLAN IDテーブルの一例を示す図である。
【
図6】
図6は、本実施形態に係る補助スイッチング手段の機能ブロック構成図である。
【
図7】
図7は、本実施形態に係る補助スイッチング手段によって保持される、車載情報IDと宛先ノードとを紐付ける車載情報IDテーブルの一例を示す図である。
【
図8】
図8は、本実施形態に係る補助スイッチング手段によって保持される、宛先ノードと、ポート番号と、VLAN IDとを紐付ける宛先VLAN IDテーブルの一例を示す図である。
【
図9】
図9は、本実施形態に係るフレーム転送手順における、レイヤ2スイッチング手段の動作フロー1を示す図である。
【
図10】
図10は、本実施形態に係るフレーム転送手順における、レイヤ2スイッチング手段の動作フロー2を示す図である。
【
図11】
図11は、本実施形態に係るフレーム転送手順における、補助スイッチング手段の動作フローを示す図である。
【
図12】
図12は、本実施形態に係るフレーム転送手順の動作例におけるシーケンスを示す図である。
【
図13】
図13は、本実施形態の変形例に係る車載システムの全体概略構成図である。
【発明を実施するための形態】
【0017】
以下、図面を用いて、本実施形態に係る車載ハブ及び車載システムについて詳細に説明する。なお、同一の機能や構成には、同一又は類似の符号を付して、その説明を適宜省略する。
【0018】
[車載システムの全体概略構成]
図1は、本実施形態に係る車載システム1の全体概略構成図である。車載システム1は、車両に搭載され、車両内に形成された車載ネットワークの通信を制御する。開放型システム間相互接続(OSI)参照モデルのレイヤ1(物理層)及びレイヤ2(データリンク層)を規定する通信規格が、車載ネットワークに適用される。本実施形態では、車載ネットワークは、イーサネット(登録商標)を通信規格とするネットワークである。
【0019】
図1に示すように、車載システム1は、ノード10a~10d及び車載ハブ20を備える。車載ネットワークは、ノード10a~10d及び車載ハブ20により構成される。なお、ノードの数は4つには限定されず、他の値であってもよい。
【0020】
ノード10a~10dは、車両に搭載される機器であり、例えば、エンジン・コントロール・ユニット(ECU)である。車両に搭載されるECUには、車両制御系ECU、走行安全制御系ECU、ボディ制御系ECU、パワートレイン制御系ECU、センシング系ECU、情報通信系ECUなどがある。
【0021】
ノード10a~10dは、ケーブル30a~30dを用いて、車載ハブ20に接続されている。本実施形態では、ケーブル30a~30dは、イーサネットで使用される通信ケーブルである。
【0022】
ノード10a~10dには、メディア・アクセス・コントロール(MAC)アドレスMa~Mdが割り当てられている。MACアドレスは、レイヤ2において、車載ネットワークに接続しているノードを識別するために使用される。
【0023】
ノード10a~10dの各々は、車載ネットワークに特有のメッセージ(以下、車載メッセージという)を送受信する。車載メッセージは、データと、当該データの項目を識別するための車載情報IDとを含む。当該データは、例えば、車両動作に関するデータである。
【0024】
車載メッセージに含まれるデータは、項目別に分類されている。当該項目は、車両全体のシステム開発時に定義される。車載ネットワークにおいて、各項目内のデータは、特定のノードで使用される。例えば、データの項目が「車速」である場合、当該データを使用するノードとして、「メータECU」が定まる。このため、車両全体のシステム開発時に、各項目内のデータを使用するノードを予め定義することができる。
【0025】
車載メッセージに含まれる車載情報IDは、車両全体のシステム開発時に、データの項目に割り当てられる。なお、データの項目は「車載情報」とも呼称される。
【0026】
ノード10a~10dの各々は、レイヤ2フレームに車載メッセージを含めて、車載メッセージの送受信を行う。本実施形態では、レイヤ2フレームは、イーサネットフレームである。
【0027】
図2は、本実施形態に係るレイヤ2フレームの構成を示す図である。
図2に示すように、レイヤ2フレームは、プリアンブル、レイヤ2ヘッダ、レイヤ2ペイロード、及びフレーム・チェック・シーケンス(FCS)を含む。
【0028】
プリアンブルは、車載ネットワークに接続しているノードに対して、フレーム送信の開始を認識させて、同期を取るタイミングを与えるビット列である。
【0029】
レイヤ2ヘッダは、送信元MACアドレス及び宛先MACアドレスを有する。送信元MACアドレスは、フレームを送信する送信元ノードに割り当てられたMACアドレスである。宛先MACアドレスは、フレームを受信する宛先ノードに割り当てられたMACアドレスである。
【0030】
なお、後述するように、車載ハブ20は、レイヤ2ヘッダに対して、バーチャル・ローカル・エリア・ネットワーク・識別子(VLAN ID)を含むバーチャル・ローカル・エリア・ネットワーク・タグ(VLANタグ)を挿入することができる。
【0031】
レイヤ2ペイロードは、車載メッセージを有する。上述したように、車載メッセージは、データと、当該データの項目(車載情報)を識別するための車載情報IDとを含む。ノード10a~10dの各々は、車載メッセージを、レイヤ2フレームのペイロードに書き込む。
【0032】
FCSは、フレームのエラー検出に使用される値を有する。
【0033】
図1に示すように、車載ハブ20は、車両に搭載される機器であり、ノード10a~10dを収容する。車載ハブ20は、ノード間で送受信されるレイヤ2フレームの転送を行う。
【0034】
車載ハブ20は、レイヤ2スイッチング手段50及び補助スイッチング手段70を備える。レイヤ2スイッチング手段50は、信号線(バス)90を用いて、補助スイッチング手段70に接続される。
【0035】
レイヤ2スイッチング手段50は、ポート51a~51d及びハブ内ポート51eを備える。ポート51a~51dには、ケーブル30a~30dがそれぞれ接続される。ハブ内ポート51eには、信号線90が接続される。
【0036】
レイヤ2スイッチング手段50は、バーチャル・ローカル・エリア・ネットワーク(VLAN)により、車載ネットワークを複数のセグメント(以下、VLANセグメントという)に仮想的(論理的)に分割することができる。なお、同一のVLANセグメントに所属するポートに接続されたノードは、同一のローカル・エリア・ネットワーク(LAN)に含まれる。
【0037】
例えば、2つのVLANセグメントのうち、一方のVLANセグメントには、高信頼性のノード(ECU)が接続可能なポートが所属し、他方のVLANセグメントには、低信頼性のノード(ECU)が接続可能なポートが所属する。高信頼性のECUでは、送受信されるデータに高い信頼性が求められる。低信頼性のECUでは、送受信されるデータに高い信頼性が求められない。高信頼性のECUは、車両動作に必須な機器であり、車両出荷時に車両に組み込まれる。低信頼性のECUは、補助的な機器であり、車両出荷後に車両に取り付けられる。
【0038】
このような構成により、他方のVLANセグメント内に、悪意のある装置が接続された場合でも、一方のVLANセグメント内で転送されるメッセージは、他方のVLANセグメントには届かない。このため、車載ネットワークのセキュリティを向上し得る。また、悪意のある装置が、なりすまし情報を送信した場合でも、一方のVLANセグメントには、なりすまし情報は届かないため、車載ネットワークのセキュリティを向上し得る。
【0039】
また、2つのVLANセグメントのうち、一方のVLANセグメントには、ある系統の情報を共有するノード(ECU)が接続可能なポートが所属し、他方のVLANセグメントには、別系統の情報を共有するノード(ECU)が接続可能なポートが所属する。例外的に、VLANセグメント間で情報を共有する場合に限って、VLANセグメント間において、レイヤ2フレームの転送が行われる。
【0040】
具体的には、2つのVLANセグメントのうち、一方のVLANセグメントに所属するポートに、メータECUが接続され、他方のVLANセグメントに所属するポートに、アクセサリメータECUが接続される。この場合、メータECU及びアクセサリメータECUは、車載情報「車速」のデータを共有するため、VLANセグメント間において、レイヤ2フレームの転送が行われる。
【0041】
レイヤ2スイッチング手段50は、車載ネットワークを複数のVLANセグメントに分割するために、ポート51a~51dの各々を、複数のVLANセグメントのうち、1つのVLANセグメントに所属させる。レイヤ2スイッチング手段50は、ハブ内ポート51eを複数のVLANセグメントに所属させる。
【0042】
本実施形態では、レイヤ2スイッチング手段50は、車載ネットワークを3つのVLANセグメント(VLANセグメント#1,#2,#3)に分割する。具体的には、レイヤ2スイッチング手段50は、ポート51a,51bをVALNセグメント#1に所属させる。レイヤ2スイッチング手段50は、ポート51cをVLANセグメント#2に所属させる。レイヤ2スイッチング手段50は、ポート51dをVLANセグメント#3に所属させる。レイヤ2スイッチング手段50は、ハブ内ポート51eをVLANセグメント#1~#3に所属させる。
【0043】
なお、VLANセグメント#1~#3には、VLAN ID=VL1~VL3がそれぞれ割り当てられている。
【0044】
レイヤ2スイッチング手段50は、ポート51a~51dを、VLANタグを使用しないポートとして設定する。レイヤ2スイッチング手段50は、ハブ内ポート51eを、VLANタグを使用するポートとして設定する。
【0045】
ノード10a~10dの各々は、接続可能なポートを自由に選択することができず、予め決められたポート番号を有するポートのみに接続される。例えば、ポート51a~51dがそれぞれポート番号P1~P4を有する場合、ノード10a~10dとポート51a~51dとの接続関係は、次のとおりである。ノード10aは、ポート番号P1を有するポート51aのみに接続可能である。ノード10bは、ポート番号P2を有するポート51bのみに接続可能である。ノード10cは、ポート番号P3を有するポート51cのみに接続可能である。ノード10dは、ポート番号P4を有するポート51dのみに接続可能である。
【0046】
このような構成により、例えば、ノード10dが、ノード10aのMACアドレスを用いて、ノード10aになりすましたとしても、VLANセグメント#1に所属するポート51a,51bにしか届かない車載情報を、ポート51dから取り出すことはできない。
【0047】
レイヤ2スイッチング手段50は、後述するように、レイヤ2フレームとして、次のフレームを受信する。なお、送信元VLANセグメントは、レイヤ2フレームを受信したポート(送信元ポート)が所属するVLANセグメントである。
・(送信元VLANセグメント内で)フラッディングを発生させないユニキャストフレーム
・(送信元VLANセグメント内で)フラッディングを発生させるユニキャストフレーム
・ブロードキャストフレーム
【0048】
フラッディングは、ユニキャストフレーム内の宛先MACアドレスが、送信元VLANセグメント内のポートに対応付けられていない場合に発生する。この場合、レイヤ2スイッチング手段50は、送信元VLANセグメント内でフラッディングを発生させて、受信したユニキャストフレームを、送信元VLANセグメント内の全ポート(送信元ポートを除く)に転送する。
【0049】
なお、フラッディングを発生させないユニキャストフレームは、送信元VLANセグメント内のポートに転送されるユニキャストフレームとも呼称される。また、フラッディングを発生させるユニキャストフレーム及びブロードキャストフレームは、送信元VLANセグメント内のポートに転送されるユニキャストフレームではないフレームとも呼称される。
【0050】
レイヤ2スイッチング手段50は、同一のVLANセグメント内では、VLANタグを使用せずに、レイヤ2フレームの転送を行う。
【0051】
一方、レイヤ2スイッチング手段50は、異なるVLANセグメント間では、VLANタグを使用して、レイヤ2フレームの転送を行う。具体的には、レイヤ2スイッチング手段50は、レイヤ2フレームに対して、送信元VLANセグメントの送信元VLAN IDを含むVLANタグを挿入して、ハブ内ポート51eを介して、当該レイヤ2フレームを補助スイッチング手段70に転送する。なお、送信元VLANセグメントは、第1セグメントとも呼称される。また、送信元VLAN IDは、第1セグメントIDとも呼称される。
【0052】
補助スイッチング手段70は、異なるVLANセグメント間におけるレイヤ2フレームの転送を行う。本実施形態では、補助スイッチング手段70は、レイヤ2スイッチング手段50を制御するマイクロコントローラから構成される。マイクロコントローラには、設定機能を有するソフトウェアと、補助スイッチ機能を有するソフトウェアとが内蔵される。設定機能は、状況に応じて、レイヤ2スイッチング手段50の動作に必要な設定を変更・調整する。補助スイッチ機能は、異なるVLANセグメント間におけるレイヤ2フレームの転送を行う。
【0053】
補助スイッチング手段70は、レイヤ2スイッチング手段50からレイヤ2フレームを受信すると、レイヤ2フレーム内の車載情報IDを読み取り、車載情報IDが割り当てられた項目(車載情報)内のデータを使用する特定のノード(宛先ノード)を識別する。
【0054】
補助スイッチング手段70は、特定のノード(宛先ノード)を識別すると、特定のノード(宛先ノード)に接続されたポート(宛先ポート)が所属するVLANセグメント(宛先VLANセグメント)のVLAN ID(宛先VLAN ID)を取得する。補助スイッチング手段70は、レイヤ2フレームに挿入された送信元VLAN IDを含むVLANタグを、宛先VLAN IDを含むVLANタグに置き換えて、レイヤ2フレームをレイヤ2スイッチング手段50に転送する。なお、宛先VLANセグメントは、第2セグメントとも呼称される。また、宛先VLAN IDは、第2セグメントIDとも呼称される。
【0055】
レイヤ2スイッチング手段50は、補助スイッチング手段70からレイヤ2フレームを受信すると、レイヤ2フレーム内の宛先VLAN IDに基づいて、レイヤ2フレームを宛先ポートに転送する。この際、レイヤ2スイッチング手段50は、レイヤ2フレームから、宛先VLAN IDを含むVLANタグを取り除き、レイヤ2フレームの転送を行う。
【0056】
[車載システムの機能ブロック構成]
次に、車載システム1の機能ブロック構成について説明する。具体的には、車載ハブ20のレイヤ2スイッチング手段50及び補助スイッチング手段70の機能ブロック構成について説明する。以下、本実施形態における特徴に関連する部分についてのみ説明する。従って、レイヤ2スイッチング手段50及び補助スイッチング手段70は、本実施形態における特徴に直接関係しない他の機能ブロックを備えることは勿論である。
【0057】
最初に、レイヤ2スイッチング手段50の機能ブロック構成について説明する。
図3は、本実施形態に係るレイヤ2スイッチング手段50の機能ブロック構成図である。
図3に示すように、レイヤ2スイッチング手段50は、ポート51a~51d、ハブ内ポート51e、制御部52、セグメント設定部53、レイヤ2記憶部55、レイヤ2受信部57、及びレイヤ2処理部59を備える。
【0058】
レイヤ2スイッチング手段50は、ポート51a~51dを介して、ノード10a~10dに接続される。ポート51a~51dには、ポート番号P1~P4が割り当てられる。ポート51a~51dの各々には、レイヤ2フレームが入力される。
【0059】
制御部52は、レイヤ2スイッチング手段50における処理全体を制御する。具体的には、制御部52は、セグメント設定部53、レイヤ2記憶部55、レイヤ2受信部57、及びレイヤ2処理部59の各々の動作を制御する。
【0060】
セグメント設定部53は、外部からの入力に基づいて、ポート51a~51dの各々を、VLANセグメント#1~#3のうち、1つのVLANセグメントに所属させる。具体的には、セグメント設定部53は、ポート51a,51bがVALNセグメント#1に所属するように、ポート番号P1,P2にVLAN ID=VL1を紐付ける。セグメント設定部53は、ポート51cがVALNセグメント#2に所属するように、ポート番号P3にVLAN ID=VL2を紐付ける。セグメント設定部53は、ポート51dがVALNセグメント#3に所属するように、ポート番号P4にVLAN ID=VL3を紐付ける。
【0061】
レイヤ2記憶部55は、ポート番号とMACアドレスとを紐付ける情報を記憶する。
図4は、本実施形態に係るレイヤ2スイッチング手段50によって保持される、ポート番号とMACアドレスとを紐付けるMACアドレステーブルの一例を示す図である。本実施形態では、
図4に示すように、レイヤ2記憶部55は、ポート51a~51dのポート番号P1~P4と、ノード10a~10dのMACアドレスMa~Mdとを紐付けるMACアドレステーブルを記憶する。
【0062】
レイヤ2記憶部55は、セグメント設定部53によって設定された、ポート番号とVLAN IDとを紐付ける情報を記憶する。
図5は、本実施形態に係るレイヤ2スイッチング手段50によって保持される、ポート番号とVLAN IDとを紐付けるVLAN IDテーブルの一例を示す図である。本実施形態では、
図5に示すように、レイヤ2記憶部55は、ポート51a~51dのポート番号P1~P4と、VLAN ID=VL1~VL3とを紐付けるVLAN IDテーブルを記憶する。
【0063】
レイヤ2受信部57は、送信元ノードに接続された送信元ポートから、レイヤ2フレームを受信する。レイヤ2処理部59は、レイヤ2受信部57が受信したレイヤ2フレームが、送信元ポートが所属する送信元VLANセグメント内のポートに転送されるユニキャストフレームであるか否かを判断する。
【0064】
具体的には、レイヤ2処理部59は、レイヤ2フレームの宛先MACアドレスから、送信元VLANセグメント内のポートを特定することができるユニキャストフレームであるか否かを判断する。レイヤ2処理部59は、後述するように、当該判断において、レイヤ2記憶部55に記憶したMACアドレステーブル及びVLAN IDテーブルを参照する。
【0065】
レイヤ2処理部59は、レイヤ2フレームが上述のユニキャストフレームであると判断する場合、送信元VLANセグメント内において、宛先MACアドレスに紐付けられたポート番号を有するポートに、当該レイヤ2フレームを転送する。この場合、レイヤ2処理部59は、VLANタグを使用せずに、レイヤ2フレームの転送を行う。
【0066】
一方、レイヤ2処理部59は、レイヤ2フレームが上述のユニキャストフレームではないと判断する場合、レイヤ2フレームに対して、送信元VLANセグメントの送信元VLAN IDを挿入する。具体的には、レイヤ2処理部59は、レイヤ2フレームのレイヤ2ヘッダに対して、送信元VLAN IDを含むVLANタグを挿入する。
【0067】
レイヤ2処理部59は、送信元VLAN IDを含むVLANタグが挿入されたレイヤ2フレームを、ハブ内ポート51eを介して、補助スイッチング手段70に転送する。なお、レイヤ2処理部59は、レイヤ2フレームが上述のユニキャストフレームでないと判断する場合、後述するように、送信元VLANセグメント内の残りの全ポートに、VLANタグを使用せずに、当該レイヤ2フレームを転送する動作も行う。
【0068】
レイヤ2処理部59は、ハブ内ポート51eを介して、レイヤ2フレームを補助スイッチング手段70から受信すると、レイヤ2フレーム内の宛先VLAN IDに基づいて、レイヤ2フレームを宛先ポートに転送する。この際、レイヤ2処理部59は、レイヤ2フレームから、宛先VLAN IDを含むVLANタグを取り除いて、レイヤ2フレームの転送を行う。
【0069】
次に、補助スイッチング手段70の機能ブロック構成について説明する。
図6は、本実施形態に係る補助スイッチング手段70の機能ブロック構成図である。
図6に示すように、補助スイッチング手段70は、制御部71、補助記憶部72、抽出部73、取得部75、及びフレーム処理部77を備える。
【0070】
制御部71は、補助スイッチング手段70における処理全体を制御する。具体的には、制御部71は、補助記憶部72、抽出部73、取得部75、及びフレーム処理部77の各々の動作を制御する。
【0071】
補助記憶部72は、車載メッセージに含まれるデータの項目(車載情報)を識別するための車載情報IDと、当該データを使用する1つ以上の特定のノード(宛先ノード)とを紐付ける情報を記憶する。上述したように、当該紐付けは、車両全体のシステム開発時に定められる。
【0072】
図7は、本実施形態に係る補助スイッチング手段70によって保持される、車載情報IDと宛先ノードとを紐付ける車載情報IDテーブルの一例を示す図である。本実施形態では、
図7に示すように、補助記憶部72は、車載情報ID=IV1,IV2と、宛先ノード10a~10cとを紐付ける車載情報IDテーブルを記憶する。
【0073】
本実施形態では、車載情報ID=IV1が割り当てられた項目内のデータは、ノード10aで取得され、かつ、ノード10cで使用される。このため、車載情報ID=IV1を含む車載メッセージは、ノード10aからノード10cに送信される。よって、車載情報ID=IV1は、ノード10cに紐付けられる。
【0074】
車載情報ID=IV1を含む車載メッセージの送信に用いられるレイヤ2フレームは、宛先MACアドレスとして、ノード10cのMACアドレスMcを有するユニキャストフレームである。
図1に示すように、ノード10cに接続されたポート51c(宛先ポート)は、ノード10aに接続されたポート51a(送信元ポート)が所属するVLANセグメント#1(送信元VLANセグメント)内には存在しない。このため、車載情報ID=IV1を含む車載メッセージの送信に用いられるレイヤ2フレームは、フラッディングを発生させるユニキャストフレーム(送信元VLANセグメント内のポートに転送されるユニキャストフレームではないフレーム)である。
【0075】
本実施形態では、車載情報ID=IV2が割り当てられた項目内のデータは、ノード10bで取得され、かつ、ノード10a,10cで使用される。このため、車載情報ID=IV2を含む車載メッセージは、ノード10bからノード10a,10cに送信される。よって、車載情報ID=IV2は、ノード10a,10cに紐付けられる。
【0076】
図1に示すように、ノード10aに接続されたポート51a(宛先ポート)、及びノード10bに接続されたポート51b(送信元ポート)は、VLANセグメント#1内のVLANタグを使用しない全ポートを構成する。同様に、ノード10cに接続されたポート51c(宛先ポート)は、VLANセグメント#2内のVLANタグを使用しない全ポートを構成する。このため、車載情報ID=IV2を含む車載メッセージの送信に用いられるレイヤ2フレームは、ブロードキャストアドレスを有するブロードキャストフレーム(送信元VLANセグメント内のポートに転送されるユニキャストフレームではないフレーム)である。
【0077】
補助記憶部72は、ポート番号とVLAN IDとを紐付ける情報(例えば、
図5のVLAN IDテーブル)に対して、車載メッセージに含まれるデータを使用する特定のノード(宛先ノード)を更に紐付ける情報を記憶する。なお、特定のノード(宛先ノード)は、当該特定ノード(宛先ノード)に接続可能なポートのポート番号に紐付けられる。
【0078】
図8は、本実施形態に係る補助スイッチング手段70によって保持される、宛先ノードと、ポート番号と、VLAN IDとを紐付ける宛先VLAN IDテーブルの一例を示す図である。本実施形態では、
図8に示すように、補助記憶部72は、宛先ノード10a~10dと、ポート番号P1~P4と、VLAN ID=VL1~VL3とを紐付ける宛先VLAN IDテーブルを記憶する。なお、
図8における、ポート番号P1~P4と、VLAN ID=VL1~VL3との紐付けは、
図5における、ポート番号P1~P4と、VLAN ID=VL1~VL3との紐付けと同じである。
【0079】
抽出部73は、レイヤ2スイッチング手段50のハブ内ポート51eから、送信元VLAN IDを含むVLANタグが挿入されたレイヤ2フレームを受信する。抽出部73は、受信したレイヤ2フレームのレイヤ2ヘッダから、送信元VLAN IDを抽出する。
【0080】
抽出部73は、受信したレイヤ2フレームのレイヤ2ペイロードから、車載情報IDを抽出する。抽出部73は、車載情報IDを抽出できない場合、無効を示す信号をフレーム処理部77に通知する。
【0081】
取得部75は、車載情報IDテーブルを参照して、抽出部73によって抽出された車載情報IDに紐付けられた1つ以上の宛先ノードを識別する。取得部75は、宛先ノードを識別できない場合、無効を示す信号をフレーム処理部77に通知する。
【0082】
取得部75は、宛先VLAN IDテーブルを参照して、識別した各宛先ノードに紐付けられた宛先VLAN IDを取得する。
【0083】
フレーム処理部77は、レイヤ2スイッチング手段50のハブ内ポート51eから、送信元VLAN IDを含むVLANタグが挿入されたレイヤ2フレームを受信する。フレーム処理部77は、受信したレイヤ2フレームを一時記憶する。
【0084】
フレーム処理部77は、取得部75によって取得された宛先VLAN IDが、抽出部73によって抽出された送信元VLAN IDと異なるか否かを判断する。
【0085】
フレーム処理部77は、宛先VLAN IDが、送信元VLAN IDと異なると判断する場合、一時記憶したレイヤ2フレームを読み出す。フレーム処理部77は、読み出したレイヤ2フレームのレイヤ2ヘッダに挿入された送信元VLAN IDを含むVLANタグを、宛先VLAN IDを含むVLANタグに置き換える。
【0086】
具体的には、フレーム処理部77は、レイヤ2フレームのレイヤ2ヘッダにおいて、送信元VLAN IDを含むVLANタグを、宛先VLAN IDを含むVLANタグに上書きする。フレーム処理部77は、VLANタグの上書きを行う代わりに、レイヤ2フレームにおいて、レイヤ2フレームのレイヤ2ヘッダを、新規のレイヤ2ヘッダに上書きしてもよい。新規のレイヤ2ヘッダは、送信元MACアドレスと、宛先MACアドレスと、宛先VLAN IDを含むVLANタグとを含む。
【0087】
フレーム処理部77は、VLAN IDの置き換えを行うと、信号線90を介して、レイヤ2フレームを、レイヤ2スイッチング手段50のハブ内ポート51eに転送する。
【0088】
一方、フレーム処理部77は、宛先VLAN IDが送信元VLAN IDと同じであると判断する場合、一時記憶したレイヤ2フレームを読み出さず、レイヤ2フレームの転送を行わない。この場合、レイヤ2スイッチング手段50において、レイヤ2フレームは、既に宛先ノードに送信されている。
【0089】
フレーム処理部77は、抽出部73又は取得部75から無効を示す信号が通知される場合、一時記憶したレイヤ2フレームを読み出さず、レイヤ2フレームの転送を行わない、又は一時記憶したレイヤ2フレームを破棄する。
【0090】
[車載システムの動作]
次に、車載システム1の動作について説明する。具体的には、車載ハブ20におけるフレーム転送手順について説明する。具体的には、フレーム転送手順における、レイヤ2スイッチング手段50の動作フロー1,2及び補助スイッチング手段70の動作フローと、フレーム転送手順の動作例におけるシーケンスとを説明する。
【0091】
[レイヤ2スイッチング手段50の動作フロー1]
最初に、レイヤ2スイッチング手段50における、送信元ノードに接続された送信元ポートを介したレイヤ2フレームの受信から、レイヤ2フレームの転送までの動作フローを説明する。
【0092】
図9は、本実施形態に係るフレーム転送手順における、レイヤ2スイッチング手段50の動作フロー1を示す図である。
図9に示すように、レイヤ2受信部57は、送信元ノードに接続された送信元ポートを介して、レイヤ2フレームを受信する(S1)。具体的には、レイヤ2受信部57は、ポート51a~51dの各々を介して、レイヤ2フレームを受信する。
【0093】
レイヤ2処理部59は、受信したレイヤ2フレームが、送信元ポートが所属する送信元VLANセグメント内のポートに転送されるユニキャストフレームであるか否かを判断する(S3)。
【0094】
具体的には、レイヤ2処理部59は、受信したレイヤ2フレームの宛先MACアドレスを抽出して、抽出した宛先MACアドレスがブロードキャストアドレスであるか否かを判断する。宛先MACアドレスがブロードキャストアドレスである場合、S3において、レイヤ2処理部59は、受信したレイヤ2フレームが、送信元VLANセグメント内のポートに転送されるユニキャストフレームではないと判断する。この場合、レイヤ2フレームは、ブロードキャストフレームである。
【0095】
一方、宛先MACアドレスがブロードキャストアドレスでない場合、レイヤ2処理部59は、送信元ポートのポート番号を識別する。レイヤ2処理部59は、VLAN IDテーブルを参照して、識別したポート番号に紐付けられたVLAN IDを、送信元VLAN IDとして取得する。
【0096】
レイヤ2処理部59は、受信したレイヤ2フレームから、宛先MACアドレスを抽出し、MACアドレステーブルを参照して、抽出した宛先MACアドレスに紐付けられたポート番号を取得する。レイヤ2処理部59は、VLAN IDテーブルを参照して、取得した送信元VLAN IDに紐付けられたポート番号の中に、取得したポート番号が存在するか否かを判断する。
【0097】
送信元VLAN IDに紐付けられたポート番号の中に、取得したポート番号が存在しない場合、S3において、レイヤ2処理部59は、受信したレイヤ2フレームが、送信元VLANセグメント内のポートに転送されるユニキャストフレームではないと判断する。この場合、レイヤ2フレームは、フラッディングを発生させるユニキャストフレームである。
【0098】
一方、送信元VLAN IDに紐付けられたポート番号の中に、取得したポート番号が存在する場合、S3において、レイヤ2処理部59は、受信したレイヤ2フレームが、送信元VLANセグメント内のポートに転送されるユニキャストフレームであると判断する。この場合、レイヤ2フレームは、フラッディングを発生させないユニキャストフレームである。
【0099】
レイヤ2処理部59は、受信したレイヤ2フレームが、送信元VLANセグメント内のポートに転送されるユニキャストフレームであると判断する(S3:YES)と、宛先MACアドレスに対応するポートに、受信したレイヤ2フレームを転送する(S5)。具体的には、レイヤ2処理部59は、宛先MACアドレスに紐付けられたポート番号を有するポートに、VLANタグを使用せずに、受信したレイヤ2フレームを転送する。レイヤ2処理部59は、S5の処理を実行すると、本動作フローを終了する。
【0100】
一方、レイヤ2処理部59は、受信したレイヤ2フレームが、送信元VLANセグメント内のポートに転送されるユニキャストフレームでないと判断する(S3:NO)と、次の動作を行う。レイヤ2処理部59は、受信したレイヤ2フレームのレイヤ2ヘッダに対して、取得した送信元VLAN IDを含むVLANタグを挿入する(S7)。レイヤ2処理部59は、送信元VLAN IDを含むVLANタグが挿入されたレイヤ2フレームを、ハブ内ポート51eを介して、補助スイッチング手段70に転送する(S7)。このように、レイヤ2フレームが、フラッディングを発生させるユニキャストフレーム、又はブロードキャストフレームである場合には、VLANタグが挿入されたレイヤ2フレームが、補助スイッチング手段70に転送される。
【0101】
レイヤ2処理部59は、続いて、VLANタグを使用せずに、受信したレイヤ2フレームを送信元VLANセグメント内の残りの全ポートに転送する(S9)。例えば、車載情報ID=IV1(
図7参照)を含むレイヤ2フレームの場合、レイヤ2処理部59は、VLANセグメント#1内でのフラッディングの発生により、受信したレイヤ2フレームを、VLANセグメント#1内の残りのポート51bに転送する。また、車載情報ID=IV2(
図7参照)を含むレイヤ2フレームの場合、レイヤ2処理部59は、VLANセグメント#1内でブロードキャストを行い、受信したレイヤ2フレームを、VLANセグメント#1内の残りのポート51aに転送する。このように、レイヤ2フレームが、フラッディングを発生させるユニキャストフレーム、又はブロードキャストフレームである場合には、VLANタグが挿入されていないレイヤ2フレームが、送信元VLANセグメント内の残りの全ポートに転送される。
【0102】
なお、S9の処理は、S7の処理の前、又はS7の処理と同時に行ってもよい。レイヤ2処理部59は、S7,S9の処理を実行すると、本動作フローを終了する。
【0103】
[レイヤ2スイッチング手段50の動作フロー2]
次に、レイヤ2スイッチング手段50における、補助スイッチング手段70に接続されたハブ内ポート51eを介したレイヤ2フレームの受信から、レイヤ2フレームの転送までの動作フローを説明する。
【0104】
図10は、本実施形態に係るフレーム転送手順における、レイヤ2スイッチング手段50の動作フロー2を示す図である。
図10に示すように、レイヤ2処理部59は、補助スイッチング手段70に接続されたハブ内ポート51eを介して、宛先VLAN IDを含むVLANタグが挿入されたレイヤ2フレームを受信する(S11)。
【0105】
レイヤ2処理部59は、受信したレイヤ2フレームのレイヤ2ヘッダから、宛先VLAN IDを抽出する(S13)。レイヤ2処理部59は、抽出した宛先VALN IDが割り当てられた宛先VLANセグメントを選択する(S15)。
【0106】
レイヤ2処理部59は、受信したレイヤ2フレームのレイヤ2ヘッダから、宛先VLAN IDを含むVLANタグを取り除き、VLANタグを取り除いたレイヤ2フレームを、選択した宛先VLANセグメントに転送する(S17)。
【0107】
具体的には、レイヤ2処理部59は、受信したレイヤ2フレームのレイヤ2ヘッダから、宛先MACアドレスを抽出する。レイヤ2処理部59は、抽出した宛先MACアドレスがブロードキャストアドレスであると判断すると、VLANタグを取り除いたレイヤ2フレームを、選択した宛先VLANセグメント内の全ポートに転送する。この場合、レイヤ2フレームは、ブロードキャストフレームである。
【0108】
レイヤ2処理部59は、抽出した宛先MACアドレスがブロードキャストアドレスではないと判断すると、MACアドレステーブルを参照して、抽出した宛先MACアドレスに紐付けられたポート番号を取得する。この場合、レイヤ2フレームは、(送信元VLANセグメント内で)フラッディングを発生させるユニキャストフレームである。
【0109】
レイヤ2処理部59は、VLAN IDテーブルを参照して、宛先VLAN IDに紐付けられたポート番号の中に、取得したポート番号が存在するか否かを判断する。宛先VLAN IDに紐付けられたポート番号の中に、取得したポート番号が存在する場合、レイヤ2処理部59は、VLANタグを取り除いたレイヤ2フレームを、宛先VLANセグメント内に存在する、取得したポート番号を有するポートに転送する。
【0110】
一方、宛先VLAN IDに紐付けられたポート番号の中に、取得したポート番号が存在しない場合、レイヤ2処理部59は、VLANタグを取り除いたレイヤ2フレームを、宛先VLANセグメント内のVLANタグを使用しない全ポートに転送する。例えば、レイヤ2スイッチング手段50が、宛先VLANセグメント内で、宛先ポートのポート番号と宛先MACアドレスとの紐付けを学習する前であれば、フラッディングが発生する。この場合、レイヤ2スイッチング手段50は、宛先VLANセグメント内の全ポートに、レイヤ2フレームを転送する。
【0111】
レイヤ2処理部59は、S17の処理を実行すると、本動作フローを終了する。
【0112】
[補助スイッチング手段70の動作フロー]
次に、補助スイッチング手段70における、レイヤ2フレームの受信から、レイヤ2フレームの転送までの動作フローを説明する。
【0113】
図11は、本実施形態に係るフレーム転送手順における、補助スイッチング手段70の動作フローを示す図である。
図11に示すように、抽出部73は、レイヤ2スイッチング手段50のハブ内ポート51eを介して、送信元VLAN IDを含むVLANタグが挿入されたレイヤ2フレームを受信する(S21)。
【0114】
抽出部73は、受信したレイヤ2フレームのレイヤ2ペイロードから、車載情報IDを抽出し、かつ、受信したレイヤ2フレームのレイヤ2ヘッダから、送信元VLAN IDを抽出する(S23)。取得部75は、車載情報IDテーブルを参照して、抽出部73によって抽出された車載情報IDに紐付けられた1つ以上の宛先ノードを識別する。取得部75は、宛先VLAN IDテーブルを参照して、識別した各宛先ノードに紐付けられた宛先VLAN IDを取得する(S25)。
【0115】
フレーム処理部77は、取得部75によって取得された各宛先VLAN IDが、抽出部73によって抽出された送信元VLAN IDと異なるか否かを判断する(S27)。
【0116】
フレーム処理部77は、宛先VLAN IDが送信元VLAN IDと異なると判断する場合(S27:YES)、レイヤ2フレームのレイヤ2ヘッダに挿入された送信元VLAN IDを含むVLANタグを、宛先VLAN IDを含むVLANタグに置き換える。フレーム処理部77は、VLANタグの置き換えを行うと、宛先VLAN IDを含むVLANタグが挿入されたレイヤ2フレームを、レイヤ2スイッチング手段50のハブ内ポート51eに転送する(S29)。フレーム処理部77は、S29の処理を実行すると、本動作フローを終了する。
【0117】
一方、フレーム処理部77は、宛先VLAN IDが送信元VLAN IDと同じであると判断する場合(S27:NO)、レイヤ2フレームの転送は行わず、本動作フローを終了する。この場合、レイヤ2スイッチング手段50において、レイヤ2フレームは、既に宛先ノードに送信されている。なお、送信元ポート及び宛先ポートが、同じVLANセグメントに所属していても、レイヤ2スイッチング手段50が、当該VLANセグメント内で、宛先ポートのポート番号と宛先MACアドレスとの紐付けを学習する前であれば、フラッディングが発生する。この場合、レイヤ2スイッチング手段50は、当該VLANセグメント内の全ポートに、レイヤ2フレームを転送するため、当該レイヤ2フレームは、補助スイッチング手段70にも転送される。
【0118】
[フレーム転送手順の動作例におけるシーケンス]
最後に、フレーム転送手順の動作例を説明する。具体的には、車載情報ID=IV1(
図7参照)を含むレイヤ2フレームを例に挙げて、車載ハブ20におけるフレーム転送手順を説明する。
【0119】
図12は、本実施形態に係るフレーム転送手順の動作例におけるシーケンスを示す図である。
図12に示すように、レイヤ2スイッチング手段50は、ポート51aを介して、レイヤ2フレームを受信する(S31)。レイヤ2スイッチング手段50は、レイヤ2フレームを受信したポート51aのポート番号P1を識別し、VLAN IDテーブルを参照して、ポート番号P1に紐付けられたVLAN ID=VL1を、送信元VLAN IDとして取得する。
【0120】
レイヤ2スイッチング手段50は、受信したレイヤ2フレームから、宛先MACアドレスMcを抽出し、MACアドレステーブルを参照して、宛先MACアドレスMcに紐付けられたポート番号P3を取得する。レイヤ2スイッチング手段50は、VLAN IDテーブルを参照して、ポート番号P3が、送信元VLAN ID(VLAN ID=VL1)に紐付けられていないため、受信したレイヤ2フレームに対して、VLANタグの挿入を行う(S33)。具体的には、レイヤ2スイッチング手段50は、送信元VLAN ID(VLAN ID=VL1)を含むVLANタグを、受信したレイヤ2フレームのレイヤ2ヘッダに挿入する。
【0121】
レイヤ2スイッチング手段50は、フラッディングを発生させて、送信元VLAN ID(VLAN ID=VL1)を含むVLANタグが挿入されたレイヤ2フレームを、ハブ内ポート51eを介して、補助スイッチング手段70に転送する(S35)。レイヤ2スイッチング手段50は、続いて、受信したレイヤ2フレームを、VLANタグを使用せずに、VLANセグメント#1内の残りのポート51bに転送する(S37)。
【0122】
なお、ポート51bに接続されたノード10bは、フラッディングにより、車載情報ID=IV1を含むレイヤ2フレームを受信しても、宛先MACアドレスがノード10bのMACアドレスMbではないため、当該レイヤ2フレームを破棄する。S31~S37までの処理内容は、上述したレイヤ2スイッチング手段50の動作フロー1に対応する。
【0123】
補助スイッチング手段70は、レイヤ2スイッチング手段50のハブ内ポート51eを介して、送信元VLAN ID(VLAN ID=VL1)を含むVLANタグが挿入されたレイヤ2フレームを受信する。補助スイッチング手段70は、受信したレイヤ2フレームのレイヤ2ペイロードから、車載情報ID=IV1を抽出し、かつ、受信したレイヤ2フレームのレイヤ2ヘッダから、送信元VLAN ID(VLAN ID=VL1)を抽出する(S39)。
【0124】
補助スイッチング手段70は、車載情報IDテーブルを参照して、抽出した車載情報ID=IV1に紐付けられた宛先ノード10cを識別する。補助スイッチング手段70は、宛先VLAN IDテーブルを参照して、宛先ノード10cに紐付けられた宛先VLAN ID(VLAN ID=VL2)を取得する(S41)。
【0125】
補助スイッチング手段70は、宛先VLAN ID(VLAN ID=VL1)が送信元VLAN ID(VLAN ID=VL2)と異なるため、VLANタグの置き換えを行う(S43)。具体的には、補助スイッチング手段70は、レイヤ2フレームのレイヤ2ヘッダに挿入された送信元VLAN ID(VLAN ID=VL1)を含むVLANタグを、宛先VLAN ID(VLAN ID=VL2)を含むVLANタグに置き換える。
【0126】
補助スイッチング手段70は、VLANタグの置き換えを行うと、宛先VLAN ID(VLAN ID=VL2)を含むVLANタグが挿入されたレイヤ2フレームを、レイヤ2スイッチング手段50のハブ内ポート51eに転送する(S45)。S39~S45までの処理内容は、上述した補助スイッチング手段70の動作フローに対応する。
【0127】
レイヤ2スイッチング手段50は、ハブ内ポート51eを介して、宛先VLAN ID(VLAN ID=VL2)を含むVLANタグが挿入されたレイヤ2フレームを受信する。レイヤ2スイッチング手段50は、受信したレイヤ2フレームのレイヤ2ヘッダから、宛先VLAN ID(VLAN ID=VL2)を抽出する(S47)。レイヤ2スイッチング手段50は、宛先VALN ID(VLAN ID=VL2)が割り当てられた宛先VLANセグメント(VLANセグメント#2)を選択する(S49)。
【0128】
レイヤ2スイッチング手段50は、受信したレイヤ2フレームから、宛先MACアドレスMcを抽出し、MACアドレステーブルを参照して、宛先MACアドレスMcに紐付けられたポート番号P3を取得する。レイヤ2スイッチング手段50は、VLAN IDテーブルを参照して、ポート番号P3が、宛先VLAN ID(VLAN ID=VL2)に紐付けられているため、受信したレイヤ2フレームを、ポート番号P3を有するポート51cに転送する(S51)。この際、レイヤ2スイッチング手段50は、宛先VLAN ID(VLAN ID=VL2)を含むVLANタグを取り除いたレイヤ2フレームを、ポート51cに転送する。S47~S51までの処理内容は、上述したレイヤ2スイッチング手段50の動作フロー2に対応する。
【0129】
このように、車載情報ID=IV1を有する車載メッセージは、VLANセグメント#1,#2内のポートに転送されるが、VLANセグメント#3内のポートには転送されない。従って、VLANセグメント#1,#2に所属するポートには、高信頼性のノードのみを接続させ、かつ、VLANセグメント#3に所属するポートには、低信頼性のノードが接続させることで、車載ネットワークのセキュリティを向上させることができる。
【0130】
[作用・効果]
本実施形態によれば、レイヤ2フレームが、送信元ポートが所属する送信元VLANセグメント内のポートに転送されるユニキャストフレームでない場合、レイヤ2スイッチング手段50は、当該レイヤ2フレームに対して、送信元VLAN IDを挿入する。レイヤ2スイッチング手段50は、送信元VLAN IDが挿入されたレイヤ2フレームを補助スイッチング手段70に送信する。
【0131】
補助スイッチング手段70は、車載情報IDテーブルを参照して、レイヤ2フレームに含まれる車載情報IDに紐付けられた宛先ノードを識別する。補助スイッチング手段70は、宛先VLAN IDテーブルを参照して、識別した宛先ノードに紐付けられた宛先VLAN IDを取得する。
【0132】
補助スイッチング手段70は、レイヤ2フレームに挿入された送信元VLAN IDを、取得した宛先VLAN IDに置き換える。補助スイッチング手段70は、VLAN IDの置き換えを行うと、レイヤ2フレームをレイヤ2スイッチング手段50に送信する。レイヤ2スイッチング手段50は、レイヤ2フレームに含まれる宛先VLAN IDに基づいて、宛先VLAN IDを取り除いたレイヤ2フレームを宛先ポートに転送する。
【0133】
このような構成により、車載ハブ20は、IPアドレスを使用することなく、VLANセグメント間においてフレームの転送を行うことができる。このため、車載ネットワークの構成を簡素化することができる。また、IPアドレスを使用しないため、高価で複雑なレイヤ3スイッチング手段を設ける必要がない。従って、本実施形態によれば、製造コストの増大を抑制することができる。
【0134】
本実施形態では、レイヤ2フレームのレイヤ2ペイロード内に、車載情報IDを含む車載メッセージを設定することで、レイヤ2スイッチング手段50及び補助スイッチング手段70を用いて、VLANセグメント間においてフレームの転送を行うことができる。このため、レイヤ3スイッチング手段を使用する場合と比較して、製造コストの増大を効果的に抑制することができる。
【0135】
また、車載情報IDに紐付けられていない宛先ノードに対しては、セグメント間におけるフレームの転送は行われない。従って、本実施形態によれば、車載ネットワークのセキュリティを向上することができる。
【0136】
結果として、本実施形態によれば、製造コストの増大を抑制しつつ、車載ネットワークのセキュリティを向上し得る車載ハブ20及び車載システム1を提供することができる。
【0137】
本実施形態によれば、補助スイッチング手段70は、宛先VLAN IDが送信元VLAN IDと異なると判断する場合に、レイヤ2フレームに挿入された送信元VLAN IDを、宛先VLAN IDに置き換える。補助スイッチング手段70は、VLAN IDの置き換えを行うと、レイヤ2フレームをレイヤ2スイッチング手段50に送信する。
【0138】
宛先VLAN IDが送信元VLAN IDと同じである場合には、レイヤ2スイッチング手段50が、既に、当該VLANセグメント内において、レイヤ2フレームの転送を行っている。従って、このような構成により、宛先VLAN IDが送信元VLAN IDと同じである場合には、補助スイッチング手段70は、レイヤ2フレームをレイヤ2スイッチング手段50に送信しないため、車載ハブ20の負荷を低減することができる。
【0139】
本実施形態によれば、補助スイッチング手段70は、レイヤ2フレームから車載情報IDを抽出することができない場合、当該レイヤ2フレームを破棄する。
【0140】
このような構成により、車載ハブ20は、VLANセグメント間において不正なレイヤ2フレームの転送を行わないため、車載ネットワークのセキュリティを向上することができる。
【0141】
本実施形態によれば、補助スイッチング手段70は、車載情報IDに紐付けられた宛先ノードを識別することができない場合、レイヤ2フレームを破棄する。
【0142】
このような構成により、車載ハブ20は、VLANセグメント間において不正なレイヤ2フレームの転送を行わないため、車載ネットワークのセキュリティを向上することができる。
【0143】
[その他の実施形態]
上述した実施形態では、車載ネットワークを3つのVLANセグメントに分割したが、2つのVLANセグメント又は4つ以上のVLANセグメントに分割してもよい。
【0144】
上述した実施形態では、車載情報ID=IV1(
図7参照)は、送信元VLANセグメントと異なる1つのVLANセグメントに所属するポートに接続された宛先ノードに紐付けられているが、これに限定されない。例えば、車載情報ID=IV1は、VLANセグメント#2に所属するポート51cに接続された宛先ノード10cに加えて、VLANセグメント#3に所属するポート51dに接続された宛先ノード10dに紐付けられてもよい。
【0145】
この場合、車載情報ID=IV1を有する車載メッセージは、VLANセグメント#1~#3内のポートに転送される。従って、VLANセグメント#1~#3に所属するポートには、高信頼性のノードのみを接続させることで、車載ネットワークのセキュリティを向上させることができる。
【0146】
補助スイッチング手段70は、車載情報ID=IV1を含むレイヤ2フレームを受信すると、
図11のS25にて、宛先VLAN ID=VL2,VL3を取得する。
【0147】
このため、補助スイッチング手段70は、
図11のS29にて、宛先MACアドレスとして宛先ノード10cのMACアドレスMcを含んだレイヤ2フレームにおいて、送信元VLAN IDを、宛先VLAN ID=VL3に置き換える場合がある。
【0148】
同様に、補助スイッチング手段70は、
図11のS29にて、宛先MACアドレスとして宛先ノード10dのMACアドレスMdを含んだレイヤ2フレームにおいて、送信元VLAN IDを、宛先VLAN ID=VL2に置き換える場合がある。
【0149】
これらの場合、レイヤ2スイッチング手段50は、宛先VLAN IDに紐付けられたポート番号の中に、宛先MACアドレスに紐付けられたポート番号が存在しないため、フラッディングを発生させて、宛先VLANセグメント内の全ポートに転送する。
【0150】
具体的には、レイヤ2スイッチング手段50は、宛先MACアドレスとして宛先ノード10cのMACアドレスMcを含んだレイヤ2フレームを、VLANセグメント#3内のポート51dに送信する。ポート51dに接続されたノード10dは、受信したレイヤ2フレームの宛先MACアドレスが、ノード10dのMACアドレスMdではないため、当該レイヤ2フレームを破棄する。
【0151】
同様に、レイヤ2スイッチング手段50は、宛先MACアドレスとして宛先ノード10dのMACアドレスMdを含んだレイヤ2フレームを、VLANセグメント#2内のポート51cに送信する。ポート51cに接続されたノード10cは、受信したレイヤ2フレームの宛先MACアドレスが、ノード10cのMACアドレスMcではないため、当該レイヤ2フレームを破棄する。
【0152】
上述した実施形態では、車載システム1では、全てのノードは、1つの車載ハブにより収容されたが、複数の車載ハブにより収容されてもよい。この場合でも、車載ネットワークを複数のVLANセグメントに分割することができる。
【0153】
図13は、本実施形態の変形例に係る車載システム100の全体概略構成図である。
図10に示すように、車載システム100は、ノード110a~110k及び車載ハブ120a~120cを備える。
【0154】
車載ハブ120aは、ノード110a~110dを収容し、かつ、レイヤ2スイッチング手段150a及び補助スイッチング手段170aを備える。
【0155】
車載ハブ120bは、ノード110e~110hを収容し、かつ、レイヤ2スイッチング手段150b及び補助スイッチング手段170bを備える。
【0156】
車載ハブ120cは、ノード110i~110kを収容し、かつ、レイヤ2スイッチング手段150c及び補助スイッチング手段170cを備える。
【0157】
車載システム100では、ポート151a~151d、ポート151f~151i、ポート151k,151l、ハブ内ポート151e,151jは、VLANセグメント#10に所属している。ポート151mは、VLANセグメント#20に所属している。ハブ内ポート151nは、VLANセグメント#10,#20に所属している。VLANセグメント#10,#20には、VLAN ID=VL10,VLAN ID=VL20が割り当てられている。
【0158】
レイヤ2スイッチング手段150aは、次の点を除いて、レイヤ2スイッチング手段50と同じ構成をとる。(1)レイヤ2スイッチング手段150aは、VLANセグメント#10に所属するVLANタグを使用しないポート(図示略)及びケーブル200aを介して、レイヤ2スイッチング手段150bに接続されている。
【0159】
レイヤ2スイッチング手段150bは、次の点を除いて、レイヤ2スイッチング手段50と同じ構成をとる。(1)レイヤ2スイッチング手段150bは、VLANセグメント#10に所属するVLANタグを使用しないポート(図示略)及びケーブル200aを介して、レイヤ2スイッチング手段150aに接続されている。(2)レイヤ2スイッチング手段150bは、VLANセグメント#10に所属するVLANタグを使用しないポート(図示略)及びケーブル200bを介して、レイヤ2スイッチング手段150cに接続されている。
【0160】
レイヤ2スイッチング手段150cは、次の点を除いて、レイヤ2スイッチング手段50と同じ構成をとる。(1)レイヤ2スイッチング手段150cは、ノードが接続されるポート数が3つである。(2)レイヤ2スイッチング手段150cは、VLANセグメント#10に所属するVLANタグを使用しないポート(図示略)及びケーブル200bを介して、レイヤ2スイッチング手段150bに接続されている。
【0161】
補助スイッチング手段170a~170cは、補助スイッチング手段70と同じ構成をとる。
【0162】
このように構成された車載システム100において、例えば、ノード110aが、異なるVLANセグメントに所属するノード110kに対して、車載メッセージを含むレイヤ2フレームを送信する場合を考える。この場合、補助スイッチング手段170a~170cは、次の情報を有した車載情報IDテーブル及び宛先VLAN IDテーブルを保持する。車載情報IDテーブルは、当該車載メッセージに含まれる車載情報IDと、宛先ノード110kとを紐付ける情報を有する。宛先VLAN IDテーブルは、宛先ノード110kと、宛先ノード110kに接続された宛先ポート151mのポート番号と、宛先ポート151mが所属するVLANセグメント#20のVLAN ID=VL20とを紐付ける情報を有する。
【0163】
車載ハブ120aは、車載ハブ20と同様の処理を行い、車載ハブ120bを介して、レイヤ2フレームを車載ハブ120cに転送する。車載ハブ120cにおいて、レイヤ2スイッチング手段150cは、VLAN IDテーブルを参照して、送信元VLANセグメント#10内のポートの中に、宛先ノード110kに接続された宛先ポート151mが存在しないことを識別する。レイヤ2スイッチング手段150cは、フラッディングを発生させて、送信元VLAN ID=VL10を含むVLANタグを挿入したレイヤ2フレームを、補助スイッチング手段170cに転送する。
【0164】
補助スイッチング手段170cは、車載情報IDテーブル及び宛先VLAN IDテーブルを参照して、レイヤ2フレームに挿入された送信元VLAN ID=VL10を含むVLANタグを、宛先VLAN ID=VL20を含むVLANタグに置き換える。補助スイッチング手段170cは、宛先VLAN ID=VL20を含むVLANタグを挿入したレイヤ2フレームを、レイヤ2スイッチング手段150cに転送する。
【0165】
レイヤ2スイッチング手段150cは、MACアドレステーブル及びVLAN IDテーブルを参照して、補助スイッチング手段170cから受信したレイヤ2フレームを、宛先VLANセグメント#20内の宛先ポート151mに転送する。この際、レイヤ2スイッチング手段150cは、レイヤ2フレームから宛先VLAN ID=VL20を含むVLANタグを取り除いて、当該レイヤ2フレームをポート151mに転送する。
【0166】
レイヤ3スイッチング手段を使用する従来の車載システムでは、車載ハブの数が増加するにつれて、レイヤ3スイッチング手段の数も増加する。このため、転送装置の数が増加して、車載ネットワークの構成が複雑になる。一方、本変形例では、補助スイッチング手段は車載ハブ内に設けられているため、転送装置の数を減らすことができ、車載ネットワークの構成を簡潔にすることができる。
【0167】
上述した実施形態では、レイヤ2スイッチング手段50は、VLANにより、車載ネットワークを複数のセグメントに仮想的(論理的)に分割したが、車載ネットワークの分割方法は、これに限定されない。例えば、レイヤ2スイッチング手段50は、VLANを使用せずに、車載ネットワークを複数のセグメントに固定的(物理的)に分割してもよい。
【0168】
上述した実施形態では、レイヤ2フレームは、レイヤ3ヘッダを含まなかったが、これに限定されない。例えば、レイヤ2フレームは、レイヤ2ペイロードにレイヤ3ヘッダを含んでいてもよい。この場合、レイヤ3ヘッダには、送信元IPアドレス及び宛先IPアドレスは含まれておらず、特定のビット列が含まれる。
【0169】
上述した実施形態の説明に用いたブロック構成図(
図3及び
図6)は、機能単位のブロックを示している。これらの機能ブロックは、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックを実現する方法は、特に限定されない。例えば、各機能ブロックは、物理的または論理的に結合した1つの装置を用いて実現されてもよいし、物理的または論理的に分離した2つ以上の装置を直接的または間接的に接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、1つの装置または複数の装置に、ソフトウェアを組み合わせて実現されてもよい。
【0170】
レイヤ2スイッチング手段50及び補助スイッチング手段70の各々が、複数のハードウェア要素で構成される場合、各機能ブロックは、何れかのハードウェア要素、又は当該ハードウェア要素の組み合わせによって実現される。ハードウェア要素として、プロセッサ、メモリ、ストレージ、入力装置、出力装置、バスなどが挙げられる。
【0171】
また、この場合、レイヤ2スイッチング手段50及び補助スイッチング手段70の各機能は、プロセッサ、メモリなどのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって実現される。具体的には、各機能は、ハードウェア上に所定のソフトウェアを読み込ませることにより、プロセッサが演算を行い、メモリ及びストレージにおけるデータの読み出し及び書き込みを制御することによって実現される。
【0172】
以上、本実施形態を説明したが、本実施形態はこれらに限定されるものではなく、本実施形態の要旨の範囲内で種々の変形が可能である。
【符号の説明】
【0173】
1,100 車載システム
10a~10d,110a~110k ノード
20,120a~120c 車載ハブ
50,150a~150c レイヤ2スイッチング手段
51a~51d,151a~151d,151f~151i,151k~151m ポート
51e,151e,151j,151n ハブ内ポート
57 レイヤ2受信部
59 レイヤ2処理部
70,170a~170c 補助スイッチング手段
72 補助記憶部
73 抽出部
75 取得部
77 フレーム処理部