(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024016723
(43)【公開日】2024-02-07
(54)【発明の名称】通信システム及び通信方法
(51)【国際特許分類】
G06F 9/46 20060101AFI20240131BHJP
G06F 9/54 20060101ALI20240131BHJP
【FI】
G06F9/46 420Z
G06F9/54 Z
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022119039
(22)【出願日】2022-07-26
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り NTTデータテクノロジーカンファレンス2021オンライン開催 開催日 令和3年10月29日 https://oss.nttdata.com/techconf2021/ https://www.youtube.com/watch?v=ugQACAJ9_9I 公開日 令和3年11月29日 https://group.ntt/jp/topics/2021/11/29/techdoc_rel_ntt_toyota.html https://group.ntt/jp/topics/2021/11/29/pdf/technical_document_ictpf_jp.pdf TOYOTA Developers Nightオンライン開催 開催日 令和3年11月29日 https://techplay.jp/event/837182 https://www.youtube.com/watch?v=2KeygZZpgDk&t=3847s TOYOTA Developers Nightオンライン開催 開催日 令和4年2月3日 https://techplay.jp/event/844357 https://www.youtube.com/watch?v=zIbGzkDT3Fk
(71)【出願人】
【識別番号】399035766
【氏名又は名称】エヌ・ティ・ティ・コミュニケーションズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】船引 魁人
(72)【発明者】
【氏名】亀井 貴行
(72)【発明者】
【氏名】金丸 侑賢
(72)【発明者】
【氏名】野地 亮介
(57)【要約】
【課題】コネクティッドカーシステムにおけるNWエッジ内の拠点間で効率良くデータ連携を行うこと。
【解決手段】実施形態のNWエッジ10は、拠点20Aと拠点20Bとを有し、車両30Vとセンタ40A及びセンタ40Bとの間でデータの転送を行う。車両30Vは、拠点20A及び拠点20Bのいずれかと接続される。センタ40Aは、拠点20Aと接続される。センタ40Bは、拠点20Bと接続される。拠点20Aは、車両30V又はセンタ40Aから受信したデータを拠点20Bに転送するか否かを、車両30V又はセンタ40Aの状態に応じて決定する。
【選択図】
図6
【特許請求の範囲】
【請求項1】
第1の拠点と第2の拠点とを含む複数の拠点を有し、車両と第1のセンタ及び第2のセンタを含む複数のセンタとの間でデータの転送を行う通信システムであって、
前記車両は、前記第1の拠点及び前記第2の拠点のいずれかと接続され、
前記第1のセンタは、少なくとも前記第1の拠点と接続され、
前記第2のセンタは、少なくとも前記第2の拠点と接続され、
前記第1の拠点は、前記車両又は前記第1のセンタから受信したデータを前記第2の拠点に転送するか否かを、前記車両又は前記第1のセンタの状態に応じて決定することを特徴とする通信システム。
【請求項2】
前記第1の拠点は、前記車両からデータを受信した場合、前記第1のセンタを監視して得られた情報を基に、前記第1のセンタで前記データを処理可能であるか否かを判定し、前記第1のセンタで前記データを処理可能でないと判定した場合、前記データを前記第2の拠点に転送し、
前記第2の拠点は、前記データを、前記第2のセンタに転送することを特徴とする請求項1に記載の通信システム。
【請求項3】
前記第1の拠点は、前記車両からデータを受信した場合、前記第1のセンタを監視して得られた情報に前記第1のセンタに障害が発生していることが示されている場合、前記第1のセンタで前記データを処理可能でないと判定することを特徴とする請求項2に記載の通信システム。
【請求項4】
前記第1の拠点及び前記第2の拠点は、前記車両が接続されている拠点の情報を保持し、
前記第1の拠点は、前記情報に前記車両が前記第2の拠点と接続されていることが示されている場合、前記第1のセンタから前記車両への通知を、前記第2の拠点に転送することを特徴とする請求項1に記載の通信システム。
【請求項5】
第1の拠点と第2の拠点とを含む複数の拠点を有し、車両と第1のセンタ及び第2のセンタを含む複数のセンタとの間でデータの転送を行う通信システムであって、
前記車両は、前記第1の拠点及び前記第2の拠点のいずれかと接続され、
前記第1のセンタは、少なくとも前記第1の拠点と接続され、
前記第2のセンタは、少なくとも前記第2の拠点と接続された通信システムによって実行される通信方法であって、
前記第1の拠点は、前記車両又は前記第1のセンタから受信したデータを前記第2の拠点に転送するか否かを、前記車両又は前記第1のセンタの状態に応じて決定することを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信システム及び通信方法に関する。
【背景技術】
【0002】
従来、インターネット等のネットワークを介して、車両へアプリケーションを提供するコネクティッドカーシステムが知られている。
【0003】
例えば、ネットワークを介して取得した車両のログデータを基に、パワーユニットの異常、サイバー攻撃による車載ネットワークの乗っ取り等を検知するシステムが知られている(例えば、特許文献1を参照)。
【0004】
また、移動する車両と地理的に分散したセンタ(アプリケーションの提供主体)との間の通信は、NW(Network)エッジを介して行われる場合がある。NWエッジは、広域分散した拠点群によって構成される通信のための基盤である。
【0005】
センタと車両との間の時間的及び地理的な制約を吸収するため、NWエッジ内の拠点間ではデータ連携が行われる。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従来の技術には、コネクティッドカーシステムにおけるNWエッジ内の拠点間で効率良くデータ連携ができない場合があるという問題がある。
【0008】
例えば、NWエッジ内の各拠点にMQ(Message Queueing)クラスタを配置し、クラスタ間連携により拠点間のデータ連携を実現することが考えられる。また、kafka及びApache pulserといった既存の分散メッセージングミドルウェアでは、クラスタ間連携を行うために、レプリケーションが行われる(参考文献:Replicator の概要 https://docs.confluent.io/ja-jp/platform/6.0.1/multi-dc-deployments/replicator/index.html)。
【0009】
一方で、レプリケーションを用いてクラスタ間連携手法をコネクティッドカーシステムに適用すると、拠点間NW帯域の逼迫といった問題が発生し、効率良くデータ連携ができない場合がある。
【課題を解決するための手段】
【0010】
上述した課題を解決し、目的を達成するために、通信システムは、第1の拠点と第2の拠点とを含む複数の拠点を有し、車両と第1のセンタ及び第2のセンタとを含む複数のセンタとの間でデータの転送を行う通信システムであって、前記車両は、前記第1の拠点及び前記第2の拠点のいずれかと接続され、前記第1のセンタは、少なくとも前記第1の拠点と接続され、前記第2のセンタは、少なくとも前記第2の拠点と接続され、前記第1の拠点は、前記車両又は前記第1のセンタから受信したデータを第2の拠点に転送するか否かを、前記車両又は前記第1のセンタの状態に応じて決定することを特徴とする。
【発明の効果】
【0011】
本発明によれば、コネクティッドカーシステムにおけるNWエッジ内の拠点間で効率良くデータ連携ができる。
【図面の簡単な説明】
【0012】
【
図2】
図2は、コネクティッドカーシステムの構成例を示す図である。
【
図3】
図3は、従来のアップロードにおける課題を説明する図である。
【
図4】
図4は、従来のアップロードにおける課題を説明する図である。
【
図5】
図5は、従来のアップロードにおける課題を説明する図である。
【
図6】
図6は、アップロードにおけるデータ連携方法を説明する図である。
【
図7】
図7は、従来のダウンロードにおける課題を説明する図である。
【
図8】
図8は、従来のダウンロードにおける課題を説明する図である。
【
図9】
図9は、ダウンロードにおけるデータ連携方法を説明する図である。
【
図10】
図10は、アップロード時のデータ連携の流れを示すフローチャートである。
【
図11】
図11は、ダウンロード時のデータ連携の流れを示すフローチャートである。
【
図16】
図16は、通信プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【0013】
以下に、本願に係る通信システム及び通信方法の実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
【0014】
図1を用いて、実施形態の拠点の概要を説明する。
図1は、拠点の概要を説明する図である。
【0015】
拠点は、車両とアプリケーションの提供主体(以降、センタ)との間でデータの転送を行う。拠点の機能は、1つ以上の情報処理装置(例えば、サーバ)又は通信機器等により実現される。
【0016】
図1には、拠点21、拠点22及び拠点23の3つが示されている。NWエッジを構成する拠点の数は、
図1に示すものに限られず、1つ以上の任意の数であってよい。
【0017】
拠点21を例に挙げて、拠点の機能を説明する。なお、拠点22及び拠点23についても、拠点21と同等の機能を有しているものとする。
【0018】
NWエッジは通信システムの一例である。また、NWエッジを構成する各拠点は、転送装置の一例である。
【0019】
図1に示すように、拠点21は、データ送受信機能を有する。拠点21は、データ送受信機能により、車両又はセンタにデータとの間でデータの送受信を行う。
【0020】
また、データ連携決定機能は、データ送受信機能によるデータの送受信を制御する。例えば、データ連携決定機能は、メトリクス情報に基づく動的に変化するロードバランサの振り分けポリシー等の情報を、データ送信機能に受動的に取得させる。
【0021】
また、例えば、データ連携決定機能は、拠点間を接続するデバイスの情報等を、データ送信機能に能動的に取得させる。また、データ連携決定機能は、デバイスの情報により、データを連携データとして保持する否かを決定する。
【0022】
また、データ連携決定機能は、C-Planeにより他の拠点との情報交換を行うことができる。
【0023】
また、データ保持機能は、連携データ又は非連携データを保持する。拠点21は、拠点21以外の特定の拠点に送信するための特定のデータを連携データとして保持する。
【0024】
拠点間データ連携機能は、保持されている連携データを他の拠点に送信する。拠点間データ連携機能は、ACK等により、拠点間でのデータの送受信のQoS/2(確実にメッセージを1回だけ送信)を担保することができる。
【0025】
実施形態では、拠点21は、特定のデータを特定の拠点のみに送信することで、無駄なデータ連携及びデータの保持を行わないようにする。これにより、NW帯域及びストレージ等のリソースの逼迫という課題が解決される。
【0026】
また、実施形態では、拠点21は、レプリケーションを行わない。これにより、複数拠点での同一処理、同じ宛先への同一データの送信といった課題が解決される。なお、NWエッジにおける各課題については後述する。
【0027】
図2は、コネクティッドカーシステムの構成例を示す図である。
図2に示すように、NWエッジ10は、車両とセンタとの間でデータの送受信を行う。また、エッジは、センタと同様に、NWエッジを介して車両との間でデータ通信を行う。また、NWエッジ10には、
図1で説明した機能を持つ複数の拠点が含まれる。
【0028】
(アップロード時の課題及び解決方法)
ここで、データのアップロードの際に発生する従来の課題を説明する。アップロードは、車両からセンタへのデータの送信を意味する。
図3、
図4及び
図5は、従来のアップロードにおける課題を説明する図である。
【0029】
アップロードにおいては、車両で撮影された動画等のサイズの大きいデータが主に送信される。また、センタ側での処理負荷が大きくなる。
【0030】
図3に示すように、アップロードにおいては、拠点間のNW帯域が逼迫されるという課題がある。これは、サイズの大きいデータが拠点間で送受信されるためである。
【0031】
また、
図4に示すように、アップロードにおいては、処理の重複が発生する場合がある。これは、レプリケーションにより、同じ処理要求が複数の拠点(例えば拠点21と拠点22)からセンタ(処理App)に送信されるためである。これにより、センタの処理負荷がさらに大きくなる。
【0032】
また、
図5に示すように、アップロードにおいては、不要データの滞留が発生する場合がある。これは、レプリケーションにより送信が不要になったデータが拠点に保持されたままになるためである。
【0033】
図6を用いて、上記のアップロードにおける課題の解決方法を説明する。
図6は、アップロードにおけるデータ連携方法を説明する図である。
【0034】
図6に示すように、NWエッジ10には、拠点20A及び拠点20Bが含まれているものとする。拠点20Aは、センタ40Aと接続されている。また、拠点20Bは、センタ40Bと接続されている。また、車両30Vは、拠点20Aと接続されている。
【0035】
このように、NWエッジ10は、拠点20Aと拠点20Bとを有し、車両30Vとセンタ40A及びセンタ40Bとの間でデータの転送を行う。拠点20Aは、車両30V又はセンタ40Aから受信したデータを拠点20Bに転送するか否かを、車両30V又はセンタ40Aの状態に応じて決定する。
【0036】
NWエッジ10は、通信システムの一例である。拠点20Aは、第1の拠点の一例である。拠点20Bは、第2の拠点の一例である。センタ40Aは、第1のセンタの一例である。センタ40Bは、第2のセンタの一例である。
【0037】
拠点20Aは、L7LB(レイヤ7ロードバランサ)201A、プロキシ202A、ブローカ203A、拠点間プロキシ204A及び状態監視部210Aを有する。
【0038】
L7LB201Aは、データ連携決定機能を実現する。ブローカ203Aは、MQTT(Message Queuing Telemetry Transport)プロトコルに従ってデータの中継を行う。プロキシ202Aは、L7LB201Aとブローカ203Aとの間の通信を中継する。拠点間プロキシ204Aは、拠点間(例えば拠点20Aと拠点20Bとの間)の通信を中継する。
【0039】
拠点20Bは、L7LB201B、プロキシ202B、ブローカ203B、拠点間プロキシ204B及び状態監視部210Bを有する。
【0040】
L7LB201Bは、データ連携決定機能を実現する。ブローカ203Bは、MQTTプロトコルに従ってデータの中継を行う。プロキシ202Bは、L7LB201Bとブローカ203Bとの間の通信を中継する。拠点間プロキシ204Bは、拠点間の通信を中継する。
【0041】
状態監視部210Aは、センタ40Aの状態を監視する。そして、状態監視部210Aは、監視によって得られた情報を、外部情報としてL7LB201Aに通知する。L7LB201Aは、外部情報を基に、特定のデータを拠点20Bとの間で連携する。
【0042】
例えば、L7LB201Aは、外部情報にセンタ40Aに障害が発生していることが示されている場合、処理対象のデータを拠点20Bに転送する。拠点20Bは、転送されたデータをセンタ40Bに送信する。そして、当該データはセンタ40Bで処理される。
【0043】
このように、拠点20Aは、車両30Vからデータを受信した場合、センタ40Aを監視して得られた情報を基に、センタ40Aでデータを処理可能であるか否かを判定し、センタ40Aでデータを処理可能でないと判定した場合、データを拠点20Bに転送する。
拠点20Bは、データを、センタ40Bに転送する。
【0044】
特に、拠点20Aは、車両30Vからデータを受信した場合、センタ40Aを監視して得られた情報にセンタ40Aに障害が発生していることが示されている場合、センタ40Aでデータを処理可能でないと判定する。
【0045】
このとき、L7LB201Aは、オフロードにより処理の重複を発生させないようにする。すなわち、L7LB201Aは、他の拠点に処理対象のデータを転送した場合、当該データをセンタ40Aには送信しないようにする。
【0046】
拠点20Aがセンタ40Aでデータを処理可能か否かを判定するための条件は、障害(又は故障)が発生しているか否かに限られない。
【0047】
例えば、拠点20Aは、拠点又はセンタの負荷状態を基に判定を行ってもよい。負荷状態は、外部情報によって示される情報であって、例えば拠点又はセンタにおける装置(サーバ、通信機器等)のCPU(Central Processing Unit)、メモリ、ストレージの使用率を含む。また、負荷状態には、拠点間、及び拠点とセンタとの間のネットワーク帯域の使用率が含まれていてもよい。
【0048】
例えば、拠点20Aは、拠点20AにおけるサーバのCPU使用率が閾値を超えていて、拠点20BにおけるサーバのCPU使用率が閾値を超えていない場合、データを拠点20Bに転送する。
【0049】
なお、拠点20Aは、これまで説明したように外部情報に基づき動的にデータの転送先を決めるだけでなく、静的な条件によりデータの転送先を決めてもよい。
【0050】
拠点20Aは、車両30Vから取得したデータの種別に応じて、当該データをセンタ40Aとセンタ40Bのいずれに転送するかを決定することができる。例えば、拠点20Aは、データの種別が動画データであれば当該データをセンタ40Aに転送し、データの種別がCAN(Controller Area Network)データであれば当該データをセンタ40Bに転送する。
【0051】
(ダウンロード時の課題及び解決方法)
次に、データのダウンロードの際に発生する従来の課題を説明する。ダウンロードは、センタから車両へのデータの送信を意味する。
図7及び
図8は、従来のダウンロードにおける課題を説明する図である。
【0052】
ダウンロードにおいては、停止等により車両がデータを受信できない期間が存在する。また、移動により車両と接続される拠点が随時変化する。
【0053】
図7に示すように、ダウンロードにおいては、センタから車両への通知が重複するという課題がある。これは、レプリケーションにより、同じ通知が複数の拠点(例えば拠点21と拠点22)から車両31に送信されるためである。これにより、車両31が正常に通知を受け取ることができない場合がある。
【0054】
また、
図8に示すように、ダウンロードにおいては、車両31へのデータの送達の管理が必要になる。これは、車両31がデータを受信できない期間があるためである。これにより、各拠点の処理負荷が大きくなる。
【0055】
図9を用いて、上記のダウンロードにおける課題の解決方法を説明する。
図9は、ダウンロードにおけるデータ連携方法を説明する図である。
図9に示すNWエッジ10の構成について、
図6と同様の部分については説明を省略する。
【0056】
車両30Vは、拠点20A及び拠点20Bのいずれかと接続される。
図9の例では、車両30Vは拠点20Bと接続される。
【0057】
通知プロキシ206Aは、センタ40Aからブローカ203Aへの通信を中継する。また、KVS(Key-Value Store)220A及びKVS220Bは、車両30Vとの接続情報(メタデータ)を記憶する。
【0058】
拠点20Aは、KVS220Aに記憶された車両30Vと接続情報を、拠点20Bと共有する。これにより、拠点20A及び拠点20Bを含むNWエッジ10内の各拠点は、どの拠点がどの車両と接続しているかを示す情報を随時取得することができる。
【0059】
例えば、拠点20Aが車両30Vと接続されておらず、拠点20Bが車両30Vと接続されている場合、拠点20Bが車両30Vへの通知(データの転送)に適している。
【0060】
このとき、拠点20Aは、拠点間プロキシ204A及び拠点間プロキシ204Bを介して、ACKにより確実に拠点Bに通知のためのデータを転送する。
【0061】
このように、拠点20A及び拠点20Bは、車両30Vが接続されている拠点の情報を保持する。拠点20Aは、情報に車両30Vが拠点20Bと接続されていることが示されている場合、センタ40Aから車両30Vへの通知を、拠点20Bに転送する。
【0062】
[第1の実施形態の処理]
図10を用いて、アップロード時のデータ連携の流れを説明する。
図10は、アップロード時のデータ連携の流れを示すフローチャートである。
【0063】
図10に示すように、まず、第1の拠点が車両からデータを受信する(ステップS101)。第1の拠点は、例えば
図6の拠点20Aである。
【0064】
第1の拠点は、第1の拠点と接続された第1のセンタの監視情報を取得する(ステップS102)。第1のセンタは、例えば
図6のセンタ40Aである。
【0065】
ここで、第1の拠点は、監視情報を基に第1のセンタでデータを処理可能であるか否かを判定する(ステップS103)。例えば、監視情報に第1のセンタに障害が発生していることが示されている場合、第1の拠点は、第1のセンタでデータを処理可能でないと判定する。
【0066】
第1の拠点は、第1のセンタでデータを処理可能であると判定した場合(ステップS103、Yes)、第1のセンタにデータを転送する(ステップS104)。
【0067】
一方、第1の拠点は、第1のセンタでデータを処理可能でないと判定した場合(ステップS103、No)、第2のセンタと接続された第2の拠点にデータの一部を転送する(ステップS105)。
【0068】
例えば、第2のセンタは
図6のセンタ40Bである。また、例えば、第2の拠点は
図6の拠点20Aである。
【0069】
図11を用いて、ダウンロード時のデータ連携の流れを説明する。
図11は、ダウンロード時のデータ連携の流れを示すフローチャートである。
【0070】
図11に示すように、まず、第1の拠点がセンタからデータを受信する(ステップS201)。例えば、第1の拠点は
図9の拠点20Aである。
【0071】
ここで、第1の拠点は、第1の拠点が車両へのデータ転送に適しているか否かを判定する(ステップS202)。例えば、第1の拠点は、第1の拠点が車両と接続されている場合、第1の拠点が車両へのデータ転送に適していると判定する。
【0072】
第1の拠点は、第1の拠点が車両へのデータ転送に適していると判定した場合(ステップS202、Yes)、車両のデータを転送する(ステップS203)。
【0073】
一方、第1の拠点は、第1の拠点が車両へのデータ転送に適していないと判定した場合(ステップS202、No)、車両へのデータ転送に適した第2の拠点に、ACKによりデータを転送する(ステップS204)。
【0074】
ステップS204について詳細に説明する。第2の拠点は、第1の拠点からデータを受け取った場合、第1の拠点に対してACKを返送する。これにより、第2の拠点は、データを正常に受け取ったことを第1の拠点に通知することができる。
【0075】
第1の拠点は、データを送信した後、第2の拠点からACKを受け取ると、データの転送が正常に行われたと判断し、転送済みのデータを第1の拠点から削除する。これにより、同じデータが複数の拠点(ここでは第1の拠点と第2の拠点)に重複して存在することが防止される。
【0076】
また、第1の拠点は、データを第2の拠点に転送した後に、当該データを第2の拠点が正常に受け取ったことが通知されなかった場合(例えば、データ転送後に一定時間経過してもACKが返送されなかった場合)、同じデータを第2の拠点に再送する。これにより、第1の拠点は、第2の拠点に確実にデータを転送することができる。
【0077】
上記の通り、ACKを用いることで、データを重複なく確実に転送すること、すなわちQoS/2の担保が可能になる。一方で、第1の拠点は、ACKを用いずにデータ転送を行うことで(QoS/0に相当)、処理速度を優先することができる。
【0078】
例えば、第1の拠点は、要求される処理速度及び確実性等に応じて、QoSのレベル(例えば、QoS/0又はQoS/2)を選択し、選択したQoSのレベルに応じてACKを用いるか否かを判断してもよい。
【0079】
[第1の実施形態の効果]
これまで説明してきたように、NWエッジ10は、拠点20Aと拠点20Bとを含む複数の拠点を有し、車両30Vとセンタ40A及びセンタ40Bとを含む複数のセンタとの間でデータの転送を行う。車両30Vは、拠点20A及び拠点20Bのいずれかと接続される。センタ40Aは、少なくとも拠点20Aと接続される。センタ40Bは、少なくとも拠点20Bと接続される。拠点20Aは、車両30V又はセンタ40Aから受信したデータを拠点20Bに転送するか否かを、車両30V又はセンタ40Aの状態に応じて決定する。
【0080】
これにより、データのレプリケーションによらない拠点間のデータ連携が可能になる。その結果、コネクティッドカーシステムにおけるNWエッジ内の拠点間で効率良くデータ連携を行うことができる。
【0081】
また、拠点20Aは、車両30Vからデータを受信した場合、センタ40Aを監視して得られた情報を基に、センタ40Aでデータを処理可能であるか否かを判定し、センタ40Aでデータを処理可能でないと判定した場合、データを拠点20Bに転送する。
【0082】
拠点20Bは、データを、センタ40Aに転送する。特に、拠点20Aは、車両30Vからデータを受信した場合、センタ40Aを監視して得られた情報にセンタ40Aに障害が発生していることが示されている場合、センタ40Aでデータを処理可能でないと判定する。
【0083】
これにより、NWエッジ10は、拠点間NWの帯域の逼迫、処理の重複及び不要データの滞留を解消する。
【0084】
また、拠点20A及び拠点20Bは、車両30Vが接続されている拠点の情報を保持する。拠点20Aは、情報に車両30Vが拠点20Bと接続されていることが示されている場合、センタ40Aから車両30Vへの通知を、拠点20Bに転送する。
【0085】
これにより、NWエッジ10は、通知の重複及びデータ送達管理を解消する。
【0086】
[他のネットワークの構成]
ネットワークの構成方法は、これまで説明してきたものに限られない。例えば、接続される拠点とセンタとの関係は、1対1に限られず、1対多、多対1又は多対多であってもよい。
【0087】
【0088】
まず、
図12には、
図6等を用いてこれまでに説明してきたものと同様のネットワークの構成例が示されている。
図12の例では、NWエッジ10の各拠点とセンタは1対1で接続されている。
【0089】
次に、
図13に示すように、NWエッジ10の各拠点とセンタがメッシュで接続されていてもよい。つまり、拠点20Aは、センタ40Aとセンタ40Bの両方に接続される。また、拠点20Bは、センタ40Aとセンタ40Bの両方に接続される。
【0090】
図13の例では、拠点20Aは、車両Vから受信したデータを、センタ40Aで処理できないと判定した場合、当該データを拠点20Bに転送することなく、直接センタ40Bに転送することができる。
【0091】
また、
図14に示すように、センタと接続されたNWエッジ10の拠点の数が、センタの数より多くてもよい。
図14の例では、拠点20Aはセンタ40Aに接続され、拠点20Bはセンタ40Aとセンタ40Bの両方に接続され、拠点20Cはセンタ40Bに接続されている。
【0092】
図14の例では、拠点20Aは、センタ40Aでデータを処理できないと判定した場合、当該データを拠点20Bに転送する。一方、拠点20Bは、センタ40Aでデータを処理できないと判定した場合、当該データを直接センタ40Bに転送することができる。
【0093】
また、
図15に示すように、NWエッジ10の拠点の数よりも、拠点と接続されたセンタの数が多くてもよい。
図15の例では、拠点20Aはセンタ40Aと接続され、拠点20Bはセンタ40Bとセンタ40Cの両方に接続されている。
【0094】
図15の例では、拠点20Bは、センタ40Bでデータを処理できないと判定した場合、当該データを直接センタ40Cに転送することができる。
【0095】
なお、これまでに説明した拠点A、拠点B及び拠点Cは、いずれも第1の拠点としても第2の拠点としても機能する。また、センタA、センタB及びセンタCは、いずれも第1のセンタとしても第2のセンタとしても機能する。
【0096】
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。なお、プログラムは、CPUだけでなく、GPU等の他のプロセッサによって実行されてもよい。
【0097】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0098】
[プログラム]
一実施形態として、転送装置(拠点20A)は、パッケージソフトウェアやオンラインソフトウェアとして上記の通信処理を実行する通信プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の通信プログラムを情報処理装置に実行させることにより、情報処理装置を転送装置として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
【0099】
図16は、通信プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
【0100】
メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
【0101】
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、転送装置の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、転送装置における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
【0102】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
【0103】
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【符号の説明】
【0104】
10 NWエッジ
20A、20B、21、22、23 拠点
30V、31 車両
40A、40B センタ
201A、201B L7LB
202A、202B、205B プロキシ
203A、203B ブローカ
204A、204B 拠点間プロキシ
210A、210B 状態監視部
206A 通知プロキシ
220A、220B KVS