JP2010009448A - Distributed information arrangement system - Google Patents

Distributed information arrangement system Download PDF

Info

Publication number
JP2010009448A
JP2010009448A JP2008170115A JP2008170115A JP2010009448A JP 2010009448 A JP2010009448 A JP 2010009448A JP 2008170115 A JP2008170115 A JP 2008170115A JP 2008170115 A JP2008170115 A JP 2008170115A JP 2010009448 A JP2010009448 A JP 2010009448A
Authority
JP
Japan
Prior art keywords
cluster
node
cache
cache node
data
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.)
Withdrawn
Application number
JP2008170115A
Other languages
Japanese (ja)
Inventor
Kazunori Miyoshi
一徳 三好
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2008170115A priority Critical patent/JP2010009448A/en
Publication of JP2010009448A publication Critical patent/JP2010009448A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a distributed information arrangement system, can dynamically change the number of clusters each of which is a group of nodes caching the same data during operation of the system. <P>SOLUTION: Among node devices 1001 on a network provided with caches storing data, one cluster 1004-1 is formed by a plurality of node devices 1001-1 to 1001-3 storing the same data in the caches. The node device 1001-1 which serves as a representative node determines whether a new cluster creation condition is established, and transmits, when it is established, a creation instruction of new cluster together with a copy of the data to the other node device 1001-4 which has not cached the data yet. The node device 1001-4 stores the received copy of the data in the cache of its own node device, and creates a new cluster 1004-2 with the own node device as a representative node. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、通信ネットワーク(以下NWと略す)上に情報のキャッシュを分散させる分散情報配置システムに関する。   The present invention relates to a distributed information arrangement system for distributing a cache of information on a communication network (hereinafter abbreviated as NW).

近年、インターネットにおける情報コンテンツの配信サービスや、個人ユーザが情報コンテンツを発信して交換するピア・ツウ・ピアのネットワークサービスの利用が進んでいる。ネットワークを利用して情報コンテンツを配信する際、サーバ装置の処理能力などに制限があるため、処理性能を確保する目的で、1以上のキャッシュをネットワーク上に設け、一時的にサーバ装置のコンテンツを保持することが行われている。NW上にコンテンツのキャッシュを分散させる技術の一例が特許文献1に記載されている。   In recent years, the use of information content distribution services on the Internet and peer-to-peer network services in which individual users transmit and exchange information contents have advanced. When distributing information content using a network, the processing capacity of the server device is limited. Therefore, in order to ensure processing performance, one or more caches are provided on the network, and the server device content is temporarily stored. To be held. An example of a technique for distributing content caches on an NW is described in Patent Document 1.

特許文献1に記載される技術(以下、本発明の関連技術と記す)では、サーバ装置がインターネットを介して複数のキャッシュクラスタに接続され、各キャッシュクラスタがアクセス網を介してクライアント端末に接続される。各キャッシュクラスタは、複数のキャッシュから構成される。サーバ装置は、クライアント端末からの配送要求を受信すると、各キャッシュの負荷などを考慮して何れかのキャッシュクラスタから最適なキャッシュを選択し、データ配送を指示する。データ配送を指示されたキャッシュは、データをクライアント端末へ配送する。またサーバ装置は、コンテンツのアクセス頻度に応じて、各キャッシュクラスタ内のキャッシュ数の増減を集中管理している。   In the technology described in Patent Document 1 (hereinafter referred to as related technology of the present invention), a server device is connected to a plurality of cache clusters via the Internet, and each cache cluster is connected to a client terminal via an access network. The Each cache cluster is composed of a plurality of caches. When receiving the delivery request from the client terminal, the server device selects an optimum cache from any one of the cache clusters in consideration of the load of each cache, and instructs data delivery. The cache instructed to deliver data delivers the data to the client terminal. The server device centrally manages the increase / decrease in the number of caches in each cache cluster according to the access frequency of the content.

特開2003−122658号公報JP 2003-122658 A

上述した本発明の関連技術は、各キャッシュクラスタ内のキャッシュ数をコンテンツのアクセス頻度に応じて増減制御することにより、キャッシュ数の最適化を図っている。しかしながら、キャッシュクラスタの数自体は管理者によって事前に決定され、システム運用中に変更されることはない(特許文献1の25段落参照)。このため、管理者がコンテンツへのアクセス需要を過大に見積もり、キャッシュクラスタを実需より多く作成し過ぎた場合には、稼動率の低いキャッシュクラスタが生じて資源の無駄が発生する。逆に、管理者がコンテンツへのアクセス需要を過少に見積もり、キャッシュクラスタを実需より少なく作成した場合には、各キャッシュクラスタ内のキャッシュ数の増加では対処し切れないほど各キャッシュクラスタの負荷が高まり、レスポンスやスループットの低下を招くことになる。しかし、システム運用前に実需を正確に見積もることは困難である。また、システム運用中にアクセス需要が大幅に変化することもある。   In the related art of the present invention described above, the number of caches in each cache cluster is controlled to increase or decrease in accordance with the access frequency of the content, thereby optimizing the number of caches. However, the number of cache clusters itself is determined in advance by the administrator and is not changed during system operation (see paragraph 25 of Patent Document 1). For this reason, when the administrator overestimates the access demand to the contents and creates more cache clusters than the actual demand, a cache cluster with a low operation rate is generated and resources are wasted. Conversely, if the administrator underestimates the access demand to the content and creates fewer cache clusters than actual demand, the load on each cache cluster increases so that the increase in the number of caches in each cache cluster cannot be handled. This will cause a decrease in response and throughput. However, it is difficult to accurately estimate actual demand before system operation. Also, the access demand may change significantly during system operation.

本発明はこのような事情に鑑みて提案されたものであり、その目的は、システム運用中にクラスタの数を動的に変更することのできる分散情報配置システムを提供することにある。   The present invention has been proposed in view of such circumstances, and an object thereof is to provide a distributed information arrangement system capable of dynamically changing the number of clusters during system operation.

本発明の第1の分散情報配置システムは、データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備えた複数のノード装置がネットワークを介して接続された分散情報配置システムであって、同一のデータを前記キャッシュに記憶する1以上の前記ノード装置の集合から構成されるクラスタを備え、前記クラスタでは、前記集合に含まれる1以上の前記ノード装置のうちの何れか1つが代表ノードとして機能し、前記代表ノードは、新クラスタ生成条件が成立したか否かを判定する手段と、前記新クラスタ生成条件が成立した場合に、前記データを未だキャッシュしていない他の前記ノード装置に対して、前記データのコピーを添えて新規クラスタの生成指示を送信する手段を備え、前記新規クラスタの生成指示を受信した前記ノード装置は、前記データのコピーを自ノード装置の前記キャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成する手段を備える。   The first distributed information arrangement system of the present invention is a distributed information in which a plurality of node devices including a cache for storing data and means for reading the data from the cache and transmitting the data to a terminal device are connected via a network. A placement system comprising a cluster composed of a set of one or more node devices that store the same data in the cache, wherein the cluster includes any one of the one or more node devices included in the set One of them functions as a representative node, and the representative node has a means for determining whether or not a new cluster generation condition is satisfied, and has not yet cached the data when the new cluster generation condition is satisfied. Means for sending a new cluster generation instruction to the node device with a copy of the data, Star said node device receiving the instruction for generating a copy of said data stored in said cache of the node device comprises means for generating a new cluster to the representative node of the own node device.

本発明の第1の分散情報配置方法は、データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備えるネットワーク上のノード装置のうち、同一のデータを前記キャッシュに記憶する1以上の前記ノード装置の集合で1つのクラスタを形成するステップと、前記クラスタを構成する1以上の前記ノード装置のうちの代表ノードとして機能するノード装置が、新クラスタ生成条件が成立したか否かを判定し、前記新クラスタ生成条件が成立した場合に、前記データを未だキャッシュしていない他の前記ノード装置に対して、前記データのコピーを添えて新規クラスタの生成指示を送信するステップと、前記新規クラスタの生成指示を受信した前記ノード装置が、前記データのコピーを自ノード装置の前記キャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成するステップとを含む。   A first distributed information arrangement method according to the present invention is the same as a node device on a network including a cache for storing data and means for reading the data from the cache and transmitting the data to a terminal device. A step of forming one cluster by a set of one or more node devices to be stored and a node device functioning as a representative node among the one or more node devices constituting the cluster satisfy a new cluster generation condition. If the new cluster generation condition is satisfied, a new cluster generation instruction is transmitted with a copy of the data to the other node devices that have not yet cached the data. And the node device that has received the new cluster generation instruction sends a copy of the data to its own node device. Serial and stored in the cache, and generating a new cluster to the representative node of the own node device.

本発明の第1のノード装置は、データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備え、同一の前記データを前記キャッシュに記憶する他のノード装置と一緒に1つのクラスタを形成し、前記クラスタの代表ノードとして機能するノード装置であって、新クラスタ生成条件が成立したか否かを判定する手段と、前記新クラスタ生成条件が成立した場合に、前記データを未だキャッシュしていない他の前記ノード装置に対して、前記データのコピーを添えて新規クラスタの生成指示を送信する手段とを備える。   The first node device of the present invention comprises a cache for storing data and means for reading the data from the cache and transmitting it to the terminal device, together with other node devices for storing the same data in the cache A node device that functions as a representative node of the cluster and determines whether or not a new cluster generation condition is satisfied, and when the new cluster generation condition is satisfied, And a means for transmitting a new cluster generation instruction with a copy of the data to the other node device that has not yet cached the data.

本発明の第2のノード装置は、データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備えたノード装置であって、新クラスタ生成条件が成立したクラスタの代表ノードから新規クラスタの生成指示を受信した場合に、該受信した新規クラスタの生成指示に添付されたデータのコピーを自ノード装置の前記キャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成する手段を備える。   A second node device according to the present invention is a node device comprising a cache for storing data and means for reading the data from the cache and transmitting the data to a terminal device, and is a representative of a cluster for which a new cluster generation condition has been established. When a new cluster generation instruction is received from a node, a copy of the data attached to the received new cluster generation instruction is stored in the cache of the own node apparatus, and the new cluster having the own node apparatus as a representative node Is provided.

本発明によれば、クラスタの代表ノードが、新クラスタ生成条件が成立したか否かを判定し、新クラスタ生成条件が成立した場合に、データを未だキャッシュしていない他のノード装置に対して、当該データのコピーを添えて新規クラスタの生成指示を送信し、新規クラスタの生成指示を受信したノード装置が、データのコピーを自ノード装置のキャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成するため、システム運用中にクラスタの数を動的に変更することが可能である。   According to the present invention, the representative node of the cluster determines whether or not the new cluster generation condition is satisfied, and when the new cluster generation condition is satisfied, for other node devices that have not yet cached data. The node device that has sent the new cluster generation instruction with the copy of the data and received the new cluster generation instruction stores the copy of the data in the cache of the local node device, and the local node device is the representative node. Since a new cluster is generated, the number of clusters can be dynamically changed during system operation.

次に本発明の実施の形態について図面を参照して詳細に説明する。   Next, embodiments of the present invention will be described in detail with reference to the drawings.

図19を参照すると、本発明の第1の実施の形態に係る分散情報配置システムは、IPネットワーク上に分散する多数のノード装置1001のうち、複数のノード装置1001−1〜1001−9に同じ提供対象データを記憶し、これら複数のノード装置1001−1〜1001−9からユーザ端末1002−1〜1002−4に対して提供対象データを提供する。提供対象データとしては、或る種のファイルやデータベースなどが該当する。   Referring to FIG. 19, the distributed information arrangement system according to the first exemplary embodiment of the present invention is the same as a plurality of node devices 1001-1 to 1001-9 among many node devices 1001 distributed on the IP network. The provision target data is stored, and the provision target data is provided from the plurality of node devices 1001-1 to 1001-9 to the user terminals 1002-1 to 1002-4. The provision target data corresponds to a certain type of file or database.

図19に示されるシステムでは、同じ提供対象データ(説明の便宜上、データDとする)に関し、それをキャッシュしているノード装置は全部で9台あり、そのうちノード装置1001−1はデータDのオリジナルを記憶し、残り8台のノード装置1001−2〜1001−9はそのコピーを記憶する。ノード装置1001−1〜1001−9は、データDに関してそれぞれキャッシュノードとなる。また、データDのオリジナルを記憶するキャッシュノード1001−1は、コピーを記憶するキャッシュノード1001−2〜1001−9と区別するために、データDのオリジナルキャッシュノードと呼ぶ。   In the system shown in FIG. 19, there are a total of nine node devices that cache the same data to be provided (for convenience of explanation, data D), of which node device 1001-1 is the original of data D The remaining eight node devices 1001-2 to 1001-9 store the copies. The node devices 1001-1 to 1001-9 each serve as a cache node for the data D. Further, the cache node 1001-1 storing the original of the data D is referred to as the original cache node of the data D in order to distinguish from the cache nodes 1001-2 to 1001-9 storing the copy.

オリジナルキャッシュノード1001−1と2台のキャッシュノード1001−2、1001−3との合計3台は、データDに関して1つのクラスタ1004−1を形成している。同様に、3台のキャッシュノード1001−4〜1001−6は、データDに関して別の1つのクラスタ1004−2を形成し、3台のキャッシュノード1001−7〜1001−9は、データDに関してさらに別の1つのクラスタ1004−3を形成している。   A total of three of the original cache node 1001-1 and the two cache nodes 1001-2 and 1001-3 form one cluster 1004-1 for the data D. Similarly, three cache nodes 1001-4 to 1001-6 form another cluster 1004-2 for data D, and three cache nodes 1001-7 to 1001-9 Another cluster 1004-3 is formed.

各クラスタ1004−1〜1004−3では、そのクラスタを構成する1以上のキャッシュノードのうちの1台が、代表ノードとして機能する。オリジナルキャッシュノード1001−1を含むクラスタ1004−1では、オリジナルキャッシュノード1001−1が代表ノードとなる。オリジナルキャッシュノード1001−1を含まないクラスタ1004−2、1004−3では、任意のキャッシュノードが代表ノードとなる。図19の状態では、ノード1001−4、1001−7が代表ノードになっている。   In each cluster 1004-1 to 1004-3, one of the one or more cache nodes constituting the cluster functions as a representative node. In the cluster 1004-1 including the original cache node 1001-1, the original cache node 1001-1 is the representative node. In the clusters 1004-2 and 1004-3 that do not include the original cache node 1001-1, an arbitrary cache node is the representative node. In the state of FIG. 19, the nodes 1001-4 and 1001-7 are representative nodes.

各クラスタ1004−1〜1004−3を構成するキャッシュノード間には、クラスタ内オーバーレイネットワーク1005−1〜1005−3が形成されている。また、各クラスタ1004−1〜1004−3の代表ノード1001−1、1001−4、1001−7間には、クラスタ間オーバーレイネットワーク1006が形成されている。オーバーレイネットワークは、ノード装置1001間をつなぐIPネットワークのリンクを用いて、その上位層に形成した仮想的なネットワークである。同じクラスタ1004−1〜1004−3に属するキャッシュノード間では、クラスタ内オーバーレイネットワーク1005−1〜1005−3を通じて、自クラスタの構成メンバとなるノード装置のグローバルIPアドレスや負荷情報などが交換される。クラスタ1004−1〜1004−3間では、クラスタ間オーバーレイネットワーク1006を通じて、各クラスタの代表ノードのグローバルIPアドレスや各クラスタの構成メンバとなるノード装置の数などが交換される。   Intra-cluster overlay networks 1005-1 to 1005-3 are formed between the cache nodes constituting each cluster 1004-1 to 1004-3. Further, an inter-cluster overlay network 1006 is formed between the representative nodes 1001-1, 1001-4, and 1001-7 of each cluster 1004-1 to 1004-3. The overlay network is a virtual network formed in an upper layer using an IP network link connecting the node devices 1001. Between the cache nodes belonging to the same cluster 1004-1 to 1004-3, the global IP address, load information, and the like of the node devices that are members of the own cluster are exchanged through the intra-cluster overlay networks 1005-1 to 1005-3. . Between the clusters 1004-1 to 1004-3, the global IP address of the representative node of each cluster, the number of node devices serving as members of each cluster, and the like are exchanged through the intercluster overlay network 1006.

また図19には、IPネットワークに接続された幾つかのDNS(Domain Name Server)サーバ1003−1〜1003−6が図示されている。   FIG. 19 also shows several DNS (Domain Name Server) servers 1003-1 to 1003-6 connected to the IP network.

ノード装置1001、ユーザ端末1002およびDNSサーバ1003間は、既存のIPネットワークによる通信が可能である。   The node device 1001, the user terminal 1002, and the DNS server 1003 can communicate with each other using an existing IP network.

次に、上述のように構成された本実施の形態の分散情報配置システムの概略動作を説明する。   Next, a schematic operation of the distributed information arrangement system of the present embodiment configured as described above will be described.

データDをキャッシュしているキャッシュノード1001−1〜1001−9は、自ノードの負荷情報を計測し、クラスタ内オーバーレイネットワーク1005−1〜1005−3を通じて、同じクラスタに属する他のキャッシュノードと負荷情報を交換している。   The cache nodes 1001-1 to 1001-9 caching the data D measure the load information of the own node, and load with other cache nodes belonging to the same cluster through the intra-cluster overlay networks 1005-1 to 1005-3. Information is exchanged.

また、各キャッシュノード1001−1〜1001−9は、自ノードの所属するネットワークのDNSサーバ1003に対して、自ノードをネットワーク上で一意に識別可能な識別子であるグローバルIPアドレスと、ネットワーク内の他のノードがアクセスする場合に用いるデータDの場所を指し示す記述方式であるURL(Uniform Resource Locator)との対応関係を登録する。   Each of the cache nodes 1001-1 to 1001-9 has a global IP address that is an identifier that can uniquely identify the node on the network, and a DNS server 1003 of the network to which the node belongs. A correspondence relationship with a URL (Uniform Resource Locator), which is a description method indicating the location of data D used when another node accesses, is registered.

図19では、キャッシュノード1001−1が属するネットワークのDNSサーバはDNSサーバ1003−1であるため、キャッシュノード1001−1はDNSサーバ1003−1に、自ノードのグローバルIPアドレスとデータDのURLとの対応関係を登録している。同様に、キャッシュノード1001−2はDNSサーバ1003−2に対して、キャッシュノード1001−3はDNSサーバ1003−3に対して、キャッシュノード1001−4はDNSサーバ1003−4に対して、キャッシュノード1001−5、1001−6はDNSサーバ1003−5に対して、キャッシュノード1001−7〜1001−9はDNSサーバ1003−6に対して、それぞれ自ノードのグローバルIPアドレスとデータDのURLとの対応関係を登録している。   In FIG. 19, since the DNS server of the network to which the cache node 1001-1 belongs is the DNS server 1003-1, the cache node 1001-1 sends the global IP address of the own node and the URL of the data D to the DNS server 1003-1. Is registered. Similarly, the cache node 1001-2 is for the DNS server 1003-2, the cache node 1001-3 is for the DNS server 1003-3, and the cache node 1001-4 is for the DNS server 1003-4. 1001-5 and 1001-6 are for the DNS server 1003-5, and the cache nodes 1001-7 to 1001-9 are for the DNS server 1003-6. The correspondence is registered.

この結果、DNSサーバ1003−5には、データDのURLに対してキャッシュサーバ1001−5とキャッシュサーバ1001−6の2種類のグローバルIPアドレスが登録される。また、DNSサーバ1003−6には、データDのURLに対してキャッシュサーバ1001−7〜1001−9の3種類のグローバルIPアドレスが登録される。各DNSサーバ1003は、同じURLに対して複数のグローバルIPアドレスが登録された場合、URLに対応するIPアドレスの問い合わせに対しては、その何れか1つのIPアドレスを応答する。このとき、好ましくは、複数のグローバルIPアドレスがほぼ均等に使用されるように、URLに対応するグローバルIPアドレスの問い合わせに対する応答中に含めるグローバルIPアドレスを決定する。   As a result, in the DNS server 1003-5, two types of global IP addresses of the cache server 1001-5 and the cache server 1001-6 are registered for the URL of the data D. Also, in the DNS server 1003-6, three types of global IP addresses of cache servers 1001-7 to 1001-9 are registered for the URL of the data D. When a plurality of global IP addresses are registered for the same URL, each DNS server 1003 responds to one of the IP addresses in response to an inquiry about the IP address corresponding to the URL. At this time, preferably, the global IP address to be included in the response to the inquiry about the global IP address corresponding to the URL is determined so that the plurality of global IP addresses are used almost equally.

今、ユーザ端末1002−1〜1002−4の何れかの利用者、例えばユーザ端末1002−1の利用者が、データDをアクセスする場面を想定する。利用者がユーザ端末1002−1で動作するWebブラウザのURL入力テキストボックスにデータDのURLを入力すると、Webブラウザは、最寄りのDNSサーバ1003−3に対して、IPアドレスの検索要求を送信する(図19の矢印1007−11)。DNSサーバ1003−3は、データDのURLに対応してキャッシュノード1001−3のグローバルIPアドレスが登録されているため、キャッシュノード1001−3のグローバルIPアドレスを応答としてユーザ端末1002−1に返す(矢印1007−12)。ユーザ端末1002−1のWebブラウザは、求まったグローバルIPアドレスを使って、キャッシュノード1001−3に対してデータDの取得を要求するリクエストを例えばHTTPプロトコルにより送信する(矢印1007−13)。   Now, it is assumed that any user of the user terminals 1002-1 to 1002-4, for example, the user of the user terminal 1002-1 accesses the data D. When the user inputs the URL of the data D in the URL input text box of the Web browser operating on the user terminal 1002-1, the Web browser transmits an IP address search request to the nearest DNS server 1003-3. (Arrow 1007-11 in FIG. 19). Since the global IP address of the cache node 1001-3 is registered corresponding to the URL of the data D, the DNS server 1003-3 returns the global IP address of the cache node 1001-3 to the user terminal 1002-1 as a response. (Arrow 1007-12). The Web browser of the user terminal 1002-1 transmits a request for requesting acquisition of data D to the cache node 1001-3 using, for example, the HTTP protocol (arrow 1007-13) using the obtained global IP address.

キャッシュノード1001−3は、自ノードおよび同じクラスタ1004−1内の他のキャッシュノード1001−1、1001−2の負荷情報に基づいて、何れのキャッシュノードで当該リクエストを処理するかを判断する。そして、例えばキャッシュノード1001−2をリクエスト処理先に決定したとすると、キャッシュノード1001−3は当該リクエストをクラスタ内オーバーレイネットワーク1005−1経由でキャッシュノード1001−2に転送する(矢印1007−14)。キャッシュノード1001−2は、受信したリクエストを受け付け、要求されたデータを自ノードのキャッシュから読み出し、ユーザ端末1002−1へレスポンスを送信する(矢印1007−15)。   The cache node 1001-3 determines which cache node will process the request based on the load information of the own node and the other cache nodes 1001-1 and 1001-2 in the same cluster 1004-1. For example, if the cache node 1001-2 is determined as the request processing destination, the cache node 1001-3 transfers the request to the cache node 1001-2 via the intra-cluster overlay network 1005-1 (arrow 1007-14). . The cache node 1001-2 accepts the received request, reads the requested data from the cache of its own node, and transmits a response to the user terminal 1002-1 (arrow 1007-15).

次に、ユーザ端末1002−2の利用者が、データDをアクセスする場面を想定する。利用者がユーザ端末1002−2で動作するWebブラウザのURL入力テキストボックスにデータDのURLを入力すると、Webブラウザは、最寄りのDNSサーバ1003−1に対して、IPアドレスの検索要求を送信する(図19の矢印1007−21)。DNSサーバ1003−1は、データDのURLに対応してキャッシュノード1001−1のグローバルIPアドレスが登録されているため、キャッシュノード1001−1のグローバルIPアドレスを応答としてユーザ端末1002−2に返す(矢印1007−22)。ユーザ端末1002−2のWebブラウザは、求まったグローバルIPアドレスを使って、キャッシュノード1001−1に対してデータDの取得を要求するリクエストを例えばHTTPプロトコルにより送信する(矢印1007−23)。   Next, it is assumed that the user of the user terminal 1002-2 accesses the data D. When the user inputs the URL of data D in the URL input text box of the Web browser operating on the user terminal 1002-2, the Web browser transmits an IP address search request to the nearest DNS server 1003-1. (Arrow 1007-21 in FIG. 19). The DNS server 1003-1 returns the global IP address of the cache node 1001-1 to the user terminal 1002-2 as a response because the global IP address of the cache node 1001-1 is registered corresponding to the URL of the data D. (Arrow 1007-22). The web browser of the user terminal 1002-2 uses the obtained global IP address to transmit a request for obtaining data D to the cache node 1001-1 using, for example, the HTTP protocol (arrow 1007-23).

キャッシュノード1001−1は、自ノードおよび同じクラスタ1004−1内の他のキャッシュノード1001−2、1001−3の負荷情報に基づいて、何れのキャッシュノードで当該リクエストを処理するかを判断する。そして、例えば自ノード1001−1をリクエスト処理先に決定したとすると、キャッシュノード1001−1は、受信したリクエストを受け付け、要求されたデータを自ノードのキャッシュから読み出し、ユーザ端末1002−2へレスポンスを送信する(矢印1007−24)。   The cache node 1001-1 determines which cache node will process the request based on the load information of the own node and the other cache nodes 1001-2 and 1001-3 in the same cluster 1004-1. For example, if the own node 1001-1 is determined as the request processing destination, the cache node 1001-1 accepts the received request, reads the requested data from the own node cache, and responds to the user terminal 1002-2. Is transmitted (arrow 1007-24).

次に、ユーザ端末1002−3の利用者が、データDをアクセスする場面を想定する。利用者がユーザ端末1002−3で動作するWebブラウザのURL入力テキストボックスにデータDのURLを入力すると、Webブラウザは、最寄りのDNSサーバ1003−6に対して、IPアドレスの検索要求を送信する(図19の矢印100−31)。DNSサーバ1003−6は、データDのURLに対応して複数のキャッシュノード1001−7〜1001−9のグローバルIPアドレスが登録されているため、その何れか、例えばキャッシュノード1001−9のグローバルIPアドレスを応答としてユーザ端末1002−3に返す(矢印1007−32)。ユーザ端末1002−3のWebブラウザは、求まったグローバルIPアドレスを使って、キャッシュノード1001−9に対してデータDの取得を要求するリクエストを例えばHTTPプロトコルにより送信する(矢印1007−33)。   Next, it is assumed that the user of the user terminal 1002-3 accesses the data D. When the user inputs the URL of data D in the URL input text box of the Web browser operating on the user terminal 1002-3, the Web browser transmits an IP address search request to the nearest DNS server 1003-6. (Arrow 100-31 in FIG. 19). In the DNS server 1003-6, since the global IP addresses of the plurality of cache nodes 1001-7 to 1001-9 are registered corresponding to the URL of the data D, one of them, for example, the global IP address of the cache node 1001-9 is registered. The address is returned to the user terminal 1002-3 as a response (arrow 1007-32). The Web browser of the user terminal 1002-3 transmits a request for requesting acquisition of data D to the cache node 1001-9 using, for example, the HTTP protocol (arrow 1007-33) using the obtained global IP address.

