In recent years, Peer-to-Peer technology has an extensive use. Botnets have exploited this technology efficiently and introduced the P2P botnet, which uses P2P network for remote control of its bots and become one of the most significant threats to computer networks. They are used to make DDOS attacks, generate spam, click fraud and steal sensitive information. Compared with traditional botnets, P2P botnets are harder to be defended and hijacked. In this study we discuss various P2P botnet detection approaches and evaluate their effectiveness. We identify the advantages and shortcomings of each of the discussed techniques. This can guide the researchers to a better understanding of P2P botnets and easier for them developing more sufficient detection techniques. Our evaluation shows that each technique has its own advantages and limitations. Two or more detection techniques might be used together, in order to have a robust P2P botent detection.