Flooding is widely used in unstructured peer to peer (P2P) systems, such as Gnutella. Although it is effective in content search, flooding among peers or super-peers causes large volume of unnecessary traffic. To address this problem, we propose an efficient and adaptive search mechanism, adaptive flooding routing algorithm (AFRA). AFRA provides the flexibility to adaptively adjust the number of relay neighbors and TTL value to meet different performance requirements. The effectiveness of AFRA is demonstrated through simulation studies. Primary experimental results show that our new AFRA solution reduces about 65% of the flooding messages while maintaining the acceptable high searching quality