mirror of
https://gitlab.com/manzerbredes/esds.git
synced 2025-06-06 13:27:39 +00:00
Init ESDS repository
This commit is contained in:
commit
c2e6aad09f
106 changed files with 2638 additions and 0 deletions
7
tests/mobility_eth0_latency_2s1r/out
Normal file
7
tests/mobility_eth0_latency_2s1r/out
Normal file
|
@ -0,0 +1,7 @@
|
|||
[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=2.000,src=esds] Network update!
|
||||
[t=2.300,src=n2] Receive 1 bytes on eth0
|
||||
[t=2.300,src=n2] Receive 1 bytes on eth0
|
||||
[t=2.300,src=esds] Simulation ends
|
5
tests/mobility_eth0_latency_2s1r/receiver.py
Normal file
5
tests/mobility_eth0_latency_2s1r/receiver.py
Normal file
|
@ -0,0 +1,5 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
def execute(api):
|
||||
pass
|
||||
|
4
tests/mobility_eth0_latency_2s1r/sender.py
Normal file
4
tests/mobility_eth0_latency_2s1r/sender.py
Normal file
|
@ -0,0 +1,4 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
def execute(api):
|
||||
api.send("eth0","Hello World!",1,2)
|
42
tests/mobility_eth0_latency_2s1r/simulator.py
Executable file
42
tests/mobility_eth0_latency_2s1r/simulator.py
Executable file
|
@ -0,0 +1,42 @@
|
|||
#!/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.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(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,simulator.L+0.5)
|
||||
|
||||
s.run(breakpoints_every=1,breakpoint_callback=callback,debug=True)
|
51
tests/mobility_eth0_latency_2s1r/yoctosim.debug
Normal file
51
tests/mobility_eth0_latency_2s1r/yoctosim.debug
Normal file
|
@ -0,0 +1,51 @@
|
|||
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]]
|
Loading…
Add table
Add a link
Reference in a new issue