Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:iot-open:communications_and_communicating_sut:most_widely_used_wireless_communication_protocols [2019/03/07 10:19]
pczekalski
en:iot-open:communications_and_communicating_sut:most_widely_used_wireless_communication_protocols [2019/05/25 23:03] (current)
irena.skarda
Line 1: Line 1:
-===== Media layers - Wireless ​protocols ​======+===== Media Layers – Wireless ​Protocols ​======
  
-Wireless connections define core communication for IoT devices. Wast and growing amount of protocols, their variations and dynamic IoT networking market, all present non-solid situation where old "​adult"​ Internet protocols coexist along with new ideas and IoT hardware and software platforms are more and more capable with every new generationthus new ideas appear almost daily. Currently, there are many IoT networking protocols defined for various layers of the protocol implementation stack, some of them compatible while others are concurring. ​An image {{ref>​iot-protocols}} presents some selected protocols existing for IoT. Please note, this covers only the most popular ones and presents non-exhaustive view. We discuss them more detailed below.+Wireless connections define core communication for IoT devices. Wast and growing amount of protocols, their variations and dynamic IoT networking market, all present non-solid situation where old "​adult"​ Internet protocols coexist along with new ideas and IoT hardware and software platforms are more and more capable with every new generationthus new ideas appear almost daily. Currently, there are many IoT networking protocols defined for various layers of the protocol implementation stack, some of them compatible while others are concurring. ​The Figure ​{{ref>​iot-protocols}} presents some selected protocols existing for IoT. Please note, this covers only the most popular ones and presents ​non-exhaustive view. We discuss them more detailed below.
  
 <figure iot-protocols>​ <figure iot-protocols>​
 {{ :​en:​iot-open:​communications_and_communicating_sut:​iot_protocols.png?​400 |}} {{ :​en:​iot-open:​communications_and_communicating_sut:​iot_protocols.png?​400 |}}
-<​caption>​IoT ​Protocols ​</​caption>​+<​caption>​IoT ​protocols.</​caption>​
 </​figure>​ </​figure>​
  
 ==== PHY+MAC+LLC layers ==== ==== PHY+MAC+LLC layers ====
  
-Below we present currently most popular, wireless protocols review for the lower ISO/OSI layers (1-2, some of them also implement layer 3 Networking). ​+Below we present currently most popular, wireless protocols review for the lower ISO/OSI layers (12, some of them also implement layer 3 – Networking). ​
  
 === WiFi === === WiFi ===
-WiFI is the set of standards for wireless communication using the 2.4GHz or 5GHz band, slightly different spectrum in different countries. The core specification of the 2.4GHz contains 14 channels with 20 MHz (currently 40 MHz) bandwidth. While there is no centralised physical layer controller, collisions frequently occur even more with a growing number of devices sharing the band. The collision is handled using CSMA-CA with a random binary exponential increase of repeating time.+WiFI is the set of standards for wireless communication using the 2.4 GHz or 5 GHz band, slightly different spectrum in different countries. The core specification of the 2.4 GHz contains 14 channels with 20 MHz (currently 40 MHz) bandwidth. While there is no centralised physical layer controller, collisions frequently occur even more with a growing number of devices sharing the band. The collision is handled using CSMA-CA with a random binary exponential increase of repeating time.
  
-With the high speed of transmission and range usually not exceeding ​100m, it is widely used as the direct replacement of wired Ethernet in local area networks. It is a very good choice while the amount of data to be transferred is biggeri.e. video streams or assembled IoT stream delivered by gateways. It is also possible to use it in direct connectivity for smart sensors, and other IoT elements, but the protocol itself is not designed to transmit small data packets. For many IoT applications,​ it is too much energy consuming, especially when it comes to the battery-powered devices. Moreover, WiFi itself offers only 1-to-1 or star-like models of connection, where the central point is a WiFi Access Point (1-to-many) and does not provide mechanisms for io.e. self-reorganizable,​ failure-tolerant mesh networks. WiFi becomes more and more popular choice for not-so-constrained IoT devices because they need to implement full TCP/IP stack and those devices that are also not so constrained by the power consumption. ​+With the high speed of transmission and range usually not exceeding ​100 m, it is widely used as the direct replacement of wired Ethernet in local area networks. It is a very good choice while the amount of data to be transferred is larger, for example, video streams or assembled IoT stream delivered by gateways. It is also possible to use it in direct connectivity for smart sensors, and other IoT elements, but the protocol itself is not designed to transmit small data packets. For many IoT applications,​ it is too much energy consuming, especially when it comes to battery-powered devices. Moreover, WiFi itself offers only 1-to-1 or star-like models of connection, where the central point is a WiFi Access Point (1-to-many) and does not provide mechanisms for io.e. self-reorganizable,​ failure-tolerant mesh networks. WiFi becomes ​more and more popular choice for not-so-constrained IoT devices because they need to implement full TCP/IP stack and those devices that are also not so constrained by power consumption. ​
 <table Ref.Tab.1.1>​ <table Ref.Tab.1.1>​
-<​caption>​WiFi ​standards summary</​caption>​+<​caption>​WiFi ​Standards Summary</​caption>​
 ^ 802.11 standard ^ Transmission speed ^ Frequency ^ ^ 802.11 standard ^ Transmission speed ^ Frequency ^
