Distributed job scheduling in a peer-to-peer video recording system
Since the advent of Gnutella, Peer-to-Peer (P2P) protocols have matured towards a fundamental design element for large-scale, self-organising distributed systems. Many research efforts have been invested to improve various aspects of P2P systems, like their performance, scalability, and so on. However, little experience has been gathered from the actual deployment of such P2P systems apart from the typical file sharing applications. To bridge this gap and to gain more experience in making the transition from theory to practice, we started building advanced P2P applications whose explicit goal is â€śto be deployed in the wildâ€ť. In this paper, we describe a fully decentralised P2P video recording system. Every node in the system is a networked computer (desktop PC or set-top box) capable of receiving and recording DVB-S, i.e. digital satellite TV. Like a normal video recorder, users can program their machines to record certain programmes. With our system, they will be able to schedule multiple recordings in parallel. It is the task of the system to assign the recordings to different machines in the network. Moreover, users can â€śrecord broadcasts in the pastâ€ť, i.e. the system serves as a short-term archival storage for TV programmes, too. Since we want the system to be evaluated by a large number of users, we decided to build it as a plug-in for the popular and widely deployed Linux Video Disk Recorder (VDR) software (http://www.cadsoft.de/vdr/). VDR already offers the basic recording functionality, thus we can focus on the aspect of cooperatively scheduling recordings. No definite results can be discussed yet, as the work presented here is in progress. Nevertheless, we are already able to point out some important design issues and open research questions.
Full Text: PDF