I was very surprised and pleasantly requested to present an overview of p2p.
It goes like this. The biggest problem in p2p is the ability to function as a server from behind a public NAT IP address. What is a NAT IP? Usually we use 192.168.0.0/16 or 172.16.0.0/12 or 10.0.0.0/8 addresses for private networks. Most of the time it is in the 192.168 range. These are known as RFC1918 private IP ranges which can be reused but are not public. You cannot run a server using them. You can only run clients on them. In order to go out on the Internet even as a client a NAT software like the MODEM/router or some such thing translates this private IP to a public one. For a server to be able to reply back to a client from the Internet both need to have globally unique public IP addresses the sort of address a NAT box has. Or you would have to manually do port forwarding or even do it with ssh. Anyway this is the biggest problem faced by IM protocols and Skype. How can somebody from behind a NAT without a public IP get notified that someone wishes to talk to them? Complex stuff no? In order to do that we have to have a rendezvous server. Look at my article. http://linuxjournal.com/9004 Now don't get distracted. Once you are able to access from behind a NAT, the next thing you would need to do for p2p is being able to run the application from on top of the p2p architecture. Vembu technologies, a million dollar company in Velachery has a backup software that does p2p over a network. I have done some very critical work for them in 2007. And file sharing protocols need to build a certain complex architecture on top of the p2p infrastructure which is already complex but the advantage is that you get a lot of resilience, fault tolerance and scalability which no client server arch can give. Okay I think now you guys should take over. Specifically when it comes to file sharing I am afraid I do not have the requisite knowledge. You will have to have a protocol like the stupid noisy NetBEUI or some such thing using Samba. You can discover p2p nodes that way. Then you need to share files using NFS or Samba using p2p. It will sure be fun. But a lot of work. Even if you dont' come up with anything great you would have learnt a lot about networking in the process and you would be on the way towards becoming a knowledgeable as I in networking in about 10 years. I have been doing networking all my life, I started in college in Trichy back in 1996 and still going strong. Think of it. -Girish -- Gayatri Hitech http://gayatri-hitech.com [email protected] _______________________________________________ ILUGC Mailing List: http://www.ae.iitm.ac.in/mailman/listinfo/ilugc
