[tahoe-lafs-trac-stream] [tahoe-lafs] #1086: servers should attempt to open connections to clients
tahoe-lafs
trac at tahoe-lafs.org
Mon Oct 10 10:45:43 PDT 2011
#1086: servers should attempt to open connections to clients
------------------------------+------------------------
Reporter: zooko | Owner:
Type: enhancement | Status: new
Priority: major | Milestone: eventually
Component: code-network | Version: 1.7β
Resolution: | Keywords: introducer
Launchpad Bug: |
------------------------------+------------------------
Comment (by davidsarah):
Replying to [comment:8 zooko]:
> tjgillies added a FAQ entry on the wiki: wiki:FAQ?version=52#Q21_NAT
which says:
> Ideally, all clients attempt to open connections to all servers, and all
servers attempt to open connections to all clients. So, if the client is
not behind NAT, then even if the server is behind NAT. However, this is
not currently the case. Currently what it does is that all clients attempt
to open connections to all servers, but if there is a connection between
two Tahoe-LAFS processes (== Tahoe-LAFS nodes) it can re-use that
connection for any client or server in either node. So, when you enabled a
storage server on the public facing server, that caused the node behind
NAT to initiate a TCP connection to the node on the public facing server.
Once that connection was established, that enabled the node there to *use*
the server behind NAT.
The current behaviour is a bug for the following reason: If a node is
behind a NAT and is only intermittently connected, but has storage service
enabled (by mistake, perhaps), then it will sometimes be used as a server
and sometimes be inaccessible. Worse, it will only be accessible to some
subset of the other nodes. This leads to poor preservation and
availability. It is better for the NAT to cause the node to always be
inaccessible as a server.
I also disagree that we should be changing the behaviour to one style now
and then changing it to the opposite style later. It makes more sense to
have a config switch (but I don't know where that switch should be).
--
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1086#comment:12>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list