\chapter{Conclusion and Further Work}
\pagestyle{myheadings}
\markright{}

\label{conclusion}

In this thesis we propose a novel architecture for a peer to peer system, which leverages information about the physical location of the nodes in the system to make the system more efficient. Our system is built on top of Chord, which is one of the architectures to build a completely virtual peer-to-peer system and is based on distributed hash tables. Using experiments based on simulations we show that our system can achieve a significant improvement in the performance of the system, which is measured as the distance traveled by a request in order to be satisfactorily serviced. 

In our system we use two rings:one based on Chord and the other where the nodes are arranged along the ring based on their actual physical locations. The spatially arranged ring is used to accelerate the response times for popular documents and the plain chord ring is used as a safety net, which guarantees that all requests will be answered correctly. For analyzing the performance of the system we use a non-uniform distribution of requests, based on Zipf's law. Using replication along with the two ring system, we achieve a considerable improvement in performance and at the same time effectively control the load on the nodes in the system. 

There are a number of areas in which this research can be extended. The first step would be to build an actual system and analyze the effectiveness of the protocols that we propose. The measurements can be more detailed. The metric that we use to analyze the {\it distance} between two nodes can be more refined. Right now it is just the physical distance between the nodes. Information about the quality of the link between two nodes can be incorporated into the calculation of this metric. One more direction is to do more research is to get a more comprehensive analysis of the impact of replication on the two rings.