This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| en:iot-open:networking2:model [2023/11/23 13:47] – pczekalski | en:iot-open:networking2:model [2023/11/23 18:11] (current) – pczekalski | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Communication Models ====== | ||
| + | {{: | ||
| + | IoT Devices can be classified regarding their ability to implement full protocol stacks of the typical Internet protocols like IPv4, IPv6, HTTP, etc. | ||
| + | * Devices unable to implement full protocol stack without external support, like, e.g. Arduino Uno (R3) with 32 kb of flash memory, 16 MHz single core processor and 2 kB of static ram, battery-powered, | ||
| + | * Devices that can implement full protocol stack yet are still limited by their resources, e.g. ESP8266 and ESP32 chips, battery-powered, | ||
| + | * Devices that can offer various advanced network services, capable of efficiently implementing protocol stack yet not servers, routers or gateways, e.g. Raspberry Pi and its clones. Usually, DC powered with power consumption far above 1–2 W, usually up to 10–15 W. | ||
| + | * Dedicated solutions for gateways and routers, usually with embedded, hardware-based implementations of the switching logic, utilising some 10-50W of power. | ||
| + | * Universal IoT computers (e.g. Intel IoT), using PC-grade processors (x86, but sometimes ARM), using some about up to 100 W of power. | ||
| + | |||
| + | Some IoT networks are also constrained by the number of IP addresses available regarding the number of IoT devices one needs to connect, so their topology is //a priori// prepared as NAT (Network Adress Translation) solution ((RFC 1631: http:// | ||
| + | |||
| + | IoT devices are usually expected to deliver their data to some cloud for storage and processing while the cloud can send back commands to the actuators/ | ||
| + | |||
| + | Finally, security concerns usually put the IoT devices in some separate sub-network and guarded by a firewall. | ||
| + | |||
| + | The abovementioned limitations bring 3 communication models available regarding specific IoT ecosystem requirements. | ||
| + | |||
| + | === Device to Device and Industry 4.0 Revolution === | ||
| + | The device-to-device communication model, sometimes referenced as M2M (machine-to-machine communication model), used to be implemented between the homogeneous class of IoT devices. Nowadays, there is a need to enable heterogeneous systems to collaborate and talk one-to-another. In a device to a device model, communication is usually held simple, sometimes with niche, proprietary protocols, i.e. ANT/ANT+ ((https:// | ||
| + | |||
| + | The device-to-device model is highly utilised in Industrial Automation Control systems and recently very popular in developing Industry 4.0 (I4.0) solutions, where manufacturing devices, i.e. robots and other Cyber-Physical systems (CPS), communicate to set operation sequences for optimal manufacturing process (so-called Industry 4.0) thus providing elastic working zones along with manufacturing flexibility and self-adaptation of the processes. It happens because of the presence of various IoT devices (here, sometimes referenced as Industrial IoT) and advanced data processing, including Big and Small data. Such device-to-device networks frequently mimic popular P2P (peer-to-peer) networks, where one device can virtually contact any other to ask for information or deliver one. Compared to the classical, tree-like topology, device-to-device communication constitutes a graph of relations rather than a hierarchised tree. Figure {{ref> | ||
| + | |||
| + | <figure device-to-deviceIO40> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | The device-to-device communication assumes participating devices are smart enough to talk to one another without the need for translation or advanced data processing, even if their nature is different (e.g. your intelligent door can inform your smart IoT kettle to start boiling water for warm tea, once they get informed about poor weather condition by the Internet weather monitoring service when you're back home after a long day of work). Devices constituting mesh or scatter networks communicate virtually with one another in a similar way people do. Figure {{ref> | ||
| + | <figure device-to-device> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Device to Gateway === | ||
| + | Device-to-gateway communication occurs when there is a need to provide the translated information between different networks, e.g., some Zigbee ((http:// | ||
| + | |||
| + | Gatewaying and protocol translation can also occur on the 6th and 7th level of the ISO/OSI model when the implementation of high-level protocols overwhelms even more advanced IoT devices, e.g. simple MQTT texting can be converted to the XML, heavy messages or exposed as XHTML. Those solutions are mostly software-based, | ||
| + | |||
| + | <figure device-to-gateway> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Device to Cloud === | ||
| + | As IoT devices usually cannot constitute an efficient computation structure (as a single IoT node or even their federation), | ||
| + | Those tasks are resource-consuming and require substantial processing capabilities; | ||
| + | In this context, " | ||
| + | |||
| + | <figure device-to-cloud> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | < | ||