[tor-bugs] #21345 [Core Tor/Tor]: Do relays count dir reqs as completed before they're complete?
Tor Bug Tracker & Wiki
blackhole at torproject.org
Mon Jan 30 05:52:25 UTC 2017
#21345: Do relays count dir reqs as completed before they're complete?
--------------------------+------------------------------------
Reporter: arma | Owner:
Type: task | Status: new
Priority: Medium | Milestone: Tor: 0.3.1.x-final
Component: Core Tor/Tor | Version:
Severity: Normal | Resolution:
Keywords: | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
--------------------------+------------------------------------
Comment (by arma):
Insight: if the compressed consensus fit inside one stream window (250KB),
we would behave in the bad way, i.e. we would mark the consensus fetch as
complete as soon as we start answering it.
But as it is, it looks like we require at least some stream sendme cells
in response before we'll call it done.
I started my client with "bandwidthrate 10000 bandwidthburst 10000", and
confirmed that the directory mirror marked the dirreq as complete well
before my client was finished receiving the consensus, but also well after
the consensus download fetch began.
That behavior also makes me think that an edge case remains, where a
client initiates the request, gets the first round of data, sends off its
sendme cells, and then has the connection cut by the censor.
But at present the compressed consensus size is around 627000 bytes, which
is three windows worth of stream data. So the client would need to send
its round of sendmes, receive some more bytes, and send a second round of
sendmes, before the dir mirror will mark the consensus fetch as complete.
That's a good start!
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/21345#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list