DeviceApp¶
Package: simu5g.apps.mec.DeviceApp
simple module DeviceApp
Models the Device App entity as defined by the ETSI Multi-access Edge Computing (MEC) specifications. The Device App can be instantiated on a User Equipment (UE) that wants to dynamically instantiate a MEC application within a MEC system. It establishes a TCP connection with the User App Lifecycle Management Proxy (UALCMP) entity (see the Ualcmp module) and, upon receiving a MEC application instantiation request from another UE application, it sends a message to the UALCMP including the URI of the MEC application to be instantiated. Once the confirmation of successful instantiation is received, the Device App sends an acknowledgment to the UE application that requested it. Moreover, this module is responsible for requesting the deletion of the MEC application from the MEC system upon explicit request from the UE application.
Inheritance diagram¶
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
ualcmpAddress |
string |
“” |
UALCMP address to connect to, may be left empty (“”) |
ualcmpPort |
int |
-1 |
UALCMP port number to connect to |
ualcmpLocalPort |
int |
8740 |
UALCMP local port number |
appProvider |
string |
“” |
|
appPackageSource |
string |
“” |
|
localAddress |
string |
“” |
Local address used for the UE and the UALCMP, may be left empty (“”) |
localPort |
int |
-1 |
UE port number to listen on |
timeToLive |
int |
-1 |
If not -1, set the TTL (IPv4) or Hop Limit (IPv6) field of sent packets to this value |
dscp |
int |
-1 |
If not -1, set the DSCP (IPv4/IPv6) field of sent packets to this value |
tos |
int |
-1 |
If not -1, set the Type of Service (IPv4) / Traffic Class (IPv6) field of sent packets to this value |
Properties¶
Name |
Value |
Description |
|---|---|---|
display |
i=block/app |
Gates¶
Name |
Direction |
Size |
Description |
|---|---|---|---|
socketIn |
input |
||
socketOut |
output |
Source code¶
//
// Models the Device App entity as defined by the ETSI Multi-access Edge Computing (MEC)
// specifications. The Device App can be instantiated on a User Equipment (UE) that wants to
// dynamically instantiate a MEC application within a MEC system. It establishes a TCP connection
// with the User App Lifecycle Management Proxy (UALCMP) entity (see the ~Ualcmp module) and, upon
// receiving a MEC application instantiation request from another UE application, it sends a message
// to the UALCMP including the URI of the MEC application to be instantiated. Once the confirmation
// of successful instantiation is received, the Device App sends an acknowledgment to the UE
// application that requested it. Moreover,
// this module is responsible for requesting the deletion of the MEC application from the MEC system
// upon explicit request from the UE application.
//
simple DeviceApp like IApp
{
string ualcmpAddress = default(""); // UALCMP address to connect to, may be left empty ("")
int ualcmpPort = default(-1); // UALCMP port number to connect to
int ualcmpLocalPort = default(8740); // UALCMP local port number
string appProvider = default("");
string appPackageSource = default("");
string localAddress = default(""); // Local address used for the UE and the UALCMP, may be left empty ("")
int localPort = default(-1); // UE port number to listen on
int timeToLive = default(-1); // If not -1, set the TTL (IPv4) or Hop Limit (IPv6) field of sent packets to this value
int dscp = default(-1); // If not -1, set the DSCP (IPv4/IPv6) field of sent packets to this value
int tos = default(-1); // If not -1, set the Type of Service (IPv4) / Traffic Class (IPv6) field of sent packets to this value
@display("i=block/app");
gates:
input socketIn @labels(TcpCommand/up);
output socketOut @labels(TcpCommand/down);
}