We have implemented P2P for our remote control product by utilizing punching UDP hole on NAT gateways. You can download [url removed, login to view] and [url removed, login to view] for a trial. the viewer program run on one PC can connect to the agent program run on another PC. The each PC can be located within a different LAN connected to internet. The program will always try P2P connection first, we wish the success rate will be over 95% for simple networks, such as router with ADSL, like Hamachi. Now we have not test this software in a large scale, in a lot of case, it can make p2p connection successfully, but in some case we got reported it failed, even for the simple networks of SME.
If you don't have successful experiences on P2P over UDP, or no confidence to work out the successful solutions to achieve the 95% p2p success rate . Pls don't bid. You should present me your strength and experiences on P2P, and even the theories or the ideas to improve the success rate, make me believe that your solution is the most worth to invest for this task.
I don't know if a STUN implementation or ICMP_ECHOREPLY packet cheating on firewall will help on this task. Welcome your good idea.
The programming language will be VC++ 6.0, the deliverables include,
[url removed, login to view] client lib which can create P2P connection with another same client with success rate over 95%
[url removed, login to view] server program if you think it is required
[url removed, login to view] file transfer testing program which utilize p2p connection
[url removed, login to view] clean and well documented sources
The deliverables should run on windows 2000 and above windows platform , including windows vista and 2003. The network scenarios should cover all kind of internet gateways for personal , home, small companies , except for those network with proxy forced or most stringent firewalls.