summaryrefslogtreecommitdiff
path: root/tests/mobility_eth0_bandwidth_2s1r
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2022-06-09 21:48:32 +0200
committerLoic Guegan <manzerbredes@mailbox.org>2022-06-09 21:48:32 +0200
commitc2e6aad09f893e4c8cb5cb9243c32a0d6d0d1e12 (patch)
treebebdb575f200c7ea75f3115a81deecd5b797c4ff /tests/mobility_eth0_bandwidth_2s1r
Init ESDS repository
Diffstat (limited to 'tests/mobility_eth0_bandwidth_2s1r')
-rw-r--r--tests/mobility_eth0_bandwidth_2s1r/out6
-rw-r--r--tests/mobility_eth0_bandwidth_2s1r/receiver.py5
-rw-r--r--tests/mobility_eth0_bandwidth_2s1r/sender.py4
-rwxr-xr-xtests/mobility_eth0_bandwidth_2s1r/simulator.py41
-rw-r--r--tests/mobility_eth0_bandwidth_2s1r/yoctosim.debug37
5 files changed, 93 insertions, 0 deletions
diff --git a/tests/mobility_eth0_bandwidth_2s1r/out b/tests/mobility_eth0_bandwidth_2s1r/out
new file mode 100644
index 0000000..7138457
--- /dev/null
+++ b/tests/mobility_eth0_bandwidth_2s1r/out
@@ -0,0 +1,6 @@
+[t=0.000,src=n0] Send 1 bytes to n2 on eth0
+[t=0.000,src=n1] Send 1 bytes to n2 on eth0
+[t=1.000,src=esds] Network update!
+[t=1.500,src=n2] Receive 1 bytes on eth0
+[t=1.500,src=n2] Receive 1 bytes on eth0
+[t=1.500,src=esds] Simulation ends
diff --git a/tests/mobility_eth0_bandwidth_2s1r/receiver.py b/tests/mobility_eth0_bandwidth_2s1r/receiver.py
new file mode 100644
index 0000000..0b48f12
--- /dev/null
+++ b/tests/mobility_eth0_bandwidth_2s1r/receiver.py
@@ -0,0 +1,5 @@
+#!/usr/bin/env python
+
+def execute(api):
+ pass
+
diff --git a/tests/mobility_eth0_bandwidth_2s1r/sender.py b/tests/mobility_eth0_bandwidth_2s1r/sender.py
new file mode 100644
index 0000000..273cdc2
--- /dev/null
+++ b/tests/mobility_eth0_bandwidth_2s1r/sender.py
@@ -0,0 +1,4 @@
+#!/usr/bin/env python
+
+def execute(api):
+ api.send("eth0","Hello World!",1,2)
diff --git a/tests/mobility_eth0_bandwidth_2s1r/simulator.py b/tests/mobility_eth0_bandwidth_2s1r/simulator.py
new file mode 100755
index 0000000..ba876d8
--- /dev/null
+++ b/tests/mobility_eth0_bandwidth_2s1r/simulator.py
@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+
+# Load ESDS
+import sys
+sys.path.append("../../")
+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) | Communcation ends at(s) |
+# |----------------------------------------+------------+----------------+----------------------+---------------------------+-------------------------|
+# | 0 | 0 | 8/2 | 8 | 2 | 2 |
+# | 1 | 0 | 16/2 | C/U*D = 4 | 0.5 | 1.5 |
+# | 1.5 | 0 | 16/2 | 0 | | |
+# |----------------------------------------+------------+----------------+----------------------+---------------------------+-------------------------|
+##############################
+
+B=np.full((3,3),8)
+L=np.full((3,3),0)
+s=esds.Simulator(B,L)
+
+s.create_node("sender")
+s.create_node("sender")
+s.create_node("receiver")
+
+def callback(simulator):
+ simulator.log("Network update!")
+ simulator.update_network(simulator.B*2,simulator.L)
+
+s.run(breakpoints_every=1,breakpoint_callback=callback,debug=True)
diff --git a/tests/mobility_eth0_bandwidth_2s1r/yoctosim.debug b/tests/mobility_eth0_bandwidth_2s1r/yoctosim.debug
new file mode 100644
index 0000000..b0e4327
--- /dev/null
+++ b/tests/mobility_eth0_bandwidth_2s1r/yoctosim.debug
@@ -0,0 +1,37 @@
+Python version 3.10.5 (main, Jun 6 2022, 18:49:26) [GCC 12.1.0]
+Simulation started at 1654802959.3233912
+Number of nodes is 3
+Manual breakpoints list: []
+Breakpoints every 1s
+-----------------------------------------------
+Started since 0.04s
+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.04s
+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:
+[[0 1.5
+ array([0, 2, 'eth0', 'Hello World!', 1, 0.5, 0.5, 0], dtype=object) 1]
+ [0 1.5
+ array([1, 2, 'eth0', 'Hello World!', 1, 0.5, 0.5, 0], dtype=object) 1]
+ [3 2 array(0, dtype=object) 0]]
+-----------------------------------------------
+Started since 0.05s
+Simulated time 1.500s (or more precisely 1.5s)
+Node number per state: terminated=3
+Node sharing:
+Ids of node in timeout mode:
+Sorted events list:
+[[3 2 array(0, dtype=object) 0]]