Distributed means of organizing an arbitrarily large number of computers
First Claim
Patent Images
1. A distributed computer network, comprising:
- a plurality of processors, and at least one communication medium for interconnecting the plurality of processors;
wherein the plurality of processors are logically arranged such that a top processor of the plurality of processors operates at a top level of a hierarchy that includes the plurality of processors by sending a message to at least one logically neighboring processor;
wherein the message is disseminated throughout the hierarchy by each processor that receives the message, and that has a logically neighboring downstream processor, forwarding the message to at least one logically neighboring processor such that each processor in the hierarchy receives the message only once.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique for organizing a plurality of computers such that message broadcast, content searching, and computer identification of the entire collection or a subset of the entire collection may be performed quickly without the use of a controlling computer. The technique describes the creation, operation, and maintenance of a connection scheme by which each computer in the collection appears to be the top level of a hierarchical array. The maintenance of this hierarchical connection scheme allows one to many communications throughout the collection of computers to scale geometrically rather than linearly.
-
Citations
40 Claims
-
1. A distributed computer network, comprising:
-
a plurality of processors, and at least one communication medium for interconnecting the plurality of processors;
wherein the plurality of processors are logically arranged such that a top processor of the plurality of processors operates at a top level of a hierarchy that includes the plurality of processors by sending a message to at least one logically neighboring processor;
wherein the message is disseminated throughout the hierarchy by each processor that receives the message, and that has a logically neighboring downstream processor, forwarding the message to at least one logically neighboring processor such that each processor in the hierarchy receives the message only once. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
12. A distributed computer network comprising:
-
a collection of computers logically arranged such that a first computer of the collection of computers is situated at a logical center of the collection of computers, wherein a plurality of computers from the collection of computers form a series of concentric polygons around the first computer;
wherein a top computer in a hierarchy of the collection of computers sends a message along each of a plurality of radials, each of said radials comprising a line of logically adjacent computers in the collection of computers that logically extends radially from said top computer; and
wherein each of a plurality of lower level computers, of the collection of computers, located on one of said radials further forwards the message along a corresponding indirect radial, each indirect radial comprising a line of logically adjacent computers in the collection of computers that logically extends radially from said corresponding lower level computer but does not logically intersect any of the radials.
-
-
21. A method for communicating in a computer network, comprising:
-
logically arranging a plurality of computers around a first computer situated at a logical center of the plurality of computers;
initiating a message at a top computer selected from the plurality of computers;
sending the message from the top computer along each of a plurality of series of logically adjacent subordinate computers, each series of logically adjacent subordinate computers logically extending radially from the top computer, the plurality of computers including said subordinate computers; and
forwarding the message, from each of a plurality of the subordinate computers along a corresponding series of logically adjacent secondary computers that logically extends radially from the subordinate computer but that does not intersect any of the series of logically adjacent subordinate computers that logically extends radially from the top computer and that does not intersect any of the other series of logically adjacent secondary computers that logically extend radially from another of the plurality of subordinate computers. - View Dependent Claims (22, 23, 24, 25, 27, 28, 29, 30, 31, 32)
-
-
26. A method for logically configuring a collection of computers, comprising:
-
selecting a computer to serve as a logical center of the collection of computers;
identifying a computer to be added to the collection of computers as being one of a high bandwidth computer and a low bandwidth computer based on a bandwidth connection capacity associated with the computer to be added;
adding high bandwidth computers to the collection of computers to logically configure the high bandwidth computers into a plurality of concentric polygons, wherein each added high bandwidth computer operates to;
find a high bandwidth computer in the collection of computers;
follow one of a radial and an indirect radial that includes the found computer to a collection edge, said radial comprising a series of logically adjacent radial computers that logically extend from the logical center, and said indirect radial comprising a series of logically adjacent indirect radial computers that logically extend from one of the radial computers, wherein the collection edge comprises a logically outermost computer on said one of the radial and the indirect radial; and
logically attach to a computer in the collection of computers on the collection edge; and
adding low bandwidth computers to the collection of computers to logically configure the low bandwidth computers into a plurality of serial strings, each serial string logically attached to a corresponding one of said high bandwidth computers.
-
-
33. A method for logically configuring a collection of computers, comprising:
-
selecting a computer to serve as a logical center of the collection of computers;
arranging computers from the collection of computers such that the collection of computers are logically configured to form a plurality of successively higher concentric polygon levels around the logical center;
adding a computer to the collection of computers;
determining that the added computer is physically connected to a local area network (LAN);
determining whether the LAN includes a previously added computer of the collection of computers;
if the LAN does not include a previously added computer, logically connecting the added computer to a computer in the collection of computers, located at a collection edge, wherein the collection edge comprises a logical outer edge of the collection of computers and forms at least a partial concentric polygon level around the plurality of concentric polygon levels; and
if the LAN does include a previously added computer, logically connecting said added computer to receive a LAN multicast from said previously added computer. - View Dependent Claims (34, 35, 36, 37, 38, 39)
-
-
40. A distributed computer network, comprising:
-
a collection of computers;
means for an added computer to locate the collection of computers;
means for the added computer to establish a connection to the collection of computers;
means for each computer in the collection of computers, including the added computer, to establish a logical arrangement such that each computer in the collection of computers can forward a message to at least one other computer, without any computer receiving the message more than once, for disseminating the message throughout the collection of computers.
-
Specification