Industrial Internet Connectivity Framework | Page 115

Connectivity Framework Annex F: Assessment Template: MQTT
F. 6.4 Functional Viewpoint F. 6.4.1 Core Framework Layer Functions
Data Resource Model
( Section 4.1.1)
ID & Addressing( Section 4.1.2)
Data Type System( Section 4.1.3)
Data Resource Lifecycle( CRUD)( Section 4.1.4)
State Management( Section 4.1.5)
Publish-Subscribe( Section 4.1.6)
Request-Reply( Section 4.1.7)
Discovery( Section 4.1.8)
Exception Handling( Section 4.1.9)
Data Quality of Service( QoS)( Section 4.1.10)
Does it provide a data resource model? Summarize the salient aspects. No, MQTT does not provide a data resource model. Messages are directed to Topics, which represent logical flows or streams.
There is no explicit data resource model in MQTT. A single Topic might be used to represent data from multiple resources and the association will be encoded in the data and maintained by the clients.
Does it provide a way to identifying and addressing data objects? Summarize the identification and addressing scheme.
No, it does not provide a way of identifying and addressing data objects. Addressing of individual resources within the streams is left to the application code. Does it provide a data type system? Summarize the salient aspects.
No, MQTT does not define a data type system. It transmits opaque data to be interpreted by the applications.
Does it provide a means of managing a data object’ s lifecycle? Summarize the salient aspects.
No, it does not provide a means of managing a data object’ s lifecycle. There is no explicit resource management. This would be implemented by the client applications.
Does it provide a means to manage the recent history of data objects? Summarize the salient aspects.
No, it does it not provide a means to manage the recent history of data objects. Given that there is no resource management there is also no state management provided by MQTT.
However, the MQTT broker can retain messages to be delivered to late joining applications and clients could use this to build state management at the application level.
Does it provide a means to publish and subscribe the state of data objects? Summarize the salient aspects.
It provides a means to publish and subscribe messages on topics, but since there is no dataresource model, applications have to maintain the mapping of messages to state updates on data objects.
Does it provide a means to request the state of data objects? Summarize the salient aspects.
No, it does not provide a means to request the state of data objects. Does it provide a means to discover the data objects? Summarize the salient aspects.
No, it does not provide a means to discover the data objects. Discovery is implicit by the fact that applications communicate via a broker. All client applications must connect to the same broker that has full knowledge of the topology of the system.
Does it provide a means to handle exceptions when quality of service or connectivity violations happen? Summarize the salient aspects.
No, it does not provide a means to handle exceptions when quality of service or connectivity violations happen.
Does it support data QoS? Summarize the scope and coverage. Highlight the salient aspects.
MQTT provides limited QoS support. It includes best efforts and reliable delivery, and a minimal level of durability so that subscribers can receive a special message after a publisher goes offline.
IIC: PUB: G5: V1.0: PB: 20170228- 115-