147-prevoting-opinions.txt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. Filename: 147-prevoting-opinions.txt
  2. Title: Eliminate the need for v2 directories in generating v3 directories
  3. Version: $Revision$
  4. Last-Modified: $Date$
  5. Author: Nick Mathewson
  6. Created: 2-Jul-2008
  7. Status: Accepted
  8. Target: 0.2.1.x
  9. Overview
  10. We propose a new v3 vote document type to replace the role of v2
  11. networkstatus information in generating v3 consensuses.
  12. Motivation
  13. When authorities vote on which descriptors are to be listed in the
  14. next consensus, it helps if they all know about the same descriptors
  15. as one another. But a hostile, confused, or out-of-date server may
  16. upload a descriptor to only some authorities. In the current v3
  17. directory design, the authorities don't have a good way to tell one
  18. another about the new descriptor until they exchange votes... but by
  19. the time this happens, they are already committed to their votes,
  20. and they can't add anybody they learn about from other authorities
  21. until the next voting cycle. That's no good!
  22. The current Tor implementation avoids this problem by having
  23. authorities also look at v2 networkstatus documents, but we'd like
  24. in the long term to eliminate these, once 0.1.2.x is obsolete.
  25. Design:
  26. We add a new value for vote-status in v3 consensus documents in
  27. addition to "consensus" and "vote": "opinion". Authorities generate
  28. and sign an opinion document as if they were generating a vote,
  29. except that they generate opinions earlier than they generate votes.
  30. Authorities don't need to generate more than one opinion document
  31. per voting interval, but may. They should send it to the other
  32. authorities they know about, at the regular vote upload URL, before
  33. the authorities begin voting, so that enough time remains for the
  34. authorities to fetch new descriptors.
  35. Additionally, authories make their opinions available at
  36. http://<hostname>/tor/status-vote/next/opinion.z
  37. and download opinions from authorities they haven't heard from in a
  38. while.
  39. Authorities MAY generate opinions on demand.
  40. Upon receiving an opinion document, authorities scan it for any
  41. descriptors that:
  42. - They might accept.
  43. - Are for routers they don't know about, or are published more
  44. recently than any descriptor they have for that router.
  45. Authorities then begin downloading such descriptors from authorities
  46. that claim to have them.
  47. Authorities MAY cache opinion documents, but don't need to.