Abstract:
Кваліфікаційна магістерська робота містить 77 сторінок, 4 таблиці, 22 рисунки, 44 бібліографічні посилання.
Об’єктом дослідження є розподілені високонавантажені комп’ютерні мережі. Предметом дослідження є методи балансування навантаження в розподілених комп’ютерних мережах.
Метою роботи є аналіз існуючих методів балансування навантаження та розробка ефективної методики балансування за результатами аналізу проблем існуючих підходів.
В першому розділі здійснено детальний огляд предметної області. Досліджено поняття розподілених комп’ютерних систем та основні проблеми їх використання, а також поняття балансування навантаження в комп’ютерних мережах. Оглянуто основні стратегії балансування навантаження в розподілених комп’ютерних мережах.
У другому розділі проведено аналіз статичного та динамічного підходів до балансування навантаження в комп’ютерних мережах. Досліджено особливості статичного та динамічного балансування навантаження. Здійснено порівняльний аналіз підходів цих підходів за такими напрямками: збільшення веб-трафіку, вибір ресурсів та розподіл завдань, вимірювання навантаження, оптимізація витрат, відмовостійкість, питання сумісності та проблеми QoS.
В третьому розділі запропонована модель балансування навантаження в комп’ютерних мережах. Визначені принципи програмно-конфігурованих мереж (SDN) та досліджена архітектура системи керування трафіку (TE). Описаний евристичний алгоритм балансування та модифікований алгоритм на основі ACS (EDAFT) та здійснена оцінка його працездатності.
Description:
Метою роботи є аналіз існуючих методів балансування навантаження та розробка ефективної методики балансування за результатами аналізу проблем існуючих підходів.
Для досягнення мети роботи було поставлено і вирішено такі завдання:
- визначиено поняття та основні методи балансування навантаження в комп’ютерних мережах;
- визначено основні проблеми існуючих методів балансування навантаження;
- досліджені принципи програмно-конфігурованих мереж;
- досліджені методи балансування навантаження, які базуються на алгоритмі ACS;
- запропонувані та досліджені ефективність модифікації алгоритму ACS для покращення показників якості обробки завдань.
Балансування навантаження в розподілених системах – це процес розподілу робочого навантаження системи між обчислювальними ресурсами, що розділяються. З появою високошвидкісних каналів зв’язку все частіше в якості вузлів розподілених систем використовуються автономні комп’ютерів, об’єднаних високошвидкісними лініями зв’язку. Основною перевагою таких систем є висока продуктивність та доступність при низьких витратах.
Внаслідок цього розподілені обчислення набувають все більшого значення як переважний метод обчислень порівняно з централізованою обробкою даних.
Сьогодні існує безліч підходів до вирішення проблеми балансування навантаження у розподілених системах, зокрема розподілені файлові системи не є винятком. Ці підходи можуть використовуватися для покращення якості обслуговування клієнтів, підвищення продуктивності системи, а також більш раціонального використання ресурсів. Як переваги ефективного балансування навантаження варто відзначити підтримку відмовостійкості та масштабованості системи.
Сучасна система веб-серверів повинна завжди використовувати один або кілька методів ефективного балансування вхідного навантаження для розподілу між доступними їй веб-ресурсами. Ці ресурси з кожним днем стають все дорожчими, тому необхідні ефективні механізми оптимізації витрат, особливо в рамках підтримки такої системи в невеликій організації.
В роботі було виявлено кілька проблем з балансуванням навантаження для ефективного використання веб-ресурсів у розподіленому середовищі та проведено огляд та аналіз цілого ряду сучасних алгоритмів та підходів до вирішення цих проблем. Був проаналізований детальний опис цих підходів, їх сильних та слабких сторін, перспектив застосування та обмежень, які вони накладають.
На основі вищезгаданих проблем балансування навантаження та виявлених недоліків сучасних алгоритмів балансування навантаження, було визначено кілька майбутніх вимірів, які будуть корисними для дослідницької спільноти для досягнення різних цілей: розробка моделі розподілу ресурсів, яка враховує характеристики як ресурсу, так і конкретного завдання для оптимізації різних показників якості обслуговування; розробка моделі збалансованості навантаження з відмовою для частково виконаних завдань через збій ресурсів та побудова політики вибору ресурсів для виконання завдань; аналіз контекстуальних відносин між проблемами CloudIoT та оптимізація їх за допомогою ефективного планування; розробка моделі прогнозування часу виконання для ефективного забезпечення ресурсами, вибору та планування.
Описана в роботі симуляція надає можливість порівняти базовий алгоритм балансування навантаження, а саме Ant Colony System (ACS), із розробленою модифікацією та іншими розглянутими алгоритмами. Після проведеного порівняння було встановлено, що розроблений алгоритм EDAFT виявився більш продуктивним загалом порівняно з іншими алгоритмами. Зокрема, він показав кращі результати щодо часу виконання (в середньому на 35%), пропускної здатності (на 38%), середнього часу виконання (на 26%), середньої затримки і швидкості успішного виконання. Проте, щодо розподілу навантаження ACOwFT продемонстрував кращі показники з невеликою різницею в порівнянні з ACO та EDAFT.
Навіть при високій продуктивності EDAFT є можливість його подальшого вдосконалення, додавши тимчасове припинення, яке уникне призначення завдань на недавно відмовлених ресурсах, поки вони не будуть відновлені після збою. Це може бути особливо ефективним, коли розмір окремого завдання значний, а більшість ресурсів зайняті обробкою великого завдання.