Peer-to-peer (P2P) networks are in the spotlight due to the wide-spreading file-sharing applications. Many file-distributing algorithms have been suggested and implemented. The various solutions need to cope with a heterogeneous and unstable environment, where peers can arrive and depart at a high rate (churn). Sometimes cooperation cannot be assumed. These issues make the structured attitude less practical. Even some of the algorithms that are considered as unstructured try to maintain long-term parent-child relationships. Existing unstructured (mesh-only) algorithms for file-distribution work well on the Internet on the average. But some of the participating peers may suffer from a slow start or high latency because of the randomness of the peer and piece selection for upload and download. In this paper we propose a fair unstructured system for file-distribution from a single source, with no central authority. The proposed protocol is fair both with respect to load balancing and with respect to the latency in each peer. It is based on a novel weights-algorithm that helps peers to determine what piece to ask from which peer, in a manner that increases their chance to get served. In this way it also lowers the overhead. The proposed algorithm welcomes newcomers while being resilient to churn, being resilient to free-riders, and adaptive to heterogeneous bandwidth.