Opened 12 years ago

Last modified 7 years ago

#548 closed defect (Fixed)

recent dir auths are dropping routers from networkstatus

Reported by: arma Owned by:
Priority: High Milestone:
Component: Core Tor/Tor Version: 0.2.0.9-alpha
Severity: Keywords:
Cc: arma, nickm Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Nov 09 18:11:21.626 [notice] Tongagetting added to v2 vote.
Nov 09 18:11:21.647 [notice] I added 1 Tongas to the v2 vote
Nov 09 18:11:52.892 [notice] Tongagetting added to v2 vote.
Nov 09 18:11:52.911 [notice] I added 1 Tongas to the v2 vote
Nov 09 18:11:57.496 [notice] A descriptor for Tonga (published 2007-11-09 23:11:
57) was spotted in routerlist_add_to_routerlist
Nov 09 18:11:57.496 [notice] A descriptor for Tonga (published 2007-11-09 23:11:
57) was spotted in routerlist_replace, replacing another descriptor
Nov 09 18:11:57.496 [notice] A descriptor for Tonga (published 2007-11-09 23:11:
57) was spotted in routerlist_add_to_routerlist, being better than the old Tonga
Nov 09 18:12:28.223 [notice] Tongagetting added to v2 vote.
Nov 09 18:12:28.242 [notice] I added 1 Tongas to the v2 vote
Nov 09 18:12:59.058 [notice] Tongagetting added to v2 vote.
Nov 09 18:12:59.077 [notice] I added 1 Tongas to the v2 vote

...

Nov 10 12:12:32.405 [notice] Tongagetting added to v2 vote.
Nov 10 12:12:32.422 [notice] I added 1 Tongas to the v2 vote
Nov 10 12:12:36.812 [notice] A descriptor for Tonga (published 2007-11-10 17:12:
36) was spotted in routerlist_add_to_routerlist
Nov 10 12:12:36.812 [notice] A descriptor for Tonga (published 2007-11-10 17:12:
36) was spotted in routerlist_replace, replacing another descriptor
Nov 10 12:12:36.812 [notice] A descriptor for Tonga (published 2007-11-10 17:12:
36) was spotted in routerlist_add_to_routerlist, being better than the old Tonga
Nov 10 12:13:04.723 [notice] A descriptor for Tonga (published 2007-11-09 23:11:
57) was spotted in routerlist_reparse_old, getting ready to go back onto the rou
terlist.
Nov 10 12:13:04.723 [notice] A descriptor for Tonga (published 2007-11-09 23:11:
57) was spotted in routerlist_add_to_routerlist
Nov 10 12:13:04.723 [notice] A descriptor for Tonga (published 2007-11-09 23:11:
57) was spotted in routerlist_replace, replacing another descriptor
Nov 10 12:13:04.723 [notice] A descriptor for Tonga (published 2007-11-09 23:11:
57) was spotted in routerlist_add_to_routerlist, being better than the old Tonga
Nov 10 12:13:06.003 [notice] Tongagetting added to v2 vote.
Nov 10 12:13:06.027 [notice] I added 1 Tongas to the v2 vote

...

Nov 10 12:22:37.467 [notice] Tongagetting added to v2 vote.
Nov 10 12:22:37.485 [notice] I added 1 Tongas to the v2 vote
Nov 10 12:22:50.643 [info] dirserv_orconn_tls_done(): Found router Tonga to be r
eachable. Yay.
Nov 10 12:23:11.088 [notice] Tongagetting added to v2 vote.
Nov 10 12:23:11.106 [notice] I added 1 Tongas to the v2 vote

...

Nov 10 12:43:42.098 [notice] Tongagetting added to v2 vote.
Nov 10 12:43:42.116 [notice] I added 1 Tongas to the v2 vote
Nov 10 12:44:20.516 [info] dirserv_orconn_tls_done(): Found router Tonga to be r
eachable. Yay.
Nov 10 12:44:21.532 [notice] Tongagetting added to v2 vote.
Nov 10 12:44:21.550 [notice] I added 1 Tongas to the v2 vote
Nov 10 12:45:01.439 [notice] Tongagetting added to v2 vote.
Nov 10 12:45:01.466 [notice] I added 1 Tongas to the v2 vote

...