キャッシュノード1001−9は、自ノードおよび同じクラスタ1004−3内の他のキャッシュノード1001−7、1001−8の負荷情報に基づいて、何れのキャッシュノードで当該リクエストを処理するかを判断する。そして、例えばキャッシュノード1001−8をリクエスト処理先に決定したとすると、キャッシュノード1001−9は当該リクエストをクラスタ内オーバーレイネットワーク1005−3経由でキャッシュノード1001−8に転送する(矢印1007−34)。キャッシュノード1001−8は、受信したリクエストを受け付け、要求されたデータを自ノードのキャッシュから読み出し、ユーザ端末1002−3へレスポンスを送信する(矢印1007−35)。   The cache node 1001-9 determines which cache node will process the request based on the load information of the own node and the other cache nodes 1001-7 and 1001-8 in the same cluster 1004-3. For example, if the cache node 1001-8 is determined as the request processing destination, the cache node 1001-9 transfers the request to the cache node 1001-8 via the intra-cluster overlay network 1005-3 (arrow 1007-34). . The cache node 1001-8 accepts the received request, reads the requested data from the cache of its own node, and transmits a response to the user terminal 1002-3 (arrow 1007-35).

次に、ユーザ端末1002−4の利用者が、データDをアクセスする場面を想定する。利用者がユーザ端末1002−4で動作するWebブラウザのURL入力テキストボックスにデータDのURLを入力すると、Webブラウザは、最寄りのDNSサーバ1003−6に対して、IPアドレスの検索要求を送信する(図19の矢印1007−41)。DNSサーバ1003−6は、データDのURLに対応して複数のキャッシュノード1001−7〜1001−9のグローバルIPアドレスが登録されているため、その何れか、例えば最も最近選択していないキャッシュノード1001−7のグローバルIPアドレスを選択し、応答としてユーザ端末1002−4に返す(矢印1007−42)。ユーザ端末1002−4のWebブラウザは、求まったグローバルIPアドレスを使って、キャッシュノード1001−7に対してデータDの取得を要求するリクエストを例えばHTTPプロトコルにより送信する(矢印1007−43)。   Next, it is assumed that the user of the user terminal 1002-4 accesses the data D. When the user inputs the URL of data D in the URL input text box of the Web browser operating on the user terminal 1002-4, the Web browser transmits an IP address search request to the nearest DNS server 1003-6. (Arrow 1007-41 in FIG. 19). In the DNS server 1003-6, since the global IP addresses of the plurality of cache nodes 1001-7 to 1001-9 are registered corresponding to the URL of the data D, any one of them, for example, the cache node not selected most recently The global IP address 1001-7 is selected and returned to the user terminal 1002-4 as a response (arrow 1007-42). The Web browser of the user terminal 1002-4 transmits a request for requesting acquisition of data D to the cache node 1001-7 using, for example, the HTTP protocol (arrow 1007-43) using the obtained global IP address.

キャッシュノード1001−7は、自ノードおよび同じクラスタ1004−3内の他のキャッシュノード1001−8、1001−9の負荷情報に基づいて、何れのキャッシュノードで当該リクエストを処理するかを判断する。そして、例えば自キャッシュノード1001−7をリクエスト処理先に決定したとすると、キャッシュノード1001−7は当該リクエストを受け付け、要求されたデータを自ノードのキャッシュから読み出し、ユーザ端末1002−4へレスポンスを送信する(矢印1007−44)。   The cache node 1001-7 determines which cache node will process the request based on the load information of its own node and other cache nodes 1001-8 and 1001-9 in the same cluster 1004-3. For example, if the local cache node 1001-7 is determined as the request processing destination, the cache node 1001-7 accepts the request, reads the requested data from the cache of the local node, and sends a response to the user terminal 1002-4. Transmit (arrow 1007-44).

以上のように本実施の形態の分散情報配置システムでは、データDの各キャッシュノード1001−1〜1001−9は、ユーザ端末からデータDのリクエストを受信した場合、自ノードの所属するクラスタ1004−1〜1004−3内の何れのキャッシュノードで当該リクエストを処理すべきかを各ノードの負荷情報に基づいて決定する機能を有するため、同一の提供データに対するユーザ端末からのアクセスに係る負荷を各クラスタ1004−1〜1004−3毎にそれに含まれる1以上のキャッシュノード間で分散することができる。   As described above, in the distributed information arrangement system according to the present embodiment, when each cache node 1001-1 to 1001-9 of data D receives a request for data D from a user terminal, the cluster 1004- to which the own node belongs. 1 has a function of determining which cache node in 1-1004-3 should process the request based on the load information of each node. Therefore, the load related to access from the user terminal to the same provided data is determined for each cluster. Every 1004-1 to 1004-3 can be distributed among one or more cache nodes included therein.

また、リクエストを処理するノードを決定する機能が各キャッシュノードに装備されているため、リクエストを処理するノードを決定する処理自体の負荷分散も可能である。   In addition, since each cache node is equipped with a function for determining a node for processing a request, it is possible to distribute the load of the processing itself for determining a node for processing a request.

さらに、各キャッシュノード1001−1〜1001−9は、自ノードの所属するネットワークのDNSサーバ1003に対して、自ノードのグローバルIPアドレスとデータDのURLとの対応関係を登録するため、互いに異なるネットワークに属する複数のユーザ端末がDNSサーバ1003をアクセスしてデータDのURLに対応するキャッシュノードのグローバルIPアドレスを取得する場合に、それぞれ異なるキャッシュノードのグローバルIPアドレスを取得することになる。この結果、複数のユーザ端末がデータDのリクエストを出すキャッシュノードを分散させることができる。   Further, each of the cache nodes 1001-1 to 1001-9 is different from each other in order to register the correspondence relationship between the global IP address of the own node and the URL of the data D with respect to the DNS server 1003 of the network to which the own node belongs. When a plurality of user terminals belonging to the network access the DNS server 1003 and acquire the global IP address of the cache node corresponding to the URL of the data D, the global IP addresses of different cache nodes are acquired. As a result, cache nodes from which a plurality of user terminals issue data D requests can be distributed.

また、同じデータDのURLに対応して複数のキャッシュノードのグローバルIPアドレスが登録されているDNSサーバ1003において、複数のグローバルIPアドレスがほぼ均等に使用されるように、URLに対応するグローバルIPアドレスの問い合わせに対する応答中に含めるグローバルIPアドレスを決定すれば、同じネットワークに属する複数のユーザ端末がデータDのリクエストを出すキャッシュノードを分散させることができる。   Further, in the DNS server 1003 in which the global IP addresses of a plurality of cache nodes are registered corresponding to the URL of the same data D, the global IP corresponding to the URL is used so that the plurality of global IP addresses are used almost evenly. If a global IP address to be included in a response to an address inquiry is determined, cache nodes from which a plurality of user terminals belonging to the same network issue data D requests can be distributed.

図19に示されるシステムでは、各クラスタ1004−1〜1004−3に存在するキャッシュノードの数はそれぞれ3台であった。しかし、このクラスタ内におけるキャッシュノードの数は固定ではなく、データDに対する需要に応じて増減される。キャッシュノード数の増減は、各クラスタ毎にそのクラスタの代表ノードの制御の下に実施される。   In the system shown in FIG. 19, the number of cache nodes existing in each cluster 1004-1 to 1004-3 is three. However, the number of cache nodes in this cluster is not fixed, and increases or decreases according to the demand for data D. The increase / decrease of the number of cache nodes is performed for each cluster under the control of the representative node of the cluster.

図19に示されるシステムでは、データDに関するクラスタの数は3つであった。しかし、データDに関するクラスタの数は固定ではなく、データDに対する需要に応じて増減される。具体的には、初期の状態では、オリジナルキャッシュノード1001−1だけを含むクラスタ1004−1が1つ存在するだけである。データDに対する需要が増加すると、代表ノードであるオリジナルキャッシュノード1001−1は、クラスタ1004−1内に新たなキャッシュノード1001−2、1001−3を生成する。そして、更に需要が増加し、1クラスタ内におけるキャッシュノード数の最大値を超えるなどの所定の条件が成立すると、クラスタ1004−1の代表ノードは、データDを未だキャッシュしていない他のノード、例えばノード1001−4に対してデータDのコピーを添えて新規クラスタの生成指示を送信する。ノード1001−4は、データDのコピーを自ノードのキャッシュに記憶し、自ノードを代表ノードとする新たなクラスタ1004−2を生成する。以降、再び新クラスタ生成条件が成立すると、クラスタ1004−1あるいはクラスタ1004−2の代表ノードの制御の下に、新クラスタ1004−3が生成される。   In the system shown in FIG. 19, the number of clusters related to data D is three. However, the number of clusters related to the data D is not fixed, and increases or decreases according to the demand for the data D. Specifically, in the initial state, there is only one cluster 1004-1 including only the original cache node 1001-1. When the demand for the data D increases, the original cache node 1001-1 that is the representative node generates new cache nodes 1001-2 and 1001-3 in the cluster 1004-1. When the demand further increases and a predetermined condition such as exceeding the maximum value of the number of cache nodes in one cluster is satisfied, the representative node of the cluster 1004-1 is another node that has not yet cached data D, For example, a new cluster generation instruction is transmitted to node 1001-4 with a copy of data D. The node 1001-4 stores a copy of the data D in the cache of the own node, and generates a new cluster 1004-2 with the own node as a representative node. Thereafter, when the new cluster generation condition is satisfied again, a new cluster 1004-3 is generated under the control of the representative node of the cluster 1004-1 or the cluster 1004-2.

他方、データDに対する需要が減退すると、それにあわせて各クラスタ1004−1〜1004−3のキャッシュノード数が減少していく。そして、例えばクラスタ1004−3におけるキャッシュノード数が0になると、クラスタ1004−3が消滅し、クラスタ1004−1とクラスタ1004−2の2つになる。同様にクラスタ1004−2におけるキャッシュノード数が0になると、クラスタ1004−2が消滅し、クラスタ1004−1だけが残る。   On the other hand, when the demand for data D declines, the number of cache nodes in each cluster 1004-1 to 1004-3 decreases accordingly. For example, when the number of cache nodes in the cluster 1004-3 becomes 0, the cluster 1004-3 disappears and becomes two, the cluster 1004-1 and the cluster 1004-2. Similarly, when the number of cache nodes in the cluster 1004-2 becomes 0, the cluster 1004-2 disappears and only the cluster 1004-1 remains.

このように本実施の形態の分散情報配置システムでは、データDに対する需要に応じて、キャッシュノード数だけでなく、クラスタ数自体も増減する。   As described above, in the distributed information arrangement system according to the present embodiment, not only the number of cache nodes but also the number of clusters itself is increased or decreased according to the demand for data D.

次に本発明の実施例について図面を参照して詳細に説明する。   Next, embodiments of the present invention will be described in detail with reference to the drawings.

本実施例は、NW上に存在する情報の分散的キャッシュ配置問題について、情報への需要、すなわちアクセス数に応じて、配置の量および場所を自律分散的に決定する、需要依存で繁栄と衰退とを繰り返す分散情報配置システム(以下、単位分散情報配置システムと記す)に関する。   This embodiment is a demand-dependent prosperity and decline for the distributed cache allocation problem of information existing on the NW, which determines the amount and location of the allocation autonomously in accordance with the demand for information, that is, the number of accesses. And a shared information arrangement system (hereinafter referred to as a unit distributed information arrangement system).

例えば、粘菌は餌の多寡によって、餌の多い場所では、単細胞生物として生活し、一方で餌の少ない場所では、集合して多細胞生物となり、餌の多い場所を求めて移動する。また、卵生メダカのノソブランキウスおよびシノレビアスは、一年の間に雨季と乾季が交代するサバンナ(草原)に住み、雨が降って水溜りが出来ると、土の中にあった卵が孵り、瞬く間に成長し、土の中に卵を生み、やがて乾季が来て池が干上がると親は死に、土の中に産みつけられた卵は次の雨季が来るのを、わずかな湿り気を残すのみの乾いた池の底の土の中で、辛抱強く待つ。このように生物の中には自身の形態を変えて環境に適応する種類がいる。また、生物は密度依存で個体の量を制御することによって、種の繁栄を維持することが知られており、このダイナミクスは一般にロジスティック方程式で記述される。さらに、生物にはヘルパー遺伝子が存在し、種全体から見れば利己的であるが個体レベルでは利他的な社会的行動を取ることによって、種の繁栄を維持することも知られている。   For example, slime molds live as unicellular organisms in places where there is a lot of food due to a large amount of food, while they gather together to become multicellular organisms in places where there is little food and move in search of places where there is a lot of food. The egg medakas, Noso Blanchius and Synolebias, live in a savanna (grass) where the rainy season and the dry season alternate during the year. It grows and lays eggs in the soil, and when the dry season comes and the pond dries up, the parents die, and the eggs laid in the soil are dry enough to leave a little dampness until the next rainy season comes Wait patiently in the soil at the bottom of the pond. In this way, some creatures change their forms and adapt to the environment. In addition, organisms are known to maintain species prosperity by controlling the amount of individuals in a density-dependent manner, and this dynamics is generally described by logistic equations. Furthermore, there are helper genes in organisms, and it is also known to maintain the prosperity of species by taking altruistic social behavior at the individual level, which is selfish when viewed from the whole species.

以上に述べたような特性を持つことによって生物は、環境変動に対して堅牢な生態系を作り出している。本実施例は、以上の説明における「生物種」をNWにおける「情報」と読み替えることで実現されるものであり、それら生物種の適応機能を通信NW上で実現するものである。そのため、従来の分散キャッシュ配置に関する技術とは、その目的を異にする。すなわち、本実施例の目的は、通信NW上の情報へのアクセス数に適応して、情報のキャッシュ配置の量と質を利他的かつ協調的な仕組みによって自律分散的に決定することで、効率的な情報の分散キャッシュ配置を実現するとともに、一度廃れてアクセスの無くなった情報の効率的な再生を実現することにある。   By having the characteristics as described above, organisms have created ecosystems that are robust against environmental changes. The present embodiment is realized by replacing the “species” in the above description with “information” in the NW, and realizes an adaptive function of these species on the communication NW. Therefore, the purpose of the technique is different from that of the conventional technique related to the distributed cache arrangement. In other words, the purpose of this embodiment is to determine the amount and quality of information cache allocation autonomously and distributedly by an altruistic and collaborative mechanism in accordance with the number of accesses to information on the communication NW. In addition to realizing a distributed cache arrangement of information, it is possible to realize efficient reproduction of information that has been once discarded and no longer accessed.

[本実施例の概要]
基本的な仕組みとして、「情報の必要度」を数値で定義し、これを情報のプロパティとして情報に付与する。情報のキャッシュ元にアクセスがあった場合、1アクセス毎に「情報の必要度」は増加し、また一定時間毎に減少する。この「情報の必要度」の一定時間毎の減少により、情報へのアクセス頻度、換言すれば「情報の鮮度」が決定される。以下では、情報へのアクセス数が増加する場合と、減少する場合について手段と作用を説明する。なお、以下では情報のソース元のサーバおよび情報をキャッシュするサーバを「キャッシュノード」と表記する。
[Outline of this embodiment]
As a basic mechanism, “information necessity” is defined by a numerical value, and this is assigned to information as an information property. If there is an access to the information cache source, the “necessity of information” increases for every access, and decreases every fixed time. The frequency of access to information, in other words, “freshness of information” is determined by the decrease in the “necessity of information” at regular intervals. In the following, means and actions will be described for cases where the number of accesses to information increases and decreases. Hereinafter, the server that is the source of information and the server that caches the information are referred to as “cache nodes”.

(1)情報へのアクセス数が増加する場合
ステップ1:
情報とある値の「情報の必要度」を最初の情報元のキャッシュノードに配置する。以下ではこのキャッシュノードを「オリジナルキャッシュノード」と呼ぶ。同時に自分を代表キャッシュノードとする下位クラスタを生成し、当該キャッシュノードのIPアドレスと「『情報の必要度』の数値」とを下位クラスタ内用の下位クラスタマップに登録する。下位クラスタ内用の下位クラスタマップは各下位クラスタ内のキャッシュノードが分散的に所有し、キャッシュノードは下位クラスタ内用の下位クラスタマップに登録された複数のキャッシュノードとオーバーレイで下位クラスタNW内通信を行う。
(1) When the number of accesses to information increases Step 1:
The information and the “information necessity” of a certain value are arranged in the first information source cache node. Hereinafter, this cache node is referred to as an “original cache node”. At the same time, a lower-level cluster having itself as a representative cache node is generated, and the IP address of the cache node and “numerical value of information” are registered in the lower-level cluster map for the lower-level cluster. The lower level cluster map for the lower level cluster is distributedly owned by the cache nodes in each lower level cluster, and the cache node communicates with the lower level cluster NW by overlaying with multiple cache nodes registered in the lower level cluster map for the lower level cluster. I do.

さらにオリジナルノードは、自身の所属するNWのDNSサーバに自身のグローバルIPアドレスと、NW内の他のノードがアクセスする場合に用いるキャッシュ情報の場所を指し示す記述方式であるURLを登録しておく。   Furthermore, the original node registers its own global IP address to the DNS server of the NW to which it belongs and a URL that is a description method that indicates the location of cache information used when other nodes in the NW access.

ここで、Internet上の一般的なキャッシュ情報へのアクセス手段について説明する。Internetの通常の通信では、情報へアクセスしたい一般的なノードBは、次の(a)または(b)のいずれかの方法により情報をキャッシュしているサーバにアクセスを行う。
(a)ノードBがキャッシュノードのURLは知っているが、IPアドレスは知らない場合、URLを指定して、そのIPアドレスをDNSサーバに問い合わせる。DNSサーバは、自身がそのURLとIPアドレスの対応を知っていれば、そのIPアドレスをInternet上の通常の通信を用いて、ノードBに伝える。もし、DNSサーバがそのURLとIPアドレスの対応を知らなければ、DNSサーバは他のDNSサーバに問い合わせる、ということを繰り返し、最終的にそのURLとIPアドレスの対応を知っているDNSサーバがノードBにIPアドレスを伝える。
(b)ノードBがIPアドレスを知っている場合は、直接キャッシュノードにアクセスできる。
Here, means for accessing general cache information on the Internet will be described. In normal Internet communication, a general node B that wants to access information accesses a server that caches information by either of the following methods (a) and (b).
(A) When the node B knows the URL of the cache node but does not know the IP address, the URL is designated and the DNS server is inquired about the IP address. If the DNS server knows the correspondence between the URL and the IP address, the DNS server transmits the IP address to the Node B using normal communication on the Internet. If the DNS server does not know the correspondence between the URL and the IP address, the DNS server makes an inquiry to another DNS server, and finally the DNS server that knows the correspondence between the URL and the IP address is a node. Tell B the IP address.
(B) If Node B knows the IP address, it can access the cache node directly.

以下では(a)の場合を前提に説明を続ける。   Hereinafter, the description will be continued on the assumption of the case (a).

ステップ2:
情報へのアクセスがあるたびにキャッシュノードの「『情報の必要度』の数値」が増加する。
Step 2:
Every time there is access to information, the “number of“ information necessity ”” of the cache node increases.

ステップ3:
アクセスが増えて「『情報の必要度』の数値」がある閾値1を超えると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値1を超えると代表キャッシュノードはある物理的あるいは論理的NW距離にある、次数の大きなキャッシュノードに情報をキャッシュしてもらえないかランダムに通常のInternetにおける通信手法によって打診し、承諾をもらったキャッシュノードにキャッシュさせてもらう。ここで、複数の承諾をもらった場合には、それらの全て、あるいはそれらのうち次数の大きなキャッシュノードに対して、キャッシュさせてもらう。この新規追加されたキャッシュノードは下位クラスタ内の代表キャッシュノード宛に、新規追加されたキャッシュノードが下位クラスタに属することを認識してもらうための「entryメッセージ」を通常のInternetにおける通信手法によって送る。
Step 3:
When access increases and the “number of“ information need ”” exceeds a certain threshold 1, the average value of the “number of“ information need ”” for a certain period of time is taken into account, taking into account fluctuations in the number. get. If the average value of “Numerical value of information” for a certain time exceeds a certain threshold value 1, the representative cache node caches information in a large-order cache node at a certain physical or logical NW distance. There is a random consultation with a normal Internet communication method, and the cache node with the consent is made to cache. Here, when a plurality of approvals are obtained, all of them, or a cache node having a large degree among them, is allowed to cache. The newly added cache node sends to the representative cache node in the lower cluster a “entry message” for recognizing that the newly added cache node belongs to the lower cluster by a communication method in the normal Internet. .

新規追加キャッシュノードへの依頼を行った代表キャッシュノードは、新規追加されたキャッシュノード宛に、「entryメッセージ」を受信したことを示すメッセージを下位クラスタ内通信によって送り、同時に下位クラスタマップに必要な情報を要求する。要求を受けた新規追加キャッシュノードは、自身のキャッシュノードに関する要求情報を下位クラスタ内通信によってキャッシュノードへの依頼を行った代表キャッシュノードへ送る。   The representative cache node that has made a request to the newly added cache node sends a message indicating that the “entry message” has been received to the newly added cache node by communication within the lower cluster, and at the same time is necessary for the lower cluster map. Request information. Upon receipt of the request, the newly added cache node sends request information regarding its own cache node to the representative cache node that has requested the cache node by communication within the lower cluster.

追加キャッシュノード依頼を行った代表キャッシュノードは、新規追加キャッシュノードから受け取った要求情報をもとに下位クラスタマップを更新し、更新された下位クラスタマップを、下位クラスタ内通信によって代表キャッシュノードの所属する下位クラスタ内の他のキャッシュノードに送る。各キャッシュノードは各自の持つ下位クラスタ用の下位クラスタマップを更新して、登録完了のメッセージを、キャッシュノード依頼を行ったキャッシュノードに、下位クラスタ内通信によって送る。なお、新規キャッシュノードの下位クラスタへの追加は、アクセス数の変動を考慮して、一定時間待ってから行う。この時点でのユーザからのアクセス先は、代表キャッシュノードとする。   The representative cache node that requested the additional cache node updates the lower cluster map based on the request information received from the new additional cache node, and the updated lower cluster map is assigned to the representative cache node by communication within the lower cluster. To other cache nodes in the subordinate cluster. Each cache node updates its own lower-level cluster map for the lower-level cluster, and sends a registration completion message to the cache node that has requested the cache node by communication within the lower-level cluster. Note that the addition of a new cache node to the lower cluster is performed after waiting for a certain time in consideration of the variation in the number of accesses. The access destination from the user at this time is a representative cache node.

ステップ4:
下位クラスタ内に存在する、代表キャッシュノードを含む複数のキャッシュノードらは、下位クラスタ内通信を一定時間間隔毎または不定時間間隔で行うことによって、互いの「生存」と「『情報の必要度』の数値」などの情報を交換し合う。これによって下位クラスタ内のキャッシュノードの下位クラスタ内用の下位クラスタマップの更新と同期とを行う。ここで、下位クラスタ内通信は、新規にキャッシュノードが追加されたり、キャッシュノードやキャッシュノード間のリンクの障害などのイベントが発生した場合には、そのイベントをトリガーとして行われる。
Step 4:
A plurality of cache nodes including the representative cache node existing in the lower cluster perform mutual “survival” and ““ necessity of information ”by performing communication within the lower cluster at regular time intervals or at indefinite time intervals. Exchange information such as This updates and synchronizes the lower cluster map for the lower cluster of the cache node in the lower cluster. Here, in the lower cluster communication, when an event such as a new cache node is added or a failure occurs in the cache node or a link between the cache nodes, the event is triggered.

ステップ5:
下位クラスタ内に、代表キャッシュノードを除く少なくとも1つの他のキャッシュノードが追加されると、それらは自律的に負荷分散を行う。すなわち、下位クラスタ内通信によって同一下位クラスタ内の「『情報の必要度』の数値」やそれを用いた計算結果によって値の少ないキャッシュノードから順にアクセスを転送する。
Step 5:
When at least one other cache node other than the representative cache node is added to the lower level cluster, they autonomously load balance. That is, access is sequentially transferred from a cache node having a smaller value according to “numerical value of“ information necessity ”” in the same lower cluster or a calculation result using the same in the lower cluster communication.

ステップ6:
各クラスタには、その代表キャッシュノードまたはクラスタの中心から一定の物理距離または論理的距離を半径とする円で特定されるクラスタ領域と、このクラスタ領域に設置することのできるキャッシュノードの最大数とが予め定められる。クラスタ領域に設置可能なキャッシュノードの最大数は、換言すれば、当該クラスタのキャッシュノード密度である。キャッシュノード密度は、「キャッシュノード数/NW半径」で表現しても良いし、「キャッシュノード数/NW半径内に存在するノード数」で表現しても良い。
Step 6:
Each cluster has a cluster area identified by a circle whose radius is a certain physical distance or logical distance from the center of the representative cache node or cluster, and the maximum number of cache nodes that can be installed in this cluster area. Is predetermined. In other words, the maximum number of cache nodes that can be installed in the cluster area is the cache node density of the cluster. The cache node density may be expressed by “number of cache nodes / NW radius” or may be expressed by “number of cache nodes / number of nodes existing in NW radius”.

ステップ7:
下位クラスタの代表キャッシュノードが「NW半径を超える遠くからのアクセスが多くなる」あるいは「上記ステップ6で計算した自下位クラスタに置くことの出来るキャッシュノードの最大数に近づく」ことを検知すると、そのNW半径を超える場所に存在する、次数の大きなキャッシュノードに該情報をキャッシュしてもらえないかランダムに通常のInternetにおける通信手法によって打診し、通常のInternetにおける通信手法によって承諾をもらったキャッシュノードにキャッシュさせてもらう。ここで、複数の承諾をもらった場合には、それらの全て、あるいはそれらのうち次数の大きなキャッシュノードに対して、キャッシュさせてもらう。また、NW半径を超える場所は、自クラスタの周囲360度方向に存在するが、NW半径を超える場所があるNWドメインに偏っている場合には、このNWドメイン近傍の次数の大きなキャッシュノードを優先的に候補として選択する。なお、この新規キャッシュノードの追加は、アクセス数の変動を考慮して、一定時間待ってから行う。
Step 7:
When it is detected that the representative cache node of the lower cluster “accesses from a distance exceeding the NW radius increases” or “approaching the maximum number of cache nodes that can be placed in the own lower cluster calculated in step 6 above”, Cannot cache the information in a cache node of a large degree that exists in a place exceeding the NW radius, or randomly consult with a normal Internet communication method, and obtain a consent from a normal Internet communication method Have them cache. Here, when a plurality of approvals are obtained, all of them, or a cache node having a large degree among them, is allowed to cache. In addition, the location exceeding the NW radius exists in the 360 degree direction around the own cluster, but if the location exceeds the NW radius is biased to the NW domain, priority is given to a cache node having a large degree near the NW domain. Select as a candidate. Note that this new cache node is added after waiting for a certain time in consideration of the variation in the number of accesses.

キャッシュノードの依頼を行った代表キャッシュノードは、自キャッシュノードを含む代表キャッシュノードのみで構成される上位クラスタを作成し、上位クラスタ用の上位クラスタマップを作成する。   The representative cache node that has requested the cache node creates an upper cluster composed only of the representative cache nodes including the own cache node, and creates an upper cluster map for the upper cluster.

新規追加されたキャッシュノードは自分を代表キャッシュノードとする下位クラスタを新たに形成し、下位クラスタ内用下位クラスタマップを作成する。ここで、この代表キャッシュノード同士による上位クラスタ内オーバーレイNWは、下位クラスタ内NWの上にオーバーレイNWの形態で構築される。   The newly added cache node newly forms a subordinate cluster having itself as a representative cache node, and creates a subordinate cluster map for the subordinate cluster. Here, the overlay NW in the upper cluster by the representative cache nodes is constructed in the form of the overlay NW on the NW in the lower cluster.

