Question

This document on European Telecommunications Standards Institute website describes some Machine2Machine (M2M) communications protocols. I've seen mIa, mId and dIa interfaces in some research papers, however, this document, which seems to be one of the only few useful resources in describing what they are does not seem to throw much light on them.

What are these interfaces and where is the M2M communication normally used? I'm very new to these terms. I'm familiar with Computer Networking in terms of the five OSI layers. I would appreciate if someone can throw some light on these interfaces.

Possible misspellings: What are mla, mld and dla interfaces?

Was it helpful?

Solution

These interfaces (see definition here) are used to interact between applications and services capabilities layer:

  • mIa: m2m application Interface, for interaction between a network application (in the "network domain" so) and a Network Service Capabilities (NSCL)
  • dIa: m2m device application Interface, for interaction between a device application (in the "device domain") and a DSCL (Device SCL) or a GSCL (= Gateway SCL)
  • mId: m2m device Interface for interaction between xSCL (x={D,G,N})... for example between a GSCL and a NSCL.

See the big picture of the different interactions through these interfaces:

Interactions through mIa, mId and dIa

You clearly see that any interface (mIa, mId, dIa) is used to interact with the SCL (Services Capabilities Layer). Either a Gateway SCL (GSCL) or a "Network" SCL (NSCL) (btw, i don't like this term but ETSI is a telecommunication organization, they don't have the same definition for "Network" than computer scientist, be careful about that!)

SCL is a set of a lot of functionalities (register application, management objects, etc. ). They are exposed through resources in a RESTful manner (see section 9 of your document). Basically, a remote application will use the mIa to interact with a NSCL for registration and monitoring (of sensors) purposes. Thus, the application will use some functionalities exposed.

How the application will achieve this ? Through a protocol, HTTP in the case of ETSI. Different HTTP calls will be performed to interact with the NSCL. Since a NSCL could use some sensors values gathered in the GSCL, both will interact in a RESTful manner (sic for RESTafarian :D) through HTTP calls. Because the remote application might need some of the sensor data gathered by a gateway.

Back to your question and to summarize:

  • mIa / mId and dIa are just interfaces. They just said an (D/N)application/(G/N)SCL use these interfaces to interact with each other.
  • Yup, that's normal. Because it's an architecture. These interface could be "implemented" with different protocol (HTTP/CoAP/WebDav/etc.)
  • OSI Layer 7: application layer.

By the way and as a side note:

  • ETSI M2M is now SMART M2M

  • You should take a look at oneM2M, that is a world wide organization (ETSI is restrained to Europe) for M2M/IoT standardization. You will see a lot of similarity with ETSI M2M... because both aim to standardize a M2M architecture. And because oneM2M work is based on previous work done by ETSI. However oneM2M use different terms, but i would encourage you to read their specifications since it's a powerful organization.

  • For implementation purpose, take a look at OM2M that is an open source implementation of oneM2M (and SMART M2M so)

Licensed under: CC-BY-SA with attribution
scroll top