Opened 3 years ago

Last modified 2 years ago

#20289 new enhancement

HS_DESC event while waiting for upload

Reported by: meejah Owned by:
Priority: Low Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Minor Keywords: tor-hs, tor-control
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

There is currently a "synthentic" delay before upload hidden-service descriptors. It would be nice if there was a "WAITING" (or similar) sub-event to the HS_DESC events to tell controllers that.

For context, txtorcon listens to HS_DESC events when adding a new Onion service (either via ADD_ONION or SETCONF) and bubbles this out to txtorcon users as "progress" (txtorcon may also decide it needs to launch a new tor instance, which is also bubbled out via the same progress API).

So for the 30 seconds (or whatever) of induced delay, there appears to be nothing happening, and then you get 6 "HS_DESC UPLOAD" and (hopefully also 6) "HS_DESC UPLOADED" sub-events all "near the end".

It would provide nicer UX to have a "HS_DESC WAITING" (or similar) every few seconds.

Child Tickets

Change History (9)

comment:1 Changed 3 years ago by asn

Keywords: tor-hs added
Milestone: Tor: 0.3.0.x-final
Sponsor: SponsorR-can

comment:2 Changed 3 years ago by twim

We're going to remove this useless delay in #20082.
When there is no "artificial" delay it's implied that we are waiting for the uploads to finish. Once one created new onion service next step is to wait for HS_DESC UPLOADED. This is not a deterministic delay - it's jitter.
That's why I don't think there should be one more control event for this.

comment:3 Changed 3 years ago by meejah

Okay, if the delay is going away soon, that's great :)

If any kind of delay or random jitter is still left in, though, it would be nice to tell controllers that because then they can provide e.g. an update every 1 second if they want. (I.e. if the controller knows it'll be 5.3 seconds until any HS_DESC UPLOAD events can possibly arrive, that can be easily factored into a progress display).

comment:4 in reply to:  3 Changed 3 years ago by twim

Replying to meejah:

If any kind of delay or random jitter is still left in, though, it would be nice to tell controllers that because then they can provide e.g. an update every 1 second if they want. (I.e. if the controller knows it'll be 5.3 seconds until any HS_DESC UPLOAD events can possibly arrive, that can be easily factored into a progress display).

The problem here is that this jitter is unpredictable so nobody knows when HS_DESC UPLOADED is going to arrive. I think there is enough info from tor since it's all what tor does know. So controllers (client apps) are still can update every second and tell that there is no UPLOADED has arrived.

comment:5 Changed 3 years ago by twim

Oops, you're talking about UPLOAD not UPLOADED, sorry.
There will be (#20082) no noticeable delay between ADD_ONION and UPLOAD to drop a notice about.

comment:6 Changed 2 years ago by dgoulet

Keywords: triage-out-030-201612 added
Milestone: Tor: 0.3.0.x-finalTor: unspecified

Triaged out on December 2016 from 030 to Unspecified.

comment:7 Changed 2 years ago by nickm

Component: Core TorCore Tor/Tor

comment:8 Changed 2 years ago by nickm

Keywords: triage-out-030-201612 removed

comment:9 Changed 2 years ago by dgoulet

Keywords: tor-control added
Sponsor: SponsorR-can
Note: See TracTickets for help on using tickets.