Patent ID: 7072976

Claim:
A method of sending messages in an interconnection fabric, wherein the interconnection fabric couples together a plurality of nodes, wherein each node of the plurality of nodes comprises a plurality of input ports and a plurality of output ports, comprising: for each of a plurality of messages: dynamically selecting a route in the interconnection fabric from among a plurality of independent routes for sending the message from a sending node to a destination node, wherein said dynamically selecting a route comprises identifying a routing directive for the selected one of the plurality of independent routes from the sending node to the destination node; wherein said dynamically selecting a route comprises selecting different ones of the independent routes from the sending node to the destination node for at least two of the messages; encoding the routing directive in the message, wherein the routing directive describes the route and comprises at least one segment, wherein each segment comprises a direction component and a distance component; sending the message on one of the output ports of the sending node; receiving the message on one of the input ports of a first node connected to the output port of the sending node; decrementing the distance component for a current segment of the routing directive; selecting one of the output ports of the first node according to the current segment of the routing directive in the message; and sending the message on the selected one of the output ports of the first node.