(57)【要約】【課題】複数のプロキシサーバに対する同一端末装置の同一データ要求に関わるデータの重複登録を防止できる割当装置等を提供する。【解決手段】ＰＡＮは、複数のプロキシサーバの内、端末装置からのアプリ要求に応じてアプリサーバからアプリのコンテンツデータを取得してキャッシュする誘導先プロキシサーバを割当てる。ＰＡＮは、端末装置からアプリ要求が検出されると、端末装置のＭＡＣアドレス及び端末装置がアプリ要求するアプリサーバ名に対応した割当済みの誘導先プロキシサーバがあるか否かを判定する。ＰＡＮは、割当済みの誘導先プロキシサーバがある場合に、アプリ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを付加して応答する。【選択図】図１
2014187425.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロキシサーバの内、端末装置からのデータ要求に応じて格納サーバからデータを取得し、取得されたデータを保存するプロキシサーバを割当てる割当装置であって、
前記端末装置から前記データ要求が検出されると、前記端末装置のＭＡＣアドレスに対応した割当済みのプロキシサーバがあるか否かを判定する判定部と、
前記割当済みのプロキシサーバがある場合に、前記データ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを通知する制御部と
を有することを特徴とする割当装置。
【請求項２】
前記判定部は、
前記端末装置のＭＡＣアドレス及び前記端末装置が要求する前記データに関わるデータ識別情報に対応した前記割当済みのプロキシサーバがあるか否かを判定することを特徴とする請求項１に記載の割当装置。
【請求項３】
前記端末装置毎に、当該端末装置のＩＰアドレス及びＭＡＣアドレスを対応付けて記憶した端末記憶部と、
前記端末装置から前記データ要求が検出されると、前記端末記憶部を参照して、当該データ要求の送信元のＩＰアドレスに対応したＭＡＣアドレスを取得する取得部と、
前記端末装置のＭＡＣアドレス、前記端末装置が要求する前記データに関わるデータ識別情報及び、当該データを取得するのに割当済みのプロキシサーバを対応付けて記憶した割当記憶部とをさらに有し、
前記判定部は、
前記割当記憶部を参照して、前記データ要求に関わる前記端末装置のＭＡＣアドレス及びデータ識別情報に対応した前記割当済みのプロキシサーバがあるか否かを判定することを特徴とする請求項２に記載の割当装置。
【請求項４】
前記制御部は、
前記判定部によって、前記割当記憶部を参照して、前記データ要求に関わる前記端末装置のＭＡＣアドレス及びデータ識別情報に対応した前記割当済みのプロキシサーバがないと判定された場合に、複数のプロキシサーバの内、プロキシサーバを割り当て、当該プロキシサーバ、当該データ要求の前記端末装置のＭＡＣアドレス及びデータ識別情報を前記割当記憶部に記憶することを特徴とする請求項３に記載の割当装置。
【請求項５】
前記制御部は、
前記複数のプロキシサーバの内、各プロキシサーバの負荷量に基づき、前記プロキシサーバを割当てることを特徴とする請求項２〜４の何れか一つに記載の割当装置。
【請求項６】
前記制御部は、
前記データ要求の前記端末装置の前記ＭＡＣアドレス、前記データ識別情報及び前記割当済みのプロキシサーバを割当情報として前記割当記憶部に記憶されると、各割当装置を管理する制御サーバに前記割当情報を通知すると共に、
前記制御サーバから前記割当情報を受信した場合に、前記割当情報を前記割当記憶部に記憶することを特徴とする請求項２〜５の何れか一つに記載の割当装置。
【請求項７】
前記制御部は、
同一グループ内の端末装置にＩＰアドレスを割り当てるＩＰ割当サーバから当該端末装置のＩＰアドレス及びＭＡＣアドレスを取得すると、当該端末装置毎のＩＰアドレス及びＭＡＣアドレスを前記端末記憶部に記憶することを特徴とする請求項１〜６の何れか一つに記載の割当装置。
【請求項８】
前記データ要求毎に、当該データ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求を識別する識別子を管理する管理サーバに対して、前記端末装置からのデータ要求を受信した場合に、当該データ要求を転送する転送部をさらに有し、
前記制御部は、
前記管理サーバから前記端末装置のデータ要求の応答結果として前記識別子を受信し、受信された前記識別子に基づき、前記端末装置からのデータ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求であるか否かを判定することを特徴とする請求項１〜７の何れか一つに記載の割当装置。
【請求項９】
前記データ要求毎に、当該データ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求を識別する識別子を管理する識別子記憶部をさらに有し、
前記制御部は、
前記端末装置からのデータ要求を受信すると、前記識別子記憶部の前記識別子を参照し、前記端末装置からの前記データ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求であるか否かを判定することを特徴とする請求項１〜７の何れか一つに記載の割当装置。
【請求項１０】
複数のプロキシサーバの内、端末装置からのデータ要求に応じて格納サーバからデータを取得し、取得されたデータを保存するプロキシサーバを割当てる情報処理装置に、
前記端末装置から前記データ要求が検出されると、前記端末装置のＭＡＣアドレスに対応した割当済みのプロキシサーバがあるか否かを判定し、
前記割当済みのプロキシサーバがある場合に、前記データ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを通知する
各処理を実行させることを特徴とする割当プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、割当装置及び割当プログラムに関する。
【背景技術】
【０００２】
例えば、企業等のユーザが各拠点で端末装置からアプリケーション（以下、単にアプリと称する）を取得する際は、企業内のＬＡＮ（Local  Area  Network）やインターネット等のＷＡＮ（Wide  Area  Network）経由で格納先のアプリサーバからアプリを取得する。この際、端末装置とＷＡＮとの間にアプリレイヤの中継装置であるプロキシサーバを配置し、端末装置は、プロキシサーバを用いてアプリサーバからアプリを取得している。
【０００３】
端末装置がアプリサーバに対してアプリを要求する場合に、割当装置は、アプリサーバのアクセス先アプリＵＲＬ宛のアプリ要求を誘導する誘導先プロキシサーバを複数のプロキシサーバ内から端末装置に割当てる。誘導先プロキシサーバは、端末装置の代わりに、要求対象のアプリを格納したアクセス先アプリＵＲＬにアクセスしてアプリのコンテンツデータを取得してキャッシュする。そして、端末装置は、誘導先プロキシサーバにアクセスし、誘導先プロキシサーバ内のキャッシュデータを取得することで、要求対象のアプリを取得できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１３０６０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
割当装置は、アプリ要求の端末装置に割当てられるＩＰアドレスで当該端末装置を識別し、当該端末装置に要求対象のアプリに関わる誘導先プロキシサーバを割当てる。
【０００６】
しかしながら、例えば、ドメイン毎に、同一端末装置に異なるＩＰアドレスを割当てるシステムでは、端末装置がドメイン間を移動した場合、移動前後でＩＰアドレスが異なる。従って、割当装置は、同一端末装置が同一アプリを要求している場合でも、移動前後での端末装置のＩＰアドレスが異なるため、同一端末装置に対して異なる誘導先プロキシサーバを割当ててしまうことになる。その結果、移動前後の誘導先の両プロキシサーバに対して、同一端末装置に関わる同一アプリのキャッシュデータが重複登録されてしまう。
【０００７】
一つの側面では、複数のプロキシサーバに対する、同一端末装置に関わる同一データの重複登録を防止できる割当装置及び割当プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
一つの案では、複数のプロキシサーバの内、端末装置からのデータ要求に応じて格納サーバからデータを取得し、取得されたデータを保存するプロキシサーバを割当てる割当装置である。更に、割当装置は、前記端末装置から前記データ要求が検出されると、前記端末装置のＭＡＣアドレスに対応した割当済みのプロキシサーバがあるか否かを判定する判定部を有する。更に、割当装置は、前記割当済みのプロキシサーバがある場合に、前記データ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを通知する制御部を有する。
【発明の効果】
【０００９】
開示の態様では、複数のプロキシサーバに対する、同一端末装置に関わる同一データの重複登録を防止できる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１のデータ提供システムの一例を示す説明図である。
【図２】図２は、ＰＡＮの一例を示す説明図である。
【図３】図３は、端末テーブルの一例を示す説明図である。
【図４】図４は、候補リストテーブルの一例を示す説明図である。
【図５】図５は、クエリテーブルの一例を示す説明図である。
【図６】図６は、割当テーブルの一例を示す説明図である。
【図７】図７は、パケットのフォーマット構成の一例を示す説明図である。
【図８】図８は、実施例１のデータ提供システムの事前準備処理に関わる処理動作の一例を示すシーケンス図である。
【図９】図９は、実施例１のデータ提供システムのプロキシサーバ割当処理に関わる処理動作の一例を示すシーケンス図である。
【図１０】図１０は、ＤＮＳクエリ転送処理に関わるＰＡＮの処理動作の一例を示すフローチャートである。
【図１１】図１１は、ＤＮＳ応答転送処理に関わるＰＡＮの処理動作の一例を示すフローチャートである。
【図１２】図１２は、端末装置移動時のＤＮＳ応答転送処理に関わる処理動作の一例を示すシーケンス図である。
【図１３】図１３は、実施例１のデータ提供システム内の各プロキシサーバのキャッシュ状態の一例を示す説明図である。
【図１４】図１４は、実施例２のデータ提供システムの事前準備処理に関わる処理動作の一例を示すシーケンス図である。
【図１５】図１５は、ＤＮＳクエリ転送処理に関わるＰＡＮの処理動作の一例を示すフローチャートである。
【図１６】図１６は、ＤＮＳ応答転送処理に関わるＰＡＮの処理動作の一例を示すフローチャートである。
【図１７】図１７は、実施例３のデータ提供システムの一例を示す説明図である。
【図１８】図１８は、割当プログラムを実行する情報処理装置の一例を示す説明図である。
【発明を実施するための形態】
【００１１】
以下、図面に基づいて、本願の開示する割当装置及び割当プログラムの実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【実施例１】
【００１２】
図１は、実施例１のデータ提供システムの一例を示す説明図である。図１に示すデータ提供システム１は、複数のドメインＤ（Ｄ１，Ｄ２）と、データセンタ（以下、単にＤＣと称する）２とを有し、ドメインＤとＤＣ２との間をＷＡＮ３で接続している。ドメインＤは、例えば、地域内の企業拠点ビル内のサブネットアドレス群を管理するグループである。ＤＣ２は、ＤＮＳ（Domain  Name  System）サーバ１１と、中継ルールサーバ１２と、複数のアプリサーバ１３と、割当制御装置（Proxy  Assignment  Controller:以下、単にＰＡＣと称する）１４とを有する。
【００１３】
アプリサーバ１３は、アプリを格納し、格納されたアプリを提供する、例えば、格納サーバである。尚、アプリは、例えば、Ｗｅｂプロトコルで動作するアプリだけでなく、Ｗｅｂ(ＨＴＴＰ)プロトコル以外のプロトコル等で動作するアプリも含むものである。中継ルールサーバ１２は、例えば、ＤＮＳサーバ１１やアプリサーバ１３に対するアクセス可否を制御するアクセス制御／転送制御のルールを提供するサーバである。ＤＮＳサーバ１１は、複数のアプリサーバ１３を管理する、例えば、管理サーバである。ＰＡＣ１４は、ドメインＤ毎に配置された割当装置（Proxy  Assignment  executing  Node:以下、単にＰＡＮと称する）２１を管理する、例えば、制御サーバである。
【００１４】
ドメインＤは、複数のサブネットＮ（Ｎ１−１、Ｎ１−２）と、ＰＡＮ２１と、複数のプロキシサーバ２２とを有する。更に、サブネットＮは、端末装置３１と、ＤＨＣＰ（Dynamic  Host  Configuration  Protocol）サーバ３２とを有する。端末装置３１は、ユーザが使用する、例えば、パーソナルコンピュータ、スマートフォン、タブレット端末や、通信機能を備えたセンサ機器等である。ＤＨＣＰサーバ３２は、サブネットＮ内の端末装置３１や機器にＩＰアドレス等の情報を自動的に割当てる、例えば、ＩＰ割当サーバである。尚、ＤＨＣＰサーバ３２は、管轄するサブネットＮ内の端末装置３１にＩＰアドレスを付与し、その付与した端末装置３１毎のＩＰアドレス及びＭＡＣアドレスをＰＡＮ２１に通知する。ＤＨＣＰサーバ３２は、端末装置３１に、その端末装置３１が使用するＤＮＳサーバ１１を割り当てる（通知する）。
【００１５】
ドメインＤ内のプロキシサーバ２２は、端末装置３１の代わりに、ＷＡＮ３内のプロキシサーバ３Ａ経由で端末装置３１が要求する要求対象のアプリを格納したアプリサーバ１３にアクセスする。更に、プロキシサーバ２２は、アプリサーバ１３から要求対象のアプリのコンテンツデータを取得してキャッシュする。また、ＰＡＮ２１は、端末装置３１からのアプリ要求に応じて、ドメインＤ内の複数のプロキシサーバ２２の内、要求する要求対象のアプリに関わる誘導先プロキシサーバ２２をアプリ要求の端末装置３１に割当てる。例えば、ドメインＤ１のＰＡＮ２１Ａは、端末装置３１からのアプリ要求に応じてプロキシサーバ２２Ａ、２２Ｂの内、要求対象のアプリに関わる誘導先プロキシサーバ２２Ａを割当てるものとする。また、ＰＡＮ２１は、複数のプロキシサーバ２２の内、プロキシサーバ２２のＣＰＵ負荷量及びキャッシュ量を考慮して誘導先プロキシサーバ２２を選定する。その結果、誘導先プロキシサーバ２２の負荷が偏らないように調整できる。尚、説明の便宜上、ドメインＤ１の構成について説明したが、ドメインＤ２内のＰＡＮ２１Ｂについても、ほぼ同様であるため、その重複する説明については省略する。
【００１６】
図２は、ＰＡＮ２１の一例を示す説明図である。図２に示すＰＡＮ２１は、通信インタフェース４１と、記憶部４２と、ＣＰＵ４３とを有する。通信インタフェース４１は、例えば、ドメインＤ１内の各ＤＨＣＰサーバ３２や各端末装置３１と通信接続すると共に、ＷＡＮ３と通信接続するインタフェースである。通信インタフェース４１は、ＷＡＮ３経由でＤＮＳサーバ１１やＰＡＣ１４と通信接続する。記憶部４２は、端末テーブル５１と、候補リストテーブル５２と、クエリテーブル５３と、割当テーブル５４とが格納されている。
【００１７】
図３は、端末テーブル５１の一例を示す説明図である。図３に示す端末テーブル５１は、例えば、ドメインＤ１内に在圏する端末装置３１のアドレス情報を管理する、例えば、端末記憶部である。端末テーブル５１は、ＤＨＣＰサーバＩＰ５１Ａと、端末ＩＰ５１Ｂと、端末ＭＡＣ５１Ｃと、開始時間５１Ｄと、終了時間５１Ｅとを対応付けて管理している。ＤＨＣＰサーバＩＰ５１Ａは、端末装置３１にＩＰアドレスを割当てたＤＨＣＰサーバ３２のＩＰアドレスである。端末ＩＰ５１Ｂは、ＤＨＣＰサーバ３２に割当てられた端末装置３１のＩＰアドレスである。端末ＭＡＣ５１Ｃは、端末装置３１単体の装置固有のアドレスである。開始時間５１Ｄは、ＤＨＣＰサーバ３２が当該端末装置３１にＩＰアドレスを割当てたＩＰリースの開始日時である。終了時間５１Ｅは、ＤＨＣＰサーバ３２が当該端末装置３１にＩＰアドレスを割当てたＩＰリースの終了予定日時である。
【００１８】
図４は、候補リストテーブル５２の一例を示す説明図である。図４に示す候補リストテーブル５２は、ＰＡＮ２１が管理する同一ドメインＤ内のプロキシサーバ２２を誘導先候補として管理している。候補リストテーブル５２は、プロキシＩＤ５２Ａ及びプロキシＩＰ５２Ｂを対応付けて管理している。プロキシＩＤ５２Ａは、誘導先候補であるプロシキサーバ２２のＩＤである。プロキシＩＰ５２Ｂは、誘導先候補であるプロキシサーバ２２のＩＰアドレスである。尚、ドメインＤ１内のＰＡＮ２１Ａの誘導先候補は、例えば、プロキシサーバ２２Ａ及び２２Ｂである。
【００１９】
図５は、クエリテーブル５３の一例を示す説明図である。図５に示すクエリテーブル５３は、例えば、ＰＡＮ２１でＤＮＳクエリを転送する際の転送前クエリ情報及び転送後クエリ情報を対応付けて管理している。クエリテーブル５３は、送信元ＩＰ５３Ａと、転送前クエリ情報の問合せＩＤ５３Ｂと、転送後クエリ情報の問合せＩＤ５３Ｃとを対応付けて管理している。送信元ＩＰ５３Ａは、ＤＮＳクエリに格納された送信元のＩＰアドレスである。転送前クエリ情報の問合せＩＤ５３Ｂは、ＤＮＳクエリを識別するＩＤである。転送後クエリ情報の問合せＩＤ５３Ｃは、転送するＤＮＳクエリを識別するＩＤである。ＰＡＮ２１は、クエリテーブル５３を参照し、例えば、端末装置３１からＤＮＳサーバ１１にＤＮＳクエリを転送できる。更に、ＰＡＮ２１は、クエリテーブル５３を参照して、例えば、ＤＮＳサーバ１１から端末装置３１に対して、ＤＮＳクエリに対応したＤＮＳ応答を転送できる。
【００２０】
図６は、割当テーブル５４の一例を示す説明図である。図６に示す割当テーブル５４は、端末ＭＡＣ５４Ａと、アプリサーバ名５４Ｂと、プロキシサーバＩＤ５４Ｃとを対応付けて管理する、例えば、割当記憶部である。端末ＭＡＣ５４Ａは、アプリ要求した端末装置３１のＭＡＣアドレスである。アプリサーバ名５４Ｂは、要求対象のアプリを格納したアプリサーバ１３を識別するものである。プロキシサーバＩＤ５４Ｃは、要求対象のアプリを格納したアプリサーバ１３の誘導先のプロキシサーバ２２を識別するＩＤである。ＰＡＮ２１は、割当テーブル５４を参照し、アプリ要求の端末装置３１のＭＡＣアドレス及び要求対象のアプリサーバ名５４Ｂを特定する。ＰＡＮ２１は、特定されたＭＡＣアドレス及びアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２のプロキシサーバＩＤ５４Ｃを識別する。
【００２１】
図２に示すＣＰＵ４２は、転送部６１と、応答転送部６２と、割当部６３とを有する。ＣＰＵ４２は、記憶部４３に記憶中の図示せぬ割当プログラムを読み出し、読み出された割当プログラムに基づき、これら転送部６１、応答転送部６２及び割当部６３をプロセスとして実行するものである。転送部６１は、端末装置３１からのＤＮＳクエリを受信した場合、ＤＮＳクエリをＤＮＳサーバ１１に転送する。この際、転送部６１は、ＤＮＳクエリ内の送信元ＩＰ５３Ａ及び問合せＩＤ５３Ｂを取得し、送信元ＩＰ５３Ａ及び問合せＩＤ５３Ｂを対応付けてクエリテーブル５３に登録する。更に、転送部６１は、ＤＮＳクエリをＤＮＳサーバ１１に転送する際、転送後のＤＮＳクエリ内の問合せＩＤ５３Ｃをクリエテーブル５３に登録する。
【００２２】
割当部６３は、判定部６３Ａと、制御部６３Ｂとを有する。判定部６３Ａは、端末装置３１からアプリ要求が検出されると、割当テーブル５４を参照して、端末装置３１のＭＡＣアドレス及び要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２があるか否かを判定する。制御部６３Ｂは、割当済みの誘導先プロキシサーバ２２がある場合に、応答転送部６２を通じて、アプリ要求の端末装置３１に対して、当該割当済みの誘導先プロキシサーバ２２のＩＰアドレスを付加したＤＮＳ応答を送信する。
【００２３】
ＤＮＳサーバ１１は、ＰＡＮ２１で転送されたＤＮＳクエリの応答としてＤＮＳ応答をＰＡＮ２１に送信する。ＰＡＮ２１は、ＤＮＳサーバ１１からＤＮＳ応答を受信した場合、クエリテーブル５３内の転送後クエリ情報の問合せＩＤ５３Ｃを参照し、問合せＩＤ５３Ｃに対応した送信元ＩＰ５３ＡのＩＰアドレスを特定する。更に、ＰＡＮ２１は、特定された送信元ＩＰ５３ＡのＩＰアドレスの端末装置３１に対してＤＮＳ応答を転送する。
【００２４】
図７は、パケットのフォーマット構成の一例を示す説明図である。図７に示すパケット７１は、例えば、ＤＮＳクエリやＤＮＳ応答等のパケットである。パケット７１は、問合せＩＤ７１Ａと、フラグ７１Ｂと、質問数７１Ｃと、回答数７１Ｄと、オーソリティ数７１Ｅと、追加情報数７１Ｆとを有する。更に、パケット７１は、質問セクション７１Ｇと、回答リソースレコード７１Ｈと、オーソリティリソースレコード７１Ｉと、追加情報リソースレコード７１Ｊとを有する。問合せＩＤ７１Ａは、１６ビット構成のＩＤであって、ＤＮＳクエリとＤＮＳ応答とで同一ＩＤ値が使用されるものである。フラグ７１Ｂは、パケット７１の種別を１６ビット構成で示し、例えば、パケット７１がＤＮＳクエリ又はＤＮＳ応答を識別するフラグである。質問数７１Ｃは、例えば、ＤＮＳクエリ中の質問数である。回答数７１Ｄは、例えば、ＤＮＳ応答中の回答数である。オーソリティ数７１Ｅは、例えば、ＤＮＳ応答中の回答を生成したＤＮＳサーバ１１の数である。追加情報数７１Ｆは、例えば、ＤＮＳ応答中の追加した情報の数である。質問セクション７１Ｇは、ＤＮＳサーバ１１に問い合わせたいアプリサーバ名である。回答リソースレコード７１Ｈは、ＤＮＳサーバ１１からの回答内容やアプリサーバ名に対応したＩＰアドレスを格納している。オーソリティリソースレコード７１Ｉは、ＤＮＳサーバ１１のオーソリティ情報（ＤＮＳサーバ名）を格納している。追加情報リソースレコード７１Ｊは、例えば、ＤＮＳサーバ１１の回答の追加情報である。
【００２５】
ＤＨＣＰサーバ３２は、ドメインＤ間を端末装置３１が移動した場合、端末装置３１に新たなＩＰアドレスを割当てる。また、ＤＨＣＰサーバ３２は、端末装置３１のＤＮＳサーバ１１として移動先ドメインＤにあるＰＡＮ２１を割り当てる。そして、ＤＨＣＰサーバ３２は、端末装置３１のＩＰアドレス及びＭＡＣアドレスをリース情報としてＰＡＮ２１に通知する。ＰＡＮ２１は、端末装置３１のＩＰアドレスの他に端末固有のＭＡＣアドレスを端末テーブル５１に管理する。ＰＡＮ２１は、端末テーブル５１を参照して、ＭＡＣアドレスでアプリ要求の端末装置３１を識別し、端末装置３１からのＤＮＳクエリ内の送信元ＩＰに対応したＭＡＣアドレスと、アプリサーバ名とを対応付けて誘導先のプロキシサーバ２２を割り当てる。
【００２６】
ＤＣ２内のアプリサーバ１３は、アプリを格納した格納サーバである。アプリサーバ１３は、誘導先プロキシサーバ２２経由でアプリを提供するアプリサーバ１３Ａと、誘導先プロキシサーバ２２を使用せずにアプリを提供するアプリサーバ１３Ｂとがある。尚、誘導先プロキシサーバ２２経由でアプリを提供するアプリサーバ１３Ａは、アプリ提供者との契約で決定するものである。アプリサーバ１３Ｂは、アプリ提供者との契約が未契約の場合である。
【００２７】
端末装置３１は、ＰＡＮ２１から誘導先プロキシサーバ２２のＩＰアドレスを受信した場合、誘導先プロキシサーバ２２経由で要求対象のアプリに関わるキャッシュデータを取得する。尚、キャッシュデータには、要求対象のアプリに関わるコンテンツデータの他に、アクセス制御ルール及び転送制御ルール等を含む。
【００２８】
次に実施例１のデータ提供システム１の動作について説明する。図８は、実施例１のデータ提供システム１の事前準備処理に関わる処理動作の一例を示すシーケンス図である。管理者１５は、例えば、ＤＣ２内のプロキシサーバ管理者である。管理者１５は、例えば、ドメインＤ１の複数のサブネットＮをまとめ、ドメイン名を定義してＰＡＣ１４に設定する（ステップＳ１１）。更に、管理者１５は、ドメインＤ１内にＰＡＮ２１Ａを設置し（ステップＳ１２）、ドメインＤ１及びＰＡＮ２１ＡのＩＰアドレスと、ドメインＤ１内の各プロキシサーバ２２Ａ及び２２ＢのＩＰアドレスを対応付けてＰＡＣ１４内に登録する（ステップＳ１３）。
【００２９】
更に、ＰＡＣ１４は、誘導先候補設定情報をドメインＤ１内のＰＡＮ２１Ａに設定する（ステップＳ１４）。尚、誘導先候補設定情報は、ドメインＤ１内のプロキシサーバ２２Ａ及び２２Ｂを誘導先候補として提示する情報である。ＰＡＮ２１Ａは、ＰＡＣ１４からの誘導先候補のプロキシサーバ２２Ａ及び２２Ｂを候補リストテーブル５２内に登録する（ステップＳ１５）。
【００３０】
管理者１５は、ＤＨＣＰ設定情報をサブネットＮ１−１内のＤＨＣＰサーバ３２Ａに通知する（ステップＳ１６）。尚、ＤＨＣＰ設定情報は、端末装置３１のＤＮＳクエリ先として在圏するドメインＤ１内のＰＡＮ２１ＡのＩＰアドレスを設定し、ＩＰアドレスのリース情報をドメインＤ１内のＰＡＮ２１Ａに通知すべく、ＤＨＣＰサーバ３２Ａに指示する情報である。管理者１５は、誘導先プロキシサーバ２２Ａ及び２２Ｂを使用する要求対象のアプリサーバ名及びアクセス元のドメイン名をＰＡＣ１４内に登録する（ステップＳ１７）。尚、管理者１５は、アプリ提供者との契約等でプロキシサーバ２２を使用した要求対象のアプリサーバ名及び、アクセス元のドメイン名を決定するものである。
【００３１】
ＰＡＣ１４は、誘導先プロキシサーバ２２を使用する要求対象のアプリサーバ名及び専用ＩＰをＤＮＳサーバ１１内に登録する（ステップＳ１８）。尚、専用ＩＰは、誘導先プロキシサーバ２２を使用するアプリサーバ名を示すタグ値、例えば、１．１．１．１のＩＰである。尚、ＤＮＳサーバ１１は、要求対象のアプリサーバ名及び専用ＩＰを対応付けて一括管理するため、その管理先が１箇所で済む。また、専用ＩＰは、ＰＡＮ２１がＤＮＳクエリの応答メッセージを見てプロキシサーバ２２への誘導対象であるか否かを判断するための識別子である。尚、専用ＩＰは、例えば、システム全体で固定で割り出した値でも良い。また、専用ＩＰは、例えば、誘導対象としたアプリサーバのＩＰアドレスそのものでも良い。また、専用ＩＰは、例えば、ＤＮＳのＣＮＡＭＥ機能により要求対象のアプリサーバ名（例えば、appll.aa.com）を置換したサーバ名（例えば、appll.dummy.com）でも良い。
【００３２】
尚、図８の例では、ドメインＤ１内のサブネットＮ１−１に関わる事前設定処理を例示したが、同一ドメインＤ１内のサブネットＮ１−２や他のドメインＤ２についても、同様の処理動作で事前設定処理を実行するものである。
【００３３】
図９は、実施例１のデータ提供システム１のプロキシサーバ割当処理に関わる処理動作の一例を示すシーケンス図である。図９に示すプロキシサーバ割当処理は、要求対象のアプリサーバ１３の誘導先プロキシサーバ２２Ａ、２２Ｂを割り当て、端末装置３１のＭＡＣアドレス及びアプリサーバ名を対応付けて割当済みの誘導先のプロキシサーバ２２のＩＰアドレスを管理する処理である。
【００３４】
図９に示すドメインＤ１のサブネットＮ１−１内のＤＨＣＰサーバ３２Ａは、端末装置３１の在圏に応じて、端末装置３１に対して端末装置３１の設定情報を通知する（ステップＳ２１）。尚、端末装置３１の設定情報は、ＤＨＣＰサーバ３２Ａで割当てられたＩＰアドレスと、端末装置３１のＤＮＳクエリ先であるＰＡＮ２１ＡのＩＰアドレスとを含むものである。更に、ＤＨＣＰサーバ３２Ａは、端末装置３１のリース情報をＰＡＮ２１Ａに通知する（ステップＳ２２）。尚、リース情報は、例えば、端末ＩＰ、端末ＭＡＣ、開始時間及び終了時間等を含むものである。
【００３５】
ＰＡＮ２１Ａは、ＤＨＣＰサーバ３２Ａから端末装置３１のリース情報を受信した場合、リース情報を端末テーブル５１に登録する（ステップＳ２３）。端末装置３１は、ＤＨＣＰサーバ３２Ａからのリース情報に基づき、アプリ要求のＤＮＳクエリをＰＡＮ２１Ａに送信する（ステップＳ２４）。尚、ＤＮＳクエリには、要求対象のアプリサーバ名、例えば、ａｐｌ１．ａａ．ｃｏｍを含むものとする。
【００３６】
更に、ＰＡＮ２１Ａは、端末装置３１からアプリ要求のＤＮＳクエリを受信すると、図１０に示すＤＮＳクエリ転送処理を実行する（ステップＳ２５）。ＰＡＮ２１Ａは、ＤＮＳクエリ転送処理を実行後、ＤＮＳクエリをＤＮＳサーバ１１に転送する（ステップＳ２６）。
【００３７】
ＤＮＳサーバ１１は、ＤＮＳクエリを受信すると、ＤＮＳクエリに対応したＤＮＳ応答をＰＡＮ２１Ａに送信する（ステップＳ２７）。尚、ＤＮＳ応答は、誘導先プロキシサーバ２２を使用する要求対象のアプリサーバ名を示す専用ＩＰを含むものである。
【００３８】
ＰＡＮ２１Ａは、ＤＮＳサーバ１１からＤＮＳ応答を受信した後、後述する、図１１に示すＤＮＳ応答転送処理を実行する（ステップＳ２８）。ＰＡＮ２１Ａは、ＤＮＳ応答転送処理を実行後、端末装置３１に関わるＭＡＣアドレス、要求対象のアクセス先アプリサーバ名及び割当済みのプロキシサーバ２２のＩＰアドレスを含む割当情報の配信依頼をＰＡＣ１４に通知する（ステップＳ２９）。
【００３９】
ＰＡＣ１４は、割当情報の配信依頼を受信した場合、他のドメインＤ２のＰＡＮ２１Ｂに割当情報を通知する（ステップＳ３０）。尚、ＰＡＣ１４は、ドメインＤ２以外にも、他のドメインＤがある場合、割当情報を他のドメインＤ内の全ＰＡＮ２１に通知するものである。ＰＡＮ２１Ｂは、ＰＡＣ１４から割当情報を受信した場合、受信した割当情報を割当テーブル５４内に登録する（ステップＳ３１）。尚、ＰＡＮ２１Ｂは、割当テーブル５４を参照して、各端末装置３１のＭＡＣアドレス、要求対象のアプリサーバ名及び誘導先のプロキシサーバ２２ＡのＩＰアドレスを識別する。
【００４０】
ＰＡＮ２１Ｂは、ステップＳ２４のＤＮＳクエリに対応したＤＮＳ応答を端末装置３１に送信する（ステップＳ３２）。尚、ＤＮＳ応答は、例えば、アプリ要求に関わる誘導先プロキシサーバ２２ＡのＩＰアドレスを含むものである。その結果、端末装置３１は、ドメインＤ１内のＰＡＮ２１ＡからＤＮＳ応答を受信した場合、ＤＮＳ応答内の誘導先プロキシサーバ２２ＡのＩＰアドレスを取得する。そして、端末装置３１は、誘導先プロキシサーバ２２ＡのＩＰアドレスに基づき、誘導先プロキシサーバ２２Ａにアクセスし、誘導先プロキシサーバ２２Ａから要求対象のアプリを取得する。
【００４１】
図１０は、ＤＮＳクエリ転送処理に関わるＰＡＮ２１Ａの処理動作の一例を示すフローチャートである。図１０においてＰＡＮ２１Ａは、端末装置３１からＤＮＳクエリを受信した場合（ステップＳ４１）、ＤＮＳクエリ内のクエリ情報をクエリテーブル５３に登録する（ステップＳ４２）。尚、クエリ情報は、ＤＮＳクエリ内の送信元ＩＰアドレス、転送前クエリ情報の問合せＩＤを含む。そして、ＰＡＮ２１Ａは、端末装置３１から受信したＤＮＳクエリをＤＮＳサーバ１１に転送し（ステップＳ４３）、図１０に示す処理動作を終了する。
【００４２】
図１０に示すＤＮＳクエリ転送処理のＰＡＮ２１Ａは、端末装置３１からＤＮＳクエリを受信した場合、転送前後のＤＮＳクエリの問合せＩＤに基づき、ＤＮＳクエリをＤＮＳサーバ１１に転送できる。
【００４３】
図１１は、ＤＮＳ応答転送処理に関わるＰＡＮ２１Ａの処理動作の一例を示すフローチャートである。図１１に示すＤＮＳ応答転送処理は、アプリ要求のＤＮＳ応答を受信した場合、端末装置３１のＭＡＣアドレス及び要求対象のアプリサーバ名に対応した、割当済みの誘導先プロキシサーバ２２のＩＰアドレスをＤＮＳ応答として端末装置３１に転送する処理である。
【００４４】
図１１においてＰＡＮ２１Ａは、ＤＮＳサーバ１１からＤＮＳ応答を受信した場合（ステップＳ５１）、ＤＮＳ応答に対応するＤＮＳクエリを検索する（ステップＳ５２）。ＰＡＮ２１Ａは、ＤＮＳ応答内の回答リソースレコード７１Ｈ内のＩＰアドレスを検索する（ステップＳ５３）。ＰＡＮ２１Ａは、回答リソースレコード７１Ｈ内のＩＰアドレスが専用ＩＰであるか否かを判定する（ステップＳ５４）。ＰＡＮ２１Ａは、回答リソースレコード７１Ｈ内のＩＰアドレスが専用ＩＰの場合（ステップＳ５４肯定）、アプリ要求が誘導先プロキシサーバ２２を使用したアプリ要求と判定する。更に、ＰＡＮ２１Ａは、端末テーブル５１を参照し、ＤＮＳクエリ内の送信元ＩＰアドレスに対応した端末装置３１のＭＡＣアドレスを検索する（ステップＳ５５）。
【００４５】
ＰＡＮ２１Ａは、端末装置３１のＭＡＣアドレスがヒットしたか否かを判定する（ステップＳ５６）。ＰＡＮ２１Ａは、端末装置３１のＭＡＣアドレスがヒットした場合（ステップＳ５６肯定）、端末テーブル５１を参照し、ヒットした端末装置３１のＭＡＣアドレスの内、開始時間が最新のＭＡＣアドレスを特定する（ステップＳ５７）。尚、開始時間が最新のＭＡＣアドレスを特定する趣旨は、終了時間経過後も、端末装置３１に割当てたＩＰアドレスが端末テーブル５１に残っている場合もある。そこで、端末テーブル５１内に同一のＩＰアドレスが複数ある場合に、最新の開始時間のＩＰアドレスを用いて、ＤＮＳクエリの端末装置３１の正確なＭＡＣアドレスを特定するものである。
【００４６】
ＰＡＮ２１Ａは、割当テーブル５４を参照し、特定された端末装置３１のＭＡＣアドレス及び、要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２のＩＰアドレスを検索する（ステップＳ５８）。ＰＡＮ２１Ａは、割当済みの誘導先プロキシサーバ２２のＩＰアドレスがヒットしたか否かを判定する（ステップＳ５９）。
【００４７】
ＰＡＮ２１Ａは、割当済みの誘導先プロキシサーバ２２のＩＰアドレスがヒットした場合（ステップＳ５９肯定）、ヒットした誘導先プロキシサーバ２２のＩＰアドレスをＤＮＳ応答内に含めて端末装置３１に応答転送する（ステップＳ６０）。そして、図１１に示す処理動作を終了する。
【００４８】
ＰＡＮ２１Ａは、割当済みの誘導先プロキシサーバ２２のＩＰアドレスがヒットしなかった場合（ステップＳ５９否定）、候補リストテーブル５２内のプロキシＩＤ５２Ａから最適な誘導先プロキシサーバ２２を選定する（ステップＳ６１）。尚、ＰＡＮ２１Ａは、誘導先プロキシサーバ２２を選定する際、候補リストテーブル５２内の各プロキシサーバ２２のＣＰＵ負荷量及びキャッシュ使用量が最適な誘導先プロキシサーバ２２を選定するものである。
【００４９】
ＰＡＮ２１Ａは、特定された誘導先プロキシサーバ２２のＩＰアドレスを、当該端末装置３１のＭＡＣアドレス及びアプリ要求のアプリサーバ名を対応付けた割当情報を割当テーブル５４に登録する（ステップＳ６２）。ＰＡＮ２１Ａは、割当テーブル５４内に割当情報を登録すると、当該ＰＡＮ２１Ａ以外の他のドメインＤ内のＰＡＮ２１に対して割当情報を配信する配信依頼をＰＡＣ１４に通知する（ステップＳ６３）。
【００５０】
更に、ＰＡＮ２１Ａは、クエリテーブル５３を参照し、ＤＮＳ応答に対応したＤＮＳクエリ内の送信元ＩＰアドレスを特定する（ステップＳ６４）。尚、ＰＡＮ２１Ａは、送信元ＩＰアドレスに基づき、ＤＮＳ応答先であるＤＮＳクエリ元の端末装置３１を特定する。ＰＡＮ２１Ａは、特定された送信元ＩＰアドレスに基づき、誘導先プロキシサーバ２２のＩＰアドレスを含むＤＮＳ応答を端末装置３１に応答転送し（ステップＳ６５）、図１１に示す処理動作を終了する。
【００５１】
また、ＰＡＮ２１Ａは、ＤＮＳ応答の回答リソースレコード７１Ｈ内のＩＰアドレスが専用ＩＰでない場合（ステップＳ５４否定）、クエリテーブル５３を参照し、ＤＮＳクエリの送信元のＩＰアドレスを特定する（ステップＳ６６）。ＰＡＮ２１Ａは、ＤＮＳ応答を送信元のＩＰアドレスに対応した端末装置３１に応答転送し（ステップＳ６７）、図１１に示す処理動作を終了する。
【００５２】
また、ＰＡＮ２１Ａは、端末装置３１のＭＡＣアドレスがヒットしなかった場合（ステップＳ５６否定）、ＤＮＳ応答のパケットを廃棄し（ステップＳ６８）、図１１に示す処理動作を終了する。
【００５３】
図１１に示すＤＮＳ応答転送処理のＰＡＮ２１Ａは、ＤＮＳサーバ１１からＤＮＳ応答内のＩＰアドレスが専用ＩＰの場合、誘導先プロキシサーバ２２経由の端末装置３１のアプリ要求と判定する。その結果、ＰＡＮ２１Ａは、ＤＮＳ応答内の専用ＩＰに基づき、誘導先のプロキシサーバ２２経由の端末装置３１と判定できる。
【００５４】
ＰＡＮ２１Ａは、端末テーブル５１を参照して、ＤＮＳ応答に対応したＤＮＳクエリの送信元ＩＰに対応した端末ＭＡＣからアプリ要求の端末装置３１を特定する。その結果、ＰＡＮ２１Ａは、ＤＮＳ応答に対応したＤＮＳクエリの送信元ＩＰに対応したＭＡＣアドレスを特定できる。
【００５５】
ＰＡＮ２１Ａは、割当テーブル５４を参照し、端末ＭＡＣ及び要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２を特定し、誘導先プロキシサーバ２２のＩＰアドレスをＤＮＳ応答に付加して端末装置３１に応答転送する。その結果、ＰＡＮ２１Ａは、複数の誘導先プロキシサーバ２２に対する、同一端末装置３１の同一要求対象のアプリに関わるキャッシュデータの重複登録を防止できる。
【００５６】
ＰＡＮ２１Ａは、割当テーブル５４を参照し、端末ＭＡＣ及び要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２がない場合、候補リストテーブル５２内のプロキシサーバ２２から誘導先プロキシサーバ２２を選定する。この際、ＰＡＮ２１Ａは、各プロキシサーバ２２のＣＰＵ負荷量及びキャッシュ使用量に基づき誘導先プロキシサーバ２２を選定する。その結果、ＰＡＮ２１Ａは、候補リストテーブル５２から最適な誘導先プロキシサーバ２２を選定できる。
【００５７】
更に、ＰＡＮ２１Ａは、新たな割当情報を割当テーブル５４内に登録した場合、割当情報の配信依頼をＰＡＣ１４に通知する。そして、ＰＡＣ１４は、割当情報の配信依頼を受信した場合、割当情報を他のドメインＤ内のＰＡＮ２１に報知する。各ＰＡＮ２１は、最新の割当情報を割当テーブル５４内に登録している。その結果、各ＰＡＮ２１は、端末装置３１がドメインＤ間を移動した場合でも、複数の誘導先プロキシサーバ２２に対する、同一端末装置３１の同一要求対象のアプリに関わるキャッシュデータの重複登録を防止できる。
【００５８】
次に端末装置３１が誘導先プロキシサーバ２２Ａからアプリのキャッシュデータを取得する際の動作について説明する。
【００５９】
端末装置３１は、ＰＡＮ２１Ａから要求対象の誘導先プロキシサーバ２２ＡのＩＰアドレスを含むＤＮＳ応答を受信した場合、ＩＰアドレスに基づき、誘導先プロキシサーバ２２Ａにアクセスする。誘導先プロキシサーバ２２Ａは、端末装置３１から認証ヘッダ内の端末ＩＤを特定する。尚、端末ＩＤは、例えば、端末装置３１の識別ＩＤや利用者ＩＤ等である。
【００６０】
また、誘導先プロキシサーバ２２Ａでは、認証ヘッダがない場合、端末装置３１に対して利用者ＩＤ及びパスワードを要求する。そして、誘導先プロキシサーバ２２Ａは、端末装置３１からの利用者ＩＤ及びパスワードで端末装置３１を認証し、認証ヘッダを端末装置３１に通知することで、以降、端末装置３１発のメッセージには端末ＩＤを含む認証ヘッダが付加する。
【００６１】
そして、誘導先プロキシサーバ２２Ａは、端末ＩＤ及び要求対象のアプリに対応したコンテンツデータを検索する。誘導先プロキシサーバ２２Ａは、コンテンツデータの検索ミスヒットの場合、端末ＩＤ及びアクセス先ＵＲＬに対応したアクセス制御ルール及び転送ルールを中継ルールサーバ１２から取得する。誘導先プロキシサーバ２２Ａは、アクセス先ＵＲＬに対応したアプリサーバ１３にメッセージを転送し、アプリサーバ１３から、コンテンツデータが添付された応答メッセージを受信する。その結果、誘導先プロキシサーバ２２Ａは、例えば、コンテンツデータ、アクセス制御ルール及び転送ルールを、ユーザＩＤとアクセス先ＵＲＬに関連付けてキャッシュする。
【００６２】
また、誘導先プロキシサーバ２２Ａは、コンテンツデータの検索ヒットの場合、アプリサーバ１３を転送せず、端末装置３１のＤＮＳクエリに対してコンテンツデータを応答する。その結果、端末装置３１は、誘導先プロキシサーバ２２Ａ経由からアプリのコンテンツデータを取得できる。
【００６３】
図１２は、端末装置３１の移動時のＤＮＳ応答転送処理に関わる処理動作の一例を示すシーケンス図である。尚、図１２では、ドメインＤ１内のサブネットＮ１−１から他のドメインＤ２のサブネットＮ１−２に端末装置３１が移動した場合を例示している。図１２において移動後のドメインＤ２内のサブネットＮ２−１内のＤＨＣＰサーバ３２Ｃは、端末装置３１の在圏に応じて、当該端末装置３１に対して端末装置３１の設定情報を通知する（ステップＳ７１）。尚、設定情報は、端末装置３１に付与したＩＰアドレスの他に、端末装置３１のＤＮＳクエリ先であるＰＡＮ２１ＢのＩＰアドレスを含むものとする。更に、ＤＨＣＰサーバ３２Ｃは、端末装置３１のリース情報をＰＡＮ２１Ｂに通知する（ステップＳ７２）。尚、リース情報は、端末装置３１のＩＰアドレス、端末装置３１のＭＡＣアドレス、開始時間及び終了時間等を含む。
【００６４】
ＰＡＮ２１Ｂは、ＤＨＣＰサーバ３２Ｃから端末装置３１のリース情報を受信した場合、リース情報を端末テーブル５１に記憶する（ステップＳ７３）。端末装置３１は、ＤＨＣＰサーバ３２Ｃからの設定情報に基づき、アプリ要求のＤＮＳクエリをＰＡＮ２１Ｂに送信する（ステップＳ７４）。尚、ＤＮＳクエリには、要求対象のアクセス先アプリサーバ名、例えば、ａｐｌ１．ａａ．ｃｏｍを含むものとする。
【００６５】
更に、ＰＡＮ２１Ｂは、端末装置３１からのＤＮＳクエリを受信すると、図１０に示すＤＮＳクエリ転送処理を実行する（ステップＳ７５）。ＰＡＮ２１Ｂは、ＤＮＳ転送処理を実行後、ＤＮＳクエリをＤＮＳサーバ１１に転送する（ステップＳ７６）。
【００６６】
ＤＮＳサーバ１１は、ＤＮＳクエリを受信すると、ＤＮＳクエリに対応したＤＮＳ応答をＰＡＮ２１Ｂに送信する（ステップＳ７７）。尚、ＤＮＳ応答は、誘導先プロキシサーバ２２を使用する要求対象のアプリサーバ名に対応した専用ＩＰを含む。
【００６７】
ＰＡＮ２１Ｂは、ＤＮＳ応答を受信した後、図１１に示すＤＮＳ応答転送処理を実行する（ステップＳ７８）。ＰＡＮ２１Ｂは、ＤＮＳ応答転送処理を実行した後、ステップＳ７４のＤＮＳクエリに対応したＤＮＳ応答を端末装置３１に転送する（ステップＳ７９）。尚、ＤＮＳ応答は、アプリ要求に関わる誘導先のプロキシサーバ２２ＡのＩＰアドレスを含むものである。その結果、端末装置３１は、ドメインＤ２内のＰＡＮ２１ＢからＤＮＳ応答を受信した場合、ＤＮＳ応答内の割当済みの誘導先プロキシサーバ２２ＡのＩＰアドレスに基づき、誘導先プロキシサーバ２２にアクセスする。そして、端末装置３１は、誘導先プロキシサーバ２２から要求対象のアプリを取得する。つまり、端末装置３１は、在圏するドメインＤ２内のプロキシサーバ２２Ｃを使用するのではなく、割当済みのドメインＤ１内のプロキシサーバ２２Ａを使用して要求対象のアプリサーバ１３にアクセスする。
【００６８】
図１３は、実施例１のデータ提供システム１内の各プロキシサーバ２２のキャッシュ状態の一例を示す説明図である。ドメインＤ１内の端末装置３１Ａは、ＵＲＬ−Ｘ１のアプリサーバ１３の誘導先プロキシサーバ２２Ａとする。ドメインＤ１内の端末装置３１Ｂは、ＵＲＬ−Ｘ２のアプリサーバ１３の誘導先プロキシサーバ２２Ｂとする。更に、端末装置３１Ａは、ドメインＤ１からドメインＤ２に移動したとする。
【００６９】
ドメインＤ１内のプロキシサーバ２２Ａ内のキャッシュデータには、コンテンツキャッシュ情報としてアクセス先であるＵＲＬ−Ｘ１のアプリサーバ１３に関わるＵＲＬ及び格納場所が格納されている。更に、プロキシサーバ２２Ａ内のキャッシュデータには、アクセス制御ルールとして、端末装置３１Ａからのアクセスを許可し、端末装置３１Ａの送信元ＩＰ、ＵＲＬ及び転送先可否が格納されている。更に、プロキシサーバ２２Ａ内のキャッシュデータには、端末装置３１Ａからのアクセス転送を許可し、転送制御ルールとしてＵＲＬ−Ｘ１のアプリサーバ１３及びＵＲＬ−Ｘ３のアプリサーバ１３Ｂの転送先としてプロキシサーバ３Ａが格納されている。
【００７０】
ドメインＤ１内のプロキシサーバ２２Ｂ内のキャッシュデータには、コンテンツキャッシュ情報としてアクセス先であるＵＲＬ−Ｘ２のアプリサーバ１３に関わるＵＲＬ及び格納場所が格納されている。更に、プロキシサーバ２２Ｂ内のキャッシュデータには、アクセス制御ルールとして、端末装置３１Ｂからのアクセスを許可し、端末装置３１Ｂの送信元ＩＰ、ＵＲＬ及び転送先可否が格納されている。更に、プロキシサーバ２２Ｂ内のキャッシュデータには、端末装置３１Ｂからのアクセス転送を許可し、転送制御ルールとしてＵＲＬ−Ｘ２のアプリサーバ１３の転送先としてプロキシサーバ３Ａが格納されている。
【００７１】
ドメインＤ２内のプロキシサーバ２２Ｃ内のキャッシュデータには、コンテンツキャッシュ情報としてアクセス先であるＵＲＬ−Ｘ２のアプリサーバ１３及びＵＲＬ−Ｘ３のアプリサーバ１３Ｂに関わるＵＲＬ及び格納場所が格納されている。更に、プロキシサーバ２２Ｃ内のキャッシュデータには、アクセス制御ルールとして、端末装置３１Ａからのアクセスを許可し、端末装置３１Ａの送信元ＩＰ、ＵＲＬ及び転送先可否が格納されている。更に、プロキシサーバ２２Ｃ内のキャッシュデータには、端末装置３１Ａからのアクセス転送を許可し、転送制御ルールとしてＵＲＬ−Ｘ２のアプリサーバ１３及びＵＲＬ−Ｘ３のアプリサーバ１３Ｂの転送先としてプロキシサーバ３Ａが格納されている。
【００７２】
つまり、端末装置３１Ａは、ＵＲＬ−Ｘ１に対するアプリ要求の誘導先プロキシサーバ２２Ａが割当済みの場合、ドメインＤ１からドメインＤ２に移動した場合でも、ドメインＤ２内のプロキシサーバ２２Ｃを使用せず、誘導先プロキシサーバ２２Ａにアクセスする。その結果、ＵＲＬ−Ｘ１のアプリ要求に関わるキャッシュデータは、誘導先プロキシサーバ２２Ａに集約されるため、複数のプロキシサーバ２２への重複登録を防止できる。
【００７３】
実施例１のＰＡＮ２１は、端末装置３１からアプリ要求が検出されると、端末装置３１の端末ＭＡＣ及び端末装置３１が要求するアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２のＩＰアドレスがあるか否かを判定する。ＰＡＮ２１は、割当済みのプロキシサーバ２２のＩＰアドレスがある場合に、アプリ要求の端末装置３１に対して、割当済みの誘導先プロキシサーバ２２のＩＰアドレスを付加してＤＮＳ応答する。その結果、端末装置３１は、自端末の端末ＭＡＣ及びアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２のＩＰアドレスを取得できる。
【００７４】
ＰＡＮ２１は、端末ＭＡＣ及びアプリサーバ名で割当済みの誘導先プロキシサーバ２２を割当テーブル５４で管理する。その結果、ＰＡＮ２１は、端末装置３１がドメインＤ間を移動した場合でも、誘導先プロキシサーバ２２に対する同一端末装置３１及び同一アプリに関わるキャッシュデータの重複登録を防止できる。しかも、キャッシュデータの重複登録を防止することで、プロキシサーバ２２の有限なるキャッシュ容量を節減できる。
【００７５】
ＰＡＮ２１は、割当テーブル５４を参照し、アプリ要求に関わる端末装置３１の端末ＭＡＣ及びアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２のＩＰアドレスがない場合、候補リストテーブル５２から最適な誘導先プロキシサーバ２２を選定する。その結果、ＰＡＮ２１は、端末装置３１に対して最適な誘導先プロキシサーバ２２を割当てることができる。
【００７６】
ＰＡＮ２１は、候補リストテーブル５２から各プロキシサーバ２２のＣＰＵ負荷量及びキャッシュ使用量が最低の最適な誘導先プロキシサーバ２２を選定する。その結果、ＰＡＮ２１は、各プロキシサーバ２２の負荷を平準化して負荷の偏りを防止できる。
【００７７】
ＰＡＮ２１は、アプリ要求の端末装置３１のＭＡＣアドレス、アプリサーバ名及び割当済みの誘導先プロキシサーバ２２のＩＰアドレスを割当情報として割当テーブル５４に記憶した場合、各ＰＡＮ２１を管理するＰＡＣ１４に割当情報の配信依頼を通知する。そして、ＰＡＣ１４は、配信依頼に応じて各ＰＡＮ２１に割当情報を配信する。そして、各ＰＡＮ２１は、割当情報を受信した場合、割当情報を割当テーブル５４に記憶する。その結果、各ＰＡＮ２１は、割当テーブル５４の内容を共通化することで、同一端末装置３１の同一要求対象のアプリに関わるキャッシュデータの誘導先プロキシサーバ２２への重複登録を防止できる。
【００７８】
ＰＡＮ２１は、同一サブネットＮ内の端末装置３１にＩＰアドレスを割り当てるＤＨＣＰサーバ３２から当該端末装置３１のＩＰアドレス及びＭＡＣアドレスを取得すると、端末装置３１毎のＩＰアドレス及びＭＡＣアドレスを端末テーブル５１に記憶する。その結果、ＰＡＮ２１は、ＩＰアドレスは勿論のこと、ＭＡＣアドレスで端末装置３１を識別できる。
【００７９】
ＤＮＳサーバ１１は、アプリ要求毎に、当該アプリ要求が、誘導先プロキシサーバ２２経由でアプリを取得するアプリ要求であることを示す専用ＩＰを一括管理する。ＰＡＮ２１は、端末装置３１のアプリ要求の応答結果としてＤＮＳサーバ１１から専用ＩＰを受信し、専用ＩＰの有無に基づき、端末装置３１からのアプリ要求が、誘導先プロキシサーバ２２を使用するアプリ要求であるか否かを判定する。ＰＡＮ２１は、ＤＮＳサーバ１１からのＤＮＳ応答内の専用ＩＰで誘導先プロキシサーバ２２のアプリ要求を識別できる。
【００８０】
データ提供システム１では、端末装置３１のＭＡＣアドレス及びアクセス先アプリサーバ名に対応したキャッシュデータが、端末装置３１のドメインＤ間の移動に依らずに、１台の誘導先プロキシサーバ２２に集約される。その結果、各プロキシサーバ２２でキャッシュデータの重複登録を防止し、かつ、各プロキシサーバ２２のキャッシュデータ量の偏りを防止できる。
【００８１】
尚、実施例１では、ＤＮＳサーバ１１が要求対象のアプリサーバ名及び専用ＩＰを対応付けて一括管理する。そして、ＰＡＮ２１は、ＤＮＳサーバ１１から専用ＩＰを含むＤＮＳ応答を受信し、専用ＩＰに基づき、アプリ要求が誘導先プロキシサーバ２２を使用するアプリ要求と判定した。しかしながら、各ドメインＤのＰＡＮ２１が誘導先プロキシサーバ２２を使用するアプリ要求を識別するアプリサーバ名を管理しても良い。この場合の実施の形態につき、実施例２として以下に説明する。尚、実施例１のデータ提供システム１と同一の構成には、同一符号を付すことで、その重複する構成及び動作の説明については省略する。
【実施例２】
【００８２】
図１４は、実施例２のデータ提供システムに関わる事前準備処理に関わる処理動作の一例を示すシーケンス図である。図１４においてデータ提供システム１Ａ内の管理者１５は、ステップＳ１７にて誘導先プロキシサーバ２２を用いて要求対象のアプリサーバ名をＰＡＣ１４内に登録した後、要求対象のアプリサーバ名を各ドメインＤ内のＰＡＮ２１に登録する（ステップＳ１８Ａ）。各ＰＡＮ２１は、要求対象のアプリサーバ名を図示せぬ誘導対象テーブル内に登録し（ステップＳ１９Ａ）、図１４に示す処理動作を終了する。尚、誘導対象テーブルは、要求対象のアプリサーバ名を管理している。各ドメインＤ内のＰＡＮ２１は、要求対象のアプリサーバ名を誘導対象テーブル内に登録している。
【００８３】
図１５は、ＤＮＳクエリ転送処理に関わるＰＡＮ２１Ａの処理動作の一例を示すフローチャートである。ＤＮＳクエリ転送処理は、アプリ要求のＤＮＳクエリを受信した場合、端末装置３１のＭＡＣアドレス及び要求対象のアプリサーバ名に対応した、割当済みの誘導先プロキシサーバ２２のＩＰアドレスを付加したＤＮＳ応答として端末装置３１に転送する処理である。
【００８４】
図１５においてＰＡＮ２１Ａは、端末装置３１からＤＮＳクエリを受信した場合（ステップＳ１０１）、ＤＮＳクエリ内の質問セクション７１Ｇ中に格納された問合せ先ホスト名を抽出する（ステップＳ１０２）。ＰＡＮ２１Ａは、抽出された問合せ先ホスト名が誘導対象テーブル内の要求対象のアプリサーバ名から検索する（ステップＳ１０３）。
【００８５】
ＰＡＮ２１は、要求対象のアプリサーバ名がヒットしたか否かを判定する（ステップＳ１０４）。ＰＡＮ２１Ａは、要求対象のアプリサーバ名がヒットした場合（ステップＳ１０４肯定）、端末テーブル５１を参照して、ＤＮＳクエリの送信元ＩＰのＩＰアドレスに対応した端末装置３１のＭＡＣアドレスを検索する（ステップＳ１０５）。
【００８６】
ＰＡＮ２１Ａは、端末装置３１のＭＡＣアドレスがヒットしたか否かを判定する（ステップＳ１０６）。ＰＡＮ２１Ａは、端末テーブル５１を参照し、ヒットした端末装置３１のＭＡＣアドレスの内、開始時間が最新のＭＡＣアドレスを特定する（ステップＳ１０７）。
【００８７】
ＰＡＮ２１Ａは、割当テーブル５４を参照し、特定された端末装置３１のＭＡＣアドレス及び、要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２のＩＰアドレスを検索する（ステップＳ１０８）。ＰＡＮ２１Ａは、割当済みのプロキシサーバ２２のＩＰアドレスがヒットしたか否かを判定する（ステップＳ１０９）。
【００８８】
ＰＡＮ２１Ａは、割当済みの誘導先プロキシサーバ２２のＩＰアドレスがヒットした場合（ステップＳ１０９肯定）、ヒットしたプロキシサーバ２２のＩＰアドレスをＤＮＳ応答内に含めて端末装置３１に送信する（ステップＳ１１０）。そして、図１５に示す処理動作を終了する。
【００８９】
ＰＡＮ２１Ａは、割当済みの誘導先プロキシサーバ２２のＩＰアドレスがヒットしなかった場合（ステップＳ１０９否定）、候補リストテーブル５２から最適な誘導先プロキシサーバ２２として選定する（ステップＳ１１１）。尚、ＰＡＮ２１Ａは、誘導先プロキシサーバ２２を選定する際、候補リストテーブル５２から各プロキシサーバ２２のＣＰＵ負荷量及びキャッシュ使用量が最適なプロキシサーバ２２を選定する。
【００９０】
ＰＡＮ２１Ａは、選定された誘導先プロキシサーバ２２のＩＰアドレスを、当該端末装置３１のＭＡＣアドレス及びアプリ要求のアプリサーバ名を対応付けた割当情報を割当テーブル５４に登録する（ステップＳ１１２）。ＰＡＮ２１Ａは、割当テーブル５４内に割当情報を登録すると、当該ＰＡＮ２１Ａ以外の他のドメインＤ内のＰＡＮ２１に対して割当情報を配信する配信依頼をＰＡＣ１４に通知する（ステップＳ１１３）。
【００９１】
更に、ＰＡＮ２１Ａは、クエリテーブル５３を参照し、ＤＮＳ応答に対応したＤＮＳクエリ内の送信元ＩＰのＩＰアドレスを特定する（ステップＳ１１４）。尚、ＰＡＮ２１Ａは、送信元ＩＰのＩＰアドレスに基づき、送信元の端末装置３１を特定する。ＰＡＮ２１Ａは、特定された送信元ＩＰアドレスに基づき、誘導先のプロキシサーバ２２のＩＰアドレスを含むＤＮＳ応答を端末装置３１に送信する（ステップＳ１１５）。そして、図１５に示す処理動作を終了する。
【００９２】
また、ＰＡＮ２１Ａは、要求対象のアプリサーバ名がヒットしなかった場合（ステップＳ１０４否定）、ＤＮＳクエリ内の情報をクエリテーブル５３に登録する（ステップＳ１１６）。ＰＡＮ２１Ａは、ＤＮＳクエリをＤＮＳサーバ１１に転送し（ステップＳ１１７）、図１５に示す処理動作を終了する。
【００９３】
また、ＰＡＮ２１Ａは、端末装置３１のＭＡＣアドレスがヒットしなかった場合（ステップＳ１０６否定）、ＤＮＳクエリのパケットを廃棄し（ステップＳ１１８）、図１５に示す処理動作を終了する。
【００９４】
図１５のＤＮＳ応答転送処理のＰＡＮ２１Ａは、端末装置３１からＤＮＳクエリを受信し、ＤＮＳクエリの問合せ先ホスト名が誘導対象テーブル内の要求対象のアプリサーバ名の場合、誘導先プロキシサーバ２２経由の端末装置３１のアプリ要求と判定する。その結果、ＰＡＮ２１Ａは、誘導対象テーブルを参照し、端末装置３１のＤＮＳクエリが誘導先プロキシサーバ２２経由の要求対象のアプリ要求と判定できる。そして、ＰＡＮ２１Ａは、ＤＮＳサーバ１１に問い合わせることなく、誘導先プロキシサーバ２２のアプリ要求と判定できるため、応答速度が向上する。
【００９５】
ＰＡＮ２１Ａは、端末テーブル５１を参照して、ＤＮＳクエリの送信元ＩＰに対応した端末ＭＡＣからアプリ要求の端末装置３１を特定する。その結果、ＰＡＮ２１Ａは、ＤＮＳクエリの送信元ＩＰに対応したＭＡＣアドレスを特定できる。
【００９６】
ＰＡＮ２１Ａは、割当テーブル５４を参照し、端末ＭＡＣ及び要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２を特定し、誘導先プロキシサーバ２２のＩＰアドレスをＤＮＳ応答に付加して端末装置３１に応答する。その結果、ＰＡＮ２１Ａは、複数の誘導先プロキシサーバ２２に対して、同一端末装置３１の同一要求対象のアプリに関わるキャッシュデータの重複登録を防止できる。
【００９７】
ＰＡＮ２１Ａは、割当テーブル５４を参照し、端末ＭＡＣ及び要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２がない場合、候補リストテーブル５２内のプロキシサーバ２２から誘導先プロキシサーバ２２を選定する。この際、ＰＡＮ２１Ａは、各プロキシサーバ２２のＣＰＵ負荷量及びキャッシュ使用量に基づき誘導先プロキシサーバ２２を選定する。その結果、ＰＡＮ２１Ａは、候補リストテーブル５２から最適な誘導先プロキシサーバ２２を選定できる。
【００９８】
更に、ＰＡＮ２１Ａは、新たな割当情報を割当テーブル５４内に登録した場合、割当情報の配信依頼をＰＡＣ１４に通知する。そして、ＰＡＣ１４は、割当情報の配信依頼に応じて、割当情報を他のドメインＤ内の各ＰＡＮ２１に配信する。ＰＡＮ２１は、割当情報を受信した場合、当該割当情報を割当テーブル５４内に登録する。その結果、各ＰＡＮ２１は、最新の割当情報を割当テーブル５４内に登録しているため、端末装置３１がドメインＤ間を移動した場合でも、複数の誘導先プロキシサーバ２２へのキャッシュデータの重複登録を防止できる。
【００９９】
図１６は、ＤＮＳ応答転送処理に関わるＰＡＮ２１Ａの処理動作の一例を示すフローチャートである。図１６に示すＤＮＳ応答転送処理は、ＤＮＳサーバ１１からＤＮＳクエリに対応したＤＮＳ応答を端末装置３１に転送する処理である。
【０１００】
図１６においてＰＡＮ２１Ａは、ＤＮＳサーバ１１からＤＮＳ応答を受信した場合（ステップＳ１２１）、クエリテーブル５３を参照し、ＤＮＳ応答に対応したＤＮＳクエリを検索する（ステップＳ１２２）。ＰＡＮ２１Ａは、クエリテーブル５３を参照し、ＤＮＳクエリの送信元ＩＰのＩＰアドレスを特定する（ステップＳ１２３）。ＰＡＮ２１Ａは、送信元ＩＰのＩＰアドレスの端末装置３１に対して、ＤＮＳサーバ１１からのＤＮＳ応答を転送し（ステップＳ１２４）、図１６に示す処理動作を終了する。
【０１０１】
実施例２のＰＡＮ２１は、アプリ要求毎に、当該アプリ要求が、誘導先プロキシサーバ２２を使用するアプリ要求を識別する要求対象のアプリサーバ名を管理する誘導対象テーブルを有する。ＰＡＮ２１は、端末装置３１からのアプリ要求を受信すると、誘導対象テーブルを参照し、端末装置３１からのアプリ要求が、誘導先プロキシサーバ２２を使用したアプリ要求であるか否かを判定する。その結果、ＰＡＮ２１は、端末装置３１からＤＮＳクエリをＤＮＳサーバ１１に転送せずとも、端末装置３１のアプリ要求が誘導先プロキシサーバ２２を使用したアプリ要求であるか否かを判定できるため、ＤＮＳクエリに対する応答速度の向上を図ることができる。
【０１０２】
尚、上記実施例１及び２では、ドメインＤ毎にＰＡＮ２１を配置し、端末装置３１がドメインＤ間で移動し、端末装置３１が要求対象のアプリを要求する場合には割当済みの誘導先プロキシサーバ２２を使用した。従って、移動元のドメインＤ１と移動先のドメインＤ２とが近隣の場合には有効である。
【０１０３】
しかしながら、端末装置３１の移動元のドメインＤ１と移動先のドメインＤ２との間の距離が長い場合がある。例えば、移動元のドメインＤ１が神奈川県で、移動先のドメインＤ２が北海道の場合、端末装置３１が北海道からわざわざ神奈川県の誘導先プロキシサーバ２２を使用することになるため、ＤＮＳクエリに対する応答速度が低下することも考えられる。そこで、このような想定に対処する実施の形態として、以下に実施例３として説明する。尚、実施例１のアプリ提供システム１と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明については省略する。
【実施例３】
【０１０４】
図１７は、実施例３のデータ提供システムの一例を示す説明図である。図１７に示すデータ提供システム１ＢのドメインＤ３は、サブネットＮ毎にＰＡＮ２１（２１Ｄ，２１Ｅ）を配置している。ＰＡＮ２１は、端末装置３１の割当情報をＰＡＣ１４に通知する。そして、ＰＡＣ１４は、割当情報を受信したＰＡＮ２１Ｄが配置された同一ドメインＤ３内の全ＰＡＮ２１Ｅに割当情報を配信する。しかし、ＰＡＣ１４は、割当情報を受信したＰＡＮ２１Ｅが配置されたドメインＤ３と異なるドメインＤ４内のＰＡＮ２１（２１Ｆ）への割当情報の配信を禁止する。
【０１０５】
例えば、端末装置３１がドメインＤ３内のサブネットＮ３−１に在圏中にアプリ要求をＰＡＮ２１Ｄに通知したとする。この際、ＰＡＮ２１Ｄは、アプリ要求の端末装置３１の誘導先プロキシサーバ２２のＩＰアドレスを端末装置３１に提供する際、割当情報を割当テーブル５４内に登録する。更に、ＰＡＮ２１Ｄは、割当情報をＰＡＣ１４に通知する。
【０１０６】
ＰＡＣ１４は、ＰＡＮ２１Ｄからの割当情報を受信した場合、当該ＰＡＮ２１Ｄと同一ドメインＤ３内の他のＰＡＮ２１Ｅに割当情報を配信する。尚、ＰＡＣ１４は、割当情報を送信したＰＡＮ２１Ｅと異なるドメインＤ４内の全ＰＡＮ２１に対する割当情報の配信を禁止する。同一ドメインＤ３内の各ＰＡＮ２１Ｄ，２１Ｅは、ＰＡＣ１４からの割当情報を受信した場合、割当情報を割当テーブル５４内に登録する。
【０１０７】
その結果、同一ドメインＤ３内の各ＰＡＮ２１Ｄ，２１Ｅは、同一ドメインＤ３内で端末装置３１が移動した場合でも、割当テーブル５４を参照して、当該端末装置３１のアプリ要求に関わる誘導先プロキシサーバ２２のＩＰアドレスを端末装置３１に通知する。端末装置３１は、誘導先プロキシサーバ２２のＩＰアドレスに基づき、誘導先プロキシサーバ２２から要求対象アプリのキャッシュデータを取得できる。
【０１０８】
しかしながら、端末装置３１がドメインＤ３からドメインＤ４に移動した場合、移動先のＰＡＮ２１Ｆは、割当テーブル５４を参照しても、当該端末装置３１のアプリ要求に関わる誘導先プロキシサーバ２２を検索できない。従って、ＰＡＮ２１Ｆは、移動先のドメインＤ４内で新たな誘導先プロキシサーバ２２を割当てる。そして、移動先のＰＡＮ２１Ｆは、割当情報をＰＡＣ１４に通知する。更に、ＰＡＣ１４は、当該割当情報を送信したＰＡＮ２１Ｆと同一ドメインＤ４内の各ＰＡＮ２１に割当情報を配信する。そして、同一ドメインＤ４内の各ＰＡＮ２１は、受信した割当情報を割当テーブル５４に夫々登録する。
【０１０９】
例えば、遠隔地のドメインＤ３，Ｄ４間で端末装置３１が移動した場合、移動先のＰＡＮ２１Ｆは、移動先のドメインＤ４内の要求対象のアプリに関わる誘導先プロキシサーバ２２を用いる。その結果、端末装置３１は、移動先ドメインＤ４から遠隔地のドメインＤ３内の誘導先プロキシサーバ２２を使用せず、移動先ドメインＤ４の誘導先プロキシサーバ２２を使用するため、通信距離の長距離化によるＤＮＳクエリに対する応答速度の低下を防止できる。
【０１１０】
尚、上記実施例のＰＡＮ２１は、プロキシサーバ２２と別体としたが、プロキシサーバ２２内に内蔵しても良い。
【０１１１】
また、上記実施例のＤＨＣＰサーバ３２は、端末装置３１にＩＰアドレスを割り当てると、ＰＡＮ２１に対して端末装置３１のリース情報を送信した。しかしながら、ＰＡＮ２１は、ＤＨＣＰサーバ３２に対して端末装置３１のリース情報をＰＵＬＬ方式で定期的に取得するようにしても良い。
【０１１２】
また、上記実施例のＰＡＮ２１は、ＤＮＳクエリ内の送信元ＩＰから端末ＭＡＣを特定したが、ＤＮＳクエリ内の送信元ＭＡＣから端末ＭＡＣを特定することも考えられる。しかしながら、端末装置３１とＰＡＮ２１との間にルータが配置された場合、ＤＮＳクエリ内の送信元ＭＡＣがルータのＭＡＣアドレスとなるため、端末ＭＡＣを特定できない。従って、ＰＡＮ２１は、端末テーブル５１を参照して、ＤＮＳクエリ内の送信元ＩＰから端末ＭＡＣを特定するようにした。
【０１１３】
また、上記実施例１では、ドメインＤ毎にＰＡＮ２１を配置し、ＰＡＮ２１内で割当テーブル５４内の割当情報を登録した場合、他のドメインＤ内のＰＡＮ２１に対して割当情報を配信した。しかしながら、遠隔地にあるドメインＤ間のＰＡＮ２１では、ＰＡＣ１４による割当情報の配信を禁止しても良い。この場合、ＰＡＣ１４は、ＰＡＮ２１から割当情報の配信依頼を受信した場合、当該ＰＡＮ２１のドメインＤから所定距離の遠隔地にある他のドメインＤを識別し、当該他のドメインＤ内のＰＡＮ２１への割当情報の配信を禁止する。
【０１１４】
また、端末装置３１を、例えば、センサ機器とし、プロキシサーバ２２を、例えば、ゲートウェイ（以下、単にＧＷと称する）とし、センサ機器に対してＧＷ経由でアプリサーバ１３からセンサ機器の測定アプリを提供するシステムにも適用可能である。
【０１１５】
また、上記実施例のＰＡＮ２１は、アプリ要求の端末装置３１のＭＡＣアドレス及び要求対象のアプリサーバ名に対応した割当済みの誘導先プロキシサーバ２２がある場合、アプリ要求の端末装置３１に誘導先プロキシサーバ２２のＩＰアドレスを提供する。しかしながら、ＰＡＮ２１は、アプリ要求の端末装置３１のＭＡＣアドレスに対応した割当済みの誘導先プロキシサーバ２２がある場合に、アプリ要求の端末装置３１に対して誘導先プロキシサーバ２２のＩＰアドレスを提供しても良い。
【０１１６】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【０１１７】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Central  Processing  Unit）（又はＭＰＵ（Micro  Processing  Unit）、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良いことは言うまでもない。
【０１１８】
ところで、本実施例で説明した各種の処理は、予め用意されたプログラムを情報処理装置で実行することで実現できる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行する情報処理装置の一例を説明する。図１８は、割当プログラムを実行する情報処理装置１００を示す説明図である。
【０１１９】
図１１において割当プログラムを実行する情報処理装置１００では、通信インタフェース１１０、ＲＯＭ１２０、ＲＡＭ１３０、ＣＰＵ１４０を有する。
【０１２０】
そして、ＲＯＭ１２０には、上記実施例と同様の機能を発揮する割当プログラムが予め記憶されている。尚、ＲＯＭ１２０ではなく、図示せぬドライブで読取可能な記録媒体に割当プログラムが記録されていても良い。また、記録媒体としては、例えば、ＣＤ−ＲＯＭ、ＤＶＤディスク、ＵＳＢメモリ、ＳＤカード等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。割当プログラムとしては、判定プログラム１２０Ａ及び制御プログラム１２０Ｂである。尚、プログラム１２０Ａ及び１２０Ｂについては、適宜統合又は分散しても良い。
【０１２１】
そして、ＣＰＵ１４０は、これらのプログラム１２０Ａ及び１２０ＢをＲＯＭ１２０から読み出し、これら読み出された各プログラムを実行する。そして、ＣＰＵ１４０は、各プログラム１２０Ａ及び１２０Ｂを、判定プロセス１４０Ａ及び制御プロセス１４０Ｂとして機能する。
【０１２２】
ＣＰＵ１４０は、通信インタフェース１１０を用いて、複数のプロキシサーバの内、端末装置からのデータ要求に応じて格納サーバからデータを取得し、取得されたデータを保存するプロキシサーバを割当てる。更に、ＣＰＵ１４０は、端末装置からデータ要求が検出されると、端末装置のＭＡＣアドレスに対応した割当済みのプロキシサーバがあるか否かを判定する。ＣＰＵ１４０は、割当済みのプロキシサーバがある場合に、データ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを通知する。その結果、複数のプロキシサーバに対する同一端末装置の同一データ要求に関わるデータの重複登録を防止できる。
【０１２３】
以上、本実施例を含む実施の形態に関し、更に以下の付記を開示する。
【０１２４】
（付記１）複数のプロキシサーバの内、端末装置からのデータ要求に応じて格納サーバからデータを取得し、取得されたデータを保存するプロキシサーバを割当てる割当装置であって、
前記端末装置から前記データ要求が検出されると、前記端末装置のＭＡＣアドレスに対応した割当済みのプロキシサーバがあるか否かを判定する判定部と、
前記割当済みのプロキシサーバがある場合に、前記データ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを通知する制御部と
を有することを特徴とする割当装置。
【０１２５】
（付記２）前記判定部は、
前記端末装置のＭＡＣアドレス及び前記端末装置が要求する前記データに関わるデータ識別情報に対応した前記割当済みのプロキシサーバがあるか否かを判定することを特徴とする付記１に記載の割当装置。
【０１２６】
（付記３）前記端末装置毎に、当該端末装置のＩＰアドレス及びＭＡＣアドレスを対応付けて記憶した端末記憶部と、
前記端末装置から前記データ要求が検出されると、前記端末記憶部を参照して、当該データ要求の送信元のＩＰアドレスに対応したＭＡＣアドレスを取得する取得部と、
前記端末装置のＭＡＣアドレス、前記端末装置が要求する前記データに関わるデータ識別情報及び、当該データを取得するのに割当済みのプロキシサーバを対応付けて記憶した割当記憶部とをさらに有し、
前記判定部は、
前記割当記憶部を参照して、前記データ要求に関わる前記端末装置のＭＡＣアドレス及びデータ識別情報に対応した前記割当済みのプロキシサーバがあるか否かを判定することを特徴とする付記２に記載の割当装置。
【０１２７】
（付記４）前記制御部は、
前記判定部によって、前記割当記憶部を参照して、前記データ要求に関わる前記端末装置のＭＡＣアドレス及びデータ識別情報に対応した前記割当済みのプロキシサーバがないと判定された場合に、複数のプロキシサーバの内、プロキシサーバを割り当て、当該プロキシサーバ、当該データ要求の前記端末装置のＭＡＣアドレス及びデータ識別情報を前記割当記憶部に記憶することを特徴とする付記３に記載の割当装置。
【０１２８】
（付記５）前記制御部は、
前記複数のプロキシサーバの内、各プロキシサーバの負荷量に基づき、前記プロキシサーバを割当てることを特徴とする付記２〜４の何れか一つに記載の割当装置。
【０１２９】
（付記６）前記制御部は、
前記データ要求の前記端末装置の前記ＭＡＣアドレス、前記データ識別情報及び前記割当済みのプロキシサーバを割当情報として前記割当記憶部に記憶されると、各割当装置を管理する制御サーバに前記割当情報を通知すると共に、
前記制御サーバから前記割当情報を受信した場合に、前記割当情報を前記割当記憶部に記憶することを特徴とする付記２〜５の何れか一つに記載の割当装置。
【０１３０】
（付記７）前記制御部は、
同一グループ内の端末装置にＩＰアドレスを割り当てるＩＰ割当サーバから当該端末装置のＩＰアドレス及びＭＡＣアドレスを取得すると、当該端末装置毎のＩＰアドレス及びＭＡＣアドレスを前記端末記憶部に記憶することを特徴とする付記１〜６の何れか一つに記載の割当装置。
【０１３１】
（付記８）前記データ要求毎に、当該データ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求を識別する識別子を管理する管理サーバに対して、前記端末装置からのデータ要求を受信した場合に、当該データ要求を転送する転送部をさらに有し、
前記制御部は、
前記管理サーバから前記端末装置のデータ要求の応答結果として前記識別子を受信し、受信された前記識別子に基づき、前記端末装置からのデータ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求であるか否かを判定することを特徴とする付記１〜７の何れか一つに記載の割当装置。
【０１３２】
（付記９）前記データ要求毎に、当該データ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求を識別する識別子を管理する識別子記憶部をさらに有し、
前記制御部は、
前記端末装置からのデータ要求を受信すると、前記識別子記憶部の前記識別子を参照し、前記端末装置からの前記データ要求が、前記プロキシサーバが前記格納サーバからデータを取得するデータ要求であるか否かを判定することを特徴とする付記１〜７の何れか一つに記載の割当装置。
【０１３３】
（付記１０）複数のプロキシサーバの内、端末装置からのデータ要求に応じて格納サーバからデータを取得し、取得されたデータを保存するプロキシサーバを割当てる情報処理装置に、
前記端末装置から前記データ要求が検出されると、前記端末装置のＭＡＣアドレスに対応した割当済みのプロキシサーバがあるか否かを判定し、
前記割当済みのプロキシサーバがある場合に、前記データ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを通知する
各処理を実行させることを特徴とする割当プログラム。
【０１３４】
（付記１１）複数のプロキシサーバの内、端末装置からのデータ要求に応じて格納サーバからデータを取得し、取得されたデータを保存するプロキシサーバを割当てる割当装置の割当方法であって、
前記端末装置から前記データ要求が検出されると、前記端末装置のＭＡＣアドレスに対応した割当済みのプロキシサーバがあるか否かを判定し、
前記割当済みのプロキシサーバがある場合に、前記データ要求の端末装置に対して、当該割当済みのプロキシサーバのＩＰアドレスを通知する
各処理を実行することを特徴とする割当方法。
【符号の説明】
【０１３５】
１  データ提供システム
１１  ＤＮＳサーバ
１３  アプリサーバ
１４  ＰＡＣ
２１  ＰＡＮ
２２  プロキシサーバ
３１  端末装置
３２  ＤＨＣＰサーバ
５１  端末テーブル
５４  割当テーブル
６１  転送部
６２  応答転送部
６３  割当部
６３Ａ  判定部
６３Ｂ  制御部
【図１】
2014187425.tif 000003
【図２】
2014187425.tif 000004
【図３】
2014187425.tif 000005
【図４】
2014187425.tif 000006
【図５】
2014187425.tif 000007
【図６】
2014187425.tif 000008
【図７】
2014187425.tif 000009
【図８】
2014187425.tif 000010
【図９】
2014187425.tif 000011
【図１０】
2014187425.tif 000012
【図１１】
2014187425.tif 000013
【図１２】
2014187425.tif 000014
【図１３】
2014187425.tif 000015
【図１４】
2014187425.tif 000016
【図１５】
2014187425.tif 000017
【図１６】
2014187425.tif 000018
【図１７】
2014187425.tif 000019
【図１８】
2014187425.tif 000020