また、新規追加されたキャッシュノードはキャッシュノード依頼を受けた代表キャッシュノードに対して、代表キャッシュノードのみで構成される上位クラスタへ新規追加されたキャッシュノードが上位クラスタに属することを認識してもらうための「entryメッセージ」を通常のInternetにおける通信手法によって送る。   Also, the newly added cache node has the representative cache node that received the cache node request recognize that the newly added cache node belongs to the upper cluster consisting of only the representative cache node. An “entry message” is sent by a communication method in a normal Internet.

キャッシュノードへの依頼を行った代表キャッシュノードは、新規追加された代表キャッシュノード宛に、「entryメッセージ」を受信したことを示すメッセージを上位クラスタ内通信によって送り、同時に上位クラスタマップに必要な情報を要求する。要求を受けた新規追加キャッシュノードは、自身のキャッシュノードに関する要求情報を上位クラスタ内通信によってキャッシュノードへの依頼を行った代表キャッシュノードへ送る。   The representative cache node that has made a request to the cache node sends a message indicating that the “entry message” has been received to the newly added representative cache node by communication within the upper cluster, and at the same time, information necessary for the upper cluster map. Request. Upon receiving the request, the newly added cache node sends request information regarding its own cache node to the representative cache node that has requested the cache node by communication within the upper cluster.

キャッシュノード依頼を行った代表キャッシュノードは、新規代表キャッシュノードから受け取った要求情報をもとに上位クラスタマップを更新し、代表キャッシュノードのみで構成される上位クラスタ内の他の代表キャッシュノードに、上位クラスタ内通信によって送る。各キャッシュノードは各自の持つ上位クラスタ用の上位クラスタマップを更新して、登録完了のメッセージを、キャッシュノード依頼を行った代表キャッシュノードに、上位クラスタ内通信によって送る。   The representative cache node that made the cache node request updates the upper cluster map based on the request information received from the new representative cache node, and the other representative cache nodes in the upper cluster configured only by the representative cache node Sent by upper cluster communication. Each cache node updates its own upper cluster map for the upper cluster, and sends a registration completion message to the representative cache node that has requested the cache node by communication within the upper cluster.

下位クラスタ同士は原則的に代表キャッシュノードであるキャッシュノード同士が、各下位クラスタ内のキャッシュノード数などのマクロな情報を、一定時間間隔毎または不定時間間隔でオーバーレイ通信を行うことによって、互いの生存と状況を確認し合う。   In principle, the lower-level clusters communicate with each other by performing overlay communication between the cache nodes, which are representative cache nodes, such as the number of cache nodes in each lower-level cluster at regular time intervals or at indefinite time intervals. Check survival and situation.

(2)情報へのアクセス数が減少する場合
ステップ1:
あるキャッシュノードへのアクセスが減って、「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、自キャッシュノードの所属する下位クラスタ内に他のキャッシュノードがいる限り、それら下位クラスタ内の他のキャッシュノード全てに、下位クラスタ内通信によって脱退メッセージを送る。脱退メッセージを受け取った下位クラスタ内の他のキャッシュノードは自キャッシュノードの下位クラスタ内用下位クラスタマップから、脱退キャッシュノードのIPアドレス以外の情報を消去し、「脱退メッセージが到着した」という確認メッセージを脱退キャッシュノードに対して、下位クラスタ内通信によって送信する。脱退キャッシュノードは、下位クラスタ内の全ての他のキャッシュノードから、下位クラスタ内通信によって確認メッセージを受け取った後で、自キャッシュノードの保持しているキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して下位クラスタから抜ける。
(2) When the number of accesses to information decreases Step 1:
When access to a certain cache node decreases and the value of “Necessary information” falls below a certain threshold, the numerical value of “Necessity of information” for a certain time from that point is taken into account when the numerical value is considered. ”Is obtained. If the average value of “Numerical value of information” for a certain time falls below a certain threshold, as long as there are other cache nodes in the lower cluster to which the own cache node belongs, other cache nodes in those lower clusters A withdrawal message is sent to all through lower cluster communication. The other cache node in the lower cluster that has received the withdrawal message erases information other than the IP address of the withdrawal cache node from the lower cluster map in the lower cluster of its own cache node, and a confirmation message that “the withdrawal message has arrived” Is transmitted to the withdrawal cache node by communication within the lower cluster. The withdrawal cache node receives the confirmation message by communication within the lower cluster from all other cache nodes in the lower cluster, and then deletes the cache data held by the own cache node, and the URL of the information and its own A deletion request is issued to the DNS server that has registered the IP address, and the subordinate cluster is exited.

ここで、仮に代表キャッシュノードが抜ける場合には、以下のようになる。代表キャッシュノードへのアクセスが減って、「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、自キャッシュノードの所属する下位クラスタ内の他のキャッシュノードのうち、最も「『情報の必要度』の数値」の小さいキャッシュノードに他の下位クラスタとの通信を行う代表キャッシュノードを譲り、自キャッシュノードの所属する下位クラスタ内の他のキャッシュノード全てに対しては下位クラスタ内通信によって、また他の下位クラスタの代表キャッシュノードへは上位クラスタ内通信によって、「別のキャッシュノードが代表キャッシュノードを引き継ぎ、自分が抜けること」を知らせる。このメッセージを受け取った下位クラスタ内の他の全てのキャッシュノードは各々の持つ下位クラスタ内用下位クラスタマップから代表キャッシュノードの情報を削除し、「代表キャッシュノードを受け継いだキャッシュノード」を代表キャッシュノードとして下位クラスタ内用下位クラスタマップに設定する。さらに、「元の代表キャッシュノード」と「代表キャッシュノードを受け継いだキャッシュノード」に対して、「新しい代表キャッシュノードを下位クラスタ内用下位クラスタマップに登録したこと」を下位クラスタ内通信によって確認メッセージとして伝える。   Here, if the representative cache node leaves, it will be as follows. When the access to the representative cache node decreases and the “value of“ information need ”” falls below a certain threshold, the “value of“ information need ”” for a certain time from that point is taken into account. ”Is obtained. If the average value of the “Need for Information” for a certain time falls below a certain threshold, it is the most “Need for Information” among the other cache nodes in the lower cluster to which the own cache node belongs. The representative cache node that communicates with other lower level clusters is transferred to the small cache node, and all other cache nodes in the lower level cluster to which the own cache node belongs are communicated with the lower level cluster and other lower level nodes. The representative cache node of the cluster is notified by “intra-cluster communication” that “another cache node takes over the representative cache node and leaves itself”. All other cache nodes in the lower level cluster that have received this message delete the information of the representative cache node from the lower level cluster map for lower level clusters, and set the “cache node that inherited the representative cache node” as the representative cache node. Is set in the lower cluster map for the lower cluster. In addition, for the "original representative cache node" and the "cache node that inherited the representative cache node", a message confirming that "new representative cache node has been registered in the lower cluster map for lower cluster" through lower cluster communication Tell as.

同様に他の下位クラスタの代表キャッシュノードは、上位クラスタNW用の上位クラスタマップから代表キャッシュノードの情報を削除し、新しい代表キャッシュノードを下位クラスタの代表キャッシュノードとして上位クラスタNW用の上位クラスタマップに設定する。さらに他の下位クラスタの代表キャッシュノードは、確認メッセージを「代表キャッシュノードを受け継いだキャッシュノード」と「元の代表キャッシュノード」宛に上位クラスタ内通信によって送信する。   Similarly, the representative cache node of another lower cluster deletes the information of the representative cache node from the upper cluster map for the upper cluster NW, and uses the new representative cache node as the representative cache node of the lower cluster, and the upper cluster map for the upper cluster NW. Set to. Further, the representative cache node of another lower cluster transmits a confirmation message to the “cache node that inherited the representative cache node” and the “original representative cache node” by communication within the upper cluster.

自キャッシュノードの所属する下位クラスタ内の全てのキャッシュノード、および他の下位クラスタの全ての代表キャッシュノードからの確認メッセージを下位クラスタ内通信、上位クラスタ内通信によってそれぞれ受け取った後で、「元の代表キャッシュノード」は、自キャッシュノードの保持するキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して下位クラスタから抜ける。   After receiving confirmation messages from all the cache nodes in the lower level cluster to which the own cache node belongs and from all the representative cache nodes in other lower level clusters via lower level cluster communication and higher level cluster communication, The “representative cache node” deletes the cache data held by its own cache node, issues a deletion request to the DNS server that registered the URL of the information and its own IP address, and exits from the lower cluster.

ステップ2:
ある下位クラスタに最終的に残ったキャッシュノードは必然的に下位クラスタの代表キャッシュノードであるが、代表キャッシュノードでも「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、代表キャッシュノードは他の下位クラスタの全ての代表キャッシュノードに対して、脱退メッセージを上位クラスタ内通信によって送る。同時に、脱退代表キャッシュノードは自キャッシュノードの上位クラスタNW用上位クラスタマップを見て、他の下位クラスタの全ての代表キャッシュノードのうち、キャッシュノード当たりの「『情報の必要度』の数値」が最も少なく、かつキャッシュノード密度の最大値の大きい代表キャッシュノードに、自キャッシュノードの所属する下位クラスタ内用の下位クラスタマップを上位クラスタ内通信によって送信する。
Step 2:
The cache node that finally remains in a subordinate cluster is inevitably the representative cache node of the subordinate cluster. However, even if the representative cache node falls below a certain threshold, the numerical value changes. Considering this, the average value of the “numerical value of“ information need ”” for a certain period of time from that point is acquired. If the average value of the “value of information” for a certain time falls below a certain threshold, the representative cache node sends a withdrawal message to all the representative cache nodes in other lower clusters by communication within the upper cluster. . At the same time, the withdrawal representative cache node looks at the upper cluster map for the upper cluster NW of its own cache node, and among all the representative cache nodes of the other lower clusters, the “number of information necessity” per cache node is The lower cluster map for the lower cluster to which the own cache node belongs is transmitted by communication within the upper cluster to the representative cache node having the smallest cache node density and the largest value.

他の下位クラスタの全ての代表キャッシュノードは、脱退メッセージを送信した代表キャッシュノードに対して「代表キャッシュノードが抜けること」を確認するメッセージを「代表キャッシュノード」宛に上位クラスタ内通信によって送信した後で、定期メッセージの宛先から代表キャッシュノードに関するIPアドレス以外の情報を上位クラスタNW用上位クラスタマップから削除する。ここで脱退代表キャッシュノードから下位クラスタ内用の下位クラスタマップを受け取った代表キャッシュノードは、「下位クラスタマップを受け取ったこと」を確認メッセージとして、脱退代表キャッシュノードに上位クラスタ内通信によって送信する。   All the representative cache nodes in the other lower-level clusters have sent a message confirming that the “representative cache node is leaving” to the representative cache node that has sent the withdrawal message to the “representative cache node” via upper cluster communication. Later, information other than the IP address related to the representative cache node from the destination of the periodic message is deleted from the upper cluster map for the upper cluster NW. Here, the representative cache node that has received the lower cluster map for the lower cluster from the withdrawal representative cache node transmits a confirmation message “having received the lower cluster map” to the withdrawal representative cache node by communication within the upper cluster.

脱退代表キャッシュノードは、他の下位クラスタの全ての代表キャッシュノードから「代表キャッシュノードが抜けること」を確認するメッセージを上位クラスタ内通信によって受け取り、かつ脱退代表キャッシュノードから下位クラスタ内用の下位クラスタマップを受け取った代表キャッシュノードから「下位クラスタマップを受け取ったこと」を確認するメッセージを上位クラスタ内通信によって受け取った後で、自キャッシュノードの保持するキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して上位クラスタNWから抜ける。   The withdrawal representative cache node receives a message confirming that “representative cache node is removed” from all the representative cache nodes of the other lower clusters through communication within the upper cluster, and the lower representative cluster for the lower cluster from the withdrawal representative cache node. After receiving a message confirming that “the lower cluster map has been received” from the representative cache node that received the map by communication within the upper cluster, the cache data held by the own cache node is deleted, and the URL of the information and its own URL are deleted. A deletion request is issued to the DNS server that has registered the IP address, and the host cluster NW is exited.

ステップ3:
オリジナルキャッシュノードを含む下位クラスタ以外で最終的に残った下位クラスタにおいて、最終的に残ったキャッシュノード(以下、終末キャッシュノードと呼ぶ)でも「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、オリジナルキャッシュノードに対して「自分が最終データのキャッシュノードであること」、終末キャッシュノードが保持している「キャッシュデータ」および「過去に脱退した他の下位クラスタの下位クラスタ内用の下位クラスタマップ」を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)削除して欲しい、という「希望情報」と共に、上位クラスタ内通信によって伝える。
Step 3:
In the subordinate cluster that finally remains other than the subordinate cluster including the original cache node, even the finally remaining cache node (hereinafter referred to as the terminal cache node) falls below a certain threshold value Then, taking the fluctuation of the numerical value, the average value of “the numerical value of“ the degree of necessity of information ”” for a certain time from that time point is acquired. When the average value of the “value of information” for a certain time falls below a certain threshold, the terminal cache node holds that “I am the cache node of the final data” for the original cache node. "Cache data" and "Lower level cluster map for lower level clusters of other lower level clusters that have left in the past" may be left as they are on the own cache node. 2) Some other form (for example, as a link destination) Etc.), or 3) “desired information” that the user wants to be deleted, and is communicated by intra-cluster communication.

ステップ4:
オリジナルキャッシュノードは、終末キャッシュノードからの「希望情報」を元に、情報を、1)そのまま置いてもらうか、2)何か他の形態(例えばリンク先としてなど)で置かせてもらうか、あるいは、3)削除してもらうかを検討し、その結果を週末キャッシュノードに対して上位クラスタ内通信によって伝える。ここで、終末キャッシュノードに情報をキャッシュし続けてもらう理由は、そのデータが再度必要になる場合、最後までアクセスがあったキャッシュノードの周辺からの場合が多いと推定されるためである。
Step 4:
Based on the “desired information” from the terminal cache node, the original cache node can place the information 1) as it is, or 2) have it placed in some other form (for example, as a link destination), Or, 3) Consider whether or not to delete, and communicate the result to the weekend cache node by communication within the upper cluster. Here, the reason why the terminal cache node continues to cache information is that when the data is needed again, it is estimated that there are many cases from the periphery of the cache node that has been accessed to the end.

ステップ5:
情報を削除してもらう場合には、最後に残った下位クラスタにいた他のキャッシュノードに対して、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しい、ことを通常のInternetの通信手段によって伝える。
Step 5:
If you want the information to be deleted, I would like the other cache nodes in the last remaining lower cluster to leave the information 1) as is 2) Some other form (for example, as a link destination) I tell you that I want you to put it in the normal Internet communication means.

ステップ6:
終末キャッシュノードは、オリジナルキャッシュノードからの回答に従って、情報の管理形態を決定する。すなわち、情報を、1)そのまま置くか、2)何か他の形態(例えばリンク先としてなど)で置くか、あるいは、3)削除するか、のいずれかを行う。
Step 6:
The terminal cache node determines the information management form according to the answer from the original cache node. That is, the information is either 1) placed as it is, 2) placed in some other form (for example, as a link destination), or 3) deleted.

ステップ7:
オリジナルキャッシュノードから、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しいというメッセージを通常のInternetの通信手段によって受け取った、最後に残った下位クラスタにいた他のキャッシュノードは、それぞれオリジナルキャッシュノードに対して、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)置きたくない、という「希望情報」を通常のInternetの通信手段によって伝える。
Step 7:
Received a message from the original cache node 1) I want you to leave it as it is, 2) I want you to put it in some other form (for example, as a link destination), etc. The other cache nodes that were in the lower level cluster may place information on the original cache node 1) as it is in the local cache node 2) in some other form (for example, as a link destination) Or 3) “desired information” that the user does not want to place is transmitted by a normal Internet communication means.

ステップ8:
「希望情報」を通常のInternetの通信手段によって受け取ったオリジナルキャッシュノードは、その中に、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良いという回答があれば、1)、2)の優先順位で、そのキャッシュノードと上位クラスタを構成し、キャッシュする情報を上位クラスタ内通信によって送信する。
Step 8:
The original cache node that has received the “desired information” by the normal Internet communication means may place the information in the cache node as it is. 2) Some other form (for example, as a link destination) Etc.), the cache node and the upper cluster are configured in the priority order of 1) and 2), and the information to be cached is transmitted by communication within the upper cluster.

ステップ9:
「希望情報」を受け取ったオリジナルキャッシュノードは、その中に3)置きたくないという回答しか無ければ、最後から2番目に削除された下位クラスタにいた他のキャッシュノードに対して、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しい、ことを通常のInternetの通信手段によって伝える。
Step 9:
If the original cache node that received the “desired information” has only the answer that it does not want to place 3) in it, the information is sent to the other cache nodes in the subordinate cluster deleted second from the end. I want you to leave it as it is, 2) I want you to put it in some other form (for example, as a link destination, etc.) and tell it by the usual Internet communication means.

ステップ10:
以下、ステップ7から9を繰り返す。
Step 10:
Thereafter, steps 7 to 9 are repeated.

ステップ11:
最終的にオリジナルキャッシュノード以外にキャッシュしてくれるキャッシュノードが無ければ、オリジナルキャッシュノードは、情報を自キャッシュノードに保存したままにする。
Step 11:
If there is no cache node that caches other than the original cache node, the original cache node keeps the information stored in its own cache node.

(3)アクセスが再度増加した場合に関する動作の説明
上記「情報へのアクセス数が減少する場合」のステップ7〜11において、最終的にキャッシュされるべき情報をどのキャッシュノードが保持しているかによって、最初のステップのみが異なる。
(3) Explanation of operation when access is increased again In steps 7 to 11 of “when the number of accesses to information decreases”, depending on which cache node holds information to be finally cached Only the first step is different.

(3−1)最終的にオリジナルキャッシュノードのみがキャッシュされるべき情報を保持している場合
この場合は、「(1)情報へのアクセス数が増加する場合」のステップ3が最初のステップとなる。
(3-1) When only the original cache node holds information to be cached in this case In this case, step 3 of “(1) When the number of accesses to information increases” is the first step. Become.

(3−2)最終的にオリジナルキャッシュノードと終末キャッシュノードがキャッシュされるべき情報を保持している場合
この場合、オリジナルキャッシュノードと終末キャッシュノードのうち、アクセスを受けたキャッシュノードにおいて、「(1)情報へのアクセス数が増加する場合」のステップ3が最初のステップとなる。終末キャッシュノードにおいてアクセスが増加し、「(1)情報へのアクセス数が増加する場合」で示した、閾値1を超えてキャッシュノードの追加が必要になった場合、「(1)情報へのアクセス数が増加する場合」のステップ3で示した手順に従って、一定時間待ってから、終末キャッシュノードは自分の保持している下位クラスタ内の下位クラスタマップの中に残っている、下位クラスタ内で過去にキャッシュノードであったキャッシュノードに情報をキャッシュしてもらえないかを通常のInternetの通信手段によって打診する。もし、いずれからも承諾を得られなかった場合には、ある一定のホップ数にあるキャッシュノードのうち、次数の大きなキャッシュノードにランダムに情報をキャッシュしてもらえないかを通常のInternetの通信手段によって打診する。一定のホップ数内のキャッシュノードから承諾が得られなければ、終末キャッシュノードは探索ホップ数を+1して、承諾を得られるキャッシュノードを探索する。
(3-2) When the original cache node and the terminal cache node hold information to be cached finally In this case, among the original cache node and the terminal cache node, in the cache node that has received access, “( Step 3 of “1) When the number of accesses to information increases” is the first step. When access is increased at the terminal cache node, and it becomes necessary to add a cache node exceeding the threshold 1 shown in “(1) When the number of accesses to information increases”, “(1) In the case where the number of accesses increases, after waiting for a certain period of time in accordance with the procedure shown in Step 3, the terminal cache node remains in the lower cluster map in the lower cluster held by itself in the lower cluster. Whether or not the cache node that has been a cache node in the past can cache the information is examined by a normal Internet communication means. If consent is not obtained from either of them, a normal Internet communication means determines whether information can be randomly cached by a cache node having a large degree among cache nodes having a certain number of hops. Consult with. If consent is not obtained from a cache node within a certain number of hops, the terminal cache node increments the number of search hops by one and searches for a cache node that can obtain consent.

下位クラスタ内の過去のキャッシュノード、あるいはホップ数による探索によって、いずれかのキャッシュノードから承諾を受けると、後は「(1)情報へのアクセス数が増加する場合」のステップ3以降において説明した手順に従って、キャッシュノードを増加させていく。   If consent is received from any cache node in the past by a cache node in the lower cluster or a search based on the number of hops, the description will be given after step 3 of “(1) When the number of accesses to information increases”. The cache nodes are increased according to the procedure.

以上のようにして、通信NW上の情報へのアクセス数に適応して、情報のキャッシュ配置の量と質を利他的かつ協調的な仕組みによって自律分散的に決定することで、効率的な情報の分散キャッシュ配置を実現するとともに、一度廃れてアクセスの無くなった情報の効率的な再生を実現する。   As described above, the amount of information cache allocation and quality are determined autonomously and distributed by an altruistic and cooperative mechanism in accordance with the number of accesses to information on the communication NW. In addition to realizing a distributed cache arrangement, it is possible to efficiently reproduce information that has been once discarded and no longer accessed.

[構成の説明]
次に、本実施例の構成を詳細に説明する。
[Description of configuration]
Next, the configuration of the present embodiment will be described in detail.

図1を参照すると、本実施例の分散情報配置システムにおける「『情報の必要度』の数値」の変化の様子の1例が示されている。アクセスがあるたびに、「『情報の必要度』の数値」は一定量だけ増加する。「『情報の必要度』の数値」は一定時間が経過する毎に一定量だけ減少する。   Referring to FIG. 1, an example of a change in “numerical value of“ information necessity ”” in the distributed information arrangement system of the present embodiment is shown. Each time there is an access, the “numerical value of information” increases by a certain amount. The “numerical value of“ information requirement ”” decreases by a certain amount every time a certain time elapses.

図2を参照すると、本実施例の分散情報配置システムにおける新規キャッシュノード追加の様子の1例が示されている。図3を参照すると、本実施例の分散情報配置システムにおける新規キャッシュノード追加のフローチャートの1例が示されている。図4を参照すると、本実施例の分散情報配置システムにおける、各キャッシュノードが保持する下位クラスタ内用の下位クラスタマップの1例が示されている。   Referring to FIG. 2, an example of how a new cache node is added in the distributed information arrangement system of this embodiment is shown. Referring to FIG. 3, there is shown an example of a flowchart for adding a new cache node in the distributed information arrangement system of this embodiment. Referring to FIG. 4, an example of a lower cluster map for a lower cluster held by each cache node in the distributed information arrangement system of the present embodiment is shown.

下位クラスタ内用の下位クラスタマップの内容は、図4に示したように、キャッシュノードの、DNS登録名、グローバルIPアドレス、『情報の必要度』の数値、『情報の必要度』の数値の1次微分値、および『情報の必要度』の数値の2次微分値である。『情報の必要度』の数値の1次微分値は、直近の単位時間当たりの『情報の必要度』の数値の増減量である。『情報の必要度』の数値の2次微分値は、直近の単位時間当たりの『情報の必要度』の数値の増減割合である。   As shown in FIG. 4, the contents of the lower-level cluster map for the lower-level cluster include the DNS registration name, global IP address, “information necessity” numerical value, and “information necessity” numerical value of the cache node. The primary differential value and the secondary differential value of the numerical value of “Necessity of information”. The first-order differential value of the numerical value of “information necessity” is an increase / decrease amount of the numerical value of “information necessity” per unit time. The second derivative of the value of “information necessity” is the rate of increase / decrease of the value of “information need” per unit time.

ここで、下位クラスタNW2内のオーバーレイ通信のために、下位クラスタNW2内のキャッシュノードに、下位クラスタNW2内部でのみ通用するローカルなIPアドレスを各々割り当て、このローカルなIPアドレスを用いた下位クラスタNW2内のオーバーレイ通信を行っても良い。その場合、下位クラスタ内用の下位クラスタマップの内容は、図4に示した以外に、下位クラスタ2内でローカルに付加したローカルなIPアドレスを含んでいても良い。   Here, for overlay communication in the lower cluster NW2, a local IP address that can be used only in the lower cluster NW2 is assigned to each cache node in the lower cluster NW2, and the lower cluster NW2 using this local IP address is assigned. The overlay communication may be performed. In this case, the contents of the lower cluster map for the lower cluster may include a local IP address added locally in the lower cluster 2 other than that shown in FIG.

なお、下位クラスタ内用の下位クラスタマップの内容は、図4の内容から『情報の必要度』の数値の2次微分値を削除したものでも良い。また、下位クラスタ内用の下位クラスタマップの内容は、図4に示した以外に何らかの『情報の必要度』の数値の経時変化の様子を表す変数を含んでいても良い。   The contents of the lower cluster map for the lower cluster may be obtained by deleting the second derivative value of the “information necessity” value from the contents of FIG. In addition, the contents of the lower cluster map for the lower cluster may include a variable representing a state of change of the numerical value of “information necessity” with time other than that shown in FIG.

オリジナルノードは、自身の所属するNWのDNSサーバに自身をNW上で一意に識別可能な識別子であるグローバルIPアドレスと、NW内の他のノードがアクセスする場合に用いるキャッシュ情報の場所を指し示す記述方式であるURLを登録しておく(図2aまたは図2bのオリジナルノード1から出ている1点鎖線)。   The original node is a description indicating the global IP address, which is an identifier that can uniquely identify the DNS server of the NW to which the original node belongs, and the location of cache information used when other nodes in the NW access A URL that is a method is registered (one-dot chain line from the original node 1 in FIG. 2a or 2b).

情報とある値(初期値)の「情報の必要度」をオリジナルキャッシュノード1に配置する。同時に自分を代表キャッシュノードとする下位クラスタ2を生成し、オリジナルキャッシュノード1のIPアドレスと「『情報の必要度』の数値」とを下位クラスタ内用の下位クラスタマップ4−2に登録する。下位クラスタ内用の下位クラスタマップ4−2は各下位クラスタ内のキャッシュノードが分散的に所有し、キャッシュノードは下位クラスタ内用の下位クラスタマップに登録された複数のキャッシュノードとオーバーレイで下位クラスタ内通信を行う。図1に示したように情報へのアクセスがあるたびに「『情報の必要度』の数値」が増加する。   Information and a certain value (initial value) “necessity of information” are arranged in the original cache node 1. At the same time, the lower cluster 2 having itself as a representative cache node is generated, and the IP address of the original cache node 1 and the “numerical value of information” are registered in the lower cluster map 4-2 for the lower cluster. The lower cluster map 4-2 for the lower cluster is distributedly owned by the cache nodes in each lower cluster, and the cache node is composed of a plurality of cache nodes and overlays registered in the lower cluster map for the lower cluster. Perform internal communications. As shown in FIG. 1, every time information is accessed, the “numerical value of“ information necessity ”” increases.

