Patent ID: 7260064

Claim:
A method for routing data packets in a network, the network comprising a first node, a plurality of neighboring network nodes to said first node, and, for each of said neighboring network nodes to said first node, one or more second-level neighboring nodes thereto, the method comprising the steps of: receiving a data packet at the first node of the network; determining a plurality of potential function values for a corresponding plurality of said neighboring network nodes to said first node, each of said potential function values having been calculated based at least on one or more measures of traffic conditions associated with said corresponding neighboring node; and routing said data packet based on said plurality of potential function values, wherein, for each one of said plurality of said neighboring network nodes to said first node, said corresponding potential function value determined therefor has been calculated further based on one or more potential function values which had been previously determined for a corresponding one or more of said second-level neighboring network nodes thereto, each of said one or more potential function values previously determined for said corresponding one or more of said second-level neighboring network nodes having been calculated based at least on one or more measures of traffic conditions associated with said corresponding second-level neighboring network node, and wherein said potential function value determined for each one of said neighboring network nodes to said first node has been calculated based on a mathematical function of said one or more potential function values for said one or more second-level neighboring network nodes thereto.