Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы программно-конфигурируемых сетей. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
передача пакетов продолжится лишь до тех пор, пока не заполнится его буфер,
а затем пакеты просто будут отброшены.
При исследовании компьютерных сетей также используют общую пропускную способность сети, определяемую средним объемом информации (количеством пакетов), переданной между всеми узлами сети в единицу времени. Эту общую пропускную способность сети и принимают за ее производительность. По аналогии, в теории вычислительных систем, под производительностью вычислительной системы понимают среднее количество
заданий, решаемых системой в единицу времени.
Задержка передачи пакетов определяется как интервал времени между
моментом поступления пакета на вход какого-либо сетевого ресурса или
сегмента сети и моментом появления его на выходе этого ресурса или сегмента сети. Этот показатель производительности в теории массового обслуживания равносилен времени пребывания требования в системе, равное времени
ожидания требования в очереди плюс время его обслуживания.
Максимальная задержка передачи и вариация задержки являются также качественными показателями сети. Обычно не все типы трафика чувствительны к задержкам передачи. Например, в локальных вычислительных сетях, задержки не превышают сотен миллисекунд. Такие задержки передачи пакетов, порождаемые файловой службой, службой электронной почты или службой печати, мало влияют на качество этих служб с точки зрения пользователя сети. Иное дело наблюдается при передаче голосовых и видеоданных в мультисервисных сетях, когда задержки передачи пакетов могут приводить к значительному снижению качества предоставляемой пользователю
информации [25].
Для распределенного вычислительного ЦОД помимо характеристик производительности, отражающих работу сети в целом, большое значение имеют показатели, учитывающие обработку вычислительных задач, а также
функционирование СХД.
К числу характеристик производительности, принимающих во внимание
вычислительные задачи, можно отнести:
а) время выполнения эталонного набора задач;
б) среднюю загруженность вычислительных ядер при выполнении эталонного набора задач.
Время выполнения эталонного набора задач определяется как разность
между временем завершения исполнения последней задачи и временем запуска
первой задачи из набора. Данный интегральный целевой показатель позволяет количественно оценить прикладную составляющую эффективности работы распределенного вычислительного ЦОД на сформированном наборе пользовательских вычислительных задач. Эталонный набор должен включать параллельные прикладные задачи с высокой интенсивностью обмена трафиком, отражающие специфику использования современных вычислительных ЦОД. К числу последних можно отнести кодирование видео и аудио данных, компьютерное моделирование, синтез белковых структур, цифровую обработку
сигналов, виртуальные испытательные стенды.
21
Показатель средней загруженности вычислительных ядер при выполнении эталонного набора задач характеризует процент использования (загрузки) вычислительных ядер реальных или виртуальных узлов ЦОД.
Существуют вариации в вычислении данного показателя – можно учитывать
загрузку абсолютно всех вычислительных ядер системы на протяжении всего расчетного времени или исключать из рассмотрения загрузку свободных вычислительных ядер в те моменты времени, когда очередь задач вычислительной системы пуста. Использование второго варианта позволяет снизить влияние особенностей набора задач, в том числе учесть время простоя ресурсов вычислительной системы в начале и в конце выполнения задач
эталонного набора.
К числу показателей, характеризующих производительность работы СХД распределенного вычислительного ЦОД, можно отнести установившуюся скорость чтения данных и установившуюся скорость записи при выполнении эталонного набора задач. Данные характеристики вычисляются следующим образом: промежуток времени обработки задач эталонного набора разбивается на небольшие интервалы равной длины, на каждом из них определяются средние значения скорости чтения и записи, а затем для определения соответствующих установившихся значений вычисляются максимумы средних величин по всем интервалам. В отличие от средних значений чтения и записи по всему промежутку времени обработки задач данные показатели являются
более репрезентативными.
В процессе функционирования распределенного вычислительного ЦОД также возникают непроизводительные инфраструктурные издержки, связанные с обслуживанием эталонного набора задач. Они могут быть описаны с
помощью следующих показателей:
а) среднее время вычисления прогнозных значений коммуникационных параметров задачи;
б) среднее время вычисления оптимального расписания выполнения задач.
Первый показатель отражает среднее время, затрачиваемое системой на
моделирование состояния компьютерной сети и определение эффективного
способа перенастройки параметров маршрутизации под каждую задачу
эталонного набора. Второй – среднее время, которое тратит планировщик
системы на пересчет текущего расписания при возникновении одного из
событий – появления в очереди новой задачи из эталонного набора или завершения уже запущенной.
К числу основных непроизводительных показателей эффективности, характеризующих особенности функционирования распределенных
вычислительных ЦОД, можно отнести сбалансированность загрузки ресурсов:
вычислительных ядер, оперативной памяти, дисковых накопителей. С точки зрения целей исследования наиболее адекватной характеристикой является сбалансированность загрузки вычислительных ядер (реальных или виртуальных), которая определяется, как вариация показателя средней загруженности вычислительного ядра по всем вычислительным ядрам системы
22
на протяжении всего расчетного времени. Небольшие значения данной характеристики позволяют судить о равномерной загрузке вычислительных
ресурсов ЦОД.
Показатели эффективности вычислительных систем и компьютерных сетей могут быть определены как проведением экспериментов на реальных
системах и сетях, так и путем их математического моделирования.
2.3 Применение теории массового обслуживания к исследованию
вычислительных систем и компьютерных сетей
Поступление данных в компьютерных сетях имеет вероятностный характер при детерминированной их обработке в каналах связи и узлах коммутации. Поэтому модели теории массового обслуживания широко
используются для анализа и проектирования компьютерных сетей.
Применяя методы системного анализа, теории сложных систем и теории вычислительных систем, проектирование любой информационной системы
можно представить как решение последовательности проектных задач синтеза и анализа системы и ее составляющих. Математическое моделирование является одним из наиболее распространенных методов исследования
процессов функционирования сложных систем. В настоящее время известно достаточно большое количество методов и способов построения
математических моделей и моделирующих алгоритмов систем, как на вероятностной, так и детерминированной основе. Наиболее распространенными из них являются системы и сети массового обслуживания.
В терминах теории массового обслуживания (ТМО) описываются многие
реальные системы: вычислительные системы, компьютерные сети и их узлы, и
многие другие. В таких системах возможны очереди и отказы в обслуживании. В вычислительных системах и компьютерных сетях роль обслуживающего прибора играют ЭВМ, рабочие станции, каналы передачи данных (линии
связи), коммутаторы и маршрутизаторы, а роль заявок (требований) – задания,
запросы, пакеты данных и др. Источником заявок служат различные терминалы
и рабочие станции пользователей. При этом операционная система отдельной ЭВМ или сетевая операционная система исполняет функции диспетчера, определяя очередность решения задач[26].
Усложнение взаимодействия устройств и процессов в распределенных
вычислительных системах, к которым относятся и компьютерные сети, не позволяют их исследовать только с помощью классических методов и моделей массового обслуживания. Для этих целей эффективнее использовать сети массового обслуживания (СеМО), в рамках которых хорошо отображаются
стохастические процессы функционирования компьютерных сетей.
СеМО представляет собой совокупность конечного числа N обслуживающих узлов, в которой циркулируют требования, переходящие в соответствии с заданной маршрутной матрицей из одного узла в другой. Под узлом СеМО понимают систему массового обслуживания (СМО), состоящую
из K одинаковых приборов (каналов). Эти отдельные СМО отображают
23
1p
N
0j
ij
функционально ресурсы реальной компьютерной сети (рабочие станции, каналы передачи данных, коммутаторы и маршрутизаторы), связи между СМО
– структуру сети. Если поступающее требование застает все обслуживающие
приборы узла занятыми, то требование занимает очередь в буфере и ожидает
начала обслуживания.
Для графического представления СеМО используется граф, вершины которого (узлы) соответствуют отдельным СМО, а дуги отображают связи
между узлами по аналогии со структурой компьютерной сети.
Маршрутная матрица P{p
} определяет структуру сети, предопределяя тем
ij
самым переходы требований между узлами СеМО в соответствии с переходными вероятностями pij,где p
вероятность того, что требование после
ij
обслуживания в узле i перейдет в узел j. Вид матрицы Pзависит от того,
является СеМО открытой (разомкнутой) или замкнутой. В открытой сети присутствует внешний источник требований, которые после поступления в сеть и завершения обслуживания в ней, покидают сеть. Если внешний источник
принять за узел сети с номером 0, то будет выполнено равенство
(i=0,1,…,N).
Поступающий из внешнего источника в сеть поток требований
описывается законом распределения интервалов времени между соседними
требованиями. Если эти интервалы независимы и одинаково распределены, то данный поток называется рекуррентным. Примером такого потока является
пуассоновский поток с функцией распределения F(t)=1-e
-λt
, где λ –
интенсивность потока.
Для определения интенсивностей всех потоков, циркулирующих в открытой СеМО рассмотрим структуру i-го узла СеМО в соответствии с рисунком 2.1.
Рисунок 2.1- Полная структура потоков в i-м узле СеМО
На рисунке 2.1 точка А – точка композиции (агрегирования) потоков, точка В – точка декомпозиции (вероятностного разрежения) агрегированного потока. Здесь приняты следующие обозначения:
i – номер узла СеМО (i=1,2,…,N);
N – число узлов СеМО;
λ
– интенсивность потока на входе и выходе из i-го узла СеМО;
i
24
N)1,...,(iλpλλ
N
1j
jji0ii
1
ii
λτ
i
ρ
iii
/μλρ
i
ii
i
ρ1
/μρ
W
i
i
i
ρ1
1/μ
T
i
W
i
λ
iq
N
i
N
)ρ/(1ρN
iii
0ii
/λλα
0
λ
i
λ
λ
– интенсивность потока от внешнего источника;
0i
pij– вероятности переходов из i-го узла в j-й узел (j=1,2,…,N);
μ
–интенсивность обслуживания m-го прибора узла (m=1,2,…,K);
m
K – число обслуживающих приборов (каналов) узла.
Справедливы следующие уравнения равновесия потоков в сети массового
обслуживания в стационарном режиме:
.(2.2)
Из рисунка 2.1 и уравнений (2.2) следует, что на входе i-го узла
агрегируются (знак
) разреженные выходные потоки (p
) от других узлов.
jiλj
Решение систем линейных алгебраических уравнений позволяет определить интенсивности λiисредние значения интервалов времен между соседними
требованиями
для каждого потока в сети массового обслуживания. Это
означает декомпозицию СеМО на отдельные узлы, что позволяет определить все основные показатели производительности как узлов, так и всей сети
массового обслуживания.
Параметр
,характеризующий соотношение интенсивности входящего
потока и интенсивности обслуживания и называемый коэффициентом загрузки
i-го узла, играет важную роль в теории массового обслуживания
.
Среднее время ожидания требования в очереди перед i-м узлом равно
,
а средняя задержка требования в i-м узле равна
.
Среднюю длину очереди требований можно определить по формуле
Литлла
,
а среднее количество требований
вi-м узле - по формуле
.
Зная характеристики отдельных узлов сети, нетрудно рассчитать
характеристики всей сети в целом, используя известные результаты теории вычислительных систем. Для этого через коэффициенты передач требований, где
- интенсивность внешнего
источника требований, а значения интенсивностей
(i=1,...,N) обозначим
получаются решением
25
i
N
1i
iс
WαW
i
N
1i
ic
TαT
i
W
i
T
N1i
qi
c q
NN
N
1i
i
c
NN
системы линейных уравнений. Тогда среднее время ожидания требования в
сети
,
а среднее время пребывания требования в сети
,
где
и
- соответственно средние времена ожидания и пребывания
требований в i -ом узле (i=1,...,N).
Общая длина всех очередей в сети
,
а общее количество требований в сети
.
Приведенные выше результаты составляют основу теории
экспоненциальных сетей. Сеть массового обслуживания называется
экспоненциальной, если входящие потоки требований в каждую СМО сети пуассоновские, а времена обслуживания в любой СМО сети, имеют
экспоненциальное распределение. Это позволяет считать, что этапы обслуживания независимы между собой и не зависят ни от параметров входящего потока, ни от состояния сети, ни от маршрутов следования
требований. Во всех остальных случаях СеМО является не экспоненциальной.
В настоящее время теория экспоненциальных СеМО наиболее разработана, и ее широко применяют как для исследования компьютерных
сетей, так и для исследования различных вычислительных систем.
В научной литературе СеМО классифицируют по многим признакам в соответствии с рисунком 2.2. Если требования приходят в сеть от внешнего источника и уходят из сети, то сеть называется разомкнутой. Если требования
не приходят в сеть и из нее не уходят, сеть называется замкнутой. Число
требований в замкнутой сети постоянно.В замкнутой СеМО циркулирует фиксированное число требований, а внешний источник требований
отсутствует. Временные характеристики в такой СеМО измеряются
относительно псевдонулевой точки, которая выбирается на внешней дуге такой сети.
26
Рисунок 2.2– Классификация СеМО
Важную роль в теории СеМО играет дисциплина обслуживания, которая
задает порядок выбора из очереди требования из буфера к освободившемуся прибору. При этом выбираются требования одинакового приоритета. Основные
наиболее часто используемые дисциплины обслуживания: FIFO (First Input–
First Output), первым пришел – первым обслужен; LIFO (Last Input–First Output), последним пришел – первым обслужен; RAND (Random), случайный
выбор из очереди. К примеру, дисциплина LIFO реализуется в буфере, организованном по принципу стека.
В комбинированной сети постоянно циркулирует определенное число
требований и кроме них в ней присутствуют требования, поступающие от внешних независимых источников. Например, в модели локальной
вычислительной сети, подключенной к Интернету, в качестве внешнего источника требований выступает Интернет, кроме того, в такой СеМО циркулируют требования (запросы), порождаемые в сети пользователями. Поэтому такие сетевые модели широко используются при исследовании
компьютерных сетей как распределенных вычислительных систем.
В однородной сети всегда циркулируют требования одного класса, а в неоднородной сети - требования различных классов. Требования относятся к
разным классам, если они различаются законом распределения длительности
обслуживания в узлах или же различаются маршрутами в сети. Такое может происходить также в комбинированных СеМО, как было отмечено выше.
Следует отметить, что для случая произвольных законов распределений
интервалов поступления между требованиями и их обслуживания, теория сетей
массового обслуживания не располагает конечными результатами. Для этого случая можно использовать теоретически обоснованные методы и алгоритмы
27
на основе математических операций над потоками и двумерной диффузионной
аппроксимации СМО [27], реализованные в программной системе «Анализ
производительности компьютерных сетей на основе аппроксимативного
подхода», разработанные авторами [28, 29].
На основе анализа принципов организации управления с помощью ПКС в центрах обработки и хранения данных можно утверждать, что для оценки эффективности функционирования таких систем с помощью расчетов показателей производительности можно использовать математические методы и модели, основанные на последних результатах теории массового
обслуживания.
2.4 Область применения программно-конфигурируемых сетей
На сегодняшний день самой перспективной областью применения
программно-конфигурируемых сетей являются центры обработки данных,
поскольку их трафик может полностью менять свою структуру в зависимости
от нагрузок и конфигурации программного обеспечения. Перенастройка
политик без централизации всего управления была бы крайне затруднительна.
Отдельной нишей являются виртуализированные и облачные ЦОД.
В виртуализированных и облачных ЦОД принцип выделения ресурсов подразумевает использование произвольной виртуальной машиной произвольных ресурсов в недетерминированном порядке, что не позволяет эффективно заранее настроить сеть. В такой динамической модели виртуальные машины находятся в ЦОД, но функционируют так, как если бы
они были организованы в логические серверные пулы в сети каждого клиента,
несмотря на случайный порядок, в котором они создавались и распределялись
на вычислительные узлы.
Использование ПКС может распространяться на контроль границы сети,
включать в себя возможность балансировки нагрузки на множестве каналов связи, идущих от коммутационных стоек. Без ПКС эта задача выполняется с использованием традиционных протоколов маршрутизации на основе
состояния канала или на основе расширений протокола Spanning Tree.
Распределенная глобальная ПКС может снять ограничение на масштабы
физических кластеров.
Также ПКС может управлять трафиком на основе абонентов и приложений при доступе к провайдерам услуг, которые разделяют ресурсы
между ЦОД. Это снижает затраты и ускоряет развертывание фиксированных и мобильных служб доступа.
Коллективное использование несколькими операторами общей сетевой инфраструктуры становится распространенной практикой. В рамках проекта Nando ученые испанского Университета страны Басков доказали, что с помощью OpenFlow и префиксов Ethernet PF можно не только строить мультиоператорские сети Ethernet второго уровня, но и значительно снизить затраты на создание сети, надежно разделить трафик разных абонентов и операторов и предотвратить неавторизованный доступ. Используя связку
28
протоколов SIP/OpenFlow, можно будет не только устанавливать IP-адреса
отправителя и получателя, но и программным способом коммутировать
необходимые потоки и каналы данных в операторских сетях — не исключено, еще до начала передачи данных.
В рамках проекта OpenRoads [30] разработчики Стэнфордского
университета, используя эшелонированные сети OpenFlow из коммутаторов, точек доступа WiFi и базовых станций WiMAX, на практике продемонстрировали бесшовный, без разрыва соединения, роуминг между
беспроводными сетями передачи данных разных стандартов.
2.5 Распределенные облачные вычисления
Облачные вычисления (Cloud Computing) – тип ИТ-услуги, поставляемой в виде масштабируемой эластичной услуги с помощью сетевых технологий. На базе облачных вычислений как технологии строятся облачные услуги.
Модели облачных услуг включают в себя несколько основных принципов
и множество их модификаций:
а) Инфраструктура как услуга (IaaS, Infrastructure as a service). Этот
подход позволяет предоставлять пользователям практически любые ресурсы вычислительной инфраструктуры. В облаке есть возможность устанавливать и
запускать произвольное программное обеспечение, такое как операционные
системы, прикладное программное обеспечение. Пользователь контролирует операционные системы, системы хранения данных и приложения, межсетевой экран. Контроль и управление всей инфраструктурой осуществляется облачным
провайдером.
б) Платформа как услуга (PaaS, Platform as a service). Эта модель
позволяет пользователям развертывать приложения, разработанные с использованием определенных языков программирования для структур и инструментов на облаке. У пользователя также нет контроля над инфраструктурой, но он полностью контролирует развернутые приложения. В состав платформ входят программные средства разработки программного обеспечения, например системы управления базами данных, интерпретаторы и компиляторы языков программирования. Все это предоставляется облачным
провайдером.
в) Программное обеспечение как услуга (SaaS, Software as a service). Эта
модель позволяет пользователям получать доступ к приложениям, работающим на облачной инфраструктуре. Пользователь не управляет инфраструктурой или приложениями, за исключением ограниченного применения определенных
доступных параметров.
г) Аппаратное обеспечение как услуга (MaaS, Metal as a service). Эта модель предназначена для быстрого распространения операционных систем с одинаковым набором на нескольких серверах с использованием подходов, используемых в облачных платформах. MaaS позволяет представить кластер в виде набора ресурсов. Они могут запрашиваться в любой момент. В отличие от
облачных платформ, выделение ресурсов происходит на уровне физических
29
серверов, а не виртуальных машин. Администратор объединяет несколько серверов в набор, а затем происходит подача команд с помощью веб-
интерфейса или через командную строку на развертывание служб, например,
сервера базы данных, веб-сервера. В результате, пользователь получает сервера с необходимой преднастроенной конфигурацией.
д) Безопасность как услуга (SEaaS, Security as a Service)–модель
обеспечения безопасности, предусматривающая использование удаленной системы, находящейся в собственности третьей стороны (одного или нескольких поставщиков услуги). Поставщик обеспечивает функции безопасности, основанные на разделяемых технологических услугах, которые потребляются в рамках модели «один ко многим» с оплатой по факту использования объема потребленных услуг. В этой схеме могут быть
задействованы некоторые элементы оборудования заказчика, если того требует поставщик телекоммуникационных услуг.
Компания Oracle также выделяет модель «База данных как услуга» (DBaaS, Database аs a service), при которой заказчику предоставляется доступ к созданной базе данных по предварительному требованию. Oracle предлагает два варианта DBaaS: произвольная база данных и «база данных в облаке», в котором создается виртуальный компьютер (IaaS) с установленной СУБД
(MaaS) и создана требуемая база данных. Интеграция как услуга (IaaS2, Integration as a service) является интеграцией ряда функций (обеспечение
безопасных коммуникаций, интеграция данных, приложений, облачных
инструментов), поставляемой в виде услуги.
Все модели услуг могут работать на любой из следующих моделей
развертывания:
а) частные облака, предназначены для использования только в одной
организации, могут управляться самой организацией или третьей стороной, физически располагаться как на территории организации, так и на внешней
территории;
б) общественные облака, открыты для широкой общественности, находятся в управлении провайдера облака;
в) гибридные облака, представляющие собой объединение двух или более
облаков (частных и общественных), облака связаны друг с другом таким
образом, что данные и приложения могут перемещаться;
г) сообщество облаков, их инфраструктура поделена между несколькими организациями, и она поддерживает конкретные сообщества.
Таким образом, чтобы облачные вычисления были эффективными, нужно
внести изменения в следующих областях:
а) Инфраструктура. Большинство инфраструктур в наше время либо
уже являются виртуальными, либо идут к этому. Инфраструктура становится
программируемой, серверы и приложения становятся подвижными.
б) Приложения. Виды приложений, которые работают на облаке,
приводят к изменениям сети. Многие приложения активно работают с данными, используют параллельную и распределенную обработку, а также
другие функции.
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]