Nov 10 14:09:42.178 [notice] Tongagetting added to v2 vote.
Nov 10 14:09:42.197 [notice] I added 1 Tongas to the v2 vote
Nov 10 14:10:14.103 [notice] Tongagetting added to v2 vote.
Nov 10 14:10:14.121 [notice] I added 1 Tongas to the v2 vote
Nov 10 14:10:40.705 [info] dirserv_orconn_tls_done(): Found router Tonga to be r
eachable. Yay.
Nov 10 14:10:41.115 [info] connection_read_to_buf(): tls error [unexpected close
]. breaking (nickname Tonga, address 82.94.251.206).
Nov 10 14:10:47.784 [notice] Tongagetting added to v2 vote.
Nov 10 14:10:47.803 [notice] I added 1 Tongas to the v2 vote
Nov 10 14:11:21.388 [notice] Tongagetting added to v2 vote.
Nov 10 14:11:21.408 [notice] I added 1 Tongas to the v2 vote
Nov 10 14:11:54.131 [notice] Tongagetting added to v2 vote.
Nov 10 14:11:54.151 [notice] I added 1 Tongas to the v2 vote
Nov 10 14:12:31.128 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:13:02.633 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:13:34.137 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:14:06.078 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:14:39.603 [notice] I added 0 Tongas to the v2 vote

...

Nov 10 14:31:08.730 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:31:41.332 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:32:00.538 [info] dirserv_orconn_tls_done(): Found router Tonga to be r
eachable. Yay.
Nov 10 14:32:12.992 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:32:45.342 [notice] I added 0 Tongas to the v2 vote
Nov 10 14:33:17.402 [notice] I added 0 Tongas to the v2 vote

[Automatically added by flyspray2trac: Operating System: All]

Child Tickets

Change History (7)

comment:1 Changed 12 years ago by arma

Is routerlist.c:3784 correct?

if (!(ri = router_get_by_digest(rs->identity_digest))

memcmp(ri->cache_info.signed_descriptor_digest,

sd->signed_descriptor_digest, DIGEST_LEN)) {

smartlist_add(no_longer_old, sd);
++n_in_oldrouters; /* We have it in old_routers. */

}

perhaps the memcmp should be !memcmp ?

comment:2 Changed 12 years ago by nickm

I don't think so; I've added a comment to explain what's going on there.

if (!(ri = router_get_by_digest(rs->identity_digest))

memcmp(ri->cache_info.signed_descriptor_digest,

sd->signed_descriptor_digest, DIGEST_LEN)) {

/* We have a descriptor with this digest, but either there is no

  • entry in routerlist with the same ID (!ri), or there is one,
  • but the identity digest differs (memcmp). */

smartlist_add(no_longer_old, sd);
++n_in_oldrouters; /* We have it in old_routers. */

}

comment:3 Changed 12 years ago by nickm

Nov 10 14:11:21.408 [notice] I added 1 Tongas to the v2 vote
Nov 10 14:11:54.131 [notice] Tongagetting added to v2 vote.
Nov 10 14:11:54.151 [notice] I added 1 Tongas to the v2 vote
Nov 10 14:12:31.128 [notice] I added 0 Tongas to the v2 vote

That's just bizarre. Is there anything going on in those 37 seconds between the last two log messages?

If Tonga gets removed from the routerlist, there's supposed to be a log message about it. Hm.

comment:4 Changed 12 years ago by nickm

Oho. So, this is tricky.

We've not listing Tonga because it's old. And it's old because we have a newer router for it, but we aren't
including that router in our routerlist because it isn't listed in our consensus. The one listed in the consensus
is older.

The problem is that our fix for bug 543 is not a reasonable thing to do on authorities. (To recap: if there's a
routerdesc listed in the consensus, we use that routerdesc in preference to any newer ones we might have gotten.
This solved the problem where we would have the right routerdesc, but never actually use it because it was "old",
but never download it because we had a copy.)

Instead, authorities should never pull a router out of old_routers simply because it's in the consensus.

Weasel says that authorities never saw bug 543. If that's so, great. Otherwise, we should maybe tell authorities
that they always have enough info to build circuits.

comment:5 Changed 12 years ago by nickm

Possibly fixed in r12485.

comment:6 Changed 12 years ago by nickm

flyspray2trac: bug closed.

comment:7 Changed 7 years ago by nickm

Component: Tor RelayTor
Note: See TracTickets for help on using tickets.