From bd6a1253999e05fb77fe74e51ddfea507b5d7361 Mon Sep 17 00:00:00 2001 From: Quentin Dufour Date: Mon, 19 Sep 2022 12:44:52 +0200 Subject: Create bandwidth bottleneck topo --- README.md | 2 +- topo/100mbps.yml | 25 +++++++++++++++++++++++++ topo/10mbps.yml | 25 +++++++++++++++++++++++++ topo/1mbps.yml | 25 +++++++++++++++++++++++++ topo/50mbps.yml | 25 +++++++++++++++++++++++++ topo/5mbps.yml | 25 +++++++++++++++++++++++++ topo/slow-net.yml | 25 ------------------------- 7 files changed, 126 insertions(+), 26 deletions(-) create mode 100644 topo/100mbps.yml create mode 100644 topo/10mbps.yml create mode 100644 topo/1mbps.yml create mode 100644 topo/50mbps.yml create mode 100644 topo/5mbps.yml delete mode 100644 topo/slow-net.yml 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/1mbps.yml b/topo/1mbps.yml new file mode 100644 index 0000000..75fdfc2 --- /dev/null +++ b/topo/1mbps.yml @@ -0,0 +1,25 @@ +links: + - &slow + bandwidth: 1M + 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/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 diff --git a/topo/slow-net.yml b/topo/slow-net.yml deleted file mode 100644 index 75fdfc2..0000000 --- a/topo/slow-net.yml +++ /dev/null @@ -1,25 +0,0 @@ -links: - - &slow - bandwidth: 1M - 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 -- cgit v1.2.3