[tahoe-dev] Advertised invalid node port

Brian Warner warner at lothar.com
Tue Jun 15 23:15:10 UTC 2010


On 6/15/10 2:48 PM, slush wrote:
> Update:
> 
> After few hours and many restarts of both nodes I finally see correct
> port on slush2. I was confused a little because I expect that new port
> will be advertised immediately after slush1 restart and reconnect to
> node slush2.

Hm, it sounds like the Introducer wasn't propagating changes as fast as
you were expecting. To be honest, I'm not sure how fast it's supposed to
show up.

The Introducer's web page might be useful (the introducer gets a
web.port just like client/server nodes). It should list all the
announcements that it's heard and everything it's currently advertising.

The thing I'm least sure about is what clients do when they get
"replacement" announcements (i.e. announcements for servers that they've
already heard about). I remember writing code that spots these and uses
them to replace the Connector object with a new one (thus initiating a
new TCP connection), but I don't recall what the already-heard-about
criteria was. I also remember fixing some of this in my
#466-signed-introducer work, which makes me think that at least some of
it was broken beforehand.

You should probably also be aware that tahoe nodes will only initiate
connections to nodes that advertise themselves as servers. If node A has
their [storage]enabled config set to False, then other nodes won't try
to connect to them. (this bit me when I had one client node
port-forwarded but a second NATed server node was not forwarded, and I
wanted to take advantage of tahoe's bidirectional connectivity to let
everybody see the server: I had to mark my client as a server, with
'readonly=true' to keep it from accumulating shares, to get all the
connections to stick around).

cheers,
 -Brian



More information about the tahoe-dev mailing list