Този сайт използва бисквитки (cookies). Ако желаете можете да научите повече тук. Разбрах

Новини Технологии и концепции
бр. 6, 2014

SDN - разделяй и владей

Софтуерно дефинираните мрежи (Software-defined Networking, SDN) са направление в развитието на мрежовите технологии, което напоследък се обсъжда активно в специализираните издания. Това е архитектура, в която управлението на мрежата е отделено от механизма за препращане на пакетите и се програмира непосредствено. Какви са предпоставките за появата на SDN и какви предимства обещава реализацията на тази концепция?

от , 20 юни 2014 0 3546 прочитания,

Няколко тенденции, които стават все по-ясно изразени през последните години, изискват преразглеждане на съществуващите мрежови архитектури – достатъчно е да споменем разпространението на мобилните устройства и мобилното съдържание, виртуализацията на сървърите и растящата популярност на облачните услуги.


Към момента традиционните мрежи са йерархични, изградени на няколко нива Ethernet комутатори, образуващи дървовидна топология. Такова изграждане на мрежата има смисъл, когато доминиращият изчислителен модел е клиент-сървър. Но днес, такава статична архитектура не е най-подходящата за динамичните изчисления и потребности на системите за съхранение на данни в съвременните корпоративни дейта центрове. Нека се спрем на няколко от основните тенденции в съвременния изчислителен модел, заради които е необходима нова парадигма в изграждането на мрежите.

Катализаторите на промяната

Преди всичко, тябва да отчитаме промяната в картината на трафика, особено в корпоративните центрове за данни. За разлика от епохата на приложенията “клиент-сървър”, трафикът от тип „север/юг“ (т.е. от клиента към сървъра) е все по-малък, а все повече потоци от него са от тип „изток/запад“ - т.е. от виртуализирани десктоп сървъри към сървъри за приложения и бази данни.Потребителите също променят картината на мрежовия трафик, изисквайки достъп до корпоративните данни от всяко устройство, по всяко време и от всяко място. Накрая, но не на последно място, много компании избират изчислителен модел, включващ частни и публични облаци, което увеличава трафика в глобалните мрежи.

Като втора важна тенденция анализаторите отбелязват все по-активното използване на персонални устройства (смартфони, таблети и ноутбуци) за достъп до корпоративната мрежа. От ИТ подразделенията се очаква да разрешат достъпа от тези устройства до мрежата с отчитане на всичките им особености и в същото време да осигурят безопасност за корпоративните данни, спазване на нормативните изисквания и защита на интелектуалната собственост на компанията.

Все по-широкото използване на облачни услуги също е една от основните тенденции. Компаниите възприемат доста благосклонно, както публичните, така и частните облачни услуги. Бизнес подразделенията искат да имат повече свобода при достъпа до приложения, инфраструктура и други ИТ ресурси. Осигуряването на възможност за самообслужване, независимо дали в частни или публични облаци, изисква еластично мащабиране на изчисленията и мрежовите ресурси, като в идеалния случай това се постига с единен подход и пакет от инструменти.

Накрая, “големите данни”, изискват освен много други неща и висока пропускателна способност. Обработката на огромни обеми от информация изисква масов паралелизъм на множество сървъри, всеки от които трябва да бъде свързан с всички останали. Всичко това поражда необходимостта от допълнителен капацитет на мрежите в центровете за обработка на данни.

Ограниченията на съществуващите технологии

Потребностите, породени от изброените тенденции, на практика не могат да бъдат удовлетворени в рамките на традиционната мрежова архитектура. В условията на съкращаване на финансирането, ИТ подразделенията се опитват да получат максимума от своите мрежи, използвайки инструменти за управление на ниво устройства и администриране в ръчен режим.

Въпреки всичко, заради редица ограничения, присъщи на използваните архитектури, проблемите не могат да бъдат решени с традиционни методи. Съществуващите мрежови технологии включват множество протоколи, разработени за надеждна връзка на хостове на различни разстояния, при различни пропускателни способности на каналите и при различни топологии. Някои от разработените през последните няколко десетилетия мрежови протоколи, са създадени специално с цел да осигурят по-висока производителност, надеждност и безопасност. Протоколите се определят изолирано във всеки отделен случай и решават специфични задачи. От това произтича едно от основните ограничения на съществуващите мрежови технологии – сложността. Например, за да добавят или отстранят някакво устройство, мрежовите администратори трябва да променят настройки в множество комутатори, маршрутизатори, защитни стени, портали за автентификация и т.н., да адаптират списъци за достъп (ACL), настройки на виртуални локални мрежи и други базирани на протоколи механизми, като използват за това инструменти на ниво устройства.