図2では、理解のし易さを目的に、アクセスをアリ3で表し、またアクセスによる「『情報の必要度』の数値」の増加分をアリ3が運んでいる荷物Aで表している。アクセスが増えて「『情報の必要度』の数値」がある閾値Θ1を超えると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値Θ1を超えると代表キャッシュノードはある物理的あるいは論理的NW距離にある、次数の大きなキャッシュノードに情報をキャッシュしてもらえないかランダムに打診し、承諾をもらったキャッシュノード6にキャッシュさせてもらう。ここで、複数の承諾をもらった場合には、それらの全て、あるいはそれらのうち次数の大きなキャッシュノードに、キャッシュさせてもらう。「ある物理的あるいは論理的NW距離」としては、ホップ数を用いる。ここで、「ある物理的あるいは論理的NW距離」は、ある一定のRTT値を用いても良い。   In FIG. 2, for the purpose of easy understanding, the access is represented by ant 3, and the increment of “numerical value of“ information need ”” due to the access is represented by the package A carried by ant 3. When access increases and the “value of“ information need ”” exceeds a certain threshold Θ1, the average value of “number of“ information need ”” for a certain time from that point is taken into account get. When the average value of the “value of information” for a certain time exceeds a certain threshold Θ1, the representative cache node caches information in a large-order cache node at a certain physical or logical NW distance. A random consultation is performed to ask the cache node 6 that has received consent to cache. Here, when a plurality of approvals are obtained, all of them, or a cache node having a large degree among them, caches them. The number of hops is used as “a certain physical or logical NW distance”. Here, a certain RTT value may be used as the “certain physical or logical NW distance”.

新規追加されたキャッシュノード6は、情報のURLと自身のIPアドレスを自身の属するNWドメインのDNSサーバに登録しておく。これにより、(a)自身の属するNWドメインがオリジナルキャッシュノード(または代表キャッシュノード)と異なっていれば、オリジナルキャッシュノード(または代表キャッシュノード)と異なるDNSサーバに情報のURLと自身のIPアドレスが登録される(図2aのキャッシュサーバ6から出ている1点鎖線)。他方、(b)自身の属するNWドメインがオリジナルキャッシュノード(または代表キャッシュノード)と同じであれば、同じDNSサーバに情報のURLと自身のIPアドレスが登録される(図2bのキャッシュサーバ6から出ている1点鎖線)。   The newly added cache node 6 registers the URL of the information and its own IP address in the DNS server of the NW domain to which it belongs. As a result, (a) if the NW domain to which it belongs is different from the original cache node (or representative cache node), the URL of the information and its own IP address will be sent to a DNS server different from the original cache node (or representative cache node). It is registered (one-dot chain line from the cache server 6 in FIG. 2a). On the other hand, if the NW domain to which (b) own belongs is the same as the original cache node (or representative cache node), the URL of the information and its own IP address are registered in the same DNS server (from the cache server 6 in FIG. 2b). The one-dot chain line that comes out).

新規追加されたキャッシュノード6は、下位クラスタ2内の代表キャッシュノード1に、キャッシュノード6が下位クラスタ2に属することを認識してもらうための「entryメッセージ」を通常のInternet上の通信手段によって送る。キャッシュノード6への依頼を行った代表キャッシュノード1は、新規追加されたキャッシュノード6宛に、「entryメッセージ」を受信したことを示すメッセージを下位クラスタ2内通信によって送り、同時に下位クラスタマップ4−2に必要な情報を要求する。要求を受けた新規追加キャッシュノード6は、自身のキャッシュノード6に関する要求情報を下位クラスタ2内通信によって、キャッシュノード6への依頼を行った代表キャッシュノード1へ送る。   The newly added cache node 6 sends an “entry message” to the representative cache node 1 in the lower cluster 2 for recognizing that the cache node 6 belongs to the lower cluster 2 by a communication means on a normal Internet. send. The representative cache node 1 which has made a request to the cache node 6 sends a message indicating that the “entry message” has been received to the newly added cache node 6 by communication within the lower cluster 2, and at the same time, the lower cluster map 4 -2 requests the necessary information. The newly added cache node 6 that has received the request sends request information regarding its own cache node 6 to the representative cache node 1 that has requested the cache node 6 by communication within the lower cluster 2.

キャッシュノード依頼を行った代表キャッシュノード1は、新規代表キャッシュノード6から受け取った要求情報をもとに下位クラスタマップ4−2を更新し、更新された下位クラスタマップ4−2を、下位クラスタ2内通信によって、代表キャッシュノード1の所属する下位クラスタ内の他のキャッシュノード宛に送る。各キャッシュノードは各自の持つ下位クラスタ用の下位クラスタマップを更新して、登録完了のメッセージを、キャッシュノード依頼を行った代表キャッシュノードに、下位クラスタ内通信によって送る。   The representative cache node 1 that made the cache node request updates the lower cluster map 4-2 based on the request information received from the new representative cache node 6, and uses the updated lower cluster map 4-2 as the lower cluster 2. The data is sent to another cache node in the lower cluster to which the representative cache node 1 belongs by internal communication. Each cache node updates its own lower level cluster map for the lower level cluster, and sends a registration completion message to the representative cache node that has requested the cache node by communication within the lower level cluster.

図5を参照すると、本実施例の分散情報配置システムにおける同一下位クラスタ内のキャッシュノード間の通信の様子の1例が示されている。下位クラスタ2内に存在する、代表キャッシュノード1を含む複数のキャッシュノード6、8らは、下位クラスタ内通信を一定時間間隔毎または不定時間間隔で行うことによって、互いの「生存」と「『情報の必要度』の数値」などの情報を交換し合う。これによって下位クラスタ2内の全てのキャッシュノードの下位クラスタ2内用の下位クラスタマップの更新と同期とを行う。ここで、下位クラスタ内通信は、新規にキャッシュノードが追加されたり、キャッシュノードやキャッシュノード間のリンクの障害などのイベントが発生した場合には、そのイベントをトリガーとして行われる。   Referring to FIG. 5, an example of communication between cache nodes in the same lower cluster in the distributed information arrangement system of this embodiment is shown. The plurality of cache nodes 6 and 8 including the representative cache node 1 existing in the lower cluster 2 perform communication within the lower cluster at regular time intervals or at indefinite time intervals, thereby allowing each other's “survival” and “ Exchange information such as “the value of information”. As a result, the lower cluster map for the lower cluster 2 of all the cache nodes in the lower cluster 2 is updated and synchronized. Here, in the lower cluster communication, when an event such as a new cache node is added or a failure occurs in the cache node or a link between the cache nodes, the event is triggered.

図6(a)および図6(b)を参照すると、本実施例の分散情報配置システムにおける同一下位クラスタ内でのアクセスの負荷分散の様子の1例が、それぞれ示されている。図7(a)および図7(b)を参照すると、本実施例の分散情報配置システムにおけるアクセスの負荷分散のフローチャートの1例が、それぞれ示されている。   Referring to FIGS. 6A and 6B, one example of how access loads are distributed in the same lower cluster in the distributed information arrangement system of this embodiment is shown. Referring to FIG. 7A and FIG. 7B, one example of a flowchart of access load distribution in the distributed information arrangement system of this embodiment is shown.

下位クラスタ内に、代表キャッシュノードを除く少なくとも1つの他のキャッシュノードが追加されると、それらは自律的に負荷分散を行う。すなわち、下位クラスタ内通信によって下位クラスタ2内の「『情報の必要度』の数値」は各キャッシュノード1、6、8が、同一内容の下位クラスタ2内用下位クラスタマップを保持しているため、「『情報の必要度』の数値」の最も少ないキャッシュノードから順番にアクセスを転送する。   When at least one other cache node other than the representative cache node is added to the lower level cluster, they autonomously load balance. In other words, the “number of information necessity” in the lower cluster 2 by the lower cluster communication indicates that the cache nodes 1, 6 and 8 hold the lower cluster map for the lower cluster 2 having the same contents. , The access is transferred in order from the cache node having the smallest “number of“ information necessity ””.

図8を参照すると、本実施例の分散情報配置システムにおける、あるNW距離以上のキャッシュノードからのアクセスが増加することによって、NW距離以上の次数の高いキャッシュノードのキャッシュノード化とそこでの新規下位クラスタ生成が行われる様子の1例が示されている。図9を参照すると、本実施例の分散情報配置システムにおける、あるNW距離以上のキャッシュノードからのアクセスが増加することによって、NW距離以上の次数の高いキャッシュノードのキャッシュノード化とそこでの新規下位クラスタ生成が行われる際のフローチャートの1例が示されている。図10を参照すると、本実施例の分散情報配置システムにおける、代表キャッシュノードのみで構成される上位クラスタNWの上位クラスタマップ18の1例が示されている。   Referring to FIG. 8, in the distributed information arrangement system according to the present embodiment, by increasing access from a cache node having a certain NW distance or more, a cache node having a higher degree than the NW distance is converted into a cache node and a new subordinate there. An example of how cluster generation is performed is shown. Referring to FIG. 9, in the distributed information arrangement system according to the present embodiment, by increasing access from a cache node having a certain NW distance or more, a cache node having a higher degree than the NW distance is converted into a cache node and a new subordinate there. An example of a flowchart when cluster generation is performed is shown. Referring to FIG. 10, an example of the upper cluster map 18 of the upper cluster NW composed of only representative cache nodes in the distributed information arrangement system of the present embodiment is shown.

新規追加されたキャッシュノード11は自分を代表キャッシュノードとする下位クラスタ15を新たに形成し、下位クラスタ15内用下位クラスタマップ4−15を作成する。また、新規追加されたキャッシュノード11は情報のURLと自身のIPアドレスを自身の所属するNWドメイン内のDNSサーバ34に登録しておく。ここで、キャッシュノード11の登録するDNSサーバは、オリジナルキャッシュノードの所属するクラスタ2内のキャッシュノードが、それぞれ情報のURLと自身のIPアドレスを登録しているDNSサーバ31,32,33の全てと異なっている。以降、追加される下位クラスタの代表ノードとその下位クラスタ内に追加されるキャッシュノードでの負荷分散の動作は、図2(a)および図2(b)と図3(a)および図3(b)で示したように行われる。これらの方法により、自律分散的な負荷分散が実現される。ここで、この代表キャッシュノード同士による上位クラスタ間オーバーレイNW17は、下位クラスタ2および下位クラスタ15の上位クラスタ間オーバーレイNWの上に構築される。   The newly added cache node 11 newly forms a lower cluster 15 having itself as a representative cache node, and creates a lower cluster map 4-15 for the lower cluster 15. Also, the newly added cache node 11 registers the URL of the information and its own IP address in the DNS server 34 in the NW domain to which it belongs. Here, the DNS servers registered by the cache node 11 are all the DNS servers 31, 32, 33 in which the cache nodes in the cluster 2 to which the original cache node belongs respectively register the URL of the information and its own IP address. Is different. Thereafter, the load distribution operation in the representative node of the added lower cluster and the cache node added in the lower cluster will be described with reference to FIGS. 2 (a), 2 (b), 3 (a), and 3 (3). Performed as shown in b). By these methods, autonomous distributed load distribution is realized. Here, the upper inter-cluster overlay NW 17 by the representative cache nodes is constructed on the upper inter-cluster overlay NW of the lower cluster 2 and the lower cluster 15.

ここで、上位クラスタNW17内の上位クラスタ内通信のために、上位クラスタNW17内の代表キャッシュノードに、上位クラスタNW17内部でのみ通用するローカルなIPアドレスを各々割り当て、このローカルなIPアドレスを用いた上位クラスタNW17内の上位クラスタ内通信を行っても良い。   Here, for communication in the upper cluster in the upper cluster NW17, a local IP address that can be used only in the upper cluster NW17 is assigned to the representative cache node in the upper cluster NW17, and this local IP address is used. Communication within the upper cluster in the upper cluster NW 17 may be performed.

またここで、上位クラスタ内用の上位クラスタマップの内容は、図10に示したように、代表キャッシュノードのDNS登録名、グローバルIPアドレス、各クラスタ内のキャッシュノード数、『情報の必要度』の数値の合計値、および『情報の必要度』の数値の合計値の1次微分値である。ここで、上位クラスタ17内用の上位クラスタマップの内容は、図10に示した以外に、上位クラスタ17内でローカルに付加したローカルなIPアドレスを含んでいても良い。また、上位クラスタ17内用の上位クラスタマップの内容は、図10に示した以外に何らかの『情報の必要度』の数値の経時変化の様子を表す変数を含んでいても良い。   Here, as shown in FIG. 10, the contents of the upper cluster map for the upper cluster include the DNS registration name of the representative cache node, the global IP address, the number of cache nodes in each cluster, and the “necessity of information”. And the first derivative value of the total value of the numerical values of “Necessity of information”. Here, the contents of the upper cluster map for the upper cluster 17 may include a local IP address added locally in the upper cluster 17 other than that shown in FIG. Further, the contents of the upper cluster map for the upper cluster 17 may include a variable representing a state of change of a numerical value of “Necessity of information” with time other than that shown in FIG.

各下位クラスタには、その代表キャッシュノードまたはクラスタの中心から一定の物理距離または論理的距離をNW半径10とする円で特定されるクラスタ領域と、このクラスタ領域に設置することのできるキャッシュノードの最大数とが予め定められる。   Each subordinate cluster has a cluster area specified by a circle having an NW radius 10 of a certain physical distance or logical distance from the representative cache node or the center of the cluster, and cache nodes that can be installed in this cluster area. The maximum number is predetermined.

下位クラスタ2の代表キャッシュノード1が「NW半径10を超える遠くからのアクセスが多くなる」あるいは「計算した自下位クラスタ2に置くことの出来るキャッシュノードの最大数に近づく」ことを検知すると、NW半径10を超える場所に存在する、次数の大きなキャッシュノードに情報をキャッシュしてもらえないかランダムに、通常のInternet上の通信手段によって打診し、通常のInternet上の通信手段によって承諾をもらったキャッシュノード11にキャッシュさせてもらう。ここで、複数の承諾をもらった場合には、それらの全て、あるいはそれらのうち次数の大きなキャッシュノードに対して、キャッシュさせてもらう。なお、この新規キャッシュノード11の追加は、アクセス数の変動を考慮して、一定時間待ってから行う。   When the representative cache node 1 of the lower cluster 2 detects that “the number of accesses from a distance exceeding the NW radius 10 increases” or “approaching the calculated maximum number of cache nodes that can be placed in the own lower cluster 2”, the NW A cache that is located in a place where the radius exceeds 10 and that is cached by a large-order cache node or is randomly consulted by a communication means on a normal Internet, and has been approved by a communication means on a normal Internet Have node 11 cache. Here, when a plurality of approvals are obtained, all of them, or a cache node having a large degree among them, is allowed to cache. The addition of the new cache node 11 is performed after waiting for a certain time in consideration of the fluctuation of the number of accesses.

キャッシュノードの依頼を行った代表キャッシュノード1は、自キャッシュノード1を含む代表キャッシュノード1のみで構成される上位クラスタNW17を作成し、上位クラスタNW17用の上位クラスタマップ18−2を作成する。   The representative cache node 1 that has requested the cache node creates an upper cluster NW17 including only the representative cache node 1 including its own cache node 1, and creates an upper cluster map 18-2 for the upper cluster NW17.

新規追加されたキャッシュノード11は自分を代表キャッシュノードとする下位クラスタ15を新たに形成し、下位クラスタ15内用下位クラスタマップ4−15を作成する。ここで、この代表キャッシュノード同士による上位クラスタ内オーバーレイNW17は、下位クラスタ2および下位クラスタ15のオーバーレイNWの上に構築される。また、新規追加されたキャッシュノード11はキャッシュノード依頼を受けた代表キャッシュノード1に対して、代表キャッシュノードのみで構成される上位クラスタNW17に対して、キャッシュノード11が上位クラスタ17に属することを認識してもらうための「entryメッセージ」を通常のInternet上の通信手段によって送る。キャッシュノード11への依頼を行った代表キャッシュノード1は、新規追加されたキャッシュノード11宛に、「entryメッセージ」を受信したことを示すメッセージを上位クラスタ17内通信によって送り、同時に上位クラスタマップ18に必要な情報を要求する。要求を受けた新規追加キャッシュノード11は、自身のキャッシュノード11に関する要求情報を上位クラスタ17内通信によって、キャッシュノード11への依頼を行った代表キャッシュノード1へ送る。   The newly added cache node 11 newly forms a lower cluster 15 having itself as a representative cache node, and creates a lower cluster map 4-15 for the lower cluster 15. Here, the overlay NW 17 in the upper cluster formed by the representative cache nodes is constructed on the overlay NW of the lower cluster 2 and the lower cluster 15. Further, the newly added cache node 11 indicates that the cache node 11 belongs to the upper cluster 17 with respect to the upper cluster NW 17 composed only of the representative cache node, with respect to the representative cache node 1 that has received the cache node request. An “entry message” for recognition is sent by a communication means on a normal Internet. The representative cache node 1 which has made a request to the cache node 11 sends a message indicating that the “entry message” has been received to the newly added cache node 11 by communication within the upper cluster 17, and at the same time, the upper cluster map 18 Request information required for The newly added cache node 11 that has received the request sends request information related to its own cache node 11 to the representative cache node 1 that has made a request to the cache node 11 by communication within the upper cluster 17.

キャッシュノード依頼を行った代表キャッシュノード1は、新規代表キャッシュノード11から受け取った要求情報をもとに上位クラスタマップ18−11を更新し、更新された上位クラスタマップ18−11を、上位クラスタ17内通信によって、代表キャッシュノードが所属する下位クラスタ内の他の代表キャッシュノード宛に送る。各代表キャッシュノードは各自の持つ上位クラスタ用の上位クラスタマップを更新して、登録完了のメッセージを、キャッシュノード依頼を行った代表キャッシュノード1に、上位クラスタ内通信によって送る。   The representative cache node 1 that made the cache node request updates the upper cluster map 18-11 based on the request information received from the new representative cache node 11, and uses the updated upper cluster map 18-11 as the upper cluster 17. By internal communication, the data is sent to another representative cache node in the lower cluster to which the representative cache node belongs. Each representative cache node updates its own upper cluster map for the upper cluster, and sends a registration completion message to the representative cache node 1 that has requested the cache node by communication within the upper cluster.

図11を参照すると、本実施例の分散情報配置システムにおける、代表キャッシュノードのみで構成される上位クラスタレベルのNW17(上位層)、下位クラスタレベルのNW2、15、16(中間層)、およびノードレベルのNW(最下層)の関係の1例が示されている。   Referring to FIG. 11, the upper cluster level NW17 (upper layer), the lower cluster level NWs 2, 15, 16 (middle layer), and nodes, which are composed of only representative cache nodes in the distributed information arrangement system of this embodiment. An example of the level NW (lowermost layer) relationship is shown.

下位クラスタ同士は原則的に代表キャッシュノードであるキャッシュノード1、11、14同士が、各下位クラスタ2、15、16内のキャッシュノード数などのマクロな情報を、一定時間間隔毎または不定時間間隔で上位クラスタNW17上でオーバーレイ通信を行うことによって交換し、互いの生存と状況を確認し合うと共に、各々の代表キャッシュノード1,11,14が保持している各下位クラスタ2,15,16のマクロ情報を更新する。   In principle, the lower-level clusters are the representative cache nodes, and the cache nodes 1, 11, and 14 send macro information such as the number of cache nodes in the lower-level clusters 2, 15, and 16 at regular time intervals or at indefinite time intervals. Are exchanged by performing overlay communication on the upper cluster NW17 to check the existence and status of each other, and each of the lower clusters 2, 15, 16 held by the representative cache nodes 1, 11, 14 Update macro information.

図12を参照すると、本実施例の分散情報配置システムにおけるキャッシュノードの脱退の様子の1例が示されている。図13を参照すると、本実施例の分散情報配置システムにおけるキャッシュノードの脱退のフローチャートの1例が示されている。図14を参照すると、本実施例の分散情報配置システムにおける代表キャッシュノードの脱退のフローチャートの1例が示されている。   Referring to FIG. 12, an example of a state of withdrawal of a cache node in the distributed information arrangement system of this embodiment is shown. Referring to FIG. 13, there is shown an example of a flowchart of withdrawal of a cache node in the distributed information arrangement system of this embodiment. Referring to FIG. 14, there is shown an example of a flowchart of withdrawal of a representative cache node in the distributed information arrangement system of this embodiment.

図12の下位クラスタ15を例に取る。キャッシュノード19へのアクセスが減って、「『情報の必要度』の数値」がある閾値2を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間経過後の「『情報の必要度』の数値」の平均値がある閾値2を下回ると、自キャッシュノード19の所属する下位クラスタ15内に他のキャッシュノードがいる限り、下位クラスタ15内の他のキャッシュノード全てに「脱退メッセージ」を下位クラスタ内通信によって送る。脱退メッセージを受け取った下位クラスタ15内の他のキャッシュノードは、自キャッシュノードの保持している下位クラスタ15内用下位クラスタマップから、脱退キャッシュノード19のIPアドレス以外の情報を消去し、「脱退メッセージが到着した」という確認メッセージを脱退キャッシュノード19に対して、下位クラスタ内通信によって送信する。脱退キャッシュノード19は、下位クラスタ15内の全ての他のキャッシュノードから、確認メッセージを受け取った後で、自キャッシュノード19の保持しているキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して下位クラスタ15から抜ける。   Take the lower cluster 15 of FIG. 12 as an example. When the access to the cache node 19 decreases and the “numerical value of“ information ”” falls below a certain threshold value 2, the fluctuation of the numerical value is taken into consideration, and “ Get the average value of "number". If the average value of “the value of“ information necessity ”” after a certain period of time falls below a certain threshold value 2, as long as there are other cache nodes in the lower cluster 15 to which the own cache node 19 belongs, A “withdrawal message” is sent to all other cache nodes by communication within the lower cluster. The other cache node in the lower cluster 15 that has received the withdrawal message deletes information other than the IP address of the withdrawal cache node 19 from the lower cluster map for lower cluster 15 held by its own cache node, A confirmation message “A message has arrived” is transmitted to the withdrawal cache node 19 by communication within the lower cluster. The withdrawal cache node 19 receives the confirmation message from all the other cache nodes in the lower cluster 15, and then deletes the cache data held by the own cache node 19 and the URL of the information and its own IP address. Is deleted from the lower level cluster 15.

ここで、仮に代表キャッシュノード11が抜ける場合には、以下のようになる。代表キャッシュノード11へのアクセスが減って、「『情報の必要度』の数値」がある閾値2を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値2を下回ると、自キャッシュノード11の所属する下位クラスタ15内の他のキャッシュノードのうち、最も「『情報の必要度』の数値」の小さいキャッシュノード13に他下位クラスタ2、16との通信を行う代表キャッシュノードを譲り、自キャッシュノード11の所属する下位クラスタ15内の他のキャッシュノード全てと、他の下位クラスタ2、16の各々全ての代表キャッシュノード1、14へ、「別のキャッシュノード13が代表キャッシュノードを引き継ぎ、自分11が抜けること」を、下位クラスタ内通信、上位クラスタ内通信によってそれぞれ知らせる。代表キャッシュノード11からの脱退メッセージを受け取った下位クラスタ15内の他の全てのキャッシュノードは各々の持つ下位クラスタ内15用下位クラスタマップから代表キャッシュノード11の情報をIPアドレスを除いて削除し、「代表キャッシュノードを受け継いだキャッシュノード13」を代表キャッシュノードとして下位クラスタ15内用下位クラスタマップに設定する。さらに、「元の代表キャッシュノード11」と「代表キャッシュノードを受け継いだキャッシュノード13」に対して、「新しい代表キャッシュノード13を下位クラスタ15内用下位クラスタマップ4に登録したこと」を確認メッセージとして、下位クラスタ内通信によって伝える。   Here, if the representative cache node 11 leaves, it will be as follows. When the access to the representative cache node 11 decreases and the “numerical value of“ information ”” falls below a certain threshold value 2, the ““ necessity of information ”” for a certain period of time from that point is considered in consideration of the fluctuation of the numerical value. The average value of "number". When the average value of the “numerical value of information” for a certain time falls below a certain threshold value 2, among the other cache nodes in the lower cluster 15 to which the own cache node 11 belongs, “ The representative cache node that communicates with the other lower-level clusters 2 and 16 is transferred to the cache node 13 with a small “number”, and all the other cache nodes in the lower-level cluster 15 to which the own cache node 11 belongs and the other lower-level clusters 2 and 16 are notified to the representative cache nodes 1 and 14 by the communication in the lower cluster and the communication in the upper cluster, respectively, that “the other cache node 13 takes over the representative cache node and leaves itself 11”. Receiving the withdrawal message from the representative cache node 11, all the other cache nodes in the lower cluster 15 delete the information of the representative cache node 11 from the lower cluster map for the lower cluster 15 except the IP address, The “cache node 13 that has inherited the representative cache node” is set as the representative cache node in the lower cluster map for the lower cluster 15. Further, a message confirming that “new representative cache node 13 has been registered in lower cluster map 4 for lower cluster 15” is sent to “original representative cache node 11” and “cache node 13 inheriting representative cache node”. As shown in FIG.

同様に他の下位クラスタ2、16の各々の代表キャッシュノード1、14は、各々の保持している上位クラスタNW17用の上位クラスタマップ18−2、18−16から代表キャッシュノード11の情報を削除し、新しい代表キャッシュノード13を下位クラスタ15の代表キャッシュノードとして上位クラスタNW17用の上位クラスタマップ18−2、18−16に設定する。さらに他の下位クラスタ2、16の各々の代表キャッシュノード1、14は、確認メッセージを「代表キャッシュノードを受け継いだキャッシュノード13」と「元の代表キャッシュノード11」宛に、上位クラスタ内通信によって送信する。   Similarly, each of the representative cache nodes 1 and 14 of the other lower clusters 2 and 16 deletes the information of the representative cache node 11 from the upper cluster maps 18-2 and 18-16 for the upper cluster NW17 held by each of them. Then, the new representative cache node 13 is set as the representative cache node of the lower cluster 15 in the upper cluster maps 18-2 and 18-16 for the upper cluster NW17. Further, the representative cache nodes 1 and 14 of each of the other lower clusters 2 and 16 send confirmation messages to the “cache node 13 that inherited the representative cache node” and the “original representative cache node 11” by communication within the upper cluster. Send.

自キャッシュノード11の所属する下位クラスタ15内の全てのキャッシュノード、および他の下位クラスタ2、16の各々全ての代表キャッシュノード1、14から、下位クラスタ内通信、上位クラスタ内通信によってそれぞれ確認メッセージを受け取った後で、「元の代表キャッシュノード11」は、自キャッシュノード11の保持するキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して下位クラスタ15から抜ける。   Confirmation messages from all the cache nodes in the lower cluster 15 to which the own cache node 11 belongs and from all the representative cache nodes 1 and 14 in the other lower clusters 2 and 16 through lower cluster communication and upper cluster communication, respectively. After receiving this, the “original representative cache node 11” deletes the cache data held by the own cache node 11 and issues a delete request to the DNS server that registered the URL of the information and its own IP address. Exit from cluster 15.

図15を参照すると、本実施例の分散情報配置システムにおける下位クラスタの脱退の様子の1例が示されている。図16を参照すると、本実施例の分散情報配置システムにおける下位クラスタの脱退のフローチャートの1例が示されている。   Referring to FIG. 15, an example of the state of withdrawal of the lower cluster in the distributed information arrangement system of the present embodiment is shown. Referring to FIG. 16, there is shown an example of a flowchart of withdrawal of a lower cluster in the distributed information arrangement system of this embodiment.

