[Discuss] peer to peer software
John Abreau
abreauj at gmail.com
Sat Jun 7 10:34:23 EDT 2014
I would imagine that peer discovery is the main thing that distinguishes
peer-to-peer from client-server. Other than that, you should be able to use
any existing network programming toolkits or libraries, and you could
probably use those toolkits and libraries to implement peer discovery. It
shouldn't be necessary to do everything yourself all the way down to the
socket level.
I'd start by looking at existing peer-to-peer strategies. DNS solves the
problem of finding other name servers by seeding itself with 13 hardwired
"root" nameservers. Jabber solves it with a "presence server" that
endpoints use to locate each other. I'm not sure how Bonjour/ZeroConf
handles it, but that may be limited to LANs and not scalable beyond that,
particularly if it's using a broadcast protocol similar to ARP.
Bittorrent historically used .torrent files that contained the address of a
server, or "tracker", for locating peers sharing a particular file or set
of files, but more recently it added something called a "magnet" uri that I
understand is more of a peer discovery mechanism. Not sure how it works,
but it may be worth looking into its design for ideas.
On Sat, Jun 7, 2014 at 9:50 AM, Stephen Adler <adler at stephenadler.com>
wrote:
> Blu,
>
> I'm looking to write a peer to peer application and was looking for some
> tool kits or libraries or other software bit which I could use to build my
> application. I did a quick search of peer to peer software and all I got
> were discussions and books about general peer to peer applications, but
> nothing on existing peer to peer software libraries or tools which one can
> use in order to build your application. Is there such a thing "out there"?
> Or do I need to write all tcp socket communications from scratch? (peer
> discovery algorithms etc.)
>
> Thanks.
>
> Steve.
>
> _______________________________________________
> Discuss mailing list
> Discuss at blu.org
> http://lists.blu.org/mailman/listinfo/discuss
>
--
John Abreau / Executive Director, Boston Linux & Unix
Email: abreauj at gmail.com / WWW http://www.abreau.net / PGP-Key-ID 0x920063C6
PGP-Key-Fingerprint A5AD 6BE1 FEFE 8E4F 5C23 C2D0 E885 E17C 9200 63C6
More information about the Discuss
mailing list