Описание по “ALTQ” и основные базовые концепции

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

ОДЕССКАЯ НАЦИОНАЛЬНАЯ АКАДЕМИЯ СВЯЗИ ИМ. А. С. ПОПОВА

«КАФЕДРА СЕТЕЙ СВЯЗИ»

 

 

Комплексное задание по курсу «АКС»

на тему:

 

«ОБОСНОВАННЫЙ ВЫБОР ЭКЗЕМПЛЯРА СПЕЦИАЛИЗИРОВАННОГО ПРОГРАМНОГО ОБЕСПЕЧЕНИЯ»

 

 

Студента 4-го курса

группы ИК-4.2.02

Могорян Андрея

вариант №14

Проверил Никитченко В.В.

 

Одесса 2016 г.

 

Содержание

Исходные данные
Введение
Общие сведения о ПО  
Критерии
Сравнение продуктов
Вывод
Литература

ИСХОДНЫЕ ДАННЫЕ

 

Тип программного обеспечения:программное обеспечение для управления пропускной способностью каналов (Traffic Shaper)

Исследуемые альтернативы:ALTQ и Traffic Control.

ВВЕДЕНИЕ

 

В индивидуальном комплексном задании рассмотрим программное обеспечение “Traffic Shaper” и исследуем программные продукты “ALTQ” и “Traffic Control”.

Для чего мы это делаем? Одной из типичных задач, которую решают технические работники вовремя эксплуатации и администрирования информационных сетей и компьютерных систем, является выбор экземпляра программного продукта. Определившись с целевым продуктом, далее можно разрабатывать стратегию внедрения, проводить инсталляцию, настраивать сопровождение. Но сам выбор методики очень усложнён наличием похожих программных продуктов с максимальным набором тех или иных, очень нужным набором функций. Поэтому наиболее важным является вопрос взвешенного и обоснованного выбора программного продукта.

На наше рассмотрение будут представлены два очень похожих программных продукта, которые работают по схожим правилам и имеют огромный выбор функций. Аргументированно рассматриваем их и выбираем критерии, с помощью которых на наш взгляд (т.к. выступаем в роли эксперта) возможно, оценить данные продукты. Критерии могут не совпадать с критериями, представленными в стандарте ISO/IEC 9126, их можно варьировать с целью улучшения понимания разницы между продуктами. Далее оцениваем, необходимы нам продукты по заданным критериям и субкритериям.

Так как задача выбора программного обеспечения слабо структурирована, то для её решения применяются методы много критерийного принятия решений. Мы будем использовать метод непосредственных оценок при сравнении возможностей продуктов. Описание и алгоритм работы данного метода будет приведен в комплексном задании.

Описание заданных продуктов приведём ниже. Данные о реализации контроля пропускной способности канала в этих службах, и какие возможности предоставлены, структурируем и дадим экспертную оценку их соотношений.

ОБЩИЕ СВЕДЕНИЯ ОБ ИСХОДНОМ ПО

Пропускная способность канала.

Наибольшая возможная в данном канале скорость передачи информации называется его пропускной способностью. Пропускная способность канала есть скорость передачи информации при использовании «наилучших» (оптимальных) для данного канала источника, кодера и декодера, поэтому она характеризует только канал.

Номинальная скорость — битовая скорость передачи данных без различия служебных и пользовательских данных. Эффективная скорость — скорость передачи пользовательских данных (нагрузки). Этот параметр зависит от соотношения накладных расходов и полезных данных.

Traffic Shaper (шейпер) это подсистема динамического распределения полосы пропускания и очередности прохождения разных типов трафика.

Traffic Shaper состоит из двух элементов - очередей Queues и планировщиков. Очереди Queues описывают свойства проходящего через них потока данных, его приоритеты и ширину полосы. Планировщик определяет алгоритм взаимодействия и иерархию очередей. Направление трафика в очереди производится в правилах файервола.

Описание по “ALTQ” и основные базовые концепции

Управление пропускной способностью имеет много общего с контролем баланса вашей чековой книжки или обработкой других ресурсов, которые являются дефицитными или доступны в ограниченных количествах. Обычно, ресурсы доступны с жёстким верхних пределов, и вам необходимо выделять ресурсы с максимальной эффективностью, в соответствии с некоторыми приоритетами, установленными вашими политиками или спецификациями.

Ядро управления пропускной способностью ALTQ основано на концепции очередей. Очереди явлются одной из форм буферов для сетевых пакетов. Пакеты будут находиться в очереди до тех пор, пока они де будут либо удалены, либо отправлены по пути их следования, в зависимости от критериев относящихся к очереди и с учётом доступной пропускной способности очереди. Очереди прикреплются к конкретным интерфейсам и управление пропускной способностью осуществлется на базе интерфейса, с разделением доступной пропускной способности в определённых вами очередях.

Очереди выделяют определённую часть из полосы пропускания, а иногда и иерархический приоритет. В данном контексте, приоритет является показателем предпочтений того, какую очередь необходимо обслуживать в кратчайшие сроки. Некоторые очереди могут настраиваться в сочетании выделения полосы пропускания и приоритета. В дальнейшем уточнении, мы рассмотрим некоторые типы очередей, в которых вы сможете выделить часть пропускной способности очереди в подочереди или создать очереди в очередях, которые будут претендовать на долю ресурсов родительских очередей.

После определения очереди вы интегрируете формирование трафиком в ваш набор правил, переписав свои правила пропуска или правила соответствия для назначения трафика на указанные очереди.

Примечание

