Project Description
The GRAPES library aims at providing all the basic functionalities needed for building P2P streaming applications: peer sampling, chunk scheduling, exchanging buffermaps and chunk ID sets, sending and receiving chunks, etc... In this sense, GRAPES can be seen as a set a building blocks for easily developing more complex applications.
GRAPES only depends on some basic functionalities for sending and receiving messages, and any generic Messaging Layer can be used for this purpose.
Programs based on GRAPES just need to implement some basic logic gluing the libraries' functionalities together (this is generally implemented as a simple control loop receiving messages from the network and passing them to the libraries).