Aggregation protocol
First Claim
1. A method, comprising the steps of:
- organizing an aggregation collective group of network elements of a data network into a hierarchical tree having a root node network element, vertex node network elements and child node network elements, the child node network elements comprising leaf node network elements;
originating aggregation data in the leaf node network elements;
iteratively performing the steps of;
(1) receiving the aggregation data from at least a portion of the child node network elements of respective parent vertex node network elements thereof; and
(2) in the vertex node network elements combining the received aggregation data from at least a portion of the child node network elements thereof; and
(3) transmitting the combined received aggregation data from the vertex node network elements to parent vertex node network elements thereof; and
in the root node network element initiating, when all expected aggregation data have been received thereat, a reduction operation on the aggregation data to produce an aggregation result,wherein organizing an aggregation collective group comprises defining multiple aggregation collective groups, and thereafter performing the additional steps of;
initializing a job that requires resources of the data network; and
selecting a best matching one of the multiple aggregation collective groups for the job.
4 Assignments
0 Petitions
Accused Products
Abstract
A switch in a data network is configured to mediate data exchanges among network elements. The apparatus further includes a processor, which organizes the network elements into a hierarchical tree having a root node network element, vertex node network elements, and child node network elements that include leaf node network elements. The leaf node network elements are originate aggregation data and transmit the aggregation data to respective parent vertex node network elements. The vertex node network elements combine the aggregation data from at least a portion of the child node network elements, and transmit the combined aggregation data from the vertex node network elements to parent vertex node network elements. The root node network element is operative for initiating a reduction operation on the aggregation data.
-
Citations
20 Claims
-
1. A method, comprising the steps of:
-
organizing an aggregation collective group of network elements of a data network into a hierarchical tree having a root node network element, vertex node network elements and child node network elements, the child node network elements comprising leaf node network elements; originating aggregation data in the leaf node network elements; iteratively performing the steps of; (1) receiving the aggregation data from at least a portion of the child node network elements of respective parent vertex node network elements thereof; and (2) in the vertex node network elements combining the received aggregation data from at least a portion of the child node network elements thereof; and (3) transmitting the combined received aggregation data from the vertex node network elements to parent vertex node network elements thereof; and in the root node network element initiating, when all expected aggregation data have been received thereat, a reduction operation on the aggregation data to produce an aggregation result, wherein organizing an aggregation collective group comprises defining multiple aggregation collective groups, and thereafter performing the additional steps of; initializing a job that requires resources of the data network; and selecting a best matching one of the multiple aggregation collective groups for the job. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. Apparatus, comprising:
-
a switch interconnected in a data network with a plurality of network elements, the switch configured to mediate data exchanges among the network elements; a processor, operative for organizing the network elements into at least one hierarchical tree having a root node network element, vertex node network elements and child node network elements, the child node network elements comprising leaf node network elements, wherein the leaf node network elements are operative for originating aggregation data and transmitting the aggregation data to respective parent vertex node network elements thereof, and wherein the vertex node network elements are operative for combining the aggregation data from at least a portion of the child node network elements thereof; and
transmitting the combined received aggregation data from the vertex node network elements to parent vertex node network elements thereof, and the root node network element is operative, when all expected aggregation data have been received thereat, for initiating a reduction operation on the aggregation data and producing an aggregation result, wherein organizing the network elements comprises;defining multiple hierarchical trees; and memorizing the multiple hierarchical trees, wherein after organizing the network elements the data network, the processor is operative for performing the additional steps of; initializing a job that requires resources of the data network; and selecting a best matching one of the memorized multiple hierarchical trees for the job. - View Dependent Claims (9, 10, 11, 12)
-
-
13. Apparatus, comprising:
-
a switch interconnected in a data network with a plurality of network elements, the switch configured to mediate data exchanges among the network elements; a processor, operative for organizing the network elements into at least one hierarchical tree having a root node network element, vertex node network elements and child node network elements, the child node network elements comprising leaf node network elements, wherein the leaf node network elements are operative for originating aggregation data and transmitting the aggregation data to respective parent vertex node network elements thereof, and wherein the vertex node network elements are operative for combining the aggregation data from at least a portion of the child node network elements thereof; and transmitting the combined received aggregation data from the vertex node network elements to parent vertex node network elements thereof, and the root node network element is operative, when all expected aggregation data have been received thereat, for initiating a reduction operation on the aggregation data and producing an aggregation result, wherein the vertex node network elements are operative for performing respective local reduction operations on the combined received aggregation data to produce local aggregation results; and the vertex node network elements are also operative for transmitting the local aggregation results to the parent vertex node network elements thereof.
-
-
14. A method, comprising the steps of:
-
organizing an aggregation collective group of network elements of a data network into a hierarchical tree having a root node network element, vertex node network elements and child node network elements, the child node network elements comprising leaf node network elements; originating aggregation data in the leaf node network elements; iteratively performing the steps of; (1) receiving the aggregation data from at least a portion of the child node network elements of respective parent vertex node network elements thereof; and (2) in the vertex node network elements combining the received aggregation data from at least a portion of the child node network elements thereof; and (3) transmitting the combined received aggregation data from the vertex node network elements to parent vertex node network elements thereof; and in the root node network element initiating, when all expected aggregation data have been received thereat, a reduction operation on the aggregation data to produce an aggregation result, the method further comprising; performing in the vertex node network elements respective local reduction operations on the combined received aggregation data to produce local aggregation results; and transmitting the local aggregation results to the parent vertex node network elements thereof. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification