Load Balancing in IoT Applications Using Consistent Hashing

А.I. Shvayka, post-graduate
Pukhov Institute for Problems of Modeling in Energy Engineering
(15, General Naumov St., Kiev, 03164 Ukraine,
(044) 4249165, e-mail: Ця електронна адреса захищена від спам-ботів. Вам потрібно увімкнути JavaScript, щоб побачити її.)


Наведено аналіз методів балансування навантаження в найбільш популярних сценаріях використання і протоколах інтернету речей. Надано дизайн системи балансування навантаження, базованої на використанні консистентного хеширувания, яка підтримує протоколи HTTP, MQTT і CoAP.


load balancing, consistent hashing, IoT, telemetry, HTTP, CoAP, MQTT.


1. Lueth, K.L. (2014), IoT market – forecasts at a glance, IoT Analytics, available at: https://iot-analytics.com/iot-market-forecasts-overview/ (accessed March, 2016).
2. Zhang Lin, Li Xiao-ping and Su Yuan (2010), A content-based dynamic load-balancing algorithm for heterogeneous Web server cluster, ComSIS, Vol. 7, no. 1, Special issue, pp. 153- 162, available at:http://www.doiserbia.nbrs/img/doi/1820-0214/2010/1820-02141001153Z.pdf. (аccessed March, 2016).
3. What is layer 7 load balancing?, NginxDocumentation, available at: https://www.nginx.com/resources/glossary/layer-7-load-balancing/ (accessed: March, 2016).
4. Bormann, C., Ersue, M. and Keranen, A. (2014), Terminology for constrained-node networks, Internet Engineering Task Force (IETF) Documents, available at: https://tools.ietf.org/html/rfc7228#section-3 (accessed March, 2016).
5. Duffy, P. (2013), Beyond MQTT: A Cisco view on IoT protocols, Cisco Blogs, Digital Transformation, available at: http://blogs.cisco.com/digital/beyond-mqtt-a-cisco-view-oniot-protocols (accessed March, 2016).
6. Hartke, K. (2015), Observing resources in the Constrained Application Protocol (CoAP), Internet Engineering Task Force (IETF) Documents, available at: https://tools.ietf.org/html/rfc7641 (accessed March, 2016).
7. Shelby, Z., Hartke, K. and Bormann, C. (2014), The Constrained Application Protocol (CoAP), Internet Engineering Task Force (IETF) Documents, available at: https://tools.ietf.org/html/rfc7252 (accessed March, 2016).
8. Elastic load balancing product details, Amazon Web Services Documentation, available at: https://aws.amazon.com/ru/elasticloadbalancing/details (accessed March, 2016).
9. Anicas, M. (2014), An Introduction to HAProxy and load balancing concepts, DigitalOcean, HAProxy, available at: https://www.digitalocean.com/community/tutorials/an-introductionto-haproxy-and-load-balancing-concepts (accessed March, 2016).
10. Best practices in evaluating elastic load balancing. (2014), Amazon Web Services Documentation, available at: https://aws.amazon.com/articles/1636185810492479 (accessed March, 2016).
11. What is Round-Robin load balancing?, Nginx Documentation, available at: https://www.nginx.com/resources/glossary/round-robin-load-balancing/ (accessed March, 2016).
12. Casalicchio, E. and Colajanni, M. (2001), A client-aware dispatching algorithm for Web clusters providing multiple services, Proceedings of the 10th International Conference on World Wide Web, Hong Kong, May 1-5, 2001, pp. 535-544, available at: http://www.survey.ethz.ch/CDstore/www10/papers/pdf/p434.pdf (accessed March, 2016).
13. Druschel, P. (1999), The LARD strategy, USENIX Board of Directors Election Results. – April, available at: https://www.usenix.org/legacy/publications/library/proceedings/usenix99/full_papers/aron/aron_html/node13.html (accessed March, 2016).
14. Karger, D. et al. (1997), Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web, STOC ‘97 Proceedings of the 29th Annual ACM Symposium on Theory of Computing, pp. 654-663, available at: https://www.usenix.org/legacy/publications/library/proceedings/usenix99/full_papers/aron/aron_html/node13.
html. TODO: NEW LINK (accessed August, 2016).
15. DeCandia, G. et al. (2007), Dynamo: Amazon’s highly available key-value store, SOSP'07 Proceedings of the 21st ACM SIGOPS Symposium on Operating Systems Principles, Vol. 41, Iss. 6, pp. 205-220, available at: ://www.allthingsdistributed.com/files/amazon-dynamososp2007.pdf (accessed March, 2016).
16. Basics of MQTT, Thethings.iO Internet of Things Platform, available at: https://developers.thethings.io/makers-mqtt.html (accessed March, 2016).
17. Security and identity for AWS IoT, Amazon Web Services Documentation, available at:http://docs.aws.amazon.com/iot/latest/developerguide/iot-security-identity.html (accessed
March, 2016).
18. Hunt, P., Konar, M., Paiva, F., Junqueira, P.F. and Reed, B.C. (2010), “ZooKeeper: Wait-free coordination for Internet-scale systems”, USENIXATC’10 Proceedings of the 2010 USENIX Conference on USENIX Annual Technical Conference, pp. 1-14, available at: https://www.usenix.org/legacy/event/usenix10/tech/full_papers/Hunt.pdf (accessed March, 2016).

SHVAYKA Andrei Igorevich, post-graduate of the Pukhov Institute for Problems of Modeling in Energy Engineering. In 2001 A. Shvaika graduated from the National Technical University of Ukraine Kyiv Polytechnic Institute. A field of research: load balancing, distributed systems, high-load systems.

Полный текст: PDF (русский)