Method and apparatus for election of group leaders in a distributed network
First Claim
1. A method for distributing content in a computer network, comprising:
- receiving the content by a first server;
dividing a plurality of servers into a plurality of groups of servers, each group of servers having a plurality of servers;
selecting a group leader server by each group of servers, to form a plurality of group leader servers, each group having a group leader and one or more back end servers;
reporting the selection of the group leader servers to the first server;
deriving, by the first server, an optimally sorted list of the plurality of group leader servers for the distribution of content to the plurality of the group leader servers;
transmitting the content by the first server to a one or more of the group leader servers;
transmitting by the one or more group leader servers, in response to the optimally sorted list, the content to one or more other group leader servers; and
transmitting the content by each group leader server of the plurality of group leader servers to its back end servers.
0 Assignments
0 Petitions
Accused Products
Abstract
A system and apparatus for control and distribution of data files in large-scale distributed networks. Members of a group of servers in a multicast network elect a group leader whenever a new group leader is required, as detected by absence of a periodic message published by the leader. Election is carried out by a system of voting by each candidate whereby each candidate has a priority calculated from its configuration, and the server with the highest priority is configured to claim the leadership faster than the other candidates. As part of the claim, each candidate multicasts its priority. Each candidate that receives a multicast claim for leadership from another candidate compares its own priority against the claimant and only votes for itself if its own priority is higher. After a preconfigured period of hearing no other claimants with higher priority, the candidate with the highest priority becomes the new leader.
87 Citations
9 Claims
-
1. A method for distributing content in a computer network, comprising:
-
receiving the content by a first server; dividing a plurality of servers into a plurality of groups of servers, each group of servers having a plurality of servers; selecting a group leader server by each group of servers, to form a plurality of group leader servers, each group having a group leader and one or more back end servers; reporting the selection of the group leader servers to the first server; deriving, by the first server, an optimally sorted list of the plurality of group leader servers for the distribution of content to the plurality of the group leader servers; transmitting the content by the first server to a one or more of the group leader servers; transmitting by the one or more group leader servers, in response to the optimally sorted list, the content to one or more other group leader servers; and transmitting the content by each group leader server of the plurality of group leader servers to its back end servers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer network, comprising:
-
a first server to receive a content; a plurality of servers divided into a plurality of groups of servers, each group of servers having a plurality of servers; a group leader server to be selected by each group of servers, to form a plurality of group leader servers, each group having a group leader and one or more back end servers; the selection of the group leader servers reported to the first server; an optimally sorted list of the plurality of group leader servers, derived by the first server, for the distribution of content to the plurality of the group leader servers; the first server to transmit the content to a one or more of the group leader servers; one or more group leader servers to transmit, in response to the optimally sorted list, the content to one or more other group leader servers; and each group leader of the plurality of group leader servers to transmit the content to its back end servers.
-
Specification