|
@@ -38,7 +38,9 @@ There are two other programs in the directory, `options_setup.c` and `run_tests.
|
|
|
|
|
|
### Cuckoo Simulation
|
|
|
|
|
|
-In order to build this code, you will need Cargo installed. From the `./dhtpir_simulation/` directory, run `cargo build` in order to build the simulation code. With the code built, run `cargo run --bin cuckoo_simulation <honest> <malicious> <log2_regions> <log2_regionsPerQuorum> <k> <nodesPerRegion> <iterations> <seed>`, with appropriate values for each of these variables.
|
|
|
+In order to build this code, you will need Cargo installed. From the `./dhtpir_simulation/` directory, run `cargo build --release` in order to build the simulation code.
|
|
|
+
|
|
|
+With the code built, run `./target/release/cuckoo_simulation <honest> <malicious> <log2_regions> <k> <nodesPerRegion> <log2_regionsPerQuorum> <iterations> <seed>`, with appropriate values for each of these variables.
|
|
|
|
|
|
`<honest>` describes the number of honest nodes in the system.
|
|
|
|
|
@@ -46,15 +48,17 @@ In order to build this code, you will need Cargo installed. From the `./dhtpir_s
|
|
|
|
|
|
`<log2_regions>` describes log2(the number of regions in the system).
|
|
|
|
|
|
-`<log2_regionsPerQuorum>` describes log2(the number of regions per quorum in the system).
|
|
|
-
|
|
|
`<k>` describes k-1, the number of secondary joins in the commensal cuckoo rule before new primary joins are accepted.
|
|
|
|
|
|
-`<nodesPerRegion>` describes the desired number of nodes in a given region.
|
|
|
+`<nodesPerRegion>` describes the desired average number of nodes in a given region.
|
|
|
+
|
|
|
+`<log2_regionsPerQuorum>` describes log2(the number of regions per quorum in the system). Typically use 0 for the commensal cuckoo rule.
|
|
|
+
|
|
|
+`<iterations>` is the number of malicious leaves and joins to simulate
|
|
|
|
|
|
`<seed>` is a random seed.
|
|
|
|
|
|
-There is an additional file in this directory, `cuckoo_vars.py`, which was used to do arithmetic to calculate certain variables associated with the cuckoo and commensal cuckoo rules as used in the work.
|
|
|
+There are additional scripts to binary search for the largest number of malicious nodes globally that keeps the maximum fraction of malicious nodes _per quorum_ under 1/4. Use `./find_m <nodesPerRegion> <log2_regions> <log2_regionsPerQuorum>` (which itself will call the accompanying script `./run_m <nodesPerRegion> <log2_regions> <log2_regionsPerQuorum> <malicious>`).
|
|
|
|
|
|
## Graphs
|
|
|
|