A method and apparatus for peer-to-peer
file sharing is provided. In some embodiments, the method includes receiving a request for a
list of neighbor peers, where the request is made by a requesting peer device, and where the requesting peer device has a local
internet service provider (ISP). The method may also include employing a
server device to rank each neighbor peer in a plurality of neighbor peers based on whether the respective neighbor peer is external to the local ISP, and if the respective neighbor peer is external to the ISP, further based on a
cost metric associated with a next ISP hop from the requesting peer device to the respective neighbor peer. The method may also include generating the
list of neighbor peers based on the
ranking of the neighbor peers, and enabling transmission of the
list of neighbor peers to the requesting peer device.