Project 5 Examples
Example 1
Suppose you wanted to simulate the following network of 3 nodes. The
on/off patterns of the nodes are as follows:
- Node 1
- time 0 - node turns on
- time 10 - node turns off
- Node 2
- time 0 - node turns on
- time 5 - node turns off
- time 10 - node turns on
- Node 3
The initial message queues are as follows:
- Node 1
- message addressed to node 2 - send time 3
- message addressed to node 3 - send time 3
- Node 2
- message addressed to node 3 - send time 3
- Node 3
- message addressed to node 2 - send time 3
The simulation would proceed as follows:
Time 0:
- Node 1 turns on
- Node 2 turns on
- Node 1 starts transfer of message to node 2
- Node 2 cannot start transfer because the only message in its queue is
destined for node 3, which is offline
Time 1 - 2: transfer in progress, no new event
Time 3:
- Node 1 completes transfer of message to node 2
- Node 1 cannot start a new transfer because the only message in its
queue is destined for node 3, which is offline
Time 4: no new event
Time 5:
- Node 3 turns on
- Node 2 turns off
- Node 1 starts transfer of message to node 3
- Node 3 cannot start transfer because the only message in its queue is
destined for node 2, which is offline
Time 6-7: transfer in progress, no new event
Time 8:
- Node 1 completes transfer of message to node 3
- Node 1 has completed all message transfers
Time 9: no new event
Time 10:
- Node 1 turns off
- Node 2 turns on
- Node 2 starts transfer of message to node 3
- Node 3 starts transfer of message to node 2
Time 11 - 12: transfers in progress, no new event
Time 13:
- Node 2 completes transfer of message to node 3
- Node 3 completes transfer of message to node 2
Example 2
Suppose you wanted to simulate the following network of 3 nodes. The
on/off patterns of the nodes are as follows:
- Node 1
- time 0 - node turns on
- time 10 - node turns off
- time 15 - node turns on
- Node 2
- time 0 - node turns on
- time 5 - node turns off
- time 10 - node turns on
- Node 3
- time 5 - node turns on
- time 15 - node turns off
The initial message queues are as follows:
- Node 1
- message addressed to node 2 - send time 6
- message addressed to node 3 - send time 3
- Node 2
- message addressed to node 3 - send time 3
- Node 3
- message addressed to node 2 - send time 3
The simulation would proceed as follows:
Time 0:
- Node 1 turns on
- Node 2 turns on
- Node 1 starts transfer of message to node 2
- Node 2 cannot start transfer because the only message in its queue is
destined for node 3, which is offline
Time 1 - 4: transfer in progress, no new event
Time 5:
- Node 3 turns on
- Node 2 turns off
- Node 1 transfer to node 2 interrupted
- Node 1 starts transfer of message to node 3
- Node 3 cannot start transfer because the only message in its queue is
destined for node 2, which is offline
Time 6-7: transfer in progress, no new event
Time 8:
- Node 1 completes transfer of message to node 3
- Node 1 cannot start transfer because the only message in its queue is
destined for node 2, which is offline
Time 9: no new event
Time 10:
- Node 1 turns off
- Node 2 turns on
- Node 2 starts transfer of message to node 3
- Node 3 starts transfer of message to node 2
Time 11 - 12: transfers in progress, no new event
Time 13:
- Node 2 completes transfer of message to node 3
- Node 3 completes transfer of message to node 2
Time 14: no new event
Time 15:
- Node 1 turns on
- Node 3 turns off
- Node 1 starts transfer of message to node 2
Time 16 - 20: transfer in progress, no new event
Time 21:
- Node 1 completes transfer of message to node 2
Sami Rollins