Hello all,
Thanks for kind attention!
I am new guy in the P2P field and am just going through BitTornado source code/forums to understand how BitTornado handles NAT Traversal problem. My understanding so far is that there are ONLY 2 options. OR is there anything beyond the following? ::
1. Use Port-Forwarding: i.e. Manually configure router for port-forwarding.
2. If router supports UPnP, follow guidelines mentioned in an article on this forum titled :"A guide to make uPnP work - with pictures"
My Questions:
1. Does BitTornado use technique like TCP Hole Punching to traverse NAT?
2. I checked 2 relevant files in source code:
a) natpunch.py : has some code regarding UPnP
b) NatCheck.py: I didnt quite understand what exactly happens here.
Please tell me if there exists a code to do TCP hole punching?
3. Can BitTornado handles a case where 2 peers transferring data are both behind different firewall/NATs? Or BitTornado handles only 1 peer behind NAT case.
Request you to help me out. BitTornado python code seems quite neat but still, any comments in this regard would be of immense help.
If this is not the correct forum, guide me to the correct one!
Best Regards,
nsm
|