1. A method for routing data between neighboring nodes in a network, comprising: determining at a node, a successor set of nodes for a destination wherein said successor set is free of loops at every instant even when link costs are changing with time.