(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024151585
(43)【公開日】2024-10-25
(54)【発明の名称】通信装置及び通信システム
(51)【国際特許分類】
H04L 43/0852 20220101AFI20241018BHJP
H04L 47/34 20220101ALI20241018BHJP
H04W 4/40 20180101ALI20241018BHJP
H04W 24/02 20090101ALI20241018BHJP
G08G 1/09 20060101ALI20241018BHJP
【FI】
H04L43/0852
H04L47/34
H04W4/40
H04W24/02
G08G1/09 F
【審査請求】未請求
【請求項の数】3
【出願形態】OL
(21)【出願番号】P 2023065046
(22)【出願日】2023-04-12
(71)【出願人】
【識別番号】000005290
【氏名又は名称】古河電気工業株式会社
(74)【代理人】
【識別番号】100114292
【弁理士】
【氏名又は名称】来間 清志
(74)【代理人】
【識別番号】100145713
【弁理士】
【氏名又は名称】加藤 竜太
(72)【発明者】
【氏名】矢板 信
(72)【発明者】
【氏名】椎野 雅人
(72)【発明者】
【氏名】杉村 竹三
(72)【発明者】
【氏名】黒田 政彦
【テーマコード(参考)】
5H181
5K030
5K067
【Fターム(参考)】
5H181AA01
5H181BB04
5H181BB15
5H181CC03
5H181CC04
5H181CC12
5H181CC14
5H181EE02
5H181EE03
5H181FF05
5K030HA08
5K030HC09
5K030JL01
5K030JT09
5K030LE16
5K030MB06
5K030MC08
5K067AA23
5K067EE02
5K067EE10
5K067EE24
5K067FF05
(57)【要約】
【課題】通信の遅延が生じた場合に、より適切な処理を可能とする通信システムを提供すること。
【解決手段】通信システム100は、相互にパケット通信を行う車載装置1とサーバ装置3と、を備え、サーバ装置3は、車載装置1からデータとシーケンス番号とを少なくとも含むパケットを受信する受信部35と、車載装置1から異なる通信経路を介して送信され、同一のシーケンス番号を備えるコピーされた複数のパケットそれぞれの、車載装置1から送信されてからサーバ装置3に受信されるまでの伝送時間に基づいて、車載装置1とサーバ装置3との間のパケットの伝送の遅延を検出する遅延検出部36と、遅延検出部36によって検出された遅延に応じて、その検出された遅延に関する遅延情報を利用した処理を行うサーバ側処理部37と、を備える通信システム。
【選択図】
図2
【特許請求の範囲】
【請求項1】
相互にパケット通信を行う第1通信装置と第2通信装置と、を備える通信システムであって、
前記第2通信装置は、前記第1通信装置からデータとシーケンス番号とを少なくとも含むパケットを受信する受信部と、
前記第1通信装置から異なる通信経路を介して送信され、同一のシーケンス番号を備えるコピーされた複数のパケットそれぞれの、前記第1通信装置から送信されてから前記第2通信装置に受信されるまでの伝送時間に基づいて、前記第1通信装置と前記第2通信装置との間の前記パケットの伝送の遅延を検出する遅延検出部と、
前記遅延検出部によって検出された遅延に応じて、その検出された遅延に関する遅延情報を利用した処理を行う処理部と、を備える通信システム。
【請求項2】
前記遅延情報を利用した処理は、前記第1通信装置に前記遅延情報を送信する処理である請求項1に記載の通信システム。
【請求項3】
前記第2通信装置は、予測対象の将来のある時点における状況を予測し、その予測結果を前記第1通信装置に送信し、
前記遅延情報を利用した処理は、前記将来のある時点を前記遅延情報に応じて決定する処理である請求項1に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信装置及び通信システムに関する。
【背景技術】
【0002】
近年、自動車等の移動体の運転支援や遠隔操作、自動運転等のために行うデータ伝送や通話時における音声や画像等による端末間の通信等の通信品質を向上させるための技術が開発されている。例えば特許文献1には、送信装置がヘッダに送信順序に応じたシーケンス番号を割り当て、送信時刻を示すタイムスタンプが含められるパケットを送信し、受信装置がパケットの到着の遅延時間の揺らぎを検出し、検出結果に基づいてパケットの受信品質に関する情報を送信装置にフィードバックする技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、自動運転や遠隔操作等で行われる通信装置間のデータ伝送において、通信に遅延が生じた場合、安全性が担保できなくなるおそれがある。特許文献1には、パケットの到着の遅延時間の揺らぎを検出できる技術が記載されているものの、通信の低遅延化とともに、遅延が生じた場合に適切な処理を行うことも重要である。
【0005】
本発明は、通信の遅延の状況に応じて、より適切な処理を可能とする通信システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
(1)通信システムは、相互にパケット通信を行う第1通信装置と第2通信装置と、を備える通信システムであって、前記第2通信装置は、前記第1通信装置からデータとシーケンス番号とを少なくとも含むパケットを受信する受信部と、前記第1通信装置から異なる通信経路を介して送信され、同一のシーケンス番号を備えるコピーされた複数のパケットそれぞれの、前記第1通信装置から送信されてから前記第2通信装置に受信されるまでの伝送時間に基づいて、前記第1通信装置と前記第2通信装置との間の前記パケットの伝送の遅延を検出する遅延検出部と、前記遅延検出部によって検出された遅延に応じて、その検出された遅延に関する遅延情報を利用した処理を行う処理部と、を備える。
【0007】
(2)(1)に記載の通信システムにおいて、前記遅延情報を利用した処理は、前記第1通信装置に前記遅延情報を送信する処理である。
【0008】
(3)(1)又は(2)に記載の通信システムにおいて、前記第2通信装置は、予測対象の将来のある時点における状況を予測し、その予測結果を前記第1通信装置に送信し、前記遅延情報を利用した処理は、前記将来のある時点を前記遅延情報に応じて決定する処理である。
【発明の効果】
【0009】
本発明によれば、通信の遅延の状況に応じて、より適切な処理が可能となる。
【図面の簡単な説明】
【0010】
【
図1】本発明の一実施形態に係る通信システム及び通信システムを利用する移動体が道路を移動する様子を示す模式図である。
【
図2】本発明の一実施形態に係る通信システムの車載装置とサーバ装置の機能的な構成を示す模式図である。
【
図3】本発明の一実施形態に係る車載装置のデータ処理部によって生成されるパケットの構成の一例を示す模式図である。
【
図4】本発明の一実施形態に係る車載装置のデータ処理部によって生成され、タイムスタンプが付加されたパケットの構成の一例を示す模式図である。
【
図5】本発明の一実施形態に係る車載装置がサーバ装置にパケットを送信するまでの処理の流れの一例を示すフローチャートである。
【
図6】本発明の一実施形態に係るサーバ装置が車載装置からのパケットを受信し、復号するまでの処理の流れの一例を示すフローチャートである。
【
図7】本発明の一実施形態に係るサーバ装置による遅延検出処理の一例を示すフローチャートである。
【
図8】本発明の一実施形態に係るサーバ装置のサーバ側処理部による処理の一例を示すフローチャートである。
【
図9】本発明の一実施形態に係る車載装置の車載側処理部による処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態に係る通信システム100について説明する。なお、以下の実施の形態により本発明が限定されるものでない。また、以下の説明において参照する各図は、本開示の内容を理解でき得る程度に形状、大きさ、及び位置関係を概略的に示してあるに過ぎない。即ち、本発明は、各図で例示された形状、大きさ、及び位置関係のみに限定されるものでない。
【0012】
通信システム100について
図1を参照しながら説明する。
図1は、通信システム100及び通信システム100を利用する移動体4が道路5を移動する様子を示す模式図である。
【0013】
通信システム100は、第1通信装置としての車載装置1と、複数の基地局2に通信ネットワークNWを介して接続され、車載装置1と通信を行う第2通信装置としてのサーバ装置3と、を備える。本実施形態では、通信システム100について車両である移動体4に搭載された車載装置1とサーバ装置3との間のデータの伝送を例に説明する。
【0014】
車載装置1は、例えば、カーナビゲーション、ITS(Intelligent Transportation System)及びV2X(Vehicle to everything)通信等を使用する機能を備える。車載装置1は、道路5上を含む移動体4の周囲の状況を示すデータ等を、複数のパケットに分割して基地局2及び通信ネットワークNWを介してサーバ装置3に送信する。また、車載装置1は、サーバ装置3から通信ネットワークNW、基地局2を経由して送信されてくるパケットを受信する。車載装置1から基地局2を介してサーバ装置3に伝送されるデータの種別、属性は特に限定されない。例えば、送受信されるデータは、内蔵されている装置を制御するための制御データであってもよく、画像データであってもよく、音声データであってもよく、テキストデータであってもよい。
図1は、車載装置1を搭載した移動体4が基地局2を介してサーバ装置3と通信しながら移動方向Xに移動している様子を示している。車載装置1は、移動体4の走行によって移動方向Xに移動しながら複数の基地局2との間で、無線で通信を行っている。なお、本実施形態にあっては、
図1に示す2つの基地局2はそれぞれ異なる通信キャリアに属するものとし、電波の送受信が可能な範囲(エリアカバレッジ)が一部または全部が重複している場合を想定しているが、この形態に限定されるものではない。
【0015】
サーバ装置3は、車載装置1から受信したデータに応じて、車載装置1の運転を制御又は支援するためのデータを生成し、送信する処理を行う。サーバ装置3は、例えば複数の基地局2及び通信ネットワークNWを介して車載装置1からパケットを受信してデータを取得し、該データに応じて車載装置1に返信するための各種データを生成し、車載装置1に返信する。例えばサーバ装置3は、車載装置1から送信された画像データに基づいて、移動体4を遠隔操作するための制御データを車載装置1に送信してもよく、後述するデータ伝送の遅延情報を送信してもよく、移動体4の自動運転に用いられる情報やドライバによる手動運転を支援する情報を送信してもよい。移動体4の自動運転や手動運転用の情報としては、例えば移動体4が将来のある時点に走行する道路5の状況に関する情報(以下、道路状況情報という)であってもよい。道路状況情報としては、例えば道路5上の障害物の有無や位置、交通事故の発生の有無、信号機が示す表示、他車両の位置等が想定されるが、これらに限定されるものではない。
【0016】
ここで、例えば移動体4の自動運転や遠隔制御、手動運転の支援において、安全性や実用性の点からパケットの損失や遅延等を抑制し、実質的にリアルタイムで情報を伝達することが要求される。本実施形態によれば、5Gに代表される次世代高速通信システムにより実現される通信装置間における実質的にリアルタイムでのデータの伝送において、さらなる通信の低遅延化、通信の可用性や信頼性等の向上等を実現できる。
【0017】
次に、車載装置1及びサーバ装置3の機能的な構成について、
図2を参照しながら説明する。
図2は、通信システムSの車載装置1とサーバ装置3の機能的な構成を示す模式図である。
【0018】
車載装置1は、制御部10と、記憶部11と、無線通信部12と、切替部13と、時刻情報取得部14と、データ取得部15と、データ処理部161と、送信部162と、受信部171と、パケット処理部172と、車載側処理部18と、を備える。
【0019】
制御部10は、例えばプロセッサによって構成され、車載装置1の動作に必要な演算及び制御等の処理を行うコンピュータの中枢部分であり、各種演算及び処理等を行う。プロセッサは、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)、GPU(graphics processing unit)、ASIC(application specific integrated circuit)、PLD(programmable logic device)又はFPGA(field-programmable gate array)などである。あるいは、プロセッサは、これらのうちの複数を組み合わせたものである。また、プロセッサは、これらにハードウェアアクセラレーターなどを組み合わせたものであっても良い。プロセッサは、ROM(図示省略)又は補助記憶装置(図示省略)などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、車載装置1の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサの回路内に組み込まれていても良い。
【0020】
記憶部11は、ハードウェア群を車載装置1として機能させるための各種プログラム、及び各種データなどの記憶領域であり、ROM、RAM、フラッシュメモリ、半導体ドライブ(SSD)又はハードディスクドライブ(HDD)などで構成することができる。具体的には、記憶部11は、本実施形態の各機能を制御部10に実行させるためのプログラム、車載装置1の制御プログラム、各種パラメータ、車載装置1のIPアドレスやMACアドレス等の識別情報、移動体4に関する情報等が記憶される。
【0021】
無線通信部12は、車載装置1が基地局2等と無線通信を行うための処理を実行する。無線通信部12は、電波を送受信するアンテナを備える。無線通信部12は、データ処理部161で生成されたパケットを基地局2に送信する。
【0022】
切替部13は、制御部10からの制御信号に基づいて、データを送信するときには、送信部162に切り替え、データを受信するときには、受信部171に切り替える処理を実行する。
【0023】
時刻情報取得部14は、アンテナを含み、GNSS(Global Navigation Satellite System)からの時刻情報を含むGNSS信号を受信する。GNSS信号は、GPS(Global Positioning System)又は準天頂衛星システム等のGNSSを構成する航法衛星等から送信される。時刻情報取得部14は、受信したGNSS信号を所定の時間間隔でデータ処理部161に送信する。
【0024】
データ取得部15は、サーバ装置3に送信するデータを取得する処理を実行する。データ取得部15が取得するデータは、特に限定されない。例えば移動体4のセンサ(図示省略)によって検出され、移動体4の周囲の状況を示すデータであってもよく、ドライバ等によって入力された移動体4の目的地を示す情報(以下、目的地情報という)等であってもよい。移動体4の周囲の状況を示すデータを検出するセンサとしては、例えばカメラやLiDAR、レーダ装置等が挙げられる。
【0025】
データ処理部161は、データ取得部15から取得したデータからサーバ装置3に送信するためのパケットを生成する処理を実行する。データ処理部161は、例えば以下(a)~(d)までの処理を行う。
(a)データの送信順序を決定する
(b)データをパケット化する
(c)シーケンス番号を含むヘッダをパケットに付加する
(d)シーケンス番号を含むヘッダが付加されたパケットを2個以上複製(コピー)する
【0026】
(a)の処理について説明する。(a)の処理においてデータ処理部161は、データ取得部15によって複数のデータが取得された場合、データの種類に応じて設定されたデータ送信における優先順位に基づいて、取得されたデータの送信順序を決定する。そして、データ処理部161は、複数のデータを決定された送信順序に従って並べる。この一連の処理をQoS(Quality of Service)処理ともいう。データ送信における優先順位の設定では、例えば移動体4の自動運転や遠隔操作に用いるデータ等のリアルタイムでの確実な通信が要求されるデータに対して高い優先順位を設定してもよい。これにより、リアルタイム性が要求される通信において、より確実に低遅延の通信を実行できる。
【0027】
(b)の処理について説明する。(b)の処理においてデータ処理部161は、予め設定されたパケットのサイズに基づいて、送信される順番に並べられた複数のデータに対して、データを1つのパケットで送信可能なサイズに分割するか、又は1つのパケットで送信可能なサイズまで複数のデータを統合する。
【0028】
(c)の処理について説明する。(c)の処理においてデータ処理部161は、OSI参照モデルのネットワーク層の通信プロトコルに従ったヘッダをパケットに付加する。このヘッダには、パケットの送信順序に応じて連続して割り当てられるシーケンス番号を付与する。
図3は、車載装置1のデータ処理部161によって生成されるパケットの構成の一例を示す図である。本実施形態では、
図3に示すように、パケット内のデータを暗号化して送信する通信プロトコルであるIPsec(Security Architecture for Internet Protocol)に従ったヘッダをパケットに付加する。データ処理部161は、
図3に示すように、IPsecのESP(Encapsulating Security Payload)プロトコルで、データを暗号化している。なお、シーケンス番号は、例えばESPヘッダ等の暗号化されない範囲に配置することが好ましい。これにより、サーバ装置3は、パケットを受信した場合、復号する前にパケットのシーケンス番号を確認することができる。
【0029】
(d)の処理について説明する。(d)の処理においてデータ処理部161は、同一のシーケンス番号が付与されているヘッダが付加されているパケットを2個以上複製する。
【0030】
また本実施形態では、データ処理部161は、(a)~(d)の処理を(a)(b)(c)(d)の順で処理を行っているが、以下(a)(b)(e)(f)までの処理をこの順で行ってもよい。
(a)データの送信順序を決定する
(b)データをパケット化する
(e)パケットを2個以上複製する
(f)シーケンス番号を含むヘッダをパケットに付加する
【0031】
(e)の処理について説明する。(e)の処理においてデータ処理部161は、(b)の処理で生成され、ヘッダが付加される前のパケットを2個以上複製する。
【0032】
(f)の処理について説明する。(f)の処理においてデータ処理部161は、(e)の処理で複製したパケットにOSI参照モデルのネットワーク層の通信プロトコルに従ったヘッダをパケットに付加する。そして、複製されているそれぞれのパケットに付加されているヘッダに同一のシーケンス番号を付与する。
【0033】
送信部162は、データ処理部161によって生成されたパケットを送信する処理を実行する。具体的には、送信部162は、データ処理部161により複製した同一のシーケンス番号のパケットを同一のタイミングでそれぞれ異なる通信経路を介して送信する。例えば送信部162は、通信経路毎に設定された宛先アドレスをパケットに付加し、通信経路毎に設定された通信インターフェイスからパケットを送信することで、同一のシーケンス番号及び同一のデータを含む複数のパケットを異なる通信経路を介して送信してもよい。このとき、送信部162は、車載装置1からサーバ装置3へのパケットの送信時刻を示すタイムスタンプをそのパケットのヘッダに付加する処理を実行する。なお、送信部162が付加するタイムスタンプが示す時刻は、時刻情報取得部14が取得した時刻情報に合わせられたものである。ここで、タイムスタンプは、暗号化されない範囲に配置することが好ましい。例えば、
図4に示すように、UDPヘッダとEPSヘッダの間に配置することが考えられる。具体的には、UDPヘッダとEPSヘッダの間にNバイトのタイムスタンプ領域を追加する。Nは、2や8などが考えられる。これにより、サーバ装置3は、パケットを受信した場合、復号する前にタイムスタンプを確認することができる。
【0034】
また本実施形態では、送信部162は、コピーされた同一のシーケンス番号を含む複数のパケットを同一のタイミングで送信しているが、同一のシーケンス番号を含む複数のパケットを通信経路毎に異なるタイミングで送信してもよい。異なる通信経路とは、例えば
通信キャリアが異なる通信経路であってもよく、ローカル5G、通信キャリア等による通信経路、WiFi(登録商標)等の無線LAN等の通信方式が異なる通信経路であってもよい。
【0035】
受信部171は、サーバ装置3の後述する受信部351と同様の構成であり、パケット処理部172は、サーバ装置3の後述するパケット処理部352と同様の構成であり、サーバ装置3について説明する際に構成について説明する。なお、車載側処理部18の構成及び機能については後述する。
【0036】
次に、サーバ装置3について説明する。サーバ装置3は、制御部30と、記憶部31と、通信I/F部32と、切替部33と、時刻情報取得部34と、受信部351と、パケット処理部352と、遅延検出部(伝送時間特定部)36と、サーバ側処理部37と、データ処理部381と、送信部382と、を備える。
【0037】
制御部30は、例えばプロセッサによって構成され、サーバ装置3の動作に必要な演算及び制御等の処理を行うコンピュータの中枢部分であり、各種演算及び処理等を行う。プロセッサは、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)、GPU(graphics processing unit)、ASIC(application specific integrated circuit)、PLD(programmable logic device)又はFPGA(field-programmable gate array)などである。あるいは、プロセッサは、これらのうちの複数を組み合わせたものである。また、プロセッサは、これらにハードウェアアクセラレーターなどを組み合わせたものであっても良い。プロセッサは、ROM(図示省略)又は補助記憶装置(図示省略)などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、サーバ装置3の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサの回路内に組み込まれていても良い。
【0038】
記憶部31は、ハードウェア群をサーバ装置3として機能させるための各種プログラム、及び各種データなどの記憶領域であり、ROM、RAM、フラッシュメモリ、半導体ドライブ(SSD)又はハードディスクドライブ(HDD)などで構成することができる。具体的には、記憶部31は、本実施形態の各機能を制御部30に実行させるためのプログラム、サーバ装置3の制御プログラム、各種パラメータ、サーバ装置3のIPアドレスやMACアドレス等の識別情報、移動体4が走行する道路5に関する情報等が記憶される。
【0039】
通信I/F部32は、サーバ装置3が通信ネットワークNWを介して通信するためのインターフェイスである。サーバ装置3は、通信I/F部32を介して複数の基地局2と通信可能に接続される。
【0040】
切替部33は、制御部30からの制御信号に基づいて、サーバ装置3を送信部382からパケットを送信可能な状態と受信部351によってパケットを受信可能な状態とに切り替える処理を実行する。
【0041】
時刻情報取得部34は、アンテナを含み、GNSS(Global Navigation Satellite System)からの時刻情報を含むGNSS信号を受信する。GNSS信号は、GPS(Global Positioning System)又は準天頂衛星システム等のGNSSを構成する航法衛星等から送信される。GNSS部11は、受信したGNSS信号を所定の時間間隔で受信部35に送信する。サーバ装置3の時刻情報取得部34は、車載装置1の時刻情報取得部14と同一のGNSSからのGNSS信号を受信する。即ち車載装置1とサーバ装置3は、同一のソースから時刻情報を受信している。このため、車載装置1の送信部162がヘッダに付加するタイムスタンプが示す時刻とサーバ装置3の受信部351が特定する時刻は同期されていることになる。これにより、車載装置1からサーバ装置3までのパケットの伝送時間を正確に特定することができる。
【0042】
受信部351は、車載装置1から複数の基地局2及び通信ネットワークNWを介して送信されるパケットを受信する処理を実行する。本実施形態では、受信部35は、車載装置1から同一のタイミングでそれぞれ異なる通信経路を介して送信された同一のシーケンス番号を備えたコピーされた複数のパケットを受信する。
【0043】
また受信部351は、車載装置1からパケットを受信した受信時刻を特定するとともに、パケットに含まれるタイムスタンプを読み出すことでパケットの送信時刻を特定する処理を実行する。受信部351は、時刻情報取得部34が取得した時刻情報に合わせられた時刻に基づいて受信時刻を特定する。受信部351は、特定した受信時刻及び送信時刻の情報をパケットのシーケンス番号及びパケットが送信された通信経路を示す識別情報(以下、経路識別情報という)とともに遅延検出部36に送信する。また受信部351は、受信したパケットをパケット処理部352に送信する。サーバ装置3は車載装置1と同一のGNSSからのGNSS信号を受信するので、車載装置1の送信部162がヘッダに付加するタイムスタンプが示す時刻とサーバ装置3の受信部351が特定する時刻は同期されていることになる。これにより、車載装置1からサーバ装置3までのパケットの伝送時間を正確に特定することができる。
【0044】
パケット処理部352は、車載装置1から受信したパケットを復号して元のデータに戻すまでの処理を実行する。パケット処理部352は、例えば以下(g)~(i)までの処理を行う。
(g)シーケンス番号が重複したパケットを廃棄する
(h)パケットを並び替える
(i)パケットを復号する
【0045】
(g)の処理について説明する。(g)の処理においてパケット処理部352は、同一のシーケンス番号を備えた複数のパケットを受信した場合、複数のパケットのうち最初に受信したパケット以外のパケットを廃棄し、最初に受信したパケットを復号の対象とする処理を実行する。これにより、パケット処理部352では、同一のシーケンス番号を有するパケットのうち、常時より早く到着したパケットを処理することとなり、遅延時間の抑制が図られる。
【0046】
(h)の処理について説明する。(h)の処理においてパケット処理部352は、復号の対象とする複数のパケットをシーケンス番号の順番に並び替える処理を実行する。
【0047】
(i)の処理について説明する。(i)の処理においてパケット処理部352は、シーケンス番号の順に並んだ複数のパケットを復号する処理を実行する。パケット処理部352は、複数のパケットを車載装置1のデータ処理部161によってパケットが生成される前のデータ取得部15によって取得された状態のデータにする。パケット処理部352は、パケットを復号して得られたデータをサーバ側処理部37に送信する。
【0048】
遅延検出部36は、受信部351からパケットのシーケンス番号及び経路識別情報とともに、パケットの受信時刻及び送信時刻を取得する。そして、遅延検出部36は、受信時刻及び送信時刻に基づいて異なる通信経路を介して送信されたパケットそれぞれのパケットの伝送時間を特定することでパケットの遅延を検出する。パケットの伝送時間とは、パケットが車載装置1から送信されてからサーバ装置3に受信されるまでの時間である。即ち、遅延検出部36は、受信時刻と送信時刻の差をパケットの伝送時間として特定する。遅延検出部36は、パケットの伝送時間や通信経路、シーケンス番号等を遅延情報としてサーバ側処理部37に送信する。なお、遅延検出部36は、例えば異なる通信経路を介して送信された同一のシーケンス番号を備える複数のパケットそれぞれの伝達時間を比較することである通信経路を介して送信されたパケットの遅延を検出してもよい。また遅延検出部36は、受信部351から取得した各通信経路におけるシーケンス番号の抜けを検出することで、各通信経路におけるパケットの損失率を検出してもよい。
【0049】
サーバ側処理部37は、パケット処理部352によってパケットが復号されて得られたデータに基づいて各種処理を実行する。サーバ側処理部37は、例えば車載装置1からのデータに基づいて、予測対象の将来のある時点における状況を予測してもよく、さらにその予測結果に基づいて移動体4の制御データ等を生成してもよい。またサーバ側処理部37は、送信部38を介して予測結果や移動体4の制御データ等を車載装置1に送信してもよい。サーバ側処理部37は、例えば移動体4の周囲の状況を示すデータを取得した場合、将来のある時点に移動体4が位置する道路5の道路状況情報を予測し、その予測結果としてのデータを車載装置1に送信してもよく、その予測結果に応じて移動体4を遠隔制御する制御データを生成し、生成した制御データを車載装置1に送信してもよい。
【0050】
サーバ側処理部37は、遅延検出部36によって検出された車載装置1とサーバ装置3との間のパケットの伝送の遅延に応じて、その検出された遅延に関する遅延情報を利用した処理を行う。遅延情報を利用した処理としては、例えば送信部382を介して車載装置1に遅延情報を送信する処理であってもよい。また例えば遅延情報を利用した処理としては、サーバ側処理部37が予測する将来のある時点を遅延情報に応じて決定する処理であってもよい。サーバ側処理部37は、例えば遅延情報が示すパケットの伝達時間が10ミリ秒(msec)であった場合、自身が予測する将来のある時点を現時点から30msec後としてもよい。なお、サーバ側処理部37が予測する将来のある時点は、1つの時点であってもよく、複数の時点であってもよい。例えば遅延情報が示すパケットの伝達時間が1秒であった場合、自身が予測する将来のある複数の時点を現時点から2秒後、3秒後、5秒後、10秒後等としてもよい。
【0051】
具体例について説明する。自動車に搭載されているエアバックが破裂するまでに要する時間は、一般的に約30msecである。また、自動車に搭載されているレーダなどのセンサの応答時間は、一般的に約30msecである。ここで、自動運転を支援する技術の遂行に必要不可欠(ミッションクリティカル)なユースケース(例えば、遠隔でハンドルやブレーキを制御する場合など)を実現するためには、通信にかかる遅延時間を一定時間以内に保証するシステムが要求される。例えば、この保証する遅延時間を10msec以内であるとした場合、以下のような処理が考えられる。ある時間において、回線Aの遅延時間が、5msecであり、回線Bの遅延時間が、15msecであり、回線Cの遅延時間が、7msecである場合、制御部30は、サーバ側処理部37からの指示に基づいて、回線Aまたは回線Bを利用して通信を行い、一方、回線Bを利用して通信を行わない処理を行うことが考えられる。なお、保証する遅延時間は、10msecに限定されない。
【0052】
また、サーバ側処理部37は、車載装置1から受信したデータに基づいて、デジタルツインを生成する構成でもよい。デジタルツインとは、クラウド上に現実世界のオブジェクトなどを仮想的に複製し、そのクラウド上の仮想モデルを利用して、各種のシミュレーションを実行し、現実世界のオブジェクトなどにフィードバックし、改善する仕組みをいう。例えば、自動車には、多くのセンサが搭載されている。例えば、車載装置1は、これらのセンサによって得られたデータを収集し、セキュアかつ低遅延にサーバ装置3に送信する。サーバ装置3は、車載装置1から送信されてきたデータを蓄積する。サーバ側処理部37は、これらのデータに対して処理を行うことで、仮想空間上に現実空間と同じ双子の自動車(デジタルツイン)を生成する。サーバ側処理部37は、このデジタルツインを使って機械学習などの処理を行い、自動車の将来を、さまざまな想定で解析、予想することができる。サーバ装置3は、このようにして得られた解析結果や予測結果から自動車の制御信号や制御アルゴリズムなどを生成し、車載装置1に送信する。車載装置1が搭載された自動車は、受信した制御信号により最適な動作をしたり、制御アルゴリズムに基づいてソフトウェアを更新することができる。
【0053】
また、通信システム100は、隊列走行に適用することができる。隊列走行とは、複数の車両(例えば、トラック)が連なって走行し、また、走行状況を通信によってリアルタイムで共有し、自動で車間距離を保って走行する技術をいう。隊列走行では、自動車を電子連結技術(車車間通信)により一体に制御し、数台の自動車が隊列車群を構成し走行する。この場合には、車載装置1を搭載した自動車が複数台で構成されることになる。
【0054】
データ処理部381は、サーバ側処理部37から取得したデータから車載装置1に送信するためのパケットを生成する処理を実行する。送信部382は、データ処理部381により生成したパケットを車載装置1に送信するための処理を実行する。データ処理部381及び送信部382の構成及び機能は、車載装置1の上述したデータ処理部161及び送信部162の構成及び機能と同様であり、その説明を省略する。
【0055】
次に、車載装置1の車載側処理部18の構成及び機能について説明する。車載側処理部18は、受信部171及びパケット処理部172を介してサーバ装置3から取得したデータに基づいて各種処理を実行する。
【0056】
車載側処理部18は、サーバ装置3から将来のある時点の道路状況情報を取得した場合、その道路状況情報を車載装置1の出力部(図示省略)に出力してもよい。出力部は、例えばディスプレイやスピーカ等で構成され、画像や音声を出力するものであってもよい。将来のある時点の道路状況情報を車載装置1の表示部に出力することで、例えば移動体4が走行予定の道路5に事故車両や落下物等の障害物が存在する場合、移動体4のドライバは、予め道路5上の障害物の存在を把握することができる。
【0057】
また車載側処理部18は、サーバ装置3から将来のある時点の道路状況情報を取得した場合、その道路状況情報を移動体4の駆動を制御するECU(Electric Control Unit)に渡してもよい。ECUは、例えば将来のある時点における道路状況情報に応じて移動体4の駆動を制御し、移動体4の自動運転を行ってもよい。
【0058】
また車載側処理部18は、サーバ装置3から移動体4の制御データを取得した場合、その制御データを移動体4の駆動を制御するECU等に出力してもよい。これにより、サーバ装置3による移動体4の遠隔操作が可能となる。
【0059】
また車載側処理部18は、サーバ装置3から各通信経路におけるパケットの伝達時間を示す遅延情報を取得した場合、その遅延情報に基づいて、送信部162からサーバ装置3にデータを送信する際に使用する通信経路を選択してもよい。例えば車載側処理部18は、移動体4の自動運転や遠隔操作用のリアルタイムでの通信が要求されるデータを送信する場合、より伝送時間が短い通信経路やパケットの損失率が低い通信経路を選択できる。
【0060】
また車載側処理部18は、サーバ装置3から遅延情報と、将来の複数の時点における道路状況情報又は移動体4の制御データとを取得した場合、その遅延情報に応じて表示部やECUに出力する道路状況情報やECUに出力する制御データを選択してもよい。
【0061】
次に、本実施形態に係る通信システム100によるデータ伝送に関する処理の流れの一例について説明する。まず、車載装置1がサーバ装置3にパケットを送信するまでの処理の流れについて
図5を参照しながら説明する。
【0062】
図5に示すように、ステップS11において、データ取得部15は、サーバ装置3に送信する複数のデータを取得する。データ取得部15は、例えば移動体4のセンサによって検出された移動体4の周囲の状況を示す画像のデータや移動体4の各部位の状態を示すデータ等を取得する。
【0063】
ステップS12において、データ処理部161は、ステップS11で取得した複数のデータに対してQoS処理を行う。データ処理部161は、例えば、データの種類に応じて設定されたデータ送信における優先順位に基づいて、取得された複数のデータの送信順序を決定し、複数のデータを決定された送信順序に従って並べる。
【0064】
ステップS13において、データ処理部161は、パケットを生成する処理を実行する。データ処理部161は、ステップS12で送信順序に従って並べられた複数のデータに対して、1つのデータを送信可能なサイズに分割するか、又は1つのパケットで送信可能なサイズまで複数のデータを統合し、データをパケット化する。そしてデータ処理部161は、パケットの送信順序に応じて連続して割り当てられるシーケンス番号が付与され、かつIPsecに従ったヘッダをパケットに付加する。
【0065】
ステップS14において、データ処理部161は、ステップS13で生成したパケットを2個以上複製して、同一のデータ及びシーケンス番号を含む複数のパケットを生成する。
【0066】
ステップS15において、送信部162は、パケットのヘッダにサーバ装置3への通信経路毎に設定された宛先アドレスを付加する。具体的には、送信部162は、ステップS14でコピーにより生成された同一のデータ及びシーケンス番号を含む複数のパケットにそれぞれ異なる宛先アドレスを付加する。
【0067】
ステップS16において、送信部162は、ステップS15で宛先アドレスが付加されたパケットをサーバ装置3に送信する。具体的には、送信部162は、同一のシーケンス番号を含む複数のパケットを異なる通信経路を介して同一のタイミングで送信するとともに、各パケットのヘッダにパケットの送信時刻を示すタイムスタンプを付加する。その後、送信部162によるサーバ装置3にデータを送信する処理が終了する。
【0068】
次に、サーバ装置3が車載装置1からのパケットを受信し、復号するまでの処理の流れについて
図6を参照しながら説明する。
【0069】
図6に示すように、S21において、受信部351は、ステップS16で送信されたデータを受信すると、車載装置1からパケットを受信した受信時刻を特定するとともに、パケットに含まれるタイムスタンプを読み出し、パケットの送信時刻を特定する。受信部351は、特定した受信時刻及び送信時刻の情報をパケットのシーケンス番号及び経路識別情報とともに遅延検出部36に送信する。そして、ステップS30において、遅延検出部36は、遅延検出処理を実行する。遅延検出処理については後述する。
【0070】
ステップS22において、パケット処理部352は、同一のシーケンス番号のパケットを重複して受信したか否かを判定する。同一のシーケンス番号のパケットを重複して受信した場合(ステップS22;YES)、処理をステップS23に移行させる。一方で、パケット処理部352は、同一のシーケンス番号のパケットを重複して受信していない場合(ステップS22;NO)、処理をステップS24に移行させる。
【0071】
ステップS23において、パケット処理部352は、同一のシーケンス番号の複数のパケットのうち最初に受信したパケット以外のパケットを廃棄する。
【0072】
ステップS24において、パケット処理部352は、パケットの並びがシーケンス番号の順番であるか否かを判定する。パケット処理部352は、パケットの並びがシーケンス番号の順番とは異なると判定した場合(ステップS24;NO)、処理をステップS25に移行させる。そして、パケット処理部352は、ステップS25においてシーケンス番号の順番にパケットを並び替える。一方で、パケット処理部352は、パケットの並びがシーケンス番号の順番であると判定した場合(ステップS24;YES)、処理をステップS26に移行させる。
【0073】
ステップS26において、パケット処理部352は、シーケンス番号の順に並んだ複数のパケットを復号して、ステップS11でデータ取得部15によって取得された状態まで戻す。
【0074】
次に、サーバ装置3によるパケットの遅延検出処理について
図6を参照しながら説明する。
図7は、遅延検出処理の一例を示すフローチャートである。
【0075】
図7に示すように、ステップS31において、遅延検出部36は、ステップS21で特定されたパケットの送信時刻及び受信時刻の情報とシーケンス番号と経路識別情報を受信部351から取得する。
【0076】
ステップS32において、遅延検出部36は、ステップS31で取得したパケットの送信時刻及び受信時刻から各通信経路を介した車載装置1からサーバ装置3へのパケットの伝送時間を特定する。例えば遅延検出部36は、受信時刻と送信時刻の差をパケットの伝送時間として特定する。
【0077】
ステップS33において、遅延検出部36は、ステップS32で特定したパケットの伝送時間や通信経路、シーケンス番号等を遅延情報としてサーバ側処理部37に送信する。その後、遅延検出部36は、遅延検出処理を終了する。
【0078】
次に、サーバ装置3のサーバ側処理部37による遅延情報を利用した処理の一例について
図8を参照しながら説明する。
【0079】
図8に示すように、ステップS41において、サーバ側処理部37は、ステップS26で復号されて得られたデータとステップS33で送信された遅延情報を取得する。
【0080】
ステップS42において、サーバ側処理部37は、ステップS41で取得した遅延情報に応じて自身が予測する将来の複数の時点を決定する。なお、サーバ側処理部37は、ステップS41で取得した遅延情報と各通信経路を介したサーバ装置3から車載装置1へのパケットの遅延情報の両方に基づいて自身が予測する将来の複数の時点を決定してもよい。
【0081】
ステップS43において、サーバ側処理部37は、ステップS41で取得したデータに基づいて、ステップS42で決定した将来の複数の時点における道路状況情報を予測する。
【0082】
ステップS44において、サーバ側処理部37は、ステップS43で予測した将来の複数の時点における道路状況情報とステップS41で取得した遅延情報をデータ処理部381に送信する。将来の複数の時点における道路状況情報と遅延情報は、送信部382によって車載装置1に送信される。
【0083】
次に、車載装置1の車載側処理部18による処理の一例について
図9を参照しながら説明する。
【0084】
図9に示すように、ステップS51において、車載側処理部18は、受信部171及びパケット処理部172を介してステップS44で送信された将来の複数の時点における道路状況情報の予測結果と遅延情報を取得する。
【0085】
ステップS52において、車載側処理部18は、ステップS44で取得した遅延情報に基づいて、将来の複数の時点における道路状況情報の予測結果のうち一の時点における道路状況情報の予測結果を選択する。
【0086】
ステップS53において、車載側処理部18は、ステップS52で選択した将来の一の時点における道路状況情報の予測結果を移動体4のECUに出力する。その後車載側処理部18による処理は終了する。なお、ECUは、例えばこの道路状況情報の予測結果に基づいて移動体4の駆動を制御して自動運転処理を行う。
【0087】
以上説明した実施形態によれば、以下のような効果を奏する。
【0088】
本実施形態に係る車載装置1は、シーケンス番号を含むヘッダが付加されているパケットを生成し、同一のシーケンス番号のパケットを2個以上複製するデータ処理部161と、データ処理部161により複製した同一のシーケンス番号のパケットをそれぞれ同一のタイミングで異なる通信経路を介して送信する送信部162と、を備える。
【0089】
これにより、複数の通信経路を介して同一のタイミングで同一のシーケンス番号のパケットを送信するので、通信の遅延及び途絶を低減できる。
【0090】
また本実施形態に係る車載装置1において、データ処理部161は、データを所定のサイズのパケットに変換し、変換したパケットごとにOSI参照モデルのネットワーク層の通信プロトコルに従ったヘッダを付加し、当該ヘッダにシーケンス番号を付与し、シーケンス番号が付与されているヘッダが付加されているパケットをそれぞれ2個以上複製する、または、データを所定のサイズのパケットに変換し、変換したパケットをそれぞれ2個以上複製し、複製したパケットにOSI参照モデルのネットワーク層の通信プロトコルに従ったヘッダを付加し、複製されているそれぞれのパケットに付加されているヘッダには同一のシーケンス番号を付与する。
【0091】
これにより、ネットワーク層の通信プロトコルに従ってパケットを伝送するので、ネットワーク層よりも上位のレイヤの設定にかかわらず、アプリケーションレベルではなく、ネットワークレベルで通信の設定を合わせれば通信が可能となる。よって、汎用性を担保しつつ、通信の遅延を低減するとともに通信の信頼性を向上できる。
【0092】
また本実施形態に係る車載装置1において、データ処理部161は、データの種類に応じて設定されたデータの送信における優先順位に基づいて、取得されたデータの送信順序を決定し、決定した送信順序に基づいて、データと該データに対して付与されるシーケンス番号とを少なくとも含むパケットを生成する。
【0093】
これにより、リアルタイム性が要求されるデータを優先的に送信することができる。
【0094】
また本実施形態に係る車載装置1において、通信プロトコルは、パケットを暗号化する規格である。
【0095】
これにより、第三者によるデータの不正取得、改竄等を防止し、よりデータ伝送の信頼性を向上できる。
【0096】
また本実施形態に係る車載装置1において、送信部162は、パケットの送信時刻を示すタイムスタンプをパケットのヘッダに付加する。
【0097】
これにより、例えばサーバ装置3側でパケットの受信時刻を特定することで、各通信経路におけるデータの伝送時間を把握でき、データの伝送時間を踏まえて次の処理を行うことができる。
【0098】
また本実施形態に係る通信システム100は、相互にパケット通信を行う車載装置1とサーバ装置3と、を備える通信システム100であって、サーバ装置3は、車載装置1から同一のタイミングでそれぞれ異なる通信経路を介して送信された同一のシーケンス番号の複製された複数の前記パケットを受信する受信部35を備え、受信部35は、受信した同一のシーケンス番号の複製された複数のパケットのうち最初に受信したパケット以外のパケットを廃棄する。
【0099】
これにより、同一のシーケンス番号の複数のパケットを受信した場合に後着のパケットを廃棄するので、データの処理負荷を削減できる。
【0100】
また本実施形態に係る通信システム100は、相互にパケット通信を行う車載装置1とサーバ装置3とを備える通信システム100であって、車載装置1は、シーケンス番号を含むヘッダが付加されているパケットを生成し、同一のシーケンス番号のパケットを2個以上複製するデータ処理部161と、データ処理部161により複製した同一のシーケンス番号のパケットを異なる通信経路を介してサーバ装置3に送信するとともに、車載装置1からサーバ装置3へのパケットの送信時刻を示すタイムスタンプをパケットのヘッダに付加する送信部162を備え、サーバ装置3は、車載装置1からパケットを受信し、タイムスタンプからパケットの送信時刻を読み出すとともに、パケットを受信した受信時刻を特定する受信部351と、パケットの送信時刻と受信時刻に基づいて、異なる通信経路を介して送信されたパケットそれぞれの車載装置1から送信されてからサーバ装置3に受信されるまでの伝送時間を特定する遅延検出部36と、を備え、車載装置1とサーバ装置3は、同一のソースから時刻情報を受信している。
【0101】
これにより、送信側と受信側で同期されている時刻によって特定された送信時刻と受信時刻に基づいてパケットの伝送時間を特定できるので、各通信経路を介したパケットの伝送時間をより正確に特定できる。このため、正確に特定した伝送時間を踏まえて、より通信品質が高くなる通信経路を選択できるので、通信の遅延を低減するとともに通信の信頼性を向上できる。
【0102】
本実施形態に係る通信システム100は、相互にパケット通信を行う車載装置1とサーバ装置3と、を備える通信システム100であって、サーバ装置3は、車載装置1からデータとシーケンス番号とを少なくとも含むパケットを受信する受信部35と、車載装置1から異なる通信経路を介して送信され、同一のシーケンス番号を備えるコピーされた複数のパケットそれぞれの車載装置1から送信されてからサーバ装置3に受信されるまでの伝送時間に基づいて、車載装置1とサーバ装置3との間のパケットの伝送の遅延を検出する遅延検出部36と、遅延検出部36によって検出された遅延に応じて、その検出された遅延に関する遅延情報を利用した処理を行うサーバ側処理部37と、を備える。
【0103】
これにより、各通信経路を介した通信装置間の遅延の状況が把握できるので、例えばリアルタイム性が要求される通信において、通信の遅延の状況を見越して適切な処理を行うことができる。よって、リアルタイム性が要求される通信においても、検出された通信の遅延に応じて、より適切な処理を可能となる。
【0104】
また本実施形態に係る通信システム100において、遅延情報を利用した処理は、車載装置1に遅延情報を送信する処理である。
【0105】
これにより、車載装置1側で次にパケットを送信する場合に、送信するデータの種類等と各通信経路の通信品質に応じて、より適切な通信経路を選択できる。
【0106】
また本実施形態に係る通信システム100において、サーバ装置3は、予測対象の将来のある時点における状況を予測し、その予測結果を車載装置1に送信し、遅延情報を利用した処理は、将来のある時点を遅延情報に応じて決定する処理である。
【0107】
これにより、車載装置1とサーバ装置3との間でのデータの伝送速度や遅延の状況に考慮して、車載装置1に対してより適切なタイミングの予測対象の状況を予測し、供給することができる。
【0108】
以上、本発明の実施形態について説明したが、本発明は、上述の実施形態に制限されるものではなく、適宜変更が可能である。
【0109】
上記実施形態では、同一のシーケンス番号を含む複数のパケットを異なる通信経路を介して同一のタイミングで送信するとともに、異なるタイミングで送信してもよい。
【0110】
また上記実施形態では、車載装置1とサーバ装置3が同一のソースから時刻情報を受信していたが、車載装置1とサーバ装置3が異なるソースから時刻情報を受信していてもよい。
【0111】
また上記実施形態では、パケット処理部352及びデータ処理部161は、同一のシーケンス番号の複数のパケットのうち最初に受信したパケット以外のパケットを廃棄していたが、パケットを廃棄しない構成であってもよい。
【0112】
例えば車載装置1のデータ処理部161は、QoS処理を行わない構成であってもよい。また例えば車載装置1が受信部171及びパケット処理部172の少なくともいずれかを有していない構成であってもよい。
【0113】
また例えばサーバ装置3のデータ処理部381は、QoS処理を行わない構成であってもよい。また例えばサーバ装置3がデータ処理部381及び送信部382を有しない構成であってもよい。
【0114】
また例えば車載装置1の送信部162及びサーバ装置3の送信部382は、パケットの送信時刻を示すタイムスタンプをパケットのヘッダに付加しない構成であってもよい。
【0115】
また上記実施形態では、通信システム100は、運転支援や遠隔操作、自動運転等のために、移動体4に搭載される車載装置1とサーバ装置3との間でデータの伝送を行うシステムであったが、本システムが適用される分野は特に限定されない。例えば、通信システム100は、医療分野における遠隔診断や遠隔手術に適用してもよい。具体的には、例えば熟練医が院外にいて執刀医の隣で立ち会うことが難しい場合、執刀医側からの通信装置から手術の映像を熟練医側の通信装置に送信し、熟練医からの指示をリアルタイムで返信することができる。また例えば通信システム100は、音声や画像等による通常の端末間の通話等に適用してもよい。
【符号の説明】
【0116】
1 車載装置(通信装置、第1通信装置)
3 サーバ装置(通信装置、第2通信装置)
161、381 データ処理部
162、382 送信部
171、351 受信部
36 遅延検出部(伝達時間特定部)
37 サーバ側処理部(処理部)
100 通信システム