comparison of iot data protocol overhead
play

Comparison of IoT Data Protocol Overhead Vasil Sarafov October 13, - PowerPoint PPT Presentation

Chair of Network Architectures and Services Department of Informatics Technical University of Munich Comparison of IoT Data Protocol Overhead Vasil Sarafov October 13, 2017 Chair of Network Architectures and Services Department of Informatics


  1. Chair of Network Architectures and Services Department of Informatics Technical University of Munich Comparison of IoT Data Protocol Overhead Vasil Sarafov October 13, 2017 Chair of Network Architectures and Services Department of Informatics Technical University of Munich

  2. Chair of Network Architectures and Services Department of Informatics Technical University of Munich Overview Introduction The Internet of Things Constrained Communication Application Protocols WebSocket CoAP MQTT Experimental Validation Environment Results Summary References — 2

  3. Introduction — 3

  4. The Internet of Things • Now: The Internet as a resource for humans • Next: The Internet as a resource for things (machines) “The Internet of Things (or IoT) is what we get when we connect Things, that are not operated by humans, to the Internet.” — XMPP Foundation 1 — 4

  5. Constrained Communication • IoT devices are constrained: lack of CPU power, RAM, energy • Networks are constrained: unreliability, low bandwidth (e.g. NBIoT, Sigfox, BLE) • ⇒ Optimal communication mechanism (protocols, algorithms) is desired 2 3 Figure 2: An example for Figure 1: An example of a normal sized SoC a very tiny SoC 2 IC image: https://commons.wikimedia.org/wiki/File:Ic-package-CDIP.svg 3 Tiny IC image: https://commons.wikimedia.org/wiki/File:Ic-package-HEXDIP.svg — 5

  6. Evaluation Model For each protocol, we assume/calculate: • No latency, only throughput ( τ ) • No encryption, cache or proxy optimizations • No IP fragmentation • Pure protocol overhead approximation (L4 upwards): ω ( n ) for n communication slots • Only upstream communication (e.g. storing sensor data) — 6

  7. Evaluation Model For each protocol, we assume/calculate: • No latency, only throughput ( τ ) • No encryption, cache or proxy optimizations • No IP fragmentation • Pure protocol overhead approximation (L4 upwards): ω ( n ) for n communication slots • Only upstream communication (e.g. storing sensor data) Protocol overhead model function: ω ( n ) = bH o + bH c + nh (1) Throughput model function: n � x τ ( n , � x ) = (2) ω ( n ) + n � x + bp ( c 1 + c 2 ) + np — 6

  8. Application Protocols — 7

  9. WebSocket • RFC 6455 (December 2011) - The WebSocket Protocol • Higher abstraction of TCP for Web applications • ⇒ asynchronous communication between client and server (HTTP polling problem) • Fitting in existing HTTP infrastructure • Suitable for real time bidirectional communication in IoT services Figure 3: Layering of the WebSocket protocol Figure 4: WebSocket based client-server communication • ω WebSocket ( n ) ≈ 600 + 54 n — 8

  10. CoAP • RFC 7257 (June 2014) - Constrained Application Protocol • Intended for machine-to-machine (M2M) communication in constrained networks • Brings HTTP’s RESTful experience to IoT (request-response communication pattern) • Extendable to support publish-subscribe and blockwise transport • Thin messaging layer over the request-response life cycle Figure 5: Layering of the Constrained Application Protocol Figure 6: CoAP based RESTful client-server communication • 38 n ≤ ω CoAP ( n ) ≤ 62 n — 9

  11. MQTT • Created in 1999 for satellite connection of oil pipelines • As of 2014 an OASIS and as of 2016 an ISO standard • Publish-subscribe communication pattern in constrained environments • Lightweight and easy to implement on the client side • Three different Quality of Service (QoS) levels Figure 7: Layering of the MQTT protocol Figure 8: MQTT based publish-subscribe communication • 300 + 42 n ≤ ω MQTT ( n ) ≤ 300 + 174 n — 10

  12. Quick Overview • ω WebSocket ( n ) ≈ 600 + 54 n • 38 n ≤ ω CoAP ( n ) ≤ 62 n • 300 + 42 n ≤ ω MQTT ( n ) ≤ 300 + 174 n ⇒ CoAP < MQTT < WebSocket? — 11

  13. Experimental Validation — 12

  14. Environment Figure 9: Hardware environment used to conduct the experiment results 4 5 4 Raspberry Pi image: https://commons.wikimedia.org/wiki/File:Raspberry_Pi_3_Model_B.png 5 Dell Laptop image: https://commons.wikimedia.org/wiki/File:Dell_Studio_1535.png — 13

  15. Results Figure 10: τ ( n , � x ) for � x = 64 0.5 WebSocket MQTT QoS 0 MQTT QoS 2 0.4 CoAP non-con request/response CoAP con request 0.3 τ ( n , 64) (sep) response ω ≈ 600 + 54 n W 0.2 ω ∈ [38 n , 62 n ] C ω ∈ [300 + 42 n , 300 + 174 n ] M 0.1 0 1 5 15 50 100 n - Number of communication slots — 14

  16. Results Figure 11: τ ( n , � x ) for � x = 512 1 WebSocket MQTT QoS 0 MQTT QoS 2 0.8 CoAP non-con request/response CoAP con request 0.6 τ ( n , 512) (sep) response ω ≈ 600 + 54 n W 0.4 ω ∈ [38 n , 62 n ] C ω ∈ [300 + 42 n , 300 + 174 n ] M 0.2 0 1 5 15 50 100 n - Number of communication slots — 15

  17. Summary — 16

  18. Summary • Communication performance is very important for IoT • CoAP < MQTT QoS 0 < WebSocket << MQTT QoS 2 for normal upstream communica- tion • More application data ⇒ higher throughput and better cost payoff • However, protocols with different feature set: REST vs Publish-Subscribe vs Asynchronous Communication — 17

  19. Thank you for your attention! Email: sarafov@cs.tum.edu Source code, paper and talk can be found at: http://home.in.tum.de/~sarafov — 18

  20. References — 19

  21. References [1] MQTT Version 3.1.1 Plus Errata 01, Dec. 2010. [2] C. Bormann and Z. Shelby. Block-Wise Transfers in the Constrained Application Protocol (CoAP). RFC 7959, Aug. 2016. [3] N. Briscoe. Understanding the OSI 7-layer model. PC Network Advisor , 120(2), 2000. [4] P . Charles. Project title. https://github.com/charlespwd/project-title , 2013. [5] G. Combs et al. Wireshark. Web page: http://www. wireshark. org/last modified , pages 12–02, 2007. [6] R. T. Fielding and R. N. Taylor. Architectural styles and the design of network-based software architectures . University of California, Irvine Doctoral dissertation, 2000. [7] K. Hartke. Observing Resources in the Constrained Application Protocol (CoAP). RFC 7641, Sept. 2015. [8] E. B. HiveMQ. MQTT Essentials: Part 1 Introducing MQTT. http://www.hivemq.com/blog/mqtt-essentials-part-1-introducing-mqtt, 2015. — 20

  22. References [9] Information technology – Message Queuing Telemetry Transport (MQTT) v3.1.1. Standard, International Organization for Standardization, Geneva, CH, June 2016. [10] M. Kovatsch, M. Lanter, and Z. Shelby. Californium: Scalable cloud services for the internet of things with coap. In Internet of Things (IOT), 2014 International Conference on the , pages 1–6. IEEE, 2014. [11] T. Maksymyuk, M. Brych, S. Dumych, and H. Al-Zayadi. Comparison of the iot transport protocols performance over narrowband-iot networks. Internet of Things and Ubiquitous Communications , 1(1):25–28, 2017. [12] A. Melnikov and I. Fette. The WebSocket Protocol. RFC 6455, Dec. 2011. [13] G. Montenegro, J. Hui, D. Culler, and N. Kushalnagar. Transmission of IPv6 Packets over IEEE 802.15.4 Networks. RFC 4944, Sept. 2007. [14] E. Rescorla and T. Dierks. The Transport Layer Security (TLS) Protocol Version 1.2. RFC 5246, Aug. 2008. [15] E. Rescorla and N. Modadugu. Datagram Transport Layer Security Version 1.2. RFC 6347, Jan. 2012. [16] P . Saint-Andre. Extensible Messaging and Presence Protocol (XMPP): Core. RFC 6120, Mar. 2011. — 21

  23. References [17] P . Saint-Andre, S. Loreto, S. Salsano, and G. Wilkins. Known Issues and Best Practices for the Use of Long Polling and Streaming in Bidirectional HTTP. RFC 6202, Apr. 2011. [18] Z. Shelby, K. Hartke, and C. Bormann. The Constrained Application Protocol (CoAP). RFC 7252, June 2014. [19] G. Tanganelli, C. Vallati, and E. Mingozzi. Coapthon: Easy development of coap-based iot applications with python. In Internet of Things (WF-IoT), 2015 IEEE 2nd World Forum on , pages 63–68. IEEE, 2015. [20] D. Thangavel, X. Ma, A. Valera, H.-X. Tan, and C. K.-Y. Tan. Performance evaluation of mqtt and coap via a common middleware. In Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP), 2014 IEEE Ninth International Conference on , pages 1–6. IEEE, 2014. — 22

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend