aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Dufour <quentin@deuxfleurs.fr>2022-09-19 12:44:52 +0200
committerQuentin Dufour <quentin@deuxfleurs.fr>2022-09-19 12:44:52 +0200
commitbd6a1253999e05fb77fe74e51ddfea507b5d7361 (patch)
treeba5daeccfb6cee6281fcd21f5a5ae6c4629aba90
parent813b35e4794051cd4d0327ce25644c28df9dfd63 (diff)
downloadmknet-bd6a1253999e05fb77fe74e51ddfea507b5d7361.tar.gz
mknet-bd6a1253999e05fb77fe74e51ddfea507b5d7361.zip
Create bandwidth bottleneck topo
-rw-r--r--README.md2
-rw-r--r--topo/100mbps.yml25
-rw-r--r--topo/10mbps.yml25
-rw-r--r--topo/1mbps.yml (renamed from topo/slow-net.yml)0
-rw-r--r--topo/50mbps.yml25
-rw-r--r--topo/5mbps.yml25
6 files changed, 101 insertions, 1 deletions
diff --git a/README.md b/README.md
index b9dddff..956529c 100644
--- a/README.md
+++ b/README.md
@@ -34,7 +34,7 @@ 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
+ - `./topo/{1,5,10,50,100}mbps.yml` - Simulate 3 nodes interconnected with a bandwidth bottleneck.
Feel free to write new topologies!
diff --git a/topo/100mbps.yml b/topo/100mbps.yml
new file mode 100644
index 0000000..9640461
--- /dev/null
+++ b/topo/100mbps.yml
@@ -0,0 +1,25 @@
+links:
+ - &slow
+ bandwidth: 100M
+ latency: 500us
+ - &1000
+ bandwidth: 1000M
+ latency: 100us
+
+servers:
+ - name: node1
+ <<: *slow
+ - name: node2
+ <<: *slow
+ - name: node3
+ <<: *slow
+
+global:
+ subnet:
+ base: 'fc00:9a7a:9e::'
+ local: 64
+ zone: 16
+ latency-offset: 3ms
+ upstream:
+ ip: fc00:9a7a:9e:ffff:ffff:ffff:ffff:ffff
+ conn: *1000
diff --git a/topo/10mbps.yml b/topo/10mbps.yml
new file mode 100644
index 0000000..d895c58
--- /dev/null
+++ b/topo/10mbps.yml
@@ -0,0 +1,25 @@
+links:
+ - &slow
+ bandwidth: 10M
+ latency: 500us
+ - &1000
+ bandwidth: 1000M
+ latency: 100us
+
+servers:
+ - name: node1
+ <<: *slow
+ - name: node2
+ <<: *slow
+ - name: node3
+ <<: *slow
+
+global:
+ subnet:
+ base: 'fc00:9a7a:9e::'
+ local: 64
+ zone: 16
+ latency-offset: 3ms
+ upstream:
+ ip: fc00:9a7a:9e:ffff:ffff:ffff:ffff:ffff
+ conn: *1000
diff --git a/topo/slow-net.yml b/topo/1mbps.yml
index 75fdfc2..75fdfc2 100644
--- a/topo/slow-net.yml
+++ b/topo/1mbps.yml
diff --git a/topo/50mbps.yml b/topo/50mbps.yml
new file mode 100644
index 0000000..1bccc65
--- /dev/null
+++ b/topo/50mbps.yml
@@ -0,0 +1,25 @@
+links:
+ - &slow
+ bandwidth: 50M
+ latency: 500us
+ - &1000
+ bandwidth: 1000M
+ latency: 100us
+
+servers:
+ - name: node1
+ <<: *slow
+ - name: node2
+ <<: *slow
+ - name: node3
+ <<: *slow
+
+global:
+ subnet:
+ base: 'fc00:9a7a:9e::'
+ local: 64
+ zone: 16
+ latency-offset: 3ms
+ upstream:
+ ip: fc00:9a7a:9e:ffff:ffff:ffff:ffff:ffff
+ conn: *1000
diff --git a/topo/5mbps.yml b/topo/5mbps.yml
new file mode 100644
index 0000000..1e20d7c
--- /dev/null
+++ b/topo/5mbps.yml
@@ -0,0 +1,25 @@
+links:
+ - &slow
+ bandwidth: 5M
+ latency: 500us
+ - &1000
+ bandwidth: 1000M
+ latency: 100us
+
+servers:
+ - name: node1
+ <<: *slow
+ - name: node2
+ <<: *slow
+ - name: node3
+ <<: *slow
+
+global:
+ subnet:
+ base: 'fc00:9a7a:9e::'
+ local: 64
+ zone: 16
+ latency-offset: 3ms
+ upstream:
+ ip: fc00:9a7a:9e:ffff:ffff:ffff:ffff:ffff
+ conn: *1000