(57)【要約】      （修正有）【課題】端末からデータ処理装置に送信されるデータを短期間に処理するゲートウェイ、制御方法及び制御プログラムを提供する。【解決手段】ゲートウェイ１５１は、端末５０１から、データ処理装置５０２によって処理されるデータを受信する。アプリケーション選択部１５２は、受信したデータに応じたアプリケーションを選択し、アプリケーション実行部１５３は、該アプリケーションを処理モード情報に基づいて特定された処理モードに従い、処理先が自装置である処理を実行し、実行結果と、処理先がデータ処理装置である処理をデータ処理装置に要求する要求情報と作成し、これらを、データ送信部１５５がデータ処理装置に送信する。処理モード決定部１５４は、データを受信してから結果情報を送信するまでに要した所要時間が該アプリケーションに関連付けされた要求応答時間を超えている場合には、該アプリケーションが実行される処理モードを変更する。【選択図】図１０
2017151595.tif 000002
【特許請求の範囲】
【請求項１】
端末から受信したデータに応じたアプリケーションを選択するアプリケーション選択手段と、
選択された前記アプリケーションに含まれている処理に関して、該処理を実行することが可能な処理先の装置を表す処理モードを複数含む処理モードセットのうち、ある処理モードに従い、前記処理先が自装置である処理を表す第１処理を実行するアプリケーション実行手段と
前記第１処理が実行された結果を表す結果情報と、前記処理モードセットのうち前記ある処理モードに従い前記処理先が自装置でないデータ処理装置で実行される処理を表す第２処理を要求する要求情報とを、自装置でない前記データ処理装置に送信するデータ送信手段と、
前記データを受信してから前記結果情報を送信するまでに要した所要時間が前記アプリケーションに対する要求応答時間を超えている場合には、前記所要時間が前記要求応答時間を超えている前記アプリケーションに関する前記ある処理モードを変更する処理モード決定手段と
を備えるゲートウェイ。
【請求項２】
前記処理モード決定手段は、前記ある処理モードを前記処理モードセットのうちの異なる処理モードに変更することによって前記所要時間が改善される程度を表す改善度に基づき、前記異なる処理モードを選択し、選択した前記処理モードに前記ある処理モードを変更する
請求項１に記載のゲートウェイ。
【請求項３】
前記改善度は、前記第１処理と、前記第２処理と、前記結果情報を送信する通信処理とに要する時間に関して、前記ある処理モードと、前記異なるモードとの差異に応じた値であり、
前記処理モード決定手段は、前記ある処理モードを、前記処理モードセットのうち前記改善度が大きな値を有する処理モードに変更する
請求項２に記載のゲートウェイ。
【請求項４】
前記処理モード決定手段は、前記第１処理、及び、前記第２処理に要する時間と、前記第１処理、及び、第２処理間に入出力されるデータ量との比に従って、前記改善度を算出する
請求項２、または、請求項３に記載のゲートウェイ。
【請求項５】
前記処理モード決定手段は、前記所要時間が前記アプリケーションに対する前記要求応答時間を超えている第１アプリケーションが複数ある場合に、複数の前記第１アプリケーションに含まれている第２アプリケーションに関して、前記第１処理、及び、前記第２処理に要する時間を前記第２アプリケーションに関する前記第１処理、及び、前記第２処理に要する時間の総和によって算出し、前記第１処理、及び、第２処理間に入出力されるデータ量を前記第２アプリケーションに関するデータ量の総和によって算出し、算出した前記第１処理、及び、前記第２処理に要する時間、及び、算出した前記第１処理、及び、第２処理間に入出力されるデータ量に基づき前記改善度を算出し、算出した前記改善度が最も大きな値を与える前記第２アプリケーションに関する前記処理モードを変更する
請求項４に記載のゲートウェイ。
【請求項６】
前記アプリケーションを表すアプリケーション識別子と、前記アプリケーションを前記処理モードにて実行する処理に要する処理時間と、前記アプリケーションを前記処理モードにて実行する処理に要する通信ネットワーク帯域と、前記処理モードに従い前記アプリケーションにおける前記処理の処理先の装置を表す前記処理先と、前記アプリケーションに対する前記要求応答時間とが関連付けされた特性情報を格納している記憶手段
をさらに備え、
前記処理モード決定手段は、前記アプリケーション選択手段が選択した前記アプリケーションを表す前記アプリケーション識別子に関連付けされた前記要求応答時間を特定し、前記所要時間が前記アプリケーションに対する前記要求応答時間を超えている場合には、選択された前記アプリケーションを表す前記アプリケーション識別子に関連付けされた前記処理時間と、選択された前記アプリケーションを表す前記アプリケーション識別子に関連付けされた前記通信ネットワーク帯域とを特定し、特定した前記処理時間と、特定した前記通信ネットワーク帯域とに基づき、前記改善度を算出する
請求項２乃至請求項５のいずれかに記載のゲートウェイ。
【請求項７】
端末から受信したデータに応じたアプリケーションを選択し、
選択された前記アプリケーションに含まれている処理に関して、該処理を実行することが可能な処理先の装置を表す処理モードを複数含む処理モードセットのうち、ある処理モードに従い、前記処理先が自装置である処理を表す第１処理を実行し、
前記第１処理が実行された結果を表す結果情報と、前記処理モードセットのうち前記ある処理モードに従い前記処理先が自装置でないデータ処理装置で実行される処理を表す第２処理を要求する要求情報とを、自装置でない前記データ処理装置に送信し、
前記データを受信してから前記結果情報を送信するまでに要した所要時間が前記アプリケーションに対する要求応答時間を超えている場合には、前記所要時間が前記要求応答時間を超えている前記アプリケーションに関する前記ある処理モードを変更する
ゲートウェイを制御する制御方法。
【請求項８】
端末から受信したデータに応じたアプリケーションを選択するアプリケーション選択機能と、
選択された前記アプリケーションに含まれている処理に関して、該処理を実行することが可能な処理先の装置を表す処理モードを複数含む処理モードセットのうち、ある処理モードに従い、前記処理先が自装置である処理を表す第１処理を実行するアプリケーション実行機能と、
前記第１処理が実行された結果を表す結果情報と、前記処理モードセットのうち前記ある処理モードに従い前記処理先が自装置でないデータ処理装置で実行される処理を表す第２処理を要求する要求情報とを、自装置でない前記データ処理装置に送信するデータ送信機能と、
前記データを受信してから前記結果情報を送信するまでに要した所要時間が前記アプリケーションに対する要求応答時間を超えている場合には、前記所要時間が前記要求応答時間を超えている前記アプリケーションに関する前記ある処理モードを変更する処理モード決定機能と
をコンピュータに実現させるゲートウェイを制御する制御プログラム。
【請求項９】
前記処理モード決定機能において、前記ある処理モードを前記処理モードセットのうちの異なる処理モードに変更することによって前記所要時間が改善される程度を表す改善度に基づき、前記異なる処理モードを選択し、選択した前記処理モードに前記ある処理モードを変更する
請求項８に記載の制御プログラム。
【請求項１０】
前記改善度は、前記第１処理と、前記第２処理と、前記結果情報を送信する通信処理とに要する時間に関して、前記ある処理モードと、前記異なるモードとの差異に応じた値であり、
前記処理モード決定機能において、前記ある処理モードを、前記処理モードセットのうち前記改善度が大きな値を有する処理モードに変更する
請求項９に記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末とデータ処理装置を通信接続する通信ネットワークにおいてデータ転送とデータ処理とを制御するゲートウェイに関する。
【背景技術】
【０００２】
特許文献１は、ゲートウェイシステムの一例を開示する。特許文献１に開示されたゲートウェイシステムは、アプリケーションプログラムレベルの内容、伝送環境の状態、及び、トランザクションを切り替える動的なルールのうち、少なくとも１つの動的なルールに従い、トランザクションを実行するトランザクション処理装置を選択する。たとえば、該ゲートウェイシステムは、トランザクションの種類に応じて、トランザクション処理装置を選択する。
【０００３】
以降、「アプリケーションプログラム」を「アプリケーション」と略記する。
【０００４】
該ゲートウェイシステムにおいて、ゲートウェイは、複数のトランザクション処理装置について、少なくとも１つの通信ネットワークを介した通信に要する往復時間を監視する。さらに、該ゲートウェイは、アプリケーションレベルにおいて、トランザクションが完了するのに応じて、回答を送信するのに要する所要時間を監視する。さらに、該ゲートウェイは、トランザクションを処理するルールを選択し、選択したトランザクション処理装置に、選択したルールを送信する。この処理によって、該ゲートウェイは、該トランザクション装置に対して、該ルールに従い、トランザクションを処理することを指示する。
【０００５】
特許文献２に開示されたロギング装置は、ロギングポリシーが格納されているテーブルから、監視部によって監視されたトランザクション処理の応答時間に基づき、特定のロギングポリシーを選択する。該ロギング装置は、選択したロギングポリシーに従って、該トランザクション処理に関するログを記録デバイスに記録する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第４９３４６７０号公報
【特許文献２】国際公開第２００７／０７４６８０号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に開示されたゲートウェイシステムにおいて、トランザクション（一般的に、「データ」と称する）に関わる一連の処理は、ゲートウェイ、または、トランザクション処理装置（一般的に、「データ処理装置」と称する）にて処理される。この結果、該ゲートウェイシステムによれば、必ずしも、短期間にデータが処理されるとは限らない。この理由は、該ゲートウェイシステムにおいて、データに関わる一連の処理が、該データに関わる処理によらずに、ゲートウェイ、または、データ処理装置にて処理されるからである。
【０００８】
そこで、本発明の主たる目的は、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを提供することが可能なゲートウェイ等を提供することである。
【課題を解決するための手段】
【０００９】
前述の目的を達成するために、本発明の一態様において、ゲートウェイは、
端末から受信したデータに応じたアプリケーションを選択するアプリケーション選択手段と、
選択された前記アプリケーションに含まれている処理に関して、該処理を実行することが可能な処理先の装置を表す処理モードを複数含む処理モードセットのうち、ある処理モードに従い、前記処理先が自装置である処理を表す第１処理を実行するアプリケーション実行手段と
前記第１処理が実行された結果を表す結果情報と、前記処理モードセットのうち前記ある処理モードに従い前記処理先が自装置でないデータ処理装置で実行される処理を表す第２処理を要求する要求情報とを、前記データ処理装置に送信するデータ送信手段と、
前記データを受信してから前記結果情報を送信するまでに要した所要時間が前記アプリケーションに対する要求応答時間を超えている場合には、前記所要時間が前記要求応答時間を超えている前記アプリケーションに関する前記ある処理モードを変更する処理モード決定手段と
を備える。
【００１０】
また、本発明の他の見地として、ゲートウェイの制御方法は、
端末から受信したデータに応じたアプリケーションを選択し、
選択された前記アプリケーションに含まれている処理に関して、該処理を実行することが可能な処理先の装置を表す処理モードを複数含む処理モードセットのうち、ある処理モードに従い、前記処理先が自装置である処理を表す第１処理を実行し、
前記第１処理が実行された結果を表す結果情報と、前記処理モードセットのうち前記ある処理モードに従い前記処理先が自装置でないデータ処理装置で実行される処理を表す第２処理を要求する要求情報とを、前記データ処理装置に送信し、
前記データを受信してから前記結果情報を送信するまでに要した所要時間が前記アプリケーションに対する要求応答時間を超えている場合には、前記所要時間が前記要求応答時間を超えている前記アプリケーションに関する前記ある処理モードを変更する。
【００１１】
また、本発明の他の見地として、ゲートウェイの制御プログラムは、
端末から受信したデータに応じたアプリケーションを選択するアプリケーション選択機能と、
選択された前記アプリケーションに含まれている処理に関して、該処理を実行することが可能な処理先の装置を表す処理モードを複数含む処理モードセットのうち、ある処理モードに従い、前記処理先が自装置である処理を表す第１処理を実行するアプリケーション実行機能と、
前記第１処理が実行された結果を表す結果情報と、前記処理モードセットのうち前記ある処理モードに従い前記処理先が自装置でないデータ処理装置で実行される処理を表す第２処理を要求する要求情報とを、前記データ処理装置に送信するデータ送信機能と、
前記データを受信してから前記結果情報を送信するまでに要した所要時間が前記アプリケーションに対する要求応答時間を超えている場合には、前記所要時間が前記要求応答時間を超えている前記アプリケーションに関する前記ある処理モードを変更する処理モード決定機能と
をコンピュータに実現させる。
【００１２】
さらに、同目的は、係る制御プログラムを記録するコンピュータが読み取り可能な記録媒体によっても実現される。
【発明の効果】
【００１３】
本発明に係るゲートウェイ等によれば、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係るゲートウェイが有する構成を示すブロック図である。
【図２】第１の実施形態に係るゲートウェイにおいて、データ受信部、アプリケーション実行部、及び、データ送信部等の処理の流れを示すフローチャートである。
【図３】第１の実施形態に係るゲートウェイにおいて、アプリケーション実行部、処理モード決定部、及び、経過時間測定部等の処理の流れを示すフローチャートである。
【図４】第１の実施形態に係る特性情報記憶部に格納されている特性情報の一例を概念的に表す図である。
【図５】第１の実施形態に係る状態情報記憶部に格納されている状態情報の一例を概念的に表す図である。
【図６】第１の実施形態に係る処理モード情報記憶部に格納されている処理モード情報の一例を概念的に表す図である。
【図７】本発明の第２の実施形態に係るゲートウェイが有する構成を示すブロック図である。
【図８】第２の実施形態に係るゲートウェイにおける処理を示すフローチャートである。
【図９】第２の実施形態に係る特性情報記憶部に格納されている特性情報の一例を概念的に表す図である。
【図１０】本発明の第３の実施形態に係るゲートウェイが有する構成を示すブロック図である。
【図１１】第３の実施形態に係るゲートウェイにおける処理を示すフローチャートである。
【図１２】本発明の各実施形態に係るゲートウェイを実現可能な計算処理装置のハードウェア構成例を、概略的に示すブロック図である。
【発明を実施するための形態】
【００１５】
次に、本発明を実施する実施形態について図面を参照しながら詳細に説明する。
【００１６】
＜第１の実施形態＞
図１を参照しながら、本発明の第１の実施形態に係るゲートウェイ１０１が有する構成について詳細に説明する。図１は、本発明の第１の実施形態に係るゲートウェイ１０１が有する構成を示すブロック図である。
【００１７】
第１の実施形態に係るゲートウェイ１０１は、データ受信部１０２と、アプリケーション実行部１０３と、処理モード決定部１０４と、経過時間測定部１０５と、データ送信部１０６とを有する。
【００１８】
ゲートウェイ１０１は、通信ネットワークを介して、少なくとも１台の端末５０１、及び、少なくとも１台のデータ処理装置５０２に通信接続することができる。ゲートウェイ１０１は、処理対象であるアプリケーションに関する情報を含む特性情報（図４を参照しながら後述する）が格納されている特性情報記憶部２０１に接続することができる。ゲートウェイ１０１は、アプリケーションに従い処理を実行した場合にて計測（測定）された情報を表す状態情報（図５を参照しながら後述する）が格納される状態情報記憶部２０２に接続することができる。ゲートウェイ１０１は、アプリケーションを実行する処理モードを表す処理モード情報（図６を参照しながら後述する）を格納する処理モード情報記憶部２０３を参照することができる。ゲートウェイ１０１は、特性情報記憶部２０１、状態情報記憶部２０２、及び、処理モード情報記憶部２０３を有してもよい。
【００１９】
説明の便宜上、ゲートウェイ１０１、及び、データ処理装置５０２には、あらかじめ、アプリケーションがインストールされているとする。
【００２０】
端末５０１は、データ処理装置５０２にて提供されているサービス（アプリケーション）を要求する端末要求情報を、ゲートウェイ１０１に送信する。ゲートウェイ１０１は受信した端末要求情報をアプリケーションにより処理し、その結果である結果情報とデータ処理装置５０２に対する要求情報（リクエスト）をデータ処理装置５０２に送信する。データ処理装置５０２は、ゲートウェイ１０１から該結果情報と、該要求情報とを受信する。データ処理装置５０２は、サーバ装置、データセンター、クラウド、または、情報処理システム等であってもよい。端末５０１は、センサ、携帯端末、または、クライアント装置等であってもよい。該端末要求情報は、たとえば、センサの測定データ、クライアントからのサービスリクエストなどを含む。
【００２１】
まず、特性情報、状態情報、及び、処理モード情報について説明する。
【００２２】
図４を参照しながら、特性情報について説明する。図４は、第１の実施形態に係る特性情報記憶部２０１に格納されている（格納される）特性情報の一例を概念的に表す図である。
【００２３】
図４に例示された特性情報においては、データ処理装置５０２にて提供されているサービス（アプリケーション）を表すアプリケーション識別子（以降、識別子を「ＩＤ」と表す）と、該アプリケーションに含まれている処理を識別可能な処理ＩＤとが関連付けされている。特性情報においては、さらに、処理先が自装置である処理に要する所要時間、及び、該処理先にて処理される場合に要する通信ネットワーク帯域（通信量）を含む処理モードに関連付けされている（たとえば、図４における第１処理モードの列）。特性情報においては、さらに、該アプリケーションＩＤが表すアプリケーションに関する応答時間として要求される要求応答時間に関連付けされている。要求応答時間は、たとえば、アプリケーションに対して要求される最長の応答時間を表す。したがって、該アプリケーションに関する応答時間は、該要求応答時間以下であることが要求される。図４に例示されているように、特性情報においては、あるアプリケーションに関して、複数の処理モードが関連付けされている（図４における「第１処理モード」、「第２処理モード」、及び、「第３処理モード」）。
【００２４】
特性情報における処理モードについて詳細に説明し、次に、特性情報について詳細に説明する。
【００２５】
処理モードは、アプリケーションにおける各処理が処理される処理先と、処理先が自装置である処理に要する所要時間と、該処理先にて処理される場合に要する通信ネットワーク帯域（たとえば、図４において、第１処理モードの列における「ＮＷ帯域」）を含む。
【００２６】
たとえば、図４において、第２アプリケーションに関連付けされた第１処理モードは、「ゲートウェイ、データ処理装置、処理時間：５０ｍｓ、ＮＷ帯域：５００ｋｂｐｓ」を含んでいる。これは、第２アプリケーションにおける処理（２−１）がゲートウェイ１０１にて処理され、処理（２−２）がデータ処理装置５０２にて処理され、さらに、この場合に、処理（２−１）に要する処理時間が５０ミリ秒（「ｍｓ」）であることを表す。「ＮＷ帯域：５００ｋｂｐｓ」は、処理（２−１）がゲートウェイ１０１にて処理され、処理（２−２）がデータ処理装置５０２にて処理される場合に、該ゲートウェイ１０１、及び、データ処理装置５０２の間において、１秒当たり５００キロビット（すなわち、キロビットパーセカンド、ｋｂｐｓ）の通信が必要であることを表す。
【００２７】
たとえば、図４において、アプリケーションＩＤ「第１アプリケーション」は、第１処理モード「ゲートウェイ、ゲートウェイ、データ処理装置、処理時間：２００ｍｓ、ＮＷ帯域：５ｋｂｐｓ」に関連付けされている。これは、第１処理モードにおいて、第１アプリケーションにおける処理（１−１）、及び、処理（１−２）がゲートウェイ１０１にて処理され、処理（１−３）がデータ処理装置５０２にて処理されることを表す。この場合に、処理（１−１）、及び、処理（１−２）に要する処理時間が２００ｍｓであることを表す。さらに、これは、ゲートウェイ１０１と、データ処理装置５０２との間においては、１秒当たり５キロビット分の通信が必要であることを表す。
【００２８】
さらに、図４において、アプリケーションＩＤ「第１アプリケーション」は、第２処理モード「ゲートウェイ、データ処理装置、データ処理装置、処理時間：５０ｍｓ、ＮＷ帯域：１５Ｍｂｐｓ」と、要求応答時間「５００ｍｓ」とに関連付けされている。これは、第１処理モードにおいて、第１アプリケーションにおける処理（１−１）がゲートウェイ１０１にて処理され、処理（１−２）、及び、処理（１−３）がデータ処理装置５０２にて処理されることを表す。この場合に、処理（１−１）に要する処理時間が５０ｍｓであることを表す。さらに、これは、ゲートウェイ１０１と、データ処理装置５０２との間においては、１秒当たり１５メガビット分の通信が必要であり、さらに、第１アプリケーションに対して要求されている応答時間が５００ｍｓであることを表す。
【００２９】
該処理時間は、たとえば、ゲートウェイ１０１が低負荷な状態にて処理を実行した場合に、該処理に要する所要時間（応答時間、経過時間）を表す。該処理時間は、必ずしも、実測された値でなくともよく、見積もり値等の予想された値であってもよい。この場合に、該処理に要する実際の所要時間は、該ゲートウェイ１０１における負荷の状態等に応じて増減する。特性情報における通信ネットワーク帯域は、該アプリケーションに関する処理に要する通信ネットワーク帯域を表す。
【００３０】
処理モードについて、顔認証サービス（顔認証アプリケーション）の例を参照しながら、具体的に説明する。
【００３１】
顔認証アプリケーションは、たとえば、以降に示された第１処理、乃至、第４処理を含む。すなわち、
第１処理：顔が撮像され、その後、顔を含む画像データを作成する顔画像撮影処理、
第２処理：作成した画像データから顔が撮像されている領域を特定する顔画像切り出し処理、
第３処理：特定した領域に含まれる顔画像における特徴点を選択する特徴点選択処理、
第４処理：作成された画像データと、照合対象である画像データとを、第３処理にて選択された特徴点に関して照合する特徴点データ照合処理。たとえば、照合対象である画像データは、特徴点データベースに格納されている。
【００３２】
顔認証アプリケーションのうち、顔画像撮影処理（第１処理）は、たとえば、撮像装置を有するデバイスにて実行される。該デバイスが、作成した画像データを、ゲートウェイ１０１を介して、データ処理装置５０２に送信し、それがデータ処理装置５０２で処理されることによって、作成した画像データに関する顔認証サービスを提供できる。
【００３３】
また、照合対象である画像データが格納されている特徴点データベースは、データセンター、または、クラウド等のデータ処理装置５０２に含まれている。したがって、特徴点データ照合処理（第４処理）は、たとえば、特徴点データベースを含むデータ処理装置５０２にて実行される。
【００３４】
これに対して、顔認証アプリケーションのうち、第２処理（顔画像切り出し処理）と、第３処理（特徴点選択処理）とは、ゲートウェイ１０１にて実行されてもよいし、該データ処理装置５０２にて実行されてもよい。顔認証サービスに要する処理時間は、第２処理、及び、第３処理が、データ処理装置５０２、または、ゲートウェイ１０１のいずれにて処理されるのかに応じて異なる。これについて説明する。
【００３５】
第２処理（顔画像切り出し処理）と、第３処理（特徴点選択処理）とがゲートウェイ１０１にて実行されることを表す処理モード（説明の便宜上、「第１処理モード」と表す）と、第２処理（顔画像切り出し処理）をゲートウェイ１０１が実行し、第３処理（特徴点選択処理）をデータ処理装置５０２が実行する処理モード（説明の便宜上、「第２処理モード」と表す）とに関して、処理時間を比較する。顔認証アプリケーションに関しては、ゲートウェイ１０１がデータ転送だけを実行し、データ処理装置５０２が第２処理、及び、第３処理を実行する第３処理モードに従い処理が実行されてもよい。
【００３６】
第１処理モードの場合において、ゲートウェイ１０１は、通信ネットワークを介して、特徴点に関する情報をデータ処理装置５０２に送信する。これに対して、第２処理モードの場合において、ゲートウェイ１０１は、通信ネットワークを介して、切り出した顔画像データをデータ処理装置５０２に送信する。一般に、画像データのデータ量が該画像データから選択された特徴点に関する情報のデータ量よりも大きいので、第２処理モードの場合における送信データ量は、第１処理モードの場合における送信データ量に比べて多い。言い換えると、第１処理モードは、ゲートウェイ１０１にて処理される計算量が多いが、データ処理装置５０２に送信するデータ量が少ない。これに対して、第２処理モードは、ゲートウェイ１０１にて処理される計算量が少ないが、データ処理装置５０２に送信するデータ量が多い。
【００３７】
尚、特性情報は、さらに多くの処理モードにおける所要時間、及び、該処理モードにおける通信ネットワーク帯域に関連付けされていてもよいし、必ずしも、上述したすべての項目を含んでいなくてもよい。また、特性情報においては、アプリケーションＩＤに、複数の処理モードが関連付けされていてもよいし、アプリケーションごとに異なる個数の処理モードが関連付けされていてもよい。すなわち、特性情報は、上述した例に限定されない。
【００３８】
次に、図５を参照しながら、状態情報について説明する。図５は、第１の実施形態に係る状態情報記憶部２０２に格納されている状態情報の一例を概念的に表す図である。
【００３９】
図５に例示された状態情報においては、データ処理装置５０２にて提供されているサービス（アプリケーション）を表すアプリケーションＩＤと、該アプリケーションに関する処理が実行された処理モードと、該処理モードにて該アプリケーションに関する処理に要した所要時間（応答時間、処理時間）とが関連付けされている。
【００４０】
図５に例示された状態情報においては、アプリケーションＩＤ「第２アプリケーション」と、処理モード「第１処理モード」と、応答時間「１２０ｍｓ」とが関連付けされている。これは、第２アプリケーションに従った処理が、処理モード「第１処理モード」にて実行された場合に、第２アプリケーションにおける処理に要した所要時間が１２０ｍｓであった履歴を表す。
【００４１】
尚、状態情報は、たとえば、ある処理モードにてアプリケーションが実行された場合に、該ある処理モードにおいて処理に要した所要時間、または、該ある処理モードにおいて処理に要した通信ネットワーク帯域等に関連付けされていてもよいし、必ずしも、上述したすべての項目を含んでいなくてもよい。すなわち、状態情報は、上述した例に限定されない。
【００４２】
図６を参照しながら、処理モード情報について説明する。図６は、第１の実施形態に係る処理モード情報記憶部２０３に格納されている処理モード情報の一例を概念的に表す図である。
【００４３】
処理モード情報においては、アプリケーションを表すアプリケーションＩＤと、該アプリケーションに従い処理が実行される態様を表す処理モードとが関連付けされている。
【００４４】
たとえば、図６に例示された処理モード情報において、アプリケーションＩＤ「第３アプリケーション」と、処理モード「第１処理モード」とが関連付けされている。これは、第３アプリケーションに関する処理が実行される場合に、アプリケーション実行部１０３が、第１処理モードに従い、第３アプリケーションに関する処理を実行することを表す。
【００４５】
処理モード情報は、上述した項目以外の項目を含んでいてもよく、上述した例に限定されない。
【００４６】
次に、図２、及び、図３を参照しながら、ゲートウェイ１０１における処理について説明する。図２は、第１の実施形態に係るゲートウェイ１０１において、データ受信部１０２、アプリケーション実行部１０３、及び、データ送信部１０６等の処理の流れを示すフローチャートである。図３は、第１の実施形態に係るゲートウェイ１０１において、アプリケーション実行部１０３、処理モード決定部１０４、及び、経過時間測定部１０５等の処理の流れを示すフローチャートである。
【００４７】
図２を参照しながら、データ受信部１０２、アプリケーション実行部１０３、及び、データ送信部１０６等における処理について説明する。
【００４８】
端末５０１は、データ処理装置５０２によって処理されるデータを、ゲートウェイ１０１に送信する。
【００４９】
ゲートウェイ１０１において、データ受信部１０２は、端末５０１が送信したデータを受信し（ステップＳ１０１）、受信したデータをアプリケーション実行部１０３に対して出力する。
【００５０】
アプリケーション実行部１０３は、データ受信部１０２が出力したデータを入力し、入力したデータに応じた、少なくとも１つのアプリケーションを選択する（ステップＳ１０２）。アプリケーション実行部１０３は、たとえば、受信したデータに含まれているＩＰアドレスや、ポート番号に基づき、複数のアプリケーションの中から、実行する対象であるアプリケーションを、少なくとも１つ選択する。尚、ＩＰは、Ｉｎｔｅｒｎｅｔ＿Ｐｒｏｔｏｃｏｌの略称を表す。
【００５１】
次に、アプリケーション実行部１０３は、選択したアプリケーションを実行する処理モードを特定する（ステップＳ１０３）。アプリケーション実行部１０３は、たとえば、アプリケーションを実行する処理モードを表す処理モード情報（図６に例示）に基づき、選択したアプリケーションを表すアプリケーションＩＤに関連付けされた処理モードを特定する。アプリケーション実行部１０３は、たとえば、第２アプリケーションを選択した場合に、処理モード情報（図６に例示）において、アプリケーションＩＤ「第２アプリケーション」に関連付けされた処理モード「第１処理モード」を特定する。
【００５２】
アプリケーション実行部１０３は、入力したデータに関して、選択したアプリケーションに関する処理を、特定した処理モードに従い実行する（ステップＳ１０４）。たとえば、アプリケーション実行部１０３は、特性情報（図４に例示）において、第２アプリケーションに関連付けされた、第１処理モード（「ゲートウェイ、データ処理装置、・・・」）を読み取る。次に、アプリケーション実行部１０３は、読み取った第１処理モードに基づき、第２アプリケーションにおける処理（２−１）を自装置にて処理し、データ処理装置５０２に処理（２−２）を要求する要求情報（リクエスト）と、処理（２−１）の結果情報とをデータ送信部１０６に対して出力する。データ送信部１０６は、アプリケーション実行部１０３が出力した結果情報、及び、要求情報を入力し、入力した結果情報、及び、入力した要求情報を、データ処理装置５０２に送信する（ステップＳ１０５）。
【００５３】
言い換えると、アプリケーション実行部１０３は、選択したアプリケーションに従い処理を実行する場合に、該アプリケーションに含まれている全ての処理を、必ずしも、実行する必要はなく、データ処理装置５０２に、一部の処理を実行するよう要求する要求情報（信号）を送信してもよい。この場合に、要求情報を受信したデータ処理装置５０２は、該要求情報に応じて処理を実行し、実行した結果を表す結果情報を、アプリケーション実行部１０３に送信してもよい。アプリケーション実行部１０３は、データ処理装置５０２が要求情報に応じて送信した結果情報を受信してもよい。
【００５４】
次に、図３を参照しながら、アプリケーション実行部１０３、処理モード決定部１０４、及び、経過時間測定部１０５等の処理について説明する。
【００５５】
経過時間測定部１０５は、アプリケーション実行部１０３が実行する１つ以上のアプリケーションに関する処理に要した応答時間を測定する（ステップＳ１１１）。該応答時間は、たとえば、データ受信部１０２が出力したデータを受信してから、受信したデータに関してアプリケーション実行部１０３が、ある処理モードにて該アプリケーションを実行し、データ送信部１０６が実行した結果を表す結果情報を送信するまでに要する所要時間を表す。次に、経過時間測定部１０５は、該アプリケーションが実行された処理モードと、該アプリケーションを表すアプリケーションＩＤと、測定した該応答時間とが関連付けされた状態情報（図５に例示）を作成する（ステップＳ１１２）。
【００５６】
処理モード決定部１０４は、該状態情報（図５に例示）のうち、第１処理モードにて処理されたアプリケーションを表すアプリケーションＩＤと、該アプリケーションに関連付けされた応答時間（すなわち、該アプリケーションにおける処理に要した所要時間）とを特定する。次に、処理モード決定部１０４は、読み取ったアプリケーションＩＤに関連付けされた要求応答時間（すなわち、該アプリケーションに関する要求応答時間）を、特性情報（図４に例示）に基づき特定する。処理モード決定部１０４は、読み取った要求応答時間と、読み取った応答時間との長短を比較する（ステップＳ１１３）。言い換えれば、処理モード決定部１０４は、第１処理モードにて処理された各アプリケーションに関して、要求応答時間と、応答時間との長短を比較する。
【００５７】
第１処理モードにて処理されたアプリケーションに応答時間が要求応答時間より長いアプリケーションが含まれている場合に（ステップＳ１１４にてＹＥＳ）、処理モード決定部１０４は、第１処理モードにて処理されたアプリケーションのうち、応答時間が要求応答時間よりも長いアプリケーションを少なくとも１つ選択する（ステップＳ１１５）。処理モード決定部１０４は、選択したアプリケーションを表すアプリケーションＩＤをアプリケーション実行部１０３に対して出力する。
【００５８】
アプリケーション実行部１０３は、処理モード決定部１０４が出力したアプリケーションＩＤを入力し、入力したアプリケーションＩＤに関する処理モードを変更する（ステップＳ１１６）。アプリケーション実行部１０３は、変更後の処理モードと、アプリケーションＩＤとが関連付けされた処理モード情報を、処理モード情報記憶部２０３に格納してもよい。
【００５９】
第１処理モードにて処理されたアプリケーションに、応答時間が要求応答時間よりも長いアプリケーションが含まれていない場合に（ステップＳ１１４にてＮＯ）、ステップＳ１１５、ステップＳ１１６に示された処理は実行されない。
【００６０】
処理モード決定部１０４における処理について、より具体的に説明する。処理モード決定部１０４は、状態情報（図５に例示）のうち、第１処理モードに関連付けされたアプリケーションＩＤと、応答時間とを特定する。たとえば、処理モード決定部１０４は、状態情報（図５に例示）において、処理モード「第１処理モード」に関連付けされたアプリケーションＩＤ「第２アプリケーション」と、当該処理モード「第１処理モード」に関連付けされた応答時間「１２０ｍｓ」とを特定する。次に、処理モード決定部１０４は、特定したアプリケーションＩＤに関連付けされた要求応答時間を、特性情報（図４に例示）に基づき特定する。たとえば、処理モード決定部１０４は、特定したアプリケーションＩＤ「第２アプリケーション」に関連付けされた要求応答時間「１０００ｍｓ」を、特性情報（図４に例示）に基づき特定する。
【００６１】
次に、処理モード決定部１０４は、特定した応答時間（たとえば、１２０ｍｓ）と、特定した要求応答時間（たとえば、１０００ｍｓ）との長短を比較する。同様に、処理モード決定部１０４は、第１処理モードにて処理された第１アプリケーション、及び、第３アプリケーションに関して、それぞれ、特定した応答時間と、特定した要求応答時間との長短を比較する。
【００６２】
図４に例示された特性情報と、図５に例示された第１処理モードにて処理され状態情報とを比較すると、アプリケーションのうち、第１アプリケーションは、応答時間（図５における「５５０ｍｓ」）が要求応答時間（図４における「５００ｍｓ」よりも長いアプリケーションである。この場合に、処理モード決定部１０４は、該応答時間が該要求応答時間よりも長いアプリケーションとして、第１アプリケーションを選択する。該応答時間が該要求応答時間よりも長いアプリケーションが複数である場合に、処理モード決定部１０４は、複数のアプリケーションのうち、少なくとも１つのアプリケーションを選択する。
【００６３】
次に、アプリケーション実行部１０３は、処理モード決定部１０４が出力したアプリケーションＩＤを入力し、入力したアプリケーションＩＤが表すアプリケーションが実行される処理モードを変更する。具体的に、アプリケーション実行部１０３は、処理モード情報（図６に例示）に基づき、受信したアプリケーションＩＤに関連付けされた処理モードを特定し、特定した処理モードとは異なる処理モードを、特性情報（図４に例示）に基づき特定する。
【００６４】
たとえば、アプリケーション実行部１０３は、処理モード情報（図６に例示）に基づき、第２アプリケーションに関連付けされた第１処理モードを特定するとする。次に、アプリケーション実行部１０３は、特性情報（図４に例示）に基づき、第２アプリケーションに関して、第１処理モードとは異なる第２処理モードを特定する。アプリケーション実行部１０３は、特定した第２処理モードと、第２アプリケーションとが関連付けされた情報を含む処理モード情報（図６に例示）を作成する。この結果、ゲートウェイ１０１は、次に、データを受信した場合に、ステップＳ１１６にて更新された後の処理モード情報に従い、該データに応じた処理を実行することができる。
【００６５】
また、該応答時間が該要求応答時間よりも長いアプリケーションが複数である場合に、処理モード決定部１０４は、複数のアプリケーションのうち、ゲートウェイ１０１にて処理される処理時間が長い処理モードから、ゲートウェイ１０１にて処理される処理時間が短い処理モードに変更してもよい。
【００６６】
次に、第１の実施形態に係るゲートウェイ１０１に関する効果について説明する。
【００６７】
第１の実施形態に係るゲートウェイ１０１等によれば、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを提供することができる。この理由は、アプリケーションに関する処理に要する所要時間が、該アプリケーションに関する要求応答時間を超えている場合に、該アプリケーションにおける処理を実行する処理先を変更するからである。さらに、この理由について、詳細に説明する。
【００６８】
アプリケーションは、たとえば、顔認証サービスに関して説明したように、複数の処理を含んでいる。該複数の処理においては、一般に、該処理に要する処理量が異なっており、さらに、該処理間においては、一般に、入出力されるデータ量が異なっている。たとえば、顔認証サービスにおいては、顔画像切り出し処理と、特徴点選択処理との間においては、切り出した画像が入出力され、また、特徴点選択処理と、特徴点データ照合処理との間においては、選択した特徴点を表す結果情報が入出力される。一般に、画像のデータ量は、特徴点を表す情報のデータ量よりも多い。
【００６９】
したがって、アプリケーションにおける各処理が実行される処理先が異なっている場合には、該アプリケーションに関する処理に要する所要時間は、異なっている。本実施形態に係るゲートウェイ１０１は、アプリケーションに関する処理に要する所要時間が、該アプリケーションに関する処理に関する要求応答時間を超えた場合には、該アプリケーションにおける各処理が実行される処理先を変更する。すなわち、本実施形態に係るゲートウェイ１０１は、該アプリケーションにおける各処理が実行される処理先を表す処理モードを変更する。この結果、ゲートウェイ１０１は、該アプリケーションが短期間にて処理される処理モードを提供することができる。
【００７０】
＜第２の実施形態＞
次に、上述した第１の実施形態を基本とする本発明の第２の実施形態について説明する。
【００７１】
以降の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第１の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
【００７２】
図７を参照しながら、本発明の第２の実施形態に係るゲートウェイ１２１が有する構成について詳細に説明する。図７は、本発明の第２の実施形態に係るゲートウェイ１２１が有する構成を示すブロック図である。
【００７３】
第２の実施形態に係るゲートウェイ１２１は、データ受信部１０２と、アプリケーション実行部１０３と、処理モード決定部１２４と、経過時間測定部１０５と、データ送信部１０６とを有する。
【００７４】
ゲートウェイ１２１は、通信ネットワークを介して、少なくとも１台の端末５０１、及び、少なくとも１台のデータ処理装置５０２に通信接続することができる。ゲートウェイ１２１は、処理対象であるアプリケーションに関する情報を含む特性情報（図９を参照しながら後述する）が格納されている特性情報記憶部２２１に接続することができる。ゲートウェイ１２１は、アプリケーションに従い処理を実行した場合に計測（測定）された情報を表す状態情報（図５に例示）が格納される状態情報記憶部２０２に接続することができる。ゲートウェイ１２１は、アプリケーションを実行する処理モードを表す処理モード情報（図６に例示）を格納する処理モード情報記憶部２０３を参照することができる。ゲートウェイ１２１は、特性情報記憶部２２１、状態情報記憶部２０２、及び、処理モード情報記憶部２０３を有してもよい。
【００７５】
端末５０１は、データ処理装置５０２にて提供されているサービス（アプリケーション）を要求する端末要求情報を、ゲートウェイ１２１に送信する。ゲートウェイ１２１は受信した端末要求情報をアプリケーションにより処理し、その結果である結果情報とデータ処理装置５０２に対する要求情報（リクエスト）をデータ処理装置５０２に送信する。データ処理装置５０２は、ゲートウェイ１２１から該結果情報と、該要求情報とを受信する。
【００７６】
図９を参照しながら、本実施形態に係るゲートウェイ１２１によって参照される特性情報について説明する。図９は、第２の実施形態に係る特性情報記憶部２２１に格納されている特性情報の一例を概念的に表す図である。尚、図９に例示された特性情報は、図４に例示された特性情報と同様の構成を含むので、以降においては、図４に例示された特性情報との差異を中心に説明し、同様の構成について詳細な説明を省略する。
【００７７】
図９に例示された特性情報においては、データ処理装置５０２にて提供されているアプリケーションを表すアプリケーションＩＤと、該アプリケーションに含まれている処理を識別可能な処理ＩＤとが関連付けされている。特性情報においては、さらに、該アプリケーションに含まれている各処理が処理される処理先、該処理先にて実行される処理に要する所要時間、及び、該処理先にて処理される場合に要する通信ネットワーク帯域を含む処理モードに関連付けされている（たとえば、図９における第１処理モードの列）。特性情報においては、さらに、該アプリケーションＩＤが表すアプリケーションに関する応答時間として要求される要求応答時間に関連付けされている。
【００７８】
処理モードは、アプリケーションにおける各処理が処理される処理先と、処理先が自装置である処理に要する所要時間（第１処理時間）と、処理先がデータ処理装置５０２である処理に要する所要時間（第２処理時間）と該処理先にて処理される場合に要する通信ネットワーク帯域を含む（たとえば、図９における「第１処理モード」の列）。
【００７９】
言い換えれば、第２処理時間は、第１処理モードから第２処理モードにすることにより、ゲートウェイ１２１にて実行されない処理をデータ処理装置５０２にて処理するのに要する所要時間である。たとえば、上述した例において、第２処理時間は、顔認証サービスにおける特徴点選択処理である。第２処理時間は、データ処理装置５０２と、ゲートウェイ１２１との間において実行される通信処理に要する通信時間を含んでもよい。
【００８０】
次に、図８を参照しながら、第２の実施形態に係るゲートウェイ１２１における処理について説明する。図８は、第２の実施形態に係るゲートウェイ１２１における処理を示すフローチャートである。
【００８１】
経過時間測定部１０５、及び、処理モード決定部１２４は、第１の実施形態に示された処理と同様の処理を実行する（ステップＳ１１１、乃至、ステップＳ１１３）。すなわち、ステップＳ１１１、乃至、ステップＳ１１３における処理において、処理モード決定部１２４は、状態情報（図５に例示）に基づき、第１処理モードにて処理されたアプリケーションを特定する。第１処理モードにて処理されたアプリケーションに応答時間が要求応答時間よりも長いアプリケーションが含まれている場合に（ステップＳ１１４にてＹＥＳ）、処理モード決定部１２４は、以降に示す処理を実行する。
【００８２】
処理モード決定部１２４は、特定した各アプリケーションに関して、特性情報（図４に例示）に基づき、第１処理モードとは異なる処理モード（説明の便宜上、「第２処理モード」と表す）を特定する。処理モード決定部１２４は、特性情報（図４に例示）に基づき、第２処理モードにて該アプリケーションが実行される場合に関して、ゲートウェイ１２１における所要時間（第１処理時間）と、第２処理モードにて処理するのに要する通信ネットワーク帯域と、第２処理モードに従いデータ処理装置５０２における所要時間（第２処理時間）とを特定する。同様の処理を実行することによって、処理モード決定部１２４は、第１処理モードに関して、第１処理時間と、第２処理時間と、通信ネットワーク帯域とを特定する。
【００８３】
処理モード決定部１２４は、特定した処理時間等に基づき、第１処理モードにて処理されたアプリケーションのうち、少なくとも１つのアプリケーションに関する改善度を、式１に従い算出する（ステップＳ１２５）。すなわち、
改善度＝Σ｛（（第１処理モードにおける第１処理時間）＋（第１処理モードにおける第２処理時間））−（（第２処理モードにおける第１処理時間）＋（第２処理モードにおける第２処理時間））｝÷Σ｛（第２処理モードにおける通信ネットワーク帯域）−（第１処理モードにおける通信ネットワーク帯域）｝・・・（式１）、
ただし、Σは、第１処理モードにて処理されたアプリケーションのうち、少なくとも１つのアプリケーションに関して総和を算出することを表す。
【００８４】
改善度は、第１処理モードにて処理されたアプリケーションに関して、少なくとも１つのアプリケーションに関する処理モードを、第２処理モードに変更した場合に、ゲートウェイ１２１を介して提供されるサービスが改善される程度を表す。改善度は、第１処理モードから第２処理モードに変更した場合に短縮される処理時間が長いほど大きな値である。また、改善度は、第１処理モードから第２処理モードに変更した場合に、必要な通信ネットワーク帯域が増える（すなわち、「ＮＷ帯域」における値の差異が大きい）ほど、小さな値である。すなわち、改善度は、処理時間が短縮される程度が大きいか、または、必要な通信ネットワーク帯域の増大が少ないほど、大きな値である。言い換えれば、改善度は、ゲートウェイ１２１における処理に要する第１処理時間、データ処理装置５０２における処理に要する第２処理時間、及び、データ処理装置５０２、及び、ゲートウェイ１２１との間における通信処理に要する時間に関して、第１処理モードと、第２処理モードとの差異に応じた値である。
【００８５】
処理モード決定部１２４は、たとえば、第１処理モードにて処理されたアプリケーションの組み合わせに対して、改善度（式１）を算出する。処理モード決定部１２４は、該組み合わせのうち、たとえば、最も大きな改善度を与える組み合わせを選択し、選択した組み合わせに含まれているアプリケーションを、処理モードを変更するアプリケーションとして選択する（ステップＳ１２６）。処理モード決定部１２４は、必ずしも、最も大きな改善度を与える組み合わせを選択する必要はなく、略最大の改善度を与える組み合わせであってもよい。処理モード決定部１２４は、選択したアプリケーションを表すアプリケーションＩＤをアプリケーション実行部１０３に対して出力する。
【００８６】
アプリケーション実行部１０３は、処理モード決定部１２４が出力したアプリケーションＩＤを入力し、入力したアプリケーションＩＤに関する処理モードを変更する（ステップＳ１１６）。
【００８７】
また、特性情報（図４に例示）が３つ以上の処理モードを含んでいる場合に、処理モード決定部１２４は、第１処理モードとは異なる各処理モードに関して、それぞれ、改善度を算出してもよい。
【００８８】
次に、第２の実施形態に係るゲートウェイ１２１に関する効果について説明する。
【００８９】
第２の実施形態に係るゲートウェイ１２１等によれば、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを提供することができる。この理由は、第２の実施形態に係るゲートウェイ１２１が有する構成は、第１の実施形態に係るゲートウェイ１２１が有する構成を含むからである。
【００９０】
さらに、第２の実施形態に係るゲートウェイ１２１等によれば、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを、より効率的に特定することができる。この理由は、処理モード決定部１２４が、所要時間が改善される程度を表す改善度に基づき、処理モードを選択するからである。たとえば、処理モード決定部１２４は、改善度がより大きな値を選択することによって、より大きな改善度を与える処理モードを選択する。この結果、処理モード決定部１２４は、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを、より効率的に特定することができる。
【００９１】
また、処理モード決定部１２４が最も大きな改善度を与えるアプリケーションの組み合わせを選択する場合には、第２の実施形態に係るゲートウェイ１２１等によれば、より一層、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを提供することができる。
【００９２】
尚、説明の便宜上、ゲートウェイ１２１は、第１処理モードにて処理されたアプリケーションに関して処理モードを変更する処理を実行したが、必ずしも、第１処理モードにて処理されたアプリケーションのみを、処理モードを変更する対象に設定する必要はない。たとえば、ゲートウェイ１２１は、第２処理モードにて処理されたアプリケーション、または、第３処理モードにて処理されたアプリケーション等を、処理モードを変更する対象として設定してもよい。
【００９３】
＜第３の実施形態＞
次に、本発明の第３の実施形態について説明する。
【００９４】
図１０を参照しながら、本発明の第３の実施形態に係るゲートウェイ１５１が有する構成について詳細に説明する。図１０は、本発明の第３の実施形態に係るゲートウェイ１５１が有する構成を示すブロック図である。
【００９５】
第３の実施形態に係るゲートウェイ１５１は、アプリケーション選択部１５２と、アプリケーション実行部１５３と、処理モード決定部１５４と、データ送信部１５５とを有する。
【００９６】
ゲートウェイ１５１は、通信ネットワークを介して、少なくとも１台の端末５０１、及び、少なくとも１台のデータ処理装置５０２に通信接続することができる。
【００９７】
次に、図１１を参照しながら、第３の実施形態に係るゲートウェイ１５１における処理について説明する。図１１は、第３の実施形態に係るゲートウェイ１５１における処理を示すフローチャートである。
【００９８】
ゲートウェイ１５１は、たとえば、端末５０１から、データ処理装置５０２によって処理されるデータを受信する。
【００９９】
ゲートウェイ１５１におけるアプリケーション選択部１５２は、受信したデータに応じた処理を表すアプリケーションを、少なくとも１つ選択する（ステップＳ１３１）。
【０１００】
次に、アプリケーション実行部１５３は、アプリケーション選択部１５２が選択したアプリケーションを、ある処理モードに従い実行する。アプリケーション実行部１５３は、たとえば、処理モード情報（図６に例示）に基づき、選択されたアプリケーションを表すアプリケーションＩＤに関連付けされた処理モードを特定する。アプリケーション実行部１５３は、特性情報（図４に例示）に基づき、該アプリケーションを該処理モードに含まれている処理先に従い、該アプリケーションにおける各処理を実行する。この場合に、アプリケーション実行部１５３は、処理先がゲートウェイ１５１（すなわち、自装置）である処理（説明の便宜上、「第１処理」と表す）を実行する（ステップＳ１３２）。アプリケーション実行部１５３は、処理先がデータ処理装置５０２である処理（説明の便宜上、「第２処理」と表す）を、データ処理装置５０２に要求する要求情報を作成する。アプリケーション実行部１５３は、作成した要求情報と、ステップＳ１３２にて処理を実行した結果を表す結果情報とを、データ送信部１５５に対して出力する。データ送信部１５５は、アプリケーション実行部１５３が出力した要求情報と結果情報とを入力し、入力した要求情報と入力した結果情報とをデータ処理装置５０２に送信する（ステップＳ１３３）。
【０１０１】
処理モード決定部１５４は、特性情報（図４に例示）に基づき、選択されたアプリケーションに関連付けされた要求応答時間を特定し、特定した要求応答時間と、データを受信してから結果情報を送信するまでに要した所要時間とを比較する（ステップＳ１３４）。データを受信してから結果情報を送信するまでに要した所要時間が、特定した要求応答時間を超えていれば（ステップＳ１３４にてＹＥＳ）、処理モード決定部１５４は、アプリケーション選択部１５２が選択したアプリケーションが実行される処理モードを変更する（ステップＳ１３５）。データを受信してから結果情報を送信するまでに要した所要時間が、特定した要求応答時間以下であれば（ステップＳ１３４にてＮＯ）、処理モード決定部１５４は、ステップＳ１３５における処理を実行しない。
【０１０２】
上述した説明においては、説明の便宜上、処理先は、データ処理装置５０２であるとしたが、必ずしも、データ処理装置５０２である必要はない。
【０１０３】
アプリケーション選択部１５２、及び、アプリケーション実行部１５３は、第１（または、第２）の実施形態に係るアプリケーション実行部１０３が有する機能が有する機能によって実現することができる。処理モード決定部１５４は、第１の実施形態に係る処理モード決定部１０４が有する機能、または、第２の実施形態に係る処理モード決定部１２４が有する機能によって実現することができる。データ送信部１５５は、たとえば、第１（または、第２）の実施形態に係るデータ送信部１０６が有する機能によって実現することができる。
【０１０４】
次に、第３の実施形態に係るゲートウェイ１５１に関する効果について説明する。
【０１０５】
第３の実施形態に係るゲートウェイ１５１等によれば、端末からデータ処理装置に送信されるデータが短期間にて処理される処理モードを提供することができる。この理由は、アプリケーションに関する処理に要する所要時間が、該アプリケーションに関する要求応答時間を超えている場合に、該アプリケーションにおける処理を実行する処理先を変更するからである。
【０１０６】
（ハードウェア構成例）
上述した本発明の各実施形態におけるゲートウェイを、１つの計算処理装置（情報処理装置、コンピュータ）を用いて実現するハードウェア資源の構成例について説明する。但し、係るゲートウェイは、物理的または機能的に少なくとも２つの計算処理装置を用いて実現してもよい。また、係るゲートウェイは、専用の装置として実現してもよい。
【０１０７】
図１２は、第１の実施形態乃至第３の実施形態に係るゲートウェイを実現可能な計算処理装置のハードウェア構成例を概略的に示す図である。計算処理装置２０は、中央処理演算装置（Ｃｅｎｔｒａｌ＿Ｐｒｏｃｅｓｓｉｎｇ＿Ｕｎｉｔ、以降「ＣＰＵ」と表す）２１、メモリ２２、ディスク２３、不揮発性記録媒体２４、通信インターフェース（以降、「通信ＩＦ」と表す）２７、及び、ディスプレイ２８を有する。計算処理装置２０は、入力装置２５、出力装置２６に接続可能であってもよい。計算処理装置２０は、通信ＩＦ２７を介して、他の計算処理装置、及び、通信装置と情報を送受信することができる。
【０１０８】
不揮発性記録媒体２４は、コンピュータが読み取り可能な、たとえば、コンパクトディスク（Ｃｏｍｐａｃｔ＿Ｄｉｓｃ）、デジタルバーサタイルディスク（Ｄｉｇｉｔａｌ＿Ｖｅｒｓａｔｉｌｅ＿Ｄｉｓｃ）である。また、不揮発性記録媒体２４は、ユニバーサルシリアルバスメモリ（ＵＳＢメモリ）、ソリッドステートドライブ（Ｓｏｌｉｄ＿Ｓｔａｔｅ＿Ｄｒｉｖｅ）等であってもよい。不揮発性記録媒体２４は、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体２４は、上述した媒体に限定されない。また、不揮発性記録媒体２４の代わりに、通信ＩＦ２７、及び、通信ネットワークを介して係るプログラムを持ち運びしてもよい。
【０１０９】
すなわち、ＣＰＵ２１は、ディスク２３に記憶されているソフトウェア・プログラム（コンピュータ・プログラム：以下、単に「プログラム」と称する）を、実行する際にメモリ２２にコピーし、演算処理を実行する。ＣＰＵ２１は、プログラム実行に必要なデータをメモリ２２から読み取る。表示が必要な場合には、ＣＰＵ２１は、ディスプレイ２８に出力結果を表示する。外部への出力が必要な場合には、ＣＰＵ２１は、出力装置２６に出力結果を出力する。外部からプログラムを入力する場合、ＣＰＵ２１は、入力装置２５からプログラムを読み取る。ＣＰＵ２１は、上述した図１、図７、または、図１０に示す各部が表す機能（処理）に対応するところのメモリ２２にあるゲートウェイを制御する制御プログラム（図２、図３、図８、または、図１１）を解釈し実行する。ＣＰＵ２１は、上述した本発明の各実施形態において説明した処理を順次実行する。
【０１１０】
すなわち、このような場合、本発明は、係る制御プログラムによっても成し得ると捉えることができる。さらに、係る制御プログラムが記録されたコンピュータが読み取り可能な不揮発性の記録媒体によっても、本発明は成し得ると捉えることができる。
【０１１１】
以上、上述した実施形態を模範的な例として本発明を説明した。しかし、本発明は、上述した実施形態には限定されない。すなわち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【符号の説明】
【０１１２】
１０１    ゲートウェイ
１０２    データ受信部
１０３    アプリケーション実行部
１０４    処理モード決定部
１０５    経過時間測定部
１０６    データ送信部
２０１    特性情報記憶部
２０２    状態情報記憶部
２０３    処理モード情報記憶部
５０１    端末
５０２    データ処理装置
１２１    ゲートウェイ
１２４    処理モード決定部
２２１    特性情報記憶部
１５１    ゲートウェイ
１５２    アプリケーション選択部
１５３    アプリケーション実行部
１５４    処理モード決定部
１５５    データ送信部
２０    計算処理装置
２１    ＣＰＵ
２２    メモリ
２３    ディスク
２４    不揮発性記録媒体
２５    入力装置
２６    出力装置
２７    通信ＩＦ
２８    ディスプレイ
【図１】
2017151595.tif 000003
【図２】
2017151595.tif 000004
【図３】
2017151595.tif 000005
【図４】
2017151595.tif 000006
【図５】
2017151595.tif 000007
【図６】
2017151595.tif 000008
【図７】
2017151595.tif 000009
【図８】
2017151595.tif 000010
【図９】
2017151595.tif 000011
【図１０】
2017151595.tif 000012
【図１１】
2017151595.tif 000013
【図１２】
2017151595.tif 000014