Despite their growing popularity, the behavior of super-peernetworks is not well understood. For example, what are the potential drawbacks of super-peer networks? How can super-peers be made more reliable? How many clients should a superpeer take on to maximize efficiency? In this paper we examinesuper-peer networks in detail, gaining an understanding of their fundamental characteristics and performance tradeoffs. We alsopresent practical guidelines and a general procedure for the design of an efficient super-peer network.