<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">izvestswsu</journal-id><journal-title-group><journal-title xml:lang="ru">Известия Юго-Западного государственного университета</journal-title><trans-title-group xml:lang="en"><trans-title>Proceedings of the Southwest State University</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">2223-1560</issn><issn pub-type="epub">2686-6757</issn><publisher><publisher-name>ЮЗГУ</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.21869/22231560-2022-26-3-98-111</article-id><article-id custom-type="elpub" pub-id-type="custom">izvestswsu-1039</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Информатика, вычислительная техника и управление</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>Computer science, computer engineering and IT managment</subject></subj-group></article-categories><title-group><article-title>Балансировка нагрузки данных в распределенной сети через прокси-сервер Nginx</article-title><trans-title-group xml:lang="en"><trans-title>Load Balancer of Data in a Distributed Network via Nginx Proxy Server</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0001-7966-7833</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Никишин</surname><given-names>К. И.</given-names></name><name name-style="western" xml:lang="en"><surname>Nikishin</surname><given-names>K. I.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Никишин Кирилл Игоревич, кандидат  технических наук, старший преподаватель  кафедры «Вычислительная техника»</p><p>ул. Красная, д. 40, г. Пенза 440026</p></bio><bio xml:lang="en"><p>Kirill I. Nikishin Cand. of Sci. (Engineering), Senior Lecturer of Computer Engineering Departament</p><p>40 Krasnaya str., Penza 440026</p></bio><email xlink:type="simple">nkipnz@mail.ru</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Пензенский государственный университет</institution></aff><aff xml:lang="en"><institution>Penza State University</institution></aff></aff-alternatives><pub-date pub-type="collection"><year>2022</year></pub-date><pub-date pub-type="epub"><day>21</day><month>02</month><year>2023</year></pub-date><volume>26</volume><issue>3</issue><fpage>98</fpage><lpage>111</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Никишин К.И., 2023</copyright-statement><copyright-year>2023</copyright-year><copyright-holder xml:lang="ru">Никишин К.И.</copyright-holder><copyright-holder xml:lang="en">Nikishin K.I.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://izvestswsu.elpub.ru/jour/article/view/1039">https://izvestswsu.elpub.ru/jour/article/view/1039</self-uri><abstract><sec><title>Цель исследования</title><p>Цель исследования: исследование программного способа балансировки данных в распределенной сети через прокси-сервер Nginx.</p></sec><sec><title>Методы</title><p>Методы. Балансировка нагрузки данных в компьютерной сети является важным параметром сети. Из-за балансировки нагрузки в сети может уменьшаться или увеличиваться задержка передачи, разброс от среднего значения джиттера. Таким образом, балансировка нагрузки в сети влияет на временные характеристики и пропускную способность сети. Управление и оптимизацию балансировки нагрузки можно осуществлять как программным, так и аппаратным способами. В статье уделяется внимание балансировке нагрузки данных на прикладном уровне приложений. Кратко рассмотрена аппаратная балансировка нагрузки, которая решается в рамках непосредственно сетевого оборудования, к примеру, в коммутаторах. Это решается диспетчером управления очередями в коммутаторе Ethernet, который управляет полосой пропускания и очередями. Описаны циклические алгоритмы, а также алгоритм с временной селекцией кадров в диспетчерах коммутатора, которые реализуют эффективную аппаратную балансировку нагрузки. Рассмот-рена программная балансировка нагрузки данных в сети. В  качестве программной балансировки нагрузки использовался веб-сервер и обратный прокси-сервер Nginx, на сервере было запущено 3 Docker контейнера, сделанного на основе Asp.net приложения, запущенных на разных окружениях.</p></sec><sec><title>Результаты</title><p>Результаты. Произведена настройка, конфигурация сети и использовался циклический алгоритм балансировки нагрузки RR в сервере Nginx. Было проведено исследование сети с разным количеством окружений в сети, веб-серверов, запросов данных. Циклический алгоритм балансировки нагрузки в Nginx является более эффективным по сравнению со случайным алгоритмом, это было показано в ходе экспериментов.</p></sec><sec><title>Заключение</title><p>Заключение. Были рассмотрены и исследованы аппаратные и программные алгоритмы балансировки нагрузки в распределенной сети. Циклические алгоритмы балансировки данных позволили повысить пропускную способность сети, ее эффективность и быстродействие.</p></sec></abstract><trans-abstract xml:lang="en"><sec><title>Purpose of research</title><p>Purpose of research. Is investigation of a software method for balancing data in a distributed network via an Nginx proxy server.</p></sec><sec><title>Methods</title><p>Methods. In a computer network load balancer of data is an important network parameter. Due to load balancer in the network, the transmission delay may decrease or increase, the spread from the average jitter value. Thus, load balancer in the network affects the time characteristics and network bandwidth. Load balancer can be managed and optimized in both software and hardware ways. The article focuses on load balancer of data at the application level of applications. Hardware load balancer, which is solved within the framework of network equipment itself, for example, in switches, is briefly considered. This is handled by the queue manager in the Ethernet switch, which manages the bandwidth and queues. Cyclic algorithms are described, as well as an algorithm with time selection of frames in dispatcher of switch that implement effective hardware load balancer. Software load balancer of data in the network is considered. A web server and an Nginx reverse proxy server were used as software load balancer, 3 Docker containers based on Asp.net applications running on different environments.</p></sec><sec><title>Results</title><p>Results. The network was configured and the cyclic load balancer algorithm was used in the Nginx server. A research of a network with a different number of environments in the network, web servers, data requests was conducted. The cyclic load balancer of data in Nginx is more efficient than the random algorithm, this has been shown during experiments.</p></sec><sec><title>Conclusion</title><p>Conclusion. Hardware and software load balancer algorithms in a distributed network were considered and investigated. Cyclic load balancer of data has made it possible to increase the network bandwidth, its efficiency and performance.</p></sec></trans-abstract><kwd-group xml:lang="ru"><kwd>балансировка нагрузки</kwd><kwd>распределенные сети</kwd><kwd>Ethernet</kwd><kwd>задержка передачи</kwd><kwd>циклические алгоритмы балансировки</kwd><kwd>прокси-сервер Nginx</kwd><kwd>Docker</kwd><kwd>сети Петри</kwd><kwd>CPN Tools</kwd></kwd-group><kwd-group xml:lang="en"><kwd>load balancer</kwd><kwd>distributed networks</kwd><kwd>Ethernet</kwd><kwd>transmission delay</kwd><kwd>cyclic balancing algorithms</kwd><kwd>Nginx proxy server</kwd><kwd>Docker</kwd><kwd>Petri Nets</kwd><kwd>CPN Tools</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы. 4-е изд. СПб.: Питер, 2010. 943 с.</mixed-citation><mixed-citation xml:lang="en">Olifer V. G., Olifer N. A. Komp'yuternye seti. Printsipy, tekhnologii, protokoly [Computer networks. Principles, technologies, protocols]. St. Petersburg, 2010. 943 p.</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Описание стандарта IEEE 802.1q. URL: https://ru.wikipedia.org/wiki/IEEE_802.1Q (дата обращения 18.06.2022).</mixed-citation><mixed-citation xml:lang="en">Opisanie standarta IEEE 802.1q [Description of the IEEE 802.1q standard]. Available at: https://ru.wikipedia.org/wiki/IEEE_802.1Q (accessed 01.06.2022).</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Никишин К. И. Механизм управления трафиком реального времени в коммутаторе Ethernet // Вестник компьютерных и информационных технологий. 2015. № 10. С. 32–37.</mixed-citation><mixed-citation xml:lang="en">Nikishin K. I. Mekhanizm upravleniya trafikom real'nogo vremeni v kommutatore Ethernet [The mechanism of management real-time traffic in the switch Ethernet].  Vestnik komp'yuternykh i informatsionnykh tekhnologii = Herald of Computer and Information Technologies, 2015, no. 10, pp. 32–37.</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">McKeown N., Anderson T., Balakrishnan H. et al. Openflow: enabling innovation in campus networks // ACM SIGCOMM Computer Communication Review, 2008, vol. 38, no. 2, pp. 69–74.</mixed-citation><mixed-citation xml:lang="en">McKeown N., Anderson T., Balakrishnan H. et al. Openflow: enabling innovation in campus networks. ACM SIGCOMM Computer Communication Review, 2008, vol. 38,  no. 2, pp. 69–74.</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Kobayashi M., Seetharaman S., Parulkar G., Appenzeller G., Little J., Van Reijendam J., McKeown N. Maturing of OpenFlow and Software-Defined Networking Through Deployments // Computer Networks. 2014. Vol. 61. P. 151–175.</mixed-citation><mixed-citation xml:lang="en">Kobayashi M., Seetharaman S., Parulkar G., Appenzeller G., Little J., Van Reijendam J., McKeown N. Maturing of OpenFlow and Software-Defined Networking Through Deployments. Computer Networks, 2014, vol. 61, pp. 151–175.</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Корячко В. П., Перепелкин Д. А. Программно-конфигурируемые сети. М.: Горячая линия – Телеком, 2020. 288 с.</mixed-citation><mixed-citation xml:lang="en">Koryachko V. P., Perepelkin D. A. Programmno-konfiguriruemye seti [Software defined networks]. Moscow, Goryachaya liniya – Telekom Publ., 2020, 288 p.</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Shalimov A. et al. Advanced study of SDN/OpenFlow controllers // Proceedings of the 9th Central &amp; Eastern European Software Engineering Conference in Russia. ACM, 2013.</mixed-citation><mixed-citation xml:lang="en">Shalimov A. et al. Advanced study of SDN/OpenFlow controllers. Proceedings of the 9th Central &amp; Eastern European Software Engineering Conference in Russia. ACM, 2013.</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Перепелкин Д. А., Бышов В. С. Балансировка потоков данных в программноконфигурируемых сетях с обеспечением качества обслуживания сетевых сервисов // Радиотехника. 2016. № 11. C. 111–119.</mixed-citation><mixed-citation xml:lang="en">Perepelkin D. A., Byshov V. S. Balansirovka potokov dannykh v programmnokonfiguriruemykh setyakh s obespecheniem kachestva obsluzhivaniya setevykh servisov [Balancing data flows in software defined networks with ensuring the quality of service of network services]. Radiotekhnika = Radio Engineering, 2016, no. 11, pp. 111-119.</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Никульчев Е. В., Паяин С. В., Плужник Е. В. Динамическое управление трафиком программно-конфигурируемых сетей в облачной инфраструктуре // Вестник Рязанского государственного радиотехнического университета. 2013. № 3 (45). С. 54–57.</mixed-citation><mixed-citation xml:lang="en">Nikulchev E. V., Payin S. V., Pluzhnik E. V. Dinamicheskoe upravlenie trafikom programmno-konfiguriruemykh setei v oblachnoi infrastrukture [Dynamic traffic management of software defined networks in cloud infrastructure]. Vestnik Ryazanskogo gosudarstvennogo radiotekhnicheskogo universiteta = Vestnik of Ryazan State Radio Engineering University, 2013, no. 3 (45), pp. 54-57.</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Kopetz H. Real-time systems design principles for distributed embedded applications. New York: Springer, 2011. 396 р.</mixed-citation><mixed-citation xml:lang="en">Kopetz H. Real-time systems design principles for distributed embedded applications. New York: Springer, 2011, 396 р.</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">The Time-Triggered Ethernet (TTE) design / H. Kopetz, A. Ademaj, P. Grillinger, K. Steinhammer // International Symposium on Object-oriented Real-time Distributed Computing. 2005. P. 22–33.</mixed-citation><mixed-citation xml:lang="en">Kopetz H., Ademaj A., Grillinger P., Steinhammer K. The Time-Triggered Ethernet (TTE) design. International Symposium on Object-oriented Real-time Distributed Computing, 2005, pp. 22–33.</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Никишин К. И., Коннов Н. Н., Пащенко Д. В. Моделирование систем на базе технологии Time-Triggered Ethernet // Информационные технологии и математическое моделирование: материалы XV Междунар. конф. имени А. Ф. Терпугова. Томск: Издво Томск. ун-та, 2016. Ч. 2. C. 117–122.</mixed-citation><mixed-citation xml:lang="en">Nikishin K. I., Konov N. N., Pashchenko D. V. [Modelling of systems using TimeTriggered Ethernet].  Informatsionnye tekhnologii i matematicheskoe modelirovanie: materialy XV Mezhdunar. konf. imeni A. F. Terpugova [Information technologies and mathematical modeling. Materials of the XV International Conf. named after A. F. Terpugov]. Tomsk, Tomsk University Publ., 2016, pt 2, pp. 117-122 (In Russ.).</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Перепелкин Д. А. Концептуальный подход динамического формирования трафика программно-конфигурируемых телекоммуникационных сетей с балансировкой нагрузки // Информационные технологии. 2015. T. 21. № 8. C. 602–610.</mixed-citation><mixed-citation xml:lang="en">Perepelkin D. A. Kontseptual'nyi podkhod dinamicheskogo formirovaniya trafika programmno-konfiguriruemykh telekommunikatsionnykh setei s balansirovkoi nagruzki [Conceptual approach of dynamic traffic generation of software defined telecommunication networks with load balancing]. Informatsionnye tekhnologii = Information Technologies, 2015, vol. 21, no. 8, pp. 602-610.</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">Механов В.Б., Кизилов, Е.А. Моделирование цветными сетями Петри обслуживания очередей алгоритмом WRR // Труды IX Международной научно-технической конференции «Новые информационные технологии и системы». Пенза: Изд-во ПГУ,</mixed-citation><mixed-citation xml:lang="en">Mekhanov V. B., Kizilov E. A. [Modeling of queue dispatcher by the WRR algorithm with colored Petri nets]. Trudy IX Mezhdunarodnoi nauchno-tekhnicheskoi konferentsii "Novye informatsionnye tekhnologii i sistemy" [Proceedings of the IX International Scientific and Technical Conference "New Information technologies and Systems"], Penza, 2010, pp. 67-73 (In Russ.)</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Ч. 1. С. 67 – 73.</mixed-citation><mixed-citation xml:lang="en">Artemov I. V., Konnov M. N., Nikishin K. I. [Analysis of the effectiveness of an adaptive algorithm for forming a virtual timeslot in a network switch]. Trudy Mezhdunarodnogo simpoziuma «Nadezhnost' i kachestvo»  [Proceedings of the International Symposium "Reliability and quality"]. Penza, 2020, vol.2, pp. 298-302 (In Russ.).</mixed-citation></citation-alternatives></ref><ref id="cit16"><label>16</label><citation-alternatives><mixed-citation xml:lang="ru">Артемов И. В., Коннов М. Н., Никишин К. И. Анализ эффективности адаптивного алгоритма формирования виртуального таймслота в сетевом коммутаторе // Труды Международного симпозиума «Надежность и качество». Пенза: Изд-во ПГУ, 2020. Т.2. С. 298–302.</mixed-citation><mixed-citation xml:lang="en">Kizilov E., Konnov N., Nikishin K., Pashchenko D., Trokoz D. Scheduling queues in the Ethernet switch, considering the waiting time of frames. MATEC Web of Conferences, 2016, vol. 44, pp. 01011-p.1–01011-p. 5.</mixed-citation></citation-alternatives></ref><ref id="cit17"><label>17</label><citation-alternatives><mixed-citation xml:lang="ru">Scheduling queues in the Ethernet switch, considering the waiting time of frames / E. Kizilov, N. Konnov, K. Nikishin, D. Pashchenko, D. Trokoz // MATEC Web of Conferences. 2016. Vol. 44. P. 01011-p.1–01011-p. 5.</mixed-citation><mixed-citation xml:lang="en">Kizilov E. A., Konnov N. N., Mekhanov V. B., Nikishin K. I. [Accounting of the delivery time for control of queue dispatcher in the switch]. Telematika-2014»: tr. XKhI Vseros. nauch.-metod. konf. ["Telematics-2014"Proceedings of the XХI Scientific and Technical Conference]. St. Petersburg : St. Petersburg State University ITMO Publ., 2014, pp. 134-136. (In Russ.)</mixed-citation></citation-alternatives></ref><ref id="cit18"><label>18</label><citation-alternatives><mixed-citation xml:lang="ru">Учет времени поступления кадров для управления очередями в коммутаторе / Е. А. Кизилов, Н. Н. Коннов, В. Б. Механов, К. И. Никишин // Телематика-2014: тр. XХI Всерос. науч.-метод. конф. СПб. : СПбГУ ИТМО, 2014. С. 134–136.</mixed-citation><mixed-citation xml:lang="en">Jensen K. An Introduction to the Practical Use of Coloured Petri Nets. Lectures on Petri Nets II: Applications. Berlin: Springer, 1998, pp. 237-292.</mixed-citation></citation-alternatives></ref><ref id="cit19"><label>19</label><citation-alternatives><mixed-citation xml:lang="ru">Jensen K. An Introduction to the Practical Use of Coloured Petri Nets // Lectures on Petri Nets II: Applications. Berlin: Springer, 1998. P. 237-292.</mixed-citation><mixed-citation xml:lang="en">Jensen K., Kristensen L.M. Coloured Petri Nets. Modelling and Validation of Concurrent Systems. Berlin: Springer, 2009, 384 р.</mixed-citation></citation-alternatives></ref><ref id="cit20"><label>20</label><citation-alternatives><mixed-citation xml:lang="ru">Jensen K., Kristensen L.M. Coloured Petri Nets. Modelling and Validation of Con-current Systems. Berlin: Springer, 2009. 384 р.</mixed-citation><mixed-citation xml:lang="en">Nikishin K., Konnov N. Schedule Time-Triggered Ethernet. International Conference on Engineering Management of Communication and Technology, EMCTECH 2020. DOI: 10.1109/EMCTECH49634.2020.9261540.</mixed-citation></citation-alternatives></ref><ref id="cit21"><label>21</label><citation-alternatives><mixed-citation xml:lang="ru">Nikishin K., Konnov N. Schedule Time-Triggered Ethernet // International Conference on Engineering Management of Communication and Technology, EMCTECH 2020. DOI: 10.1109/EMCTECH49634.2020.9261540.</mixed-citation><mixed-citation xml:lang="en">Nikishin K. I., Konnov N. N. Generator trafika Ethernet na osnove tsvetnykh setei Petri [The traffic generator of switch Ethernet using colored Petri nets]. Modeli, sistemy, seti v ekonomike, tekhnike, prirode i obshchestve = Models, Systems, Networks in Economics, Technology, Nature and Society, 2016, no. 1 (17), pp. 299–307.</mixed-citation></citation-alternatives></ref><ref id="cit22"><label>22</label><citation-alternatives><mixed-citation xml:lang="ru">Никишин К. И., Коннов Н. Н. Генератор трафика Ethernet на основе цветных сетей Петри // Модели, системы, сети в экономике, технике, природе и обществе. 2016.</mixed-citation><mixed-citation xml:lang="en">Никишин К. И., Коннов Н. Н. Генератор трафика Ethernet на основе цветных сетей Петри // Модели, системы, сети в экономике, технике, природе и обществе. 2016.</mixed-citation></citation-alternatives></ref><ref id="cit23"><label>23</label><citation-alternatives><mixed-citation xml:lang="ru">№ 1 (17). C. 299–307.</mixed-citation><mixed-citation xml:lang="en">№ 1 (17). C. 299–307.</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
