[Twisted-Python] Punching a firewall with Twisted?
glyph at twistedmatrix.com
Fri Jun 18 00:49:41 EDT 2010
On Jun 17, 2010, at 9:37 AM, Stefan Reich wrote:
>> I'm not sure about Deluge, but <http://divmod.org/trac/wiki/DivmodVertex> does some NAT hole-punching. It does it via sending UDP packets though, not by communicating directly with your router.
> Yeah, I found that too... it looks quite interesting, but as you say, it
> is UDP-based. I know that there is a working TCP-solution. As I said,
> Deluge does it, and for example, the original Bittorrent client does it too.
For what it's worth, Vertex includes an *implementation* of TCP, on top of UDP instead of IP. You can run any Twisted stream-based protocol with Vertex, you don't need to send UDP datagrams around.
(In fact, Vertex _only_ provides a stream-based transport; the UDP part is an implementation detail. If possible, vertex will try to use TCP first, and could be modified to use a techniques such as the ones described in <http://www.brynosaurus.com/pub/net/p2pnat/> section 4 to speak real TCP instead.)
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Twisted-Python