-| 802.11b | 11Mbps ​| 2.4GHz +| 802.11b | 11 Mbps | 2.4 GHz 
-| 802.11g | 54Mbps ​| 2.4GHz +| 802.11g | 54 Mbps | 2.4 GHz 
-| 802.11n | 150Mbps ​| 2.4GHz +| 802.11n | 150 Mbps | 2.4 GHz 
-| | 300Mbps ​5GHz +| | 300 Mbps 5 GHz 
-| 802.11ac | 1Gbps 5GHz |+| 802.11ac | 1 Gbps 5 GHz |
 </​table>​ </​table>​
  
 === Bluetooth === === Bluetooth ===
-Bluetooth is a prevalent method of connecting a variety of devices in short distance. Almost every computer and a smartphone have Bluetooth module built-in. Standard has been defined by Bluetooth SIG (Special Interest Group) founded in 1998. Bluetooth operates in the 2.4GHz band with 79 channels with automatic channel switching when interference occurs (hopping frequency). The single channel offers up to about 1Mbps (where around 700kbps is available for the user) bandwidth, and it provides communication within the range from up to 1m (class 3, 1mW) till up to 100m (class 1, 100mW). The most popular version is class 2 with 10m range (2.5mW).\\ Every Bluetooth device has a unique, 48-bit MAC address.\\ Bluetooth offers various "​profiles",​ for multimedia, serial ports, packet transmission encapsulation (PAN), etc. The most useful for IoT devices is PAN (Personal Area Network) Profile and of course SPP (Serial Port) Profile.+Bluetooth is a prevalent method of connecting a variety of devices in short distance. Almost every computer and a smartphone have Bluetooth module built-in. Standard has been defined by Bluetooth SIG (Special Interest Group) founded in 1998. Bluetooth operates in the 2.4 GHz band with 79 channels with automatic channel switching when interference occurs (hopping frequency). The single channel offers up to about 1Mbps (where around 700kbps is available for the user) bandwidth, and it provides communication within the range from up to 1 m (class 3, 1 mW) till up to 100 m (class 1, 100 mW). The most popular version is class 2 with 10 m range (2.5 mW).\\ Every Bluetooth device has a unique, 48-bit MAC address.\\ Bluetooth offers various "​profiles",​ for multimedia, serial ports, packet transmission encapsulation (PAN), etc. The most useful for IoT devices is PAN (Personal Area Network) Profile and of course SPP (Serial Port) Profile.
  
 Now Bluetooth covers two branches: BR/EDR (Basic Rate/​Enhanced Data Rate) for high-speed audio and file transfer connections and LE (Low Energy) for short burst connections ((What is Bluetooth, https://​www.bluetooth.com/​what-is-bluetooth-technology/​how-it-works)). Now Bluetooth covers two branches: BR/EDR (Basic Rate/​Enhanced Data Rate) for high-speed audio and file transfer connections and LE (Low Energy) for short burst connections ((What is Bluetooth, https://​www.bluetooth.com/​what-is-bluetooth-technology/​how-it-works)).
  
-Classical (prior to BLE and 4.0) Bluetooth networks can create ad-hoc, so-called WPAN (Wireless Personal Area Networks) sometimes referenced as Piconets. Bluetooth Piconet can handle up to 7+1 devices, where 1 device acts as Master, and it can contact up to 7 Slave devices. Only the Master device can initiate a connection. Fortunately for the IoT approach, much Bluetooth hardware can act as Slave and Master simultaneously,​ constituting this way a kind of router; thus devices can constitute a tree-like structure called Scatternet ​(figure {{ref>​net_bt_scatternet}}).+Classical (prior to BLE and 4.0) Bluetooth networks can create ad-hoc, so-called WPAN (Wireless Personal Area Networks) sometimes referenced as Piconets. Bluetooth Piconet can handle up to 7 + 1 devices, where 1 device acts as Master, and it can contact up to 7 Slave devices. Only the Master device can initiate a connection. Fortunately for the IoT approach, much Bluetooth hardware can act as Slave and Master simultaneously,​ constituting this way a kind of router; thusdevices can constitute a tree-like structure called Scatternet.
    
 <figure net_bt_scatternet>​ <figure net_bt_scatternet>​
 {{ :​en:​iot-open:​communications_and_communicating_sut:​bt_piconets.png?​200 |}} {{ :​en:​iot-open:​communications_and_communicating_sut:​bt_piconets.png?​200 |}}
-<​caption>​Bluetooth Scatternet</​caption>​+<​caption>​Bluetooth Scatternet.</​caption>​
 </​figure>​ </​figure>​
  
-Bluetooth Low Energy (BLE) uses simplified implementation of the state machine thus is more constrained-devices friendly. It offers a limited range, and it is designed to expose the state rather than transmit streamed data. It provides a speed reaching up to about 1.4 Mbps (2 Mbps aerial throughput) if needed, however. It uses 2.4 GHz band but is designed to avoid interference with WiFi AP and clients. Communication is organised into advertising channels (located "​between"​ WiFi) and 37 communication channels.\\+Bluetooth Low Energy (BLE) uses an simplified implementation of the state machine thus is more constrained-devices friendly. It offers a limited range, and it is designed to expose the state rather than transmit streamed data. It provides a speed reaching up to about 1.4 Mbps (2 Mbps aerial throughput) if needed, however. It uses 2.4 GHz band but is designed to avoid interference with WiFi AP and clients. Communication is organised into three advertising channels (located "​between"​ WiFi) and 37 communication channels.\\
  
-Latest Bluetooth implementations (protocol version 5.0 and newer, implemented in mid-2017) offer a Bluetooth mesh network extending ubiquitous connectivity via many-to-many communication model, dedicated to IoT devices, lighting, Industry 4.0, etc. The Bluetooth mesh is layer-organised,​ and since there is no longer Master-Slave model used, but messages are relayed through the mesh, it is considered to be no longer the Scatternet because of its flat structure ((https://​blog.bluetooth.com/​introducing-bluetooth-mesh-networking)). Sample Bluetooth Mesh Network is presented in the figure ​{{ref>​bt-5-mesh}} (source: Bluetooth SIG, Mesh Profile Specification v1.0 ((https://​www.bluetooth.org/​docman/​handlers/​downloaddoc.ashx?​doc_id=429633&​_ga=2.211169244.858695694.1511814243-2000857715.1511814243))).+Latest Bluetooth implementations (protocol version 5.0 and newer, implemented in mid-2017) offer a Bluetooth mesh network extending ubiquitous connectivity via many-to-many communication model, dedicated to IoT devices, lighting, Industry 4.0, etc. The Bluetooth mesh is layer-organised,​ and since there is no longer Master-Slave model used, but messages are relayed through the mesh, it is considered to be no longer the Scatternet because of its flat structure ((https://​blog.bluetooth.com/​introducing-bluetooth-mesh-networking)). Sample Bluetooth Mesh Network is presented in Figure ​{{ref>​bt-5-mesh}} (source: Bluetooth SIG, Mesh Profile Specification v1.0 ((https://​www.bluetooth.org/​docman/​handlers/​downloaddoc.ashx?​doc_id=429633&​_ga=2.211169244.858695694.1511814243-2000857715.1511814243))).
  
 <figure bt-5-mesh>​ <figure bt-5-mesh>​
 {{ :​en:​iot-open:​communications_and_communicating_sut:​g3737.png?​400 |}} {{ :​en:​iot-open:​communications_and_communicating_sut:​g3737.png?​400 |}}
-<​caption>​Example Topology of the Bluetooth 5 Mesh Network</​caption>​+<​caption>​Example Topology of the Bluetooth 5 Mesh Network.</​caption>​
 </​figure>​ </​figure>​
  
 <table Ref.Tab.1.2>​ <table Ref.Tab.1.2>​
-<​caption>​Bluetooth ​standard summary</​caption>​+<​caption>​Bluetooth ​Standard Summary</​caption>​
 ^ Bluetooth ^ Transmission speed ^ Remarks ^ ^ Bluetooth ^ Transmission speed ^ Remarks ^
-| 1.0 | 21kbps ​few implementations | +| 1.0 | 21 kbps Few implementations | 
-| 1.1 | 124kbps ​| | +| 1.1 | 124 kbps | | 
-| 1.2 | 328kbps ​first popular version |  +| 1.2 | 328 kbps First popular version |  
-| 2.0 + EDR | 3Mbps | Extended Data Rate | +| 2.0 + EDR | 3 Mbps | Extended Data Rate | 
-| 3.0 + HS | 24Mbps ​| High Speed | +| 3.0 + HS | 24 Mbps | High Speed | 
-| 3.1 + HS | 40Mbps ​| | +| 3.1 + HS | 40 Mbps | | 
-| 4.0 + LE | 1Mbps | Low Energy | +| 4.0 + LE | 1 Mbps | Low Energy | 
-| 4.1 | designed ​for IoT | | +| 4.1 | Designed ​for IoT | | 
-| 5.0 | one standard for all purposes | |+| 5.0 | One standard for all purposes | |
 </​table>​ </​table>​
  
 === Cellular === === Cellular ===
-Cellular (mobile/​GSM) networks are one of the possible options because of its wide coverage and long range. Those network use orthogonality in frequency and time spaces. Cellular networks are presented by the subsequent generations (G) currently up to 4.5G present on the market and 5G in the experimental phase (should be fully functional around the year 2020). Typical GSM network technology, sometimes referenced as an era, runs out within about 10-15 years. It is pretty close but still less than expected end-of-life for classes of IoT devices (15-25 years). GSM hardware used to be backwards compatible, enabling users to access older, even before 2G GSM networks with latest chips.\\ The picture ​{{ref>​gsm_generations}} present GSM network evolution over time and generations. Cellular networks use different frequencies in different countries, yet available radio implementations nowadays are usually able to handle all of them.+Cellular (mobile/​GSM) networks are one of the possible options because of its wide coverage and long range. Those network use orthogonality in frequency and time spaces. Cellular networks are presented by the subsequent generations (G) – currently up to 4.5G present on the market and 5G in the experimental phase (should be fully functional around the year 2020). Typical GSM network technology, sometimes referenced as an era, runs out within about 1015 years. It is pretty close but still less than expected end-of-life for classes of IoT devices (15-25 years). GSM hardware used to be backwards compatible, enabling users to access older, even before 2G GSM networks with latest chips. 
 + 
 +Figure ​{{ref>​gsm_generations}} present GSM network evolution over time and generations. Cellular networks use different frequencies in different countries, yet available radio implementations nowadays are usually able to handle all of them.
  
 <figure gsm_generations>​ <figure gsm_generations>​
 {{ :​en:​iot-open:​communications_and_communicating_sut:​grafika3.png?​400 |}} {{ :​en:​iot-open:​communications_and_communicating_sut:​grafika3.png?​400 |}}
-<​caption>​GSM network evolution and generations</​caption>​+<​caption>​GSM network evolution and generations.</​caption>​
 </​figure>​ </​figure>​
  
-The image {{ref>​gsm-net}} presents sample GSM hardware (separate module and ready shield for Arduino platform).+Figure ​{{ref>​gsm-net}} presents sample GSM hardware (separate module and ready shield for the Arduino platform).
  
 <figure gsm-net> <figure gsm-net>
 {{ :​en:​iot-open:​communications_and_communicating_sut:​sim800l.jpg?​150 |}} {{ :​en:​iot-open:​communications_and_communicating_sut:​sim800l.jpg?​150 |}}
 {{ :​en:​iot-open:​communications_and_communicating_sut:​a000105_iso.jpg?​200 |}} {{ :​en:​iot-open:​communications_and_communicating_sut:​a000105_iso.jpg?​200 |}}
-<​caption>​Sample GSM hardware for IoT prototyping</​caption>​+<​caption>​Sample GSM hardware for IoT prototyping.</​caption>​
 </​figure>​ </​figure>​
  
-GSM protocols are proprietary,​ quite complex (including advanced ciphering) and require dedicated hardware. A sort of documentation and standards is not publicly available because of security considerations (i.e. voice transmission ciphering details).\\ +GSM protocols are proprietary,​ quite complex (including advanced ciphering) and require dedicated hardware. A sort of documentation and standards is not publicly available because of security considerations (i.e. voice transmission ciphering details). 
-On the one hand, the GSM network seems to be a good solution for extended distant IoT networkson the other, they have many disadvantages,​ however. First of all, they require the use of operators'​ infrastructure ​as GSM bands are not free to use. + 
-<note important>​Professional operation requires licencing and connecting existing infrastructure involves a purchase of the unique identifier (phone ID and a number that is given by the SIM card, physical or virtual) and a service fee.</​note>​ +On the one hand, the GSM network seems to be a good solution for extended distant IoT networkson the other, they have many disadvantages,​ however. First of all, they require the use of operators'​ infrastructure ​– as GSM bands are not free to use. 
-By the limited access constraints there do exist one more GSM boards are using quite a significant amount of energy when establishing a connection because they need to broadcast their existence as far as possible, to gain a connection with a possibly distant-located base station. It requires tremendous power and drains the battery (even up to 10W peak) thus cellular solutions are not suitable for the IoT devices that use frequent data communication.+ 
 +**Important!** ​Professional operation requires licencing and connecting existing infrastructure involves a purchase of the unique identifier (phone ID and a number that is given by the SIM card, physical or virtual) and a service fee. 
 + 
 +By the limited access constraints there do exist one more – GSM boards are using quite a significant amount of energy when establishing a connection because they need to broadcast their existence as far as possible, to gain a connection with a possibly distant-located base station. It requires tremendous power and drains the battery (even up to 10 W peak)thuscellular solutions are not suitable for the IoT devices that use frequent data communication.
  
 === ZigBee === === ZigBee ===
-ZigBee protocol is so far very popular in Smart House but also in Industry appliances. Zigbee is a wireless technology developed as an open standard to address the needs of low-cost, low-power wireless machine to machine networks. It is more popular in the industry, however, but because of the relatively higher cost of equipment in comparison with WiFi, Bluetooth or other RF modules. The Zigbee standard operates on the radio bands 2.4 GHz for smart home applications,​ 915 MHz in US and Australia, 868 MHz in Europe and 784 MHz in China. The advantage of ZigBee is the possibility of forming the mesh networks where nodes are interconnected with others, so there are multiple paths connecting each pair of nodes. Connections are dynamically updated, so when one node turns off the path going through that node will be automatically rerouted via another path. Transmission speed is up to 250 kbps, theoretical range up to 100 m but usually to some 10-30 m. ZigBee does not provide direct, unique IP-addressing on the Networking layer like i.e. 6LowPAN or Thread do. Single ZigBee network can handle up to 65000 devices.+ZigBee protocol is so far very popular in Smart House but also in Industry appliances. Zigbee is a wireless technology developed as an open standard to address the needs of low-cost, low-power wireless machine to machine networks. It is more popular in the industry, however, but because of the relatively higher cost of equipment in comparison with WiFi, Bluetooth or other RF modules. The Zigbee standard operates on the radio bands 2.4 GHz for smart home applications,​ 915 MHz in US and Australia, 868 MHz in Europe and 784 MHz in China. The advantage of ZigBee is the possibility of forming the mesh networks where nodes are interconnected with others, so there are multiple paths connecting each pair of nodes. Connections are dynamically updated, so when one node turns off the path going through that node will be automatically rerouted via another path. Transmission speed is up to 250 kbps, theoretical range up to 100 m but usually to some 1030 m. ZigBee does not provide direct, unique IP-addressing on the Networking layer like 6LowPAN or Thread do. Single ZigBee network can handle up to 65 000 devices.
  
 === Z-Wave === === Z-Wave ===
-Z-Wave is a protocol similar in principals to the ZigBee but hardware is cheaper thus it is more towards inexpensive home automation systems. Like in ZigBee, Z-Wave operates on different frequencies depending on the world region, usually between 865 and 926 MHz. Transmission speed is up to 200 kbps and the range is up to 100m. A single Z-Wave network is pretty limited on a number of concurrent devices in one network, that is only 232 devices. Each Z-Wave network has a unique ID and each node (device) in a network has a unique 8-bit identifier.+Z-Wave is a protocol similar in principals to the ZigBeebut hardware is cheaperthusit is more towards inexpensive home automation systems. Like in ZigBee, Z-Wave operates on different frequencies depending on the world region, usually between 865 MHz and 926 MHz. Transmission speed is up to 200 kbpsand the range is up to 100m. A single Z-Wave network is pretty limited on a number of concurrent devices in one network, that is only 232 devices. Each Z-Wave network has a unique IDand each node (device) in a network has a unique 8-bit identifier.
  
 === Thread === === Thread ===
-Another standard((Thread Stack Fundamentals,​ Thread group, 2015)) that works using the same 802.15.4 radio. There are some differences in the protocol like address allocation. In 6LowPAN it is done be nodes since in Thread addresses are obtained from DHCPv6 server.+Another standard ((Thread Stack Fundamentals,​ Thread group, 2015)) that works using the same 802.15.4 radio. There are some differences in the protocollike address allocation. In 6LowPAN it is done be nodes since in Thread addresses are obtained from DHCPv6 server.
  
 === NFC === === NFC ===
-NFC (Near Field Communication) is a technology that enables two-way interactions between electronic devices. What is important one of the devices does not have to be equipped with the power source – it is powered by the receiving radio signal. That’s why NFC is used in contactless card technology enabling devices to exchange the data at a distance of less than 4cm+NFC (Near Field Communication) is a technology that enables two-way interactions between electronic devices. What is important one of the devices does not have to be equipped with the power source – it is powered by the receiving radio signal. That’s why NFC is used in contactless card technology enabling devices to exchange the data at a distance of less than 4 cm
-Transmission speed varies between 100–420kbps, range between both active devices is up to 10 cm, operating frequency 13.56MHz.+Transmission speed varies between 100–420 kbps, range between both active devices is up to 10 cm, operating frequency 13.56 MHz.
  
 === Sigfox === === Sigfox ===
-Sigfox ((https://​www.sigfox.com/​en)) is the idea to connect objects with sub 1GHz radio frequency. It uses the 900MHz ​frequency range from the ISM band. The range is about 30-50km (open space), 3-10km (urban environments). This standard uses a technology called Ultra Narrow Band (UNB). It has been designed to transmit data with deficient speed – from 10 to 1000 bps. Thanks to small data packets it consumes only 50 mW of power. It is intended to create the public networks only so using Sigfox requires the subscription plan. Many (but not all) European countries are covered with Sigfox.+Sigfox ((https://​www.sigfox.com/​en)) is the idea to connect objects with sub 1 GHz radio frequency. It uses the 900 MHz frequency range from the ISM band. The range is about 30–50 km (open space), 3–10 km (urban environments). This standard uses a technology called Ultra Narrow Band (UNB). It has been designed to transmit data with deficient speed – from 10 to 1000 bps. Thanks to small data packets it consumes only 50 mW of power. It is intended to create the public networks only so using Sigfox requires the subscription plan. Many (but not all) European countries are covered with Sigfox.
  
 === LoRaWAN === === LoRaWAN ===
-LoRa (Long Range) is the technology for data transmission with relatively low speed (20 bps do 41 kbps) and the range about 2 km (new transceivers can transmit data up to 15km). It uses CSS (Chirp Spread Spectrum) modulation in the 433MHz ​ISM radio band. The cell topology is the star with the gateway placed at the central point. End-devices use one hop communication with the gateway, that is connected to the standard IP network with a central network server. The LoRa technology is supported as LoRa WAN by LoRa Alliance ((https://​www.lora-alliance.org/​)) designed as Sigfox for public networks, but it can also be used in private networks that do not require a subscription.+LoRa (Long Range) is the technology for data transmission with relatively low speed (20 bps do 41 kbps) and the range about 2 km (new transceivers can transmit data up to 15 km). It uses CSS (Chirp Spread Spectrum) modulation in the 433 MHz ISM radio band. The cell topology is the star with the gateway placed at the central point. End-devices use one hop communication with the gateway, that is connected to the standard IP network with a central network server. The LoRa technology is supported as LoRa WAN by LoRa Alliance ((https://​www.lora-alliance.org/​)) designed as Sigfox for public networks, but it can also be used in private networks that do not require a subscription.
  
 ==== NET (NWY) Layer ==== ==== NET (NWY) Layer ====
-Traditionally,​ we use IP addressing (usually masked by DNS to be more user-friendly) when accessing Internet resources. IoT devices may also benefit from this approach. However, constrained devices do require special "​editions"​ of the conventional protocols, that are lightweight. Networking layer implements the basic communication mechanisms on the packet level like routing, delivery, proxying, etc. Many IoT, lightweight implementations of the protocols presented below benefit or at least inherit ideas from regular "​adult"​ implementations. Please note that some protocols implement more than one layer, as presented on image {{ref>​iot-protocols}}. We also provide a short reference of the IP v4 and IP v6, to show advantages and drawbacks.+Traditionally,​ we use IP addressing (usually masked by DNS to be more user-friendly) when accessing Internet resources. IoT devices may also benefit from this approach. However, constrained devices do require special "​editions"​ of the conventional protocols, that are lightweight. Networking layer implements the basic communication mechanisms on the packet level like routing, delivery, proxying, etc. Many IoT, lightweight implementations of the protocols presented below benefit or at least inherit ideas from regular "​adult"​ implementations. Please note that some protocols implement more than one layer, as presented on image {{ref>​iot-protocols}}. We also provide a short reference of the IPv4 and IPv6, to show advantages and drawbacks.
  
-=== IP v4 === +=== IPv4 === 
-Internet Protocol v4 (1981) is perhaps the most widespread networking protocol.\\ +Internet Protocol v4 (1981) is perhaps the most widespread networking protocol. The predecessor of the IPv4 protocol originally called IP was introduced in 1974 and supported up to 2^8 hosts, organised in 2^4 subnetworks (RFC 675).
-The predecessor of the IP v4 protocol originally called IP was introduced in 1974 and supported up to 2^8 hosts, organised in 2^4 subnetworks (RFC 675).\\  +
-In IP v4 (RFC 760/RFC791) the logical addressing space was extended to 2^32 devices that seemed to be quote much in 1981, but now we struggle with lack of free addressing space. This number is less because some addresses are reserved for, i.e. broadcasting and due to the existence of different classes of addresses and their pools ((https://​en.wikipedia.org/​wiki/​IPv4)).\\+
  
-Sample IP v4 address is i.e.: 192.168.1.1 .\\+In IPv4 (RFC 760/RFC791) the logical addressing space was extended to 2^32 devices that seemed to be quote much in 1981, but now we struggle with lack of free addressing spaceThis number is less because some addresses are reserved, ​e.g. for broadcasting and due to the existence of different classes of addresses and their pools ((https://​en.wikipedia.org/​wiki/​IPv4)). Sample IPv4 address is, for example, ​192.168.1.1.
  
 Some relief to suffocating Internet was brought as an ad-hoc solution with an introduction of the NAT (Network Address Translation). NAT-enabled subnetworks are those, where one public address represents a set of devices hidden behind the router, but that limits usability because of lack of direct access and unique identification in the global network of the devices sharing private address spaces. Even so, there are about 8.5 billion IoT devices expected to be connected to the Internet by the end of the 2017 year, according to the Gartner'​s report ((https://​www.gartner.com/​newsroom/​id/​3598917)). They all need to be uniquely addressed! Some relief to suffocating Internet was brought as an ad-hoc solution with an introduction of the NAT (Network Address Translation). NAT-enabled subnetworks are those, where one public address represents a set of devices hidden behind the router, but that limits usability because of lack of direct access and unique identification in the global network of the devices sharing private address spaces. Even so, there are about 8.5 billion IoT devices expected to be connected to the Internet by the end of the 2017 year, according to the Gartner'​s report ((https://​www.gartner.com/​newsroom/​id/​3598917)). They all need to be uniquely addressed!
  
-=== IP v6 ===  +=== IPv6 ===  
-IP v6 is the next generation of the IP v4 protocol. It is supposed to replace ​IP v4, but this process is somehow not so quick as there are many solutions still present on the Internet and Intranets that implement ​IP v4 only and would become inoperable if IP v4 would not be available anymore. ​IP v6 brings addressing space large enough to cover all existing and future needs. The number of possible addresses is 2^128. Addresses are presented by 8 groups of 4 hexadecimal values, ​i.e., \\ +IPv6 is the next generation of the IPv4 protocol. It is supposed to replace ​IPv4, but this process is somehow not so quick as there are many solutions still present on the Internet and Intranets that implement ​IPv4 only and would become inoperable if IPv4 would not be available anymore. ​IPv6 brings addressing space large enough to cover all existing and future needs. The number of possible addresses is 2^128. Addresses are presented by 8 groups of 4 hexadecimal values, e.g. 2001:​0db8:​0000:​0042:​0000:​8a2e:​0370:​7334
-2001:​0db8:​0000:​0042:​0000:​8a2e:​0370:​7334\\ + 
-This brings the capability to uniquely identify any device connected to the Internet using its IP v6 address. Regarding IoT, implementations have many drawbacks (IP v4 also has them). ​IP v6 network is star-like whereas IoT networks can benefit from the mesh model. ​IP v6 network requires a controller providing free addresses (a DHCP server) ​devices need to contact it to obtain the address. Every single IoT device needs to keep a list of devices it corresponds with (ARP) to resolve their physical address. Moreover, full IP v6 stack implementation requires large RAM, when used.+This brings the capability to uniquely identify any device connected to the Internet using its IPv6 address. Regarding IoT, implementations have many drawbacks (IPv4 also has them). ​IPv6 network is star-likewhereas IoT networks can benefit from the mesh model. ​IPv6 network requires a controller providing free addresses (a DHCP server) ​– devices need to contact it to obtain the address. Every single IoT device needs to keep a list of devices it corresponds with (ARP) to resolve their physical address. Moreover, full IPv6 stack implementation requires large RAM, when used.
  
 === 6LoWPAN === === 6LoWPAN ===
-The name is the abbreviation of “IPv6 over Low-Power Wireless Personal Area Networks”((Jonas Olsson, „6LoWPAN demystified”,​ 2014, Texas Instruments)) and as it says is the IP based network.  +The name is the abbreviation of “IPv6 over Low-Power Wireless Personal Area Networks” ((Jonas Olsson, „6LoWPAN demystified”,​ 2014, Texas Instruments)) and as it says is the IP based network.  
-This protocol was introduced as a lightweight version of full IP v6, IoT-oriented.+This protocol was introduced as a lightweight version of full IPv6, IoT-oriented.
 This feature allows connecting 6LoWPAN networks with other networks using so-called Edge Router. Thus every node can be visible on the Internet as states in IoT idea. This standard has been developed to operate on the radio channel defined in 802.15.4 (as ZigBee, Z-Wave). It creates the adaptation layer that allows using IPv6 over 802.15.4 link.  This feature allows connecting 6LoWPAN networks with other networks using so-called Edge Router. Thus every node can be visible on the Internet as states in IoT idea. This standard has been developed to operate on the radio channel defined in 802.15.4 (as ZigBee, Z-Wave). It creates the adaptation layer that allows using IPv6 over 802.15.4 link. 
 6LoWPAN has been adopted in Bluetooth Smart 4.2 standard as well.  6LoWPAN has been adopted in Bluetooth Smart 4.2 standard as well. 
  
-6LoWPAN supports two addressing models: ​64bit and 16 bit (that, of course, limits the number of devices connected to one network to 64000 nodes). The primary frame size is just 127 bytes (comparing to full IP v6 where it is 1280 bytes at least). 6LoWPAN supports unicast and broadcast. It also supports IP routing and link-layer mesh (802.15.5) that enables the introduction of the fail-safe redundant, self-organising networks, because the link-layer mesh can have more than one Edge Router. +6LoWPAN supports two addressing models: ​64 bit and 16 bit (that, of course, limits the number of devices connected to one network to 64 000 nodes). The primary frame size is just 127 bytes (comparing to full IPv6 where it is 1280 bytes at least). 6LoWPAN supports unicast and broadcast. It also supports IP routing and link-layer mesh (802.15.5) that enables the introduction of the fail-safe redundant, self-organising networks, because the link-layer mesh can have more than one Edge Router. 
-6LoWPAN uses autoconfiguration for neighbour devices discovery so does not require DHCP server. It also supports ciphered transportation using AES 128 (and AES 64 for constrained devices).+6LoWPAN uses autoconfiguration for neighbour devices discovery so does not require ​DHCP server. It also supports ciphered transportation using AES 128 (and AES 64 for constrained devices).
  
-Sample 6LoWPAN network is presented on image {{ref>​Sample_6LoWPAN}}. 
 <figure Sample_6LoWPAN>​ <figure Sample_6LoWPAN>​
  
Line 134: Line 136:
 </​figure>​ </​figure>​
  
-6LoWPAN devices can be just nodes (Hosts) or nodes with routing capability (Routers) as presented ​on the image {{ref>​Sample_6LoWPAN}}.+6LoWPAN devices can be just nodes (Hosts) or nodes with routing capability (Routers) as presented ​in Figure ​{{ref>​Sample_6LoWPAN}}.
  
-A gateway between 6LoWPAN and regular ​IP v6 (IP v4) network is implemented by the Edge Router. Its purpose is to translate "​compressed" ​IP v6 addresses to ensure bi-directional communication between the Internet and 6LoWPAN nodes. Note the network structure of the 6LoWPAN is logically flat (star/mesh with single addressing space), and devices have unique MAC addresses to be recognisable by the Edge Router device.+A gateway between 6LoWPAN and regular ​IPv6 (IPv4) network is implemented by the Edge Router. Its purpose is to translate "​compressed" ​IPv6 addresses to ensure bi-directional communication between the Internet and 6LoWPAN nodes. Note – the network structure of the 6LoWPAN is logically flat (star/mesh with single addressing space), and devices have unique MAC addresses to be recognisable by the Edge Router device.
  
-When the 6LoWPAN network starts, there are three operations done, repeated consequently: +When the 6LoWPAN network starts, there are three operations done, repeated consequently. 
-  - Commissioning ​- Establishes ​connectivity on the Data Link Layer level between nodes. +  - Commissioning ​– establishes ​connectivity on the Data Link Layer level between nodes. 
-  - Bootstrapping ​- Performs ​address configuration,​ discovery and registration. +  - Bootstrapping ​– performs ​address configuration,​ discovery and registration. 
-  - Route Initiation ​- Executing ​routing algorithms to set up paths. +  - Route Initiation ​– executing ​routing algorithms to set up paths. 
-Typical ​IP v6 networking discovery won't work here because multicast / broadcast messages are not passable through 6LoWPAN routing nodes (Routes ​as on image {{ref>Sample_6LoWPAN}}).\\+Typical ​IPv6 networking discovery won't work here because multicast/​broadcast messages are not passable through 6LoWPAN routing nodes (routes ​as on in Figure ​{{ref>6LoWPAN_Discovery}}.
  
 An interesting procedure is performed when an IoT node (device) wants to connect to the existing 6LoWPAN network. As there is no central DHCP server broadcasting information,​ the device needs to discover the configuration and create 6LoWPAN address itself. It issues the network discovery process. An interesting procedure is performed when an IoT node (device) wants to connect to the existing 6LoWPAN network. As there is no central DHCP server broadcasting information,​ the device needs to discover the configuration and create 6LoWPAN address itself. It issues the network discovery process.
  
-Network discovery (discovery of neighbour nodes) in 6LoWPAN uses principals:​ +Network discovery (discovery of neighbour nodes) in 6LoWPAN uses four principals:​ 
-  * NR - Node Registration +  * NR – node registration,​ 
-  * NC - Node Confirmation +  * NC – node confirmation,​ 
-  * DAD - Duplicate Address Detection +  * DAD – duplicate address detection, 
-  * Support ​for Edge Routers+  * support ​for Edge Routers.
  
-The process is presented on the image {{ref>​6LoWPAN_Discovery}} 
  
 <figure 6LoWPAN_Discovery>​ <figure 6LoWPAN_Discovery>​
 {{ :​en:​iot-open:​communications_and_communicating_sut:​6lowpan_connecting.png?​300 |}} {{ :​en:​iot-open:​communications_and_communicating_sut:​6lowpan_connecting.png?​300 |}}
 <​caption>​6LoWPAN Network Automated ​ <​caption>​6LoWPAN Network Automated ​
-Discovery demystified</​caption>​+Discovery demystified.</​caption>​
 </​figure>​ </​figure>​
  
-Network Automated Discovery is composed of twomain sections: +Network Automated Discovery is composed of two main sections. 
-  ​Part one (dark blue) – Neighbor Discovery (ND): +  ​Part one (dark blue) – Neighbor Discovery (ND): 
-    * New node sends RS multicast (SLLAO) +    * new node sends RS multicast (SLLAO); 
-    * All routersrespond unicast RA (PIO+6CO+ABRO+SLLAO)  +    * all routers respond unicast RA (PIO + 6CO + ABRO + SLLAO) 
-    * Node selects one router as default (usually first RA obtained) and derives global Ipv6 address based on prefix delivered (PIO) +    * node selects one router as default (usually first RA obtained) and derives global Ipv6 address based on prefix delivered (PIO); 
-    * Node sends ARO (ARO+SLLAO) unicast to the selected router +    * node sends ARO (ARO + SLLAO) unicast to the selected router; 
-    * Router ​returns ARO with a status +    * router ​returns ARO with a status: 
-      * Status ​is: OK, Duplicate Address, Cache Full, other (see RFC5226) +      * status ​is: OK, Duplicate Address, Cache Full, other (see RFC5226); 
-      * Assuming ​status OK, the router adds new neighbour node address into the cache. +      * assuming ​status OK, the router adds new neighbour node address into the cache; 
-    * Node send periodically NS to inform that “it is alive” the router (so-called NUD (Neighbor Unreachability Detection) +    * Node sends periodically NS to inform that “it is alive” the router (so-called NUD (Neighbor Unreachability Detection)); 
-  * Process above may involve DAD (Duplicate Address ​Discovery) mechanism to be triggered. +  * Process above may involve DAD (Duplicate Address ​Detection) mechanism to be triggered. 
-    * On registration,​ router “asks” all Edge Routers if address offered by the node is unique (DAR/DAC messages).+    * on registration,​ router “asks” all Edge Routers if address offered by the node is unique (DAR/DAC messages).
     * DAD message is expected to “wake up” IoT device from standby mode!     * DAD message is expected to “wake up” IoT device from standby mode!
-  ​Part two (red) – Network Registration (NR): +  ​Part two (red) – Network Registration (NR): 
-    * Node sends DODAG Solicitation (DIS) unicast to the router. +    * node sends DODAG Solicitation (DIS) unicast to the router. 
-    * Router ​responds with DODAG Information Object (DIO) and keeps broadcasting it periodically. DIO contains router rank (i.e. it presents, how far the router is from the Edge Router). +    * router ​responds with DODAG Information Object (DIO) and keeps broadcasting it periodically. DIO contains router rank (i.e. it presents, how far the router is from the Edge Router); 
-    * If node obtains DIO with better rank, it should re-register with other “better” router as a new default router. +    * if node obtains DIO with better rank, it should re-register with other “better” router as a new default router; 
-    * Finally ​node sends Destination Advertising Object (DAO) to its default router that is forwarded to Edge Router. +    * finally ​node sends Destination Advertising Object (DAO) to its default router that is forwarded to edge router; 
-    * Edge Router ​responds with DAO ACK+    * edge router ​responds with DAO ACK.
- +
-This way the new 6LoWPAN node can join the new network seamlessly. Moreover, this mechanism enables 6LoWPAN mesh network to self-organise itself if needed, i.e. because of the failure of the router.+
  
 +This way, the new 6LoWPAN node can join the new network seamlessly. Moreover, this mechanism enables 6LoWPAN mesh network to self-organise itself if needed, e.g. in case of a failure of the router.
en/iot-open/communications_and_communicating_sut/most_widely_used_wireless_communication_protocols.1551946759.txt.gz · Last modified: 2019/03/07 10:19 by pczekalski
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0