bgp / stayrtr

RPKI-To-Router server implementation in Go
BSD 3-Clause "New" or "Revised" License
91 stars 13 forks source link

Refactor to update state when cache or SLURM changes #17

Closed ties closed 3 years ago

ties commented 3 years ago

WIP This was a fairly mechanical change but will require some testing before it really is done. Please check carefully that I got this right :). I felt this could be changed and would make the feature changes easier.

Before this commit the new stayrtr state was only recalculated when the validated cache changed.

This commit refactors the update loop and separates the actual update from pulling the updated cache. The update is triggered when the SLURM file changes or when the validated cache changes.

Should fix https://github.com/cloudflare/gortr/issues/95 and make further changes that trigger an update when an update in the cache has expired easier.

ties commented 3 years ago

Running this and saving the metrics. Will see how it behaves. I do not run real routers though so that limits my testing.

ties commented 3 years ago

Seems to have been stable over the last week. Will now run rtrmon against it using rtr protocol and track how it deviates from the same json endpoint that stayrtr reads.