Network location management system
First Claim
1. Apparatus for use in retrieving information relating to a node in a network, wherein the network includes a plurality of nodes and communications links therebetween, the apparatus comprising:
- receiving means arranged to receive, on behalf of a node, a request in respect of information relating to a target node including a request for a network address of the target node, the request including an identifier indicative of location of the target node in a virtual space, wherein the location is independent of physical location and network address;
sending means arranged to send, on behalf of said node, a request in respect of said target node, onward to another node;
storage arranged to store data in respect of a plurality of nodes, the data including, for each such node, an identifier indicative of location of the node and a network address corresponding thereto in said virtual space, wherein the location is independent of physical location and network address;
evaluating means arranged to evaluate distance between the locations of two nodes in said virtual space;
the apparatus being arranged, upon receipt of such a request, to translate the target node'"'"'s ID into coordinates in virtual space and to evaluate the distance between the locations of each of a plurality of evaluated nodes and the target location, at least one of said plurality of evaluated nodes being the receiving node, and to identify which of the plurality of evaluated nodes are closer to the target node than the receiving, node is to the target node in said virtual space, andwherein the sending means sends the request to one of the identified nodes.
1 Assignment
0 Petitions
Accused Products
Abstract
In a communications network environment, nodes, such as personal computers, are assigned co-ordinates in a co-ordinate space which is independent of network address and physical location. Each node maintains links to a limited set of other nodes by storing the network addresses for those selected nodes. Each stored network address represents a link in co-ordinate space. It becomes possible for any node to obtain the network address for a target node by initiating a query message to a node for which it has the network address, which query message is propagated through the network between nodes which have the network address for a next node across co-ordinate space. When a receiving node finds it is the target node, or is as close in co-ordinate space as it is possible to forward the query message, it returns its own network address to the initiating node. This technique can also be used to retrieve information other than network addresses—such as objects.
23 Citations
37 Claims
-
1. Apparatus for use in retrieving information relating to a node in a network, wherein the network includes a plurality of nodes and communications links therebetween, the apparatus comprising:
-
receiving means arranged to receive, on behalf of a node, a request in respect of information relating to a target node including a request for a network address of the target node, the request including an identifier indicative of location of the target node in a virtual space, wherein the location is independent of physical location and network address; sending means arranged to send, on behalf of said node, a request in respect of said target node, onward to another node; storage arranged to store data in respect of a plurality of nodes, the data including, for each such node, an identifier indicative of location of the node and a network address corresponding thereto in said virtual space, wherein the location is independent of physical location and network address; evaluating means arranged to evaluate distance between the locations of two nodes in said virtual space; the apparatus being arranged, upon receipt of such a request, to translate the target node'"'"'s ID into coordinates in virtual space and to evaluate the distance between the locations of each of a plurality of evaluated nodes and the target location, at least one of said plurality of evaluated nodes being the receiving node, and to identify which of the plurality of evaluated nodes are closer to the target node than the receiving, node is to the target node in said virtual space, and wherein the sending means sends the request to one of the identified nodes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. Network management apparatus, wherein:
-
the network includes a plurality of nodes and communications links therebetween, each node is arranged to send a message through the network, the message including an identifier indicative of the location in virtual space of the node from which the message originated, and the location in said virtual space is independent of physical location and network address, the apparatus comprising; receiving means arranged to identify the type of message received by a node including a request for a network address of a target node; storage arranged to store data in respect of a plurality of nodes, the data including, for each such node, an identifier indicative of location of the node in said virtual space and a network address corresponding thereto, wherein the location in said virtual space is independent of physical location and network address; evaluating means arranged to evaluate distance between locations of two nodes in virtual space; the apparatus being arranged, in receipt of a message, such that the receiving means identifies the type of message, and, if the message is identified as being a message requiring action, the evaluating means translates the target node'"'"'s ID into coordinates in virtual space and evaluates the distance between the locations of each of a plurality of evaluated nodes in virtual space and that of the originating node and identifies which of the plurality of nodes is closest to the originating node in virtual space, wherein the plurality of evaluated nodes includes the receiving node, and, if the identified node is the receiving node, data items in respect of the originating node are added to the storage. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method of retrieving information relating to a node in a network, the network including a plurality of nodes and communications links therebetween, the method comprising:
-
sending a request from a first node in respect of information relating to a target node including a request for a network address of the target node, the request including an identifier indicative of the location of the target node in a virtual space, wherein the location is independent of physical location and network address; receiving the request at a second node; accessing data at the second node in respect of a plurality of nodes, the data including, for each such node, an identifier indicative of location of the node in said virtual space and a network address corresponding thereto, wherein the location is independent of physical location and network address; translating at the second node the target node'"'"'s ID into coordinates in virtual space and evaluating at the second node the distance in said virtual space between the locations of each of a plurality of nodes and the target location, at least one of the plurality being the second node, identifying at said second node which of the plurality of nodes are closer to the target node than the second node is to the target node in said virtual space; and sending from the second node the request to one of the identified nodes. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
-
30. A network management method, the network including a plurality of nodes and communications links therebetween, the method comprising:
-
identifying the type of message received by a node including a request for a network address of a target node and, if the message is identified as being a message requiring action, identifying, from the received message, an identifier indicative of the location of the node in a virtual space from which the received message originated, wherein the location is independent of physical location and network address; accessing data in respect of a plurality of nodes, the data including, for each such node, an identifier indicative of location of the node in said virtual space and a network address corresponding thereto, wherein the location in virtual space is independent of physical location and network address; translating the target node'"'"'s ID into coordinates in virtual space and evaluating the distance between the locations in said virtual space of each of a plurality of nodes and that of the originating node, the plurality including the receiving node and the said plurality of nodes, identifying which of the evaluated plurality of nodes is closest in said virtual space to the originating node, and, if the identified node is the receiving node, storing data items in respect of the originating node. - View Dependent Claims (31, 32, 33, 34, 35, 36)
-
-
37. A computer program product embodied on a computer readable medium, the program product comprising a set of instructions to cause a computer, or a suite of computers, to:
-
a) receive a request at a node in respect of information relating to a target node, the request including an identifier indicative of the location of the target node in a virtual space, wherein the location is independent of physical location and network address; access data in respect of a plurality of nodes, the data including, for each such node, an identifier indicative of location of the node in said virtual space and a network address corresponding thereto, wherein the location is independent of physical location and network address; translating the target node'"'"'s ID into coordinates in virtual space and evaluating the distance in said virtual space between the locations of each of a plurality of nodes and the target location, at least one of the plurality being the receiving node, identifying which of the plurality of nodes is closest to the target node, and, if the identified node is a node other than the receiving node, the receiving node sending the request to the identified node; and
/orb) identify the type of message received by a node and, if the message is identified as being a message requiring action, identifying, from the received message, an identifier indicative of the location of the node in said virtual space from which the received message originated, wherein the location is independent of physical location and network address;
accessing data in respect of a plurality of nodes, the data including, for each such node, an identifier indicative of location in virtual space of the node and a network address corresponding thereto, wherein the location is independent of physical location and network address;evaluate the distance in virtual space between the locations of each of a plurality of nodes and that of the originating node, the plurality including the receiving node and the said plurality of nodes, identifying which of the evaluated plurality of nodes is closest to the originating node, if the identified node is the receiving node, storing data items in respect of the originating node, if the identified node is not the receiving node, sending the message to the identified node; and
/orc) identify the type of message received by a node and, if the message is identified as being an onward transmission type of message, reviewing the lifetime of the message, and, in the event that the lifetime has not expired, sending the message to another node.
-
Specification