Presence detection using distributed indexes in peer-to-peer networks
First Claim
1. A system, comprising:
- a network; and
a plurality of peer nodes coupled to the network and configured to;
receive from a node on the network a request for notification of registration of a user identifier in a distributed index, wherein the request for notification comprises the user identifier, and wherein each of the plurality of peer nodes stores a zone of the distributed index configured to store presence information for a subset of user identifiers at locations in the zone indicated by hashes of the subset of user identifiers;
store the request for notification of registration of the user identifier at a location in the distributed index indicated by a hash of the user identifier comprised in the request for notification;
receive a registration request comprising the user identifier;
access the stored request for notification of registration of the user identifier from the distributed index at the location indicated by a hash of the user identifier comprised in the registration request; and
notify the node that sent the request for notification of registration of the user identifier of the registration of the user identifier in response to the request for notification of registration of the user identifier.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of a distributed index mechanism for indexing and searching for presence information in peer-to-peer networks. In one embodiment, a distributed index may be used to store presence information in a decentralized manner on a plurality of peer nodes. In one embodiment, a notification service may be implemented on top of the distributed index to notify peers of other peers joining a peer-to-peer session. Participating peers may query the distributed index to detect the presence of other participating peers registered in the distributed index. One embodiment of a distributed index of presence information may be implemented in peer-to-peer networks implemented according to a peer-to-peer platform including one or more peer-to-peer platform protocols for enabling peer nodes to discover each other, communicate with each other, and cooperate with each other to form peer groups and share network resources.
378 Citations
54 Claims
-
1. A system, comprising:
-
a network; and
a plurality of peer nodes coupled to the network and configured to;
receive from a node on the network a request for notification of registration of a user identifier in a distributed index, wherein the request for notification comprises the user identifier, and wherein each of the plurality of peer nodes stores a zone of the distributed index configured to store presence information for a subset of user identifiers at locations in the zone indicated by hashes of the subset of user identifiers;
store the request for notification of registration of the user identifier at a location in the distributed index indicated by a hash of the user identifier comprised in the request for notification;
receive a registration request comprising the user identifier;
access the stored request for notification of registration of the user identifier from the distributed index at the location indicated by a hash of the user identifier comprised in the registration request; and
notify the node that sent the request for notification of registration of the user identifier of the registration of the user identifier in response to the request for notification of registration of the user identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system, comprising:
-
a network; and
a plurality of peer nodes coupled to the network and configured to;
store presence information in a distributed index, wherein each peer node stores a zone of the distributed index configured to store presence information for a subset of user identifiers at locations in the zone indicated by hashes of the subset of user identifiers;
receive a registration request from a node on the network, wherein the registration request comprises a user identifier and presence information corresponding to the user identifier;
generate a hash of the user identifier; and
store the presence information corresponding to the user identifier at a location in the distributed index indicated by the hash of the user identifier comprised in the registration request. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method, comprising:
-
one of a plurality of peer nodes coupled to a network receiving from a node on the network a request for notification of registration of a user identifier in a distributed index, wherein the request for notification comprises the user identifier;
wherein each of the plurality of peer nodes stores a zone of the distributed index configured to store presence information for a subset of user identifiers at locations in the zone indicated by hashes of the subset of user identifiers;
storing the request for notification of registration of the user identifier at a location in the distributed index indicated by a hash of the user identifier comprised in the request for notification;
receiving a registration request comprising the user identifier;
accessing the stored request for notification of registration of the user identifier from the distributed index at the location indicated by a hash of the user identifier comprised in the registration request; and
notifying the node that sent the request for notification of registration of the user identifier of the registration of the user identifier in response to the request for notification of registration of the user identifier. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method, comprising:
-
a plurality of peer nodes coupled to a network storing presence information in a distributed index, wherein each of the plurality of peer nodes stores a zone of the distributed index configured to store presence information for a subset of user identifiers at locations in the zone indicated by hashes of the subset of user identifiers;
receiving a registration request from a node on the network, wherein the registration request comprises a user identifier and presence information corresponding to the user identifier;
generating a hash of the user identifier; and
storing the presence information corresponding to the user identifier at a location in the distributed index indicated by the hash of the user identifier comprised in the registration request. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A computer-accessible medium comprising program instructions, wherein the program instructions are configured to implement:
-
one of a plurality of peer nodes coupled to a network receiving from a node on the network a request for notification of registration of a user identifier in a distributed index, wherein the request for notification comprises the user identifier;
wherein each of the plurality of peer nodes stores a zone of the distributed index configured to store presence information for a subset of user identifiers at locations in the zone indicated by hashes of the subset of user identifiers;
storing the request for notification of registration of the user identifier at a location in the distributed index indicated by a hash of the user identifier comprised in the request for notification;
receiving a registration request comprising the user identifier;
accessing the stored request for notification of registration of the user identifier from the distributed index at the location indicated by a hash of the user identifier comprised in the registration request; and
notifying the node that sent the request for notification of registration of the user identifier of the registration of the user identifier in response to the request for notification of registration of the user identifier. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A computer-accessible medium comprising program instructions, wherein the program instructions are configured to implement:
-
a plurality of peer nodes coupled to a network storing presence information in a distributed index, wherein each of the plurality of peer nodes stores a zone of the distributed index configured to store presence information for a subset of user identifiers at locations in the zone indicated by hashes of the subset of user identifiers;
receiving a registration request from a node on the network, wherein the registration request comprises a user identifier and presence information corresponding to the user identifier;
generating a hash of the user identifier; and
storing the presence information corresponding to the user identifier at a location in the distributed index indicated by the hash of the user identifier comprised in the registration request. - View Dependent Claims (47, 48, 49, 50, 51, 52, 53, 54)
-
Specification