Opened 4 years ago

Closed 4 years ago

Last modified 3 years ago

#13401 closed enhancement (implemented)

TestingTorNetwork should crank down RendPostPeriod too?

Reported by: arma Owned by:
Priority: Medium Milestone: Tor: 0.2.6.x-final
Component: Core Tor/Tor Version:
Severity: Keywords: SponsorS, tor-hs, chutney
Cc: teor Actual Points:
Parent ID: #14034 Points:
Reviewer: Sponsor: SponsorR

Description

Hidden services only publish once an hour, even when TestingTorNetwork is set. That makes it harder to test hidden services. We'll also need this feature, maybe, for doing hidden service integration testing, a la Sponsor S and Sponsor R?

Child Tickets

TicketTypeStatusOwnerSummary
#14055defectclosedImplement TestingDirAuthVoteHSDir like TestingDirAuthVoteGuard/Exit

Change History (8)

comment:1 Changed 4 years ago by nickm

Cc: teor added
Status: newneeds_review

Please review branch bug13401 in my public repository?

(Adding teor to the cc list since he's been working on similar stuff.)

comment:2 Changed 4 years ago by teor

I like this branch, and 5 seconds fits well with the current 10 second minimum consensus / bootstrap time. This allows 3 opportunities for HSs to post descriptors before the current src/test/test-network.sh 18 second timeout.

We can test this patch against the corresponding chutney hs verify code in #14067. This will allow us to check that both work together. (I am working on this at the moment.)

comment:3 Changed 4 years ago by teor

chutney can now verify hidden services and bridge clients.
But HSs take around 40-45 seconds to bootstrap, even after applying the changes in #13401.
This is compared to basic-min's 10 seconds (an ideal bootstrap time).

See #14067 for bootstrap time improvements.

However, the previous bootstrap timeframe is 45 seconds, so this patch does lead to some improvement. I take that back - the bootstrap times for HSs are 40-45 seconds.

I think the assignment of the HSDir flag may obscure some of the benefit from this patch.

Last edited 4 years ago by teor (previous) (diff)

comment:4 Changed 4 years ago by teor

Keywords: chutney added

Hi Nick, Roger,

I've taken the hidden service bootstrap time down to 25 seconds from 45 seconds.
I think this is a reasonable bootstrap time, but I can look at it again in #14034.

This required the following changes:

  • TestingDirAuthVoteHSDir
  • Reduce MIN_REND_INITIAL_POST_DELAY to 5 seconds in testing networks (still 30 by default)
  • Increase default delay in src/test/test-network.sh to 25 seconds to match the hs delay.

Unfortunately, bridge clients still take around 35 seconds to bootstrap. I'll keep working on that over in #14067, I guess.

The changes to tor are accompanied by corresponding changes to chutney:

  • Test hidden services and bridge clients with chutney verify
  • Review the required number of relays/exits/authorities for 2 guards with 25% of the network assigned the guard flag (i.e. learn to count to 8)

I can split the chutney commit into guard numbers, bridge clients, and hidden services if you would like, but by the time I got to this stage, they were all fairly intertwined.

The branches are:

tor
Branch: nickm-bug13401
Repository: ​​​​​​​​​https://github.com/teor2345/tor.git

chutney
Branch: bug-14067-verify-bc-hs
Repository: ​​​​​​​​​https://github.com/teor2345/chutney.git

comment:5 Changed 4 years ago by teor

Parent ID: #14034

comment:6 Changed 4 years ago by nickm

Resolution: implemented
Status: needs_reviewclosed

Applied these; thanks!

comment:7 Changed 4 years ago by teor

2 down, one to go (bridge speedup!)

comment:8 Changed 3 years ago by dgoulet

Keywords: SponsorR removed
Sponsor: SponsorR
Note: See TracTickets for help on using tickets.