IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

2023-44932管理装置、通信制御システム、及び通信制御方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023044932
(43)【公開日】2023-04-03
(54)【発明の名称】管理装置、通信制御システム、及び通信制御方法
(51)【国際特許分類】
   H04W 4/20 20180101AFI20230327BHJP
   H04L 47/24 20220101ALI20230327BHJP
   H04L 45/851 20220101ALI20230327BHJP
   H04W 16/28 20090101ALI20230327BHJP
   H04W 72/0457 20230101ALI20230327BHJP
   H04W 28/04 20090101ALI20230327BHJP
   H04L 27/26 20060101ALI20230327BHJP
【FI】
H04W4/20
H04L12/859
H04L12/905
H04W16/28 150
H04W72/04 111
H04W28/04
H04L27/26 100
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2021153057
(22)【出願日】2021-09-21
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】亀井 大向
(72)【発明者】
【氏名】桑原 幹夫
(72)【発明者】
【氏名】中野 亮
(72)【発明者】
【氏名】藤原 亮介
【テーマコード(参考)】
5K030
5K067
【Fターム(参考)】
5K030HC09
5K030JA01
5K030KA04
5K030LA01
5K030LA19
5K030LB06
5K067AA34
5K067CC24
5K067EE02
5K067EE10
5K067EE16
5K067HH25
(57)【要約】
【課題】アプリケーションの動作に応じて通信要件を満足する通信路を決定する。
【解決手段】アプリケーションの通信要件を満たす通信路を選択する管理装置であって、通信要件の変化を伴う前記アプリケーションの動作変更、又は前記アプリケーションの増減をイベントとして検出するイベント検出部と、前記アプリケーションの動作毎の通信要件を管理するアプリ情報と、通信路毎の通信品質を管理する通信路情報と、前記アプリ情報及び前記通信路情報を参照して、前記イベントが検出されたアプリケーションの通信要件を満足する通信制御方法を決定し、前記通信制御装置に通知する通信制御方法計算部とを備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
端末で動作するアプリケーションの通信要件を満たす通信路を選択する管理装置であって、
通信要件の変化を伴う前記アプリケーションの動作変更又は前記アプリケーションの増減をイベントとして検出するイベント検出部と、
前記アプリケーションの動作毎の通信要件を管理するアプリ情報と、
通信路毎の通信品質を管理する通信路情報と、
前記アプリ情報及び前記通信路情報を参照して、前記イベントが検出されたアプリケーションの通信要件を満足する通信制御方法を決定し、通信制御装置に通知する通信制御方法計算部とを備えることを特徴とする管理装置。
【請求項2】
請求項1に記載の管理装置であって、
前記通信制御方法計算部は、複数通信路に同一パケットを送信する経路冗長化制御、複数の通信路に分散してパケットを送信するキャリアアグリゲーション制御、パケットの符号化率を調整する誤り訂正制御、単一の通信路にパケットを複製して送信する連送制御を含む通信制御方法を決定することを特徴とする管理装置。
【請求項3】
請求項1に記載の管理装置であって、
前記通信路情報は、前記通信路の利用に伴う料金及び消費電力量の少なくとも一つから決定されるコストを管理し、
前記通信制御方法計算部は、前記アプリケーションの通信要件を満足し、かつ前記コストが最も低い通信制御方法を決定することを特徴とする管理装置。
【請求項4】
請求項1に記載の管理装置であって、
前記アプリ情報は、前記アプリケーションの優先度の情報を管理し、
前記通信制御方法計算部は、全ての通信資源を用いても前記アプリケーションの通信要件を満足できない場合に、優先度が高いアプリケーションから通信制御方法を決定することによって、優先度が高いアプリケーションの通信が前記通信路に収容され、優先度が低いアプリケーションの通信の前記通信路への収容を停止することを特徴とする管理装置。
【請求項5】
請求項1に記載の管理装置であって、
前記通信制御装置が各通信路の通信品質を定期的に計測した計測情報に従って、前記通信路情報で管理される通信品質情報を更新することを特徴とする管理装置。
【請求項6】
請求項1に記載の管理装置であって、
前記アプリ情報で管理されるアプリケーションの通信要件、並びに前記通信路情報で管理される通信路の通信品質及びコストが入力される入力部を備えることを特徴とする管理装置。
【請求項7】
請求項1に記載の管理装置であって、
前記通信路情報で管理される通信品質の情報、及び前記通信制御方法計算部が決定した通信制御方法を出力する制御状況表示部を備えることを特徴とする管理装置。
【請求項8】
請求項1に記載の管理装置であって、
前記イベント検出部は、センサ又は外部システムからの入力によって前記イベントを検出することを特徴とする管理装置。
【請求項9】
請求項5に記載の管理装置であって、
前記イベント検出部は、前記通信路情報で管理される前記通信品質情報の所定の条件に従った変化を前記イベントとして検出することを特徴とする管理装置。
【請求項10】
請求項1に記載の管理装置であって、
前記アプリ情報は、データ種別毎に異なる通信要件を管理し、
前記通信制御方法計算部は、前記データ種別毎に、アプリケーションの通信品質を満足する通信制御方法を決定することを特徴とする管理装置。
【請求項11】
請求項1に記載の管理装置であって、
前記アプリ情報は、ユーザが最適化したい通信品質の項目を管理し、
前記通信制御方法計算部は、前記ユーザが最適化したい通信品質の項目を最大化又は最小化するように前記アプリケーションの通信要件を満足する通信制御方法を決定することを特徴とする管理装置。
【請求項12】
請求項1に記載の管理装置であって、
前記通信路情報は、確率分布関数の形式で通信品質情報を管理することを特徴とする管理装置。
【請求項13】
端末で動作するアプリケーションが通信する通信制御システムであって、
前記端末に接続された1以上の通信路を用いた通信を制御する通信制御装置と、
アプリケーションの通信要件を満たす通信路を選択する管理装置を備え、
前記管理装置は、
通信要件の変化を伴う前記アプリケーションの動作変更、又は前記アプリケーションの増減をイベントとして検出するイベント検出部と、
前記アプリケーションの動作毎の通信要件を管理するアプリ情報と、
通信路毎の通信品質を管理する通信路情報と、
前記アプリ情報及び前記通信路情報を参照して、前記イベントが検出されたアプリケーションの通信要件を満足する通信制御方法を決定し、前記通信制御装置に通知する通信制御方法計算部とを有し、
前記通信制御装置は、前記管理装置から通知された通信制御方法に従って、前記アプリケーションの通信を制御することを特徴とする通信制御システム。
【請求項14】
端末で動作するアプリケーションが通信する通信制御システムにおいて行われる通信制御方法であって、
前記通信制御システムは、前記端末に接続された1以上の通信路を用いた通信を制御する通信制御装置と、アプリケーションの通信要件を満たす通信路を選択する管理装置を有し、
前記管理装置は、前記アプリケーションの動作毎の通信要件を管理するアプリ情報と、通信路毎の通信品質を管理する通信路情報を有し、
前記通信制御方法は、
前記管理装置が、通信要件の変化を伴う前記アプリケーションの動作変更又は前記アプリケーションの増減をイベントとして検出し、
前記管理装置が、前記アプリ情報及び前記通信路情報を参照して、前記イベントが検出されたアプリケーションの通信要件を満足する通信制御方法を決定し、前記通信制御装置に通知し、
前記通信制御装置が、前記管理装置から通知された通信制御方法に従って、前記アプリケーションの通信を制御することを特徴とする通信制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マルチアクセスネットワークにおける、管理装置、通信制御システム、及び通信制御方法に関する。
【背景技術】
【0002】
昨今、無線通信システムの発展により、大容量かつ低遅延である高品質な無線ネットワークの提供が可能になった。これにより、これまで実現が困難であった遠隔医療サービスや遠隔ロボット制御などの高い通信品質を要求するアプリケーションにおいても、無線通信システムの利用が検討されている。また、前述したアプリケーションの中でも、特に、高信頼性を要求するミッションクリティカル用途への無線通信システムの適用が期待されている。
【0003】
一方、無線通信はその特性上、常時高い信頼性の担保が困難である。無線通信は、地形や物体による電波の反射や減衰などによって受信電波強度が変動し、端末の状態によっては通信が困難になる。
【0004】
このような問題を解決するための従来技術として、公衆移動体通信システム、無線LAN(Local Area Network)、有線LANなどの複数の通信システムを、通信環境及びアプリケーションに応じて切り替えて使用する技術がある。例えば、特許文献1には、相互に異なる方式で無線送信を行なう複数の無線モジュールと、動作させる前記無線モジュールを切り替えるスイッチ部と、送信するコンテンツを特定する情報および送信するコンテンツに付随する情報を出力するコンテンツ情報通知部と、送信するコンテンツを特定する情報および送信するコンテンツに付随する情報に基づいて、各無線モジュールの優先度を決定し、決定した優先度をスイッチ部に出力するアプリ認識部と、を備え、スイッチ部は、優先度に基づいて、いずれかの無線モジュールを選択無線送信装置が記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2012-15725号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に記載された技術では、通信環境及びアプリケーションのコンテンツに応じて複数の通信システムを切り替えて使用できる。一方、ユーザが任意の解像度を選択して視聴可能な動画配信サービスなど、アプリケーションが異なる通信要件(スループット、遅延など)を切り替えて動作する場合、そのアプリケーションの動作の変化に応じた制御が必要である。そのため、アプリケーションの動作の変更を的確に検出する必要があり、上記機構が無い特許文献1に記載された技術では、アプリケーションの動作が変わった際に通信要件を満足できないケースがある。
【0007】
本発明は、複数の通信システムを通信環境などに応じて、適応的に通信路を切り替えて使用する方式において、アプリケーションの動作に応じて通信要件を満足する通信路を決定する通信制御システム及び管理装置の提供を目的とする。
【課題を解決するための手段】
【0008】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、アプリケーションの通信要件を満たす通信路を選択する管理装置であって、通信要件の変化を伴う前記アプリケーションの動作変更、又は前記アプリケーションの増減をイベントとして検出するイベント検出部と、前記アプリケーションの動作毎の通信要件を管理するアプリ情報と、通信路毎の通信品質を管理する通信路情報と、前記アプリ情報及び前記通信路情報を参照して、前記イベントが検出されたアプリケーションの通信要件を満足する通信制御方法を決定し、前記通信制御装置に通知する通信制御方法計算部とを備えることを特徴とする。
【発明の効果】
【0009】
本発明の一態様によれば、アプリケーションの動作に応じて、その動作に対応する通信要件を満たす通信路を選択できる。前述した以外の課題、構成及び効果は、以下の実施例の説明によって明らかにされる。
【図面の簡単な説明】
【0010】
図1】実施例1における通信制御システムの全体構成の例を表す図である。
図2】実施例1における管理装置のハードウェア構成の例を示すブロック図である。
図3】実施例1における通信制御装置のハードウェア構成の例を示すブロック図である。
図4】実施例1における各装置のソフトウェア構成の例を示す論理ブロック図である。
図5】実施例1におけるアプリケーションの動作変更時における通信制御処理の例を表すシーケンス図である。
図6】実施例1におけるアプリ動作変更通知のフォーマット例を表す図である。
図7】本実施例において、コスト最小で通信制御を実施する通信制御方法の計算手順の例を示すフローチャートである。
図8】本実施例において、最適化項目に即した通信制御を実施する通信制御方法の計算手順の例を表すフローチャートである。
図9A】実施例1におけるアプリ情報データベースで管理されるテーブルの構成例を表す図である。
図9B】実施例1におけるアプリ情報データベースで管理されるテーブルの構成例を表す図である。
図10】実施例1におけるアプリケーションが異なる複数種別のトラフィックを送信する場合の、アプリ情報データベースで管理されるテーブルの構成例を表す図である。
図11】実施例1における最適化項目に応じた通信制御を実施する場合の、アプリ情報データベースで管理されるテーブル構成例を表す図である。
図12】実施例1における通信路データベースのテーブルの構成例を表す図である。
図13】実施例1における計測した情報から通信品質情報へ変換する通信品質算出関数を表す図である。
図14】実施例1における関数形式で表した通信品質情報を表す図である。
図15】実施例1における管理装置の通信制御方法計算部で計算される通信路の例を表す図である。
図16A】実施例1における管理装置の通信制御方法計算部によって決定された通信制御方法の例を表す図である。
図16B】実施例1における管理装置の通信制御方法計算部によって決定された通信制御方法の例を表す図である。
図17】実施例1における制御情報表示部による表示画面例を表す図である。
図18】実施例1における入力部による入力画面例を表す図である。
図19】実施例2における各装置のソフトウェア構成の例を表すブロック図である。
図20】実施例2における外部情報を契機とした通信制御処理の例を表すシーケンス図である。
図21】実施例2における外部情報からアプリケーションの動作変更を検出する際に使用するアプリ動作変更検出テーブルの例を表す図である。
図22】実施例3における通信路変化を契機とした通信制御の処理手順の例を表すシーケンス図である。
図23】実施例3における通信路変化を検出する際に使用する通信路変化検出テーブル2301の例を表す図である。
【発明を実施するための形態】
【0011】
本発明の実施例について、図面を参照しながら詳細に説明する。なお、本発明は以下に示す実施例に限定されるものではない。これらの実施例は例示に過ぎず、本発明は当業者の知識に基づいて種々の変更、改良を施した形態で実施可能である。なお、本明細書及び図面において、同じの構成要素には同じ符号を付す。また、構成要素を分けて説明する必要がない場合は、添字を付さずに(例えば、通信制御装置102)と記載し、構成要素を分けて説明する必要がある場合は、添字を付して(例えば、通信制御装置102-A、通信制御装置102-B)と記載する。
【0012】
<実施例1>
図1は、本実施例における通信制御システムの全体構成の例を表す図である。
【0013】
通信制御システムは、通信制御のためのデータベースの更新及びアプリケーションの動作の変更を契機に通信制御方法を計算する管理装置101と、管理装置101が計算した設定に基づいて、端末103のアプリケーションから送信されたトラフィックを制御する通信制御装置102を有する。管理装置101と通信制御装置102は、通信制御方法等の情報を交換可能にするために通信路104、及びインターネット網などのネットワークの少なくともいずれかを介して接続される。
【0014】
通信制御装置102同士は、1以上の通信路104で接続される。通信路104のスループットや遅延等の通信品質に応じて、通信路の選択や、複数の通信路にパケットを複製して送信する経路冗長化等の制御を実施することによって、様々なアプリケーションの通信要件を満足できる。通信路104は有線及び無線のいずれも選択でき、例えばイーサネット(登録商標)、LTE(登録商標)、WiFi(登録商標)、5G等が構成できる。
【0015】
端末103は、有線又は無線で通信制御装置102と接続される。
【0016】
なお、図1に示す以外に、例えば通信制御装置102-Bが複数の通信路104を有してもよい。管理装置101と通信制御装置102は専用の通信路で接続されてもよい。端末103は、ネットワークスイッチ等を介して、複数台接続されてもよい。また、端末103と通信制御装置102が同じ構成のハードウェアで実現されてもよく、管理装置101と通信制御装置102が同じ構成のハードウェアで実現されてもよい。
【0017】
図2は、本実施例における管理装置101のハードウェア構成の例を示すブロック図である。
【0018】
実施例における管理装置101は、プロセッサ(CPU:Central Processor Unit)201、メモリ202、補助記憶装置204及び通信インターフェース205を有する計算機によって構成される。管理装置101は、入力インターフェース203及び出力インターフェース206を有してもよい。
【0019】
プロセッサ201は、メモリ202に格納されたプログラムを実行する演算装置である。プロセッサ201が、各種プログラムを実行することによって、当該装置の各機能が実現される。なお、プロセッサ201がプログラムを実行して行う処理の一部を、他の演算装置(例えば、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array等のハードウェア)で実行してもよい。
【0020】
メモリ202は、不揮発性の記憶素子であるROM(Read Only Memory)及び揮発性の記憶素子であるRAM(Random Access Memory)を含む。ROMは、不変のプログラム(例えば、BIOS:Basic Input Output System)などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、プロセッサ201が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
【0021】
補助記憶装置204は、例えば、磁気記憶装置(HDD:Hard Disk Drive)、フラッシュメモリ(SSD:Solid State Drive)等の大容量かつ不揮発性の記憶装置である。また、補助記憶装置204は、プロセッサ201がプログラムの実行時に使用するデータ、及びプロセッサ201が実行するプログラムを格納する。すなわち、プログラムは、補助記憶装置204から読み出されて、メモリ202にロードされて、プロセッサ201によって実行されることによって、当該装置の各機能を実現する。
【0022】
通信インターフェース205は、所定のプロトコルに従って、他の装置(例えば、通信制御装置102)との通信を制御するネットワークインターフェース装置である。通信インターフェース205には、センサ211が接続される。センサ211は、アプリケーションの動作変更のイベントとなるネットワークの状態、プロセスの状態、外部情報(例えば、時間、位置情報、加速度、輝度、音、画像、振動、角速度)の少なくとも一つを検出する。アプリケーションの動作変更には、アプリケーションの動作状態の変更、アプリケーションの新たな実行による増加、アプリケーションの実行停止による減少などを含む。センサ211は、入力インターフェース203に接続されてもよい。
【0023】
入力インターフェース203は、キーボード208やマウス209などの入力装置が接続され、外部からの入力を受けるインターフェースである。出力インターフェース206は、ディスプレイ装置210やプリンタ(図示省略)などの出力装置が接続され、プログラムの実行結果をユーザが視認可能な形式で出力するインターフェースである。なお、管理装置101にネットワークを介して接続された入力装置(例えば、センサ211)及び出力装置がデータを入出力してもよい。この場合、管理装置101がウェブサーバの機能を有し、入力装置及び出力装置が管理装置101に所定のプロトコル(例えばhttp)でアクセスしてもよい。
【0024】
プロセッサ201が実行するプログラムは、リムーバブルメディア(CD-ROM:Compact Disc-Read only memory、フラッシュメモリなど)又はネットワークを介して管理装置101に提供され、非一時的記憶媒体である不揮発性の補助記憶装置204に格納される。このため、管理装置101は、リムーバブルメディアからデータを読み込むインターフェースを有するとよい。
【0025】
管理装置101は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、複数の物理的計算機資源上に構築された仮想計算機上で動作してもよい。
【0026】
図3は、本実施例における通信制御装置102のハードウェア構成の例を示すブロック図である。本実施例における通信制御装置102は、プロセッサ201、メモリ202、補助記憶装置204及び通信インターフェース205を有する計算機によって構成される。各部の機能については図2と同じであるため、詳細な説明は省略する。なお、図3に示す構成以外にも、入出力インターフェースを備えてもよい。
【0027】
図4は、本実施例における各装置のソフトウェア構成の例を示す論理ブロック図である。
【0028】
管理装置101は、アプリケーションの動作変更を検出するイベント検出部401、通信制御方法を計算する通信制御方法計算部402、現在の通信制御状況をユーザに表示する制御状況表示部403、DBの内容を入力する入力部404、通信制御方法の計算に使用されるアプリケーションに関する情報を保持するアプリ情報データベース405、及び同様に通信制御方法の計算に使用される通信路に関する情報を保持する通信路データベース406を有する。
【0029】
通信制御装置102は、通信路の品質に関する情報を定期的に計測する通信路品質計測部407、及び通信制御を実施する通信制御部408を有する。通信路の品質は、例えば、スループット、遅延、パケットロス率などである。
【0030】
端末103は、管理装置101にアプリケーションの動作が変更した旨を通知する制御システム連携部409を有する。
【0031】
本実施例では、管理装置101のイベント検出部401が、端末103から送信されたアプリ動作変更通知601(図6で後述)を使用して、アプリケーションの動作変更を検出し、通信制御方法の計算を通信制御方法計算部402に要求する。これにより、アプリケーションの動作に応じた通信制御を可能にする。図5を参照して、通信制御の処理手順を具体的に説明する。
【0032】
図5は、本実施例におけるアプリケーションの動作変更時における通信制御処理の例を表すシーケンス図である。以下、具体的なステップについて説明する。
【0033】
ステップS501:端末103は、制御システム連携部409にて、アプリケーションの動作変更を検出し、アプリ動作通知を管理装置101に送信する。制御システム連携部409は、プロセスの状態や、アプリケーションが使用しているネットワークインターフェースの入出力の監視、アプリケーションからの通知等によって、アプリケーションの動作変更を検出する。また、図6にアプリ動作変更通知601のフォーマット例を示す。例えば、端末103上で動作する車両制御アプリケーションが、車上カメラで路面に障害物を発見した等の異常発生を検出し、アプリケーションが非常時状態に遷移した場合に、図6に例示するアプリ動作変更通知601が発行される。アプリ動作変更通知601は、少なくともアプリケーションを特定する識別子(App ID)、及び変更後のアプリケーションの動作状態を含む必要がある。アプリケーションの識別子、アプリ動作状態、及びアプリ動作状態に関連するアプリケーションの通信要件は、アプリ情報データベース405で管理される。アプリ情報データベース405の詳細は、図9Aを参照して後述する。
【0034】
ステップS502:管理装置101は、イベント検出部401にて、端末103から送信されたアプリ動作変更通知601を受信する。アプリ動作変更通知601に含まれるアプリID、及び変更後のアプリケーションの動作状態を参照して、アプリ情報データベース405が保持する現在のアプリケーションの動作状態に関するアプリ動作状態テーブル902(図9Bで後述)を更新する。その後、イベント検出部401は、通信制御方法の計算開始の命令を通信制御方法計算部402に送信する。
【0035】
ステップS503:管理装置101は、通信制御方法計算部402にて、通信制御方法を計算する。その後、計算された通信制御方法を通信制御装置102に通知する。ステップS503の詳細は後述する。なお、図5では、送信側及び受信側の通信制御装置102に通信制御方法を通知しているが、送信側の通信制御装置102のみに通信制御方法を通知してもよい。
【0036】
ステップS504:通信制御装置102は、管理装置101から受信した通信制御方法に基づいて、通信制御方法を切り替える。この時、通信制御方法に含まれるIPv4アドレスやポート番号等の情報を利用して、通信制御対象のアプリケーションが送信したトラフィックを識別する。
【0037】
以上の処理手順によって、アプリケーションの動作の変更を検出し、アプリケーションの動作に応じた通信制御を可能にする。なお、本実施例ではアプリケーションの動作変更後に通信制御を実施したが、アプリケーションの動作状態と通信要件とに齟齬がある時間を小さくするために、通信制御方法の切り替え後にアプリケーションの動作を変更してもよい。その場合、通信制御装置102の通信制御部408から通信制御の実施後に、通信制御方法の切り替えを端末103の制御システム連携部409に通知し、端末103が通知受信後にアプリケーションの動作を切り替えるとステップをステップS504の後に追加するとよい。また、アプリケーションの動作の変更に限らず、例えば非常時にフェールセーフ用アプリケーションが別途起動する等、アプリケーションの数が変更される場合においても、ステップS501において端末103の制御システム連携部409にてプロセス名監視等の手段を用いてアプリケーションの増減を検出し、増減した各アプリケーションに対して動作が停止状態等に変更した旨(アプリ動作変更通知601)を送信する等により、通信制御が可能である。
【0038】
管理装置101の通信制御方法計算部402で決定される通信制御方法計算手順(ステップS503)の詳細を説明する。
【0039】
・第1の具体例:コスト最小になるように通信制御を実施する例
図7は、本実施例において、コスト最小で通信制御を実施する通信制御方法の計算手順の例を示すフローチャートである。以下、各ステップの処理内容について説明する。
【0040】
ステップS701:アプリケーションの通信要件と通信路の通信品質情報に基づいて、通信制御装置102間の全てのアプリケーションが送信するトラフィックに対する通信制御方法の計算を開始する。なお、通信制御方法が計算されるアプリケーションは、計算時間や高優先度のアプリケーションが収容されない状況を考慮して、動作変更が通知されたアプリケーション、新たに追加されたアプリケーション等の一部のアプリケーションを対象にしてもよい。
【0041】
ステップS702:計算対象とする通信制御装置102間で通信するアプリケーションのアプリ要件テーブル901をアプリ情報データベース405から取得する。アプリ要件テーブル901には、通信制御対象のアプリケーションの識別や具体的な通信内容を把握するための情報(アプリ識別子、通信区間、通信要件、優先度等)が含まれる。具体的なアプリ要件テーブルの例は、図9A図10図11を参照して後述する。
【0042】
ステップS703:計算対象とする通信制御装置102間で通信するアプリケーションのアプリ動作状態テーブル902(アプリケーションの識別子、アプリケーションの動作状態)をアプリ情報データベース405から取得する。その後、取得したアプリ動作状態テーブル902を参照して、現在のアプリケーションの動作状態を把握し、ステップS702で取得したアプリ要件テーブル901に含まれる項目のうち、現在のアプリ動作状態に該当しない項目を除外する。具体的なアプリ動作状態テーブルの例は、図9Aを参照して後述する。
【0043】
ステップS704:計算対象とする通信制御装置102間の通信路の通信路テーブル1201を通信路データベース406から取得する。通信路テーブル1201は、通信路の識別、及び通信路の品質に関する情報(通信路識別子、通信品質、コスト等)を含む。具体的な通信路テーブル1201の例は、図12を参照して後述する。
【0044】
ステップS705:優先度が高いアプリケーションから通信制御を実施するため、アプリ要件テーブル901の優先度項目を参照し、通信制御方法が決定していないアプリケーションの中から優先度が最も高いアプリケーションを取得する。なお、異なるアプリケーションは異なる優先度を保持しているため、同時に複数のアプリケーションについて考慮する状況は生じない。また、同じアプリケーションが同じ動作をする場合、同じ優先度を設定してもよい。
【0045】
ステップS706:通信資源の範囲内で、未加工(通信制御未適用)な単一通信路、又はパケットを複数の通信路に送信する経路冗長化、複数の通信路を合算して使用するキャリアアグリゲーション、パケットへ冗長な情報を付与して受信側で誤り訂正可能するFEC、同じ通信路内でパケット複製を行う連送制御を使用した通信路、又は経路冗長化・キャリアアグリゲーション・FEC・連送制御を併用した全通信路を計算する。通信資源とは、対象の区間で使用可能な通信路の可用帯域(通信制御装置102に割り当てられた最大帯域から、アプリケーションに割り当て済みの帯域を減算した値)の合計値である。可用帯域は、通信制御方法計算部402のプログラム内で管理されており、最大帯域と同じ初期値を通信路データベース406から取得し、その後は各アプリケーションの通信制御方法を決定する毎に値を更新する。
【0046】
例えば、通信制御装置102-Aから通信制御装置102-Bの方向に50Mbpsの最大帯域が割り当てられており、優先度が高いアプリケーションAが30Mbps、優先度が低いアプリケーションBが10Mbpsで通信を試みる状況を考える。アプリケーションAの通信制御方法決定時には、最大帯域と等しい50Mbpsの通信資源内で通信路を計算する。仮に、アプリケーションAに未加工な単一通信路が割り当てられた場合、残りの通信資源は20Mbps(=50Mbps-30Mbps)であり、アプリケーションBの通信制御方法決定時には20Mbpsの通信資源の範囲内で通信路を計算する。なお、全てのアプリケーションに対して通信制御方法を決定する場合、可用帯域の初期値は通信制御装置102に割り当てられた最大帯域と等しいが、一部のアプリケーションに対して通信制御方法を決定する場合、当該一部のアプリケーションに割り当てられている帯域の合計値を可用帯域の初期値としてもよい。このように、優先度が高いアプリケーションから通信制御方法を決定することによって、全ての通信資源を用いてもアプリケーションの通信要件を満足できない場合に、優先度が高いアプリケーションから収容され、優先度が低いアプリケーションの収容が停止される。
【0047】
また、ステップS706で計算される全通信路は、最小の構成である未加工な単一通信路、及び通信資源を超過しない範囲で想定可能な、前述の冗長化技術等の全組み合わせに対して計算される通信路である。例えば、連送制御の場合、連送回数1回(連送制御未適用)の通信路から、連送回数N回(Nは通信資源の範囲で許容される最大値)の通信路までの全パターンを計算する。経路冗長化・キャリアアグリゲーション・FEC・連送制御を使用、又は併用した通信路は、ステップS704で取得した通信路テーブルの情報に基づいて計算される。計算方法の詳細は図15を用いて後述する。
【0048】
ステップS707:ステップS706で計算された通信路の中で、アプリケーションの通信要件(スループット、遅延、パケットロス率、コスト上限等)を満足する通信路が存在するかを、通信品質情報(最大帯域、遅延、パケットロス率、コスト等)によって確認する。この判定は、アプリケーションの通信要件と通信品質情報の対応する項目の数値の大小によって判定する(例えば、通信路の遅延がアプリケーションの通信要件の遅延より小さい場合に満足すると判定する)。アプリケーションの通信要件を満足する通信路が存在する場合には各通信路の可用帯域の値を更新後にステップS708へ遷移し、存在しない場合には通信制御を実施せずアプリケーションを収容しない旨を記録してステップS709へ遷移する。なお、双方向で通信するアプリケーションにおいては、両方向においてアプリケーションの通信要件を満足する必要があり、片方でも満足しない場合にはアプリケーションの通信要件を満足する通信路が存在しないと判定する。また、アプリケーションの通信要件が文字列(例えば、セキュリティ高)で与えられた場合、予めユーザが定めた方法で数値に変換して大小を比較する。
【0049】
ステップS708:ステップS707で判定したアプリケーションの通信要件を満足する通信路の中から、コストが最小となる通信路を選択する。コストとは、通信路を選択する上で生じるデメリットであり、使用する通信路及び通信制御方法によって値の大きさが異なる。コストの例として、使用する帯域、ユーザやシステム運用者の金銭的コストや消費電力などがあり、これらの少なくとも一つから決定されるとよい。コストの具体的な例は、図15を参照して後述する。ステップ708におけるコスト最小化は、一つのポリシーであり、図8で後述するように最適化すべき項目でもよいし、他の指標を用いてもよい。
【0050】
ステップS709:ステップS702で取得したアプリ要件テーブル901の全アプリケーションに対して通信制御方法を決定したかを判定する。通信制御方法を決定していないアプリケーションが存在する場合にはステップS705に遷移し、存在しない場合にはステップS710に遷移する。
【0051】
ステップS710:ステップS702~ステップS709で決定した通信制御方法を、管理装置101の制御状況表示部403、及び通信制御装置102の通信制御部408に通知する。制御状況表示部403は、通知を受けると、通信制御方法をユーザに提示し、通信制御装置102では通信制御方法を参照して通信制御を実施する。管理装置101は通信路データベース406の情報を利用して、最も安定した通信路を選択して制御命令を伝達してもよい。
【0052】
ステップS711:アプリケーションの通信要件と通信路の通信品質情報に基づいて、通信制御装置102間のアプリケーションが送信するトラフィックの通信制御方法の計算を終了する。
【0053】
このように、第1の具体例の通信制御方式決定手順では、アプリケーションの通信要件と通信路の通信品質情報に基づいてアプリケーションの通信制御方式を決定する。アプリケーションの通信要件を満足する通信路を決定する際には、未加工な単一通信路の他に、経路冗長化、キャリアアグリゲーション、FEC、連送制御などの通信路の品質を高める技術を使用、又は併用する通信路を計算し、これらの通信路の中から通信路を選択することで、通信品質が高い通信路を用いる場合も含めて通信制御方式を決定できる。また、コストを考慮した通信路の決定によって、アプリケーションの通信要件を満足しつつ、コスト効率がよい通信制御ができる。
【0054】
・第2の具体例:最適化項目に即した通信制御を実施する例
図8は、本実施例において、最適化項目に即した通信制御を実施する通信制御方法の計算手順の例を表すフローチャートである。ステップS701~ステップS707、及びステップS709~ステップS711の各ステップの処理は、図7に示した手順と同じであるため説明を省略する。以下、図7に示す手順と差異がある各ステップの処理内容を説明する。
【0055】
ステップS801:ステップS707で判定したアプリケーションの通信要件を満足する通信路の中から、ユーザが指定する最適化項目に適合する通信路を選択する。最適化項目の例としては、遅延を最小化する、パケットロス率を最小化する、スループットを最大化する等がある。最適化項目は、アプリ情報データベース405のアプリ要件テーブル901に予め設定する。最適化項目の具体例は、図11を参照して後述する。
【0056】
このように、予めユーザ設定した最適化項目を考慮して通信路を決定することで、コスト効率を最大化しない場合にも通信制御ができる。これにより、例えば、コストより通信遅延を小さくする、コストより帯域を最大化する等の要望にも対応できる。
【0057】
図9A図9Bは、本実施例におけるアプリ情報データベース405で管理されるテーブルの構成例を表す図である。図9A図9Bでは、通信制御装置102-Aから通信制御装置102-Bの方向、及びその逆方向の双方について記載している。
【0058】
図9Aに示すアプリ要件テーブル901は、アプリケーションの識別子(App ID)、アプリケーションの動作毎の通信要件を識別するためのアプリケーションの動作の識別子(動作種別)、アプリケーションと通信区間を対応付けるための情報(送信元装置ID、宛先装置ID)、通信制御時にアプリケーションを識別するための情報(送信元IPv4:送信元ポート、宛先IPv4:宛先ポート)、アプリケーションの通信要件(スループット、遅延、パケットロス率、コスト上限)、及び通信資源割り当て順序の優先度を含んで構成される。アプリ要件テーブル901がアプリケーションの動作に対応するアプリケーションの通信要件を保持するので、アプリケーションの動作に応じた通信制御方式を計算できる。なお、通信制御時にアプリケーションを識別するための情報として、IPv6やアプリケーションの送信パケットのペイロードに含ませた独自の情報等を利用してもよい。アプリケーションの通信要件に対して、セキュリティ、環境負荷、可用性等のユーザが通信路に要求する項目を追加し、必要ない項目を削減してもよい。また、アプリ要件テーブル901は、通信方向や送信元/宛先通信制御装置で分割する等、複数に分割されてもよい。
【0059】
図9Bに示すアプリ動作状態テーブル902は、アプリケーションの識別子(App ID)、及びアプリケーションの動作の識別子に対応する現在のアプリ動作状態を表す情報(動作状態)を含んで構成される。アプリ動作状態テーブル902の参照によって、現在のアプリケーションの動作状態を把握し、現在の状況に基づいて通信制御方式を計算できる。なお、例えばアプリ要件テーブル901に現在状態という項目を追加する等によって、アプリ要件テーブル901とアプリ動作状態テーブル902を統合して構成してもよい。
【0060】
図10は、アプリケーションが異なる複数種別のトラフィックを送信する場合の、アプリ情報データベース405で管理されるテーブルの構成例を表す図である。
【0061】
アプリケーションが通信要件の異なる複数の種類のトラフィックを送信する場合、アプリ要件テーブル1001に示すように、トラフィック種別毎の通信要件を識別するためにトラフィック種別を示す識別子(データ種別)のアプリ要件テーブルへの追加によって通信制御が可能となる。実際の通信制御の際に、例えばパケットのペイロードにデータ種別に相当する情報を含めることによって、通信制御装置102が、アプリケーション及びトラフィックのデータ種別を識別する。なお、優先度の項目において、データ種別毎に異なる優先度を定めることによって、重要度が高い制御トラフィックを、重要度が低い映像トラフィックより優先した通信制御が可能となる。
【0062】
図11は、最適化項目に応じた通信制御を実施する場合の、アプリ情報データベース405で管理されるテーブル構成例を表す図である。
【0063】
図8のフローチャートで示した最適化項目に従う場合、アプリ要件テーブル1101の最適化の項目によって、通信制御が可能である。最適化項目には、通信品質情報(スループット、遅延、コスト等)と、通信品質情報を最大化又は最小化したい情報を記載する。なお、2以上の最適化項目が必要な場合、2番目に最適化したい項目を追加で管理するとよい。
【0064】
図12は、本実施例における通信路データベース406のテーブルの構成例を表す図である。
【0065】
通信路テーブル1201は、通信路の識別子(通信路ID)、通信路と通信区間を対応付けるための情報(送信元装置ID、宛先装置ID)、及びアプリケーションの通信要件を満たす通信路かを判断するための通信品質情報(最大帯域、遅延、パケットロス率、消費電力、使用料金、コスト)を含む。通信品質情報は、ユーザが直接入力する他に、管理装置101が通信制御装置102の通信路品質計測部407によって計測された情報を収集して利用したり、管理装置101が外部システム等からネットワーク経由で通信品質情報を収集したりしてもよい。計測は、ICMP(Internet Control Message Protocol)を利用して遅延を計測する等で直接的に通信品質情報を計測する直接計測、又は端末103の無線通信インターフェースで計測された信号対雑音比(SNR:Signal to Noise Ratio)を収集し、収集したSNRを最大帯域に変換する等で通信品質情報を推測する間接計測のいずれも適用できる。間接計測を利用する場合、管理装置101及び通信制御装置102の少なくとも一つが、図13に示す通信品質算出関数を保持し、通信路データベース406への登録時や通信制御方法計算時に、計測した情報から通信品質情報へ変換するとよい。なお、図13に示す通信品質算出関数は一例であり、例えば無線基地局の接続ユーザ数から最大帯域を計算したり、受信電波強度からパケットロス率や最大帯域を計算したり、日時や位置情報から遅延を計算する等でもよい。また、通信路毎に異なる関数を使用してもよい。
【0066】
通信品質情報は定数に限らず、図14の通信品質情報(関数形式)に示すように、遅延を確率分布関数で管理する関数や、送信バイト数からコストを計算する関数等、関数形式でもよい。なお、図14に示す通信品質情報は一例であり、消費電力と送信バイト数からコストを計算する関数等でもよい。
【0067】
また、管理装置101は通信路データベース406の情報を利用して、最も安定した通信路を選択して通信品質情報を収集してもよい。
【0068】
図15は、管理装置101の通信制御方法計算部402で計算される通信路の例を表す図である。上から三つの通信路は未加工な単一通信路、四番目以降の通信路は未加工な単一通信路から経路冗長化、キャリアアグリゲーション、FEC又は連送制御を用いて計算された通信路であり、四番目が連送制御(パケット2連送、LTE利用)、五番目がFEC(符号化率3/5、LTE利用)、六番目がキャリアアグリゲーション(LTE、5G利用)、七番目が経路冗長化(LTE、5G利用)を適用した通信路である。通信制御方法計算部402のプログラムは、通信路に対して、各通信制御方式を適用した際の通信品質(最大帯域、遅延、パケットロス率等)、コストの変化量に関する計算方法を管理しており、この計算方法によって通信制御方式を使用、又は併用した通信路を計算できる。前述した計算方法は、例えば、事前にユーザが管理装置101の入力インターフェース203を介して通信制御方法計算部402に入力する、計算方法を格納したファイルを読み込ませる等の方法で定義できる。なお、前述した計算方法は通信制御システムの動作中に変更してもよい。
【0069】
本実施例における、未加工な単一通信路からの各通信路の計算方法について説明する。なお、以下で説明する各通信品質情報の値は、通信制御適用前のアプリケーションを基準にした値である。例えば、元々最大帯域50Mbpsの通信路に対して連送制御(2連送)を適用する場合、通信制御適用前のアプリケーションは通信制御適用後に2倍の帯域を必要とするため、計算される通信路の最大帯域は、元々の通信路の半分の25Mbpsとなる。
【0070】
連送制御適用:本通信路では、通信路としてLTEのみを使用し、パケットを複製して2連送することでパケットロス率が低い高品質な通信路を使用できる。最大帯域は、パケットを複製して2連送しているため、LTEの最大帯域の半分とする。遅延については、パケットの損失が発生した場合に後続のパケットを待つ必要があるため、遅延の平均値は微小に増加するが、無視できる大きさであると考えられ、LTEの遅延の値と同一とする。パケットロス率については、各パケットを損失する確率が独立であると考え、LTEのパケットロス率の値を連送数分である2乗した値とした。コストについては、従量課金の使用料金(円/MB)においてパケットの連送により連送数に比例して通信量が増加するため、LTEのコストの2倍とした。
【0071】
FEC適用:本通信路では、通信路としてLTEのみを使用し、パケットのペイロード部分を加工して誤り訂正符号を付与することでパケットロス率が低い高品質な通信路を使用できる。最大帯域は、付加する冗長な情報量に応じて使用可能な帯域が減少すると考え、符号化率を乗じた値とする。遅延は、冗長な情報を送信することにより微小に増加するが、無視できる大きさであると考え、LTEの遅延と同一とする。パケットロス率については、誤り訂正符号により本来のLTE利用時に誤るパケットの1%が誤り訂正不可能であると想定し、LTEのパケットロス率に0.01を乗じた値とする。コストは、従量課金の使用料金(円/MB)において符号化率に応じて通信量が増加するため、LTEのコストに符号化率の逆数を乗じた値とする。
【0072】
キャリアアグリゲーション適用:本通信路では、通信路としてLTEと5Gを併用し、二つの通信路を併用して最大帯域が大きい高品質な通信路を生成する。最大帯域は、二つの通信路を併用するため、LTEの最大帯域と5Gの最大帯域の合計値とする。遅延、パケットロス率、及びコストは、基本的に二つの経路でパケットを交互に送信すると考え、LTEの各値と5Gの各値の平均値とする。なお、パケットの各通信路への分配方法は、LTEを優先する、最大帯域の割合に応じて分配率を変化させる等、任意の方法を使用できる。
【0073】
経路冗長化適用:本通信路では、通信路としてLTEと5Gを併用し、パケットを複製して各通信路に冗長化して送信して、パケットロス率が低い高品質な通信路を使用できる。最大帯域については、同じパケットを冗長化して各通信路に送信するため、各通信路で同じ帯域が必要であることから、最大帯域が最小の通信路がボトルネックとなる。従って、LTEと5Gの最大帯域の値のうち、より最大帯域が小さいLTEの値とした。遅延は、より遅延が小さい5Gでパケットの損失が発生した場合にLTEのパケットを待つために遅延の平均値は微小に増加するが、ほぼ無視できるとして、5Gの遅延の値と同一とする。パケットロス率は、各パケットを損失する確率が独立であると考え、LTEのパケットロス率の値を冗長化経路数分である二乗した値とする。コストは、LTEと5Gの通信路を同時に使用するため、LTEのコストと5Gのコストの合計値とする。
【0074】
前述した考え方を併用することで、経路冗長化、キャリアアグリゲーション、FEC、及び連送制御の2以上を併用する、より高品質な通信路も作成できる。
【0075】
なお、前述の通信路計算処理(ステップS706)の計算方法は一例であり、通信路の特徴やネットワークの構成によって変化するため、ユーザが自由に設定できる。また、複数のアプリケーションの通信制御方法を決定する場合、算出通信路リスト1501の最大帯域は可用帯域と読み替えてもよい。
【0076】
図16A図16Bは、本実施例における管理装置101の通信制御方法計算部402によって決定された通信制御方法の例を表す図である。本実施例における通信制御方法は、コストを最小にするように決定されている。
【0077】
通信制御方法1601-Aは車両制御Appの動作状態が通常時の通信制御方法であり、通信制御方法1601-Bは車両制御Appの動作状態が非常時の通信制御方法である。通信制御方法1601-A、1600-Bが保持する情報は、アプリケーションの動作状態によって変化せず、アプリケーションの識別子(App ID)、アプリケーションの動作の識別子(動作状態)、アプリケーションの通信制御を実施するかの情報(収容可否)、アプリケーションと通信区間を対応付けるための情報(送信元装置ID、宛先装置ID)、通信制御時にアプリケーションを識別するための情報(送信元IPv4:ポート、宛先IPv4:ポート)、経路冗長化、キャリアアグリゲーション、FEC、連送制御の各々の適用有無、トラフィック割り当てを含む。アプリケーションの識別子、アプリケーションの動作の識別子、アプリケーションと通信区間を対応付けるための情報、通信制御時にアプリケーションを識別するための情報は、アプリ情報データベース405のアプリ要件テーブル901に記載の情報と同じである。通信制御装置102は、通信制御を実施するアプリケーションに対して、送信元IPv4、送信元ポート、宛先IPv4、宛先ポート等の情報を利用して、通信制御対象のアプリケーションが送信したトラフィックを識別する。通信制御対象のトラフィックであると判断された場合、経路冗長化、キャリアアグリゲーション、FEC、連送制御の各々の適用有無、及びトラフィック割り当ての情報を参考に通信制御を実施する。
【0078】
図17は、本実施例における制御状況表示部403による表示画面例を表す図である。
【0079】
通信路状況1701は、通信路データベース406が保持する通信路情報の一部又は全部を表示する。これによりユーザは各通信路の通信品質情報を視覚的に素早く把握可能になる。
【0080】
通信制御状況1702は、管理装置101で計算された通信制御方法1601の一部又は全部を表示する。これによりユーザは現在実施されている通信制御を視覚的に素早く把握可能になる。
【0081】
図18は、本実施例における入力部404による入力画面例を表す図である。
【0082】
新規通信路入力部は、通信路データベース406に新規の通信路を登録するための項目を入力する通信路入力フォーム1801と、入力された内容を通信路データベース406に登録する通信路DB登録ボタン1802を含む。通信路入力フォーム1801の内容は、通信路データベース406の通信路テーブル1201の内容に対応する。新規通信路入力部により、素早くかつ誰にでも分かりやすい方法で、通信路データベース406へ新たな通信路情報を登録できる。
【0083】
新規アプリ入力部は、アプリ情報データベース405に新規のアプリ情報を登録するための項目を入力するアプリ情報入力フォーム1803と、入力された内容をアプリ情報データベース405に登録するアプリ情報DB登録ボタン1804を含む。アプリ情報入力フォーム1803の内容は、アプリ情報データベース405のアプリ要件テーブル901の内容に対応する。新規アプリ入力部により、素早くかつ誰にでも分かりやすい方法で、アプリ情報データベース405へ新たなアプリケーション情報を登録できる。
【0084】
なお、新規通信路入力部及び新規アプリ入力部は、新たなアプリケーションの追加だけでなく、既に登録されている情報も更新できる。
【0085】
<実施例2>
本発明の第2の実施例を説明する。本実施例では、図19図20及び図21を参照して外部情報入力を契機に通信制御を実施する場合を説明する。なお、本実施例に関わる各種構成や処理等について、図19に示す各装置におけるソフトウェア構成、図20に示す外部情報入力時における通信制御処理、及び図21に示すアプリ動作変更検出テーブル以外は第1の実施例と同じであるため、これらの説明は省略する。
【0086】
図19は、本実施例における各装置のソフトウェア構成の例を表すブロック図である。本実施例では、図4に示す第1の実施例と異なり、端末103が制御システム連携部409を有さない。これは、例えば、端末103へのソフトウェアの導入が困難であり制御システム連携部409を有さない場合等である。この場合、第1の実施例においては端末103の制御システム連携部409から送信されるアプリ動作変更通知601を利用してアプリケーションの動作変更を検出するため、アプリケーションの動作変更時の通信制御が困難である。
【0087】
この課題を解決するために、本実施例では、図19に示すように、イベント検出部401がセンサ211からの入力を受信する。アプリケーションの動作は、環境や場所の変化、時間の変化、人手による入力等、何らかの外部から入力を契機に変更されることが多い。従って、イベント検出部401がセンサ211が取得したセンサ値(例えば、時間、位置情報、加速度、輝度、音、画像、振動、角速度)が閾値を上回る等のユーザが設定する何らかの条件と、当該センサ値をアプリケーションの動作変更のイベントと対応付けることによって、アプリケーションの動作変更に応じた通信制御を実現できる。外部情報とアプリケーションの動作変更を対応付ける条件は、アプリ情報データベース405のアプリ動作変更検出テーブル2101で管理するとよい。アプリ動作変更検出テーブル2101の詳細は、図21を参照して後述する。なお、センサ211が取得したセンサ値以外の外部情報(例えば、Webテキスト、キーボードを介した人手によるテキスト、外部システムからの通知等)を契機にアプリケーションの動作の変更を検出してもよい。また、外部情報は、管理装置101のイベント検出部401が所定のタイミングで(例えば一定周期毎に)通信ネットワーク経由で遠隔にあるセンサ211から受動的又は能動的に収集してもよい。図20に、具体的な通信制御の処理手順を示す。
【0088】
図20は、本実施例における外部情報を契機とした通信制御処理の例を表すシーケンス図である。
【0089】
ステップS502~ステップS504は、図5に示す手順と同じであるため省略する。アプリ動作変更通知601を契機に通信制御を実施する第1の実施例とは異なり、外部情報入力を基にイベント検出部401でアプリケーションの動作変更を検出する処理(ステップS2001)を契機に、通信制御を実施している。これにより、端末103が制御システム連携部409を備えない場合についても、通信制御が可能になる。アプリケーションの動作変更の検出は、アプリ情報データベース405のアプリ動作変更検出テーブル2101を参照して実施する。具体的なアプリケーションの動作変更の検出手順については、図21を参照して後述する。
【0090】
図21は、本実施例における外部情報からアプリケーションの動作変更を検出する際に使用するアプリ動作変更検出テーブル2101の例を表す図である。アプリ動作変更検出テーブル2101は、イベント検出部401内に設けられるとよい。アプリ動作変更検出テーブル2101は、アプリケーションの識別子(App ID)、アプリケーションの動作変更前後の動作状態、外部情報を識別する情報源、及び外部情報からアプリケーションの動作変更を検出するための変更検出条件を含む。はじめに、イベント検出部401は外部情報が入力された通信インターフェース(例えば、IPv4アドレス、ポート番号、シリアルポート、デバイスファイル)等の情報を利用して外部から入力される情報の情報源(車上カメラ等)を特定する。その後、該当する情報源に関する変更検出条件を参照し、アプリケーションの動作が変更しているかを判定する。変更検出条件に相当する処理は、例えば、事前にユーザが管理装置101の入力インターフェース203を介してイベント検出部401に入力する、変更検出条件を格納したファイルを読み込ませる等の方法で定義するとよい。変更検出条件を満足する場合、App IDと変更後の動作状態項目を参照してアプリケーションの動作更新を実施する(ステップS503)。
【0091】
なお、図21は一例であり、変更検出条件は、センサ値が閾値を上回る、カメラで障害物を検出する等の任意の条件を使用できる。変更前の動作状態と現在のアプリケーションの動作状態が等しい場合、通信制御方法の変更が必要ないためステップS502以降の処理を実施しなくてもよい。また、変更検出条件は通信制御システム動作中に変更してもよい。
【0092】
<実施例3>
本発明の第3の実施例を説明する。本実施例では、図22及び図23を参照して通信路変化を契機に通信制御を実施する場合を説明する。なお、本実施例に関わる各種構成や処理等について、図22に示す通信路変化時における通信制御処理、及び図23に示す通信路変化検出テーブル以外は第1の実施例と同じであるため、これらの説明は省略する。
【0093】
第1の実施例及び第2の実施例では、アプリケーションの動作の変更を検出した場合に通信制御を実施できる。従って、アプリケーションの動作は変更していないが、例えば、通信路が悪化する等の変化が通信路に生じた場合、通信制御が実施されずアプリケーションの通信要件が満足されないケースが生じる。
【0094】
この課題を解決するために、イベント検出部401が通信路変化を検出できるようにする拡張が有効である。具体的には、イベント検出部401が、所定のタイミングで(例えば定期的に)通信路データベース406にアクセスし、通信路の変化を検出したら、通信制御方法計算部402に、通信制御方法の計算の開始を通知する。通信路が変化しているかの判別は、例えば、前サンプリングタイミングに計測された値から一定割合以上変化している等、通信品質情報の値の変化によって判定するとよい。通信路の変化を判定するための条件は、通信路データベース406の通信路変化検出テーブル2301で管理する。通信路変化検出テーブル2301の詳細は、図23を参照して後述する。なお、通信路変化に関する検出の契機は、前述の例に限らず、例えば電波強度の劣化などの任意指標の変化によって通信路の変化を検出する形態でもよい。図22に、具体的な通信制御の処理手順を示す。
【0095】
図22は、本実施例における通信路変化を契機とした通信制御の処理手順の例を表すシーケンス図である。
【0096】
ステップS503~ステップS504は、図5に示す手順と同じであるため省略する。ステップS2201では、イベント検出部401が通信路データベース406の通信路テーブル1201と通信路変化検出テーブル2301を参照して、通信路変化を検出する処理を実行し、通信路変化の検出時に通信制御方法の計算開始を通信制御方法計算部402に通知する。これにより、通信路が変化した場合にも通信制御が可能になる。
【0097】
図23は、本実施例における通信路変化を検出する際に使用する通信路変化検出テーブル2301の例を表す図である。通信路変化検出テーブル2301は、通信路を識別する通信路ID、変化を検出する際に参照する通信路テーブル1201の項目である参考指標、参考指標を基に通信路変化を検出するための条件である変化検出条件で構成される。イベント検出部401は通信路IDと参考指標の項目を基に通信路テーブル1201から通信品質情報を取得し、取得した値が変化検出条件を満足しているかどうかを確認することで通信路変化が発生したかを判断することが可能である。変更検出条件に相当する処理は、例えば、事前にユーザが管理装置101の入力インターフェース203を介してイベント検出部401に入力する、変更検出条件を格納したファイルを読み込ませる等の方法で定義する。
【0098】
なお、図23は一例であり、任意の通信路に対して、変化を検出するための条件を設定してもよい。変更検出条件は、前サンプルから遅延の値が10%以上変化している、パケットロス率に基づいて通信混雑を検出する機械学習アルゴリズムが混雑状態を検出している等の任意の条件を使用できる。また、変更検出条件は通信制御システム動作中に変更してもよい。
【0099】
以上に説明したように、本発明の実施例の管理装置101は、通信要件の変化を伴うアプリケーションの動作変更又は増減をイベントとして検出するイベント検出部401と、アプリケーションの動作毎の通信要件を管理するアプリ情報データベース405と、通信路毎の通信品質を管理する通信路データベース406と、アプリ情報データベース405及び通信路データベース406を参照して、イベントが検出されたアプリケーションの通信要件を満足する通信制御方法を決定し、通信制御装置102に通知する通信制御方法計算部402とを備えるので、アプリケーションの動作に応じて、その動作に対応する通信要件を満足する通信路を選択できる。
【0100】
また、通信制御方法計算部402は、複数通信路に同一パケットを送信する経路冗長化制御、複数の通信路に分散してパケットを送信するキャリアアグリゲーション制御、パケットの符号化率を調整する誤り訂正制御、単一の通信路にパケットを複製して送信する連送制御を含む通信制御方法を決定するので、広範囲の通信品質から通信要件を満足する通信路を的確に選択できる。
【0101】
また、通信路データベース406は、通信路の利用に伴う料金及び消費電力量の少なくとも一つから決定されるコストを管理し、通信制御方法計算部402は、アプリケーションの通信要件を満足し、かつコストが最も低い通信制御方法を決定するので、消費電力が低いなど、効率的な通信路を提供できる。
【0102】
また、通信制御方法計算部402は、全ての通信資源を用いてもアプリケーションの通信要件を満足できない場合に、優先度が高いアプリケーションから通信制御方法を決定するので、優先度が高いアプリケーションの通信が通信路に収容され、優先度が低いアプリケーションの通信の通信路への収容を停止でき、重要度が高いアプリケーションを優先して通信路に収容し、重要度が低いアプリケーションの通信を停止できる。
【0103】
また、通信制御装置102が各通信路の通信品質を定期的に計測した計測情報に従って、通信路データベース406で管理される通信品質情報を更新するので、定期的な計測によって通信路の状態を正確に把握できる。
【0104】
また、アプリ情報データベース405で管理されるアプリケーションの通信要件、並びに通信路データベース406で管理される通信路の通信品質及びコストが入力される入力部404を備えるので、データベースのデータを容易に更新できる。
【0105】
また、通信路データベース406で管理される通信品質の情報、及び通信制御方法計算部402が決定した通信制御方法を出力する制御状況表示部403を備えるので、運用者が通信路の状況を正確に把握できる。
【0106】
また、イベント検出部401は、センサ211又は外部システムからの入力によってイベントを検出するので、通信路の状況が変化する前に迅速にイベントを検出できる。
【0107】
また、イベント検出部401は、通信路データベース406で管理される通信品質情報の所定の条件に従った変化をイベントとして検出するので、通信路の変化した際も適切な通信路を提供できる。
【0108】
また、通信制御方法計算部402は、データ種別毎に、アプリケーションの通信品質を満足する通信制御方法を決定するので、アプリケーションの動作状態に応じて適切な通信路を提供できる。
【0109】
また、通信制御方法計算部402は、ユーザが最適化したい通信品質の項目を最大化又は最小化するようにアプリケーションの通信要件を満足する通信制御方法を決定するので、コスト以外の指標に従って、動作状態に応じて適切な通信路を選択でき、コストを考慮しなくてよい場合に適切な通信路を選択できる。
【0110】
また、通信路データベース406は、確率分布関数の形式で通信品質情報を管理するので、単一値として管理が困難な通信品質の項目に対しても、曖昧性を含めて適切に管理できる。
【0111】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加・削除・置換をしてもよい。
【0112】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【0113】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、ICカード、SDカード、DVD等の記録媒体に格納することができる。
【0114】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【0115】
101…管理装置、102…通信制御装置、103…端末、211…センサ、401…イベント検出部、402…通信制御方法計算部、403…制御状況表示部、404…入力部、405…アプリ情報データベース、406…通信路データベース、407…通信路品質計測部、408…通信制御部、409…制御システム連携部、901…アプリ要件テーブル、902…アプリ動作状態テーブル、1201…通信路テーブル、1601…通信制御方法、2101…アプリ動作変更検出テーブル、2301…通信路変化検出テーブル
図1
図2
図3
図4
図5
図6
図7
図8
図9A
図9B
図10
図11
図12
図13
図14
図15
図16A
図16B
図17
図18
図19
図20
図21
図22
図23