[tor-dev] Review of Proposal 147: Eliminate the need for v2 directories in generating v3 directories
Karsten Loesing
karsten at torproject.org
Wed Jan 15 12:08:03 UTC 2014
On 1/6/14 7:55 PM, Nick Mathewson wrote:
> On Tue, Dec 24, 2013 at 3:55 AM, Karsten Loesing <karsten at torproject.org> wrote:
>> On 12/17/13 10:31 PM, Nick Mathewson wrote:
>>> 147 Eliminate the need for v2 directories in generating v3 directories
>>>
>>> This proposal explains a way that we can phase out the
>>> vestigial use of v2 directory documents in keeping authorities
>>> well-informed enough to generating the v3 consensus. It's
>>> still correct; somebody should implement it before the v2
>>> directory code rots any further. (5/2011)
>>
>> This proposal looks plausible to me. Some minor remarks:
>>
>> - The proposal suggests that authorities send an opinion document to the
>> other authorities "at the regular vote upload URL". URLs are cheap, why
>> not use a different URL to keep things separated, e.g., /tor/post/opinion ?
>
> sure.
Okay, starting a patch with proposal 147 tweaks and changing this URL as
suggested.
>> - Should dir-spec.txt suggest a timing for pushing-and-pulling opinion
>> documents? Authorities could send their opinions at :45:00 and fetch
>> missing opinions at :47:30. This could be defined by a new
>> OpinionSeconds part contained in "voting-delay" lines. This would be a
>> SHOULD requirement, not a MUST requirement.
>
> This is plausible.
Added to the proposal.
>> - The proposal doesn't say what lines must be contained in opinion
>> documents. It seems that an authority that parses an opinion document
>> is only interested in a) relay fingerprint, b) descriptor publication
>> time, and c) descriptor digest; unless there's more information that
>> helps authorities decide whether "they might accept" a descriptor. If
>> not, opinion documents only need to contain a small subset of headers
>> and all the "r" lines that would be contained in a later vote.
>
> This also seems okay. It would however mean that we can't use the
> same parsing logic as we use for regular votes.
True. Added as two comments to the proposal.
>> - The proposal doesn't explicitly say this, so just to be sure: when an
>> authority finds that it's missing a router descriptor that it then
>> downloads, it also downloads the corresponding extra-info descriptor
>> afterwards, right?
>
> I suppose it should.
Added.
>> - Another thing that is left implicit in the proposal: the opinion
>> document will always contain the valid-after time of the *next*
>> consensus. Well, the URL /tor/status-vote/next/opinion implies that,
>> but maybe we should explicitly mention this in dir-spec.txt.
>
> Hm. maybe valid-after and valid-until should just get ignored on
> opinions. Or omitted.
Added as comments.
> Also, ISTR that Roger told me that this whole proposal didn't actually
> seem to be necessary in practice. I wish I could remember the
> rationale, though.
I talked to Roger on IRC, and here's why this proposal may indeed be
overkill:
As of January 2013, there is only a single version 3 directory authority
left that serves version 2 statuses: dizum. moria1 and tor26 have been
rejecting version 2 requests for a long time, and it's mostly an
oversight that dizum still serves them. The other six authorities have
never generated version 2 statuses for others to be used as pre-voting
opinions. So, it's basically not true that version 2 statuses are
required for the version 3 protocol to work properly.
Here's a possible way to move this forward.
- Please review and merge my prop147tweaks branch that contains tweaks
from our discussion above, regardless of whether this proposal will be
implemented or not.
- I'm going to run a quick analysis of archived vote documents to see
how much authorities would have benefited from the others' votes before
generating their own votes.
- I'm going to ask Alex to disable version 2 statuses on dizum using
DisableV2DirectoryInfo_ 1 to see what that does to the network. We
should probably finish the 2048 bits RSA keys upgrade first before
changing yet another variable.
- If there's no convincing argument to implement opinion documents, we
close this proposal as rejected.
What do you think?
All the best,
Karsten
More information about the tor-dev
mailing list