(57)【特許請求の範囲】
【請求項１】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムであって、
前記アプリケーション実行クライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知し、前記アプリケーション実行サーバ部から提供された解凍処理が必要となるファイルの解凍処理を行い、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行い、
前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記アプリケーション実行クライアント部へ提供する、
出力機能分割システム。
【請求項２】
前記アプリケーション実行サーバ部を複数備え、
前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続され、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介する管理サーバをさらに備える
請求項１に記載の出力機能分割システム。
【請求項３】
前記アプリケーション実行サーバ部は、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、
を備え、
前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する、
ことを特徴とする請求項１又は２に記載の出力機能分割システム。
【請求項４】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムであって、
前記アプリケーション実行サーバ部を複数備え、
前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続され、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介する管理サーバを備え、
前記アプリケーション実行クライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知し、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行い、
前記管理サーバから前記ユーザ端末に紹介された前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報を前記アプリケーション実行クライアント部へ提供する、
出力機能分割システム。
【請求項５】
前記アプリケーション実行サーバ部は、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、
を備え、
前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する、
ことを特徴とする請求項４に記載の出力機能分割システム。
【請求項６】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムであって、
前記アプリケーション実行クライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知し、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行い、
前記アプリケーション実行サーバ部は、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、
を備え、
前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する、
出力機能分割システム。
【請求項７】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムにおけるアプリケーションコンテンツ出力方法であって、
前記アプリケーション実行クライアント部が、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順と、
前記アプリケーション実行サーバ部が、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記アプリケーション実行クライアント部へ提供する提供手順と、
前記アプリケーション実行クライアント部が、前記解凍処理の必要なファイルの解凍処理を行い、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う出力手順と、
を順に有するアプリケーションコンテンツ出力方法。
【請求項８】
前記出力機能分割システムは、前記アプリケーション実行サーバ部を複数備えるとともに、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部と接続された管理サーバをさらに備え、
前記通知手順の前に、前記管理サーバが、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介するサーバ部選択手順をさらに有することを特徴とする請求項７に記載のアプリケーションコンテンツ出力方法。
【請求項９】
前記通知手順の前に、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順をさらに有し、
前記提供手順において、前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供し、
前記出力手順において、前記アプリケーション実行クライアント部は、前記アプリケーション実行サーバ部から提供された情報を用いて前記ユーザ端末からアプリケーションコンテンツを出力する、
ことを特徴とする請求項７又は８に記載のアプリケーションコンテンツ出力方法。
【請求項１０】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムにおけるアプリケーションコンテンツ出力方法であって、
前記出力機能分割システムは、前記アプリケーション実行サーバ部を複数備えるとともに、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部と接続された管理サーバを備え、
前記管理サーバが、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介するサーバ部選択手順と、
前記アプリケーション実行クライアント部が、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順と、
前記アプリケーション実行サーバ部が、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報を前記アプリケーション実行クライアント部へ提供する提供手順と、
前記アプリケーション実行クライアント部が、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う出力手順と、
を順に有するアプリケーションコンテンツ出力方法。
【請求項１１】
前記通知手順の前に、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順をさらに有し、
前記提供手順において、前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供し、
前記出力手順において、前記アプリケーション実行クライアント部は、前記アプリケーション実行サーバ部から提供された情報を用いて前記ユーザ端末からアプリケーションコンテンツを出力する、
ことを特徴とする請求項１０に記載のアプリケーションコンテンツ出力方法。
【請求項１２】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムにおけるアプリケーションコンテンツ出力方法であって、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順と、
前記アプリケーション実行クライアント部が、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順と、
前記アプリケーション実行サーバ部が、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する提供手順と、
前記アプリケーション実行クライアント部が、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う出力手順と、
を順に有するアプリケーションコンテンツ出力方法。
【請求項１３】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムの前記アプリケーション実行サーバ部として用いられるサーバであって、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、
を備え、
前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供するサーバ。
【請求項１４】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムの前記アプリケーション実行サーバ部におけるアプリケーションコンテンツ出力方法であって、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順と、
前記ユーザ端末への入力内容を前記アプリケーション実行クライアント部から通知される通知手順と、
前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する提供手順と、
順に有するアプリケーションコンテンツ出力方法。
【請求項１５】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムに備わり、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続されている管理サーバであって、
前記出力機能分割システムは前記アプリケーション実行サーバ部を複数備え、
前記複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介する管理サーバ。
【請求項１６】
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムに備わり、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続されている管理サーバにおけるアプリケーションコンテンツ出力方法であって、
前記出力機能分割システムは前記アプリケーション実行サーバ部を複数備え、
前記アプリケーション実行クライアント部が前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順の前に、前記管理サーバが、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介するサーバ部選択手順を有するアプリケーションコンテンツ出力方法。
【請求項１７】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムであって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知し、前記ブラウジングサーバ部から提供された解凍処理が必要となるファイルの解凍処理を行い、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示し、
前記ブラウジングサーバ部は、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記ブラウジングクライアント部へ提供する、
Ｗｅｂブラウジングシステム。
【請求項１８】
前記ブラウジングサーバ部を複数備え、
前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続され、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介する管理サーバをさらに備える
ことを特徴とする請求項１７に記載のＷｅｂブラウジングシステム。
【請求項１９】
前記ブラウジングサーバ部は、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、
をさらに備え、
前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、
前記ブラウジングクライアント部は、
前記ブラウジングサーバ部からの前記観測要求に応じて観測結果を返送し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する
ことを特徴とする請求項１７又は１８に記載のＷｅｂブラウジングシステム。
【請求項２０】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムであって、
前記ブラウジングサーバ部を複数備え、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続され、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介する管理サーバを備え、
前記ブラウジングクライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示し、
前記管理サーバから前記ユーザ端末に紹介された前記ブラウジングサーバ部は、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報を前記ブラウジングクライアント部へ提供する、
Ｗｅｂブラウジングシステム。
【請求項２１】
前記ブラウジングサーバ部は、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、
をさらに備え、
前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、
前記ブラウジングクライアント部は、
前記ブラウジングサーバ部からの前記観測要求に応じて観測結果を返送し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する
ことを特徴とする請求項２０に記載のＷｅｂブラウジングシステム。
【請求項２２】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムであって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部は、前記ユーザ端末に搭載され、前記ブラウジングサーバ部からの通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求に応じて観測結果を返送し、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示し、
前記ブラウジングサーバ部は、
前記ブラウジングクライアント部に前記観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、を備え、
前記ブラウジングサーバ部は、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する、
Ｗｅｂブラウジングシステム。
【請求項２３】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムのＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順と、
前記ブラウジングサーバ部が、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記ブラウジングクライアント部へ提供する提供手順と、
前記ブラウジングクライアント部が、前記解凍処理の必要なファイルの解凍処理を行い、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する表示手順と、
を順に有するＷｅｂブラウジング方法。
【請求項２４】
前記Ｗｅｂブラウジングシステムは、前記ブラウジングサーバ部を複数備えるとともに、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続された管理サーバをさらに備え、
前記通知手順の前に、前記管理サーバが、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介するブラウジングサーバ部選択手順をさらに有することを特徴とする請求項２３に記載のＷｅｂブラウジング方法。
【請求項２５】
前記通知手順の前に、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順をさらに有し、
前記提供手順において、前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、
前記表示手順において、前記ブラウジングクライアント部は、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する、
ことを特徴とする請求項２３又は２４に記載のＷｅｂブラウジング方法。
【請求項２６】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムのＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記Ｗｅｂブラウジングシステムは、前記ブラウジングサーバ部を複数備えるとともに、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続された管理サーバを備え、
前記管理サーバが、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介するブラウジングサーバ部選択手順と、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順と、
前記ブラウジングサーバ部が、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報を前記ブラウジングクライアント部へ提供する提供手順と、
前記ブラウジングクライアント部が、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する表示手順と、
を順に有するＷｅｂブラウジング方法。
【請求項２７】
前記通知手順の前に、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順をさらに有し、
前記提供手順において、前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、
前記表示手順において、前記ブラウジングクライアント部は、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する、
ことを特徴とする請求項２６に記載のＷｅｂブラウジング方法。
【請求項２８】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムのＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順と、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順と、
前記ブラウジングサーバ部が、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する提供手順と、
前記ブラウジングクライアント部が、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する表示手順と、
を順に有するＷｅｂブラウジング方法。
【請求項２９】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムの前記ブラウジングサーバ部であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、
を備え、
前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する、
ブラウジングサーバ部。
【請求項３０】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムの前記ブラウジングサーバ部のＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順と、
前記ユーザ端末への入力内容を前記ブラウジングクライアント部から通知される通知手順と、
前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する提供手順と、
を順に有するブラウジングサーバ部のＷｅｂブラウジング方法。
【請求項３１】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムに備わり、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続されている管理サーバであって、
前記Ｗｅｂブラウジングシステムは前記ブラウジングサーバ部を複数備え、
前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介する管理サーバ。
【請求項３２】
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムに備わり、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続されている管理サーバのＷｅｂブラウジング方法であって、
前記Ｗｅｂブラウジングシステムは前記ブラウジングサーバ部を複数備え、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順の前に、前記管理サーバが、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介するブラウジングサーバ部選択手順を有する管理サーバのＷｅｂブラウジング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面表示又は音声などの出力を伴うアプリケーションにおける出力機能分割システムに関する。特に本発明は、Ｗｅｂページをユーザ端末に表示するＷｅｂブラウジングシステムに関する。
【背景技術】
【０００２】
インターネットの普及に伴い、ユーザはネットワークを介して様々なサービスを利用できるようになっている。メール、ホームページの閲覧、検索、オンライン取引、ＩＰ電話、ビデオオンデマンドなどは、その一例である。これらのネットワークサービスは様々な形態で提供し得るが、近年、ユーザとのインタフェースとして、Ｗｅｂブラウザの利用が主流となっている。【０００３】
当初、ＷｅｂブラウザによってＷｅｂサーバから取得され閲覧されるページ（以下、Ｗｅｂページ）は、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）のみによって記述された軽量かつ静的な文書を表示するのみであった。しかし、近年では、スクリプト言語ＪａｖａＳｃｒｉｐｔ（登録商標）やＡｄｏｂｅ社が提供するＦｌａｓｈをＷｅｂブラウザ上で実行することで、柔軟かつ動的なユーザインタフェースを提供するようになっている。このようなＷｅｂページは、リッチインターネットアプリケーションと呼ばれる。更に、標準化団体であるＷＨＡＴＷＧ（Ｗｅｂ  Ｈｙｐｅｒｔｅｘｔ  Ａｐｐｌｉｃａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ  Ｗｏｒｋｉｎｇ  Ｇｒｏｕｐ）およびＷ３Ｃ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ  Ｃｏｎｓｏｒｔｉｕｍ）が標準化を進めるＨＴＭＬ５（ＨＴＭＬの最新の改訂版）においても高度なマルチメディア機能がサポートされるなど、リッチインターネットアプリケーションは、今後も発展していくと予想される。【０００４】
リッチインターネットアプリケーションの進展に伴い、Ｗｅｂブラウザには、より高い処理性能が求められている。その一方で、Ｗｅｂブラウザを実行するユーザ端末の多様化も進んでいる。従来は、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）上のＷｅｂブラウザを用いて、Ｗｅｂページを閲覧することが主流であった。しかし、今日では、計算機の小型化・省電力化・低価格化によって、Ｗｅｂブラウザが様々な形状のユーザ端末に搭載されるようになっている。スマートフォン、スマートテレビ、家庭用ゲーム機などはその典型である。そして、ユーザは、自分自身が置かれている場所・状況に応じて、様々な種類のユーザ端末を使い分けて、Ｗｅｂページにアクセスする。【０００５】
ユーザ端末の処理性能は、その形状・用途等に応じて大きく異なる。このため、同じＷｅｂページを閲覧したとしても、特にリッチインターネットアプリケーションを閲覧する場合において、Ｗｅｂページへのアクセスに用いたユーザ端末によって、ユーザが得られるユーザ体感品質に大きな差が生じる。このため、Ｗｅｂページの提供者は、ユーザ端末の種別に依らず一定のユーザ体感品質を提供するために、ユーザ端末の種類毎にカスタマイズした複数のＷｅｂページを用意する等、多大なコストを強いられている。【０００６】
ここで、Ｗｅｂブラウザの基本的な仕組みについて述べる。ユーザ端末のＷｅｂブラウザ９７は、図１に示すように、ネットワーク、インターネットを介して、Ｗｅｂサーバ９６にＨＴＴＰリクエストを送信することで、Ｗｅｂサーバ９６からＷｅｂページの表示に必要なリソース（ＨＴＭＬファイル、スタイルシート、画像等のＷｅｂページの表示に使用される個々のファイルを指す）を、ＨＴＴＰレスポンスとして取得する。【０００７】
ここで、説明のため、ＵＲＬエントリ部９７１とＷｅｂビュー表示部９７２の２つから構成される単純なＷｅｂブラウザ９７を仮定する（図２）。ＵＲＬエントリ部９７１は、ユーザが閲覧したいＷｅｂページのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）の入力を受け付ける。また、リンクのクリック等によってＷｅｂページが遷移した場合に、遷移先のＷｅｂページのＵＲＬを表示する。一方、Ｗｅｂビュー表示部９７２は、Ｗｅｂページの画面を表示する。また、ユーザからの操作（マウス操作、タッチパネル操作、キーボード入力、等）を受け付ける。【０００８】
図２のＷｅｂブラウザを仮定した場合の、Ｗｅｂブラウザの基本的な処理の流れを図３に示す。
まず、ユーザは、閲覧したいＷｅｂページのＵＲＬを、ＷｅｂブラウザのＵＲＬエントリ部９７１に入力する。ここでは例として、ユーザが入力したＵＲＬを、ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／ｉｎｄｅｘ．ｈｔｍｌとする。また、このＷｅｂページでは、図４に示すように、上部に小さな画像が３つ、下部に拡大画像が１つ配置されているものとする。そして、ユーザがマウスカーソルを動かし上部の小さな画像に触れると、下部の拡大画像がマウスカーソルで触れた画像に切り替えられる。【０００９】
Ｗｅｂブラウザ９７は、ＵＲＬエントリ部９７１からＵＲＬを受け取ると、そのＵＲＬをリクエスト送信部１４に渡す。リクエスト送信部１４では、ＵＲＬに紐づくリソースを取得するため、ＵＲＬに指定されているＷｅｂサーバ９６（本例では、ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ）に対してＨＴＴＰリクエストを送信する。【００１０】
Ｗｅｂサーバ９６はＨＴＴＰリクエストを受け取ると、ＨＴＴＰリクエストのＵＲＬが指し示すリソースを、ＨＴＴＰレスポンスとして送信元のＷｅｂブラウザ９７に返信する。通常、新しいＷｅｂページに遷移した場合は、まずＷｅｂサーバ９６からＨＴＭＬファイルが返される。ここでは、図４のＷｅｂページに対応するＨＴＭＬファイルとして、図５に示すＨＴＭＬファイルが返信されたとする。【００１１】
Ｗｅｂブラウザ９７は、Ｗｅｂサーバ９６からＨＴＴＰレスポンスを取得すると、それをレスポンス受信部１５に渡す。レスポンス受信部１５は、ＨＴＴＰレスポンスからリソースを取り出す。そして、取り出したリソースをリソース記憶部２１に格納する。ここでは、まずリソースとして図５のＨＴＭＬファイルを得る。【００１２】
次に、ＨＴＭＬ解析部１３において、取得したＨＴＭＬファイルやスタイルシートを解析する。そして、一般的に、ＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）と呼ばれるＡＰＩを備えるデータ構造（ＤＯＭツリー）が構築される。図５のＨＴＭＬファイルから構築されたＤＯＭツリーの具体例を図６に示す。図６に示すように、ＤＯＭツリーは、基本的に、ＨＴＭＬファイルの各要素をノードとするツリー構造となる。また、各ノードには、ＨＴＭＬファイルの記述に従って、属性値が設定される。ＨＴＭＬ解析部１３は、構築したＤＯＭツリーをＤＯＭツリー記憶部２２に格納する。また、ＨＴＭＬファイルを解析した結果、Ｗｅｂサーバ９６から追加で取得すべきリソースが見つかった場合は、リクエスト送信部１４に対してそのリソースのＵＲＬを通知し、ＨＴＴＰリクエストの送信を依頼する。本例では、ページ表示に必要なリソースとして、
ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／１．ｊｐｇ
ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／２．ｊｐｇ
ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／３．ｊｐｇ
を、新たにＷｅｂサーバから取得する。【００１３】
また、ＨＴＭＬファイルがスクリプトを有しており、かつそのスクリプトの実行条件が満たされているならば、ＨＴＭＬ解析部１３は、スクリプト評価部１２に対して、ＨＴＭＬファイル内のスクリプトの実行を依頼する。このとき、ＨＴＭＬ解析部１３は、実行するべきスクリプト（関数と関数に与える引数）を、スクリプト評価部１２に渡す。そして、スクリプト評価部１２では、ＤＯＭツリー記憶部２２中のＤＯＭツリーを参照しながら、スクリプトを実行する。スクリプトの実行に伴いＤＯＭツリーを更新する場合は、ＨＴＭＬ解析部１３にＤＯＭツリーの更新を依頼する。なお、図５のＨＴＭＬファイルはスクリプトとして、ＪａｖａＳｃｒｉｐｔ（登録商標）のｓｅｔＰｉｃｔｕｒｅ関数を有しているが、その実行条件を「指定され画像にマウスが触れた場合（ｏｎｍｏｕｓｅｏｖｅｒイベントハンドラ）」としている。ゆえに、現時点では、スクリプトの実行条件を充足しないため、ＨＴＭＬ解析部１３は、スクリプト評価部１２に対するスクリプト実行依頼は実施しない。スクリプトの実行条件を充足した場合の動作は後述する。【００１４】
また、本例では例示していないが、Ｗｅｂページの提供者は、スタイルシートをリソースとて提供することで、Ｗｅｂビュー上に表示される画面構成（レイアウト）を制御できる。スタイルシートの記述作法とスタイルシートが指定されている場合にＷｅｂブラウザがどのように画面を構成すべきかについて、ＣＳＳ（Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔｓ）がＷ３Ｃによって標準化されている。スタイルシートもＨＴＭＬファイルと同様に、ＨＴＭＬ解析部１３においてＤＯＭツリーに変換され、ＤＯＭツリー記憶部２２に格納される。【００１５】
ページ表示に必要となるリソース、およびＤＯＭツリーが揃うと、ＨＴＭＬ解析部１３は、レイアウト部１６にレイアウトを依頼する。レイアウト部１６では、ＤＯＭツリーを基に、画面のレイアウトを決定する。レイアウト部１６では、ＤＯＭツリー記憶部２２にあるスタイルシートを参照しながら、Ｗｅｂビュー表示部９７２のどの位置に何を描画すべきかを具体的に決定する。そして、結果をレイアウトデータとして、レイアウトデータ記憶部２３に格納する。レイアウトデータの具体例を図７に示す。図７に示すように、レイアウトデータでは、Ｗｅｂビュー上のどの座標にどのような大きさで何を描画すべきかが示される。レイアウトが決定すると、レイアウト部１６は描画部１７に描画を依頼する。描画部１７では、レイアウトデータ記憶部２３に格納中のレイアウトデータに基づき、Ｗｅｂビュー表示部９７２にＷｅｂページを描画する。【００１６】
Ｗｅｂビュー表示部９７２の画面が更新されると、ユーザはその内容を認識・解釈し、Ｗｅｂビュー表示部９７２に対して、次の操作（マウス操作、タッチパネル操作、キーボード入力、等）を加える。Ｗｅｂビュー表示部９７２に対する操作は、操作イベントとして、操作イベント評価部１１に通知される。【００１７】
操作イベント評価部１１では、通知されたイベントの種類やイベントが発生したＷｅｂビュー表示部９７２上の位置を評価し、イベントに応じて実施すべき処理を選択する。例えば、ユーザがＷｅｂビュー表示部９７２上のリンクをマウスでクリックした場合は、そのリンクに紐づくＵＲＬをリクエスト送信部１４に通知することで、次のＷｅｂページへの遷移を開始する。また、ユーザがマウスホイールを回転させることでスクロールを指示した場合は、操作イベント評価部１１は、レイアウト部１６にスクロール幅を通知し、レイアウトの更新を依頼する。【００１８】
また図５のＨＴＭＬファイルの例では、前述したように、中段の小さな３つの画像にｏｎｍｏｕｓｅｏｖｅｒイベントハンドラがセットされている。ゆえに、操作イベント評価部１１は、マウスカーソルがＷｅｂビュー表示部９７２上を移動する度に、その位置を評価する。そして、マウスカーソルが上部の小さい画像に触れた場合は、その画像のＵＲＬを引数として、ＨＴＭＬファイル内のＪａｖａＳｃｒｉｐｔ（登録商標）関数ｓｅｔＰｉｃｔｕｒｅ（）の実行を、スクリプト評価部１２に依頼する。スクリプト評価部１２がｓｅｔＰｉｃｔｕｒｅ（）を実行し、ＨＴＭＬ解析部１３に対して、下部の大きな画像のｓｒｃ属性をマウスカーソルが触れた画像のＵＲＬに書き換えるよう指示する。ＨＴＭＬファイル解析部は、スクリプト評価部１２からの指示に従って、ＤＯＭツリーを更新する。図８に、マウスカーソルが真ん中の画像（．／２．ｊｐｇ）に触れた場合の、ＤＯＭツリーの更新結果を示す。図８に示すように、下部の画像のｓｒｃ属性が触れた画像のＵＲＬである「．／２．ｊｐｇ」に書き換えられている。ＤＯＭツリーの更新は、レイアウト部１６に伝えられ、レイアウトデータに反映される（すなわち本例では、図７の下部の拡大画像の「画像＝．／１．ｊｐｇ」が「画像＝．／２．ｊｐｇ」に書き換えられる）。そして、レイアウト部から描画部１７に対して描画を依頼することで、Ｗｅｂビュー表示部９７２の下部に、触れた画像（本例では．／２．ｊｐｇ）の拡大画像が表示される。【００１９】
Ｗｅｂブラウザの操作における、ユーザ体感品質を向上させるためには、操作イベントの生起からＷｅｂ画面表示に対する画面描画まで（図９の破線矢印のフロー）の応答時間の短縮が求められる。例えば、Ｗｅｂブラウザの処理によるフレーム遅延をなくすためには、秒間６０フレームを描画するユーザ端末ならば応答時間を１７ミリ秒以下に抑えることが必要となる。また、Ｊａｋｏｂ  Ｎｉｅｌｓｅｎによれば、ユーザに「直接操作している」という感覚を提供するならば、応答時間は１００ミリ秒が上限となり、また、「コントロールしている」という感覚を提供するならば、応答時間は１秒が上限となる（例えば、非特許文献６参照。）。しかし、リッチインターネットアプリケーションを想定した場合、スクリプトや画面構成が複雑化するため、上記のフローのうち特にスクリプト評価部１２、及びレイアウト部１６が高負荷となる。更に、連続的にイベントが生起するようになるため、これらのスクリプト評価部１２及びレイアウト部１６を繰り返し実行する必要がある。その結果、低スペックのユーザ端末では、これらの処理部が処理性能上のボトルネックとなり、処理待ちのイベントが蓄積する。そして、応答時間が著しく悪化したり、操作が無視されたりする、といった問題を引き起こす。【００２０】
ネットワーク上のリソースを活用することで、Ｗｅｂブラウジングのユーザ体感品質を高める技術として、ＣＤＮ（Ｃｏｎｔｅｎｔ  Ｄｅｌｉｖｅｒｙ  Ｎｅｔｗｏｒｋ）に代表される、キャッシュ技術がある（例えば、特許文献１参照。）。キャッシュ技術は、本来Ｗｅｂサーバにあるリソースを、ネットワーク上のキャッシュサーバに分散配置する。そして、ＤＮＳ（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｅｒｖｅｒ）等を利用して、Ｗｅｂブラウザ９７からのＷｅｂサーバ９６へのアクセスを、最寄りのキャッシュサーバに誘導し、キャッシュサーバから該当のリソースを代理応答させる。キャッシュ技術は、ＵＲＬの入力から画面表示されるまでの応答時間を短縮（図１０の破線矢印のフロー）させるという効果を有する。しかし、リッチインターネットアプリケーションを想定した場合に求められる、操作イベントの生起から画面表示まで（図９の破線矢印のフロー）の応答時間の短縮には寄与しない。【００２１】
また、ネットワーク中で、Ｗｅｂページをユーザ端末の種別に即した軽量なフォーマットに変換する技術がある。例えば、携帯端末からＷｅｂページを閲覧するためのプロトコルとしてＷＡＰ（Ｗｉｒｅｌｅｓｓ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）がある（例えば、非特許文献１参照。）。携帯端末では、ＣＰＵの処理能力、メモリ容量が共に小さく、また、インターネットとの接続も不安定となる。そこでＷＡＰでは、まずＷＭＬ（Ｗｉｒｅｌｅｓｓ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）と呼ばれる独自のマークアップ言語を用いてＷｅｂページを記述する。そして、携帯端末の処理負荷・通信量を軽減するため、Ｗｅｂサーバ９６と携帯端末の間に位置するゲートウェイにて、ＷＭＬで書かれたＷｅｂページをバイナリ形式に変換し、携帯端末に送信する。また、ＨＴＭＬで記述された通常のＷｅｂページを非力な携帯端末でより快適に閲覧すること目的としたＷｅｂブラウザとして、Ｏｐｅｒａ社のＯｐｅｒａ  Ｍｉｎｉがある。Ｏｐｅｒａ  Ｍｉｎｉでは、インターネット上のプロキシサーバにおいてＷｅｂページを携帯端末向けに再フォーマット・圧縮し、ＯＢＭＬ（Ｏｐｅｒａ  Ｂｉｎａｒｙ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）と呼ばれるマークアップ言語を用いてＷｅｂブラウザ９７に送信する。【００２２】
これらのフォーマット変換技術は、通信量の削減によるダウンロード時間の短縮や、新規ページ遷移時の「ＨＴＭＬ解析部１３」「レイアウト部１６」における処理負荷を軽減させる。しかし、リッチインターネットアプリケーションのボトルネックである、操作イベントの生起に伴うスクリプト評価部１２やレイアウト部１６におけるレイアウトの再評価は、依然としてユーザ端末上で実施する必要があり、その処理負荷の軽減に寄与しない。【００２３】
また、図１１に示すように、スクリプト評価部１２をＷｅｂサーバ９６上でリモート実行する手法が折戸によって提案されている（例えば、非特許文献２参照。）。折戸による提案は、まず、Ｗｅｂサーバ９６からＷｅｂブラウザ９７に対してＨＴＭＬファイルを返却する際に、ＨＴＭＬファイルに記載されるＪａｖａＳｃｒｉｐｔ（登録商標）関数をＷｅｂサーバ９６に設けたスクリプト評価部１２に登録する。次に、ＨＴＭＬファイル内の各要素に記載されているイベントハンドラを、Ｗｅｂサーバ９６上のスクリプト評価部１２に登録したＪａｖａＳｃｒｉｐｔ（登録商標）関数をリモート実行するスクリプトに書き換える。これにより、ユーザがＷｅｂブラウザ９７を操作すると、書き換えられたスクリプトが実行され、Ｗｅｂサーバ９６上で対となるＪａｖａＳｃｒｉｐｔ（登録商標）関数がＷｅｂサーバ９６のスクリプト評価部１２で評価される。スクリプト評価した結果は、ＨＴＭＬファイルとしてユーザ端末に返される。ユーザ端末のＷｅｂブラウザ９７は、受信したＨＴＭＬファイルを解析し、結果となる画面を描画する。【００２４】
折戸の提案では、ユーザ端末のＷｅｂブラウザ９７において、スクリプト評価に要する負荷が軽減されるという利点がある。その一方で、イベントが生起する度に、ユーザ端末において、「ＪａｖａＳｃｒｉｐｔ（登録商標）を用いたリモート呼び出し、結果ＨＴＭＬファイルの受信、ＤＯＭツリーの再構築、再レイアウト、描画」、という一連の処理を実行する必要があり、必ずしてもユーザ端末全体として負荷が軽減されるとは限らない。また、ユーザ端末とＷｅｂサーバ間の通信遅延によって、イベント生起から画面描画までの応答時間も増加する。この結果、特に連続的に操作イベントが生起するリッチインターネットアプリケーションへの適用が難しいという課題がある。
【先行技術文献】
【特許文献】
【００２５】
【特許文献１】米国特許６，１０８，７０３号公報
【非特許文献】
【００２６】
【非特許文献１】ｈｔｔｐ：／／ｗｗｗ．ｏｐｅｎｍｏｂｉｌｅａｌｌｉａｎｃｅ．ｏｒｇ／Ｔｅｃｈｎｉｃａｌ／ｗａｐｉｎｄｅｘ．ａｓｐｘ
【非特許文献２】折戸、岩崎、”ブラウザで動作するウェブアプリケーションのソースコード隠蔽機構”  情報処理学会論文誌  プログラミング  ｖｏｌ．  ３  Ｎｏ．４  Ｓｅｐ．  ２０１０．
【非特許文献３】ｈｔｔｐ：／／ｗｗｗ．ｃａｉｒｏｇｒａｐｈｉｃｓ．ｏｒｇ／
【非特許文献４】ｈｔｔｐ：／／ｄｏｃｓ．ｏｒａｃｌｅ．ｃｏｍ／ｊａｖａｓｅ／ｊｐ／６／ａｐｉ／ｊａｖａ／ａｗｔ／Ｇｒａｐｈｉｃｓ．ｈｔｍｌ
【非特許文献５】ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ＣＳＳ２／ｖｉｓｕｒｅｎ．ｈｔｍｌ＃ｐｒｏｐｄｅｆ−ｐｏｓｉｔｉｏｎ
【非特許文献６】ｈｔｔｐ：／／ｗｗｗ．ｕｓｅｉｔ．ｃｏｍ／ｐａｐｅｒｓ／ｒｅｓｐｏｎｓｅｔｉｍｅ．ｈｔｍｌ
【非特許文献７】ｈｔｔｐ：／／ａｓａｔａｎｉ．ｃｃ．ｋｏｇａｋｕｉｎ．ａｃ．ｊｐ／ａｃｈｉｅｖｅｍｅｎｔ／２００８／ＮＳｙｏｋｏｕ＿ｔａｋｉｔａ＿０９０２０９．ｐｄｆ
【非特許文献８】ｈｔｔｐ：／／ｗｗｗ．ｃｉｓｃｏ．ｃｏｍ／ｃｉｓｃｏ／ｗｅｂ／ｓｕｐｐｏｒｔ／ＪＰ／１００／１００８／１００８１２９＿ｔｔｃｐ−ｊ．ｈｔｍｌ
【発明の概要】
【発明が解決しようとする課題】
【００２７】
前記課題を解決するために、本発明は、処理性能が異なるデバイスからのアクセスであっても、同等のユーザ体感品質をユーザに提供できるＷｅｂブラウザを実現することを目的とする。
【課題を解決するための手段】
【００２８】
本発明は、アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたネットワークシステムにおいて、ユーザ端末におけるアプリケーションコンテンツの出力機能を、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割したことを特徴とする。【００２９】
本発明は、Ｗｅｂブラウザによるリッチインターネットアプリケーションの閲覧において、ブラウザエンジンにネットワーク上の計算リソースを活用することで、処理性能が異なるユーザ端末からのアクセスであっても、同等のユーザ体感品質をユーザに提供できるＷｅｂブラウザを実現する。【００３０】
具体的には、本発明に係る出力機能分割システムは、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムであって、
前記アプリケーション実行クライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知し、前記アプリケーション実行サーバ部から提供された解凍処理が必要となるファイルの解凍処理を行い、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行い、
前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記アプリケーション実行クライアント部へ提供する。
【００３１】
本発明に係る出力機能分割システムでは、前記アプリケーション実行サーバ部を複数備え、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続され、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介する管理サーバをさらに備えていてもよい。
また、本発明に係る出力機能分割システムでは、前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、を備え、前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供してもよい。
【００３２】
具体的には、本発明に係る出力機能分割システムは、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムであって、
前記アプリケーション実行サーバ部を複数備え、
前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続され、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介する管理サーバを備え、
前記アプリケーション実行クライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知し、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行い、
前記管理サーバから前記ユーザ端末に紹介された前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報を前記アプリケーション実行クライアント部へ提供する。
【００３３】
本発明に係る出力機能分割システムでは、前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、を備え、前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供してもよい。
【００３４】
具体的には、本発明に係る出力機能分割システムは、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムであって、
前記アプリケーション実行クライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知し、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行い、
前記アプリケーション実行サーバ部は、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、
を備え、
前記アプリケーション実行サーバ部は、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する。
【００３５】
具体的には、本発明に係るアプリケーションコンテンツ出力方法は、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムにおけるアプリケーションコンテンツ出力方法であって、
前記アプリケーション実行クライアント部が、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順と、
前記アプリケーション実行サーバ部が、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記アプリケーション実行クライアント部へ提供する提供手順と、
前記アプリケーション実行クライアント部が、前記解凍処理の必要なファイルの解凍処理を行い、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う出力手順と、
を順に有する。
【００３６】
本発明に係るアプリケーションコンテンツ出力方法では、前記出力機能分割システムは、前記アプリケーション実行サーバ部を複数備えるとともに、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部と接続された管理サーバをさらに備え、前記通知手順の前に、前記管理サーバが、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介するサーバ部選択手順をさらに有してもよい。
【００３７】
本発明に係るアプリケーションコンテンツ出力方法では、前記通知手順の前に、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順をさらに有し、前記提供手順において、前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供し、前記出力手順において、前記アプリケーション実行クライアント部は、前記アプリケーション実行サーバ部から提供された情報を用いて前記ユーザ端末からアプリケーションコンテンツを出力してもよい。
【００３８】
具体的には、本発明に係るアプリケーションコンテンツ出力方法は、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムにおけるアプリケーションコンテンツ出力方法であって、
前記出力機能分割システムは、前記アプリケーション実行サーバ部を複数備えるとともに、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部と接続された管理サーバを備え、
前記管理サーバが、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介するサーバ部選択手順と、
前記アプリケーション実行クライアント部が、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順と、
前記アプリケーション実行サーバ部が、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツに応じた出力を行うために必要な情報を前記アプリケーション実行クライアント部へ提供する提供手順と、
前記アプリケーション実行クライアント部が、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う出力手順と、
を順に有する。
【００３９】
本発明に係るアプリケーションコンテンツ出力方法では、
前記通知手順の前に、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順をさらに有し、
前記提供手順において、前記アプリケーション実行サーバ部は、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供し、
前記出力手順において、前記アプリケーション実行クライアント部は、前記アプリケーション実行サーバ部から提供された情報を用いて前記ユーザ端末からアプリケーションコンテンツを出力してもよい。
【００４０】
具体的には、本発明に係るアプリケーションコンテンツ出力方法は、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムにおけるアプリケーションコンテンツ出力方法であって、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順と、
前記アプリケーション実行クライアント部が、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順と、
前記アプリケーション実行サーバ部が、前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する提供手順と、
前記アプリケーション実行クライアント部が、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う出力手順と、
を順に有する。
【００４２】
具体的には、本発明に係るアプリケーション実行クライアント部は、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムの前記アプリケーション実行クライアント部であって、
前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知し、前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う。【００４３】
具体的には、本発明に係るアプリケーションコンテンツ出力方法は、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムにおける前記アプリケーション実行クライアント部におけるアプリケーションコンテンツ出力方法であって、
前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順と、
前記アプリケーション実行サーバ部から提供された情報に応じた出力を前記ユーザ端末において行う出力手順と、
を順に有する。【００４４】
具体的には、本発明に係るサーバは、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムの前記アプリケーション実行サーバ部として用いられるサーバであって、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記アプリケーション実行クライアント部から前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツを出力するために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定部と、
を備え、
前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定部の決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する。
【００４６】
具体的には、本発明に係るアプリケーションコンテンツ出力方法は、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムの前記アプリケーション実行サーバ部におけるアプリケーションコンテンツ出力方法であって、
前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記アプリケーション実行クライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、アプリケーションコンテンツに応じた出力を行うために前記アプリケーション実行サーバ部が行う処理を当該アプリケーションコンテンツの要素ごとに決める処理決定手順と、
前記ユーザ端末への入力内容を前記アプリケーション実行クライアント部から通知される通知手順と、
前記アプリケーション実行クライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末からアプリケーションコンテンツを出力するために必要な情報のうちの前記処理決定手順で決定した処理を前記アプリケーションコンテンツの要素ごとに行ったうえで、前記必要な情報を前記アプリケーション実行クライアント部へ提供する提供手順と、
順に有する。
【００４７】
具体的には、本発明に係る管理サーバは、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムに備わり、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続されている管理サーバであって、
前記出力機能分割システムは前記アプリケーション実行サーバ部を複数備え、
前記複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介する。【００４８】
具体的には、本発明に係るアプリケーションコンテンツ出力方法は、
アプリケーションコンテンツの格納されているアプリケーションコンテンツサーバとネットワーク経由で接続されたユーザ端末における前記アプリケーションコンテンツの出力機能が、アプリケーション実行クライアント部とアプリケーション実行サーバ部に分割された出力機能分割システムに備わり、前記アプリケーション実行クライアント部及び前記アプリケーション実行サーバ部とネットワークで接続されている管理サーバにおけるアプリケーションコンテンツ出力方法であって、
前記出力機能分割システムは前記アプリケーション実行サーバ部を複数備え、
前記アプリケーション実行クライアント部が前記ユーザ端末への入力内容を前記アプリケーション実行サーバ部に通知する通知手順の前に、前記管理サーバが、複数の前記アプリケーション実行サーバ部のうちの設定された一つを前記ユーザ端末に紹介するサーバ部選択手順を有する。【００４９】
具体的には、本発明のＷｅｂブラウジングシステムは、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムであって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知し、前記ブラウジングサーバ部から提供された解凍処理が必要となるファイルの解凍処理を行い、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示し、
前記ブラウジングサーバ部は、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記ブラウジングクライアント部へ提供する。
【００５０】
本発明のＷｅｂブラウジングシステムでは、前記ブラウジングサーバ部を複数備え、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続され、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介する管理サーバをさらに備えていてもよい。
また、本発明のＷｅｂブラウジングシステムでは、前記ブラウジングサーバ部は、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、をさらに備え、前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、前記ブラウジングクライアント部は、前記ブラウジングサーバ部からの前記観測要求に応じて観測結果を返送し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示してもよい。
【００５１】
具体的には、本発明のＷｅｂブラウジングシステムは、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムであって、
前記ブラウジングサーバ部を複数備え、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続され、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介する管理サーバを備え、
前記ブラウジングクライアント部は、前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示し、
前記管理サーバから前記ユーザ端末に紹介された前記ブラウジングサーバ部は、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報を前記ブラウジングクライアント部へ提供する。
【００５２】
本発明のＷｅｂブラウジングシステムでは、前記ブラウジングサーバ部は、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、をさらに備え、前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、前記ブラウジングクライアント部は、前記ブラウジングサーバ部からの前記観測要求に応じて観測結果を返送し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示してもよい。
【００５３】
具体的には、本発明のＷｅｂブラウジングシステムは、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムであって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部は、前記ユーザ端末に搭載され、前記ブラウジングサーバ部からの通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求に応じて観測結果を返送し、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示し、
前記ブラウジングサーバ部は、
前記ブラウジングクライアント部に前記観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、を備え、
前記ブラウジングサーバ部は、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する。
【００５５】
具体的には、本発明のＷｅｂブラウジング方法は、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムのＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順と、
前記ブラウジングサーバ部が、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの解凍処理が必要なファイルを解凍せずに前記ブラウジングクライアント部へ提供する提供手順と、
前記ブラウジングクライアント部が、前記解凍処理の必要なファイルの解凍処理を行い、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する表示手順と、
を順に有する。
【００５６】
本発明のＷｅｂブラウジング方法では、前記Ｗｅｂブラウジングシステムは、前記ブラウジングサーバ部を複数備えるとともに、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続された管理サーバをさらに備え、前記通知手順の前に、前記管理サーバが、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介するブラウジングサーバ部選択手順をさらに有していてもよい。
【００５７】
本発明のＷｅｂブラウジング方法は、前記通知手順の前に、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順をさらに有し、前記提供手順において、前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、前記表示手順において、前記ブラウジングクライアント部は、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示してもよい。
【００５８】
具体的には、本発明のＷｅｂブラウジング方法は、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムのＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記Ｗｅｂブラウジングシステムは、前記ブラウジングサーバ部を複数備えるとともに、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続された管理サーバを備え、
前記管理サーバが、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介するブラウジングサーバ部選択手順と、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順と、
前記ブラウジングサーバ部が、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報を前記ブラウジングクライアント部へ提供する提供手順と、
前記ブラウジングクライアント部が、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する表示手順と、
を順に有する。
【００５９】
本発明のＷｅｂブラウジングシステムでは、
前記通知手順の前に、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順をさらに有し、
前記提供手順において、前記ブラウジングサーバ部は、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供し、
前記表示手順において、前記ブラウジングクライアント部は、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示してもよい。
【００６０】
具体的には、本発明のＷｅｂブラウジングシステムは、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムのＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順と、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順と、
前記ブラウジングサーバ部が、前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する提供手順と、
前記ブラウジングクライアント部が、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する表示手順と、
を順に有する。
【００６１】
具体的には、本発明のブラウジングクライアント部は、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムの前記ブラウジングクライアント部であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ユーザ端末に搭載され、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知し、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する。【００６２】
具体的には、本発明のブラウジングクライアント部のＷｅｂブラウジング方法は、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムの前記ブラウジングクライアント部のＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順と、
前記ブラウジングクライアント部が、前記ユーザ端末にＷｅｂページを表示するために必要な情報を前記ブラウジングサーバ部から取得する取得手順と、
前記ブラウジングクライアント部が、前記ブラウジングサーバ部から提供された情報を用いて前記ユーザ端末にＷｅｂページを表示する表示手順と、
を順に有する。【００６３】
具体的には、本発明のブラウジングサーバ部は、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムの前記ブラウジングサーバ部であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測する旨の観測要求を送信し、前記ブラウジングクライアント部から前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを取得する観測部と、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定部と、
を備え、
前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定部の決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する。
【００６５】
具体的には、本発明のブラウジングサーバ部のＷｅｂブラウジング方法は、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムの前記ブラウジングサーバ部のＷｅｂブラウジング方法であって、
前記ブラウジングクライアント部と前記ブラウジングサーバ部はネットワークで接続され、
前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかを観測し、前記ブラウジングクライアント部の通信環境、負荷及び性能の少なくともいずれかに基づいて、Ｗｅｂページを表示するために前記ブラウジングサーバ部が行う処理を当該Ｗｅｂページの要素ごとに決める処理決定手順と、
前記ユーザ端末への入力内容を前記ブラウジングクライアント部から通知される通知手順と、
前記ブラウジングクライアント部から通知された前記ユーザ端末への入力内容に従って、前記ユーザ端末にＷｅｂページを表示するために必要な情報のうちの前記処理決定手順で決定した処理を前記Ｗｅｂページの要素ごとに行ったうえで、前記必要な情報を前記ブラウジングクライアント部へ提供する提供手順と、
を順に有する。
【００６７】
具体的には、本発明の管理サーバは、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムに備わり、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続されている管理サーバであって、
前記Ｗｅｂブラウジングシステムは前記ブラウジングサーバ部を複数備え、
前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介する。【００６８】
具体的には、本発明の管理サーバのＷｅｂブラウジング方法は、
Ｗｅｂサーバに格納されているＷｅｂページを前記Ｗｅｂサーバとインターネットで接続されたユーザ端末に表示するＷｅｂブラウザ機能がブラウジングクライアント部とブラウジングサーバ部に分割されたＷｅｂブラウジングシステムに備わり、前記ブラウジングクライアント部及び前記ブラウジングサーバ部とネットワークで接続されている管理サーバのＷｅｂブラウジング方法であって、
前記Ｗｅｂブラウジングシステムは前記ブラウジングサーバ部を複数備え、
前記ブラウジングクライアント部が、前記ユーザ端末への入力内容を前記ブラウジングサーバ部に通知する通知手順の前に、前記複数のブラウジングサーバ部のうちの前記ユーザ端末と最も近接するブラウジングサーバ部を前記ユーザ端末に紹介するブラウジングサーバ部選択手順を有する。【００６９】
なお、上記各発明は、可能な限り組み合わせることができる。
【発明の効果】
【００７０】
本発明によれば、ブラウジングサーバ部が実質的にブラウザエンジンとして機能するため、処理性能が異なるユーザ端末からのアクセスであっても、同等のユーザ体感品質をユーザに提供できるＷｅｂブラウザを実現することができる。
【図面の簡単な説明】
【００７１】
【図１】Ｗｅｂブラウザを用いたＷｅｂブラウジングシステムの一例を示す。
【図２】ＵＲＬエントリ部が表示されているＷｅｂページの一例を示す。
【図３】Ｗｅｂブラウザの一例を示す機能ブロック図を示す。
【図４】ユーザが入力したＵＲＬに遷移後のＷｅｂページの一例を示す。
【図５】ＨＴＭＬファイルの一例を示す。
【図６】ＤＯＭツリーの一例を示す。
【図７】レイアウトデータの結果例を示す。
【図８】スクリプトの評価部の指示に基づき書き換えられたＤＯＭツリーの例を示す。
【図９】操作イベントの生起からＷｅｂ画面表示に対する画面描画までのＷｅｂブラウザの動作例を示す。
【図１０】キャッシュ技術を用いてＵＲＬの入力から画面表示されるまでの応答時間を短縮する際のＷｅｂブラウザの動作例を示す。
【図１１】スクリプト評価部をＷｅｂサーバ上でリモート実行する手法の説明図を示す。
【図１２】本実施形態のＷｅｂブラウジングシステムの構成図を示す。
【図１３】ブラウジングクライアント部９１と管理サーバ９２とのデータフローを表す。
【図１４】ブラウジングクライアント部９１の構成の一例を示す。
【図１５】ブラウジングサーバ部９３の構成を示す。
【図１６】操作イベントフィルタ設定の設定例を示す。
【図１７】ブラウジングサーバ部９３の描画部に出力されるレイアウトデータの一例を示す。
【図１８】ブラウジングクライアント部９１に送信されるクライアント用レイアウトデータを示す。
【図１９】マウスオーバイベントが発生した場合のＷｅｂページ表示部９７２の表示例を示す。
【図２０】ブラウジングサーバ部９３が構成するＷｅｂページの画面を複数のレイヤに分けた場合のＷｅｂビューの表示領域の一例を示す。
【図２１】スクロール時のＷｅｂビューの表示領域の変化の一例を示す。
【図２２】ｆｉｘｅｄが指定された構成要素と、それ以外の構成要素とのレイヤ分けの一例を示す。
【図２３】実施形態２に係るＷｅｂブラウジングシステムの構成の一例を示す。
【図２４】実施形態２に係るＷｅｂブラウジング方法のシーケンス図を示す。
【図２５】実施形態３に係るブラウジングサーバ部９３の構成の一例を示す。
【図２６】実施形態３に係るブラウジングクライアント部９１の構成の一例を示す。
【図２７】出力機能分割システム及びオンラインゲームシステムにおけるＷｅｂブラウジングシステムとの対応関係の一例を示す。
【図２８】出力機能分割システム及びオンラインゲームシステムにおける処理とＷｅｂブラウジングシステムにおける処理との対応関係の一例を示す。
【図２９】電子書籍システム、画面表示システム及び音声出力システムにおけるＷｅｂブラウジングシステムとの対応関係の一例を示す。
【図３０】電子書籍システム、画面表示システム及び音声出力システムにおける処理とＷｅｂブラウジングシステムにおける処理との対応関係の一例を示す。
【発明を実施するための形態】
【００７２】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、本発明は、以下に示す実施形態に限定されるものではない。これらの実施の例は例示に過ぎず、本発明は当業者の知識に基づいて種々の変更、改良を施した形態で実施することができる。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００７３】
（実施形態１）
本発明は、Ｗｅｂブラウザによるリッチインターネットアプリケーションの閲覧において、ネットワーク上の計算リソースを活用することで、処理性能が異なるデバイスからのアクセスであっても、同等のユーザ体感品質をユーザに提供できるＷｅｂブラウザを実現するものである。
【００７４】
本発明のＷｅｂブラウジングシステムは、図３のＷｅｂブラウザをブラウジングクライアント部とブラウジングサーバ部の２つに分割する。本発明のＷｅｂブラウジング方法は、通知手順と、提供手順と、表示手順と、を順に有する。
通知手順では、ブラウジングクライアント部が、ユーザ端末への入力内容をブラウジングサーバ部に通知する。
提供手順では、ブラウジングサーバ部が、ブラウジングクライアント部から通知されたユーザ端末への入力内容に従って、ユーザ端末にＷｅｂページを表示するために必要な情報をブラウジングクライアント部へ提供する。
表示手順では、ブラウジングクライアント部が、ブラウジングサーバ部から提供された情報を用いてユーザ端末にＷｅｂページを表示する。
【００７５】
本発明のＷｅｂブラウジングシステムがブラウジングサーバ部を複数備える場合、本発明のＷｅｂブラウジング方法は通知手順の前にブラウジングサーバ部選択手順をさらに有していてもよい。ブラウジングサーバ部選択手順では、複数のブラウジングサーバ部のいずれかをユーザ端末に紹介するブラウジングサーバ部選択手順をさらに有する。
【００７６】
さらに、ブラウジングサーバ部選択手順では、ユーザ端末と最も近接しているものに加えて、負荷状態が最も低いもの、接続中のユーザ端末が最も少ないもの、ネットワーク遅延が最も小さいものなども考慮に加えてもよい。
【００７７】
ブラウジングクライアント部は、基本的にＷｅｂブラウザのＧＵＩ（図２のブラウザであればＵＲＬエントリ９７１、Ｗｅｂビュー表示部９７２）をユーザ端末に提供し、ユーザ端末からのＵＲＬ・操作イベントの受付け、及び、ユーザ端末へのＷｅｂ画面の提示を担う。ブラウジングサーバ部は、図３に示したＷｅｂブラウザ９７の各処理を担う。そして、ブラウジングクライアント部に対してレイアウトデータを提供することで、そのＷｅｂビュー表示部９７２の画面更新を指示する。
【００７８】
本発明では、ブラウジングクライアント部を、ユーザが所有するデバイス（ユーザ端末）にて処理し、ブラウジングサーバ部を、ネットワーク上のより処理性能が高いＰＣサーバ上で処理する。すなわち、性能が限定されるユーザ端末の処理が、軽量なブラウジングクライアント部に限定される。折戸の提案方式と異なり、ＤＯＭツリーの再構築やレイアウトの再評価までもネットワーク側にオフロードする。すなわち、折戸の提案方式においてユーザ端末が必要とする「ＪａｖａＳｃｒｉｐｔ（登録商標）を用いたリモート呼び出し」、「結果ＨＴＭＬファイルの受信」、「ＤＯＭツリーの再構築」といった処理が不要であるため、ユーザ端末の負荷をより多く削減できる。この結果、非力なユーザ端末であっても、リッチインターネットアプリケーションを、処理性能上のボトルネックなく処理できる。
【００７９】
前述したように、高いユーザ体感品質を維持するためには、操作イベントの生起から画面描画まで（図９の破線矢印のフロー）の応答時間の短縮が求められる。本発明では、ブラウジングサーバ部をユーザ端末より高性能なＰＣサーバに処理させることで、個々のイベントに対する処理時間を短縮する。その反面、図３の通常のＷｅｂブラウザと比較して、ブラウジングクライアント部とブラウジングサーバ部との通信遅延が新たに生じる。ゆえに、本発明による応答時間の短縮効果を得るためには、ブラウジングサーバ部へのオフロードによって短縮される処理時間が、ブラウジングサーバ部との通信によって生じる通信遅延より大きいことが条件となる。したがって、本発明では、ブラウジングサーバ部との通信遅延を最小限に抑えることが重要である。日本国内を想定した場合、首都圏から東京にあるサーバにアクセスした場合の往復遅延時間は１０ミリ秒程度であるが、北海道や沖縄から東京にあるサーバにアクセスすると、その往復遅延時間は５０ミリ秒〜１００ミリ秒超に達する。したがって、ブラウジングサーバ部を日本国内の一拠点に配備した場合、本発明によって効果が得られるか否か、またその効得の大きさは、ユーザ端末の位置に大きく依存することになる。
【００８０】
そこで本発明では、ブラウジングサーバ部をネットワーク内に分散配置する。すなわち、一般的に、ユーザ端末とＷｅｂサーバ９６との間のネットワークは、図１に示したように、Ｗｅｂサーバ９６が接続されるインターネット９５と、ユーザ端末とインターネットとを接続するネットワーク９４からなる。
【００８１】
ここで、ネットワーク９４として、ＮＧＮ（Ｎｅｘｔ  Ｇｅｎｅｒａｔｉｏｎ  Ｎｅｔｗｏｒｋ）や、携帯電話における３Ｇネットワーク、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）ネットワークが該当する。本発明では、このようなネットワークの階層構造に着目し、ブラウジングサーバ部を、ユーザ端末とインターネット９５とを結ぶネットワーク９４内に分散配置する。または、インターネット９５とネットワーク９４の複数の接続点に分散配置する。そして、ユーザ端末上のブラウジングクライアント部を、その位置に応じて最寄りのブラウジングサーバ部に接続させる。これにより、ブラウジングクライアント部の位置に依らずブラウジングサーバ部との通信遅延を極小化する。
【００８２】
更に、本発明では、一つのブラウジングサーバ部で、複数のユーザを多重に処理できるようにする。Ｗｅｂブラウザ９７の処理負荷は、一般的に、ページ遷移や操作イベントの生起時に一時的に高まるが、ユーザが何も操作しない時間の処理負荷は非常に小さい。また、リッチインターネットアプリケーションは、相対的に他のページより負荷が高まるが、個々のユーザがリッチアプリケーションを閲覧する時間も限定的ある。したがって、ブラウジングサーバ部の負荷が高まる（ユーザがＷｅｂブラウザ９７を操作したり、リッチアプリケーションを閲覧する）タイミングが確率的に分散されることが期待される。これにより、１つの端末で１ユーザのＷｅｂブラウザ９７の全ての処理を間欠的に処理する従来モデルより、高い経済性を確保できる。
【００８３】
本実施形態のＷｅｂブラウジングシステムの全体図を図１２に示す。
本発明は、１つ以上のブラウジングクライアント部９１、管理サーバ９２、及び１つ以上のブラウジングサーバ部９３がネットワーク９４に接続される。なお、ここではインターネット９５とネットワーク９４の間にブラウジングサーバ部９３の複数の接続点に分散配置する形で示したが、ブラウジングサーバ部９３はネットワーク９４内に分散配置してもよい。そして、ブラウジングサーバ部９３は、１つ以上のｗｅｂサーバ９６とインターネット９５を介して接続される。
【００８４】
ここで、ブラウジングクライアント部９１は、ユーザが閲覧・操作するユーザ端末上で実行される。そして、Ｗｅｂブラウザ９７の機能のうち、主にＷｅｂブラウザとしての画面の提示と、ユーザによる操作の受付けを担う。ここでは、説明のため、ブラウジングクライアント部９１は図２のＷｅｂブラウザ画面を提供するものとする。
【００８５】
管理サーバ９２は、ブラウジングクライアント部９１がブラジングサーバ部９３と接続する際に、ブラジングクライアント部９１に対して、ブラウジングクライアント部９１から最も近接するブラウジングサーバ部９３を紹介する。
【００８６】
ここで、管理サーバ９２の紹介するブラウジングサーバ部９３の設定は任意である。例えば、ブラウジングクライアント部９１から位置に代えて、又はブラウジングクライアント部９１からの位置に加えて、ネットワーク状態やブラウジングサーバ部９３の負荷又は通信環境に基づいて選択してもよい。例えば、複数のブラウジングサーバ部９３のうちの現時点又は将来的に負荷が少ないものを選択したり、複数のブラウジングサーバ部９３のうちの現時点又は将来的に接続数の少ないものを選択したり、予め定めた特定のブラウジングサーバ部９３が集中的に稼働するよう選択したりする。
【００８７】
ブラウジングサーバ部９３は、ブラウジングクライアント部９１に対して、Ｗｅｂブラウザ９７のうち、操作イベント評価部１１、スクリプト評価部１２、リクエスト送信部１４、レスポンス受信部１５、ＨＴＭＬ解析部１３、レイアウト部１６といったＷｅｂブラウザとして基本となる機能（ブラウザエンジン）を提供する。ブラウジングサーバ部９３は、ユーザ端末より高性能なＰＣサーバ上で実行される。また、ブラウジングサーバ部９３は、同時に複数のブラウジングクライアント部９１に対してブラウジングエンジンとしての機能を提供できる。
【００８８】
Ｗｅｂサーバ９６は、ブラウジングサーバ部９３から受信したＨＴＴＰリクエストに対して、ＵＲＬに紐づくリソースをＨＴＴＰレスポンスとして返す。
【００８９】
図１２では、管理サーバ９２に対するブラウジングサーバ部９３の問合せは最初の一回で固定的な例で示しているが、設置場所が変更しうるノートＰＣや携帯端末であれば位置情報の変更があった以降の新規のＨＴＴＰリクエスト毎等としてもよいし、ブラウジングサーバ部９３の処理の輻輳状態からブラウジングクライアント部９１に対して再問合せをさせロードバランスを考慮したブラウジングサーバ部９３を回答してもよい。また、再問合せ前から継続するＷＥＢページがある場合には、そのＷＥＢページのブラウジングサーバ部９３を変更しないままで複数のブラウジングサーバ部９３に接続してもよい。
【００９０】
図１３は、ブラウジングクライアント部９１と管理サーバ９２とのデータフローを表す。ブラウジングクライアント部９１は、ユーザからＷｅｂページの閲覧を要求されると、管理サーバ９２に対して最寄りのブラウジングサーバ部９３を問い合わせる。この際、ブラウジングクライアント部９１は、自身の位置を識別するためのキー情報（位置情報）を、管理サーバ９２に送信する。管理サーバ９２は、位置情報に基づき最寄りのブラウジングサーバ部９３特定し、その接続先ブラウジングサーバ部９３を回答する。これにより、ブラウジングクライアント部９１とブラウジングサーバ部９３間のネットワーク遅延を短縮させ、ユーザ端末の位置が本発明の応答時間の短縮効果に与える影響を小さくする。
【００９１】
ブラウジングクライアント部９１と管理サーバ９２間の通信プロトコルとして、ＤＮＳ（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ）を利用できる。この場合、ブラウジングクライアント部９１には、予め接続先のブラウジングサーバ部９３のホスト名が与えられている。また、管理サーバ９２は、ブラウジングクライアント部９１のドメインを管理するＤＮＳサーバとして機能する。具体的な手順として、まず、ブラウジングクライアント部９１は、ブラウジングサーバ部９３に接続する際において、そのホスト名に紐づくアドレスをＤＮＳのリゾルバに問い合わせる。ＤＮＳのリゾルバは、ＲＦＣ１０３５に定められるプロトコルに従って、最終的に管理サーバ９２にブラウジングサーバ部９３のアドレス解決を依頼する。管理サーバ９２のデータベースには、予めＤＮＳのリゾルバのアドレスに対応する最寄りのブラウジングサーバ部９３のアドレスを登録しておく。管理サーバ９２は、ＤＮＳリゾルバからのアドレス解決の要求に対して、データベースを参照し、最寄りのブラウジングサーバ部のアドレスを回答する。これにより、ブラウジングクライアント部９１は、直近のブラウジングサーバ部９３に接続できる。
【００９２】
また、ＤＮＳ以外にも、ＨＴＴＰを始め、他のプロトコルを利用できる。また、位置情報として、ユーザ端末上のＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）から取得した位置情報（緯度・経度）を送信することもできる。また、アクセス回線契約時や、ブラウジングクライアント部９１のインストール時におけるユーザＩＤ発行（例えば、ＰＰＰ（Ｐｏｉｎｔ  ｔｏ  Ｐｏｉｎｔ  Ｐｒｏｔｏｃｏｌ）におけるユーザ認証時のＩＤ）時に、住所を登録しておくこともできる。この場合、管理サーバ９２への問い合わせの際に、そのユーザＩＤ（または登録住所そのもの）を位置情報として管理サーバ９２に送信する。また、携帯電話の３ＧネットワークにおけるＨＬＲ（Ｈｏｍｅ  Ｌｏｃａｔｉｏｎ  Ｒｅｇｉｓｔｅｒ）や、ＬＴＥネットワークにおけるＭＭＥ（Ｍｏｂｉｌｉｔｙ  Ｍａｎａｇｅｍｅｎｔ  Ｅｎｔｉｔｙ）の位置登録機能と連携して、ユーザ端末の位置を特定し、最寄りのブラウジングサーバ部９３を紹介することもできる。
【００９３】
ブラウジングクライアント部９１は、管理サーバ９２から接続先ブラウジングサーバ部９３のアドレスを得ると、指定されたアドレスのブラウジングサーバ部９３と接続し、Ｗｅｂブラウザ９７としての処理を開始する。本稿では、まず、ブラウジングクライアント部９１とブラウザジングサーバ部９３のそれぞれの構成要素とその基本的な動作内容について説明する。次に、図４のＷｅｂページを閲覧すると仮定した場合の処理の流れを示す。最後に、各構成要素の拡張手段について述べる。
【００９４】
図１４にブラウジングクライアント部９１の構成の一例を示す。ブラウジングクライアント部９１は、操作イベントフィルタ部３１と、操作イベント評価部３２と、レイアウト部３３と、描画部３４と、ＵＲＬ転送部３５と、を備える。
【００９５】
操作イベントフィルタ部３１は、ユーザから受け付けた操作イベントを、ブラウジングサーバ部９３に通知すべきか否かを判断する。この判断は、ブラウジングサーバ部９３から通知される操作イベントフィルタ設定に基づく。操作イベントフィルタ設定には、どの操作イベントがＷｅｂビュー上のどの領域で発生すると、ブラウジングサーバ部９３への通知が必要となる（または必要でない）かが示される。主に、ＤＯＭツリーに基づく処理（例えば、リンクのクリック）やブラウジングサーバ部９３のスクリプト評価部での評価に用いられる操作イベントがブラウジングサーバ部９３に通知される。一方、ブラウジングサーバ部９３のスクリプト評価部での評価が必要なく、ブラウジングクライアント部９１内でローカルに処理可能な操作イベントについては、ブラジンググクライアント部９１内の操作イベント評価部３２に通知される。また場合によっては、操作イベントフィルタ部３１において、操作イベントを複製し、ブラウジングサーバ部９３に通知すると同時に、ブラジングクライアント部９１の操作イベント評価部３２に通知する場合もある。
【００９６】
操作イベントフィルタ機能では、例えば、操作イベントの中で、ブランジングサーバ部９３の処理（スクリプト評価、レイアウト部でのレイアウトデータ等作成、等）が必要となる操作イベント（クライアント部内で完結しない操作イベント）を、ブランジングサーバ部９３に通知する。クライアント部内で完結しない操作イベントは、例えば、スクロールにより今まで表示されていなかった画面を表示するイベントのほか、マウス操作によりｊａｖａｓｃｒｉｐｔの実行イベントが呼ばれた等により、新たな画面描画が必要となる、もしくは、スクリプトの実行が必要となるイベントがある。
【００９７】
ここでは、操作イベントとして、マウスホイールを回転（マウスホイールイベント）に注目する。一般的に、マウスホイールを回転させると、Ｗｅｂビュー画面のスクロールが実施される。しかし、ＷｅｂページによってはマウスホイールイベントをＪａｖａＳｃｒｉｐｔ（登録商標）等によりスクリプト評価させ、特別な動作をさせる場合もある。また、スクロールについても、ブラウジングクライアント部９１が、ブラウジングサーバ部９３からＷｅｂページの全体の描画データを受け取っている場合はローカルでスクロールを完結できるが、描画データの一部のみを受け取っている場合はスクロールによって新たにＷｅｂビューに表示される領域の描画データをブラウジングサーバ部９３から取得する必要がある。
【００９８】
そこで、まず、ブラウジングサーバ部９３は、新しいＷｅｂページがロードされると、そのＨＴＭＬファイルを解析し、新たにロードされたＷｅｂページにおいて、マウスホイールイベントに対するスクリプト評価が実施されるか否か（ＪａｖａＳｃｒｉｐｔ（登録商標）の場合、ｏｎｍｏｕｓｅｗｈｅｅｌイベントに対するリスナがセットされているか否か）を判断する。そして、マウスホイールイベントに対するスクリプト評価が実施される場合は、マウスホイールイベントの通知が必要な旨を、操作イベントフィルタ設定としてブラウジングクライアント部９１に通知する。また、スクリプト評価が実施されない場合でも、Ｗｅｂページ全体の画面データがブラウジングクライアント部９１に送信できていない場合は、新たな画面データを送信するため、マウスホイールイベントの通知が必要な旨を操作イベントフィルタ設定に設定する。上記以外の場合は、デフォルトの動作として、マウスホイールイベントの通知は不要とする。この場合、ブラウジングクライアント部９１内で閉じてスクロールを実施する。
【００９９】
操作イベント評価部３２では、操作イベントに応じて、Ｗｅｂビューの画面をどのように更新すべきかをレイアウト部３３に通知する。例えば、マウスホイールイベントが生じた場合は、マウスホイールの回転方向と回転量に応じて、Ｗｅｂビューのスクロール方向とスクロール幅を指示する。
【０１００】
レイアウト部３３は、ブラウジングサーバ部９３から、サーバ描画データ、及び、クライアント用リソースを受け取る。サーバ描画データは、ブラウジングサーバ部９３において構成されたＷｅｂページ画面の描画データである。サーバ描画データは、圧縮したビットマップ画像として受け取ることもできる。また、サーバ描画データを描画命令（描画命令として例えば「座標（１０，２０）から座標（３０，５０）にまで黒色の２ｐｔの太さの線を引く」や「座標（２０，４０）から幅１００、高さ１５０の矩形を、赤色の４ｐｔの太さの線で描画する」などが考えられる。）のリストとして送信し、ユーザ端末においてユーザ端末上の描画ライブラリ（例えば、ｃａｉｒｏ（例えば、非特許文献３参照。）、ｊａｖａのＧｒａｐｈｉｃｓクラス（例えば、非特許文献４参照。）等）の命令に変換し描画することもできる。一方、クライアント用リソースは、ブラウジングサーバ部９３がＷｅｂサーバ９６から取得したリソースのうち、サーバ描画データ内に含まれていないが、ブラウジングクライアント部９１における画面描画に必要となるリソースである。更に、ブラウジングクライアント部９１は、これらのサーバ描画データ、およびクライアント用リソースをＷｅｂページのどの位置に配置すべきかを示す、クライアント用レイアウトデータをブラウジングサーバ部９３から受け取る。また、操作イベント評価部３２からの評価結果（スクロール方向、スクロール幅等）を基に、Ｗｅｂビュー上に表示すべき画面を構成する。これをレイアウトデータとして、描画部３４に通知する。
【０１０１】
本発明では、Ｗｅｂページの画面を構成するリソースのうち、どのリソースをブラウジングサーバ部９３で描画し（この場合、リソースはサーバ描画データの一部としてブラウジングクライアント部９１に送信される）、どのリソースをブラウジングクライアント部９１で描画するか（この場合、Ｗｅｂサーバから取得したリソースがそのままクライアント用リソースとしてブラウジングクライアント部９１に送信される）を柔軟に選択することができる。例えば、Ｗｅｂページに画像ファイルを表示する場合を考える。Ｗｅｂページで用いられる画像は、ＪＰＧ、ＰＮＧといった形式で圧縮されている。一方、ブラウジングサーバ部９３側で構成した画面である描画データも、そのままでビットマップ画像として転送するとサイズが大きすぎるため、何らかの手段で圧縮して送信することが必要である。したがって、画像ファイルをブラウジングサーバ部９３で描画する場合も、ブラウジングクライアント部９１側で描画する場合も、ユーザ端末上で画像の解凍処理が必要となり、ユーザ端末の負荷に大きな違いが生じない。ゆえに、本発明では、ブラウジングサーバ部９３上で構成する画面には画像ファイルが含まれないようにし、ブラウジングクライアント部９１において画像ファイルの描画を実施する。これにより、ブラウジングサーバ部９３において余分な解凍・再圧縮処理が発生しなくなり、ブラウジングサーバ部９３の収容効率が向上する。
【０１０２】
描画部３４では、レイアウトデータに基づき画面を描画する。描画結果は、描画データとしてＷｅｂビュー表示部９７２に通知されディスプレイ上に表示される。
また、ブラウジングクライアント部９１のＵＲＬ転送部３５は、ＵＲＬエントリ部９７１からＵＲＬが入力されると、それをブラウジングサーバ部９３に転送する。逆に、ＵＲＬ転送部３５は、ブラウジングサーバ部９３からＵＲＬを受け取ると、それをＵＲＬエントリ部９７１に通知し、Ｗｅｂブラウザの画面上にＵＲＬを表示させる。
【０１０３】
次に図１５にブラウジングサーバ部９３の構成を示す。ブラウジングサーバ部９３は、リクエスト送信部４１と、レスポンス受信部４２と、ＨＴＭＬ解析部４３と、レイアウト部４４と、描画部４５と、操作イベント評価部４６と、スクリプト評価部４７と、を備える。このうち、リクエスト送信部４１、レスポンス受信４２部、操作イベント評価部４６、スクリプト評価部４７については、図３に示した通常のＷｅｂブラウザ９７と同様に振る舞う。
【０１０４】
本発明のＨＴＭＬ解析部４３は、図３に示した通常のＷｅｂブラウザ９７のＨＴＭＬ解析部１３の処理に、ブラウジングクライアント部９１への操作イベントフィルタ設定の送信という新たな処理が加わる。すなわち、新たなＷｅｂページがロードされるたびに、そのＤＯＭツリーを解析し、どの操作イベントがＷｅｂビューどの領域で発生するとブラウジングサーバ部９３への通知が必要となるかを抽出する。そして、その抽出結果を、操作イベントフィルタ設定として、ブラウジングクライアント部９１に送信する。
【０１０５】
レイアウト部４４は、ブラジングクライアント部９１の説明にて前述したように、Ｗｅｂページの画面のうち、どこまでをブラウジングサーバ部９３で描画し、どこからをブラウジングクライアント部９１で描画するべきかを決定する。そして、ブラウジングサーバ部９３で描画すべき部分については、レイアウトを構成し、サーバ用レイアウトデータとしてブラウジングサーバ部９３の描画部４５に通知する。また、ブラウジングクライアント部９１で描画すべき部分については、サーバで描画されなかったリソースをクライアント用リソースとしてブラウジングクライアント部９１に送信するとともに、サーバで描画される画面（サーバ描画データ）とクライアント用リソースとをＷｅｂページのどの位置に配置すべきかを、クライアント用レイアウトデータとしてブラウジングクライアント部９１に送信する。
【０１０６】
描画部４５は、サーバ用レイアウトデータに基づき、サーバで構成するべき画面を描画する。そしてその結果を、サーバ描画データとしてブラウジングクライアント部９１に送信する。
【０１０７】
次に、図４に示すＷｅｂページを閲覧する場合を例にとり、本発明の具体的な処理の流れを説明する。
まず、ユーザは、ブラウジングクライアント部９１上のＷｅｂブラウザのＵＲＬエントリ部に、ＵＲＬ（本例では、ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／ｉｎｄｅｘ．ｈｔｍｌ）を入力する。入力されたＵＲＬは、ブラウジングクライアント部９１のＵＲＬ転送部３５に通知され、更にＵＲＬ転送部３５は、そのＵＲＬをブラウジングサーバ部９３に転送する。
ブラウジングサーバ部９３のリクエスト送信部は、受け取ったＵＲＬに紐づくリソースを取得するため、ＨＴＴＰリクエストを作成し、Ｗｅｂサーバ９６に送信する。
Ｗｅｂサーバ９６は、図５に示すＨＴＭＬファイルをＨＴＴＰレスポンスとしてブラウジングサーバ部９３に返す。
【０１０８】
ブラウジングサーバ部９３のレスポンス受信部４２は、Ｗｅｂサーバ９６から受信したＨＴＴＰレスポンスからＨＴＭＬファイルを取り出し、リソース記憶部２１に格納し、ＨＴＭＬ解析部４３に送信する。
ＨＴＭＬ解析部４３は、受け取ったＨＴＭＬファイルを解析する。そして、ＤＯＭツリーを構築しＤＯＭツリー記憶部２２に格納する。また、ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｃｏｍ／１．ｊｐｇ〜３．ｊｐｇの追加取得をリクエスト送信部４１に依頼する。また、ＨＴＭＬ解析部４３は、ブラウジングクライアント部９１から通知すべき操作イベントを抽出し、それを、操作イベントフィルタ設定としてブラウジングクライアント部９１に送信する。本例では、小さい画像にマウスカーソルが触れると、大きい画像が触れた画像に切り替わる。ゆえに、操作イベントフィルタ設定は、図１６のように表される。
【０１０９】
Ｗｅｂページの描画に必要なリソースが揃うと、つぎに、レイアウト部４４において、Ｗｅｂページの画面を構成する。ここでレイアウト部４４は、どこまでをブラウジングサーバ部９３で描画すべきか、そしてどこからをブラウジングクライアント部９１で描画すべきかを決定する。本例では、画像ファイルの描画はブラウジングクライアント部９１で描画するものとし、画像ファイル以外の描画をブラウジングサーバ部９３で実施するとする。本例において、ブラウジングサーバ部９３の描画部４５に出力されるレイアウトデータを図１７に示す。また、図１８に、ブラウジングクライアント部９１に送信されるクライアント用レイアウトデータを示す。また、レイアウト部４４は、クライアント用リソースとして、画像１、２及び３を示す１．ｊｐｇ、２．ｊｐｇ及び３．ｊｐｇの各画像ファイルをブラウジングクライアント部９１に送信する。サーバ用レイアウトデータ、クライアント用レイアウトデータは、レイアウト記憶部に格納される。
【０１１０】
ブラウジングサーバ部９３の描画データは、図１７のレイアウトデータに基づき画面を描画する。そして得られた描画データを、サーバ描画データとしてブラウジングクライアント部９１に送信する。
【０１１１】
ブラウジングクライアント部９１のレイアウト部３３は、ブラウジングサーバ部９３からクライアント用レイアウトデータ、サーバ描画データ、クライアント用リソースを受け取ると、クライアント用レイアウトデータに基づき、Ｗｅｂページの画面を構成する。そして、ブラウジングクライアント部９１の描画部３４は、レイアウトデータに基づき、Ｗｅｂビュー表示部９７２に、Ｗｅｂページの画面を描画する。結果、Ｗｅｂページ表示部９７２には、通常のＷｅｂブラウザ９７と同じく、図１８の画面が表示される。
【０１１２】
画面描画後、ユーザがＷｅｂビュー画面に操作を加えると、操作イベントがブラウジングクライアント部９１の操作イベントフィルタ部３１に伝えられる。操作イベントフィルタ部３１では、操作イベントフィルタ設定に基づき、操作イベントをローカルの操作イベント評価部３２、または、ブラウジングサーバ部９３の操作イベント評価部４６に送信する。本例では、図１６の設定に従って、小さい画面上にマウスカーソルが触れると、マウスオーバイベントがブラウジングサーバ部９３に送信される。ここでは、ユーザは真ん中の画像２の領域に触れたとする。
【０１１３】
ブラウジングサーバ部９３の操作イベント評価部４６は、レイアウトデータ記憶部２３に記憶しているレイアウトデータを参照し、マウスオーバイベントが発生した座標から対応するＨＴＭＬ要素を特定する。そして、その要素に関連付けられたイベント処理を実行する。本例では、イベント評価部４６は、操作イベントに対応するＨＴＭＬ要素として、画像２を表示するＩＭＧ要素を特定し、スクリプト評価部４７にＪａｖａＳｃｒｉｐｔ（登録商標）関数ｓｅｔＰｉｃｔｕｒｅ（‘．／２．ｊｐｇ’）の実行を依頼する。
スクリプト評価部４７は、ｓｅｔＰｉｃｔｕｒｅ（‘．／２．ｊｐｇ’）を実行する。そして、ＨＴＭＬ解析部４３に対して、下部の大きい画像のＵＲＬを”．／２．ｊｐｇ”とするようＤＯＭツリーの書き換えを指示する。
ＨＴＭＬ解析部４３は、スクリプト評価部４７の指示に基づきＤＯＭツリーを更新し、レイアウト部４４にレイアウトを依頼する。
【０１１４】
レイアウト部４４では、更新されたＤＯＭツリーに従って、レイアウトを更新する。本例では、クライアント用レイアウトデータにおける下部拡大画像の参照ＵＲＬが変更される（図１９）。そして、更新後のクライアント用レイアウトデータがブラウジングクライアント部９１に通知される。このとき、サーバ描画データ、クライアント用リソースには変更がないため、ブラウジングクライアント部９１に再送しない。このように、本発明では、変更があったデータのみブラウジングクライアント部９１に送信することで、イベント操作に伴う画面更新のための通信データ量を削減する。
【０１１５】
ブラウジングクライアント部９１では、更新されたクライアント用レイアウトデータを受け取ると、レイアウト部３３が、既に受領済みのサーバ描画データ、クライアント用リソースを参照し、レイアウトデータを作成する。そして、描画部３４において、図１９に示すように、Ｗｅｂビュー画面下部の拡大画像を“．／２．ｊｐｇ”に変更した画面を描画する。
【０１１６】
本発明の構成要素の拡張方法について個別に論じる。
前述の実施例では、ユーザ端末においてブラウジングを開始する際に、管理サーバ９２に最寄りのブラウジングサーバ部９３を問い合わせていた。しかし、ブラウザの閲覧中にユーザ端末が移動し、最寄りのブラウジングサーバ部９３が変更になることも考えらえる。ゆえに本発明では、ブラウザの閲覧中に、ユーザ端末の移動に応じてブラウジングサーバ部９３を変更する機能を備えることができる。
【０１１７】
例えば、ユーザ端末のブラウザクライアント部９１は、定期的に、ＧＰＳから現在の位置を取得し、その位置情報（経度、緯度）を管理サーバ９２に送信することで、現在の最寄りのブラウジングサーバ部９３を問い合わせる。管理サーバ９２への問い合わせの結果、もし、現在接続しているブラウジングサーバ部９３とは異なるブラウジングサーバ部９３を紹介された場合、ブラウジングクライアント部９１は、新しく紹介されたブラウジングサーバ部９３に接続先を切り替える。このときの接続先の切り替え方法として、以下のいずれかを実施できる。すなわち、
【０１１８】
接続先の切り替え方法１：現在のページから切り替え先のブラウジングサーバ部９３で閲覧する。すなわち、ブラウジングクライアント部９１は、現在接続しているブラウジングサーバ部９３に対して、閲覧しているページの閲覧状態（ＤＯＭツリー、レイアウトデータ、リソース等）を切り替え先のブラウジングサーバ部９３に送信するよう指示する。現在の接続先ブラウジングサーバ部９３から切り替え先のブラウジングサーバ部９３へのページ閲覧状態の送信が完了すると、ブラウジングクライアント部９１は、現在の接続先ブラウジングサーバ部９３との接続を終了する。そして、切り替え先のブラウジングサーバ部９３に接続する。
【０１１９】
接続先の切り替え方法２：新しいページから切り替え先のブラウジングサーバ部９３で閲覧する。すなわち、ブラウジングクライアント部は、現在の接続先サーバに対してブラウジングサーバ部９３の切替えを希望する旨を通知する。現在の接続先ブラウジングサーバ部９３は、その後、グラウジングクライアント部９１からのＵＲＬの受信、またはリンクへのクリック等の新規ページへの遷移のトリガとなるイベントを検知すると、ブラウジングクライアント部９１に新しいページへの遷移開始とそのページのＵＲＬを通知する。ブラウジングクライアント部９１は、通知を受け取ると、現在の接続先ブラウジングサーバ部９３の接続を切断する。そして、切り替え先のブラウジングサーバ部９３と接続する。そして、通知されていた新しいページのＵＲＬを切り替え先のブラウジングサーバ部９３に送信する。
後者の接続先の切り替え方法は、前者の方法より、ブラウジングサーバ部９３間の情報の受け渡しが少ないため、高速に切り替えを実施できるという利点がある。
【０１２０】
前述の実施例では、ブラウジングクライアント部９１が管理サーバ９２に対して問い合わせると、その結果として管理サーバ９２から最寄りのブラウジングサーバ部９３が回答されるとしていた。このとき、管理サーバ９２におけるブラウジングサーバ部９３の選択方法を、ブラウジングサーバ部９３間の負荷の均衡化を図るように拡張することができる。例えば、次のような手段を備えることができる。なお、ブラウジングサーバ部９３の負荷を測る指標として、同時接続しているブラウジングクライアント部９１の数、ブラウジングサーバ部９３のＣＰＵ使用率、メモリ使用量、等が考えられる。
【０１２１】
ブラウジングサーバ部９３の選択方法１：ブラウジングサーバ部９３の負荷に上限を設定する。管理サーバ９２は、ブラウジングクライアント部９１から問い合わせを受け取ると、まず、そのブラウジングクライアント部９１から最も近いブラウジングサーバ部９３から順に、現在の負荷を問い合わせる。ブラウジングサーバ部９３の負荷が上限以上であるならば、その次に近いブラウジングサーバ部９３に対して現在の負荷を問い合わせる。これを、負荷の上限の設定値を下回るブラウジングサーバ部９３が見つかるまで繰り返す。そして、負荷の上限の設定値を下回るブラウジングサーバ部９３を見つけると、それをブラウジングクライアント部９１に回答する。
ブラウジングサーバ部９３の選択方法２：ブラウジングクライアント部９１とブラウジングサーバ部９３との近さに上限を設定する。ここで近さを測る指標として、物理的な距離や、予想される伝送遅延時間が挙げられる。管理サーバ９２は、ブラウジングクライアント部９１から問い合わせを受け取ると、そのブラウジングクライアント部９１との近さが上限を下回るブラウジングサーバ部９３に対して、現在の負荷を問い合わせる。そして、問い合わせの結果、最も負荷が低いブラウジングサーバ部９３を、ブラウジングクライアント部９１に対して回答する。
【０１２２】
上述の例では、管理サーバ９２は、ブラウジングクライアント部９１から接続先ブラウジングサーバ部９３の問い合わせを受け取ったことを契機として、各ブラウジングサーバ部９３の負荷を問い合わせている（オンデマンドな負荷問い合わせ）。これに対して、予め管理サーバ９２は、ブラウジングサーバ部９３の負荷を定期的に問い合わせておき、ブラウジングクライアント部９１からの問い合わせを受け取った際には、これまでの定期的な負荷問い合わせのうち最新の結果を用いて、ブラウジングサーバ部９３を選択することができる（定期的な負荷問い合わせ）。定期的な負荷問い合わせは、オンデマンドな負荷問い合わせより負荷の正確性は低くなる。その一方で、ブラウジングクライアント部９１からの問い合わせに対して、ブラウジングサーバ部９３への問い合わせなしに即時に接続先を選択できるため、ブラウジングクライアント部９１に接続先ブラウジングサーバ部９３を回答するまでの時間を短縮できる。
本発明では、前述したように、ブラウジングサーバ部９３で描画するリソースと、ブラウジングクライアント部９１で描画するリソースを柔軟に選択できる。この選択を、ユーザ端末のハードウエア構成に基づき選択することができる。
【０１２３】
例えば、動画像ファイルの描画を例にとる。今日、動画像閲覧の需要の高さから、比較的、低廉なユーザ端末であっても、動画像ファイルのハードウエアデコーダが搭載されるケースが多くなっている。この場合、動画像ファイルをエンコードされたままの形式でブラウジングクライアント部９１に転送しても、ユーザ端末上のデコード処理がボトルネックとならない。そこで、本発明の拡張として、図１４のブラウジングクライアント部９１に、ハードウエア構成検査部を追加することができる。例えば、ハードウエア構成検査部は、ブラウジングクライアント部の起動時において、当該ユーザ端末のＣＰＵ性能やハードウエアデコーダの有無を検査する。そして、ブラウジングクライアント部９１がブラウジングサーバ部９３と新規に接続しブラウジング開始する際に、調査したユーザ端末のハードウエア構成をブラウジングサーバ部９３のレイアウト部４４に通知する。そして、ブラウジングサーバ部９３のレイアウト部４４は、ハードウエアデコーダが搭載されている、またはＣＰＵ性能が高いブラウジングクライアント部９１のレイアウトデータ記憶部２２に、動画像を含むＷｅｂページを送信する場合は、以下のように実施する。すなわち、
・動画像の描画領域を空白にしたサーバ描画データ、
・クライアント用リソースとして、未デコードの動画像ファイル、及び
・ユーザ端末上でデコードした動画像の描画領域を指示したクライアント用レイアウトデータ
をブラウジングクライアント部９１のレイアウトデータ記憶部２２に送信する。そして、ブラウジングクライアント部９１の描画部３４において、クライアント用リソースとして受信した動画像ファイルをデコードし、デコードした結果得られた画像をクライアント用レイアウトに指示される動画像の描画領域にはめ込む。
【０１２４】
また逆に、ユーザ端末にハードウエアデコーダが搭載されておらず、かつＣＰＵ性能も低い場合は、ブラウジングサーバ部９３で動画像をデコードする。そして、ユーザ端末のＣＰＵ性能に合わせて、解像度やフレームレートを落としたうえで、デコードした画面をサーバ描画データとしてブラウジングクライアント部９１のレイアウト部３３に送信する。
【０１２５】
ブラウジングサーバ部９３から出力されるサーバ描画データは、必ずしも１つの画像として送信する必要はなく、図２０に示すように、ブラウジングサーバ部９３が構成するＷｅｂページの画面を複数のレイヤに分けて、各レイヤ毎にサーバ描画データを送信してもよい。例えば、ＨＴＭＬのスタイルシートの仕様であるＣＳＳでは、ＨＴＭＬの構成要素の配置に関するプロパティとしてｐｏｓｉｔｉｏｎプロパティ（例えば、非特許文献５参照）がある。そして、ｐｏｓｉｔｉｏｎプロパティの値として、Ｗｅｂビュー画面がスクロールしても、Ｗｅｂビュー上の表示位置を固定できるｆｉｘｅｄを指定できる。図２０にｐｏｓｉｔｉｏｎプロパティにｆｉｘｅｄを指定した場合のＷｅｂビューの表示例を示す。図２０に示すように、Ｗｅｂビューが下方向にスクロールすると、ｐｏｓｉｔｉｏｎプロパティがｆｉｘｅｄ以外のレイヤＢでは、スクロールに合わせて下方の内容が表示される。しかし、ｐｏｓｉｔｉｏｎがｆｉｘｅｄであるレイヤＡでは、スクロール位置に依存しないで、常に同じ内容（図２０の例では、右上に”ｆｉｘｅｄ”の文字列）が表示される。
【０１２６】
仮に、図２０の例において、ｐｏｓｉｔｉｏｎプロパティにｆｉｘｅｄが指定されたＨＴＭＬの構成要素（レイヤＡ）と、それ以外の構成要素（レイヤＢ）とを１つの画像として描画し、それをサーバ描画データとしてブラウジングクライアント部９１に送信した場合を考える。この場合、スクロール操作が発生するたびに、図２１に示すように、サーバ描画データにおける文字列”ｆｉｘｅｄ”の位置が変わるため、ブラウジングサーバ部９３のレイアウト部４４・描画部４５においてサーバ描画データを再作成し、ブラウジングクライアント部９１に送信する必要が生じる。そこで本発明では、図２２に示すように、ブラウジングサーバ部９３のレイアウト部４４において、ｆｉｘｅｄが指定された構成要素と、それ以外の構成要素とをレイヤ分けてサーバ用レイアウトデータを作成し、描画部４５においてそれぞれぞれのレイヤ毎に画像を描画し、それぞれのレイヤの描画結果をサーバ描画データとしてブラウジングクライアント部９１に送る。また、ブラウジングサーバ部９３のレイアウト部４４は、各レイヤの位置関係を示したクライアント用レイアウトデータを、ブラウジングクライアント部９１に送る。図２０の例に対して、レイヤ毎にサーバ描画データを分けて送信した場合の、サーバ描画データ、クライアント用レイアウトデータを図２２に示す。図２２に示すように、レイヤＡとレイヤＢについては、それぞれ別の画像として、サーバ描画データが作成される。また、クライアント用レイアウトデータによって、レイヤＢの表示内容がスクロール位置に合わせて変化するように、レイヤＢをスクロール位置に合わせて平行移動させる（図２２中、平行移動ｘ＝−ｓｘ，ｙ＝−ｓｙ）これにより、ユーザ操作によってスクロールが発生しても、新たにブラウジングサーバ部９３からデータを受け取ることなく、既にブラウジングクライアント部９１にて受領済みのサーバ描画データとクライアントレイアウト用データのみでスクロールに対応できるようになる。その結果、ブラウジングクライアント部９１とブラウジングサーバ部９３間の通信量を削減し、かつスクロール時の応答時間も短縮できる。
【０１２７】
なお、管理サーバ９２は、従来技術である操作イベントに対してサーバで構成した画面をユーザ端末側に転送するシンクライアント、Ｗｅｂページを軽量なフォーマットに変換する技術及び折戸の提案方式でも適用可能である。
【０１２８】
（実施形態２）
一人のユーザが複数の端末で同時にＷｅｂブラウザサービスを利用したい場合や、複数のユーザが同時に共通のＷｅｂブラウザサービスを利用したい場合がある。例えば、Ｗｅｂサイトを大きな画面に表示したり、表示用の画面と操作用の画面を個別の端末に表示したり、Ｗｅｂサイトを離れた友人や家族と一緒に見たりする場合である。本実施形態では、そのような場合に対応できるよう、１つのブラウジングサーバ部９３に対して複数のブラウジングクライアント部９１を連携させる。
【０１２９】
本内容は、Ｗｅｂブラウジングプログラム（一般的にＷｅｂブラウザ）をサーバ・クライアントのプログラムに機能分割して、サーバ上のユーザや端末単位でサーバプログラムを実行させることで生成するブラウザプロセスと、端末上で動作するクライアントプログラムとを連携させることでＷｅｂブラウザサービスを実現する形態において、ユーザがＷｅｂブラウザサービスを利用しているときに、ブラウジングサーバ部９３上のブラウザプロセスを他のユーザの端末上で動作するブラウジングクライアント部９１と連携させることで、Ｗｅｂブラウザサービスの閲覧や操作を共有させる。
【０１３０】
図２３に、本実施形態に係るＷｅｂブラウジングシステムの一例を示す。本実施形態に係るＷｅｂブラウジングシステムは、統合管理部５０が複数のブラウジングサーバ部９３−１、９３−２及び９３−３と、ブラウジングサーバ管理部５２と、ブラウザ共有連携部５１を備える。各ブラウジングサーバ部９３−１、９３−２及び９３−３は、実施形態１で説明したブラウジングサーバ部９３の各機能を実行する。ブラウジングサーバ管理部５２は、各ブラウジングサーバ部９３−１、９３−２及び９３−３を管理する。ブラウザ共有連携部５１は、ユーザ端末からの共有招待や共有受託の通知情報を管理して、ブラウジングサーバ部９３−１、９３−２及び９３−３を複数のクライアントプログラムに紐づける。
【０１３１】
これにより、本実施形態に係るＷｅｂブラウジングシステムは、複数のブラウジングクライアント部９１におけるＷｅｂブラウザの閲覧や操作を共有させる。共有させる操作は、例えば、Ｗｅｂサイト内のスクロール操作、ポインティング又はＷｅｂサイトの切り替えである。例えば、ユーザ端末９１−２がスクロールをすると、ユーザ端末９１−１及び９１−３の画面もそれに連動して動く。
【０１３２】
本実施形態に係る発明が対象とするＷｅｂブラウザサービスでは、ブラウザ共有連携部５１が、共有グループ管理部５１１と、クライアントプログラム連携部５１２と、ブラウジングサーバ連携部５１３と、ワンタイムセッションＩＤ管理部５１４と、を備える。ブラウジングサーバ管理部５２は、何らかのユーザ認証や端末認証を前提として、ユーザとブラウジングクライアント部９１とを関連付けて管理している。ユーザとして管理する情報としては、ブラウジングクライアント部９１を一意に特定できものであればよく、ユーザ認証によるユーザＩＤや端末認証による端末機器のシリアル番号やＭＡＣアドレス等が利用できる。そして、ブラウジングサーバ部９３におけるブラウザプロセスとブラウジングクライアント部９１におけるクライアントプログラムとの連携処理では、ブラウジングサーバ部９３あるいはブラウジングクライアント部９１が一時的に払い出すセッションＩＤを用いて、利用中のユーザがブラウジングサーバ部９３の管理しているブラウジングクライアント部９１と一致しているか否かの照合を行う。これにより、他のユーザからの不正アクセスを除外するようにしている。そのため、クライアントプログラムとブラウザプロセスではセッションＩＤが保持される。以下におけるユーザの動作については、ユーザ端末上のブラウジングクライアント部９１が実行するクライアントプログラムにおける処理を意図している。
【０１３３】
共有グループ管理部５１１は、事前に登録されたユーザ毎に共有相手として選択できる複数のユーザを共有グループとして管理する。ここで、ユーザ毎の共有相手リストの登録は、利用者の登録操作によって格納するだけでなく、別システムとの連携によって格納するなどしてもよい。そして、共有を招待する共有招待ユーザ端末９１−２は、統合管理部５０から共有グループを取得し、共有相手と共有操作権限、その他関連情報を設定して、サーバに共有招待の要求を通知する。
【０１３４】
共有招待ユーザ端末９１−２は、共有を招待する際に共有操作権限を設定することで、共有受託ユーザ端末９１−１及び９１−３に与える操作内容を制限できるようにする。操作権限の具体例としては、操作なし（閲覧のみ）、スクロール、クリック、Ｗｅｂページ遷移（リロード、進む戻る）、文字入力、ブックマーク登録、全ての操作といった一般的なＷｅｂブラウザの全ての操作内容を対象とし、操作内容の組み合わせにて権限設定することもできる。また、共有操作権限は共有受託ユーザ端末９１−１及び９１−３毎に異なる権限を設定することにより、よりきめ細かい共有を設定できる。さらに、同一ユーザの異なるユーザ端末９１−１及び９１−２で共有する場合には、全操作可能にするなど、共有受託ユーザや端末によって、事前設定をすることで、共有操作権限の設定を簡易化することも可能である。
【０１３５】
図２４に、本実施形態に係るＷｅｂブラウジング方法のシーケンス図を示す。
ステップＳ１０１は、Ｗｅｂブラウザサービス利用中（セッションＩＤ）である。ユーザ（あ）の利用する共有招待ユーザ端末９１−２が、サーバ・クライアントのプログラムに機能分割されたＷｅｂブラウザプログラムを利用している。その際、事前に払い出されるセッションＩＤをブラウジングクライアント部９１−１、９１−２、９１−３とブラウジングサーバ９３−１、９３−２、９３−３で保持している。
【０１３６】
ステップＳ１０２は、共有相手リスト取得手順である。ユーザ端末９１−２を利用するユーザ（あ）がユーザ端末を増やす場合、共有招待ユーザ端末９１−２が共有相手リストをブラウザ共有連携部５１から取得する。ユーザ毎の共有相手リストは、事前にブラウザ共有連携ＤＢに格納されている場合の例で示す。
【０１３７】
ステップＳ１０４は、共有招待通知手順である。共有招待ユーザ端末９１−２は、取得した共有相手リストから共有相手と共有権限を選択して、ブラウザ共有連携部５１に対して共有招待通知を行う。このとき、共有招待ユーザ端末９１−２の画面に取得した共有相手リストが表示される。例えば、ユーザ端末９１−１を示す「ＴＶ」とユーザ端末９１−３を示す「い」が表示される。ユーザ（あ）が「ＴＶ」を選択すると、共有招待ユーザ端末９１−２は、共有相手と共有権限を指示する共有招待通知をブラウザ共有連携部５１へ送信する。
【０１３８】
ステップＳ１０５は、ブラウザプロセス情報取得手順である。ブラウザ共有連携部５１は、共有招待ユーザ端末９１−２のブラウザプロセス情報をブラウジングサーバ管理部５２から取得する。ブラウザプロセス情報は、ブラウジングサーバ部９３を利用しているブラウジングクライアント部９１の情報であり、例えば、共有招待ユーザ端末９１−２のＩＤ＝ＩＤ００２である。
【０１３９】
ステップＳ１０６及びステップＳ１０７は、共有情報通知手順である。ブラウザ共有連携部５１は、共有招待通知を受け取った際に、ワンタイムセッションＩＤ管理部５１４からワンタイムセッションＩＤを払い出し（Ｓ１０６）、共有招待ユーザ端末９１−２に関するブラウザプロセス情報と共有受託ユーザＩＤ、ワンタイムセッションＩＤ等を介して、共有招待ユーザ端末９１−２および共有受託ユーザ端末９１−１とを関連付けてブラウザ共有連携ＤＢに登録する（Ｓ１０７）。ここで、ブラウザプロセス情報は、例えば、共有招待ユーザＩＤ及びセッションＩＤである。ブラウザプロセス情報は、ＩＤに限らず、ブラウジングサーバ部の状態、サーバアドレス、ポート番号であってもよい。ここで、ワンタイムセッションＩＤは、他に重複することがない一意のＩＤであればよく、一定長のランダム数値やユーザＩＤや端末情報に現在時刻を加味して出力するハッシュ値などが考えられる。
【０１４０】
ステップＳ１０８は、共有依頼通知手順である。ブラウザ共有連携部５１は、共有受託ユーザ端末９１−１に対して共有依頼通知を行い、共有招待ユーザおよびワンタイムセッションＩＤを通知する。また、ワンタイムセッションＩＤは、共有受託ユーザからブラウザ共有連携部５１に対して問い合わせて取得してもよい。共有依頼通知の際は、ワンタイムセッションＩＤを通知せずに、共有受託ユーザ端末９１−１からブラウザ共有連携部５１に対して問い合わせて取得するとしてもよい。共有受託の承諾／拒否は、特定のユーザや共有権限の範囲に関する承諾／拒否を含んでいてもよい。
【０１４１】
ステップＳ１１４は、共有受託通知待機手順である。ブラウザ共有連携部５１は、共有受託ユーザ端末９１−１からの共有承諾通知を一定期間待機する。一定期間、共有承諾通知がない場合には、共有無効と判断して、ブラウザ共有連携ＤＢに登録したワンタイムセッションＩＤと関連付けた共有情報データを削除して、共有無効にする。
【０１４２】
ステップＳ１０９は、共有承諾通知手順である。共有を受託する共有受託ユーザ端末９１−１は、定期的な統合管理部５０への問い合わせ又はブラウザ共有連携部５１からの共有依頼通知によって、共有依頼に関する情報を受け取ると、共有招待ユーザや共有権限を確認して、共有受託の承諾／拒否を設定して、ブラウザ共有連携部５１に共有承諾を通知する（Ｓ１０９）。共有依頼に関する情報は、例えば、共有招待ユーザ名又はワンタイムセッションＩＤである。
【０１４３】
ステップＳ１１０は、共有情報通知手順である。ブラウザ共有連携部５１は、ブラウジングサーバ管理部５２に対して共有情報（ワンタイムセッションＩＤと共有権限等）を通知する。このとき、ブラウジングサーバ連携部５１３は、共有受託通知を受け取った際に、ワンタイムセッションＩＤと関連付けた登録情報から共有招待ユーザのブラウジングサーバ部９３を特定して、ブラウジングサーバ管理部５２に対して、共有操作権限、ワンタイムセッションＩＤ等を通知する。
【０１４４】
ステップＳ１１１は、共有情報設定手順である。ブラウジングサーバ管理部５２は、ブラウジングサーバ部９３−２に対してワンタイムセッションＩＤと共有権限を設定する。
【０１４５】
ステップＳ１１２は、ブラウジングサーバ共有接続情報送信手順である。ブラウザ共有連携部５１は、共有受託ユーザ端末９１−１に対して、共有招待ユーザ端末９１−２のブラウジングサーバ部９３−２の接続情報を通知する。
【０１４６】
ステップＳ１１３は、Ｗｅｂブラウザサービス共有開始手順である。共有受託ユーザ端末９１−１は、通知された接続情報（サーバアドレス、ポート番号）をもとに、ワンタイムセッションＩＤを用いて共有招待ユーザ端末９１−２のブラウジングサーバ部９３−２に共有接続を行う。
【０１４７】
これにより、共有受託ユーザ端末９１−１の端末上で動作するクライアントプログラムとの連携処理ではワンタイムセッションＩＤを用いるようにして、共有招待ユーザ端末９１−２が利用中のブラウジングサーバ部９３−２を共有受託ユーザ９１−１にも共有させることができる。
【０１４８】
共有開始後、共有招待ユーザ端末９１−２は共有受託ユーザ端末９１−１を選択して、共有を終了したり、権限を変更したりすることができる。また、共有招待ユーザ端末９１−２は、共有受託ユーザを選択して個別に共有を終了させたり、一括で全共有受託ユーザとの共有を終了させることができる。また、共有招待ユーザ端末９１−２がＷｅｂブラウザサービスの利用を終了した場合には、全ての共有受託ユーザの共有を終了させる。または、共有受託ユーザ端末９１−１が継続してＷｅｂブラウザサービスを利用させることもできる。
【０１４９】
ブラウザ共有連携部５１の備える構成の機能について改めて説明する。但し、同様の処理が行えれば、以下の構成に限定する必要はない。
共有グループ管理部５１１：ユーザ認証情報をもとにして、共有可能なユーザリスト（認証情報、ニックネーム等）をブラウザ共有連携ＤＢ上で管理する。そして、共有招待ユーザ端末（クライアントプログラム）９１−２からの要求に応じて、当該共有招待ユーザ端末９１−２の共有可能なユーザリストを応答する。
【０１５０】
ブラウジングサーバ連携部５１３：ブラウジングサーバ管理部５２と連携して、ブラウザプロセス情報（ブラウジングサーバ部９３の状態、サーバアドレス、ポート番号等）を取得し、共有情報（ワンタイムセッションＩＤと共有権限）を通知する。
【０１５１】
ワンタイムセッションＩＤ管理部５１４：共有招待通知を受けて、ワンタイムセッションＩＤを払い出す。そして、共有招待ユーザ端末９１−２および共有受託ユーザ端末９１−１及び９１−３のセッションＩＤを関連付けてブラウザ共有連携ＤＢに登録する。
【０１５２】
クライアントプログラム連携部５１２：クライアントプログラムと連携して、共有招待ユーザ端末９１−２からの共有招待通知（共有相手、共有権限）を受け取る。そして、該当する共有受託ユーザ端末９１−１及び９１−３に対する共有依頼通知を行う。その後、共有受託ユーザからの共有承諾通知を一定期間待機する。共有承諾通知がない場合には、ブラウザ共有連携ＤＢに登録した共有情報データを削除して、共有無効にする。共有受託ユーザ端末９１−１からの共有承諾通知を受け取る。そして、共有受託ユーザに対して共有接続するブラウジングサーバ部９３の接続情報（サーバアドレス、ポート番号等）を通知する。
【０１５３】
本実施形態に係る発明により、サーバ・クライアントのプログラムに機能分割して実現するＷｅｂブラウザの形態において、同一のブラウジングサーバ部９３に対して、設定された操作権限をもとに複数のクライアントプログラムから接続させ、複数のユーザ端末でＷｅｂブラウザの閲覧や操作を共有させることができる。それによって、ある１人のユーザが同じ場所で複数の端末を使ってＷｅｂブラウザの閲覧や操作の共有や複数のユーザが異なる場所でＷｅｂブラウザの閲覧や操作を共有することができる。
【０１５４】
また、共有操作権限を設定することにより、共有対象とする閲覧や操作をきめ細かく設定することができる。クライアントプログラムの関連付けを行うことにより、サーバプロセス・クライアントに機能分割されたブラウザプロセスを複数のユーザや端末で同時接続することができる。ワンタイムセッションＩＤを用いて利用者を関連付け、かつ共有するユーザ双方のセッションＩＤを公開することなく接続先情報を通知することにより、クライアントプログラムに対して共有先となるサーバプロセスの接続先情報を安全に通知することができる。
【０１５５】
なお、本実施形態では、ブラウジングサーバ部９３が１つの装置として動作する例について説明したが、ブラウジングサーバ部９３は、複数の装置を用いて構成されていてもよい。
【０１５６】
（実施形態３）
本実施形態に係るＷｅｂブラウジングシステムの全体図は図１２に示したとおりである。本実施形態に係る発明は、実施形態１及び２に係るＷｅｂブラウジングシステムと同様に、１つ以上のブラウジングクライアント部９１、管理サーバ部９２、及び１つ以上のブラウジングサーバ部９３がネットワーク９４に接続される。そして、ブラウジングサーバ部９３は、１つ以上のｗｅｂサーバ９６とインターネット９５を介して接続される。ここで、ブラウジングクライアント部９１は、ユーザが閲覧・操作するユーザ端末上で実行される。そして、Ｗｅｂブラウザの機能のうち、主にＷｅブラウザとしての画面の提示と、ユーザによる操作の受付けを担う。ここでは、説明のため、ブラウジングクライアント部９１は図２のＷｅｂブラウザ画面を提供するものとする。
【０１５７】
図２５及び図２６に、本実施形態に係るブラウジングサーバ部９３及びブラウジングクライアント部９１の一例を示す。本実施形態に係るブラウジングサーバ部９３では、観測部４８、処理決定部（不図示）及びストリーム生成部４９を備える。レイアウト部４４は処理決定部（不図示）を備える。本実施形態では、通知手順の前に有するブラウジングサーバ部選択手順において、観測部４８、処理決定部（不図示）及びストリーム生成部４９を実行させる。ブラウジングクライアント部では、観測部３５を備える。
【０１５８】
観測部４８は、ブラウジングクライアント部９１の観測部３５に対して、観測要求を送信する。ブラウジングクライアント部９１の観測部３５は、観測部４８からの観測要求に応じてブラウジングクライアント部９１及びユーザ端末の情報を読み取り、読み取った観測結果をブラウジングサーバ部９３の観測部４８に返送する。
【０１５９】
ここで、観測要求は、ブラウジングクライアント部９１の通信環境、負荷及び性能の少なくともいずれかを計算するために必要な情報を要求する旨の信号である。ブラウジングクライアント部９１の通信環境は、例えば、ブラウジングクライアント部９１の利用可能なネットワーク帯域、ユーザ端末の通信性能の情報、ＨＴＭＬの構造を解析した結果である。利用可能なネットワーク帯域、ユーザ端末の通信性能の情報の測定については、例えば、前者については例えば可用帯域推定技術（非特許文献７）、後者についてはスループット測定技術（非特許文献８）を使用する。ブラウジングクライアント部９１の負荷は、例えば、特定処理に関わるＣＰＵ使用率、メモリ使用量、測定時点でのＣＰＵ使用率、メモリ使用量である。ブラウジングクライアント部９１の性能は、例えば、ブラウジングクライアント部９１が配備されているユーザ端末のＣＰＵスペック、搭載メモリ量の情報である。
【０１６０】
なお、端末性能とネットワーク帯域等の情報は所定の処理量のイベントをブラウジングクライアント部９１で処理した応答時間や到着遅延時間から推定してもよい。また図で観測部４８はブラウジングクライアント部９１からの観測情報でユーザ端末の性能やネットワーク帯域の情報を取得しているが、ブラウジングクライアント部９１からの観測情報に限らなくとも良い。例えば、その少なくとも一部を契約情報から取得してもよい。この場合、これらの情報は契約情報を保持する部分（不図示）から取得する。また、ユーザ端末の性能やネットワーク帯域の情報の少なくとも一部を、ＭＡＣアドレスやＶＩＤ等から取得してもよい。この場合、ＭＡＣアドレスやＶＩＤ等を処理する箇所（不図示）からＭＡＣアドレスやＶＩＤ等を取得し、ＭＡＣアドレスやＶＩＤ等と端末性能やネットワーク帯域等の情報の対応情報を保持する部分（不図示）からの情報を対照することで取得する。観測部４８は、さらに、ブラウジングサーバ部９３の処理量を観測してもよい。
【０１６１】
本実施形態に係るＷｅｂブラウジングシステムの動作の一例を説明する。
ステップＳ２０１：レイアウト部４４は、ＵＲＬのみをユーザ端末に送信し、描画処理、ストリーム再生処理、ファイルのダウンロード処理を、全てブラウジングクライアント部９１で実施するか否かを決定し、ステップＳ２０２又はＳ２０３へ移行する。
ステップＳ２０２：全ての処理をブラウジングクライアント部９１で行う場合、レイアウト部４４は、ブラウジングクライアント部９１にＵＲＬを送信する。すると、ブラウジングクライアント部９１のレイアウト部３３は、受信したＵＲＬから描画データの生成、ストリーム再生処理、ファイルのダウンロード処理を行う。
ステップＳ２０３：全ての処理をブラウジングクライアント部９１で実施しない場合、レイアウト部４４は、Ｗｅｂページの画面を要素ごとに分ける。要素は、例えば、ストリームデータとして処理すべき要素、描画データにすべき要素、レイアウトデータを端末に送信すべき要素、リソースデータをブラウジングクライアント部９１に送信すべき要素である。レイアウト部４４は、ステップＳ２０１でのレイアウト部４４の決定に基づき、ストリームデータの生成、描画データの生成、レイアウトデータの生成、リソースデータの取得を行い、それぞれをブラウジングクライアント部９１に送信する。このとき、ストリーム生成部４９がストリームデータを送信する。そして、ブラウジングクライアント部９１のレイアウト部３３は、ブラウジングサーバ部９３から受信したＷｅｂページの画面の各要素について処理を行う。例えば、レイアウト部３３は、ストリームの再生、描画データの表示、レイアウトデータから描画データの生成、リソースデータから描画データの生成を行う。描画・再生部３４は、これらの処理結果を同一の画面に統合して表示する。
【０１６２】
ステップＳ２０１において、レイアウト部４４は、観測部４８の出力するブラウジングクライアント部９１の通信環境、負荷及び性能の少なくともいずれかの情報をもとに、ブラウジングサーバ部９３での処理を決定する。レイアウト部４４は、ＵＲＬをそのままブラウジングクライアント部９１に送信するのか、或いは、ＨＴＭＬコンテンツの表示に関わる処理の一部をブラウジングサーバ部９３で行うのか否かを決める。ＨＴＭＬコンテンツの表示に関わる処理の一部をブラウジングサーバ部９３で行う場合は、ＨＴＭＬコンテンツの要素ごとにブラウジングサーバ部９３での処理の内容を選択することができる。ここでＨＴＭＬコンテンツの要素は、画像、動画及び文章などの、Ｗｅｂページに含まれる各オブジェクトをいう。複数のＨＴＭＬコンテンツの要素について同一の処理を行うことも可能である。
【０１６３】
ブラウジングサーバ部９３での処理の決定に際し、レイアウト部４４は、ブラウジングクライアント部９１の負荷及び性能の少なくともいずれかに基づいてブラウジングクライアント部９１の処理時間を推定する。そして、レイアウト部４４は、ブラウジングクライアント部９１の処理時間が短い場合はブラウジングサーバ部９３で処理を行い、ブラウジングクライアント部９１の負荷が小さい場合はブラウジングサーバ部９３で処理を行わない。このとき、ブラウジングサーバ部９３の負荷や通信環境を考慮することが好ましい。具体的には、ブラウジングサーバ部９３の負荷が閾値に到達している場合、利用可能な帯域やスループットが閾値に到達している場合は、ブラウジングサーバ部での処理を行わない。
【０１６４】
ブラウジングサーバ部９３での処理の決定は、例えば、以下を指標に用いてもよい。
・現在利用中のネットワークの状態が所定の閾値を超過又は到達しているか。ネットワークの状態は、例えば、ブラウジングクライアント部９１の使用可能な通信量のうちの使用率であり、平均値又はピーク値であってもよい。ネットワークの状態が閾値を超過又は到達している、例えば使用率が８０％を超過又は到達しているか否かである。
・処理の一部をブラウジングサーバ部９３で行った場合に、ネットワークの状態が平均値又はピーク値で所定の閾値を超過又は到達するか。
・ブラウジングサーバ部９３の処理負荷が平均値又はピーク値で所定の閾値（例えば、負荷率８０％）を超過又は到達しているか。
・処理の一部をブラウジングサーバ部９３が行った場合に、ブラウジングサーバ部９３の処理負荷が平均値又はピーク値で所定の閾値を超過又は到達するか。
・ブラウジングクライアント部９１の性能が所定の閾値以下であるか。
・ブラウジングクライアント部９１の処理負荷が平均値又はピーク値で所定の閾値（例えば、負荷率８０％）を超過又は到達しているか。
・処理の一部をブラウジングサーバ部９３が行わない場合に、ブラウジングクライアント部９１の処理負荷が平均値又はピーク値で所定の閾値を超過又は到達するか。
・処理の一部をブラウジングサーバ部９３が行った場合のネットワーク帯域の消費量やブラウジングサーバ部９３の処理量が所定の閾値よりも大きいか。
・処理の一部をブラウジングサーバ部９３が行った場合のネットワーク帯域の消費量やブラウジングサーバ部９３の処理量が他のコンテンツと比較して大きいか。
ブラウジングサーバ部９３での処理の決定は、これらのいずれか一つの指標またはこれらの内のいくつか又は全ての指標の加重平均等の統計処理により決定してもよい。なお、レイアウト部４４は、従来どおり、ＨＴＭＬコンテンツの要素のみから、ブラウジングサーバ部９３での処理を決めることもできる。
【０１６５】
ブラウジングサーバ部９３における処理の内容の選択は、描画データを生成する、レイアウトデータを生成する、リソースデータを取得・提供する、ストリームデータを生成する、の中の一つ以上の中から行う。ネットワーク帯域の消費量が所定の閾値よりも小さい又はブラウジングサーバの処理量が所定の閾値よりも大きい又はＷｅｂページの他の要素と比較して大きい要素であれば、「描画処理、ストリーム再生処理」以外の要素であってもブラウジングクライアント部９１で実施してもよい。
【０１６６】
ストリーム生成部４９は、レイアウト部４４の決定したブラウジングサーバ部９３での処理に応じたストリームを生成してブラウジングクライアント部９１へ送信する。ブラウジングクライアント部９１では、ブラウジングサーバ部が出力したデータによって、適切に描画・ストリームデータの再生を行う。
【０１６７】
観測部４８は、さらに、ＨＴＭＬコンテンツの表示に関わる処理のうちの特定処理をブラウジングクライアント部９１が行う負荷を観測したり、ブラウジングクライアント部の性能を観測したりしてもよい。特定処理は、ブラウジングクライアント部９１に負荷を与える処理であり、例えば、描画処理又はストリーム再生処理である。観測部４８の観測する負荷は、例えば、特定処理を行う回数又はＨＴＭＬコンテンツの表示回数に対する比率であり、観測された現在値を用いてもよいし、平均等の統計値を用いてもよいし、増減率等に基づく予測値を用いてもよい。
【０１６８】
その場合、レイアウト部４４は、ブラウジングクライアント部９１の負荷に基づいて、処理の一部をブラウジングサーバ部９３が行うか否かを決定することが好ましい。例えば、レイアウト部４４は、負荷の大きなブラウジングクライアント部９１に表示するＨＴＭＬコンテンツついてはブラウジングサーバ部９３の処理を増やし、負荷の小さなブラウジングクライアント部９１に表示するＨＴＭＬコンテンツについてはブラウジングサーバ部９３の処理を減らす。
【０１６９】
このように、本実施形態に係る発明は、ブラウジングクライアント部９１の負荷や性能に基づいて、ブラウジングサーバ部９３での処理を決定する。これにより、本実施形態に係る発明は、ブラウジングサーバ部９３の負荷とブラウジングクライアント部９１の負荷の均衡をはかることができるため、システム全体での効率化を図ることができる。
【０１７０】
なお、処理の一部をブラウジングサーバ部９３が行うか否かを決定する機能をブラウジングサーバ部９３が備える例を示したが、本機能は、管理サーバ９２又はブラウジングクライアント部９１などのＷｅｂブラウジングシステムにおける他の構成が備えていてもよい。例えば、管理サーバ９２が観測部４８を備え、ブラウジングサーバ部９３が処理決定部（不図示）を決定してもよい。
【０１７１】
例えば、管理サーバ９２が、観測部４８及び処理決定部（不図示）を備え、観測部４８の観測するブラウジングクライアント部９１の通信環境の情報をもとに、ブラウジングサーバ部９３を決定したり、ブラウジングサーバ部９３での処理を決定したりしてもよい。この場合、管理サーバ９２は、接続先のブラウジングサーバ部９３のアドレスをブラウジングクライアント部９１へ通知するとともに、ブラウジングサーバ部９３で行うべき処理を接続先のブラウジングサーバ部９３へ通知する。ブラウジングサーバ部９３で行うべき処理の通知は、ブラウジングクライアント部９１からブラウジングサーバ部９３へ行ってもよい。
【０１７２】
（実施形態４）
なお、前述の実施形態では、具体的なアプリケーションとしてＷｅｂブラウザを仮定するが、必ずしも本発明の適用先をＷｅｂブラウザに限定するものではない。本発明は、Ｗｅｂブラウザと同様の以下の特徴を有するアプリケーションに共通的に適用できる。すなわち、遠隔のサーバからリソース（スクリプトを含む画面表示に必要な情報）を獲得・解析し、その結果をユーザ端末上に画面表示し、かつユーザの入力内容に従ってサーバから獲得したスクリプト等を評価し、その結果に基づきユーザ端末上の画面を更新するアプリケーションに適用できる。このようなアプリケーションとしては、例えば、オンラインゲーム、電子書籍リーダが挙げられる。本発明をこれらのアプリケーションに適用した場合の構成の一例を図２７〜図３０に示す。
【０１７３】
例えば、前述の実施形態におけるＷｅｂブラウジングシステムは出力機能分割システムであってもよい。この場合の各構成の対応関係を図２７及び図２８に示す。出力機能分割システムは、Ｗｅｂサーバ９６に代えて、アプリケーションコンテンツを格納するアプリケーションコンテンツサーバ９６を備える。そして、アプリケーションコンテンツをユーザ端末に出力する機能が、アプリケーション実行クライアント部９１とアプリケーション実行サーバ部９３に分割される。
【０１７４】
例えば、前述の実施形態におけるＷｅｂブラウジングシステムはオンラインゲームシステムであってもよい。この場合の各構成の対応関係を図２７及び図２８に示す。オンラインゲームシステムは、Ｗｅｂサーバ９６に代えて、ゲームコンテンツを格納するゲームサーバ９６を備える。そして、ゲームコンテンツをユーザ端末に出力する機能が、ゲームクライアント部９１とゲームサーバ部９３に分割される。これにより、ユーザ端末上の専用アプリ画面やゲーム専用端末上の画面にゲームを表示する。
【０１７５】
例えば、前述の実施形態におけるＷｅｂブラウジングシステムは電子書籍システムであってもよい。この場合の各構成の対応関係を図２９及び図３０に示す。電子書籍システムは、Ｗｅｂサーバ９６に代えて、電子書籍コンテンツを格納する電子書籍サーバ９６を備える。そして、電子書籍コンテンツをユーザ端末に出力する機能が、電子書籍クライアント部９１と電子書籍サーバ部９３に分割される。これにより、ユーザ端末上の専用アプリ画面や、電子書籍専用端末上の画面に電子書籍を表示する。
【０１７６】
例えば、前述の実施形態におけるＷｅｂブラウジングシステムは画面表示システムであってもよい。この場合の各構成の対応関係を図２９及び図３０に示す。画面表示システムは、Ｗｅｂサーバ９６に代えて、ネットワーク上の位置（ＵＲＩなど）に紐づくリソースを格納するアプリケーションコンテンツサーバ９６を備える。そして、リソースをユーザ端末に出力する機能が、アプリケーション実行クライアント部９１とアプリケーション実行サーバ部９３に分割される。これにより、ユーザ端末上の専用アプリ画面や特定アプリケーション専用端末上の画面にリソースを表示する。
【０１７７】
例えば、前述の実施形態におけるＷｅｂブラウジングシステムは音声出力システムであってもよい。この場合の各構成の対応関係を図２９及び図３０に示す。音声出力システムは、Ｗｅｂサーバ９６に代えて、音声のコンテンツを格納する電子書籍サーバ９６を備える。そして、音声のコンテンツをユーザ端末に出力する機能が、アプリケーション実行クライアント部９１とアプリケーション実行サーバ部９３に分割される。これにより、ユーザ端末アプリケーション上の音声再生や特定アプリケーション専用端末上の音声再生を行う。
【産業上の利用可能性】
【０１７８】
本発明は情報通信産業に適用することができる。
【符号の説明】
【０１７９】
１１：操作イベント評価部
１２：スクリプト評価部
１３：ＨＴＭＬ解析部
１４：リクエスト送信部
１５：レスポンス受信部
１６：レイアウト部
１７：描画部
２１：リソース記憶部
２２：ＤＯＭツリー記憶部
２３：レイアウトデータ記憶部
３１：操作イベントフィルタ部
３２：操作イベント評価部
３３：レイアウト部
３４：描画部
３５：ＵＲＬ転送部
４１：リクエスト送信部
４２：レスポンス受信部
４３：ＨＴＭＬ解析部
４４：レイアウト部
４５：描画部
４６：操作イベント評価部
４７：スクリプト評価部
４８：観測部
４９：ストリーム生成部
５０：統合管理部
５１：ブラウザ共有連携部
５１１：共有グループ管理部
５１２：クライアントプログラム連携部
５１３：ブラウジングサーバ連携部
５１４：ワンタイムセッションＩＤ管理部
５２：ブラウジングサーバ管理部
９１：ブラウジングクライアント部
９１−１、９１−２、９１−３：ユーザ端末
９２：管理サーバ
９３：ブラウジングサーバ部
９４：ネットワーク
９５：インターネット
９６：Ｗｅｂサーバ
９７：Ｗｅｂブラウザ
９７１：ＵＲＬエントリ部
９７２：Ｗｅｂビュー表示部
【図１】
0005945060.tif 000002
【図２】
0005945060.tif 000003
【図３】
0005945060.tif 000004
【図４】
0005945060.tif 000005
【図５】
0005945060.tif 000006
【図６】
0005945060.tif 000007
【図７】
0005945060.tif 000008
【図８】
0005945060.tif 000009
【図９】
0005945060.tif 000010
【図１０】
0005945060.tif 000011
【図１１】
0005945060.tif 000012
【図１２】
0005945060.tif 000013
【図１３】
0005945060.tif 000014
【図１４】
0005945060.tif 000015
【図１５】
0005945060.tif 000016
【図１６】
0005945060.tif 000017
【図１７】
0005945060.tif 000018
【図１８】
0005945060.tif 000019
【図１９】
0005945060.tif 000020
【図２０】
0005945060.tif 000021
【図２１】
0005945060.tif 000022
【図２２】
0005945060.tif 000023
【図２３】
0005945060.tif 000024
【図２４】
0005945060.tif 000025
【図２５】
0005945060.tif 000026
【図２６】
0005945060.tif 000027
【図２７】
0005945060.tif 000028
【図２８】
0005945060.tif 000029
【図２９】
0005945060.tif 000030
【図３０】
0005945060.tif 000031