JPH10312350A - リソース命名方法及び機構 - Google Patents

リソース命名方法及び機構

Info

Publication number
JPH10312350A
JPH10312350A JP9313220A JP31322097A JPH10312350A JP H10312350 A JPH10312350 A JP H10312350A JP 9313220 A JP9313220 A JP 9313220A JP 31322097 A JP31322097 A JP 31322097A JP H10312350 A JPH10312350 A JP H10312350A
Authority
JP
Japan
Prior art keywords
server
group
data
code
client
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.)
Granted
Application number
JP9313220A
Other languages
English (en)
Other versions
JP3967806B2 (ja
Inventor
Islam Naim
ナイーム・イスラーム
James Paris Korin
コリン・ジェームズ・パリス
Charles Starman Daniel
ダニエル・チャールズ・スターマン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH10312350A publication Critical patent/JPH10312350A/ja
Application granted granted Critical
Publication of JP3967806B2 publication Critical patent/JP3967806B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 クライアント側でカストマイズされた探索を
許容し、コンテンツ・プロバイダ側でのサービスの高い
利用可能性をサポートする、リソース名解決の方法及び
システムの提供。 【解決手段】 本発明によれば、コードをリンクに関連
付けてこれを知的にし、リンクとバック・エンド・サー
バの間の特別なプロトコルを設けてスケーラブル性と性
能を維持することによって、サービス・プロバイダ側の
ボトルネックを減らすための、インターネット上のリン
ク及びサービスを作成するための機構が提供される。ス
ケーラブル性は、検索の機能性の多くをクライアント側
に移動することによってサポートされる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ及び
コンピュータ・ネットワークに関し、具体的には、リソ
ース名解決のための改良された方法及び機構に関する。
さらに具体的には、本発明は、カストマイズされたイン
ターネット上の名前解決のための、解決された情報リソ
ースの利用可能性の水準を拡張する機構に関する。
【0002】
【従来の技術】辞書の定義は本明細書の用語にあてはま
るが、読者を支援するために、一部の用語の以下の定義
を提供する。
【0003】インターネット TCP/IPプロトコルを使用するネットワーク及びゲ
ートウェイからなるネットワーク。
【0004】クライアント クライアントとは、コマンドに関連するタスクを実行す
るサーバにコマンドを発行するコンピュータである。
【0005】サーバ 別のコンピュータのコマンドでタスクを実行するコンピ
ュータは、すべてがサーバである。ウェブ・サーバは、
通常は、1つまたは複数のクライアントをサポートし、
HTTP(Hyper-Text Transfer Protocol)を使用し
て、クライアントからのデータの要求を処理する。
【0006】ワールド・ワイド・ウェブ(WWWまたは
ウェブ) インターネット上で情報を探している人が、関心のある
強調表示された単語または句(ハイパーリンク)を活動
化することによってサーバからサーバへ、またはデータ
ベースからデータベースへ切り替えることができるよう
にする、インターネットの応用。インターネットWWW
サーバは、クライアントをサポートし、情報を提供す
る。ウェブは、インターネットのビューを提示し、ここ
では、リソースのすべてがURLとしてアドレッシング
される。
【0007】URN(Universal Resource Name) 特定の名前を1つまたは複数のリソースにマッピングす
るのに使用できる、インターネット上のリソースのため
の命名方式。URNは、次の3つの基本的な能力を有す
る。URNは、スコープが大域的(名前はどこでも同じ
意味を有する)であり、グローバルにユニーク(同一の
URNは、別のリソースには絶対に割り当てられない)
であり、永続的(ほとんどの場合、URNの寿命は永久
的である)である。
【0008】URC(Universal Resource Characteris
tics) URCは、リソースの属性に基づいてインターネット内
のリソースを突き止めるための方式である。これによっ
て、属性が名前または位置に束縛される。
【0009】URL(Universal Resource Locator) インターネット上の情報を一意に識別またはアドレッシ
ングする方法。電子メール・アドレスのウェブ・ドキュ
メント版と見なすことができる。URLは、ハイパーリ
ンクを用いてアクセスできる。URLの1例が「http:/
/www.arun.com:80/table.html」である。URLには4
つの構成要素がある。左から始めると、第1の要素は、
「:」によって残りの部分から分離され、リソースをア
クセスするプロトコルを指定する。次の要素は、ターゲ
ット・ホストのホスト名またはIPアドレスであり、こ
れは、左側の「//」と右側の「/」または任意選択
の「:」によって区切られる。ポート番号は任意選択で
あり、左側のホスト名との間は「:」、右側は「/」によ
って区切られる。第4の構成要素は、実際のファイル名
またはプログラム名である。この例では、拡張子「.htm
l」から、これがHTMLファイルであることが示され
る。
【0010】HTML(HyperText Markup Language) HTMLは、ウェブ・クライアントによって表示される
ドキュメントを作成し、接続するためにウェブ・サーバ
が使用する言語である。HTMLでは、ハイパーテキス
ト・ドキュメントが使用される。
【0011】HTTP(Hypertext transfer protoco
l) HTTPは、ステートレス・プロトコルの1例である。
ステートレスとは、クライアントからサーバへの要求の
すべてが、独立に扱われることを意味する。サーバは、
前の接続の記録を有しない。HTTPは、URLで指定
できるアクセス・プロトコルの1つである。
【0012】インターネット・ブラウザまたはウェブ・
ブラウザ HTTPなどのインターネット・プロトコルを実行し、
クライアントの画面にサーバからの結果を表示する、グ
ラフィカル・インターフェース・クライアント・ツー
ル。ブラウザは、ユーザがインターネット・「サーフィ
ン」を行う時に、絵図によるデスクトップ、ディレクト
リ及び検索ツールを含むインターネットの案内役として
働くことができる。本特許出願書では、ウェブ・ブラウ
ザは、ワールド・ワイド・ウェブと通信するクライアン
ト・サービスである。
【0013】アプレット サーバからクライアントへダウンロードされ、クライア
ント側で実行されるコード片。
【0014】ジャバ(Java) インターネットでのプログラミングのためにSun Micros
ystems社によって開発されたオブジェクト指向コンピュ
ータ・プログラミング言語。インターネット・ブラウザ
のほとんどが、アプレットを記述する言語としてジャバ
をサポートする。
【0015】オブジェクト いくつかのデータと外部からアクセス可能なメソッドの
組を組み込んでカプセル化された実体。オブジェクト
は、定義済みのメソッドの呼出しを介してのみ操作でき
る。
【0016】分散システム それぞれが独自のCPUと記憶装置(主記憶を含む)を
有する、計算機械の集合。計算機は、イーサネット、光
ファイバATMネットワーク、無線(セルラ)技術を含
む(これに制限されるものではない)通信媒体を介して
接続される。
【0017】従来の情報サービスは、現在、アクセス可
能な関連情報に対する顧客の依存度の高まりに対処する
必要から、急激に発達しつつある。この発達の最も重要
な産物の1つが、システム全体への情報リソースの分散
すなわち、高度に分散された情報サービスの作成であ
る。
【0018】この発達の特筆すべき例の1つが、ワール
ド・ワイド・ウェブ(WWW)である。この例では、通
常はディジタル・ドキュメントの形態であるリソース
が、インターネット全体に分散され、多数の可能なブラ
ウザ・インターフェースのうちの1つを介してユーザに
よってアクセスされる。アクセス・モデルは、「クライ
アント/サーバ」・モデルであり、ブラウザがクライア
ント、ウェブ・サーバがサーバになる。このモデルで
は、クライアントは、特定のドキュメントまたはリソー
スを突き止める最初のステップとして、ファイル(ブッ
クマーク)にアクセスするか、周知の検索エンジン(別
の情報サービス)に問い合わせることができる。このア
クセスまたは問合せは、URLと称する識別子をもたら
す。URLによって、システム内に常駐するドキュメン
トまたはリソースが一意に識別され、これを使って、所
望のリソースにアクセスできる。
【0019】上のウェブの例と同様に、ほとんどの分散
情報サービス・リソースは、単一の特定のサービスの位
置と、おそらくは他の特性とを識別するいくつかの独自
表現に解決される名前によって識別される。この分散シ
ステムでの解決は、通常は、静的であり1対1である
(すなわち、名前は、唯一の独自の表現に解決され
る)。解決処理の性質が静的なので、このサービス自体
は、クライアントまたは基盤の挙動の変動に適合できな
い。この柔軟性のなさの簡単な例は、ローカルまたはグ
ローバルのクライアント負荷が劇的に高まり(これは、
ソフトウェアの新版が使用可能になるか、ネットワーク
の区分が行われ、サービスの一部がアクセス不能になっ
たことに起因する可能性がある)、サービスが、クライ
アントの性能要件及びアクセス要件に対応してスケーリ
ングできない状況がウェブで発生した時にみられる。
【0020】この柔軟性の制約から、クライアントが関
連リソースを突き止められるようにし、これらのリソー
スの高い利用可能性をもたらす形で名前解決を可能にす
る機構の必要が導かれる。
【0021】分散情報サービスでの解決能力を拡張しよ
うとする他の方法が存在した。
【0022】たとえば、米国テネシー大学のNetlib Dev
elopment Groupによって開発されたRCDS(Resource
Cataloging and Distribution Service)は、インター
ネットからアクセス可能なリソースの特性をカタログ
し、アクセス性を向上するためにそのようなリソースを
複製し、複製されたリソースの現在位置をカタログする
ためのアーキテクチャである。ユーザに提供されるファ
イルの完全性は、メッセージ・ダイジェストと公開キー
認証を使用して保証される。
【0023】RCDSは、(1)WWWブラウザであ
り、システムによって提供されるリソースを消費するク
ライアントと、(2)クライアントが要求したファイル
へのアクセスを提供するファイル・サーバと、(3)ネ
ットワーク上でアクセス可能なリソースの特性に関する
情報を維持し、クライアントからのこれらの特性に関す
る問合せを受け入れるリソース・カタログ・サーバと、
(4)ネットワーク上でアクセス可能なリソースの位置
に関する情報を維持し、クライアントからの位置データ
に関する問合せを受け入れるロケーション・サーバと、
(5)ファイル・サーバ上のファイルを管理する(ファ
イル・サーバのファイルの追加、更新及び除去を行う)
コレクション・マネージャと、(6)コンテンツ・プロ
バイダから新規ファイルと解説を受け入れ、そのファイ
ルをシステムに挿入するパブリケーション・ツールとい
う複数の構成要素からなるシステムである。
【0024】RCDSの解決構成要素は、リソース・カ
タログ・サーバ及びロケーション・サーバからなる。リ
ソース・カタログ・サーバは、URCを使用して、UR
N(またはURL)を位置独立ファイル名(Location I
ndependent File Name、LIFN)に解決し、ロケーシ
ョン・サーバは、LIFNをURLに解決する。URC
に存在する特性またはメタデータから、RCDSは、解
決の範囲を縮小するためにクライアントが使用するラベ
ルを提供できる。
【0025】RCDSは、以下の3つの点で不適切であ
る。 1.知能(たとえばコード内の単純な探索エンジンや、
システム内の探索エンジンへのアクセス)を使用して、
クライアントから使用可能なリソース・リストをカスト
マイズできるという点で、解決処理に追加される機能性
がない。2.クライアントは、クライアントに最適な可
能なサービスを実現するためにクライアントとサービス
の両方の特性を考慮に入れてサービスと折衝(クライア
ントの介入の有無を問わず)することができない。3.
サービスの性能と利用可能性を確保するためのサーバ側
オブジェクトの自動ミラーリングがない。
【0026】CNRIハンドル・システム方式では、代
理サーバを使用して、ウェブ・ブラウザ及び他のクライ
アントが名前(このシステムの用語ではハンドルと称す
る)を解決できるようにし、キャッシュ・サーバを使用
して、前に解決されたサーバをキャッシュ記憶する。こ
の場合、ハンドルは、いくつかの特性に基づいて解決で
きるが、これを達成する方法を示すための記述または実
施態様はない。この方式のキャッシュ・サーバと代理サ
ーバは、これらのトランザクションでの折衝を許容しな
い。この方式も不適切である。というのは、この方式で
は、関連リソースを突き止めるためのカストマイズされ
たクライアント側の探索が許容されず、自動ミラーリン
グによって高いアクセス性を保証する試みもないからで
ある。
【0027】
【発明が解決しようとする課題】本発明は、クライアン
ト側でのカストマイズされた探索を許容し、コンテンツ
・プロバイダ側でのサービスの高い利用可能性をサポー
トする、リソース名解決の方法及びシステムを対象とす
る。
【0028】
【課題を解決するための手段】本発明の第1の態様によ
れば、リソースがコードとデータの組合せによって表さ
れ、コードの実行がリソースを所望するクライアント側
で行われる分散計算環境で、リソースに命名するための
機構が提供される。解決機構(コード)ならびにこの機
構が計算を行うデータは、識別されるリソースのために
カストマイズできる。
【0029】本発明の第2の態様によれば、コードは、
分散環境すなわちクライアント、ネットワーク、Sma
rtLinkクリエータ及びコンテンツ・プロバイダか
ら得られるデータとコードを使用してリソースに解決さ
れる。解決機構は、クライアント側構成要素とサーバ側
構成要素からなる。クライアント側構成要素のコード及
びデータは、SmartLinkコードで定義された条
件によって指示される複数の局面で環境から取得でき
る。各局面では、このコードとデータに対する計算を使
用して、追加データを取得できる。評価の最終局面が、
リソースに解決される。サーバ側構成要素は、評価中に
クライアント側構成要素から問い合わせられる可能性が
ある調整されたメトリックを維持する。クライアント側
構成要素によって計算される中間結果は、サーバに安全
に書き戻すことができる。サーバ側構成要素は、サイト
・グループ・リーダによって管理される自動ミラーリン
グ機能及びメトリック更新機能を提供することによっ
て、評価のためのサポートを提供する。
【0030】
【発明の実施の形態】図1は、本発明の特徴を有するコ
ンテンツ配布機構を示す図である。ユーザ100の要求
に対して、クライアント計算機101は、サーバ計算機
115に、クライアントが実行可能な命名リソースのイ
メージ116(すなわち、記憶に適した形式のコード及
びデータ)を要求する。この命名リソースは、Smar
tLink103と称し、コンテンツ配布機構112を
介して提供される。配布機構の例には、フロッピ・ディ
スケット、CD−ROM及びインターネットが含まれ
る。SmartLinkを実施する実行可能なコンテン
ツの例には、ジャバとActiveXコントロールが含
まれる。SmartLinkには、スクリプト(コー
ド)104、動作データ105及びIDデータ106が
含まれる。SmartLinkはクライアント計算機側
で解決されるので、サーバは、クライアントの必要に合
わせてカストマイズされたSmartLinkを提供で
きる。したがって、SmartLink解決は、静的で
はなく、多数の可能なコンテンツ・プロバイダのうちの
1つを選択でき、これによって、所望のサービスの高い
利用可能性がもたらされる。さらに、この機構は、どの
リソースも(たとえばサーバ計算機)複雑な名前解決を
実行する必要がないので、本来の性質として負荷平衡式
である。
【0031】ユーザによる活動化の際に、スクリプト1
04が、クライアント計算機101で実行されて、主コ
ンテンツ・プロバイダ109として多数の可能なコンテ
ンツ・プロバイダ計算機110のうちの1つが選択され
る。スクリプト104は、SmartLinkパラメー
タである動作データ105及びクライアント環境パラメ
ータ102を使用して、この計算を行う。コンテンツ・
プロバイダの例には、ソフトウェア配布センタ、株価情
報サービス、オンライン商品販売業者が含まれる。Sm
artLinkパラメータの例には、コンテンツ・プロ
バイダの位置、前のコンテンツ・プロバイダの負荷、コ
ンテンツ配布帯域幅が含まれる。クライアント環境パラ
メータの例には、クライアントの位置、コンテンツ配布
帯域幅、ユーザの予算が含まれる。
【0032】問合せ機構113を使用して、Smart
Link103は、主コンテンツ・プロバイダ109か
ら問合せ機構113を介してコンテンツ・プロバイダ・
パラメータ114を取得する。問合せ機構の例には、イ
ンターネット、モデム、ファクシミリ、ケーブル・テレ
ビジョン・ネットワークなどの媒体を介して実行され
る、RPC、HTTP、TCPなどのプロトコルが含ま
れる。コンテンツ・プロバイダ・パラメータの例には、
現在のコンテンツ・プロバイダのメンバーシップ、現在
のコンテンツ・プロバイダの負荷、コンテンツ・プロバ
イダのサービス料金、コンテンツ・プロバイダの位置が
含まれる。SmartLinkコード104は、Sma
rtLinkパラメータ105、クライアント環境パラ
メータ102及びコンテンツ・プロバイダ・パラメータ
114を使用して評価を行い、解決されたコンテンツ・
プロバイダ111への参照をもたらす。SmartLi
nkは、コンテンツ配布機構112を使用して、解決さ
れたコンテンツ・プロバイダのコンテンツをクライアン
ト計算機に転送する。書戻し機構107が、Smart
Linkを取得する次のクライアント計算機101によ
る使用のため、SmartLink103によって取得
された更新されたメトリックをサーバ計算機115のイ
メージ116に格納する。
【0033】図2は、SmartLink103の構造
の例を示す図である。SmartLinkは、2つの構
成要素すなわち、SmartLink CC103'と
称するクライアント構成要素と、SmartLink
PC250と称するコンテンツ・プロバイダ構成要素か
らなる。SmartLink CC103'は、クライ
アント計算機101上で走行し、SmartLink
PC250は、コンテンツ・プロバイダ計算機110、
主コンテンツ・プロバイダ109またはグループ・リー
ダ計算機118のいずれかで走行する。基本的に、Sm
artLinkCCは、分散システムのさまざまなメン
バから取得されたデータに作用するスクリプト104か
らなる。具体的に言うと、SmartLink CC
は、動作データ105とIDデータ106を維持する。
SmartLink CCのスクリプト104は、複数
のモジュールから構成される。モジュールの例には、主
コンテンツ・プロバイダ109及び解決されたコンテン
ツ・プロバイダ111の役割を満たすためにメトリック
・リストから最適のコンテンツ・プロバイダ計算機11
0を選択するメトリック評価モジュール211、パラメ
ータを認証する署名検証モジュール212、主コンテン
ツ・プロバイダ109からメトリックを取得するメトリ
ック問合せモジュール213及び、解決されたコンテン
ツ・プロバイダ111からコンテンツを取得するコンテ
ンツ獲得モジュール214が含まれる。コンテンツ・プ
ロバイダは、グループ・リーダ計算機118によって調
整されるコンテンツ・プロバイダ・グループ108に編
成される。
【0034】SmartLink CCのIDデータ1
06には、クライアントがSmartLinkにアクセ
スしたサーバのID信用証明(SmartLinkサー
バID221)、許可されたコンテンツ・プロバイダの
証明(コンテンツ・プロバイダ証明222)及びSma
rtLinkのクリエータのID(SmartLink
クリエータID223)が含まれる。ID情報の使用
は、任意選択であり、SmartLinkスクリプト1
04用のモジュールの選択に基づく。
【0035】動作データ105は、メトリック評価モジ
ュール211によって使用される別個のモジュールの組
からなるものとすることができる。クライアント計算機
101にSmartLink CCが配布される時(4
03)にサーバ計算機115から取得されたか、Sma
rtLink CCによる問合せの時(409)に主コ
ンテンツ・プロバイダ109から取得されたかのいずれ
かである、使用可能な最も最近のメトリックとコンテン
ツ・プロバイダ・メンバーシップ・データが、動作デー
タに記憶される。サーバからのデータは、前の実体が書
戻し機構107を介してイメージ116にそのデータを
書き戻した時(410)に取得される。安全な書戻し機
構は、図5で説明する。可能なコンテンツ・プロバイダ
のリストは、コンテンツ・プロバイダのリスト232に
記憶され、これらの機構のメトリック・データは、メト
リック・データ・モジュール233に記憶される。この
データを取得した時刻は、タイム・スタンプ・モジュー
ル231に記録される。タイム・スタンプ・モジュール
は、完全な評価のテストを行うことができるかどうかを
判定するために検査される。メトリック評価モジュール
211に必要なすべてのメトリックの値が、メトリック
・データ・モジュール233内に存在する場合には、解
決されたコンテンツ・プロバイダに対して直接に要求を
行う(412)ことができる。そうでない場合には、S
martLink CCは、まず主コンテンツ・プロバ
イダ109を選択して要求を行い(408)、新しいメ
トリックの組を取得する(409)。
【0036】SmartLink PC250は、4つ
のモジュールからなる。クライアント・メトリック更新
モジュール251は、要求時にメトリックをCCに供給
する。データ配布モジュール252は、コンテンツ配布
機構112を使用して、CCにコンテンツを伝送する。
グループ・メトリック更新モジュール253は、グルー
プ・リーダ計算機118によって管理される他のコンテ
ンツ・プロバイダ計算機110にメトリックを供給す
る。メンバーシップ更新モジュール254は、グループ
・リーダ計算機118からのグループへの参加及び離脱
の要求を処理する。PC250の処理の例を、図6及び
図7に示す。
【0037】図3は、SmartLink CC作成処
理の例を示す図である。SmartLink作成は、サ
ーバ計算機115によって呼び出されたクリエータ11
7で実行されることが好ましい。当業者であれば、サー
バにクリエータの役割を含めることもできることを諒解
するであろう。さらに、ほとんどの場合に、Smart
Linkは、一度作成され、サーバによって記憶される
が、サーバは、クライアントの要求のそれぞれに応答し
て新しいSmartLinkを作成することができる。
【0038】SmartLink CC作成には、Sm
artLink CCイメージを作成するためのサーバ
計算機115とクリエータ117の間の相互作用が含ま
れる。サーバは、問合せ機構113を介してクリエータ
にパラメータを供給し(301)、イメージ116を作
成するためのカストマイズ・パラメータを提供する。カ
ストマイズ・パラメータの例には、SmartLink
CC103'によって参照されるサービスのタイプ、
SmartLink CC評価処理の性質、または、S
martLink CC103'のアクセスが制限され
る地理的な区域が含まれる。クリエータ117は、カス
トマイズ・パラメータを使用して、選択機構を選択し
(302)、スクリプト104と初期の動作データ10
5を選択する(303)。パラメータから、安全な動作
が要求される場合(304)、クリエータは、Smar
tLink CCのIDデータ106も生成する(30
6)。その後、コンテンツ配布機構112を介してサー
バ計算機にSmartLink CCのイメージが配布
され(305)、サーバに記憶される。
【0039】SmartLink評価処理の例を、図4
に示す。SmartLink評価は、クライアント側で
行われる。ユーザがSmartLinkを活動化し(4
01)、クライアント計算機が、サーバにSmartL
inkを要求する(402)。サーバは、SmartL
inkをクライアントにダウンロードする(403)。
SmartLinkは、クライアント環境からの情報を
使用して、部分的に評価することができる(404)。
SmartLinkは、最後の実行からキャッシュ記憶
された可能性があるメトリック情報のタイム・スタンプ
を検査する(405)。キャッシュ記憶されたメトリッ
クが、十分最近であることがわかり、SmartLin
kが完全に評価できる(404)とわかった(すなわ
ち、単一のコンテンツ・プロバイダが識別された)場合
(407)、SmartLinkは、選択されたコンテ
ンツ・プロバイダと通信し、解決されたコンテンツ・プ
ロバイダ111からコンテンツ配布機構112を介する
コンテンツの転送を開始する(412)。メトリックが
古いか、SmartLinkの評価を完了できなかった
場合、メトリック問合せモジュール213によって決定
されるヒューリスティックを使用して、新しいメトリッ
クを取得するのに最適の可能なコンテンツ・プロバイダ
を識別する。このコンテンツ・プロバイダを、主コンテ
ンツ・プロバイダ109と称する。SmartLink
は、主コンテンツ・プロバイダに、更新されたメトリッ
ク、使用可能なプロバイダのリスト及び評価アルゴリズ
ムを要求する(408)。主コンテンツ・プロバイダに
よって、SmartLink CC103'にデータが
送られる(409)。その後、SmartLink C
Cは、書戻し機構107を使用して、サーバ計算機11
5にデータを記憶する(410)。このデータを使用し
て、SmartLink CCは、評価を完了して(4
11)、解決されたコンテンツ・プロバイダ111を計
算し、解決されたコンテンツ・プロバイダと通信して、
コンテンツを取得する(412)。
【0040】SmartLink評価は複数の局面を有
する構造なので、本発明がカストマイズ可能になり、高
い利用可能性がもたらされることに留意されたい。分散
環境に問い合わせることによって、SmartLink
は、使用可能な最適のコンテンツ・プロバイダを選択で
き、この「最適」は、そのSmartLinkによって
アクセスできるメトリックである限り、どのようなメト
リックの組によって定義されるものでもかまわない。当
業者であれば、この特徴の2局面性(すなわち、主コン
テンツ・プロバイダにメトリックを要求し、その後、こ
のメトリックを使用して解決されたコンテンツ・プロバ
イダを選択すること)を、n局面解決機構に拡張できる
ことを諒解するであろう。しかし、クライアント、サー
バ及びコンテンツ・プロバイダの必要に基づいてSma
rtLinkをカストマイズする能力は、従来の静的リ
ンク手法に欠けている、カストマイズを可能にし、高い
利用可能性をサポートする要素である。
【0041】図5は、クライアントとサーバを用いる、
安全な書戻し機構107の処理の例を示す図である。当
業者であれば、このプロトコルでサーバの代わりに別の
データ記憶サイトを使用できることを諒解するであろ
う。安全な書戻しの使用は、推奨されるが任意選択であ
ることに留意されたい。この処理は、安全でない書戻し
機構に置換することができる。本明細書に記載のセキュ
リティ機構のすべてで、標準的なセキュリティ技法が使
用される。具体的に言うと、ディジタル署名、暗号化、
認証及び証明書作成のための技法は、カウフマン(C. K
aufman)他著、「Network Security: Private Communic
ation in a Public World」Prentice-Hall, Inc刊、米
国ニュージャージ州Englewood Cliffs、1995年と、
シュナイアー(B. Schneier)著、「Applied Cryptogra
phy Second Edition: Protocols, Algorithms, and Sou
rce Code in C.」John Wiley & Sons, Inc.刊、米国ニ
ューヨーク州、1996年に記載されている。解決され
たコンテンツ・プロバイダ111は、コンテンツ配布機
構112を使用してクライアント計算機101にデータ
を転送する(502)前に、すべてのデータに署名し、
タイム・スタンプを付ける(501)。スクリプト10
4の署名検証モジュール212が、コンテンツ・プロバ
イダから受け取ったパラメータをメトリック・データ・
モジュール233に書き込み、タイム・スタンプ・モジ
ュール231の動作データを更新する前に、署名を検証
し、データを更新する。署名は、コンテンツ・プロバイ
ダ証明222に記憶された署名情報に基づいて検証され
る(503)。メトリックからの署名情報は、動作デー
タ・コンテンツ・プロバイダ署名234として記憶され
る。メトリックの認証の後に、署名されたデータが、ク
ライアント計算機101によってサーバ計算機115に
送られる(504)。サーバ計算機は、そのデータが現
在記憶されているデータより新しいかどうかを判定し
(505)、そうである場合には、コンテンツ・プロバ
イダの権限を検証して、メトリックを提供する(50
6)。これらの条件が満たされる場合、メトリックは、
SmartLink CCの将来の呼出し(401)に
よる使用のためイメージ116に記憶され(507)、
SmartLink CCがダウンロードされる際(4
03)にクライアント計算機101に供給される。新規
性のテストまたは検証が失敗した場合には、データを破
棄する(508)。
【0042】図6、図7、図8及び図9は、Smart
Link PC250の機能を含むプロトコルの例を示
す図である。
【0043】コンテンツ・プロバイダ・グループ108
は、コンテンツ・プロバイダ計算機110として働く1
組のノードからなる。グループに含まれるコンテンツ・
プロバイダは、クライアントの要件及び環境に適した1
組のメトリックによって区別される。図6及び図7に、
コンテンツ・プロバイダ・グループ108内のグループ
・リーダ計算機118の処理を示す。
【0044】グループ・リーダ計算機118は、ノード
のグループを維持し、このグループの各ノードは、サー
ビス・コンテンツを含み、コンテンツ・プロバイダ・グ
ループ108を構成するコンテンツ・プロバイダ計算機
110を区別するメトリック情報を維持する。コンテン
ツ・プロバイダの間では、メトリック情報が共用され
る。SmartLink CCは、このメトリック(図
8及び図9に示すように、PCから取得する)を使用し
て、グループ内のコンテンツ・プロバイダの間で選択す
る。この選択は、スクリプト104のメトリック評価モ
ジュール211を使用して行われ、これによって、最も
適したコンテンツ・プロバイダ・グループとそのグルー
プ内で最も適したコンテンツ・プロバイダを決定でき
る。メトリックのタイプは、クリエータ117によって
選択され、メトリックが機能とサービス・レベルに及ぼ
すとクリエータが想定した影響を反映する。
【0045】メトリックの組の例を示す。 1.ノード負荷:負荷指標の時間平均 2.ノード・メモリ:メモリ使用量の時間平均 3.物理ノード・メモリ:固定された物理ノード・メモ
リ 4.ライブネス(Liveness):ノードが機能しているか
ダウンしているか 5.信頼性:(プロバイダ/ノード)の故障までの平均
時間 6.ソフトウェア・ライセンスの利用可能性 7.累算性能メトリック 8.ノード・アクセスのコスト 9.サーバ・ノードとクライアント・ノードの地理的な
近さ 10.サービスへのアクセスに関するセキュリティ制限
【0046】コンテンツ・プロバイダ計算機110は、
複数のSmartLink CC103'をサポートで
きるので、複数のメトリックの組を維持しなければなら
ない場合がある。メトリックは、グループ・メンバの間
で周期的または非周期的に更新できる。周期的更新モー
ドでは、コンテンツ・プロバイダ計算機110のそれぞ
れが、グループ・メンバのすべてにそのメトリックをマ
ルチキャストする。周期的更新の場合、グループ・リー
ダが更新の周期を制御する。非周期的更新の場合、グル
ープの個々のメンバが、そのノード上で1つのメトリッ
クまたはメトリックのグループが指定された閾値を超え
る時に、更新を伝播する。サイト・リーダは、この閾値
を指定する。コンテンツ・プロバイダ・グループのメン
バシップは、時間の中で動的に変更できる。
【0047】コンテンツ・プロバイダ・グループの動的
メンバーシップをサポートすることによって、Smar
tLinkの利用可能性を高めることができる。これな
しでも、SmartLinkの利用可能性を高めること
はできる。この機能がない場合、既存システムは、すべ
ての負荷変動を予測し、サービスをサポートするすべて
のノードへの明示的な静的リンクを追加しなければなら
ない。負荷が変動するたびに、たとえば、非常に人気の
あるソフトウェアがコンテンツ・プロバイダによって配
布される場合には、静的リンクの形で新しいノードを明
示的に追加しなければならない。負荷が減少する時に
は、リンクを明示的に除去しなければならない。コンテ
ンツ・プロバイダの動的メンバーシップがあれば、Sm
artLinkは、現在の実行環境に最適になるように
自動的にサイズを調整されるコンテンツ・プロバイダ・
グループの最も適したメンバから選択できる。
【0048】メンバーシップ変更は、システム内のメト
リックの変更によって明示的に制御される。ノードの寿
命は、そのノードのライブネス・メトリックの変更とし
て表現される。ノードの寿命は、更新メッセージの監視
によるか(周期的更新の場合)、非周期的更新の場合に
は環状pingプロトコルによって、判定される。
【0049】メンバーシップの変更は、選ばれたグルー
プ・リーダによって開始される(必要なプロトコルは、
グループ・リーダによって実行され、制御される)こと
が好ましい。リーダの選択は、マレンダ(Sape Mullend
er)編、「Distributed Systems」、ACM Press刊、米国
ニューヨーク州、1989年に提示された標準プロトコ
ルによって行うことができる。通常のリーダ選択プロト
コルに対する唯一の変更は、この変更がインターネット
を介して伝播されることである。このプロトコルは、イ
ンターネット上での実行を目的とする。このプロトコル
の要は、「使用可能な最適のサイト」にプロトコルのク
ライアント側が通信することのなんらかの保証を提供す
ることである。当業者であれば、グループ・リーダの機
能性を、1つの区別可能なノードで調整するのではな
く、グループのメンバの間で分散できることを理解する
ことに留意されたい。
【0050】図6及び図7に示されているように、グル
ープ・リーダ計算機118の処理は、繰り返し処理とし
て定義される。グループ・リーダは、図8及び図9の処
理を同時に実行して、コンテンツ・プロバイダとして働
くこともできることに留意されたい。周期的メトリック
更新が使用されており、現在のメトリックが古いと判定
される(602)場合、グループ・リーダは、グループ
・メンバに更新されたメトリックを要求する(60
3)。グループ・メンバは、メトリック更新要求(71
8)としてこの要求を処理する。
【0051】もう一度図6及び図7を参照すると、グル
ープ・リーダは、グループ内の計算機のメトリックを継
続的に検査する(601)。グループ・メンバが過負荷
の場合(610)、グループ・リーダは、使用可能なノ
ードのすべてに「加入(join)」要求をマルチキャスト
する(611)。その後、グループ・リーダは、指定さ
れたタイムスライスの間、すべての要求について待機す
る(612)。応答を受け取らない場合(613)、グ
ループ・リーダは待ちループ(601)に戻る。そうで
ない場合、リーダは、その負荷に基づいて最適の新規グ
ループ・メンバを選択し(614)、このサイトにその
グループに加入するよう要求する(614)。新規ノー
ドの参加を可能にするために、グループ・リーダは、新
規ノードへデータを転送するようにグループ・メンバに
要求する(615)。新規ノードがグループに加入する
準備ができたことの通知の際に(616)、グループ・
リーダは、グループの残りのメンバに、新規メンバーが
加入したことを通知し、新規ノードのメトリックを提供
する(617)。グループ・リーダが、グループ内の計
算機についてメトリックを検査し(601)、グループ
・メンバの負荷が低すぎる場合(620)、グループ・
リーダは、現在のメトリックに基づいてグループから除
去するノードを選択する(621)。選択を終えると、
グループから除去されるノードが通知を受け(62
2)、グループの残りのノードも通知を受ける(62
3)。
【0052】図8及び図9も、コンテンツ・プロバイダ
・グループ108でのメンバシップに関してノードを使
用可能にする処理の例を示す図である。活動状態のコン
テンツ・プロバイダ計算機110のノード数は、コンテ
ンツ・プロバイダの負荷に依存する。図からわかるよう
に、これらのノードのそれぞれは、当初は、グループ・
リーダ計算機118からの「加入」要求を待っている状
態(700)である。加入要求を待っている時に、ノー
ドは、他のサービスのコンテンツ・プロバイダとして働
くことを含めて、他の動作を実行できる。
【0053】要求を受け取った際に、ノードは、グルー
プへの加入に同意することをグループ・リーダに通知し
(701)、その後、応答を待つ(702)。タイマの
満了までに応答が受け取られない場合(703)、ノー
ドは待機状態(700)に戻る。そうでない場合、ノー
ドは、コンテンツ・プロバイダ計算機110のグループ
のメンバからパッケージ化されたコンテンツを受け取る
のを待つ。パッケージ化されたコンテンツを受け取った
時に(704)、そのデータがインストールされ(70
5)、このノードは、コンテンツ・プロバイダになり、
初期設定されたことをグループ・リーダに通知し(70
6)、SmartLink CC103'からのサーバ
要求を待つ(710)ことによってSmartLink
PC250として働く。
【0054】コンテンツ・プロバイダのそれぞれは、4
つの異なる要求すなわち、メトリック要求715、デー
タ要求716、離脱要求717またはメトリック更新要
求718のうちの1つを待つ。この待機中に、非周期的
メトリック更新プロトコルが使用されている場合には、
コンテンツ・プロバイダは、局所メトリックであるコン
テンツ・プロバイダ・パラメータ114を検査して(7
80)、更新が必要であるかどうかを判定する。メトリ
ック更新は、メトリック更新要求を受け取った時(71
8)にも実行される。メトリックが大きく変更された場
合(781)またはメトリック更新要求を受け取った場
合、コンテンツ・プロバイダは、新しいメトリックをグ
ループのメンバにマルチキャストする(782)。
【0055】要求を受け取った際に、コンテンツ・プロ
バイダ計算機110は、要求の性質に基づいて実行する
処置を選択する(711)。メトリック要求715を受
け取った時には、SmartLink PC250は、
まず要求元のSmartLink CC103'がその
要求を許可されているかどうかを検査する(720)。
アクセスが許可されない場合(799)、「サービスの
拒否」応答をCCに返す。アクセスが許可される場合、
PCは、SmartLink CC103'によってメ
トリック要求715に含められたパラメータによって決
定される注釈付きホスト・リストを作成する(72
1)。これらのパラメータによって、クライアントが識
別され、その特性が定義され、所望のサービス及びサー
ビス・レベルに関連するメトリックが示される。このリ
ストは、許可と保全性を保証するためにSmartLi
nk PC250によって署名され(722)、その
後、クライアントに返される(723)。このメッセー
ジ転送を達成するのに使用される転送機構は、HTTP
またはRPCのいずれかとすることができる。
【0056】データ要求716を受け取った際に、Sm
artLink PC250は、まず、要求元のSma
rtLink CC103'がデータを受け取る許可を
与えられているかどうかを検査する(730)。アクセ
スが許可されない場合(799)、「サービスの拒否」
応答をCCに返す。アクセスが許可される場合、PC
は、許可と保全性を保証するために、配布されるコンテ
ンツに署名し(731)、その後、このデータをクライ
アントに返す(732)。離脱要求717は、コンテン
ツ・プロバイダの負荷が低すぎる時に、グループ・リー
ダ計算機118によって生成される(この処理の説明に
ついては、図6及び図7を参照されたい)。グループ・
リーダから離脱要求717を受け取る時には、コンテン
ツ・プロバイダは、そのサービスに関するデータをクリ
ーン・アップする(740)。データのクリーン・アッ
プには、磁気テープなどの安価な記憶装置へのデータの
移動か、データの完全な削除のいずれかを用いることが
できる。その後、コンテンツ・プロバイダは、グループ
・リーダに離脱要求の肯定応答を送り(741)、加入
要求の待機(700)を始める。
【0057】好ましい実施例と代替実施例によって本発
明を説明したので、当業者であれば、さまざまな変更及
び改良を思い浮かべるであろう。したがって、好ましい
実施例は、例として提供されたのであって、制限ではな
いことを理解されたい。本発明の範囲は、請求項によっ
て定義される。
【0058】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0059】(1)クライアントからサーバへリソース
要求を発行するステップと、コード及びデータを含む、
リソースへの参照を、サーバからクライアントへ配布す
るステップと、リソース名を得るために、クライアント
側でコード及びデータを評価し、解決するステップとを
含む、リソースが、クライアント側で評価されるコード
及びデータの組合せによって表される、分散計算環境で
リソースに命名するためのコンピュータ化された方法。 (2)評価ステップがさらに、環境パラメータに関して
分散環境に問い合わせるステップを含み、分散環境が、
少なくとも1つのクライアント、ネットワーク、クリエ
ータ、サーバ及びコンテンツ・プロバイダを含むことを
特徴とする、上記(1)の方法。 (3)問い合わせるステップが、コード及びデータで定
義された条件の関数としての複数の局面で実行され、各
局面が、コード及びデータを評価するステップと、後続
局面のための追加環境パラメータを得るために分散環境
に問い合わせるステップとを含むことを特徴とする、上
記(2)の方法。 (4)サーバが、クリエータにカストマイズ・パラメー
タを通信するステップと、クリエータが、初期環境パラ
メータを含むコード及びデータを組み立てるステップ
と、クリエータが、コード及びデータをサーバに配布す
るステップとを含む、上記(1)の方法。 (5)カストマイズ・パラメータを通信するステップ
と、コード及びデータを組み立てるステップと、コード
及びデータをサーバに配布するステップとが、リソース
要求のそれぞれに応答して実行されることを特徴とす
る、上記(4)の方法。 (6)サーバがクリエータでもあることを特徴とする、
上記(4)の方法。 (7)評価するステップが、さらに、クライアントが、
中間結果をサーバに送るステップと、サーバが、後続の
リソース要求に応答して配布するために、中間結果を記
憶するステップとを含むことを特徴とする、上記(1)
の方法。 (8)問い合わせるステップが、さらに、更新が、グル
ープ・リーダによる調整に従って周期的または非周期的
のいずれかになることを特徴とする、各コンテンツ・プ
ロバイダが、コンテンツ・プロバイダ・グループ内の他
のコンテンツ・プロバイダに、分散環境パラメータの組
を送るステップと、分散計算環境内のノードが、グルー
プ・リーダによる指示に従って、コンテンツ・プロバイ
ダのグループに動的に加入し離脱するステップとを含
み、グループに加入するノードに、少なくとも1つのグ
ループ・メンバによって、コンテンツ・プロバイダのグ
ループに関するコンテンツ及び分散環境パラメータが送
られることを特徴とし、グループを離脱するノードが、
直接にまたはグループ・リーダに通知することによって
のいずれかで、グループからの離脱についてグループ内
のコンテンツ・プロバイダに通知することを特徴とす
る、上記(2)の方法。 (9)クライアントからサーバへリソース要求を発行す
る手段と、コード及びデータを含む、リソースへの参照
を、サーバからクライアントへ配布する手段と、リソー
ス名を得るため、クライアント側でコード及びデータを
評価し、解決する手段とを含む、リソースが、クライア
ント側で評価されるコード及びデータの組合せによって
表される、分散計算環境用のリソース命名機構。 (10)評価する手段がさらに、環境パラメータに関し
て分散環境に問い合わせる手段を含み、分散環境が、少
なくとも1つのクライアント、ネットワーク、クリエー
タ、サーバ及びコンテンツ・プロバイダを含むことを特
徴とする、上記(9)のリソース命名機構。 (11)問い合わせる手段が、コード及びデータで定義
された条件の関数としての複数の局面で実行され、各局
面が、コード及びデータを評価する手段と、後続局面の
ための追加環境パラメータを得るために分散環境に問い
合わせる手段とを含むことを特徴とする、上記(10)
のリソース命名機構。 (12)クリエータにカストマイズ・パラメータを通信
するサーバ手段と、初期環境パラメータを含むコード及
びデータを組み立てるクリエータ手段と、コード及びデ
ータをサーバに配布するクリエータ手段とを含む、上記
(9)のリソース命名機構。 (13)カストマイズ・パラメータを通信するサーバ手
段と、コード及びデータを組み立てるクリエータ手段
と、コード及びデータをサーバに配布するクリエータ手
段とが、リソース要求のそれぞれに結合され、これに応
答することを特徴とする、上記(12)のリソース命名
機構。 (14)サーバがクリエータでもあることを特徴とす
る、上記(12)のリソース命名機構。 (15)評価する手段が、さらに、中間結果をサーバに
送るクライアント手段と、後続のリソース要求に応答し
て配布するために、中間結果を記憶するサーバ手段とを
含むことを特徴とする、上記(9)のリソース命名機
構。 (16)問い合わせる手段が、さらに、更新が、グルー
プ・リーダによる調整に従って周期的または非周期的の
いずれかになることを特徴とする、コンテンツ・プロバ
イダ・グループ内の他のコンテンツ・プロバイダに、分
散環境パラメータの組を送る各コンテンツ・プロバイダ
と、グループ・リーダによる指示に従って、コンテンツ
・プロバイダのグループに動的に加入し離脱する分散計
算環境内のノードとを含み、グループに加入するノード
に、少なくとも1つのグループ・メンバによって、コン
テンツ・プロバイダのグループに関するコンテンツ及び
分散環境パラメータが送られることを特徴とし、グルー
プを離脱するノードが、直接にまたはグループ・リーダ
に通知することによってのいずれかで、グループからの
離脱についてグループ内のコンテンツ・プロバイダに通
知することを特徴とする、上記(10)のリソース命名
機構。
【図面の簡単な説明】
【図1】本発明によるコンテンツ配布機構を示す図であ
る。
【図2】本発明によるSmartLink及びその構成
要素部分のシステムを示す図である。
【図3】SmartLinkクリエータが、サーバによ
って提供されるパラメータの組に基づいて新しいSma
rtLinkを作成する方法を示す図である。
【図4】図2に示されたSmartLinkシステムの
評価の処理を示す図である。
【図5】SmartLinkによる将来の使用のために
サーバ計算機でメトリックを記憶できるようにする、安
全な書戻し機構の実施例を示す図である。
【図6】図7と共に、グループ・リーダの処理を示す図
である。
【図7】図6と共に、グループ・リーダの処理を示す図
である。
【図8】図9と共に、コンテンツ・プロバイダまたはコ
ンテンツ・プロバイダとして働くために使用可能なノー
ドの処理を示す図である。
【図9】図8と共に、コンテンツ・プロバイダまたはコ
ンテンツ・プロバイダとして働くために使用可能なノー
ドの処理を示す図である。
【符号の説明】
100 ユーザ 101 クライアント計算機 102 クライアント環境パラメータ 103 SmartLink 103' SmartLink CC 104 スクリプト(コード) 105 動作データ 106 IDデータ 107 書戻し機構 108 コンテンツ・プロバイダ・グループ 109 主コンテンツ・プロバイダ 110 コンテンツ・プロバイダ計算機 111 解決されたコンテンツ・プロバイダ 112 コンテンツ配布機構 113 問合せ機構 114 コンテンツ・プロバイダ・パラメータ 115 サーバ計算機 116 イメージ 117 クリエータ 118 グループ・リーダ計算機
───────────────────────────────────────────────────── フロントページの続き (72)発明者 コリン・ジェームズ・パリス アメリカ合衆国10509 ニューヨーク州ブ ルースター サマーセット・ノール 902 (72)発明者 ダニエル・チャールズ・スターマン アメリカ合衆国10520 ニューヨーク州ク ロトン・オン・ハドソン ディアホーン ト・ドライブ 19

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】クライアントからサーバへリソース要求を
    発行するステップと、 コード及びデータを含む、リソースへの参照を、サーバ
    からクライアントへ配布するステップと、 リソース名を得るために、クライアント側でコード及び
    データを評価し、解決するステップとを含む、リソース
    が、クライアント側で評価されるコード及びデータの組
    合せによって表される、分散計算環境でリソースに命名
    するためのコンピュータ化された方法。
  2. 【請求項2】評価ステップがさらに、環境パラメータに
    関して分散環境に問い合わせるステップを含み、分散環
    境が、少なくとも1つのクライアント、ネットワーク、
    クリエータ、サーバ及びコンテンツ・プロバイダを含む
    ことを特徴とする、請求項1の方法。
  3. 【請求項3】問い合わせるステップが、コード及びデー
    タで定義された条件の関数としての複数の局面で実行さ
    れ、各局面が、コード及びデータを評価するステップ
    と、後続局面のための追加環境パラメータを得るために
    分散環境に問い合わせるステップとを含むことを特徴と
    する、請求項2の方法。
  4. 【請求項4】サーバが、クリエータにカストマイズ・パ
    ラメータを通信するステップと、 クリエータが、初期環境パラメータを含むコード及びデ
    ータを組み立てるステップと、 クリエータが、コード及びデータをサーバに配布するス
    テップとを含む、請求項1の方法。
  5. 【請求項5】カストマイズ・パラメータを通信するステ
    ップと、コード及びデータを組み立てるステップと、コ
    ード及びデータをサーバに配布するステップとが、リソ
    ース要求のそれぞれに応答して実行されることを特徴と
    する、請求項4の方法。
  6. 【請求項6】サーバがクリエータでもあることを特徴と
    する、請求項4の方法。
  7. 【請求項7】評価するステップが、さらに、 クライアントが、中間結果をサーバに送るステップと、 サーバが、後続のリソース要求に応答して配布するため
    に、中間結果を記憶するステップとを含むことを特徴と
    する、請求項1の方法。
  8. 【請求項8】問い合わせるステップが、さらに、 更新が、グループ・リーダによる調整に従って周期的ま
    たは非周期的のいずれかになることを特徴とする、各コ
    ンテンツ・プロバイダが、コンテンツ・プロバイダ・グ
    ループ内の他のコンテンツ・プロバイダに、分散環境パ
    ラメータの組を送るステップと、 分散計算環境内のノードが、グループ・リーダによる指
    示に従って、コンテンツ・プロバイダのグループに動的
    に加入し離脱するステップとを含み、グループに加入す
    るノードに、少なくとも1つのグループ・メンバによっ
    て、コンテンツ・プロバイダのグループに関するコンテ
    ンツ及び分散環境パラメータが送られることを特徴と
    し、グループを離脱するノードが、直接にまたはグルー
    プ・リーダに通知することによってのいずれかで、グル
    ープからの離脱についてグループ内のコンテンツ・プロ
    バイダに通知することを特徴とする、請求項2の方法。
  9. 【請求項9】クライアントからサーバへリソース要求を
    発行する手段と、 コード及びデータを含む、リソースへの参照を、サーバ
    からクライアントへ配布する手段と、 リソース名を得るため、クライアント側でコード及びデ
    ータを評価し、解決する手段とを含む、リソースが、ク
    ライアント側で評価されるコード及びデータの組合せに
    よって表される、分散計算環境用のリソース命名機構。
  10. 【請求項10】評価する手段がさらに、環境パラメータ
    に関して分散環境に問い合わせる手段を含み、分散環境
    が、少なくとも1つのクライアント、ネットワーク、ク
    リエータ、サーバ及びコンテンツ・プロバイダを含むこ
    とを特徴とする、請求項9のリソース命名機構。
  11. 【請求項11】問い合わせる手段が、コード及びデータ
    で定義された条件の関数としての複数の局面で実行さ
    れ、各局面が、 コード及びデータを評価する手段と、 後続局面のための追加環境パラメータを得るために分散
    環境に問い合わせる手段とを含むことを特徴とする、請
    求項10のリソース命名機構。
  12. 【請求項12】クリエータにカストマイズ・パラメータ
    を通信するサーバ手段と、 初期環境パラメータを含むコード及びデータを組み立て
    るクリエータ手段と、 コード及びデータをサーバに配布するクリエータ手段と
    を含む、請求項9のリソース命名機構。
  13. 【請求項13】カストマイズ・パラメータを通信するサ
    ーバ手段と、コード及びデータを組み立てるクリエータ
    手段と、コード及びデータをサーバに配布するクリエー
    タ手段とが、リソース要求のそれぞれに結合され、これ
    に応答することを特徴とする、請求項12のリソース命
    名機構。
  14. 【請求項14】サーバがクリエータでもあることを特徴
    とする、請求項12のリソース命名機構。
  15. 【請求項15】評価する手段が、さらに、 中間結果をサーバに送るクライアント手段と、 後続のリソース要求に応答して配布するために、中間結
    果を記憶するサーバ手段とを含むことを特徴とする、請
    求項9のリソース命名機構。
  16. 【請求項16】問い合わせる手段が、さらに、 更新が、グループ・リーダによる調整に従って周期的ま
    たは非周期的のいずれかになることを特徴とする、コン
    テンツ・プロバイダ・グループ内の他のコンテンツ・プ
    ロバイダに、分散環境パラメータの組を送る各コンテン
    ツ・プロバイダと、 グループ・リーダによる指示に従って、コンテンツ・プ
    ロバイダのグループに動的に加入し離脱する分散計算環
    境内のノードとを含み、グループに加入するノードに、
    少なくとも1つのグループ・メンバによって、コンテン
    ツ・プロバイダのグループに関するコンテンツ及び分散
    環境パラメータが送られることを特徴とし、グループを
    離脱するノードが、直接にまたはグループ・リーダに通
    知することによってのいずれかで、グループからの離脱
    についてグループ内のコンテンツ・プロバイダに通知す
    ることを特徴とする、請求項10のリソース命名機構。
JP31322097A 1996-11-21 1997-11-14 リソースの位置を指名するためのコンピュータ化された方法及びリソース指名機構 Expired - Fee Related JP3967806B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US3146296P 1996-11-21 1996-11-21
US60/031462 1997-02-13
US08/799,816 US5944793A (en) 1996-11-21 1997-02-13 Computerized resource name resolution mechanism
US08/799816 1997-02-13

Publications (2)

Publication Number Publication Date
JPH10312350A true JPH10312350A (ja) 1998-11-24
JP3967806B2 JP3967806B2 (ja) 2007-08-29

Family

ID=26707278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31322097A Expired - Fee Related JP3967806B2 (ja) 1996-11-21 1997-11-14 リソースの位置を指名するためのコンピュータ化された方法及びリソース指名機構

Country Status (3)

Country Link
US (1) US5944793A (ja)
JP (1) JP3967806B2 (ja)
KR (1) KR100261386B1 (ja)

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6598094B1 (en) 1998-03-20 2003-07-22 Sun Microsystems, Inc. Method and apparatus for determining status of remote objects in a distributed system
US6578044B1 (en) 1997-11-17 2003-06-10 Sun Microsystems, Inc. Method and system for typesafe attribute matching
US6272559B1 (en) * 1997-10-15 2001-08-07 Sun Microsystems, Inc. Deferred reconstruction of objects and remote loading for event notification in a distributed system
US6487607B1 (en) 1998-02-26 2002-11-26 Sun Microsystems, Inc. Methods and apparatus for remote method invocation
US6938263B2 (en) 1996-04-23 2005-08-30 Sun Microsystems, Inc. System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space
US6138238A (en) 1997-12-11 2000-10-24 Sun Microsystems, Inc. Stack-based access control using code and executor identifiers
US6393497B1 (en) 1998-03-20 2002-05-21 Sun Microsystems, Inc. Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system
US6832223B1 (en) 1996-04-23 2004-12-14 Sun Microsystems, Inc. Method and system for facilitating access to a lookup service
US6466947B2 (en) 1998-03-20 2002-10-15 Sun Microsystems, Inc. Apparatus and method for dynamically verifying information in a distributed system
US6438614B2 (en) 1998-02-26 2002-08-20 Sun Microsystems, Inc. Polymorphic token based control
US6182083B1 (en) 1997-11-17 2001-01-30 Sun Microsystems, Inc. Method and system for multi-entry and multi-template matching in a database
US6560656B1 (en) 1998-02-26 2003-05-06 Sun Microsystems, Inc. Apparatus and method for providing downloadable code for use in communicating with a device in a distributed system
US6708171B1 (en) 1996-04-23 2004-03-16 Sun Microsystems, Inc. Network proxy
US6185611B1 (en) 1998-03-20 2001-02-06 Sun Microsystem, Inc. Dynamic lookup service in a distributed system
US6237024B1 (en) * 1998-03-20 2001-05-22 Sun Microsystem, Inc. Method and apparatus for the suspension and continuation of remote processes
US6421704B1 (en) 1998-03-20 2002-07-16 Sun Microsystems, Inc. Method, apparatus, and product for leasing of group membership in a distributed system
US6463446B1 (en) 1998-02-26 2002-10-08 Sun Microsystems, Inc. Method and apparatus for transporting behavior in an event-based distributed system
US6446070B1 (en) 1998-02-26 2002-09-03 Sun Microsystems, Inc. Method and apparatus for dynamic distributed computing over a network
US6728737B2 (en) 1996-10-11 2004-04-27 Sun Microsystems, Inc. Method and system for leasing storage
US5832529A (en) 1996-10-11 1998-11-03 Sun Microsystems, Inc. Methods, apparatus, and product for distributed garbage collection
GB2331166B (en) * 1997-11-06 2002-09-11 Ibm Database search engine
KR100373526B1 (ko) * 1997-01-17 2003-02-25 인터내셔널 비지네스 머신즈 코포레이션 분산 네트워크 시스템에서의 액세스 제어 시스템 및 자원 보호 방법
US6345300B1 (en) * 1997-03-25 2002-02-05 Intel Corporation Method and apparatus for detecting a user-controlled parameter from a client device behind a proxy
US6587877B1 (en) * 1997-03-25 2003-07-01 Lucent Technologies Inc. Management of time and expense when communicating between a host and a communication network
US6957427B1 (en) 1997-10-15 2005-10-18 Sun Microsystems, Inc. Remote object activation in a distributed system
US6076111A (en) * 1997-10-24 2000-06-13 Pictra, Inc. Methods and apparatuses for transferring data between data processing systems which transfer a representation of the data before transferring the data
US6223221B1 (en) * 1998-02-05 2001-04-24 International Business Machines Corporation System and method for calculating the transfer rate across a communication medium using a downloaded test program and transferring data accordingly
KR20010034514A (ko) 1998-02-26 2001-04-25 케네쓰 올센 원격 메소드를 식별하는 해시 판정 방법 및 시스템
US6604127B2 (en) 1998-03-20 2003-08-05 Brian T. Murphy Dynamic lookup service in distributed system
US6115752A (en) * 1998-05-21 2000-09-05 Sun Microsystems, Inc. System and method for server selection for mirrored sites
JP2000076118A (ja) * 1998-09-03 2000-03-14 Fuji Xerox Co Ltd 分散ファイル処理装置および分散ファイル処理方法
US6237143B1 (en) * 1998-09-17 2001-05-22 Unisys Corp. Method and system for monitoring and capturing all file usage of a software tool
US6782431B1 (en) * 1998-09-30 2004-08-24 International Business Machines Corporation System and method for dynamic selection of database application code execution on the internet with heterogenous clients
US6510450B1 (en) * 1999-02-04 2003-01-21 Novell, Inc. Multiple storage class distributed nametags for locating items in a distributed computing system
US6901518B1 (en) 1999-04-08 2005-05-31 Sun Microsystems, Inc. Method and system for establishing trust in downloaded proxy code
US20010037407A1 (en) * 2000-03-23 2001-11-01 Zvetan Dragulev System and method for managing user-specific data
GB2348659B (en) * 2000-03-23 2001-03-28 Fmc Corp Tubing hanger saddle valve
US6792466B1 (en) 2000-05-09 2004-09-14 Sun Microsystems, Inc. Trusted construction of message endpoints in a distributed computing environment
US6789077B1 (en) 2000-05-09 2004-09-07 Sun Microsystems, Inc. Mechanism and apparatus for web-based searching of URI-addressable repositories in a distributed computing environment
US6917976B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Message-based leasing of resources in a distributed computing environment
US7016966B1 (en) 2000-05-09 2006-03-21 Sun Microsystems, Inc. Generating results gates in a distributed computing environment
US7065574B1 (en) 2000-05-09 2006-06-20 Sun Microsystems, Inc. Messaging system using pairs of message gates in a distributed computing environment
US7080078B1 (en) 2000-05-09 2006-07-18 Sun Microsystems, Inc. Mechanism and apparatus for URI-addressable repositories of service advertisements and other content in a distributed computing environment
US7395333B1 (en) 2000-05-09 2008-07-01 Sun Microsystems, Inc. Method and apparatus to obtain negotiated service advertisement
US7716492B1 (en) 2000-05-09 2010-05-11 Oracle America, Inc. Method and apparatus to obtain service capability credentials
US7010573B1 (en) 2000-05-09 2006-03-07 Sun Microsystems, Inc. Message gates using a shared transport in a distributed computing environment
US7200848B1 (en) 2000-05-09 2007-04-03 Sun Microsystems, Inc. Migrating processes using data representation language representations of the processes in a distributed computing environment
US6862594B1 (en) 2000-05-09 2005-03-01 Sun Microsystems, Inc. Method and apparatus to discover services using flexible search criteria
US8135796B1 (en) 2000-05-09 2012-03-13 Oracle America, Inc. Mechanism and apparatus for accessing and addressing services in a distributed computing environment
US6950875B1 (en) 2000-05-09 2005-09-27 Sun Microsystems, Inc. Message conductors in a distributed computing environment
US6973493B1 (en) 2000-05-09 2005-12-06 Sun Microsystems, Inc. Mechanism and apparatus for security of newly spawned repository spaces in a distributed computing environment
US8001232B1 (en) 2000-05-09 2011-08-16 Oracle America, Inc. Event message endpoints in a distributed computing environment
US7072967B1 (en) 2000-05-09 2006-07-04 Sun Microsystems, Inc. Efficient construction of message endpoints
US7188251B1 (en) 2000-05-09 2007-03-06 Sun Microsystems, Inc. System and method for secure message-based leasing of resources in a distributed computing environment
US7370091B1 (en) 2000-05-09 2008-05-06 Sun Microsystems, Inc. Method and apparatus for obtaining space advertisements
US6918084B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Spawning new repository spaces using information provided in advertisement schema messages
US6643650B1 (en) 2000-05-09 2003-11-04 Sun Microsystems, Inc. Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment
US6789126B1 (en) 2000-05-09 2004-09-07 Sun Microsystems, Inc. Addressing message gates in a distributed computing environment
US6868447B1 (en) 2000-05-09 2005-03-15 Sun Microsystems, Inc. Mechanism and apparatus for returning results of services in a distributed computing environment
US6970869B1 (en) 2000-05-09 2005-11-29 Sun Microsystems, Inc. Method and apparatus to discover services and negotiate capabilities
US7260543B1 (en) 2000-05-09 2007-08-21 Sun Microsystems, Inc. Automatic lease renewal with message gates in a distributed computing environment
US7243356B1 (en) 2000-05-09 2007-07-10 Sun Microsystems, Inc. Remote method invocation with secure messaging in a distributed computing environment
US6850979B1 (en) 2000-05-09 2005-02-01 Sun Microsystems, Inc. Message gates in a distributed computing environment
US6898618B1 (en) 2000-05-09 2005-05-24 Sun Microsystems, Inc. Client-specified display services in a distributed computing environment
US8082491B1 (en) 2000-05-09 2011-12-20 Oracle America, Inc. Dynamic displays in a distributed computing environment
US7577834B1 (en) 2000-05-09 2009-08-18 Sun Microsystems, Inc. Message authentication using message gates in a distributed computing environment
US6865657B1 (en) 2000-06-02 2005-03-08 Sun Microsystems, Inc. Garbage collector for a virtual heap
US6760815B1 (en) 2000-06-02 2004-07-06 Sun Microsystems, Inc. Caching mechanism for a virtual heap
US6854115B1 (en) 2000-06-02 2005-02-08 Sun Microsystems, Inc. Process persistence in a virtual machine
US6763440B1 (en) 2000-06-02 2004-07-13 Sun Microsystems, Inc. Garbage collection using nursery regions for new objects in a virtual heap
US6941410B1 (en) 2000-06-02 2005-09-06 Sun Microsystems, Inc. Virtual heap for a virtual machine
US6957237B1 (en) 2000-06-02 2005-10-18 Sun Microsystems, Inc. Database store for a virtual heap
US6666377B1 (en) 2000-07-18 2003-12-23 Scott C. Harris Bar code data entry device
US6957224B1 (en) 2000-09-11 2005-10-18 International Business Machines Corporation Efficient retrieval of uniform resource locators
US7296275B2 (en) 2001-01-04 2007-11-13 Sun Microsystems, Inc. Method and system for passing objects in a distributed system using serialization contexts
US6782421B1 (en) * 2001-03-21 2004-08-24 Bellsouth Intellectual Property Corporation System and method for evaluating the performance of a computer application
US7660887B2 (en) 2001-09-07 2010-02-09 Sun Microsystems, Inc. Systems and methods for providing dynamic quality of service for a distributed system
US7756969B1 (en) 2001-09-07 2010-07-13 Oracle America, Inc. Dynamic provisioning of identification services in a distributed system
US7369868B2 (en) * 2002-10-30 2008-05-06 Sony Ericsson Mobile Communications Ab Method and apparatus for sharing content with a remote device using a wireless network
US7373416B2 (en) * 2003-04-24 2008-05-13 Akamai Technologies, Inc. Method and system for constraining server usage in a distributed network
US7401072B2 (en) 2003-06-10 2008-07-15 Google Inc. Named URL entry
US7293012B1 (en) 2003-12-19 2007-11-06 Microsoft Corporation Friendly URLs
US7792874B1 (en) 2004-01-30 2010-09-07 Oracle America, Inc. Dynamic provisioning for filtering and consolidating events
US7529780B1 (en) 2005-12-30 2009-05-05 Google Inc. Conflict management during data object synchronization between client and server
US7738404B2 (en) * 2007-01-23 2010-06-15 Alcatel-Lucent Usa Inc. Method of aggregate statistic computation
US7693833B2 (en) * 2007-02-01 2010-04-06 John Nagle System and method for improving integrity of internet search
US7840662B1 (en) * 2008-03-28 2010-11-23 EMC(Benelux) B.V., S.A.R.L. Dynamically managing a network cluster
US20090265449A1 (en) * 2008-04-22 2009-10-22 Hewlett-Packard Development Company, L.P. Method of Computer Clustering
US20090327466A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Internal uniform resource locator formulation and testing
US9934240B2 (en) * 2008-09-30 2018-04-03 Google Llc On demand access to client cached files
US8620861B1 (en) 2008-09-30 2013-12-31 Google Inc. Preserving file metadata during atomic save operations
US8838751B1 (en) * 2008-12-08 2014-09-16 Amazon Technologies, Inc. Brokering real time service providers

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06149756A (ja) * 1992-11-16 1994-05-31 Hitachi Ltd 分散型情報処理方法およびその装置
JPH08123768A (ja) * 1994-10-21 1996-05-17 Mitsubishi Electric Corp 分散システム管理方式及び分散システム管理方法
JPH08292910A (ja) * 1995-02-23 1996-11-05 Fuji Xerox Co Ltd 資源管理装置および資源管理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434974A (en) * 1992-03-30 1995-07-18 International Business Machines Corporation Name resolution for a multisystem network
US5706501A (en) * 1995-02-23 1998-01-06 Fuji Xerox Co., Ltd. Apparatus and method for managing resources in a network combining operations with name resolution functions
US5729689A (en) * 1995-04-25 1998-03-17 Microsoft Corporation Network naming services proxy agent
JP3738787B2 (ja) * 1995-10-19 2006-01-25 富士ゼロックス株式会社 資源管理装置及び資源管理方法
US5764906A (en) * 1995-11-07 1998-06-09 Netword Llc Universal electronic resource denotation, request and delivery system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06149756A (ja) * 1992-11-16 1994-05-31 Hitachi Ltd 分散型情報処理方法およびその装置
JPH08123768A (ja) * 1994-10-21 1996-05-17 Mitsubishi Electric Corp 分散システム管理方式及び分散システム管理方法
JPH08292910A (ja) * 1995-02-23 1996-11-05 Fuji Xerox Co Ltd 資源管理装置および資源管理方法

Also Published As

Publication number Publication date
KR19980041908A (ko) 1998-08-17
KR100261386B1 (ko) 2000-07-01
US5944793A (en) 1999-08-31
JP3967806B2 (ja) 2007-08-29

Similar Documents

Publication Publication Date Title
JP3967806B2 (ja) リソースの位置を指名するためのコンピュータ化された方法及びリソース指名機構
US8032586B2 (en) Method and system for caching message fragments using an expansion attribute in a fragment link tag
US7509393B2 (en) Method and system for caching role-specific fragments
US7412535B2 (en) Method and system for caching fragments while avoiding parsing of pages that do not contain fragments
US7730154B2 (en) Method and system for fragment linking and fragment caching
US8458163B2 (en) System and method for enabling website owner to manage crawl rate in a website indexing system
US8307364B2 (en) Multi-threaded annotator for hypertext information
US6092204A (en) Filtering for public databases with naming ambiguities
US9703885B2 (en) Systems and methods for managing content variations in content delivery cache
US7587515B2 (en) Method and system for restrictive caching of user-specific fragments limited to a fragment cache closest to a user
US20030188021A1 (en) Method and system for processing multiple fragment requests in a single message
US7827280B2 (en) System and method for domain name filtering through the domain name system
JP2007115244A (ja) インターネット・ファイル・システム
JP2006501558A (ja) ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法
JP4671332B2 (ja) ユーザ識別情報を変換するファイルサーバ
US5961645A (en) Filtering for public databases with naming ambiguities
CN101351992A (zh) 自动克隆it资源结构的方法、系统和计算机程序产品
KR100920595B1 (ko) 클라이언트 측 통신 프로토콜 스택 구성 방법, 프로세스 간통신 프로토콜 구성 시스템 및 머신 판독가능한 저장 장치
US20080104255A1 (en) Sharing state information between dynamic web page generators
JP2003162449A (ja) アクセス統合管理システム、アクセス統合管理装置及び方法並びにプログラム
US7890487B1 (en) Facilitating client-side data-management for web-based applications
JP2004302564A (ja) ネームサービス提供方法及びその実施装置並びにその処理プログラム
KR101042452B1 (ko) 에이전트 클라이언트의 네트워크 리소스 정보 획득 방법
WO2001095116A2 (en) A method and a system for providing information from a server to a client
KR19990031814A (ko) 웹을 통해 제품정보를 관리하는 제품정보관리시스템

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070131

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070502

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070502

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070529

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20070529

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070601

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110608

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees