Пояснення програмно-визначеної мережі (SDN) за 5 хвилин або менше

Програмно-визначені мережі (SDN) вважаються однією з ключових технологій, що сприяють розвитку інноваційних мережевих рішень та програмних застосунків.

Збільшення обсягів мультимедійного контенту, зростання використання мобільних пристроїв та підвищений попит на хмарні обчислення зумовили потребу у більш адаптивних та продуктивних мережевих архітектурах.

Ці тенденції призвели до появи непередбачуваних моделей трафіку та стрімкого зростання потреби в певних ресурсах, що ускладнило підтримку необхідної швидкості традиційними мережевими архітектурами.

Виникла нагальна потреба в альтернативному підході, оскільки масштабування існуючої мережевої інфраструктури для обробки цих коливань могло виявитися надто витратним та складним.

SDN було розроблено для розв’язання цієї проблеми шляхом розділення рівня управління від рівня даних. Такий підхід надає можливість мережі автоматично змінювати конфігурацію відповідно до потреб, що постійно змінюються, покращуючи її загальну продуктивність та ефективність. Давайте детальніше розглянемо, що являє собою SDN.

Що таке SDN?

Програмно-визначена мережа (SDN) – це передова мережева концепція, яка дозволяє адміністраторам використовувати програмне забезпечення для визначення та контролю за функціонуванням мережевих пристроїв, замість того, щоб індивідуально налаштовувати кожен з них.

Часто її поєднують з віртуалізацією мережевих функцій (NFV) для підвищення гнучкості та економічності мережі. Додатково, це сприяє централізації мережевого інтелекту, що спрощує процеси виявлення несправностей та моніторингу.

Архітектура SDN

Архітектура SDN зазвичай складається з трьох основних рівнів: рівень застосунків, рівень управління та рівень даних.

Автор зображення: Сотіріос Гудос

  • Рівень застосунків: Це верхній рівень архітектури SDN, відповідальний за визначення бажаної поведінки мережі. Застосунки на цьому рівні можуть включати інструменти управління трафіком, політики безпеки або віртуальні мережі.
  • Рівень управління: Цей рівень відповідає за впровадження політик та правил, встановлених на рівні застосунків. Зазвичай він реалізований у вигляді централізованого контролера, який взаємодіє з мережевими пристроями на рівні даних.
  • Рівень даних або інфраструктури: Цей рівень складається з фізичних мережевих пристроїв, таких як комутатори та маршрутизатори, які утворюють рівень даних. Ці пристрої відповідають за передачу мережевого трафіку.

Інтерфейси північного та південного напрямків забезпечують взаємодію між різними рівнями архітектури. Інтеграція цих трьох рівнів дозволяє мережі функціонувати злагоджено та ефективно.

Як працює SDN?

В мережі SDN рівень управління відокремлений від рівня даних. Рівень управління визначає, як трафік буде передаватися через мережу, а рівень даних відповідає за передачу трафіку згідно з цими рішеннями.

Автор зображення: Джун Ло

Рівень управління реалізується через централізований контролер – програмний застосунок, що функціонує на одному або кількох серверах. Контролер підтримує глобальне представлення мережі та використовує його для прийняття рішень щодо маршрутизації трафіку. Це досягається шляхом взаємодії з елементами рівня даних, відомими як “елементи передачі” або “комутатори”.

Ці комутатори в мережі SDN зазвичай “відкриті”, тобто ними можна керувати та програмувати через зовнішнє програмне забезпечення, а не використовуючи жорстко задані правила маршрутизації. Завдяки цьому контролер може налаштувати комутатори для передачі трафіку необхідним способом.

Для управління комутаторами контролер взаємодіє з ними за допомогою південного API, набору протоколів та інтерфейсів, які дозволяють контролеру надсилати інструкції комутаторам та отримувати від них інформацію про стан. Контролер використовує північні API для зв’язку з програмами та системами вищого рівня, які використовують мережу, наприклад, програми, що працюють у хмарі.

Таким чином, контролер виступає як “мозок” мережі, приймаючи рішення щодо маршрутизації трафіку та повідомляючи ці рішення комутаторам, які діють як “м’язи” мережі, виконуючи інструкції контролера та пересилаючи трафік відповідно.

Особливості SDN

Існує кілька ключових особливостей SDN, які відрізняють її від традиційних мережевих архітектур:

  • Гнучкість: Зміни в мережі можуть бути внесені без фізичної переконфігурації пристроїв, що дозволяє менеджерам мережі швидко реагувати на зміну вимог.
  • Програмованість: поведінка мережі може бути програмно контрольована за допомогою API або інших програмних засобів, що спрощує автоматизацію мережевих задач та інтеграцію мережі з іншими системами.
  • Абстракція: в архітектурі SDN рівень управління відокремлений від рівня даних, який передає трафік. Це дозволяє інженерам легко змінювати роботу мережі, не впливаючи на пристрої передачі трафіку.
  • Віртуалізація: SDN дозволяє віртуалізувати мережеві ресурси, що дає можливість адміністраторам створювати віртуальні мережі за потреби. Це особливо корисно в хмарних середовищах, де потреба в мережевих ресурсах може бути дуже динамічною.

