From be6dafcd106ff9c50c9fa316685874773f6b251e Mon Sep 17 00:00:00 2001 From: Loic Guegan Date: Tue, 13 Sep 2022 15:49:38 +0200 Subject: Update all integration tests and debug platform parsing --- tests/mobility_eth0_latency_2s1r/mobility.py | 7 ++++ tests/mobility_eth0_latency_2s1r/platform.yaml | 38 ++++++++++++++++++ tests/mobility_eth0_latency_2s1r/simulator.py | 42 -------------------- tests/mobility_eth0_latency_2s1r/yoctosim.debug | 51 ------------------------- 4 files changed, 45 insertions(+), 93 deletions(-) create mode 100755 tests/mobility_eth0_latency_2s1r/mobility.py create mode 100644 tests/mobility_eth0_latency_2s1r/platform.yaml delete mode 100755 tests/mobility_eth0_latency_2s1r/simulator.py delete mode 100644 tests/mobility_eth0_latency_2s1r/yoctosim.debug (limited to 'tests/mobility_eth0_latency_2s1r') diff --git a/tests/mobility_eth0_latency_2s1r/mobility.py b/tests/mobility_eth0_latency_2s1r/mobility.py new file mode 100755 index 0000000..99839b9 --- /dev/null +++ b/tests/mobility_eth0_latency_2s1r/mobility.py @@ -0,0 +1,7 @@ +#!/usr/bin/env python + +def callback(simulator): + simulator.log("Network update!") + B=simulator.netmat["eth0"]["bandwidth"] + new_lat_eth0=simulator.netmat["eth0"]["latency"]+1/2 + simulator.update_network({"eth0":{"bandwidth":B, "latency":new_lat_eth0, "is_wired":True}}) diff --git a/tests/mobility_eth0_latency_2s1r/platform.yaml b/tests/mobility_eth0_latency_2s1r/platform.yaml new file mode 100644 index 0000000..b35ab2e --- /dev/null +++ b/tests/mobility_eth0_latency_2s1r/platform.yaml @@ -0,0 +1,38 @@ +########## Scenario ########## +# Notations: +# - Remaining communication duration (last communication ends minus current simulated time) = C +# - Last communication duration (previous row) = U +# - Last remaining data size (previous row) = D +# - Current remaining data (current row) = R +# - Initial data size (first row) = I +# - Bandwidth = BW +# - Latency = L +# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| +# | This table is the same for both sender | | | | | | +# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| +# | Simulated time(s) | Latency(s) | Bandwidth(bps) | Remaining data (bit) | Communication duration(s) | Communication ends at(s) | +# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| +# | 0 | 0 | 8/2 | 8 | 2 | 2 | +# | 1 | 0.5 | 8/2 | C/U*D=4 | R/BW + R/I*L = 1.25 | 2.25 | +# | 2 | 1 | 8/2 | C/U*D=0.8 | R/BW + R/I*L = 0.3 | 2.3 | +# | 2.3 | 1 | 8/2 | 0 | | | +# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| +############################## + +general: + breakpoints_every: 1 + breakpoints_callback: + file: "mobility.py" + callback: "callback" + +nodes: + count: 3 + implementations: + - 0,1 sender.py + - 2 receiver.py + +interfaces: + eth0: + type: "wired" + links: + - all 1Bps 0s all \ No newline at end of file diff --git a/tests/mobility_eth0_latency_2s1r/simulator.py b/tests/mobility_eth0_latency_2s1r/simulator.py deleted file mode 100755 index 17562de..0000000 --- a/tests/mobility_eth0_latency_2s1r/simulator.py +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/env python - -# Load ESDS -import esds -import numpy as np - -########## Scenario ########## -# Notations: -# - Remaining communication duration (last communication ends minus current simulated time) = C -# - Last communication duration (previous row) = U -# - Last remaining data size (previous row) = D -# - Current remaining data (current row) = R -# - Initial data size (first row) = I -# - Bandwidth = BW -# - Latency = L -# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| -# | This table is the same for both sender | | | | | | -# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| -# | Simulated time(s) | Latency(s) | Bandwidth(bps) | Remaining data (bit) | Communication duration(s) | Communication ends at(s) | -# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| -# | 0 | 0 | 8/2 | 8 | 2 | 2 | -# | 1 | 0.5 | 8/2 | C/U*D=4 | R/BW + R/I*L = 1.25 | 2.25 | -# | 2 | 1 | 8/2 | C/U*D=0.8 | R/BW + R/I*L = 0.3 | 2.3 | -# | 2.3 | 1 | 8/2 | 0 | | | -# |----------------------------------------+------------+----------------+----------------------+---------------------------+--------------------------| -############################## - -B=np.full((3,3),8) -L=np.full((3,3),0) -s=esds.Simulator({"wlan0":{"bandwidth":B, "latency":L, "is_wired":False}, "eth0":{"bandwidth":B, "latency":L, "is_wired":True}}) - -s.create_node("sender") -s.create_node("sender") -s.create_node("receiver") - -def callback(simulator): - simulator.log("Network update!") - new_lat_wlan0=simulator.netmat["wlan0"]["latency"]+1/2 - new_lat_eth0=simulator.netmat["eth0"]["latency"]+1/2 - simulator.update_network({"wlan0":{"bandwidth":B, "latency":new_lat_wlan0, "is_wired":False},"eth0":{"bandwidth":B, "latency":new_lat_eth0, "is_wired":True}}) - -s.run(breakpoints_every=1,breakpoint_callback=callback) diff --git a/tests/mobility_eth0_latency_2s1r/yoctosim.debug b/tests/mobility_eth0_latency_2s1r/yoctosim.debug deleted file mode 100644 index efe50d9..0000000 --- a/tests/mobility_eth0_latency_2s1r/yoctosim.debug +++ /dev/null @@ -1,51 +0,0 @@ -Python version 3.10.5 (main, Jun 6 2022, 18:49:26) [GCC 12.1.0] -Simulation started at 1654802960.9297695 -Number of nodes is 3 -Manual breakpoints list: [] -Breakpoints every 1s ------------------------------------------------ -Started since 0.08s -Simulated time 0.000s (or more precisely 0s) -Node number per state: pending=2 terminated=1 -Node sharing: n2=2 -Ids of node in timeout mode: -Sorted events list: -[[3 1 array(0, dtype=object) 0] - [0 2.0 array([0, 2, 'eth0', 'Hello World!', 1, 2.0, 1, 0], dtype=object) - 1] - [0 2.0 array([1, 2, 'eth0', 'Hello World!', 1, 2.0, 1, 0], dtype=object) - 1]] ------------------------------------------------ -Started since 0.08s -Simulated time 1.000s (or more precisely 1s) -Node number per state: pending=2 terminated=1 -Node sharing: n2=2 -Ids of node in timeout mode: -Sorted events list: -[[3 2 array(0, dtype=object) 0] - [0 2.25 - array([0, 2, 'eth0', 'Hello World!', 1, 1.25, 0.5, 0], dtype=object) 1] - [0 2.25 - array([1, 2, 'eth0', 'Hello World!', 1, 1.25, 0.5, 0], dtype=object) 1]] ------------------------------------------------ -Started since 0.08s -Simulated time 2.000s (or more precisely 2s) -Node number per state: pending=2 terminated=1 -Node sharing: n2=2 -Ids of node in timeout mode: -Sorted events list: -[[0 2.3 - array([0, 2, 'eth0', 'Hello World!', 1, 0.30000000000000004, 0.1, 0], - dtype=object) 1] - [0 2.3 - array([1, 2, 'eth0', 'Hello World!', 1, 0.30000000000000004, 0.1, 0], - dtype=object) 1] - [3 3 array(0, dtype=object) 0]] ------------------------------------------------ -Started since 0.09s -Simulated time 2.300s (or more precisely 2.3s) -Node number per state: terminated=3 -Node sharing: -Ids of node in timeout mode: -Sorted events list: -[[3 3 array(0, dtype=object) 0]] -- cgit v1.2.3