Using machine-to-machine protocol for Internet of Things

The IoT Data Management (IoTDM) project implements a subset of oneM2M protocol. Its purpose is to provide a common machine-to-machine layer that can be embedded with various kinds of devices and software. It follows the latest oneM2M specifications as closely as possible, publicly available at the following website:

http://www.onem2m.org/technical/published-documents

The OpenDaylight IoTDM project offers data-centric middleware acting as a oneM2M broker. It also enables authorized applications to access and get data uploaded by any device. The reason behind the data-centric architecture is to provide a single version of a global data space for applications of interest, optimizing network traffic, and application processing along with the addition and/or removal of devices from the IoT domain.

The IoTDM project is capable of interacting with data producers such as sensors, IoT management systems, and data consumers. It supports Constrained Application Protocol (CoAP), MQ Telemetry Transport (MQTT), and HTTP southbound protocols. The project allows create, retrieve, update, delete, and notify operations on a given set of resources, such as CSEBase, AE, container, content instance, subscription, access control policy, and node. More resources will be supported as the project evolves.