Meridian is a peer-to-peer overlay network for performing location-aware node and path selection in large-scale distributed systems. It provides a simple lightweight framework for keeping track of location information for participating nodes, without using virtual coordinates. Instead, it builds a distributed, failure resilient overlay graph, maintains the graph using a gossip protocol, and performs direct measurements in response to queries.
We have implemented three applications using the Meridian framework. Our applications currently (1) find the closest (lowest latency) node to a given target, (2) select the most centrally located node in a given set, and (3) discover a node within latency bounds of multiple targets. The system works by performing a multi-hop search where the node at each hop exponentially reduces the distance to a target within the solution space. The Meridian framework is used to provide a resilient, loosely structured overlay network that takes advantage of the rough conformance to triangle inequality of network latencies to intelligently reduce the necessary search space at each hop, allowing the system to be highly scalable.
We are currently examining whether Meridian can be applied to other positioning related problems.