I would like to implement a project that would work across the internet.
The scenario is having some files on a server, and clients should update they're files from the server's folder. But i was thinking of sharing the traffic, i should implement something like peer to peer, so files could shared between clients too! Say client 1 downloaded a file from the server, client 2 and client 3 could download the file from client 1, or client 2 from server and client 3 from client 1, or they could download from both sources!
I guess i should implement a server-client solution. But i hang on the p2p thing that i never used before and don't know any libraries on the subject. I have some knowledge over TCP protocol but this could serve on direct file transfer from server to client.
I use .NET 3.5 SP1 and C#.
Any suggestions on where to begin searching?