########## 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
# |-------------------+------------+----------------+----------------------+---------------------------+--------------------------|
# | Simulated time(s) | Latency(s) | Bandwidth(bps) | Remaining data (bit) | Communication duration(s) | Communication ends at(s) |
# |-------------------+------------+----------------+----------------------+---------------------------+--------------------------|
# |                 0 |          0 |              8 | 8                    | 1                         |                        1 |
# |               0.5 |        0.5 |              8 | C/U*D = 4            | R/I * L + R/BW = 0.75     |                     1.25 |
# |                 1 |          1 |              8 | C/U*D = 1.33         | R/I * L + R/BW = 0.33     |                     1.33 |
# |              1.33 |          1 |              8 |                      |                           |                          |
# |-------------------+------------+----------------+----------------------+---------------------------+--------------------------|
##############################

general:
  breakpoints_every: 0.5
  breakpoints_callback:
        file: "mobility.py"
        callback: "callback"

nodes:
  count: 2
  implementations:
    - 0 sender.py
    - 1 receiver.py

interfaces:
  eth0:
    type: "wired"
    links:
      - all 1Bps 0s all