The entire disclosures of Japanese Patent Application No. 2007-076015 filed on Mar. 23, 2007 including the specification, claims, drawings and summary are incorporated herein by reference in its entirety.
1. Field of the Invention
The present invention relates to a peer to peer (P2P) type communication system including a plurality of node devices mutually communicable through a network.
2. Discussion of Related Art
As this kind of peer to peer type communication system, a distributed content storing system in which a replica (copied data) of content data is distributed and located (distribution storing) into a plurality of node devices is known. By using this system, fault tolerance and property of distributing accesses is enhanced. Location of the replica of content data thus distributed and stored can be efficiently searched for by use of a distributed hash table (hereinafter referred to as “DHT”) as shown in Japanese Unexamined Patent Publication No. 2006-197400. The DHT is stored by each node device and in the DHT, node information indicating a plurality of node devices to be transfer destinations of various types of messages (for example, including IP addresses and port numbers) are registered.
Then, in a case where a node devices participating in a content distribution storing system requests acquisition of desired content data, a message (query) for searching for (finding) location of a replica of the content data is transmitted to another node device. The message is transferred by a relay node device to a node device which manages location of the replica of the content data in accordance with the DHT and finally information indicating the location is acquired from the node device which manages the location of the replica of the content data. Thus, the node device which has transmitted the message requests the replica of the content data thus searched to a node device storing the replica of the content data and can receive the replica of the content data.
Meanwhile, there is a case where many node devices are connected to one line included in a network of such a distributed content storing system through a relay device such as a router. Therefore, for example depending on time, many node devices share one line. In such a case, load of the network and the relay device such as a router is increased, and therefore it is not preferable.
The present invention has been made in consideration of the above problem, and the object of the present invention is to provide a distributed content storing system, a node device, a node process program, and a content data providing method which enables to reduce load in a network and a relay device such as a router even in a case where many node devices are connected to one line included in the network.
In order to solve the above problems, according to the invention recited in Claim 1, there is provided a node device included in a distributed content storing system which includes a plurality of node devices enabled to mutually communicated through a network, the plurality of node devices including a plurality of content data distributed and stored therein, the node device including:
a storing request receiving means for receiving storing request information indicative of storing request of the content data;
a standard judgment means for judging whether or not a standard for determining a degree of load of the network in response to the storing request information; and
a content data acquisition means for acquiring and storing content data related to the storing request information from another node device storing the content data through the network in a case where the standard is satisfied.
According to the invention, in a case where the node device receives storing request information indicative of storing request of the content data, it is judged whether or not a standard of determining a degree of load in the network is satisfied. In a case where the standard is satisfied, it is constructed to acquire and store the content data from another node device, storing the content data related to the storing request information, through the network. Therefore, even in a case where many node devices are connected through a relay device such as a router to one line constructing the network, it is possible to reduce load on the network and the relay device.
According to the present invention, a node device judges whether or not a standard for determining a degree of load of the network is satisfied. In a case where the standard is satisfied, content data are acquired or transmitted to the other node device through the network. Therefore, even in a case where many node devices are connected to one line included in the network through a relay device such as a router, it is possible to reduce the load of the network and the relay device.
Hereinafter, each designation of numerical reference in the drawings is typically as follows:
Hereinafter, an embodiment of the present invention will be described in reference of figures. Here, the embodiment explained below is an embodiment in a case where the present invention is applied to a distributed content storing system.
First of all, with reference to
As shown in lower rectangular frame 101 in
In such a network 8, a plurality of node devices (hereinafter referred to as a “node”) Nn (n=any one of 1, 2, 3, . . . ) are connected. Moreover, as shown in the DSL line provider 5a of
A unique manufacturing number and an internet protocol (IP) address are assigned to each of the nodes Nn. Such manufacturing numbers and IP addresses do not overlap among a plurality of nodes Nn.
Then, the distributed content storing system S according to the present embodiment is a peer to peer type network system formed by participation of any plurality of nodes Nn of these nodes Nn, as shown in upper rectangular 100 of
Then, each of the nodes Nn participating in the distributed content storing system S (in other words, the overlay network 9) has a node ID allocated as inherent identification information as many as a predetermined number of digit. For example, the node ID is a hashed value obtained by hashing an IP address or manufacturing number (e.g. bit length is 160 bit), individually allocated to each of the nodes, by a common hash function (e.g. SHA-1), whereby the nodes are distributed and located in one ID space without deviation, as shown in
Participation into the distributed content storing system S is done when a node Nn which not participating in it (for example, a node N8) transmits a participation message indicative of a participation request to an arbitrary node Nn already participating in the system (e.g. a contact node always participating in the system S).
As described above, the node ID obtained by a common hash function (hashed) has a very low possibility of having the same value if the IP address or the manufacturing number differs. It is required for the node ID to have a bit number enough to include maximum operation number of nodes. For example, when the number is a 128-bit number, the node can operate 2̂128=340×10̂36 nodes.
Moreover, each of nodes Nn retains a routing table using DHT. The routing table regulates transfer destination of various types of messages on the distributed content storing system S. Specifically, in the DHT, a plurality of node information including a node ID and IP address, port number, or the like of other nodes Nn which are appropriately apart in the ID space are registered.
One node Nn participating in the distributed content storing system S registers node information of minimum and necessary nodes Nn of all the nodes Nn participating in the system S in the routing table. With respect to a node Nn with its node information not known (not registered), various types of messages are transferred between each nodes Nn and delivered.
Here, with reference to
Here, in the examples of
In the example of
Then, for example, provided that a node ID of a node N2 is “122”, as shown in
Moreover, in the table of the node N2 in 12X area (an area where the own node N2 exists) in level 2, as shown in
Further, in level 3 of the node N2, node IDs which are between “120” and “122”, IP addresses, and the like (because IP address belongs to the own node N2, registration of the IP address in the routing table is not required) are registered, as shown in
In the examples of
As described above, in a routing table of DHT in the present embodiment, the higher the level becomes, the narrower the area becomes.
Such DHT is given when a non-participant node participates in the distributed content storing system S.
Meanwhile, copied data (hereinafter referred to as a “replica”) of each of various content data (for example, movie, music, or the like) are distributed and saved (stored) in a plurality of nodes Nn in the distributed content storing system S.
For example, a replica of content data of a movie having a title of XXX is stored in nodes N1 and N5. Meanwhile, a replica of content data of a movie having a title of YYY is stored in a node N3. In such a manner, replicas of content data are distributed in a plurality of nodes Nn (hereinafter referred to as a “content retention node”) to be stored.
Moreover, to each of these replicas of content data, information such as a content name (title) and a content ID (identification information unique to each content) are added. The content ID is generated by, for example, hashing content name+arbitrary numerical value (or upper some bytes of the content data) by the hash function commonly used to obtain the node ID (allocated in the same ID space as the node ID). Alternatively, a system operator may give a unique ID value (same bit length as a node ID) to each content. In this case, content catalog information describing association between a content name and a content ID is distributed to all the nodes Nn.
Further, location of a replica of content data thus distributed and stored, that is, index information including a pair of an IP address or the like of a node Nn storing the replica of the content data and a content ID corresponding to the content data is stored (saved in index cache) and managed by a node Nn which manages location of the replica of the content data (hereinafter referred to as a “root node” or a “root node of the content (content ID)”).
For example, index information regarding a replica of content data of a movie having a title of XXX is managed by a node N4, being a root node of the content (content ID) and index information regarding a replica of content data of a movie having a title of YYY, is managed by a node N6 being a root node of the content (content ID) (i.e. location of a replica is managed for each content data).
In other words, because root nodes are divided with respect to each content, load is distributed. Moreover, even in a case where replicas of one same (same content) content data (same content ID) are stored in a plurality of content retention nodes, index information of such content data can be managed by one root node. Therefore, each root node recognizes a number of replicas of content data and location of the replicas is managed by the own root node in the distributed content storing system S (in other words, number of content retention nodes storing the replica).
Moreover, such a root node is set to be a node Nn having anode ID closest to, for example, a content ID (e.g. upper digits match the most).
Then, in a case where a user of a node Nn wants to acquire desired content data, the node Nn wanting to acquire the content data (hereinafter referred to as an “user node”) generates a content location inquiry (search) message (query) including a content ID of content data selected by the user (e.g. selected from content catalog information delivered to all the nodes Nn (wherein a content name, a content ID and the like are described and managed by, for example, a content catalog management server (not shown)) (for example a content name is selected) and transmits the message to another node Nn according to a routing table using DHT of the own node. That is, the user node transmits a content location inquiry (search) message to a root node (destination of the message is the root node). Thus, the content location inquiry (search) message finally reaches the root node by DHT routing using a content ID as a key.
Here, the user node also transmits a content location inquiry (search) message (query) to a root node in a case where a content input request (storing request) message (including a content name and a content ID of specific new content data) is received from, for example, a content management server of a system operator or the like as well as a case where a content name or the like is selected from the content catalog information by the user. The content input request (storing request) message (also referred to as a preliminary push message) is delivered to a plurality of arbitrary nodes Nn so that a predetermined number of replicas of new content data (content data before being publicized by content catalog information) are ensured (saved) in the distributed content storing system S. Then, when a predetermined number or more of replicas are stored in the distributed content storing system S, content catalog information in which the content name and the content ID of the new content data are described is delivered to each node Nn (the new content data is publicized by this). Alternatively, content catalog information in which attribute information of new content data to be newly inputted may be delivered to all the nodes Nn in advance. In this case, a release date of the new content data is set in the content catalog information and the content catalog information will not be publicized to (used by) a user of each node Nn until the release date. After the release date, the new content data can be requested by all the nodes Nn other than each node Nn which stored the new content data in advance in response to the input request.
Moreover, a content ID included in the content location inquiry (search) message may be generated by hashing a content name with the common hash function using the user node.
In the example of
Meanwhile, the node N3 receives the content location inquiry (search) message, refers to a table of level 2 of the own DHT, acquires an IPaddress and a port number of, for example, a node N4 having a node ID closest to a content ID included in the content location inquiry (search) message (e.g. upper digits match the most), and transfers the content location inquiry (search) message to the IP address and the port number.
On the contrary thereto, the node N4 receives the content location inquiry (search) message, refers to a table of level 3 of the own DHT, and recognizes that a node having a node ID closest (e.g. upper digits match the most) to the content ID included in the content location inquiry (search) message is the node N4 itself. In other words, the node N4 recognizes that a root node of the content ID is the node N4 itself. Then, the node N4 acquires index information corresponding to the content ID included in the content location inquiry (search) message from an index cache and replies the index information to the user node which transmitted the content location inquiry (search) message. Thus, the user node can transmit a content transmission request message to the content retention node, for example a node N1, storing a replica of desired content data and receive a replica of the content data.
Alternatively, the node N4 being a root node transmits a content transmission request message (request information including an IP address or the like of a user node indicating transmission request of a replica of content data to the user node) to a content retention node indicated by the IP address or the like included in the index information. Thus, the user node can receive a replica of the content data from, for example, the node N1 being the content retention node.
Regarding content data having a small number of replicas distributed and stored in the distributed content storing system S (number of content retention nodes storing the replica is small), even in a case where a user node transmits the above-mentioned content location inquiry (search) message (query) to the root node, there may be a case where a reply (transmission of index information) from the root node cannot be acquired quickly due to increased load of a node Nn or the network 8 (for example, a long time is required until receiving a reply or no reply is received) or a case where content data cannot be quickly provided from a content retention node storing a replica of the content data (e.g. much time is required for downloading). In such a case, though each node Nn can access a content management server storing and managing all the content data and acquire the replica, it is preferable to transmit and receive a replica of content data between nodes Nn without applying load to the content management server as much as possible.
Here, the user node may acquire (receive) the index information from a relay node (e.g. cache node of a node N3) which caches the index information same as one of a root node before the content location inquiry message reaches the root node.
The user node which acquired and stored the replica of content data in such a manner generates a publish (registration notification) message including a content ID of the content data and own IP address or the like (since the replica of content data is stored, a registration message indicating a request for registration of the IP address or the like) and transmits the publish message to a root node to thereby notify the root node that the replica is stored (i.e. to publicize that the user node retains the replica of the content data to other nodes Nn participating in the system S). Thus, the publish message reaches the root node by DHT routing using a content ID as a key in a similar manner as a content location inquiry (search) message. The root node registers index information including a pair of the IP address or the like and the content ID included in the received publish message (stores in index cache area) Thus, the user node newly becomes a content retention node retaining a replica of the content data.
Here, the index information including a pair of IP address or the like and content ID included in the publish message is registered (cached) in a relay node on a transfer route to the root node.
Next, with reference to
Each of the node Nn is configured by including, as shown in
In such the configuration, when CPU in the control unit 11 reads out and carries out a program stored in the storage unit 12 or the like, the control unit 11 controls its entirety, carries out a process as any one of the above-mentioned user node, a relay node, a root node, a cache node, and a content retention node by participating in the distributed content storing system S, and functions as a storing request receiving means, a standard judgment means, a content data acquisition means, a load information acquisition means, a node number information acquisition means, a measuring means, a consumption band information acquisition means, a storing request information transfer means and the like according to the present invention as the user node. Moreover, the control unit 11 functions as a provision request receiving means, a standard judgment means, a content data providing means, a load information acquisition means, a node number information acquisition means, a measuring means, a consumption band information acquisition means and the like according to the present invention as a content retention node.
Specifically, in a case where the control unit 11 of a user node receives a storing request (storing request information) of content data (e.g. in a case where a content search instruction of content data selected through the input unit 21 by a user on the basis of content catalog information is received or in a case where a content input request (storing request) message from a content management server is received), in response to the storing request information, whether or not a standard for determining a degree of load of the network 8 is satisfied is judged to judge whether or not there is usage restriction of the system S.
Here, as a standard for determining a degree of load of the network 8 or the like, for example, usage restriction time of the distributed content storing system S (e.g. between 21:00 and 03:00 which many users use the distributed content storing system S), volume of load of a router to which the own node Nn is connected (an example of a relay device connected to each of a plurality of nodes Nn including the own node Nn and the network 8 for relaying data. Other than this, a bridge, a repeater, a switch or the like is conceivable.), a total number of nodes Nn connected to a router to which the own node Nn is connected, reply time from another node Nn (or a server), consumption band of a line in the network 8 to which the own node Nn is connected, and the like are included.
Then, the control unit 11 transmits a content location inquiry (search) message (query) including a content ID of content data regarding the storing request information and IP address and the like of the own node to a root node, as mentioned above, when the above-mentioned standard is satisfied (e.g. any one or two or more of the following are satisfied: a case where the present time is not in the usage restriction time of the distributed content storing system S; a volume of load of the router does not exceed a previously set standard; a total number of a node Nn connected to the above-mentioned router does not exceed a previously set standard number; a reply time from another node Nn does not exceed previously set standard time; and a consumption band of a line to which the own node Nn is connected does not exceed a previously set standard value) (it is judged that there is restriction of usage of the system S) and a replica of the content data is acquired and stored from another node Nn being a content retention node storing the replica (in other words, when the above-mentioned standard is not satisfied, a replica of the content data is not acquired). Thus, it is possible to reduce load of the network 8 and the router.
Moreover, in a case where the control unit 11 of a content retention node receives provision request information indicative of a provision request of content data from another node Nn being a user node (e.g. in a case where the above-mentioned content transmission request message is received), it is judged whether or not a standard for determining a degree of load of the network 8 is satisfied in response to the provision request information (similarly to the case of the user node). In a case where it is judged that the standard is satisfied (it is judged that there is usage restriction of the system S), as mentioned above, a replica of content data regarding the provision request information is transmitted to the user node through the network 8 (in other words, in a case where the standard is not satisfied, the replica of the content data is not transmitted).
For example, the above-mentioned node process program may be downloaded from a predetermined server of the network 8 or may be recorded in a recording medium such as a CD-ROM and read out through a drive unit of the recording medium.
Next, operation of the distributed content storing system S will be explained with reference to
Process shown in
When participation process into the distributed content storing system S is thus completed, the control unit 11 finishes the process in a case where an instruction to turn off the power (e.g. a power off operation instruction through the input unit 21 from a user) (Step S1: YES) is received. On the other hand, in a case where the instruction to turn off the power is not received (Step S1: NO), the control unit 11 judges whether or not a content search instruction is received from the user through the input unit 21 (Step S2). In a case where the content search instruction is received from the user (e.g. in a case where the user selects a content name or the like of desired content data by the input unit 21 from content catalog information shown on the display unit 12 to give a content search instruction) (Step S2: YES), the process proceeds to Step S3. In a case where the content search instruction is not received (Step S2: NO), the process proceeds to Step S7.
In Step S3, a system usage restriction judgment process is performed as a user node. Examples thereof include process shown in
For example, in the system usage restriction judgment process shown in
Moreover, in the system usage restriction judgment process shown in
Further, in the system usage restriction judgment process of
Further, in the system usage restriction judgment process shown in
Further, in the system usage restriction judgment process of
Here, a combination of any of process in
Next, the control unit 11 judges whether or not the return value of the system usage restriction judgment process is “T” in Step S4 shown in
In Step S5, the control unit 11 executes content data acquisition process and the process proceeds to Step S7.
In the content data acquisition process, the control unit 11 carries out content location inquiry (search) process as shown in
Next, the control unit 11 sets a transmission (download) interval of a replica and a volume of data in one download (Step S52) and transmits a content transmission request message including information specifying the transmission interval and data volume thus set to a content retention node on the basis of an IP address or the like included in the index information thus acquired (Step S53). In response thereto, the content retention node transmits a replica of content data specified by the content transmission request message to the user node. At this time, the content retention node divides the replica by the data volume (block) thus specified and transmits with a transmission interval thus specified by the content transmission request message.
Then, each block transmitted from a content retention node is received through the communication unit 20 and is accumulated in the buffer memory 13. The control unit 11 causes data of the block to be stored and stored in the storage unit 12 from the buffer memory 13 when a predetermined amount of data of the block are accumulated in the buffer memory 13 (e.g. writes the data in a predetermined area of an HD) (Step S54). Thus, data of the block are sequentially stored and stored in the storage unit 12 from the buffer memory 13.
Next, the control unit 11 judges whether or not all the blocks included in a replica are accumulated, saved, and stored (Step S55). In a case where all the blocks are not saved and stored (Step S55: NO), the process returns to Step S54 to continue the process. In a case where all the blocks are saved and stored (Step S55: YES), the process proceeds to Step S56. Here, in a case where data volume of the replica is small, the data may be saved and stored in the storage unit 12 after all the blocks are accumulated in the buffer memory 13.
Next, the control unit 11 transmits the above-mentioned publish message including a content ID of content data regarding the replica thus saved to another node Nn according to a routing table using own DHT (transmits to a root node of the content ID) (Step S56). Then the process returns to one in
In Step S6, a process in system usage restriction time is carried out as a user node. Examples thereof include process shown in
For example, in the process at a system usage restriction time shown in
Moreover, in the process at a system usage restriction time shown in
Here, the control unit 11 may specify another node Nn randomly from the routing table using own DHT and transmit a content input request message to the another node Nn without generating a random node ID.
Moreover, as another example during the system usage restriction time, the control unit 11 may lower acquisition (download) speed of content data per a unit time and acquire and save a replica of the content data from the content retention node. In this case, in the above-mentioned Step S6, content data acquisition process shown in
After the above-mentioned process when system usage is restricted is carried out, the process proceeds to Step S7.
Next, in Step S7, the control unit 11 judges whether or not a message transmitted from another node Nn is received. In a case where the message is not received (Step S7: NO), the process proceeds to Step S9. In a case where the message is received (Step S7: YES), the process proceeds to Step S8 to carry out message receiving process.
In the message receiving process, as shown in
In Step S85, the control unit 11 transfers the content location inquiry message thus received to another node Nn (i.e. a node Nn having a node ID closest to the content ID included in the content location inquiry message) according to a routing table using own DHT (transmits to a root node of the content ID) and the process returns to the process shown in
In Step S86, the control unit 11 judges whether or not the message thus received is a content input request message. In a case where the message is not a content input request message (Step S86: NO), the process proceeds to Step S91. On the other hand, in a case where the message is a content input request message (Step S86: YES), similarly to the above-mentioned Step S3, the system usage restriction judgment process (one of any of process shown in
Subsequently, the control unit 11 judges whether or not a return value of the system usage restriction judgment process is “T” (Step S88). In a case where the return value is “T” (Step S88: YES), similarly to the above-mentioned Step S5, content acquisition process is carried out (Step S89). In a case where the return value is not “T” (return value is “F”) (Step S88: NO), similarly to the above-mentioned Step S6, process when system usage is restricted is carried out (Step S90) and the process returns to the process shown in
In Step S91, the control unit 11 judges whether or not the message thus received is a content transmission request message. In a case where the message is not a content transmission request message (Step S91: NO), the process goes to Step S96. On the other hand, in a case where the message is a content transmission request message (Step S91: YES), the system usage restriction judgment process (one of any of process shown in
Here, in a case where the system usage restriction judgment process is carried out as a content retention node, a standard (a standard volume, a standard number, a standard time, a standard value) may be set more moderate than in a case where the system usage restriction judgment process is carried out as a user node. For example, in a case where process of
Next, the control unit 11 judges whether or not a return value of the system usage restriction judgment process is “T” (Step S93). In a case where the return value is “T” (Step S93: YES), content data provision (upload) process is carried out (Step S94), and the process returns to process shown in
On the other hand, in a case where the return value is not “T” (Step S93: NO), the control unit 11 transmits a provision disabled message indicating that transmission (provision) of a replica of content data cannot be carried out to a user node being the transmitter of the content transmission request message through the communication unit 20 or the like (Step S95) and the process returns to process shown in
In Step S96, the control unit 11 judges whether or not the message thus received is a publish message. In a case where the message is not a publish message (Step S96: NO), the process goes to Step S100. On the other hand, in a case where the message is a publish message (Step S96: YES), index information including a pair of an IP address or the like and a content ID included in the publish message thus received is registered (saved in index cache area) (Step S97).
Subsequently, the control unit 11 judges whether or not the own node is a root node, similarly to the above-mentioned Step S84 (Step S98). In a case where the own node is not a root node (i.e. own node is a relay node) (Step S98: NO), the process proceeds to Step S99. In a case where the own node is a root node (Step S98: YES), the process returns to process shown in
In Step S99, the control unit 11 transfers the publish message thus received to another node Nn according to own routing table (i.e. a node having a node ID closest to the content ID included in the publish message) (transmits to a root node of the content ID). Then the process returns to process shown in
Here, regarding other message receiving process in Step S100, process in a case where other message (e.g. a participation message) is received is carried out.
Next, in Step S9 shown in
Then, the control unit 11 judges whether or not a return value of the system usage restriction judgment process is “T” (Step S10). In a case where the return value is “T” (that is, when a standard is satisfied and system usage is not restricted) (Step S10: YES), the process goes to Step S11. In a case where the return value is not “T” (Step S10: NO), the process goes to Step S13.
In Step S1, the control unit 11 judges whether or not a content name and a content ID of content data is registered in a content registration list (registered in above-mentioned Step S6 or Step S90). In a case where the content name and the content ID are not registered (Step S11: NO), the process goes to Step S13. In a case where the content name and content ID are registered (Step S11: YES), the content data acquisition process is carried out in a manner similar to the above-mentioned Step S5 (Step S12). That is, in a case where a standard is not satisfied (return value is “F”) as a result of the system usage restriction judgment process (Step S3 or Step S87), the control unit 11 registers in the content acquisition list and waits until the standard is satisfied. Then, when the standard is satisfied as a result of the system usage restriction judgment process in Step S9, the control unit 11 acquires (download) a replica of the content data from a content retention node and stores the replica.
Here, in other process in Step S13, for example, process corresponding to an instruction by a user through the input unit 21 or the like is carried out and the process returns to Step S1.
As explained above, according to the present embodiment, in a case where a user node receives a storage request of content data (storage request information), in order to judge whether or not usage of the system S is restricted in response to the storage request information, it is discriminated whether or not above-mentioned standard for determining a degree of load of the network 8 is satisfied. In a case where the standard is satisfied (e.g. any one or two or more of the following are satisfied: a case where a present time is not in a usage restriction time range of the distributed content storing system S; a volume of load of the above-mentioned router does not exceed a previously set standard volume; a total number of nodes Nn connected to the above-mentioned router does not exceed a previously set standard number; a reply time from another node Nn does not exceed a previously set standard time; and a consumption band of a line to which the own node Nn is connected does not exceed a previously set standard value), (it is judged that there is a limitation in using the system S). Then it is constructed such that a content location inquiry (search) message (query) including a content ID of content data regarding the storing request information, an IP address of the own node or the like is transmitted to a root node, and a replica of content data is acquired from another node Nn being a content retention node which stores the replica through the network 8 and saved. Therefore, even in a case where many nodes Nn are connected to one line configuring the network 8 through a relay device such as a router (one line is shared), it is possible to reduce load of the network and the relay device such as a router. Moreover, it is possible to avoid a user of another node Nn from being disturbed when the network is busy.
Further, in a case where a content retention node received provision request information indicating provision request of content data from another node Nn, being a user node, it is judged whether or not a standard for determining a volume of load of the network 8 is satisfied in response to the provision request information. In a case where the above-mentioned standard is satisfied (it is judged that usage of the system S is restricted), a replica of content data regarding the provision request information is transmitted to the user node through the network 8. Therefore, even in a case where many nodes Nn are connected to one line configuring the network 8 through a relay device such as a router (one line is shared), it is possible to reduce load of the network and the relay device such as a router.
Further, each node Nn can be configured to avoid throwing-in of a replica of the content data as much as possible when a content throwing-in request (storage request) message is received from a content management server, and a standard for determining a degree of load in the network 8 is not satisfied.
Here, the explanation was given on a premise that the distributed content storing system S of the above-mentioned embodiment is configured by algorithm using DHT. However, the present invention is not limited thereto.
The present invention is not confined to the configuration listed in the foregoing embodiments, but it is easily understood that the person skilled in the art can modify such configurations into various other modes, within the scope of the present invention described in the claims.
Number | Date | Country | Kind |
---|---|---|---|
2007-076015 | Mar 2007 | JP | national |