Opened 8 years ago

Closed 8 years ago

Last modified 7 years ago

#3198 closed defect (fixed)

Try refetching bridge descriptors each second, not each ten seconds

Reported by: arma Owned by:
Priority: Medium Milestone: Tor: 0.2.2.x-final
Component: Core Tor/Tor Version:
Severity: Keywords: tor-bridge
Cc: anonym@… Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Currently we only call fetch_bridge_descriptors() from main.c inside the "time_to_try_getting_descriptors < now" clause, which happens every 10 or 60 seconds depending on whether we 'have enough dir info'.

I think that schedule is fine for normal descriptors (because we're trying to batch requests), but I think for bridge descriptors we could retry every second without much harm and with some benefit.

In particular, when we setconf a new bridge, we currently need to wait 10ish or 60ish seconds before we'll even start its descriptor download (see #2355).

I'd originally thought to call fetch_bridge_descriptors() from inside options_act() as a special case, but now I think we should just call it every second. (It looks through a smartlist, does a download_status_is_ready() check on each entry, and returns.)

Child Tickets

Change History (6)

comment:1 Changed 8 years ago by arma

Status: newneeds_review

See my bug3198 branch.

comment:2 in reply to:  1 Changed 8 years ago by rransom

Replying to arma:

See my bug3198 branch.

Looks good. (This won't actually launch a descriptor-fetch connection every second; it'll only check whether another descriptor fetch should be launched every second, so we don't need to worry about this DoSing a bridge.)

comment:3 Changed 8 years ago by anonym

Cc: anonym@… added

comment:4 Changed 8 years ago by arma

Resolution: fixed
Status: needs_reviewclosed

Merged.

comment:5 Changed 7 years ago by nickm

Keywords: tor-bridge added

comment:6 Changed 7 years ago by nickm

Component: Tor BridgeTor
Note: See TracTickets for help on using tickets.