US 7,587,516 B2
Class network routing
Gyan Bhanot, Princeton, N.J. (US); Matthias A. Blumrich, Ridgefield, Conn. (US); Dong Chen, Croton On Hudson, N.Y. (US); Paul W. Coteus, Yorktown Heights, N.Y. (US); Alan G. Gara, Mount Kisco, N.Y. (US); Mark E. Giampapa, Irvington, N.Y. (US); Philip Heidelberger, Cortlandt Manor, N.Y. (US); Burkhard D. Steinmacher-Burow, Mount Kisco, N.Y. (US); Todd E. Takken, Mount Kisco, N.Y. (US); and Pavlos M. Vranas, Bedford Hills, N.Y. (US)
Assigned to International Business Machines Corporation, Armonk, N.Y. (US)
Appl. No. 10/468,999
PCT Filed Feb. 25, 2002, PCT No. PCT/US02/05573
§ 371(c)(1), (2), (4) Date Aug. 22, 2003,
PCT Pub. No. WO02/069550, PCT Pub. Date Sep. 06, 2002.
Claims priority of provisional application 60/271124, filed on Feb. 24, 2001.
Prior Publication US 2004/0081155 A1, Apr. 29, 2004
Int. Cl. G06F 15/173 (2006.01); H04L 12/66 (2006.01); H04L 12/50 (2006.01)
U.S. Cl. 709—238  [370/352; 370/387; 370/388; 370/389; 370/395.31] 16 Claims
OG exemplary drawing
 
1. A method of class network routing in a network to allow a compute processor in a network of compute processors located at nodes of the network to multicast a message to a plurality of other compute processors in the network comprising:
dividing, a message into one or more message packets which pass through the network, each one or more message packets including a header having a field including a class value;
at each switch in the network, using the class value as a vector index to a table having an array of stored values that efficiently encode actions performed by the switch on the message packet, said class value determining a switch action of path-based multidrop message passing for multiphase multicasting of a message packet through the network along a path comprising an intermediate node and a destination node, to determine from said table having an array of stored values at a switch at each said intermediate node or destination node, whether that intermediate node or a destination node should deposit a copy of the message packet,
wherein said array of stored values at each switch includes different entries such that said class network routing allows a node to not receive a copy of a packet, even though the node is on a path of the multidrop message packet,
wherein said class network routing further comprising using a D-phase multicast from an origin node to all nodes of a D-dimensional cube wherein, in a first phase the origin node sends a multidrop message to all other nodes in one of the rows of the sending node, in a second phase each of the recipients of the first phase and the sender of the first phase simultaneously send a multidrop message to all other nodes in a row orthogonal to the row of the first phase, in a third phase each of the recipients of the second phase and the senders of the second phase simultaneously send a multidrop message to all other nodes in a row orthogonal to the rows of the first and second phases, and so on in further phases such that all node of the cube receive the broadcast message after all the phases.