下位クラスタ16を例にとって説明する。下位クラスタ16に最終的に残ったキャッシュノード14は必然的に下位クラスタの代表キャッシュノードであるが、代表キャッシュノード14でも「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、代表キャッシュノード14は他の全ての下位クラスタ2、15の代表キャッシュノード1、11に対して、脱退メッセージを上位クラスタ内通信によって送る。同時に、脱退代表キャッシュノード14は自キャッシュノード14の保持している上位クラスタNW17用下位クラスタマップ18−16を見て、他の全ての下位クラスタ2、15の代表キャッシュノード1,11のうち、キャッシュノード当たりの「『情報の必要度』の数値」が最も少なく、かつ下位クラスタ内のキャッシュノード密度の最大値の大きい代表キャッシュノード11に、自キャッシュノード14の所属する下位クラスタ16内用の下位クラスタマップ4−16を上位クラスタ内通信によって送信する。   A description will be given by taking the lower cluster 16 as an example. The cache node 14 finally remaining in the lower cluster 16 is inevitably a representative cache node of the lower cluster. However, even if the representative cache node 14 falls below a certain threshold value, the numerical value of Taking into account fluctuations, an average value of “numerical value of“ information necessity ”” for a certain period of time from that point is acquired. When the average value of the “numerical value of information” for a certain time falls below a certain threshold, the representative cache node 14 sends a withdrawal message to the representative cache nodes 1 and 11 of all other lower clusters 2 and 15. Is sent by intra-cluster communication. At the same time, the withdrawal representative cache node 14 looks at the lower cluster map 18-16 for the upper cluster NW17 held by the own cache node 14, and among the representative cache nodes 1 and 11 of all the other lower clusters 2 and 15, The representative cache node 11 having the smallest “number of“ information necessity ”” per cache node and the largest cache node density in the lower cluster is assigned to the lower cluster 16 to which the own cache node 14 belongs. The lower cluster map 4-16 is transmitted by upper cluster communication.

他の全ての下位クラスタ2、15の代表キャッシュノード1、11は、脱退メッセージを送信した代表キャッシュノード14に対して「代表キャッシュノード14が抜けること」を確認するメッセージを「代表キャッシュノード14」宛に上位クラスタ内通信によって送信した後で、代表キャッシュノード14に関するIPアドレス以外の情報を上位クラスタNW17用下位クラスタマップ18−2、18−15の各々から削除する。ここで脱退代表キャッシュノード14から下位クラスタ16内用の下位クラスタマップ4−16を受け取った代表キャッシュノード11は、「下位クラスタマップ4−16を受け取ったこと」を確認メッセージとして、脱退代表キャッシュノード14に上位クラスタ内通信によって送信する。   The representative cache nodes 1 and 11 of all the other lower clusters 2 and 15 send a message confirming that “representative cache node 14 is leaving” to the representative cache node 14 that has transmitted the withdrawal message “representative cache node 14”. After transmitting to the destination by communication within the upper cluster, information other than the IP address related to the representative cache node 14 is deleted from each of the lower cluster maps 18-2 and 18-15 for the upper cluster NW17. Here, the representative cache node 11 that has received the lower cluster map 4-16 for the lower cluster 16 from the withdrawal representative cache node 14 uses the confirmation message “The lower cluster map 4-16 has been received” as a confirmation message. 14 is transmitted by upper cluster communication.

脱退代表キャッシュノード14は、他の全ての下位クラスタ2、15の代表キャッシュノード1、11から「代表キャッシュノード14が抜けること」を確認するメッセージを受け取り、かつ脱退代表キャッシュノード14から下位クラスタ16内用の下位クラスタマップ4−16を受け取った代表キャッシュノード11から「下位クラスタマップ4−16を受け取ったこと」を確認するメッセージを受け取った後で、自キャッシュノード14の保持するキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して上位クラスタNW17から抜ける。   The withdrawal representative cache node 14 receives a message confirming that “the representative cache node 14 is leaving” from the representative cache nodes 1 and 11 of all the other lower-level clusters 2 and 15, and the lower-level cluster 16 from the withdrawal representative cache node 14. After receiving the message confirming that “the lower cluster map 4-16 has been received” from the representative cache node 11 that has received the internal lower cluster map 4-16, the cache data held by the own cache node 14 is deleted. Then, a deletion request is issued to the DNS server in which the URL of the information and its own IP address are registered, and the host cluster NW 17 is exited.

図17を参照すると、本実施例の分散情報配置システムにおける最後に残ったキャッシュノードの脱退の様子の1例が示されている。図18を参照すると、本実施例の分散情報配置システムにおける最後に残ったキャッシュノードの脱退のフローチャートの1例が示されている。   Referring to FIG. 17, there is shown an example of the state of withdrawal of the cache node remaining at the end in the distributed information arrangement system of this embodiment. Referring to FIG. 18, there is shown an example of a flowchart of withdrawal of the cache node remaining at the end in the distributed information arrangement system of the present embodiment.

オリジナルキャッシュノードを含む下位クラスタ以外で最終的に残った下位クラスタ15において、最終的に残ったキャッシュノード11(終末キャッシュノード)でも「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、オリジナルキャッシュノード1に対して、「自分11が最終データのキャッシュノードであること」、終末キャッシュノードが保持している「キャッシュデータ」および「過去に脱退した他の下位クラスタの下位クラスタ内用の下位クラスタマップ」を、1)自キャッシュノード11にそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)削除して欲しい、という「希望情報」と共に、上位クラスタ内通信によって伝える。   In the lower cluster 15 that finally remains other than the lower cluster including the original cache node, even if the finally remaining cache node 11 (terminal cache node) falls below a certain threshold value, Taking into account the fluctuation of the numerical value, an average value of “the numerical value of“ the degree of necessity of information ”” for a certain time from that point is acquired. When the average value of the “number of“ information necessity ”” for a certain time falls below a certain threshold value, “the node 11 is the cache node of the final data” and the terminal cache node holds for the original cache node 1 “Cache data” and “lower cluster map for lower cluster of other lower cluster that has left in the past” may be placed in the own cache node 11 as it is, or 2) some other form ( For example, it may be placed as a link destination or the like, or 3) “desired information” that the user wants to be deleted is communicated by intra-cluster communication.

オリジナルキャッシュノード1は、終末キャッシュノード11からの「希望情報」を元に、情報を、1)そのまま置いてもらうか、2)何か他の形態(例えばリンク先としてなど)で置かせてもらうか、あるいは、3)削除してもらうかを検討し、その結果を終末キャッシュノード11に対して上位クラスタ内通信によって伝える。ここで、終末キャッシュノード11に情報をキャッシュし続けてもらう理由は、そのデータが再度必要になる場合、最後までアクセスがあったキャッシュノードの周辺からの場合が多いと推定されるためである。   Based on the “desired information” from the terminal cache node 11, the original cache node 1 receives the information 1) as it is, or 2) places it in some other form (for example, as a link destination). Or 3) to determine whether to delete it, and to notify the terminal cache node 11 of the result by communication within the upper cluster. Here, the reason why the terminal cache node 11 continues to cache the information is that when the data is needed again, it is estimated that there are many cases from the periphery of the cache node that has been accessed to the end.

終末キャッシュノード11に終末キャッシュノード11がキャッシュしている情報を削除してもらう場合、オリジナルキャッシュノード1は、最後に残った下位クラスタ15にいた他のキャッシュノード13、19に対して、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しい、ことを通常のInternetの通信手段によって伝える。   When the terminal cache node 11 deletes the information cached by the terminal cache node 11, the original cache node 1 sends the information to the other cache nodes 13 and 19 in the last remaining lower cluster 15. 1) I want you to leave it as it is, 2) I want you to let me put it in some other form (for example, as a link destination, etc.).

終末キャッシュノード11は、オリジナルキャッシュノード1からの回答に従って、情報の管理形態を決定する。すなわち、情報を、1)そのまま置くか、2)何か他の形態(例えばリンク先としてなど)で置くか、あるいは、3)削除するか、のいずれかを行う。   The terminal cache node 11 determines the information management form according to the answer from the original cache node 1. That is, the information is either 1) placed as it is, 2) placed in some other form (for example, as a link destination), or 3) deleted.

オリジナルキャッシュノード1から、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しいというメッセージを通常のInternetの通信手段によって受け取った、最後に残った下位クラスタ15にいた他のキャッシュノード13、19は、それぞれオリジナルキャッシュノード1に対して、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)置きたくない、という「希望情報」を通常のInternetの通信手段によって伝える。   Received a message from the original cache node 1 by 1) I want you to leave it as it is, 2) I want you to put it in some other form (for example, as a link destination, etc.) The remaining cache nodes 13 and 19 in the remaining lower level cluster 15 may leave information on the original cache node 1 as it is for the original cache node 1 and 2) some other form (for example, link) "Preferred information" indicating that the user may place it at the destination, or 3) that he or she does not want to place it, is transmitted by means of ordinary Internet communication means.

「希望情報」を受け取ったオリジナルキャッシュノード1は、その中に、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良いという回答があれば、1)、2)の優先順位で、そのキャッシュノードと上位クラスタを形成し、情報を1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良いという回答を行ったキャッシュノードへ、キャッシュする情報を上位クラスタ内通信によって送信する。   The original cache node 1 that has received the “desired information” may place the information in the cache node 1 as it is, or 2) in some other form (for example, as a link destination). If there is a good answer, 1) and 2) priorities are used to form a higher-level cluster with the cache node, and the information may be left in 1) its own cache node. 2) Some other form (for example, The information to be cached is transmitted by communication within the upper cluster to the cache node that has made a reply that it may be placed as a link destination.

「希望情報」を受け取ったオリジナルキャッシュノード1は、その中に、3)置きたくないという回答しか無ければ、最後から2番目に削除された下位クラスタ16にいた全てのキャッシュノードに対して、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しい、ことを通常のInternet上の通信手法によって伝える。   If the original cache node 1 that has received the “desired information” has only a reply that it does not want to be placed 3), the information is sent to all the cache nodes in the subordinate cluster 16 that is deleted second from the end. 1) I want you to leave it as it is, and 2) I want you to put it in some other form (for example, as a link destination, etc.), and tell it by the communication method on the normal Internet.

オリジナルキャッシュノード1から、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しいというメッセージを受け取った、最後から2番目に残った下位クラスタ16にいた全てのキャッシュノード14、20、21は、それぞれオリジナルキャッシュノード1に対して、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)置きたくない、という「希望情報」をそれぞれ通常のInternet上の通信手法によって伝える。   Received a message from the original cache node 1 that the information should be placed 1) as it is, 2) the message that you want to place it in some other form (for example, as a link destination), etc. All the cache nodes 14, 20, and 21 in 16 may store information on the original cache node 1 as it is in 1) its own cache node, 2) some other form (for example, as a link destination) Etc.), or 3) “desired information” that the user does not want to place is transmitted by a normal communication method on the Internet.

以下、上記の段落0125から段落0128までの手順を繰り返す。   Thereafter, the procedure from paragraph 0125 to paragraph 0128 is repeated.

最終的にオリジナルキャッシュノード1以外にキャッシュしてくれるキャッシュノードが無ければ、オリジナルキャッシュノード1は、情報を自キャッシュノード1に保存したままにする。   If no cache node finally caches other than the original cache node 1, the original cache node 1 keeps the information stored in its own cache node 1.

以上のようにして、通信NW上の情報へのアクセス数に適応して、情報のキャッシュ配置の量と質を利他的かつ協調的な仕組みによって自律分散的に決定することで、効率的な情報の分散キャッシュ配置を実現するとともに、一度廃れてアクセスの無くなった情報の効率的な再生を実現する。   As described above, the amount of information cache allocation and quality are determined autonomously and distributed by an altruistic and cooperative mechanism in accordance with the number of accesses to information on the communication NW. In addition to realizing a distributed cache arrangement, it is possible to efficiently reproduce information that has been once discarded and no longer accessed.

[動作の説明]
次に本実施例の分散情報配置システムの動作について説明する。
[Description of operation]
Next, the operation of the distributed information arrangement system of this embodiment will be described.

図1を参照すると、本実施例の分散情報配置システムにおける「『情報の必要度』の数値」の変化の様子の1例が示されている。アクセスがあるたびに、「『情報の必要度』の数値」は一定量だけ増加する。「『情報の必要度』の数値」は一定時間が経過する毎に一定量だけ減少する。なお、時間経過に伴い減少する「『情報の必要度』の数値」は、非線形に減少しても良い。また、アクセスがあるたびに増加する「『情報の必要度』の数値」は、キャッシュノードのアクセスを受信可能なインターフェースの数や、インターフェースの入力バッファサイズなどに応じて、キャッシュノード毎に異なっていても良い。また、アクセスがあるたびに増加する「『情報の必要度』の数値」は、自下位クラスタ内に置くことの出来るキャッシュノードの最大数に応じて、下位クラスタ毎で異なっていても良い。また、時間経過に伴い減少する「『情報の必要度』の数値」は、キャッシュノードのアクセスを受信可能なインターフェースの数や、インターフェースの入力バッファサイズなどに応じて、キャッシュノード毎に異なっていても良い。また、時間経過に伴い減少する「『情報の必要度』の数値」は、自下位クラスタ内に置くことの出来るキャッシュノードの最大数に応じて、下位クラスタ毎で異なっていても良い。   Referring to FIG. 1, an example of a change in “numerical value of“ information necessity ”” in the distributed information arrangement system of the present embodiment is shown. Each time there is an access, the “numerical value of information” increases by a certain amount. The “numerical value of“ information requirement ”” decreases by a certain amount every time a certain time elapses. Note that the “numerical value of“ information necessity ”” that decreases with time may decrease non-linearly. In addition, the “numerical value of information” that increases with each access varies from cache node to cache node depending on the number of interfaces that can receive cache node access and the input buffer size of the interface. May be. Further, the “numerical value of“ information requirement ”” that increases each time access is made may differ for each lower cluster according to the maximum number of cache nodes that can be placed in the own lower cluster. In addition, the “numerical value of information” that decreases over time differs for each cache node depending on the number of interfaces that can receive cache node access and the input buffer size of the interface. Also good. Further, the “numerical value of“ information necessity ”” that decreases with the passage of time may be different for each lower cluster according to the maximum number of cache nodes that can be placed in the own lower cluster.

(1)キャッシュノードの増加に関する動作の説明
図2(a)および(b)、図3(a)および(b)、図4を参照して、本実施例の分散情報配置システムにおけるキャッシュノードの増加に関する動作を説明する。
(1) Description of operation related to increase in cache node Referring to FIGS. 2 (a) and 2 (b), FIGS. 3 (a) and 3 (b), and FIG. 4, cache nodes in the distributed information arrangement system of this embodiment The operation related to the increase will be described.

情報とある値(初期値)の「情報の必要度」をオリジナルキャッシュノード1に配置する(図3aのS301、図3bのS321)。またオリジナルキャッシュノードは、自身の所属するNWのDNSサーバに自身をNW上で一意に識別可能な識別子であるグローバルIPアドレスと、NW内の他のノードがアクセスする場合に用いる該キャッシュ情報の場所を指し示す記述方式であるURLを登録しておく(図2aまたは図2bのオリジナルキャッシュノード1から出ている1点鎖線)。同時に自分を代表キャッシュノードとする下位クラスタ2を生成し、当該オリジナルキャッシュノード1のIPアドレスと「『情報の必要度』の数値」とを下位クラスタ内用の下位クラスタマップ4−2に登録する。下位クラスタ内用の下位クラスタマップ4−2は各下位クラスタ内のキャッシュノードが分散的に所有し、キャッシュノードは下位クラスタ内用の下位クラスタマップに登録された複数のキャッシュノードと下位クラスタ内のオーバーレイ通信で下位クラスタNW2内通信を行う。   Information and a certain value (initial value) “necessity of information” are arranged in the original cache node 1 (S301 in FIG. 3a, S321 in FIG. 3b). The original cache node also has a global IP address that is an identifier that can uniquely identify itself on the DNS server of the NW to which the original cache node belongs, and the location of the cache information that is used when other nodes in the NW have access. Is registered (a one-dot chain line extending from the original cache node 1 in FIG. 2a or 2b). At the same time, the lower cluster 2 having itself as a representative cache node is generated, and the IP address of the original cache node 1 and the “numeric value of“ information necessity ”” are registered in the lower cluster map 4-2 for the lower cluster. . The lower level cluster map 4-2 for the lower level cluster is distributedly owned by the cache nodes in each lower level cluster, and the cache node includes a plurality of cache nodes registered in the lower level cluster map for the lower level cluster and the lower level cluster. Communication within the lower cluster NW2 is performed by overlay communication.

図1に示したように情報へのアクセスがあるたびに「『情報の必要度』の数値」が増加する。   As shown in FIG. 1, every time information is accessed, the “numerical value of“ information necessity ”” increases.

図2(a)および(b)では、理解のし易さを目的に、アクセスをアリ3で表し、またアクセスによる「『情報の必要度』の数値」の増加分をアリ3が運んでいる荷物Aで表している。アクセスが増えて「『情報の必要度』の数値」がある閾値Θ1を超えると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する(図3aのS302、S303、図3bのS322、S323)。一定時間の「『情報の必要度』の数値」の平均値がある閾値Θ1を超えると、代表キャッシュノードはあるホップ数内にある、次数の大きなキャッシュノードに情報をキャッシュしてもらえないかランダムに打診し、承諾をもらったキャッシュノード6にキャッシュさせてもらう(図3aのS304〜S307、図3bのS324〜S327)。   In FIGS. 2 (a) and (b), for the purpose of easy understanding, the access is represented by ant 3, and the ant 3 carries the increment of the “value of“ information necessity ”” due to the access. It is represented by luggage A. When access increases and the “value of“ information need ”” exceeds a certain threshold Θ1, the average value of “number of“ information need ”” for a certain time from that point is taken into account Obtain (S302, S303 in FIG. 3a, S322, S323 in FIG. 3b). If the average value of the “value of information” for a certain time exceeds a certain threshold Θ1, the representative cache node is within a certain number of hops, and the cache node with a high degree is cached or random. The cache node 6 having received the consent is allowed to cache (S304 to S307 in FIG. 3a and S324 to S327 in FIG. 3b).

ここで閾値Θ1は、キャッシュノードのアクセスを受信可能なインターフェースの入力バッファサイズの最大値の1から100%の割合の範囲内で、かつ後述のキャッシュノードが下位クラスタから脱退する場合の閾値Θ2より大きい割合に設定する。また、閾値Θ1は、キャッシュノードのアクセスを受信可能なインターフェースの数や、該インターフェースの入力バッファサイズなどに応じて、キャッシュノード毎に異なっていても良い。また、閾値Θ1は、自下位クラスタ内に置くことの出来るキャッシュノードの最大数に応じて、下位クラスタ毎で異なっていても良い。   Here, the threshold value Θ1 is within the range of 1 to 100% of the maximum value of the input buffer size of the interface that can receive the access of the cache node, and the threshold value Θ2 when the cache node described later leaves the lower cluster. Set to a large percentage. Further, the threshold Θ1 may be different for each cache node according to the number of interfaces that can receive access of the cache node, the input buffer size of the interface, and the like. The threshold Θ1 may be different for each lower cluster according to the maximum number of cache nodes that can be placed in the own lower cluster.

複数のキャッシュノードから通常のInternetにおける通信手法により承諾をもらった場合には、それらの全て、あるいはそれらのうち次数の大きなキャッシュノードに対して、キャッシュさせてもらう(図3aのS308、図3bのS328)。もし、一定のホップ数内のキャッシュノードから承諾が得られなければ、オリジナルキャッシュノードは探索ホップ数を+1して、承諾を得られるキャッシュノードを探索する(図3aのS306でNo、図3bのS326でNo)。   When consent is obtained from a plurality of cache nodes by a communication method in the ordinary Internet, all of them or cache nodes having a higher degree among them are cached (S308 in FIG. 3a, in FIG. 3b). S328). If consent is not obtained from a cache node within a certain number of hops, the original cache node increments the number of search hops by +1 and searches for a cache node that can obtain consent (No in S306 in FIG. 3a, in FIG. 3b). No in S326).

新規追加されたキャッシュノード6は、自情報のURLと自身のIPアドレスを自ノードの属するNWドメインのDNSサーバに登録しておく(図3aのS309、図3bのS329、図2aのキャッシュサーバ6から出ている1点鎖線、図2bのキャッシュサーバ6から出ている1点鎖線)。   The newly added cache node 6 registers the URL of its own information and its own IP address in the DNS server of the NW domain to which the node itself belongs (S309 in FIG. 3a, S329 in FIG. 3b, cache server 6 in FIG. 2a). 1 dash line coming out from the cache server 6 in FIG. 2b).

新規追加されたキャッシュノード6は、下位クラスタ2内の代表キャッシュノード1に、キャッシュノード6が下位クラスタ2に属することを認識してもらうための「entryメッセージ」を通常のInternet上の通信手段によって送る。キャッシュノード6への依頼を行った代表キャッシュノード1は、新規追加されたキャッシュノード6宛に、「entryメッセージ」を受信したことを示すメッセージを下位クラスタ2内通信によって送り、同時に下位クラスタマップ4−2に必要な情報を要求する(図3aのS310、図3bのS330)。要求を受けた新規追加キャッシュノード6は、自身のキャッシュノード6に関する要求情報を下位クラスタ2内通信によって、キャッシュノード6への依頼を行った代表キャッシュノード1へ送る(図3aのS311、図3bのS331)。   The newly added cache node 6 sends an “entry message” to the representative cache node 1 in the lower cluster 2 for recognizing that the cache node 6 belongs to the lower cluster 2 by a communication means on a normal Internet. send. The representative cache node 1 which has made a request to the cache node 6 sends a message indicating that the “entry message” has been received to the newly added cache node 6 by communication within the lower cluster 2, and at the same time, the lower cluster map 4 -2 is requested (S310 in FIG. 3a, S330 in FIG. 3b). The newly added cache node 6 that has received the request sends request information regarding its own cache node 6 to the representative cache node 1 that has requested the cache node 6 by communication within the lower cluster 2 (S311 in FIG. 3a, FIG. 3b). S331).

キャッシュノード依頼を行った代表キャッシュノード1は、新規代表キャッシュノード6から受け取った要求情報をもとに下位クラスタマップ4−2を更新し、更新された下位クラスタマップ4−2を、下位クラスタ2内通信によって、代表キャッシュノードの所属する下位クラスタ内の他のキャッシュノード宛に送る(図3aのS312、図3bのS332)。各キャッシュノードは各自の持つ下位クラスタ用の下位クラスタマップを更新して、登録完了のメッセージを、キャッシュノード依頼を行った代表キャッシュノードに、下位クラスタ内通信によって送る(図3aのS313、図3bのS333)。   The representative cache node 1 that made the cache node request updates the lower cluster map 4-2 based on the request information received from the new representative cache node 6, and uses the updated lower cluster map 4-2 as the lower cluster 2. By internal communication, it is sent to another cache node in the lower cluster to which the representative cache node belongs (S312 in FIG. 3a, S332 in FIG. 3b). Each cache node updates its own lower level cluster map for the lower level cluster, and sends a registration completion message to the representative cache node that has requested the cache node by communication within the lower level cluster (S313 in FIG. 3a, FIG. 3b). S333).

図5を参照すると、本実施例の分散情報配置システムにおける同一下位クラスタ内のキャッシュノード間の通信の様子の1例が示されている。下位クラスタ2内に存在する、代表キャッシュノード1を含む複数のキャッシュノード6、8らは、下位クラスタ内通信によって一定時間間隔毎または不定時間間隔で行うことによって、互いの「生存」と「『情報の必要度』の数値」などの情報を交換し合う。これによって下位クラスタ2内の全てのキャッシュノードの下位クラスタ2内用の下位クラスタマップの更新と同期とを行う。ここで、下位クラスタ内通信は、新規にキャッシュノードが追加されたり、キャッシュノードやキャッシュノード間のリンクの障害などのイベントが発生した場合には、そのイベントをトリガーとして行われる。   Referring to FIG. 5, an example of communication between cache nodes in the same lower cluster in the distributed information arrangement system of this embodiment is shown. The plurality of cache nodes 6 and 8 including the representative cache node 1 existing in the lower cluster 2 perform mutual “survival” and “[” by performing the communication within the lower cluster at regular time intervals or at indefinite time intervals. Exchange information such as “the value of information”. As a result, the lower cluster map for the lower cluster 2 of all the cache nodes in the lower cluster 2 is updated and synchronized. Here, in the lower cluster communication, when an event such as a new cache node is added or a failure occurs in the cache node or a link between the cache nodes, the event is triggered.

ここで、同一情報のループを防ぐために、下位クラスタNW内でのオーバーレイ通信は、代表キャッシュノード1をIETF(The Internet Engineering Task Forceの略)のRFC2796に規定されたルートリフレクタに設定した上での通信であっても良い。   Here, in order to prevent a loop of the same information, the overlay communication in the lower cluster NW is performed by setting the representative cache node 1 as a route reflector defined in RFC 2796 of IETF (The Internet Engineering Task Force). Communication may be used.

また、ここで同一情報のループを防ぐために、下位クラスタ内通信は、IETFのRFC2328に規定されたOSPF(Open Shortest Path Algorithm)をプロトコルとして用いても良い。   Further, in order to prevent a loop of the same information here, OSPF (Open Shortest Path Algorithm) defined in RFC 2328 of IETF may be used as a protocol for lower-layer intra-cluster communication.

また、ここで同一情報のループを防ぐために、下位クラスタNW内の何らかのオーバーレイ通信は、IETFのRFC1142またはRFC1195に規定されたIS−IS(Intermediate System−Intermediate System)をプロトコルとして用いても良い。   In order to prevent a loop of the same information here, IS-IS (Intermediate System-Intermediate System) defined in IETF RFC 1142 or RFC 1195 may be used as a protocol for some overlay communication in the lower cluster NW.

さらに、全てのキャッシュノードの下位クラスタ2内用の下位クラスタマップの同期を取るために、下位クラスタ2内において下位クラスタ内通信によって交換される情報には、何らかのフォーマットによるバージョン情報を含んでいても良い。   Furthermore, in order to synchronize the lower cluster map for the lower cluster 2 of all the cache nodes, the information exchanged by the lower cluster communication in the lower cluster 2 may include version information in some format. good.

(2)下位クラスタ内でのアクセス負荷分散に関する動作の説明
図6(a)および図6(b)、図7(a)および図7(b)を参照して、本実施例の分散情報配置システムにおける下位クラスタ内でのアクセスの負荷分散に関する動作を説明する。
(2) Description of operation regarding access load distribution in lower cluster Referring to FIG. 6 (a), FIG. 6 (b), FIG. 7 (a) and FIG. An operation related to load distribution of access in a lower cluster in the system will be described.

下位クラスタ内に、代表キャッシュノードを除く少なくとも1つの他のキャッシュノードが追加されると、それらは自律的に負荷分散を行う。すなわち、下位クラスタ内のオーバーレイ通信によって下位クラスタ2内の「『情報の必要度』の数値」は各キャッシュノード1、6、8が、同一内用の下位クラスタ2内用下位クラスタマップ4−2を保持しているため、「『情報の必要度』の数値」の最も少ないキャッシュノードから順番にアクセスを転送する。   When at least one other cache node other than the representative cache node is added to the lower level cluster, they autonomously load balance. In other words, the “numerical value of“ information ”” in the lower cluster 2 by the overlay communication in the lower cluster indicates that the cache nodes 1, 6, 8 have the same lower cluster 2 in the lower cluster 2 for the same internal use. Therefore, the access is transferred in order from the cache node having the smallest “numerical value of“ information necessity ””.

図6(a)は、下位クラスタ2内の複数のキャッシュノードがそれぞれ個別のDNSに登録している場合である。この場合、アクセス元のノード3a、3b、3cはそれぞれ自身の所属するNWドメインのDNSサーバ31、32、33に、キャッシュされている情報のキャッシュノードのIPアドレスを知るためにアクセスする(図7aのS701)。ここでは、簡単のためDNSサーバ31、32、33はキャッシュノードのIPアドレスを知っていることとする。   FIG. 6A shows a case where a plurality of cache nodes in the lower cluster 2 are registered in individual DNS. In this case, the access source nodes 3a, 3b, and 3c access the DNS servers 31, 32, and 33 of the NW domain to which they belong to know the IP address of the cache node of the cached information (FIG. 7a). S701). Here, for simplicity, it is assumed that the DNS servers 31, 32, and 33 know the IP address of the cache node.

