Гарантированное предоставление зарезервированных ресурсов с помощью протокола RSVP
Описание реализации протокола RSVP с целью гарантированного предоставления зарезервированных сетевых ресурсов в модели интегрированного обслуживания IntServ. Анализ составляющих модулей приложения и его алгоритмов. Архитектура разработанного приложения.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 21.06.2020 |
Размер файла | 416,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Гарантированное предоставление зарезервированных ресурсов с помощью протокола RSVP
Маскайкин Антон Викторович
Аннотация
В статье представлено описание реализации протокола RSVP с целью гарантированного предоставления зарезервированных сетевых ресурсов в модели интегрированного обслуживания IntServ. Проведен анализ составляющих модулей приложения и его алгоритмов.
Сегодня актуальной задачей обслуживания в телекоммуникационных сетях является обеспечение качества по причине постоянного увеличения скоростей передачи данных.
Качество обслуживания (Quality of Service, QoS) - набор технологий, обеспечивающих управление сетевыми ресурсами путем предоставления приоритетов в обслуживании определенным типам трафика на основе различных требуемых параметров [1].
Основными параметрами являются:
полоса пропускания (Bandwidth), т.е. пропускная способность канала передачи данных;
потеря пакетов, т.е. отношение успешно переданных пакетов к общему числу передаваемых пакетов;
задержка (Delay), или время прохождения пакета от одного конечного узла к другому;
джиттер (Jitter), т.е. колебание значения задержки между последовательно посылаемыми пакетами.
Существуют две основные сервисные модели качества обслуживания:
-- дифференцированное обслуживание (DiffServ) и
-- интегрированное обслуживание (IntServ).
Рассматриваемая в настоящей статье модель интегрированного обслуживания обеспечивает возможность предоставления сквозного качества обслуживания с помощью прямого управления сетевыми ресурсами для конкретных пакетов пользователей. Для донесения информации о требуемом качестве обслуживания устройствам на всем маршруте следования пакетов по сети используется сигнальный протокол резервирования сетевых ресурсов (RSVP). В данной модели обеспечение качества обслуживания должно производиться не на конечных узлах, а на каждом узле пути следования пакета.
В связи с отсутствием в открытом доступе современных реализаций RSVP-протокола был разработан фреймворк на базе RSVP, решающий проблему предоставления требуемых сетевых ресурсов с использованием дисциплин обслуживания Linux.
Архитектура разработанного приложения состоит из следующих модулей (рис. 1):
слой управления (контроллер);
модуль анализа входящего сообщения;
модуль обработки сообщения;
модуль резервирования сетевых ресурсов;
модуль автоматического регулирования полосы пропускания autobandwidth модуль);
слой данных (Date Plane).
протокол обслуживание приложение
Рис. 1. Архитектура приложения
Контроллер представлен демон-процессом [2], написанном на языке Python. Данный процесс осуществляет прием и передачу RSVP-сообщений, и, в зависимости от типа входящего сообщения, осуществляет их обработку посредством вызова подконтрольных модулей. Модуль анализа сообщений включает в себя вычисление адреса следующего узла, на который данный пакет должен быть отправлен. Вычисление производится на основании хранящихся в пакете данных о конечном получателе. По умолчанию пакеты от начального узла к конечному транспортируются по кратчайшему пути, но кратчайший путь не всегда является лучшим. По этой причине также реализована поддержка статических маршрутов, т.е. полный список адресов, по которым пакет должен дойти от начального узла к конечному. Данный функционал позволил произвольно расширять топологию сети, в которой будет запущено приложение. Полный алгоритм работы контроллера системы представлен на рис. 2
Рис. 2. Блок-схема алгоритма работы контроллера
Модуль обработки сообщений осуществляет определение алгоритма обработки RSVP сообщения в зависимости от его типа. Реализованная система поддерживает следующие типы сообщений:
Path Message - начальное сообщение об установке туннеля резервирования; содержит необходимые параметры резервирования (класс обслуживания, требуемая полоса пропускания);
Resv Message - сообщение, при обработке которого непосредственно осуществляется резервирование;
PathErr Message - сообщение об ошибке во время обработки Path;
ResvErr Message - сообщение об ошибке во время обработки Resv;
PathTear, ResvTear - сообщения о ликвидации туннеля резервирования.
После обработки входящего сообщения модуль передает контроллеру информацию о дальнейших действиях.
Модуль резервирования ресурсов осуществляет взаимодействие с конфигурацией операционной системы Linux для предоставления гарантированного качества обслуживания в соответствии с входящими параметрами, поступающими от модуля обработки RSVP-сообщений. Модуль использует встроенную в операционную систему Linux утилиту tc, которая производит необходимые манипуляции с трафиком.
Согласно RSVP-спецификации [3], данный протокол содержит два главных типа сообщений: RSVPPath и RSVPResv. Через каждый узел сначала проходит Path-сообщение, затем - Resv. Соответственно, если через данный узел прошло несколько сообщений, то необходимо идентифицировать связь между сообщениями каждого клиента в рамках одной сессии. Для решения данной проблемы было решено создать на каждом узле небольшую базу данных, содержащую в себе следующую информацию:
уникальный сгенерированный ключ для каждой сессии;
информацию о сообщении;
адреса источника и получателя;
требуемые полоса пропускания канала и класс обслуживания (TOS).
В качестве базы данных используется встраиваемая легковесная документо-ориентированная база данных TinyDB, представляющая собой обычную библиотеку [4]. Данная база данных кроссплатформенная, обладает высокой скоростью и надежностью и свободной лицензией. При прохождении Path-сообщения через узел, на котором развернуто приложение, для него генерируется уникальный идентификатор (который также записывается в само сообщение), считываются его параметры, и вся информация записывается в базу данных. При генерации ответного Resv-сообщения уникальный идентификатор копируется и затем на каждом узле считывается. По этому идентификатору из базы данных извлекается вся необходимая информация о требуемом качестве обслуживания и осуществляется резервирование.
Реализованный функционал позволяет уникально идентифицировать, к какому сеансу резервирования относится то или иное сообщение, что является несомненным преимуществом. Однако в каждом сообщении приходится хранить уникальный идентификатор сессии, что увеличивает размер пакета и повышает фактор риска сбоя работы приложения, если данный идентификатор будет каким-либо образом поврежден при прохождении пакета через сеть.
Также реализованное приложение содержит функционал по автоматическому регулированию зарезервированной полосы пропускания, осуществляемый в модуле autobandwidth [5]. Алгоритм работы модуля следующий: каждый предопределенный интервал времени (Statistics Interval) происходит замер трафика, проходящий через зарезервированный туннель. Затем в каждый предопределенный интервал времени (Adjust Interval) происходит вычисление среднего значения прошедшего через туннель трафика и его сравнение с зарезервированным значением. Если эта разница меньше настроенного порога (Adjust Threshold), то происходит пересоздание туннеля с новым увеличенным значением полосы пропускания. В противном случае это значение уменьшается.
Таким образом, было разработано приложение, осуществляющее гарантированное предоставление зарезервированных сетевых ресурсов на базе протокола RSVP с возможностью автоматического регулирования полосы пропускания на основе реальных количественных значений проходящего через туннель трафика.
Список использованных источников
Szigeti T., Hattingh C. End-to-end Qos Network Design. Indianapolis : Cisco Press, 2004. 761 р.
PEP 3143-- Standard daemon process library // Python Software Foundation : сайт компании. URL: https://www.python.org/dev/peps/pep-3143 (дата обращения: 17.03.2019).
Resource ReSerVation Protocol (RSVP) / R. Braden, L. Zhang, S. Berson, S. Herzog, S. Jamin // IETF Tools : сайт разработчиков программных продуктов. URL: https://tools.ietf.org/html/rfc2205 (дата обращения: 12.03.2019).
TinyDB // TinyDB : сайт разработчиков программных продуктов. URL: https://tinydb.readthedocs.io (дата обращения: 27.02.2019).
Steenbergen R. A. MPLS RSVP-TE Auto-Bandwidth: Practical Lessons Learned.URL: https://www.nanog.org/sites/default/files/tues.general.steenbergen.autobandwidth.30.pdf (дата обращения: 15.03.2019).
Размещено на Allbest.ru
...Подобные документы
Альтернативное определение и субъективная оценка QoS. Качество обслуживания в IP-сетях. Дифференцированное обслуживание разнотипного трафика – DiffServ. Интегро-дифференцированное обслуживание трафика IntServ. Протокол резервирования ресурсов – RSVP.
контрольная работа [346,6 K], добавлен 25.05.2015Назначение и возможности разработанного приложения для контроля активности сетевых и периферийных устройств предприятия. Язык программирования Java. Распределенные многоуровневые приложения. Структура базы данных, интерфейс разработанного приложения.
курсовая работа [1,0 M], добавлен 16.12.2012Анализ и сравнение различных методов реализации системы защиты сетевых соединений. Виды сетевых атак и методика их негативного воздействия, возможные последствия и меры их профилактики. Структура протокола создания защищенных сетевых соединений ISAKMP.
дипломная работа [284,1 K], добавлен 19.06.2010Разработка протокола передачи информации, использующего многоуровневый аналоговый сигнал. Проект приложения, осуществляющий моделирование коммуникационной сети датчиков пожарной безопасности на основании разработанного протокола в среде LabVIEW.
дипломная работа [4,4 M], добавлен 07.07.2012Архитектура и история создания операционной системы Android. Язык программирования Java. Выбор средства для реализации Android приложения. Программная реализация Android приложения. Проведение тестирования разработанного программного обеспечения.
курсовая работа [167,8 K], добавлен 18.01.2017Общее описание разрабатываемого приложения, его актуальность и сферы практического применения. Выбор среды разработки и языка программирования, 3D-движка. Архитектура приложения, интерфейса и его главных элементов, взаимодействие с пользователем.
дипломная работа [317,5 K], добавлен 10.07.2017Описания сетевых протоколов прикладного уровня, позволяющих производить удалённое управление операционной системой. Основные характеристики протокола CMIP. Изучение особенностей Telnet, сетевого протокола для реализации текстового интерфейса по сети.
реферат [47,0 K], добавлен 24.01.2014Описание комплекса программных модулей, предназначенного для повышения эффективности аппаратных ресурсов компьютера. Характеристика компонентов сетевых и распределенных операционных систем. Модели сетевых служб. Способы разделения приложений на части.
презентация [1,4 M], добавлен 10.11.2013Основные инструменты построения Web-приложения. Язык сценариев PHP. Системный анализ предметной области базы данных. Коды SQL запросов на создание таблиц. Разработка Web-приложения. Описание функциональности модулей. Система управления содержимым статей.
курсовая работа [4,8 M], добавлен 28.04.2014Общие сведения о протоколе передачи данных FTP. Технические процессы осуществления соединения с помощью протокола FTP. Программное обеспечение для осуществления соединения с помощью протокола FTP. Некоторые проблемы FTP-серверов. Команды FTP протокола.
реферат [766,6 K], добавлен 07.11.2008Разработка приложения, которое будет выполнять функции показа точного времени и точной даты. Определение дополнительных функций разработанного приложения. Рассмотрение основных этапов создания программного продукта. Результаты тестирования приложения.
курсовая работа [2,2 M], добавлен 14.04.2019Разработка приложений для смартфонов на ОС Android для сети аптек "Фармация". Архитектура операционной системы Android. Архитектура и реализация приложения. Его функциональность. Описание работы мобильного приложения. Расчет затрат на создание продукта.
дипломная работа [1,6 M], добавлен 17.06.2017Архитектура клиент-сервер на основе сокетов Windows. Описание утилиты Ipconfig. Конфигурирование стека TCP/IP. Реализация сокетов через классы NET. Структура библиотечных и пользовательских классов. Схема интерфейса пользователя и работы приложения.
курсовая работа [419,5 K], добавлен 13.12.2012Программные средства для популяризации туризма в Республике Беларусь. Организация туристической деятельности и въездного туризма в Республике Беларусь. Обзор информационной модели и интерфейса разработанного веб-приложения. Алгоритмы программных модулей.
курсовая работа [4,2 M], добавлен 23.03.2015Требования к создаваемому программному модулю. Разработка необходимых алгоритмов и интерфейсов. Описание протокола SPA-BUS. Выбор языка программирования. Тестирование и документирование программного продукта. Оценка экономической эффективности программы.
дипломная работа [722,4 K], добавлен 06.07.2012Разработка приложения для проверки использования времен глаголов в английском языке. Создание базы данных. Анализ используемых средств для реализации автоматического разбора текста. Проектирование мобильного приложения с помощью диаграмм деятельности.
дипломная работа [2,6 M], добавлен 13.09.2017Определение ресурсов до начала работы программы, их добавление в исполняемый файл. Возможность использования атрибутов в качестве ресурсов, их создание программистом в программе. Применение символьных строк в приложениях. Основные виды меню приложения.
реферат [32,2 K], добавлен 03.10.2010Общая схема работы приложения Android. Разработка обучающего приложения для операционной системы Android, назначение которого - развитие речи посредством произнесения скороговорок. Описание компонентов разработанного приложения, его тестирование.
дипломная работа [1,2 M], добавлен 04.02.2016Функция протокола и структура пакета разрабатываемого протокола. Длина полей заголовка. Расчет длины буфера на приеме в зависимости от длины пакета и допустимой задержки. Алгоритмы обработки данных на приеме и передаче. Программная реализация протокола.
курсовая работа [1,0 M], добавлен 18.05.2014Классическое, компьютерное и цифровое направления стенографии. Использование зарезервированных полей компьютерных форматов файлов. Алгоритмы встраивания скрытой информации. Стеганография и цифровые водяные знаки. Документация программного продукта.
курсовая работа [37,7 K], добавлен 22.06.2011