Naanou
Undergrad final year, 2002.
Naanou was a massive design and coding undertaking. In short, it was novel as it was the first system to offer peer-to-peer file sharing over a scalable network substrate rather than flood-based approaches such as Gnutella which were the norm. Moreover, Naanou made use of some (at the time) recent findings relating to human behaviour and altruistic punishment, in order to improve people’s behaviour in a peer-to-peer network.
As far as I am aware, Naanou was the world’s first implementation of a distributed hashtable system for file sharing.
Here is the abstract from the thesis:
With the increased growth of peer-to-peer (P2P) file sharing communitiesm comes emerging problems. Inefficiencies present in the network structure hamper the scalability of the community. As the population exceeds the network’s limits, the associated increase in bandwidth usage causes a slowing of the entire network and potentially leads to failure of network functions. Originally designed for only small-scale usage, many P2P systems are faced with two options: redesign or restrict network growth, thus limiting the full potential of a peer-to-peer network.
With the introduction of a new class of peer-to-peer network algorthim, distributed hashtables, high performance and efficient scalability is possible, far beyond the capabilities of existing systems. This thesis explores utilising a distributed hashtable algorithm in the P2P file-sharing domain. A user-centred designed client is introduced, which offers features available in other file sharing clients but providing a significantly higher degree of scalability and performance. The means by which traditional P2P file sharing features could be mapped to the novel distributed hashtable-based system had not been explored at the commencement of this work and many important issues in the area are yet to be explored. The thesis presents a variety of designs and an implementation for metadata-based key publishing and searching and distributed file exchanging.
Also central to this work is how online communities, and in particular file sharing communities can achieve a level of self governance. Antisocial behaviours are discussed, as well as the results of two questionnaires conducted on the subject. These results demonstrated the level of antisocial behaviours present in file sharing communities - and how participants react to these behaviours. Altruistic punishment is suggested as a novel method for reducing antisocial behaviour within a file sharing community. Research on the positive effects of altruistic punishment on group cooperation levels is discussed, along with how this research applies to the P2P domain. A method for implementing decentralised moderation in a distributed hashtable system is introduced and the security implications of the method are explored.
When I started designing and building Naanou, it was the first of its kind, a traditional P2P filesharing system built on top of a scalable network substrate. This substrate - Chord - is a distributed hashtable network, and is highly efficient in mapping a given key to a value stored on the network.
Naanou builds on the distributed hashtable substrace and provides the full gamut of file sharing features users expect. Another problem currently present in filesharing communities - and online communities in general - is antisocial behaviour. Naanou tries to tackle this using decentralised peer moderation.
More
- Heyer, C. Naanou: A Scalable, Moderated P2P Network Unpublished thesis, School of Information Technology and Electrical Engineering, The University of Queensland, 2002. St. Lucia, Queensland, Australia.