JP2004519747A - ネットワークベースのアプリケーションの適合化、診断、最適化、及び対処技術の方法及びシステム - Google Patents

ネットワークベースのアプリケーションの適合化、診断、最適化、及び対処技術の方法及びシステム Download PDF

Info

Publication number
JP2004519747A
JP2004519747A JP2002508203A JP2002508203A JP2004519747A JP 2004519747 A JP2004519747 A JP 2004519747A JP 2002508203 A JP2002508203 A JP 2002508203A JP 2002508203 A JP2002508203 A JP 2002508203A JP 2004519747 A JP2004519747 A JP 2004519747A
Authority
JP
Japan
Prior art keywords
client
application
parameters
server
identifying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002508203A
Other languages
English (en)
Other versions
JP2004519747A5 (ja
Inventor
ケー. ワイアット,ダグラス
ヘイズ,バリー
マクレガー,スコット
Original Assignee
プレイスウェア インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by プレイスウェア インコーポレイテッド filed Critical プレイスウェア インコーポレイテッド
Publication of JP2004519747A publication Critical patent/JP2004519747A/ja
Publication of JP2004519747A5 publication Critical patent/JP2004519747A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本発明は、クライアントとホストシステムの間のネットワークベースのアプリケーションを適合化し、診断し、最適化し、対処する。構成情報を含むネットワークベースのアプリケーションの一部またはすべてはクライアント上にインストールされていても良い。コンポーネントと構成情報はネットワークベースのアプリケーションが実行されるときにインストールされても良い。或いはまた、コンポーネントと構成情報はネットワークベースのアプリケーションに先立ってインストールされても良い。ネットワークベースのアプリケーションを起動するためには、ユーザはクライアント経由でホストシステムへアプリケーション要求を送出する。ホストシステムはプログラムコードをクライアントへ送る。プログラムコードの実行により、クライアントはホストシステムとのセッションの確立を試み、ネットワークベースのアプリケーションのための構成情報を決定する。セッションが確立し構成情報が決定されると、クライアントはネットワークベースのアプリケーションを起動する。

Description

【0001】
発明の記述
発明の分野
本発明は、ネットワークベースのアプリケーションに関する。特に、ネットワークベースのアプリケーションの適合化、診断、最適化、及び対処に関する。
【0002】
発明の背景
最近、インターネット等のネットワークを介して、データを通信及び共有するネットワークベースのアプリケーションが、普及してきた。ネットワークベースのアプリケーションにより、ユーザは、インターネットのようなネットワークを介して、互いに接続される。例えば、オンライン会議のようなネットワークベースのアプリケーション、及び、アプリケーション・シェアリングが、企業及び組織に普及してきた。
【0003】
しかしながら、このようなネットワークベースのアプリケーションは、一般には、ユーザのコンピュータにすべてがインストールされているわけではない。ユーザは、ネットワークベースのアプリケーション用に、何度も、コンポーネントの一部又は全部をダウンロードして構成する必要がある。残念ながら、ネットワークベースのアプリケーションをダウンロードして構成するのは、難しい作業である。例えば、ユーザのコンピュータのハードウェア構成及びオペレーティングシステムが、ネットワークベースのアプリケーションの性能に影響することがある。また、ウェブブラウザ、その設定、クライアントと1つ又はそれ以上のサーバとの間のネットワーク経路、及びファイアウォールのようなセキュリティ機構も、ネットワークベースのアプリケーションの実行に影響する。従って、数々の要因が関係するため、ネットワークアプリケーションを最適化するのは、難しくて複雑なこととなりうる。
【0004】
残念なことに、複雑さと困難さとにより、ネットワークベースのアプリケーションの性能が低下することがある。例えば、応答時間が遅くなる。さらに、ネットワークベースのアプリケーションの問題では、診断及び修正が難しいことがある。従って、ネットワークベースのアプリケーションの適合化、診断、最適化、及び対処の方法及びシステムが必要とされている。
【0005】
発明の概要
これらの欠点及び他の欠点を克服するために、ネットワークベースのアプリケーションの適合化、診断、最適化、及び対処の方法及びシステムが、提供される。本発明の原理によれば、ネットワークベースのアプリケーションは、ユーザの装置、及びアプリケーション実行中に利用されるサーバで、カスタマイズされ、適合化され、及び/又は調整されて、ユーザの負担を最適化する。
【0006】
本発明の一実施形態によると、ネットワークを通じてサーバからクライアントへ供給されるアプリケーションを最適化する方法は、前記クライアントに第1のコードセグメントを提供するステップと、前記第1のコードセグメントに基づいて、アプリケーションの実行環境の複数のパラメータを特定するステップと、特定されたアプリケーションの実行環境の複数のパラメータを、前記サーバに提供するステップと、前記の複数のパラメータに基づいて、アプリケーションを構成するための第2のコードセグメントを決定するステップとを、含んでいる。
【0007】
本発明の他の実施形態によると、ネットワークベースのアプリケーション用のクライアントは、アプリケーションを起動するリクエストを受信する手段と、アプリケーションの実行環境の複数のパラメータを特定する手段と、特定されたアプリケーションの実行環境の複数のパラメータを提供する手段と、特定された実行環境の複数のパラメータに基づいて、アプリケーションを構成する手段とを、備えている。
【0008】
本発明のさらに別の実施形態によると、ネットワークベースのアプリケーション用のサーバは、アプリケーションを起動するリクエストを受信する手段と、アプリケーションの実行環境を特定する第1のコードを提供する手段と、前記第1のコードに基づいて特定されたアプリケーションの実行環境の複数のパラメータを受信する手段と、特定された複数のパラメータに基づいて、アプリケーションを構成するための第2のコードを決定する手段とを、備えている。
【0009】
本発明の原理によると、問題点、あるいは、アプリケーションについてのユーザの体験にマイナスの影響を及ぼしうる他の環境が、診断される。例えば、本発明で対処される問題には、以下のものがある。すなわち、ネットワーク性能の問題、ユーザのハードウェア構成の問題、ブラウザ構成の問題のようなユーザのソフトウェア・インタフェースの問題、ファイアウォール、及びアプリケーション・プロキシ等である。また、本発明の原理に従って、可能な対応策が策定されてもよい。
【0010】
また、特別なセキュリティ上の許可、及び、アプリケーションを初期化、構成、又は使用するのに必要とされるユーザのその他の決定が、最小化されてもよい。本発明により、必要であれば、電子メールアドレス、電話番号、ファックス番号等のサポート情報を事前にユーザに提供して、アプリケーションの障害を検出することにより、ユーザへの顧客サービスの最終的な提供、又は技術サポートが支援されるようになる。さらに、本発明は、情報を収集及び集約してネットワークベースのアプリケーションを改良できるようにしている。
【0011】
本発明のさらなる利益及び利点は、一部が以下の説明に明記され、一部がその説明から明らかであり、本発明の実施により理解されるであろう。本発明の利点は、添付の特許請求の範囲で特に指摘された要素及び組み合わせによって、実現され達成されることになる。
【0012】
上述の一般的説明及び以下の詳細な説明は、例示的なものであり、説明のためのみのものであり、特許請求された本発明を制限するものではないことが、理解されるべきである。
【0013】
詳細な説明
本発明の実施形態について記述する。添付の図面に、その例が示されている。図面全体に亘って、可能なときには必ず、同一の参照番号は同一又は同様の部分を示すのに用いられる。添付の図面は、本明細書に組み込まれて、本明細書の一部を成し、本発明のいくつかの実施形態を示し、記述内容とともに本発明の原理を説明するためのものである。
【0014】
本発明の原理によれば、オンライン会議、オンラインミーティング、ウェブセミナー、及びアプリケーション・シェアリングのアプリケーション等のネットワークベースのアプリケーションが、クライアント及びホストシステムに関する条件に基づいて、適合化、診断、最適化、及び対処される。ネットワークベースのアプリケーションのコンポーネントの一部又は全部が、構成情報を含めて、クライアント上に事前にインストールされていてもよい。その代わりに、コンポーネント及び構成情報が、ネットワークベースのアプリケーションの実行に伴って、クライアント上に同時にインストールされてもよい。
【0015】
本発明の原理によれば、ユーザが、ネットワークベースのアプリケーションを起動してもよい。ネットワークベースのアプリケーションを起動するために、ユーザは、クライアントを通じてホストシステムへと、アプリケーションのリクエストを送信する。ホストシステムは、プログラムコードをクライアントへ送信する。動作の際、クライアントは、ホストシステムとセッションを確立し、ネットワークベースのアプリケーションの構成情報を判別する。セッションを確立して構成情報を判別すると、クライアントは、ネットワークベースのアプリケーションを起動する。
【0016】
図1に、本発明の原理に対応したネットワークベースのアプリケーションの全体構成を示す。特に、クライアント100、ネットワーク104、及びホストシステム108が図示されている。クライアント100により、ユーザは、ネットワーク104を介してホストシステム108が供給しているネットワークベースのアプリケーションに、アクセス可能となる。クライアント100は、ネットワークベースのアプリケーションを実行するために、ハードウェア及びソフトウェアを組み合わせて用いて、構築されてもよい。例えば、クライアント100は、Windows(登録商標) NT、MacIntosh OS、又はUnix(登録商標)を実行するパーソナルコンピュータとして実装されてもよい。また、クライアント100は、パーソナル・デジタル・アシスタント、ラップトップ、ウェブ対応携帯電話機等のような他の機器として実装されてもよい。ネットワーク104にアクセス可能なあらゆる種類の機器が、本発明の範囲に入っている。
【0017】
クライアント100は、接続102を通じてネットワーク104に接続されている。接続102は、専用線接続、ダイアルアップ接続、デジタル加入者線、及びケーブル等の幅広い技術を用いて実装されてもよい。さらに、接続102は、HomeRF(商標)及びBluetooth(商標)等のワイヤレス技術を用いて実装されてもよい。また、接続102には、アプリケーション・プロキシと、ルータ、スイッチ、及びハブ等のネットワーク要素と、ファイアウォールと、その他のネットワーク・セキュリティ機構等が、含まれていてもよい。ネットワーク104はクライアント100及びホストシステム108間の接続を提供している。ネットワーク104は、クライアント100及びホストシステム108間の通信をルーティングする様々なノード(図示せず)を、備えていてもよい。ある実施形態では、ネットワーク104は、インターネットを備えていてもよい。但し、ネットワークベースのアプリケーション用に、クライアント100及びホストシステム108間の接続を提供するあらゆるネットワークが、本発明の範囲に入っている。その代わりに、クライアント100及びホストシステム108は、ネットワークなしで直接接続されてもよい。
【0018】
接続106により、ネットワーク104及びホストシステム108間の接続が提供される。接続106は、専用線接続、デジタル加入者線、及びケーブル等の幅広い範囲の技術を用いて実装されてもよい。また、接続106には、アプリケーション・プロキシと、ルータ、スイッチ、及びハブ等のネットワーク要素と、ファイアウォールと、その他のネットワーク・セキュリティ機構等が、含まれていてもよい。
【0019】
ホストシステム108は、ネットワークベースのアプリケーションのアプリケーション・コンテンツ及びプログラムコードを提供するハードウェアとソフトウェアの組み合わせである。ホストシステム108は、例えばサーバ、ネットワーク要素等の1台以上の機器を用いて構築されてもよい。ホストシステム108における1台又はそれ以上の機器は、例えば、Windows(登録商標) NT、Linux、及びUnix(登録商標)上で稼動してもよい。また、ホストシステム108は、単一の場所、又は、ネットワーク104等のネットワークを通じて相互接続された複数の場所に、構築されてもよい。ホストシステム108は、オンライン会議、オンラインミーティング、ウェブセミナー、及びアプリケーション・シェアリング等のアプリケーションのためのアプリケーション・コンテンツ及びプログラムコードを提供する。一般に、ホストシステム108は、クライアント100からの要求により、アプリケーション・コンテンツ及びプログラムコードを提供する。そして、ホストシステム108は、要求されたアプリケーション・コンテンツ又はプログラムコードを、URLで指定された位置から読み込んで、ネットワーク104を通じてクライアント100に提供してもよい。ホストシステム108及びクライアント100間のやりとりは、ハイパーテキスト・トランスポート・プロトコル(HTTP)を用いて媒介されてもよく、アプリケーション・コンテンツは、ハイパーテキスト・マークアップ・ランゲージ(HTML)等のマークアップ言語を用いて、提供されてもよい。また、アプリケーションのためのコンテンツ及びプログラムコードは、例えば、参照されて、HTML内に直接又は間接的に組み込まれてもよく、Java(登録商標)、JavaScript、Java server pages (JSP)、Perl、C/C++、active server pages (ASP)、ActiveX、及びcommon gateway interface (CGI)等の技術が用いられてもよい。
【0020】
図2に、本発明に対応するように構成されたクライアント100のより詳細な図を示す。図2に示すように、クライアント100には、ウェブブラウザ200、メディアインタフェース202、ネットワークインタフェース208、及びアプリケーションメモリ210が、含まれている。ウェブブラウザ200は、ユーザがアプリケーション・コンテンツを見ることを可能としプログラムコードの実行を可能とするソフトウェアアプリケーションとして実装されてもよい。ウェブブラウザ200には、アプレット204、すなわちホストシステム108から受信したアプリケーションをサポートするプログラム(例えば、HTML文書内に埋め込まれたアプレットタグを使用してJava(登録商標)コードを実行)、及び処理環境(processing infrastructure)206が、含まれている。アプレット204は、事前にインストールされていてもよく、アプリケーションの実行の際に同時にインストールされてもよい。アプレットは1つだけ図示されているが、ウェブブラウザ200には、ホストシステム108から配信される様々なJava(登録商標)プログラムに対応して、複数のアプレットが含まれていてもよい。
【0021】
処理環境206は、処理動作と、メディアインタフェース202、アプレット204、ネットワークインタフェース208、及びアプリケーションメモリ210間の通信とを、調整する。処理環境206は、HTMLエンジン、JavaScriptエンジン、及びJava(登録商標)仮想マシン等のソフトウェアが含まれるように、実装されてもよい。但し、処理環境206には、本発明の原理に従った幅広いソフトウェアやハードウェアが、含まれていてもよい。動作の際、処理環境206は、例えばウェブブラウザ200及びホストシステム108間の通信、並びにアプリケーションの処理を取り扱う。ユーザがクライアント100を操作してアプリケーションを起動すると、処理環境206は、HTTP及びTCPを用いて、(例えば、図3に示すウェブサーバ304を介した)ウェブブラウザ200及びホストシステム108間の通信を媒介する。また、処理環境206は、アプリケーションに対応したビデオ及びオーディオのストリーミング等のオーディオ/ビジュアル・コンテンツ用のユーザ・データグラム・プロトコル(「UDP」)又はリアルタイムプロトコル(「RTP」)接続を管理する。処理環境206は、ネットワークインタフェース208を用いてネットワーク104における通信を方向づける。ネットワークインタフェース208は、ローカルエリアネットワーク・インタフェース(例えばイーサネット(登録商標)・インタフェース)として、あるいはモデムとして実装されてもよい。但し、本発明の範囲内で、あらゆる型のネットワークインタフェースが用いられうる。また、処理環境206は、アプリケーションメモリ210と接続されて、アプリケーションのコンポーネントを格納するとともにそれにアクセスする。アプリケーションメモリ210は、ハードディスク、コンパクトディスク、フレキシブルディスク、及びRAM等のハードウェアとソフトウェアとの組み合わせを用いて、実装されてもよい。
【0022】
図2に示すように、メディアインタフェ―ス202は、クライアント100でのアプリケーションの実行のために、処理環境206及びユーザ(図示せず)間のインタフェースを提供する。メディアインタフェース202は、スピーカ、ディスプレイ、マイクロフォン、及びカメラ等の装置とのアプリケーション・コンテンツの入出力を提供してもよい。
【0023】
図3に、本発明の原理に対応するように構成されたホストシステム108のより詳細な図を示す。図示の如く、ホストシステム108は、ホスティングサーバ300、アプリケーションサーバ302、ウェブサーバ304、メディアサーバ308、及びネットワークインタフェース310を、備えている。図3には単一のホストシステムを示したが、ホストシステムは、本発明の原理に対応したいくつかのホスト及び/又はサーバを用いて、構築されてもよい。また、ホストシステム108の他の実装例も、本発明の範囲に入っている。
【0024】
ホスティングサーバ300は、アプリケーションのコンテンツ及びプログラムコードを提供する。ホスティングサーバ300は、PLACEWARE(商標)でサポートされているようなオンラインミーティング、オンライン会議、ウェブセミナー、及びアプリケーション・シェアリングを含んだアプリケーションのサーバとして実装されてもよい。動作の際、ホスティングサーバ300は、ホスティングサーバ300用に指定された特定のポートにおけるクライアント100からの通信に対して応答する。ホスティングサーバ300は、直接又は転送サービスを介して、HTTPリクエスト又はTCP接続に応答し、HTTPリクエスト又はTCP接続を処理して、ネットワークインタフェース310と協働して、応答を、ネットワーク104を介してクライアント100へ送信してもよい。
【0025】
アプリケーションサーバ302及びウェブサーバ304は、アプリケーションのためのコンテンツ及びプログラムコードを提供し、アプリケーションを起動して、クライアント100及びホスティングサーバ300間の接続を確立する。HTTPリクエストを受信したときに、ウェブサーバ304は、HTTPリクエスト中のURLを直接処理してもよい。また、ウェブサーバ304は、URLをアプリケーションサーバ302へと転送してもよい。URLにより、ホストシステム108内に位置するファイル、ホストシステム108からリモートのファイル(ネットワーク104を通じて取得されてもよい)、又はクライアント100にローカルでインストールされているファイルの中に位置するファイルが、識別されてもよい。図3に示すように、アプリケーションサーバ302には、サーブレット306が含まれていてもよい。アプリケーションサーバ302は、サーブレット306を利用して、HTTPリクエストを処理してもよい。その代わりに、アプリケーションサーバ302は、CGIスクリプトを利用して、ウェブサーバ304から転送されたHTTPリクエストを処理してもよい。HTTPリクエストの処理後、アプリケーションサーバ302は、ウェブサーバ304を通じて応答を送信する。サーブレット306及びアプレット204(クライアント100で実行)により、ホストシステム108及びクライアント100は、アプリケーションのコンテンツ及びプログラムコードを動的に読み込むことにより、モジュール状に拡張される。サーブレットは1つだけ図示されているが、アプリケーションサーバ302には、アプリケーションをサポート及び実装する様々なJava(登録商標)プログラムの複数のサーブレットが含まれていてもよい。
【0026】
メディアサーバ308は、アプリケーションに関連したメディア別のオーディオ/ビジュアル・コンテンツを、メディアインタフェース202を介してクライアント100に提供する。例えば、オーディオ/ビジュアル・コンテンツには、生のビデオ及びオーディオ、ストリーミングビデオ及びオーディオを通じてのビジュアルプレゼンテーション等が、含まれていてもよい。
【0027】
ネットワークインタフェース310は、ネットワーク104を通じたホストシステム108及びクライアント100間の通信を取り扱って方向づけを行う。ネットワークインタフェース310は、ルータ、ハブ、又はスイッチとして実装されてもよい。さらに、ネットワークインタフェース310は、ファイアウォールのようなセキュリティのための他の機構と組み合わせて、実装されてもよい。
【0028】
図4a及び図4bに、本発明の原理に対応したネットワークベースのアプリケーションの適合化、診断、最適化、及び対処を処理する方法を示す。ステップ400では、クライアント100は、例えばクライアント100を実行するユーザ(図示せず)に応答して、ホストシステム108と交信する。ユーザは、ウェブブラウザ200により表示されたアイコンを、「クリック」してもよい。その代わりに、ユーザは、ウェブブラウザ200を用いて、ウェブサーバ304が提供している特定のウェブページへと移行してもよい。ユーザの操作に応答して、クライアント100は、ネットワークインタフェース208を介し、ネットワーク104を通じてホストシステム108へと、HTTPリクエストを発行する。その代わりに、クライアント100は、プロキシを用いて、ホストシステム108へとHTTPリクエストを発行してもよい。HTTPリクエストを受信すると、ホストシステム108は、ユーザに対して追加の情報を要求してもよい。クライアント100におけるユーザは、ホストシステム108に、ユーザ名及びパスワード等のログイン情報を提供するよう促されることがある。他の事前の通信及び相互動作も、本発明の原理に対応している。
【0029】
クライアント100が、ホストシステム108と交信すると、処理フローは、ステップ402へと移行する。このステップ402では、クライアント100は、ホストシステムに対して起動ページを要求する。ホストシステム108は、ネットワーク104を通じてクライアント100に、起動ページを提供する。起動ページは、ホスティングサーバ300、アプリケーションサーバ302、及びウェブサーバ304等の様々な出所からのコンテンツ及びプログラムコードの複数のフレームを、備えていてもよい。フレームのうちのあるものには、ナビゲーション・リンク、ブランド情報等の静的なコンテンツが、含まれていてもよい。これらのコンテンツは、ウェブサーバ304及び/又はアプリケーションサーバ302により提供されている。
【0030】
さらに、起動ページ配信時に、ホストシステム108は、いくつかのパラメータをクライアントへと配信してもよい。例えば、ホストシステム108は、以下のようなパラメータを配信してもよい。すなわち、アプリケーションを要求しているユーザの一意的な識別子、ユーザがアプリケーションを要求して実行するのを許可するための認証識別子、アプリケーションを組み込んだ提供者の名前、ホスティングサーバ300のインターネット・プロトコル・アドレス、ホスティングサーバ300が接続の要求を待ち受けているポート番号、ウェブブラウザ200を通じてアプリケーションがユーザに提供されるべきコンソールのタイプ、アプリケーションのバージョン及び版の情報、ユーザに対して表示されるべき製品名、ユーザに対して表示されるべき提供者の名称等である。
【0031】
ステップ404では、クライアント100は、起動ページ内に与えられたプログラムコードを実行して、ウェブブラウザ200がアプリケーションのJavaScriptをサポートできるかどうか判別する初期チェックを行う。例えば、ウェブブラウザ200は、JavaScriptをサポートできなければ、<noscript>タグ及び</noscript>タグ間のHTMLテキストを表示してもよい。また、クライアント100は、本発明の原理によれば、初期チェックの一部として、JavaScriptのサポートに加えて、他のパラメータを判別してもよい。クライアント100がJavaScriptをサポートできなければ、処理の流れはステップ406へと進む。
【0032】
ステップ406では、ウェブブラウザ200がアプリケーションのJavaScriptをサポートしていないので、クライアント100は、ユーザにエラーを通知する。例えば、ウェブブラウザ200は、エラーメッセージ(例として、HTMLタグ「<NOSCRIPT>エラー:JavaScriptはサポートされていません。」)を表示してもよい。さらに、クライアント100は、JavaScriptがサポートされていない、あるいは、ユーザがセキュリティ設定の制限を課しているというような、エラーについての詳細な理由を提供してもよい。他の型のエラーメッセージや、そこでの制限をどのように外すかという診断メッセージは、本発明の原理に準拠したものである。
【0033】
クライアント100がウェブブラウザ200のためのプログラムコード(例えばJavaScript)をサポート可能であれば(ステップ404)、処理は、ステップ408へ進む。ステップ408では、クライアント100は、さらなるプログラムコード、例えば、アプリケーションサーバ302及び/又はウェブサーバ304からの起動ページにおけるJavaScriptを実行して、ウェブブラウザ200が他のプログラムコード例えばアプリケーションのJava(登録商標)を安全に実行可能であるかどうか判別する。安全に実行されることを確認するために、クライアント100は、例えば、ウェブブラウザ200でJava(登録商標)が使用可能かどうか、バージョン情報、及びブラウザ200のブラウザ型式を判別してもよい。さらに、クライアント100は、ネットワーク104におけるホストシステム108へのネットワーク経路について検査して、ファイアフォール等の介在機構が、ウェブブラウザ200上のJava(登録商標)の実行を干渉及び/又は妨害するかどうか判別してもよい。これは、例えば、テストアプレットが、クライアント100にダウンロードされて実行されることが可能かどうかを検査することによりなされる。但し、クライアント100は、ウェブブラウザ200がJava(登録商標)を安全に実行できるかどうか判別するために、幅広い要因を考慮してもよい。ウェブブラウザ200がJava(登録商標)を安全に実行できないのであれば、処理はステップ410へ進む。
【0034】
ステップ410では、クライアント100は、エラーページを表示することにより、ユーザにエラーを通知する。クライアント100は、ホストシステム108にエラーページを要求してもよい。エラーページには、クライアント100上でなぜJava(登録商標)が安全に実行されないのかを判別するためにクライアント100上で実行されるプログラムコード(例えばJavaScript)が、含まれていてもよい。また、エラーページには、実行済の検査の総合的な結果(例えば、「合格」、「不合格」、「警告」)、並びに、実行済みの検査及び各検査の結果を箇条書きで要約したものが、表示されてもよい。また、エラーページには、結果の理由についての詳細な説明が、含まれていてもよい。その代わりに、エラーページで、不合格であった検査についての修正情報が提供されてもよい。
【0035】
クライアント100がJava(登録商標)を安全に実行可能であれば、処理は、ステップ412へ進む。ステップ412では、クライアント100は、起動ページで提供されているJavaScript及びJava(登録商標)のプログラムコードを実行して、ホストシステム108内のホスティングサーバ300への接続について検査するとともにクライアント100の実行環境についてさらに検査する。クライアント100は、起動ページ内のJavaScriptを実行して、起動ページにアプレット204を書き込んでもよく、ホストシステム108から追加のJava(登録商標)コードをダウンロードしてもよい。接続について検査するために、クライアント100は、ホストシステム108からの起動ページで事前に与えられたパラメータを参照してもよい。例えば、クライアント100は、ホスティングサーバ300への接続を以下のように検査してもよい。すなわち、ホスティングサーバ300に対して、指定されたポート、及び起動ページで与えられたアドレスで、直接接続を試みること、ホスティングサーバ300に対して、特定のポートで、HTTPリクエストを試みること、転送可能なウェブサーバ304(例えば、ポート80リクエストをホスティングサーバ300へ転送可能)を介してアクセス可能なサービスのURLを見つけようと試みること、によってである。クライアント100がホストシステム108の検査に成功しなければ、処理はステップ414へ移行する。
【0036】
さらに、クライアント100がJava(登録商標)を安全に実行可能であるので、クライアント100は、起動ページにおけるJava(登録商標)を実行して、実行環境についてのさらなるパラメータを検出してもよい。例えば、クライアント100は、Java(登録商標)仮想マシンのビルド番号、インストールされたプラグイン、インストールされたプラグインのバージョン、及び以前にインストールされたその他のアプリケーション用ファイルを、検出してもよい。Java(登録商標)の実行により検出されうる他のパラメータは、本発明の原理内のものである。
【0037】
ステップ414では、クライアント100は、例えばエラーページを表示することにより、ユーザにエラーを通知する。エラーページには、プログラムコード(例えば、ホストシステム108に対する検査がなぜ成功しなかったかを判別/通知するためにクライアント100上で実行されるJavaScript)が、含まれていてもよい。また、エラーページには、実行済の検査の総合的な結果、、実行済みの検査及び各検査の結果を箇条書きで要約したもの、並びに、適切と思われる修正手段が、表示されてもよい。
【0038】
クライアント100がホストシステム108の検査に成功して、ホスティングサーバ300との通信を確立できたなら、処理はステップ416へ進む。ステップ416では、クライアント100は、アプリケーション・コンテンツ及びプログラムコードを、ホスティングサーバ300に要求し、アプリケーションに関する追加のパラメータを収集する。クライアント100及びホスティングサーバ300は、以下のいくつかの方法で通信する。すなわち、ホスティングサーバ300に対する指定されたポート及び起動ページで与えられたアドレスでの直接接続を用いること、ホスティングサーバ300に対して所定のポートにHTTPリクエストを直接送信すること、リクエストをホスティングサーバ300へと転送可能なウェブサーバ304を介してアクセス可能なサービスのURLを用いること、というものである。ホスティングサーバ300は、起動ページを更新して、アプリケーション実行用に、追加のコンテンツ及びプログラムコードをクライアント100に提供してもよい。例えば、クライアント100は、アプリケーション用にIPオーディオを使用可能とすべきかどうかといった、ホスティングサーバ300の構成についての情報を検出してもよい。また、ホスティングサーバ300の他のパラメータが、本発明の原理に従って様々な時機に、クライアント100に対して与えられてもよい。
【0039】
また、起動ページは、プログラムコード(例えば、実行環境のパラメータの検出を続けるようにクライアント100上で実行されるJavaScript及びJava(登録商標))を含めるように更新されてもよい。クライアント100は、プログラムコード実行時に、以下のようなパラメータを検出することとしてもよい。すなわち、クライアント100のハードウェア構成、クライアント100のオペレーティングシステム、ウェブブラウザの環境、クライアント100及びホスティングサーバ300間のネットワーク経路、課せられたセキュリティ方針、並びにユーザの特徴等である。例えば、クライアント100は、Java(登録商標)及び/又はJavaScriptを実行して、使用されているディスプレイサイズ、セキュリティ設定、及び、HTTPリクエスト等の通信リクエストの結果を、検出してもよい。そして、クライアント100は、実行環境について検出されたパラメータ、及び以前にホストシステム108からリクエストへと与えられたパラメータを、収集してもよい。クライアント100は、リクエストをホストシステム108(例えばホスティングサーバ300)へ送信する。ホスティングサーバ300は、クライアント100が収集したパラメータを確認して、アプリケーションの構成及び設定を調整するための1つ又はそれ以上の決定を下してもよい。例えば、ホスティングサーバ300は、クライアント100が検出したディスプレイサイズに基づいて、特定のアプリケーション・コンソールのサイズを選択してもよい。その代わりに、ホスティングサーバ300は、アプリケーションのコンソールのサイズが後でクライアント100によって選択されるというような、多様なアプリケーション・パラメータ用のプログラムコードを提供してもよい。また、ホスティングサーバ300は、クライアント100が検出したプラグインに基づいて、アプリケーション用にIPオーディオを使用可能としてもよい。そして、ホスティングサーバ300は、起動ページを更新して、アプリケーションを構成するとともにアプリケーションの設定を調整するためのコンテンツ及びプログラムコードを、クライアント100に提供してもよい。
【0040】
ステップ418では、クライアント100は、更新された起動ページを受信して、アプリケーションの構成及び設定が成功するかどうか判別する。例えば、クライアント100は、アプリケーションの構成及び設定が成功するかどうか判別判別するのに、以下のことを考慮してもよい。
【0041】
・プロセッサ型式及び速度、メモリサイズ、ディスプレイサイズ、入力装置、並びに他の周辺機器等のクライアント100のハードウェア構成
・クライアント100のオペレーティングシステム(例えば、Windows(登録商標) 、MacIntosh、又はUNIX(登録商標))
・メーカ、バージョン、プラグイン、オプション機能、及びユーザ設定等のウェブブラウザの環境
・利用可能な帯域幅、遅延、ジッター、ネットワークプロトコル、アプリケーション・プロキシ、ネットワーク要素(例えば、ルータ、スイッチ、及びハブ)、ファイアウォール、及び他のネットワークセキュリティ機構等のクライアント100及びホスティングサーバ300間のネットワーク経路
・介在するネットワーク要素、セキュリティ機構、ブラウザ設定、及びオペレーティングシステム等により課されたセキュリティ方針
・ユーザの役割、身元、部署、アプリケーションの使用歴、及び関連アプリケーションの使用歴等のユーザの特徴
但し、本発明の原理によれば、アプリケーションの構成及び設定が成功するかどうかを判別するのに、幅広いパラメータの任意のものが、クライアント100によって考慮されてもよい。
【0042】
クライアント100が、アプリケーションが成功しないと判別するならば、処理はステップ420へ移行する。ステップ420では、クライアント100は、例えば、警告ページを表示することにより、1つ又はそれ以上の警告をユーザに通知してもよい。動作の際、クライアント100内のウェブブラウザ200は、警告ページを表示して、以下の措置を提案してもよい。すなわち、1つ又はそれ以上のプラグインをダウンロードすること、ウェブブラウザの更新バージョンをダウンロードすること、あるいは、ディスプレイ解像度のようなメディアインタフェース・パラメータを調整すること等である。但し、本発明の原理に従って、幅広い警告及び/又は提案の任意のものが、ユーザに対して提供されてもよい。そして、ステップ422では、例えばウェブブラウザ200を用いているクライアント100は、メッセージを表示してもよい。例えば、ダイアログウィンドウを用いて、ユーザがアプリケーションの実行の継続を、手動で指示可能とすることである。
【0043】
クライアント100が、アプリケーションの構成及び設定が完全に成功すると判別したなら、処理はステップ424へ進む。ステップ424では、クライアント100は、アプリケーションを自動的に継続する。例えば、クライアント100内のウェブブラウザ200が、アプリケーションのためのアプリケーション・コンソールに自動的になってもよい。さらに、ウェブブラウザ200は、アプレット204に加えて、クライアント100内の設定変更、及び/又はメディアインタフェース202内の設定変更、及びネットワークインタフェース208内の設定変更のためのアプレットを、起動してもよい。そして、クライアント100は、該クライアント100の個別の実行環境向けに調整された構成情報に基づいて、アプリケーションを実行してもよい。
【0044】
具体的な要素について説明してきたが、本発明に対応した方法及び装置には、追加の要素又は他の要素が含まれうることも、当業者には理解されるであろう。ここに開示した本発明の明細書及び実例を考慮することにより、当業者には、本発明の他の実施形態及び変形例が明らかとなろう。例えば、JSP、Perl、C/C++、ASP、及びActiveXが、本発明の原理に従って用いられてもよい。明細書及び実例は、説明用としてのみ考慮されるものであり、本発明の本当の範囲及び真意は、特許請求の範囲によってのみ示されることが、意図されている。
【図面の簡単な説明】
【図1】
本発明の原理に対応したネットワークベースのアプリケーションの全体構成図。
【図2】
本発明の原理に対応するように構成されたクライアントのより詳細な図。
【図3】
本発明の原理に対応するように構成されたサーバホストのより詳細な図。
【図4a】
本発明の原理に対応したネットワークベースのアプリケーションの適合化、診断、最適化、及び対処を処理する方法を示す図。
【図4b】
本発明の原理に対応したネットワークベースのアプリケーションの適合化、診断、最適化、及び対処を処理する方法を示す図。

Claims (24)

  1. ネットワークを通じてサーバからクライアントへ供給されるアプリケーションを最適化する方法であって、
    前記クライアントに第1のコードセグメントを提供するステップと、
    前記第1のコードセグメントに基づいて、アプリケーションの実行環境の複数のパラメータを特定するステップと、
    前記の複数のパラメータを、前記サーバに提供するステップと、
    前記の複数のパラメータに基づいて、アプリケーションを構成するための第2のコードセグメントを決定するステップとを、
    含むことを特徴とする方法。
  2. 前記第2のコードセグメントに基づいて、アプリケーションを構成するステップを、さらに含むことを特徴とする請求項1記載の方法。
  3. 構成に基づいて、アプリケーションを自動的に起動するステップを、さらに含むことを特徴とする請求項2記載の方法。
  4. 第1のコードセグメントを提供するステップは、Java(登録商標)のサポートを判別するためにJavaScriptを提供することを含むことを特徴とする請求項1記載の方法。
  5. 複数のパラメータを特定するステップは、前記クライアントのハードウェア構成を判別することを含むことを特徴とする請求項1記載の方法。
  6. 複数のパラメータを特定するステップは、前記クライアントのオペレーティングシステムを判別することを含むことを特徴とする請求項1記載の方法。
  7. 複数のパラメータを特定するステップは、前記クライアントにインストールされたブラウザの構成を示す情報を判別することを含むことを特徴とする請求項1記載の方法。
  8. 複数のパラメータを特定するステップは、前記クライアント及び前記サーバ間の前記ネットワークにおける経路の状態を判別することを含むことを特徴とする請求項1記載の方法。
  9. 複数のパラメータを特定するステップは、前記クライアント及び前記サーバ間の通信上のセキュリティ制限を判別することを含むことを特徴とする請求項1記載の方法。
  10. 複数のパラメータを特定するステップは、アプリケーションのユーザの身元を示す情報を判別することを含むことを特徴とする請求項1記載の方法。
  11. ネットワークベースのアプリケーション用のクライアントであって、
    アプリケーションを起動するリクエストを受信する手段と、
    アプリケーションの実行環境の複数のパラメータを特定する手段と、
    特定されたアプリケーションの実行環境の複数のパラメータを提供する手段と、
    特定された実行環境の複数のパラメータに基づいて、アプリケーションを構成する手段とを、
    備えたことを特徴とするクライアント。
  12. アプリケーションの構成に基づいて、アプリケーションに関連したコンテンツを出力する手段を、さらに備えたことを特徴とする請求項11記載のクライアント。
  13. ネットワークベースのアプリケーション用のサーバであって、
    アプリケーションを起動するリクエストを受信する手段と、
    アプリケーションの実行環境を特定する第1のコードを提供する手段と、
    前記第1のコードに基づいて特定されたアプリケーションの実行環境の複数のパラメータを受信する手段と、
    特定された複数のパラメータに基づいて、アプリケーションを構成するための第2のコードを決定する手段とを、
    備えたことを特徴とするサーバ。
  14. アプリケーションの構成に準拠したアプリケーション用コンテンツを提供する手段を、さらに備えたことを特徴とする請求項13記載のサーバ。
  15. ネットワークを通じてサーバからクライアントへ供給されるアプリケーションを最適化する方法を実行するプログラムコードを含んだコンピュータ可読媒体であって、前記方法は、
    前記クライアントに第1のコードセグメントを提供するステップと、
    前記第1のコードセグメントに基づいて、アプリケーションの実行環境の複数のパラメータを特定するステップと、
    特定されたアプリケーションの実行環境の複数のパラメータを、前記サーバに提供するステップと、
    前記の複数のパラメータに基づいて、アプリケーションを構成するための第2のコードセグメントを決定するステップとを、
    含むことを特徴とするコンピュータ可読媒体。
  16. 前記方法は、前記第2のコードセグメントに基づいて、アプリケーションを構成するステップを、さらに含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  17. クライアントに提供する第1のコードセグメントは、そのクライアントがJavaScriptをサポートしているかどうかを判別することを含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  18. 前記方法は、構成に基づいてアプリケーションを自動的に起動するステップを、さらに含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  19. 複数のパラメータを特定するステップは、前記クライアントのハードウェア構成を判別することを含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  20. 複数のパラメータを特定するステップは、前記クライアントのオペレーティングシステムを判別することを含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  21. 複数のパラメータを特定するステップは、前記クライアントにインストールされたブラウザの構成を示す情報を判別することを含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  22. 複数のパラメータを特定するステップは、前記クライアント及び前記サーバ間の前記ネットワークにおける経路の状態を判別することを含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  23. 複数のパラメータを特定するステップは、前記クライアント及び前記サーバ間の通信上のセキュリティ制限を判別することを含むことを特徴とする請求項15記載のコンピュータ可読媒体。
  24. 複数のパラメータを特定するステップは、アプリケーションのユーザの身元を示す情報を判別することを含むことを特徴とする請求項15記載のコンピュータ可読媒体。
JP2002508203A 2000-06-30 2001-07-02 ネットワークベースのアプリケーションの適合化、診断、最適化、及び対処技術の方法及びシステム Pending JP2004519747A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US21532100P 2000-06-30 2000-06-30
PCT/US2001/021058 WO2002003202A2 (en) 2000-06-30 2001-07-02 Methods and systems for adaptation, diagnosis, optimization, and prescription technology for network based applications

Publications (2)

Publication Number Publication Date
JP2004519747A true JP2004519747A (ja) 2004-07-02
JP2004519747A5 JP2004519747A5 (ja) 2008-09-25

Family

ID=22802512

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002508203A Pending JP2004519747A (ja) 2000-06-30 2001-07-02 ネットワークベースのアプリケーションの適合化、診断、最適化、及び対処技術の方法及びシステム

Country Status (6)

Country Link
US (1) US7665082B2 (ja)
EP (2) EP2378418B1 (ja)
JP (1) JP2004519747A (ja)
AU (1) AU2001270294A1 (ja)
CA (1) CA2414376C (ja)
WO (1) WO2002003202A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008523464A (ja) * 2004-12-06 2008-07-03 オムニフォン リミテッド 特定形式の無線コンピュータ装置用にカスタム化されたソフトウェアアプリケーションを自動的に構築する方法

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324685B1 (en) * 1998-03-18 2001-11-27 Becomm Corporation Applet server that provides applets in various forms
US6914887B2 (en) * 2001-01-04 2005-07-05 Intel Corporation Managing links between processor-based systems
ATE322041T1 (de) * 2001-06-08 2006-04-15 Hewlett Packard Co Verfahren und gerät zum bereitstellen eines fernhilfsdienstes
US20040169685A1 (en) * 2001-07-30 2004-09-02 Alcatel, Societe Anonyme System and method for controlling a hyperlink activation per the intent of a web page creator
US20040041841A1 (en) * 2002-08-27 2004-03-04 Lemogne Stephane Enhanced contact navigator with interactive tabs for managing network events in real time
US20040199622A1 (en) * 2003-04-07 2004-10-07 Huscher Anthony Alan eRoom operations console
JP2005107878A (ja) * 2003-09-30 2005-04-21 Toshiba Corp 半導体プロセス技術情報の提供システム、提供方法、及び購入方法
EP2044511A4 (en) * 2006-07-06 2010-03-10 Akorri Networks Inc MANAGEMENT OF THE CHARGE OF AN APPLICATION SYSTEM
US7823124B2 (en) * 2006-08-29 2010-10-26 Sap Ag Transformation layer
US20080082517A1 (en) * 2006-08-29 2008-04-03 Sap Ag Change assistant
US20080059630A1 (en) * 2006-08-29 2008-03-06 Juergen Sattler Assistant
US20080127082A1 (en) * 2006-08-29 2008-05-29 Miho Emil Birimisa System and method for requirements-based application configuration
US7831568B2 (en) 2006-08-29 2010-11-09 Sap Ag Data migration
US7827528B2 (en) * 2006-08-29 2010-11-02 Sap Ag Delta layering
US8131644B2 (en) * 2006-08-29 2012-03-06 Sap Ag Formular update
US7912800B2 (en) * 2006-08-29 2011-03-22 Sap Ag Deduction engine to determine what configuration management scoping questions to ask a user based on responses to one or more previous questions
US7908589B2 (en) * 2006-08-29 2011-03-15 Sap Ag Deployment
US8065661B2 (en) * 2006-08-29 2011-11-22 Sap Ag Test engine
US20080071555A1 (en) * 2006-08-29 2008-03-20 Juergen Sattler Application solution proposal engine
US7831637B2 (en) * 2006-08-29 2010-11-09 Sap Ag System on the fly
US20080317042A1 (en) * 2007-06-22 2008-12-25 Palo Alto Research Center Incorporated Extensible framework for compatibility testing
US20090019133A1 (en) * 2007-07-13 2009-01-15 Stephen Brimley System, method and computer program for updating a web page in a web browser
US8370829B2 (en) * 2007-08-31 2013-02-05 Red Hat, Inc. Post-install configuration for applications
US8612966B2 (en) * 2007-11-29 2013-12-17 Red Hat, Inc. Method and system for preparing software offerings having software application code and post-install configuration information
US9977721B2 (en) 2007-12-20 2018-05-22 Netapp, Inc. Evaluating and predicting computer system performance using kneepoint analysis
US8135659B2 (en) * 2008-10-01 2012-03-13 Sap Ag System configuration comparison to identify process variation
US8706910B2 (en) * 2008-10-28 2014-04-22 Panzura, Inc. Dynamically adaptive network-based data processing system and method
US20100106562A1 (en) * 2008-10-28 2010-04-29 Pixel8 Networks, Inc. User-targeted content processing system and method
US10880340B2 (en) 2008-11-26 2020-12-29 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US9154942B2 (en) 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US9519772B2 (en) 2008-11-26 2016-12-13 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US9026668B2 (en) 2012-05-26 2015-05-05 Free Stream Media Corp. Real-time and retargeted advertising on multiple screens of a user watching television
US8180891B1 (en) 2008-11-26 2012-05-15 Free Stream Media Corp. Discovery, access control, and communication with networked services from within a security sandbox
US9961388B2 (en) 2008-11-26 2018-05-01 David Harrison Exposure of public internet protocol addresses in an advertising exchange server to improve relevancy of advertisements
US10334324B2 (en) 2008-11-26 2019-06-25 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9986279B2 (en) 2008-11-26 2018-05-29 Free Stream Media Corp. Discovery, access control, and communication with networked services
US10567823B2 (en) 2008-11-26 2020-02-18 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US10977693B2 (en) 2008-11-26 2021-04-13 Free Stream Media Corp. Association of content identifier of audio-visual data with additional data through capture infrastructure
US10419541B2 (en) 2008-11-26 2019-09-17 Free Stream Media Corp. Remotely control devices over a network without authentication or registration
US10631068B2 (en) 2008-11-26 2020-04-21 Free Stream Media Corp. Content exposure attribution based on renderings of related content across multiple devices
US9386356B2 (en) 2008-11-26 2016-07-05 Free Stream Media Corp. Targeting with television audience data across multiple screens
US8396893B2 (en) * 2008-12-11 2013-03-12 Sap Ag Unified configuration of multiple applications
US8255429B2 (en) * 2008-12-17 2012-08-28 Sap Ag Configuration change without disruption of incomplete processes
WO2011018827A1 (ja) * 2009-08-13 2011-02-17 株式会社日立製作所 実行環境におけるアプリケーションの適性を評価するシステム及び方法
US10860279B2 (en) 2009-11-24 2020-12-08 Clearslide, Inc. Method and system for browser-based screen sharing
US9733886B2 (en) 2009-11-24 2017-08-15 Clearslide, Inc. Method and system for browser-based screen sharing
US8667480B1 (en) * 2010-04-19 2014-03-04 Google Inc. Automatically updating browser extensions, and applications thereof
US9118733B2 (en) * 2010-05-21 2015-08-25 Skype Multilevel routing
EP2533162B1 (en) 2010-11-29 2022-10-26 Hughes Network Systems, LLC Proxy Server Apparatus for pre-fetching content using browser specifics
CA2837677C (en) 2011-05-30 2019-05-21 Clearslide, Inc. Method and system for browser-based control of a remote computer
US9727441B2 (en) 2011-08-12 2017-08-08 Microsoft Technology Licensing, Llc Generating dependency graphs for analyzing program behavior
US10250579B2 (en) * 2013-08-13 2019-04-02 Alcatel Lucent Secure file transfers within network-based storage
US20150058058A1 (en) * 2013-08-26 2015-02-26 Cisco Technology, Inc. Automatic Detection of Network Conditions Prior to Engaging in Online Activities
US10430487B2 (en) 2014-04-04 2019-10-01 Paypal, Inc. System and method to share content utilizing universal link format
US11768994B1 (en) * 2014-12-16 2023-09-26 EMC IP Holding Company LLC Methods, systems, and computer readable mediums for generating a curated user interface (UI) marker
US10296580B1 (en) 2015-09-18 2019-05-21 Amazon Technologies, Inc. Delivering parsed content items
US10127210B1 (en) 2015-09-25 2018-11-13 Amazon Technologies, Inc. Content rendering
US10241983B1 (en) 2015-09-28 2019-03-26 Amazon Technologies, Inc. Vector-based encoding for content rendering
US10601894B1 (en) 2015-09-28 2020-03-24 Amazon Technologies, Inc. Vector-based encoding for content rendering
US10348797B1 (en) * 2015-12-15 2019-07-09 Amazon Technologies, Inc. Network browser configuration
US10341345B1 (en) 2015-12-15 2019-07-02 Amazon Technologies, Inc. Network browser configuration
CN106021515A (zh) * 2016-05-23 2016-10-12 浪潮电子信息产业股份有限公司 一种数据库脚本文件管理方法及系统、客户端装置
CA3061180A1 (en) 2017-05-15 2018-11-22 MIXHalo Corp. Systems and methods for providing real-time audio and data

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998040831A1 (en) * 1997-03-14 1998-09-17 Intervu, Inc. System and method for selection and retrieval of diverse types opf video data on a computer network
JPH10260821A (ja) * 1997-03-17 1998-09-29 Rikuruuto:Kk Wwwブラウザ用スタートページの自動生成システム
JPH10301760A (ja) * 1997-04-22 1998-11-13 Toshiba Corp ソフトウェア自動配布管理システム及び方法
JPH11194983A (ja) * 1997-11-21 1999-07-21 Internatl Business Mach Corp <Ibm> カスタマイズされたインターネット・コンテンツを要求側クライアント装置に提供する方法およびシステム
JPH11282686A (ja) * 1998-03-30 1999-10-15 Hitachi Ltd ネットワークコンピュータシステム
JP2001513588A (ja) * 1997-08-07 2001-09-04 シーメンス アクチエンゲゼルシヤフト 第1の計算機(サーバ)によって用意される機能を第2の計算機(クライアント)にロードするための方法

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2692701B1 (fr) * 1992-06-18 1994-09-30 Aerospatiale Procédé de contrôle de configuration d'une installation complexe et dispositif pour la mise en Óoeuvre de ce procédé.
US5421009A (en) * 1993-12-22 1995-05-30 Hewlett-Packard Company Method of remotely installing software directly from a central computer
US5845077A (en) 1995-11-27 1998-12-01 Microsoft Corporation Method and system for identifying and obtaining computer software from a remote computer
FR2744817B1 (fr) * 1996-02-08 1998-04-03 Ela Medical Sa Dispositif medical implantable actif et son programmateur externe a mise a jour automatique du logiciel
US6074434A (en) 1996-06-07 2000-06-13 International Business Machines Corporation Selection of code updates, data updates or new data for client
US6151643A (en) 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
TWI249760B (en) * 1996-07-31 2006-02-21 Canon Kk Remote maintenance system
US6139177A (en) * 1996-12-03 2000-10-31 Hewlett Packard Company Device access and control using embedded web access functionality
US6029196A (en) * 1997-06-18 2000-02-22 Netscape Communications Corporation Automatic client configuration system
JPH11296453A (ja) 1998-04-13 1999-10-29 Ddi Corp ダウンロード方法
US6059842A (en) * 1998-04-14 2000-05-09 International Business Machines Corp. System and method for optimizing computer software and hardware
US6167567A (en) * 1998-05-05 2000-12-26 3Com Corporation Technique for automatically updating software stored on a client computer in a networked client-server environment
US6219659B1 (en) * 1998-07-08 2001-04-17 Electronics For Imaging, Inc. Configuration description language system
US6151599A (en) * 1998-07-17 2000-11-21 International Business Machines Corporation Web client scripting test architecture for web server-based authentication
US6449642B2 (en) * 1998-09-15 2002-09-10 Microsoft Corporation Method and system for integrating a client computer into a computer network
US6452609B1 (en) * 1998-11-06 2002-09-17 Supertuner.Com Web application for accessing media streams
US6279030B1 (en) * 1998-11-12 2001-08-21 International Business Machines Corporation Dynamic JAVA™ class selection and download based on changeable attributes
US6324578B1 (en) * 1998-12-14 2001-11-27 International Business Machines Corporation Methods, systems and computer program products for management of configurable application programs on a network
US6510466B1 (en) * 1998-12-14 2003-01-21 International Business Machines Corporation Methods, systems and computer program products for centralized management of application programs on a network
US6477550B1 (en) * 1999-03-16 2002-11-05 Mcafee.Com Corporation Method and system for processing events related to a first type of browser from a second type of browser
US6282711B1 (en) * 1999-08-10 2001-08-28 Hewlett-Packard Company Method for more efficiently installing software components from a remote server source
US6493871B1 (en) * 1999-09-16 2002-12-10 Microsoft Corporation Method and system for downloading updates for software installation
US6546554B1 (en) * 2000-01-21 2003-04-08 Sun Microsystems, Inc. Browser-independent and automatic apparatus and method for receiving, installing and launching applications from a browser on a client computer
US7130701B1 (en) * 2000-05-24 2006-10-31 Schneider Automation Inc. System for remote configuration monitoring of an industrial control system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998040831A1 (en) * 1997-03-14 1998-09-17 Intervu, Inc. System and method for selection and retrieval of diverse types opf video data on a computer network
JPH10260821A (ja) * 1997-03-17 1998-09-29 Rikuruuto:Kk Wwwブラウザ用スタートページの自動生成システム
JPH10301760A (ja) * 1997-04-22 1998-11-13 Toshiba Corp ソフトウェア自動配布管理システム及び方法
JP2001513588A (ja) * 1997-08-07 2001-09-04 シーメンス アクチエンゲゼルシヤフト 第1の計算機(サーバ)によって用意される機能を第2の計算機(クライアント)にロードするための方法
JPH11194983A (ja) * 1997-11-21 1999-07-21 Internatl Business Mach Corp <Ibm> カスタマイズされたインターネット・コンテンツを要求側クライアント装置に提供する方法およびシステム
JPH11282686A (ja) * 1998-03-30 1999-10-15 Hitachi Ltd ネットワークコンピュータシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008523464A (ja) * 2004-12-06 2008-07-03 オムニフォン リミテッド 特定形式の無線コンピュータ装置用にカスタム化されたソフトウェアアプリケーションを自動的に構築する方法

Also Published As

Publication number Publication date
AU2001270294A1 (en) 2002-01-14
EP2378418A1 (en) 2011-10-19
US20020013833A1 (en) 2002-01-31
WO2002003202A3 (en) 2003-08-21
WO2002003202A2 (en) 2002-01-10
EP1370936A2 (en) 2003-12-17
CA2414376A1 (en) 2002-01-10
US7665082B2 (en) 2010-02-16
EP2378418B1 (en) 2016-08-24
CA2414376C (en) 2012-06-05

Similar Documents

Publication Publication Date Title
EP2378418B1 (en) Methods and systems for adaption, diagnosis, optimization, and prescription technology for network based applications
US7941839B2 (en) Countermeasures to automated methods and processes for establishing media streaming connections through firewalls and proxy servers
US9438662B2 (en) Enabling secure remote assistance using a terminal services gateway
US7966381B2 (en) Methods and apparatus for performing context management in a networked environment
US7660845B2 (en) Methods and apparatus for verifying context participants in a context management system in a networked environment
US8010971B2 (en) Voice over internet protocol remote upgrading
US20060179150A1 (en) Client server model
US10367894B2 (en) Information processing apparatus, method for controlling the same, non-transitory computer-readable storage medium, and information processing system
US20090216875A1 (en) Filtering secure network messages without cryptographic processes method
US10613958B2 (en) Secure method for managing a virtual test platform
US20100017500A1 (en) Methods and systems for peer-to-peer proxy sharing
JP2011100207A (ja) リモートアクセス装置、リモートアクセスプログラム、リモートアクセス方法及びリモートアクセスシステム
US7975005B2 (en) Using a proxy to redirect downloads
US20200336515A1 (en) Establishing And Managing Connections For Real Time Communications
Cisco Release Notes for the PIX Firewall Manager Version 4.3(2)f
CN113824808B (zh) 用于使用中间相遇代理的网络地址转换穿透的方法和系统
Adamczyk et al. Non-compliant and proud: A case study of HTTP compliance
JP4873743B2 (ja) 通信管理システム及びソケット管理サーバ及び通信管理方法
WO2006010193A1 (en) Voice calls over the internet
Olalekan et al. INTERNATIONAL JOURNAL OF HIGHER EDUCATION AND RESEARCH
Design Cisco Application Networking for PeopleSoft Enterprise Deployment Guide

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20071225

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080702

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080806

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110812

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120309

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120403