Окрім перелічених особливостей, основною перевагою використання SDN є можливість компаніям імітувати свою фізичну мережеву інфраструктуру в програмному забезпеченні, що знижує загальні капітальні (CAPEX) та операційні (OPEX) витрати.

Типи архітектур SDN

Залежно від типу мережі, можуть знадобитися різні підходи до SDN.

Наприклад, велика корпоративна мережа зі складною топологією та різноманітними пристроями може отримати вигоду від гібридної архітектури SDN, що поєднує елементи як централізованої, так і розподіленої SDN. З іншого боку, централізована SDN може бути ефективною для меншої мережі з простішою топологією.

Важливо ретельно оцінити різні варіанти та обрати архітектуру, що найкраще відповідає потребам організації. Загалом, SDN використовує п’ять різних архітектурних моделей.

#1. Централізована SDN

У централізованій архітектурі SDN усі функції контролю та управління зведені в єдиний центральний контролер, що спрощує визначення та контроль поведінки мережі. Однак, це також створює єдину точку відмови.

#2. Розподілена SDN

В цьому типі архітектури функції управління розподіляються між декількома контролерами, що підвищує надійність, але може ускладнити керування мережею.

#3. Гібридна SDN

Гібридна модель архітектури SDN поєднує в собі централізовані та розподілені елементи. Вона може використовувати централізований контролер для певних функцій та розподілені контролери для інших, залежно від потреб мережі.

#4. Накладання SDN

Архітектури накладання використовують технології віртуальних мереж, такі як VXLAN або NVGRE, для створення логічної мережі поверх існуючої фізичної мережі. Це дозволяє адміністраторам створювати віртуальні мережі, які можна легко змінювати, створювати та видаляти.

#5. Базова SDN

Базова архітектура використовує існуючу мережеву інфраструктуру для підтримки створення віртуальних мереж, які можуть використовувати такі технології, як MPLS або сегментна маршрутизація для створення віртуальних з’єднань між пристроями в мережі.

Навчальні ресурси

Вибір найкращих ресурсів для вивчення концепцій SDN може бути непростим завданням через велику кількість доступних варіантів. Тому може бути корисно спробувати кілька різних ресурсів, щоб визначити, який з них вам підходить найкраще.

#1. SDN Crash Course Practical/Hands-on

Цей курс пропонується на платформі Udemy. Він є чудовим способом отримати практичний досвід програмування мереж на базі SDN та OpenFlow. Курс також охоплює різноманітні поглиблені концепції OpenFlow, такі як таблиця вимірювань (QoS) та групова таблиця (балансувальник навантаження, сніффер).

Ми рекомендуємо цей курс усім, хто хоче дізнатися більше про SDN та пов’язані технології. Для початку навчання на цьому курсі достатньо базових знань у галузі мереж.

#2. SDN: Програмно визначені мережі

У цій книзі в основному розглядаються ключові технології та протоколи SDN, включаючи OpenFlow, OpenStack та ONOS. Наведено детальні приклади використання цих технологій для побудови та керування мережами.

Книга також містить корисні поради щодо налаштування та управління мережами SDN, зокрема щодо усунення несправностей та питань безпеки.

#3. SDN та NFV спрощено

Ця книга містить всебічний огляд SDN та NFV, включаючи їх переваги, технології та застосування. Вона також містить реальні приклади та тематичні дослідження, що ілюструють ключові моменти та показують, як ці технології використовуються в індустрії.

Автори детально пояснили ключові концепції SDN та NFV у доступній та стислій формі, зробивши книгу доступною для читачів з різним рівнем технічного досвіду.

#4. Програмно-визначені мережі

Ця книга пропонує докладний вступ до SDN з точки зору тих, хто впроваджує та використовує цю технологію.

Книга корисна для розуміння архітектури SDN навіть для початківців. У ній також обговорюється, як мережа розробляється з використанням галузевих стандартів для масштабованого середовища.

#5. SDN та NFV: Основи

Це добре написаний та захопливий посібник, який забезпечує надійну основу для розуміння SDN та NFV, та підходить для читачів будь-якого рівня технічної підготовки.

Найкращий спосіб вивчити концепції SDN – це отримати практичний досвід роботи з інструментами та технологіями SDN. Ви можете спробувати налаштувати просте середовище SDN з використанням таких інструментів, як Mininet та контролера, наприклад, RYU, та поекспериментувати з керуванням мережевим трафіком через програмне забезпечення.

Підсумок

SDN є цінним інструментом у сучасному цифровому середовищі, оскільки робить мережі більш гнучкими та ефективними.

У традиційних мережах рівень управління та рівень даних тісно пов’язані, що означає, що зміни в рівні управління вимагають змін і в рівні даних. Це може ускладнити та уповільнити процес зміни мережі, особливо у великих та складних мережах.

Завдяки SDN рівень управління абстраговано від рівня даних, що спрощує програмне керування та оптимізацію поведінки мережі. Це особливо корисно в середовищах, де необхідно швидко та легко вносити зміни в мережу, наприклад, у хмарних обчислювальних середовищах, де робочі навантаження можуть швидко додаватися та видалятися.

Сподіваюся, ця стаття допомогла вам зрозуміти концепції SDN та її архітектуру.

Вам також може бути цікаво дізнатися про найкращі інструменти безагентного моніторингу мережі.