[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: Implementing proposal 147: Eliminate the need for v2 directories in generating v3 directories




On May 18, 2010, at 11:18 AM, Karsten Loesing wrote:
Phase 0: Set up PuppeTor test case to show that it's broken

- Set up 3 v3 directory authorities and 1 relay. Configure the relay
with only 1 of the directory authorities. Watch how the relay is not
contained in the first consensus, but in the second.

This is working reliably now.

Phase 1: Authorities generate opinions (and ensure they can parse them)
when we ask them to do so

- Write code to generate and parse v3 opinions, including unit tests.

- Add a new URL for everyone to request the current v3 opinion of an
authority. Requesting this URL triggers the opinion-generating code.

See note on caching, if generation is expensive this is an easy dos.

- Ponder caching our own v3 opinion for up to X minutes or until we
learn about a change in descriptors.

Caching until something about a descriptor changes sounds like the
best idea to me, unless opinion generation turns to to be expensive.

There could be a phase 4 that includes caching other authorities'
opinions to overcome the situation when both uploading and requesting
between two authorities fails. It's marked as MAY in the proposal, and
I'm not sure if we really need it. We could decide this at a later point.

I think we don't really need to worry about this now, especially since
the vote collection is only done once per hour. Instead, phase 4 to
me means that we should get clients with the appropriate config
options (FetchDirInfoExtraEarly) set to query authorities regularly
for their opinion documents and ensure that the appropriate
events are triggered that allow services like TorBEL and friends
to have an up-to-date view of the network.