#22421: Update fallback config comment for exponential backoff -------------------------------+------------------------------------ Reporter: teor | Owner: Type: defect | Status: needs_review Priority: Medium | Milestone: Tor: 0.3.1.x-final Component: Core Tor/Tor | Version: Tor: 0.2.9.1-alpha Severity: Normal | Resolution: Keywords: fallback, comment | Actual Points: 0.1 Parent ID: | Points: 0.1 Reviewer: | Sponsor: -------------------------------+------------------------------------
Old description: > We modified the fallback behaviour when we merged the exponential backoff > code in 0.2.9.1-alpha, and again in #17750: > {{{ > /* With the ClientBootstrapConsensus*Download* below: > * Clients with only authorities will try: > * - 3 authorities over 10 seconds, then wait 60 minutes. > * Clients with authorities and fallbacks will try: > * - 2 authorities and 4 fallbacks over 21 seconds, then wait 60 > minutes. > * Clients will also retry when an application request arrives. > * After a number of failed reqests, clients retry every 3 days + 1 > hour. > * > * Clients used to try 2 authorities over 10 seconds, then wait for > * 60 minutes or an application request. > * > * When clients have authorities and fallbacks available, they use > these > * schedules: (we stagger the times to avoid thundering herds) */ > V(ClientBootstrapConsensusAuthorityDownloadSchedule, CSV_INTERVAL, > "6, 11, 3600, 10800, 25200, 54000, 111600, 262800" /* 3 days + 1 hour > */), > V(ClientBootstrapConsensusFallbackDownloadSchedule, CSV_INTERVAL, > "0, 1, 4, 11, 3600, 10800, 25200, 54000, 111600, 262800"), > /* When clients only have authorities available, they use this > schedule: */ > V(ClientBootstrapConsensusAuthorityOnlyDownloadSchedule, CSV_INTERVAL, > "0, 3, 7, 3600, 10800, 25200, 54000, 111600, 262800"), > }}} > > The behaviour is now: > {{{ > /* With the ClientBootstrapConsensus*Download* below: > * Clients with only authorities will try: > * - at least 3 authorities over 10 seconds, then exponentially > backoff, with the next attempt 3-21 seconds later, > * Clients with authorities and fallbacks will try: > * - at least 2 authorities and 4 fallbacks over 21 seconds, then > exponentially backoff, with the next attempts 4-33 seconds later, > * Clients will also retry when an application request arrives. > * After a number of failed requests, clients retry every 3 days + 1 > hour. > * > * Clients used to try 2 authorities over 10 seconds, then wait for > * 60 minutes or an application request. > }}} New description: We modified the fallback behaviour when we merged the exponential backoff code in 0.2.9.1-alpha, and again in #17750: {{{ /* With the ClientBootstrapConsensus*Download* below: * Clients with only authorities will try: * - 3 authorities over 10 seconds, then wait 60 minutes. * Clients with authorities and fallbacks will try: * - 2 authorities and 4 fallbacks over 21 seconds, then wait 60 minutes. * Clients will also retry when an application request arrives. * After a number of failed reqests, clients retry every 3 days + 1 hour. * * Clients used to try 2 authorities over 10 seconds, then wait for * 60 minutes or an application request. * * When clients have authorities and fallbacks available, they use these * schedules: (we stagger the times to avoid thundering herds) */ V(ClientBootstrapConsensusAuthorityDownloadSchedule, CSV_INTERVAL, "6, 11, 3600, 10800, 25200, 54000, 111600, 262800" /* 3 days + 1 hour */), V(ClientBootstrapConsensusFallbackDownloadSchedule, CSV_INTERVAL, "0, 1, 4, 11, 3600, 10800, 25200, 54000, 111600, 262800"), /* When clients only have authorities available, they use this schedule: */ V(ClientBootstrapConsensusAuthorityOnlyDownloadSchedule, CSV_INTERVAL, "0, 3, 7, 3600, 10800, 25200, 54000, 111600, 262800"), }}} The behaviour is now: {{{ /* With the ClientBootstrapConsensus*Download* below: * Clients with only authorities will try: * - at least 3 authorities over 10 seconds, then exponentially backoff, * with the next attempt 3-21 seconds later, * Clients with authorities and fallbacks will try: * - at least 2 authorities and 4 fallbacks over 21 seconds, then * exponentially backoff, with the next attempts 4-33 seconds later, * Clients will also retry when an application request arrives. * After a number of failed requests, clients retry every 3 days + 1 hour. * * Clients used to try 2 authorities over 10 seconds, then wait for * 60 minutes or an application request. }}} -- Comment (by teor): Wrap comments -- Ticket URL: <https://trac.torproject.org/projects/tor/ticket/22421#comment:2> Tor Bug Tracker & Wiki <https://trac.torproject.org/> The Tor Project: anonymity online _______________________________________________ tor-bugs mailing list tor-bugs@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs