以下、図面を参照しつつ、本開示の実施の形態を詳細に説明する。なお、以下の記載及び図面は、説明の明確化のため、適宜、省略及び簡略化がなされている。また、以下の各図面において、同一の要素及び同様な要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
(第1実施形態)
図1は、本開示の第1実施形態に係る通信制御システムの一構成例を示すブロック図である。図1に示すように、本実施形態に係る通信制御システム1は、特定部(特定手段)1a、決定部(決定手段)1b、及び通知部(通知手段)1cを備えることができる。
通信制御システム1は、移動体に提供元サーバからサービスを提供するサービス提供システムに備えることができ、このようなサービス提供システムおける通信問題を解決するためのシステムである。
上記の移動体としては、例えば、歩行者や自転車や自動車(タクシー、バス、トラック等、その用途は問わない)、自動車以外の作業車両、鉄道などの陸上車両とすることができる。また、上記の移動体としては、船舶、水中ドローンなどの水中若しくは水上を移動する物体や、航空機、飛行ドローンなどの空中を移動する物体(飛行体)とすることもできる。また、上記の移動体としては、AGV(Automated Guided Vehicle)などの移動型のロボットとすることもできる。
また、上記の移動体は、それが自律制御で移動する機能を備えるか、操作者による操作で移動する機能を備えるか、その双方の機能を備えるかは問わない。移動体は、自律制御で移動する機能を備える場合、移動体に搭載されるセンサの情報に基づいて自動運転(自律運転)を行うことになる。また、移動体は、例えば自動運転と、搭乗者(例えば自動運転車両であれば車内の運転者)による手動運転とが切替え可能に構成されていてもよい。この場合、移動体は、例えば提供元サーバから提供される運転切替サービスとして、提供元サーバから送信される指示に応じて、手動運転から自動運転に、又は自動運転から手動運転に切り替えられてもよい。
上記のサービスとしては、例えば、衝突等の危険アラートサービス、渋滞情報の配信サービス、緊急車両の接近通知サービス、ダイナミックマップの配信サービス、上記の運転切替サービス、音楽配信サービス、映像配信サービスが挙げられる。上記のサービスとしては、これら以外にも様々な種類のサービスが挙げられる。上記のサービスは、主にアプリケーションプログラム(以下、アプリケーション)で提供することができるが、これに限らない。なお、情報の送信方向は、提供元サーバから移動体であってもよいし、移動体から提供元サーバであってもよい。即ち、提供元サーバがサービスの提供元になる場合であっても、情報の送信元は必ずしも提供元サーバである必要はなく、情報の送信元は移動体であってもよい。例えば、提供元サーバが提供する中継サービスを利用して第三者に映像あるいはその解析結果を提供するために、移動体から提供元サーバに映像を配信してもよい。
提供元サーバは、通信遅延を含めた処理速度を向上させるために移動体に近い位置に設置された、MEC(Multi-access Edge Computing)サーバ等のエッジサーバとすることができるが、これに限らない。換言すれば、移動体は、例えば通信遅延を短くするために、その移動体又は他の装置からの制御により接続する提供元サーバを選択して通信することができるが、移動体にサービスを提供するサーバはこのような選択方法以外の方法で選択されることもできる。
通信制御システム1は、特定部1a、決定部1b、及び通知部1cを複数の装置に分散させて搭載することができ、その分散方法は問わない。例えば、通信制御システム1は、特定部1aを備える装置、決定部1bを備える装置、及び通知部1cを備える装置を含んで構成されることができる。各装置は、例えば1以上のプロセッサと1以上のメモリとを含むハードウェアを含むコンピュータ装置として構成され得る。そして、各装置内に備えられた部位の機能の少なくとも一部は、1以上のプロセッサが、1以上のメモリから読み出したプログラムに従って動作することで実現され得る。
また、通信制御システム1は、図2に示すように、特定部1a、決定部1b、及び通知部1cを備える1つの通信制御装置2として構築することもできる。図2は、図1の通信制御システム1の一構成例である通信制御装置2を示すブロック図である。通信制御装置2は、例えば1以上のプロセッサと1以上のメモリとを含むハードウェアを含むコンピュータ装置として構成され得る。通信制御装置2内の各部の機能の少なくとも一部は、1以上のプロセッサが、1以上のメモリから読み出したプログラムに従って動作することで実現され得る。また、通信制御装置2は、各部の機能を別々の装置に分散して実装されることもでき、その分散方法は問わない。例えば、通信制御装置2は、特定部1aを備える装置、決定部1bを備える装置、及び通知部1cを備える装置を含んで構成されることができる。
次に、各部1a~1cについて説明する。
特定部1aは、移動体に提供元サーバからサービスを提供するサービス提供システムにおける通信問題のボトルネックを特定する。上記の通信問題とは、主にサービスを提供する上での遅延や不通等が発生するような問題を指すことができ、よって、通信問題のボトルネックとは、このようなサービスを提供する上での遅延や不通の要因のうちのボトルネックとなる要因を指すことができる。
サービスを提供する上での遅延や不通等の要因としては、例えば、無線通信区間のトラフィック負荷、提供元サーバ、移動体などの高負荷や障害をはじめとして、無線通信区間での無線品質、提供元サーバと移動体との間の物理的距離などが挙げられる。
特定部1aが通信問題のボトルネックを特定する方法や特定に用いる情報は問わず、ボトルネックは様々な情報を用いて様々な方法で特定されることができる。例えば、特定部1aは、移動体と提供元サーバとの間をはじめ、サービス提供システムに含まれる装置間に関する情報などに基づき、通信問題のボトルネックを特定する。
ボトルネックの特定に用いる情報を特定対象情報と記載する。特定対象情報としては、例えば、ネットワークの混雑状況、各装置での当該サービスに係る処理に要する時間、各装置での当該サービスに係る処理の優先度、各装置での処理の混雑状況などを示す情報が挙げられる。無論、特定対象情報としては、それらの情報を確認できる元となる情報であってもよい。
ここで、ネットワークの混雑状況は、例えば装置間で送受される通信パケットを示す通信パケット情報などにより確認することができる。例えば通信パケットに含まれるヘッダーに記述された、送信元のIP(Internet Protocol)アドレス、宛先のIPアドレス、ポート番号、その他、データの内容を表わすフラグなどの各種情報を通信パケット情報とすることができる。また、各装置での当該サービスに係る処理に要する時間や優先度、各装置での処理の混雑度は、対象となる装置から取得することができる。また、提供元サーバと移動体との間の物理的な距離は、予め記憶された提供元サーバの位置を示す情報と、移動体から取得した、その移動体の位置を示す位置情報と、から算出することができる。
また、特定部1aは、ボトルネックの特定を所定間隔毎に実行することができるが、例えば何かのエラーが発生した時点など、所定の基準を満たした時点で実行するように構成することもできる。
決定部1bは、特定部1aで特定されたボトルネックに応じて制御方法を決定する。ここで決定される制御方法は、制御方針とすることもでき、詳細な制御内容まで含むこともできる。決定部1bで決定される制御方法による制御を主体となって実行する装置(制御主体)は、後述の通知部1cで決定されることとして説明するが、決定部1bが制御方法とともに制御主体も決めることもできる。
決定部1bで決定される制御方法には、対象となる無線通信区間における当該サービス以外に係る通信についてのトラフィック負荷を低くするために当該サービスに係る通信についての優先度を変更することや、対象となる無線通信区間での無線品質を改善するために無線制御方式を変更することを含むことができる。また、上記の制御方法には、提供元サーバ又は移動体の高負荷を解消するために、対象の装置(提供元サーバ又は移動体)において当該サービスに係るアプリケーションの優先度を相対的に高めるようにすることを含むことができる。また、上記の制御方法には、提要元サーバの高負荷を解消するために、あるいは提供元サーバと移動体との間の物理的距離を短くしてネットワーク遅延を小さくするために、提供元サーバを処理負荷の低いサーバに切り替えることを含むことができる。ここで例示したように、決定部1bは、特定されたボトルネックを解消させるために制御方法が決定される。
ここで、提供元サーバを切り替える処理(以下、サーバ切替処理)について補足的に説明する。サーバ切替処理は、提供元サーバを、現在サービスを提供しているサーバ(切替元サーバとも称す)から切替先となるサーバ(切替先サーバとも称す)へ切り替える処理である。通信制御システム1又は通信制御装置2は、サーバ切替処理を行う機能を備えたシステムを含むことができ、このような例を挙げて説明するが、この機能は必須ではなく、通信制御システム1又は通信制御装置2に接続された他のシステムに備えることもできる。また、このサーバ切替処理は、通信制御システム1又は通信制御装置2において、上記の制御方法の一例として実行される場面とは無関係に、例えば移動体の移動に伴って実行されることができる。
サーバ切替処理が実行される場合には、切替先となるサーバが決定されることとなるが、基本的に切替先サーバの選択等のサーバの決定基準については、どのような基準を採用することもできる。例えば、移動体から地理的に一番近いサーバを切替先サーバとして決定してもよいし、通信制御システム1や他のシステムに含まれる任意のサーバに指示されたサーバを切替先サーバとして決定するなど、所定の基準で切替先サーバを決定すればよい。なお、クラウドシステム上のサーバを、切替先サーバとして決定することもできる。
また、サーバ切替処理は、切替元サーバで移動体へ提供していたサービスに関連するサービスを切替先サーバから提供させる処理とすることもできる。つまり、サーバ切替処理の前後でサービスを変えることもできる。例えば、地域によって似て非なるサービス(例えば地方公共団体など、提供元だけが異なるサービス)が提供される場合が挙げられる。この例では、移動体の地域を跨ぐような移動に伴って提供元サーバとの物理的距離が遠くなった場合などに、元の地域が提供するサービスから同等の他の地域が提供するサービスに切り替えられることができる。
通知部1cは、決定部1bで決定された制御方法を、その制御方法による制御を主体となって実行する制御主体に通知する。実際には、決定された制御方法を実行可能な制御主体が複数存在することも想定できるため、区別のために、主体となって実行する制御主体、つまり通知部1cが通知する先となる制御主体を、「通知先」として説明する。また、ここでは、上記の制御方法による制御を実行する制御主体、つまり通知先は、通知部1cが決定するものとして説明する。
通知部1cで決定される通知先は、決定部1bで決定された制御方法を主体となって実行する制御主体であり、基本的に制御方法に応じて異なることになる。通知先の候補は、例えば、サービスの提供に用いられる無線通信のコア網(無線通信網のコアネットワークシステム)、サービスを享受している移動体、サービスを提供している提供元サーバ、あるいは、切替先サーバを含むことができる。また、通知先の候補は、提供元サーバ又は切替先サーバを管理する管理サーバ等の管理ノード、あるいは、サービス提供システムにおいてその提供元サーバに上位サーバが存在するのであれば、通知先の候補は当該上位サーバを含むこともできる。なお、提供元となり得る複数のサーバを管理するためのサーバの階層数や階層構造は問わない。また、通知先の候補は、通知部1cが備えられる装置そのもの(当該装置の別の部位)を含むことができる。
次に、上述のような構成の通信制御システム1又は通信制御装置2における通信制御方法について、図3を参照しながら説明する。図3は、上記の通信制御方法の一例を説明するためのフロー図である。
この通信制御方法では、まず、特定部1aが、移動体に提供元サーバからサービスを提供するサービス提供システムにおける通信問題のボトルネックを特定する特定処理を実行する(ステップS1)。次いで、決定部1bが、特定処理で特定されたボトルネックに応じて制御方法を決定する決定処理を実行する(ステップS2)。そして、通知部1cが、決定処理で決定された制御方法を、制御主体となる通知先に通知する通知処理を実行する(ステップS3)。
ステップS3の通知に基づき、通知を受けた制御主体が決定処理で決定された制御方法を実行し、ボトルネックとなるような通信問題を解消する。通知内にどのような制御を実行するのかを示す情報を含めておいてもよいし、通知先において、予め通知があった時点でどのような制御を実行するのかを定めておいてもよい。
ステップS1~S3の処理は、所定間隔で実行することができるが、これに限らず、例えば、サーバ切替処理が実行された直後の一定期間は行わない、あるいはサーバ切替処理が実行された直後にしか行わないなど、所定の基準に基づき実行されることができる。また、ステップS1~S3の処理を、ボトルネックと言える要因がなくなるまでを1セットとして実行することもでき、これにより大きな通信問題から順番に解消していくことができる。
上述のように、本実施形態では、通信問題のボトルネックを特定して特定したボトルネックに応じた制御方法を決定し、制御主体に通知を行う。そのため、本実施形態によれば、移動体に提供元サーバからサービスを提供するサービス提供システムにおいて通信問題のボトルネックとなる要因に対処させる通知を行うことが可能になる。
次に、図4~図7を参照しながら、図1の通信制御システム1の他の構成例について、より具体的な運用例を挙げながら説明する。まず、図4及び図5を参照し、このような構成例の概略について説明する。図4は、図1の通信制御システム1の他の構成例を示すブロック図である。図5は、図4の構成例における移動体の一構成例を示すブロック図で、主に移動体に搭載される情報処理装置を例示した図である。
図4で例示する通信制御システム100は、提供元サーバから移動体50にサービスを提供するサービス提供システムを含み、通信制御装置2の例である通信制御装置20と、コア網40と、基地局42a,42bと、2つの地点に配置されたサーバA(30a)及びサーバB(30b)と、を備える。なお、基地局42a,42bはコア網40に接続されて無線通信を行う無線基地局又は無線中継局である。また、図4において白抜き矢印は移動体50の進行方向を指している。
サーバA(30a)、サーバB(30b)は、移動体50にサービスを提供可能なサーバ(つまり提供元となり得るサーバ)であり、通信制御装置20にコア網40を介してそれぞれ接続された基地局42a、基地局42bに接続されている。サービスの提供元となり得るサーバA(30a)、サーバB(30b)等のサーバに接続される基地局42a,42b等の基地局は、交差点単位のように点在させておくことができる。
無論、通信制御装置20は、3以上の地点に配置されたサーバに接続されてもよい。また、通信制御システム100は、サーバA(30a)、サーバB(30b)の上位サーバの例であるサーバ31を含むことができ、このサーバ31も移動体50にサービスを提供可能に構築することもできる。ここで、上記の上位サーバとは、例えば、サーバA(30a)、サーバB(30b)がサービスを提供する上で使用する情報を管理するサーバで、且つ移動体50にサービスを提供可能に構築されているものとする。また、通信制御装置20は、コア網40を経由せずに、サーバA(30a)、サーバB(30b)、サーバ31などと接続されることもできる。
また、以下では、サーバA(30a)が提供元サーバであり、サーバ切替処理が実行される場合において、サーバB(30b)が切替先サーバとなる例を挙げて説明する。つまり、この例では、サーバA(30a)が現在、移動体50にサービスを提供しているサーバであるのに対し、サーバB(30b)を切替先として切り替えた後にサービスを提供することになるサーバである点で、両者は異なる。
また、図示しないが、通信制御システム100において、サーバA(30a)と接続された基地局42aが設置された地点や、サーバB(30b)と接続された基地局42bが設置された地点には、カメラ(例えば路側に設置された路側カメラ)及び地点情報送信装置を配置しておくこともできる。このように、通信制御システム100は、移動体50が移動する経路に設置された情報取得機器などの、交通インフラストラクチャの一部として設置された機器を備えることもできる。但し、サーバと地点情報送信装置及びカメラとは同じ地点に配される必要はなく、サーバが設置される地理的な間隔とカメラ等が設置される地理的な間隔とは異ならせることもできる。なお、サーバと地点情報送信装置及びカメラとは、同じネットワーク経由で通信制御装置20と接続されてもよいし、互いに異なるネットワークを介して通信制御装置20と接続されてもよい。
また、サービスを提供する移動体50も複数台とすることができ、その場合、通信制御装置20は、移動体50と提供元サーバのセットのそれぞれについて、ボトルネックの特定、制御方法の決定、及び制御主体への通知等の処理を行うことができる。
また、通信制御システム100は、コア網40を介して、提供元サーバとなり得る複数のサーバを統括的に管理する管理サーバ32を備えることができる。例えば、提供元サーバがMECサーバである場合には、管理サーバ32はMECオーケストレータなどとすることができる。また、図4では、管理サーバ32に通信制御装置20が備えられた例を挙げるが、無論、管理サーバ32がその機能の一部として通信制御装置20の機能を含む構成であればよい。
コア網40は、例えば、第5世代移動通信システムやLTE(Long Term Evolution)やローカル5G、4G、3Gなどの通信回線規格を用いた無線通信網のコアネットワークシステムとすることができる。コア網40は、第5世代移動通信システムの場合、5GC(5th Generation Core network)と称されることができる。5GCの場合には、基地局の例となるgNB(g Node B)とサーバとの間はUPF(User Plane Function)を介して接続されることになる。UPFは、5Gシステムにおいてユーザプレーンデータを処理する役割を担うノードであり、専用ハードウェア装置とすることができる。
また、コア網40には、インターネット網等の外部網60が接続されることができる。通信制御装置20は、コア網40を介して、外部網60に接続された各種の情報を提供する情報提供サーバから、ボトルネックの特定に繋がる情報(例えば、天候の情報や地震発生の情報など)を取得することもできる。この例のように、通信制御システム100では、コア網40を介して、ボトルネックの特定のための情報の取得を行うことができ、またコア網40を介して制御主体への通知も行うことができる。
但し、ボトルネックの特定のための情報の取得や制御主体への通知も、コア網40を介さないように構成することもできる。つまり、通信制御システム100は、例えばWiFi(登録商標)規格のネットワークシステムなど、コア網40を経由しないネットワークを構築する他のネットワークシステムを含むことができる。そして、通信制御装置20が上記他のネットワークシステムとの情報の送受を行うこともできる。
図4以降において、サービスの提供対象である移動体50が車両である例を描き、移動体50が車両であることを前提として説明するが、これに限らず、サービスの提供対象は、他種の移動体であってもよい。例えば、移動体50に搭乗者が持ち込んだ、スマートフォン等の移動体通信端末装置を、サービスの提供対象の移動体とすることもできる。その場合、移動体通信端末装置は、移動体50に有線又は無線で接続しておくことで、後述する移動体50における車速等の車両情報や周辺状況を示す情報等を取得することも可能である。
通信制御装置20の説明に先立ち、図5を参照しながら、移動体50がサービス提供対象である例における、移動体50に搭載された、情報処理装置の構成例について説明する。
図5に示すように、移動体50は、周辺監視センサ51、車両センサ52、車両制御ECU(Electric Control Unit)53、自動運転ECU54、通信装置55、及びサービス提供装置56を備えることができる。移動体50において、これら構成要素は車内LAN(Local Area Network)やCAN(Controller Area Network)などを介して相互に通信可能に構成される。
周辺監視センサ51は、移動体50の周辺状況を監視するセンサである。以降の説明では、周辺監視センサ51はカメラを例に説明するが、これに限られない。周辺監視センサ51としては、例えばカメラ、深度センサ、レーダ、及びLiDAR(Light Detection and Ranging)などが挙げられる。周辺監視センサ51は、例えば車両の前方、後方、右側方、及び左側方を撮影する複数のカメラを含んでいてもよい。周辺監視センサ51は、移動体50の内部を撮影するカメラを含んでいてもよく、また周囲温度を測定する温度センサを含んでもよい。
車両センサ52は、移動体50の各種状態、即ち移動体50の車両情報を検出するためのセンサである。車両センサ52は、例えば、車速を検出する車速センサ、操舵角を検出する操舵センサ、アクセルペダルの開度を検出するアクセル開度センサ、及びブレーキペダルの踏み込み量を検出するブレーキ踏力センサなどのセンサを含む。車両センサ52又は周辺監視センサ51は、GPS(Global Positioning System)等の衛星測位センサで例示できる、移動体50の位置情報を取得する位置情報センサを含み得る。
車両制御ECU53は、移動体50の走行制御などを行う電子制御装置である。一般に、電子制御装置は、プロセッサ、メモリ、I/O(Input / Output)、及びこれらを接続するバスを備える。車両制御ECU53は、車両センサ52が出力するセンサ情報に基づいて、例えば、燃料噴射量の制御、エンジン点火時期の制御、及びパワーステアリングのアシスト量の制御などの各種制御を実施する。
自動運転ECU54は、移動体50の自動運転を制御する電子制御装置である。自動運転ECU54は、周辺監視センサ51及び車両センサ52からセンサ情報を取得し、取得したセンサ情報に基づいて移動体50の自動運転を制御する。
通信装置55は、移動体50と基地局42a,42bとの間で無線通信を行う装置として構成される。通信装置55は、ハードウェア構成として、無線通信用アンテナ、送信機、及び受信機を含む。また、通信装置55は、プロセッサ、メモリ、I/O、及びこれらを接続するバスを備える。通信装置55内の各部の機能は、例えば、メモリに記憶された制御プログラムをプロセッサで実行することにより実現される。
サービス提供装置56は、サーバA(30a)からのサービスの提供を受けて、移動体50の内部又は移動体50の操作者にサービスを提供するための装置であり、ECU又はCPU等で構成することができる。このサービスを提供する処理は、サービス提供プログラムを汎用の情報処理装置に実行可能に組み込むことで、実施することもできる。また、サービス提供装置56は、移動体50に搭載されたナビゲーションシステム等の他の装置において、例えばサービス提供プログラムなどとして組み込むこともできる。
サービス提供装置56は、サービスの種類に応じて、車両制御ECU53又は自動運転ECU54に通知を行い車両内のシステムにおけるアラートを発動させることや、別途備えられたナビゲーションシステムなどに備えられた表示部又は音声出力部等からサービスを提供することができる。
図4の説明に戻る。通信制御装置20は、特定部1a、決定部1b、及び通知部1cのそれぞれに対応する特定部22、決定部23、及び通知部25を備えるとともに、記憶部21及び選択部24を備えることができる。また、図示しないが、通知部25での通知先となる制御主体には、その通知を受けて制御方法の制御を実行する制御部を備えることになる。また、図示しないが、通信制御装置20には、特定対象情報を取得する情報取得部を備えることができる。また、通信制御装置20は、各部の機能を別々の装置に分散して実装されることもでき、その分散方法は問わない。例えば、通信制御装置20は、記憶部21を備える装置、特定部22を備える装置、決定部23を備える装置、選択部24を備える装置、及び通知部25を備える装置を含んで構成されることができる。
記憶部21は、上記情報取得部で取得され、特定部22で使用する特定対象情報を一時的に保存する。また、記憶部21は、特定部22で特定対象情報に応じてボトルネックを特定するための対応関係や、特定されたボトルネックと決定部23で決定される制御方法との対応関係を記憶することができる。また、記憶部21は、決定される制御方法とその制御方法による制御を実行可能な制御主体との対応関係を記憶しておくこともでき、この対応関係は後述するように選択部24で使用されることができる。
特定部22は、特定対象情報に基づき、移動体50にサーバA(30a)からサービスを提供するサービス提供システムにおける通信問題のボトルネックを特定する。通信問題が発生する要因としては、上述の通り、例えば無線通信区間のトラフィック負荷、サーバA(30a)、移動体50の高負荷や障害をはじめとして、無線通信区間での無線品質、サーバA(30a)と移動体50との間の物理的距離などが挙げられる。
特定部22は、特定対象情報に基づき、無線通信区間、サーバA(30a)、及び移動体50のいずれがボトルネックとなって通信問題が発生しているのかを特定することができる。特定部22では、さらに細かく特定することもできる。例えば、特定部22は、無線通信区間についてのボトルネックとして、例えばトラフィック負荷がボトルネックとなっているのか、無線品質がボトルネックになっているのかを特定することができる。また、特定部22は、サーバA(30a)についてのボトルネックとして、サーバA(30a)の負荷がボトルネックとなっているのか、移動体50との物理的距離がボトルネックとなっているのかを特定することができる。なお、後者の物理的距離については、サーバA(30a)と移動体50との双方がボトルネックとなっている一例として捉えることもできる。移動体50がボトルネックになっている場合とは、移動体50の負荷がボトルネックになっていることを指すことができる。
ボトルネックの特定に用いる特定対象情報としては、ネットワークの混雑状況、各装置での当該サービスに係る処理に要する時間、各装置での当該サービスに係る処理の優先度、各装置での処理の混雑状況などを示す情報などが挙げられる。あるいは、特定対象情報とは、それらの情報を分析等で確認できるような情報も挙げられる。
具体的には、特定対象情報は、サーバA(30a)と移動体50との通信について各装置間でなされた通信の通信パケット情報(コア網40と基地局42aとの間の通信パケット情報も含み得る)を含むことができる。実測された通信パケット情報は、その実測時の通信トラフィックを表現した情報であると言える。但し、通信パケット情報以外の情報を使用して通信トラフィックを示すトラフィック情報を得て、それを特定対象情報とすることもできる。トラフィック情報とは、例えば、サーバA(30a)と移動体50との間でやり取りされるデータの通信量、遅延量、送信エラー率、再送率である。通信パケット情報やそれ以外のトラフィック情報は、コア網40、あるいはサーバA(30a)、あるいは移動体50から取得されることができるが、通信パケットの取得経路や取得方法は問わない。
特定対象情報は、移動体50の周辺環境を示す周辺情報を含むこともできる。移動体50の移動には周辺環境の相対的な変化も伴うことから、周辺環境には、移動体50自身の移動に関する情報を含むこともできる。ここで、周辺情報は、移動体50の周辺に物理的に存在する物体や環境などを示す情報とすることができ、例えば、高層ビル等の電波障害を引き起こす可能性のある建物、天候や気温、地震発生情報などを示す情報が挙げられる。天候や気温によっても、電波状況が変わることがあり、また地震が発生していた場合には無線通信区間が混んでいる場合や障害が発生している場合があるため、これらの情報を特定対象情報として用いることは有益となる。
これらの周辺情報は、例えば、位置情報センサをはじめとした周辺監視センサ51や車両センサ52で得られた位置情報等の情報として、移動体50又はサーバA(30a)から取得することができる。また、これらの周辺情報は、移動体50の周辺の他の移動体から取得することや、各地点に設置されたカメラで撮影されたカメラ映像(映像データ)を地点情報送信装置又はサーバA(30a)から取得することもできる。また、これらの周辺情報は、外部網60に接続された情報提供サーバから取得することもできる。
但し、周辺情報の取得経路や取得方法も問わない。周辺情報は、例えばC-V2X(Cellular Vehicle to Everything)通信等の車車間通信でやりとりされている情報を、RSU(Road Side Unit)で取得することができる。通信制御装置20は、そのRSUから情報を受信することで周辺情報を取得することもできる。
無論、周辺情報は、例示した情報のうちの1又は複数種類の取得元から取得された情報とすることができる。また、周辺情報は、1種類の取得元につき複数個の機器から取得された情報とすることもできる。例えば、周辺情報は、異なる設置箇所に設置された複数の情報取得機器から取得されることや、異なる情報を提供する複数の情報提供サーバから取得されることもできる。
上述したように、特定部22が通信問題のボトルネックを特定する方法は問わず、通信問題を生じさせている要因が複数存在する場合にもどの要因がボトルネックとなるかを特定する方法も問わない。例えば、各要因について、共通した遅延レベルなどの指標に変換し、各要因の遅延レベルを比較することで、ボトルネックを特定することができる。あるいは、各要因を予めランク付けしておき、生じた要因のうち最も高いランクを示す要因をボトルネックと特定することもできる。
決定部23は、無線通信区間がボトルネックとなっている場合には、制御方法として所定の無線制御の実行を決定する。所定の無線制御は、ボトルネックになる要因を解消できるような制御であればよく、その内容は問わない。
具体例を挙げると、トラフィック負荷がボトルネックとなっている場合には、決定部23は、通信制御装置20からコア網40に対してコア網40における優先度変更を指示する制御に決定することができる。コア網40が5GCの場合には、決定部23は、例えばNEF(Network Exposure Function)に対し、優先度変更の指示をするよう決定することができる。ここでの優先度変更は、コアネットワークシステムにおける他の通信に対する対象通信の優先度を高める変更とすることができ、5GCの場合には5Gサービス品質指標(5G QoS Identifier:5QI)を上げることを意味する。なお、NEFを指示先(通知先)としてNEFに優先度変更を指示した場合でも、例えば最終的には5GCが基地局42aに優先度変更の指示がなされ、基地局42aで優先度変更がなされてもよい。
無線品質がボトルネックとなっている場合には、基本的に上述のような優先度を高める制御では要因を解消できないため、決定部23は、無線周波数の変更やセルの変更(基地局の変更)などの無線制御を行うように決定する。
具体的に、無線品質がボトルネックとなっている場合の無線制御について例を挙げるが、以下の例は複数組み合わせることもできる。決定部23は、通信制御装置20からコア網40(例えば5GCのNEF)又は基地局42a等に対し、次のような無線制御を指示する決定を行うことができる。ここでの無線制御としては、例えばミリ波使用中の場合にはSub6に切り替えるなど、他周波数にハンドオーバさせる制御を採用することができる。また、他の制御例として、無線通信区間の再送発生を防ぐために、MCS(Modulation and Coding Scheme)の変更を指示して多値変調レベルを下げる制御を採用することもできる。また、他の制御例として、ビームフォーミングにより基地局42aからの信号を移動体50側に集中させる制御など、様々な制御を採用することができる。さらに他の制御例として、移動体50と通信する基地局42aを例えば基地局42bに変更する無線制御を採用することもできる。
決定部23は、サーバA(30a)がボトルネックとなっている場合には、制御方法として所定のサーバ制御の実行を決定する。サーバA(30a)がボトルネックとなっている場合とは、サーバA(30a)の処理負荷がボトルネックとなっている場合や、移動体50との物理的距離が長くネットワーク上の伝送遅延が大きいことがボトルネックとなっている場合を指すことができる。
上記所定のサーバ制御の例を挙げるが、以下の例は複数組み合わせることもできる。例えば、サーバ制御として、サーバA(30a)内での対象アプリケーションの処理優先度を高める制御を採用することができる。他のサーバ制御の例として、対象提供先(移動体50)についての処理優先度を高める制御を採用することもできる。これらの2つの例では、例えばサーバA(30a)が仮想化環境で動作している場合には、CPU、メモリなどの割り当てる計算資源を増やすことで、処理優先度を高めることができる。他のサーバ制御の例としては、サーバA(30a)における、優先度の低いアプリケーションを終了する制御、あるいは優先度の低いアプリケーションを他のサーバにオフロードする制御を採用することもできる。
他のサーバ制御の例としては、提供元サーバをサーバA(30a)から例えばサーバB(30b)等の切替先サーバへ切り替えるサーバ切替制御を採用することもできる。このサーバ切替制御はサーバ切替処理として説明した処理を実行させる制御であり、サーバA(30a)の処理負荷がボトルネックとなっている場合でも、移動体50との物理的距離が長いことがボトルネックとなっている場合でも適用することができる。
サーバ切替制御の具体例としては、例えば、切替先サーバに対象アプリケーションの実行を指示する制御を採用することができる。あるいは、サーバ切替制御としては、通信制御装置20又はサーバA(30a)又は切替先サーバが対象アプリケーションを切替先サーバに移動させる指示を行い、切替先でその対象アプリケーションの実行を指示する制御を採用することができる。
対象アプリケーションを切替先サーバで実行させる指示としては、移動体50と新たなサーバ(切替先サーバ)との通信経路確立のために、コア網40に対するルーティング変更(通信経路変更)又は通信アドレスの変更の指示を含むことができる。この指示先はコア網40とすることができる。5GCの場合、NEFを介して5GC内のルーティングを制御するとよい。このルーティング制御により、同じIPアドレスでも違うサーバに通信パケットが流れるように(ルーティングが変わって求めるサーバに通信パケットが流れるように)設定することができる。これにより、移動体50は、図4の実線で示すような経路の通信によりサーバA(30a)から享受していたサービスを、図4の破線で示すような経路の通信によりサーバB(30b)から享受することができるようになる。
なお、切替先サーバとしては、例えば通信制御装置20の制御対象のサーバの処理負荷と移動体50との物理的距離とを考慮し、処理負荷が低く物理的距離が短いサーバを、許容遅延を満たす可能性の高いサーバとして選択することができる。但し、切替先サーバの選択方法はこれに限らず、例えば、切替元サーバに対してサーバ切替制御時に切替先とするサーバを、予め決めておくこともできる。
決定部23は、移動体50がボトルネックになっている場合には、制御方法として所定の移動体制御(端末制御)の実行を決定する。
上記所定の移動体制御の例を挙げるが、以下の例は複数組み合わせることもできる。例えば、移動体制御として、移動体50内での対象アプリケーションの処理優先度を高める制御を採用することができる。例えば移動体50が仮想化環境で動作している場合には、CPU、メモリなどの割り当てる計算資源を増やすことで、処理優先度を高めることができる。他の移動体制御の例としては、移動体50における、優先度の低いアプリケーションを終了する制御を採用することもできる。
他の移動体制御の例としては、提供元サーバをサーバA(30a)から例えばサーバB(30b)等の切替先サーバへ切り替えるサーバ切替制御を採用することもできる。このサーバ切替制御はサーバ切替処理として説明した処理を実行させる制御である。
通知部25は、決定部23で決定された制御方法を、主体となって実行する制御主体に通知する。通知先(制御主体)については、制御方法の例に含めて例示した通りである。ここでは、サーバの処理負荷がボトルネックになっている場合の制御主体の例についてのみ、補足的に説明する。
この場合の制御主体はサーバA(30a)とすることもでき、制御方法を通知されたアプリケーション稼働中のサーバA(30a)は、自律分散型の装置としてその制御方法を最適な制御となるように判断して実行することができる。あるいは、例えばサーバA(30a)の権限外の制御が必要な場合、つまりサーバA(30a)だけでは解決できない場合において、制御主体は、上位のサーバ31又は管理サーバ32とすることもできる。このとき、制御方法を通知されたサーバ31又は管理サーバ32は、自機が管理する複数のサーバを含むシステム全体として最適な制御となるように全体最適視点で判断して、その制御方法を実行することができる。
いずれの例での判断においても、制御方法を通知された制御主体は、サーバA(30a)、サーバB(30b)、サーバ31などの処理負荷を分散できるように判断を行えばよい。管理サーバ32は、サービス提供元となり得るサーバA(30a)等のサーバを制御するために、全ての対象サーバについての処理負荷等の情報を収集する機能を備えることができるため、全体的に最適になるような判断を行うことができる。管理サーバ32は、例えば、サーバA(30a)の処理負荷の問題であればサーバA(30a)とサーバB(30b)との間の負荷分散を調整し、サーバ31の処理負荷の問題であればサーバ31と同層のサーバとの間の負荷分散を調整するとよい。
5GCについてのより具体的な制御主体の例を挙げる。O-RAN(Open - Radio Access Network)の仕組みのRIC(RAN Intelligent Controller)を使うことで、制御主体となる通知先を、基地局42aの例であるgNBに決定することができる。この場合、サーバA(30a)の例であるMECサーバがO-RANで規定されているnear RT(Real Time) RICやNon-RT RICと連携して、上記gNBに直接指示して、gNBを制御方法で規定されたように制御することができる。また、例えばgNBがnear RT RICの仕組みをサポートしている基地局である場合には、MECサーバを通知先として決定することもできる。その場合には、通知を受けたMECサーバがnear RT RICと連携して、制御方法で規定された無線制御を行うこともできる。
また、決定された制御方法を実行可能な制御主体(通知先の候補)が複数存在する場合もあるため、通知部25は、実際に主体となって実行する制御主体(通知先)に制御方法を通知することになる。通知先の候補は、例えば、コア網40、移動体50、サーバA(30a)、あるいは、切替先サーバ、サーバA(30a)又は切替先サーバを管理する管理サーバ等の管理ノード、あるいは、上位サーバを含むこともできる。また、通知先の候補は、通知部25が備えられる装置そのもの(当該装置の別の部位)を含むことができる。
通知先の候補から通知先を選択する処理は、選択部24で行うことができる。図1~図3を参照しながら説明した構成例では通知部1cが通知先を決定するものとして説明したが、ここで説明する構成例では、通信制御装置20が選択部24を備えるものであり、選択部24が通知先を選択する、つまり選択部24が通知先を決定するものとする。なお、選択部24は通知部25の一部として組み込むことができる。あるいは、決定部23で制御方法だけでなく通知先も決定する構成を採用した場合には、選択部24は決定部23の一部として組み込むこともできる。
選択部24は、決定部23で決定される制御方法と制御方法による制御を実行可能な制御主体との対応関係に応じて、実行可能な制御主体の中から通知先を選択する。この対応関係は、上述したように記憶部21に予め記憶させておくことができる。基本的には、選択部24は、上記対応関係に応じて、実行可能な制御主体の中からボトルネックとなる要因を解消可能な1つの制御主体を、通知先として選択するとよい。
また、選択部24は、その対応関係と、制御方法による制御に要する時間、制御方法による制御が及ぼす影響範囲、及び提供中のサービスに要求されるサービス品質のうちの少なくとも1つとに基づいて、通知先を選択することもできる。例えば、選択部24は、上記対応関係と、制御に要する時間、制御が及ぼす影響範囲、サービス品質の少なくとも1つとに基づき、解消可能か否かの判定も含めて実施し、通知先を、解消可能な1つの制御主体に通知先を決定することができる。上記の制御に要する時間は、ボトルネックを解消できるまでに要する時間である。
上記影響範囲としては、例えば、サーバ切替制御が制御方法として決定されている場合、切替先サーバにかかる負荷の程度などが挙げられる。提供するサービスにおいて、要求されるサービス品質を保つことは重要であるため、資源に拘って処理するなど装置の負荷だけを考慮するのではなく、サービス品質も考慮してシステム全体として最適化を図ることは有益である。そのために、対象サービスのサービス品質を参照することが有益であると言える。例えば、重要なアプリケーションや優先度の高いアプリケーションでサービスを提供している場合は、全体最適化を図る観点で、サービス品質を考慮しながら処理負荷の余裕があるサーバで実行することもできる。その場合には、通知先もそのような余裕があるサーバに切り替え指示ができるような、例えば管理サーバ32などに選択されることができる。
次に、図4の通信制御システム100における処理の流れについて、図6及び図7を参照しながら説明する。図6は、図4の通信制御システム100における処理例を説明するためのフロー図で、図7は、図6の処理例に用いられる対応関係テーブルの一例を示す図であり、記憶部21に記憶される対応関係を示す情報の一例である。なお、以下で説明する流れは一例に過ぎず、上述した様々な例が適用できる。
まず、特定部22は、取得されて記憶部21に一時的に保存された特定対象情報に基づき、通信問題のボトルネックの特定を行う(ステップS11)。ステップS11では、無線通信区間(a)、提供元サーバの処理負荷(b:但し(c)を除く)、提供元サーバと移動体との距離(c)、移動体の処理負荷(d)のいずれにボトルネックがあるかを特定する。上記aについては、無線通信区間のトラフィック負荷(a-1)にボトルネックがあるのか、無線通信区間の通信品質(a-2)にボトルネックがあるのかのいずれであるかも特定する。
決定部23は、特定部22での特定結果を受けて、上記a~dのそれぞれについてボトルネックがあるか否かを判定する(ステップS12,S14,S16,S18)。
ステップS12でYESの場合には、図7の対応テーブルを参照し、所定の無線制御の実行を決定し(ステップS13)、その制御主体となる通知先に通知する(ステップS20)。ステップS13では、決定部23は、上記a-1、上記a-2のいずれがボトルネックとなっているかの特定結果から図7の対応テーブルを参照し、所定の無線制御を決定する。トラフィック負荷がボトルネックとなっている場合には対象無線通信の優先度を上げる(高める)制御を実行するように決定し、無線通信品質がボトルネックとなっている場合には周波数変更制御等、無線制御を変更する制御を実行するように決定する。そして、いずれの場合にも、ステップS20において、通知部25は、図7の対応テーブルを参照してコア網40を制御主体となる通知先に決定する。
ステップS14でYESの場合には、図7の対応テーブルを参照し、所定のサーバ制御の実行を決定し(ステップS15)、その制御主体となる通知先に通知する(ステップS20)。ステップS15では、決定部23は、提供元サーバ(この例ではサーバA(30a))の処理負荷がボトルネックとなっているといった特定結果から図7の対応テーブルを参照し、対象アプリケーションの優先度を上げるようなサーバ制御を決定する。この場合、ステップS20において、通知部25は、図7の対応テーブルを参照してサーバA(30a)を制御主体となる通知先に決定する。
ステップS16でYESの場合には、図7の対応テーブルを参照し、所定のサーバ切替制御の実行を決定し(ステップS17)、その制御主体となる通知先に通知する(ステップS20)。ステップS17では、決定部23は、提供元サーバ(この例ではサーバA(30a))と移動体50との間の物理的距離がボトルネックとなっているといった特定結果から図7の対応テーブルを参照する。そして、決定部23は、提供元サーバを物理的距離が移動体50と近いサーバ(例えばサーバB(30b))に切り替えるようなサーバ切替制御を決定する。この場合、ステップS20において、通知部25は、図7の対応テーブルを参照して、サーバA(30a)等のサービス提供可能なサーバを管理する管理サーバ32を、制御主体となる通知先に決定する。
ステップS18でYESの場合には、図7の対応テーブルを参照し、所定の移動体制御の実行を決定し(ステップS19)、その制御主体となる通知先に通知する(ステップS20)。ステップS19では、決定部23は、移動体50の処理負荷がボトルネックとなっているといった特定結果から図7の対応テーブルを参照し、移動体50における対象アプリケーションの優先度を上げるような移動体制御を決定する。この場合、ステップS20において、通知部25は、図7の対応テーブルを参照して移動体50を制御主体となる通知先に決定する。
ステップS12,S14,S16,S18のいずれの処理を経てステップS20が実行された場合でも、ステップS20で通知先が決定された場合には、通信制御装置20は、その通知先に制御方法を通知する。そして、通知先での制御方法の実行がなされ、ボトルネックとなる要因が解消されることになる。なお、ステップS12,S13の処理、ステップS14,S15の処理、ステップS16,S17の処理、及びステップS18,S19の処理の順序は問わない。
また、ステップS11~S20の処理は、図3の処理について例示したように、所定間隔で実行するなど、所定の基準に基づき実行されることができる。また、ステップS11~S20の処理を、ボトルネックと言える要因がなくなるまでを1セットとして実行することもでき、これにより大きな通信問題から順番に解消していくことができる。
また、説明の簡略化のため、図7の対応テーブルでは制御方法と制御主体とが1対1の対応関係を持つ例を挙げたが、1つの制御方法に対して、制御主体となり得る候補を複数記述しておくこともできる。その場合には、選択部24が、制御方法による制御に要する時間、制御方法による制御が及ぼす影響範囲、及び提供中のサービスに要求されるサービス品質のうちの少なくとも1つに基づいて、通知先を選択することもできる。
また、図4の通信制御システム100における通信制御装置20は、図8に示す通信制御システム200のようにサーバ31に組み込むことや、図9に示す通信制御システム300のようにサーバA(30a)に組み込むこともできる。図8及び図9はいずれも、図1の通信制御システム1の更に他の構成例を示すブロック図である。なお、通信制御装置20は、サーバB(30b)に組み込むこともできる。無論、通信制御装置20は、複数のサーバに組み込むこともできる。
図8で例示する通信制御システム200、図9で例示する通信制御システム300、図4で例示する通信制御システム100は、互いに、特定されるボトルネックによっては通知先が変わることになる。よって、通信制御システムをどのようなシステム構成で構築するかによって、通知先もシステム構成に合わせて設定しておくとよい。また、通信制御システム100,200,300は、互いに、特定されるボトルネックによって、決定される制御方法も変わる場合もある。よって、通知先についてと同様に通信制御システムをどのようなシステム構成で構築するかによって、決定される制御方法もシステム構成に合わせて設定しておくとよい。
以上に説明したように、本実施形態に係る通信制御システム又は通信制御装置は、例えば各交差点に基地局及びサービス提供元となり得るサーバを配置し、移動体にサービスを提供するサービス提供システムで、通信問題のボトルネック対応として利用されることができる。そのため、本実施形態によれば、このようなサービス提供システムにおいて通信問題のボトルネックとなる要因に対処させる通知を行うことが可能になる。例えば図4~図8を参照しながら説明したように、本実施形態では、遅延発生等の通信問題を細分化して分析し、そのボトルネックを特定し、そのボトルネックに応じた解消のための適切な制御を実施することができる。
(第2実施形態)
第2実施形態について、図4の構成例を参照しながら、第1実施形態における図4の構成例での動作との相違点を中心に説明するが、本実施形態では第1実施形態で説明した様々な例が適用できる。
本実施形態における選択部24は、例えば図7の対応テーブルなどの対応関係に応じてサーバA(30a)が実行可能な制御主体として選択された場合に、ボトルネックとなる要因が解消可能か否かを判定する。なお、この判定は、例えば所定時間以内に解消可能か否かの判定とすることもできる。また、この判定は、決定された制御方法での制御を実施することなく事前に予測する方法と、決定された制御方法で実際に制御を実施した結果として判定する方法と、のいずれを採用することもできる。
そして、選択部24は、要因が解消できないと判定した場合、サーバA(30a)を管理する管理サーバ32等の管理ノードと、複数の他のサーバとの中から、通知先を1つ選択する(制御主体として選択する)。このような選択を可能とするために、上記の対応関係には、その要因に関して、サーバA(30a)と管理ノードと複数の他のサーバとが実行可能な制御主体として記述されていればよい。なお、要因がサーバA(30a)のみ解消可能な要因である場合には、例えばサーバA(30a)を通知先として再通知して、サーバA(30a)でリトライさせることもできる。
ここで、複数の他のサーバとは、サーバA(30a)とは異なり且つサービスを提供可能なサーバを指し、図4の例では、例えばサーバB(30b)、サーバ31を指すことができる。このように、本実施形態では、ボトルネックの特定を実行した装置がサーバA(30a)であっても、それ以外の装置に制御方法が通知されることになる。
例えば、選択部24は、要因がサーバA(30a)で解消できないと判定した場合、制御方法による制御に要する時間(つまりボトルネックの解消のための対応時間)に応じて、管理ノードと複数の他のサーバとの中から通知先を1つ選択することができる。ここの例では、要因がサーバA(30a)で解消できない場合に、上記対応時間に応じて、決定部23で決定される制御方法を実行する制御主体を変えることができる。
あるいは、選択部24は、要因がサーバA(30a)で解消できないと判定した場合、複数の他のサーバ(例えばサーバB(30b)、サーバ31)の負荷に応じて、管理ノードと複数の他のサーバとの中から通知先を1つ選択することもできる。複数の他のサーバの負荷に応じて、対応に要する時間が変わるためである。この例では、要因がサーバA(30a)で解消できない場合に、上記複数の他のサーバの負荷に応じて、決定部23で決定される制御方法を実行する制御主体を変えることができる。この例では、複数の他のサーバの負荷についての情報は、図4の構成例でいうところの管理サーバ32で監視することができるため、上記負荷についての情報をもっている管理サーバ32が通知先として選択されることが、システム構成上、好ましい。但し、この例でも、サーバB(30b)、サーバ31が通知先として選択されることもできる。
このような通信制御方法の処理例について、図10を参照しながら説明する。図10は、本実施形態に係る通信制御システムにおける通信制御方法の一例を説明するためのフロー図である。
この通信制御方法では、まず、特定部22が、移動体に提供元サーバからサービスを提供するサービス提供システムにおける通信問題のボトルネックを特定する特定処理を実行する(ステップS31)。次いで、決定部23が、特定処理で特定されたボトルネックに応じて制御方法を決定する決定処理を実行する(ステップS32)。ステップS32の処理は、例えば図6のステップS12~S19の処理を適用することもできる。
ステップS32に次いで、選択部24は、決定処理で決定された制御方法を実行する制御主体として提供元サーバ(この例ではサーバA(30a))が選択されているか否かを、例えば図7の対応テーブルなどから判定する(ステップS33)。
図7の対応テーブルでは制御方法と制御主体とが1対1の対応関係を持つ例を挙げたが、1つの制御方法に対して、制御主体となり得る候補を複数記述しておくこともできる。その場合には、選択部24が、制御方法による制御に要する時間、制御方法による制御が及ぼす影響範囲、及び提供中のサービスに要求されるサービス品質のうちの少なくとも1つに基づいて、通知先を選択することができる。ステップS33では、このようにして選択された通知先が提供元サーバであるか否かを判定することもできる。あるいは、1つの制御方法に対して、制御主体となり得る候補を複数記述しておく場合において、選択部24は、ステップS33において、その候補の中に提供元サーバが含まれているか否かを判定することもできる。
ステップS33でNOの場合には、通知部25が、決定処理で決定された制御方法を、制御主体となる通知先(この場合にはサーバA(30a))に通知する通知処理を実行する(ステップS36)。
ステップS33でYESの場合には、選択部24は、提供元サーバでボトルネックとなった要因の解消が可能か否かを判定する(ステップS34)。ステップS34でYESの場合には、通知部25が、決定処理で決定された制御方法を、制御主体となる通知先(この場合にはサーバA(30a))に通知する通知処理を実行する(ステップS36)。
一方で、ステップS34でNOの場合には、選択部34は、通知先を、管理ノード又は他のサーバに決定し(ステップS35)、通知部25が、決定処理で決定された制御方法を、制御主体となる通知先に通知する通知処理を実行する(ステップS36)。ステップS35での決定は、所定の基準に基づき実行されることができる。例えば、選択部24は、制御方法による制御に要する時間、制御方法による制御が及ぼす影響範囲、及び提供中のサービスに要求されるサービス品質のうちの少なくとも1つに基づいて、管理ノード又は他のサーバの中から通知先を決定することができる。
そして、ステップS36の通知に基づき、通知を受けた制御主体が決定処理で決定された制御方法を実行し、ボトルネックとなるような通信問題を解消する。通知内にどのような制御を実行するのかを示す情報を含めておいてもよいし、通知先において、予め通知があった時点でどのような制御を実行するのかを定めておいてもよい。
また、ステップS31~S36の処理は、図3の処理について例示したように、所定間隔で実行するなど、所定の基準に基づき実行されることができる。また、ステップS31~S36の処理を、ボトルネックと言える要因がなくなるまでを1セットとして実行することもでき、これにより大きな通信問題から順番に解消していくことができる。
上述のように、本実施形態では、第1実施形態の効果に加え、提供元サーバがボトルネックとなる要因を解消できない場合でも他の装置にその要因を解消させることができるようになる。
また、同様の考え方は、制御方法がサーバ切替処理である場合で、且つ、切替先サーバ(例えばサーバB(30b))が制御主体として選択される場合にも適用することができる。具体的には、図10の説明において、ステップS33では切替先サーバであるか否かを判定し、ステップS34では切替先サーバで要因が解消可能か否かを判定する。そして、ステップS35では、管理ノード又は他のサーバ(切替先サーバではないサーバ)を通知先に決定することになる。このような処理により、切替先サーバがボトルネックとなる要因を解消できない場合でも他の装置にその要因を解消させることができるようになる。
(その他)
本開示において、通信制御装置、サーバ、移動体通信端末装置等の装置は、コンピュータ装置として構成され得る。図11は、コンピュータ装置の構成例を示すブロック図である。コンピュータ装置500は、制御部として、CPU(Central Processing Unit)510、記憶部520、ROM(Read Only Memory)530、及びRAM(Random Access Memory)540を備える。さらに、コンピュータ装置500は、通信インタフェース(IF:Interface)550、及びユーザインタフェース560を備えることができる。
そして、コンピュータ装置500は、通信制御装置2,20のいずれとしても用いられることができる。また、コンピュータ装置500は、サービスを提供するサーバ(例えばサーバA(30a)、サーバB(30b))、サーバ31、及び管理サーバ32のいずれとして用いられることができる。また、コンピュータ装置500は、移動体50に搭載される情報処理装置として用いられることができ、また移動体50に持ち込まれる移動体通信端末装置として用いられることができる。
通信インタフェース550は、有線通信手段又は無線通信手段などを介して、コンピュータ装置500と通信ネットワークとを接続するためのインタフェースである。ユーザインタフェース560は、例えばディスプレイなどの表示部を含むことができる。また、ユーザインタフェース560は、キーボード、マウス、及びタッチパネルなどの入力部を含むことができる。
記憶部520は、各種のデータを保持できる補助記憶装置である。記憶部520は、必ずしもコンピュータ装置500の一部である必要はなく、外部記憶装置であってもよいし、ネットワークを介してコンピュータ装置500に接続されたクラウドストレージであってもよい。
ROM530は、不揮発性の記憶装置である。ROM530には、例えば比較的容量が少ないフラッシュメモリなどの半導体記憶装置が用いられる。CPU510が実行するプログラムは、記憶部520又はROM530に格納され得る。記憶部520又はROM530は、コンピュータ装置500内の各部の機能を実現するための各種プログラムを記憶する。
プログラムは、コンピュータに読み込まれた場合に、実施形態で説明された1又はそれ以上の機能をコンピュータに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、非一時的なコンピュータ可読媒体又は実体のある記憶媒体に格納されてもよい。限定ではなく例として、コンピュータ可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリ、solid-state drive(SSD)又はその他のメモリ技術、Compact Disc (CD)、digital versatile disc(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、一時的なコンピュータ可読媒体又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピュータ可読媒体又は通信媒体は、電気的、光学的、音響的、またはその他の形式の伝搬信号を含む。
RAM540は、揮発性の記憶装置である。RAM540には、DRAM(Dynamic Random Access Memory)又はSRAM(Static Random Access Memory)などの各種半導体メモリデバイスが用いられる。RAM540は、データなどを一時的に格納する内部バッファとして用いられ得る。CPU510は、記憶部520又はROM530に格納されたプログラムをRAM540に展開し、実行する。CPU510がプログラムを実行することで、コンピュータ装置500内の各部の機能が実現され得る。CPU510は、データなどを一時的に格納できる内部バッファを有してもよい。
以上、本開示の実施形態を詳細に説明したが、本開示は、上記した実施形態に限定されるものではなく、本開示の趣旨を逸脱しない範囲で上記実施形態に対して変更や修正を加えたものも、本開示に含まれる。
例えば、上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
移動体に提供元サーバからサービスを提供するサービス提供システムにおける通信問題のボトルネックを特定する特定手段と、
前記特定手段で特定された前記ボトルネックに応じて制御方法を決定する決定手段と、
前記決定手段で決定された前記制御方法を、前記制御方法による制御を実行する制御主体となる通知先に通知する通知手段と、
を備える通信制御システム。
(付記2)
前記決定手段で決定される前記制御方法と前記制御方法による制御を実行可能な制御主体との対応関係に応じて、前記実行可能な制御主体の中から前記通知先を選択する選択手段を、さらに備える、
付記1に記載の通信制御システム。
(付記3)
前記選択手段は、前記対応関係と、前記制御方法による制御に要する時間、前記制御方法による制御が及ぼす影響範囲、及び前記サービスに要求されるサービス品質のうちの少なくとも1つに基づいて、前記通知先を選択する、
付記2に記載の通信制御システム。
(付記4)
前記選択手段は、前記対応関係に応じて、前記実行可能な制御主体の中から前記ボトルネックとなる要因を解消可能な制御主体を、前記通知先として選択する、
付記2又は3に記載の通信制御システム。
(付記5)
前記選択手段は、前記対応関係に応じて前記提供元サーバが前記実行可能な制御主体として選択された場合に、前記ボトルネックとなる要因が解消可能か否かを判定し、前記要因が解消できないと判定した場合、前記提供元サーバを管理する管理ノードと、前記提供元サーバとは異なり且つ前記サービスを提供可能な複数の他のサーバとの中から、前記通知先を1つ選択する、
付記2又は3に記載の通信制御システム。
(付記6)
前記特定手段は、無線通信区間、前記提供元サーバ、及び前記移動体のいずれが前記ボトルネックとなって前記通信問題が発生しているのかを特定し、
前記決定手段は、
前記無線通信区間が前記ボトルネックとなっている場合には、前記制御方法として所定の無線制御の実行を決定し、
前記提供元サーバが前記ボトルネックとなっている場合には、前記制御方法として所定のサーバ制御の実行を決定し、
前記移動体が前記ボトルネックになっている場合には、前記制御方法として所定の移動体制御の実行を決定する、
付記1~5のいずれか1項に記載の通信制御システム。
(付記7)
移動体に提供元サーバからサービスを提供するサービス提供システムにおける通信問題のボトルネックを特定する特定手段と、
前記特定手段で特定された前記ボトルネックに応じて制御方法を決定する決定手段と、
前記決定手段で決定された前記制御方法を、前記制御方法による制御を実行する制御主体となる通知先に通知する通知手段と、
を備える通信制御装置。
(付記8)
前記決定手段で決定される前記制御方法と前記制御方法による制御を実行可能な制御主体との対応関係に応じて、前記実行可能な制御主体の中から前記通知先を選択する選択手段を、さらに備える、
付記7に記載の通信制御装置。
(付記9)
前記選択手段は、前記対応関係と、前記制御方法による制御に要する時間、前記制御方法による制御が及ぼす影響範囲、及び前記サービスに要求されるサービス品質のうちの少なくとも1つに基づいて、前記通知先を選択する、
付記8に記載の通信制御装置。
(付記10)
前記選択手段は、前記対応関係に応じて、前記実行可能な制御主体の中から前記ボトルネックとなる要因を解消可能な制御主体を、前記通知先として選択する、
付記8又は9に記載の通信制御装置。
(付記11)
前記選択手段は、前記対応関係に応じて前記提供元サーバが前記実行可能な制御主体として選択された場合に、前記ボトルネックとなる要因が解消可能か否かを判定し、前記要因が解消できないと判定した場合、前記提供元サーバを管理する管理ノードと、前記提供元サーバとは異なり且つ前記サービスを提供可能な複数の他のサーバとの中から、前記通知先を1つ選択する、
付記8又は9に記載の通信制御装置。
(付記12)
前記特定手段は、無線通信区間、前記提供元サーバ、及び前記移動体のいずれが前記ボトルネックとなって前記通信問題が発生しているのかを特定し、
前記決定手段は、
前記無線通信区間が前記ボトルネックとなっている場合には、前記制御方法として所定の無線制御の実行を決定し、
前記提供元サーバが前記ボトルネックとなっている場合には、前記制御方法として所定のサーバ制御の実行を決定し、
前記移動体が前記ボトルネックになっている場合には、前記制御方法として所定の移動体制御の実行を決定する、
付記7~11のいずれか1項に記載の通信制御装置。
(付記13)
移動体に提供元サーバからサービスを提供するサービス提供方法における通信問題のボトルネックを特定する特定処理を実行し、
前記特定処理で特定された前記ボトルネックに応じて制御方法を決定する決定処理を実行し、
前記決定処理で決定された前記制御方法を、前記制御方法による制御を実行する制御主体となる通知先に通知する通知処理を実行する、
通信制御方法。
(付記14)
前記決定処理で決定される前記制御方法と前記制御方法による制御を実行可能な制御主体との対応関係に応じて、前記実行可能な制御主体の中から前記通知先を選択する選択処理を、さらに実行する、
付記13に記載の通信制御方法。
(付記15)
前記選択処理は、前記対応関係と、前記制御方法による制御に要する時間、前記制御方法による制御が及ぼす影響範囲、及び前記サービスに要求されるサービス品質のうちの少なくとも1つに基づいて、前記通知先を選択する、
付記14に記載の通信制御方法。
(付記16)
前記選択処理は、前記対応関係に応じて、前記実行可能な制御主体の中から前記ボトルネックとなる要因を解消可能な制御主体を、前記通知先として選択する、
付記14又は15に記載の通信制御方法。
(付記17)
前記選択処理は、前記対応関係に応じて前記提供元サーバが前記実行可能な制御主体として選択された場合に、前記ボトルネックとなる要因が解消可能か否かを判定し、前記要因が解消できないと判定した場合、前記提供元サーバを管理する管理ノードと、前記提供元サーバとは異なり且つ前記サービスを提供可能な複数の他のサーバとの中から、前記通知先を1つ選択する、
付記14又は15に記載の通信制御方法。
(付記18)
前記特定処理は、無線通信区間、前記提供元サーバ、及び前記移動体のいずれが前記ボトルネックとなって前記通信問題が発生しているのかを特定し、
前記決定処理は、
前記無線通信区間が前記ボトルネックとなっている場合には、前記制御方法として所定の無線制御の実行を決定し、
前記提供元サーバが前記ボトルネックとなっている場合には、前記制御方法として所定のサーバ制御の実行を決定し、
前記移動体が前記ボトルネックになっている場合には、前記制御方法として所定の移動体制御の実行を決定する、
付記13~17のいずれか1項に記載の通信制御方法。
(付記19)
コンピュータに、
移動体に提供元サーバからサービスを提供するサービス提供方法における通信問題のボトルネックを特定する特定処理を実行し、
前記特定処理で特定された前記ボトルネックに応じて制御方法を決定する決定処理を実行し、
前記決定処理で決定された前記制御方法を、前記制御方法による制御を実行する制御主体となる通知先に通知する通知処理を実行する、
プログラム。
(付記20)
前記コンピュータに、
前記決定処理で決定される前記制御方法と前記制御方法による制御を実行可能な制御主体との対応関係に応じて、前記実行可能な制御主体の中から前記通知先を選択する選択処理を、さらに実行させる、
付記19に記載のプログラム。
(付記21)
前記選択処理は、前記対応関係と、前記制御方法による制御に要する時間、前記制御方法による制御が及ぼす影響範囲、及び前記サービスに要求されるサービス品質のうちの少なくとも1つに基づいて、前記通知先を選択する、
付記20に記載のプログラム。
(付記22)
前記選択処理は、前記対応関係に応じて、前記実行可能な制御主体の中から前記ボトルネックとなる要因を解消可能な制御主体を、前記通知先として選択する、
付記20又は21に記載のプログラム。
(付記23)
前記選択処理は、前記対応関係に応じて前記提供元サーバが前記実行可能な制御主体として選択された場合に、前記ボトルネックとなる要因が解消可能か否かを判定し、前記要因が解消できないと判定した場合、前記提供元サーバを管理する管理ノードと、前記提供元サーバとは異なり且つ前記サービスを提供可能な複数の他のサーバとの中から、前記通知先を1つ選択する、
付記20又は21に記載のプログラム。
(付記24)
前記特定処理は、無線通信区間、前記提供元サーバ、及び前記移動体のいずれが前記ボトルネックとなって前記通信問題が発生しているのかを特定し、
前記決定処理は、
前記無線通信区間が前記ボトルネックとなっている場合には、前記制御方法として所定の無線制御の実行を決定し、
前記提供元サーバが前記ボトルネックとなっている場合には、前記制御方法として所定のサーバ制御の実行を決定し、
前記移動体が前記ボトルネックになっている場合には、前記制御方法として所定の移動体制御の実行を決定する、
付記19~23のいずれか1項に記載のプログラム。