Под внимание трябва да бъдат взети също така, топологията на мрежата, производителите и моделите на комутаторите, версиите на софтуера. Цялата тази сложност води до относителна статичност на мрежата, тъй като администраторите се стремят да минимизират рисковете, свързани с въвеждане на нови услуги.

Статичната природа на мрежите е напълно противоположна на днешната сървърна среда, в която виртуализацията увеличава броя на хостовете, за които е необходима свързаност и променя представите за физическото разположение на хостовете.

Преди ерата на виртуализацията приложенията се разполагаха на отделни сървъри и обменяха данни с избрани клиенти. Днес приложенията са разпределени по много виртуални машини (VM), които обменят данни помежду си. Виртуалните машини мигрират за да се осигури оптимизация и балансиране на натоварването на сървърите, при което се създават потоци от данни между крайни физически точки. Миграцията на VM предизвиква редица проблеми в традиционните мрежи - от такива, които са свързани със схемите за адресация до такива, свързани с основни представи за сегментация и дизайн, базиран на маршрутизация.

Много компании използват общи мрежи за предаване на глас, данни и видео. Макар че, съществуващите мрежи могат да осигурят диференцирано ниво на качество на услугата (QoS) за всеки от различните потоци трафик, заделянето на ресурси в много случаи изисква ръчно управление. Администраторите трябва да конфигурират устройствата на всеки производител отделно и да настройват параметри за пропускателна способност и QoS за сесии и приложения, тъй като статичната природа на мрежата не допуска динамична адаптация при промяна на трафика, приложенията и потребителските заявки.

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

Всичко казано дотук представя само част от несъответствията между потребностите на потребителите и възможностите на съществуващите мрежи, които доведоха индустрията до концепцията за програмно управляваните мрежи (Software-defined Networking, SDN).

SDN: основни понятия

SDN е мрежова архитектура, в която управлението на мрежата е отделено от механизма за препращане на пакетите и се програмира непосредствено. По този начин управлението, което преди бе тясно свързано с отделните мрежови устройства, сега се пренася в достъпни изчислителни устройства, което позволява приложенията и услугите да се абстрахират от базовата инфраструктура и да считат мрежата за логическа или виртуална същност.


Фигура 1: Архитектурата SDN

Логическата структура на архитектурата SDN е представена на фигура 1. Както се вижда, тя се състои от 3 основни нива: инфраструктура, управление и приложения. Така целият “интелект” на мрежата се съсредоточава в програмируеми SDN контролери, които осигуряват глобалното и наблюдение.

SDN контролерите на практика променят модела на програмиране на мрежата – от разпределен (мрежовите устройства обменят данни по между си за да определят маршрута за придвижване на пакетите), моделът става централизиран.

Контролерите поддържат многобройни драйвери, които управляват поведението на подчинените им логически мрежови елементи, така че мрежата да предоставя желаните услуги. В известен смисъл контролерът се явява едно междинно ниво, което се абстрахира от “по-нископоставените” физически компоненти на мрежата като комутатори, маршрутизатори, защитни стени и средства за балансиране на натоварването.

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

Но това което е най-важно, благодарение на възможността за програмиране, за операторите на мрежи и администраторите отпада необходимостта да пишат “ръчно” десетки хиляди редове конфигурационни файлове, разпръснати сред хиляди устройства. В допълнение, използвайки централизираният “интелект” на SDN контролерите, специалистите могат да променят поведението на мрежите в реално време и да разгръщат нови приложения и услуги за часове или дни, а не за седмици и месеци, каквато е ситуацията все още. Благодарение на централизацията администраторите имат възможност за гъвкаво конфигуриране, управляемост, безопасност и оптимизация на мрежовите ресурси с помощта на динамични SDN програми. Освен това, те могат да пишат тези програми сами, а не да чакат производителите да реализират една или друга възможност.

