/
Application Management

Application Management

Application management is the process of deploying, activating, deactivating, and decommissioning applications in the GEISA execution environment. Please see notes from the Technical Deep dive for additional notes / context.

Note: Application Monitoring is treated as a separate topic.

Application Metadata

GEISA’s application management system will follow a model similar to Amazon IoT Greengrass or Microsoft Azure IoT in which applications have a recipe, manifest, or other set of meta-data describing their requirements and dependencies.

The application meta-data shall include:

  • Name, Description, and Version of the application

  • Hash of the application image

    • The GEISA application execution environment shall not activate an application unless the hash of the image matches the hash in the meta-data

  • System Resources required

  • External Dependencies

    • GEISA applications should be as self-contained as possible, with all necessary dependencies contained within the application image if at all possible.

  • Application Boot Configuration

    • Some applications will need basic information to initialize, such as the URL of a server. The system operator should be able to change the boot configuration information without needing to redeploy the application image.

  • Launch Strategy

    • Includes details such whether the application should automatically be restarted if it fails, and how many failure within a given period of time constitutes a permanent failure.

Application Management Protocol

GEISA needs to select a specific application management protocol to enable interoperability. Given the scale of GEISA (millions of devices), it is critical that the protocol be as light-weight as possible. ReSTful architectures are proven to scale very well, and thus are a preferred starting point. GEISA is currently exploring several possible management protocols, including:

Both LWM2M & CSMP are ReSTful in nature. LWM2M originated with CoAp and has been expanded to other protocols including HTTP and MQTT. CSMP is CoAp only.

The team also discussed the potential of using Mender. Mender appears to provide a robust over-the-air firmware update and application update solution, but not a more general management solution.

Comparison Table

 

LWM2M

CSMP

Welotec

 

 

LWM2M

CSMP

Welotec

 

ReSTful

Y

Y

 

 

Template Based

 

 

Y

 

Protocols

CoAP, SMS, HTTP, MQTT

CoAP

 

 

Data Formats

TLV, JSON, Text, CBOR

Protobuf TLV

 

 

Security

DTLS, TLS, DTLS+CID

Signatures

 

 

Extensible

Y

Y

 

 

Existing Object Registry

Y

N

 

 

Firmware Upgrade

Y

Y

Y

 

Network Management

Y

Y

 

 

Device Registration

Y

Y

 

 

Application Management

Y

Specification

N

 

 

Deploying

 

Activating

 

Deactivating

 

Decommissioning

 

Management Agent