Адаптивная схема управления потоком для транспортного протокола в сетях с коммутацией пакетов
|
Реферат 2
Введение 6
1.1. Предмет исследования 6
1.2. Научная новизна работы 8
1.3. Практическая ценность результатов 9
1.4. Апробация работы 9
1.5. Содержание работы 9
1.6. Благодарности 10
1.7. Коммуникационные транспортные протоколы 10
1.8 Свойство самоподобия сетевого трафика 47
1.9 Управление потоками в коммуникационных системах 55
Глава 1. Постановка задачи 65
1.1. Недостатки протокола TCP 66
1.2. Цель работы 67
1.3. Формальная модель системы 67
1.4. Основные характеристики протокола 68
1.5. Сеть как самоорганизующаяся система 69
Глава 2. Алгоритм ARTCP 70
2.1. Аспекты новизны протокола ARTCP 70
2.2. Эвристика в основе алгоритма ARTCP 71
2.3. Параметры и переменные 72
2.4. Формат сообщения 73
2.5. Структурная схема ARTCP 73
2.6. Совместимость с TCP 81
2.7. Сравнение ARTCP и TCP на основе анализа алгоритма 81
2.8. Направления дальнейшего развития ARTCP 83
Глава 3. Имитационная модель 85
3.1. Формат сообщения 86
3.2. Объектная структура ПМ 87
3.3. Главный цикл 9 5
3.4. Дуплексный режим 96
3.5. Трассировка модели 96
3.6. Визуализация данных 97
Глава 4. Результаты моделирования 102
4.1. Общая схема модельного эксперимента 102
4.2. Сценарий 1: изолированный ARTCP 104
4.3. Сценарий 2: определение важнейших параметров сети 111
4.4. Сценарий 3: ARTCP и TCP в условиях ошибок передачи 116
4.5. Сценарий 4: ARTCP и TCP - коэффициент использования 118
4.6. Сценарий 5: ARTCP и TCP - коэффициент равноправия 120
4.7. Сценарий 6: ARTCP и TCP средняя длина очереди 122
4.8. Сценарий 7: 1 ARTCP и 1 CBR 125
4.9. Сценарий 8: 2 ARTCP и 1 CBR 129
4.10. Сценарий 9: свойство самоподобия трафика ARTCP 133
Основные выводы 138
Список литературы 139
Введение 6
1.1. Предмет исследования 6
1.2. Научная новизна работы 8
1.3. Практическая ценность результатов 9
1.4. Апробация работы 9
1.5. Содержание работы 9
1.6. Благодарности 10
1.7. Коммуникационные транспортные протоколы 10
1.8 Свойство самоподобия сетевого трафика 47
1.9 Управление потоками в коммуникационных системах 55
Глава 1. Постановка задачи 65
1.1. Недостатки протокола TCP 66
1.2. Цель работы 67
1.3. Формальная модель системы 67
1.4. Основные характеристики протокола 68
1.5. Сеть как самоорганизующаяся система 69
Глава 2. Алгоритм ARTCP 70
2.1. Аспекты новизны протокола ARTCP 70
2.2. Эвристика в основе алгоритма ARTCP 71
2.3. Параметры и переменные 72
2.4. Формат сообщения 73
2.5. Структурная схема ARTCP 73
2.6. Совместимость с TCP 81
2.7. Сравнение ARTCP и TCP на основе анализа алгоритма 81
2.8. Направления дальнейшего развития ARTCP 83
Глава 3. Имитационная модель 85
3.1. Формат сообщения 86
3.2. Объектная структура ПМ 87
3.3. Главный цикл 9 5
3.4. Дуплексный режим 96
3.5. Трассировка модели 96
3.6. Визуализация данных 97
Глава 4. Результаты моделирования 102
4.1. Общая схема модельного эксперимента 102
4.2. Сценарий 1: изолированный ARTCP 104
4.3. Сценарий 2: определение важнейших параметров сети 111
4.4. Сценарий 3: ARTCP и TCP в условиях ошибок передачи 116
4.5. Сценарий 4: ARTCP и TCP - коэффициент использования 118
4.6. Сценарий 5: ARTCP и TCP - коэффициент равноправия 120
4.7. Сценарий 6: ARTCP и TCP средняя длина очереди 122
4.8. Сценарий 7: 1 ARTCP и 1 CBR 125
4.9. Сценарий 8: 2 ARTCP и 1 CBR 129
4.10. Сценарий 9: свойство самоподобия трафика ARTCP 133
Основные выводы 138
Список литературы 139
Одним из важнейших направлений научно-технического прогресса в настоящее время являются коммуникационные системы, представляющие собой сети передачи информации. Координацию процессов передачи информации в распределенной системе, которой является сеть, осуществляют коммуникационные протоколы.
Принято разделять коммуникационные протоколы по степени общности задач, решаемых ими, на несколько уровней, упорядоченный набор которых образует сетевую архитектуру. Самой распространенной и универсальной сетевой архитектурой является архитектура TCP/IP [43, 1]. В рамках TCP/IP все системы в сети делятся на конечные системы, между которыми происходит информационный обмен, и промежуточные системы, не являющиеся конечными или исходными точками обмена. Конечные системы называются узлами сети, а промежуточные - маршрутизаторами.
Двусторонний поток информации между парой смежных систем в сети обеспечивается каналом, связывающим две системы. Каналы характеризуются скоростью информационного потока (пропускной способностью), задержкой передачи и вероятностью битовых ошибок. В каждой точке подключения маршрутизатора к каналу имеется буфер, в котором организуется очередь данных ожидающих отправки по этому каналу. Буферное пространство и пропускная способность (ПС) представляют собой разделяемые ресурсы сети. Если скорость прибытия информации в маршрутизатор превышает максимально возможную скорость ее отправки, то происходит перегрузка сети, выражающаяся в переполнении буферов и потерях информации.
Протокол транспортного уровня занимает важнейшее положение в любой сетевой архитектуре, в том числе и в TCP/IP, поскольку он обеспечивает надежную и эффективную передачу информации непосредственно между конечными системами сети. Для этого транспортный протокол задает согласованный набор правил поведения для участников информационного обмена. Эти правила регулируют совместный доступ узлов к разделяемым ресурсам сети, поэтому эффективность транспортного протокола определяет эффективность работы всей сети в целом. Программа, реализующая алгоритм протокола, называется объектом протокола.
Транспортным протоколом в архитектуре TCP/IP является TCP (Transmission Control Protocol) [4, 5, 6], который обеспечивает надежную двустороннюю связь с контролем скорости передачи. Источник TCP потока получает информацию от пользователя в виде последовательности битов, формирует из нее блоки конечной длины, называемые сегментами и отправляет их к TCP получателю. Получатель, принимая сегменты, формирует из них исходную последовательность и передает ее своему пользователю.
Для осуществления обмена TCP устанавливает логическое соединение между парой узлов сети, на каждом из которых исполняется алгоритм TCP. Поток сегментов по TCP соединению может проходить через упорядоченную последовательность маршрутизаторов и каналов. Пропускная способность соединения в целом ограничена минимальной из ПС каналов, через которые проходит соединение. Алгоритм управления потоком, являющийся частью TCP, стремится отправлять данные со скоростью, не превышающей меньшее из ПС соединения и скорости потребления информации получателем.
Набор соединений транспортного протокола, разделяющих общий канал, представляет собой сложную самоорганизующуюся систему в смысле Г. Хакена [101]. Поведение каждого из объектов протокола в этой системе определяется алгоритмом протокола, однако, поведение всей системы, как целого, вообще говоря, не описывается совокупностью действий ее компонентов. Каждый объект протокола стремится максимально эффективно адаптироваться к доступным ресурсам сети в условиях кооперации с другими объектами этого протокола.
На сегодняшний момент известен ряд существенных недостатков алгоритма управления потоком протокола TCP:
1. Для оценки доступной ПС алгоритм управления потоком TCP постоянно увеличивает скорость отправки сегментов, искусственно вызывая перегрузку сети. Это приводит к частым потерям пакетов и, при устойчивом переполнении буферов, к увеличению задержек сегментов в сети.
2. TCP интерпретирует потерю сегмента как признак перегрузки сети и реагирует на любую потерю данных снижением скорости передачи, что ведет к существенным ограничениям эффективности TCP в сетях, где вероятность потери сегментов из-за возникновения ошибок отлична от нуля. Это относится, в частности, ко всем беспроводным сетям.
3. Локальные неравномерности в отправке сегментов TCP приводят к повышению вероятности потери сегментов при максимальном заполнении буферов.
Устранение приведенных выше недостатков TCP является темой большого числа исследований. В работах на эту тему предлагаются разные варианты усовершенствования транспортного протокола. Большинство протоколов, предлагаемых для использования в сетях с ненулевой вероятностью битовых ошибок, не являются совместимыми с TCP и требуют введения дополнительных элементов в структуру сети, усложняя ее и нарушая основной принцип транспортного протокола, состоящий в том, что на транспортном уровне соединение устанавливается между непосредственным источником и получателем информации.
Таким образом, важнейшей задачей является разработка нового транспортного протокола в рамках архитектуры TCP/IP, который был бы более эффективен, чем TCP. Новый протокол должен быть универсальным в смысле возможности использования его как в проводных, так и беспроводных сетях, что особенно важно в свете дальнейшего развития сетевых технологий и расширения областей их применения.
В диссертации разработан новый транспортный протокол ARTCP. В среде языка C++ создан класс, полностью описывающий протокол ARTCP, который может стать основой реализации протокола. Разработана универсальная объектно-ориентированная имитационная модель для конструирования сетей с топологией любой сложности. Проведенные эксперименты работы протокола ARTCP для ряда сценариев показали, что он почти всегда превосходит стандартный протокол TCP.
1.2. Научная новизна работы
Основные научные результаты диссертации состоят в следующем:
Разработан протокол ARTCP, использующий темпоральные показатели потока в качестве входного параметра для алгоритма управления потоком и сочетающий оконный механизм контроля скорости с диспетчеризацией каждого сегмента.
Построена имитационная программная модель (ИПМ), позволяющая моделировать все компоненты сети, влияющие на функционирование транспортного протокола. ИПМ является универсальным инструментом для исследования взаимодействий в сетях и позволяет строить топологические схемы большой сложности.
По данным модельного эксперимента в ИПМ определены важнейшие характеристики ARTCP, а также показано наличие свойства самоподобия у трафика ARTCP. Результаты эксперимента позволяют утверждать, что ARTCP превосходит TCP по основным критериям.
1.3. Практическая ценность результатов
Практическая ценность предлагаемой схемы управления потоком очень высока. Во- первых, протокол ARTCP не доводит сеть до состояния перегрузки для выявления доступной максимальной пропускной способности, поэтому потери пакетов в стабильном состоянии работы сети вообще не происходят. Таким образом, повышается эффективность использования сетевой инфраструктуры, что дает прямой экономический эффект.
Во-вторых, протокол ARTCP не интерпретирует потерю пакета как признак перегрузки сети, что позволяет эффективно применять его в каналах с ненулевой вероятностью ошибок. В настоящее время развитие инфраструктурной части сетей сориентировано в немалой степени именно на беспроводные системы, поэтому ARTCP может найти в таких сетях широкое применение.
В-третьих, средняя длина очередей в маршрутизаторах сети при использовании ARTCP минимальна, поскольку ARTCP не только адаптирует скорость отправки пакетов в сеть к максимальной скорости обслуживания потока, но и обладает механизмом компенсации перегрузки. Таким образом, среднее время транзитной задержки пакетов в сети снижается.
В-четвертых, алгоритм ARTCP не противоречит созданию совместимой с TCP реализации. Поэтому внедрение ARTCP может происходить постепенно, в первую очередь на тех узлах, где применение нового протокола наиболее выгодно.
1.4. Апробация работы
По результатам, полученным в ходе работы, были сделаны доклады на международном семинаре IEEE «Интернет: технологии и сервисы», а также на семинарах ЯрГУ: "Моделирование и анализ информационных систем", "Нейронные сети". Новый протокол вызвал большой интерес и одобрение со стороны экспертов в области телекоммуникаций.
1.5. Содержание работы
Для создания алгоритма нового протокола и разработки его имитационной модели необходимо рассмотреть все компоненты транспортного протокола. В части 1.7 введения (коммуникационные транспортные протоколы), даны важнейшие определения, принципы и алгоритмы, которые используются далее по тексту. В части 1.8 (управление потоками в коммуникационных системах) рассмотрены работы в области управления скоростью передачи в распределенных сетях построенных на принципе коммутации пакетов. Самоподобие сетевого трафика и важнейшие работы в этой области описаны в части 1.9
(свойство самоподобия сетевого трафика) введения. На основе типичных задач и путей решения проблемы управления потоками можно осуществить постановку задачи - создание протокола, свободного от недостатков TCP, это сделано в главе 1. В главе 2 дано описание алгоритма предлагаемого протокола ARTCP, и его функциональных компонентов. В главе 3 приведено описание разработанной имитационной модели сети и аспекты ее объектной реализации. В главе 4 приведены результаты модельных экспериментов, дано сравнение свойств ARTCP и TCP, а также показано свойство самоподобия ARTCP трафика. Работа завершается выводами.
Принято разделять коммуникационные протоколы по степени общности задач, решаемых ими, на несколько уровней, упорядоченный набор которых образует сетевую архитектуру. Самой распространенной и универсальной сетевой архитектурой является архитектура TCP/IP [43, 1]. В рамках TCP/IP все системы в сети делятся на конечные системы, между которыми происходит информационный обмен, и промежуточные системы, не являющиеся конечными или исходными точками обмена. Конечные системы называются узлами сети, а промежуточные - маршрутизаторами.
Двусторонний поток информации между парой смежных систем в сети обеспечивается каналом, связывающим две системы. Каналы характеризуются скоростью информационного потока (пропускной способностью), задержкой передачи и вероятностью битовых ошибок. В каждой точке подключения маршрутизатора к каналу имеется буфер, в котором организуется очередь данных ожидающих отправки по этому каналу. Буферное пространство и пропускная способность (ПС) представляют собой разделяемые ресурсы сети. Если скорость прибытия информации в маршрутизатор превышает максимально возможную скорость ее отправки, то происходит перегрузка сети, выражающаяся в переполнении буферов и потерях информации.
Протокол транспортного уровня занимает важнейшее положение в любой сетевой архитектуре, в том числе и в TCP/IP, поскольку он обеспечивает надежную и эффективную передачу информации непосредственно между конечными системами сети. Для этого транспортный протокол задает согласованный набор правил поведения для участников информационного обмена. Эти правила регулируют совместный доступ узлов к разделяемым ресурсам сети, поэтому эффективность транспортного протокола определяет эффективность работы всей сети в целом. Программа, реализующая алгоритм протокола, называется объектом протокола.
Транспортным протоколом в архитектуре TCP/IP является TCP (Transmission Control Protocol) [4, 5, 6], который обеспечивает надежную двустороннюю связь с контролем скорости передачи. Источник TCP потока получает информацию от пользователя в виде последовательности битов, формирует из нее блоки конечной длины, называемые сегментами и отправляет их к TCP получателю. Получатель, принимая сегменты, формирует из них исходную последовательность и передает ее своему пользователю.
Для осуществления обмена TCP устанавливает логическое соединение между парой узлов сети, на каждом из которых исполняется алгоритм TCP. Поток сегментов по TCP соединению может проходить через упорядоченную последовательность маршрутизаторов и каналов. Пропускная способность соединения в целом ограничена минимальной из ПС каналов, через которые проходит соединение. Алгоритм управления потоком, являющийся частью TCP, стремится отправлять данные со скоростью, не превышающей меньшее из ПС соединения и скорости потребления информации получателем.
Набор соединений транспортного протокола, разделяющих общий канал, представляет собой сложную самоорганизующуюся систему в смысле Г. Хакена [101]. Поведение каждого из объектов протокола в этой системе определяется алгоритмом протокола, однако, поведение всей системы, как целого, вообще говоря, не описывается совокупностью действий ее компонентов. Каждый объект протокола стремится максимально эффективно адаптироваться к доступным ресурсам сети в условиях кооперации с другими объектами этого протокола.
На сегодняшний момент известен ряд существенных недостатков алгоритма управления потоком протокола TCP:
1. Для оценки доступной ПС алгоритм управления потоком TCP постоянно увеличивает скорость отправки сегментов, искусственно вызывая перегрузку сети. Это приводит к частым потерям пакетов и, при устойчивом переполнении буферов, к увеличению задержек сегментов в сети.
2. TCP интерпретирует потерю сегмента как признак перегрузки сети и реагирует на любую потерю данных снижением скорости передачи, что ведет к существенным ограничениям эффективности TCP в сетях, где вероятность потери сегментов из-за возникновения ошибок отлична от нуля. Это относится, в частности, ко всем беспроводным сетям.
3. Локальные неравномерности в отправке сегментов TCP приводят к повышению вероятности потери сегментов при максимальном заполнении буферов.
Устранение приведенных выше недостатков TCP является темой большого числа исследований. В работах на эту тему предлагаются разные варианты усовершенствования транспортного протокола. Большинство протоколов, предлагаемых для использования в сетях с ненулевой вероятностью битовых ошибок, не являются совместимыми с TCP и требуют введения дополнительных элементов в структуру сети, усложняя ее и нарушая основной принцип транспортного протокола, состоящий в том, что на транспортном уровне соединение устанавливается между непосредственным источником и получателем информации.
Таким образом, важнейшей задачей является разработка нового транспортного протокола в рамках архитектуры TCP/IP, который был бы более эффективен, чем TCP. Новый протокол должен быть универсальным в смысле возможности использования его как в проводных, так и беспроводных сетях, что особенно важно в свете дальнейшего развития сетевых технологий и расширения областей их применения.
В диссертации разработан новый транспортный протокол ARTCP. В среде языка C++ создан класс, полностью описывающий протокол ARTCP, который может стать основой реализации протокола. Разработана универсальная объектно-ориентированная имитационная модель для конструирования сетей с топологией любой сложности. Проведенные эксперименты работы протокола ARTCP для ряда сценариев показали, что он почти всегда превосходит стандартный протокол TCP.
1.2. Научная новизна работы
Основные научные результаты диссертации состоят в следующем:
Разработан протокол ARTCP, использующий темпоральные показатели потока в качестве входного параметра для алгоритма управления потоком и сочетающий оконный механизм контроля скорости с диспетчеризацией каждого сегмента.
Построена имитационная программная модель (ИПМ), позволяющая моделировать все компоненты сети, влияющие на функционирование транспортного протокола. ИПМ является универсальным инструментом для исследования взаимодействий в сетях и позволяет строить топологические схемы большой сложности.
По данным модельного эксперимента в ИПМ определены важнейшие характеристики ARTCP, а также показано наличие свойства самоподобия у трафика ARTCP. Результаты эксперимента позволяют утверждать, что ARTCP превосходит TCP по основным критериям.
1.3. Практическая ценность результатов
Практическая ценность предлагаемой схемы управления потоком очень высока. Во- первых, протокол ARTCP не доводит сеть до состояния перегрузки для выявления доступной максимальной пропускной способности, поэтому потери пакетов в стабильном состоянии работы сети вообще не происходят. Таким образом, повышается эффективность использования сетевой инфраструктуры, что дает прямой экономический эффект.
Во-вторых, протокол ARTCP не интерпретирует потерю пакета как признак перегрузки сети, что позволяет эффективно применять его в каналах с ненулевой вероятностью ошибок. В настоящее время развитие инфраструктурной части сетей сориентировано в немалой степени именно на беспроводные системы, поэтому ARTCP может найти в таких сетях широкое применение.
В-третьих, средняя длина очередей в маршрутизаторах сети при использовании ARTCP минимальна, поскольку ARTCP не только адаптирует скорость отправки пакетов в сеть к максимальной скорости обслуживания потока, но и обладает механизмом компенсации перегрузки. Таким образом, среднее время транзитной задержки пакетов в сети снижается.
В-четвертых, алгоритм ARTCP не противоречит созданию совместимой с TCP реализации. Поэтому внедрение ARTCP может происходить постепенно, в первую очередь на тех узлах, где применение нового протокола наиболее выгодно.
1.4. Апробация работы
По результатам, полученным в ходе работы, были сделаны доклады на международном семинаре IEEE «Интернет: технологии и сервисы», а также на семинарах ЯрГУ: "Моделирование и анализ информационных систем", "Нейронные сети". Новый протокол вызвал большой интерес и одобрение со стороны экспертов в области телекоммуникаций.
1.5. Содержание работы
Для создания алгоритма нового протокола и разработки его имитационной модели необходимо рассмотреть все компоненты транспортного протокола. В части 1.7 введения (коммуникационные транспортные протоколы), даны важнейшие определения, принципы и алгоритмы, которые используются далее по тексту. В части 1.8 (управление потоками в коммуникационных системах) рассмотрены работы в области управления скоростью передачи в распределенных сетях построенных на принципе коммутации пакетов. Самоподобие сетевого трафика и важнейшие работы в этой области описаны в части 1.9
(свойство самоподобия сетевого трафика) введения. На основе типичных задач и путей решения проблемы управления потоками можно осуществить постановку задачи - создание протокола, свободного от недостатков TCP, это сделано в главе 1. В главе 2 дано описание алгоритма предлагаемого протокола ARTCP, и его функциональных компонентов. В главе 3 приведено описание разработанной имитационной модели сети и аспекты ее объектной реализации. В главе 4 приведены результаты модельных экспериментов, дано сравнение свойств ARTCP и TCP, а также показано свойство самоподобия ARTCP трафика. Работа завершается выводами.
1. В настоящей работе дано описание нового транспортного протокола ARTCP, отличающегося от стандартного протокола TCP в нескольких основных аспектах. ARTCP в качестве сигнала о перегрузке в сети использует не потерю сегмента, а темпоральные характеристики потока. Сегменты ARTCP отправляются в сеть не в виде всплеска, а разделенные заданными временными интервалами. Измерение значения межсегментных интервалов у получателя позволяет оценить значение доступной ПС. ARTCP определяет доступную ПС соединения, не доводя сеть до состояния перегрузки, поэтому средняя длина очередей существенно снижается, и устраняются связанные с этим потери сегментов. Благодаря механизму диспетчеризации сегментов их отправка в сеть происходит без всплесков, более равномерно. Поэтому, во-первых, снижается потребность в буферном пространстве маршрутизаторов, а во-вторых, уменьшается разброс времени задержки сегментов в сети. В работе приведено подробное описание алгоритма протокола ARTCP и создана его модельная реализация в виде класса на языке C++.
2. Для исследования свойств протокола ARTCP создана универсальная имитационная программная модель, позволяющая изучать процессы, происходящие в сети с точки зрения транспортного протокола. Эта модель, построенная с помощью объектно-ориентированных методов на языке С++, дает возможность конструировать топологические схемы большой сложности и задавать любые условия их функционирования. Имитационная модель состоит из набора топологических элементов сети и объектов протоколов. В модели полностью осуществлена реализация протокола ARTCP и сервиса сети с коммутацией пакетов.
3. Результаты модельного эксперимента, проведенного на имитационной модели, показывают существенное превосходство адаптивного алгоритма управления скоростью потока протокола ARTCP по сравнению с TCP. Особенно хорошо ARTCP должен функционировать в беспроводных сетях. Обнаруженное у трафика моделируемой сети, в которой функционирует протокол ARTCP свойство самоподобия, во-первых, свидетельствует о том, что модель хорошо воспроизводит свойства реальных сетей, а во- вторых, служит основанием использования именно метода модельного эксперимента для исследования нового протокола
2. Для исследования свойств протокола ARTCP создана универсальная имитационная программная модель, позволяющая изучать процессы, происходящие в сети с точки зрения транспортного протокола. Эта модель, построенная с помощью объектно-ориентированных методов на языке С++, дает возможность конструировать топологические схемы большой сложности и задавать любые условия их функционирования. Имитационная модель состоит из набора топологических элементов сети и объектов протоколов. В модели полностью осуществлена реализация протокола ARTCP и сервиса сети с коммутацией пакетов.
3. Результаты модельного эксперимента, проведенного на имитационной модели, показывают существенное превосходство адаптивного алгоритма управления скоростью потока протокола ARTCP по сравнению с TCP. Особенно хорошо ARTCP должен функционировать в беспроводных сетях. Обнаруженное у трафика моделируемой сети, в которой функционирует протокол ARTCP свойство самоподобия, во-первых, свидетельствует о том, что модель хорошо воспроизводит свойства реальных сетей, а во- вторых, служит основанием использования именно метода модельного эксперимента для исследования нового протокола



