Naanou came about in my honours year and was a massive design and coding undertaking. Here is the abstract from the thesis:
With the increasing population of peer-to-peer file sharing users these communities are faced with 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 - distributed hashtables - high performance and efficient scalability is possible, far beyond the capabilities of existing systems. This thesis explores applying a distributed hashtable system to the P2P file sharing domain, introducing a user-centred designed client that 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 it's 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: