| A new form of network called Peer-to-Peer network has come into being. P2P network breaks the traditional model of Client/Server. Each node not only plays a role of server that provides the service but also plays a role of client that enjoys the uses of resources in Peer-to-Peer network. Peer-to-Peer network make it possible that spare computer powers can be taken full advantage of. The precondition of sharing resources in large area is to route the resources efficiently. The new pattern of network brings some new characters such as no center in the network, so it more difficult to search the resources efficiently.There are already some methods in searching resource in P2P network. Napster uses a central server that stores the indexes of the files to help finding the resources, but the central server will become the bottleneck. Decentralized but Structured models use Distributed Hash table (DHT) method, can find resource in few hops, but it doesn't support the fuzzy search. Unstructured P2P network is widely used because it is simple and robust. Most of the file-sharing software in P2P network uses the flooding method to search resource. With the growth of the network, the number of the message increases rapidly. These messages include a lot of unnecessary duplication of packet flow. Therefore, we should improve the search mechanism which is simple and efficient.This paper introduces some improved search approaches, including taking into account the heterogeneous nature of the P2P network node and dividing nodes into two types: kernel-nodes with more resources and edge-nodes by their answer capability, storage capacity, resources and the ability to handle information transmission。Discovering the interest of each node from their query history and introducing friend-nodes to each peer. Dividing the search process into three phases: searching Friend-node, Kernel-node and Edge-node. If at any stage of the query return enough results, the search process will be completed. Finally, the Simulation shows that improved methods enhance the search efficiency and reduce the network costs. |