There are a variety of peer-to-peer (P2P) systems for sharing documents currently available. According to their data organization, P2P systems are classified into two categories: structured and unstructured P2P systems. In structured P2P systems, peers are organized according to some mapping techniques, e.g. hashing function. Whereas in unstructured P2P system, peers are connected to each others randomly; resources are not moved to other peers but hosted on site. Unstructured P2P systems offer a more flexible and autonomous environment, as they require less control for the placement of resources and peers. This work focuses on experimenting on unstructured P2P systems. The challenge in unstructured P2P system is designing routing strategies that lead the user in finding the documents needed. Routing strategies in unstructured P2P system need to consider the dynamic aspects of P2P systems; peers are dynamic and constantly joining and leaving the system, network load changes continuously and resources are added and removed over the time. Therefore, the routing strategy must adapt to such changes to maintain its performance.