Освен абстрактно представяне на мрежата, архитектурите SDN поддържат набор от приложни интерфейси (API), които дават възможност за реализацията на общи мрежови услуги, управление на пропускателната способност, регулиране на трафика, QoS, оптимизация на процесорното натоварване, различни форми на управление на политики и потребителски настройки за адекватен отговор на изискванията на бизнеса.


Фигура 2: Пример за команди на OpenFlow в таблица на преходите

OpenFlow

Протоколът OpenFlow е разработен в Станфордския университет. Първата му версия е публикувана в края на 2009 г. През март 2011 г. е създадена организацията Open Network Foundation (ONF) и правата свързани с интелектуалната собственост на протокола са предадени на нея.

OpenFlow се превърна в първия стандартен комуникационен интерфейс между нивата за управление и за транспортиране на пакетите в SDN архитектурата. С негова помощ се осъществява директен достъп до нивото за препращане на данни и управление на устройства като комутатори и маршрутизатори, физически или виртуални.

Именно липсата на отворен интерфейс към нивото за препращане на данни е това, което определя днешните мрежови устройства като монолитни и затворени, подобни на мейнфрейми. Протокол като OpenFlow е необходим, за да предаде управлението на мрежата от комутаторите към централизиран софтуер за управление.

Както показва фигура 2, OpenFlow определя основни примитиви, които могат да се ползват от външен софтуер за програмиране на нивото за препращане на данни по мрежовите устройства по същия начин, както наборът команди за централния процесор програмира една компютърна система.

OpenFlow се реализира в двата края на интерфейса между устройствата на мрежовата инфраструктура и софтуера за управление на SDN. Протоколът използва концепция за потоци при идентификация на трафика, която е базирана на предварително определени правила за съвпадение, които могат да бъдат статично или динамично програмирани софтуера за управление на SDN.

Тъй като OpenFlow позволява мрежата да се програмира “на основата на потоци”, базираната на този протокол архитектура SDN осигурява доста прецизно управление, което позволява мрежите да отговарят на изискванията на приложенията, потребителите и сесиите в режим на реално време. Съществуващата IP маршрутизация не осигурява такова ниво на управление, тъй като всички потоци между две крайни точки, независимо какви са изискванията към тях, трябва да следват един и същи път през мрежата.

OpenFlow е ключов компонент за SDN и към момента е единственият стандартизиран протокол, с помощта на който може да се изпълнява директно управление на мрежовите устройства на ниво предаване на пакети. SDN, базирани на OpenFlow, могат да бъдат разгърнати на базата на съществуващи мрежи – както физически, така и виртуални. Мрежовите устройства могат да поддържат както базирано на OpenFlow предаване на пакети, така и традиционно, което позволява на корпорациите и доставчиците поетапно да въвеждат SDN технологии дори ако тяхното мрежово оборудване е от много различни производители.

В заключение

Накрая, нека обобщим предимствата, които предоставят SDN, базирани на протокола OpenFlow. Преди всичко, те са в състояние да решат проблеми, свързани с недостатъчна пропускателна способност, с динамичния характер на съвременните приложения, с адаптацията на мрежата към постоянно променящите се изисквания на бизнеса. Също така те значително опростяват управлението. SDN дават възможност да се разработват инструменти за автоматизация на много задачи по управлението на мрежата, които сега се изпълняват ръчно.

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

С помощта на виртуализация на мрежовата инфраструктура и абстрахиране от индивидуалните мрежови устройства SDN и OpenFlow дават възможност на ИТ екипа да адаптира поведението на мрежата и да въвежда нови услуги и възможности буквално за няколко часа. Изчезва необходимостта от конфигуриране на индивидуалните мрежови устройства във всяка крайна точка при добавяне или отстраняване на приложения, промяна на политики и т.н., което намалява вероятността за спиране на работата на мрежата, заради несъгласуваност на конфигурации или политики.

Накратко, по всичко личи, че бъдещите мрежи ще бъдат управлявани от софтуер, а това ще ускори внедряването на иновации в тях и в бизнеса.

КОМЕНТАРИ ОТ  

Полезни страници
    За нас | Аудитория | Реклама | Контакти | Общи условия | Декларация за поверителност | Политика за бисквитки |
    Действителни собственици на настоящото издание са Иво Георгиев Прокопиев и Теодор Иванов Захов