VAST is a light-weight network library that supports Spatial Publish Subscribe (SPS) so that virtual worlds such as MMOGs and Second Life can be built more scalably.

Existing virtual worlds rely on static resource provisioning and partitioning that are expensive to deploy and have inherent scalability limits. VAST intends to provide an open source alternative that is scalable, affordable, and easily deployable.

VAST will have these properties due to a peer-to-peer (P2P) design, so that resource nodes can be added or removed any time, and dynamic load balancing is possible. VAST relies on a Voronoi-based Overlay Network (VON), which performs neighbor discovery and spatial queries in bounded amount of time (i.e., the query time does not increase as more nodes join the system). Additionally, VAST uses VSO to perform load balancing, and VoroCast to distribute messages via forwarding.

Schematic for a 2D Spatial Publish Subscribe (SPS). In a military example, black dots may be soldiers, and publications may be weapon ranges, while subscriptions may be the views of soldiers or radars. Note that a pub/sub area can be of arbitrary size, shape, or direction.

VAST Decoupled

VAST is also designed to be an experimentable middleware consisting of three major components: network-layer, protocol and simulator. Each is intended to be as self-contained as possible, and may be developed separately by different parties. This allows new algorithms or simulators be tried and tested for VAST’s properties and performance.

VAST utilizes existing open source software whenever possible. Specifically, Steven Fortune‘s sweepline algorithm is currently used for constructing Voronoi diagrams, and ACE is used as the underlying network layer to provide cross-platform extensibility.

VAST is under the GNU’s Lesser General Public License (LGPL) and can be downloaded at the following sources:

You can watch an illustration of VAST below. Note that these videos are illustrations generated from earlier iterations of the library.

Leave a Reply