Subject: [Suit] Terminology - LwM2M and ITU-T

From: Hannes Tschofenig <[email-masked]>
Date: Tue, 27 Feb 2018 10:01:06 +0000

Hi all,

during the virtual interim meeting yesterday I promised to provide input on the LwM2M terminology and functionality for firmware updates. This issue was raised in the context of the ITU-T liaison discussion.

The relevant content about LwM2M can be found in the publically available specs. The latest version - LwM2M v1.0.2 - can be downloaded from:
http://www.openmobilealliance.org/release/LightweightM2M/V1_0_2-20180209-A/OMA-TS-LightweightM2M-V1_0_2-20180209-A.pdf

There are four entities relevant to this topic, namely

*       The LwM2M Bootstrap Server

*       The LwM2M Server

*       The LwM2M Client

*       The firmware repository (which may be a LwM2M server or not)

LwM2M is concerned about the transport of the firmware image and about keeping track of the status. It does not define how the firmware package looks like and the work in SUIT fits nicely into there.

The firmware update functionality is integrated into the rest of the data model and there is no special terminology for just tracking firmware update status.

The protocol interaction is accomplished with objects and resources that can be read, written or executed. Appendix E describes the objects and resources that have been created for use with firmware updates.

Mapping the terminology used by ITU-T to LwM2M functionality I believe this would be a close approximation:

The ITU-T Device Core, which stores and uses software/firmware, would be part of the LwM2M client.

The ITU-T Communicator checks the software/firmware of the device and initiates updates as needed. This functionality may be on the device or somewhere else. If it is on the device then the LwM2M Client would play that role but if it is on the server side then it would be the LwM2M Server taking this role.

The ITU-T Status Tracker tracks update status of devices under its administration. This role would clearly be played by the LwM2M server and the objects and resources previously mentioned fulfil that purpose. Figure 29 shows the firmware update state machine used for that purpose.

The ITU-T Firmware Server, which distributes software/firmware packages to devices, could either be a LwM2M server or a firmware repository (depending how the firmware images are distributed).

The LwM2M Bootstrap Server is probably worth mentioning, which does not seem to have an equivalent entity in the ITU-T architecture. It is responsible for provisioning the LwM2M Client with information about which firmware server to use and also to configure it with credentials and parameters.

Ciao
Hannes
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

---

From: Michael Richardson <[email-masked]>
Date: Tue, 27 Feb 2018 09:45:50 -0500

Hannes Tschofenig <[email-masked]> wrote:
    > during the virtual interim meeting yesterday I promised to provide
    > input on the LwM2M terminology and functionality for firmware updates.
    > This issue was raised in the context of the ITU-T liaison discussion.

Thank you for the summary.

...
    > The firmware update functionality is integrated into the rest of the
    > data model and there is no special terminology for just tracking
    > firmware update status.

My understanding from reading your email is that the Status Tracker always
knows the firmware update status of every device.  Is that correct?

I think that in the LwM2M case, that the updates are pushed and that the
devices are essentially passive in regards their choice about updating or
not.   I'm not sure that SUIT contemplates the same model.

    > The LwM2M Bootstrap Server is probably worth mentioning, which does
    > not seem to have an equivalent entity in the ITU-T architecture. It is
    > responsible for provisioning the LwM2M Client with information about
    > which firmware server to use and also to configure it with credentials
    > and parameters.

Interesting.

--
Michael Richardson <[email-masked]>, Sandelman Software Works
 -= IPv6 IoT consulting =-

---

From: Hannes Tschofenig <[email-masked]>
Date: Tue, 27 Feb 2018 16:54:40 +0000

Hi Michael,

Comments below.

~snip~

    > data model and there is no special terminology for just tracking

My understanding from reading your email is that the Status Tracker always knows the firmware update status of every device.  Is that correct?

[Hannes] This is how I understood it from the description Dave Thaler provided it during the conference call. In LwM2M, which does not have the notion of a Status Tracker, the ability to monitor a device and also to monitor the progress of a firmware update is provided. So, if you want you could keep track of every device, which is what you would expect from a device management solution.

I think that in the LwM2M case, that the updates are pushed and that the devices are essentially passive in regards their choice about updating or
not.   I'm not sure that SUIT contemplates the same model.

[Hannes] LwM2M supports the LwM2M server to send a new firmware image. However, it also allows the client to fetch the firmware images from a repository.

Ciao
Hannes

--
Michael Richardson <[email-masked]>, Sandelman Software Works  -= IPv6 IoT consulting =-