First Scenario
AdvantEDGE scenario is a yaml file that describes components of a macro-network with edge components.
The scenario model follows a tree-like shape that starts with the scenario as the root element and extends all the way to the processes as the leaf elements.
AdvantEDGE provides an internal document database that can contain several scenarios. Scenarios saved in the store reside on the local disk of the AdvantEDGE platform.
In this tutorial, we will see how to create a new scenario.
Pre-requisites
- Familiarize with AdvantEDGE Concepts
- Deploy AdvantEDGE
Create New Scenario
From AdvantEDGE GUI
- Select Configure from top bar
- Click on New
- Name your scenario
my-first-scenario
- Hit OK & Save
NOTE: You successfully saved your scenario in the document store
If you close the browser now or restart AdvantEDGE, you can retrieve it by using Open and select it from the drop-down menu
Changes made to the scenario in the AdvantEDGE GUI are not propagated to the document store until Save is pressed. Auto-save is currently not supported.
Construct Scenario Physical Infrastructure
Scenarios must be built in the logical order of the model. If a node’s parent does not exist you will not be able to create the node.
From AdvantEDGE GUI
- Add a MNO (Logical Domain)
- Click New under Network elements
- Add an OPERATOR-CELLULAR named
operator1
with parent my-first-scenario - Click Apply
You just added a Logical Operator to the Scenario.
Following the same steps add these elements: - Add a ZONE named
zone1
tooperator1
- Add a POA named
poa1
tozone1
- Add a POA named
poa2
tozone1
- Add an EDGE named
edge1
tozone1
NOTE: Under the hood this creates both Network & Physical Locations - Add a FOG named
fog1
topoa1
NOTE: Under the hood this creates both Network & Physical Locations - Add a DISTANT CLOUD named
cloud1
tomy-first-scenario
- Add a TERMINAL named
ue1
topoa1
- Click Save & OK to push the created scenario to the AdvantEDGE stored
Saving step above is important & mandatory to preserve the scenario changes - closing the browser without saving will cause work to be lost
Add Scenario Processes
In this section we will add processes that will run over our emulated infrastructure.
From AdvantEDGE GUI
- Add a CLOUD APPLICATION named
iperf-cloud-server
tocloud1
- Container image name:
gophernet/iperf-server
- Port:
80
- Protocol
UDP
- Command:
/bin/bash
- Arguments:
-c, iperf -u -s -p $IPERF_CLOUD_SERVER_SERVICE_PORT
NOTES:
gophernet is the registry and iperf-server the container image name; default registry when none is specified is dockerhub
Command: starts a bash shell
Arguments: -c=tells bash to read command from string, iperf…=starts iperf server in UDP on port 80- Add a EDGE APPLICATION named
iperf-fog-server
tofog1
- Container image name:
gophernet/iperf-server
- Port:
80
- Protocol
UDP
- Command:
/bin/bash
- Arguments:
-c, iperf -u -s -p $IPERF_FOG_SERVER_SERVICE_PORT
- NOTES:
Arguments: iperf…=starts iperf server in UDP on port 80
- Container image name:
- Container image name:
- Add a TERMINAL APPLICATION named
iperf-cloud-client
toue1
- Container image name:
gophernet/iperf-client
- Command:
/bin/bash
- Arguments:
-c, iperf -u -c $IPERF_CLOUD_SERVER_SERVICE_HOST -p $IPERF_CLOUD_SERVER_SERVICE_PORT -t 3600 -b 50M;
- NOTES:
Arguments: iperf…=starts iperf client in UDP connect to CLOUD server IP on port 80 & do 50Mbps for 3600secs
- Container image name:
- We will now add a 2nd TERMINAL called
ue2
by cloningue1
- Select
ue1
in the network topology - Click Clone in the Element Configuration pane
- Select parent
poa1
& renameue2
- Click Apply
- Select
ue2
application & renameue-app2
- Click Apply
- Select
- Click Save & OK to push the created scenario to the AdvantEDGE stored
Deploy & Observe
- Deploy the scenario
- Select Monitor in the top bar
- Select Network Metrics Aggregation dashboard
- In the dashboard, select ue-app1 - observe that:
- latency: ~150ms with cloud, ~3ms with fog & ~7ms with
ue2
- throughput: ~50Mbps UL traffic with cloud
- latency: ~150ms with cloud, ~3ms with fog & ~7ms with
- In the dashboard, select iperf-cloud-server - observe that:
- latency: 100-150ms with all other nodes
- throughput: ~50Mbps downlink from both
ue1
&ue2
Network Metrics Aggregation dashboard
allows to observe latency characteristics between nodes; it refreshes every second.
Latencies graph shows measured latency between src node & other nodes from the scenario
Variation in latency is introduced by the jitter parameter.
Uplink & Downlink throughput is the measured throughput between the selected node & other nodes from the scenario
Events show the events injected in the scenario; these appear as vertical lines on the graphs
Send a mobility event to move ue2 to poa2 NOTE: Event appears on the graphs; selecting
ue2
as the source you notice that edge-app &ue1
latency increasedTerminate the scenario
Congratulations! you have created & deployed your first scenario using AdvantEDGE