Downloads
The "Spontaneous Virtual Networks" (SpoVNet) project is proud to release the first complete open source implementation of the SpoVNet architecture for spontaneous and flexible creation of overlay-based services and applications. Details on the architecture and the SpoVNet project can be found in the publications list . SpoVNet is funded by the National Foundation of the State Baden-Württemberg, Germany (Baden-Württemberg Stiftung gGmbH). The SpoVNet software provides a convenient toolbox for the development of overlay-based services and applications across heterogeneous networks. It comprises base software, three examples for overlay-based services, and a game application for demonstration purposes. Specifically, this initial software release (from the first funding period aka SpoVNet 1.0) includes
-
the award-winning SpoVNet base "ariba"
(KuVS Software Award 2011, successfully demonstrated at ACM SIGCOMM 2009 and IEEE INFOCOM 2010), - the SpoVNet multicast service "MCPO" (also part of the demonstrations),
- the SpoVNet event notification service "EONSON",
- the SpoVNet event correlation service "Cordies",
-
the SpoVNet-based multiplayer game "PlanetPI4".
Quickstart instructions for a demo-installation of the complete SpoVNet 1.0 framework on Ubuntu 12.04 can be found here . The SpoVNet 2.0 release from the second funding period can be found here .
Omnibus File Transfer, a SpoVNet-based file transfer client can be downloaded here .
SpoVNet Open Source Portal
The SpoVNet Open Source Portal hosts all SpoVNet downloads, as well as documentation, installation instructions, forums and a ticketing system for each component.
Complete SpoVNet Installation Package
Install Script
|
Requires |
---|---|
install_spovnet.sh
|
Ubuntu 12.04 |
To install the SpoVNet software, a global install script can be used (install_spovnet.sh). It loads all needed components and compiles them in a local folder (./spovnet). Some packages need to be installed in advance, though. They can be installed with the following command:
sudo apt-get install build-essential libtool autoconf automake \ libgmp3-dev libboost-thread1.46-dev libboost-system1.46-dev \ libboost-regex1.46-dev libssl-dev libbluetooth-dev libavahi-client-dev \ libirrlicht1.7a libirrlicht-dev
After installing these packages, untar the archive you downloaded and execute the install script (no superuser rights required):
./install_spovnet.sh
Choose the install folder and proceed. The installation can take up to 30 minutes, because a lot of libraries have to be downloaded from third-party-developers. If problems or errors occur you can check the file ./spovnet/install.log. After successful installation, the game PlanetPI4 can be started as follows:
cd ./spovnet/build/bin ./planetpi4
After starting the application a window pops up that needs some input in order to start the game. Choose a player name and leave the SpoVNet name as it is ('planetpi'). In the next step, an ariba endpoint has to be specified. This is a TCP port needed for communication (further info can be found here ). You can choose a port ba specifying
tcp{xxxx}
Replace 'xxxx' with your port of choice. Furthermore, the SpoVNet instance needs information how to look up other members. You need to fill in the 'ARIBA bootstrap hints', here. More infos can be found here . If you want to start a new instance of the game, leave the field blank. Otherwise, add the info in the form
planetpi{ip{xxx.yyy.zzz.www};tcp{uuuu}}
Replace the IP address ('xxx.yyy.zzz.www') and port ('uuuu') with the info from an already joined device. If you encounter problems with connecting, try a different TCP port for every device. After all informatrion have been provided, you can run the game either as bot or as manual player.
Ship control
W: Forward, S: Backward, Left arrow: Turn left, Right arrow: Turn right
A: Strafe left, D: Strafe right
Space: Fire, Escape: Leave game
Virtual Machine Development Environment
You can download a virtual machine in Virtual Box format that contains all SpoVNet components installed in a development environment
here
. The password for the user
spovnet
is
spovnet2011
SpoVNet Software Components
Component | Description |
---|---|
Ariba is an
overlay-based middleware that implements the underlay abstraction layer
of
the Spontaneous Virtual Networks (SpoVNet) architecture. It aims
to ease the development of flexible, adaptive, and spontaneous
overlay-based
services and applications on top of heterogeneous and mobile
networks. To this end, Ariba provides generic mechanisms for
establishing and maintaining
communication links across heterogeneous underlay networks using
an identifier based addressing scheme. Building upon these mechanisms,
applications can
spontaneously establish an invariant virtual network substrate and
use it for subsequent communication.
Go to SpoVNet Open Source Portal Go to Ariba Project Page |
|
MCPO realizes a group
communication service for applications (and potentially also other
services) wishing to send data to more than one receiver with a single
transmission.
MCPO resides between application and ariba, optionally using the
CLIO module for gathering Cross-layer information, if available.
Go to SpoVNet Open Source Portal Go to Project Page |
|
EONSON is the event
notification service intended to be used in the SpoVNet architecture. It
provides the
semantics of a content based publish/subscribe system. EONSON does
not rely on any broker network and allows subscribers to coordinate
among themselves on
a peer-to-peer basis to construct publish/subscribe overlay
topology according to the similarity relationships among their
subscriptions.
Go to SpoVNet Open Source Portal |
|
Cordies (CORrelation
in DIstributed Event Systems) is a distributed event correlation
detection system.
It consists of an arbitrary number of identical components which
are distributed in a SpoVNet instance. Each component can detect
multiple complex events by assessing
the intercorrelation of event messages.
Go to SpoVNet Open Source Portal |
|
Planet PI4 is a
simple multiplayer space shooter game, developed to demonstrate and
evaluate the
functionality of different SpoVNet components. The multicast group
communication service (MCPO) is used to communicate all game related
activities.
Computer-controlled players (bots) can be added, automatically
generating traffic by attacking any other players next to them. Both the
notification and correlation service (EONSON/Cordies) are
exemplarily used to publish and correlate all players' positions,
visualized by
highlighting the player's space ship when close to another player.
Go to SpoVNet Open Source Portal |
|
The HelloSpoVNet application is intended to be a "Hello World"-like
example program that helps to develop applications that run on top of
the SpoVNet architecture. It implements a simple chat application by
using the group communication service MCPO. The application includes a
minimal GUI that is implemented in the GIMP toolkit GTK+ using the gtkmm
C++ interface.
Go to SpoVNet Open Source Portal |
|
UNISONO implements the cross-layer information service of the
Spontaneous Virtual Networks (SpoVNet) architecture.
Its main goal is to simplify access to information required by
applications, e.g. for the organization and optimization of overlay
networks. At the same time, this reduces the load of both, nodes
and network, normally introduced by duplicate measurements.
Currently, UNISONO supports active measurements for node and
network properties and remote information requests.
Its modular architecture allows the simple implementation and
addition of measurement modules (M&Ms).
Go to SpoVNet Open Source Portal Go to Project Page |
Document Actions
- Send this
- Print this