I do like the idea of using IPv6 brokerage to avoid the problem altogether.  I 
don't know how much work has been put into tahoe from an ipv6 perspective, if 
it 'just works', or if no one knows, but it seems like it would be the most 
future-proof way of combating the problem, since any grid utilizing it can just 
be rolled forward into native IPv6 transport when it becomes available for each 
node.

Best Regards,
Nathan Eisenberg
Sr. Systems Administrator - Atlas Networks, LLC
office: 206.577.3078 | suncadia: 206.210.5450
www.atlasnetworks.us | www.suncadianet.com

From: [email protected] [mailto:[email protected]] 
On Behalf Of Jody Harris
Sent: Sunday, December 20, 2009 7:54 AM
To: [email protected]
Subject: Re: [tahoe-dev] Tahoe-lafs and nodes behind NAT (behind another NAT)

BitTorrent is another open project that has overcome these kinds of problems.

Don't take this personally, I'm just brainstorming, and this thread is the best 
place to do that.

So, running list of technologies that have overcome this problem:
 - SIP
 - IM file transfer
 - BitTorrent

There's an article at The H about "How Skype & Co. Get Round Firewalls."
http://www.h-online.com/security/features/How-Skype-Co-get-round-firewalls-747197.html

It's on my reading list for this week.

I'm fully aware of the blood and gore involved in ripping out a piece of code 
like this and replacing it. It's going to be ugly. I'm just looking around for 
existing solutions. Brilliance does not reside in "original solutions," but 
rather in employing "the wheel" in unexpected ways. Often, the best way to 
solve a difficult problem is not to pop open the hood and get elbow-deep in 
[code] yourself, but rather it is pointing the right person at the solution and 
letting them surprise you.

j
----
- Think carefully.
- Contra mundum - "Against the world" (St. Athanasius)
- Credo ut intelliga - "I believe that I may know" (St. Augustin of Hippo)

On Sat, Dec 19, 2009 at 3:25 PM, Zooko Wilcox-O'Hearn 
<[email protected]<mailto:[email protected]>> wrote:
There are currently five tickets about making it easier for people to
use Tahoe-LAFS through firewalls and NATs.  You can see them by gong
to the ViewTickets page:

http://allmydata.org/trac/tahoe/wiki/ViewTickets

and scrolling down to the "Keywords" section and look for the keyword
"firewall".  They are these:

http://allmydata.org/trac/tahoe/ticket/49#<http://allmydata.org/trac/tahoe/ticket/49>
 UPnP
http://allmydata.org/trac/tahoe/ticket/50#<http://allmydata.org/trac/tahoe/ticket/50>
 STUNT/ICE
http://allmydata.org/trac/tahoe/ticket/169#<http://allmydata.org/trac/tahoe/ticket/169>
 tcp hole-punching!
http://allmydata.org/trac/tahoe/ticket/445#<http://allmydata.org/trac/tahoe/ticket/445>
 implement relay: allow
storage servers behind NAT
http://allmydata.org/trac/tahoe/ticket/754#<http://allmydata.org/trac/tahoe/ticket/754>
 merge manually specified
tub location with autodetected tub location

There are some interesting things in some of these!  In #49 Shawn
Willden did a quick experiment (sort of what Extreme Programming
calls a "spike") with miniupnp that was promising.  In #169 Greg
Hazel offered some Python code to integrate TCP hole-punching magic
right into the Python sockets.

My personal favorite approach right now is the extend the helper to
do immutable download, mutable upload, and mutable download and then
treat the helper as the preferred solution for this problem.
However, like Shawn, I am not volunteering to work on this right
now.  (If you want to know what I'm volunteering to work on right now
search for tickets that I've accepted.  I'm mostly trying to finish
#778 and other tickets that I consider essential for v1.6, plus fix
up buildbots and other testing or quality control issues that I
consider essential for v1.6.)

Regards,

Zooko
_______________________________________________
tahoe-dev mailing list
[email protected]<mailto:[email protected]>
http://allmydata.org/cgi-bin/mailman/listinfo/tahoe-dev

_______________________________________________
tahoe-dev mailing list
[email protected]
http://allmydata.org/cgi-bin/mailman/listinfo/tahoe-dev

Reply via email to