ACET




Tycho Swarm

This utility provides distributed content distribution for Tycho applications, inspired by the outcome of a case study which explored the use of Tycho to enhance the functionality of existing online multi-player games. The swarm utility provides a general-purpose system to distribute content to multiple destinations. The implementation utilises the bandwidth of clients as they download the content to speed up the overall distribution of the content.

The utility was developed to test the potential of Tycho utilities and also further stress test the overall infrastructure:

Its potential uses include:

Architecture

The Tycho swarm utility architecture
The diagram above shows the high-level architecture of the Tycho swarm utility. Content is being distributed among a swarm of seven peers containing two seeds.

Lower level architecture of the Tycho swamr utility
The figure above shows the internal workings of the Tycho swarm utility. The majority of the functionality for the utility is provided by the Tycho framework with only code specific to handling the chunking of data for the swarm added.

Swarm Demo

An AJAX powered web-based client was created to demonstrate the swamr utility. The client used HTML and AJAX to interface with the Tycho framework. The demo was given as part of Mat Grove's PhD viva, several files were transfered between UK Universities as part of a live demonstration of Tycho for the examiners.

The following screenshots show a client at Portsmouth University publishing (seeding) a Linux kernel tar file to the Tycho swarm, a client at Reading University then discovers and downloads the tar. When the Reading client has completed the download it becomes a seed. When clients download content which is available from multiple sources they download chunks of content from each seed. When multiple clients download content simultaneously they also exchange chunks during the download. In this way clients contribute bandwidth back to the swarm.

Valid XHTML | Copyright | Last Modified: 22/Feb/2007 |