aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md26
1 files changed, 23 insertions, 3 deletions
diff --git a/README.md b/README.md
index 8b23bce..2259901 100644
--- a/README.md
+++ b/README.md
@@ -42,14 +42,34 @@ You can check that everything has been installed by running in a python REPL:
import garage_admin_sdk
```
-## Run a test
+## Topologies
-(Not yet implemented)
+All topologies:
+ - `./topo/with-vdsl.yml` - A topology mixing datacenters with fast internal connectivity and an isolated VDSL node
+ - `./topo/50ms.yml` - An artifical topology simulating nodes with high bandwidth but with a fixed 50ms latency, useful to quantify the impact of latency on a distributed software
+ - `./topo/multi-dc.yml` - Simulate 3 DC interconnected with 50ms latency WAN network and close to zero latency inside the DC
+ - `./topo/slow.yml` - Simulate 3 nodes interconnected with a low latency, very low bandwidth link. Useful to debug bandwidth bottlenecks
+
+Feel free to write new topologies!
+
+## Scenarios
+
+All scenarions:
+ - `./scenarios/garage-s3lat` - Run s3lat on Garage
+ - `./scenarios/garage-warp [default|fast]` - Run warp on Garage. 2 flavors are available: fast and default.
+
+How to run them:
```bash
-./mknet scenario ./topo/single-dc.yml ./scenarios/garage-s3lat
+./mknet scenario <topology> <scenario>
+./mknet scenario ./topo/50ms.yml ./scenarios/garage-s3lat
```
+How to write good scenarios:
+ - If a scenario can be run with multiple different parameters, write one scenario with multiple flavors
+ - If the logic ran is different, write a new scenario
+ - A scenario code must remain short and looks like a DSL, abstract the logic in the `fragments/` module
+
## Manual usage
```bash