Quantum information is encoded in quantum mechanical states of physical systems. Hence, reliable transmission of quantum information from one location to another entails the perfect transfer of quantum mechanical states between these locations. We consider the situation in which the system used for this information transmission consists of N interacting spins and we address the problem of arranging the spins in a network in a manner which would allow perfect state transfer over the largest possible distance. The network is described by a graph G, with the vertices representing the locations of the spins and the edges connecting spins which interact with each other. State transfer is achieved by the time evolution of the spin system under a suitable Hamiltonian. This can be equivalently viewed as a continuous time quantum walk on the graph G. We find the maximal distance of perfect state transfer and prove that the corresponding quantum walk exhibits an exponential speed-up over its classical counterpart.