JP2013254404A - データ通信システムおよび方法 - Google Patents
データ通信システムおよび方法 Download PDFInfo
- Publication number
- JP2013254404A JP2013254404A JP2012130402A JP2012130402A JP2013254404A JP 2013254404 A JP2013254404 A JP 2013254404A JP 2012130402 A JP2012130402 A JP 2012130402A JP 2012130402 A JP2012130402 A JP 2012130402A JP 2013254404 A JP2013254404 A JP 2013254404A
- Authority
- JP
- Japan
- Prior art keywords
- data
- message
- acquisition request
- server
- relay server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Facsimiles In General (AREA)
Abstract
【課題】ネットワークを介したデータ通信の回数を低減し、ネットワークのトラフィック量を低減するデータ通信システムおよび方法を提供すること。
【解決手段】本発明は、ネットワークを介してデータを通信する情報通信装置、中継サーバおよびデータサーバを含むデータ通信システムを提供する。中継サーバは、情報通信装置が送信したデータの取得要求を記憶手段に保存し、データサーバからデータの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを1度に受信し、データの取得要求の対象であるデータを情報通信装置に送信する。
【選択図】 図2
【解決手段】本発明は、ネットワークを介してデータを通信する情報通信装置、中継サーバおよびデータサーバを含むデータ通信システムを提供する。中継サーバは、情報通信装置が送信したデータの取得要求を記憶手段に保存し、データサーバからデータの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを1度に受信し、データの取得要求の対象であるデータを情報通信装置に送信する。
【選択図】 図2
Description
本発明は、ネットワークを介して通信可能な情報通信装置、中継サーバおよびデータサーバを含むデータ通信システムに関し、より詳細には、情報通信装置が要求するデータを、データサーバから中継サーバを介して情報通信装置に提供するデータ通信システムに関する。
近年、スマートフォンやタブレット型PC等の可搬型の情報通信装置の急速な普及に伴い、これらの情報通信装置が様々なビジネスシーンで利用されている。このような可搬型の情報通信装置を利用するモバイル・ビジネス環境では、ユーザが外出先で社内のデータサーバに保存されたドキュメントや画像等の種々のデータを利用したいというニーズが存在する。
しかしながら、このようなデータサーバは、プライベートネットワーク内に構築されており、ファイアウォール等のセキュリティ手段によって外部装置からのアクセスが制限されている。
この点に関し、特許文献1は、ファイアウォールによってアクセス制限されたプライベートネットワークリソースに対する外部装置のアクセスを可能にする出力管理システムを開示する。この出力管理システムでは、外部ネットワークに接続されたメッセージセンターが、プライベートネットワークリソースへのアクセス要求を中継し、プライベートネットワークリソースからデータを取得して、要求元の外部装置に提供することにより、外部装置からプライベートネットワークリソースへのアクセスを可能にする。
しかしながら、特許文献1が開示する出力管理システムでは、ユーザデバイスから印刷要求が発行される度に、メッセージセンター、プリントサービス、リモートデスクトップクライアントおよび出力デバイスの間でデータ通信が発生するため、ネットワークのトラフィック量が過大になるという問題があった。
本発明は、上記従来技術の問題に鑑みてなされたものであり、ネットワークを介したデータ通信の回数を低減し、ネットワークのトラフィック量を低減するデータ通信システムおよび方法を提供することを目的とするものである。
上記課題を解決するために、本発明は、ネットワークを介してデータを通信する情報通信装置、中継サーバおよびデータサーバを含むシステムを提供する。中継サーバは、情報通信装置が送信したデータの取得要求を記憶手段に保存し、データサーバからデータの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを1度に受信し、データの取得要求の対象であるデータを情報通信装置に送信する。
本発明は、上記構成を採用することにより、ネットワークを介したデータ通信の回数を低減し、ネットワークのトラフィック量を低減することができる。
以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。図1は、本発明のデータ通信システムの一実施形態を示す概略図である。
データ通信システム100は、インターネットやワイドエリアネットワーク(WAN)などのネットワーク110を介して接続された情報通信装置120と、中継サーバ130と、データサーバ140とを含んで構成される。
情報通信装置120は、情報通信装置120の表示装置に表示されるWebページや画像データ、スタイルシート等の画面情報をデータサーバ140に要求し、当該画面情報を表示装置に表示する情報処理装置である。情報通信装置120は、中継サーバ130に対して、画面情報の取得要求であるメッセージを送信し、当該中継サーバ130から要求対象の画面情報を取得する。情報通信装置120は、無線通信または有線通信によってネットワーク110に接続することができる。
図1に示す実施形態では、情報通信装置120は、ネットワーク110と接続されるが、他の実施形態では、情報通信装置120は、電話回線ネットワーク(図示せず)を介して、ネットワーク110に接続された中継サーバ130との間でデータ通信を行ってもよい。また、本実施形態では、情報通信装置120として、スマートフォンが採用されているが、本発明では、情報通信装置120として、ノート型PCやタブレット型PC、電子書籍リーダ等の他の可搬型の情報通信装置を採用することができる。
中継サーバ130は、情報通信装置120およびデータサーバ140が送信するデータを中継するサーバ装置である。中継サーバ130は、情報通信装置120が要求する画面情報をデータサーバ140から取得し、情報通信装置120に提供する。
中継サーバ130は、種々のプロセッサを搭載し、WINDOWS(登録商標)サーバ等のWINDOWS(登録商標)シリーズ、MAC(登録商標)OS、UNIX(登録商標)、LINUX(登録商標)などのOSの管理下で、アセンブラ、C、C++、JAVA(登録商標)、JAVASCRIPT(登録商標)、PERL、RUBY、PYTHONなどのプログラム言語で記述された本発明のプログラムを実行する。
中継サーバ130は、プログラムを実行するための実行空間を提供するRAM、プログラムやデータなどを持続的に保持するためのハードディスク装置(HDD)などを含んでおり、本発明のプログラムを実行することにより、後述する各機能手段を中継サーバ130上に実現する。
データサーバ140は、画面情報を格納するサーバ装置である。データサーバ140は、情報通信装置120が要求する画面情報を中継サーバ130に提供する。図1に示すように、データサーバ140とネットワーク110との間には、ファイアウォール142が設けられており、アクセス権限を有するサーバからのアクセスのみが許可される。
データサーバ140は、種々のプロセッサを搭載し、WINDOWS(登録商標)サーバ等のWINDOWS(登録商標)シリーズ、MAC(登録商標)OS、UNIX(登録商標)、LINUX(登録商標)などのOSの管理下で、アセンブラ、C、C++、JAVA(登録商標)、JAVASCRIPT(登録商標)、PERL、RUBY、PYTHONなどのプログラム言語で記述された本発明のプログラムを実行する。
データサーバ140は、プログラムを実行するための実行空間を提供するRAM、プログラムやデータなどを持続的に保持するHDDなどを含んでおり、本発明のプログラムを実行することにより、後述する各機能手段をデータサーバ140上に実現する。
図2は、図1に示す実施形態のデータ通信システムに含まれる中継サーバおよびデータサーバの機能構成を示す図である。以下、図2を参照して、中継サーバ130およびデータサーバ140の機能について説明する。
中継サーバ130は、メッセージ処理部200と、バッファメモリ202とを含んで構成される。
メッセージ処理部200は、情報通信装置120およびデータサーバ140が送信するメッセージを処理する機能手段である。メッセージ処理部200は、情報通信装置120から画面情報の取得要求メッセージを受信した場合、中継サーバ130の記憶装置(図示せず)に取得要求の対象の画面情報が保存されているか否か判断し、当該画面情報が保存されていないときは、バッファメモリ202に取得要求メッセージをバッファリングする。バッファメモリ202のデータ構造は、キュー構造とすることができ、画面情報の取得要求メッセージが、キューにFIFO形式で保存される。
一方、メッセージ処理部200は、中継サーバ130の記憶装置に取得要求の対象の画面情報が保存されているときには、当該画面情報を情報通信装置120に送信する。
メッセージ処理部200は、データサーバ140から画面情報の取得要求メッセージの取得要求を受信すると、バッファメモリ202に保存されている取得要求メッセージをデータサーバ140に送信する。メッセージ処理部200は、データサーバ140から画面情報を受信すると、要求対象の画面情報を情報通信装置120に送信すると共に、中継サーバ130の記憶装置に画面情報を保存する。
データサーバ140は、メッセージ処理部204と、データ取得部206と、記憶手段208とを含んで構成される。
メッセージ処理部204は、種々のメッセージを処理する機能手段である。メッセージ処理部204は、中継サーバ130に対し、情報通信装置120が送信した取得要求メッセージを要求するメッセージを送信する。メッセージ処理部204は、情報通信装置120から当該取得要求メッセージを受信すると、当該取得要求メッセージをデータ取得部206に送信する。取得要求メッセージには、取得要求の対象の画面情報の識別情報が含まれる。
データ取得部206は、記憶手段208から画面情報を取得する機能手段である。データ取得部206は、メッセージ処理部204から取得要求メッセージを受信すると、当該取得要求メッセージが指定する画面情報を記憶手段208から取得し、メッセージ処理部204に送信する。
メッセージ処理部204は、データ取得部206から当該取得要求メッセージが指定する画面情報を受信すると、当該画面情報を解析して、後続の取得要求メッセージの対象となり得る画面情報をデータ取得部206に要求する。データ取得部206は、後続の取得要求メッセージの対象となり得る画面情報を記憶手段208から取得し、メッセージ処理部204に送信する。
メッセージ処理部204は、取得要求メッセージが指定する画面情報と共に、後続の取得要求メッセージの対象となり得る画面情報を中継サーバ130に送信する。
図3は、本発明のデータ通信システムが実行する処理を示すシーケンス図である。以下、図3を参照して、データ通信システム100の処理シーケンスの一実施形態について説明する。
まず、情報通信装置120が、ユーザが行う画面情報の取得操作に応じて、画面情報の取得要求メッセージを中継サーバ130に送信する。中継サーバ130は、当該取得要求メッセージの対象である画面情報が記憶装置に保存されているか否か判断する。図3に示す実施形態では、当該画面情報が記憶装置に保存されていないため、中継サーバ130は、当該取得要求メッセージをバッファメモリ202にバッファリングする。
次に、データサーバ140のメッセージ処理部204が、中継サーバ130に取得要求メッセージを要求する。中継サーバ130は、当該要求を受信すると、バッファメモリ202に保存されている取得要求メッセージをデータサーバ140のメッセージ処理部204に送信する。メッセージ処理部204は、当該取得要求メッセージをデータ取得部206に送信する。
データ取得部206は、メッセージ処理部204から当該取得要求メッセージを受信すると、記憶手段208から当該取得要求メッセージが指定する画面情報を取得し、画面情報をメッセージ処理部204に送信する。そして、メッセージ処理部204は、図8を参照して詳述する画面情報の解析処理を実行し、後続の処理で要求される可能性のある画面情報をデータ取得部206に要求する。データ取得部206は、要求の対象の画面情報を記憶手段208から取得してメッセージ処理部204に送信する。
次に、メッセージ処理部204は、データ取得部206から取得した総ての画面情報を中継サーバ130に送信する。中継サーバ130は、データ取得部206から受信した画面情報のうち、情報通信装置120が送信した取得要求メッセージが指定する画面情報を情報通信装置120に送信し、総ての画面情報を記憶装置に保存する。
図3に示す実施形態では、ユーザが再び画面情報の取得操作を行い、情報通信装置120が、中継サーバ130に取得要求メッセージを送信する。中継サーバ130は、当該取得要求メッセージが指定する画面情報が記憶装置に保存されているか否か判断する。
この時点では、中継サーバ130の記憶装置には、データサーバ140から受信した総ての画面情報が保存されているため、中継サーバ130は、データサーバ140に取得要求メッセージを送信することなく、当該取得要求メッセージが指定する画面情報を情報通信装置120に送信する。情報通信装置120は、当該画面情報を解析して、取得要求の対象の画面情報を表示装置に表示する。
上述したように、中継サーバ130は、情報通信装置120から取得要求メッセージを受信した場合、その都度、データサーバ140に取得要求メッセージを中継することなく、データサーバ140から画面情報を取得することができる。
また、ユーザが再度、画面情報の取得操作を行うことにより、情報通信装置120が後続の画面情報の取得要求メッセージが送信した場合、中継サーバ130には、当該取得要求の対象である画面情報を保持されているため、中継サーバ130は、データサーバ140に取得要求メッセージを送信することなく、当該取得要求メッセージの対象である画面情報を情報通信装置120に提供することができる。
これにより、本発明では、中継サーバ130およびデータサーバ140間のメッセージの送信回数を大幅に低減することができ、ネットワーク110の負荷を低減することができる。
図4は、図1および図2に示す実施形態の中継サーバが実行する処理を示すフローチャートである。以下、図4を参照して、情報通信装置120およびデータサーバ140から種々のメッセージを受信した場合に、中継サーバ130が実行する処理について説明する。
図4に示す処理は、中継サーバ130がメッセージを受信することにより、ステップS400から開始する。ステップS401では、中継サーバ130のメッセージ処理部200がメッセージの種類を判断し、メッセージの種類に応じて処理を分岐させる。
ステップS401の判定で、取得要求メッセージを要求するメッセージを受信したと判断した場合には、処理をステップS402に分岐させる。ステップS402では、メッセージ処理部200は、バッファメモリ202に取得要求メッセージがバッファリングされているか否か判断する。取得要求メッセージがバッファリングされていない場合には(no)、一定時間待機した後、再びステップS402の処理を実行する。
一方、取得要求メッセージがバッファリングされている場合には(yes)、処理をステップS403に分岐させる。ステップS403では、メッセージ処理部200は、バッファメモリ202にバッファリングされた取得要求メッセージをデータサーバ140に送信し、ステップS409で処理が終了する。
ステップS401の判定で、データサーバ140から受信した画面情報が含まれたメッセージを受信したと判断した場合には、処理をステップS404に分岐させる。ステップS404では、メッセージ処理部200は、データサーバ140から受信した画面情報のうち、バッファメモリ202に保存された取得要求メッセージが指定する画面情報を情報通信装置120に送信する。ステップS405では、メッセージ処理部200は、データサーバ140から受信した画面情報を中継サーバ130の記憶装置に保存し、ステップS409で処理が終了する。
本実施形態では、データサーバ140から受信した画面情報には、取得要求メッセージが指定する画面情報の他、当該画面情報に関連する画像データおよびスタイルシートが含まれる。メッセージ処理部200は、取得要求メッセージが指定する画面情報、画像データおよびスタイルシートを記憶装置に保存する。
ステップS401の判定で、画面情報の取得要求メッセージを受信したと判断した場合には、処理をステップS406に分岐させる。ステップS406では、メッセージ処理部200は、当該取得要求メッセージが指定する画面情報が中継サーバ130の記憶装置に保存されている否か判断する。当該画面情報が保存されている場合には(yes)、処理をステップS407に分岐させる。ステップS407では、メッセージ処理部200は、記憶装置から当該画面情報を取得して情報通信装置120に送信し、ステップS409で処理が終了する。
一方、ステップS406の判定で当該画面情報が保存されていない場合には(no)、処理をステップS408に分岐させる。ステップS408では、メッセージ処理部200は、画面情報の取得要求メッセージをバッファメモリ202にバッファリングし、ステップS409で処理が終了する。
図5は、情報通信装置120が中継サーバ130に送信する画面情報の取得要求メッセージの実施形態と、データサーバ140が中継サーバ130に送信するメッセージの実施形態とを示す図である。
メッセージ500は、情報通信装置120が中継サーバ130に対して、画面情報の取得を要求するメッセージである。メッセージ500には、中継サーバ130の識別情報「message_relay_queue.test.co.jp」501と、取得対象の画面情報の識別情報「user_1/index.html」502とが含まれる。中継サーバ130の識別情報や取得対象の画面情報の識別情報は、情報通信装置120のユーザが指定することができる。
メッセージ503,505は、データサーバ140が中継サーバ130に対して、バッファメモリ202にバッファリングされている画面情報の取得要求メッセージを要求するメッセージである。
メッセージ503には、HTTPのGETメッセージが指定するパス「http://message_relay_queue.test.co.jp/get_task/ HTTP/1.1」の中に画面情報の取得要求メッセージの要求を示す文字列「get_task」504が含まれる。中継サーバ130のメッセージ処理部200は、受信したメッセージに文字列「get_task」504が含まれている場合に、当該メッセージを、画面情報の取得要求メッセージを要求するメッセージであると判断する。
メッセージ505には、HTTPのヘッダにキー「X-Task」506が含まれており、当該キーに画面情報の取得要求メッセージの要求を示す値(value)「get_task」507が設定される。中継サーバ130のメッセージ処理部200は、キー「X-Task」506の値が「get_task」507である場合に、当該メッセージを、画面情報の取得要求メッセージを要求するメッセージであると判断する。
図6は、中継サーバ130がデータサーバ140に送信するメッセージの一実施形態と、データサーバ140のメッセージ処理部204がデータ取得部206に送信するメッセージの実施形態とを示す図である。
メッセージ600は、中継サーバ130がデータサーバ140から画面情報の取得要求を示すメッセージを受信した場合に、データサーバ140に送信するメッセージである。メッセージ600には、バッファメモリ202に保存されている取得要求メッセージ601が含まれる。図6に示す実施形態では、取得要求メッセージ601は、図5に示す画面情報の取得要求を示すメッセージ500と同一の内容を有する。
メッセージ604は、データサーバ140のメッセージ処理部204がデータ取得部206に送信する画面情報の取得要求メッセージである。メッセージ処理部204は、中継サーバ130から受信した画面情報の取得要求メッセージを使用して、データ取得部206に送信すべき画面情報の取得要求メッセージを生成する。
図6に示す実施形態では、メッセージ処理部204は、中継サーバ130から受信したメッセージ600を使用してメッセージ604を生成する。より詳細には、メッセージ処理部204は、メッセージ600に含まれる取得要求メッセージ601を抽出し、取得要求メッセージ601内の中継サーバ130の識別情報602,603をデータサーバ140のデータ取得部206の識別情報605,606に変更してメッセージ604を生成する。
図7は、データサーバ140のデータ取得部206がメッセージ処理部204に送信するメッセージの一実施形態を示す図である。
メッセージ700は、データ取得部206がメッセージ処理部204に送信した画面情報の取得要求メッセージが指定する画面情報702を含むメッセージである。画面情報702には、情報通信装置120が要求する可能性の有る画像データの識別情報710,712が含まれる。
データ取得部206は、メッセージ処理部204から画面情報の取得要求メッセージを受信すると、当該取得要求メッセージが指定する画面情報が格納された記憶手段208内のフォルダを参照し、当該フォルダの配下に存在する画面情報を取得する。例えば、取得要求の対象である画面情報の識別情報が「user_1/index.html」607である場合、データ取得部206は、「user_1」フォルダの配下に存在する画像データ(例えば、「(任意のフォルダ)/thumb/thumb.jpg」)を確認し、当該画像データの識別情報を生成して、メッセージ700を生成する。
図7に示す実施形態では、JPEG形式の画像データを採用するが、他の任意のファイル形式の画像データを採用することができる。また、本実施形態では、取得要求対象の画面情報に関連するドキュメントとして、スタイルシートを採用するが、他の種類のドキュメントを採用することができる。
図8は、本発明のデータサーバが実行する画面情報の解析処理を示すフローチャートである。以下、図8を参照して、データサーバ140のメッセージ処理部204がデータ取得部206から取得した画面情報を解析する処理について説明する。
図8の処理は、ステップS800でメッセージ処理部204がデータ取得部206からメッセージを受信することにより開始する。ステップS801では、メッセージ処理部204は、当該メッセージの種類(Content-Type)が、画面情報である画像データやスタイルシート等の保存先を示すリンク情報を含むメッセージ種類であるか否か判断する。例えば、メッセージ処理部204は、当該メッセージが、リンク情報であるハイパーリンクを設定可能なHTMLやXHTML、SGML、XML等のマークアップ言語で記述されているメッセージであるか否か判断する。
メッセージの種類がリンク情報を含まないメッセージの種類である場合には(no)、ステップS809で処理が終了する。一方、当該メッセージの種類がリンク情報を含むメッセージの種類である場合には(yes)、処理をステップS802に分岐する。
ステップS802では、メッセージ処理部204は、メッセージに含まれる画面情報(すなわち、タグ「head」および「/head」内と、タグ「body」および「/body」内に記述された情報)を取得する。ステップS803では、メッセージ処理部204は、当該画面情報に含まれるタグを順に読み取り、タグの種類を判断する。
ステップS803の判定でタグの種類が画像データを指定する「img」タグであると判断した場合には、ステップS804に処理を分岐させる。ステップS804では、メッセージ処理部204は、「img」タグの「src」属性で指定された画像データの識別情報を取得する。
一方、ステップS803の判定でタグの種類が関連文書のリンク先を指定するタグ「link」であると判断した場合には、ステップS805に処理を分岐させる。ステップS805では、メッセージ処理部204は、タグ「link」の「rel」属性が「stylesheet」であるか否か判断する。「rel」属性が「stylesheet」でない場合には(no)、ステップS803に処理を戻す。一方、「rel」属性が「stylesheet」である場合には(yes)、ステップS806に処理を分岐させる。ステップS806では、メッセージ処理部204は、タグ「link」の「href」属性で指定されたスタイルシートの識別情報を取得する。
ステップS807では、メッセージ処理部204は、ステップS804またはステップS806で取得した識別情報が示す画像データまたはスタイルシートを記憶手段208から取得する。より詳細には、メッセージ処理部204は、当該画像データまたはスタイルシートを取得するためのメッセージをデータ取得部206に送信する。そして、データ取得部206が、当該画像データまたはスタイルシートを記憶手段208から取得し、データ取得部206に提供する。
ステップS808では、メッセージ処理部204は、ステップS802で取得した画面情報内に読み取っていないタグが存在するか否か判断する。読み取っていないタグが存在する場合には(yes)、ステップS803に処理を戻す。一方、読み取っていないタグが存在しない場合には(no)、ステップS809で処理が終了する。
図9は、データサーバ140のメッセージ処理部204が、データ取得部206に対して、図8のステップS807で示す処理で画像データを取得する際に送信するメッセージの一実施形態である。
メッセージ900は、図7に示すメッセージ700に含まれる「img」タグの「src」属性で指定された画像データの識別情報710が示す画像データを取得するためのメッセージである。メッセージ処理部204は、データ取得部206から受信したメッセージ700に含まれる画面情報702を使用して、メッセージ900を生成する。
メッセージ900は、「img」タグの「src」属性で指定された画像データを取得するメッセージであるが、当該メッセージと同様のメッセージによって「link」タグの「href」属性で指定されたスタイルシートを取得することができる。
図10は、データサーバ140のメッセージ処理部204が中継サーバ130に送信するメッセージの一実施形態である。
メッセージ1000は、取得要求メッセージが指定する画面情報1002と、当該画像情報に関連する画面情報であるスタイルシート1004および画像データ1006,1008とを含むメッセージである。本実施形態では、画面情報1002、スタイルシート1004および画像データ1006,1008のデータ列は、エンコードされる。
メッセージ1000は、HTTPのPOSTメッセージであり、当該POSTメッセージが指定するパスに文字列「task_result」1010が含まれている。中継サーバ130のメッセージ処理部200は、受信したメッセージが指定するパスに当該文字列が含まれるか否か判断することにより、情報通信装置120が送信した取得要求メッセージが指定する画面情報が含まれたメッセージであるか否か判断することができる。
メッセージ1000に含まれるスタイルシート1004および画像データ1006,1008は、中継サーバ130の記憶装置に保存される。中継サーバ130のメッセージ処理部200は、情報通信装置120から画面情報であるスタイルシートまたは画像データの取得要求を受信した場合、当該取得要求に含まれる取得対象のスタイルシートの識別情報または画像データの識別情報と、メッセージ1000に含まれるスタイルシートの識別情報である「path」キーの値1016および画像データの識別情報である「path」キーの値1018,1020とを比較することにより、当該取得要求の対象である画面情報の有無を判断することができる。
例えば、取得要求の対象である画面情報の識別情報が「2011-10-21-18-30-53/thumb/thumb.jpg」である場合、当該画面情報の識別情報と合致する「path」キーの値1020が存在するため、メッセージ処理部200は、当該取得要求の対象の画面情報が存在すると判断し、当該画面情報である画像データを情報通信装置120に送信する。
図11は、データサーバ140のメッセージ処理部204が中継サーバ130に送信するメッセージの別の実施形態である。
メッセージ1100は、メッセージ1000と同様に、取得要求メッセージが指定する画面情報1112と、当該画像情報に関連する画面情報であるスタイルシート1114および画像データ1116,1118とを含むメッセージである。
メッセージ1100は、HTTPのPOSTメッセージであり、当該POSTメッセージのヘッダ「X-Task」1110に値「task_result」1111が設定されている。中継サーバ130のメッセージ処理部200は、受信したメッセージのヘッダ「X-Task」の値が「task_result」であるか否か判断することにより、情報通信装置120が送信した取得要求メッセージが指定する画面情報が含まれたメッセージであるか否か判断することができる。
図10および図11に示す実施形態では、データ記述言語としてJson(JavaScript Object Notation)を採用するが、他の任意のデータ記述言語を採用することもできる。また、本実施形態では、エンコード方式としてBase64を採用するが、他のエンコード方式を採用することもできる。
図12は、中継サーバ130が情報通信装置120に送信するメッセージの一実施形態である。
図12に示すメッセージ1200は、図5に示すメッセージ500に対応する応答メッセージである。メッセージ1200には、メッセージ500の取得対象である画面情報の識別情報「user_1/index.html」502が示す画面情報1202が含まれる。情報通信装置120は、中継サーバ130からメッセージ1200を受信すると、当該メッセージを解析して、画面情報1202が構成する画面を表示装置に表示する。
画面情報1202には、後続の取得要求の対象となり得る画面情報であるスタイルシートの識別情報「css/style.css」1204と、画像データの識別情報「2011-10-26-14-04-51/thumb/thumb.jpg」1206および「2011-10-21-18-30-53/thumb/thumb.jpg」1208とが含まれる。情報通信装置120は、ユーザが、画面情報1202によって構成される画面を使用して画面情報の取得を指示すると、当該画面情報1202を解析し、取得要求の対象である画面情報の識別情報、すなわち、スタイルシートの識別情報や画像データの識別情報を取得し、中継サーバ130に対して当該識別情報を送信して画面情報を要求する。
図13は、本発明のデータ通信システムの別の実施形態を示す概略図である。以下、図13を参照して、データ通信システム1300について、データ通信システム100との相違点を中心に説明する。
データ通信システム1300は、インターネットやワイドエリアネットワーク(WAN)などのネットワーク110を介して接続された情報通信装置120と、中継サーバ1310と、データサーバ140,150とを含んで構成される。
データサーバ150は、画面情報を格納するサーバ装置であり、データサーバ140と同様の機能を有する。データサーバ150は、情報通信装置120が要求する画面情報を中継サーバ1310に提供する。データサーバ150とネットワーク110との間には、ファイアウォール152が設けられており、データサーバ150に対するアクセス権限を有するサーバからのアクセスのみが許可される。
図14は、図13に示す中継サーバ1310およびデータサーバ140,150の機能構成を示す図である。以下、図14を参照して、中継サーバ1310およびデータサーバ140,150が実装する処理機能について、図2に示す中継サーバ130およびデータサーバ140との相違点を中心に説明する。
中継サーバ1310は、メッセージ処理部200と、バッファメモリ202と、認証部210と、認証テーブル212と、振り分けテーブル214とを含んで構成される。
バッファメモリ202は、データサーバ140に送信すべき取得要求メッセージが保存されるキュー218と、データサーバ150に送信すべき取得要求メッセージが保存されるキュー220とを含んで構成される。
認証部210は、情報通信装置120のユーザを認証する機能手段である。認証部210は、情報通信装置120が送信する画面情報の取得要求メッセージに含まれるユーザ名およびパスワードと、認証テーブル212に関連付けて登録されたユーザ名およびパスワードとを照合し、これらのユーザ名およびパスワードが合致する場合に当該ユーザを認証する。
メッセージ処理部200は、情報通信装置120のユーザとデータサーバ140,150とが関連付けて登録された振り分けテーブル214を参照し、情報通信装置120が要求する画面情報を送信すべきデータサーバを特定する。振り分けテーブル214には、情報通信装置120のユーザと、データサーバ140,150とが一意に関連付けて登録される。
メッセージ処理部200は、情報通信装置120から画面情報の取得要求メッセージを受信すると、振り分けテーブル214を参照して、当該情報通信装置120のユーザに関連付けられたデータサーバを判断し、当該データサーバに関連するバッファメモリ202のキューに取得要求メッセージをバッファリングする。
メッセージ処理部200は、データサーバ140,150から取得要求メッセージが要求されると、これらのデータサーバに関連するキュー218,220から取得要求メッセージを取得し、当該データサーバに送信する。また、メッセージ処理部200は、データサーバ140,150から画面情報を受信すると、バッファメモリ202を参照し、画面情報の取得要求メッセージを送信した情報通信装置に画面情報を送信すると共に、当該画面情報を記憶装置(図示せず)に保存する。
図15は、図13および図14に示す実施形態の情報通信装置120が送信する取得要求メッセージの一実施形態を示す図である。取得要求メッセージ1500は、情報通信装置120のユーザ名1510およびパスワード1520が含まれる。認証部210は、このユーザ名およびパスワードと、認証テーブル212に登録されたユーザ名およびパスワードとを照合して、情報通信装置120のユーザの認証を行う。
図16は、図13および図14に示す実施形態の中継サーバが実行する処理を示すフローチャートである。以下、図16を参照して、中継サーバ1310が、情報通信装置120から画面情報の取得要求メッセージを受信した場合に実行する処理について説明する。
図16に示す処理は、中継サーバ1310が画面情報の取得要求メッセージを受信することにより、ステップS1600から開始する。ステップS1601では、中継サーバ1310の認証部210が、認証テーブルを参照し、取得要求メッセージに含まれるユーザ名およびパスワードを使用して、情報通信装置120のユーザを認証する。ステップS1602では、メッセージ処理部200は、ユーザが認証されたか否か判断する。
ユーザが認証されなかった場合には(no)、処理をステップS1603に分岐させる。ステップS1603では、メッセージ処理部200は、取得要求メッセージを送信した情報通信装置に認証結果を送信し、ステップS1608で処理が終了する。
一方、ユーザが認証された場合には(yes)、処理をステップS1604に分岐させる。ステップS1604では、メッセージ処理部200は、振り分けテーブルを参照し、ユーザ名に関連付けられたバッファメモリ202内のキューを特定する。ステップS1605では、メッセージ処理部200は、取得要求の対象である画面情報が当該キューに保存されているか否か判断する。
画面情報が当該キューに保存されている場合には(yes)、処理をステップS1606に分岐させる。ステップS1606では、メッセージ処理部200は、取得要求の対象である画面情報を、当該取得要求を送信した情報通信装置120に送信し、ステップS1608で処理が終了する。
一方、画面情報が当該キューに保存されていない場合には(no)、処理をステップS1607に分岐させる。ステップS1607では、メッセージ処理部200は、取得要求メッセージを当該キューに保存し、ステップS1608で処理が終了する。
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、本実施形態の構成要件を変更または削除し、または他の構成要件を付加するなど、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
100…データ通信システム、110…ネットワーク、120…情報通信装置、130…中継サーバ、140…データサーバ、142…ファイアウォール、150…データサーバ、152…ファイアウォール
Claims (5)
- ネットワークを介してデータを通信する情報通信装置および中継サーバを含むデータ通信システムであって、
前記中継サーバは、
データの取得要求が保存される記憶手段と、
前記情報通信装置が送信した前記データの取得要求を前記記憶手段に保存する手段と、
前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを1度に受信する手段と、
前記データの取得要求の対象であるデータを前記情報通信装置に送信する手段と
を含む、データ通信システム。 - 前記データ通信システムは、前記データの取得要求の対象であるデータを有するデータサーバをさらに含み、
前記データサーバは、
前記情報通信装置が送信した前記データの取得要求を前記中継サーバに要求する手段と、
前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを前記中継サーバに送信する手段とを含み、
前記中継サーバは、
前記情報通信装置が送信した前記データの取得要求を前記データサーバに送信する手段を含む、請求項1に記載のデータ通信システム。 - 前記データ通信システムは複数のデータサーバを含んでおり、
前記中継サーバは、
前記情報通信装置のユーザに対応するデータサーバから前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを受信する、請求項1または2に記載のデータ通信システム。 - ネットワークを介して情報通信装置と通信可能な中継サーバが実行する方法であって、前記方法は、前記中継サーバが、
前記情報通信装置からデータの取得要求を受信して記憶手段に保存するステップと、
データサーバから前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを1度に受信するステップと、
前記データの取得要求の対象であるデータを前記情報通信装置に送信するステップと
を含む、方法。 - ネットワークを介して情報通信装置と通信する中継サーバと通信可能なデータサーバが実行する方法であって、前記方法は、前記データサーバが、
前記情報通信装置が送信した前記データの取得要求を前記中継サーバに要求するステップと、
前記中継サーバから複数のデータの取得要求を1度に受信するステップと、
前記データの取得要求の対象のデータと、後続するデータの取得要求の対象となり得るデータとを前記中継サーバに送信するステップと
を含む、方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012130402A JP2013254404A (ja) | 2012-06-08 | 2012-06-08 | データ通信システムおよび方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012130402A JP2013254404A (ja) | 2012-06-08 | 2012-06-08 | データ通信システムおよび方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013254404A true JP2013254404A (ja) | 2013-12-19 |
Family
ID=49951843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012130402A Pending JP2013254404A (ja) | 2012-06-08 | 2012-06-08 | データ通信システムおよび方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013254404A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9065951B2 (en) | 2013-03-15 | 2015-06-23 | Ricoh Company, Ltd. | Data processing apparatus, controlling method and data processing system for providing service to terminal device |
US9300630B2 (en) | 2013-03-15 | 2016-03-29 | Ricoh Company, Ltd. | Relay apparatus, information processing system and method |
JP2016144152A (ja) * | 2015-02-04 | 2016-08-08 | 富士ゼロックス株式会社 | 操作画面提供システム、中継装置及びプログラム |
US9537930B2 (en) | 2013-03-14 | 2017-01-03 | Ricoh Company, Ltd. | Information system, file server, and file server control method |
US9800318B2 (en) | 2013-03-15 | 2017-10-24 | Ricoh Company, Ltd. | Information processing system for operating devices connected to different networks using single process request |
-
2012
- 2012-06-08 JP JP2012130402A patent/JP2013254404A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9537930B2 (en) | 2013-03-14 | 2017-01-03 | Ricoh Company, Ltd. | Information system, file server, and file server control method |
US9065951B2 (en) | 2013-03-15 | 2015-06-23 | Ricoh Company, Ltd. | Data processing apparatus, controlling method and data processing system for providing service to terminal device |
US9300630B2 (en) | 2013-03-15 | 2016-03-29 | Ricoh Company, Ltd. | Relay apparatus, information processing system and method |
US9800318B2 (en) | 2013-03-15 | 2017-10-24 | Ricoh Company, Ltd. | Information processing system for operating devices connected to different networks using single process request |
US9954973B2 (en) | 2013-03-15 | 2018-04-24 | Ricoh Company, Ltd. | Data processing apparatus and method of data processing for conditionally providing service to terminal device |
US10277301B2 (en) | 2013-03-15 | 2019-04-30 | Ricoh Company, Ltd. | Information processing system, information processing method and program |
JP2016144152A (ja) * | 2015-02-04 | 2016-08-08 | 富士ゼロックス株式会社 | 操作画面提供システム、中継装置及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109040316B (zh) | Http服务处理方法和装置 | |
US9853963B2 (en) | Authorization server, authentication cooperation system, and storage medium storing program | |
US10817703B2 (en) | Capturing electronic signatures via captive portal | |
US8256664B1 (en) | Out-of band authentication of browser sessions | |
US9071605B2 (en) | Relay device, relay method, and non-transitory computer readable medium | |
US9753888B2 (en) | Information processing device and conference system | |
US9148492B2 (en) | Relay device, relay method, and non-transitory computer readable medium | |
US9647870B2 (en) | Relay apparatus, system, and computer-readable medium | |
JP2008532119A5 (ja) | ||
US20240036774A1 (en) | Printing method and apparatus, and electronic device | |
JP2013254404A (ja) | データ通信システムおよび方法 | |
US9967412B2 (en) | Information processing apparatus, system, and control method for information processing apparatus | |
JP6086004B2 (ja) | 中継装置、情報処理システムおよびプログラム | |
JP6197286B2 (ja) | 通信装置、情報処理システム及び情報処理システムの制御方法 | |
US9590990B2 (en) | Assigning user requests of different types or protocols to a user by trust association interceptors | |
JP2014049098A (ja) | 画像形成装置、画像形成装置の制御方法およびプログラム | |
CN113992641A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
JP7230329B2 (ja) | 情報処理システム | |
KR101170322B1 (ko) | 웹을 기반으로 하는 개인 컴퓨터를 이용한 클라우드 컴퓨팅 서비스 제공 방법 및 장치 | |
KR101234671B1 (ko) | 멀티미디어 기반의 자동 응답 방법, 시스템 및 장치 | |
JP2016062487A (ja) | 中継装置、データ処理システム及びプログラム | |
JP2017005305A (ja) | 情報処理装置、その制御方法、及びプログラム | |
CN113824696B (zh) | portal认证方法及装置 | |
US11144970B2 (en) | Information processing device and storage medium | |
US20220337509A1 (en) | Communication system, communication control method, and non-transitory recording medium |