cloudflare / gortr

The RPKI-to-Router server used at Cloudflare
https://rpki.cloudflare.com
BSD 3-Clause "New" or "Revised" License
309 stars 39 forks source link

Significance of different cli timer flags #97

Open csdali13 opened 3 years ago

csdali13 commented 3 years ago

Could you please let me know the definitions / meaning for the timer flags below? 1) rtr.refresh 2) rtr.retry 3) rtr.expire

Also could you please let me know the significance of the below timers which are set in /gortr/cmd/gortr/gortr.go script:

RefreshRTR = flag.Int("rtr.refresh", 3600, "Refresh interval")
RetryRTR   = flag.Int("rtr.retry", 600, "Retry interval")
ExpireRTR  = flag.Int("rtr.expire", 7200, "Expire interval")
RefreshInterval = flag.Int("refresh", 600, "Refresh interval in seconds")

Thanks a lot

lspgn commented 3 years ago

Hello, Those are the timers listed in RFC8210.

Refresh Interval: This parameter tells the router how long to wait before next attempting to poll the cache and between subsequent attempts, using a Serial Query or Reset Query PDU. The router SHOULD NOT poll the cache sooner than indicated by this parameter.

Retry Interval: This parameter tells the router how long to wait before retrying a failed Serial Query or Reset Query. The router SHOULD NOT retry sooner than indicated by this parameter.

Expire Interval: This parameter tells the router how long it can continue to use the current version of the data while unable to perform a successful subsequent query. The router MUST NOT retain the data past the time indicated by this parameter.