In this paper we discuss methods for adjusting the layout of virtual paths in an ATM network, to the dynamics of changes in the usage of the network by its end-users. We first present a centralized algorithm for finding a better layout for the current traffic pattern, and for applying the change in the network and discuss its drawbacks. We then present a distributed algorithm that emulates the centralized algorithm with a much lower overhead, and enhanced durability to faults. We prove that both algorithms produce identical layouts, thus showing the superiority of the latter algorithm. Both algorithms base the changes in the network on a new rerouting protocol, which does not cause any losses in data, nor changes in the FIFO order of cells.