The network discovery (verification) problem asks for a minimum subset Q V of queries in an undirected graph G = (V, E) such that these queries discover all edges and non-edges of the graph. This is motivated by the common approach of combining local measurements in order to obtain maps of the Internet or other dynamically growing networks. In the distance query model, a query at node q returns the distances from q to all other nodes in the graph. We describe how the existence of an individual edge or non-edge in G can be deduced by potentially combining the results of several queries. This leads to a characterization of when a set of queries Q "discovers" the graph G. In the on-line network discovery problem, the graph is initially unknown, and the algorithm has to select queries one by one based only on the results of the previous ones. We study the problem using competitive analysis and give a randomized on-line algorithm with competitive ratio O( n log n) for graphs on...