DNSサーバ31、32、33はアクセス元のノード3a、3b、3cに対してそれぞれキャッシュノードである1、6、8のIPアドレスを教える(図7aのS702)。これによって、アクセス元のノード3a、3b、3cはキャッシュノード1、6、8にそれぞれアクセスする(図7aのS703)。   The DNS servers 31, 32, and 33 teach the IP addresses of the cache nodes 1, 6, and 8 to the access source nodes 3a, 3b, and 3c, respectively (S702 in FIG. 7a). As a result, the access source nodes 3a, 3b, and 3c respectively access the cache nodes 1, 6, and 8 (S703 in FIG. 7a).

アクセスをそれぞれ受けたキャッシュノード1、6、8は、それぞれが保有する下位クラスタ2のクラスタマップ4−2を見て、「『情報の必要度』の数値」の最も少ないキャッシュノードから順番にアクセスを転送する(図7aのS704)。   The cache nodes 1, 6, and 8 that have received the access look in the cluster map 4-2 of the lower cluster 2 that each holds, and access in order from the cache node with the smallest “number of“ information need ”” Is transferred (S704 in FIG. 7A).

これらの方法により、自律分散的な負荷分散が実現される。   By these methods, autonomous distributed load distribution is realized.

図6(b)は、下位クラスタ2内の複数のキャッシュノードが同じDNSに登録している場合である。この場合、アクセス元のノード3a、3b、3cはそれぞれDNSサーバ31に、キャッシュされている情報のキャッシュノードのIPアドレスを知るためにアクセスする(図7bのS711)。ここでは、簡単のためDNSサーバ31はキャッシュノードのIPアドレスを知っていることとする。   FIG. 6B shows a case where a plurality of cache nodes in the lower cluster 2 are registered in the same DNS. In this case, the access source nodes 3a, 3b, and 3c each access the DNS server 31 in order to know the IP address of the cache node of the cached information (S711 in FIG. 7b). Here, for simplicity, it is assumed that the DNS server 31 knows the IP address of the cache node.

DNSサーバ31は、自身に実装されている手法によってアクセス元のノード3a、3b、3cに対してそれぞれキャッシュノードである1、6、8の中からいずれかを選んで、そのキャッシュノードのIPアドレスを教える(図7bのS712)。これによって、アクセス元のノード3a、3b、3cは、DNSサーバによって選択されたキャッシュノードにそれぞれアクセスする(図7bのS713)。   The DNS server 31 selects one of the cache nodes 1, 6, and 8 for each of the access source nodes 3 a, 3 b, and 3 c according to the method implemented by itself, and the IP address of the cache node (S712 in FIG. 7b). As a result, the access source nodes 3a, 3b, and 3c each access the cache node selected by the DNS server (S713 in FIG. 7b).

アクセスをそれぞれ受けたキャッシュノードは、それぞれが保有する下位クラスタ2のクラスタマップ4−2を見て、「『情報の必要度』の数値」の最も少ないキャッシュノードから順番にアクセスを転送する(図7bのS714)。   Each cache node that has received an access looks at the cluster map 4-2 of the lower cluster 2 that it holds, and transfers the access in order from the cache node with the smallest “numerical value of“ information necessity ”” (see FIG. 7b S714).

これらの方法により、自律分散的な負荷分散が実現される。   By these methods, autonomous distributed load distribution is realized.

ここで、アクセスを転送する順番は、クラスタマップ4内にある全てのキャッシュノードの「現在の『情報の必要度』の数値」に「アクセス時間間隔の平均値」と「『情報の必要度』の数値の1次微分値」との積を加えた値を計算することで、それぞれのキャッシュノードの今後の「『情報の必要度』の数値」の予測値を計算し、予測値の最も小さいキャッシュノードから順でも良い。   Here, the order of transferring the access is “the average value of the access time interval” and “the“ necessity of information ”in the“ current “information necessity” numerical value ”of all the cache nodes in the cluster map 4. By calculating the value obtained by adding the product of “the first derivative of the numerical value of”, the predicted value of the future “number of“ information need ”” of each cache node is calculated, and the predicted value is the smallest The order may be from the cache node.

また、アクセスを転送する順番は、クラスタマップ4内にある全てのキャッシュノードの「現在の『情報の必要度』の数値」に「アクセス時間間隔の平均値」と「『情報の必要度』の数値の1次微分値」との積と、「アクセス時間間隔の平均値」の2乗と「『情報の必要度』の数値の2次微分値」との積を加えた値を計算することで、それぞれのキャッシュノードの今後の「『情報の必要度』の数値」の予測値を計算し、予測値の最も小さいキャッシュノードから順でも良い。   In addition, the order of transferring access is determined by adding “average value of access time interval” and “information necessity” to the “current value of information need” of all cache nodes in the cluster map 4. Calculate the value obtained by adding the product of the first derivative of the numerical value and the product of the square of the average value of the access time interval and the second derivative of the numerical value of “Necessary information” Thus, the predicted value of the future “numerical value of information” of each cache node may be calculated, and the cache node having the smallest predicted value may be calculated in order.

また、アクセスを転送する順番は、「『情報の必要度』の数値」の最も少ないキャッシュノードに対して、閾値Θ1まで増加させ、その後その時点で「『情報の必要度』の数値」の最も少ないキャッシュノードに対して、閾値Θ1まで増加させることを繰り返しても良い。   Further, the order of transferring the access is increased to the threshold Θ1 for the cache node having the smallest “value of“ information need ””, and then the “number of“ value of information ”” is the highest at that point. You may repeat increasing to threshold value (theta) 1 with respect to few cache nodes.

また、アクセスを転送する順番は、「『情報の必要度』の数値」の最も少ないキャッシュノードから「『情報の必要度』の数値」の少ない順番にアクセスを転送することを繰り返すものであっても良い。   Also, the order of transferring the access is to repeat the transfer of the access from the cache node having the smallest “number of“ information necessity ”” in the order of the “number of“ necessity of information ””. Also good.

また、アクセスを転送する順番は、下位クラスタ2内のキャッシュノードのアクセスを受信可能なインターフェースの数が少ない順でも良い。   Further, the order of transferring the access may be the order in which the number of interfaces that can receive the access of the cache node in the lower cluster 2 is small.

また、アクセスを転送する順番は、下位クラスタ2内のキャッシュノードのアクセスを受信可能なインターフェースの入力バッファサイズが少ない順でも良い。   Further, the order of transferring the access may be the order in which the input buffer size of the interface capable of receiving the access of the cache node in the lower cluster 2 is small.

また、アクセスを転送する順番は、下位クラスタ毎で異なっていても良い。   Further, the order of transferring access may be different for each lower cluster.

(3)クラスタの増加に関する動作の説明
図8、図9および図10を参照して、本実施例の分散情報配置システムにおけるクラスタの増加に関する動作を説明する。
(3) Explanation of operation concerning increase of cluster With reference to FIG. 8, FIG. 9, and FIG. 10, the operation concerning the increase of the cluster in the distributed information arrangement system of the present embodiment will be explained.

各下位クラスタ2には、その代表キャッシュノード1またはクラスタ2の中心から一定の物理距離または論理的距離をNW半径10とする円で特定されるクラスタ領域と、このクラスタ領域に設置することのできるキャッシュノードの最大数とが予め定められる。   Each subordinate cluster 2 can be installed in a cluster area specified by a circle having an NW radius 10 of a certain physical distance or logical distance from the center of the representative cache node 1 or cluster 2 and the cluster area. The maximum number of cache nodes is predetermined.

ここで、自キャッシュノード1または下位クラスタ2を中心としたアクセス元のNW半径10は、下位クラスタ2内の全てまたは1部のキャッシュノードの、アクセスを受信可能なインターフェースの数に基づいて設定しても良い。   Here, the NW radius 10 of the access source centered on the own cache node 1 or the lower cluster 2 is set based on the number of interfaces that can receive access to all or a part of the cache nodes in the lower cluster 2. May be.

また、自キャッシュノード1または下位クラスタ2を中心としたアクセス元のNW半径10は、下位クラスタ2内の全てまたは1部のキャッシュノードの、アクセスを受信可能なインターフェースの入力バッファサイズに基づいて設定しても良い。   The NW radius 10 of the access source centered on the own cache node 1 or the lower cluster 2 is set based on the input buffer size of the interface that can receive access of all or a part of the cache nodes in the lower cluster 2. You may do it.

また、自キャッシュノード1または下位クラスタ2を中心としたアクセス元のNW半径10は、下位クラスタ2内の全てまたは1部のキャッシュノードの、アクセスを受信可能なインターフェースの数と、アクセスを受信可能なインターフェースの入力バッファサイズの両方に基づいて設定しても良い。   Also, the NW radius 10 of the access source centering on the own cache node 1 or the lower cluster 2 can receive the access and the number of interfaces that can receive access to all or a part of the cache nodes in the lower cluster 2. It may be set based on both the input buffer size of a simple interface.

このようにして、下位クラスタ2の代表キャッシュノード1が「NW半径10を超える遠くからのアクセスが多くなる」あるいは「計算した自下位クラスタ2に置くことの出来るキャッシュノードの最大数に近づく」ことを知ると、NW半径10を超える場所に存在する、次数の大きなキャッシュノードに情報をキャッシュしてもらえないかランダムに通常のInternetにおける通信手法により打診し、承諾をもらったキャッシュノード11にキャッシュさせてもらう(図9のS901〜S904)。ここで、複数の承諾をもらった場合には、それらの全て、あるいはそれらのうち次数の大きなキャッシュノードに対して、キャッシュさせてもらう(図9のS905)。   In this way, the representative cache node 1 of the lower cluster 2 is “accessed from a distance exceeding the NW radius 10” or “approaching the calculated maximum number of cache nodes that can be placed in the own lower cluster 2”. Knowing that the information can be cached in a large-order cache node that exists in a place where the NW radius exceeds 10, or is randomly consulted by a normal Internet communication method, and the cache node 11 that has obtained consent is cached. (S901 to S904 in FIG. 9). Here, when a plurality of approvals are obtained, all of them or cache nodes having a large degree among them are cached (S905 in FIG. 9).

キャッシュノードの依頼を行った代表キャッシュノード1は、自キャッシュノード1を含む代表キャッシュノード1のみで構成される上位クラスタNW17を作成し、上位クラスタNW17用の上位クラスタマップ18−2を作成する(図9のS906)。   The representative cache node 1 that has requested the cache node creates an upper cluster NW17 composed only of the representative cache node 1 including its own cache node 1, and creates an upper cluster map 18-2 for the upper cluster NW17 ( S906 in FIG. 9).

新規追加されたキャッシュノード11は自分を代表キャッシュノードとする下位クラスタ15を新たに形成し、下位クラスタ15内用下位クラスタマップ4−15を作成する(図9のS907)。   The newly added cache node 11 newly forms a lower cluster 15 having itself as a representative cache node, and creates a lower cluster map 4-15 for the lower cluster 15 (S907 in FIG. 9).

また、新規追加されたキャッシュノード11は情報のURLと自身のIPアドレスを自身の所属するNWドメイン内のDNSサーバ34に登録しておく(図9のS907)。ここで、キャッシュノード11の登録するDNSサーバは、オリジナルキャッシュノードの所属するクラスタ2内のキャッシュノードが、それぞれ情報のURLと自身のIPアドレスを登録しているDNSサーバ31,32,33の全てと異なっている。以降、追加される下位クラスタの代表ノードとその下位クラスタ内に追加されるキャッシュノードでの負荷分散の動作は、図2(a)および図2(b)と図3(a)および図3(b)で示したように行われる。これらの方法により、自律分散的な負荷分散が実現される(図9のS907)。   Further, the newly added cache node 11 registers the URL of the information and its own IP address in the DNS server 34 in the NW domain to which it belongs (S907 in FIG. 9). Here, the DNS servers registered by the cache node 11 are all the DNS servers 31, 32, 33 in which the cache nodes in the cluster 2 to which the original cache node belongs respectively register the URL of the information and its own IP address. Is different. Thereafter, the load distribution operation in the representative node of the added lower cluster and the cache node added in the lower cluster will be described with reference to FIGS. 2 (a), 2 (b), 3 (a), and 3 (3). Performed as shown in b). By these methods, autonomous distributed load distribution is realized (S907 in FIG. 9).

ここで、この代表キャッシュノード同士による上位クラスタ間オーバーレイNW17は、下位クラスタ2および下位クラスタ15のクラスタ内オーバーレイNWの上に構築される(図9のS907)。   Here, the upper inter-cluster overlay NW 17 by the representative cache nodes is constructed on the intra-cluster overlay NW of the lower cluster 2 and the lower cluster 15 (S907 in FIG. 9).

また、新規追加されたキャッシュノード11はキャッシュノード依頼を受けた代表キャッシュノード1に対して、代表キャッシュノードのみで構成される上位クラスタNW17に対して、キャッシュノード11が上位クラスタ17に属することを認識してもらうための「entryメッセージ」を通常のInternet上の通信手段によって送る(図9のS907)。   Further, the newly added cache node 11 indicates that the cache node 11 belongs to the upper cluster 17 with respect to the upper cluster NW 17 composed only of the representative cache node, with respect to the representative cache node 1 that has received the cache node request. An “entry message” for recognition is sent by a communication means on a normal Internet (S907 in FIG. 9).

キャッシュノード11への依頼を行った代表キャッシュノード1は、新規追加されたキャッシュノード11宛に、「entryメッセージ」を受信したことを示すメッセージを上位クラスタ17内通信によって送り、同時に上位クラスタマップ18に必要な情報を要求する(図9のS908)。要求を受けた新規追加キャッシュノード11は、自身のキャッシュノード11に関する要求情報を上位クラスタ17内通信によって、キャッシュノード11への依頼を行った代表キャッシュノード1へ送る。   The representative cache node 1 which has made a request to the cache node 11 sends a message indicating that the “entry message” has been received to the newly added cache node 11 by communication within the upper cluster 17, and at the same time, the upper cluster map 18 (S908 in FIG. 9). The newly added cache node 11 that has received the request sends request information related to its own cache node 11 to the representative cache node 1 that has made a request to the cache node 11 by communication within the upper cluster 17.

キャッシュノード依頼を行った代表キャッシュノード1は、新規代表キャッシュノード11から受け取った要求情報をもとに上位クラスタマップ18−11を更新し、更新された上位クラスタマップ18−11を、上位クラスタ17内通信によって、代表キャッシュノードが所属する下位クラスタ内の他の代表キャッシュノード宛に送る。各代表キャッシュノードは各自の持つ上位クラスタ用の上位クラスタマップを更新して、登録完了のメッセージを、キャッシュノード依頼を行った代表キャッシュノード1に、上位クラスタ内通信によって送る(図9のS908)。   The representative cache node 1 that made the cache node request updates the upper cluster map 18-11 based on the request information received from the new representative cache node 11, and uses the updated upper cluster map 18-11 as the upper cluster 17. By internal communication, the data is sent to another representative cache node in the lower cluster to which the representative cache node belongs. Each representative cache node updates its own upper cluster map for the upper cluster, and sends a registration completion message to the representative cache node 1 that has requested the cache node by communication within the upper cluster (S908 in FIG. 9). .

図11を参照すると、本実施例の分散情報配置システムにおける、代表キャッシュノードのみで構成される上位クラスタレベルのNW17(上位層)、下位クラスタレベルのNW2、15、16(中間層)、およびノードレベルのNW(最下層)の関係の1例が示されている。   Referring to FIG. 11, the upper cluster level NW17 (upper layer), the lower cluster level NWs 2, 15, 16 (middle layer), and nodes, which are composed of only representative cache nodes in the distributed information arrangement system of this embodiment. An example of the level NW (lowermost layer) relationship is shown.

下位クラスタ同士は原則的に代表キャッシュノードであるキャッシュノード1、11、14同士が、各下位クラスタ2、15、16内のキャッシュノード数などのマクロな情報を、一定時間間隔毎または不定時間間隔で上位クラスタNW17上でオーバーレイ通信を行うことによって交換し、互いの生存と状況を確認し合うと共に、各々の代表キャッシュノード1,11,14が保持している各下位クラスタ2,15,16のマクロ情報を更新する(図9のS909)。   In principle, the lower-level clusters are the representative cache nodes, and the cache nodes 1, 11, and 14 send macro information such as the number of cache nodes in the lower-level clusters 2, 15, and 16 at regular time intervals or at indefinite time intervals. Are exchanged by performing overlay communication on the upper cluster NW17 to check the existence and status of each other, and each of the lower clusters 2, 15, 16 held by the representative cache nodes 1, 11, 14 The macro information is updated (S909 in FIG. 9).

ここで、同一情報のループを防ぐために、何らかのオーバーレイ通信は、代表キャッシュノード1、11、14のいずれかをIETFのRFC2796に規定されたルートリフレクタに設定した上での通信であっても良い。また、ここで同一情報のループを防ぐために、下位クラスタNW内の何らかのオーバーレイ通信は、IETFのRFC2328に規定されたOSPFをプロトコルとして用いても良い。また、ここで同一情報のループを防ぐために、下位クラスタNW内の何らかのオーバーレイ通信は、IETFのRFC1142またはRFC1195に規定されたIS−ISをプロトコルとして用いても良い。   Here, in order to prevent a loop of the same information, some overlay communication may be communication after setting any one of the representative cache nodes 1, 11, and 14 as a route reflector defined in RFC 2796 of IETF. In order to prevent the same information loop, any overlay communication in the lower cluster NW may use OSPF defined in RFC 2328 of the IETF as a protocol. In order to prevent a loop of the same information here, any overlay communication in the lower cluster NW may use IS-IS defined in RFC 1142 or RFC 1195 of IETF as a protocol.

さらに、全ての代表キャッシュノードの上位クラスタ17内用の下位クラスタマップの同期を取るために、上位クラスタ17内において何らかのオーバーレイ通信によって交換される情報には、何らかのフォーマットによるバージョン情報を含んでいても良い。   Further, in order to synchronize the lower cluster map for the upper cluster 17 of all the representative cache nodes, the information exchanged by some overlay communication in the upper cluster 17 may include version information in some format. good.

(4)キャッシュノードの減少に関する動作の説明
図12、図13および図14を参照して、本実施例の分散情報配置システムにおけるキャッシュノードの減少に関する動作を説明する。
(4) Description of Operation Regarding Reduction of Cache Node With reference to FIG. 12, FIG. 13, and FIG. 14, an operation regarding reduction of the cache node in the distributed information arrangement system of the present embodiment will be described.

図12の下位クラスタ15を例に取る。キャッシュノード19へのアクセスが減って、「『情報の必要度』の数値」がある閾値Θ2を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する(図13のS1301、S1302)。一定時間経過後の「『情報の必要度』の数値」の平均値がある閾値Θ2を下回ると、自キャッシュノード19の所属する下位クラスタ15内に他のキャッシュノードがいる限り、下位クラスタ15内の他のキャッシュノード全てに「脱退メッセージ」を下位クラスタ15内用通信によって送る(図13のS1303、S1304)。   Take the lower cluster 15 of FIG. 12 as an example. When the access to the cache node 19 decreases and the “numerical value of“ information ”” falls below a certain threshold Θ2, taking into account the fluctuation of the numerical value, Average values of “numerical values” are acquired (S1301 and S1302 in FIG. 13). If the average value of “numerical value of information” after a certain period of time falls below a certain threshold Θ2, as long as there is another cache node in the lower cluster 15 to which the own cache node 19 belongs, A “withdrawal message” is sent to all other cache nodes by communication within the lower cluster 15 (S1303 and S1304 in FIG. 13).

ここで閾値Θ2は、キャッシュノードのアクセスを受信可能なインターフェースの入力バッファサイズの最大値の0から99%の割合の範囲内で、かつ後述のキャッシュノードが下位クラスタに追加される場合の閾値Θ1より小さい割合に設定する。また、閾値Θ2は、キャッシュノードのアクセスを受信可能なインターフェースの数や、インターフェースの入力バッファサイズなどに応じて、キャッシュノード毎に異なっていても良い。また、閾値Θ2は、自下位クラスタ内に置くことの出来るキャッシュノードの最大数に応じて、下位クラスタ毎で異なっていても良い。   Here, the threshold Θ2 is within the range of 0 to 99% of the maximum value of the input buffer size of the interface that can receive the cache node access, and the threshold Θ1 when a cache node described later is added to the lower cluster. Set to a smaller percentage. The threshold Θ2 may be different for each cache node according to the number of interfaces that can receive the cache node access, the input buffer size of the interface, and the like. The threshold Θ2 may be different for each lower cluster according to the maximum number of cache nodes that can be placed in the own lower cluster.

脱退メッセージを受け取った下位クラスタ15内の他のキャッシュノードは自キャッシュノードの保持している下位クラスタ15内用下位クラスタマップから、脱退キャッシュノード19のIPアドレス以外の情報を消去し、「脱退メッセージが到着した」という確認メッセージを脱退キャッシュノード19に対して下位クラスタ内通信によって送信する(図13のS1305、S1306)。脱退キャッシュノード19は、下位クラスタ15内の全ての他のキャッシュノードから、確認メッセージを受け取った後で、自キャッシュノード19の保持しているキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して下位クラスタ15から抜ける(図13のS1307)。   The other cache nodes in the lower cluster 15 that have received the withdrawal message delete information other than the IP address of the withdrawal cache node 19 from the lower cluster map for the lower cluster 15 held by the own cache node, The confirmation message “has arrived” is transmitted to the withdrawal cache node 19 by communication within the lower cluster (S1305 and S1306 in FIG. 13). The withdrawal cache node 19 receives the confirmation message from all the other cache nodes in the lower cluster 15, and then deletes the cache data held by the own cache node 19 and the URL of the information and its own IP address. Is deleted from the lower level cluster 15 (S1307 in FIG. 13).

ここで、仮に代表キャッシュノード11が抜ける場合には、以下のようになる。代表キャッシュノード11へのアクセスが減って、「『情報の必要度』の数値」がある閾値Θ2を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する(図14のS1401、S1402)。一定時間の「『情報の必要度』の数値」の平均値がある閾値Θ2を下回ると、自キャッシュノード11の所属する下位クラスタ15内の他のキャッシュノードのうち、最も「『情報の必要度』の数値」の小さいキャッシュノード13に他の下位クラスタ2、16との通信を行う代表キャッシュノードを譲り、自キャッシュノード11の所属する下位クラスタ15内の他のキャッシュノード全てと、他の下位クラスタ2、16の各々全ての代表キャッシュノード1、14へ、「別のキャッシュノード13が代表キャッシュノードを引き継ぎ、自分11が抜けること」を、下位クラスタ内通信、上位クラスタ内通信によってそれぞれ知らせる(図14のS1403、S1404)。   Here, if the representative cache node 11 leaves, it will be as follows. When the access to the representative cache node 11 decreases and the “numerical value of“ information ”” falls below a certain threshold Θ2, the “necessity of information” for a certain time from that point in time is considered in consideration of the fluctuation of the numerical value. Average value ”is acquired (S1401, S1402 in FIG. 14). When the average value of the “numerical value of“ information ”” for a certain time falls below a certain threshold Θ2, among the other cache nodes in the lower cluster 15 to which the own cache node 11 belongs, “the“ necessity of information ” The representative cache node that communicates with the other lower clusters 2 and 16 is transferred to the cache node 13 having a small “number” and all other cache nodes in the lower cluster 15 to which the own cache node 11 belongs and other lower nodes All of the representative cache nodes 1 and 14 of the clusters 2 and 16 are informed by the communication in the lower cluster and the communication in the upper cluster, respectively, that “the other cache node 13 takes over the representative cache node and leaves itself 11”. (S1403, S1404 in FIG. 14).

代表キャッシュノード11からの脱退メッセージを受け取った下位クラスタ15内の他の全てのキャッシュノードは各々の持つ下位クラスタ15内用下位クラスタマップから代表キャッシュノード11の情報をIPアドレスを除いて削除し、「代表キャッシュノードを受け継いだキャッシュノード13」を代表キャッシュノードとして下位クラスタ15内用下位クラスタマップに設定する。さらに、「元の代表キャッシュノード11」と「代表キャッシュノードを受け継いだキャッシュノード13」に対して、下位クラスタ内通信によって「新しい代表キャッシュノード13を下位クラスタ15内用下位クラスタマップ4−15に登録したこと」を確認メッセージとして伝える(図14のS1405)。   All other cache nodes in the lower cluster 15 that have received the withdrawal message from the representative cache node 11 delete the information of the representative cache node 11 from the lower cluster map for the lower cluster 15 except for the IP address, The “cache node 13 that has inherited the representative cache node” is set as the representative cache node in the lower cluster map for the lower cluster 15. Further, for “the original representative cache node 11” and “the cache node 13 that has inherited the representative cache node”, “new representative cache node 13 is changed to lower cluster map 4-15 for lower cluster 15 by communication within the lower cluster”. "Registered" is transmitted as a confirmation message (S1405 in FIG. 14).

同様に他の下位クラスタ2、16の各々の代表キャッシュノード1、14は、各々の保持している上位クラスタNW17用の上位クラスタマップ18−2、18−16から代表キャッシュノード11の情報を削除し、新しい代表キャッシュノード13を下位クラスタ15の代表キャッシュノードとして上位クラスタNW17用の上位クラスタマップ18−2、18−16に設定する。さらに他の下位クラスタ2、16の各々の代表キャッシュノード1、14は、確認メッセージを「代表キャッシュノードを受け継いだキャッシュノード13」と「元の代表キャッシュノード11」宛に上位クラスタ内通信によって送信する(図14のS1406)。   Similarly, each of the representative cache nodes 1 and 14 of the other lower clusters 2 and 16 deletes the information of the representative cache node 11 from the upper cluster maps 18-2 and 18-16 for the upper cluster NW17 held by each of them. Then, the new representative cache node 13 is set as the representative cache node of the lower cluster 15 in the upper cluster maps 18-2 and 18-16 for the upper cluster NW17. Further, the representative cache nodes 1 and 14 of each of the other lower clusters 2 and 16 transmit confirmation messages to the “cache node 13 that has inherited the representative cache node” and the “original representative cache node 11” by communication within the upper cluster. (S1406 in FIG. 14).

自キャッシュノード11の所属する下位クラスタ15内の全てのキャッシュノード、および他の下位クラスタ2、16の各々全ての代表キャッシュノード1、14からの確認メッセージを下位クラスタ内通信、上位クラスタ内通信によってそれぞれ受け取った後で、「元の代表キャッシュノード11」は、自キャッシュノード11の保持するキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して下位クラスタ15から抜ける(図14のS1407)。   Confirmation messages from all the cache nodes in the lower cluster 15 to which the own cache node 11 belongs and all the representative cache nodes 1 and 14 in the other lower clusters 2 and 16 are transmitted by communication in the lower cluster and communication in the upper cluster. After receiving each, the “original representative cache node 11” deletes the cache data held by the own cache node 11 and issues a deletion request to the DNS server that registered the URL of the information and its own IP address. Exit from the cluster 15 (S1407 in FIG. 14).

