Optimizing communication using scaleable peer groups
First Claim
1. At a peer computer system in a peer-to-peer communication system in which the peer communicates messages with a peer group of one or more other peers, a method of optimizing communication of peer messages among the one or more peers in the peer group based on one or more delivery constraints, comprising the acts of:
- the peer computer system receiving a peer message over a peer-to-peer communication network from an originating peer, the peer message for delivery to one or more recipient peers in the peer group, the peer message including one or more delivery constraints indicative of a message delivery intent of the originating peer for the message;
referencing a central tracking object, the central tracking object for sharing messaging sending and receiving annotations among the peers in the peer group, the sending and receiving annotations indicating any of the peers that previously sent or received the peer message such that the sending and receiving annotations relate to the one or more delivery constraints of the peer message, the central tracking object stored at least in part in a designated share partition at the peer computer system such that at least part of the central tracking object is shareable with other peers to propagate sending and receiving message annotations with other peers;
accessing sending and receiving annotations for the peer message from the central tracking object;
evaluating the one or more delivery constraints for the peer message based on the accessed sending and receiving annotations for the peer message; and
determining what, if any, further peer messages are to be sent based on the delivery constraint evaluation so as to preserve the delivery intent of the originating peer for the message.
2 Assignments
0 Petitions
Accused Products
Abstract
Implementations of the present invention relate in part to optimizations to peer-to-peer communication systems. For example, one implementation relates to use of a smart transceiver that creates, caches, and manages communication channels dynamically between peers. Another implementation relates to use of a central tracking object that can be used to efficiently register and distribute peer messages among the various peers. In one implementation, the central tracking object is shared amongst peers in the group. Still another implementation relates to associating peer groups with namespaces, and for including peer groups of one namespace within still other peer groups of different namespaces. These and other aspects of the invention can also be used to ensure delivery intent of a given peer message is preserved, and to ensure that optimal numbers of messages are communicated to any given peer at any given time.
51 Citations
19 Claims
-
1. At a peer computer system in a peer-to-peer communication system in which the peer communicates messages with a peer group of one or more other peers, a method of optimizing communication of peer messages among the one or more peers in the peer group based on one or more delivery constraints, comprising the acts of:
-
the peer computer system receiving a peer message over a peer-to-peer communication network from an originating peer, the peer message for delivery to one or more recipient peers in the peer group, the peer message including one or more delivery constraints indicative of a message delivery intent of the originating peer for the message; referencing a central tracking object, the central tracking object for sharing messaging sending and receiving annotations among the peers in the peer group, the sending and receiving annotations indicating any of the peers that previously sent or received the peer message such that the sending and receiving annotations relate to the one or more delivery constraints of the peer message, the central tracking object stored at least in part in a designated share partition at the peer computer system such that at least part of the central tracking object is shareable with other peers to propagate sending and receiving message annotations with other peers; accessing sending and receiving annotations for the peer message from the central tracking object; evaluating the one or more delivery constraints for the peer message based on the accessed sending and receiving annotations for the peer message; and determining what, if any, further peer messages are to be sent based on the delivery constraint evaluation so as to preserve the delivery intent of the originating peer for the message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. At a peer un a peer-to-peer communication system in which the peer communicates messages with a peer group of one or more other peers, a computer program product implementing a method for optimizing communication of peer messages among the one or more peers in the peer group based on delivery constraints, the computer program product comprising one or more computer storage media having computer-executable instructions stored thereon that, when executed by a processor, cause the peer to perform the method, including the following:
-
receive a peer message over a peer-to-peer communication network from an originating peer, the peer message for delivery to one or more recipient peers in the peer group, the peer message including one or more delivery constraints indicative of a message delivery intent of the originating peer for the message; reference a central tracking object, the central tracking object for sharing messaging sending and receiving annotations among the peers in the peer group, the sending and receiving annotations indicating any of the peers that previously sent or received the peer message such that the sending and receiving annotations relate to the one or more delivery constraints of the peer message, the central tracking object stored at least in part in a designated share partition at the peer computer system such that at least part of the central tracking object is shareable with other peers to propagate sending and receiving message annotations with other peers; evaluate the one or more delivery constraints for the peer message based on the accessed sending and receiving annotations for the peer message; and determine what, if any, further peer messages are to be sent based on the delivery constraint evaluation so as to preserve the delivery intent of the originating peer for the message. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A peer computer system, the peer computer system comprising:
-
one or more processors; system memory; and one or more computer storage media having stored there on computer-executable instructions representing a peer in a peer group, the peer configured to; receive a peer message over a peer-to-peer communication network from an originating peer, the peer message for delivery to one or more recipient peers in the peer group, the peer message including one or more delivery constraints defining a message delivery intent of the originating peer for the message, the delivery constraints indicating how many peers are to receive the peer message and how many peers are to respond to the peer message so as to conserve resources by reducing network traffic within the peer group; reference a central tracking object, the central tracking object for sharing messaging sending and receiving annotations among the peers in the peer group, the sending and receiving annotations indicating any of the peers that previously sent or received the peer message such that the sending and receiving annotations relate to the one or more delivery constraints of the peer message, the central tracking object stored at least in part in a designated share partition at the peer computer system such that at least part of the central tracking object is shareable with other peers to propagate sending and receiving message annotations with other peers; evaluate the one or more delivery constraints for the peer message based on the accessed sending and receiving annotations for the peer message; and determine what, if any, further peer messages are to be sent based on the delivery constraint evaluation so as to preserve the delivery intent of the originating peer for the message.
-
Specification