A multidimensional heuristic for social routing in peer-to-peer networks