(5)クラスタの減少に関する動作の説明
図15および図16を参照して、本実施例の分散情報配置システムにおけるクラスタの減少に関する動作を説明する。
(5) Description of operation related to cluster reduction With reference to FIG. 15 and FIG. 16, an operation related to cluster reduction in the distributed information arrangement system of this embodiment will be described.

下位クラスタ16を例にとって説明する。下位クラスタ16に最終的に残ったキャッシュノード14は必然的に下位クラスタの代表キャッシュノードであるが、代表キャッシュノード14でも「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する(図16のS1601、S1602)。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、代表キャッシュノード14は他の全ての下位クラスタ2、15の代表キャッシュノード1、11に対して、脱退メッセージを送る(図16のS1603、S1604)。同時に、脱退代表キャッシュノード14は自キャッシュノード14の保持している上位クラスタNW17用上位クラスタマップ18−16を見て、他の全ての下位クラスタ2、15の代表キャッシュノード1,11のうち、キャッシュノード当たりの「『情報の必要度』の数値」が最も少なく、かつ下位クラスタ内のキャッシュノード密度の最大値の大きい代表キャッシュノード11に、自キャッシュノード14の所属する下位クラスタ16内用の下位クラスタマップ4−16を上位クラスタ内通信によって送信する(図16のS1606)。   A description will be given by taking the lower cluster 16 as an example. The cache node 14 finally remaining in the lower cluster 16 is inevitably a representative cache node of the lower cluster. However, even if the representative cache node 14 falls below a certain threshold value, the numerical value of In consideration of the fluctuation, an average value of “numerical value of“ information necessity ”” for a certain time from that time is acquired (S1601 and S1602 in FIG. 16). When the average value of the “numerical value of information” for a certain time falls below a certain threshold, the representative cache node 14 sends a withdrawal message to the representative cache nodes 1 and 11 of all other lower clusters 2 and 15. (S1603, S1604 in FIG. 16). At the same time, the withdrawal representative cache node 14 looks at the upper cluster map 18-16 for the upper cluster NW17 held by the own cache node 14, and among the representative cache nodes 1 and 11 of all the other lower clusters 2 and 15, The representative cache node 11 having the smallest “number of“ information necessity ”” per cache node and the largest cache node density in the lower cluster is assigned to the lower cluster 16 to which the own cache node 14 belongs. The lower cluster map 4-16 is transmitted by upper cluster communication (S1606 in FIG. 16).

他の全ての下位クラスタ2、15の代表キャッシュノード1、11は、脱退メッセージを送信した代表キャッシュノード14に対して「代表キャッシュノード14が抜けること」を確認するメッセージを「代表キャッシュノード14」宛に上位クラスタ内通信によって送信した後で、代表キャッシュノード14に関するIPアドレス以外の情報を上位クラスタNW17用上位クラスタマップ18−2、18−15の各々から削除する(図16のS1605)。ここで脱退代表キャッシュノード14から下位クラスタ16内用の下位クラスタマップ4−16を受け取った代表キャッシュノード11は、「下位クラスタマップ4−16を受け取ったこと」を確認メッセージとして、脱退代表キャッシュノード14に上位クラスタ内通信によって送信する(図16のS1607)。   The representative cache nodes 1 and 11 of all the other lower clusters 2 and 15 send a message confirming that “representative cache node 14 is leaving” to the representative cache node 14 that has transmitted the withdrawal message “representative cache node 14”. After transmission to the destination by communication within the upper cluster, information other than the IP address related to the representative cache node 14 is deleted from each of the upper cluster maps 18-2 and 18-15 for the upper cluster NW17 (S1605 in FIG. 16). Here, the representative cache node 11 that has received the lower cluster map 4-16 for the lower cluster 16 from the withdrawal representative cache node 14 uses the confirmation message “The lower cluster map 4-16 has been received” as a confirmation message. 14 is transmitted by communication within the upper cluster (S1607 in FIG. 16).

脱退代表キャッシュノード14は、他の全ての下位クラスタ2、15の代表キャッシュノード1、11から「代表キャッシュノード14が抜けること」を確認するメッセージを受け取り、かつ脱退代表キャッシュノード14から下位クラスタ16内用の下位クラスタマップ4−16を受け取った代表キャッシュノード11から「下位クラスタマップ4−16を受け取ったこと」を確認するメッセージを上位クラスタ内通信によって受け取った後で、自キャッシュノード14の保持するキャッシュデータを削除し、情報のURLと自身のIPアドレスとを登録したDNSサーバに削除要求を出して上位クラスタNW17から抜ける(図16のS1608)。   The withdrawal representative cache node 14 receives a message confirming that “the representative cache node 14 is leaving” from the representative cache nodes 1 and 11 of all the other lower-level clusters 2 and 15, and the lower-level cluster 16 from the withdrawal representative cache node 14. After receiving a message confirming that “the lower cluster map 4-16 has been received” from the representative cache node 11 that has received the lower cluster map 4-16 for internal use, the cache of the own cache node 14 is retained. The cache data to be deleted is deleted, a deletion request is issued to the DNS server in which the URL of the information and its own IP address are registered, and the process leaves the upper cluster NW 17 (S1608 in FIG. 16).

(6)終末キャッシュノードの脱退に関する動作の説明
図17および図18を参照して、終末キャッシュノードの脱退に関する動作を説明する。
(6) Description of Operation Related to Withdrawal of End Cache Node With reference to FIGS. 17 and 18, an operation related to withdrawal of the end cache node will be described.

最終的に残った下位クラスタ15において、最終的に残ったキャッシュノード11(終末キャッシュノード)でも「『情報の必要度』の数値」がある閾値を下回ると、数値の変動を考慮して、その時点から一定時間の「『情報の必要度』の数値」の平均値を取得する(図18のS1801)。一定時間の「『情報の必要度』の数値」の平均値がある閾値を下回ると、オリジナルキャッシュノード1に対して、「自分11が最終データのキャッシュノードであること」、終末キャッシュノードが保持している「キャッシュデータ」および「過去に脱退した他の下位クラスタの下位クラスタ内用の下位クラスタマップ」を、1)自キャッシュノード11にそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)削除して欲しい、という「希望情報」と共に、上位クラスタ内通信によって伝える(図18のS1802)。   In the finally remaining lower cluster 15, even if the finally remaining cache node 11 (terminal cache node) falls below a certain threshold value of “the“ necessity of information ””, the change of the numerical value is taken into consideration. The average value of “numerical value of“ information necessity ”” for a certain time from the time is acquired (S1801 in FIG. 18). When the average value of the “number of“ information necessity ”” for a certain time falls below a certain threshold value, “the node 11 is the cache node of the final data” and the terminal cache node holds for the original cache node 1 “Cache data” and “lower cluster map for lower cluster of other lower cluster that has left in the past” may be placed in the own cache node 11 as it is, or 2) some other form ( For example, it may be placed as a link destination or the like, or 3) “desired information” that the user wants to be deleted is transmitted by intra-cluster communication (S1802 in FIG. 18).

オリジナルキャッシュノード1は、終末キャッシュノード11からの「希望情報」を元に、情報を、1)そのまま置いてもらうか、2)何か他の形態(例えばリンク先としてなど)で置かせてもらうか、あるいは、3)削除してもらうかを検討し、その結果を終末キャッシュノード11に対して上位クラスタ内通信によって伝える(図18のS1803)。ここで、終末キャッシュノード11に情報をキャッシュし続けてもらう理由は、そのデータが再度必要になる場合、最後までアクセスがあったキャッシュノードの周辺からの場合が多いと推定されるためである。   Based on the “desired information” from the terminal cache node 11, the original cache node 1 receives the information 1) as it is, or 2) places it in some other form (for example, as a link destination). Or 3) to determine whether or not to delete, and to communicate the result to the terminal cache node 11 by communication within the upper cluster (S1803 in FIG. 18). Here, the reason why the terminal cache node 11 continues to cache the information is that when the data is needed again, it is estimated that there are many cases from the periphery of the cache node that has been accessed to the end.

終末キャッシュノード11に終末キャッシュノード11がキャッシュしている情報を削除してもらう場合、オリジナルキャッシュノード1は、最後に残った下位クラスタ15にいた他のキャッシュノード13、19に対して、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しい、ことを通常のInternet上の通信手段によって伝える(図18のS1805)。   When the terminal cache node 11 deletes the information cached by the terminal cache node 11, the original cache node 1 sends the information to the other cache nodes 13 and 19 in the last remaining lower cluster 15. 1) I want you to leave it as it is, and 2) I want you to put it in some other form (for example, as a link destination, etc.) and tell it by the communication means on the normal Internet (S1805 in FIG. 18).

終末キャッシュノード11は、オリジナルキャッシュノード1からの回答に従って、情報の管理形態を決定する。すなわち、情報を、1)そのまま置くか、2)何か他の形態(例えばリンク先としてなど)で置くか、あるいは、3)削除するか、のいずれかを行う(図18のS1804)。   The terminal cache node 11 determines the information management form according to the answer from the original cache node 1. That is, the information is either 1) placed as it is, 2) placed in some other form (for example, as a link destination), or 3) deleted (S1804 in FIG. 18).

オリジナルキャッシュノード1から、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しいというメッセージを受け取った、最後に残った下位クラスタ15にいた他のキャッシュノード13、19は、それぞれオリジナルキャッシュノード1に対して、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)置きたくない、という「希望情報」をそれぞれ通常のInternet上の通信手法によって伝える(図18のS1806)。   Received a message from the original cache node 1 that 1) want the information to be left as it is, 2) have the message be placed in some other form (for example, as a link destination), and was in the last remaining lower cluster 15 Each of the other cache nodes 13 and 19 can store information on the original cache node 1 in the form of 1) its own cache node, or 2) in some other form (for example, as a link destination). Alternatively, 3) “desired information” that the user does not want to place is transmitted by a normal communication method on the Internet (S1806 in FIG. 18).

「希望情報」を受け取ったオリジナルキャッシュノード1は、その中に、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良いという回答があれば、1)、2)の優先順位で、そのキャッシュノードと上位クラスタを形成し、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良いという回答を行ったキャッシュノードへ、キャッシュする情報を上位クラスタ内通信によって送信する(図18のS1807)。   The original cache node 1 that has received the “desired information” may place the information in the cache node 1 as it is, or 2) in some other form (for example, as a link destination). If there is a good answer, 1) and 2) priorities are formed to form a higher cluster with the cache node, and the information may be left as it is in 1) its own cache node. 2) Some other form ( For example, the information to be cached is transmitted by communication within the upper cluster to the cache node that has made a reply that it may be placed as a link destination (S1807 in FIG. 18).

「希望情報」を受け取ったオリジナルキャッシュノード1は、その中に3)置きたくないという回答しか無ければ、最後から2番目に削除された下位クラスタ16にいた全てのキャッシュノードに対して、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しい、ことを通常のInternet上の通信手法によって伝える。   If the original cache node 1 that has received the “desired information” has only the answer that 3) it does not want to be placed in it, the information is sent to all the cache nodes in the subordinate cluster 16 that is deleted second from the end. 1) I want you to leave it as it is, 2) I want you to let me put it in some other form (for example, as a link destination, etc.), and tell it by the communication method on the normal Internet.

オリジナルキャッシュノード1から、情報を、1)そのまま置いて欲しい、2)何か他の形態(例えばリンク先としてなど)で置かせて欲しいというメッセージを受け取った、最後から2番目に残った下位クラスタ16にいた全てのキャッシュノード14、20、21は、それぞれオリジナルキャッシュノード1に対して、情報を、1)自キャッシュノードにそのまま置いても良い、2)何か他の形態(例えばリンク先としてなど)で置いても良い、あるいは、3)置きたくない、という「希望情報」をそれぞれ通常のInternet上の通信手法によって伝える(図18のS1808)。   Received a message from the original cache node 1 that the information should be placed 1) as it is, 2) the message that you want to place it in some other form (for example, as a link destination), etc. All the cache nodes 14, 20, and 21 in 16 may store information on the original cache node 1 as it is in 1) its own cache node, 2) some other form (for example, as a link destination) Etc.), or 3) “desired information” that the user does not want to place is transmitted by a normal communication method on the Internet (S1808 in FIG. 18).

以下、段落番号0199から段落番号0202までの手順を繰り返す。   Thereafter, the procedure from paragraph number 0199 to paragraph number 0202 is repeated.

最終的にオリジナルキャッシュノード1以外にキャッシュしてくれるキャッシュノードが無ければ、オリジナルキャッシュノード1は、情報を自キャッシュノード1に保存したままにする(図18のS1809)。   If there is no cache node that caches other than the original cache node 1 in the end, the original cache node 1 keeps the information stored in its own cache node 1 (S1809 in FIG. 18).

ここで、オリジナルキャッシュノード1が保存する情報は、キャッシュ情報および上位クラスタの過去に登録された1部または全ての代表ノードのDNSサーバ上の登録名およびIPアドレスであっても良い。また、オリジナルキャッシュノード1が保存する情報は、キャッシュ情報および複数の下位クラスタ過去に登録された1部または全てのキャッシュノードのDNSサーバ上の登録名およびIPアドレスを含んでいても良い。また、オリジナルキャッシュノード1が保存する情報は、キャッシュ情報および上位クラスタの過去に登録された1部または全ての代表ノードと、複数の下位クラスタの過去に登録された1部または全てのキャッシュノードのDNSサーバ上の登録名およびIPアドレスを含んでいても良い。   Here, the information stored in the original cache node 1 may be the cache information and the registered name and IP address on the DNS server of one or all representative nodes registered in the past of the upper cluster. The information stored by the original cache node 1 may include cache information and registered names and IP addresses on the DNS server of one or all cache nodes registered in the past in a plurality of lower-level clusters. The information stored in the original cache node 1 includes cache information and one or all representative nodes registered in the past of the upper cluster and one or all cache nodes registered in the past of a plurality of lower clusters. The registered name and IP address on the DNS server may be included.

(7)アクセスが再度増加した場合に関する動作の説明
上記「(6)終末キャッシュノードの脱退に関する動作の説明」において、最終的にキャッシュされるべき情報をどのキャッシュノードが保持しているかによって、最初のステップのみが異なる。
(7) Explanation of operation when access increases again In the above-mentioned “(6) Explanation of operation concerning withdrawal of terminal cache node”, the first depends on which cache node holds information to be finally cached. Only the steps are different.

(7−1)最終的にオリジナルキャッシュノードのみがキャッシュされるべき情報を保持している場合
この場合は、「(1)キャッシュノードの増加に関する動作の説明」が最初のステップとなる。
(7-1) In the case where only the original cache node holds information to be cached finally In this case, “(1) Description of operation concerning increase of cache nodes” is the first step.

(7−2)最終的にオリジナルキャッシュノードと終末キャッシュノードがキャッシュされるべき情報を保持している場合 (7-2) When the original cache node and the terminal cache node hold information to be cached finally

図17を用いて説明する。この場合、オリジナルキャッシュノード1と終末キャッシュノード11のうち、アクセスを受けたキャッシュノードにおいて、「(1)キャッシュノードの増加に関する動作の説明」が最初のステップとなる。終末キャッシュノード11においてアクセスが増加し、「(1)キャッシュノードの増加に関する動作の説明」で示した、閾値Θ1を超えてキャッシュノードの追加が必要になった場合、「(1)キャッシュノードの増加に関する動作の説明」で示した手順に従って、一定時間待ってから、終末キャッシュノード11は自分の保持している下位クラスタ15内の下位クラスタマップ4−15の中に残っている、下位クラスタ15内で過去にキャッシュノードであったキャッシュノード13、19に情報をキャッシュしてもらえないかを通常のInternet上の通信手法によって打診する。もし、いずれからも承諾を得られなかった場合には、ある一定のホップ数にあるキャッシュノードのうち、次数の大きなキャッシュノードにランダムに情報をキャッシュしてもらえないかを通常のInternet上の通信手法によって打診する。一定のホップ数内のキャッシュノードから承諾が得られなければ、該終末キャッシュノードは探索ホップ数を+1して、承諾を得られるキャッシュノードを探索する。   This will be described with reference to FIG. In this case, among the original cache node 1 and the terminal cache node 11, “(1) Description of operation related to increase in cache nodes” is the first step in the cache node that has been accessed. When access is increased in the terminal cache node 11 and it becomes necessary to add a cache node exceeding the threshold Θ1 described in “(1) Explanation of operation regarding increase in cache node”, “(1) Cache node The terminal cache node 11 remains in the lower-level cluster map 4-15 in the lower-level cluster 15 held by the terminal cache node 11 after waiting for a certain time in accordance with the procedure described in “Explanation of the operation related to increase”. The cache nodes 13 and 19 that have been cache nodes in the past are inquired by the communication method on the normal Internet whether or not the information is cached. If consent is not obtained from either of them, it is determined whether or not information can be randomly cached by a cache node having a higher degree among cache nodes having a certain number of hops. Consult with the method. If consent is not obtained from a cache node within a certain number of hops, the terminal cache node increments the number of search hops by one and searches for a cache node that can obtain consent.

下位クラスタ15内の過去のキャッシュノード13、19あるいはホップ数による探索によって、いずれかのキャッシュノードから承諾を通常のInternet上の通信手法によって受けると、後は「(1)キャッシュノードの増加に関する動作の説明」において説明した手順に従って、キャッシュノードを増加させていく。   When consent is received from a cache node 13 or 19 in the lower-level cluster 15 or any of the cache nodes by a communication method on a normal Internet by a search based on the number of hops, “(1) Operation related to increase of cache nodes” The cache nodes are increased in accordance with the procedure described in “Description”.

本実施例によれば、以下のような効果が得られる。   According to the present embodiment, the following effects can be obtained.

第1の効果は、分散キャッシュ配置が効率的に行えることである。その理由は、代表キャッシュノードを用いたキャッシュノードの下位クラスタ化、代表キャッシュノードあるいは下位クラスタを中心としたNW距離の導入、NW距離より遠い先からのアクセスが一定量以上増加した場合にはNW距離より遠い位置にいるキャッシュノードを中心とした別下位クラスタを形成する、という仕組みを用いたためである。   The first effect is that the distributed cache arrangement can be performed efficiently. The reason for this is that a lower-level clustering of cache nodes using a representative cache node, the introduction of an NW distance centered on the representative cache node or lower-level cluster, and an NW when access from a destination farther than the NW distance increases by a certain amount or more This is because another subordinate cluster is formed around the cache node located farther away than the distance.

第2の効果は、キャッシュノード間のアクセスの負荷分散が自律分散的かつ効率的に行えることである。その理由は、代表キャッシュノードを含む下位クラスタ内で独自のオーバーレイNWを形成し、その中で各キャッシュノードの負荷状況を、下位クラスタに属する全てのキャッシュノードが把握可能となる仕組みを用いたためである。   The second effect is that load distribution of access between cache nodes can be performed autonomously and efficiently. The reason is that a unique overlay NW is formed in the lower level cluster including the representative cache node, and a mechanism in which all the cache nodes belonging to the lower level cluster can grasp the load status of each cache node is used. is there.

第3の効果は、ある期間に渡ってアクセスが減少し、殆どまたは全くアクセスされなくなった情報を、再びアクセスが増えてくると効率的に増加させることができることである。その理由は、アクセス量の減少に伴うキャッシュノードおよび下位クラスタの縮小の仕組み、最終的な情報の効率的な保管の仕組みを設けたためである。   A third effect is that information that has been reduced in access over a period of time and that has been hardly or not accessed at all can be efficiently increased when access is increased again. The reason is that a mechanism for reducing cache nodes and lower-level clusters accompanying a decrease in access amount and a mechanism for efficiently storing final information are provided.

第4の効果は、各々の下位クラスタは自律分散的に負荷分散を行うこと、各々の下位クラスタはネットワーク上の距離的に異なる場所に配置されることによって、キャッシュする情報に対する破壊行為から情報を守ることが可能になる、すなわち情報の攻撃行為に対する頑健性が向上することである。   The fourth effect is that each lower cluster performs load distribution in an autonomous distributed manner, and each lower cluster is arranged at a different distance on the network, so that information from destructive actions on cached information can be obtained. It is possible to protect, that is, the robustness against information attack acts is improved.

次に、本発明の分散情報配置システムの構成要素となるノード装置の実施例について説明する。   Next, an embodiment of a node device that is a component of the distributed information arrangement system of the present invention will be described.

図20を参照すると、本実施例のノード装置は、処理装置1100と、記憶装置1200と、通信装置1300とから構成される。   Referring to FIG. 20, the node device according to the present exemplary embodiment includes a processing device 1100, a storage device 1200, and a communication device 1300.

記憶装置1200は、コンピュータの主記憶や補助記憶で構成され、ユーザ端末へ提供する情報であるキャッシュ情報1210、図4に示した下位クラスタマップ1220および図10に示した上位クラスタマップ1230を記憶するために用いられる。   The storage device 1200 includes computer main memory and auxiliary memory, and stores cache information 1210 that is information to be provided to the user terminal, the lower cluster map 1220 shown in FIG. 4, and the upper cluster map 1230 shown in FIG. Used for.

通信装置1300は、ネットワークインタフェースカード等で構成され、インターネット通信手段1310およびオーバーレイ通信手段1320として用いられる。   The communication device 1300 includes a network interface card or the like, and is used as the Internet communication unit 1310 and the overlay communication unit 1320.

処理装置1100は、コンピュータの中央処理装置で構成され、負荷分散手段1110、サービス提供手段1120、負荷情報更新手段1130、キャッシュノード増加手段1140、キャッシュノード減少手段1150、クラスタ増加手段1160、クラスタ減少手段1170、終末手段1180およびクラスタマップ同期手段1190を備えている。これらの各手段は、処理装置1100上で実行されるプログラムによって実現することができる。プログラムは、磁気ディスク等のコンピュータ可読記録媒体に記録され、コンピュータに読み取られることによって、コンピュータ上に上記の各手段1110〜1190を実現する。   The processing device 1100 is constituted by a central processing unit of a computer, and includes a load distribution unit 1110, a service providing unit 1120, a load information update unit 1130, a cache node increase unit 1140, a cache node decrease unit 1150, a cluster increase unit 1160, and a cluster decrease unit. 1170, terminal means 1180, and cluster map synchronization means 1190. Each of these means can be realized by a program executed on the processing apparatus 1100. The program is recorded on a computer-readable recording medium such as a magnetic disk, and is read by the computer, thereby realizing the above-described units 1110 to 1190 on the computer.

負荷分散手段1110は、ユーザ端末からキャッシュ情報1210に対するアクセス要求を受信した場合に、このアクセス要求を自ノードの属するクラスタの何れのノードで受け付けるかを、下位クラスタマップ1220に記載された各ノードの負荷情報(本実施例の場合は、『情報の必要度』の数値)に基づいて判断する機能を有する。負荷分散手段1110は、自ノードで受け付けると判断した場合にはアクセス要求を自ノードのサービス提供手段1120へ転送し、他ノードで受け付けると判断した場合には、オーバーレイ通信手段1320を通じて該当する他のノードへアクセス要求を転送する。また負荷分散手段1110は、自ノードのグローバルIPアドレスとキャッシュ情報1210のURLの対応関係を、自ノードが属するNWドメインのDNSサーバに登録する機能を有する。   When the load distribution unit 1110 receives an access request for the cache information 1210 from the user terminal, the load distribution unit 1110 determines which node of the cluster to which the own node belongs the access request is received by each node described in the lower cluster map 1220. It has a function of making a determination based on load information (in the case of the present embodiment, a numerical value of “information necessity”). The load distribution unit 1110 transfers the access request to the service providing unit 1120 of its own node when it is determined to be received by its own node, and when it is determined that it is received by another node, Forward the access request to the node. The load balancer 1110 has a function of registering the correspondence between the global IP address of the own node and the URL of the cache information 1210 in the DNS server of the NW domain to which the own node belongs.

サービス提供手段1120は、負荷分散手段1110から通知されたアクセス要求に従って、キャッシュ情報1210を要求元のユーザ端末へ送信する機能を有する。   The service providing unit 1120 has a function of transmitting the cache information 1210 to the requesting user terminal in accordance with the access request notified from the load distribution unit 1110.

負荷情報更新手段1130は、サービス提供手段1120がキャッシュ情報1210をアクセスする毎に、図1で説明したように、下位クラスタマップ1220中の自ノードの『情報の必要度』の数値を増加させ、それに応じて、その1次および2次微分値を更新する機能を有する。また負荷情報更新手段1130は、一定時間経過毎に、下位クラスタマップ1220中の自ノードの『情報の必要度』の数値を減少させ、それに応じて、その1次および2次微分値を更新する機能を有する。   Each time the service providing unit 1120 accesses the cache information 1210, the load information updating unit 1130 increases the value of “information necessity” of the own node in the lower cluster map 1220, as described in FIG. Accordingly, it has a function of updating the primary and secondary differential values. Further, the load information update unit 1130 decreases the value of “information necessity” of the own node in the lower cluster map 1220 every predetermined time, and updates the primary and secondary differential values accordingly. It has a function.

キャッシュノード増加手段1140は、図2および図3で説明したように、自ノードの属するクラスタに新たなキャッシュノードを追加する機能を有する。このキャッシュノード増加手段1140は、図3で説明した処理のうち、クラスタの代表ノードによって実行される処理部であるマスタ部1141と、代表ノード以外のノードによって実行される処理部であるスレーブ部1142とで構成される。   As described in FIGS. 2 and 3, the cache node increasing unit 1140 has a function of adding a new cache node to the cluster to which the own node belongs. The cache node increasing unit 1140 includes a master unit 1141 that is a processing unit that is executed by a representative node of the cluster and a slave unit 1142 that is a processing unit that is executed by a node other than the representative node. It consists of.

キャッシュノード減少手段1150は、図12、図13および図14で説明したように、クラスタからキャッシュノードを削減する機能を有する。このキャッシュノード減少手段1150は、図13および図14で説明した処理のうち、削減対象となるノードによって実行される処理部であるマスタ部1151と、削減対象となるノード以外のノードによって実行される処理部であるスレーブ1152とで構成される。   As described with reference to FIGS. 12, 13, and 14, the cache node reducing unit 1150 has a function of reducing cache nodes from the cluster. This cache node reduction means 1150 is executed by the master unit 1151 which is a processing unit executed by the node to be reduced and the nodes other than the node to be reduced among the processes described in FIG. 13 and FIG. It is comprised with the slave 1152 which is a process part.

クラスタ増加手段1160は、図8および図9で説明したように、新たなクラスタを追加する機能を有する。このクラスタ増加手段1160は、図9で説明した処理のうち、新たなクラスタを生成しようとする代表ノードによって実行される処理部であるマスタ部1161と、新たなクラスタを生成しようとする代表ノード以外のノードによって実行される処理部であるスレーブ部1162とで構成される。   The cluster increasing unit 1160 has a function of adding a new cluster as described with reference to FIGS. The cluster increasing means 1160 includes a master unit 1161 that is a processing unit executed by a representative node that is to generate a new cluster and a non-representative node that is to generate a new cluster. And a slave unit 1162 which is a processing unit executed by the nodes.

クラスタ減少手段1170は、図15および図16で説明したように、クラスタを削減する機能を有する。このクラスタ減少手段1170は、図16で説明した処理のうち、削減対象となるクラスタの代表ノードによって実行される処理部であるマスタ部1171と、削減対象となるクラスタの代表ノード以外のノードによって実行される処理部であるスレーブ部1172とで構成される。   As described with reference to FIGS. 15 and 16, the cluster reduction unit 1170 has a function of reducing clusters. This cluster reduction means 1170 is executed by the master unit 1171 which is a processing unit executed by the representative node of the cluster to be reduced and the nodes other than the representative node of the cluster to be reduced among the processes described in FIG. And a slave unit 1172 which is a processing unit.

