There are many technologies that enable IoT. Crucial to
the field is the network used to communicate between devices of an IoT installation, a role that several wireless or wired technologies may fulfil.
Communication models are broadly categorized as:
Short-range wireless Long- range wireless Wired Bluetooth low energy (BLE) Short-range communications technology Standard: Bluetooth 4.2 core specification Frequency: 2.4GHz (ISM) Range: 50-150m (Smart/BLE) Data Rates: 1Mbps (Smart/BLE) Light-Fidelity (Li-Fi) Wireless communication technology similar to the Wi-Fi standard, but uses visible light communication for increased bandwidth. Near-field communication (NFC) Communication protocols enabling two electronic devices to communicate within a 4 cm range. It enables simple and safe two-way interactions between electronic devices and especially applicable for smartphones, allowing consumers to perform contactless payment transactions Standard: ISO/IEC 18000-3 Frequency: 13.56MHz (ISM) Range: 10cm Data Rates: 100–420kbps QR codes and barcodes Machine readable optical tags that store information about the item to which they are attached. Radio-Frequency Identification (RFID)
Technology using electromagnetic fields to read
data stored in tags embedded in other items. Others are • Thread • Wi-Fi • Z-Wave • ZigBee • LTE-Advanced • 6LoWPAN ((IPv6 Low-power Wireless Personal Area Network) • LoRaWAN Long-range wireless • Low-power wide-area networking (LPWAN) • Very small aperture terminal (VSAT) • Wired: Ethernet, Multimedia over Coax Alliance (MoCA) and Power-line communication (PLC) IoT Communication models • Request – Response • Publish Subscribe • Push-Pull • Exclusive -Pair Request – Response communication model Publish - Subscribe communication model Publish-Pull communication model Exclusive -Pair communication model Communication APIs Application Programming Interface (API) is created for a specific application. APIs are necessary to control devices. APIs hold together connected 'things' in an IoT system. APIs aid in transferring information between programs from one application to another. An API should be developed keeping in mind reusable patterns and automated deployment. An application programming interface or API is a software interface that enables backend communication between programs and applications. Communication APIs are broadly classified as: REST based Communication API WebSocket based Communication API REST Based Communication API REST (REpresentational State Transfer) is an architectural style and an approach to communications that is often used in the development of Web services. API is preferred over SOAP (Simple Object Access Protocol) as it consumes less bandwidth. WebSocket based Communication API It is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. Designed to be implemented in web browsers and web servers, but it can be used by any client or server application.