Package: simu5g.mec.orchestrator
MecOrchestrator
simple moduleModels the functionalities of the MEC orchestrator within a Multi-access Edge Computing (MEC) system. Specifically, it manages the dynamic instantiation and termination of MEC applications on the MEC hosts belonging to the MEC system. Upon receiving a MEC app instantiation request from the Ualcmp module, this module is responsible for selecting the MEC host on which the MEC application is to be instantiated, according to a configurable policy.
Used in
| Name | Type | Description |
|---|---|---|
| ExtMecAppExample | network |
One gNodeB and one MecHost hung off the same intermediate Upf, behind an anchor Upf that carries the Ualcmp and, behind it, the MecOrchestrator, plus one NrUe. Nothing here is external: which node talks to a real host, and over which interface, is configured in the ini file. |
| ExtUeAppExample | network |
One gNodeB and one MecHost hung off the same intermediate Upf, behind an anchor Upf that carries the Ualcmp and, behind it, the MecOrchestrator, plus one NrUe. Nothing here is external: which node talks to a real host, and over which interface, is configured in the ini file. |
| ExtUeAppMecAppExample | network |
One gNodeB and one MecHost hung off the same intermediate Upf, behind an anchor Upf that carries the Ualcmp and, behind it, the MecOrchestrator, plus one NrUe. Nothing here is external: which node talks to a real host, and over which interface, is configured in the ini file. |
| MultiMecHost | network |
Two gNodeB cells, each on an intermediate Upf of its own with a MecHost hung off it, so every cell has its own MEC host. Both intermediate Upf nodes meet at the anchor Upf, which carries the Ualcmp and, behind it, the MecOrchestrator. An X2 link joins the two gNodeBs. numUe NrUe terminals attach, and numBgCells BackgroundCell cells can be added as interferers. |
| MultiMecHost_delay | network |
MultiMecHost with the two intermediate Upf nodes linked directly to each other, and with no X2 link between the gNodeBs. The length of that link -- and so its propagation delay -- follows the routersDelay parameter, which makes the distance between the two MEC hosts configurable. |
| MultiOperator | network |
Two operator networks side by side. Each has three gNodeB cells chained by X2, an intermediate Upf that feeds them and carries the operator's MecHost, an anchor Upf, and a Ualcmp with its MecOrchestrator. The two anchor Upf nodes meet at a shared router, the only node the operators have in common. numUe_A and numUe_B NrUe terminals attach to operator A and B respectively, and numBgCells BackgroundCell cells can be added as interferers. |
| RnisTest | network |
The topology of SingleMecHost -- one gNodeB and one MecHost on a shared intermediate Upf, with a Ualcmp and a MecOrchestrator behind the anchor Upf -- without its playground size parameters. numUes NrUe terminals attach to the gNodeB. |
| SingleMecHost | network |
One gNodeB and one MecHost hung off the same intermediate Upf, behind an anchor Upf that carries the Ualcmp and, behind it, the MecOrchestrator. numUes NrUe terminals attach to the gNodeB. |
| UrbanNetwork | network | (no description) |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| binderModule | string | "binder" | |
| selectionPolicy | string | "MecServiceBased" |
Available policies: "MecHostBased", "MecServiceBased", "AvailableResourcesBased" |
| mecHostIndex | int | 0 |
To be used with the MecHostBased policy |
| mecHostList | object | [] | |
| mecApplicationPackageList | object | [] | |
| onboardingTime | double | 50ms |
Times to simulate lifecycle operations |
| instantiationTime | double | 50ms | |
| terminationTime | double | 50ms |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=device/mainframe;bgb=1006,692 |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| toUALCMP | output | ||
| fromUALCMP | input |
Source code
// // Models the functionalities of the MEC orchestrator within a Multi-access Edge // Computing (MEC) system. Specifically, it manages the dynamic instantiation and // termination of MEC applications on the MEC hosts belonging to the MEC system. Upon // receiving a MEC app instantiation request from the ~Ualcmp module, this module is // responsible for selecting the MEC host on which the MEC application is to be instantiated, according // to a configurable policy. // simple MecOrchestrator { parameters: @display("i=device/mainframe;bgb=1006,692"); string binderModule = default("binder"); string selectionPolicy @enum(MecHostBased,MecServiceBased,AvailableResourcesBased) = default("MecServiceBased"); // Available policies: "MecHostBased", "MecServiceBased", "AvailableResourcesBased" int mecHostIndex = default(0); // To be used with the MecHostBased policy object mecHostList = default([]); object mecApplicationPackageList = default([]); // Times to simulate lifecycle operations double onboardingTime @unit(s) = default(50ms); double instantiationTime @unit(s) = default(50ms); double terminationTime @unit(s) = default(50ms); gates: output toUALCMP; input fromUALCMP; }File: src/simu5g/mec/orchestrator/MecOrchestrator.ned