Algorithms for Large-Scale Topology Discovery