From d664bdadd6ffc3807bd4cedacdd5bb876ffecb28 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Fri, 22 Nov 2024 02:07:49 +0000 Subject: [PATCH] Add a README --- README.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..f5c4fbc --- /dev/null +++ b/README.md @@ -0,0 +1,23 @@ +Lightning Routing Replayer +========================== + +This allows you to test a lightning routefinder by replaying historical probe results against +the success-probability output of a model. + +`main.rs` contains three functions: + * `do_setup` which is run on startup to generate a `State` object which you can use to track state across steps + * `process_probe_result` which is given a `ProbeResult` consisting of the timestamp at which the probe was + completed as well as the state of the `NetworkGraph` at that time. It is also given a mutable reference to the + `State` generated by `do_setup`. It is run once for each probe result in the datafile. + * `results_complete` is run once after all probe results have been processed and can be used to print the + evaluation of the model. + +`internal.rs` contains the code which parses datafiles and calls the above methods as described. You shouldn't +need to modify `internal.rs` at all. + +In order to run the framework, you must download three data files - +`channel_updates.txt` and `channel_announcements.txt` contain the history of announcements to the network graph +and `probes.txt` contains the results of individual probe attempts over time. They can be downloaded from +https://bitcoin.ninja/ln-replay-data/ + +See https://bluematt.bitcoin.ninja/2024/11/22/ln-routing-replay/ for more info. -- 2.39.5