IP Library Granted Patent US 7,890,701
Granted Patent B2
US 7,890,701 · App. 12/791,311 · Granted Feb 15, 2011

Method and system for dynamic distributed data caching

Assignee: Parallel Networks, LLC
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,890,701
App. No.
12/791,311
Granted
Feb 15, 2011
Kind
B2
Abstract

A method and system for dynamic distributed data caching includes providing a cache community of peer members and a master member. A master member volunteers to leave the cache community upon which decision a peer member is selected to become the new master member. Each peer member has an associated first content portion indicating content to be cached by the respective peer. A client may be allowed to join the cache community. A peer list associated with the cache community is updated to include the client. The peer list indicates the peers in the cache community. A respective second content portion is associated with each peer based on the addition of the client.

Claims (52)

1. A method for dynamic distributed data caching, comprising:

establishing a cache community for data storage, the cache community including a master member;

determining that the master member is to voluntarily leave the cache community;

determining whether the cache community includes other peer members;

selecting a peer member to become a new master of the cache community in response to the cache community including other peer members;

sending a nominate master message to the peer member selected to be the new master of the cache community.

2. The method of claim 1 , further comprising:

receiving a response to the nominate master message from the peer member;

shutting down the master member from the cache community.

3. The method of claim 1 , further comprising:

determining that a response to the nominate master message has not been received from the peer member;

selecting a new peer member to become the new master of the cache community.

4. The method of claim 1 , further comprising:

updating a peer list for the cache community by removing the master member from the peer list.

5. The method of claim 1 , further comprising:

sending a remove master request in response to the cache community not including any other peer members.

6. The method of claim 1 , wherein the peer member is selected to be the new master member based on either bandwidth availability or processing capability.

7. A computer readable storage medium including executable code for dynamic distributed data caching, the executable code operable to:

establish a cache community for data storage, the cache community including a master member;

determine that the master member is to voluntarily leave the cache community;

determine whether the cache community includes other peer members;

select a peer member to become a new master of the cache community in response to the cache community including other peer members;

send a nominate master message to the peer member selected to be the new master of the cache community.

8. The computer readable storage medium of claim 7 , wherein the executable code is further operable to:

receive a response to the nominate master message from the peer member;

shut down the master member from the cache community.

9. The computer readable storage medium of claim 7 , wherein the executable code is further operable to:

determine that a response to the nominate master message has not been received from the peer member;

select a new peer member to become the new master of the cache community.

10. The computer readable storage medium of claim 7 , wherein the executable code is further operable to:

update a peer list for the cache community by removing the master member from the peer list.

11. The computer readable storage medium of claim 7 , wherein the executable code is further operable to:

send a remove master request in response to the cache community not including any other peer members.

12. The computer readable storage medium of claim 7 , wherein the executable code is further operable to:

select the peer member be the new master member based on either bandwidth availability or processing capability.

13. A system for dynamic distributed data caching, comprising:

means for establishing a cache community for data storage, the cache community including a master member;

means for determining that the master member is to voluntarily leave the cache community;

means for determining whether the cache community includes other peer members;

means for selecting a peer member to become a new master of the cache community in response to the cache community including other peer members;

means for sending a nominate master message to the peer member selected to be the new master of the cache community.

14. The system of claim 13 , further comprising:

means for receiving a response to the nominate master message from the peer member;

means for shutting down the master member from the cache community.

15. The system of claim 13 , further comprising:

means for determining that a response to the nominate master message has not been received from the peer member;

means for selecting a new peer member to become the new master of the cache community.

16. The system of claim 13 , further comprising:

means for updating a peer list for the cache community by removing the master member from the peer list.

17. The system of claim 13 , further comprising:

means for sending a remove master request in response to the cache community not including any other peer members.

18. The system of claim 13 , wherein the peer member is selected to be the new master member based on either bandwidth availability or processing capability.

Assignments (6)
COURT ORDER Recorded Apr 22, 2021
From: PARALLEL NETWORKS LICENSING, LLC
To: MICROSOFT CORPORATION
Reel/Frame 056027/0120 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2010
From: LOWERY, KEITH A.; CHIN, BRYAN S.; CONSOLVER, DAVID A.; DEMASTERS, GREGG A.
To: EPICREALM INC.
Reel/Frame 024464/0791 →
CHANGE OF NAME Recorded Jun 1, 2010
From: EPICREALM INC.
To: EPICREALM OPERATING, INC.; EPICREALM OPERATING INC.
Reel/Frame 024464/0987 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2010
From: EPICREALM OPERATING INC.
To: EPICREALM LICENSING LLC
Reel/Frame 024465/0099 →
MERGER Recorded Jun 1, 2010
From: EPICREALM LICENSING, LLC
To: EPICREALM LICENSING, LP
Reel/Frame 024465/0198 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2010
From: EPICREALM LICENSING, LP
To: PARALLEL NETWORKS, LLC
Reel/Frame 024465/0250 →
Continuity (3)
Continuation 11681544 · Mar 2, 2007
Division 09759406 · Jan 12, 2001
Related Publication 20100241810A1 · Sep 23, 2010