(57)【要約】【課題】ネットワークを介したデータ通信の回数を低減し、ネットワークのトラフィック量を低減するデータ通信システムおよび方法を提供すること。【解決手段】本発明は、ネットワークを介してデータを通信する情報通信装置、中継サーバおよびデータサーバを含むデータ通信システムを提供する。中継サーバは、情報通信装置が送信したデータの取得要求を記憶手段に保存し、データサーバからデータの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを１度に受信し、データの取得要求の対象であるデータを情報通信装置に送信する。【選択図】  図２
2013254404.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してデータを通信する情報通信装置および中継サーバを含むデータ通信システムであって、
前記中継サーバは、
データの取得要求が保存される記憶手段と、
前記情報通信装置が送信した前記データの取得要求を前記記憶手段に保存する手段と、
前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを１度に受信する手段と、
前記データの取得要求の対象であるデータを前記情報通信装置に送信する手段と
を含む、データ通信システム。
【請求項２】
前記データ通信システムは、前記データの取得要求の対象であるデータを有するデータサーバをさらに含み、
前記データサーバは、
前記情報通信装置が送信した前記データの取得要求を前記中継サーバに要求する手段と、
前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを前記中継サーバに送信する手段とを含み、
前記中継サーバは、
前記情報通信装置が送信した前記データの取得要求を前記データサーバに送信する手段を含む、請求項１に記載のデータ通信システム。
【請求項３】
前記データ通信システムは複数のデータサーバを含んでおり、
前記中継サーバは、
前記情報通信装置のユーザに対応するデータサーバから前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを受信する、請求項１または２に記載のデータ通信システム。
【請求項４】
ネットワークを介して情報通信装置と通信可能な中継サーバが実行する方法であって、前記方法は、前記中継サーバが、
前記情報通信装置からデータの取得要求を受信して記憶手段に保存するステップと、
データサーバから前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを１度に受信するステップと、
前記データの取得要求の対象であるデータを前記情報通信装置に送信するステップと
を含む、方法。
【請求項５】
ネットワークを介して情報通信装置と通信する中継サーバと通信可能なデータサーバが実行する方法であって、前記方法は、前記データサーバが、
前記情報通信装置が送信した前記データの取得要求を前記中継サーバに要求するステップと、
前記中継サーバから複数のデータの取得要求を１度に受信するステップと、
前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを前記中継サーバに送信するステップと
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して通信可能な情報通信装置、中継サーバおよびデータサーバを含むデータ通信システムに関し、より詳細には、情報通信装置が要求するデータを、データサーバから中継サーバを介して情報通信装置に提供するデータ通信システムに関する。
【背景技術】
【０００２】
近年、スマートフォンやタブレット型ＰＣ等の可搬型の情報通信装置の急速な普及に伴い、これらの情報通信装置が様々なビジネスシーンで利用されている。このような可搬型の情報通信装置を利用するモバイル・ビジネス環境では、ユーザが外出先で社内のデータサーバに保存されたドキュメントや画像等の種々のデータを利用したいというニーズが存在する。
【０００３】
しかしながら、このようなデータサーバは、プライベートネットワーク内に構築されており、ファイアウォール等のセキュリティ手段によって外部装置からのアクセスが制限されている。
【０００４】
この点に関し、特許文献１は、ファイアウォールによってアクセス制限されたプライベートネットワークリソースに対する外部装置のアクセスを可能にする出力管理システムを開示する。この出力管理システムでは、外部ネットワークに接続されたメッセージセンターが、プライベートネットワークリソースへのアクセス要求を中継し、プライベートネットワークリソースからデータを取得して、要求元の外部装置に提供することにより、外部装置からプライベートネットワークリソースへのアクセスを可能にする。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１が開示する出力管理システムでは、ユーザデバイスから印刷要求が発行される度に、メッセージセンター、プリントサービス、リモートデスクトップクライアントおよび出力デバイスの間でデータ通信が発生するため、ネットワークのトラフィック量が過大になるという問題があった。
【０００６】
本発明は、上記従来技術の問題に鑑みてなされたものであり、ネットワークを介したデータ通信の回数を低減し、ネットワークのトラフィック量を低減するデータ通信システムおよび方法を提供することを目的とするものである。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、ネットワークを介してデータを通信する情報通信装置、中継サーバおよびデータサーバを含むシステムを提供する。中継サーバは、情報通信装置が送信したデータの取得要求を記憶手段に保存し、データサーバからデータの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを１度に受信し、データの取得要求の対象であるデータを情報通信装置に送信する。
【発明の効果】
【０００８】
本発明は、上記構成を採用することにより、ネットワークを介したデータ通信の回数を低減し、ネットワークのトラフィック量を低減することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明のデータ通信システムの一実施形態を示す概略図。
【図２】図１に示す実施形態の中継サーバおよびデータサーバの機能構成を示す図。
【図３】本発明のデータ通信システムが実行する処理を示すシーケンス図。
【図４】図１および図２に示す実施形態の中継サーバが実行する処理を示すフローチャート。
【図５】図１および図２に示す実施形態の情報通信装置１２０が中継サーバ１３０に送信する画面情報の取得要求メッセージの一実施形態と、データサーバ１４０が中継サーバ１３０に送信するメッセージの実施形態とを示す図。
【図６】中継サーバ１３０がデータサーバ１４０に送信するメッセージの一実施形態と、データサーバ１４０のメッセージ処理部２０４がデータ取得部２０６に送信するメッセージの実施形態とを示す図。
【図７】データサーバ１４０のデータ取得部２０６がメッセージ処理部２０４に送信するメッセージの一実施形態を示す図。
【図８】本発明のデータサーバが実行する処理を示すフローチャート。
【図９】データサーバ１４０のメッセージ処理部２０４が、図８のステップＳ８０７で示す処理でファイルを取得する際にデータ取得部２０６に送信するメッセージの一実施形態。
【図１０】データサーバ１４０のメッセージ処理部２０４が中継サーバ１３０に送信するメッセージの一実施形態。
【図１１】データサーバ１４０のメッセージ処理部２０４が中継サーバ１３０に送信するメッセージの別の実施形態。
【図１２】中継サーバ１３０が情報通信装置１２０に送信するメッセージの一実施形態。
【図１３】本発明のデータ通信システムの別の実施形態を示す概略図。
【図１４】図１３に示すデータ通信システム１３００に含まれる中継サーバ１３１０およびデータサーバ１４０，１５０の機能構成を示す図。
【図１５】図１３および図１４に示す実施形態の情報通信装置が送信する取得要求メッセージの一実施形態を示す図。
【図１６】図１３および図１４に示す実施形態の中継サーバが実行する処理を示すフローチャート。
【発明を実施するための形態】
【００１０】
以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。図１は、本発明のデータ通信システムの一実施形態を示す概略図である。
【００１１】
データ通信システム１００は、インターネットやワイドエリアネットワーク（ＷＡＮ）などのネットワーク１１０を介して接続された情報通信装置１２０と、中継サーバ１３０と、データサーバ１４０とを含んで構成される。
【００１２】
情報通信装置１２０は、情報通信装置１２０の表示装置に表示されるＷｅｂページや画像データ、スタイルシート等の画面情報をデータサーバ１４０に要求し、当該画面情報を表示装置に表示する情報処理装置である。情報通信装置１２０は、中継サーバ１３０に対して、画面情報の取得要求であるメッセージを送信し、当該中継サーバ１３０から要求対象の画面情報を取得する。情報通信装置１２０は、無線通信または有線通信によってネットワーク１１０に接続することができる。
【００１３】
図１に示す実施形態では、情報通信装置１２０は、ネットワーク１１０と接続されるが、他の実施形態では、情報通信装置１２０は、電話回線ネットワーク（図示せず）を介して、ネットワーク１１０に接続された中継サーバ１３０との間でデータ通信を行ってもよい。また、本実施形態では、情報通信装置１２０として、スマートフォンが採用されているが、本発明では、情報通信装置１２０として、ノート型ＰＣやタブレット型ＰＣ、電子書籍リーダ等の他の可搬型の情報通信装置を採用することができる。
【００１４】
中継サーバ１３０は、情報通信装置１２０およびデータサーバ１４０が送信するデータを中継するサーバ装置である。中継サーバ１３０は、情報通信装置１２０が要求する画面情報をデータサーバ１４０から取得し、情報通信装置１２０に提供する。
【００１５】
中継サーバ１３０は、種々のプロセッサを搭載し、ＷＩＮＤＯＷＳ（登録商標）サーバ等のＷＩＮＤＯＷＳ（登録商標）シリーズ、ＭＡＣ（登録商標）ＯＳ、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）などのＯＳの管理下で、アセンブラ、Ｃ、Ｃ＋＋、ＪＡＶＡ（登録商標）、ＪＡＶＡＳＣＲＩＰＴ（登録商標）、ＰＥＲＬ、ＲＵＢＹ、ＰＹＴＨＯＮなどのプログラム言語で記述された本発明のプログラムを実行する。
【００１６】
中継サーバ１３０は、プログラムを実行するための実行空間を提供するＲＡＭ、プログラムやデータなどを持続的に保持するためのハードディスク装置（ＨＤＤ）などを含んでおり、本発明のプログラムを実行することにより、後述する各機能手段を中継サーバ１３０上に実現する。
【００１７】
データサーバ１４０は、画面情報を格納するサーバ装置である。データサーバ１４０は、情報通信装置１２０が要求する画面情報を中継サーバ１３０に提供する。図１に示すように、データサーバ１４０とネットワーク１１０との間には、ファイアウォール１４２が設けられており、アクセス権限を有するサーバからのアクセスのみが許可される。
【００１８】
データサーバ１４０は、種々のプロセッサを搭載し、ＷＩＮＤＯＷＳ（登録商標）サーバ等のＷＩＮＤＯＷＳ（登録商標）シリーズ、ＭＡＣ（登録商標）ＯＳ、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）などのＯＳの管理下で、アセンブラ、Ｃ、Ｃ＋＋、ＪＡＶＡ（登録商標）、ＪＡＶＡＳＣＲＩＰＴ（登録商標）、ＰＥＲＬ、ＲＵＢＹ、ＰＹＴＨＯＮなどのプログラム言語で記述された本発明のプログラムを実行する。
【００１９】
データサーバ１４０は、プログラムを実行するための実行空間を提供するＲＡＭ、プログラムやデータなどを持続的に保持するＨＤＤなどを含んでおり、本発明のプログラムを実行することにより、後述する各機能手段をデータサーバ１４０上に実現する。
【００２０】
図２は、図１に示す実施形態のデータ通信システムに含まれる中継サーバおよびデータサーバの機能構成を示す図である。以下、図２を参照して、中継サーバ１３０およびデータサーバ１４０の機能について説明する。
【００２１】
中継サーバ１３０は、メッセージ処理部２００と、バッファメモリ２０２とを含んで構成される。
【００２２】
メッセージ処理部２００は、情報通信装置１２０およびデータサーバ１４０が送信するメッセージを処理する機能手段である。メッセージ処理部２００は、情報通信装置１２０から画面情報の取得要求メッセージを受信した場合、中継サーバ１３０の記憶装置（図示せず）に取得要求の対象の画面情報が保存されているか否か判断し、当該画面情報が保存されていないときは、バッファメモリ２０２に取得要求メッセージをバッファリングする。バッファメモリ２０２のデータ構造は、キュー構造とすることができ、画面情報の取得要求メッセージが、キューにＦＩＦＯ形式で保存される。
【００２３】
一方、メッセージ処理部２００は、中継サーバ１３０の記憶装置に取得要求の対象の画面情報が保存されているときには、当該画面情報を情報通信装置１２０に送信する。
【００２４】
メッセージ処理部２００は、データサーバ１４０から画面情報の取得要求メッセージの取得要求を受信すると、バッファメモリ２０２に保存されている取得要求メッセージをデータサーバ１４０に送信する。メッセージ処理部２００は、データサーバ１４０から画面情報を受信すると、要求対象の画面情報を情報通信装置１２０に送信すると共に、中継サーバ１３０の記憶装置に画面情報を保存する。
【００２５】
データサーバ１４０は、メッセージ処理部２０４と、データ取得部２０６と、記憶手段２０８とを含んで構成される。
【００２６】
メッセージ処理部２０４は、種々のメッセージを処理する機能手段である。メッセージ処理部２０４は、中継サーバ１３０に対し、情報通信装置１２０が送信した取得要求メッセージを要求するメッセージを送信する。メッセージ処理部２０４は、情報通信装置１２０から当該取得要求メッセージを受信すると、当該取得要求メッセージをデータ取得部２０６に送信する。取得要求メッセージには、取得要求の対象の画面情報の識別情報が含まれる。
【００２７】
データ取得部２０６は、記憶手段２０８から画面情報を取得する機能手段である。データ取得部２０６は、メッセージ処理部２０４から取得要求メッセージを受信すると、当該取得要求メッセージが指定する画面情報を記憶手段２０８から取得し、メッセージ処理部２０４に送信する。
【００２８】
メッセージ処理部２０４は、データ取得部２０６から当該取得要求メッセージが指定する画面情報を受信すると、当該画面情報を解析して、後続の取得要求メッセージの対象となり得る画面情報をデータ取得部２０６に要求する。データ取得部２０６は、後続の取得要求メッセージの対象となり得る画面情報を記憶手段２０８から取得し、メッセージ処理部２０４に送信する。
【００２９】
メッセージ処理部２０４は、取得要求メッセージが指定する画面情報と共に、後続の取得要求メッセージの対象となり得る画面情報を中継サーバ１３０に送信する。
【００３０】
図３は、本発明のデータ通信システムが実行する処理を示すシーケンス図である。以下、図３を参照して、データ通信システム１００の処理シーケンスの一実施形態について説明する。
【００３１】
まず、情報通信装置１２０が、ユーザが行う画面情報の取得操作に応じて、画面情報の取得要求メッセージを中継サーバ１３０に送信する。中継サーバ１３０は、当該取得要求メッセージの対象である画面情報が記憶装置に保存されているか否か判断する。図３に示す実施形態では、当該画面情報が記憶装置に保存されていないため、中継サーバ１３０は、当該取得要求メッセージをバッファメモリ２０２にバッファリングする。
【００３２】
次に、データサーバ１４０のメッセージ処理部２０４が、中継サーバ１３０に取得要求メッセージを要求する。中継サーバ１３０は、当該要求を受信すると、バッファメモリ２０２に保存されている取得要求メッセージをデータサーバ１４０のメッセージ処理部２０４に送信する。メッセージ処理部２０４は、当該取得要求メッセージをデータ取得部２０６に送信する。
【００３３】
データ取得部２０６は、メッセージ処理部２０４から当該取得要求メッセージを受信すると、記憶手段２０８から当該取得要求メッセージが指定する画面情報を取得し、画面情報をメッセージ処理部２０４に送信する。そして、メッセージ処理部２０４は、図８を参照して詳述する画面情報の解析処理を実行し、後続の処理で要求される可能性のある画面情報をデータ取得部２０６に要求する。データ取得部２０６は、要求の対象の画面情報を記憶手段２０８から取得してメッセージ処理部２０４に送信する。
【００３４】
次に、メッセージ処理部２０４は、データ取得部２０６から取得した総ての画面情報を中継サーバ１３０に送信する。中継サーバ１３０は、データ取得部２０６から受信した画面情報のうち、情報通信装置１２０が送信した取得要求メッセージが指定する画面情報を情報通信装置１２０に送信し、総ての画面情報を記憶装置に保存する。
【００３５】
図３に示す実施形態では、ユーザが再び画面情報の取得操作を行い、情報通信装置１２０が、中継サーバ１３０に取得要求メッセージを送信する。中継サーバ１３０は、当該取得要求メッセージが指定する画面情報が記憶装置に保存されているか否か判断する。
【００３６】
この時点では、中継サーバ１３０の記憶装置には、データサーバ１４０から受信した総ての画面情報が保存されているため、中継サーバ１３０は、データサーバ１４０に取得要求メッセージを送信することなく、当該取得要求メッセージが指定する画面情報を情報通信装置１２０に送信する。情報通信装置１２０は、当該画面情報を解析して、取得要求の対象の画面情報を表示装置に表示する。
【００３７】
上述したように、中継サーバ１３０は、情報通信装置１２０から取得要求メッセージを受信した場合、その都度、データサーバ１４０に取得要求メッセージを中継することなく、データサーバ１４０から画面情報を取得することができる。
【００３８】
また、ユーザが再度、画面情報の取得操作を行うことにより、情報通信装置１２０が後続の画面情報の取得要求メッセージが送信した場合、中継サーバ１３０には、当該取得要求の対象である画面情報を保持されているため、中継サーバ１３０は、データサーバ１４０に取得要求メッセージを送信することなく、当該取得要求メッセージの対象である画面情報を情報通信装置１２０に提供することができる。
【００３９】
これにより、本発明では、中継サーバ１３０およびデータサーバ１４０間のメッセージの送信回数を大幅に低減することができ、ネットワーク１１０の負荷を低減することができる。
【００４０】
図４は、図１および図２に示す実施形態の中継サーバが実行する処理を示すフローチャートである。以下、図４を参照して、情報通信装置１２０およびデータサーバ１４０から種々のメッセージを受信した場合に、中継サーバ１３０が実行する処理について説明する。
【００４１】
図４に示す処理は、中継サーバ１３０がメッセージを受信することにより、ステップＳ４００から開始する。ステップＳ４０１では、中継サーバ１３０のメッセージ処理部２００がメッセージの種類を判断し、メッセージの種類に応じて処理を分岐させる。
【００４２】
ステップＳ４０１の判定で、取得要求メッセージを要求するメッセージを受信したと判断した場合には、処理をステップＳ４０２に分岐させる。ステップＳ４０２では、メッセージ処理部２００は、バッファメモリ２０２に取得要求メッセージがバッファリングされているか否か判断する。取得要求メッセージがバッファリングされていない場合には（ｎｏ）、一定時間待機した後、再びステップＳ４０２の処理を実行する。
【００４３】
一方、取得要求メッセージがバッファリングされている場合には（ｙｅｓ）、処理をステップＳ４０３に分岐させる。ステップＳ４０３では、メッセージ処理部２００は、バッファメモリ２０２にバッファリングされた取得要求メッセージをデータサーバ１４０に送信し、ステップＳ４０９で処理が終了する。
【００４４】
ステップＳ４０１の判定で、データサーバ１４０から受信した画面情報が含まれたメッセージを受信したと判断した場合には、処理をステップＳ４０４に分岐させる。ステップＳ４０４では、メッセージ処理部２００は、データサーバ１４０から受信した画面情報のうち、バッファメモリ２０２に保存された取得要求メッセージが指定する画面情報を情報通信装置１２０に送信する。ステップＳ４０５では、メッセージ処理部２００は、データサーバ１４０から受信した画面情報を中継サーバ１３０の記憶装置に保存し、ステップＳ４０９で処理が終了する。
【００４５】
本実施形態では、データサーバ１４０から受信した画面情報には、取得要求メッセージが指定する画面情報の他、当該画面情報に関連する画像データおよびスタイルシートが含まれる。メッセージ処理部２００は、取得要求メッセージが指定する画面情報、画像データおよびスタイルシートを記憶装置に保存する。
【００４６】
ステップＳ４０１の判定で、画面情報の取得要求メッセージを受信したと判断した場合には、処理をステップＳ４０６に分岐させる。ステップＳ４０６では、メッセージ処理部２００は、当該取得要求メッセージが指定する画面情報が中継サーバ１３０の記憶装置に保存されている否か判断する。当該画面情報が保存されている場合には（ｙｅｓ）、処理をステップＳ４０７に分岐させる。ステップＳ４０７では、メッセージ処理部２００は、記憶装置から当該画面情報を取得して情報通信装置１２０に送信し、ステップＳ４０９で処理が終了する。
【００４７】
一方、ステップＳ４０６の判定で当該画面情報が保存されていない場合には（ｎｏ）、処理をステップＳ４０８に分岐させる。ステップＳ４０８では、メッセージ処理部２００は、画面情報の取得要求メッセージをバッファメモリ２０２にバッファリングし、ステップＳ４０９で処理が終了する。
【００４８】
図５は、情報通信装置１２０が中継サーバ１３０に送信する画面情報の取得要求メッセージの実施形態と、データサーバ１４０が中継サーバ１３０に送信するメッセージの実施形態とを示す図である。
【００４９】
メッセージ５００は、情報通信装置１２０が中継サーバ１３０に対して、画面情報の取得を要求するメッセージである。メッセージ５００には、中継サーバ１３０の識別情報「message_relay_queue.test.co.jp」５０１と、取得対象の画面情報の識別情報「user_1/index.html」５０２とが含まれる。中継サーバ１３０の識別情報や取得対象の画面情報の識別情報は、情報通信装置１２０のユーザが指定することができる。
【００５０】
メッセージ５０３，５０５は、データサーバ１４０が中継サーバ１３０に対して、バッファメモリ２０２にバッファリングされている画面情報の取得要求メッセージを要求するメッセージである。
【００５１】
メッセージ５０３には、ＨＴＴＰのＧＥＴメッセージが指定するパス「http://message_relay_queue.test.co.jp/get_task/ HTTP/1.1」の中に画面情報の取得要求メッセージの要求を示す文字列「get_task」５０４が含まれる。中継サーバ１３０のメッセージ処理部２００は、受信したメッセージに文字列「get_task」５０４が含まれている場合に、当該メッセージを、画面情報の取得要求メッセージを要求するメッセージであると判断する。
【００５２】
メッセージ５０５には、ＨＴＴＰのヘッダにキー「X-Task」５０６が含まれており、当該キーに画面情報の取得要求メッセージの要求を示す値（value）「get_task」５０７が設定される。中継サーバ１３０のメッセージ処理部２００は、キー「X-Task」５０６の値が「get_task」５０７である場合に、当該メッセージを、画面情報の取得要求メッセージを要求するメッセージであると判断する。
【００５３】
図６は、中継サーバ１３０がデータサーバ１４０に送信するメッセージの一実施形態と、データサーバ１４０のメッセージ処理部２０４がデータ取得部２０６に送信するメッセージの実施形態とを示す図である。
【００５４】
メッセージ６００は、中継サーバ１３０がデータサーバ１４０から画面情報の取得要求を示すメッセージを受信した場合に、データサーバ１４０に送信するメッセージである。メッセージ６００には、バッファメモリ２０２に保存されている取得要求メッセージ６０１が含まれる。図６に示す実施形態では、取得要求メッセージ６０１は、図５に示す画面情報の取得要求を示すメッセージ５００と同一の内容を有する。
【００５５】
メッセージ６０４は、データサーバ１４０のメッセージ処理部２０４がデータ取得部２０６に送信する画面情報の取得要求メッセージである。メッセージ処理部２０４は、中継サーバ１３０から受信した画面情報の取得要求メッセージを使用して、データ取得部２０６に送信すべき画面情報の取得要求メッセージを生成する。
【００５６】
図６に示す実施形態では、メッセージ処理部２０４は、中継サーバ１３０から受信したメッセージ６００を使用してメッセージ６０４を生成する。より詳細には、メッセージ処理部２０４は、メッセージ６００に含まれる取得要求メッセージ６０１を抽出し、取得要求メッセージ６０１内の中継サーバ１３０の識別情報６０２，６０３をデータサーバ１４０のデータ取得部２０６の識別情報６０５，６０６に変更してメッセージ６０４を生成する。
【００５７】
図７は、データサーバ１４０のデータ取得部２０６がメッセージ処理部２０４に送信するメッセージの一実施形態を示す図である。
【００５８】
メッセージ７００は、データ取得部２０６がメッセージ処理部２０４に送信した画面情報の取得要求メッセージが指定する画面情報７０２を含むメッセージである。画面情報７０２には、情報通信装置１２０が要求する可能性の有る画像データの識別情報７１０，７１２が含まれる。
【００５９】
データ取得部２０６は、メッセージ処理部２０４から画面情報の取得要求メッセージを受信すると、当該取得要求メッセージが指定する画面情報が格納された記憶手段２０８内のフォルダを参照し、当該フォルダの配下に存在する画面情報を取得する。例えば、取得要求の対象である画面情報の識別情報が「user_1/index.html」６０７である場合、データ取得部２０６は、「user_1」フォルダの配下に存在する画像データ（例えば、「（任意のフォルダ）/thumb/thumb.jpg」）を確認し、当該画像データの識別情報を生成して、メッセージ７００を生成する。
【００６０】
図７に示す実施形態では、ＪＰＥＧ形式の画像データを採用するが、他の任意のファイル形式の画像データを採用することができる。また、本実施形態では、取得要求対象の画面情報に関連するドキュメントとして、スタイルシートを採用するが、他の種類のドキュメントを採用することができる。
【００６１】
図８は、本発明のデータサーバが実行する画面情報の解析処理を示すフローチャートである。以下、図８を参照して、データサーバ１４０のメッセージ処理部２０４がデータ取得部２０６から取得した画面情報を解析する処理について説明する。
【００６２】
図８の処理は、ステップＳ８００でメッセージ処理部２０４がデータ取得部２０６からメッセージを受信することにより開始する。ステップＳ８０１では、メッセージ処理部２０４は、当該メッセージの種類（Content-Type）が、画面情報である画像データやスタイルシート等の保存先を示すリンク情報を含むメッセージ種類であるか否か判断する。例えば、メッセージ処理部２０４は、当該メッセージが、リンク情報であるハイパーリンクを設定可能なＨＴＭＬやＸＨＴＭＬ、ＳＧＭＬ、ＸＭＬ等のマークアップ言語で記述されているメッセージであるか否か判断する。
【００６３】
メッセージの種類がリンク情報を含まないメッセージの種類である場合には（ｎｏ）、ステップＳ８０９で処理が終了する。一方、当該メッセージの種類がリンク情報を含むメッセージの種類である場合には（ｙｅｓ）、処理をステップＳ８０２に分岐する。
【００６４】
ステップＳ８０２では、メッセージ処理部２０４は、メッセージに含まれる画面情報（すなわち、タグ「ｈｅａｄ」および「／ｈｅａｄ」内と、タグ「ｂｏｄｙ」および「／ｂｏｄｙ」内に記述された情報）を取得する。ステップＳ８０３では、メッセージ処理部２０４は、当該画面情報に含まれるタグを順に読み取り、タグの種類を判断する。
【００６５】
ステップＳ８０３の判定でタグの種類が画像データを指定する「ｉｍｇ」タグであると判断した場合には、ステップＳ８０４に処理を分岐させる。ステップＳ８０４では、メッセージ処理部２０４は、「ｉｍｇ」タグの「ｓｒｃ」属性で指定された画像データの識別情報を取得する。
【００６６】
一方、ステップＳ８０３の判定でタグの種類が関連文書のリンク先を指定するタグ「ｌｉｎｋ」であると判断した場合には、ステップＳ８０５に処理を分岐させる。ステップＳ８０５では、メッセージ処理部２０４は、タグ「ｌｉｎｋ」の「ｒｅｌ」属性が「ｓｔｙｌｅｓｈｅｅｔ」であるか否か判断する。「ｒｅｌ」属性が「ｓｔｙｌｅｓｈｅｅｔ」でない場合には（ｎｏ）、ステップＳ８０３に処理を戻す。一方、「ｒｅｌ」属性が「ｓｔｙｌｅｓｈｅｅｔ」である場合には（ｙｅｓ）、ステップＳ８０６に処理を分岐させる。ステップＳ８０６では、メッセージ処理部２０４は、タグ「ｌｉｎｋ」の「ｈｒｅｆ」属性で指定されたスタイルシートの識別情報を取得する。
【００６７】
ステップＳ８０７では、メッセージ処理部２０４は、ステップＳ８０４またはステップＳ８０６で取得した識別情報が示す画像データまたはスタイルシートを記憶手段２０８から取得する。より詳細には、メッセージ処理部２０４は、当該画像データまたはスタイルシートを取得するためのメッセージをデータ取得部２０６に送信する。そして、データ取得部２０６が、当該画像データまたはスタイルシートを記憶手段２０８から取得し、データ取得部２０６に提供する。
【００６８】
ステップＳ８０８では、メッセージ処理部２０４は、ステップＳ８０２で取得した画面情報内に読み取っていないタグが存在するか否か判断する。読み取っていないタグが存在する場合には（ｙｅｓ）、ステップＳ８０３に処理を戻す。一方、読み取っていないタグが存在しない場合には（ｎｏ）、ステップＳ８０９で処理が終了する。
【００６９】
図９は、データサーバ１４０のメッセージ処理部２０４が、データ取得部２０６に対して、図８のステップＳ８０７で示す処理で画像データを取得する際に送信するメッセージの一実施形態である。
【００７０】
メッセージ９００は、図７に示すメッセージ７００に含まれる「ｉｍｇ」タグの「ｓｒｃ」属性で指定された画像データの識別情報７１０が示す画像データを取得するためのメッセージである。メッセージ処理部２０４は、データ取得部２０６から受信したメッセージ７００に含まれる画面情報７０２を使用して、メッセージ９００を生成する。
【００７１】
メッセージ９００は、「ｉｍｇ」タグの「ｓｒｃ」属性で指定された画像データを取得するメッセージであるが、当該メッセージと同様のメッセージによって「ｌｉｎｋ」タグの「ｈｒｅｆ」属性で指定されたスタイルシートを取得することができる。
【００７２】
図１０は、データサーバ１４０のメッセージ処理部２０４が中継サーバ１３０に送信するメッセージの一実施形態である。
【００７３】
メッセージ１０００は、取得要求メッセージが指定する画面情報１００２と、当該画像情報に関連する画面情報であるスタイルシート１００４および画像データ１００６，１００８とを含むメッセージである。本実施形態では、画面情報１００２、スタイルシート１００４および画像データ１００６，１００８のデータ列は、エンコードされる。
【００７４】
メッセージ１０００は、ＨＴＴＰのＰＯＳＴメッセージであり、当該ＰＯＳＴメッセージが指定するパスに文字列「task_result」１０１０が含まれている。中継サーバ１３０のメッセージ処理部２００は、受信したメッセージが指定するパスに当該文字列が含まれるか否か判断することにより、情報通信装置１２０が送信した取得要求メッセージが指定する画面情報が含まれたメッセージであるか否か判断することができる。
【００７５】
メッセージ１０００に含まれるスタイルシート１００４および画像データ１００６，１００８は、中継サーバ１３０の記憶装置に保存される。中継サーバ１３０のメッセージ処理部２００は、情報通信装置１２０から画面情報であるスタイルシートまたは画像データの取得要求を受信した場合、当該取得要求に含まれる取得対象のスタイルシートの識別情報または画像データの識別情報と、メッセージ１０００に含まれるスタイルシートの識別情報である「ｐａｔｈ」キーの値１０１６および画像データの識別情報である「ｐａｔｈ」キーの値１０１８，１０２０とを比較することにより、当該取得要求の対象である画面情報の有無を判断することができる。
【００７６】
例えば、取得要求の対象である画面情報の識別情報が「2011-10-21-18-30-53/thumb/thumb.jpg」である場合、当該画面情報の識別情報と合致する「ｐａｔｈ」キーの値１０２０が存在するため、メッセージ処理部２００は、当該取得要求の対象の画面情報が存在すると判断し、当該画面情報である画像データを情報通信装置１２０に送信する。
【００７７】
図１１は、データサーバ１４０のメッセージ処理部２０４が中継サーバ１３０に送信するメッセージの別の実施形態である。
【００７８】
メッセージ１１００は、メッセージ１０００と同様に、取得要求メッセージが指定する画面情報１１１２と、当該画像情報に関連する画面情報であるスタイルシート１１１４および画像データ１１１６，１１１８とを含むメッセージである。
【００７９】
メッセージ１１００は、ＨＴＴＰのＰＯＳＴメッセージであり、当該ＰＯＳＴメッセージのヘッダ「X-Task」１１１０に値「task_result」１１１１が設定されている。中継サーバ１３０のメッセージ処理部２００は、受信したメッセージのヘッダ「X-Task」の値が「task_result」であるか否か判断することにより、情報通信装置１２０が送信した取得要求メッセージが指定する画面情報が含まれたメッセージであるか否か判断することができる。
【００８０】
図１０および図１１に示す実施形態では、データ記述言語としてＪｓｏｎ（JavaScript Object Notation）を採用するが、他の任意のデータ記述言語を採用することもできる。また、本実施形態では、エンコード方式としてＢａｓｅ６４を採用するが、他のエンコード方式を採用することもできる。
【００８１】
図１２は、中継サーバ１３０が情報通信装置１２０に送信するメッセージの一実施形態である。
【００８２】
図１２に示すメッセージ１２００は、図５に示すメッセージ５００に対応する応答メッセージである。メッセージ１２００には、メッセージ５００の取得対象である画面情報の識別情報「user_1/index.html」５０２が示す画面情報１２０２が含まれる。情報通信装置１２０は、中継サーバ１３０からメッセージ１２００を受信すると、当該メッセージを解析して、画面情報１２０２が構成する画面を表示装置に表示する。
【００８３】
画面情報１２０２には、後続の取得要求の対象となり得る画面情報であるスタイルシートの識別情報「css/style.css」１２０４と、画像データの識別情報「2011-10-26-14-04-51/thumb/thumb.jpg」１２０６および「2011-10-21-18-30-53/thumb/thumb.jpg」１２０８とが含まれる。情報通信装置１２０は、ユーザが、画面情報１２０２によって構成される画面を使用して画面情報の取得を指示すると、当該画面情報１２０２を解析し、取得要求の対象である画面情報の識別情報、すなわち、スタイルシートの識別情報や画像データの識別情報を取得し、中継サーバ１３０に対して当該識別情報を送信して画面情報を要求する。
【００８４】
図１３は、本発明のデータ通信システムの別の実施形態を示す概略図である。以下、図１３を参照して、データ通信システム１３００について、データ通信システム１００との相違点を中心に説明する。
【００８５】
データ通信システム１３００は、インターネットやワイドエリアネットワーク（ＷＡＮ）などのネットワーク１１０を介して接続された情報通信装置１２０と、中継サーバ１３１０と、データサーバ１４０，１５０とを含んで構成される。
【００８６】
データサーバ１５０は、画面情報を格納するサーバ装置であり、データサーバ１４０と同様の機能を有する。データサーバ１５０は、情報通信装置１２０が要求する画面情報を中継サーバ１３１０に提供する。データサーバ１５０とネットワーク１１０との間には、ファイアウォール１５２が設けられており、データサーバ１５０に対するアクセス権限を有するサーバからのアクセスのみが許可される。
【００８７】
図１４は、図１３に示す中継サーバ１３１０およびデータサーバ１４０，１５０の機能構成を示す図である。以下、図１４を参照して、中継サーバ１３１０およびデータサーバ１４０，１５０が実装する処理機能について、図２に示す中継サーバ１３０およびデータサーバ１４０との相違点を中心に説明する。
【００８８】
中継サーバ１３１０は、メッセージ処理部２００と、バッファメモリ２０２と、認証部２１０と、認証テーブル２１２と、振り分けテーブル２１４とを含んで構成される。
【００８９】
バッファメモリ２０２は、データサーバ１４０に送信すべき取得要求メッセージが保存されるキュー２１８と、データサーバ１５０に送信すべき取得要求メッセージが保存されるキュー２２０とを含んで構成される。
【００９０】
認証部２１０は、情報通信装置１２０のユーザを認証する機能手段である。認証部２１０は、情報通信装置１２０が送信する画面情報の取得要求メッセージに含まれるユーザ名およびパスワードと、認証テーブル２１２に関連付けて登録されたユーザ名およびパスワードとを照合し、これらのユーザ名およびパスワードが合致する場合に当該ユーザを認証する。
【００９１】
メッセージ処理部２００は、情報通信装置１２０のユーザとデータサーバ１４０，１５０とが関連付けて登録された振り分けテーブル２１４を参照し、情報通信装置１２０が要求する画面情報を送信すべきデータサーバを特定する。振り分けテーブル２１４には、情報通信装置１２０のユーザと、データサーバ１４０，１５０とが一意に関連付けて登録される。
【００９２】
メッセージ処理部２００は、情報通信装置１２０から画面情報の取得要求メッセージを受信すると、振り分けテーブル２１４を参照して、当該情報通信装置１２０のユーザに関連付けられたデータサーバを判断し、当該データサーバに関連するバッファメモリ２０２のキューに取得要求メッセージをバッファリングする。
【００９３】
メッセージ処理部２００は、データサーバ１４０，１５０から取得要求メッセージが要求されると、これらのデータサーバに関連するキュー２１８，２２０から取得要求メッセージを取得し、当該データサーバに送信する。また、メッセージ処理部２００は、データサーバ１４０，１５０から画面情報を受信すると、バッファメモリ２０２を参照し、画面情報の取得要求メッセージを送信した情報通信装置に画面情報を送信すると共に、当該画面情報を記憶装置（図示せず）に保存する。
【００９４】
図１５は、図１３および図１４に示す実施形態の情報通信装置１２０が送信する取得要求メッセージの一実施形態を示す図である。取得要求メッセージ１５００は、情報通信装置１２０のユーザ名１５１０およびパスワード１５２０が含まれる。認証部２１０は、このユーザ名およびパスワードと、認証テーブル２１２に登録されたユーザ名およびパスワードとを照合して、情報通信装置１２０のユーザの認証を行う。
【００９５】
図１６は、図１３および図１４に示す実施形態の中継サーバが実行する処理を示すフローチャートである。以下、図１６を参照して、中継サーバ１３１０が、情報通信装置１２０から画面情報の取得要求メッセージを受信した場合に実行する処理について説明する。
【００９６】
図１６に示す処理は、中継サーバ１３１０が画面情報の取得要求メッセージを受信することにより、ステップＳ１６００から開始する。ステップＳ１６０１では、中継サーバ１３１０の認証部２１０が、認証テーブルを参照し、取得要求メッセージに含まれるユーザ名およびパスワードを使用して、情報通信装置１２０のユーザを認証する。ステップＳ１６０２では、メッセージ処理部２００は、ユーザが認証されたか否か判断する。
【００９７】
ユーザが認証されなかった場合には（ｎｏ）、処理をステップＳ１６０３に分岐させる。ステップＳ１６０３では、メッセージ処理部２００は、取得要求メッセージを送信した情報通信装置に認証結果を送信し、ステップＳ１６０８で処理が終了する。
【００９８】
一方、ユーザが認証された場合には（ｙｅｓ）、処理をステップＳ１６０４に分岐させる。ステップＳ１６０４では、メッセージ処理部２００は、振り分けテーブルを参照し、ユーザ名に関連付けられたバッファメモリ２０２内のキューを特定する。ステップＳ１６０５では、メッセージ処理部２００は、取得要求の対象である画面情報が当該キューに保存されているか否か判断する。
【００９９】
画面情報が当該キューに保存されている場合には（ｙｅｓ）、処理をステップＳ１６０６に分岐させる。ステップＳ１６０６では、メッセージ処理部２００は、取得要求の対象である画面情報を、当該取得要求を送信した情報通信装置１２０に送信し、ステップＳ１６０８で処理が終了する。
【０１００】
一方、画面情報が当該キューに保存されていない場合には（ｎｏ）、処理をステップＳ１６０７に分岐させる。ステップＳ１６０７では、メッセージ処理部２００は、取得要求メッセージを当該キューに保存し、ステップＳ１６０８で処理が終了する。
【０１０１】
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、本実施形態の構成要件を変更または削除し、または他の構成要件を付加するなど、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【０１０２】
１００…データ通信システム、１１０…ネットワーク、１２０…情報通信装置、１３０…中継サーバ、１４０…データサーバ、１４２…ファイアウォール、１５０…データサーバ、１５２…ファイアウォール
【先行技術文献】
【特許文献】
【０１０３】
【特許文献１】特表２００５−５２３４８９号公報
【図１】
2013254404.tif 000003
【図２】
2013254404.tif 000004
【図３】
2013254404.tif 000005
【図４】
2013254404.tif 000006
【図５】
2013254404.tif 000007
【図６】
2013254404.tif 000008
【図７】
2013254404.tif 000009
【図８】
2013254404.tif 000010
【図９】
2013254404.tif 000011
【図１０】
2013254404.tif 000012
【図１１】
2013254404.tif 000013
【図１２】
2013254404.tif 000014
【図１３】
2013254404.tif 000015
【図１４】
2013254404.tif 000016
【図１５】
2013254404.tif 000017
【図１６】
2013254404.tif 000018