zebra/zebra-network/src/peer_set
teor 04e96c2526
feat(net): Cache a list of useful peers on disk (#6739)
* Rewrite some state cache docs to clarify

* Add a zebra_network::Config.cache_dir for peer address caches

* Add new config test files and fix config test failure message

* Create some zebra-chain and zebra-network convenience functions

* Add methods for reading and writing the peer address cache

* Add cached disk peers to the initial peers list

* Add metrics and logging for loading and storing the peer cache

* Replace log of useless redacted peer IP addresses

* Limit the peer cache minimum and maximum size, don't write empty caches

* Add a cacheable_peers() method to the address book

* Add a peer disk cache updater task to the peer set tasks

* Document that the peer cache is shared by multiple instances unless configured otherwise

* Disable peer cache read/write in disconnected tests

* Make initial peer cache updater sleep shorter for tests

* Add unit tests for reading and writing the peer cache

* Update the task list in the start command docs

* Modify the existing persistent acceptance test to check for peer caches

* Update the peer cache directory when writing test configs

* Add a CacheDir type so the default config can be enabled, but tests can disable it

* Update tests to use the CacheDir config type

* Rename some CacheDir internals

* Add config file test cases for each kind of CacheDir config

* Panic if the config contains invalid socket addresses, rather than continuing

* Add a network directory to state cache directory contents tests

* Add new network.cache_dir config to the config parsing tests
2023-06-06 08:28:14 +00:00
..
candidate_set fix(log): Stop logging peer IP addresses, to protect user privacy (#6662) 2023-05-14 15:06:07 +00:00
initialize feat(net): Cache a list of useful peers on disk (#6739) 2023-06-06 08:28:14 +00:00
inventory_registry fix(log): Stop logging peer IP addresses, to protect user privacy (#6662) 2023-05-14 15:06:07 +00:00
set fix(log): Stop logging peer IP addresses, to protect user privacy (#6662) 2023-05-14 15:06:07 +00:00
unready_service Delete outdated `TODOs` refering to closed issues (#6732) 2023-05-23 03:33:14 +00:00
candidate_set.rs fix(net): Rate-limit MetaAddrChange::Responded from peers (#6738) 2023-05-23 20:50:29 +00:00
initialize.rs feat(net): Cache a list of useful peers on disk (#6739) 2023-06-06 08:28:14 +00:00
inventory_registry.rs fix(log): Stop logging peer IP addresses, to protect user privacy (#6662) 2023-05-14 15:06:07 +00:00
limit.rs Delete outdated `TODOs` refering to closed issues (#6732) 2023-05-23 03:33:14 +00:00
set.rs Delete outdated `TODOs` refering to closed issues (#6732) 2023-05-23 03:33:14 +00:00
unready_service.rs fix(test): Improve test reliability and performance (#4869) 2022-08-02 23:36:58 +00:00