Content tracking in transient network communities
First Claim
1. A method of tracking content in networks having transient network communities where a collection of nodes making up the network may change over time, comprising steps of:
- using a persistent node identifier to uniquely identify each node in the network, even tough a different network address may be assigned to the node upon entering the network multiple times;
creating a mapping between the persistent node identifier of each node and a current network address used by that node and revising the mapping to reflect the current network address assigned to the node upon subsequent entry of the node into the network, such that an identity of each of the nodes can be resolved even though a current network address assigned to the node upon entering the network may vary from one entry to another;
for each of the nodes in the network, storing, at the node, a directed graph associated with each content resource currently available from that node, thereby enabling a network traversal path taken by each of the content resources to be known, wherein;
each of the directed graphs represents a complete network traversal path of the associated content resource;
at least one of the directed graphs comprises plurality of arcs;
each arc of the directed graph for each of the content resources represents the content resource traversing from one node of the network to another;
a first of the arcs of each of the directed graphs (1) represents the content resource traversing from one of the nodes at which the content resource entered the network to a next of the nodes of the network through the content resource traversed on the network traversal path and (2) identifies, using the persistent node identifiers thereof, the node at which the content resource entered the network and the next of the nodes;
a last of the arcs of each of the directed graphs (1) represents the content resource traversing to one of the nodes at which the content resource is currently available from a next-preceding one of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using the persistent node identifiers thereof, the node at which the content resource is currently available and the next-preceding one of the nodes;
each of the nodes which each content resource is currently available stores the directed graph representing the complete network traversal path for the content resource to the each node, including at least the first of the arcs and, if the traversal path comprises the plurality of arcs, the last of the arcs; and
for each transmission of the content resource to a destination node from one of the nodes at which the content resource is currently available, also transmitting a reference to the directed graph associated with the content resource; and
maintaining the complete network traversal path upon each transmission of each of the content resources, further comprising steps of;
upon receipt of the transmitted content resource at the destination node, extending the directed graph for the content resource by adding a new last arc that represents the content resource traversing from the transimitting node to the destination node at which the content resource is now currently available and that identifies, using the persistent node identifiers thereof, the transmitting node and the destination node, thereby creating a new directed graph; and
storing the new directed graph, associated with the received content resource, at the destination node.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and computer program products are disclosed for tracking content in a transient peer-to-peer networking environment where communities have ad hoc participants. Persistent identifiers are defined for nodes, allowing nodes to be identified across sessions and invocations, even though they re-enter the network with a different network address. Paths taken by content resources as they traverse the network (e.g. which nodes forwarded the content) are persisted, along with reputation information about nodes (e.g. indicating how successful they are at answering queries from peers). Trust relationships can be derived using the persisted information. A tiered broadcast strategy is defined for reducing the number of messages exchanged. Preferred embodiments leverage a web services implementation model.
-
Citations
34 Claims
-
1. A method of tracking content in networks having transient network communities where a collection of nodes making up the network may change over time, comprising steps of:
-
using a persistent node identifier to uniquely identify each node in the network, even tough a different network address may be assigned to the node upon entering the network multiple times; creating a mapping between the persistent node identifier of each node and a current network address used by that node and revising the mapping to reflect the current network address assigned to the node upon subsequent entry of the node into the network, such that an identity of each of the nodes can be resolved even though a current network address assigned to the node upon entering the network may vary from one entry to another; for each of the nodes in the network, storing, at the node, a directed graph associated with each content resource currently available from that node, thereby enabling a network traversal path taken by each of the content resources to be known, wherein; each of the directed graphs represents a complete network traversal path of the associated content resource; at least one of the directed graphs comprises plurality of arcs; each arc of the directed graph for each of the content resources represents the content resource traversing from one node of the network to another; a first of the arcs of each of the directed graphs (1) represents the content resource traversing from one of the nodes at which the content resource entered the network to a next of the nodes of the network through the content resource traversed on the network traversal path and (2) identifies, using the persistent node identifiers thereof, the node at which the content resource entered the network and the next of the nodes; a last of the arcs of each of the directed graphs (1) represents the content resource traversing to one of the nodes at which the content resource is currently available from a next-preceding one of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using the persistent node identifiers thereof, the node at which the content resource is currently available and the next-preceding one of the nodes; each of the nodes which each content resource is currently available stores the directed graph representing the complete network traversal path for the content resource to the each node, including at least the first of the arcs and, if the traversal path comprises the plurality of arcs, the last of the arcs; and for each transmission of the content resource to a destination node from one of the nodes at which the content resource is currently available, also transmitting a reference to the directed graph associated with the content resource; and maintaining the complete network traversal path upon each transmission of each of the content resources, further comprising steps of; upon receipt of the transmitted content resource at the destination node, extending the directed graph for the content resource by adding a new last arc that represents the content resource traversing from the transimitting node to the destination node at which the content resource is now currently available and that identifies, using the persistent node identifiers thereof, the transmitting node and the destination node, thereby creating a new directed graph; and storing the new directed graph, associated with the received content resource, at the destination node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for tracking content in networks having transient network communities where a collection of nodes making up the network may change over time, comprising steps of:
-
for each of a plurality of content resources available from ones of the nodes in the network, using a directed graph to represent a complete network traversal path of the content resource, wherein; at least one of the directed graphs comprises a plurality of arcs; each arc of the directed graph for each of the content resources represents the content resource traversing from one node of the network to another; a first of the arcs of each of the directed graphs (1) represents the content resource traversing from one of the node at which the content resource entered the network to a next of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using persistent node identifiers thereof the node at which the content resource entered the network and the next of the nodes; a last of the arcs of each of the directed graphs (1) represents the content resource traversing to one of the nodes at which the content resource is currently available from a next-preceding one of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using persistent node identifiers thereof, the node at which the content resource is currently available and the next-preceding one of the nodes; each of the nodes at which each content resource is currently available stores the directed graph representing the complete network traversal path for the content resource to the each node, including at least the first of the arcs and, if the traversal path comprises the plurality of arcs, the last of the arcs; and for each transmission of the content resource to a destination node from one of the nodes at which the content resource is currently available, also transimitting a reference to the directed graph for the content resource; and maintaining the complete network traversal path upon each transmission of each of the content resources, further comprising steps of; upon receipt of the transmitted content resource at the destination node, extending the directed graph for the content resource by adding a new last arc that represents the content resource traversing from the transmitting node to the destination node at which the content resource is now currently available and that identifies, using persistent node identifiers thereof, the transmitting node and the destination node, thereby creating a new directed graph; and storing the new directed graph, for the received content resource, at the destination. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A system for tracking content in networks having transient network communities where a collection of nodes making up the network may change over time, comprising:
-
means for using a persistent node identifier to uniquely identify each node in the network, even though a different network address may be assigned to the node upon entering the network multiple times; means for creating a mapping between the persistent node identifier of each node and a current network address used by that node and revising the mapping to reflect the current network address assigned to the node upon each subsequent entry of the node into the network, such that an identity of each of the nodes can be resolved even though a current network address assigned to the node upon entering the network may vary from one entry to another; for each of the nodes in the network, means for storing, at the node, a directed graph associated with each content resource currently available from that node, thereby enabling a network traversal path taken by each of the content resources to be known, wherein; each of the directed graphs represents a complete network traversal path of the associated content resource; at least one of the directed graphs comprises plurality of arcs; each arc of the directed graph for each of the content resources represents the content resource traversing from one node of the network to another; a first of the arcs of each of the direct graphs (1) represents the content resource traversing from one of the nodes at which the content resource entered the network to a next of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using the persistent node identifiers thereof, the node at which the content resource entered the network and the next of the nodes; a last of the arcs of each of the directed graphs (1) represents the content resource traversing to one of the nodes at which the content resource is currently available from a next-preceding one of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using the persistent node identifiers thereof, the node at which the content resource is currently available and the next-preceding one of the nodes; each of the nodes at which each content resource is currently available stores the directed graph representing the complete network traversal path for the content resource to the each node, including at least the first of the arc and, if the traversal path comprises the plurality of arcs, the last of the arcs; and for each transmission of the content resource to a destination node from one of the nodes at which the content resource is currently available, a reference to the directed graph associated with the content resource is also transmitted; and means for maintaining the complete network traversal path upon each transmission of each of the content resources, further comprising; upon receipt of the transmitted content resource at the destination node, means for extending the directed graph for the content resource by adding a new last arc that represents the content resource traversing from the transmitting node to the destination node at which the content resource is now currently available and that identifies, using the persistent node identifiers thereof, the transmitting node and the destination node, thereby creating a new directed graph; and means for storing the new directed graph, associated with the received content resource, at the destination node. - View Dependent Claims (27, 28, 29, 30)
-
-
31. A computer program product for tracking content in ad hoc networks where a collection of nodes making up the network may change over time, the computer program product embodied on one or more computer-readable media and comprising:
-
computer-readable program code for using, for each of a plurality of content resources available from ones of the nodes in the network, a directed graph to represent a complete network traversal path of the content resource, wherein; at least one of the directed graphs comprises a plurality of arcs; each arc of the directed graph for each of the content resources represents the content resource traversing from one node of the network to another; a first of the arcs of each of the directed graphs (1) represents the content resource traversing from one of the node at which the content resource entered the network to a next of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using persistent node identifiers thereof the node at which the content resource entered the network and the next of the nodes; a last of the arcs of each of the directed graphs (1) represents the content resource traversing to one of the nodes at which the content resource is currently available from a next-preceding one of the nodes of the network through which the content resource traversed on the network traversal path and (2) identifies, using persistent node identifiers thereof, the node at which the content resource is currently available and the next-preceding one of the nodes; each of the nodes at which each content resource is currently available stores the directed graph representing the complete network traversal path for the content resource to the each node, including at least the first of the arcs and, if the traversal path comprises the plurality of arcs, the last of the arcs; and for each transmission of the content resource to a destination node from one of the nodes at which the content resource is currently available, also transimitting a reference to the directed graph for the content resource is also transmitted; and computer-readable program code for maintaining the complete network traversal path upon each transmission of each of the content resources, further comprising; computer-readable program code for extending;
upon receipt of the transmitted content resource at the destination node, the directed graph for the content resource by adding a new last arc that represents the content resource traversing from the transmitting node to the destination node at which the content resource is now currently available and that identifies, using persistent node identifiers thereof, the transmitting node and the destination node, thereby creating a new directed graph; andcomputer-readable program code for storing the new directed graph, for the received content resource, at the destination node. - View Dependent Claims (32, 33, 34)
-
Specification