Gergely,
Csúcs (wizard@avalon.aut.bme.hu)
Kálmán,
Marossy (coloman@avalon.aut.bme.hu)
Hassan,
Charaf (hassan@avalon.aut.bme.hu)
BUTE Department of Automation and Applied Informatics
Nowadays
the relevance of distributed systems is unquestionable. Besides other
well-known distributed architectures as three/multi-tier, the importance of
Peer-to-Peer (P2P) systems; where the behaviour of participants is not
exclusive; is emerging.
A
P2P network works in a different way compared to the conventional client-server
architecture: the roles are not pre-determined; in fact it is a requirement
that every participant has to be able to share some kind of resource with the
system, in return for the requisition of services or resources offered by
others. The mentioned shareable resources typically fall in one of the
following categories: files, computational power, user presence (e.g. chat,
messaging, etc.).
In
this paper we describe the general structure of P2P systems; we give a
comparison of various existing and widespread implementations, focusing on
file-sharing applications. Thereafter we inspect the fundamental questions of
designing and implementing such an application, with the analysis of typical
arising problems.