В установках ALTQ, любой трафик который вы явно не назначали в спецфичную очередь, ставится в очередь по умолчанию.

ALTQ это альтернативная платформа организации очередей для BSD. ALTQ обеспечивает организации очередей, и другие QoS методы, разделение ресурсов Quality of Service. В основном это реализовано на BSD маршрутизаторах.

ALTQ портирован на дистрибутивы FreeBSD, NetBSD, и интегрирован в PF пакетный фильтрOpenBSD.

ALTQ ставит пакеты в очереди с целью управления пропускной способностью. Этот планировщик определяет алгоритм, используемый для решения, какие пакеты будут задержаны, какие отброшены, а какие сразу переданы. Есть три планировщика, в настоящий момент поддерживаемые FreeBSD в реализации ALTQ:

- CBQ Class Based Queueing. Очереди, присоединенные к интерфейсу, создают дерево. Таким образом, у каждой очереди могут быть дальнейшие дочерние очереди. У каждой очереди могут быть приоритет и присвоенная пропускная способность. Приоритет, главным образом, управляет временем, за которое пакеты будут отосланы, в то время как другие будут ждать своей очереди. За счёт этого регулируется пропускная способность.

- PRIQ Priority Queueing. У этих очередей не может быть дочерних очередей. Каждой очереди присваивается уникальный приоритет, в пределах от 0 до 15. Пакеты с высшим номером имеют высший приоритет.

- HFSC Hierarchical Fair Service Curve. В родительской очереди определяется суммарная пропускная способность для всех очередей интерфейса. Указывается общая пропускная способность, предоставляемая провайдером и не зависящая от скорости сетевого интерфейса. В дочерней очереди эта директива определяет максимальную скорость передачи информации в битах, которая будет обработана очередью в любой момент.

Установка ALTQ

Включение ALTQ для использования логики очередей в вашем наборе правил, вам могут понадобиться дополнительные шаги, зависящие от того какую операционную систему вы используете.

ALTQ на OpenBSD

На OpenBSD, все поддерживаемые дисциплины очередей собраны в ядра GENERIC и GENERIC.MP. Для конфигурирования вам необходимо отредактировать ваш pf.conf

ОПИСАНИЕ ПО “TRAFFIC CONTROL”

Подсистема Traffic Control поддерживает множество методов
классификации, приоритезации, разделения и ограничения трафика (как исходящего, так и входящего). Она очень гибка в настройке, но сложна в понимании.

. Подсистема управления трафиком Linux позволяет делать следующее:

  • Shaping. Шейпинг — ограничение трафика, задержка пакетов с
    целью создания желаемой скорости передачи. Может использоваться не только для"сужения" исходящего канала, но и для сглаживания бросков во время пиковых нагрузок.
  • Scheduling. Планирование – упорядочивание типов трафика в
    канале. Позволяет избегать задержек для критичных типов трафика (QoS).
  • Policing. Политика входящего трафика. Позволяет ограничить
    входящий трафик путем уничтожения превысивших лимит пакетов.

Помогает бороться с DDoS.

Отметим, что ограничение без потерь возможно только в отношении исходящего
трафика. Стек протоколов TCP/IP не предусматривает возможности заставить
удаленную сторону слать пакеты медленнее (и это правильно).

В обработке трафика участвуют три ключевых сущности: дисциплины обработки пакетов, классы и фильтры. Настройка эффективной системы ограничения трафика невозможна без понимания механизмов их работы, роли и связи друг с другом. Мы в подробностях рассмотрим каждую из них:

- Дисциплина обработки пакетов (qdisc) — очередь пакетов и
закрепленный за ней алгоритм обработки.

- Класс (class) — логический контейнер, который может
содержать несколько подклассов или дисциплину.

- Фильтр (filter)— механизм классификации трафика.

- Traffic Control не был бы столь гибким, если бы не позволял разбивать
трафик на классы с помощью классовой дисциплины и набора ее подклассов.
Схематически классовая дисциплина очень похожа на файловую систему, c тем лишь исключением, что ее корень или классы (каталоги) могут содержать либо дисциплину(файл), либо подклассы (подкаталоги). Одно из двух. Классовые дисциплины и классы предназначены для построения дерева выбора. Сначала весь трафик разбивается на несколько общих классов (например, трафик до Отдела-1, трафик до специализированных внутренних серверов и т.д.), а затем каждый из них разбивается на несколько подклассов (например, трафик до DNS-сервера Отдела-1), за которыми уже могут быть закреплены дисциплины.

Утилита tc

Для конфигурирования подсистемы управления трафиком предназначена утилита tc из пакета iproute2. Она принимает набор команд в качестве аргументов, спомощью которых можно создавать классы, привязывать к ним дисциплины и добавлять фильтры. Синтаксис ее похож на синтаксис команды ipfw из операционной системы FreeBSD, так что знакомые с ним быстро освоятся.

Для примера рассмотрим простейший вариант использования:

# tc qdisc add dev eth0 root tbf rate 256kbit \
latency 50ms burst 1540

Эта команда устанавливает ограничение для всего исходящего трафика в 256 Кбит/с. Разберем подробнее все аргументы tc:

· qdisc add — добавляем новую дисциплину (для удаления используй del).

· dev eth0 — указываем устройство, к которому будет привязана дисциплина.

· root — наша дисциплина корневая (будет обрабатываться весь трафик).

· tbf — имя дисциплины.

· rate 256kbit latency 50ms burst 1540 — параметры, специфичные для данной дисциплины: rate — ограничение скорости, latency — максимальный "возраст" пакета в очереди, burst — размер буфера.