JP2013250691A - 通信装置および方法 - Google Patents

通信装置および方法 Download PDF

Info

Publication number
JP2013250691A
JP2013250691A JP2012123902A JP2012123902A JP2013250691A JP 2013250691 A JP2013250691 A JP 2013250691A JP 2012123902 A JP2012123902 A JP 2012123902A JP 2012123902 A JP2012123902 A JP 2012123902A JP 2013250691 A JP2013250691 A JP 2013250691A
Authority
JP
Japan
Prior art keywords
file
client
communication device
request
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
Application number
JP2012123902A
Other languages
English (en)
Other versions
JP2013250691A5 (ja
Inventor
Yuji Oishi
裕司 大石
Michitaka Okuno
通貴 奥野
Dai Akashi
大 明石
Daisuke Ito
大輔 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2012123902A priority Critical patent/JP2013250691A/ja
Priority to PCT/JP2013/065139 priority patent/WO2013180255A1/ja
Publication of JP2013250691A publication Critical patent/JP2013250691A/ja
Publication of JP2013250691A5 publication Critical patent/JP2013250691A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Abstract

【課題】 ネットワークセキュリティシステムの存在下でも異常な通信と判断されることのなく、サーバが管理する複数のオブジェクトをクライアントに提供することである。
【解決手段】 本発明の一態様は、クライアントに接続される第一の通信装置及びファイルを管理するサーバに接続される第二の通信装置により前記クライアントと前記サーバとの通信を中継する通信方法であって、クライアントからのファイル取得リクエストに応じて、第二の通信装置が先読み処理を実行し、第一の通信装置から送信される通知に対応させて、サーバから得られたオブジェクトを第二の通信装置から第一の通信装置に送信する。
【選択図】 図1

Description

本発明は、通信装置および方法に関する。
ウェブシステムにおいて、クライアント側で、サーバからの情報を表示しようとする場合、クライアントサーバ間で、ウェブブラウザはHTMLを解析し、オブジェクトを発見するたびにそのオブジェクトに対するGETリクエストをサーバに送信する。通常ブラウザから一つのサーバへの同時接続数は制限されているため、ウェブページの読み込みにはクライアント・サーバ間の往復が多数回行われることとなる。
クライアントとサーバが大陸間海底ケーブルなどの遅延の大きなワイドエリアネットワーク (Wide Area Network: WAN)により接続されている場合、ハイパーテキスト転送プロトコル (Hyper Text Transfer Protocol: HTTP)による通信は、効率が著しく低下する。遅延の大きなネットワークでは、クライアントがリクエストを送信してからサーバからレスポンスが返ってくるまで長い時間がかかり、クライアントはその間待機する必要を生じる。これが多数回行われるためウェブページをリクエストしてから表示が完了するまでの時間が長くなる。
例えば、クライアントとサーバが、衛星回線を通じて通信し、HTTPプロトコルに従って、サーバから衛星回線を介してダウンロードされるウエブページのインラインオブジェクトの呼び出し遅れを防ぐために、分散プロキシサーバが、基本コンポーネントの取得時に、インラインオブジェクトを先読みする技術が特許文献1に開示されている。
一方で、ネットワークのセキュリティ確保のため、企業や通信事業者はネットワークセキュリティ機器を導入している。
例えば、特許文献2では、パケットデータサービス提供ノード160は、データのフローを管理するために、ディープパケット検査デバイス150によってデータパケット内に挿入されたアプリケーション情報を利用する。より詳細には、様々な例示的な実施形態において、パケットデータサービス提供ノード160は、データパケット内で見つかった情報を使用して、アプリケーションを識別し、そのパケットを許可するかまたはドロップするかを決定することなど、サービスの品質処理を実行する。特許文献2の、ディープパケット検査デバイスのようなものとして、ほかには、ファイアウォール、Intrusion Detection System (IDS)、Intrusion Protection System (IPS)、という機能が実装されるデバイスがある。これらはネットワーク上の通信を監視し、不正な通信や、攻撃とみなされる通信を検出した場合には、通信を遮断するなどの機能を持っている(特許文献3、4参照)。 ファイアウォールは主にTransmission Control Protocol (TCP)におけるポート単位の通信許可を制御する機器で、内部サーバが外部ネットワークに公開していないポートに対するアクセスを禁止し攻撃を防ぐ。IDSはパケットのヘッダまたはサーバのアクセスログを監視し、あらかじめ設定された不正アクセスのパターンにマッチするアクセスを受けた場合に管理者に通知する。IPSはIDSに通信遮断機能を付加したもので、不正アクセスのパターンを発見するとすぐに攻撃に対処することができる。
WO1999008429A US2009/0238192 特開2000-261483 特開2005-38116
企業ネットワークなどでは、ファイアウォールおよびIDS、IPSは主にその企業が設置し、ローカルエリアネットワーク(Local Area Network: LAN)とWANとの境界に設置される。そのため、これらの装置を利用する企業自身が管理することが容易である。一方DPIは企業ネットワークが接続する通信事業者のネットワークに設置されるため、ネットワーク利用者が管理することは容易ではない。
また、DPIはパケットをアプリケーション層のヘッダやデータまで監視する。これによりアプリケーション層でのプロトコル整合性や、データ部におけるウイルスなどの不正なデータの有無を検査する。前記のような異常が発見されると、通信を遮断することも可能である。そのため標準化されていない独自プロトコルや既存プロトコルの独自拡張は遮断されてしまう可能性がある。
WANにDPIなどのネットワークセキュリティシステムが設置されている場合、HTTPの独自拡張である従来技術における通信は不正な通信とみなされてしまう。従来技術ではプリフェッチしたファイルをサテライトゲートウェイコンポーネント(205)からアクセスポイントコンポーネント(202)へ転送するが、この転送がアクセスポイントコンポーネント(202)からのリクエストを伴わずサテライトゲートウェイコンポーネント(205)が一方的に送りつける形態となる。そのため、この通信はHTTPのプロトコルを守っておらず、セキュリティシステムによってアクセスポイントコンポーネント(202)側への攻撃とみなされる。その場合、この通信は遮断されてしまい、プリフェッチデータをアクセスポイントコンポーネント(202)、ひいてはブラウザ(201)に届けることができなくなる可能性がある。
本発明の目的は、ネットワークセキュリティシステムの存在下でも異常な通信と判断されることのなく、サーバが管理する複数のオブジェクトをクライアントに提供することである。
上記課題の少なくとも一を解決するために、本発明の一態様は、クライアントに接続される第一の通信装置及びファイルを管理するサーバに接続される第二の通信装置により前記クライアントと前記サーバとの通信を中継する通信方法であって、クライアントからのファイル取得リクエストに応じて、第二の通信装置が先読み処理を実行し、第一の通信装置から送信される通知に対応させて、サーバから得られたオブジェクトを第二の通信装置から第一の通信装置に送信する。
また、第二の態様は、クライアントに接続され、ファイルを管理するサーバに接続される第二の通信装置を介して前記クライアントと前記サーバとの通信を中継する第一の通信装置で、以下の構成を有する。具体的には、第一の通信装置は、前記クライアントから受信され、前記サーバを宛先とする前記ファイルの取得リクエストを前記第二の通信装置に転送処理部と、前記第二の通信装置で実行される、先読み処理により取得される、前記ファイルで参照される関連ファイルを、前記第一の通信装置から送信される通知に対応させて、前記関連ファイルを受信する関連ファイル受信部と、前記第一の通信装置で、前記関連ファイルを前記ファイルと対応付けて保持する保持部と、前記クライアントからの前記関連ファイルの参照要求に応じて、前記関連ファイルを前記クライアントに送信する送信部とを有する。
また、第三の態様は、クライアントに接続される第一の通信装置を介して、ファイルを管理するサーバに接続され、前記クライアントと前記サーバとの通信を中継する第二の通信装置であって、以下の構成を有する。つまり、第二の通信装置は、前記第一の通信装置で転送される前記クライアントからの前記サーバを宛先とする前記ファイルの取得リクエストに基づいて取得されるファイルを前記サーバから取得するファイル取得部と、
前記ファイルで参照される他の関連ファイルの先読み処理を実行し、関連ファイルを取得する先読み処理部と、前記関連ファイルを、前記第一の通信装置から送信される通知に対応させて、前記関連ファイルを前記第一の通信装置に送信する送信処理部と、を有する。
より具体的な一態様では、たとえば、第一ないし第三の態様において、通信はHTTP(Hyper Text Transport Protocol)に従って行われる。または、ファイルは、HTML(Hyper Text Markup Language)でクライアントでウエブページを表示するための情報と、先読み対象となる関連ファイルのURLを示すリンクとを含む態様である。
本発明によれば、遅延の大きなネットワークを介した通信において、セキュリティシステムの存在下においても通信の遮断を防ぎつつ、通信を高速化することができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
本発明の実施例1における通信方式を表すシーケンス図である。 本実施例のネットワーク構成を示す図である。 本発明の実施例1及び2におけるクライアント側プロキシのデータ管理テーブルを表す図。 本発明の実施例1及び2におけるサーバ側プロキシのデータ管理テーブルを表す図である。 本発明の実施例1におけるクライアント側プロキシのリクエスト判定部の動作を表すフローチャートである。 本発明の実施例1におけるクライアント側プロキシのリクエスト送信部の動作を表すフローチャートである。 本発明の実施例1におけるクライアント側プロキシのレスポンス解析部の動作を表すフローチャートである。 本発明の実施例1におけるクライアント側プロキシのデータ管理部の動作を表すフローチャートである。 本発明の実施例1におけるサーバ側プロキシのリクエスト判定部の動作を表すフローチャートである。 本発明の実施例1におけるサーバ側プロキシのレスポンス解析部の動作を表すフローチャートである。 本発明の実施例1におけるサーバ側プロキシのデータ管理部の動作を表すフローチャートである。 本発明の実施例2における通信方式を表すシーケンス図である。 本発明の実施例2におけるオブジェクトのクラス分類テーブルを表す図である。 本発明の実施例3における通信方式を表すシーケンス図である。 本発明の実施例4における通信方式を表すシーケンス図である。 本発明の実施例4におけるクライアント側プロキシのデータ管理テーブルを表す図である。 本発明の実施例4におけるクライアント側プロキシのリクエスト送信部の動作を表すフローチャートである。 本発明の実施例5における通信方式を表すシーケンス図である。 本発明の実施例5におけるクライアント側プロキシのリクエスト送信部の動作を表すフローチャートである。
図2は、実施例1におけるネットワーク構成を表す図である。クライアント(11)と同一のLAN(13)内にクライアント側プロキシ(12)を設置し、クライアント側プロキシ(12)がWAN(14)との通信を行う。同様に、サーバ(16)と同一のLAN(17)内にサーバ側プロキシ(15)を設置し、サーバ側プロキシ(15)がWANとの通信を行う。クライアント側プロキシ(12)とサーバ側プロキシ(15)が協調して動作することにより、遅延の大きなWANでも性能劣化を抑えて通信を行うことを可能とする。クライアント側プロキシ(12)及びサーバ側プロキシ(15)は、通信装置であって、たとえば、クライアントあるいはサーバそれぞれのLAN(Local AreaNetwork)のゲートウエイ装置であってもよい。クライアント(12)は、ウエブページを表示する表示部を備える情報処理装置である。一方、サーバ(16)はHTMLファイルとそのファイルと関連する外部ファイルとを記録する記憶部とを有する情報処理装置である。
次に、クライアント側プロキシ(12)の内部構成を説明する。LAN側コネクション管理部(21)はクライアント(11)との通信を担当する。
クライアント(11)からのリクエストはリクエスト判定部(22)にて、プリフェッチ動作の契機となるHTMLファイルに対するGETであるか、個別の外部ファイルに対するリクエストであるかが判定される。
プリフェッチ動作中でないとき、受信したリクエストはそのままリクエスト送信部(23)に送られ、サーバ側プロキシ(15)へ送信される。プリフェッチ動作中はリクエストは一旦データ管理部(27)に登録される。
WAN側コネクション管理部(24)はWANを通じてサーバ側プロキシ(15)との通信を担当する。リクエスト送信部(23)はリクエスト判定部(22)またはデータ管理部(27)から受け取ったリクエストをWAN側コネクション管理部(24)を用いて送信する。
レスポンス解析部(25)ではサーバ側プロキシ(15)から受信したレスポンスがHTMLファイルであればその内容を解析しファイル一覧を取得し、データ管理部(27)に登録する。同時にレスポンス送信部(26)に渡してクライアント(11)へ転送する。その他の外部ファイルであればデータ管理部(27)に登録する。レスポンス送信部(26)ではレスポンス解析部(25)またはデータ管理部(27)から受信したレスポンスデータをLAN側コネクション管理部(21)に渡してクライアント(11)へ転送する。
データ管理部(27)は、IPアドレスで識別されるクライアント(11)ごとにテーブルを持ち、リクエスト・レスポンスの状態とそのデータを管理する。例えばクライアント(11)が3台あれば3つのテーブル(28a〜c)を持つ。リクエストを受信すればそのパス名をキーとしてテーブルを検索して、リクエスト受信済みのフラグを1に設定する。またプリフェッチされたレスポンスを受信すればレスポンス受信済みのフラグを1に設定する。テーブルのエントリは定期的に調べられ、リクエスト受信済みかつレスポンス受信済みであれば、レスポンスをレスポンス送信部(26)へ渡し、クライアント(11)へ送信する。リクエスト受信時にレスポンスが登録されていなければ、リクエストをリクエスト送信部(23)へ渡してサーバ側プロキシ(15)へ送信してもよい。
サーバ側プロキシ(15)の内部構成を図2を用いて説明する。WAN側コネクション管理部(31)はクライアント側プロキシ(12)との通信を担当する。クライアント側プロキシ(12)からのリクエストはリクエスト判定部(32)にて、プリフェッチ動作の契機となるHTMLファイルに対するGETであるか、個別の外部ファイルに対するリクエストであるかが判定される。プリフェッチ動作中でないとき、受信したリクエストはそのままリクエスト送信部(33)に送られ、サーバ(16)へ送信される。プリフェッチ動作中はリクエストは一旦データ管理部(37)に登録される。
リクエスト送信部(33)はリクエスト判定部(32)またはデータ管理部(37)から受け取ったリクエストをLAN側コネクション管理部(34)を介して送信する。LAN側コネクション管理部(34)はサーバ(16)との通信を担当する。
レスポンス解析部(35)ではサーバ(16)から受信したHTMLファイルを解析しファイル一覧を取得してデータ管理部(37)に登録する。同時にレスポンス送信部(36)に渡してクライアント側プロキシ(12)へ転送する。またレスポンスがGETに対するレスポンスであればデータ管理部(37)に登録する。レスポンス送信部(36)ではレスポンス解析部(35)またはデータ管理部(37)から受信したレスポンスデータをWAN側コネクション管理部(31)に渡してクライアント側プロキシ(12)へ転送する。言い換えると、レスポンス送信部(36)ではレスポンス解析部(35)またはデータ管理部(37)よりWAN側に送信するデータを受信し、同データをWANコネクション管理部(31)よりクライアント側プロキシ(12)へ送信する。
データ管理部(37)は、クライアント側プロキシ(12)と同様にクライアント(11)ごとにデータ管理テーブルを持ち、リクエスト・レスポンスの状態とそのデータを管理する。例えばクライアント(11)が3台あれば3つのテーブル(38a〜c)を持つ。プリフェッチ動作中は、テーブルは定期的に調べられ、プリフェッチ未了のエントリがあればプリフェッチを行うため、プリフェッチリクエストを生成し、リクエスト送信部(33)へ渡す。クライアント側プロキシ(12)からリクエストを受信した場合、該当レスポンスをプリフェッチしていなければ、そのリクエストを優先的にリクエスト送信部(33)へ渡し、サーバ(16)へ送信してもよい。 本発明の第一の実施例における通信シーケンスを図1に示す。図1では通信にかかわる、クライアント(11)、クライアント側プロキシ(12)、サーバ側プロキシ(15)、およびサーバ(16)のシーケンスを示している。
クライアントがサーバ(16)上のウェブページにアクセスする際、まずそのページ本体を記述するHTMLファイルにGETというリクエスト(101)が発行される。これはクライアント側プロキシ(12)で受信され、サーバ側プロキシ(15)へとWAN(14)上を転送される(121)。クライアント側プロキシ(12)は、ウェブページに含まれる外部ファイルをプリフェッチするため、サーバ側プロキシ(15)にプリフェッチリクエストを送信する(122)。ただし、この時点では前記外部ファイルの数およびその名前が不明であるため、仮に「files.dat」という名前のファイルを1つだけリクエストする。
サーバ側プロキシ(15)は、前記HTMLファイルに対するリクエストを受信すると、サーバ(16)へさらに転送する(141)。前記リクエストを受信したサーバ(16)は、それに対するレスポンスとして前記HTMLファイルをサーバ側プロキシへ(15)返送する(142)。前記レスポンスはサーバ側プロキシ(15)でクライアント側プロキシ(12)へ転送され(123)、サーバ側プロキシ(15)は前記レスポンスを解析(161)することによりウェブページに埋め込まれている外部ファイルの一覧を取得し、サーバから先読みすべき関連ファイルを特定する。前記レスポンスはさらにクライアント側プロキシ(12)でクライアント(11)へ転送される(102)。クライアント(11)はサーバ側プロキシ(15)とは別に前記レスポンスを解析(162)して外部ファイル一覧を取得する。外部ファイル一覧を取得したクライアント(11)は、その各外部ファイルに対してリクエストを送信する(103)。
外部ファイル一覧を取得したサーバ側プロキシ(15)は、クライアント側プロキシ(12)からのプリフェッチリクエスト(122)に応答するため、外部ファイルのプリフェッチを行う。ウェブページに外部ファイルfile1〜file3が含まれていたとすると、サーバ(16)にこれらの外部ファイルに対するGETを送信し(143、145、147)、サーバ(16)からそれぞれレスポンス(144、146、148)を得る。サーバ側プロキシ(15)はこれらの外部ファイルを連結し(163)、プリフェッチリクエスト(122)に対するレスポンスとして、クライアント側プロキシ(12)に送信する(124)。
クライアント側プロキシ(12)ではプリフェッチレスポンス(124)を受信すると、これを展開して元の外部ファイルを得る(164)。外部ファイルを取得したクライアント側プロキシ(12)では、クライアント(11)からのリクエスト(103、105、107)に対して対応する外部ファイルをレスポンスとして送信する(104、106、108)。外部ファイルを受信したクライアント(11)は、それらの外部ファイルを用いてウェブページの描画を行う。
上記方法によりWAN(14)上のトラフィックは正常なHTTP通信となり、セキュリティシステムによる遮断を免れることができる。
上記動作は、クライアント側プロキシ(12)、サーバ側プロキシ(15)の双方にてクライアント(11)およびサーバ(16)の組ごとに独立に行われる。クライアント(11)およびサーバ(16)の識別はパケットヘッダ中のIPアドレスを用いて行う。 クライアント側プロキシ(12)のデータ管理部におけるデータ管理テーブル(28)を図3に示す。テーブル(28)はクライアント(11)のIPアドレス(41)およびサーバ(16)のIPアドレス(42)を持ち、それらの組合せによって識別される。また、プリフェッチに用いるポート番号(43)も持つ。また対象となる外部ファイルごとに、ファイルのURL(44)、プリフェッチしたレスポンス(45)、1または0の値をとる2種類のフラグ(46、47)、およびクライアント(11)がリクエストを行ったLAN側のポート番号(48)を保持する。フラグは「クライアントからリクエスト受信済み(46)」および「サーバ側プロキシからレスポンス受信済み(47)」である。
「クライアントからリクエスト受信済み(46)」フラグはその外部ファイルに対するリクエストをクライアント(11)から受信したとき1に設定される。「サーバ側プロキシからレスポンス受信済み(47)」フラグはそのファイルをサーバ側プロキシ(15)から受信したとき1に設定される。これらのフラグの両方が1となっていれば、レスポンスはクライアント側プロキシ(12)からクライアント(11)へ送信され、該当エントリは削除される。
サーバ側プロキシ(15)のデータ管理部におけるデータ管理テーブル(38)を図4に示す。テーブル(28)はクライアント(11)のIPアドレス(41)およびサーバ(16)のIPアドレス(42)を持ち、それらの組合せによって識別される。また、プリフェッチレスポンスの送信に用いるポート番号(43)およびクライアント側プロキシ(12)からプリフェッチリクエストを受信したことを示すフラグ(51)も持つ。
また対象となるファイルごとに、ファイルのURL(52)、プリフェッチしたレスポンス(53)、1または0の値をとる2種類のフラグ(54、55)、およびサーバ(16)からのプリフェッチに使用するLAN側のポート番号(56)を持つ。フラグは「サーバにプリフェッチリクエスト送信済み(54)」、「クライアント側プロキシからリクエスト受信済み(55)」である。
「サーバにプリフェッチリクエスト送信済み(54)」フラグはそのファイルに対するリクエストをサーバ(16)に送信したとき1に設定される。「クライアント側プロキシからリクエスト受信済み(55)」フラグはクライアント側プロキシ(12)からリクエストを受信したときに1に設定される。プリフェッチデータの送信が完了するとエントリはすべて削除される。
図5クライアント側プロキシ(12)における各部の動作を表すフローチャートである。図5はクライアント側プロキシ(12)におけるリクエスト判定部(22)の動作を示すフローチャートである。リクエスト判定部(22)ではLANコネクション管理部(21)よりクライアント(11)からのリクエストを受信し(301)、同リクエストがウェブページ本体であるHTMLファイルに対するリクエストであるかどうか判定する(302)。HTMLファイルに対するリクエストであった場合は同リクエストをリクエスト送信部(23)へ転送し(303)、また、リクエスト送信部(23)へプリフェッチリクエストの送信を指示する(304)。HTMLファイルに対するリクエストでなかった場合は外部ファイルに対するリクエストとして、データ管理部へ転送し、プリフェッチテーブルに登録する(305)。
図6はクライアント側プロキシ(12)におけるリクエスト送信部(23)の動作を表すフローチャートである。リクエスト送信部(23)はリクエスト判定部(22)またはデータ管理部(27)よりリクエストを受信すると(311)、同リクエストがファイルに対するGETであるか外部ファイルに対するプリフェッチのリクエストであるかを判定する(312)。プリフェッチのリクエストであった場合はそのリクエストを生成すし(314)、WANコネクション管理部(24)よりサーバ側プロキシ(15)に送信する(313)。外部ファイルに対するGETであった場合はそのままWANコネクション管理部(24)よりサーバ側プロキシ(15)に送信する(313)。
図7は、クライアント側プロキシ(12)におけるレスポンス解析部(25)の動作を表すフローチャートである。レスポンス解析部(25)はWANコネクション管理部(24)より、サーバ側プロキシ(15)から受信したレスポンスを受信(331)する。同レスポンスがHTMLファイルであるかを判定し(332)、HTMLファイルであった場合はレスポンス送信部(26)へ転送する(333)。そうでなければプリフェッチされた外部ファイルであるのでそれを展開し(334)、データ管理部(27)へ転送する(335)。
図8はクライアント側プロキシ(12)におけるデータ管理部(27)の動作を表すフローチャートである。データ管理部(27)はリクエスト判定部(22)またはレスポンス解析部(25)よりデータを受信すると(341)、受信データのIPアドレスより対応するクライアント(11)のテーブルを選択する(342)。
次に、入力データがリクエストであれば(343)、テーブルを検索してリクエストされたURLが登録されているか調べる(344)。登録されていなかった場合はテーブルに登録する(345)。この状態でリクエストのエントリが存在するので、同エントリにクライアント(11)がリクエストに用いたポート番号を登録し(346)、リクエスト受信済みフラグ(46)を設定する(347)。
入力データがプリフェッチされた外部ファイルであれば、テーブルを検索してプリフェッチされたURLが登録されているか調べる(348)。登録されていなかった場合はテーブルに登録する(349)。この状態でプリフェッチされた外部ファイルのエントリが存在するので、その内容を登録し(350)、レスポンス受信済みフラグ(47)を設定する(351)。
入力データがない場合は(341)テーブルおよびそのエントリを一つ選択し(352)、フラグの状態を調べる。リクエスト受信済み(46)かつレスポンス受信済みであれば(353)、テーブル中のレスポンスをレスポンス送信部へ転送し、クライアント(11)へ送信し(354)、エントリを削除する(355)。なお、エントリの削除はレスポンスの送信直後ではなく、後にフラグ状態を調べて行ってもよい。以上が、クライアント側プロキシ(12)の具体的な動作の説明である。
図9〜図11は、サーバ側プロキシ(15)における各部の動作を表すフローチャートである。図9はサーバ側プロキシ(15)におけるリクエスト判定部(32)の動作を表すフローチャートである。リクエスト判定部(32)ではWANコネクション管理部(31)よりリクエストを受信すると(401)、同リクエストが、HTMLファイルを含むサーバ(16)上のファイルに対するリクエストであるか、またはプリフェッチのリクエストであるかを判定する(402)。ファイルに対するリクエストであった場合はリクエスト送信部へ転送し(403)、プリフェッチリクエストであった場合はデータ管理部へ転送する。
図10はサーバ側プロキシ(15)におけるレスポンス解析部(35)の動作を表すフローチャートである。レスポンス解析部(35)ではLANコネクション管理部(34)よりレスポンスを受信し(431)、同レスポンスがHTMLファイルであるか外部ファイルであるかを判定する(432)。HTMLファイルであった場合は前記HTMLファイルをレスポンス送信部(36)へ転送する(433)。また前記HTMLファイルを解析して外部ファイル一覧を作成し(434)、データ管理部(37)へ転送してプリフェッチテーブル(38)に登録する。
図11はサーバ側プロキシ(15)におけるデータ管理部(37)の動作を表すフローチャートである。データ管理部(37)はリクエスト判定部(32)またはレスポンス解析部(35)よりデータを受信すると(441)、受信データのIPアドレスより対応するクライアント(11)のテーブルを選択する(442)。入力データがリクエストであれば(443)、プリフェッチリクエスト受信済みフラグ(51)を設定する(444)。
入力データがプリフェッチされた外部ファイルであれば、ポート番号より対応するエントリを選択し(445)、レスポンス受信済みフラグ(47)を設定する(446)。
入力データがない場合は(441)テーブルの全てのエントリについてフラグの状態を調べる(447)。未取得の外部ファイルがあった場合は(448)、プリフェッチを行うためプリフェッチリクエストを生成する(449)。また、プリフェッチに使用するサーバ側プロキシ(15)のポート番号を取得しテーブルに登録する(450)。そしてリクエスト送信部へ転送して(451)サーバ(16)に送信し、プリフェッチリクエスト送信済みフラグを1に設定する(452)。
未取得の外部ファイルがなかった場合は、全ての外部ファイルを連結し(453)、レスポンス送信部へ転送して(454)クライアント側プロキシ(12)へ送信する。送信が完了するとテーブルのエントリを削除する(455)。なお別途プリフェッチレスポンス送信済みを表すフラグを用いれば、エントリの削除はプリフェッチレスポンスの送信直後ではなく、後にフラグ状態を調べて行ってもよい。
以上が、実施例1の説明である。実施例1によると、クライアント側プロキシ(12)からのGET Filesのリクエスト(122)と、サーバ側プロキシ(15)で、先読みされた一以上の外部ファイルをまとめてプリフェッチレスポンスとなる200OK(124)のメッセージとが対応することで、プロキシ間の通信が不正な通信と判断されず、クライアント側へ先読みファイルを提供することができる。
実施例1の方法では、全ての外部ファイルのプリフェッチが完了するまで転送が行われず、外部ファイルがクライアント(11)に転送開始されるまでに待ち時間が発生してしまう。そこで、WAN上の転送を分割して、プリフェッチが完了する前に取得済みの外部ファイルから送信することで上記の待ち時間を削減する。また、実施例2では、プロキシ間の通信が不正な通信と判断されず、クライアント側へ先読みファイルを提供する。
本発明の第二の実施例では、HTMLファイルが参照する外部ファイルをあらかじめ決められた複数のクラスに分け、そのクラスごとに1つ以上の外部ファイルをまとめて転送する方法を示す。クラス(属性)の例として、次の分類を行う。1つ目はウェブページの表示を記述するCSS、2つ目はウェブページ中に表示される画像、3つ目はウェブページの表示には直接かかわらないスクリプトなどその他のファイルである。なお、クラスの分類と設定は管理者が手動で行うことを想定しているが、プロキシ装置により自動的に行ってもよい。クラス数および分類方法も任意である。
本実施例における通信シーケンスを図12に示す。図12では通信にかかわる、クライアント(11)、クライアント側プロキシ(12)、サーバ側プロキシ(15)、およびサーバ(16)のシーケンスを示している。
クライアント(11)がサーバ(16)上のウェブページにアクセスする際、まずそのページ本体を記述するHTMLファイルにGETというリクエスト(101)が発行される。これはクライアント側プロキシ(12)で受信され、サーバ側プロキシ(15)へとWAN(14)上を転送される(121)。クライアント側プロキシ(12)は、ウェブページに含まれる外部ファイルをプリフェッチするため、サーバ側プロキシ(15)に、事前に設定されたクラス分のプリフェッチリクエストを送信する。図12では3つのクラスを用いているため、3つのプリフェッチリクエスト(501〜503)を送信している。
サーバ側プロキシ(15)はHTMLファイルに対するリクエストを受信すると、サーバ(16)へさらに転送する(141)。前記リクエストを受信したサーバ(16)は、それに対するレスポンスとしてHTMLファイルをサーバ側プロキシ(15)へ返送する(142)。前記HTMLファイルはサーバ側プロキシ(15)でクライアント側プロキシ(12)へ転送され(123)、サーバ側プロキシ(15)はこのHTMLファイルを解析(161)することによりウェブページに埋め込まれている外部ファイル一覧を取得する。前記HTMLファイルはさらにクライアント側プロキシ(12)でクライアント(11)へ転送される(102)。クライアント(11)はサーバ側プロキシ(15)とは別にこのHTMLファイルを解析(162)して外部ファイル一覧を取得する。外部ファイル一覧を取得したクライアント(11)は、その各外部ファイルに対してリクエストを送信する(103)。
外部ファイル一覧を取得したサーバ側プロキシ(15)は、そのURLをもとに各外部ファイルのクラス分けを行う。そしてクラスごとにプリフェッチおよびクライアント側プロキシ(12)からのプリフェッチリクエストに対するレスポンスの生成・送信を行う。クラス分けの結果、file1.cssおよびfile2.cssがCSSクラスに分類される。サーバ側プロキシ(15)はこれらに対するリクエストを行い(143、145)、それぞれレスポンスを得る(144,146)。次にこれらのレスポンスを連結し(163)、クライアント側プロキシ(12)に、CSSクラスに対するプリフェッチリクエスト(501)へのレスポンスとして送信する(504)。続いて同様に、画像クラスに分類されたfile4.jpgおよびfile5.pngをプリフェッチし(147、149)、そのレスポンスを得ると(148、150)、それを連結し(165)プリフェッチリクエスト(502)に対するレスポンスとして送信する(505)。その他のクラスに分類されたファイルについても同様にプリフェッチ(151〜154)と転送(167、506)を行う。
クライアント側プロキシ(12)ではプリフェッチレスポンス(504)を受信すると、これを展開して元の外部ファイルを得る(164、166、168)。外部ファイルを取得したクライアント側プロキシ(12)では、クライアント(11)からのリクエスト(103、105、107、109、110、113)に対して対応する外部ファイルをレスポンスとして送信する(104、106、108、110、112、114)。外部ファイルを受信したクライアント(11)はそれらの外部ファイルを用いてウェブページの描画を行う。
上記方法によりWAN(14)上のトラフィックは正常なHTTP通信となり、セキュリティシステムによる遮断を免れることができる。
上記動作は、クライアント側プロキシ(12)、サーバ側プロキシ(15)の双方にてクライアント(11)およびサーバ(16)の組ごとに独立に行われる。クライアント(11)およびサーバ(16)の識別はパケットヘッダ中のIPアドレスを用いて行う。
装置内の構成については実施例1の場合と同様であるので、ここでは省略するが、プリフェッチ状況を管理するためのテーブル(28、38)は項目が、実施例1に比べて追加される。
実施例2でのクライアント側プロキシ(12)のデータ管理部におけるデータ管理テーブル(28)は、実施例1で既に説明したものに、さらに図3に示すように各外部ファイルのクラス分類(511)を保持する。
実施例2での、サーバ側プロキシ(15)のデータ管理部におけるデータ管理テーブル(38)を図9(b)に示す。データ管理テーブル(38)はは実施例1のものに追加して各外部ファイルのクラス分類(511)を保持する。
さらに、本実施例では、クライアント側プロキシ(12)およびサーバ側プロキシ(15)にて、図13のクラステーブル(513)を保持する。クラステーブル(513)はクラスごとに優先度(514)、クラス名(515)、およびクラス分けのルール(516)を保持する。つまり、クラステーブル(513)は、クラスとその優先度との対応付けを保持する。エントリをテーブルに登録する際には、このルール(516)と比較してマッチしたクラスに分類される。また、プリフェッチは優先度(514)の順に実行される。
クライアント側プロキシ(12)の動作は実施例1と同様であるので、ここではフローチャート等は省略する。
サーバ側プロキシ(15)の動作もレスポンス解析部(35)およびデータ管理部(37)以外は実施例1と同様であるので、そのフローチャート等は省略する。本実施例におけるサーバ側プロキシ(15)のレスポンス解析部(35)の動作を説明する。
実施例2のサーバ側プロキシ(15)のレスポンス解析部(35)は、図10のフローチャートのテーブル登録(435)の前に、サーバ側から受信したレスポンスに含まれるHTMLファイルを解析し(434)、データ管理部(37)が保持するクラステーブル(513)を用いて、HTMLファイルの解析結果で特定された各外部ファイルのクラスを判別する。そして、レスポンス解析部(35)は、判別されたクラスも含めて、図10の435と同様に、先読み対象である外部ファイルの情報をプリフェッチテーブル(38)内の図3のデータ管理テーブル(512)に登録する。その他の処理は、図10と同様である。
本実施例におけるサーバ側プロキシ(15)のデータ管理部(37)の動作を説明する。本実施例でのデータ管理部(37)は、447,448,455以外は図11と同様である。
447の代わりに、データ管理部(37)は、テーブル中のエントリで、クラスの優先度が最大のものに未取得のエントリがあるか調べる。未取得の外部ファイルがあった場合は(533)、図11の449ないし452の処理と同様である。
優先度が最大のクラスに未取得の外部ファイルがなかった場合は、データ管理部(37)は、図11の453及び454と同様の処理を行い、送信が完了するとテーブルの該当クラスのエントリを削除する(534)。なお別途プリフェッチレスポンス送信済みを表すフラグを用いれば、エントリの削除はプリフェッチレスポンスの送信直後ではなく、後にフラグ状態を調べて行ってもよい。
以上が実施例2の説明である。実施例2では、クライアント側プロキシ(12)とサーバ側プロキシ(15)は、先読み対象の外部ファイル(関連ファイル)を当該外部ファイルの拡張子でグルーピングされる共通の情報を共有する。それぞれのプロキシは、プロキシ間の通信が遮断されないように、そのグループごとにクライアント側プロキシからの通知であるファイル取得のリクエストとサーバ側プロキシと先読みファイルの送信とを対応させる。
本発明の第三の実施例では実施例1のような転送待ち時間短縮のため、HTTP/1.1において標準化されている方式で、データの分割転送が可能なチャンク転送を用いる。チャンク転送はレスポンスがダイナミックに生成される場合など、転送されるレスポンスのサイズがあらかじめ分からない場合に用いられる。リクエスト・レスポンスの形式としては、一つのリクエストに対して一つのレスポンスとなっているが、レスポンスは送信可能な部分から順次送られる。レスポンスにおいて一回に送信されるデータの固まりをチャンクと呼び、チャンクの先頭にはそのチャンクのサイズを示す16進数の値が記載される。
本実施例における通信シーケンスを図14に示す。図14では通信にかかわる、クライアント(11)、クライアント側プロキシ(12)、サーバ側プロキシ(15)、およびサーバ(16)のシーケンスを示している。
クライアント(11)がサーバ(16)上のウェブページにアクセスする際、まずそのページ本体を記述するHTMLファイルにGETというリクエスト(101)が発行される。これはクライアント側プロキシ(12)で受信され、サーバ側プロキシ(15)へとWAN(14)上を転送される(121)。クライアント側プロキシ(12)は、ウェブページに含まれる外部ファイルをプリフェッチするため、サーバ側プロキシ(15)に、1つのプリフェッチリクエストを送信する(122)。
サーバ側プロキシ(15)はHTMLファイルに対するリクエストを受信すると、サーバ(16)へさらに転送する(141)。前記リクエストを受信したサーバ(16)は、それに対するレスポンスとしてHTMLファイルをサーバ側プロキシ(15)へ返送する(142)。前記HTMLファイルはサーバ側プロキシ(15)でクライアント側プロキシ(12)へ転送され(123)、サーバ側プロキシ(15)はこのHTMLファイルを解析(161)することにより外部ファイル一覧を取得する。前記HTMLファイルはさらにクライアント側プロキシ(12)でクライアント(11)へ転送される(102)。クライアント(11)はサーバ側プロキシ(15)とは別にこのHTMLファイルを解析(162)して外部ファイル一覧を取得する。外部ファイル一覧を取得したクライアント(11)は、その各ファイルに対してリクエストを送信する(103)。
外部ファイル一覧を取得したサーバ側プロキシ(15)は、クライアント側プロキシ(12)からのプリフェッチリクエスト(122)に応答するため、外部ファイルのプリフェッチを行う。
ウェブページに外部ファイルfile1〜file5が含まれていたとすると、サーバ(16)にこれらの外部ファイルに対するGETを送信し(143、145、147、149、151)、サーバ(16)からそれぞれレスポンス(144、146、148、105、152)を得る。ここでチャンクの生成と転送は一定時間ごとに行われるとする。file2を取得した後に一定時間となり、サーバ側プロキシ(15)は、初回のチャンクを生成する(601)。初回のチャンクにはHTTPレスポンスのステータスコードおよびその他のヘッダがヘッダ内に記載され、メッセージボディの先頭にチャンク送信までに取得していたファイルサイズを、チャンクサイズとして記載する。それに続いてレスポンス本体が送られる。生成したチャンクはクライアント側プロキシ(12)へ送信される(600a)。
クライアント側プロキシ(12)ではチャンク(600a)を受信すると、これを展開して元の外部ファイルを得る(602)。ファイルを取得したクライアント側プロキシ(12)では、クライアント(11)からのリクエスト(103、105)に対して対応する外部ファイルをレスポンスとして送信する(104、106)。外部ファイルを受信したクライアント(11)はそれらの外部ファイルを用いてウェブページの描画を行う。
続いてサーバ側プロキシ(15)では、file5まで受信した後一定時間となり、チャンクの生成を行う(603)。2回目以降のチャンクにはHTTPヘッダは含まれず、チャンクサイズとレスポンス本体のみとなる。サーバ側プロキシ(15)はこれを送信し(600b)、クライアント側プロキシ(12)にて受信される。2回目以降チャンクを受信したクライアント側プロキシ(12)は、初回のチャンクと同様にこれを展開し、元の外部ファイルを得る(604)。また、クライアント(11)からのリクエスト(107、109、111)に応じてレスポンスを返す(108、119、112)。
外部ファイルの転送を完了したサーバ側プロキシ(15)は、チャンク転送を終了するためにチャンク末尾を示す情報を含むメッセージを生成する(605)。チャンク末尾のメッセージは、数字の0のみが記載されたメッセージである。これをクライアント側プロキシ(12)へ送信する。チャンク末尾のメッセージを受信したクライアント側プロキシ(12)は、チャンクの受信を終了する。
上記方法によりWAN(14)上のトラフィックは、クライアント側プロキシ(12)の一のリクエストに対し、複数のメッセージが一連のメッセージとして当該リクエストに対応する一のレスポンスと、ネットワークでは認識され、正常なHTTP通信となり、セキュリティシステムによる遮断を免れることができる。
上記動作は、クライアント側プロキシ(12)、サーバ側プロキシ(15)の双方にてクライアント(11)およびサーバ(16)の組ごとに独立に行われる。クライアント(11)およびサーバ(16)の識別はパケットヘッダ中のIPアドレスを用いて行う。
装置内の構成およびデータ管理テーブルの構造については実施例1の場合と同様であるので、ここでは省略する。
本実施例におけるクライアント側プロキシ(12)のレスポンス解析部(25)の動作を説明する。それ以外の部分は実施例1と同様であるので、ここでは省略する。レスポンス解析部(25)は、図7の331及び332と同様に、サーバ側プロキシ(15)から受信したレスポンスがウェブページ本体を記述するHTMLファイルであるかを判定する。そうでなければ、レスポンス解析部(25)は、チャンク転送されるプリフェッチデータで、チャンクの先頭または途中かチャンクの末尾であるかを判定する。チャンクの先頭または途中であれば、レスポンス解析部は、図7の334及び335と同様に、プリフェッチデータを展開しデータ管理部(27)へ転送する。プリフェッチデータがチャンク末尾であれば終了して次の処理を開始する。その他の処理は、図7と同様である。
サーバ側プロキシ(15)におけるデータ管理部(37)の動作を説明する。データ管理部(37)は、図11の447と同様に、テーブルの全てのエントリについてフラグの状態を調べる。その結果、フラグにより特定された未送信の外部ファイルがあった場合は、図14のチャンク生成処理601、603、603を以下の手順で行い、外部ファイルの送信またはプリフェッチリクエストの送信を行う。まずプリフェッチデータの送信が一定時間経過しているかどうかを判定する。一定時間経過していれば、取得済みのプリフェッチデータを連結してチャンクを生成し、レスポンス送信部へ転送してクライアント側プロキシ(12)へ送信する。送信が完了するとテーブルのエントリを削除する。なお別途プリフェッチレスポンス送信済みを表すフラグを用いれば、エントリの削除はプリフェッチレスポンスの送信直後ではなく、後にフラグ状態を調べて行ってもよい。それ以外の処理は、図11と同様である。
なお、チャンクの転送は一定時間ごとでなく、取得したファイルサイズが一定値を超えるごとなど、他の基準を用いて、あるいはそれらの組み合わせによって行ってもよい。
以上が実施例3の説明である。実施例3によると、クライアント側プロキシ(12)の一のリクエストに対し、複数のメッセージが一連のメッセージとして当該リクエストに対応する一のレスポンスと、ネットワークでは認識され、正常なHTTP通信となり、セキュリティシステムによる遮断を免れることができる。そして、本実施例では、先読みファイルのデータをクライアント側に提供することが出来、クライアントでウェブページの表示の高速化に寄与することができる。
本発明の第四の実施例では実施例1のような転送待ち時間短縮のため、クライアント側プロキシ(12)が一定時間間隔でプリフェッチリクエストを送信する。サーバ側プロキシ(15)はそれに対するレスポンスとして、プリフェッチリクエスト受信までに取得した外部ファイルをまとめて転送する。
本実施例における通信シーケンスを図15に示す。図15では通信にかかわる、クライアント(11)、クライアント側プロキシ(12)、サーバ側プロキシ(15)、およびサーバ(16)のシーケンスを示している。
クライアント(11)がサーバ(16)上のウェブページにアクセスする際、まずそのページ本体を記述するHTMLファイルにGETというリクエスト(101)が発行される。これはクライアント側プロキシ(12)で受信され、サーバ側プロキシ(15)へとWAN(14)上を転送される(121)。クライアント側プロキシ(12)は、ウェブページに含まれる外部ファイルをプリフェッチするため、サーバ側プロキシ(15)に、1回目のプリフェッチリクエストを送信する(701)。
サーバ側プロキシ(15)はHTMLファイルに対するリクエストを受信すると、サーバ(16)へさらに転送する(141)。前記リクエストを受信したサーバ(16)は、それに対するレスポンスとしてHTMLファイルをサーバ側プロキシ(15)へ返送する(142)。前記HTMLファイルはサーバ側プロキシ(15)でクライアント側プロキシ(12)へ転送され(123)、サーバ側プロキシ(15)はこのHTMLファイルを解析(161)することにより外部ファイル一覧を取得する。前記HTMLファイルはさらにクライアント側プロキシ(12)でクライアント(11)へ転送される(102)。クライアント(11)はサーバ側プロキシ(15)とは別にこのHTMLファイルを解析(162)して外部ファイル一覧を取得する。外部ファイル一覧を取得したクライアント(11)は、その各外部ファイルに対してリクエストを送信する(103)。
外部ファイル一覧を取得したサーバ側プロキシ(15)は、ウェブページに含まれる外部ファイルのプリフェッチを行う。サーバ側プロキシ(15)は外部ファイルfile1およびfile2に対してプリフェッチリクエストを送信し(143、145)、それぞれレスポンスを得る(144、146)。このとき、クライアント側プロキシ(12)からの1回目のプリフェッチリクエスト(701)を受信する。これに対してレスポンスを送信するため、サーバ側プロキシ(15)は受信済みの外部ファイルを連結し(163)、クライアント側プロキシ(12)へ送信する(702)。
クライアント側プロキシ(12)は、1回目のプリフェッチリクエスト(701)に対するレスポンス(702)が到着する前に一定時間経過し、2回目のプリフェッチリクエスト(703)を送信する。その後、1回目のプリフェッチリクエスト(701)に対するレスポンス(702)が到着し、これを展開して元の外部ファイルを得る(164)。クライアント側プロキシ(12)はクライアント(11)からのリクエスト(103、105)に対し、取得済みの外部ファイルをレスポンスとして送信する(104、106)。
一方、サーバ側プロキシ(15)はプリフェッチを続け、外部ファイルfile3およびfile4に対してリクエストを送信し(147、149)、レスポンスを得る(148、150)。その後、クライアント側プロキシ(12)から2回目のプリフェッチリクエスト(703)が到着する。これに対するレスポンスを、1回目のプリフェッチリクエストに対するレスポンスと同様に生成し(165)、送信する(704)。
この間、クライアント側プロキシ(12)ではプリフェッチリクエストの送信後一定時間が経過したため、3回目のプリフェッチリクエストを送信する(705)。その後、2回目のプリフェッチリクエスト(703)に対するレスポンス(704)が到着し、これを展開する(166)。クライアント側プロキシ(12)はクライアント(11)からのリクエスト(107、109)に応答して、取得済みの外部ファイルをレスポンスとして送信する(108、110)。
サーバ側プロキシ(15)はクライアント側プロキシ(12)より3回目のプリフェッチリクエストを受信するが、この時点でウェブページに含まれる外部ファイルは全て送信済みであったとする。送るべき外部ファイルが存在しないため、サーバ側プロキシ(15)はレスポンスとして”404 Not Found”というステータスコードを返す(706)。これを受信したクライアント側プロキシ(12)は、それ以降プリフェッチリクエストの送信を停止する。
本実施例の方法では、クライアント側プロキシ(12)がプリフェッチリクエストを送信する際、未取得の外部ファイルに対してクライアント(11)からリクエストを受信していた場合、サーバ側プロキシ(15)に通知してクライアント側プロキシ(12)主導でプリフェッチすることが可能である。具体的にはクライアント側プロキシ(12)は、クライアント(11)からリクエストされたファイル名をプリフェッチリクエストの外部ファイル名に含めることにより通知する。サーバ側プロキシ(15)はこの通知を受け取った時、該当外部ファイルを他のプリフェッチリクエストに対するレスポンスとして送信済みであれば何もしない。
該当外部ファイルを取得済みであれば、そのプリフェッチリクエストに対するレスポンスに含めて送信する。該当外部ファイルを取得していなければ、サーバ(16)に対しプリフェッチを行う。クライアント側プロキシ(12)への該当外部ファイルの送信は、そのプリフェッチリクエストに対するレスポンスに含めてもよいし、そのレスポンスには含めず次のレスポンスに含めてもよい。
上記方法によりWAN(14)上のトラフィックは正常なHTTP通信となり、セキュリティシステムによる遮断を免れることができる。
上記動作は、クライアント側プロキシ(12)、サーバ側プロキシ(15)の双方にてクライアント(11)およびサーバ(16)の組ごとに独立に行われる。クライアント(11)およびサーバ(16)の識別はパケットヘッダ中のIPアドレスを用いて行う。
プロキシ内の構成については実施例1の場合と同様であるので、ここでの説明は省略する。
クライアント側プロキシ(12)のデータ管理部(27)におけるデータ管理テーブル(28)を図16に示す。データ管理テーブル(28)は実施例1のものに追加してプリフェッチを行うかどうかを示すプリフェッチフラグ(710)を保持する。また、サーバ側プロキシ(15)のデータ管理部(37)におけるデータ管理テーブル(38)の構造は実施例1と同様であるので、ここでの説明は省略する。
本実施例のクライアント側プロキシ(12)では、リクエスト送信部(23)およびレスポンス解析部(25)以外の部分は実施例1と同様であるので、説明は省略する。
本実施例におけるクライアント側プロキシ(12)のリクエスト送信部(23)の動作を図17に示す。リクエスト送信部(23)はリクエスト判定部(22)またはデータ管理部(27)よりデータを受信した場合(711)、同データがリクエスト判定部(22)からのHTMLファイルまたは外部ファイルに対するGETであるか、データ管理部(27)からの外部ファイルに対するプリフェッチのリクエストであるかを判定する(312)。プリフェッチのリクエストであった場合はそのリクエストを生成し(314)、WANコネクション管理部(24)よりサーバ側プロキシ(15)に送信する。外部ファイルに対するGETであった場合はプリフェッチフラグを1に設定したうえで(712)、WANコネクション管理部(24)よりサーバ側プロキシ(15)に送信する(313)。
リクエスト判定部(22)またはデータ管理部(27)よりリクエストを受信しなかった場合、プリフェッチフラグが1であるかを確認する(713)。1であった場合はプリフェッチリクエスト送信から一定時間経過したかどうか調べ(714)、一定時間経過していればプリフェッチリクエストを生成し(314)、WANコネクション管理部(24)よりサーバ側プロキシ(15)に送信する(313)。
クライアント側プロキシ(12)におけるレスポンス解析部(25)の動作を説明する。レスポンス解析部(25)は、図7と同様、サーバ側プロキシ(15)から受信したレスポンスを受信すると、そのレスポンスがウェブページ本体を記述するHTMLファイルであるかを判定する(332)。判定結果、HTMLファイルでなければプリフェッチデータである。その場合まずレスポンスのステータスコードを確認し(715)、”404”以外であれば図7と同様、レスポンスを展開し(334)、データ管理部(27)へ転送する(335)。ステータスコードが”404”であれば、レスポンス解析部(25)は、プリフェッチフラグを0に設定する(716)。それ以外の処理は、図7と同様である。 サーバ側プロキシ(12)におけるデータ管理部(37)の動作を説明する。図11と異なる点は、データ管理部(37)がレスポンスに未取得のファイルが含まれているか否かを判別するステップ(448)より後の処理である。データ管理部(37)は、未取得のファイルが含まれていなかった場合は、ステップ441に戻る。
一方、未取得のファイルがあった場合(448)、データ管理部(37)は、プリフェッチリクエスト受信済みフラグを調べ、1でなければ図11の449ないし452の処理を行う。以下の手順でプリフェッチデータの送信またはプリフェッチリクエストの送信を行う。
プリフェッチリクエスト受信済みフラグが1である場合、データ管理部(37)は、その時点で取得済みの外部ファイルをレスポンスとして送信する。まず、データ管理部(37)は、取得済みの外部ファイルを連結してプリフェッチリクエストに対するレスポンスを生成し(453)、レスポンス送信部へ転送して(454)クライアント側プロキシ(12)へ送信する。送信が完了するとテーブルのエントリを削除する。なお別途プリフェッチレスポンス送信済みを表すフラグを用いれば、エントリの削除はプリフェッチレスポンスの送信直後ではなく、後にフラグ状態を調べて行ってもよい。
以上の説明が実施例4の説明である。実施例4によると、クライアント側プロキシからの複数の先読みファイルの取得リクエストと、該当の先読みファイルを含むレスポンスあるいは先読みファイルが存在しないことを示す情報を含むレスポンス(706)とが対応するので、プロキシ間の通信が不正な通信と判断されない。そして、本実施例では、先読みファイルのデータをクライアント側に提供することが出来、クライアントでウエブページの表示の高速化に寄与することができる。
本発明の第五の実施例では、クライアント側プロキシ(12)とサーバ側プロキシ(15)の間の転送において、その関係を逆転し、サーバ側プロキシ(15)がクライアント側プロキシ(12)にファイルアップロードのリクエストを行う。同リクエストに対して、クライアント側プロキシ(12)が成功のレスポンスを送信することにより、正常なHTTP通信とすることができる。これにより、サーバ側プロキシ(15)がプリフェッチしたファイルを即座にクライアント側プロキシ(12)に転送し、実施例1のような待ち時間を短縮することができる。
本実施例における通信シーケンスを図18に示す。図18では通信にかかわる、クライアント(11)、クライアント側プロキシ(12)、サーバ側プロキシ(15)、およびサーバ(16)のシーケンスを示している。
クライアント(11)がサーバ(16)上のウェブページにアクセスする際、まずそのウェブページ本体を記述するHTMLファイルにGETというリクエスト(101)が発行される。これはクライアント側プロキシ(12)で受信され、サーバ側プロキシ(15)へとWAN(14)上を転送される(121)。
サーバ側プロキシ(15)はHTMLファイルに対するリクエストを受信すると、サーバ(16)へさらに転送する(141)。前記リクエストを受信したサーバ(16)は、それに対するレスポンスとしてHTMLファイルをサーバ側プロキシ(15)へ返送する(142)。前記レスポンスはサーバ側プロキシ(15)でクライアント側プロキシ(12)へ転送され(123)、サーバ側プロキシ(15)はこのHTMLファイルを解析(161)することによりウェブページに埋め込まれている外部ファイル一覧を取得する。前記HTMLファイルはさらにクライアント側プロキシ(12)でクライアント(11)へ転送される(102)。クライアント(11)はサーバ側プロキシ(15)とは別にこのHTMLファイルを解析(162)して外部ファイル一覧を取得する。外部ファイル一覧を取得したクライアント(11)は、その各外部ファイルに対してリクエストを送信する(103)。
サーバ側プロキシ(15)は、作成した外部ファイル一覧中の最初のファイルに対しリクエストを送信し(143)、そのレスポンスを得る(144)。続いてサーバ側プロキシ(15)はこのファイルをクライアント側プロキシ(12)にPUTコマンドで送信する(801)。
クライアント側プロキシ(12)はPUTコマンドを受信すると、それに対するレスポンスとしてステータスコード”201 Created”をサーバ側プロキシ(15)に送信する(802)。また、クライアント側プロキシ(12)がクライアント(11)からリクエストを受信すると(103)、受け取った外部ファイルをレスポンスとして返す(104)。
一方、サーバ側プロキシ(15)では、次の外部ファイルに対してプリフェッチリクエストをサーバ(16)に送信する(145)。そのレスポンスを受信すると(146)、クライアント側プロキシ(12)にPUTで送信する(803)。クライアント側プロキシ(12)はそれに対するレスポンスを送信し(804)、クライアント(11)からのリクエストを受信すると(105)、それに対するレスポンスを送信する(106)。
以降の外部ファイルについても同様に転送を行い(147、148、805、806、107、108)、全ての外部ファイルを転送すると終了する。
装置内の構成については実施例1の場合と同様であるので、ここでは省略する。
実施例5のクライアント側プロキシ(12)のデータ管理部におけるデータ管理テーブル(28)は、図3のプリフェッチ用ポート番号43を不要とする点が、実施例1と異なる。
サーバ側プロキシ(15)のデータ管理部におけるデータ管理テーブル(38)も図4のプリフェッチ用ポート番号43を不要とする点が、実施例1と異なる。
クライアント側プロキシ(12)における各部の動作を以下説明する。なおレスポンス送信部(26)は実施例1のものと同一であるので、ここでは説明を省略する。
クライアント側プロキシ(12)におけるリクエスト判定部(22)の動作を説明する。実施例5では、図5のプリフェッチ指示(304)が不要となり、その他は図5と同様である。図18のGetリクエスト(121)の送信後、ファイルを取得するためのリクエストは不要となり、PUT file (801)の受信を待機すればよい。
図19は、クライアント側プロキシ(12)におけるリクエスト送信部(23)の動作を表すフローチャートである。リクエスト送信部(23)はリクエスト判定部(22)よりリクエストを受信した場合(811)、同リクエストをそのままWANコネクション管理部(24)よりサーバ側プロキシ(15)に送信する(313)。リクエスト送信部(23)は、所定の時間内にリクエスト判定部(22)よりリクエストを受信しなかった場合、データ管理部(27)よりPUT受信済みが通知されたかどうかを判断する(812)。通知された場合はPUTに対するレスポンスを生成し(813)、WANコネクション管理部(24)よりサーバ側プロキシ(15)に送信する(313)。
クライアント側プロキシ(12)におけるレスポンス解析部(25)の動作を説明する。実施例5では、図7のプリフェッチデータの展開(334)が不要となる。その他は図5と同様である。図18のGetリクエスト(121)の送信後、レスポンス解析部(25)は、Getリクエストに対するレスポンス(123)やPUTコマンド(801,803,805)がHTMLファイルであるかを判定し(332)、HTMLファイルであればレスポンス送信部(26)へ転送し、(333)。データ管理部(27)へ転送する(335)。
クライアント側プロキシ(12)におけるデータ管理部(27)の動作を説明する。本実施例のクライアント側プロキシ(12)の動作は図8とほぼ同様である。異なる点は、まず、図8の343の代わりに、データの受信がクライアントからの外部ファイルに対するリクエストか、サーバ側からのPUT受信であるかを判別する点である。判別結果、クライアントからのリクエストである場合は、データ管理部(27)は図7の処理344以降の処理を行う。つまり、データ管理部(27)は、リクエストされた外部ファイルのURLをテーブルに登録されていなければ登録し、同エントリにクライアント(11)がリクエストに用いたポート番号を登録し(346)、リクエスト受信済みフラグ(46)を設定する(347)。
一方、入力データがPUTによるプリフェッチされた外部ファイルであれば、データ管理部(27)は、図8の348ないし350と同様の処理を行う。PUTコマンドに含まれる外部ファイルのエントリに外部ファイルのURLをテーブルとPUT受信の内容を登録する(349及び350)。その後、図18の802、804、806のように、リクエスト送信部より、PUTに対するレスポンスをサーバ側プロキシ(15)に送信する。以上の説明が、クライアント側プロキシ(12)の実施例5における構成及び動作である。
サーバ側プロキシ(15)におけるデータ管理部(37)の動作を説明する。。実施例1の図11と同様であるが、一部異なる点について説明する。データ管理部(37)はレスポンス解析部(35)よりデータを受信した場合(441)、図11と同様の処理を行う。
所定の時間、レスポンス解析部(35)から入力データがない場合は(821)、データ管理部(37)は、テーブル38の先頭エントリを選択し(822)、該当エントリが未取得の外部ファイルである場合は、サーバ(16)に対してプリフェッチを行うためプリフェッチリクエストを生成する(449)。その後の処理は、図11の450ないし452と同様である。
一方、該当エントリが取得済みであった場合は、クライアント側プロキシ(12)へ送るためのPUTリクエストを生成し、レスポンス送信部(36)へ転送して(454)クライアント側プロキシ(12)へ送信する。送信が完了するとテーブル38の該当エントリを削除する。なお別途プリフェッチレスポンス送信済みを表すフラグを用いれば、エントリの削除はプリフェッチレスポンスの送信直後ではなく、後にフラグ状態を調べて行ってもよい。
また、クライアント側プロキシ(12)にて未取得の外部ファイルをクライアント(11)からリクエストされた場合、そのリクエストをサーバ側プロキシ(15)に転送してもよい。このリクエストを受信したサーバ側プロキシ(15)は、該当する外部ファイルをPUTにより送信済みであれば、前記リクエストに対して”404 Not Found”のレスポンスを送信する。クライアント側プロキシ(12)には前記PUTリクエストが受信され、ファイルを取得することができる。一方サーバ側プロキシ(15)が該当する外部ファイルを送信していなければ、クライアント側プロキシ(12)が転送したリクエストに対するレスポンスとして外部ファイルを送信する。
以上の説明が、サーバ側プロキシ(15)の実施例5における構成及び動作である。実施例5では、サーバプロキシ(15)からの先読み対象ファイルを含むPUTリクエストと、クライアント側プロキシからのPUTリクエストに対する201Createdとが対応することで、プロキシ間の通信が不正な通信と判断されず、先読みファイルのデータをクライアント側に提供することが出来、クライアントでウエブページの表示の高速化に寄与することができる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。たとえば、 クライアントとサーバの間のクライアント側にクライアント側プロキシを設置し、サーバ側にサーバ側プロキシを設置したネットワークであって、
前記クライアント側プロキシおよび前記サーバ側プロキシが前記クライアントおよび前記サーバの間の通信を中継する方法であって、
前記クライアントと前記サーバの間で前記クライアントからの1つ以上の外部ファイルを参照するドキュメント取得のリクエストに対して前記サーバがレスポンスを送信する形式の通信方法において、
前記クライアントの送信した第一のリクエストを契機として、前記クライアント側プロキシが、前記第一のリクエストをサーバ側プロキシに中継するとともに、前記クライアントからの第二のリクエストを待たずに、前記サーバに対して前記ドキュメントが参照する1つ以上の外部ファイルを取得するための1つ以上のプリフェッチリクエストを送信し、
前記サーバ側プロキシは前記ドキュメントを取得して解析し、前記1つ以上の外部ファイルを前記サーバからプリフェッチし、
前記プリフェッチした前記1つ以上の外部ファイルを、前記プリフェッチリクエストに対するレスポンスとして、クライアント側プロキシへ、前記プリフェッチリクエストの数と前記プリフェッチリクエストに対するレスポンスの数が一致するよう送信する、という態様である。
例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
11 クライアント
12 クライアント側プロキシ
13 クライアント側LAN
14 WAN
15 サーバ側プロキシ
16 サーバ
17 サーバ側LAN
21 クライアント側プロキシにおけるLANコネクション管理部
22 クライアント側プロキシにおけるリクエスト判定部
23 クライアント側プロキシにおけるリクエスト送信部
24 クライアント側プロキシにおけるWANコネクション管理部
25 クライアント側プロキシにおけるレスポンス解析部
26 クライアント側プロキシにおけるレスポンス送信部
27 クライアント側プロキシにおけるデータ管理部
31 サーバ側プロキシにおけるLANコネクション管理部
32 サーバ側プロキシにおけるリクエスト判定部
33 サーバ側プロキシにおけるリクエスト送信部
34 サーバ側プロキシにおけるWANコネクション管理部
35 サーバ側プロキシにおけるレスポンス解析部
36 サーバ側プロキシにおけるレスポンス送信部
37 サーバ側プロキシにおけるデータ管理部

Claims (15)

  1. クライアントに接続される第一の通信装置及びファイルを管理するサーバに接続される第二の通信装置により前記クライアントと前記サーバとの通信を中継する通信方法であって、
    前記第一の通信装置で、前記クライアントから受信され、前記サーバを宛先とする前記ファイルの取得リクエストを、前記第二の通信装置に送信し、
    前記第二の通信装置で、前記ファイルの取得リクエストに基づいて取得されるファイルを前記サーバから取得し、
    前記ファイルで参照される他の関連ファイルの先読み要求を送信し
    前記先読み要求に対する応答を受信し、
    前記応答に含まれる関連ファイルを、前記第一の通信装置から送信される通知に対応させて、前記関連ファイルを前記第一の通信装置に送信し、
    前記第一の通信装置で、前記関連ファイルを前記ファイルと対応付けて保持し、
    前記クライアントからの前記関連ファイルの参照要求に応じて、前記関連ファイルを前記クライアントに送信する、
    ことを特徴とする通信方法。
  2. 請求項1記載の通信方法であって、
    前記第二の通信装置は、
    前記ファイルで参照される他の関連ファイルが複数ある場合、2以上のファイルを集約して前記第一の通信装置に送信する、ことを特徴とする通信方法。
  3. 請求項1または2記載の通信方法であって、
    前記第二の通信装置からの前記他の関連ファイルの送信は、前記取得リクエスト数に対応する、ことを特徴とする通信方法。
  4. 請求項1ないし3記載の通信方法であって、
    前記通知は、関連ファイルの取得リクエストであって、
    前記通信は、HTTP(Hyper Text Transport Protocol)に従って行い、
    前記ファイルは、HTML(Hyper Text Markup Language)で前記クライアントでウエブページを表示するための情報と、前記他のファイルのURLを示すリンクとを含む、ことを特徴とする通信方法。
  5. 請求項1記載の通信方法であって、
    前記通知は、関連ファイルの取得リクエストであって、
    前記取得リクエストは、関連ファイルの属性を指定する情報を含み、
    前記第二の通信装置は、
    前記属性に対応する前記他のファイルを前記第一の通信装置に送信する、ことを特徴とする通信方法。
  6. 請求項5記載の通信方法であって、
    前記第一の通信装置で、
    前記属性は優先度と対応付けられ、前記優先度に従って、前記取得リクエストを順次送信し、
    前記第二の通信装置で、前記優先度と前記属性とにしたがって、前記サーバから取得する関連ファイルを順次送信する、ことを特徴とする通信方法。
  7. 請求項6記載の通信方法であって、
    前記関連ファイルのうち、前記ファイルを前記クライアントで表示させるために用いる関連ファイルを取得するための取得リクエストを他の関連ファイルよりも優先して送信する、ことを特徴とする通信方法。
  8. 請求項7記載の通信方法であって、前記ファイルを前記クライアントで表示させるために用いる関連ファイルは、CSS(Cascading Style Sheet)である、ことを特徴とする通信方法。
  9. 請求項1ないし3記載の通信方法であって、
    前記通知は、関連ファイルの取得リクエストであって、
    前記通信は、HTTP(Hyper Text Transport Protocol)に従って行い、
    前記ファイルは、HTML(Hyper Text Markup Language)で前記クライアントでウエブページを表示するための情報と、前記他の関連ファイルのURLを示すリンクとを含み、
    前記第二の通信装置で、前記関連ファイルの取得リクエストに対応させて、送るべき他のファイルがないことを示す情報を送信し、
    前記第一の通信装置で、前記関連ファイルの取得リクエストを所定の時間ごとに送信し、
    前記情報の受信に応じて、他の関連ファイルの取得リクエストの送信処理を停止する、ことを特徴とする通信方法。
  10. 請求項1記載の通信方法であって、
    前記通知は、関連ファイルの取得リクエストであって、
    前記ファイルは、HTML(Hyper Text Markup Language)で前記クライアントでウエブページを表示するための情報と、前記他の関連ファイルのURLを示すリンクとを含み、
    前記第二の通信装置で、前記関連ファイルの取得リクエストの一に対応させる応答を分割し、分割されたメッセージの一は、最後のメッセージであることを示す情報を含む、ことを特徴とする通信方法。。
  11. 請求項10記載の通信方法であって、、
    前記分割されたメッセージのうち最初のメッセージは、HTTPヘッダを含むが、それ以外のメッセージは、HTTPヘッダを含まず、前記第二の通信装置で、所定の時間ごとに前記分割されたメッセージを送信する、ことを特徴とする通信方法。
  12. 請求項1ないし3記載の通信方法であって、
    前記通信は、HTTP(Hyper Text Transport Protocol)に従って行い、前記通知は、関連ファイルの受領通知であって、前記ファイルは、HTML(Hyper Text Markup Language)で前記クライアントでウエブページを表示するための情報と、前記他の関連ファイルのURLを示すリンクとを含み、
    前記第二の通信装置で、前記関連ファイルをアップロードリクエストとして前記第一の通信装置に送信し、
    前記第一の通信装置で、前記アップロードリクエストに対応させて前記受領通知を前記第二の通信装置に送信する、ことを特徴とする通信方法。
  13. 請求項1ないし12記載の通信方法であって、
    前記第一の通信装置で、前記参照要求が、未取得の関連ファイルに対する要求である場合、
    前記未取得の関連ファイルに対するリクエストを前記第二の通信装置に送信し、
    前記第二の通信装置で、前記関連ファイルに対するリクエストを他の前記関連ファイルの送信処理より優先的に処理する通信方法。
  14. クライアントに接続され、ファイルを管理するサーバに接続される第二の通信装置を介して前記クライアントと前記サーバとの通信を中継する第一の通信装置であって、
    前記クライアントから受信され、前記サーバを宛先とする前記ファイルの取得リクエストを前記第二の通信装置に転送する転送処理部と、
    前記第二の通信装置で実行される、先読み処理により取得される、前記ファイルで参照される関連ファイルを、前記第一の通信装置から送信される通知に対応させて、前記関連ファイルを受信する関連ファイル受信部と、
    前記第一の通信装置で、前記関連ファイルを前記ファイルと対応付けて保持する保持部と、
    前記クライアントからの前記関連ファイルの参照要求に応じて、前記関連ファイルを前記クライアントに送信する送信部とを有し、
    前記通信は、HTTP(Hyper Text Transport Protocol)に従って行い、前記ファイルは、HTML(Hyper Text Markup Language)で前記クライアントでウエブページを表示するための情報と、前記他のファイルのURLを示すリンクとを含む、ことを特徴とする第一の通信装置。
  15. クライアントに接続される第一の通信装置を介して、ファイルを管理するサーバに接続され、前記クライアントと前記サーバとの通信を中継する第二の通信装置であって、
    前記第一の通信装置で転送される前記クライアントからの前記サーバを宛先とする前記ファイルの取得リクエストに基づいて取得されるファイルを前記サーバから取得するファイル取得部と、
    前記ファイルで参照される他の関連ファイルの先読み処理を実行し、関連ファイルを取得する先読み処理部と、
    前記関連ファイルを、前記第一の通信装置から送信される通知に対応させて、前記関連ファイルを前記第一の通信装置に送信する送信処理部と、を有し、
    前記通信は、HTTP(Hyper Text Transport Protocol)に従って行い、前記ファイルは、HTML(Hyper Text Markup Language)で前記クライアントでウエブページを表示するための情報と、前記他のファイルのURLを示すリンクとを含む、ことを特徴とする第二の通信装置。
JP2012123902A 2012-05-31 2012-05-31 通信装置および方法 Pending JP2013250691A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012123902A JP2013250691A (ja) 2012-05-31 2012-05-31 通信装置および方法
PCT/JP2013/065139 WO2013180255A1 (ja) 2012-05-31 2013-05-31 通信装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012123902A JP2013250691A (ja) 2012-05-31 2012-05-31 通信装置および方法

Publications (2)

Publication Number Publication Date
JP2013250691A true JP2013250691A (ja) 2013-12-12
JP2013250691A5 JP2013250691A5 (ja) 2015-02-19

Family

ID=49673438

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012123902A Pending JP2013250691A (ja) 2012-05-31 2012-05-31 通信装置および方法

Country Status (2)

Country Link
JP (1) JP2013250691A (ja)
WO (1) WO2013180255A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015001784A (ja) * 2013-06-13 2015-01-05 富士通株式会社 情報処理システム、情報処理装置、及び情報処理プログラム
WO2017010065A1 (ja) * 2015-07-10 2017-01-19 日本電気株式会社 情報処理装置および配信方法、並びにコンピュータ・プログラムを記録する記録媒体
JP2018156692A (ja) * 2018-06-14 2018-10-04 株式会社リコー 情報処理システム、画像形成装置、情報処理装置、情報処理方法および情報処理プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017163426A1 (ja) 2016-03-25 2017-09-28 富士通株式会社 中継装置、中継方法及び中継プログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000066978A (ja) * 1998-08-25 2000-03-03 Hitachi Telecom Technol Ltd ネットワーク管理情報収集方式および該方式に用いるネットワーク管理装置ならびに管理対象ノード
JP2001154983A (ja) * 1999-12-01 2001-06-08 Nec Corp コンテンツ提供装置及びプログラムを記録した機械読み取り可能な記録媒体
JP2001209571A (ja) * 2000-01-26 2001-08-03 Sharp Corp 情報取得装置および情報取得方法、ならびに情報取得プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2005063192A (ja) * 2003-08-14 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> ウェブキャッシュ装置、ウェブキャッシュ方法及びウェブキャッシュプログラム
JP2006163780A (ja) * 2004-12-07 2006-06-22 Vodafone Kk サーバに対する情報通知方法、コンテンツ提供方法、コンテンツ取得時の通信方法、移動体通信端末、コンテンツ提供サーバ及び通信中継サーバ
JP2008541239A (ja) * 2005-05-04 2008-11-20 ヴェントゥーリ ワイヤレス インコーポレーティッド 長い待ち時間リンクのhttpのパフォーマンスを増加させるための方法と装置
WO2010071709A1 (en) * 2008-10-16 2010-06-24 Qualcomm Incorporated Methods and apparatus for obtaining content with reduced access times
WO2010072238A1 (en) * 2008-12-23 2010-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Distribution of content items to user devices in a mobile environment
JP2012003652A (ja) * 2010-06-21 2012-01-05 Nippon Telegr & Teleph Corp <Ntt> Web情報取得方法および装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000066978A (ja) * 1998-08-25 2000-03-03 Hitachi Telecom Technol Ltd ネットワーク管理情報収集方式および該方式に用いるネットワーク管理装置ならびに管理対象ノード
JP2001154983A (ja) * 1999-12-01 2001-06-08 Nec Corp コンテンツ提供装置及びプログラムを記録した機械読み取り可能な記録媒体
JP2001209571A (ja) * 2000-01-26 2001-08-03 Sharp Corp 情報取得装置および情報取得方法、ならびに情報取得プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2005063192A (ja) * 2003-08-14 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> ウェブキャッシュ装置、ウェブキャッシュ方法及びウェブキャッシュプログラム
JP2006163780A (ja) * 2004-12-07 2006-06-22 Vodafone Kk サーバに対する情報通知方法、コンテンツ提供方法、コンテンツ取得時の通信方法、移動体通信端末、コンテンツ提供サーバ及び通信中継サーバ
JP2008541239A (ja) * 2005-05-04 2008-11-20 ヴェントゥーリ ワイヤレス インコーポレーティッド 長い待ち時間リンクのhttpのパフォーマンスを増加させるための方法と装置
WO2010071709A1 (en) * 2008-10-16 2010-06-24 Qualcomm Incorporated Methods and apparatus for obtaining content with reduced access times
WO2010072238A1 (en) * 2008-12-23 2010-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Distribution of content items to user devices in a mobile environment
JP2012003652A (ja) * 2010-06-21 2012-01-05 Nippon Telegr & Teleph Corp <Ntt> Web情報取得方法および装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6013042321; 塩田 紳二: 'これだけは知っておきたい TCP/IP再入門(第23回) HTTP(2) リクエストとレスポンスのメッセージ' 日経INTERNET Solutions 5月号 第70号, 20030422, p.114-123, 日経BP社 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015001784A (ja) * 2013-06-13 2015-01-05 富士通株式会社 情報処理システム、情報処理装置、及び情報処理プログラム
WO2017010065A1 (ja) * 2015-07-10 2017-01-19 日本電気株式会社 情報処理装置および配信方法、並びにコンピュータ・プログラムを記録する記録媒体
JP2018156692A (ja) * 2018-06-14 2018-10-04 株式会社リコー 情報処理システム、画像形成装置、情報処理装置、情報処理方法および情報処理プログラム

Also Published As

Publication number Publication date
WO2013180255A1 (ja) 2013-12-05

Similar Documents

Publication Publication Date Title
US7277914B2 (en) Proxy server apparatus and method for providing service using the same
US8856279B2 (en) Method and system for object prediction
US10630758B2 (en) Method and system for fulfilling server push directives on an edge proxy
US20110066676A1 (en) Method and system for reducing web page download time
EP2853074B1 (en) Methods for optimizing service of content requests and devices thereof
CN108093015B (zh) 文件传输系统
US8490173B2 (en) Unauthorized communication detection method
US20210021691A1 (en) Site and page specific resource prioritization
US10791135B2 (en) Inspection of network traffic in a security device at object level
WO2013180255A1 (ja) 通信装置および方法
CN106657269A (zh) 文件传输方法
US9781222B2 (en) Method, system and server device for transmitting a digital resource in a client-server communication system
US10764402B2 (en) Leveraging time-windows generated by web browser pre-connections
CN108737413B (zh) 传输层的数据处理方法、装置及计算机可读存储介质
US20160080443A1 (en) Non-Intrusive Proxy System and Method for Applications Without Proxy Support
US9483575B2 (en) Reproducing a graphical user interface display
CN108605039B (zh) 在spdy连接上检测恶意软件
JP5948111B2 (ja) パケット通信装置および方法
JP5738042B2 (ja) ゲートウェイ装置、情報処理装置、処理方法およびプログラム
JP5986695B2 (ja) 情報処理装置、処理方法およびプログラム
JP5893787B2 (ja) 情報処理装置、処理方法およびプログラム
KR20180122855A (ko) 다중 프로토콜 네트워크 시스템 및 다중 프로토콜 연동 방법
KR20080027013A (ko) 통신시스템의 하이퍼텍스트 통신규칙 요청 메시지를 줄이는장치 및 방법

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141224

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150804

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20151201