Algorithms for IP network design with end-to-end QoS constraints