skip to main content
Department of Computer Science University of Colorado Boulder
cu: home | engineering | mycuinfo | about | cu a-z | search cu | contact cu cs: about | calendar | directory | catalog | schedules | mobile | contact cs
home · undergraduate program · senior project · projects · 

Senior Project - DistribuStream


Peer Distributed Transfer Protocol

Senior Project: 2006-2007
Ashvin Mysore, Galen Pahlke, James Sanders and Thomas Stapleton
Boulder, CO

ClickCaster, Inc. is a small, Boulder-based startup focused on the syndicated distribution of on-demand media. Currently, their software platform provides content creation and delivery tools for audio and video podcasts. ClickCaster's current software serves video and audio streams using a traditional network model -- many clients, all streaming data off a single server. They wanted to reduce bandwidth costs by moving to a peer-to-peer distribution system. This would allow their software to scale much more readily to the needs of their clients, letting ClickCaster sell their platform to companies with far more limited bandwidth than they are presently able to do.

The solution, DistribuStream, looks like a peer-to-peer network architecture with a centralized server. Peer nodes function as both a server and a client, which will reduce bandwidth on the centralized server and thus decrease costs for ClickCaster and their clients. Further, the network will improve, in terms of transfer speeds and file availability, as the number of clients increases.

The centralized server is used to guarantee the availability of files and to control content distribution on the network, which is vital for the copyrighted material that is served. And since the server utilizes strict central control of the transfer process, files can be streamed and a steady rate of traffic delivered to clients can be ensured. From the perspective of the end user, the content is selected and viewed as if it came directly from the server. This transparency allows for users to interact with the system in their normal fashion. The software was implemented using Ruby on Rails.

Test Environment
Test Environment
See also:
Department of Computer Science
College of Engineering and Applied Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
Send email to

Engineering Center Office Tower
ECOT 717
FAX +1-303-492-2844
XHTML 1.0/CSS2 ©2012 Regents of the University of Colorado
Privacy · Legal · Trademarks
May 5, 2012 (14:07)