Quorum-based location service is introduced in [10]. Each node distributes its current position along a ‘‘column’’ in the network. When a node wants to discover the location of another node, it searches along a ‘‘row’’ in the network. This row intersects the columns of all of the other nodes, thus ensuring discovery. The weakness of this protocol is that location update and search has to cross the entire network, and network boundary has to be included to guarantee intersection. In addition, if all the nodes are collinear along a column, every node has to store every other’s location, thus suffering from large storage load. Summarizing, all of these algorithms (but GCLP [8]) have some (if not all), of the following weaknesses: requirement for foreknowledge of the network, frequent global computation, inconstant per-node storage load, communication bottleneck spots, and non locality-aware service lookup. On the contrary, the algorithm iMesh used in this paper has none of these drawbacks. However, iMesh does not guarantee service discovery in all scenarios, especially for sparse networks or in the presence of holes in the network. It uses only greedy routing which may end up in a local maximum.