終末手段1180は、図17および図18で説明したような終末キャッシュノードに関する処理を司る機能を有する。この終末手段1180は、図18で説明した処理のうち、、オリジナルキャッシュノードによって実行される処理部であるマスタ部1181と、それ以外のノードによって実行される処理部であるスレーブ部1182とで構成される。クラスタマップ同期手段1190は、キャッシュノード間でクラスタマップの内容を一致させる処理を司る機能を有する。このクラスタマップ同期手段1190は、図10に示した上位クラスタマップの同期処理を実行する処理部である上位クラスタ部1191と、図4に示した下位クラスタマップの同期処理を実行する処理部である下位クラスタ部1192とで構成される。   The terminal unit 1180 has a function of managing processing related to the terminal cache node as described with reference to FIGS. 17 and 18. The termination means 1180 includes a master unit 1181 that is a processing unit that is executed by the original cache node and a slave unit 1182 that is a processing unit that is executed by other nodes among the processes described in FIG. Is done. The cluster map synchronization unit 1190 has a function of managing the process of matching the contents of the cluster map between cache nodes. The cluster map synchronization means 1190 is a processing unit that executes the upper cluster unit 1191 that is a processing unit that executes the synchronization processing of the upper cluster map shown in FIG. 10 and the synchronization processing of the lower cluster map that is shown in FIG. A lower cluster unit 1192 is included.

以上、本発明の実施の形態および実施例を説明したが、本発明は以上の例に限定されずその他各種の付加変更が可能である。例えば、上記の例では、各クラスタのキャッシュノードは自ノードのグローバルIPアドレスと情報のURLとの対応関係を自ノードが属するNWドメインのDNSサーバに登録したが、自ノードが属するクラスタの代表ノードのグローバルIPアドレスと情報のURLとの対応関係を自ノードが属するNWドメインのDNSサーバに登録するようにしても良い。この場合、自クラスタのキャッシュ情報へのユーザ端末からのアクセス要求は自クラスタの代表ノードに出され、代表ノードがそのアクセス要求を自クラスタ内の何れのノードで処理するかを決定することになる。   As mentioned above, although embodiment and the Example of this invention were described, this invention is not limited to the above example, Various other addition changes are possible. For example, in the above example, the cache node of each cluster registers the correspondence between the global IP address of the own node and the URL of the information in the DNS server of the NW domain to which the own node belongs, but the representative node of the cluster to which the own node belongs. The correspondence relationship between the global IP address and the information URL may be registered in the DNS server of the NW domain to which the own node belongs. In this case, an access request from the user terminal to the cache information of the own cluster is issued to the representative node of the own cluster, and the representative node determines which node in the own cluster will process the access request. .

本発明の活用例としては、通信NW上でのキャッシングを行う、Webサービス、Peer−to−Peerサービス、データストレージなどが挙げられる。   Examples of utilization of the present invention include Web services, peer-to-peer services, data storage, etc. that perform caching on a communication NW.

本発明の一実施例の分散情報配置システムにおける情報の必要度の数値の変化の様子の1例を示す図である。It is a figure which shows one example of the mode of a change of the numerical value of the necessity level of the information in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける新規キャッシュノード追加の様子の1例を示す図である。It is a figure which shows an example of the mode of the new cache node addition in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける新規キャッシュノード追加の様子の1例を示す図である。It is a figure which shows an example of the mode of the new cache node addition in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける新規キャッシュノード追加のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of a new cache node addition in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける新規キャッシュノード追加のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of a new cache node addition in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける、各キャッシュノードが保持する下位クラスタ内用の下位クラスタマップの1例を示す図である。It is a figure which shows an example of the low-order cluster map for low-order clusters which each cache node hold | maintains in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける同一下位クラスタ内のキャッシュノード間の通信の様子の1例を示す図である。It is a figure which shows one example of the mode of communication between the cache nodes in the same low-order cluster in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける同一下位クラスタ内でのアクセスの負荷分散の様子の1例を示す図である。It is a figure which shows an example of the mode of the load distribution of the access in the same low-order cluster in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける同一下位クラスタ内でのアクセスの負荷分散の様子の1例を示す図である。It is a figure which shows an example of the mode of the load distribution of the access in the same low-order cluster in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおけるアクセスの負荷分散のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of the load distribution of the access in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおけるアクセスの負荷分散のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of the load distribution of the access in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける、あるNW距離以上のキャッシュノードからのアクセスが増加することによって、NW距離以上の次数の高いキャッシュノードのキャッシュノード化とそこでの新規下位クラスタ生成が行われる様子の1例を示す図である。In the distributed information arrangement system according to an embodiment of the present invention, an increase in accesses from cache nodes having a certain NW distance or more increases the number of cache nodes having a higher order than the NW distance, and generation of a new lower cluster therein. It is a figure which shows one example of a mode performed. 本発明の一実施例の分散情報配置システムにおける、あるNW距離以上のキャッシュノードからのアクセスが増加することによって、NW距離以上の次数の高いキャッシュノードのキャッシュノード化とそこでの新規下位クラスタ生成が行われる際のフローチャートの1例を示す図である。In the distributed information arrangement system according to an embodiment of the present invention, an increase in accesses from cache nodes having a certain NW distance or more increases the number of cache nodes having a higher order than the NW distance, and generation of a new lower cluster therein. It is a figure which shows an example of the flowchart at the time of being performed. 本発明の一実施例の分散情報配置システムにおける、代表キャッシュノードのみで構成される上位クラスタNWの上位クラスタマップの1例を示す図である。It is a figure which shows an example of the upper cluster map of the upper cluster NW comprised only by a representative cache node in the distributed information arrangement system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける、代表キャッシュノードのみで構成される上位クラスタレベルのNW(上位層)、下位クラスタ内レベルのNW(中間層)、およびノードレベルのNW(最下層)の関係の1例を示す図である。In a distributed information arrangement system according to an embodiment of the present invention, an upper cluster level NW (upper layer), a lower intra-cluster level NW (middle layer), and a node level NW (lowermost layer) configured only by representative cache nodes It is a figure which shows one example of the relationship of). 本発明の一実施例の分散情報配置システムにおけるキャッシュノードの脱退の様子の1例を示す図である。It is a figure which shows one example of the mode of withdrawal of the cache node in the distributed information arrangement system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおけるキャッシュノードの脱退のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of withdrawal of the cache node in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける代表キャッシュノードの脱退のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of withdrawal of the representative cache node in the distributed information arrangement system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける下位クラスタの脱退の様子の1例を示す図である。It is a figure which shows one example of the mode of withdrawal of the low-order cluster in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける下位クラスタの脱退のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of withdrawal of the low-order cluster in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける最後に残ったキャッシュノードの脱退の様子の1例を示す図である。It is a figure which shows one example of the mode of withdrawal of the cache node which remained at the end in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施例の分散情報配置システムにおける最後に残ったキャッシュノードの脱退のフローチャートの1例を示す図である。It is a figure which shows one example of the flowchart of withdrawal of the cache node which remained at the end in the distributed information arrangement | positioning system of one Example of this invention. 本発明の一実施の形態の分散情報配置システムのブロック図である。It is a block diagram of the distributed information arrangement system of one embodiment of this invention. 本発明のノード装置の一実施例のブロック図である。It is a block diagram of one Example of the node apparatus of this invention.

符号の説明Explanation of symbols

1…オリジナルキャッシュノードかつ下位クラスタ2の代表キャッシュノード
2…オリジナルキャッシュノードを含む下位クラスタ
3、3a、3b、3c…アクセスを表すアリ
4、4−2、4−15、4−16…下位クラスタマップ
5…オリジナルキャッシュノード1から一定の距離
6…下位クラスタ2内のキャッシュノード
8…下位クラスタ2内のキャッシュノード
10…オリジナルキャッシュノード1または下位クラスタ2から一定の物理的または論理的距離
10a…代表キャッシュノード11または下位クラスタ15から一定の距離または論理的距離
10b…代表キャッシュノード11または下位クラスタ16から一定の距離または論理的距離
11…新規追加されたキャッシュノードかつ下位クラスタ15の代表キャッシュノード
13…下位クラスタ15内のキャッシュノード
14…新規追加されたキャッシュノードかつ下位クラスタ16の代表キャッシュノード
15…新規追加されたキャッシュノード11が作成した下位クラスタ
16…新規追加されたキャッシュノード14が作成した下位クラスタ
17…各下位クラスタの代表キャッシュノードのみで構成される上位クラスタおよびそのNW
18…上位クラスタ内用のクラスタマップ
19…下位クラスタ15内のキャッシュノード
20…下位クラスタ16内のキャッシュノード
21…下位クラスタ16内のキャッシュノード
31,32,33、34、35、36、37、38、39…DNSサーバ
A…アクセスによる情報の必要度の数値の増加分で、アリ3が運んでいる荷物
B…一般的なノード(キャッシュを行っていないノード)
DESCRIPTION OF SYMBOLS 1 ... Original cache node and representative cache node 2 of lower cluster 2 ... Lower clusters 3, 3a, 3b, 3c including original cache nodes ... Ants 4, 4-2, 4-15, 4-16 representing access Map 5 ... A certain distance 6 from the original cache node 1 ... A cache node 8 in the lower cluster 2 ... A cache node 10 in the lower cluster 2 ... A certain physical or logical distance 10a from the original cache node 1 or the lower cluster 2 ... A certain distance or logical distance 10 b from the representative cache node 11 or the lower cluster 15... A certain distance or logical distance 11 from the representative cache node 11 or the lower cluster 16... A newly added cache node and a representative cache node of the lower cluster 15. 13 Cache node 14 in lower cluster 15 ... newly added cache node and representative cache node 15 in lower cluster 16 ... lower cluster 16 created by newly added cache node 11 ... lower level created by newly added cache node 14 Cluster 17: upper cluster composed of only representative cache nodes of each lower cluster and its NW
18 ... Cluster map for upper cluster 19 ... Cache node 20 in lower cluster 15 ... Cache node 21 in lower cluster 16 ... Cache nodes 31, 32, 33, 34, 35, 36, 37 in lower cluster 16 38, 39 ... DNS server A ... Increase in numerical value of necessity of information by access, baggage B carried by ant 3 ... general node (node not cached)

Claims (19)

データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備えた複数のノード装置がネットワークを介して接続された分散情報配置システムであって、
同一の前記データを前記キャッシュに記憶する1以上の前記ノード装置の集合から構成されるクラスタを備え、
前記クラスタでは、前記集合に含まれる1以上の前記ノード装置のうちの何れか1つが代表ノードとして機能し、
前記代表ノードは、新クラスタ生成条件が成立したか否かを判定する手段と、前記新クラスタ生成条件が成立した場合に、前記データを未だキャッシュしていない他の前記ノード装置に対して、前記データのコピーを添えて新規クラスタの生成指示を送信する手段を備え、
前記新規クラスタの生成指示を受信した前記ノード装置は、前記データのコピーを自ノード装置の前記キャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成する手段を備えることを特徴とする分散情報配置システム。
A distributed information arrangement system in which a plurality of node devices including a cache for storing data and a means for reading the data from the cache and transmitting the data to a terminal device are connected via a network,
A cluster comprising a set of one or more node devices that store the same data in the cache;
In the cluster, any one of the one or more node devices included in the set functions as a representative node,
The representative node is configured to determine whether or not a new cluster generation condition is satisfied, and to the other node device that has not yet cached the data when the new cluster generation condition is satisfied. A means for sending a new cluster generation instruction with a copy of the data is provided,
The node device that has received the new cluster generation instruction includes means for storing a copy of the data in the cache of the own node device and generating a new cluster having the own node device as a representative node. Distributed information placement system.
前記新クラスタ生成条件が成立したか否かを判定する前記手段は、自クラスタ内の各前記ノード装置への前記端末装置からのアクセス情報を収集して監視し、予め定められたネットワーク半径を超える遠くからのアクセスが増大した状況が発生した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項1に記載の分散情報配置システム。   The means for determining whether or not the new cluster generation condition is satisfied collects and monitors access information from the terminal device to each node device in its own cluster, and exceeds a predetermined network radius. 2. The distributed information arrangement system according to claim 1, wherein the new cluster generation condition is determined to be satisfied when a situation occurs in which access from a distance increases. 3. 前記新クラスタ生成条件が成立したか否かを判定する前記手段は、自クラスタに属する前記ノード装置の数が予め定められた最大数に達した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項1に記載の分散情報配置システム。   The means for determining whether or not the new cluster generation condition is satisfied is that the new cluster generation condition is satisfied when the number of node devices belonging to the own cluster reaches a predetermined maximum number. The distributed information arrangement system according to claim 1, wherein the determination is performed. 前記代表ノードは、自クラスタ内の各前記ノード装置の負荷情報を収集して監視し、負荷が高くなった際に、前記データを未だキャッシュしていない他の前記ノード装置に前記データのコピーを送信して当該ノード装置を自クラスタの新たな構成メンバに加える処理を行うことを特徴とする請求項1乃至3の何れか1項に記載の分散情報配置システム。   The representative node collects and monitors the load information of each of the node devices in its own cluster, and when the load becomes high, copies the data to other node devices that have not yet cached the data. The distributed information arrangement system according to any one of claims 1 to 3, wherein a process of transmitting and adding the node device to a new member of the own cluster is performed. 前記代表ノードは、自クラスタ内の各前記ノード装置の負荷情報を収集して監視し、負荷が低くなった際に、自クラスタ内の幾つかの構成メンバに対して前記データのキャッシュを削除する指示を送信して当該ノード装置を自クラスタの構成メンバから外す処理を行うことを特徴とする請求項1乃至3の何れか1項に記載の分散情報配置システム。   The representative node collects and monitors load information of each of the node devices in the own cluster, and deletes the data cache for several constituent members in the own cluster when the load becomes low. The distributed information arrangement system according to any one of claims 1 to 3, wherein an instruction is transmitted to perform processing for removing the node device from a member of the own cluster. 新たに生成された前記クラスタの前記代表ノードは、自クラスタに属する前記ノード装置が自ノードだけになり、且つ、自ノードに対する前記端末装置からのアクセス頻度が低下した場合に、自クラスタを消滅させる処理を行うことを特徴とする請求項1乃至5の何れか1項に記載の分散情報配置システム。   The representative node of the newly generated cluster will extinguish its own cluster when the node device belonging to its own cluster is only its own node and the access frequency from the terminal device to the own node decreases. 6. The distributed information arrangement system according to claim 1, wherein processing is performed. 前記データのオリジナルを保有する前記ノード装置を含むクラスタ以外で最終的に残ったクラスタにおいて、最終的に残った前記ノード装置である終末ノードでも前記端末装置からのアクセス頻度が低下した場合は、前記終末ノードと前記データのオリジナルを保有する前記ノード装置との間で、前記終末ノードにおけるキャッシュデータの維持および破棄に関するネゴシエーションを行い、両者で合意が得られた場合、前記終末ノードにおいて前記データのキャッシュを保持し続けることを特徴とする請求項6に記載の分散情報配置システム。   In the cluster that finally remains other than the cluster that includes the node device that holds the original data, if the access frequency from the terminal device decreases even in the terminal node that is the node device that finally remains, When the end node and the node device that owns the original of the data negotiate the maintenance and destruction of the cache data in the end node, and if both agree, the end node caches the data The distributed information arrangement system according to claim 6, wherein the distributed information arrangement system is maintained. 前記クラスタは、前記同一の提供データに対する前記端末装置からのアクセスに係る負荷を自クラスタに含まれる1以上の前記ノード装置間で分散する機能を有することを特徴とする請求項1乃至6の何れか1項に記載の分散情報配置システム。   7. The cluster according to claim 1, wherein the cluster has a function of distributing a load related to access from the terminal device to the same provided data among the one or more node devices included in the own cluster. The distributed information arrangement system according to claim 1. データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備えるネットワーク上のノード装置のうち、同一のデータを前記キャッシュに記憶する1以上の前記ノード装置の集合で1つのクラスタを形成するステップと、
前記クラスタを構成する1以上の前記ノード装置のうちの代表ノードとして機能するノード装置が、新クラスタ生成条件が成立したか否かを判定し、前記新クラスタ生成条件が成立した場合に、前記データを未だキャッシュしていない他の前記ノード装置に対して、前記データのコピーを添えて新規クラスタの生成指示を送信するステップと、
前記新規クラスタの生成指示を受信した前記ノード装置が、前記データのコピーを自ノード装置の前記キャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成するステップとを含むことを特徴とする分散情報配置方法。
Among node devices on a network including a cache for storing data and means for reading the data from the cache and transmitting the data to a terminal device, one set of one or more node devices that store the same data in the cache. Forming two clusters;
A node device functioning as a representative node among the one or more node devices constituting the cluster determines whether or not a new cluster generation condition is satisfied, and when the new cluster generation condition is satisfied, the data Sending a new cluster generation instruction with a copy of the data to the other node devices that have not yet cached,
The node device that has received the new cluster generation instruction stores a copy of the data in the cache of the own node device, and generates a new cluster having the own node device as a representative node. Distributed information arrangement method.
前記代表ノードが、自クラスタ内の各前記ノード装置への前記端末装置からのアクセス情報を収集して監視し、予め定められたネットワーク半径を超える遠くからのアクセスが増大した状況が発生した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項9に記載の分散情報配置方法。   When the representative node collects and monitors access information from the terminal device to each of the node devices in its own cluster, and a situation occurs in which access from a distance exceeding a predetermined network radius occurs. 10. The distributed information arrangement method according to claim 9, wherein it is determined that the new cluster generation condition is satisfied. 前記代表ノードが、自クラスタに属する前記ノード装置の数が予め定められた最大数に達した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項9に記載の分散情報配置方法。   The said representative node determines with the said new cluster production | generation conditions having been satisfied, when the number of the said node apparatuses which belong to a self-cluster reaches the predetermined maximum number. Distributed information placement method. データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備え、同一の前記データを前記キャッシュに記憶する他のノード装置と一緒に1つのクラスタを形成し、前記クラスタの代表ノードとして機能するノード装置であって、
新クラスタ生成条件が成立したか否かを判定する手段と、前記新クラスタ生成条件が成立した場合に、前記データを未だキャッシュしていない他の前記ノード装置に対して、前記データのコピーを添えて新規クラスタの生成指示を送信する手段とを備えることを特徴とするノード装置。
A cache for storing data, and means for reading the data from the cache and transmitting the data to a terminal device, and forming a cluster together with other node devices for storing the same data in the cache, A node device that functions as a representative node of
Means for determining whether or not a new cluster generation condition is satisfied; and when the new cluster generation condition is satisfied, a copy of the data is attached to another node device that has not yet cached the data. And a means for transmitting a new cluster generation instruction.
前記新クラスタ生成条件が成立したか否かを判定する前記手段は、自クラスタ内の前記ノード装置への前記端末装置からのアクセス情報を収集して監視し、予め定められたネットワーク半径を超える遠くからのアクセスが増大した状況が発生した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項12に記載のノード装置。   The means for determining whether or not the new cluster generation condition is satisfied collects and monitors access information from the terminal device to the node device in its own cluster, and exceeds a predetermined network radius. 13. The node device according to claim 12, wherein when a situation occurs in which access from the network increases, it is determined that the new cluster generation condition is satisfied. 前記新クラスタ生成条件が成立したか否かを判定する前記手段は、自クラスタに属する前記ノード装置の数が予め定められた最大数に達した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項12に記載のノード装置。   The means for determining whether or not the new cluster generation condition is satisfied is that the new cluster generation condition is satisfied when the number of node devices belonging to the own cluster reaches a predetermined maximum number. The node device according to claim 12, wherein the node device is determined. データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備えたノード装置であって、新クラスタ生成条件が成立したクラスタの代表ノードから新規クラスタの生成指示を受信した場合に、該受信した新規クラスタの生成指示に添付されたデータのコピーを自ノード装置の前記キャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成する手段を備えることを特徴とするノード装置。   A node device comprising a cache for storing data and means for reading the data from the cache and transmitting the data to a terminal device, wherein a new cluster generation instruction has been received from a representative node of a cluster for which a new cluster generation condition has been satisfied A copy of the data attached to the received new cluster generation instruction is stored in the cache of the own node device, and a means for generating a new cluster having the own node device as a representative node is provided. Node device to perform. データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備え、同一の前記データを前記キャッシュに記憶する他のノード装置と一緒に1つのクラスタを形成し、前記クラスタの代表ノードとして機能するノード装置を構成するコンピュータを、
新クラスタ生成条件が成立したか否かを判定する手段と、前記新クラスタ生成条件が成立した場合に、前記データを未だキャッシュしていない他の前記ノード装置に対して、前記データのコピーを添えて新規クラスタの生成指示を送信する手段として機能させるためのプログラム。
A cache for storing data, and means for reading the data from the cache and transmitting the data to a terminal device, and forming a cluster together with other node devices for storing the same data in the cache, A computer constituting a node device functioning as a representative node of
Means for determining whether or not a new cluster generation condition is satisfied; and when the new cluster generation condition is satisfied, a copy of the data is attached to another node device that has not yet cached the data. To function as a means for transmitting a new cluster generation instruction.
前記新クラスタ生成条件が成立したか否かを判定する前記手段は、自クラスタ内の各前記ノード装置への前記端末装置からのアクセス情報を収集して監視し、予め定められたネットワーク半径を超える遠くからのアクセスが増大した状況が発生した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項16に記載のプログラム。   The means for determining whether or not the new cluster generation condition is satisfied collects and monitors access information from the terminal device to each node device in its own cluster, and exceeds a predetermined network radius. The program according to claim 16, wherein it is determined that the new cluster generation condition is satisfied when a situation occurs in which access from a distance increases. 前記新クラスタ生成条件が成立したか否かを判定する前記手段は、自クラスタに属する前記ノード装置の数が予め定められた最大数に達した場合に、前記新クラスタ生成条件が成立したものと判定することを特徴とする請求項16に記載のプログラム。   The means for determining whether or not the new cluster generation condition is satisfied is that the new cluster generation condition is satisfied when the number of node devices belonging to the own cluster reaches a predetermined maximum number. The program according to claim 16, wherein the program is determined. データを記憶するキャッシュと該キャッシュから前記データを読み出して端末装置に送信する手段とを備えたノード装置を構成するコンピュータを、新クラスタ生成条件が成立したクラスタの代表ノードから新規クラスタの生成指示を受信した場合に、該受信した新規クラスタの生成指示に添付されたデータのコピーを自ノード装置の前記キャッシュに記憶し、自ノード装置を代表ノードとする新たなクラスタを生成する手段として機能させるためのプログラム。   A computer constituting a node device comprising a cache for storing data and a means for reading the data from the cache and transmitting the data to the terminal device is instructed to generate a new cluster from a representative node of the cluster that satisfies the new cluster generation condition. When received, a copy of the data attached to the received new cluster generation instruction is stored in the cache of the own node device, and functions as a means for generating a new cluster with the own node device as a representative node. Program.
JP2008170115A 2008-06-30 2008-06-30 Distributed information arrangement system Withdrawn JP2010009448A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008170115A JP2010009448A (en) 2008-06-30 2008-06-30 Distributed information arrangement system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008170115A JP2010009448A (en) 2008-06-30 2008-06-30 Distributed information arrangement system

Publications (1)

Publication Number Publication Date
JP2010009448A true JP2010009448A (en) 2010-01-14

Family

ID=41589829

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008170115A Withdrawn JP2010009448A (en) 2008-06-30 2008-06-30 Distributed information arrangement system

Country Status (1)

Country Link
JP (1) JP2010009448A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012049966A (en) * 2010-08-30 2012-03-08 Brother Ind Ltd Distributed preservation system, representative node device, notification method and program
WO2013047207A1 (en) * 2011-09-30 2013-04-04 日本電気株式会社 Cache system, cache method, and cache server
JP2015535633A (en) * 2012-11-26 2015-12-14 アマゾン テクノロジーズ インコーポレイテッド Distributed cache cluster management
US9529772B1 (en) 2012-11-26 2016-12-27 Amazon Technologies, Inc. Distributed caching cluster configuration
US9602614B1 (en) 2012-11-26 2017-03-21 Amazon Technologies, Inc. Distributed caching cluster client configuration

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012049966A (en) * 2010-08-30 2012-03-08 Brother Ind Ltd Distributed preservation system, representative node device, notification method and program
WO2013047207A1 (en) * 2011-09-30 2013-04-04 日本電気株式会社 Cache system, cache method, and cache server
JPWO2013047207A1 (en) * 2011-09-30 2015-03-26 日本電気株式会社 Cache system, cache method, and cache server
JP2015535633A (en) * 2012-11-26 2015-12-14 アマゾン テクノロジーズ インコーポレイテッド Distributed cache cluster management
US9529772B1 (en) 2012-11-26 2016-12-27 Amazon Technologies, Inc. Distributed caching cluster configuration
US9602614B1 (en) 2012-11-26 2017-03-21 Amazon Technologies, Inc. Distributed caching cluster client configuration
JP2017208128A (en) * 2012-11-26 2017-11-24 アマゾン テクノロジーズ インコーポレイテッド Distributed caching cluster management
US9847907B2 (en) 2012-11-26 2017-12-19 Amazon Technologies, Inc. Distributed caching cluster management
US10462250B2 (en) 2012-11-26 2019-10-29 Amazon Technologies, Inc. Distributed caching cluster client configuration

Similar Documents

Publication Publication Date Title
CN105409248B (en) System and method for enhancing discovery
US9635107B2 (en) System and method for managing data delivery in a peer-to-peer network
CN112840322A (en) Single node and multi-node data storage library architecture in a network routing environment
WO2010107105A1 (en) Network system
KR101980129B1 (en) Peer-to-peer network system with manageability
KR101942566B1 (en) Method for transmitting and caching information data in secure surveilance network, recordable medium, apparatus for caching information data in secure surveilance network, and secure surveilance network system
US8250171B2 (en) Content delivery apparatus, content delivery method, and content delivery program
JP2010009449A (en) Distributed information arrangement system
CN103703738A (en) System for managing audio/video streams using application layer structures in an avb network
US10356209B2 (en) System and method to support context-aware content requests in information centric networks
EP2856355B1 (en) Service-aware distributed hash table routing
JPWO2013157042A1 (en) Information processing system, management server group, and server management program
JP2010009448A (en) Distributed information arrangement system
JP5845877B2 (en) Information processing apparatus, data control method, and data control program
JP2016111703A (en) Content arrangement in information centric network
CN105164989A (en) Reducing number of server-client sessions
JP2011211543A (en) Information communication system, information processing device, information processing method, and information processing program
JP5136581B2 (en) Information communication system, information processing apparatus, information processing method, and information processing program
US20230412471A1 (en) Edge-based artificial intelligence enablement
JP2010113460A (en) Content distribution support system, method, and program
JP2011010288A (en) Distributed storage system, connection information notifying method of the same, and program
CN110611688B (en) Method, electronic device and computer program product for searching nodes
JP2007184669A (en) Contents distribution system, terminal and information processing method thereof, and program thereof
JP2013105227A (en) P2p type web proxy network system
KR20180136845A (en) Method for transmitting packet, applying aco, in secure surveilance network, apparatus for transmitting packet in secure surveilance network, and icn secure surveilance system applying aco

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20091016

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20091016

A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20110906