On Wed, Aug 10, 2022 at 02:17:53AM +0000, Job Snijders wrote: > Dear all, > > I like to run rpki-client very often, and not be bogged down with > non-responsive respositories. If a repository is uncommunicative, > rpki-client as-is will try other transports, or come back later (because > of a next crontab invocation). > > In rpki-client, RSYNC & HTTPS timeouts now are unified: > > - if the initial connection can't be established within MAX_CONN_TIMEOUT > seconds, try one of: Another Address Family (such as IPv6), or Another > Transport Protocol (like RSYNC). > > - If the remote peer at the other side of the HTTPS or RSYNC connection > doens't send us any data for the duration of MAX_IO_TIMEOUT, try one > of Another Address Family (such as IPv6), or Another Transport > Protocol (like RSYNC). > > I propose that if the remote side fails to send any new data for the > duration of 30 seconds, we should give up, try something else (which > includes locally cached data from the previous invocation). > > I've tested with MAX_IO_TIMEOUT set to 15 seconds; and would feel > comfortable committing that; but some in our community expressed > hesitance, hence the below proposal for 30. > > OK?
I'm OK with 30sec I would not go lower because on shitty networks with lots of retransmits the time for data to arrive may be a fair bit longer than what you see. Also once the connection is open it should be ok to try a bit harder to finish the transaction. > Index: extern.h > =================================================================== > RCS file: /cvs/src/usr.sbin/rpki-client/extern.h,v > retrieving revision 1.146 > diff -u -p -r1.146 extern.h > --- extern.h 9 Aug 2022 09:02:26 -0000 1.146 > +++ extern.h 10 Aug 2022 02:01:45 -0000 > @@ -731,7 +731,7 @@ int mkpathat(int, const char *); > #define MAX_CONN_TIMEOUT 15 > > /* How long to wait for IO from a remote server. */ > -#define MAX_IO_TIMEOUT 180 > +#define MAX_IO_TIMEOUT 30 > > /* Maximum allowd repositories per tal */ > #define MAX_REPO_PER_TAL 1000 > OK claudio@ -- :wq Claudio