(57)【要約】【課題】Webコンテンツを効率的に蓄積する。【解決手段】端末10と、端末10から受信したリクエストをWebサーバ30に中継しWebサーバ30からの応答を端末10に中継するプロキシサーバ20と、を含んで構成されるプロキシシステム1において、端末10は、対象のWebコンテンツから切り出すべき部分を指定するためのブロック指定部100と、ブロック指定部100により指定された切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データをプロキシサーバ20に送信する切り出し部分送信部103と、を備え、プロキシサーバ20は、切り出し部分送信部103により送信された切り出し部分データを受信する切り出し部分受信部200と、切り出し部分受信部200により受信された切り出し部分データに基づいて、切り出すべき部分のコンテンツを蓄積する蓄積部203と、を備える。【選択図】図１
2010086469.tif 000002
【特許請求の範囲】
【請求項１】
端末から受信したリクエストをWebサーバに中継し、前記Webサーバからの応答を前記端末に中継するプロキシサーバであって、
前記端末からの指示に基づいて、対象のWebコンテンツから切り出すべき部分を、当該Webコンテンツから切り出すプロキシ側切り出し部と、
前記プロキシ側切り出し部により切り出された部分を蓄積する蓄積部と、
を備えることを特徴とするプロキシサーバ。
【請求項２】
対象のWebコンテンツから切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記端末から受信する切り出し部分受信部と、
前記切り出し部分受信部により受信された切り出し部分データに基づいて、前記プロキシ側切り出し部が、前記切り出すべき部分を前記対象のWebコンテンツから切り出す必要があるか否かを判定する切り出し判定部と、
をさらに備え、
前記プロキシ側切り出し部が前記切り出すべき部分を切り出す必要があると判定された場合、前記プロキシ側切り出し部は、前記切り出すべき部分を切り出す、
ことを特徴とする請求項１に記載のプロキシサーバ。
【請求項３】
端末と、前記端末から受信したリクエストをWebサーバに中継し前記Webサーバからの応答を前記端末に中継するプロキシサーバと、を含んで構成されるプロキシシステムであって、
前記端末は、
対象のWebコンテンツから切り出すべき部分を指定するためのブロック指定部と、
前記ブロック指定部により指定された切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信部と、
を備え、
前記プロキシサーバは、
前記切り出し部分送信部により送信された前記切り出し部分データを受信する切り出し部分受信部と、
前記切り出し部分受信部により受信された前記切り出し部分データに基づいて、前記切り出すべき部分のコンテンツを蓄積する蓄積部と、
を備えることを特徴とするプロキシシステム。
【請求項４】
前記端末は、
前記ブロック指定部により指定された切り出すべき部分のコンテンツを、前記対象のWebコンテンツから切り出す端末側切り出し部、をさらに備える
ことを特徴とする請求項３に記載のプロキシシステム。
【請求項５】
前記端末は、前記ブロック指定部により指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定部、をさらに備え、
前記切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、前記端末側切り出し部は、前記切り出すべき部分のコンテンツを前記対象のWebコンテンツから切り出す、
ことを特徴とする請求項４に記載のプロキシシステム。
【請求項６】
前記プロキシサーバは、
前記切り出し部分受信部により受信された前記切り出し部分データに基づいて、前記切り出すべき部分を前記対象のWebコンテンツから切り出す必要があるか否かを判定する切り出し判定部と、
前記切り出すべき部分を切り出す必要があると判定された場合、当該切り出すべき部分を前記対象のWebコンテンツから切り出すプロキシ側切り出し部と、
をさらに備えることを特徴とする請求項３〜５の何れか１項に記載のプロキシシステム。
【請求項７】
前記プロキシサーバは、
前記Webサーバからの応答を前記端末に中継する際に、当該応答の内容に識別子を付与するプロキシ側識別子付与部、をさらに備える
ことを特徴とする請求項３〜６の何れか１項に記載のプロキシシステム。
【請求項８】
前記端末は、
前記プロキシサーバ経由で取得された前記Webサーバからの応答の内容に、識別子を付与する端末側識別子付与部、をさらに備える
ことを特徴とする請求項３〜７の何れか１項に記載のプロキシシステム。
【請求項９】
前記プロキシサーバは、
前記蓄積部に蓄積された前記切り出すべき部分のコンテンツが、前記Webサーバにおいて更新されたか否かを確認する更新確認部、をさらに備える
ことを特徴とする請求項３〜８の何れか１項に記載のプロキシシステム。
【請求項１０】
Webサーバに対するリクエストをプロキシサーバ経由で送信し、前記Webサーバからの応答を前記プロキシサーバ経由で受信する端末であって、
対象のWebコンテンツから切り出すべき部分を指定するためのブロック指定部と、
前記ブロック指定部により指定された切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信部と、
を備える端末。
【請求項１１】
前記ブロック指定部により指定された切り出すべき部分のコンテンツを、前記対象のWebコンテンツから切り出す端末側切り出し部、をさらに備える請求項１０に記載の端末。
【請求項１２】
前記端末は、前記ブロック指定部により指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定部、をさらに備え、
前記切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、前記端末側切り出し部は、前記切り出すべき部分のコンテンツを前記対象のWebコンテンツから切り出す、
ことを特徴とする請求項１１に記載の端末。
【請求項１３】
Webサーバに対するリクエストをプロキシサーバ経由で送信し前記Webサーバからの応答を前記プロキシサーバ経由で受信する端末、に設けられたコンピュータを、
対象のWebコンテンツから切り出すべき部分を指定するためのブロック指定部と、
前記ブロック指定部により指定された切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信部、
として機能させるための端末制御プログラム。
【請求項１４】
前記コンピュータを、さらに、
前記ブロック指定部により指定された切り出すべき部分のコンテンツを、前記対象のWebコンテンツから切り出す端末側切り出し部、
として機能させるための請求項１３に記載の端末制御プログラム。
【請求項１５】
前記コンピュータを、さらに、
前記ブロック指定部により指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定部、
として機能させるための請求項１４に記載の端末制御プログラム。
【請求項１６】
端末と、前記端末から受信したリクエストをWebサーバに中継し前記Webサーバからの応答を前記端末に中継するプロキシサーバと、を含んで構成されるプロキシシステム、にて実行される通信制御方法であって、
前記端末にて、対象のWebコンテンツから切り出すべき部分が指定されるブロック指定ステップと、
前記端末が、指定された前記切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信ステップと、
前記プロキシサーバが、前記端末から、前記切り出し部分データを受信する切り出し部分受信ステップと、
前記プロキシサーバが、受信された前記切り出し部分データに基づいて、前記切り出すべき部分のコンテンツを蓄積する蓄積ステップと、
を備える通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Webアクセスを中継するプロキシサーバ、プロキシシステム、端末、端末制御プログラムおよび通信制御方法に関する。
【背景技術】
【０００２】
従来、端末ユーザがWebページを閲覧した際に、後から参照できるように気に入ったページのURLやタイトルなどをブックマークに蓄積したり、携帯電話の画面表示状態を画面メモという形で蓄積したりできることが知られている。このように閲覧したWebコンテンツの蓄積に関して、ネットワーク上で管理しコミュニティの間で共有する、いわゆるソーシャルブックマークと呼ばれるサービスも使われている（非特許文献１）。また、携帯で閲覧する動画の再生位置をブックマークする手段も提案されている（特許文献１）。
【非特許文献１】はてなブックマーク(http://b.hatena.ne.jp/)
【特許文献１】再公表２００５−３２８２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記のブックマーク手段では、端末ユーザの操作によりWebコンテンツが変更・生成されることは想定されていない。また、Webコンテンツの蓄積の際に、URLのみの蓄積や、画面メモという形での蓄積では、Webページ全体のWebコンテンツを蓄積することになり、一般的に表示画面が小さい端末（例えば携帯電話）での閲覧にとって効率的とは言い難い。そのため、閲覧したWebコンテンツをネットワーク上のストレージ（例えばプロキシサーバ内の蓄積部）に転送して蓄積することが考えられる。ところが、閲覧したWebコンテンツの全体をネットワーク上のストレージに転送することは、通信トラヒックの増大を招き、結果的に、処理時間の増大および金銭的負担の増大といった端末ユーザの不都合を生じてしまう。
【０００４】
そこで、本発明は、上記課題に鑑み、Webコンテンツを効率的に蓄積することを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係るプロキシサーバは、端末から受信したリクエストをWebサーバに中継し、前記Webサーバからの応答を前記端末に中継するプロキシサーバであって、前記端末からの指示に基づいて、対象のWebコンテンツから切り出すべき部分を、当該Webコンテンツから切り出すプロキシ側切り出し部と、前記プロキシ側切り出し部により切り出された部分を蓄積する蓄積部と、を備えることを特徴とする。
【０００６】
これにより、端末ユーザにより指定されたWebコンテンツの部分をプロキシサーバの蓄積部に蓄積することが可能となる。
【０００７】
また、前記プロキシサーバは、対象のWebコンテンツから切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記端末から受信する切り出し部分受信部と、前記切り出し部分受信部により受信された切り出し部分データに基づいて、前記プロキシ側切り出し部が、前記切り出すべき部分を前記対象のWebコンテンツから切り出す必要があるか否かを判定する切り出し判定部と、をさらに備え、前記プロキシ側切り出し部が前記切り出すべき部分を切り出す必要があると判定された場合、前記プロキシ側切り出し部は、前記切り出すべき部分を切り出す構成とすることが望ましい。
【０００８】
これにより、プロキシサーバにおいて切り出し処理を行う必要の有無を判定し、必要があると判定された場合に切り出し処理を行うことで、無駄な切り出し処理を省くことが可能となる。
【０００９】
本発明に係るプロキシシステムは、端末と、前記端末から受信したリクエストをWebサーバに中継し前記Webサーバからの応答を前記端末に中継するプロキシサーバと、を含んで構成されるプロキシシステムであって、前記端末は、対象のWebコンテンツから切り出すべき部分を指定するためのブロック指定部と、前記ブロック指定部により指定された切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信部と、を備え、前記プロキシサーバは、前記切り出し部分送信部により送信された前記切り出し部分データを受信する切り出し部分受信部と、前記切り出し部分受信部により受信された前記切り出し部分データに基づいて、前記切り出すべき部分のコンテンツを蓄積する蓄積部と、を備えることを特徴とする。
【００１０】
これにより、端末とプロキシサーバがネットワークを介して接続される態様であっても、ユーザにより指定されたWebコンテンツの部分をプロキシサーバの蓄積部に蓄積することが可能となる。
【００１１】
上記のプロキシシステムでは、前記端末は、前記ブロック指定部により指定された切り出すべき部分のコンテンツを、前記対象のWebコンテンツから切り出す端末側切り出し部、をさらに備える構成とすることが望ましい。これにより、端末において対象のWebコンテンツから切り出した部分（即ち、ブロック指定部により指定された切り出すべき部分のコンテンツ）をプロキシサーバの蓄積部に蓄積することが可能となる。
【００１２】
また、上記のプロキシシステムでは、前記端末は、前記ブロック指定部により指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定部、をさらに備え、前記切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、前記端末側切り出し部は、前記切り出すべき部分のコンテンツを前記対象のWebコンテンツから切り出す構成とすることが望ましい。これにより、前記指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定し、前記切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、前記端末側切り出し部が、前記切り出すべき部分のコンテンツを前記対象のWebコンテンツから切り出し、当該切り出した部分をプロキシサーバの蓄積部に蓄積することが可能となる。
【００１３】
また、上記のプロキシシステムでは、前記プロキシサーバは、前記切り出し部分受信部により受信された前記切り出し部分データに基づいて、前記切り出すべき部分を前記対象のWebコンテンツから切り出す必要があるか否かを判定する切り出し判定部と、前記切り出すべき部分を切り出す必要があると判定された場合、当該切り出すべき部分を前記対象のWebコンテンツから切り出すプロキシ側切り出し部と、をさらに備えることが望ましい。これにより、プロキシサーバにおいて、切り出すべき部分を前記対象のWebコンテンツから切り出す必要があるか否かを判定し、切り出す必要があると判定された場合、当該切り出すべき部分を前記対象のWebコンテンツから切り出し、当該切り出した部分を蓄積することが可能となる。
【００１４】
また、上記のプロキシシステムでは、前記プロキシサーバは、前記Webサーバからの応答を前記端末に中継する際に、当該応答の内容に識別子を付与するプロキシ側識別子付与部、をさらに備えることが望ましい。同様に、上記のプロキシシステムでは、前記端末は、前記プロキシサーバ経由で取得された前記Webサーバからの応答の内容に、識別子を付与する端末側識別子付与部、をさらに備えることが望ましい。以上のように識別子を付与することで、応答の内容に対し変更がなされたか否かを識別することが容易となる。
【００１５】
また、上記のプロキシシステムでは、前記プロキシサーバは、前記蓄積部に蓄積された前記切り出すべき部分のコンテンツが、前記Webサーバにおいて更新されたか否かを確認する更新確認部、をさらに備えることが望ましい。これにより、前記蓄積部に蓄積された前記切り出すべき部分のコンテンツが、最新の内容かどうかを確認することが容易になる。
【００１６】
本発明に係る端末は、Webサーバに対するリクエストをプロキシサーバ経由で送信し、前記Webサーバからの応答を前記プロキシサーバ経由で受信する端末であって、対象のWebコンテンツから切り出すべき部分を指定するためのブロック指定部と、前記ブロック指定部により指定された切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信部と、を備えることを特徴とする。これにより、端末において、対象のWebコンテンツから切り出すべき部分が指定され、当該切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データをプロキシサーバに送信可能となる。
【００１７】
上記端末は、前記ブロック指定部により指定された切り出すべき部分のコンテンツを前記対象のWebコンテンツから切り出す端末側切り出し部、をさらに備えることが望ましい。これにより、端末において、切り出すべき部分のコンテンツを対象のWebコンテンツから切り出し、プロキシサーバに送信可能となる。
【００１８】
また、上記端末は、前記ブロック指定部により指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定部、をさらに備え、前記切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、前記端末側切り出し部は、前記切り出すべき部分のコンテンツを前記対象のWebコンテンツから切り出す構成とすることが望ましい。これにより、端末において、指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定し、前記切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、当該切り出すべき部分のコンテンツを対象のWebコンテンツから切り出し、プロキシサーバに送信可能となる。
【００１９】
上述した本発明に係る端末は、以下のように、端末制御プログラムに係る発明として捉えることができる。
【００２０】
即ち、本発明に係る端末制御プログラムは、Webサーバに対するリクエストをプロキシサーバ経由で送信し前記Webサーバからの応答を前記プロキシサーバ経由で受信する端末、に設けられたコンピュータを、対象のWebコンテンツから切り出すべき部分を指定するためのブロック指定部と、前記ブロック指定部により指定された切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信部、として機能させることを特徴とする。即ち、図７（ａ）に示すように、端末制御プログラム７０Ａは、上記コンピュータをブロック指定部として機能させるブロック指定モジュール７１と、上記コンピュータを切り出し部分送信部として機能させる切り出し部分送信モジュール７２とを備える。
【００２１】
このとき、本発明に係る端末制御プログラムは、前記コンピュータを、さらに、前記ブロック指定部により指定された切り出すべき部分のコンテンツを、前記対象のWebコンテンツから切り出す端末側切り出し部、として機能させることが望ましい。即ち、図７（ｂ）に示すように、端末制御プログラム７０Ｂは、前述したブロック指定モジュール７１と切り出し部分送信モジュール７２に加え、上記コンピュータを端末側切り出し部として機能させる端末側切り出しモジュール７３をさらに備える。
【００２２】
また、本発明に係る端末制御プログラムは、前記コンピュータを、さらに、前記ブロック指定部により指定された切り出すべき部分が、前記端末にてユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定部、として機能させることが望ましい。即ち、図７（ｃ）に示すように、端末制御プログラム７０Ｃは、前述したブロック指定モジュール７１と切り出し部分送信モジュール７２と端末側切り出しモジュール７３に加え、上記コンピュータを書き換え判定部として機能させる書き換え判定モジュール７４をさらに備える。
【００２３】
本発明は、以下のように、通信制御方法に係る発明として捉えることもできる。即ち、本発明に係る通信制御方法は、端末と、前記端末から受信したリクエストをWebサーバに中継し前記Webサーバからの応答を前記端末に中継するプロキシサーバと、を含んで構成されるプロキシシステム、にて実行される通信制御方法であって、前記端末にて、対象のWebコンテンツから切り出すべき部分が指定されるブロック指定ステップと、前記端末が、指定された前記切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信ステップと、前記プロキシサーバが、前記端末から、前記切り出し部分データを受信する切り出し部分受信ステップと、前記プロキシサーバが、受信された前記切り出し部分データに基づいて、前記切り出すべき部分のコンテンツを蓄積する蓄積ステップと、を備えることを特徴とする。なお、上記のブロック指定ステップ、切り出し部分送信ステップ、切り出し部分受信ステップ、蓄積ステップはそれぞれ、後述する図９のＳ１、Ｓ４、Ｓ５、Ｓ８に対応する。
【００２４】
別の態様として、本発明に係る通信制御方法は、以下のように記述することもできる。この通信制御方法を構成する複数の処理ステップは、図９のように示すことができる。即ち、本発明に係る無線通信制御方法は、前記端末にて、対象のWebコンテンツから切り出すべき部分が指定されるブロック指定ステップ（図９のＳ１）と、前記指定された切り出すべき部分がユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定ステップ（Ｓ２）と、前記指定された切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、前記切り出すべき部分のコンテンツを前記対象のWebコンテンツから切り出す端末側切り出しステップ（Ｓ３）と、前記切り出すべき部分のコンテンツ、又は、当該切り出すべき部分の識別情報、から成る切り出し部分データを前記プロキシサーバに送信する切り出し部分送信ステップ（Ｓ４）と、前記プロキシサーバにて、前記切り出し部分データを受信する切り出し部分受信ステップ（Ｓ５）と、受信された前記切り出し部分データに基づいて、前記切り出すべき部分を前記対象のWebコンテンツから切り出す必要があるか否かを判定する切り出し判定ステップ（Ｓ６）と、前記切り出すべき部分を切り出す必要があると判定された場合、当該切り出すべき部分を前記対象のWebコンテンツから切り出すプロキシ側切り出しステップ（Ｓ７）と、前記切り出し部分データに基づいて前記切り出すべき部分のコンテンツを蓄積する蓄積ステップ（Ｓ８）と、を備えることを特徴とする。
【発明の効果】
【００２５】
本発明によれば、Webコンテンツを効率的に蓄積することが可能となる。
【発明を実施するための最良の形態】
【００２６】
本発明は、様々な修正および代替形態が可能であるが、以下、本発明の１つの実施形態を図面に例示し、詳細に説明する。しかし、本発明を以下の実施形態に限定する意図はなく、本発明は、特許請求の範囲によって定義される本発明の趣旨および範囲内に含まれるすべての変更形態、均等形態、および代替形態に及ぶことを理解されたい。以下に示す実施形態は、本発明の具体的な発明的態様または特徴を強調するために選択されたものである。
【００２７】
なお、本明細書全体を通じて、同一の参照番号は同一の要素を表す。複数の要素が「接続」または「結合」されると言及されるとき、これらの要素は、直接的に接続または結合されてもよく、または、１つまたは複数の介在要素があってもよい。
【００２８】
図１に示すように、本実施形態に係るプロキシシステム１は、端末１０とプロキシサーバ２０とを含んで構成される。プロキシサーバ２０は、端末１０から受信したリクエストをWebサーバ３０に中継し、Webサーバ３０からの応答を端末１０に中継する。
【００２９】
上記の端末１０、プロキシサーバ２０、およびWebサーバ３０の各々は、データを記憶および操作することのできるコンピュータシステムまたはその他の任意のデバイスにより構成することができる。例えば、端末１０は、携帯電話などのクライアント端末であってよい。端末１０は、ハードウェア構成として、例えば、図８に示すように、オペレーティングシステムやアプリケーションプログラムなどを実行するＣＰＵ８１と、ＲＯＭ及びＲＡＭで構成される主記憶部８２と、不揮発性メモリなどで構成される補助記憶部８３と、外部との通信を制御する通信制御部８４と、液晶モニタなどで構成される表示部８５と、文字・数字入力及び実行指示を行うキーで構成される操作部８６とを備える。プロキシサーバ２０およびWebサーバ３０も、端末１０と同様のコンピュータシステムにより構成することができる。
【００３０】
なお、他の形態として、端末１０は、携帯型情報端末、ポータブル・ラップトップコンピュータ、ポータブルメディアプレーヤ、パーソナル情報マネージャ、家電機器、または、少なくともデータ記憶装置を備えたその他のデバイスであってよい。プロキシサーバ２０は、Webサーバ３０と同一の機器内に存在してもよく、又は、端末１０と同一の機器内に存在してもよい。
【００３１】
上記の端末１０、プロキシサーバ２０、Webサーバ３０の相互間の接続は、通信をするための任意の通信機構を採用することができる。例えば、様々な有線通信プロトコル（イーサネット（登録商標）、トークンリングＬＡＮ、シリアルまたはパラレル通信など）、様々な無線通信プロトコル、パケット通信、電話、あるいはその他の任意の通信媒体が挙げられるが、これらに限定されるものではない。端末１０が携帯電話である本実施形態では、携帯電話の回線接続とすることもできる。場合によっては、様々な暗号化プロトコルを使用することもできる。
【００３２】
以下、端末１０の構成を説明する。図１に示すように、端末１０は、Webサーバ３０からプロキシサーバ２０を経由して取得する応答内容（Webコンテンツ）に識別子を付与する端末側識別子付与部１０５と、上記取得されたWebコンテンツを表示するWebブラウザ実行部１０４と、Webブラウザ実行部１０４により表示されたWebコンテンツのうち、切り出すべき部分をユーザが指定するためのブロック指定部１００と、上記指定された部分が端末１０にてユーザ操作により書き換えられて生成されたか否かを判定する書き換え判定部１０１と、上記切り出すべき部分がユーザ操作により書き換えられて生成されたと判定された場合、当該切り出すべき部分のコンテンツを、対象のWebコンテンツから切り出す端末側切り出し部１０２と、切り出すべき部分のコンテンツ又は切り出すべき部分の識別情報（これらを「切り出し部分データ」と総称する）をプロキシサーバ２０に転送する切り出し部分送信部１０３と、を含んで構成される。
【００３３】
次に、プロキシサーバ２０の構成の詳細を説明する。プロキシサーバ２０は、端末１０からWebサーバ３０へのリクエストの応答内容に識別子を付与するプロキシ側識別子付与部２０５と、端末１０から送られた上記切り出し部分データを受信する切り出し部分受信部２００と、上記切り出し部分データに基づいて、プロキシサーバ２０が、切り出すべき部分を対象のWebコンテンツから切り出す必要があるか否かを判定する切り出し判定部２０１と、切り出すべき部分を切り出す必要があると判定された場合、当該切り出すべき部分を対象のWebコンテンツから切り出すプロキシ側切り出し部２０２と、切り出すべき部分のコンテンツを蓄積する蓄積部２０３と、蓄積された上記切り出すべき部分のコンテンツが、Webサーバ３０において更新されたか否かを確認する更新確認部２０４と、を含んで構成される。
【００３４】
続いて、図２〜図６を用いてプロキシシステムの動作を説明する。図２は、端末１０からWebサーバ３０へのリクエストに対する応答、即ち、Webサーバ３０からプロキシサーバ２０が取得したHTML文書（Webコンテンツ）を示す。プロキシサーバ２０のプロキシ側識別子付与部２０５は、図２のHTML文書中のdivタグを全て検索し、全てのdivタグにclass属性を付与する。これにより、全てのdivタグにclass属性が付与された図３のHTML文書（Webコンテンツ）が得られる。このとき、プロキシ側識別子付与部２０５は、divタグの内側の内容のhash値（ここでは一例として「0x1234」、「0x5678」とする）を計算により得て、図３に示すようにclass属性の値として"proxyhash_0x1234"および"proxyhash_0x5678"という値を設定する。
【００３５】
上記処理の後、Webコンテンツは、プロキシサーバ２０から端末１０に送られ、Webブラウザ実行部１０４によって表示される。Webブラウザ実行部１０４によりWebコンテンツが表示される際に、Webブラウザの様々なスクリプトなどによってWebコンテンツ自体の書き換えが発生する。そこで、端末側識別子付与部１０５は、Webブラウザ上で追加されたdivタグを全て検索し、class属性を付与する。このとき、端末側識別子付与部１０５は、divタグの内側の内容のhash値（ここでは一例として「0x90ab」とする）を計算により得て、図４に示すようにclass属性の値として"clienthash_0x90ab"という値を設定する。
【００３６】
また、Webブラウザ上では、端末１０のユーザの操作に応じてスクリプトによってWebコンテンツ自体の書き換えが発生する場合もある。例えば図５は、Webブラウザ上で端末ユーザの操作に応じてスクリプトによって、図４のHTML文書（Webコンテンツ）に、<div id="interactive">interactive data<div>というdivタグがさらに追加された例を示している。
【００３７】
次に、Webコンテンツから、端末１０のユーザが指示した部分を切り出す方法について説明する。図６には、ユーザが指示することの出来る部分(1)、(2)、(3)、(4)を示す。ブロック指定部１００は、ユーザからの指示を受け、切り出す部分の情報を取得し、書き換え判定部１０１に転送する。以下では、部分(1)、(2)、(3)、(4)それぞれを切り出す場合の処理を述べる。
【００３８】
ユーザが部分(1)を指定した場合、書き換え判定部１０１は、部分(1)のdivタグの内側の内容のhash値を計算し、得られたhash値をclass属性の値「0x1234」と比較する。部分(1)には端末１０において書き換えが発生しているため、上記得られたhash値とclass属性の値「0x1234」とは不一致となり、端末１０において部分(1)を切り出すことが必要となる。そこで、書き換え判定部１０１は、部分(1)の切り出し指示を端末側切り出し部１０２に送り、端末側切り出し部１０２は、Webコンテンツから部分(1)を切り出し、当該切り出し部分(1)を切り出し部分送信部１０３に送る。
【００３９】
そして、切り出し部分送信部１０３は、当該切り出し部分(1)をプロキシサーバ２０の切り出し部分受信部２００に送信する。切り出し部分受信部２００は、受信した当該切り出し部分(1)を切り出し判定部２０１に転送し、切り出し判定部２０１は、切り出した内容自体が端末１０から送られてきているので、プロキシ側切り出し部２０２が切り出しを行う必要は無いと判定し、当該切り出し部分(1)を蓄積部２０３に転送する。これにより、当該切り出し部分(1)は蓄積部２０３に蓄積される。
【００４０】
次に、ユーザが部分(2)を指定した場合には、書き換え判定部１０１は、部分(2)のdivタグの内側の内容のhash値を計算し、得られたhash値をclass属性の値「0x5678」と比較する。部分(2)は端末１０において書き換えが発生していないため、上記得られたhash値とclass属性の値「0x5678」とは一致し、端末１０において切り出しを行う必要がない。即ち、書き換え判定部１０１は、部分(2)がユーザ操作により書き換えられて生成されたものではないと判定し、部分(2)のclass属性の値"proxyhash_0x5678"を切り出し部分送信部１０３に送る。
【００４１】
そして、切り出し部分送信部１０３は、部分(2)のclass属性の値"proxyhash_0x5678"を切り出し部分受信部２００に送信する。切り出し判定部２０１は、部分(2)のコンテンツでなく部分(2)のclass属性の値を受信したことで、プロキシサーバ２０において部分(2)を切り出す必要があると判定し、上記class属性の値をプロキシ側切り出し部２０２に転送する。プロキシ側切り出し部２０２は、前述したプロキシ側識別子付与部２０５と同様の処理を行い、class属性が付与されたWebコンテンツを生成することで、切り出し部分受信部２００から取得したclass属性に一致するdivタグ（部分(2)と同じもの）を取得し、divタグの内側の内容（即ち、部分(2)）を蓄積部２０３に転送する。これにより、切り出し部分(2)は蓄積部２０３に蓄積される。
【００４２】
次に、ユーザが部分(3)を指定した場合には、書き換え判定部１０１は、当該divタグのclass属性が「clienthash」で始まることから、このdivタグの内側の内容が端末１０においてユーザ操作でなくスクリプトによって自動生成されたことを把握し、部分(3)がユーザ操作により書き換えられて生成されたものでないと判定する。そして、書換判定部１０１は部分(3)のclass属性の値"clienthash_0x90ab"を切り出し部分送信部１０３に送る。
【００４３】
そして、切り出し部分送信部１０３は、部分(3)のclass属性の値"clienthash_0x90ab"を切り出し部分受信部２００に送信する。切り出し判定部２０１は、部分(3)のコンテンツでなく部分(3)のclass属性の値を受信したことで、プロキシサーバ２０において部分(3)を切り出す必要があると判定し、上記class属性の値をプロキシ側切り出し部２０２に転送する。プロキシ側切り出し部２０２は、前述したプロキシ側識別子付与部２０５と同様の処理を行い、値としてproxyhashで始まるclass属性が付与されたWebコンテンツを生成し、さらに、Webブラウザ実行部１０４と同様の処理を行い、値としてclienthashで始まるclass属性が付与されたWebコンテンツを生成することで、切り出し部分受信部２００から取得したclass属性に一致するdivタグ（部分(3)と同じもの）を取得し、divタグの内側の内容（即ち、部分(3)）を蓄積部２０３に転送する。これにより、切り出し部分(3)は蓄積部２０３に蓄積される。
【００４４】
次に、ユーザが部分(4)を指定した場合には、書き換え判定部１０１は、当該divタグのclass属性に、proxyhashで始まるものも、clienthashで始まるものも存在しないことから、このdivタグの内側の内容が端末１０においてユーザ操作に応じて生成されたものと判定する。この判定結果を受けた端末側切り出し部１０２は、当該部分(4)を切り出し、切り出し部分送信部１０３に送る。
【００４５】
そして、切り出し部分送信部１０３は、切り出し部分(4)をプロキシサーバ２０の切り出し部分受信部２００に送信する。切り出し部分受信部２００は、受信した当該切り出し部分(4)を切り出し判定部２０１に転送し、切り出し判定部２０１は、切り出した内容自体が端末１０から送られてきているので、プロキシ側切り出し部２０２が切り出しを行う必要は無いと判定し、当該切り出し部分(4)を蓄積部２０３に転送する。これにより、当該切り出し部分(4)は蓄積部２０３に蓄積される。
【００４６】
なお、更新確認部２０４は、蓄積部２０３に蓄積された内容のうち、プロキシ側切り出し部２０２によって切り出された内容が更新されているかどうかを、定期的にWebサーバ３０に問い合わせ、確認する。
【００４７】
以上のようにして、端末１０にて表示されたWebコンテンツのうち、ユーザが指定した部分を、少ないトラヒックによって効率的にプロキシサーバ２０に蓄積することが可能となる。
【００４８】
なお、端末１０上の各機能部分は、予め端末１０内に存在しても良いし、プロキシサーバ２０、Webサーバ３０もしくは他のサーバからネットワークを経由して提供されても良い。
【００４９】
また、上述した実施形態では、データ例としてHTML形式のデータを示し、その中のdivタグでの部分指定を説明したが、対象データはHTML形式のデータでもXML形式のデータでもよく、本発明は任意の構造化ファイルを対象とすることができる。また、HTML形式のデータを対象とする場合でも、部分指定の対象はdivタグに限定されるものではなく、任意のタグを対象とすることができる。また、属性指定については、図３〜図６に示したclass指定は一例であり、任意の属性指定を採用することができる。さらに、部分指定の仕方については、class名による指定は一例であり、任意の部分指定の仕方を採用することができる。
【００５０】
また、本発明は、デバイス、システム、方法、および／またはコンピュータプログラム製品として具体化することができる。したがって、本発明の一部またはすべては、ハードウェアおよび/またはソフトウェア（ファームウェア、常駐ソフトウェア、マイクロコード、ステートマシン、ゲートアレイなどを含む）に組み入れることができる。さらに、本発明は、コンピュータによって使用可能な、またはコンピュータ可読の記憶媒体上のコンピュータプログラム製品の形態をとることができ、この媒体には、命令実行システムによって、または命令実行システムと共に使用される、コンピュータによって使用可能な、またはコンピュータ可読のプログラムコードが組み入れられる。本明細書のコンテキストでは、コンピュータによって使用可能な、またはコンピュータ可読の媒体は、命令実行システム、装置、またはデバイスによって、あるいはそれらと共に使用されるプログラムを、収録する、記憶する、通信する、伝搬する、または搬送することのできる、任意の媒体とすることができる。
【００５１】
コンピュータによって使用可能な、またはコンピュータ可読の媒体は、例えば、電子、磁気、光学、電磁、赤外線、または半導体の、システム、装置、デバイス、または伝搬媒体とすることができるが、これらに限定されるものではない。コンピュータ可読媒体には、例として、コンピュータ記憶媒体および通信媒体を含めることができるが、これらに限定されるものではない。
【００５２】
コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を記憶するための任意の方法または技術で実現された、揮発性および不揮発性、着脱可能および着脱不能の媒体が含まれる。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、または他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク(ＤＶＤ)、または他の光記憶、磁気カセット、磁気テープ、磁気ディスク記憶、または他の磁気記憶装置、あるいは、所望の情報を記憶するのに使用でき命令実行システムからアクセスできるその他の任意の媒体が含まれるが、これらに限定されるものではない。プログラムは、例えば紙媒体または他の媒体を光学的に走査することによって電子的に取り込んでから、必要ならば適切な方式でコンパイル、解釈、または他の方法で処理し、次いでコンピュータメモリに記憶することができるので、コンピュータによって使用可能な、またはコンピュータ可読の媒体は、プログラムが印刷された紙媒体または別の適切な媒体であってもよいことに留意されたい。
【００５３】
通信媒体は通常、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを、搬送波やその他の移送機構などの被変調データ信号に組み入れるものであり、通信媒体には任意の情報伝達媒体が含まれる。例えば、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、RF、赤外線などの無線媒体およびその他の無線媒体とが含まれるが、これらに限定されるものではない。上記のいずれかの組合せもコンピュータ可読媒体の範囲内に含まれる。
【００５４】
本発明がコンピュータ実行可能命令の一般的なコンテキストで具体化されるとき、この実施形態は、１つまたは複数のシステム、コンピュータ、またはその他のデバイスによって実行されるプログラムモジュールを含むことができる。一般に、プログラムモジュールは、特定のタスクを実施するか、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。通常、プログラムモジュールの機能は、様々な実施形態で望まれるように結合または分散させることができる。
【図面の簡単な説明】
【００５５】
【図１】本実施形態に係るプロキシシステムの構成図である。
【図２】端末からWebサーバへのリクエストに対する応答例（HTMLコンテンツ）を示す図である。
【図３】プロキシサーバ上で図２のコンテンツにclass属性を付与した状態を示す図である。
【図４】端末上で図３のコンテンツにclass属性を付与した状態を示す図である。
【図５】ユーザの操作によって図４のコンテンツが書き換えられた後の状態を示す図である。
【図６】ユーザが指示した部分の切り出し方を説明するための図である。
【図７】端末制御プログラムの構成を示す図である。
【図８】端末のハードウェア構成例を示す図である。
【図９】通信制御方法を構成する複数の処理ステップを示す流れ図である。
【符号の説明】
【００５６】
１…プロキシシステム、１０…端末、１００…ブロック指定部、１０１…書き換え判定部、１０２…端末側切り出し部、１０３…切り出し部分送信部、１０４…Webブラウザ実行部、１０５…端末側識別子付与部、２０…プロキシサーバ、２００…切り出し部分受信部、２０１…切り出し判定部、２０２…プロキシ側切り出し部、２０３…蓄積部、２０４…更新確認部、２０５…プロキシ側識別子付与部、３０…Webサーバ、７０Ａ、７０Ｂ、７０Ｃ…端末制御プログラム、７１…ブロック指定モジュール、７２…切り出し部分送信モジュール、７３…端末側切り出しモジュール、７４…書き換え判定モジュール、８１…ＣＰＵ、８２…主記憶部、８３…補助記憶部、８４…通信制御部、８５…表示部、８６…操作部。
【図１】
2010086469.tif 000003
【図２】
2010086469.tif 000004
【図３】
2010086469.tif 000005
【図４】
2010086469.tif 000006
【図５】
2010086469.tif 000007
【図６】
2010086469.tif 000008
【図７】
2010086469.tif 000009
【図８】
2010086469.tif 000010
【図９】
2010086469.tif 000011