Patent ID: 7035279

Claim:
In a communication network that includes a plurality of nodes interconnected by links, the nodes including at least first and second nodes, a method for routing a data flow, comprising: allocating a respective number of quanta of one or more resources in the network to each of the nodes; receiving a request at the first node to use a portion of the resources so as to carry the data flow between the first and second nodes over one of a plurality of paths therebetween, each such path comprising a respective sequence of the links; and in response to the request: if the resources already allocated to the first node on one of the paths are sufficient, directing the data flow from the first node to the second node over the one of the paths without requesting additional resources; and if the resources already allocated to the first node are insufficient, performing the following steps: requesting an increase in an allocation to the first node of the requested resources; determining, for the links comprised by each of the paths, respective levels of use of the requested resources due to communications in progress over the network; selecting which of the paths is to carry the data flow responsive to the determined levels of use of the requested resources on the links comprised in each of the paths; and increasing the allocation of the resources to the first node on the selected path by a predetermined quantum.