(57)【要約】  サービス提供管理システムは、複数のサービス提供装置６，７からの情報処理サービスをユーザ側装置４，５へ提供する。サービス提供管理システムは、複数のサービス提供装置がそれぞれ提供する情報処理サービスのサービス品質情報を取得して管理するサービス品質管理部１１３と、ユーザからのサービス品質に関するユーザ要求とサービス品質管理部で管理するサービス品質情報とに基づいて、複数のサービス提供装置のうちユーザ側装置に対応づけるサービス提供装置を少なくとも一つ選択するサービス選択部１１２と、ユーザ側装置とサービス選択部により選択されたサービス提供装置とを対応付け、ユーザ側装置からのサービス要求を対応づけたサービス提供装置へ転送し、そのサービス提供装置での情報処理サービスの結果をユーザ側装置へ送信するデータ転送部２１２を備える。
2018109914.tif 000002
【特許請求の範囲】
【請求項１】
複数のサービス提供装置からの情報処理サービスをユーザ側装置へ提供するサービス提供管理システムであって、
前記複数のサービス提供装置がそれぞれ提供する情報処理サービスの品質に関するサービス品質情報を取得して管理するサービス品質管理部と、
ユーザからのサービス品質に関するユーザ要求と前記サービス品質管理部で管理するサービス品質情報とに基づいて、前記複数のサービス提供装置のうち前記ユーザ側装置に対応づけるサービス提供装置を少なくとも一つ選択するサービス選択部と、
前記ユーザ側装置と前記サービス選択部により選択されたサービス提供装置とを対応付け、前記ユーザ側装置からのサービス要求を前記対応づけたサービス提供装置へ転送し、前記対応づけたサービス提供装置での情報処理サービスの結果を前記ユーザ側装置へ送信するデータ転送部と、
を備えるサービス提供管理システム。
【請求項２】
前記複数のサービス提供装置のうち前記ユーザ側装置に対応づけられているサービス提供装置から、前記サービス選択部により選択されるサービス提供装置へ、前記ユーザ側装置に情報処理サービスを提供するサービス提供装置を移行させるサービス移行部をさらに備える、
請求項１に記載のサービス提供管理システム。
【請求項３】
前記サービス選択部は、前記ユーザ側装置に対応づけているサービス提供装置のうち情報処理サービスの品質が前記ユーザ要求を満たさないサービス提供装置を移行元のサービス提供装置として選択し、前記複数のサービス提供装置の中から前記ユーザ要求を満たすサービス提供装置を移行先のサービス提供装置として選択し、選択した前記移行元のサービス提供装置および前記移行先のサービス提供装置についての情報を前記サービス移行部へ通知し、
前記サービス移行部は、前記サービス選択部からの通知に基づいて、前記移行元のサービス提供装置から前記移行先のサービス提供装置へ、前記ユーザ側装置に情報処理サービスを提供するサービス提供装置を移行させる、
請求項２に記載のサービス提供管理システム。
【請求項４】
前記サービス移行部は、前記移行元のサービス提供装置から情報処理サービスの引継に必要な中間データを取得し、前記取得した中間データを前記移行先のサービス提供装置で使用可能なデータ形式に変換し、前記データ形式に変換した中間データを前記移行先のサービス提供装置に供給する、
請求項３に記載のサービス提供管理システム。
【請求項５】
前記ユーザ側装置と前記複数のサービス提供装置との間に設けられるデータ転送装置と、前記データ転送装置を管理するサービス管理装置とをさらに備え、
前記データ転送装置は前記データ転送部を含み、
前記サービス管理装置は前記サービス品質管理部と前記サービス選択部とを含む、
請求項１に記載のサービス提供管理システム。
【請求項６】
前記ユーザ側装置と前記複数のサービス提供装置との間に設けられるデータ転送装置と、前記データ転送装置を管理するサービス管理装置とをさらに備え、
前記データ転送装置は前記データ転送部を含み、
前記サービス管理装置は前記サービス品質管理部と前記サービス選択部と前記サービス移行部とを含む、
請求項２に記載のサービス提供管理システム。
【請求項７】
前記ユーザ側装置と前記複数のサービス提供装置との間に設けられるデータ転送装置と、前記データ転送装置を管理するサービス管理装置とをさらに備え、
前記データ転送装置は、前記データ転送部と、前記サービス品質管理部のうち前記サービス品質情報の転送に関わる部分と、前記サービス選択部のうち選択結果を受信する部分と前記サービス移行部のうち前記移行元のサービス提供装置および前記移行先のサービス提供装置への通信に関する部分とを含む、
請求項３に記載のサービス提供管理システム。
【請求項８】
前記ユーザ側装置は、複数のセンサ装置と、前記複数のセンサ装置と前記サービス提供装置との通信を管理するゲートウェイ装置とを含む、
請求項１に記載のサービス提供管理システム。
【請求項９】
前記転送装置は、前記ゲートウェイ装置内に設けられている、
請求項８に記載のサービス提供管理システム。
【請求項１０】
前記ユーザ要求は、情報処理サービスについてのキャパシティ、遅延時間、信頼性のいずれか少なくとも一つについての要求を含む、
請求項１に記載のサービス提供管理システム。
【請求項１１】
ユーザの使用するユーザクライアント装置との間で情報を交換するユーザアクセス部をさらに備え、
前記ユーザアクセス部は、前記ユーザクライアント装置から前記ユーザ要求を受領するとともに、前記ユーザ側装置に対応づけられているサービス提供装置に関するサービス品質情報を少なくとも前記ユーザクライアント装置に提供する、
請求項１に記載のサービス提供管理システム。
【請求項１２】
前記ユーザアクセス部は、前記ユーザ側装置に対応づけられている各サービス提供装置のサービス結果を統合して、前記ユーザクライアント装置に提供する、
請求項１１に記載のサービス提供管理システム。
【請求項１３】
複数のサービス提供装置からの情報処理サービスをユーザ側装置へ提供するサービス提供管理方法であって、
前記複数のサービス提供装置がそれぞれ提供する情報処理サービスの品質に関するサービス品質情報を取得するステップと、
ユーザからのサービス品質に関するユーザ要求を受領するステップと、
前記受領したユーザ要求と前記サービス品質情報とに基づいて、前記複数のサービス提供装置のうち前記ユーザ側装置に対応づけるサービス提供装置を少なくとも一つ選択するステップと、
前記ユーザ側装置と前記選択されたサービス提供装置とを対応付けるステップと、
前記ユーザ側装置からのサービス要求を前記対応づけたサービス提供装置へ転送し、前記対応づけたサービス提供装置での情報処理サービスの結果を前記ユーザ側装置へ送信するステップと、
を実行するサービス提供管理方法。
【請求項１４】
前記複数のサービス提供装置のうち前記ユーザ側装置に対応づけられているサービス提供装置から前記選択されるサービス提供装置へ、前記ユーザ側装置に情報処理サービスを提供するサービス提供装置を移行させるステップをさらに備える、
請求項１３に記載のサービス提供管理方法。
【請求項１５】
前記ユーザ側装置に対応づけるサービス提供装置を少なくとも一つ選択するステップでは、前記ユーザ側装置に対応づけているサービス提供装置のうち情報処理サービスの品質が前記ユーザ要求を満たさないサービス提供装置を移行元のサービス提供装置として選択し、前記複数のサービス提供装置の中から前記ユーザ要求を満たすサービス提供装置を移行先のサービス提供装置として選択し、選択した前記移行元のサービス提供装置および前記移行先のサービス提供装置についての情報を、前記ユーザ側装置に情報処理サービスを提供するサービス提供装置を移行させるステップへ通知し、
前記サービス提供装置を移行させるステップでは、前記通知に基づいて、前記移行元のサービス提供装置から前記移行先のサービス提供装置へ、前記ユーザ側装置に情報処理サービスを提供するサービス提供装置を移行させる、
請求項１４に記載のサービス提供管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービス提供管理システムおよびサービス提供管理方法に関する。
【背景技術】
【０００２】
従来の通信ネットワークにおけるサービスでは、ユーザは、必要なサービス機能と、サービスを利用するためのコストと、サービスに対する品質要求とに基づいて、サービスを提供するプロバイダを事前に選定し、選定されたプロバイダから提供されるサービスを受ける。【０００３】
しかし、ネットワークの利活用が広がるに従い、類似なサービス機能を提供するプロバイダの数が増加したため、ユーザは、多くのプロバイダの中からユーザに適したプロバイダを選定することが難しくなっている。【０００４】
ところで最近では、インターネットを介してあらゆるモノの情報流通を提供するＩｏＴ（Internet of Things）という技術が注目されている。ＩｏＴの運用は、数日ごと〜数週間ごとのような比較的高い頻度で、ユーザの端末構成やユーザの受けるサービス機能などが変化すると言われる。このように、サービスを利用するユーザ側の環境が頻繁に変更されることも、ユーザによるプロバイダ選定を難しくしている。【０００５】
このようなＩｏＴの運用などでは、プロバイダが提供しているサービスの実際の品質状況に基づいて、ユーザの品質要求に合う適切なサービスを受けることのできるように、動的にサービス品質を制御することが望ましい。【０００６】
ユーザの品質要求に基づき、動的にサービス品質を制御する技術として、動的スケーラビリティの品質要求を可能にする、リソースの割当て方法がある（特許文献１）。特許文献１には、複数の計算ノードを含むリソースを有するサーバ・システムにおいて、クライアント・コンピュータからのリクエストに応じて、異なる準備状態にある複数のインスタンスを用意するステップと、クライアント・コンピュータから動的スケーリング条件のリクエストを受け取るステップと、動的スケーリング条件を満たすように異なる準備状態にある複数のインスタンスを組み合わせて起動するステップとを有する、動的にリソースを割り当てる方法が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−２２１２７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の動的にサービス品質を制御する技術では、制御対象のサービス品質が時間とともに変化するものとは捉えておらず、ユーザ要求の変化に応じてリソースを動的に割り当てるに留まる。そのため、従来技術では、サービス品質が時間とともに変化するプロバイダに対して制御することができない。【０００９】
本発明は上記課題に鑑みてなされたもので、その目的は、情報処理サービスの品質が変化する場合でも、ユーザ要求に応じたサービスを提供することができるようにしたサービス提供管理システムを提供することにある。本発明の他の目的は、サービス品質が安定していないサービス提供装置の中からサービスを選択する場合でも、ユーザ要求に対応したサービスを提供できるようにするサービス提供管理システムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決すべく、本発明に従うサービス提供管理システムは、複数のサービス提供装置からの情報処理サービスをユーザ側装置へ提供するサービス提供管理システムであって、複数のサービス提供装置がそれぞれ提供する情報処理サービスの品質に関するサービス品質情報を取得して管理するサービス品質管理部と、ユーザからのサービス品質に関するユーザ要求とサービス品質管理部で管理するサービス品質情報とに基づいて、複数のサービス提供装置のうちユーザ側装置に対応づけるサービス提供装置を少なくとも一つ選択するサービス選択部と、ユーザ側装置とサービス選択部により選択されたサービス提供装置とを対応付け、ユーザ側装置からのサービス要求を対応づけたサービス提供装置へ転送し、対応づけたサービス提供装置での情報処理サービスの結果をユーザ側装置へ送信するデータ転送部とを備える。
【発明の効果】
【００１１】
本発明によれば、ユーザからのサービス品質に関するユーザ要求とサービス品質管理部で管理するサービス品質情報とに基づいて、複数のサービス提供装置のうちユーザ側装置に対応づけるサービス提供装置を少なくとも一つ選択することができ、ユーザ側装置とサービス選択部により選択されたサービス提供装置とを対応付けて、ユーザ側装置からのサービス要求を対応づけたサービス提供装置へ転送し、対応づけたサービス提供装置での情報処理サービスの結果をユーザ側装置へ送信することができる。
【図面の簡単な説明】
【００１２】
【図１】サービス提供管理システムの全体構成図である。
【図２】サービス管理装置の構成図である。
【図３】サービス転送装置の構成図である。
【図４】ユーザ要求情報テーブルの例である。
【図５】サービス情報テーブルの例である。
【図６】サービス選択情報テーブルの例である。
【図７】サービス品質情報テーブルの例である。
【図８】サービス品質監視画面の例である。
【図９】サービス選択処理のフローチャートである。
【図１０】サービス移行処理のフローチャートである。
【図１１】システム全体の動作を示すフローチャートである。
【図１２】第２実施例に係り、サービス提供管理システムの全体構成図である。
【図１３】サービス管理装置の構成図である。
【図１４】ユーザ要求情報テーブルの例である。
【図１５】サービス選択処理のフローチャートである。
【図１６】サービス移行処理のフローチャートである。
【図１７】システム全体の動作を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を、図面を用いて説明する。なお、以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらはお互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明などの関係にある。
【００１４】
また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合及び原理的に明らかに特定の数に限定される場合などを除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
【００１５】
さらに、以下の実施の形態において、その構成要素（要素ステップなどを含む）は、特に明示した場合及び原理的に明らかに必須であると考えられる場合などを除き、必ずしも必須のものではない。
【００１６】
さらに、以下に示した実施の形態は単独で適用してもよいし、複数もしくはすべての実施の形態を組み合わせて適用しても構わない。
【００１７】
本実施形態では、複数のプロバイダのサービスをユーザに提供する場合のサービス品質の制御方法を開示する。サービス提供管理システムは、サービスに関するデータを転送するデータ転送装置と、サービス管理装置とを含む。データ転送装置は、サービス転送装置と呼ぶこともできる。
【００１８】
データ転送装置は、サービス提供装置としてのプロバイダが提供するサービスの品質情報を記録し、サービス管理装置に提示する手順を実行する。サービス管理装置は、ユーザが提出したサービス品質への要求に対し、サービス品質情報に基づいて、ユーザの個々の端末が受けるサービスのプロバイダの選択結果を生成し、データ転送装置に提示する手順を実行する。そして、データ転送装置は、サービス管理装置から選択結果を取得し、その選択結果に基づき、端末からのサービス要求を選択されたプロバイダに転送し、プロバイダからのサービス結果を端末に転送する手順を実行する。
【００１９】
さらに本実施形態は、サービス管理装置とデータ転送装置とを含み、複数のプロバイダのサービスをユーザに提供する場合のサービス品質を制御するシステムを開示する。
【００２０】
データ転送装置は、プロバイダが提供するサービスの品質情報を記録し、サービス管理装置に提示する。サービス管理装置は、ユーザの提出したサービス品質への要求に対し、サービスの品質情報に基づいて、ユーザの個々の端末が受けるサービスのプロバイダの選択結果を生成し、データ転送装置に提示する。データ転送装置は、取得した選択結果に基づき、端末からのサービス要求を選択されたプロバイダに転送し、プロバイダからのサービス結果を端末に転送する。
【００２１】
さらに本実施形態は、複数のプロバイダのサービスをユーザに提供する場合のサービス品質を制御するシステムに含まれるサービス管理装置を開示する。サービス管理装置は、ユーザの提出したサービス品質への要求に対し、データ転送装置から取得したプロバイダが提供するサービスの品質情報に基づいて、ユーザの個々の端末が受けるサービスのプロバイダの選択結果を生成し、データ転送装置に提示する。
【００２２】
本実施形態によれば、複数のプロバイダが提供するサービスを使い、要求されたサービス品質でサービスを提供する制御を実現できる。なお、前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【実施例１】
【００２３】
図１〜図１１を用いて第１実施例を説明する。本実施例では、以下に詳述するように、ユーザクライアント３と、サービス管理装置１と、サービス転送装置２と、ＩｏＴゲートウェイ４と、設備センサ５と、ローカルサーバ６と、サービスプロバイダ７を含む工場の設備センサのデータ処理システムを例に挙げて説明する。ローカルサーバ６とサービスプロバイダ７とは、「サービス提供装置」の例である。なお、以下では、ローカルサーバ６とサービスプロバイダ７とを区別せずに、プロバイダ７と略記する場合がある。図中、ゲートウェイは「ＧＷ」と略記する。【００２４】
本実施例のデータ処理システムは、サービス転送装置２が、各プロバイダ７の提供するサービスの品質情報をそれぞれ記録して、サービス管理装置１へ提示する。【００２５】
先に、サービス提供管理システムの概要を述べると、サービス管理装置１は、ユーザＵがクライアント３を介して提出したサービス品質への要求（ユーザ要求）に対して、サービスの品質情報に基づき、ユーザの個々の設備センサ５の生成したデータが受けるサービスのプロバイダ７の選択結果を生成し、サービス転送装置２に提示する。【００２６】
「データ転送装置」の例であるサービス転送装置２は、取得した選択結果に基づき、ＩｏＴゲートウェイ４からのサービス要求を選択されたプロバイダ７へ転送し、プロバイダ７からのサービス結果をＩｏＴゲートウェイ４に転送する。【００２７】
サービス管理装置１は、サービスの品質情報を取得し、サービス品質がユーザ要求を満たせるかを判断し、サービス品質がユーザ要求を満たせないと判断した場合、サービス移行の指示を作成して、サービス転送装置２に提示する。【００２８】
サービス転送装置２は、サービス移行の指示を取得し、サービス移行の指示に従い、ＩｏＴゲートウェイ４からのサービス要求を移行先プロバイダに転送し、移行先プロバイダからのサービス結果をＩｏＴゲートウェイ４へ転送する。【００２９】
本実施例のシステム構成は、図１に示すように、ユーザクライアント（以下、クライアント３）と、サービス管理装置（以下、管理装置１）と、データ転送装置（またはHead-End System（ＨＥＳ）、以下、転送装置２）と、ＩｏＴゲートウェイ（以下、ゲートウェイ４）と、設備センサ（以下、センサ５）と、ローカルサーバ６と、広域網（以下、通信ネットワークＣＮ）と、複数のサービスプロバイダ（以下、プロバイダ７）とを含んで構成される。【００３０】
クライアント３は、管理装置１にアクセスし、ユーザが受けるサービス（ユーザの管理下にあるセンサ５の受けるサービス）の要求を管理装置１に提示し、リアルタイムのサービス品質を監視する。【００３１】
ユーザＵは、ゲートウェイ４と、ゲートウェイ４に通信可能に接続された一つ以上のセンサ５とが配置された工場などのサイトと、クライアント３とを管理下に置く。ゲートウェイ４およびセンサ５は、「ユーザ側装置」の例である。【００３２】
ゲートウェイ４は、各センサ５から取得した設備稼働データを収集し整形して、データ処理サービスを受けるデータを転送装置２へ送信する。ゲートウェイ４は、転送装置２から取得したデータ処理サービスの処理結果に基づいて、センサ５などを制御する。【００３３】
転送装置２は、管理装置１の指示にしたがって、ゲートウェイ４とローカルサーバ６またはプロバイダ７との間の通信を管理する。すなわち転送装置２は、管理装置１の指示に従い、ゲートウェイ４から取得したデータを、ローカルサーバ６、あるいは通信ネットワークＣＮを経てプロバイダ７、のいずれかのデータ処理サービスへ転送する。そして、転送装置２は、サービス提供元（ローカルサーバ６またはプロバイダ７）から取得したデータ処理サービスの処理結果を、対応するゲートウェイ４へ転送する。【００３４】
また、転送装置２は、転送されるトラフィックに従い、サービス提供元が提供するデータ処理サービスのサービス品質情報を記録し、管理装置１に提供する。ここで、データ処理サービスは、「情報処理サービス」に該当する。サービス品質情報は、サービスレベルの品質情報と呼ぶこともできる。【００３５】
管理装置１は、それぞれ後述するように、ユーザアクセス部１１１、サービス選択部１１２、サービス品質管理武１１３、サービス移行部１１４を有する。管理装置１は、クライアント３から取得したサービス要求と転送装置２から取得したサービス品質情報とに基づき、データ処理サービスを提供する装置６，７の中から、クライアント３に提供すべきサービスを選択する。そして、管理装置１は、転送装置２に対して、サービス選択結果とサービス移行指示とを提示する。【００３６】
転送装置２は、管理装置１からの指示にしたがって、サービスに関するデータ転送を制御する装置であり、それぞれ後述するように、サービス選択受信部２１１、データ転送部２１２、サービス品質送信部２１３、サービス移行実行部２１４を有する。【００３７】
ローカルサーバ６は、データ処理を行うアプリケーション６１を少なくとも一つ有し、データ処理サービスを提供するコンピュータである。各プロバイダ７も、データ処理を行うアプリケーション７１を少なくとも一つ有し、データ処理サービスを提供するオンラインサービスである。【００３８】
図１に示すように、同一のユーザＵの管理下に、クライアント３と、ゲートウェイ４と、センサ５のセットが存在する。クライアント３，ゲートウェイ４およびセンサ５はそれぞれ一つずつでもよいし、あるいは複数でもよい。センサ５は、ゲートウェイ４と有線または無線で通信可能に接続される。ローカルサーバ６は、転送装置２と有線または無線で通信可能に接続される。転送装置２の内部にローカルサーバ６を設けてもよい。【００３９】
図２に本実施例の管理装置１の構成例を示す。本実施例における管理装置１の機能は、一般的なコンピュータの外部記憶装置１５にプログラムソフトウェアとして格納され、メモリ１１上に展開されてＣＰＵ１２により実行される。図中では、外部記憶装置を「ＳＳＤ」と略記しているが、フラッシュメモリデバイス（Solid State Drive）に限らず、ハードディスクなどの他の記憶媒体を用いる記憶装置でもよい。【００４０】
管理装置１は、入出力インターフェース１３、あるいは通信インターフェース１４、あるいはその両方を介して、ユーザクライアント３と転送装置２を接続する。【００４１】
管理装置１のメモリ１１は、例えば、ユーザアクセスプログラム１１１、サービス選択プログラム１１２、サービス品質管理プログラム１１３、サービス移行プログラムといったコンピュータプログラムと、ユーザ要求情報テーブル１２１、サービス情報テーブル１２２、サービス選択情報テーブル１２３、サービス品質情報テーブル１２４といった管理情報とを記憶する。【００４２】
ユーザアクセスプログラム１１１は、管理装置１がクライアント３と情報を交換するためのプログラムである。サービス選択プログラム１１２は、サービス品質を満たすようにプロバイダ７を選択するプログラムである。サービス品質管理プログラム１１３は、各プロバイダ７の提供するサービスの品質に関する情報であるサービス品質情報を、転送装置２から取得するプログラムである。サービス移行プログラム１１４は、転送装置２に対して、サービス提供元（ローカルサーバ６、プロバイダ７）の変更を指示するプログラムである。【００４３】
ユーザ要求情報テーブル１２１は、ユーザ要求を格納するテーブルである。サービス情報テーブル１２２は、サービスの情報を格納するテーブルである。サービス選択情報テーブル１２３は、サービスの選択結果を格納するテーブルである。サービス品質情報テーブル１２４は、サービス品質情報を格納するテーブルである。【００４４】
図３に本実施例の転送装置２の構成例を示す。本実施例における転送装置２の機能は、一般的なコンピュータの外部記憶装置２５にプログラムソフトウェアとして格納され、メモリ２１上に展開されてＣＰＵ２２により実行される。【００４５】
転送装置２は、入出力インターフェース２３、あるいは通信インターフェース２４、あるいはその両方を介して、管理装置１とゲートウェイ４とローカルサーバ６と通信ネットワークＣＮとに接続する。【００４６】
転送装置２のメモリ２１は、サービス選択受信プログラム２１１、データ転送プログラム２１２、サービス品質送信プログラム２１３、サービス移行実行プログラム２１４といったコンピュータプログラムと、サービス選択情報テーブル２２１、サービス品質情報テーブル２２２といった管理情報とを記憶する。【００４７】
サービス選択受信部２１１は、管理装置１が提示したサービス選択結果を受信するプログラムである。データ転送プログラム２１２は、ゲートウェイ４とサービス提供元の間でトラフィックを転送するプログラムである。サービス品質送信プログラム２１３は、ローカルサーバ６とプロバイダ７とから収集したサービス品質情報を管理装置１へ送信するプログラムである。サービス移行実行プログラム２１４は、管理装置１が提示したサービス移行を実行するプログラムである。【００４８】
サービス選択情報テーブル２２１は、サービス選択結果を格納するテーブルである。サービス品質情報テーブル２２２は、サービス品質情報を格納するテーブルである。【００４９】
なお、管理装置１と転送装置２とは、上述のコンピュータプログラムおよび管理情報（テーブル）を、単一のメモリに格納する場合を述べた。これに代えて、コンピュータプログラムやテーブルの全部または一部を外部記憶装置へ格納し、必要になる都度、外部記憶装置から読み出して使用する構成としてもよい。【００５０】
上述のコンピュータプログラムおよびテーブルを複数のコンピュータに分散して格納してもよい。例えば、管理情報をリレーショナルデータベースのテーブルとして、転送装置２でもゲートウェイ４とも異なるデータベースサーバ（不図示）に格納してもよい。【００５１】
図４は、管理装置１が保持するユーザ要求情報テーブル１２１の例である。ユーザ要求情報テーブル１２１は、例えば、ユーザＩＤ１２１１、ゲートウェイアドレス１２１２、センサ数１２１３、処理タイプ１２１４、センサ毎データ量１２１５、遅延１２１６、信頼性１２１７を対応づけて管理する。【００５２】
ユーザＩＤ１２１１は、ユーザの識別子である。ゲートウェイアドレス１２１２は、転送装置２に接続するゲートウェイ４のネットワークアドレスである。各ゲートウェイ４は固有のネットワークアドレスを持つため、ネットワークアドレスはゲートウェイ４の識別子にもなっている。センサ数１２１３は、ゲートウェイ４に接続されたセンサ５の数を示す。【００５３】
処理タイプ１２１４は、例えば「変化監視」、「予兆検知」などのゲートウェイ４（および／またはセンサ５）の必要とするサービス機能を示す。センサ毎データ量１２１５は、一つのセンサ５が発生するデータ処理負荷を示す。遅延１２１６は、サービス提供元であるプロバイダ７での処理の遅延の瞬間下限値を示す。信頼性１２１７は、プロバイダ７での処理結果の到達率の瞬間下限値を示す。【００５４】
ゲートウェイアドレス１２１２は、ゲートウェイ４のＩＰアドレスの他、ＩＰパケットが含む、ゲートウェイ４の識別が可能な他のデータでもよい。処理タイプ１２１４は、処理名称の他、予め決まった処理タイプの識別子（ＩＤ）や、共通する処理ＵＲＬ（Uniform Resource Locator）の相対パスでもよい。サービス品質は、処理遅延と処理結果到達率の瞬間下限値の他、予め決まった時間における平均値の下限値でもよいし、あるいは、処理遅延と処理結果到達率以外の、トラフィックから収集できるサービス品質を示す統計結果でもよい。【００５５】
図５は、管理装置１が保持するサービス情報テーブル１２２の例である。サービス情報テーブル１２２は、例えば、サービスＩＤ１２２１、プロバイダ１２２２、処理タイプ１２２３、アクセス１２２４、コスト１２２５、サービス移行情報１２２６を対応づけて管理する。【００５６】
サービスＩＤ１２２１は、サービスの識別子を示す。プロバイダ１２２２は、サービス提供元の識別子を示す。処理タイプ１２２３は、必要なサービス機能を示す。アクセス１２２４は、サービスを受けるデータの転送先、すなわちサービス提供元にデータを転送するためのネットワークアドレスを示す。コスト１２２５は、サービスを利用するときのコストを示す。サービス移行情報１２２６は、サービス移行に必要な情報を示す。【００５７】
アクセス１２２４は、サービス提供元のＩＰアドレスとポートの組合せに限らず、サービスのＵＲＬやその他のサービスＡＰＩ（Application Programming Interface）の指定情報でもよい。コスト１２２５は、サービス利用時にサービスを提供するプロバイダ７に支払う金額のほか、サービスを利用するために転送装置２やサービス提供管理システムの他の部分に発生する各種コストを含んでもよい。サービス移行情報１２２６は、移行先のサービス提供元（プロバイダ）と、サービス移行時の処理手順と、サービス移行時に発生するオーバーヘッドとを含む。サービス情報テーブル１２２は、図５に示す各情報１２２１〜１２２６のほかに、例えば、サービスの最大キャパシティや、残りキャパシティなどを追加してもよい。【００５８】
図６は、管理装置１が保持するサービス選択情報テーブル１２３の例である。サービス選択情報テーブル１２３は、例えば、ユーザＩＤ１２３１、センサＩＤ１２３２、サービスＩＤ１２３３を対応づけて管理する。【００５９】
ユーザＩＤ１２３１は、ユーザの識別子である。センサＩＤ１２３２は、センサ５の識別子である。サービスＩＤ１２３３は、センサ５の生成したデータが受けるサービスの識別子、つまりセンサデータが送られるプロバイダ７での情報処理サービス（データ処理サービス）を特定する情報である。【００６０】
転送装置２が保持するサービス選択情報テーブル２２１は、サービス選択情報テーブル１２３が含む情報１２３１〜１２３３のほかに、ユーザ要求情報テーブル１２１が含むゲートウェイアドレス１２１２と、サービス情報テーブル１２２が含むアクセス１２２４等の項目を備えてもよい。これにより、転送装置２は、サービス選択情報テーブル２２１を参照するだけで、センサ５のデータを送信すべきプロバイダ７などを直ちに把握することができ、転送処理の効率を高めることができる。【００６１】
図７は、管理装置１が保持するサービス品質情報テーブル１２４の例である。サービス品質情報テーブル１２４は、例えば、報告時刻１２４１、サービスＩＤ１２４２、ユーザＩＤ１２４３、遅延１２４４、信頼性１２４５を対応づけて管理する。【００６２】
報告時刻１２４１は、品質情報を報告された時刻を示す。サービスＩＤ１２４２は、報告対象であるサービスの識別子を示す。ユーザＩＤ１２４３は、報告対象であるユーザの識別子を示す。遅延１２４４および信頼性１２４５は、報告内容としての報告期間中の統計結果である、遅延と信頼性である。【００６３】
報告内容は遅延１２４４と信頼性１２４５の他、サービス品質要求に含まれるトラフィックから収集できるサービス品質を示す統計結果でもよい。【００６４】
転送装置２が保持するサービス品質情報テーブル２２２は、サービス品質情報テーブル１２４と同じフォーマットでもよいし、あるいは、統計結果の履歴ではなく前回報告結果からの詳細情報でもよい。つまり、転送装置２は、統計結果の履歴を管理する必要はなく、最新の報告結果だけを管理してもよい。【００６５】
管理装置１が実施するユーザアクセスプログラム１１１は、入出力インターフェース１３、あるいは通信インターフェース１４、あるいはその両方を介して、クライアント３と情報をやり取りする。ユーザアクセスプログラム１１１は、ユーザ要求の受入れと、サービス結果の提供と、サービス品質の監視等といった各機能を実現する。これらの機能はウェブアプリケーションを利用して実現することもできる。例えば、ユーザアクセスプログラム１１１は、クライアント３にウェブ画面を提供し、クライアント３がウェブ画面に必要な情報を入力すると、その入力された情報をデータ処理し、ウェブ画面にその処理結果に関する情報を表示する。ユーザアクセスプログラム１１１とクライアント３の間の情報のやり取りは、ウェブ画面の他、予め決まったプロトコルを使ったメッセージなどの通信も可能である。【００６６】
図８は、ユーザアクセスプログラム２１１がクライアント３に提示するサービス品質監視画面Ｇ１０の例である。【００６７】
サービス品質監視画面Ｇ１０は、例えば、表示期間ＧＰ１１、品質要求達成率ＧＰ１２、詳細情報ＧＰ１３、サービス結果統合ボタンＧＰ１４を含む。表示期間ＧＰ１１は、画面に表示される情報の対応期間を示す。品質要求達成率ＧＰ１２は、画面に表示された情報の対応期間におけるユーザ品質要求の全体達成率を示す。詳細情報ＧＰ１３は、画面に表示された情報の対応期間における各サービスのサービス品質に関する詳細である。【００６８】
サービス品質の詳細情報ＧＰ１３は、例えば、サービスの識別子を示すＩＤ  ＧＰ１３１と、そのサービスを受けるセンサ５の識別子を示すセンサＩＤ  ＧＰ１３２と、サービス品質情報ＧＰ１３３と、サービス使用量ＧＰ１３４と、サービス結果ＧＰ１３５とを備えることができる。【００６９】
サービス結果ＧＰ１３５には、サービスに要した処理時間や信頼性などをグラフ表示させることができる。サービス結果ＧＰ１３５にグラフ表示ボタンを配置し、ユーザがそのボタンを押したときに別のウインドウでグラフを表示させてもよい。サービス結果統合ボタンＧＰ１４は、ゲートウェイ４が処理を依頼している各サービスの結果を統合して示すためのボタンである。ユーザは、詳細情報ＧＰ１３を参照することで、サービスごとの品質を確認することができる。さらに、ユーザは、サービス結果統合ボタンＧＰ１４を操作することで、複数のサービスの結果を統合したゲートウェイ全体としてのサービス品質を確認することもできる。【００７０】
図９のフローチャートを用いて、管理装置１が実施するサービス選択プログラム１１２の処理を説明する。【００７１】
管理装置１は、ユーザアクセスプログラム１１１がクライアント３からユーザ要求を受信すると、サービス選択プログラム１１２を動作させる。ステップＳ１１において、管理装置１は、クライアント３から受信したユーザ要求情報をユーザ要求情報テーブル１２１から取得する。【００７２】
ステップＳ１２において、管理装置１は、サービス情報テーブル１２２から、取得したユーザ要求情報の処理タイプと一致するサービスの情報を取得する。ステップＳ１３において、管理装置１は、サービス品質情報テーブル１２４から、取得したサービスの最新の品質情報を取得する。【００７３】
ステップＳ１４において、管理装置１は、ユーザ要求と、サービス情報と、サービス品質情報とを制約条件にして、公知の数理最適化アルゴリズムを利用し、ユーザ要求を満たす最適なサービスの組合せを計算する。【００７４】
最適化の目標は、例えば、サービスを受けるコストの最小化である。サービスの組合せとは、ユーザの管理下にある複数のセンサ５の生成したデータに対して、違うサービスを提供することである。例えば、或るユーザの管理下に１００個のセンサ５が存在し、センサデータを解析して変化を監視するサービスを受ける場合を説明する。この場合例えば、８０個のセンサ５が生成したデータには変化監視を行う第１のサービスを適用し、残りの２０個のセンサ５が生成したデータには変化監視を行う第２のサービスを提供する。なお、サービスの組合せを計算する場合、予め設定したサービス品質の冗長、あるいはサービス移行時のオーバーヘッドの差し引きを考慮してもよい。【００７５】
ステップＳ１５において、管理装置１は、ステップＳ１４の計算結果に、ユーザ要求を全部満たすサービスの組合せが存在するか判定する。ユーザ要求を満たすサービスの組合せが存在しない場合（Ｓ１５：ＮＯ）、管理装置１は、ステップＳ１８へ進む。【００７６】
ユーザ要求を満たすサービスの組合せが存在する場合（Ｓ１５：ＹＥＳ）、管理装置１は、ステップＳ１６へ進み、ステップＳ１４の計算結果であるサービスの組合せをサービス選択情報テーブル１２３に記憶させる。【００７７】
ステップＳ１７において、管理装置１は、ユーザ要求を満たすサービス選択結果を転送装置２へ送信する。最後に管理装置１は、ステップＳ１８において、ユーザ要求を満たすサービスの組合せが存在するかどうかに関わらず、サービスの組合せが存在するかの判定結果をユーザアクセスプログラム１１１に提示し、サービス選択プログラム１１２を正常終了する。ユーザアクセスプログラム１１１は、サービス選択プログラム１１２から受け取った結果を、ユーザ要求に対する応答としてクライアント３へ送信する。【００７８】
管理装置１が実施するサービス品質管理プログラム１１３は、予め決まった一定時間が経過するごとに、あるいは他のトリガーを受け取った場合に、入出力インターフェース１３、あるいは通信インターフェース１４、あるいはその両方を介して、転送装置２へサービス品質情報取得の要求を送信する。サービス品質管理プログラム１１３は、転送装置２からの応答を受信すると、サービス品質情報テーブル１２４に記憶させる。その後、管理装置１は、サービス移行プログラム１１４を動作させる。【００７９】
図１０のフローチャートを用いて、管理装置１が実施するサービス移行プログラム１１４の処理を説明する。【００８０】
管理装置１は、サービス品質管理プログラム１１３がサービス移行プログラム１１４を動作させると、ステップＳ２１において、ユーザ要求情報テーブル１２１から、順番に一つのユーザ要求情報を取得する。【００８１】
ステップＳ２２において、管理装置１は、サービス選択情報テーブル１２３から、取得したユーザ情報に関連するサービス選択結果情報を取得する。ステップＳ２３において、管理装置１は、サービス品質情報テーブル１２４から、取得したサービス選択結果が含むすべてのサービスの最新のサービス品質情報を取得する。【００８２】
ステップＳ２４において、管理装置１は、取得した最新の品質情報がユーザの要求したサービス品質を満たすかを判定する。サービスの品質がユーザの要求するサービス品質を満たす場合（Ｓ２４：ＹＥＳ）、管理装置１は、ステップＳ３０へ進む。これに対し、サービスの品質がユーザの要求するサービス品質を満たさない場合（Ｓ２４：ＮＯ）、管理装置１は、ステップＳ２５へ進み、ユーザ要求とサービス情報とサービス品質情報とを制約条件にして、公知の数理最適化アルゴリズムを利用し、ユーザ要求を満たす最適なサービスの組合せを計算する。【００８３】
ステップＳ２６において、管理装置１は、ステップＳ２５の計算結果に、ユーザ要求を全部満たすサービスの組合せが存在するか判定する。ユーザ要求を満たすサービスの組合せが存在しない場合（Ｓ２６：ＮＯ）、管理装置１は、ステップＳ３０へ進む。【００８４】
ユーザ要求を満たすサービスの組合せが存在する場合（Ｓ２６：ＹＥＳ）、管理装置１は、ステップＳ２７へ進み、サービス情報テーブル１２２から、関連するサービスのサービス移行情報を取得する。ステップＳ２８において、管理装置１は、旧サービスの組合せから新サービスの組合せへ変更する場合、最小限な移行が必要なセンサ５を選定する。移行対象のセンサの選定方法には、例えば、移行オーバーヘッドの最小化を目標とした公知の数理最適化アルゴリズムを使うことが可能である。【００８５】
ステップＳ２９において、管理装置１は、選定したセンサ５とサービス移行情報とに基づき、サービス移行指示を作成し、転送装置２へ送信する。最後にステップＳ３０において、管理装置１は、全てのユーザ要求を処理完了したかを判定する。まだ処理していないユーザ要求が存在する場合（Ｓ３０：ＮＯ）、管理装置１は、ステップＳ２１へ戻る。全てのユーザ要求を処理完了した場合（Ｓ３０：ＹＥＳ）、管理装置１は、本処理を正常終了する。【００８６】
転送装置２が実施するサービス選択受信プログラム２１１は、管理装置１からのサービス選択結果を受信し、サービス選択情報テーブル２２１に記憶させる。【００８７】
転送装置２が実施するデータ転送プログラム２１２は、データ処理要求を含むデータパケットをゲートウェイ４から受信すると、サービス選択情報テーブル２２１に記憶されているゲートウェイ４に関連する情報に基づいて、そのデータパケットを適切なローカルサーバ６あるいはプロバイダ７へ転送する。【００８８】
さらに、転送装置２が実施するデータ転送プログラム２１２は、データ処理結果を含むデータパケットをローカルサーバ６あるいはプロバイダ７から受信すると、そのデータパケットに含まれているユーザ識別子およびセンサ識別子に基づいて、適切なゲートウェイ４へ転送する。【００８９】
さらに、転送装置２が実施するデータ転送プログラム２１２は、データパケットを転送する際に、パケット送受信時に記録したトラフィック時刻等からサービス品質情報を算出し、算出結果をサービス品質情報テーブル２２２に記憶させる。【００９０】
転送装置２が実施するサービス品質送信プログラム２１３は、管理装置１からサービス品質送信取得の要求を受信すると、サービス品質情報テーブル２２２に基づいて、サービス品質の統計結果を作成し、作成した統計結果を管理装置１へ送信する。【００９１】
転送装置２が実施するサービス移行実行プログラム２１４は、管理装置１からのサービス移行指示を受信すると、サービス選択情報テーブル２２１を更新し、サービス移行指示に含まれているサービス移行手順に基づいて、サービス提供元を、移行元のプロバイダ７のサービスから移行先のプロバイダ７のサービスへ移行させる。【００９２】
図１１に、データ処理システムの全体動作を示す。以下の説明では、各指示メッセージの単純応答メッセージを省略する。図１１では、クライアント３を「ユーザ」、サービス管理装置１を「管理」、サービス転送装置２を「転送」と略記する。図１１では、説明を簡単にするために２つのサービスプロバイダ７（１），７（２）を示す。【００９３】
クライアント３は、ゲートウェイ４と、設備センサ数と、処理タイプと、サービス品質の要求とを含むユーザ要求メッセージＭ５１を管理装置１に送信する。管理装置１は、ユーザアクセスプログラム１１１を動作させて、クライアント３から受信したユーザ要求Ｍ５１をユーザ要求情報テーブル１２１へ格納し、その後、サービス選択プログラム１１２を動作させる。【００９４】
管理装置１は、サービス選択プログラム１１２（図９）のステップＳ１７において、最適化されたサービスの組合せに基づき、サービス選択結果メッセージＭ５２を作成し、転送装置２へ送信する。【００９５】
管理装置１は、サービス選択プログラム１１２（図９）のステップＳ１８において、サービスの組合せが存在することを要求応答メッセージＭ５３として、クライアント３へ送信する。転送装置２は、管理装置１からサービス選択結果Ｍ５２を受信すると、サービス選択受信プログラム２１１を動作させ、サービス選択結果Ｍ５２をサービス選択情報テーブル２２１へ格納する。【００９６】
転送装置２は、ゲートウェイ４から処理要求メッセージＭ５４を受信すると、データ転送プログラム２１２を動作させ、サービス選択情報テーブル２２１に格納されている情報に基づき、処理要求メッセージＭ５５を適切なプロバイダ７（あるいはローカルサーバ６、例えば、プロバイダ７（１））へ送信する。【００９７】
転送装置２は、転送先のプロバイダ７（１）から処理結果メッセージＭ５６を受信すると、データ転送プログラム２１２を動作させ、処理結果メッセージＭ５６に含まれるユーザ識別子およびセンサ識別子に基づいて、処理結果Ｍ５７を適切なゲートウェイ４へ送信する。【００９８】
転送装置２は、処理要求メッセージＭ５５を送信する際と処理結果メッセージＭ５６を受信する際とで、それぞれトラフィック時刻等を記録している。そこで、転送装置２は、送信時刻と受信時刻との差からサービス品質情報を算出し、サービス品質情報テーブル２２２に記憶させる。【００９９】
管理装置１は、周期的にサービス品質管理プログラム１１３を動作させ、サービス品質情報取得メッセージＭ５８を転送装置２へ送信する。転送装置２は、情報取得メッセージＭ５８を受信すると、サービス品質送信プログラム２１３を動作させ、サービス品質情報テーブル２２２に格納されている情報に基づいて、サービス品質情報提供メッセージＭ５９を生成し、管理装置１へ送信する。【０１００】
通常時であれば、メッセージＭ５４からメッセージＭ５７までのデータ転送ルーチンと、メッセージＭ５８からメッセージＭ５９までのサービス品質情報転送ルーチンとがそれぞれ繰り返し発生する。【０１０１】
管理装置１は、転送装置２からサービス品質情報提供メッセージＭ５９を受信すると、サービス品質管理プログラム１１３を動作させ、サービス品質情報テーブル１２４に格納した上に、サービス移行プログラム１１４を動作させる。【０１０２】
管理装置１は、サービス移行プログラム１１４（図１０）のステップＳ２４において、サービス品質がユーザ要求を満たさないと判定し、かつ、ステップＳ２６において、新たなユーザ要求を満たすサービスの組合せが存在すると判定した場合、ステップＳ２９において、サービス移行指示メッセージＭ６０を転送装置２へ送信する。【０１０３】
転送装置２は、管理装置１からサービス移行指示メッセージＭ６０を受信すると、サービス移行実行プログラム２１４を動作させ、サービス移行指示メッセージＭ６０に含まれる手順に基づき、サービスの引き継ぎを行う。【０１０４】
サービス移行指示メッセージＭ６０に含まれる手順の一例として、以下のメッセージのやり取りがある。以下では、プロバイダ７（１）からプロバイダ７（２）へサービス提供元が変更されるものとして説明する。プロバイダ７（１）は移行元プロバイダであり、プロバイダ７（２）は移行先プロバイダである。移行元プロバイダを旧プロバイダと、移行先プロバイダを新プロバイダと呼ぶこともできる。【０１０５】
まず、転送装置２は、利用するサービスのプロバイダが変更されるセンサ５について、引継情報取得メッセージＭ６１をプロバイダ７（１）へ送信する。引継情報とは、サービスの引き継ぎに必要な統計データである。引継情報の一例として、例えば、予め決まった過去の一定期間のデータの平均値、最大値、最小値、標準偏差などがある。【０１０６】
転送装置２は、移行元のプロバイダ７（１）から引継情報提供メッセージＭ６３を受信すると、サービス移行実行プルグラム３１４を動作させ、受信した引継情報を移行先プロバイダ７（あるいはローカルサーバ６、例えば、プロバイダ７（２））が利用可能なフォーマットなどに変換し、引継情報メッセージＭ６３をプロバイダ７（２）へ送信し、サービスの引き継ぎを完了する。【０１０７】
サービスの引き継ぎが完了した後に、転送装置２は、ゲートウェイ４から処理要求メッセージＭ６４を受信すると、データ転送プログラム２１２を動作させ、サービス選択情報テーブル２２１に格納されている情報に基づき、処理要求メッセージＭ６５を移行先プロバイダ７（２）へ送信する。【０１０８】
転送装置２は、移行先プロバイダ７（２）から処理結果メッセージＭ６６を受信すると、データ転送プログラム２１２を動作させ、処理結果メッセージＭ６６に含まれているユーザ識別子およびセンサ識別子に基づき、処理結果メッセージＭ６７を適切なゲートウェイ４へ送信する。【０１０９】
ここで、転送装置２は、処理要求メッセージＭ６５を送信する場合と処理結果メッセージＭ６６を受信する場合との両方で、トラフィックの時刻等を記録している。転送装置２は、その記録からサービス品質情報を算出して、サービス品質情報テーブル２２２に記憶させる。【０１１０】
このように構成される本実施例では、サービス品質が完全には安定していないプロバイダ７の提供するサービスを使用する場合でも、ユーザの要求するサービス品質に適合したサービスをユーザに提供することができる。そして、例えば、コスト最小化を最適目標とする数理最適化計算により生成したサービスの組合せにより、ユーザの要求したサービス品質を満たすサービスを受ける際の種々のコストを削減することができる。【０１１１】
すなわち、本実施例によれば、サービス品質が変化する複数のサービスをユーザ要求を満たすように動的に組み合わせることができ、ユーザの希望するサービスを提供することができ、ユーザの使い勝手が向上する。【０１１２】
なお、本実施例において、管理装置１と転送装置２の間のメッセージ通信が使用するパケットのフォーマットについては、既存のネットワーク通信標準に従ったフォーマット、あるいはそれを拡張したものを使用することができる。その一例として、例えば、ＨＴＴＰ（Hyper-Text Transfer Protocol）、ＪＳＯＮ（JavaScript Object Notation：JavaScriptは登録商標）、ＣｏＡＰ（Constrained Application Protocol）、ＭＱＴＴ等を使用できる。【０１１３】
一つの管理装置１あるいは転送装置２は、複数の通信パケットフォーマットを用いて通信することもできる。一つの管理装置１あるいは転送装置２は、同時に複数の転送装置２あるいは管理装置１と、メッセージを通信することもできる。【０１１４】
本実施例では、サービス提供管理システムをサービス管理装置１とサービス転送装置２とに分けて構成し、サービスの組替などの管理をサービス管理装置１が担当し、ユーザ側装置（ゲートウェイ４，センサ５）とプロバイダ（６，７）との間のデータ転送をサービス転送装置２が担当する。したがって、サービス転送装置２は、多数のセンサ５のデータを高速に処理することができる。この結果、短時間で多数のセンサデータを高速に処理することができ、高い信頼性とロバスト性と使い勝手の良さを持つＩｏＴシステムを構築することができる。
【実施例２】
【０１１５】
図１２〜図１７を用いて第２実施例を説明する。本実施例は第１実施例の変形例に相当するため、第１実施例との相違を中心に述べる。【０１１６】
本実施例は、サービス管理装置１Ａと、サービスプロバイダ７Ａと、自動車８と、ユーザクライアント３Ａを含むテレマティクスサービスシステムに本発明を適用した場合の例を説明する。【０１１７】
テレマティクスサービスシステムは、自動車８にゲートウェイ４Ａが搭載されており、ゲートウェイ４Ａはデータ転送装置２Ａを備える。車載ゲートウェイ４Ａは、プロバイダ７の提供するサービスの品質情報を記録し、サービス管理装置１Ａへ提示する。サービス管理装置１Ａは、ユーザの提出したサービス品質への要求に対し、サービス品質情報に基づいて、ユーザの個々の車載センサ５Ａの生成したデータが受けるサービスのプロバイダ７Ａを選択する。サービス管理装置１Ａは、サービス選択結果を生成して、車載ゲートウェイ４Ａに提示する。そして、車載ゲートウェイ４Ａは、取得したサービス選択結果に基づいて、車載センサ５Ａの生成したデータを、サービス選択結果にて選択されたプロバイダ７Ａへ転送する。【０１１８】
サービス管理装置１Ａは、サービスの品質情報を取得し、サービスの品質がユーザ要求を満たせるかを判断し、サービスの品質がユーザ要求を満たせないと判断した場合、サービス移行の指示を作成して、車載ゲートウェイ４Ａに提示する。車載ゲートウェイ４Ａは、サービス移行の指示を取得すると、サービス移行の指示に従い、車載センサ５Ａが生成したデータを移行先プロバイダへ転送する。サービス管理装置１Ａは、複数のプロバイダ７Ａのサービスの提供結果をそれぞれ取得し、取得したそれらの結果の内容を整合し、整合した結果をユーザに提供することもできる。【０１１９】
図１２を用いて、本実施例のシステム構成を説明する。なお、第１実施例と重複する内容は説明を省略する。本実施例のシステム構成は、例えば、サービス管理装置（以下、管理装置１Ａ）と、複数のサービスプロバイダ（以下、プロバイダ７Ａ）と、自動車８と、ユーザクライアント（以下、クライアント３Ａ）とを含む。【０１２０】
自動車８は、複数の車載センサ（以下、センサ５Ａ）と、各センサ５Ａの信号電送を管理する車載ゲートウェイ（以下、ゲートウェイ４Ａ）とを備える。センサ５Ａは、例えば、温度、湿度、車速、トルク、振動、圧力、騒音、電流値、電圧値、抵抗値、振動などのように、自動車８の各部品あるいはその周辺の環境情報を測定して出力する。【０１２１】
ゲートウェイ４Ａは、センサ５Ａの生成したデータを収集して整形する。ゲートウェイ４Ａは、「データ転送装置」の例としてのサービス転送装置２Ａの機能を内蔵しており、センサ５Ａで収集されたデータを、サービス管理装置１Ａから指定されたプロバイダ７Ａへ送信する。図１２に示すように、クライアント３Ａと自動車８とは、同一のユーザＵＡが管理している一つないし複数のものがセットとなる。【０１２２】
図１２では、クライアント３Ａは、例えば、パーソナルコンピュータ、スマートフォン、携帯情報端末などのように、自動車８とは別の装置として構成する場合を示す。しかし、これに限らず、クライアント３Ａを、ゲートウェイ４Ａと同様に、自動車８に設けることもできる。例えば、クライアント３Ａは、自動車８の備える車載情報システムの一部として設けることができる。クライアント３Ａを車載情報システムの中に設ける場合、クライアント３Ａは、ゲートウェイ４Ａを介して外部と通信してもよいし、ゲートウェイ４Ａから独立した別の通信手段を用いて外部と通信してもよい。【０１２３】
プロバイダ７Ａは、データ処理を行うアプリケーション７１と、外部からデータを収集するＨＥＳ（Head-End System）とを備える。【０１２４】
図１３を用いて、本実施例の管理装置１Ａの構成例を説明する。管理装置１Ａは、第１実施例の管理装置１と同様に、例えば、メモリ１１Ａ、ＣＰＵ１２Ａ、入出力インターフェース１３Ａ、通信インターフェース１４Ａ、外部記憶装置１５Ａを有するコンピュータシステムとして構成されている。【０１２５】
メモリ１１Ａは、ユーザアクセスプログラム１１１Ａ、サービス選択プログラム１１２Ａ、サービス品質管理プログラム１１３Ａ、サービス移行プログラム１１４Ａ、ユーザ要求情報テーブル１２１Ａ、サービス情報テーブル１２２Ａ、サービス選択情報テーブル１２３Ａ、サービス品質情報テーブル１２４Ａを記憶している。これらのコンピュータプログラム１１１Ａ〜１１４Ａは、第１実施例で述べたコンピュータプログラム１１１〜１１４に対応する。テーブル１２１Ａ〜１２４Ａは、第１実施例で述べたテーブル１２１〜１２４に対応する。【０１２６】
図１４は、管理装置１Ａが保持するユーザ要求情報テーブル１２１Ａの例である。ユーザ要求情報テーブル１２１Ａは、例えば、ユーザＩＤ１２１１Ａ、ゲートウェイＩＤ１２１２Ａ、センサタイプ１２１３Ａ、処理タイプ１２１４Ａ、サービス品質指標１２１５Ａ、閾値１２１６Ａを対応づけて管理する。図４で述べたユーザ要求情報テーブル１２１との相違は、センサ数１２１３がセンサタイプ１２１３Ａに、センサ毎データ量１２１５がサービス品質指標１２１５Ａに、遅延１２１６が閾値１２１６Ａに、それぞれなっており、信頼性１２１７が設けられていない点である。【０１２７】
ユーザＩＤ１２１１Ａは、ユーザの識別子である。ゲートウェイアドレス１２１２Ａは、ゲートウェイのネットワークアドレスである。センサタイプ１２１３Ａは、センサ５Ａのタイプを示す。処理タイプ１２１４Ａは、必要なサービス機能を示す。サービス品質情報１２１５Ａは、サービストラフィックの統計情報とサービス品質の満足度との関係を示す。閾値１２１６Ａは、サービス品質指標の許容下限値を示す。【０１２８】
図１４の例では、ユーザＩＤ１２１１Ａが”１”、かつセンサタイプ１２１３Ａが”ECU”の生成データが受けるサービス機能に対して、”f=(1-fail)*10-delay”というサービス品質満足度が適用されている。変数failは、予め決まった期間中にデータパケットのロスと解読不能およびデータ処理失敗とによるサービス失敗率である。変数delayは、予め決まった期間中に処理要求の送信から処理結果の受信までの平均遅延である。例えば、サービス失敗率が５%かつ平均遅延が０．４秒の場合、そのサービス品質満足度は９．１となる。【０１２９】
図１５のフローチャートを用いて、管理装置１Ａが実施するサービス選択プログラム１１２Ａの処理を説明する。本実施例の処理は、図９で述べた処理と比べて、ステップＳ１７Ａが追加されている点で異なる。ステップＳ１１Ａ〜Ｓ１６Ａは、図９のステップＳ１１〜Ｓ１６に対応する。ステップＳ１８Ａ，Ｓ１９Ａは、図９のステップＳ１７，Ｓ１８に対応する。【０１３０】
管理装置１Ａは、ユーザアクセスプログラム１１１Ａがクライアント３Ａからのユーザ要求を受信すると、サービス選択プログラム１１２Ａを動作させる。【０１３１】
ステップＳ１１Ａにおいて、管理装置１Ａは、クライアント３Ａから受信したユーザ要求情報をユーザ要求情報テーブル１２１Ａから取得する。ステップＳ１２Ａにおいて、管理装置１Ａは、サービス情報テーブル１２２Ａから、取得したユーザ要求情報の処理タイプと一致するサービスの情報を取得する。【０１３２】
ステップＳ１３Ａにおいて、管理装置１Ａは、サービス品質情報テーブル１２４Ａから、取得したサービスの最新の品質情報を取得する。ステップＳ１４Ａにおいて、管理装置１Ａは、ユーザ要求とサービス情報とサービス品質情報とを制約条件に、公知の数理最適化アルゴリズムを利用し、ユーザ要求を満たす最適なサービスを計算する。最適化の目標は、例えば、サービス品質満足度の最大化である。最適なサービスを計算する場合、予め設定したサービス品質の冗長あるいはサービス移行のオーバーヘッドの差し引きを考慮に入れてもよい。【０１３３】
ステップＳ１５Ａにおいて、管理装置１Ａは、ステップＳ１４Ａの計算結果において、ユーザ要求を全部満たすサービスが存在するかを判定する。ユーザ要求を満たすサービスが存在しない場合（Ｓ１５Ａ：ＮＯ）、管理装置１Ａは、ステップＳ１９Ａへ進む。ユーザ要求を満たすサービスが存在する場合（Ｓ１５Ａ：ＹＥＳ）、管理装置１Ａは、ステップＳ１６Ａにおいて、管理装置１Ａは、計算結果であるサービス選択結果をサービス選択情報テーブル１２３Ａに記憶させる。【０１３４】
ステップＳ１７Ａにおいて、管理装置１Ａは、選択されたサービスを提供するプロバイダ７Ａへ、サービスを提供するためのユーザ要求情報を送信し、サービスの提供を開始させる。プロバイダ７Ａがサービス提供を開始した後、ステップＳ１８Ａにおいて、管理装置１Ａは、サービス選択結果をゲートウェイ４Ａへ送信する。【０１３５】
ユーザ要求を満たすサービスが存在するかどうかに関わらず、最後に、ステップＳ１９Ａにおいて、管理装置１Ａは、サービスが存在するかの結果をユーザアクセスプログラム１１１Ａに提示し、サービス選択プログラムを正常終了する。【０１３６】
ユーザアクセスプログラム１１１Ａは、この結果を受けて、ユーザ要求に対応する応答をクライアント３へ送信する。【０１３７】
図１６のフローチャートを用いて、管理装置１Ａが実施するサービス移行プログラム１１４Ａの処理を説明する。【０１３８】
管理装置１Ａのサービス品質取得プログラム１１３Ａが、サービス移行プログラム１１４Ａを動作させる。【０１３９】
ステップＳ２１Ａにおいて、管理装置１Ａは、ユーザ要求情報テーブル１２１Ａから、順番に一つのユーザ要求情報を取得する。ステップＳ２２Ａにおいて、管理装置１Ａは、サービス選択情報テーブル１２３Ａから、取得したユーザ情報に関連するサービス選択結果情報を取得する。ステップＳ２３Ａにおいて、管理装置１Ａは、サービス品質情報テーブル１２４Ａから、取得したサービス選択結果が含むサービスの最新のサービス品質情報を取得する。【０１４０】
ステップＳ２４Ａにおいて、管理装置１Ａは、取得した最新の品質情報がユーザの要求したサービス品質を満たすかを判定する。サービス品質を満たす場合（Ｓ２４Ａ：ＹＥＳ）、管理装置１Ａは、ステップＳ３２Ａへ進む。サービス品質を満たさない場合（Ｓ２４Ａ：ＮＯ）、管理装置１Ａは、ステップＳ２５Ａへ進み、ユーザ要求とサービス情報とサービス品質情報とを制約条件に、公知の数理最適化アルゴリズムを利用し、ユーザ要求を満たす最適なサービスを計算する。【０１４１】
ステップＳ２６Ａにおいて、管理装置１Ａは、ステップＳ２５Ａでの計算結果において、ユーザ要求を全部満たすサービスが存在するかを判定する。ユーザ要求を満たすサービスが存在しない場合（Ｓ２６Ａ：ＮＯ）、管理装置１Ａは、ステップＳ３０Ａへ進む。ユーザ要求を満たすサービスが存在する場合（Ｓ２６Ａ：ＹＥＳ）、管理装置１Ａは、ステップＳ２７Ａへ進み、サービス情報テーブル１２２Ａから、関連するサービスのサービス移行情報を取得する。【０１４２】
サービス移行情報に含まれるサービス移行手順の一例として、ステップＳ２８Ａにおいて、管理装置１Ａは、サービス移行情報に基づき、旧プロバイダ７Ａからサービス引継情報を取得する。ステップＳ２９Ａにおいて、管理装置１Ａは、サービス移行情報に基づき、新プロバイダ７Ａに対して、サービスを提供するためのユーザ要求情報とサービス引継情報とを送信し、サービスの提供を開始させる。【０１４３】
ステップＳ３０Ａにおいて、管理装置１Ａは、サービス移行情報に基づき、サービス移行指示を作成し、ゲートウェイ４Ａへ送信する。ステップＳ３１Ａにおいて、管理装置１Ａは、サービス移行情報に基づき、旧プロバイダ７Ａにサービス中止指示を送信し、サービスを（一部）させる。【０１４４】
最後に、ステップＳ３２Ａにおいて、管理装置１Ａは、全てのユーザ要求を処理完了したかを判定する。まだ処理していないユーザ要求が存在する場合（Ｓ３２Ａ：ＮＯ）、管理装置１Ａは、ステップＳ２１Ａへ戻る。全てのユーザ要求を処理完了した場合（Ｓ３２Ａ：ＹＥＳ）、管理装置１Ａは、本処理を正常終了する。【０１４５】
図１７に、データ処理システムの全体動作を示す。以下では、各指示メッセージの単純応答メッセージを省略する。【０１４６】
クライアント３Ａは、ゲートウェイアドレスとセンサタイプと処理タイプとサービス品質の要求とを含むユーザ要求メッセージＭ８１を、管理装置１Ａへ送信する。管理装置１Ａは、ユーザアクセスプログラム１１１Ａを動作させて、ユーザ要求をユーザ要求情報テーブル１２１Ａに格納し、そしてサービス選択プログラム１１２Ａを動作させる。【０１４７】
管理装置１Ａは、サービス選択プログラム１１２Ａ（図１５）のステップＳ１７Ａにおいて、最適化されたサービスに基づき、サービスを提供させるためのユーザ要求情報メッセージＭ８２を作成する。そして、管理装置１Ａは、ユーザ要求情報メッセージＭ８２を、選択されたサービスを提供するプロバイダ７Ａ（例えば、プロバイダ７Ａ（１））へ送信し、プロバイダ７Ａ（１）のサービスを開始させる。【０１４８】
管理装置１Ａは、サービス選択プログラム１１２Ａ（図１５）のステップＳ１８Ａにおいて、サービス選択結果メッセージＭ８３を作成し、ゲートウェイ４Ａへ送信する。管理装置１Ａは、サービス選択プログラム１１２Ａ（図１５）のステップＳ１９Ａにおいて、ユーザ要求に対応する要求応答メッセージＭ８４をクライアント３Ａへ送信する。この要求応答メッセージＭ８４は、ユーザの要求するサービス品質を満たすサービスの組合せが存在するというメッセージを含む。【０１４９】
ゲートウェイ４Ａは、管理装置１Ａから受信したサービス選択結果を、メモリに記憶させる。ゲートウェイ４Ａは、センサ５Ａが生成したデータを収集し、整形する。ゲートウェイ４Ａは、格納したサービス選択結果に基づき、センサデータメッセージＭ８５を、プロバイダ７（１）へ送信する。ゲートウェイ４Ａは、処理確認メッセージＭ８６をプロバイダ７Ａ（１）から受信すると、記録したトラフィックの時刻等からサービス品質情報を算出し、メモリに記憶させる。【０１５０】
ユーザの操作するクライアント３Ａは、サービスの結果を取得するために、処理結果取得メッセージＭ８７を管理装置１Ａへ送信する。管理装置１Ａは、ユーザアクセスプログラム１１１Ａを動作させる。管理装置１Ａは、サービス選択情報テーブル１２３Ａに記憶されているサービス選択情報に基づき、そのユーザへサービスを提供している全てのプロバイダ７Ａに対し、処理結果取得メッセージＭ８８を送信する。【０１５１】
管理装置１Ａは、全てのプロバイダ７Ａからの処理結果提供メッセージＭ８９を受信すると、それらメッセージＭ８９に含まれる処理結果の内容を整合して、処理結果提供メッセージＭ９０を作成する。管理装置１Ａは、整合したサービス処理結果をクライアント３Ａへ提供する。【０１５２】
管理装置１Ａは、周期的にサービス品質取得プログラム１１３Ａを動作させ、サービス品質情報取得メッセージＭ９１の要求を、ゲートウェイ４Ａへ送信する。これに対し、ゲートウェイ４Ａは、記憶しているサービス品質情報に基づき、サービス品質情報提供メッセージＭ９２を管理装置１Ａへ送信する。【０１５３】
通常時では、メッセージＭ８５からメッセージＭ８６までのデータ送信ルーチンと、メッセージＭ８７からメッセージＭ９０までのサービス処理結果転送ルーチンと、メッセージＭ９１からメッセージＭ９２のサービス品質情報転送ルーチンとは、それぞれ繰り返し発生する。【０１５４】
一方、管理装置１Ａは、ゲートウェイ４Ａからサービス品質情報提供メッセージＭ９２を受信すると、サービス品質取得プログラム１１３Ａを動作させ、サービス品質情報テーブル１２４Ａに格納した後、サービス移行プログラム１１４Ａを動作させる。【０１５５】
管理装置１Ａは、サービス移行プログラム１１４Ａ（図１６）のステップＳ２４Ａにおいて、サービス品質がユーザ要求を満たさないと判定し、かつ、ステップＳ２６Ａにおいて、新たなユーザ要求を満たすサービスが存在すると判定した場合、ステップＳ２８Ａにおいて、引継情報取得メッセージＭ９３を移行元プロバイダであるプロバイダ７Ａ（１）へ送信する。【０１５６】
管理装置１Ａは、移行元プロバイダ７Ａ（１）から引継情報提供メッセージＭ９４を受信すると、サービス移行プログラム１１４Ａ（図１６）のステップＳ２９Ａにおいて、受信した引継情報を新プロバイダ７Ａ（例えば、プロバイダ７Ａ（２））が利用可能なフォーマットなどに変換する。管理装置１Ａは、変換した引継情報とサービスを提供するためのユーザ要求情報とを合わせて、ユーザ要求および引継情報メッセージＭ９６を作成し、移行先プロバイダであるプロバイダ７Ａ（２）へ送信し、プロバイダ７Ａ（２）のサービスを開始させる。【０１５７】
管理装置１Ａは、サービス移行プログラム１１４Ａ（図１６）のステップＳ３０Ａにおいて、サービス移行指示メッセージＭ９６をゲートウェイ４Ａへ送信する。最後に、管理装置１Ａは、サービス移行プログラム１１４Ａ（図１６）のステップＳ３１Ａにおいて、サービス中止指示メッセージＭ９７をプロバイダ７Ａ（１）へ送信して、プロバイダ７Ａ（１）のサービスを（部分）中止させ、サービス移行手順を完了する。【０１５８】
ゲートウェイ４Ａは、管理装置１Ａから受信したサービス移行指示をメモリに記憶させる。その後、ゲートウェイ４Ａは、センサ５Ａが生成したデータを収集し整形し、格納しているサービス選択結果に基づき、センサデータメッセージＭ９８をプロバイダ７Ａ（２）へ送信する。ゲートウェイ４Ａは、処理確認メッセージＭ９９を受信すると、記録したトラフィックの時刻等からサービス品質情報を算出し、メモリに記憶させる。【０１５９】
クライアント３Ａは、今までと同様に、サービスの結果を取得するために、処理結果取得メッセージＭ１００を管理装置１Ａへ送信する。管理装置１Ａは、ユーザアクセスプログラム１１１Ａを動作させ、サービス選択情報テーブル１２３Ａに記憶されるサービス選択情報に基づき、該当ユーザにサービスを提供している全てのプロバイダ７Ａに処理結果取得メッセージＭ１０１を送信する。【０１６０】
管理装置１Ａは、全てのプロバイダ７Ａからの処理結果提供メッセージＭ１０２を受信すると、各メッセージＭ１０２に含まれる処理結果の内容を整合して、処理結果提供メッセージＭ１０３を作成する。管理装置１Ａは、処理結果提供メッセージＭ１０３をクライアント３Ａへ送信することにより、整合したサービス処理結果をクライアント３Ａに提供する。【０１６１】
このように構成される本実施例も第１実施例と同様の作用効果を奏する。さらに、本実施例では、時々刻々と品質の変化するサービスを複数動的に組み合わせるにより、テレマティクスサービスシステムの信頼性および使い勝手が向上する。さらに、管理装置が、複数のプロバイダのサービスの提供結果を整合し、整合した結果をユーザに提供するため、ユーザはプロバイダの移行などの影響を受けずに、継続したサービス処理結果を利用することが可能となる。つまり、サービスの組合せが動的に変化した場合でも、全体としてのサービス処理結果の整合を維持することができ、ユーザには、サービスの組合せ内容を意識させずにテレマティクスサービスを提供することができる。
【符号の説明】
【０１６２】
１，１Ａ：サービス管理装置、２，２Ａ：サービス転送装置、３，３Ａ：ユーザクライアント、４，４Ａ：ゲートウェイ、５，５Ａ：センサ、６：ローカルサーバ、７，７Ａ：サービスプロバイダ、８：自動車、６１，７１：アプリケーション
【図１】
2018109914.tif 000003
【図２】
2018109914.tif 000004
【図３】
2018109914.tif 000005
【図４】
2018109914.tif 000006
【図５】
2018109914.tif 000007
【図６】
2018109914.tif 000008
【図７】
2018109914.tif 000009
【図８】
2018109914.tif 000010
【図９】
2018109914.tif 000011
【図１０】
2018109914.tif 000012
【図１１】
2018109914.tif 000013
【図１２】
2018109914.tif 000014
【図１３】
2018109914.tif 000015
【図１４】
2018109914.tif 000016
【図１５】
2018109914.tif 000017
【図１６】
2018109914.tif 000018
【図１７】
2018109914.tif 000019
【国際調査報告】
2018109914.tif 000020
2018109914.tif 000021
2018109914.tif 000022
2018109914.tif 000023