close

Вход

Забыли?

вход по аккаунту

?

Lihttsinder Analiz trafika multiservisnih setej

код для вставкиСкачать
Федеральное агентство связи
Федеральное государственное образовательное бюджетное
учреждение высшего профессионального образования
«Поволжский государственный университет
телекоммуникаций и информатики»
Б. Я. Лихтциндер
Анализ трафика
мультисервисных сетей
Монография
Самара,
ПГУТИ
2015
ББК 32. 883
УДК 621.396.2
Лихтциндер Б.Я.
Анализ трафика мультисервисных сетей
Монография.- Самара.: ПГУТИ 2015. – .164. с.
Рассматриваютсяхарактеристики трафика сетей связи нового поколения.(NGN).
Показаны отличительные особенности указанного трафика и рассмотрены модели обслуживания трафика с непуассоновскими потоками.
Предлагаются интервальные методы анализа очередей пакетов трафика
общего вида, основанные на определении числа заявок на интервалах
обслуживания. Рассмотрены классы и механизмы управления трафиком, а также средства мониторинга и анализаторы протоколов трафика
мультисервисных сетей.
Материалы книги предназначены для инженерно-технических работников специализирующихся в области сетей связи, а также преподавателей, аспирантов, магистрантов и студентов старших курсов соответствующих специальностей.
стр.164,Ил . библ. Назв.10.
Рецензент:
2
Тарасов В. Н.
ГОУВПО «Поволжский государственный университет телекоммуникаций и информатики»
(ПГУТИ)
Содержание
1.
2.
3.
4.
5.
Сети нового поколения (NGN)
1.1
Основные понятия и термины
1.2
Классы сервиса и приоритеты обслуживания трафика
1.3
Управление процессом передачи сообщений
1.4
Повышение загрузки ресурса сети
Характеристики трафика
2.1
Уровни анализа трафика в мультисервисных сетях
2.2
Основные параметры пакетного трафика
2.3
Распределения вероятностей
2.4
Взаимные корреляционные моменты
Пуассоновские потоки заявок
3.1
Непрерывные и дискретные случайные
величины
Разделение канального ресурса во времени
4.1
Обслуживание пуассоновских потоков
СМО с непуассоновскими потоками
5.1
Особенности мультисервисного трафика
5.2
Непуассоновские потоки
5.3
Функция Г-распределения интервалов
между заявками
5.4
Квазипуассоновское распределение вероятностей числа заявок
5.5
распределение вероятностей числа
заявок на интервале
5.6
Гиперпуассоновское распределение вероятностей числа заявок на интервале
5.7
Гипер - распределение вероятностей
числа заявок на интервале
8
8
10
12
14
19
19
21
23
25
27
27
34
34
40
40
42
43
47
50
51
54
3
6.
7.
8.
9.
4
Очереди в одноканальных системах передачи с потоками заявок общего вида
6.1
Последовательное распределение постоянных интервалов времени передачи
6.2
Средняя доля недообслуженных заявок
6.3
Дообслуживание очередей
6.4
Уравнение баланса
6.5
Аппроксимация
6.5.1 Аппроксимация степенной зависимостью
6.5.2 Полиномиальная аппроксимация
6.6
Мультиплексирование потоков
6.6.1 Бесприоритетное обслуживание
6.6.2 Мультиплексирование групповых
потоков
6.7
Относительные приоритеты
Оценка канального ресурса на уровне установления соединения
Механизм управления трафиком
8.1
Классы трафика
8.2
Службы АТМ
8.3
Форматы ячеек АТМ
8.4
Механизмы управления потоком
8.4.1 Формирование трафика
8.4.2 Контроль приоритетов
8.5
Контроль потока ABR
8.6
Механизмы отбрасывания ячеек
8.7
Методы сброса пакета
Протоколы
9.1
Cетевая модель TCP/IP
9.2
Уровень доступа к сети
58
58
60
62
63
66
69
70
71
71
73
74
76
81
81
84
85
86
89
90
91
93
94
95
95
96
Управление логическим каналом на подуровне LLC (УЛК)
9.2.2
Управление на подуровне доступа к среде УДС (МАС)
9.3
Протоколы межсетевого уровня
9.3.1
Протокол IP
9.4
Протоколы транспортного уровня модели TCP/IP
9.4.1
Протокол UDP
9.4.2
Поля UDP дейтограммы
9.4.3
Инкапсуляция UDP
9.4.4
Протокол TCP
9.5
Протоколы прикладного уровня
9.5.1
HTTP – протокол передачи гипертекстов
9.5.2
FTP–протокол
9.5.3
SMTP-протокол
10. Средства мониторинга и анализа трафика
10.1 Системы мониторинга
10.2 Анализаторы протоколов
10.3 Описание программы WireShark
10.3.1 Установка программы
10.3.2 Первый запуск и начало работы
с программой
10.3.3 Настройка программы и запуск
захвата трафика
10.3.4 Главное рабочее окно программы
10.3.5 Фильтр. Построение фильтров
10.3.6 Поля и списки
Список дополнительной литературы
9.2.1
98
101
105
107
115
116
118
119
121
124
125
126
128
131
131
137
140
141
144
146
151
153
157
164
5
1. Сети нового поколения (NGN)
1.1
Основные понятия и термины
Развитие сетей связи в перспективе будет происходить в
рамках реализации основных положений концепции сетей
следующего поколения NGN (Next Generation Network).
Она формирует правила построения сетей связи, обеспечивающих предоставление неограниченного набора услуг с
заданными характеристиками качества. [1]
Концепция NGN родилась не на пустом месте. Ее основные положения обобщают опыт реализации наиболее
успешных телекоммуникационных проектов, главным образом, сети Интернет и сетей подвижной связи.
Необходимо отметить следующие важные положения.
[1]
Изменение схемы формирования сетей инфраструктуры. Используемая ранее монолитная сетевая инфраструктура становится многослойной. Каждый слой отвечает за решение определенного круга.
Трансформация понятия услуги. Названия отдельных технологий и услуг обезличиваются – пользователю
необходим один вид сервиса под названием «соединение с
сетью», подразумевающий возможность получения мультимедийной информации в разнообразных сочетаниях,
определяемых абонентом, в соответствии со своими индивидуальными запросами по качеству и скорости.
Доминирующая роль протокола IP. Дешевизна решений на базе IP при интеграции услуг и пользовательских групп.
Упрощенная схема многоуровневой сетевой инфраструктуры, отражающая основные положения концепции
NGN, показана на рис. 1.1. [1]
6
Рис. 1.1 Схема сетевой инфраструктуры перспективных
сетей связи
Можно рассматривать два сценария построения сети:
построение сети с избытком передаточного ресурса
минимум контроля за сетью.
При реализации второго сценария применяются более
совершенные средства контроля и управления за процессом передачи информации. Требуемые характеристики качества работы сети достигаются в результате дифференцированного обслуживания пользователей, в соответствии с
заявленными показателями. Канальный ресурс распределяется более эффективно.
Расширение видов услуг. Услуги машина-машина, сенсорные сети, мультимедийность трафика приведут к развитию второго сценария.
Отмеченные тенденции делают актуальными разработку
средств оптимизации планирования сетевой инфраструктуры на базе внедрения более совершенных средств контроля за процессом передачи информации.
7
1.2
Классы сервиса и приоритеты обслуживания
трафика
Требования к условиям передачи естественным образом
вытекают из характера предоставляемых услуг. Соответствующий перечень классов сервисов выглядит следующим образом.
Класс 0 – потоки реального времени, отличающиеся высокой степенью интерактивности и чувствительные к вариации задержки (высококачественная пакетная телефония
и видеоконференц-связь).
Класс 1 – потоки реального времени, интерактивные и
чувствительные к вариации задержки (пакетная телефония,
видеоконференц-связь).
Класс 2 – транзакции данных, отличающиеся высокой
степенью интерактивности (сигнализация).
Класс 3 – транзакции данных, интерактивные.
Класс 4 – потоки, чувствительные к потере информации
в процессе ее передачи по сети (массивные данные, потоковое видео).
Класс 5 – традиционные приложения IP – сетей с характеристиками передачи по умолчанию.
В таблице 1 [1] предоставлены верхние границы характеристик доставки IP – пакетов для каждого класса сервиса.
Здесь сервисы делятся в зависимости от характеристик
передачи пакетов. С точки зрения восприятия пользователей трафик делится на:
трафик реального времени (голосовая связь, видеоконференция)
трафик интерактивной передачи данных (обмен вебстраницами)
трафик, терпимый к задержкам (передача электронной почты)
8
При этом используются характеристики:
доля потерянных пакетов, определяемая как доля
IP-пакетов, отброшенных из-за блокировки в процессе их
передачи по сети;
доля отказов в установлении соединения, определяемая как доля заявок, составляющих рассматриваемый поток, для которых механизм управления допуском отказал в
резервировании канального ресурса в количестве, необходимом для обслуживания поступившей заявки;
скорость передачи информации пользователя, определяемая как отношение объема успешно переданной информации к периоду наблюдения и измеряемая в битах в
секунду.
Таблица 1.
Характеристики Классы качества передачи информацидоставки IP –
онных потоков
пакетов
0
1
2
3
4
5
Задержка доНе
100мс 400мс 100мс 400мс
1с
ставки IPопр.
пакета, IPTD
Вариация задержки доставНе
Не
Не
Не
50мс
50мс
опр.
опр.
опр.
опр.
ки IP-пакета,
IPDV
Для потерянных
Не
1*10-3 1*10-3 1*10-3 1*10-3 1*10-3
IP- пакетов,
опр.
IPLR
Доля IP- пакетов, переданНе
1*10-4 1*10-4 1*10-4 1*10-4 1*10-4
опр.
ных с ошибкой,
IPER
9
Для обеспечения указанных характеристик, к обслуживанию трафика различных классов предъявляются различные требования.
Для трафика, допускающего малые задержки, необходимо установить некоторые преимущества, называемые
«приоритетами». Приоритеты заявок характеризуются целыми положительными числами, причем более высокому
приоритету ставится в соответствие меньшее число.
Если приоритеты учитываются только в моменты выбора заявки, то их называют относительными. Если же выбранная заявка наивысшего приоритета прерывает уже
начавшееся обслуживание заявки более низкого приоритета, то такая дисциплина обслуживания называется обслуживание с абсолютным приоритетом.
В телекоммуникационных сетях обычно используется
обслуживание с относительным приоритетом.
Для заявок каждого приоритета образуется отдельная
очередь. Заявка из очереди, соответствующей более низкому приоритету, выбирается на обслуживание лишь в
случае, когда все очереди более высоких приоритетов оказываются пустыми.
1.3 Управление процессом передачи сообщений
Одной из важнейших функций сети, направленной на
повышение загрузки канального ресурса и улучшение качества обслуживания абонента, является управление процессом передачи сообщений. Оно реализуется в разных
формах и зависит от степени детализации, используемой
при анализе информационных потоков. Перечень возможных решений показан в таблице 2 с указанием шкалы времени, на которой соответствующее решение принимается
[1].
10
Таблица 2.
Управленческие решения, принимаемые сетью при организации процесса передачи сообщений,
в зависимости от шкалы времени.
Управляющее решение
Отброс или понижение качества обслуживания для ячеек или пакетов,
не удовлетворяющих принятому заранее соглашению по трафику
(policing)
Задержка передачи для части ячеек
или пакетов, направленная на улучшение характеристик качества передачи
(shaping)
Организация и планирование очередей для ячеек или пакетов
(queueing and scheduling)
Контроль доставки пакетов или ячеек при динамическом изменении
потребляемого ресурса и уменьшения блокировок
(flow control)
Контроль приема заявок на выделение канального ресурса с целью
пропуска пользовательского трафика, маршрутизация трафика
(call admission control, routing)
Принятие управляющих решений на
сети для улучшения характеристик
обслуживания
(network management)
Принятие решений по изменению
трафиков
(pricing policy)
Шкала времени
Время между моментами
поступления ячеек, пакетов
Время распространения
сигнала в прямом и обратном направлениях
Время между последовательными поступлениями заявок
Минуты, часы, дни
Месяцы
11
Передача производится пакетами (или ячейками)
без установления соединения
с установлением виртуального соединения.
В этом случае требуется контроль за установлением соединения.
Одной из важнейших задач, относящихся к управлению
сетью, является выполнение действий, направленных на
устранение блокировок.
Избыток трафика, который ввел сеть в состояние перегрузки, можно:
заблокировать, т.е. удалить соответствующие пакеты из передачи (как правило, данное действие приводит к
повторной передачи заблокированных пакетов, что только
усугубляет ситуацию перезагрузки);
доставить адресату с худшими показателями качества, например, за большее время или с большей долей потерянных пакетов;
доставить адресату за большую стоимость.
Последнее из упомянутых действий выглядит предпочтительней, поскольку оно не уменьшает доход, а также не
ухудшает значения показателей обслуживания.
1.4 Повышение загрузки ресурса сети
Понятно, что сети связи не рассчитаны на одновременный запрос всех потенциальных пользователей. Случайный характер поступления заявок, а также возможности
пакетных технологий и механизмов динамического распределения канального ресурса позволяет в десятки, а то и
более число раз уменьшить потребности в ресурсе, по
сравнению с его потенциально необходимым значением.
При этом сохраняются требуемые нормы качества обслуживания абонентов. Приведем примеры реализации схем,
повышающих загрузку канального ресурса сети. [1]
12
Допустим, некая фирма имеет центральный офис и достаточно удаленный филиал, сотрудникам которых по роду своей деятельности часто приходится обмениваться
между собой информационными сообщениями. Перечень
сервисов, доступных каждому пользователю включает в
себя: голосовую связь, видеоконференц-связь и обмен
файлами. Предположим, что число пользователей перечисленных услуг составляет 1000 для центрального офиса
и такое же количество для филиала. Дадим характеристику
и приведем значения параметров информационных потоков, порожденных заказом перечисленных сервисов.
a) Голосовая связь. Пиковая интенсивность передачи
информационного потока для одного соединения равна 64
Кбит/с.
b) Видеоконференц–связь. Параметры информационного потока сильно зависят от используемого кодека. Для
определенности будем считать, что используется кодек
Н.263, обеспечивающей среднее качество предоставления
соответствующей услуги. Пиковая интенсивность передачи информационного потока для одного видеосоединения
с данным кодеком составляет 320 кбит/с.
c) Обмен файлами. Для обеспечения комфортной организации работы по обмену файлов, содержащих, как
правило, элементы мультимедиа, примем среднюю скорость передачи информационного потока для одного соединения равного 1 Мбит/с.
Для обслуживания потребностей сотрудников в обмене
информацией, необходимо арендовать или проложить линию связи, соединяющую оба офиса.
Если отталкиваться от потребностей каждого пользователя,
то
необходима
линия
со
скоростью
С=1000*(64+320+1000)кбит/с≈1400Мбит/с.
При мультиплексировании со статистическим уплотнением, требуется пропускная способность в 20 раз меньше.
13
Достичь указанного эффекта можно, если процесс выделения канального ресурса выполнить с учетом особенностей совместного прохождения заявок.
Будем считать, что заявки на получение каждого из трех
сервисов распределены равномерно во времени. При этом
в час наибольшей нагрузки каждый абонент тратит на голосовую связь в среднем 10 мин, на видеоконференц-связь
– 10 мин и на обмен файлами – 5мин.
Коэффициенты загрузки каждого пользователя i :
10 мин
0,166 эрл .
60 мин
10 мин
Для видео
0,166 эрл .
2 60 мин
5 мин
Для данных
0, 083эрл .
3 60 мин
Для голоса
1
Общий поток загружает каналы:
голос - 166 эрл.,
видео - 166 эрл.,
данные - 83 эрл.
Общая средняя пропускная способность примерно в 10
раз меньше, чем потенциальная.
Сср (166 эрл * 64кбит / с 166 эрл * 320кбит / с
83эрл *1000кбит / с ) 10624кбит / с 53120кбит / с
83000кбит / с 146744кбит / с 146, 7 Мбит / с
Примем, что максимальная доля отказов в доступе к
каждому из трех сервисов не превосходит 3%. Тогда, используя результаты классической теории телетрафика
(формулу Эрланга), получаем, что для обеспечения доступа к перечисленным сервисам с заданным качеством достаточно:
для голосовой связи – 93 канала по 64 Кбит/с,
для видеоконференц-связи – 93 канала по 320 Кбит/с
для обмена файлами – 50 каналов по 1 Мбит/с
14
общие потребности в ресурсе 85,7 Мбит/с.
Это примерно в 16 раз меньше, чем потенциальное решение. Отмеченный выигрыш достигнут за счет статистического мультиплексирования на шкале времени, соответствующей моментам поступления заявок. Приведенные
оценки найдены в предположении, что указанные сервисы
предоставляются по отдельным сетям.
С
93эрл * 64кбит / с 93эрл * 320кбит / с
эф
50 эрл *1000кбит / с 6144кбит / с 29760кьит / с
50000кбит / с 85, 9 Мбит / с
Выигрыш почти в 16 раз по сравнению с потенциальным решением.
Дополнительное уменьшение потребностей в канальном
ресурсе может быть получено при переходе на пакетную
технологию передачи информации.
Если пакеты допускают небольшие задержки, то за счет
сохранения пакетов в буферной памяти можно повысить
пропускную способность.
1) Динамическое распределение пропускной способности
2) Приоретизация голосового трафика.
Для обеспечения качества передачи голосовой информации, сравнимого с качеством, достижимым при использовании технологии коммутации каналов, достаточно, чтобы доля потерянных пакетов не превосходила значения
0,01%. Соответствующий показатель может быть получен
уже при скорости 30 кбит/с. Аналогично, для видеоконференц-связи достаточно, чтобы доля потерянных пакетов не
превосходила 0,1%. Данный показатель для кодека Н.263,
при среднем качестве предоставления рассматриваемой
услуги, достигается при скорости в 105 кбит/с.
15
С пак
93эрл * 30кбит / с 93эрл * 105кбит / с
50 эрл *1000кбит / с 2790кбит / с 9765кбит / с
50000кбит / с 62555кбит / с
Выигрыш, по сравнению с Сэф получается еще в 1,4 раза, т.е. общий выигрыш, приблизительно, в 20 раз. Полученные единицы объединим в таблицу 3 [1].
Таблица 3.
Пропускная
способность
максимальная
средняя
эффективная
с пакетной
коммутацией
обозначение
голос
мультимедиа
данные
общая
См, кбит/с
64
320
1000
1384
Сс, кбит/с
Сэф,
кбит/с
16,6
53,1
83
146,7
6,1
29,7
50
85,8
2,7
9,7
50
62,5
Спак,
кбит/с
Все это свидетельствует о необходимости изучения
особенностей мультисервисного трафика.
16
2. Характеристики трафика
2.1.
Уровни анализа трафика в мультисервисных
сетях
Потоки заявок на использование канального ресурса образуют трафик мультисервисных сетей. В зависимости от
принятой модели, в качестве заявок могут рассматриваться
события поступления отдельных пакетов, поступление
групп пакетов, объединенных в кадры, заявки на установление соединения.
Рассмотренная на примере сети АТМ [9] иерархия временных уровней анализа информационных потоков, схематично показана на рис. 2.1. Приведенные обозначения
имеют следующий смысл:
Тн – длительность соединения,
Тi – длительность интервала времени между отдельными соединениями,
Тs – длительность интервала времени отсутствия поступления ячеек,
Тв – длительность интервала сгущения поступления
ячеек,
Та – длительность интервала времени между последовательными поступлениями ячеек,
Тс – длительность интервала времени передачи ячеек.
Длительности интервалов времени между событиями на
каждом из уровней различаются на несколько порядков.
Например, в случае передачи речи с использованием технологии АТМ, длительность соединения обычно измеряется сотнями секунд, длительность интервала сгущения в поступлении ячеек имеет порядок сотен миллисекунд, а время передачи ячеек при скоростях несколько сотен мегабит
в секунду уже имеет порядок единиц микросекунд.
17
Рис. 2.1 Иерархия детальности анализа информационных
потоков в сетях на базе передачи технологии АТМ
На уровне пакетов поступающая информация представляет собой дискретный поток, порождаемый каждым из
источников с интенсивностью на несколько порядков
меньше, чем скорость используемой для передачи цифровой линии. На этом уровне большинство источников информации порождают локально периодический поток. За
периодом генерации пакетов, обычно происходящим с
максимальной для рассматриваемого источника скоростью, следует период времени, когда пакеты не поступают.
Типичная задача, которая решается на уровне анализа
поведения пакетов, связана с оценкой размеров буфера при
мультиплексировании нескольких входных потоков. Соответствующая модель АТМ – мультиплексора схематично
показана на рис. 2.2.
18
Рис. 2.2 Схема модели телетрафика, используемая для
оценки размеров буфера при анализе процессов мультиплексирования информационных потоков, рассматриваемых на уровне поступления ячеек
2.2.
Основные параметры пакетного трафика
Будем считать, что процесс передачи информации продолжается в течение некоторого отрезка Т. это может быть
сеанс телефонного разговора, сессия видеоконференции
или передача данных от ЭВМ. Передача информации является статистическим процессом. При пакетной передаче
основной характеристикой трафика служит скорость передачи B(t)[бит/с] [9].
Различают:
B p max B(t )
пиковую скорость:
1T
Bm
B( t )dt
среднюю скорость:
T0
1
BЭ
ln exp s B ,
эффективную скорость:
i
s
где Bi - скорость при i измерении на интервале . Если
скорость Bi=B постоянная, то BЭ=B [бит/с].
19
Соотношение между пиковой и средней скоростями
называют коэффициентом пачечности (2.1)
Bp
,
kB
(2.1)
Bm
где Bр - пиковая скорость (см. рис.2.3).
Рис. 2.3 Изменение скорости передачи B(t)
Пакетный трафик, на примере передачи ячеек АТМ, характеризуется следующими параметрами:
- пиковая скорость (PCR- Peak Cell Rate), измеряемая
числом ячеек, генерируемых источником за единицу времени ( секунду)
- поддерживаемая скорость (SCR – Sustainable Cell
Rate), которая является скоростью передачи пачки ячеек
максимального размера за максимальный интервал времени между началами соседних точек Ti . SCR=MBS/Ti
- максимальный размер длины пачки, измеряемый в
числе ячеек (MBC – Maximum Burst Size)
- интервал между смежными ячейками Т [с]
Очевидно, что SCR=MBS/T [яч/с], а PCR= 1/T [яч/с]
- максимальная длительность пачки TB=(MBS-1)T [с].
Указанные параметры, характеризующие основные
свойства пакетного трафика, показан на рис.2.4.
20
Тс
Ti
MBS
Тв
T
t
Рис. 2.4 Параметры пакетного трафика
Величины Тв и Тс являются случайными и характеризуются соответствующими распределениями вероятностей.
Средняя интенсивность передачи ячеек определяется
соотношением
1 TB
T Tc
Где TB , TC - математические ожидания.
2.3.
Распределения вероятностей
Пакетный трафик может рассматриваться как случайный процесс, представляющий поток заявок. Интервалы i
между соседними заявками являются случайной величиной. Плотность распределения вероятностей указанных
интервалов W( i) для стационарного процесса не зависит
от времени. Функция распределения вероятностей (2.2)
представляет собой интеграл (2.3)
F ( ) P(
)
(2.2)
F ( )
W ( )d
(2.3)
0
В соответствии с законом распределения вероятностей,
для случайной величины i могут быть определенно математическое ожидание , второй начальный момент 2 и
21
дисперсия D . Однако, случайный процесс заявок может
также быть характеризован интенсивностью поступления
заявок в любой момент времени ( ) [заявок/с].
Плотность распределения вероятностей указанной случайной величины W ( ) для стационарного процесса не зависит от времени, а функция распределения вероятностей
(2.4) представляет собой интеграл (2.5).
1
1
F ( ) P(
)
(2.4)
1
1
(2.5)
W ( )d .
F ( )
0
В соответствии с законом распределения вероятностей
для случайной величины (t) могут быть определены математическое ожидание, второй начальный момент и дисперсия.
С величиной интенсивности (t) непосредственно связана случайная величина mi( ), представляющая число заявок, поступающих в течение интервала времени , непосредственно следующего за моментом времени ti
ti
( t )dt [заявок], m i
mi ( )
0,1...
(2.6)
ti
Для указанной случайной величины также могут быть
определены распределение вероятностей, математическое
ожидание m( ) , второй начальный момент m 2 ( ) и дисперсия Dm( ). Для стационарного процесса указанные величины не зависят от моментов времени ti, в которые
начинается отсчет интервала .
Для простейшего потока, в котором интервалы между
заявками распределены экспоненциально, вероятности
P(mi) подчиняются закону Пуассона.
22
2.4.
Взаимные корреляционные моменты
Теперь, разделим весь рассматриваемый интервал времени T на N одинаковых интервалов, длительностью .
Порядковый номер интервалов обозначим через i. Вследствие ординарности потоков заявок, в течение каждого i-го
интервала времени поступает целое число заявок mi( )
( i =0,1,2…). Число заявок, поступающих в течение времени
, является дискретной случайной величиной с математическим ожиданием m( ) , вторым начальным моментом
m 2 ( ) и дисперсией Dm( ).
Допустим, что в течение каждого i-го интервала времени в системе массового обслуживания (СМО) находится
qi( ) заявок, ожидающих в очереди. Длина очереди также
является дискретной случайной величиной с математическим ожиданием q( ) .
Обозначим через qi-j( ) элемент последовательности
случайных чисел, сдвинутый влево относительно qi( ) на j
промежутков времени .
Определим вторые взаимные начальные моменты последовательностей mi( ) и qi-j( ), как математические ожидания произведений их соответствующих элементов.
qi j ( )mi ( ), i, j 0,1, 2...
(2.7)
qi j m i ( )
Вторые взаимные центральные моменты указанных последовательностей, называемые корреляционными моментами или ковариацией, определяются, как математические
ожидания произведений центрированных значений их элементов.
qi j mi
( ) [qi j ( ) q( )] [mi ( ) m( )], i, j
0,1, 2...
(2.8)
Между указанными моментами существует известное
соотношение
23
qi j m i
( )
qi j mi
( ) q( ) m( ).
(2.9)
В дальнейшем, мы покажем, что взаимные корреляционные связи оказывают существенное влияние на размеры
очередей.
24
3. Пуассоновские потоки заявок
3.1.
Непрерывные и дискретные случайные величины
Рис. 3.1 Случайный поток заявок
- непрерывная случайная величина, которая может
принимать любые (в частном случае) положительные значения.
Рис. 3.2 Гистограмма
Предположим, что проведено N измерений величины
,
) показывает, сколько раз инk k=1,2..N.. Число n( ,
тервал времени k попал в интервал от до ( + ).
25
Величина n( ,
)/N показывает долю измерений, в которых величина k находится в пределах интервала
). В случае стационарного процесса, при увеk ( +
личении числа измерений, это отношение стремится к постоянному значению, определяющему вероятность попадания величины k в интервал
).
k ( +
n( , )
P ( , ) lim
,
(3.1)
N
N
Определим плотность вероятности, приходящуюся на
единицу интервала
. Не трудно заметить, что величина
n( ,
) уменьшается пропорционально уменьшению интервала
. Поэтому, плотность распределения вероятностей стремится к своему предельному значению (3.2).
P( , )
W ( ) lim
,
(3.2)
Вероятность того, что
деления вероятностей (3.3).
F( )
P (0
)
определяет функцию распре-
W ( )d ,
(3.3)
0
Если поток заявок представленных на рис. 3.1 является
простейшим (удовлетворяется условие стационарности и
отсутствия взаимного влияния заявок), то плотность распределения интервалов между соседними заявками определяется соотношением (3.4), где выражение (3.5) - математическое ожидание (первый начальный момент интервалов между заявками), (3.6) - второй начальный момент,
(3.7) - D - дисперсия случайной величины .
Для простейшего потока заявок справедливо соотношение (3.8).
26
1
W ( )
e
(3.4)
,
W( ) d
e d
0
0
xe x dx
(3.5)
1
0
2
W ( )
2
1
d
0
2
0
2
x
x e dx
2
e
2
d
(3.6)
2
0
2
2
2
D
D
2
1
2
(3.7)
(3.8)
Величина , обратная , представляет среднее число
заявок, поступающих в единицу времени, и называется параметром интенсивности потока.
Поток, представленный на рис. 3.1 можно охарактеризовать другой случайной величиной - n( ), которая представляет случайное число заявок, поступающих в течении
постоянного времени . Для стационарного потока, расположение интервала на оси времени не имеет значения.
Величина n( ) является дискретной, ni( )=0,1,2 целые числа. На рис. 3.3 ось времени разбита на равные интервалы
и указаны числа заявок ni( ), попавшие в указанные интервалы.
27
Рис. 3.3
Интервалы, содержащие одинаковые числа заявок объединяются в группы и определяются числа элементов в
каждой группе. Так, например, группа, содержащая по 3
заявки, включает 4 элементарных интервала , а группа,
содержащая 4 заявки, состоит из двух элементов. Группы,
содержащие по 5 и более заявок, отсутствуют, т.е. содержат 0 элементов.
Числа заявок ni( ), поступивших за интервалы времени и числа ki( ) в каждой из групп показаны в таблице 4.
Таблица 4.
Число элементов ki( ) 1 1 2 4 2 0 0 0 …
в группе
Число заявок на ni( ) 0 1 2 3 4 5 6 7 …
интервале
На рис.3.4 показана соответствующая гистограмма
Рис. 3.4 Гистограмма
28
Обозначим суммарное число элементов, содержащееся
во всех группах, через K( ) и назовем его нормирующим
коэффициентом.
ki ( ) ,
K( )
(3.9)
i 1
Вероятности поступления в течении интервала времени
ровно n( ) заявок, определяются соотношением
Pn( )=kn( )/K( ). В рассматриваемом интервале K( )=10, а
соответствующее распределение вероятностей показано на
рис. 3.5.
Рис. 3.5 Распределение вероятностей числа заявок
на интервале
Очевидно, что сумма значений всех вероятностей равна
единице.
Функция распределения вероятностей Fn( ) определяет
вероятность того, что число заявок i поступивших в течение интервала времени , окажется меньше или равно n.
n
Fn ( )
Pi ( ) ,
Pi n ( )
(3.10)
i 1
Естественно, что указанная вероятность, при достаточно
большом значении числа заявок n, стремится к единице.
29
Для случайной переменной n( ) определим математическое ожидание n( ) , второй начальный момент n2 ( ) и
дисперсию Dn( ).
n( )
iPi ( )
n2 ( )
i 2 Pi ( )
Dn ( ) n2 ( ) n( )2
i 1
i 1
Для распределения вероятностей, представленного на
рис. 3.5:
Dn ( ) 1, 45 .
n2 ( ) 7, 7
n( ) 2, 5
Для простейшего потока, имеющего экспоненциальное
распределение интервалов между заявками, распределение
вероятностей Pn( ) подчиняется закону Пуассона.
n
n( ) e
n!
Pn ( )
n( )
(3.11)
Где n( ) - математическое ожидание числа заявок на
интервале .
Не трудно показать, что для закона Пуассона выполняется равенство (3.12) , то есть, отношение дисперсии к математическому ожиданию равно единице.
(3.12)
Dn ( ) n( )
Если, в течении интервала времени , в среднем поступает n( ) заявок, то средний интервал между заявками
определяется, как (3.13), а параметр интенсивности потока
(3.14) для потока любого вида.
n( )
,
m( )
(3.13)
,
(3.14)
При этом, закон Пуассона может быть представлен в
обычном виде
30
Pn ( )
vn 2 ( t )
( n) n e
n!
Dn ( )
n( )
2
(3.15)
,
1
,
(3.16)
n( )
=1,
(3.17)
Dn ( )
С учетом обозначения (3.16), значение vn2( ) уменьшается обратно увеличению интервала времени , а соотношение (3.17) всегда справедливо.
31
4. Разделение канального ресурса во времени
4.1.
Обслуживание пуассоновских потоков
Длительность занятия канального ресурса на передачу
информации, относящейся к одному соединению, определяется статистическими свойствами источника трафика и
используемой дисциплиной распределения свободного ресурса.
Существует две модели занятия канального ресурса:
статическая и динамическая. В статической модели продолжительность случайного времени занятия ресурса
определяется выбранной функцией распределения и не зависит от процесса передачи информации в данном соединении и от степени загрузки рассматриваемого сегмента
сети. В динамической модели, напротив, длительность
времени занятия канального ресурса увеличивается или
уменьшается в зависимости от уровня загрузки сети и
определяется используемыми механизмами контроля QoS.
Динамический режим может, например, осуществляться
введением приоритетов обслуживания для заявок различного типа, когда канальный ресурс предоставляется заявками более высоких приоритетов, а низкоприоритетные
заявки ожидают своей очереди.
В дальнейшем, более детально мы рассмотрим модели,
характеризующие поступление пакетного трафика от различного типа услуг, на уровне доступа [1].
Допустим, что оператор выделяет некоторому коллективному абоненту, для оказания K различных типов услуг
(k=1…K), канальный ресурс, с пропускной способностью
С [бит/с]. По каждому k-му типу услуги у абонента имеется Nk пользователей. Средняя интенсивность поступления
пакетов от пользователя k-й услуги составляет pk пакетов
в секунду. Тогда, средняя суммарная интенсивность по32
ступления пакетов от всех пользователей услуги k может
быть представлена формулой (4.1).
k
Nk
pk
(4.1)
Допустим, что каждая услуга, типа k, реализуется посредством передачи пакетов, имеющих битовую длину Lk
(включая минимальный межпакетный интервал). Тогда,
длительность передачи одного пакета k -го типа примет
вид (4.2), а коэффициент загрузки канального ресурса передачей пакетов услуги k -го типа – вид (4.3).
Lk
(4.2)
k
C
(4.3)
k
k k
Параметр k показывает вероятность того, что канал занят передачей пакетов услуги k -го типа, т.е. долю канального ресурса, занимаемую передачей пакетов, относящихся к указанной услуге.
Суммарную долю канального ресурса, занятую передачей всех пакетов, выразим как (4.4).
k
R
k
(4.4)
k 1
Устойчивая передача всех пакетов без потерь возможна
лишь при условии R 1.
С учетом улучшения показателей качества обслуживания QoS, пакетам различных услуг присваиваются различные приоритеты передачи. Пакетам услуг, чувствительным
к задержкам по времени, присваиваются более высокие
приоритеты.
Таким образом, рассматриваемая модель предлагает
разделение во времени всего канального ресурса между
отдельными пользователями. Каждому пакету услуги k -го
типа отводится для передачи канальный ресурс, в виде интервала времени k, причем, интервалы не пересекаются.
33
Из теории вероятностей известно, что при суммировании большого числа независимых потоков заявок с малыми интенсивностями и постоянной суммарной интенсивностью, свойства результирующего потока будут приближаться к пуассоновскому закону.
Будем считать, что для рассматриваемого сегмента
мультисервисной сети выполняются предположения о
возможности использования пуассоновской модели входного потока заявок с интенсивностью поступления и потребностями в канальном ресурсе, зависящими от номера
потока. Данное предложение можно считать справедливым
в транзитной части сети, где происходит смешивания
большого числа потоков заявок.
λp1
λ1
диспетчер
O1
N1
λpk
λk
Ok
Nk
Zk
канал
λPK
λK
OK
NK
Рис. 4.1
На рис. 4.1 представлена организация обработки заявок
с относительными приоритетами в одноканальной системе
с разделением ресурса во времени. Относительность приоритета связана с тем, что никакая заявка более высокого
приоритета не может прервать передачу заявки (пакета),
уже находящейся на обслуживании в канале. Любая заяв34
ка, захватившая канал передачи имеет на это время самый
высокий приоритет.
Заявки каждого из приоритетов выстраивается в соответствующие очереди O1…Ok…OK.
Программа «диспетчер» выбирает заявку из очереди,
имеющей на данный момент наивысшей приоритет. Если в
систему поступают k приоритетные простейшие потоки
(k=1…K) с интенсивностями 1… K, длительности передачи пакетов каждого потока имеют математические ожида2
2
ния 1 ... K и вторые начальные моменты 1 ... K , соответственно, то среднее время ожидания пакетов заявок, имеющих приоритеты k 1,.. K , определяется соотношением
(4.5).
K
2
i
i
Wk
i 1
2(1 Rk 1 )(1 Rk )
где Rk
(4.5)
,
k i
1
j
; Rk
Rk
1
k
j 1
Среднее количество пакетов k-го приоритета, ожидающих в очереди (4.6)
K
k
qk
i
2
i
(4.6)
i 1
2(1 Rk 1 )(1 Rk )
При бесприоритетном обслуживании К потоков с различными математическими ожиданиями i и вторыми
2
начальными моментами i времени обслуживания, число
заявок k-го потока в очереди определяется соотношением
(4.7).
35
2
k
qk
2
2(1 R )
где
(4.7)
,
K
K
2
k
i
,
2
i
K
,
R
i
i 1
i 1
i 1
K
i
i
.
i 1
- представляет вероятность заявки k-го типа в
k/
суммарном потоке заявок. Суммарное число заявок всех
типов q , находящихся в очереди q
K
qk .
k 1
И, наконец, если рассматриваются однопоточные системы, с заданным законом распределения времен обслуживания, то справедливо соотношение (4.8).
2
q
2
2(1 R )
где
=
,
,
(4.8)
2
2
R=R ..
,
Формула (4.8) называется формулой Хинчина–
Поллячека, носит в теории очередей фундаментальный характер и широко используется при расчете систем массового обслуживания с очередями.
В таблице 4.1 показаны основные соотношения, определяющие средние значение задержек и очередей для различных систем массового обслуживания.
Напомним, что перечисленные результаты получены
при условии, что все потоки являются пуассоновскими, в
этом случае и результирующий поток также является пуассоновским. Пуассоновская модель обычно относится к потоку первичных заявок, получаемому от многих однородных источников одновременно.
36
Таблица 5.
Формулы для распределения математических ожиданий
Время обслуживания в очереди
Размер очереди
Обслуживание К потоков с относительными приоритетами и случайными временами обслуживания
K
K
i
Wk
2
i
k
i 1
i 1
qk
2(1 Rk 1 )(1 Rk )
2
i
i
2(1 Rk 1 )(1 Rk )
Бесприоритетное обслуживание К потоков со случайными временами
обслуживания
K
K
2
i
i
Wk
i 1
2(1 R )
k
; Wk
W
qk
2
i
i
i 1
2(1 R )
Обслуживание бесприоритетное К потоков с различными постоянными временами об служивания
K
k
qk
K
i i
i 1
2(1 R )
i i
Wk
i 1
2(1 R )
; Wk
k
W
i i
K
q
i 1
qk
2(1 R )
k 1
Обслуживание бесприоритетное К потоков с одинаковыми случайными временами обслуживания
2
2
Wk
2(1 R )
; Wk
W
q
Обслуживание одного потока интенсивности
2(1 R )
и случайным временем
2
2
W
2(1
)
2
q
2(1
2
)
37
5. СМО с непуассоновскими потоками
5.1.
Особенности мультисервисного трафика
В мультисервисных сетях с пакетной коммутацией поток пакетов существенно отличается от пуассоновского.
Потоки пакетов формируются множеством источников запросов на предоставление услуг, существенно отличающихся между собой.
Любой пакетный трафик является продуктом компьютерной обработки, выполняемой процессором при решении задач приложений. Решение любой задачи состоит из
трех последовательных этапов: получение исходных данных, процесс обработки и процесс выдачи результатов,
причем, трафик образуется именно на третьем этапе. Это и
обуславливает его пачечный характер. На структуру трафика оказывают влияние и особенности применяемых алгоритмов обслуживания. Например, моменты возникновения запросов на обслуживание сильно коррелированны,
если в используемых протоколах применяется повторная
передача ошибочно принятых пакетов. Все это приводит к
тому, что для мультисервисных потоков характерна неравномерность поступления заявок и пакетов. Пакеты группируются в «пачки» в одних промежутках времени и практически отсутствуют – в других промежутках. Случайный
процесс поступления заявок(пакетов) в систему характеризуется законом распределения, устанавливающим связь
между значениями случайной величины и вероятностями
появления указанных значений. В большинстве случаев,
такой поток характеризуется функцией распределения
временных интервалов между соседними заявками. Имеется также множество работ, в которых потоки заявок характеризуются функцией распределения числа заявок за
условную единицу времени.
38
В нашей работе, в качестве указанной единицы времени,
рассматривается постоянный интервал времени обработки одной заявки. Мы показали, что дисперсия и корреляционные свойства чисел заявок, поступающих за интервал
обработки, оказывают определяющее влияние на средний
размер очереди.
Рассмотрим особенности функции распределения вероятностей числа заявок на интервале для мультисервисного
потока.
1. В большинстве случаев для характеристики числа заявок, поступающих за некоторый интервал времени, используется «нормальный» закон распределения.
Однако, исследования показали, что для мультисервисного трафика аппроксимация «нормальным» законом распределения не согласуется с действительностью.
Реальные распределения обладают существенной асимметрией, в то время, как «нормальный» закон предполагает
симметричное распределение.
2. Мультисервисный поток заявок обладает существенной неравномерностью. Даже в течение небольших промежутков времени наблюдаются периоды высокой активности, периоды пониженной активности и периоды полного отсутствия заявок.
3. Большая «пачечность» потока приводит к появлению
значительного числа интервалов, в течение которых заявки
вообще не поступают. Именно эта весьма высокая вероятность «нулевого состояния» приводит к отличию реального закона распределения от «нормального».
4. Характер закона распределения числа заявок, поступающих за некоторый интервал времени
существенно
зависит от величины указанного интервала.
39
Непуассоновские потоки
5.2.
Рассмотрим понятие образующей функции.
Поток входных заявок общего вида может быть задан
функцией распределения вероятностей интервалов между соседними заявками.
F1 ( ) P ( 1
)
(5.1)
Указанная функция определяет вероятности P(
) того, что
. Эту функцию распределения вероятностей
назовем образующей функцией.
Аналогично, может быть определено семейство образующих функций - вероятностей того, что сумма двух, трех и
т.д. случайных временных интервалов между соседними
заявками, меньше интервала .
n
Fn (
i
)
(5.2)
i 1
Это есть функции попадания некоторого числа событий
в интервал , где под интервалом мы понимаем постоянное время обработки одной заявки, а отсчет времени начинается в момент появления первой заявки (рис. 5.1).
1
1
2
n
2
n 1
F1 ( )
P(
F2 ( )
P(
);
1
1
2
τ);
n
1
2
n
Fn ( )
P(
i
);
i 1
Рис. 5.1. Образующие функции.
40
Если такие функции известны, то на основании их легко
определить значения чисел n и n 2 .
Обозначим через Pi( ) вероятность того, что на интервале появится ровно i заявок.
Тогда, функция 1-F1( )=P( 1> )=P0( ) определяет вероятность отсутствия заявок на интервале (не считая исходной). Это равносильно утверждению, что на указанном
интервале появится не более 0 заявок.
Аналогично, функция (5.3) определяет вероятность того, что на интервале появится не более, чем n-1 заявок.
n
1 Fn ( )
P(
n 1
1
i 1
)
Pi ( )
(5.3)
i 1
Очевидно, что разность Fi( )-Fi+1( )=Pi( ), а сумма всех
вероятностей равна единице (5.4).
Pi ( ) 1 .
(5.4)
i 0
5.3.
Функция Г-распределения
интервалов между заявками
Мы предлагаем аппроксимировать семейства образующих функций семейством функций Г-распределения.
Функция Г-распределения хорошо известна. Она определяется двумя параметрами:– средний интервал времени
между двумя соседними заявками поступления заявок , и
η – величина, обратная квадрату коэффициента вариации
распределения интервалов между заявками (5.5). Кроме
того, используется параметр средней интенсивности (5.6).
2
D
,
(5.5)
41
1
.
(5.6)
(
F1 ( )
1
)
e
d ;
Г( )
0
(5.7)
Почему такая функция была выбрана? Во-первых, потому, что экспоненциальное распределение является частным случаем Г-распределения (при η=1). Главное же заключается в том, что функция Fn( ) получается из функции
F1( ) (5.7) простым умножением показателя η на величину
n. Действительно, исходное выражение для функции (5.8)
с учетом (5.9), примет вид (5.10).
(
Fn ( )
n
n
)
Г(
0
n
;
n
(
Fn ( )
0
1
n
n
n
)n
e
n
n n
n
)
;
1
e
Г (n )
n
d ;
(5.8)
(5.9)
d .
(5.10)
Введем переменную x= · и получим окончательно
формулу (5.11).
xn 1 e x
Fn ( )
dx
(5.11)
Г (n )
0
Такая аппроксимация позволяет анализировать уже не
только экспоненциальные входные потоки, но и потоки, с
самыми различными коэффициентами вариации интервалов.
На рис. 5.2 показано семейство функций распределения
вероятностей при различных значениях коэффициента η (η
– величина, обратная квадрату коэффициента вариации v2).
42
Рис. 5.2. Семейство образующих функций F(λτ).
Чем меньше коэффициент η, т. е. чем больше его обратная величина – коэффициент вариации, тем круче идут
графики указанных функций. Все они, так же, как и экспоненциальное распределение, описываются единым уравнением.
Зная эти функции, мы легко можем вычислять вероятности появления n событий на интервале τ (5.12) и (5.13).
Pn ( ) Fn ( ) Fn 1 ( )
( x )n
Pn ( )
( x)
0
e
x
dx
Г (n )
0
( n 1)
1
(5.12)
1
e
Г [(n+1) ]
(5.13)
x
dx
При экспоненциальном распределении (коэффициент
η=1) получаем закон Пуассона в его обычном виде.
43
Стало быть, указанное соотношение это в интегральной
форме обобщенный закон Пуассона, где мы получаем вероятность появления n событий на интервале τ при заданных значениях параметров Г-распределения.
Рис. 5.3. Вероятности Pn для различных η.
На рис. 5.3 показаны вероятности попадания n – событий в узкий временной интервал, соответствующий выражению (5.14).
0,1.
(5.14)
Для экспоненциального потока (η=1) вероятность попадания двух или более событии в указанный интервал
крайне мала. В то же время, вероятность попадания двух
событии для потока с коэффициентом вариации 2 =5
(η=0.2) значительно выше, и соответствует 0.2. Это может
вызвать появление очередей.
На рис. 5.4 показаны графики очередей q( ), в зависимости от коэффициента загрузки
для различных значений
коэффициентов вариации 2 потоков, имеющих Г- распределение интервалов между заявками.
44
Рис. 5.4. Очереди.
Мы видим, что при экспоненциальном входном потоке
существенное возрастание очереди происходит при коэффициенте загрузки, равном 0.9, в то время, как для потока
v2=5, аналогичного значения длина очереди достигает уже
при коэффициенте загрузки λτ = 0.1.
Вот почему в мультисервисных сетях нужно быть весьма осторожным при распределении пропускной способности между различными видами трафика.
5.4.
Квазипуассоновское распределение вероятностей числа заявок
Рассмотренное выше соотношение (5.13) устанавливает
вероятности появления заданного числа n заявок на интервале , при Г-распределении интервалов между соседними
заявками.
45
Рассмотрим случайную величину v=n· . Ее функция
распределения описывается выражением (5.15)
( x)
F( )
1
e
x
dx
Г( )
0
(5.15)
Допустим, что случайная величина v может принимать
только целочисленные значения (0,1,2…), тогда вероятность появления заданного числа n заявок на интервале
примет вид (5.16).
( x)
P( )
1
e
Г( )
0
x
( x) e
dx
0
Г(
x
dx
1)
(5.16)
Учитывая выражения (5.16), (5.17) и (5.18) получим закон Пуассона для целых v (5.19).
( x)
Г(
P( )
1
e x dx
1)=Г ( )
( x) e
Г(
x
1)
( x ) e x dx ( x ) e x ,
(5.17)
!
(5.18)
( x) e
!
x
(5.19)
После подстановки значений
n , получим формулу
(5.20).
(
)n e
Pn ( )
, где n
, v=0, 1, 2,…
(5.20)
Г (n
1)
Указанный закон распределения вероятностей, подчиняющийся (5.20), назовем квазипуассоноаским.
Ранее, под величиной ni понималось целое число событий, произошедших на интервале τ, не считая первого события, совпадающего с началом отсчета интервала τ. Это
число совпадает с целым числом интервалов j, укладывающихся на интервале τ.
46
В общем случае, на указанном интервале может разместиться не целое число интервалов j между заявками, поэтому, представим величину ni в виде суммы целой и
дробной частей (5.21).
ni
(5.21)
i 1.
i
i , где vi= 0, 1, 2… и 0
Если τ< i, то целая часть vi=0.
Если τ i то целая часть, т.е. vi, определяется из целочисленного уравнения (5.22).
[
] 1
i
(5.22)
i j
j 0
Дробная часть i показывает долю от интервала i+vi, которую составляет остаток.
Таким образом, становится ясным физический смысл не
целых значений n.
Напомним, что есть величина, обратная коэффициенту вариации интервалов между соседними заявками исходного потока, при Г- распределении интервалов, которая
может принимать любые значения. В частном случае, при
экспоненциальном распределении интервалов, =1, мы
приходим к закону Пуассона в его обычном виде (5.23).
( )n e
Pn ( )
.
(5.23)
( n)!
Следовательно, (5.20) обобщает закон Пуассона на не
экспоненциальные потоки, заданные Г- распределением
интервалов между заявками, с произвольным коэффициентом вариации.
47
Г- распределение вероятностей числа заявок на интервале
5.5.
Предлагается плотность распределения Wm( ) - вероятностей числа заявок на интервале представить в виде распределения (5.24).
m
(
Wm ( )
m
m
1
m
e
m)
(
m
m
m
m
(5.24)
m ,
)
[ m ( )]2
, а m m( ) и Dm( ) -математическое
m
Dm ( )
ожидание и дисперсия числа заявок на интервале , соответственно.
Не трудно показать, что сумма значений всех вероятностей равна единице.
Дробные значения числа заявок следует понимать в рассмотренном выше смысле.
Вероятности Pm( ) поступления целых чисел заявок
определяются соотношением (5.25)
где:
m
m
1
2
Pm ( )
m
1
2
(
m
m
x)
1
m
e
(
m
m)
x
m
m
dx
, m=1, 2, 3…
(5.25)
Предположим, что суммарный поток включает в себя K
потоков различной активности. Допустим, что периоды
активности потоков различного вида не пересекаются. Поток k-го вида характеризуется распределением вероятностей Pkn( ) числа заявок n, поступающих в течение интервалов . (Это условные распределения вероятностей, полученные при условии, что рассматриваются периоды, соответствующие потоку k-го вида).
48
Поток каждого k-го вида присутствует в течение суммарного времени Tk.
Tk
Tk
,
Pk
K
(5.26)
T
Ti
i 1
где T - весь исследуемый промежуток времени.
Суммарное распределение вероятностей числа заявок,
учитывающее все промежутки активности выразим как
(5.27).
K
Pn ( )
Pk Pnk ( ), k=1
(5.27)
k
5.6.
Гиперпуассоновское распределение вероятностей числа заявок на интервале
Предположим, что составляющие потоки k-го вида характеризуются квазипуассоновскими распределениями
числа заявок, соответствующими (5.13). Тогда выражение
(5.28) назовем гиперпуассоновский распределением.
n 1
kx
K
( k x) k
e
k
Pn ( )
Pk [
dx
Г (n )
k
0
k
(5.28)
( n 1) k 1
x
k
( k x)
e
k
k=1
dx ],
Г [(n+1) k ]
0
Наиболее простой формулой гиперпуассоновского распределения является распределение второго порядка (k=2).
Оно имеет 5 независимых параметров.
49
( x)
Pn ( )
n
1
1
1
P[
Г (n
1
0
( n 1)
( 1 x)
1
1
(
(1 P )[
1
(
2
2
0
( n 1)
x)
x)
2
2
1
1
e
Г (n
)
2
1
nx
e
1
dx
nx
e
n
x
)
1
Г [(n+1) 1 ]
0
1
e
dx ]
2
(5.29)
x
2
2
dx
dx ].
Г [(n+1) 2 ]
0
Работу одноприборной СМО можно часто охарактеризовать двумя чередующимися интервалами времени. В течение первого интервала прибор находится в режиме обслуживания заявок, а в течение последующего интервалаприбор находится в состоянии простоя, в связи с отсутствием поступающих заявок. Предположим, что в течение
интервалов занятости на вход СМО поступает гиперпуассоновский поток, в то время, как в периоды простоя заявки
не поступают. Таким образом, весь поток заявок рассматривается как двухфазный, с последовательным чередованием фаз.
Квазипуассоновское распределение заявок на интервалах занятости можно рассматривать как условное, при
условии, что прибор обслуживания находится в состоянии
занятости. Вероятность этого состояния определяется коэффициентом загрузки . Вероятность состояния простоя
равна (1- ). В состоянии простоя заявки на вход не поступают.
Мы получили гиперпуассоновское распределение второго порядка, где P1=(1- ), а условное распределение веро50
ятностей числа заявок на интервале простоя является вырожденным (5.30)
Pn1 ( )
( n) ,
где
1 при...n 0
( n) {
0 при...n 0
(5.30)
Обозначим через Pn2( ) - условное квазипуассоновское
распределение вероятностей случайной величины n на фазе занятости. Тогда общее распределение вероятностей, с
учетом наличия интервалов простоя, определится соотношением (5.31)
n 0,1, 2....
Pn ( )
(n) (1
)
Pn 2 ( ) ,
(5.31)
Не трудно показать, что сумма значений всех вероятностей равна единице (5.32).
P ( ) 1 , n 0,1, 2...
(5.32)
n 0 n
Подставляя значения из (5.20), получим.
(
)n e
Pn ( )
[n] (1 )
,
Г (n
1)
1 2
n 0, , ....
(5.33)
Соотношение (5.33) предполагает наличие Г- распределения интервалов между заявками на интервалах занятости
и учитывает наличие интервалов простоя, когда заявки в
систему не поступают.
51
Гипер Г- распределение вероятностей числа
заявок на интервале
5.7.
Предположим, что составляющие потоки k-го вида характеризуются независимыми Г- распределениями числа
заявок, соответствующими (5.5). Тогда:
mk
~
1
2
m
K
Pm( )
(
Pk
k
mk
mk
mk
mk
e
(
1
2
m
1
x)
x
mk
mk
mk
)
dx .
(5.34)
Не трудно показать, что для такого распределения выполняются соотношения (5.35).
K
Pk mk ;
m
k
(5.35)
K
Dm ( )
Pk Dmk ( ) .
k
Наиболее простой формулой гипер Г- распределения
является распределение второго порядка (k=2).
m
1
2
(
~
Pm ( )
P1
m
m
(1 P1 )
m1
x)
m1
m1
1
(
e
m1
1
2
(
m
1
2
m1
1
2
m2
m2
x)
m2
1
(
m1
m2
m1
m1
dx
)
m2
e
x
m2
x
(5.36)
m2
m2
dx
)
m = 0, 1, 2…
Мультисервисный трафик характеризуется чередующимися периодами, активного и пассивного режимов поступления пакетов.
52
Пассивный режим имеет весьма малую среднюю интенсивность и высокую неравномерность поступления пакетов.
Такому режиму соответствуют малые значения математического ожидания числа пакетов m1 ( ) , поступающих в
течение интервала , малые значения коэффициента m1( )
и весьма большие значения дисперсии Dm1( ).
Активный режим, наоборот, характеризуется весьма интенсивным потоком пакетов, поступающих с максимальной, практически постоянной интенсивностью.
Такому режиму соответствуют большие значения математического ожидания числа пакетов m 2 ( ) , поступающих
в течение интервала , большие значения коэффициента
m2( ) и весьма малые значения дисперсии Dm2( ).
Таким образом, весь поток заявок рассматривается как
двухфазный, с последовательным чередованием фаз. Частным случаем многофазного потока является однофазный
Г- поток.
Предположим, что в течение режима активности имеется Г- поток пакетов, в то время, как в пассивном режиме
заявки вообще отсутствуют.
Г- распределение пакетов на интервалах активности
можно рассматривать как условное, при условии, что прибор обслуживания находится в состоянии занятости. Полное отсутствие пакетов в пассивном режиме можно считать предельным Г- распределением.
Разделим весь рассматриваемый промежуток времени
на N( ) одинаковых интервалов . Порядковые номера интервалов обозначим через i, i=1, 2,…N( ). Числа заявок,
поступающих в течение i-го интервала, обозначим через
mi( ).
Предлагается модель, отображающая распределение вероятностей поступления m( ) заявок на интервале . Мате53
матическое ожидание m( ) , второй начальный момент
m( )2 и дисперсия распределения Dm( ).
Обозначим через Nm( ) число интервалов , в течение
которых поступило ровно m( ) заявок, m( )=0,1,2…
При достаточно большом объеме выборки можно считать, что вероятности Pm( ) поступления на интервалах
ровно m( ) заявок определяется соотношением (5.37).
m
1
2
m
(
N m(
Pm ( )
m
)
1
2
m
m
1
e
m)
N( )
(
m
(
m
m
m)
m
m
dm
(5.37)
)
m=0,1,2…
Вероятность отсутствия заявок на указанных интервалах обозначим через P0( ) (5.38).
N0 ( )
.
P0 ( )
(5.38)
N( )
Искомое распределение вероятностей Pm ( ) (5.39)
представляется в виде двух составляющих, одна из которых P0( ), а вторая - Pm( ):
Pm ( )
(m) P0 ( ) Pm ( )[1 P0 ( )] , m=0,1,2…
где,
1 при m 0
.
(m ) {
0 при m 0
(5.39)
Окончательно, распределение вероятностей Pm ( ) имеет вид (5.40).
Pm ( )
( m ) P0 ( )
m
1
2
m
(
m
1
2
m
m
1
(
54
m
e
x)
m
)
m
x
m
m
(5.40)
dx
[1 P0 ( )]
m=0,1,2…
Из полученных соотношений следует, что, при заданном коэффициенте загрузки (5.41), распределение вероятностей определяется вероятностью P0( ) отсутствия заявок
и значениями дисперсии (5.42) числа заявок на интервале
.
(5.41)
m
2
Dm ( )
(5.42)
m
Следует подчеркнуть, что точное знание распределения
числа заявок на интервале обработки ещё не достаточно
для определения средней длины очереди. Существенное
влияние оказывают корреляционные свойства потока. На
размер очереди влияет приведенный коэффициент автокорреляции rm( ).
55
6. Очереди в одноканальных системах передачи с потоками заявок общего вида
6.1.
Последовательное распределение постоянных интервалов времени передачи
Канал передачи рассматривается как одноприборная
СМО. Алгоритм предусматривает определение чисел заявок mi, поступающих в течении последовательно расположенных постоянных интервалов времени передачи пакетов τ.
Рассмотрим предлагаемый алгоритм на конкретном
примере. Предположим, что все заявки, поступающие в
одноприборную СМО, имеют одинаковое постоянное время обслуживания и алгоритм обслуживания FIFO. Поток
заявок показан на рис. 6.1.а. Процесс обработки заявок в
такой СМО всегда состоит из последовательности чередующихся периодов занятости обслуживающего прибора
(прибор обрабатывает заявки) и периодов простоя, в течение которых заявки в обслуживающем приборе отсутствуют.
Предположим, что перед началом рассмотрения, СМО
была свободной, поэтому с приходом первой заявки период простоя завершается и начинается период занятости
(заявка начинает обрабатываться обслуживающим прибором). В течение интервала времени вначале поступают
четыре заявки (первая, вторая, третья и четвертая) рис.
6.1.б.
Заявка с номером один сразу же поступает в обслуживающий прибор, а остальные три заявки становятся в очередь рис. 6.1.в. В течение следующего интервала времени
в обслуживающем приборе находится заявка с номером
два, при этом очередь уменьшается на одну заявку.
56
Рис.6.1 последовательное расположение интервалов обслуживания
Аналогичное уменьшение очереди происходит при поступлении в обслуживающий прибор заявки с номером
три. В течение следующего интервала τ, когда происходит
обработка четвертой заявки, в СМО поступают еще две, с
номерами пять и шесть, которые становятся в очередь.
Так, последовательно происходит непрерывная обработка всех заявок, включая заявку с номером девять. Если
интервал между очередными заявками 9 и 10 окажется достаточно большим, таким, что во время обработки заявки с
номером 9 не успеет поступить очередная заявка с номером 10, то непрерывный процесс обработки (период занятости) закончится и наступит период простоя. Период про57
стоя длится до момента появления заявки с номером 10,
которая на рисунке не показана.
Поступление любой заявки в систему сопровождается
появлением некоторой работы, связанной со временем, необходимым на обслуживание указанной заявки
6.2.
Средняя доля недообслуженных заявок
Рассмотрим пачечный поток заявок, поступающих в
СМО в течение достаточно большого промежутка времени
T(рис. 6.2). Длительность каждого интервала времени обработки выберем постоянной и равной . Разделим весь
промежуток времени T на N одинаковых интервалов времени, длительностью .
Рис.6.2 Пачечный поток заявок
Значения mj( ) j=1…N представляют числа заявок , поступающих на каждом интервале (число заявок в пачке).
Некоторые «пачки» могут иметь нулевое количество заявок. Так, в течение первого интервала поступает m1( )=4
58
заявки, причем заявка с номером один сразу же поступит
на обработку, поскольку она застает обслуживающий прибор свободным. Появление заявок на первом интервале
приведет к возникновению очереди. Суммарную очередь,
возникающую в период обслуживания j– ой пачки, при
условии, что первая заявка застает обслуживающий прибор свободным, а в период обслуживания всех заявок пачки, других заявок не поступает, назовем числом недообслуженных заявок в пачке.
mj ( )
aj( )
mj ( )
mj( ) l ,
q jl ( )
l 1
(6.1)
l 1
где, l– порядковый номер заявки в j – ой пачке, j=1,N П .
Сумма элементов в (6.1) представляет собой сумму членов убывающей арифметической прогрессии. Следовательно,
m 2j ( ) m j ( )
aj( )
(6.2)
2
Общее число заявок на рассматриваемом интервале
времени T (6.3):
N
(6.3)
K
mj .
j 1
Суммируя значения aj( ) по всем интервалам, определим
среднее значение недообслуживания, приходящееся на
один интервал обслуживания (6.4):
N
N
2
j
m (t) a(t) =
j=1
m j (t)
j=1
2× N
m2 (t) - m (t)
=
2
(6.4)
Средняя доля недообслуживания определяет средний
размер очереди при условии того, что все заявки преды59
дущей пачки успевают полностью обработать до поступления первой заявки очередной последующей пачки.
6.3.
Дообслуживание очередей
Если рассмотренное выше условие не выполняется и
поступающие заявки последующей пачки вынуждены
ожидать окончания обработки всех заявок предыдущих
пачек, то возникает некоторая дополнительная доля недообслуживания dj( ), показанная на рисунке 6.3.
Рис.6.3 Образование дополнительной доли
недообслуживания
На рис. 6.3.а показано поступление заявок с номерами
пять и шесть в период обработки заявки с номером два.
Указанные заявки остаются в очереди до момента освобождения обслуживающего прибора, т.е., в нашем случае,
до момента окончания обработки заявки, с номером четыре. На рис. 6.3.б и 6.3.в показано поступление указанных
заявок в моменты обработки заявок, с номерами три и четыре соответственно. Площадь образуемых прямоугольников соответствует дополнительному дообслуживанию,
возникающему из-за взаимного влияния пачек заявок.
60
Очередь размером qj-1 на промежутке, предшествующем
появлению пачки mj должна полностью обработаться. Поэтому обработка пачки mj начинается с задержкой, равной
qj-1 промежутков.
Из рисунка 6.3.в следует, что для определения площадей рассматриваемых прямоугольников может быть получено рекуррентное соотношение (6.5):
(6.5)
qi 1 ( ) m i ( ) .
di ( )
Средняя доля дообслуживания, приходящаяся на один
интервал обслуживания (6.6),
N
N
di ( )
i 1
d( )
qi
1
qi 1( ) mi ( )
i 1
(6.6)
N
N
(
)
q
(
)
m
(
)
;m
i
6.4.
Уравнение баланса
Для любой одноприборной СМО справедливо рекуррентное соотношение, устанавливающее связь между поступающими и обработанными заявками.
qi ( )
i
( )
qi 1 ( ) mi ( )
i
( ).
0, если qi 1 ( ) mi ( ) 0
1, в проmивном случае
(6.7)
(6.8)
Обратим внимание на некоторые очевидные особенности δi(τ):
2
(6.9)
i ( )
i ( );
mi ( );
(6.10)
i ( )m i ( )
61
i
( ) m( ),
(6.11)
( )qi 1 ( ) qi 1 ( ).
Предпоследнее равенство легко получить, найдя математическое ожидание левой и правой частей (6.7).
Возведем в квадрат левую и правую части уравнения (6.7) и найдем математические ожидания от полученных выражений.
С учетом (2.9) получим,
i
q( )
qi -1;mi
m 2 ( ) - m( )
.
2
( ) q( ) m ( )
(6.12)
Откуда,
m( ) m( ) 1
q( )
Dm ( ) 2
qi -1;mi
( )
,
(6.13)
2 1 m( )
где Dm(τ) - дисперсия mi( ).
Окончательно имеем:
Dm ( ) 2
( )
m( )
.
(6.14)
2
2[1 m( )]
Обратим внимание, что в формулу (6.12) входят составляющими средняя доля недообслуженных заявок a( ) и
q( )
qi 1mi
средняя доля дообслуживания заявок d ( ) , которые вместе
и формируют среднюю длину очереди q( ) .
Соотношение (6.14) обобщает известную формулу Хинчина-Поллячека и справедливо для любых стационарных и
ординарных потоков заявок, при постоянном времени обслуживания τ.
Не трудно также показать, что числитель выражения
(6.13) определяется соотношением (6.15):
62
( qi
1
qi ) mi
( ) [qi 1 ( ) qi ( )][mi ( )
].
(6.15)
Действительно, подставив значение qi(τ) из (6.7), и производя усреднение, имеем (6.16):
(6.16)
Dm ( ) 2 qi-1;m ( )
(1
).
(q
q m ( )
i
1
i) i
i
Напомним, что m( )
Таким образом, получено еще одно соотношение, определяющее значение очереди q( ) :
(6.17)
( qi 1 qi ) mi ( )
q( )
21
Обозначим
Em ( ) Dm ( ) 2
qi -1;mi
( ).
(6.18)
Тогда (6.19),
q( )
Em ( )
21
.
(6.19)
2
Сравнивая с (6.14), убеждаемся в том, что
Em ( ) Dm ( ) 1 rm ( ) , где
2
qi 1 ; m i
, что и следовало ожидать.
Dm ( )
Выражение (6-16) дает простой алгоритм определения
значений Em(τ):
На основании уравнения баланса (6.7) последовательно
находятся значения
qj-1( )+qj ( )и, mi( )-ρ, а затем усредняются их произведения.
rm ( )
63
Зависимость Em(τ) может быть аппроксимирована, и из
нее определены характеристические коэффициенты потока
заявок общего вида.
6.5.
Аппроксимация
Рассмотрим некоторые частные случаи:
1. Интервал времени обработки всегда остается меньше, чем минимальный промежуток времени ϑmin между
двумя соседними заявками. В этом случае в интервал не
может попасть более одной заявки, а корреляционные связи отсутствуют rm(τ)=0. Дисперсия Dm(τ), при этом, определяется соотношением 6.20:
(6.20)
Dm ( )
(1 ).
Подставляя значение для дисперсии в (6.19), получим,
q( ) 0, что и следовало ожидать.
2.Рассмотрим пуассоновский поток заявок. Для такого
потока Dm(τ)=ρ.
Коэффициент корреляции rm(τ) для пуассоновского потока также равен нулю.
После подстановки в (6.19), получаем формулу Хинчина
- Поллячека в её обычном виде 6.21:
2
q( )
21
.
(6.21)
3. Рассмотрим поток заявок, имеющий пачечный характер, с максимальной интенсивностью поступления заявок,
равной λmax и средней интенсивностью λ. Времена обслуживания заявок постоянны и равны τ. Максимальное число
заявок, поступающих в течение интервала времени τ обозначим через (6.22)
(6.22)
mmax ( ) max .
64
Выберем некоторый, достаточно большой промежуток
времени, на котором подряд размещается N интервалов
обслуживания. Поскольку поток носит пачечный характер,
на K интервалах заявки поступают, а на остальных интервалах отсутствуют. Расположение интервалов независимое. Рассмотрим наихудший случай, когда на каждом из
указанных К-интервалов поступает одинаковое, максимально – возможное число заявок mmax(τ). Очевидно, что
должно выполняться условие (6.23) или (6.24)
(6.23)
K mmax ( ) N m( )
(6.24)
K max N
Обозначим отношение (6.25)
(6.25)
K
P
N
max
где P- Вероятность того, что интервал τ заполнен заявками.
Обратная величина k=1/P характеризует пачечность потока.
С учетом сказанного, получим
(6.26)
m( ) m
P
max
(6.27)
2
m 2 ( ) mmax
P k 2
2 ( k 1)
(6.28)
Dm ( )
Поскольку расположение интервалов независимое, коэффициент корреляции между ними равен нулю. Подставляя значения дисперсии Dm(τ) в (6.19), получим
(k
1)
.
q( )
(6.29)
2(1 )
Убеждаемся в том, что повышение пачечности потока
приводит к существенному (в несколько раз) увеличению
размеров очередей.
65
И, лишь при значениях ρ k=λmax τ=1, приходим к рассмотренному выше первому случаю, когда очередь отсутствует (пачки содержат не более одной заявки).
На рисунке 6.4. , в качестве примера, показаны результаты имитационного моделирования в виде графиков
функций
Em ( ) Dm ( ) 1 rm ( )
для потоков заявок общего вида, интервалы между которыми удовлетворяют
распределению.
Рис. 6.4. Графики функций Еm ( )
Потоки имеют различные коэффициенты вариации εϑ
D
интервалов между заявками
,
где Dϑ и ϑ2
дисперсия и математическое ожидание временных интервалов между соседними заявками, соответственно.
Для экспоненциального распределения εϑ=1 (пуассоновский поток), взаимная корреляция отсутствует, и зави66
симость Em(ρ), как уже было показано, имеет линейный
характер Em(ρ)=ρ.
6.5.1. Аппроксимация степенной зависимостью
В общем случае, мы предлагаем представлять зависимость Em(ρ) в виде степенной функции (6.30)
Em ( )
K
2(1 H )
(6.30)
где коэффициенты K> 0 и 0<H<1 полностью характеризуют пачечный характер потока заявок и легко определяются экспериментально, путем аппроксимации кривых
рис.(6.4) методом наименьших квадратов.
После подстановки в (6.19) получим (6.31):
K 2(1 H )
,
q( )
(6.31)
21
2
где q( ) 0 .
Если в процессе вычисления поучатся отрицательные
значения, то q( ) следует приравнять нулю. Отрицательные значения свидетельствуют о наличии, рассмотренного
выше, первого частного случая. Для пуассоновского потока K=1; H=0,5 , и полностью справедливо соотношение
(6.21).
Коэффициент H по своему характеру, аналогичен известному коэффициенту Хэрста [8], который для пуассоновских потоков также равен 0,5 и изменяется в тех же
пределах.
67
6.5.2. Полиномиальная аппроксимация
Анализ графиков, представленных на рис.6.4, также показывает целесообразность аппроксимации функции Em(ρ)
полиномом второй степени, вида (6.32)
Em ( )
( k 1)
2
(6.32)
Где α – некоторый постоянный коэффициент, а k- коэффициент пачечности потока.
Во многих случаях, коэффициент α незначительно отличается от единицы, и выражение для аппроксимации
примет вид (6.33):
Em ( )
(6.33)
[1 ( k 1) ] .
Действительно, для пуассоновского потока α=1, коэффициент пачечности k=1, Em(ρ)=Dm(ρ)=ρ, что и следовало
ожидать.
Для детерминированного потока α=1, коэффициент пачечности k=0. И Em(ρ)=Dm(ρ)=ρ(1-ρ), что полностью соответствует (6.20).
Для низко вариабельных потоков, коэффициент пачечности изменяется в пределах от нуля до единицы, а для
высоко вариабельных – он существенно превышает единицу.
Таким образом, для определения среднего размера очереди одноприборной СМО получено простое аппроксимативное соотношение (6.34):
q( )
68
( k 1) 2
2(1 )
2
, q( )
0
(6.34)
Если в процессе вычисления получатся отрицательные
значения, то q( ) следует приравнять нулю. Отрицательные значения свидетельствуют о наличии, рассмотренного
выше, первого частного случая.
Соотношение (6.34) показывает, что очередь увеличивается с увеличением некоторого коэффициента k, учитывающего степень вариабельности потока заявок. Указанный
коэффициент, совместно с коэффициентом α являются характерными для данного потока и легко определяются экспериментально на основании аппроксимации зависимости
Em(ρ) в соотношении (6.33). Аппроксимация производится
на интервале изменения коэффициента загрузки ρ, в пределах от 0 до единицы.
Мультиплексирование потоков
6.6.
6.6.1. Бесприоритетное обслуживание
Известно, что математические ожидания, дисперсии,
коэффициенты корреляции и коэффициенты загрузки сумм
независимых потоков заявок равны сумме значений соответствующих величин исходных потоков. Соотношения
(6.13) и (6.14) позволяют легко получить выражение для
суммарной очереди от Q независимых потоков, при их
мультиплексировании.
Q
Q
Dmj ( ) ,
Dm ( )
j 1
m
( )
Q
mj ( ) , R ( )
j 1
j
( ).
j 1
Следовательно,
qm ( )
Dm ( ) R ( )[1 R ( )] 2
2[1 R ( )]
m
( )
(6.35)
Или
69
(6.36)
Dm ( ) 2 m ( ) R ( )
2[1 R ( )]
2
Указанное соотношение справедливо при суммировании
любого числа потоков заявок с одинаковыми приоритетами и одинаковыми временами обслуживания τ.
При суммировании Q одинаковых независимых потоков, получим (6.37):
(6.37)
Q [ Dm ( ) 2 m ( )] Q ( )
qm ( )
2[1 Q ( )]
2
При аппроксимации суммы Q одинаковых потоков, получим (6.38)
qm ( )
( k 1) 2
R ( )
Q
2[1 R ( )]
R ( )
qm ( )
(6.38)
R ( )
,
2
(6.39)
где R ( ) Q Q ,
При увеличении Q числа суммируемых потоков загрузка системы увеличивается, а пачечность суммарного потока уменьшается, приближается к единице.
(6.39)
k 1
kQ 1
Q
По своим свойствам суммарный поток приближается к
пуассоновскому.
Если суммируются потоки с различными постоянными
временами обслуживания, то предлагается определить
суммарные величины для каждого из значений τj, j=1,2…Q
Q
Q
Dmq ( j ) ;
Dm ( j )
m
( j)
q 1
Q
R ( j)
( j);
Q
q( j )
q 1
mq
q 1
q
j
j
,
q 1
а затем, определить их математические ожидания, с
учётом вероятностей появления заявки каждого типа:
70
Q
j
Dm
Dm ( j ) ;
(6.40)
j 1
(6.41)
Q
j
m
m
( j)
j 1
Q
Q
j
R
Q
R ( j)
j .
j j
j 1
j 1
(6.42)
j 1
6.6.2. Мультиплексирование групповых потоков
Допустим, что мультиплексируются Q групповых потоков. Каждый групповой поток группы j (j=1,2,..Q) образуются путем мультиплексирования Nj одинаковых потоков
пакетов. Каждый из потоков, образующих группу j имеет
одинаковое время обслуживания τj
В этом случае
Q
Q
Dm N ( j )
DmNq ( j )
N q Dmq ( j )
q 1
R N( j)
N
(6.44)
j
Q
где
(6.43)
q 1
Q
N
Nq
Nq
q 1
q
(6.45)
q 1
Математические ожидания, с учетом вероятностей появления заявок каждого типа, определятся аналогично соотношению (6.42).
Q
Dm
Nj
N
j 1
Dm N ( j )
(6.46)
( j)
(6.47)
N
Q
Nj
m N
m N
j 1
N
Q
RN
Nj
j
(6.48)
j 1
71
6.7.
Относительные приоритеты
Приоритеты заявок характеризуются целыми положительными числами 1,2…, причем, высокому приоритету
соответствует меньшее число.
При относительном приоритете, обслуживание заявки
не прерывается, если даже в очередь поступила заявка более высокого приоритета.
Обозначим числитель выражения (6.35) через qL ( ) , и
назовем его «латентной очередью». Латентная очередь
возникает в тех случаях, когда заявки любого типа, поступившие в течение промежутка времени обработки , успевают полностью обслужиться, до прихода в систему следующей очередной заявки.
Значение латентной длины очереди не зависит от дисциплины обслуживания, так как все заявки, поступившие
на промежутке времени τ, успевают полностью обслужиться до поступления следующих заявок. Латентная очередь является минимальной, поскольку заявки, поступающие на последующих промежутках времени , не мешают
обслуживанию ранее поступивших заявок.
Если указанное условие не выполняется, то очередь будет увеличиваться, по сравнению с «латентной» (6.49).
qL ( )
qmQ ( )
(6.49)
2 1 RQ ( )
Допустим, что в системе обслуживается Q потоков, с K
различными приоритетами и латентной очередью qL ( ) .
Обозначим через qm k ( ) - суммарную длину очереди
всех заявок, с приоритетами, не ниже k, k =1,2,…K. Поскольку на размер указанной очереди влияют только заявки, имеющие приоритеты, не ниже k, в формулу (6.49) сле-
72
дует вместо RQ(τ),подставить коэффициент загрузки именно указанными заявками (6.50).
k
(6.50)
Rk ( )
j( )
j 1
В результате (6.51),
(6.51)
qL ( )
qm k ( )
2 1 Rk ( )
Среднее число заявок с приоритетом k, находящихся в
очереди,
(6.52)
qmk ( ) qm k ( ) qm ( k 1) ( )
После подстановки значений, получим окончательно
(6.53):
(6.53)
qL ( ) k ( )
.
qmk ( )
2 1 Rk ( ) 1 Rk 1 ( )
Соотношение (6.53) позволяет также легко определить
среднее время w K ( ) нахождения заявки приоритета k в
очереди.
Учитывая, что qmk ( )
k wk ( ) , где λk- интенсивность
заявок k-го приоритета, получим (6.54):
qL ( )
wk ( )
.
(6.54)
2 1 Rk ( ) 1 Rk 1 ( )
Указанный результат полностью согласуется с соотношениями, полученными для многоприоритетных пуассоновских потоков, и справедлив для потоков общего вида.
Если рассматриваются потоки с различными временами
обслуживания, то соотношение (6.54) следует применять, с
учетом (6.42). Таким образом, соотношения (6.53) и (6.54)
позволяют, соответственно, определить средние размеры
очередей и время ожидания в очередях потоков заявок общего вида, при их многоприоритетном обслуживании.
73
7. Оценка канального ресурса на уровне установления соединения
При анализе трафика на уровне установления соединений основное внимание должно уделяться оценке канального ресурса, необходимого для успешного пропуска потоков заявок различного типа. Если при поступлении заявки, канального ресурса, необходимого для ее обслуживания недостаточно, то такая заявка теряется.
Требуемый канальный ресурс может быть охарактеризован требуемой пропускной способностью С [кбит/с].
Единица требуемого канального ресурса (канальная
единица – ке) характеризуется пропускной способностью
С0 [кбит/с/ке]. За С0 может быть принята пропускная способность канала, необходимая для передачи голосовых сообщений (например, 64 кбит/с/ке).
Пропускная способность i, выраженная в числе канальных единиц определяется как i
C
[ке ] .
C0
В модели [1] имеется n потоков заявок на выделение
канального ресурса, необходимого для обслуживания трафика сервисов реального времени (речевые сообщения,
видеоконференц–связь и т.д.). Поступление заявок k-го
потока подчиняется закону Пуассона с интенсивностью λk,
где k=1,2,..,n.
Пусть ϑ- пропускная способность имеющейся линии,
выраженная в числе канальных единиц, bk- пропускная
способность требуемая для обслуживания одной заявки
потока k, выраженная в канальных единицах.
ik- число заявок k-го потока, находящихся в системе.
74
Число канальных единиц, занятых на обслуживание
всех заявок, находящихся в системе обозначим через (7.1)
n
i
ik bk
(7.1)
k 1
Если в систему поступит еще одна дополнительная заявка потока k, требующая для своего обслуживания bk канальных единиц, то при обслуживании очередей заявок
она примется к обслуживанию, если выполняется неравенство (7.2)
i bk
(7.2)
В противном случаи она безвозвратно отвергается.
Пусть ik(t) - число заявок k -го потока, находящихся в
момент времени t на обслуживании. Динамика изменения
общего числа обслуживаемых заявок описывается многомерным случайным процессом r(t)=(i1(t),i2(t),…,in(t)), определенным на конечном пространстве состояний S. Оно состоит из векторов (i1,,i2,…,in), удовлетворяющих неравенству(7.3)
n
ik bk
(7.3)
k 1
Обозначим через ρ(i1,,i2,…,in) стационарную вероятность состояния (i1,,i2,…,in), где ik - число заявок k-го потока, находящихся на обслуживании в стационарном режиме
k=1,2,..,n.
Качество обслуживания заявок k-го потока определяется долей πk потерянных заявок и средней величиной mk занятого канального ресурса. Дадим им формальные определения с использованием вероятностей ρ(i1,,i2,…,in). Доля
потерянных заявок k-го потока находится как доля времени пребывания процесса r(t) в состояниях, когда прием по-
75
ступившей заявки невозможен из-за нехватки свободного
канального ресурса.
Обозначим через Uk множество соответствующих состояний. Она включает в себя состояния (i1,,i2,…,in)єS, удовлетворяющие условию(7.4)
(7.4)
i1b1 i2b2 ... inbn
bk
Значения введенных показателей обслуживания заявок
k-го потока определяются из равенств(7.5), (7.6)
( i1 , i2 , ..., in )
k
(7.5)
( i1 , i2 ,... in ) U k
mk
( i1 , i2 , ..., in )ik bk
(7.6)
( i1 , i2 ,... in ) U k
Если все потоки заявок простейшие, то заявки каждого
из потоков обслуживаются независимо, и для совместных
вероятностей получим следующее выражение
i1
in
in
1
2
1
2
i1 !
Из него следует, что
i2 !
n
n
k
( i1 , i2 , ..., in ) e
k 1
k
...
n
(7.7)
in !
n
( i1 , i2 , ..., in )
Pk (ik )
(7.8)
k 1
i=0,1,...; k=1…n , где
ik
k
k
Pk ( ik ) e
k
k
ik !
,
(7.9)
λk- средняя интенсивность поступления заявок k-го типа
μk- средняя интенсивность обслуживания этих заявок
76
Очевидно, что
k
Pk ( ik
0)
Pk (0)
e
(7.10)
k
Отношение (7.9) включает коэффициент загрузки канала заявками k-го типа.
k
(7.11)
k
k
Подставляя в (7.8), получим
in
1 1i1 2i2
( i1 , i2 ,..., in )
... n ,
N i1 ! i2 ! in !
(7.12)
(i1 , i2 ,..., in ) S
i1
1
N
( i1 , i2 ,... in ) S
i2
2
i1 ! i2 !
...
in
n
in !
.
(7.13)
Полученные выражения можно использовать для оценки πk, mk
in
i1
i2
1
n
1
2
...
(7.14)
k
N ( i1 ,i2 ,... in ) S i1 ! i2 ! in !
in
i1
i2
bk ik
1
2
... n
(7.15)
N ( i1 ,i2 ,... in ) S i1 ! i2 ! in !
Здесь πk- доля потерянных заявок k-го потока, а mkсреднее число каналов, занимаемых заявками.
Параметры πk и mk- характеризуют качество обслуживания заявок k -го типа при наличии отказов, из-за нехватки канального ресурса.
Заявки не становятся в очередь, а сразу же покидают в
систему и теряются. (Телефонные вызовы, при сигнале
«ЗАНЯТО»).
Рассмотрим рекурсивный алгоритм определения πk и
mk. Напомним, что ik- число заявок типа k, k=1..n,
mk
77
bk- число канальных единиц, требуемых для выполнения заявки, типа k.
i- число канальных единиц, требуемое для выполнения
всех заявок, всех типов
n
ik bk , i
i
(7.16)
0,1...
k 1
P(i)- вероятность того, что в системе занято i канальных
единиц.
Можно показать, что P(i) определяется рекурсивным
соотношением[1].
1 n
P (i )
bk ) I ( i bk 0) , i=0,1…ϑ
(7.17)
k bk P ( i
ik1
Здесь I(i-bk≥0) - функция, принимающая значение 1 при
выполнении условия в аргументе и принимающая значения
0, в противном случае.
Используя (7.9) легко выразить значение P(i) через значение P(0)- вероятности отсутствия занятых каналов.
Далее применим алгоритм:
1) положим P(0)=1
2) выразим все вероятности P(i), (i=0,1…ϑ) через P(0),
последовательно увеличивая i от 1 до ϑ.
3) находим значения показателей:
( Pi ) , mk
k
i
78
bk 1
b (1
k k
k
) , k 1...n .
8. Механизм управления трафиком
Механизм управления трафиком рассмотрим на примере управления трафиком в технологии АТМ, где указанные
механизмы используются в наиболее полном объеме [9].
8.1.
Классы трафика
В АТМ выделено четыре класса трафика:
Класс А – характеризуется постоянной скоростью передачи, критичен к задержкам, и ориентирован на установление соединения. Пример: голос.
Класс В – передается с переменной скоростью, критичен к задержкам, передается по установленному соединению. Пример: "сжатый голос", "сжатое видео".
Класс С – передается с переменной скоростью, не критичен к задержкам, передается по установленному соединению. Пример: компьютерные данные, передаваемые в
Х.25 и Frame Relay.
Класс D – передается с переменной скоростью, не критичен к задержкам, передается без соединения. Пример:
трафик данных, который передается по сетям без установления соединения (IP сеть, трафики локальных сетей).
Для количественного описания трафика и требований к
качеству обслуживания трафика применяются следующие
параметры:
•
Параметры скорости;
•
Параметры неравномерности трафика;
•
Временные параметры передачи ячеек;
•
Параметры системы передачи АТМ.
К параметрам скорости относятся:
•
Пиковая скорость передачи (PCR), максимальная скорость генерации ячеек источником;
79
•
Средняя скорость передачи (SCR), которая поддерживается соединением для обеспечения приемлемого
качества обслуживания;
•
Минимальная скорость передачи (MCR) – это
скорость, которая будет поддерживаться соединением при
негарантированном качестве обслуживания.
К параметрам неравномерности трафика относится параметр: размер пачки MBS – это максимальное количество
ячеек, генерируемых источником на пиковой скорости.
Соотношение между параметрами скорости и параметром неравномерности трафика покажем на рис. 8.1.
Рис. 8.1 Соответствие между параметрами скорости и параметром неравномерности трафика.
Пиковая скорость источника равна PCR=1/T, {яч/с}, где
T- интервал между соседними ячейками.
Средняя скорость соединения SCR=MBS/Tn,{яч/с}, где
Tn - минимальный интервал между пачками.
Тогда длительность пачки TB=(MBS-1)T, {с}
К временным параметрам передачи ячеек относятся:
2.
Задержка передачи ячеек CDT – это время необходимое, для передачи ячейки от источника до получателя,
является случайной величиной;
3.
Вариация задержки CDV – это отклонение от
средней задержки ячейки.
80
К параметрам системы передачи АТМ относятся:
•
Доля потерянных ячеек CLR, определяется отношением числа потерянных ячеек к общему числу переданных ячеек в соединении;
•
Доля ошибочных ячеек CER, определяется отношением некорректных ячеек к общему числу переданных ячеек в соединении;
•
Доля ложно вставленных ячеек CMR, определяется отношением количества ложно вставленных ячеек к
общему количеству переданных ячеек в соединении;
•
Процент блоков пораженных ошибками SECBR,
определяется отношением количества блоков ячеек, пораженных ошибками, к общему количеству переданных блоков;
•
Секунды готовности канала AS определяют долю времени готовности виртуального канала. Секундой
неготовности канала считается секунда, в течении которой
было обнаружено более 64 ошибок. Временем не готовности канала считается интервал времени пораженный
ошибками более чем на 10 3 . Секунды готовности определяются как разность между интервалом наблюдения и секундами неготовности канала. Обычно в качестве интервала наблюдения берется интервал 10 мин.
В трафиковом контракте, который описывает качество
обслуживания, гарантированное провайдером, указываются следующие параметры:
•
параметр скорости передачи,
•
задержка,
•
вариация задержки,
•
доля потерянных ячеек.
81
Службы АТМ
8.2.
Для поддержки требуемого качества обслуживания, было разработано пять служб АТМ:
1. CBR – служба для передачи трафика с постоянной
скоростью;
2. rt VBR – служба для передачи в реальном масштабе
времени с переменной скоростью;
3. nrt VBR – служба для передачи в нереальном масштабе времени с переменной скоростью;
4. UBR – служба с заранее незаданной скоростью передачи;
5. ABR – служба с доступной скоростью передачи.
Покажем в таблице соотношение между службами и параметрами в таблице 8.1
Таблица 6.
Соотношение между службами и параметрами.
Параметры/службы CBR rtVBR nrtVBR UBR ABR
Вариации задержХ
Х
ки (CDV)
Задержка (CTD)
Доля потерянных
ячеек (CLR)
Пиковая скорость
(PCR)
Средняя скорость
(SCR)
Минимальная скорость (MCR)
82
Х
Х
Х
Х
Х
Х
Х
Х
Х
Х
Х
Х
8.3.
Форматы ячеек АТМ
Для совмещения разнородного трафика в одной сети
была выбрана фиксированная длина пакета 53 байта. Покажем на рисунке структуру пакета АТМ на сетевом интерфейсе NNI.
8
7
6
5
4
3
2
1
VPI
VPI
Заголовок к
АТМ
VCI
VCI
PTI
VCI
CLP
HEC
Рис. 8.2 формат заголовка на интерфейсе NNI.
Идентификатор виртуального пути (VPI) и идентификатор виртуального канала (VCI) образуют адресное поле
ячейки. Эти идентификаторы занимают большую часть заголовка ячейки.
Идентификатор типа нагрузки (PTI) определяет тип
ячейки: ячейка пользователя; ячейка управления и обслуживания (OAM), которая используется для передачи параметров качества; ячейка динамического управления полосой пропускания; свободная ячейка.
Ячейки управления и обслуживания вставляют регулярно в пользовательский поток ячеек (например, каждая 32
83
ячейка – это ячейка ОАМ) и обеспечивают контроль и передачу параметров QoS.
Ячейки динамического управления полосой пропускания используются в службе ABR и информируют источник
о свободных ресурсах сети.
Поле приоритета потери ячеек (занимает 1 бит) CLR
устанавливается в единицу для тех ячеек, которые не прошли тест (контроль) на использование зарезервированной
полосы пропускания. Контроль осуществляется на основании алгоритма дырявого ведра. Ячейки с битом CLR, установленным в единицу, будут сбрасываться коммутатором
АТМ локально, т.е. только по состоянию его собственных
очередей.
HEC – поле контрольной суммы, выполняет две функции:
1.
позволяет обнаруживать и исправлять ошибки в
заголовки кратностью не более 2-х. ошибки более высокой
кратности не исправляются, и ошибочные ячейки сбрасываются коммутатором АТМ.
2.
обеспечивает синхронизацию ячеек. Если несколько подряд ячеек, семь и более, имеют неправильную
контрольную сумму, то это говорит о том, что была неправильно определена граница ячеек, и требуется подстройка
цикла для определения правильной границы ячеек.
8.4.
Механизмы управления потоком
Для управления трафиком АТМ с целью поддержки качества обслуживания используются следующие механизмы:
•
контроль за установлением соединения;
•
контроль за использованием полосы пропускания;
•
формирование трафика;
84
•
контроль приоритета;
•
механизм отбрасывания пакетов и ячеек.
Контроль за установлением соединения отвечает за доступ в сеть АТМ. При этом принимается решение, будет ли
установлено соединение или будет получен отказ. Решение
об установлении соединения принимается на основе требуемой пиковой скорости запрашиваемого соединения и
пиковых скоростей существующих соединений, также на
основе требований к качеству обслуживания соединений
(существующих и запрашиваемого). Соединение устанавливается, если имеется свободная полоса пропускания, необходимая для резервирования под пиковую скорость нового соединения, и если параметры качества обслуживания
в уже установленных соединениях не пострадают.
Резервирование полосы пропускания означает, что данная полоса может быть использована только соответствующим соединением независимо от активности источника.
Может быть реализовано несколько механизмов контроля
за установлением соединения. Например, для трафика
CBR, с высоким качеством обслуживания резервируется
полоса, равная трем пиковым скоростям. Возможно резервирование полосы, равной двум пиковым скоростям, и выделение еще одной полосы, равной пиковой скорости, для
совместного использования с другими типами трафика на
приоритетной основе.
Контроль за использованием полосы пропускания реализует проверку соответствия параметров поступающего
трафика с параметрами, зафиксированными в контракте.
Этот контроль осуществляется на граничном коммутаторе
на входе в сеть и использует алгоритм «дырявого ведра».
Для ячеек АТМ, которые приводят к превышению оговоренной скорости передачи, бит CLP устанавливается в
единицу. Далее ячейки с битом CLP равным единице сбрасываются коммутатором в случае перегрузки. Состояние
85
перегрузки коммутаторов определяет локально по состоянию своих очередей.
Для реализации алгоритма «дырявого ведра» в коммутаторе АТМ поддерживается счетчик для данного соединения, который определяет число поступивших байт данного соединения на контролируемом интервале. Ячейка,
которая приводит к переполнению счетчика на контролируемом интервале, отмечается битом CLP=1. Таким образом, в коммутаторе АТМ контролируется пиковая и средняя скорости соединения, поэтому используется алгоритм
двойного ведра.
Рассмотрим действие алгоритма «дырявого ведра» более подробно. Определим некоторый интервал времени T,
который назовем циклом анализа.
Выделим по оси времени момент tk=kT, соответствующие началу каждого k-го цикла. В начале каждого цикла
устанавливаются нулевые показания счетчика. Рассмотрим
работу алгоритма на k-м цикле анализа.
Допустим, что в каждый момент времени t на счетчик
поступают ячейки с интенсивностью λ(t). Если оговоренная интенсивность поступления ячеек равна μ, то из показаний счетчика постоянно вычитаются единицы, с интенсивностью μ. При нулевых показаниях счетчика дальнейшее вычитание не производится.
Таким образом, показания счетчика на интервале времени от tk до t, будет определяться соотношением
A( t ), еслиA( t ) 0
,
0, еслиA( t ) 0
Qk ( t )
(8.1)
где
t tk
A( t )
( s )ds
0
86
(t tk )
(8.2)
График изменений показания счетчика для k-го цикла
приведена на рисунке.
Qm
Qk(t)
Qk(tk+T)
tk
tk+1
S
tk≤t≤ tk+1
T
Рис. 8.3 график изменения показателей
счётчика числа ячеек на k-ом цикле
Ячейки, приводящие к переполнению установленных
максимальных значений Qm показаний счетчика отмечаются битом CLP=1.
8.4.1. Формирование трафика
Механизм формирования трафика позволяет сформировать входящий трафик пользователя, заранее согласованный с требованиями в контракте. Для формирования трафика могут использоваться следующие механизмы:
снижение пиковой скорости передачи, т.е. отправитель
работает на меньшей пиковой скорости, чем та, которая
указана в контракте.
Уменьшение длины пачки. Отправитель ограничивает
размер пачки до значения меньшего, чем указанного в кон87
тракте. В этом случае снижается и вероятность нарушения
контракта.
Буферизация ячейки. Ячейка, нарушавшая контракт
устанавливается в дополнительный буфер и ожидает там
обработки, до тех пор, пока не разгрузится выходной интерфейс. Ячейки, передаваемые с выходного интерфейса,
гарантированно не нарушают контракт.
Механизмы формирования трафика не являются обязательными.
8.4.2. Контроль приоритетов
Механизм контроля приоритетов решает задачу выбора
из очереди ячейки, которая должна быть поставлена следующей. В коммутаторах АТМ используется приоритетная
схема обслуживания очередей, согласно которой наивысшем приоритетом обладают ячейки CBR трафика, а
наименьшим – UBR. Ячейки меньшего приоритета могут
обслуживаться только в том случае, если обнулены все
ячейки более высоких приоритетов. Очевидным недостатком этой схемы является нехватка ресурсов для низкоприоритетного трафика в случае перезагрузки.
Альтернативной приоритетной схемой является схема с
взвешенным распределением полосы пропускания. В этом
случае каждому трафику или службе назначается доля
пропускной способности выходного интерфейса, которая
гарантированно предоставляется трафику в случае перегрузки. Планировщик циклически обнаруживает очереди,
и за каждый цикл опроса очередей из каждой очереди считывается количество ячеек, которое соответствует назначенному весу или проценту. Если очередь пустая, то ресурс для нее не выделяется и обслуживается следующая
очередь, т.е. при циклическом процессе ресурс выделяется
динамически.
88
8.5.
Контроль потока ABR
Чтобы уменьшить потери при передаче трафика данных
при перезагрузке, в 1996 г. была введена еще одна служба:
служба ABR. Эта служба предусматривает алгоритм
управления потоком с обратной связью. С помощью этого
алгоритма сеть уведомляет источник о своих свободных
ресурсах (о свободной полосе пропускания, т.е. желательной скорости передачи, или о буферном пространстве
коммутатора). Источник введет передачу и, наряду с ячейками данных, посылает служебные ячейки. На 32 ячейки
данных – 2 служебные. Служебные ячейки прямого
направления содержат желательную скорость передачи источника. При прохождении служебных ячеек по сети каждый коммутатор АТМ может изменить желательную скорость передачи, указанную с служебных ячейках, исходя
из собственной нагрузки. Приемник также может изменить, т.е. уменьшить эту скорость. Приемник преобразует
служебные ячейки прямого направления в служебные
ячейки обратного направления и передает их источнику.
При обратном следовании каждое устройство также может
изменить скорость передачи. Таким образом, источник в
служебных ячейках получит ту скорость передачи, с которой сеть может его обслужить. Эта скорость соответствует
самому медленному устройству на пути следования ячеек.
Рассмотренная схема называется скоростной, она поддерживается всеми коммутаторами АТМ.
Альтернативой скоростной схеме является кредитная
схема. В этой схеме устройства сообщают по обратной
схеме не скорость, а кредит, т.е. свое свободное буферное
пространство. В этом случаи источник передает ровно
столько информации, сколько может принять приемник. В
этой схеме полностью исключаются потери ячеек. Однако
89
кредитная схема является более сложной, поэтому для ее
реализации требуется раздельное введение очередей под
каждое соединение.
Фактически в оборудовании АТМ могут использоваться
обе схемы на различных участках сети. Например, на магистральном участке – скоростная схема, на граничном
участке с пользователем – кредитная схема. Такой подход
совместного использования схем имеет следующие преимущества:
•
обратная связь становится более короткой, и, следовательно, сеть быстрее реагирует на перезагрузки;
•
обеспечивает более гибкое управление потоком.
На границе индивидуальный трафик пользователя является пульсирующим, и поэтому целесообразно использовать кредитную схему. На магистральном участке передается агрегированный трафик многих пользователей, он является более регулярным, и можно использовать скоростную схему.
2
1
3
VD
VS
VS
VD
Рис. 8.4 Совместное использование различных схем
управления потоком
VS – виртуальный отправитель, передает служебные
ячейки.
VD – виртуальный получатель, получает служебные
ячейки и преобразует их в служебные ячейки обратного
направления.
90
8.6.
Механизмы отбрасывания ячеек
Если службы CBR и VBR обеспечивают доставку трафика с гарантией, то службы ABR и UBR доставляют трафик с максимальным усилием, т.к. трафик обслуживается
по остаточному принципу. В этом случае полностью избежать потери ячеек не удается, но можно потери ячеек свести к минимум, используя адаптивное управление буфера в
коммутаторе. Существует два алгоритма отбрасывания
ячеек: статический и адаптивный.
В статическом алгоритме решение о сбросе ячеек принимается по состоянию очереди данного соединения и не
учитывается состояние очередей других соединений. В
этом случае буферное пространство используется не эффективно.
При адаптивном методе решение о сбросе ячеек принимается с учетом состояния очереди данного соединения и
состояния буферного пространства службы.
Очередь
соединений
Точка принятия
решения о сбросе
1
2
Кривая сброса
Рис. 8.5 График решения о сбросе ячеек при адаптивном
методе управления.
91
Если точка принятия решения лежит выше кривой сброса (1), то ячейка не сбрасывается, в противном случае (2)
ячейка сбрасывается.
8.7.
Методы сброса пакета
При передачи пакетов по сети АТМ, в случае перегрузки, ячейки пакета могут быть сброшены коммутатором
АТМ. При потере хотя бы одной ячейки пакета приемник
TCP не принимает пакет и осуществляется повторная передача пакета TCP источником. Поэтому, если теряется
хотя бы одна ячейка пакета, то нет смысла передавать
остальные ячейки пакета, потому что это бесполезная трата ресурсов. В службе UBR предусмотрен механизм сброса
остатков пакета, который удаляет остаток пакета при обнаружении потери одной ячейки.
Кроме того, в службе UBR применяется механизм защиты от перезагрузок RED, который также использует сброс
ячеек. Решение о сбросе ячейки основывается на средней
длине очереди, а не текущей длине очереди. Это позволяет
отличить серьезную перегрузку от кратковременного
всплеска. Кроме того, в алгоритме RED учитываются два
порога. Если вычисленная средняя длина очереди меньше
первого порога, то ячейки не сбрасываются. Если средняя
длина очереди больше первого, но меньше второго, то
ячейки сбрасываются с возрастающей частотой при изменении очереди от первого порога ко второму. И если длина
очереди достигает второго порога, то осуществляется
100% сброс ячеек.
92
9.
9.1.
Протоколы
Cетевая модель TCP/IP
Каждый из протокольных блоков (PDU) трафика мультисервисных сетей выполняет одну или несколько функций, предусмотренных семиуровневой моделью ЭМВОС
(OSI).
Различные технологии, применяемые при построении
мультисервисных сетей, используют множество соответствующих протоколов. Однако, в последние годы, все они
все более объединяются в множество протоколов TCP/IP.
Обширная коллекция сетевых протоколов и служб,
называемая TCP/IP, включает намного больше, чем просто
сочетание двух основных протоколов, давших ей имя. Тем
не менее, эти протоколы заслуживают первоначального
представления: протокол управления передачей (Transmission Control Protocol, TCP) обеспечивает надежную доставку сообщений произвольного размера и определяет сложный механизм доставки для всех видов данных в сети;
протокол Internet (Internet Protocol, IP) организует маршрутизацию сетевых передач от отправителя к получателю,
отвечает за сетевые и компьютерные адреса и выполняет
множество других функций. Вместе взятые, эти протоколы
передают значительную часть данных, циркулирующих в
мультисервисных сетях, хотя представляют собой лишь
крошечную долю от всей совокупности протоколов
TCP/IP.
Так как архитектура TCP/IP была разработана за долго
до становления в 1980 – х годах эталонной модели взаимодействия открытых систем (OSI), неудивительно, что конструктивная модель TCP/IP несколько отличается от эталонной модели OSI. В таблице 10.1. изброжены уровни
двух моделей OSI и более простой TCP/IP; так же устанав93
ливается их соответствие уровням. Эти комплекты уровней
похожи, но не идентичны. Причиной этого является то, что
некоторые функции, связываемые с Сеансовым и Уровнем
представления эталонной модели взаимодействия открытых систем, заключены в Прикладном уровне TCP/IP; с
другой стороны, некоторые аспекты Сеансового уровня
первой модели присутствуют в Транспортном уровне второй.
Таблица 7.
Уровни согласно
модели OSI
7
приклад ной
сетевой
2
канальный
1
физический
TFTP
3
TCP
DNS
транспортный
SNMP
4
SMTP
сеансовый
Telnet
5
FTP
представительный
HTTP
6
Уровни стека TCP/IP
UDP
IP(ICMP, ARP, RARP, RIP, OSPF)
9.2.
Ethernet, Token Ring, FDDI, ATM,
MPLS, RPR, SONET/SDH, PPP…
прикладной
транспортный
межсетевой
Сетевого доступа
интерфейса
Уровень доступа к сети
Уровень доступа к сети модели TCP/IP иногда называют
сетевым интерфейсом. На этом уровне задействованы технологии локальных сетей (LAN), в частности, Ethernet,
технология АТМ, Х.25, беспроводные среды и устройства.
На уровне доступа к сети применяются сетевые стандарты Института инженеров по электротехнике и электронике (Institute of Electrical and Electronics, Engineers, IEEE ).
94
В их числе – семейство стандартов IEEE 802, включающее,
помимо прочих, следующие заслуживающие внимания
компоненты:
•
802.1 по межсетевому обмену – общее описание
функционирование межсетевого обмена (т.е. обмена данными между различными физическими сетями) для всего
семейства стандартов 802;
•
802.2 по управлению логическим соединением
LLC (Logical Link Control) – общее описание установки и
поддержки логического соединения между двумя устройствами в пределах одной физической сети;
•
802.2 по управлению доступом к среде MAC (
Media Access Control) – общее описание идентификации и
получения доступа к интерфейсам сред передачи; включает схему создания уникальных адресов уровней управления доступом к среде (МАС) для всех интерфейсов сред;
•
802.3 по множественному доступу с контролем
несущей и обнаружением конфликтов CSMA/CD (Carrier
Sense Multiple Access with Collision Detection). CSMA/CD –
это обозначение функционирования и поведения сетевой
технологии, более известной как Ethernet. Это семейство
также включает Gigabit Ethernet (802.3 z) вместе с двумя
разновидностями по скорости – 10 и 100 Мбит/с, хотя
стандарт 802.12 называется «Высокоскоростная работа в
сети».
Согласно модели IEEE уровень звена данных делится на
два подуровня: управление логическим каналом и управлением доступом к среде (УДС).
Верхний подуровень LLC (Logical Link Control) осуществляет управление процессом передачи информации на
логическом уровне.
Нижний подуровень MAC (Medium Access Control) алгоритмы доступа к среде и адресацию станций. На этот
95
подуровень возлагается функция совместного использования среды, определяющая особенности доступа к среде.
Физический уровень, как обычно, обеспечивает сопряжение станций со средой, кодирование и декодирование
сигналов, побитовую синхронизацию. Этот уровень делится на три подуровня: - передача физических сигналов
(ПФС), интерфейс с устройством доступа (с модулем сопряжения, ИМС) и соединитель модуль доступа (модуль
сопряжения со средой, МСС).
9.2.1. Управление логическим каналом
на подуровне LLC (УЛК)
В специфику протоколов на подуровне LLC следующие
особенности:
1.
низкая вероятность искажения данных физической средой позволяет применить простейшие протоколы обмена.
2.
функция обеспечения достоверности передаваемой информации снята с подуровняLLC и передана
подуровню МАС.
3.
в отличие от HDLC глобальных сетей в ЛВС
используются двух адресные протоколы (отправителя и
получателя).
4.
в LLC передача данных на уровень МАС еще
не означает его реальную отправку на другую станцию
ЛВС, так как протокольный блок данных (ПДФ) буферизируется перед получением доступа к физической среде.
Формат протокольного блока (кадра) на уровне УЛК
(LLC) представлен на рис. 9.1.
96
Уровни
ЛВС
Подуровень
Адрес
получателя
8 бит
Адрес
отправителя
8 бит
Управляющее
поле
Данные
8 или 16 бит
8*n бит
УИП
Подуровня
УДС
Концевик
подуровня
УДС
Подуровень
УДС
Рис. 9.1 формат кадра на уровне УЛК.
Каждый протокольный блок данных (ПБД) содержит
два адреса к ТДУ: адрес получателя (ТДУП) и адрес отправителя (ТДУО) (обычно это объекты внутри станции).
Адреса этих станций распознаются в подуровне УДС
(МАС) (рис. 9.2).
Рис. 9.2
Рис. 9.2 форматы полей ТДУП и ТДУО.
Здесь: И/Г – бит «индивидуальный/групповой адрес»,
К/О – бит, означающий, что кадр является командой или
ответом.
Поля адресов в ТДУП и ТДУО имеют по 8 бит. Индивидуальному адресу получателя соответствует И/Г=0; групповому - И/Г=1.
Код адреса ТДУП – 11111111 – означает адресацию
всем ТДУ станции. Адрес ТДУО всегда индивидуален.
97
Разряд К/О служит для распознания команд (К/О=0) и ответов (К/О=1).
Все кадры по характеру передаваемых данных и своему
назначению подразделяются на:
- ПБДИ – информационные;
- ПБДУ – управляющие;
- ПБДН – ненумерованные.
Форматы полей управления кадров подуровня УЛК
представлены на рис. 9.3.
Разряды поля управления
Тип ПГД
1
2
3
4
5
6
7
8
Порядковый номер
передаваемого ПБДИ N(s)
ПБДИ
0
ПБДУ
1
0
Y
Y
Х
Х
Х
Х
1
1
М
М
З/П
М
М
М
ПБДН
9
10
16
З/П
Порядковый номер передаваемого
ПБДИ N(r)
З/П
Порядковый номер передаваемого
ПБДИ N(r)
Рис. 9.3 Форматы полей управления кадров УЛК.
ПБДИ обязательно содержит поле информации. Формат
поля управления обязательно имеет первый разряд – 0 и
содержит два адреса N(s) и N(r).
ПБДУ и ПБДН содержат первый разряд, равный 1. второй разряд для ПБДУ – 0; для ПБДН – 1.
Y – разряды, модифицирующие ПБДУ;
98
00 – готов к приему - RR;
01 – неприем – RRJ;
10 – не готов к приему – NR;
Х – резервные (всегда равны нулю).
Значения N(s) и N(r) устанавливаются по модулю 128
(от 0 до 127).
N(r) – подтверждает получение всех кадров с номерами
N(r) – 1 и всех предшествующих этому номеру. Число N(r)
показывает, что получатель ожидает кадр с номером N(r).
Получатель регистрирует в накопителе все кадры, на
которые не получено положительное подтверждение.
При положительном подтверждении кадр стирается, а
его порядковый номер циклически используется.
Бит З/П (запрос передачи/последний кадр) в ПБД, содержащих команды (К/О=0), трактируется как «Запрос передачи», а в ПБД содержащих ответы (К/О=1), трактируется как последний кадр в цепочке ответов.
Биты М в ПБДН модифицируют ПБДН (различные команды и ответы).
9.2.2. Управление на подуровне доступа к среде
УДС (МАС)
Формат кадра подуровня УДС предусматривает 8 полей,
показанных на рис. 9.4.
ПМБ
НО
АП
АО
ДК
УЛК
ЗАП
КПК
Рис. 9.4 Поля кадра подуровня УДС
ПМБ – преамбула
НО – начальный ограничитель
АП, АО – адрес получателя и отправителя
99
ДК – указатель длины кадра данных (УЛК)
ЗАП – заполнитель
КПК – контрольная последовательность кадра
•
поле преамбулы имеет вид 10101010
•
поле НО имеет вид 10101011 и означает начало
кадра
•
адрес получателя:
1-й бит=0 – индивидуальный
1-й бит=1 – групповой (группа станций, все
станции, ни одной станции)
2-й бит=0 – локальный адрес (2 байт)
2-й бит=1 – глобальный адрес (6 байт)
При широковещательной адресации – все биты устанавливаются в единицу.
•
Адрес отправителя всегда индивидуален, поэтому
первый бит всегда =0
Поле ДК указывает число октет, содержащихся в поле
УЛК.
Поле ЗАП – дополняет поле УЛК до минимального значения.
Поле КПК – дает циклическую проверку всех полей посредством полинома 9.1:
P ( x ) Px32 Px26 Px23 Px22 Px16
(9.1)
Px10 Px8 Px7 Px5 Px4 Px2 Px 1
Непосредственная связь подуровня УДС с физическим
уровнем доступа осуществляется кадрами, передаваемыми
через интерфейс ИМС, показанными на рис. 9.5.
МОЛЧ
ПМБ
НО
Кадр данных УДС
КО
МОЛЧ
Рис. 9.5 Кадры на уровне интерфейса ИНС.
100
МОЛЧ – молчание
ПМБ – преамбула
НО – начальный ограничитель
КО – конечный ограничитель
ПМБ – 101010…10 – не менее 56 битовых интервалов
НО – 10101011
КО – передаются сигналом «пусто»
Наличие несущей обнаруживается по переходам сигнала. Если переходы не обнаруживаются в течение 0.75 ….
1.25 битовых интервала, отсчитываемого от центра последнего интервала, то несущая считается отсутствующей.
В последнее время получают распространение стандарты, предусматривающие передачу со скоростями, превышающими 10 Гбит/с.
Наиболее важные протоколы Уровня доступа к сети модели TCP/IP – протоколы SLIP и PPP. SLIP – это более
старый протокол, не содержащий встроенных возможностей по безопасности.
PPP- это более современный протокол для последовательного канала, широко применяемый для соединений в
сети Internet и в частных сетях TCP/IP. Он нейтрален по
отношению к другим протоколам и может задействовать
протоколы несколько типов одновременно в течении одного соединения по последовательному каналу. Реализация
протокола PPP в системах Windows обеспечивает в пределах одного соединения поддержку всех основных Windows
– протоколов.
PPP как протокол для последовательного канала предпочтителен. Основная причина кроется в том, что он поддерживает множество возможностей, касающихся обеспечения безопасности, в том числе шифрование регистрационной информации или всего трафика, проходящего по последовательному каналу, а также намного больший, чем
101
SLIP, набор протоколов. Описание протокола PPP содержится в спецификации RFC 1661.
Особое место в мультисервисных сетях принадлежит
трафику, относящемуся к технологиям АТМ и MPLS. обе
технологии используют принцип коммутации по меткам.
Технология АТМ предусматривает дробление пакетов любого вида на небольшие ячейки, размером 53 байта с последующей коммутацией ячеек, в соответствии с имеющимися в их заголовках метками. В последние годы особое
развитие получила технология MPLS. В основе технологии
лежит возможность создания виртуальных маршрутов
(тоннелей) к пунктам следования информационных потоков. Тоннели создаются программным путем и применяются для переноса агрегированного трафика, имеющего
общий пункт назначения. Одной из характеристик, которая
в лучшею сторону отличает MPLS от подобных ей технологий коммутации меток, в частности, от АТМ, является
возможность MPLS передавать вместе с пакетом не одну
метку, а целый стек меток. Это позволяет создать иерархию потоков в сети MPLS и организовать тоннельные передачи. Причем в сети MPLS можно создать тоннели и
осуществлять управление трафиком в каком-то сегменте
сети, а не от точек входа в сеть и выхода из нее, как того
требуют традиционные средства образования тоннелей.
Важной областью применения MPLS является строительство виртуальных сетей. Узлы, не имеющие прямых связей, в виртуальной сети могут рассматриваться как связанные тоннелями с заданными скоростями передачи. Если
необходимо провести разделение потоков в соответствии с
уровнем обслуживания, то можно построить соответствующее число параллельных виртуальных сетей.
102
9.3.
Протоколы межсетевого уровня
Протоколы Межсетевого уровня модели TCP/IP отвечают за маршрутизацию между компьютерами в нескольких сетях, а также координируют сетевые имена и адреса,
облегчающие эту деятельность. Чтобы быть точным, на
Межсетевом уровне выполняются три важнейших для
TCP/IP задачи.
• Фрагментация MTU(максимальных единиц передачи). Когда по определенному маршруту данные передаются из сети одного типа в сеть другого типа, их максимальные единицы передачи (MTU) – наибольшие объемы информации , доставку которых выдерживает сеть ,-могут
различаться. При переходе из среды, поддерживающей
большую максимальную единицу передачи, в среду, в которой эта единица меньше, данные должны быть разбиты
на меньшие блоки, соответствующие меньшей из единиц .
Требуется, чтобы это преобразование было хотя бы однонаправленным ( поскольку меньшие пакеты необязательно
должны объединяться для прохождения по сети с большей
максимальной единицей передачи ), но оно должно быть
выполнено в процессе передачи данных)
•
Адресация (Addressing).Здесь определяется механизм, посредством которого все сетевые интерфейсы в сети TCP/IP должны быть поставлены в соответствие с конкретными уникальными битовыми комбинациями, идентифицирующими каждый интерфейс в отдельности, а также сети ( или даже культурные и языковые окружения сетей ) ,к которым эти интерфейсы принадлежат .
•
Маршрутизация (Routing).Здесь определяется механизм пересылки пакетов от отправителя к получателю, в
который могут быть вовлечены многочисленные промежуточные ретрансляторы. Эта функция объединяет не только
процессы , делающие возможной успешную доставку , но
103
также методы отслеживания ее эффективности и сообщения об ошибках при неудачной доставке или в случае появления других препятствующих факторов.
Таким образом, Межсетевой уровень осуществляет доставку данных от отправителя к получателю. Кроме того,
при необходимости он переупаковывает данные в контейнеры меньшего размера, разрешает вопросы идентификации местоположения отправителя и получателя и способов
доставки информации по сети из первого пункта во второй.
Среди важнейших протоколов, функционирующих на
Межсетевом уровне модели TCP/IP , есть следующие:
•
IP (Internet Protocol, протокол Internet) направляет
пакеты от отправителя к получателю;
•
ICMP (Internet Control, Message Protocol, протокол
контроля сообщений в сети Internet) контролирует маршрутизацию на основе протокола IP и поведение сети;
•
PING (Packet Internetwork Grouper, отправитель
пакетов Internet ) проверяет доступность и период кругового обращения между IP-адресами отправители и получателя;
•
ARP(Address Resolution Protocol,протокол разрешения адресов ) осуществляется преобразование IPадресов в MAC – адреса (Media Access Control Address, адреса управления доступном к среде) в определённом сегменте кабеля (всегда применяемого для осуществления
финального этапа доставки пакета);
•
RARP(Reverse Address Resolution Protocol, протокол определения адреса по местоположению ) преобразует
MAC-адреса в числовые IP-адреса;
•
BOOTP(Bootstrap Protocol , протокол загрузки) –
это предшественник
• DHCP (Dynamic Host Configuration Protocol, протокола динамической конфигурации хоста), управляющего
104
сетевым размещением IP-адресов и другими данными, связанными с IP-конфигурацией. Протокол BOOTP позволяет
сетевым устройствам получать загрузочные и конфигурационные данные по сети, а не с локального дисковода ;
•
RIP(Routing Information Protocol, протокол маршрутной информации) – это оригинальный базовый протокол маршрутизации для областей маршрутизации локальных или внутренних областей объединенных сетей;
•
OSPF(Open Shortest Path First, первоочередное открытие кратчайших маршрутов) –это широко распространенный протокол маршрутизации состояния канала для
локальных или внутренних областей маршрутизации локальных объединенных сетей;
•
BGP (Border Gateway Protocol, пограничный межсетевой протокол ) – это широко распространенный протокол маршрутизации, осуществляющий соединение с обычными магистралями сети Internet или с другими маршрутными доменами в этой сети, где многочисленные стороны
совместно несут ответственность за формирование трафика.
9.3.1. Протокол IP
Протокол IP является самым главным во всей иерархии
протоколов семейства TCP/IP. Именно он используется для
управления рассылкой TCP/IP пакетов по сети Internet.
Среди различных функций, возложенных на IP обычно выделяют следующее:
определение пакта, который является базовым понятием и единицей передачи данных в сети Internet;
определение адресной схемы, которая используется
в сети Internet;
передача данных между канальным уровнем (уровнем доступа к сети) и транспортным уровнем ( другими
105
словами мультиплексирование транспортных дейтаграмм
во фреймы канального уровня )
маршрутизация пакетов по сети, т.е. передача пакетов от одного шлюза к другому с целью передачи пакета
машине – получателю ;
«нарезка» и сборка из фрагментов пакетов транспортного уровня.
Главными особенностями протокола IP является отсутствие ориентации на физическое или виртуальное соединение. Это значит, что прежде чем послать пакет в сеть,
модуль операционной системы, реализующий IP, не проверяет возможность установки соединения, т.е. никакой
управляющей информации кроме той, что содержится в
самом IP – пакете, по сети не передается. Кроме этого, IP
не заботится о проверке целостности информации в поле
данных пакета, что заставляет отнести его к протоколам
ненадежной доставки. Целостность данных проверяется
протоколами транспортного уровня ( TCP) или протоколами приложений.
Таким образом, вся информация о пути, по которому
должен пройти пакет берется из самой сети в момент прохождения пакета. Именно эта процедура и называется
маршрутизацией в отличие от коммутации, которая используется для предварительного установления маршрута
следования данных, по которому потом эти данные отправляют.
При неустойчивой работе сети пакеты могут, пересылаются по различным маршрутам и затем собираться в
единое сообщение. При коммутации путь придется каждый раз вычислять заново для каждого пакета, а в этом
случае коммутация потребует больше накладных затрат,
чем маршрутизация.
Структура IP-заголовка версии IPv4 и его поля представлены на рисунке 9.6.
106
Поле «версия»(version 4,бита) в заголовке IP предназначено для идентификации версии IP, использованной при
создании заголовка. Если заголовок IP был создан в сети,
использующей более новую версию IP, он может содержать информацию, которая не распознается старой версией. В этом случае принимающая сеть, работающая со старой версией IP, уведомляется о необходимости пропустить
нераспознаваемые поля.
Поле «длина заголовка» (HL – Internet Header Length,4
бита) содержит длину заголовка IP-пакета в 32-разрядных
словах. Значение этого поля не может быть меньше 5.
Версия
Длина
Тип обслуж.
Идентификатор
Время жизни
Общая длина
Флаги
Протокол
Смещение фрагмента
Контрольная сумма заголовка
Адрес IP источника
Адрес IP назначения
Опции IP (Необязательно)
Выравнивание
фрагмента
Данные
Рис. 9.6 Заголовок IP версии IPv4
В поле «тип обслуживания» (TOS – Type of Service, 8
битов) указывается требуемое качество обслуживания
данных. В других протоколах аналогичное поле часто
называют полем QoS ( качество обслуживания ). Поле содержит четыре параметра, несущих информацию о приоритете дейтаграммы, о возможности поступления последовательности таких дейтаграмм с регулярными интервалами, о допустимости ошибок, о важности скорости доставки
дейтаграммы и, наконец, об относительной важности скорости по сравнению с надёжностью на случай конфликта
между двумя этими партнёрами. Введены следующие обозначения: PPP – приоритет, D – атрибуты задержки, T –
107
атрибуты пропускной способности, R – атрибуты надёжности. Трехбитовый код PPP указывает уровень приоритета блока данных, применяемый для управления при перегрузке (блоки данных с меньшим приоритетом могут быть
отброшены, а обработка блока данных с более высоким
приоритетом разрешается) и для управления потоком. Поле задержки D указывает, какова допустимая задержка при
передаче пакета. Оно может принимать два значения –
нормальная задержка и малая задержка. Значение 1 соответствует малой задержке. Поле пропускной способности
Т указывает, какова должна быть пропускная способность
средств доставки блока данных. Например, если блок данных генерируется приложением реального времени (таким
как интерактивная игра), это приложение может запросить
ускоренную доставку блока, что требует более высокой
пропускной способности средств доставки. Допустимые
значения – нормальная или высокая пропускная способность. Поле надежности R используется аналогичным образом, указывая, требует ли этот блок данных высокой или
обычной надежности обслуживания.
Поле «общая длина» (Total Length, 16 битов), аналогичное полю длины TCP – заголовка, содержит измеряемую в
битах суммарную длину дейтаграммы, включая длину IP заголовка и данных. Этот параметрам позволяет узлам
определить длину поля данных путем вычитания из его
значения длины заголовка. Максимальная допустимая
длина всей дейтаграммы целиком, считая буквы, входящие
в заголовок дейтаграммы и данные, составляет 65535 байтов, т.е. длина дейтограммы может достигать 2(16 1) байтов.
Однако длинные дейтограммы при работе IP – протокола
не используются. Все хосты и шлюзы сети, как правило,
работают с длинами до 576 байтов. Число 576 выбрано из
тех соображений, что этой длины пакета вполне достаточ-
108
но для того, чтобы передать заголовок (64 байта) и блока
данных (длиной до 512 байтов).
Поле «идентификатор» (identification, 16 битов) представляет собой уникальный номер, характеризующий конкретную дейтаграмму, и используется для связи фрагментов блоков данных. Значения этого поля устанавливается
определителем и служит идентификатором дейтаграммы,
например, в случаи ее фрагментации.
Наличие поля флагов (flags) и поля смещения (fragmentation) связано с тем, что учитывая ограничения на длину
кадра в конкретной реализации сети, протокол IP разбивает большой исходный блок данных на фрагменты и упаковывает их в пакеты. Для определения принадлежности пакетов – фрагменту одному блоку данных и обеспечения его
правильной сборки в поле флагов устанавливается специальный признак, а величины смещения помещаются в поле
смещения. Поле флага содержит 3 бита: первый бит этого
поля всегда имеет значение ноль, второй бит определяет,
разрешена или нет фрагментация блока данных. Величина
поля смещения задает смещение в 64 – битовых блоках.
Первый фрагмент имеет нулевое смещение.
Поле «время жизни» (TTL – Time to live) содержит сведения о том, в течении какого времени дейтаграмме разрешено находится в сети, фактически представляя собой
счетчик транзитов. Указанное время измеряется в секундах
и уменьшается на 1 на каждом этапе обработки дейтаграммы в процессе ее следования по сети, а при достижении нуля дейтаграмма уничтожается в целях экономии ресурсов сети, когда группа маршрутизаторов может «гонять» блок данных по кругу из-за какой–то неисправности
в сети. Когда маршрутизатор обнаруживает, что значения
параметра «время жизни» достигло нуля, он немедленно
удаляет блок данных и передает отправителю сообщение
109
об ошибке с помощью рассмотренного выше протокола
ICMP.
Поле «протокол» (protocol, 8 битов) содержит указание,
какой протокол следует за IP. Каждый протокол, относящийся к TCP/IP, идентифицируется фиксированным номером.
Поле контрольной суммы (Header checksum, 16 битов)
служит для проверки правильности информации заголовка
дейтаграммы. Контрольная сумма обеспечивает проверку
только данных заголовка, которые включают в себя IP –
адреса источника и пункта назначения. При проверке заголовка IP, контрольная сумма анализирует правильность
номера версии IP и подтверждает отличие от нуля поля
«время жизни». Она позволяет также поверить отсутствие
искажения заголовка IP и допустимость длины сообщения.
Поле опций содержит информацию (например, спецификации маршрутизации), необходимую для решения разнообразных задач, и обычно используется приложениями
эксплуатационного управления сетью или при отладке.
Данные, которые предоставляют опции IP, зависят от конкретного приложения, их использующего. Когда требуется
услуга «записать маршрут», поле опций указывает и это.
Как это имеет место в других протоколах, заголовок IP содержит поле выравнивания (padding), состоящий из нулей
и выравнивающее 32 – битовую границу в рамках протокола.
Поле адресов IP – отправителя и IP – получателя используются маршрутизаторами и шлюзами для маршрутизации блока данных в сети. Эти адреса остаются неизменными в течение всего времени жизни блока данных и не
преобразуются промежуточными сетями.
В начале 1995 года IETE, после 3-х лет консультаций и
дискуссий, выпустило предложения по новому стандарту
протокола IP-IPv6, который еще называют IPing.
110
Протокол IPv6 решает проблему нехватки IP – адресов
за счет использования 128 – разрядных адресов вместо 32 –
разрядных адресов IPv4, благодаря чему адресное пространство расширяется в 296 раз.
Новый заголовок IP – пакета показан на рисунке 9.7.
Версия
Приоритет
Метка потока
Длина данных
Следующий
заголовок
Ограничение
пересылок
Адрес IP источника
Адрес IP назначения
Рис. 9.7 Заголовок IPv6
Однако, не только адресная проблема определила появление нового протокола.
Разработчики позаботились и о масштабируемой адресации IP – пакетов, ввели новые типы адресов, упростили
заголовок пакета, ввели идентификацию типа информационных потоков для увеличения эффективности обмена
данными, ввели поля идентификации и конфиденциальности информации.
В этом заголовке поле «версия» - номер версии IP, равное 6. Поле «приоритет» может принимать значение от 0
до 15. Первые 8 значений закреплены за пакетами, требующими контроля переполнения, например, 0 – несимвольная информация; 1 – информация заполнения (news); 2 – не
критичная ко времени передача данных (e-mail); 4 – передача данных режима on-line (FTP, HTTP, NFS, и т.п.); 6 –
интерактивный обмен данными (telnet,X); 7 – системные
данные или данные управления сетью (SNMP, RIP и т.п.).
Поле «метка потока» предлагается использовать для оптимизации маршрутизации пакетов. В Ipv6 вводится понятие
потока, который состоит из пакетов. Пакеты потока имеют
одинаковый адрес отправителя и одинаковый адрес полу111
чателя и ряд ряд других одинаковых опций. Подразумевается, что маршрутизаторы будут способны обрабатывать
это поле и оптимизировать процедуру пересылки пакетов,
принадлежащих одному потоку. В настоящее время алгоритмы и способы использования поля «метка потока»
находятся на стадии обсуждения. Поле длины пакета определяет длину следующей за заголовком части пакета в байтах. Поле «следующий заголовок» определяет тип следующего за заголовком IP – заголовка. Заголовок Ipv6 имеет
меньшее количество полей, чем заголовок Ipv4. Многие
необязательные поля могут быть указаны в дополнительных заголовках, если это необходимо. Поле «ограничение
переходов» определяет число промежуточных шлюзов, которые ретранслируют пакет в сети. При прохождении
шлюза это число уменьшается на единицу. При достижении значения «0» пакет уничтожается. После первых 8
байтов в заголовке указываются адрес отправителя пакета
и адрес получателя пакета. Каждый из этих адресов имеет
длину 16 байт. Таким образом, длина заголовка Ipv6 составляет 48 байтов.
После 4 байтов IP – адреса стандарта Ipv4, 16 байт IP –
адреса для Ipv6 выглядят достаточными для удовлетворения любых потребностей Internet. Не все 2128 адресов
можно использовать в качестве адреса сетевого интерфейса в сети. Предлагается выделение отдельных групп адресов, согласно специальным префиксам внутри IP – адреса,
подобно тому как это делалось при определении типов сетей Ipv4. Так, двоичный префикс «0000010» предлагается
закрепить за отображением IPX – адресов в IP – адреса. В
новом стандарте выделяют несколько типов адресов:
unicast addresses – адреса сетевых интерфейсов, anycast
addresses – адреса не связанные с конкретным сетевым интерфейсом, но и не связанные с группой интерфейсов и
multicast addresses – групповые адреса. Разница между по112
следними двумя группами адресов в том, что anycast addresses это адрес конкретного получателя, но определяет
адрес сетевого интерфейса только в локальной сети, где
этот интерфейс подключен, а multicast – сообщение предназначено группе интерфейсов, которые имеют один multicast – адрес.
Маршрутизировать Ipv6 – пакеты предлагается также,
как и Ipv4 – пакеты. Однако, в стандарт были добавлены
три новых возможности маршрутизации: маршрутизация
поставщика IP – услуг, маршрутизация мобильных узлов и
автоматическая переадресация. Эти функции реализуются
путем прямого указания промежуточных адресов шлюзов
при маршрутизации пакета. Эти списки помещаются в дополнительных заголовках, которые можно вставлять вслед
за заголовкам IP –пакета.
Коммутация по меткам протоколов IP широко используется в мультисервисных сетях, работающих по технологии MPLS.
Кроме перечисленных возможностей, новый протокол
позволяет улучшить защиту IP – трафика. Для этой цели в
протоколе предусмотрены специальные опции. Первая опция предназначена для защиты от подмены IP – адресов
машин. При ее использовании нужно кроме адреса подменять и содержимое поле идентификации, что усложняет
задачу злоумышленника, который маскируется под другую
машину. Вторая опция связана с шифрованием трафика.
9.4.
Протоколы транспортного уровня модели
TCP/IP
Основные функции протоколов транспортного уровня
сводятся к обеспечению надежной доставки данных от отправителя к получателю, необходимой фрагментации исходящих сообщений перед их передачей и их повторной
113
сборке перед доставкой на Прикладной уровень для последующей обработки. Таким образом, эталонная модель взаимодействия открытых сетей (OSI) и модель TCP/IP в
большей или меньшей степени соответствуют друг другу.
На Транспортном уровне модели TCP/IP присутствуют
два протокола: TCP (протокол управления передачей) и
UDP (протокол передачи дейтаграмм пользователя). Эти
транспортные протоколы существуют в двух вариантах: на
основе соединений (connection-oriented) (TCP) и без установления соединения (connectionless) (UDP). Различие выражается в действиях протокола TCP по организации и
поддержке соединения между отправителем и получателем
перед отсылкой данных, получению положительного подтверждения об успешной их передаче или запроса на повторную пересылку отсутствующих или ошибочных данных. В то же время протокол UDP просто пересылает данные «оптимальными усилиями» и не выполняет последующей проверки после их получения.
Так как протокол TCP создает соединение и явно проверяет его работу, он называется протоколом на основе соединения. Поскольку протокол UDP таких проверок не совершает, он называется протоколом без установления соединения. Вследствие этого протокол TCP приобретаем
много большую надежность, однако в сравнении с UDP он
представляется более медленным и громоздким. С другой
стороны, это позволяет протоколу TCP обеспечивать гарантированные службы доставки на уровне протокола, чего UDP предложить не может.
9.4.1. Протокол UDP
Протокол UDP (User Datagram Protocol – протокол пользовательских дейтаграмм, RFC 768) является одним из
двух основных протоколов транспортного уровня. Прото114
кол UDP предоставляет протоколам прикладного уровня
услуги негарантированной доставки пакетов, что немногим
отличается от услуги протокола IP. Поскольку для приложений, использующих протокол UDP важна в первую очередь скорость доставки данных, протокол UDP имеет
очень короткий заголовок. Заголовок UDP содержит только три поля «Port» (Порт), «Checksum» (Контрольная сумма) и «Length» (Длина дейтограммы), первое предназначено для мультиплексирования дейтаграмм по различным
приложениям, второе – обеспечивает целостность каждой
конкретной переданной дейтаграммы.
Протокол UDP не использует никаких механизмов подтверждения переданных данных, также протокол UDP не
нумерует переданных пакетов и никак не управляет скоростью передачи данных. В результате UDP дейтограммы
могут придти не по порядку или могут быть потеряны,
также не исключено, что UDP дейтограммы могут придти
раньше, чем получатель сможет их обработать. Основная
задача протокола UDP – уменьшить время, затрачиваемое
на перенос данных между двумя взаимодействующими
приложениями различных открытых систем.
Формат UDP дейтограммы показан на рис. 9.8.
0
15
Source port
31
Destination Port
Length
Checksum
Данные
Рис. 9.8 формат UDP- дейтограммы.
115
9.4.2. Поля UDP дейтограммы
Поле Source port (Порт отправителя) указывает порт
приложения, отправившего дейтограмму. Это поле необязательное, если оно используется, то содержит нуль.
Поле Destination port (Порт получателя) указывает порт
приложении, которое должно обрабатывать эту дейтограмму у получателя;
Поле Length (Длина) определяет число октетов (байт) в
UDP дейтограмме, включая заголовок;
Поле Checksum (Контрольная сумма) указывает контрольную сумму UDP дейтограммы. Поле необязательно
содержит контрольную сумму. Для упрощения вычислений в поле Checksum записывается нуль, тогда получатель
не проверяет контрольную сумму дейтограммы. Однако,
это, может привести к неприятным последствиям, поскольку протокол IP не вычислят контрольную сумму переносимых им данных (в частности, UDP дейтограммы).
Если расчетная контрольная сумма равна нулю, она передается как поле, целиком состоящее из единиц (эквивалент
при дополнении до единицы). Передача поля, целиком состоящего из нулей, означает, что отправитель дейтограммы не вычислял контрольной суммы (при отладке, а также
для тех протоколов, которые не требуют точности передачи).
Для расчета контрольной суммы UDP дейтограммы требуется дополнительная информация, не входящая в заголовок UDP пакета. Для вычисления контрольной суммы
UDP добавляет псевдо заголовок (рис. 9.9) к дейтограмме,
дополняет полученную дейтограмму нулевыми битами до
величины кратной шестнадцати, и начисляет контрольную
сумму.
116
0
7
15
31
Source IP address
Destination IP address
Ноль
Protokol
UDP Length
Рис. 9.9 формат псевдо заголовка UDP
Сам по себе псевдо заголовок не передается, поэтому
размер UDP дейтограммы не увеличивается. Для проверки
дейтограммы на приемной стороне, псевдо заголовок генерируется протоколом UDP из соответствующих полей IP
пакета. Идентичность контрольных сумм гарантирует доставку пакета по правильному (указанному в поле «Destination address») адресу и по указанному порту. В поле
псевдо заголовка «Protocol» указывается код протокола
UDP равный 17.
9.4.3. Инкапсуляция UDP
Инкапсуляция – это вложение протокола более высокого уровня в ноле данных протокола более низкого уровня.
Протокол UDP, согласно стеку протоколов TCP/IP,
должен взаимодействовать с протоколами прикладного
уровня и протоколами межсетевого уровня. Протоколы
прикладного уровня передают битовый (байтовый) поток
протоколу UDP. Этот поток протокол UDP фрагментирует
и вставляет в область данных своих дейтаграмм. Далее
протокол UDP вычисляет контрольную сумму, добавляет
свой заголовок и передает свои дейтаграммы нижележащему протоколу межсетевого уровня – протоколу IP. Протокол IP вставляет в область своих данных UDP дейтограмму целиком, не изменяя, и добавляет свой IP заголовок, таким образом, получая целостный IP пакет. После
чего, IP пакет передается протоколу нижележащего уровня
сетевого интерфейса. В случае, использования на этом
117
уровне протокола Ethernet, IP пакет вставляет в область
данных Ethernet кадра, после чего протокол Ethernet вычисляет свой заголовок и окончание и дописывает их к области данных. В результате получается полный Ethernet
кадр с вложенными IP пакетом и UDP дейтограммой, содержащий битовый поток от конкретного приложения.
Процесс вложения называется инкапсуляцией пользовательских данных и показан на рис. 9.10.
Заголовок UDP
Заголовок IP
Заголовок
Ethernet
Область данных
UDP
Область данных IP
Область данных кадра
Окончание
Рис. 9.10 инкапсуляция UDP-дейтограмм
Обратный процесс называется декапсуляцией и происходит он, по мере надобности, в промежуточных узлах и
обязательно на узле назначения. Его необходимость обусловлена различными зонами ответственности конкретных
протоколов, а, следовательно, и заголовков этих протоколов.
Зона ответственности протокола Ethernet – локальная
сеть. Если узел находится за пределами локальной сети,
кадр должен быть декапсулирован до IP пакета, чтобы
осуществить доставку по IP адресу, указанному в IP заголовке. Двух заголовках Ethernet и IP хватит , чтобы доставить UDP пакет до узла назначения, но не хватит, чтобы
передать конкретному приложению переданный битовый
поток. Поэтому необходимо на узле получателя декапсулировать пакет, сначала до UDP дейтограммы, заголовок
которой может мультиплексировать битовый поток между
приложениями, и затем отбросить и UDP заголовок, передав данные в чистом виде приложению.
118
9.4.4. Протокол TCP
Основная задача протокола TCP (Transmission Control
Protocol – протокол управления передачей, RFC 793) обеспечить сквозную гарантированную доставку данных между прикладными процессами. Другими словами, если приложение на одном узле хочет передать данные без каких –
либо изменений такому же приложению на другом узле, то
задачу эту выполнить приложение доверяет протоколу
TCP.
Поскольку, приложение полностью прилагается на протокол TCP (зачастую, не имея собственных механизмов
проверки данных) протокол TCP должен реализовать доставку собственными механизмами. Инкапсуляция данных
при использовании протокола TCP происходит схожим с
UDP образом, только TCP заголовок значительно отличается от заголовка UDP. Заголовок TCP несет себе множество полей служебной информации, служащей для управления передачей данных по каналам связи.
Рис. 9.11 Формат заголовка TCP-сегмента.
Заголовок TCP сегмента состоит из 32 – разрядных слов
(32 бита) и имеет переменную длину, зависящую от разме119
ра поля «Options» и «Padding», но всегда кратную 32 битам. Формат заголовка TCP сегмента представлен на рисунке 9.11.
Поле «Source Port» и поле «Destination Port» (порт отправителя и получателя) указывает номер портов источника и получателя соответственно.
Поле «Sequence Number» (номер последовательности)
определяет порядковый номер первого байта в поле данных сегмента среди всех октетов потока данных для текущего логического соединения (TCP сессия). Если в TCP
сегменте передаются октеты с 5–го по 87–ой, то SN=5. В
случае начальной установки соединения (TCP сегмент с
флагом «SYN») в поле SN записывается случайный номер
ISN (Initial Sequence Number = начальный номер последовательности), первом TCP сегменте без флага «SYN» поле
SN=ISN+1.
Поле «Acknowledgment Number» (номер подтверждения)
указывает
(в
совокупности
с
флагом
«АСК»)порядковый номер октета, который отправитель
данного сегмента желает получить подразумевая тем самым, что все предыдущие байты (с номерами от ISN+1 до
АСК-1) были успешно получены.
Поле «Data Offset» (смещение данных, 4 бита) указывает смещение начала данных TCP в сегменте относительно
начала сегмента. Поле указывает длину TCP заголовка.
Минимальная длина заголовка без параметров может быть
равна 5–ти 32–х битным словам или 160 байтам. Максимальная длина заголовка – 480 байт.
Поле «Reserved» (зарезервировано, 6 бит) зарезервировано для дальнейшего использования, заполняется нулями.
Поле «Flags» (флаги, 6 бит) содержит управляющие биты, для контроля над соединением.
•
Флаг URG (urgent – срочно) указывает срочность доставки сегмента;
120
•
Флаг ACK (Acknowledgment – подтверждение) подтверждает, что поле «Acknowledgment Number»
указывает следующий октет, который предлагает принять
получатель;
•
Флаг PSH (Push – протолкнуть) указывает на
незамедлительность отправки данных из TCP сегмента
процессу прикладного уровня, даже, если приемный TCP
буфер не заполнен. Используется при передаче данных интерактивных приложений;
•
Флаг «RST» (Reset – перезагрузка) указывает
на необходимость перезагрузки текущего TCP соединения;
•
Флаг «SYN» (Synchronization – синхронизация) указывает на то, что данный TCP сегмент является
запросом на установление соединения;
•
Флаг « FIN» (Finish –конец) указывает на закрытие TCP соединения;
Поле «Window» (окно) указывает размер TCP «окна» в
октетах. Размер «окна» указывает отправителю максимально возможное число TCP сегментов, которые могут
быть отправлены без подтверждения.
Поле «Checksum» (контрольная сумма) содержит контрольную сумму всего TCP сегмента. Обеспечивает поразрядную проверку целостности.
Поле «Urgent Pointer» (указатель срочности) используется для указания длины срочных данных, которые размещаются в начале поля данных сегмента. Число в этом поле
указывает смещение октета срочных данных относительно
первого октета данных в сегменте. Например, если в TCP
сегменте передаются окном с 5 – го по 87 – ой и первые 15
из них срочные, то поле «Urgent Pointer»=15. Протокол
TCP не регламентирует, как должны обрабатываться срочные данные, определено только, что они должны быть
максимально быстро отправлены прикладному процессу.
121
Поле «Urgent Pointer» действует в совокупности aлагом
«URG».
Поле «Options» (опции, поле переменной длины) поле
указывает на реализацию работы дополнительных услуг
(опций) протокола TCP. Поле конкретной опции в поле
«Options» состоит из октета «Option Kind» (тип опции), октета «Option Length» (длина опции) и октетов «Option Octets» (октетов с данными опции). Стандарт протокола TCP
определяет три опции:
«End of Option List» (конец списка опций) имеет тип опции, равный «0», и длина в один октет. Определяет конец
списка опций. Не используется, если набор опций TCP
выходит за 32 – битную границу.
«No Operation» (бездействие) имеет тип опции, равный
«1», и длину в один октет. Используется между TCP опциями для 32 – битного выравнивания.
«Maximum Segment Size» имеет тип опции равный «2»,
и длину в четыре октета. Описывает максимальный размер
сегмента, который может быть передан по TCP соединению. Вычисляется на основании MТU (Maximum Transfer
Unit – максимальный блок передачи), который может быть
передан по соединению за вычетом IP и TCP заголовков.
Данная опция включается только на стадии установки соединения, вместе с флагом «SYN».
Поле «Padding» (заполнение) заполняется нулями до
выравнивания по 32 – битной границе в случае, если поле
«Options» не укладывается в 32 – битное слово.
9.5.
Протоколы прикладного уровня
Прикладной уровень модели TCP/IP также изменен под
именем Уровня процессов (Process layer), поскольку именно на нем стек протоколов взаимодействует с приложениями и процессами на хостах. Пользовательские интерфей122
сы процесса или приложения также определяются здесь.
Здесь же зачастую наблюдается перекрытие функций протоколов и служб.
9.5.1. HTTP – протокол передачи гипертекстов
Hyper Text Transfer Protocol (HTTP) – это протокол высокого уровня (а именно, уровня приложений), обеспечивающий необходимую скорость передачи данных, требующуюся для распределенных информационных систем гипермедиа. HTTP используется проектом World Wide Web с
1990 года.
Практические информационные системы требуют
большего, чем примитивный поиск, модификация и аннотация данных. HTTP/1.0 открытое множество методов, которые могут быть использованы для указания целей запроса. Они построены на дисциплине ссылок, где для указания
ресурса, к которому должен быть применен данный метод,
используется Универсальный Идентификатор Ресурсов
(Universal Resource Identifier – URI) , в виде местонахождения (URL) или имени (URN). Формат сообщений сходен с
форматом Internet Mail или Multipurpose Internet Mail Extensions (MIME – Многоцелевое Расширение почты
Internet).
HTTP/1.0 используется также для коммуникаций между
различными пользовательскими просмотрщиками и шлюзами, дающими гипермедиа доступ к существующим Internet протоколам, такие как SMTP, NNTP, FTP, Gopher и
WAIS. HTTP/1.0 разработан, чтобы позволять таким шлюзам через proxy серверы, без какой – либо потери передавать данные с помощью упомянутых протоколов более
ранних версий.
HTTP основывается на парадигме запросов/ответов. Запрашивающая программа (обычно она называется клиент)
123
устанавливает связь с обслуживающей программой – получателем (обычно называется сервер) и посылает запрос
серверу в следующей форме:
•
Метод запроса,
•
URI,
•
Версия протокола, за которой следует MIME –
подобное сообщение, содержащее управляющую информацию запроса, информацию о клиенте, и может быть, тело сообщения.
Сервер отвечает сообщением, содержащим строку статуса (включая версию протокола и код статуса – успешно
или ошибка), за которой следует MIME – подобное сообщение, включающее в себя информацию о сервере, метаинформацию о содержании ответа и, вероятно, само тело
ответа. Следует отметить, что одна программа может быть
одновременно и клиентом и сервером. Использование этих
терминов в данном тексте относится только к роли, выполняемой программой в течении данного конкретного сеанса связи, а не к общим функциям программы.
Для большинства приложений сеанс связи открывается
клиентом для каждого запроса и закрывается сервером после окончания ответа на запрос. Тем не менее, это не является особенностью протокола. И клиент, и сервер должны
иметь возможность закрывать сеанс связи, например, в результате какого–нибудь действия пользователя. В любом
случае, разрыв связи, инициированный любой стороной,
прерывает текущий запрос, независимо от его статуса.
9.5.2. FTP–протокол
FTP (File Transfer Protocol, или «протокол передачи
данных») – один из старейших протоколов в Internet и входит в его стандарты. Первые спецификации FTP относятся
к 1971 году. С тех пор FTP претерпел множество модифи124
каций и значительно расширил свои возможности. FTP использоваться как в программах пользователей, так и в виде
специальной утилиты операционной системы.
FTP предназначен для решения задач разделения доступа к файлам на удаленных хостах, прямого или косвенного
использования ресурсов удаленных компьютеров, обеспечения независимости клиента от файловых систем удаленных хостов, эффективной и надежной передачи данных.
Обмен данными в FTP происходит по TCP – каналу.
Обмен построен на технологии «клиент – сервер». FTP не
может использоваться для передачи конфиденциальных
данных, поскольку не обеспечивает защиты передаваемой
информации и передает между сервером и клиентом открытые текст. FTP – сервер может потребовать от FTP –
клиента аутентификации (т.е. при присоединению к серверу FTP – пользователь должен будет ввести свой идентификатор и пароль). Однако пароль, и идентификатор пользователя будут переданы от клиента на сервер открытым
текстом.
Алгоритм работы протокола FTP состоит в следующем:
1.
сервер FTP используется в качестве управляющего соединения на TCP порт 21, который всегда
находится в состоянии ожидания соединения со стороны
пользователя FTP.
2.
после того как устанавливается управляющее
соединение модуля «Интерпретатор протокола пользователя» с модулем сервера – «Интерпретатор протокола сервера», пользователь (клиент) может отправлять на сервер
команды. FTP – команды определяют параметры соединения передачи данных: роль участников соединения (активный или пассивный), порт соединения (как для модуля
«Программа передачи данных пользователя», так и для
модуля «Программа передачи данных сервера»), тип передачи, тип передаваемых данных, структуру данных и
125
управляющие директивы, обозначающие действия, которые пользователь хочет совершить (например, сохранить,
считать, добавить или удалить данные или файл и другие).
3.
после того как согласованы все параметры
канала передачи данных, один из участников соединения,
который является пассивным (например, «Программа передачи данных пользователя»), становится в режим ожидания открытия соединения на заданный для передачи
данных порт. После этого активный модуль(например,
«Программа передачи данных сервера» и«Программа передачи данных пользователя» закрывается, но управляющее соединение «Интерпретатора протокола сервера» и
«Интерпретатора протокола пользователя» остается открытым. Пользователь, не закрывая сессии FTP, может еще
раз открыть канал передачи данных.
9.5.3. SMTP-протокол
Основная задача протокола SMTP (Simple Mail Transfer
Protocol) заключается в том, чтобы обеспечивать передачу
электронных сообщений (почту). Для работы через протокол SMTP клиент создает TCP соединение с сервером через порт 25. Затем клиент и SMTP сервер обмениваются
информацией, пока соединение не будет закрыто или передано. Основной процедурой в SMTP является передача
почты (Mail Procedure). Далее идут процедуры форвардинга почты (Mail Forwarding), проверка имен почтового ящика и вывод списка почтовых групп. Самой первой процедурой является открытие канала передачи, а последней –
его закрытие.
Простой протокол передачи почты обеспечивает двухсторонний обмен сообщениями между локальным клиентом и удаленным сервером МТА. МТА – клиент шлет команды МТА – серверу, а он, в свою очередь, отвечает кли126
енту. Другими словами, протокол SMTP требует получать
ответы (они описаны в этой главе) от приемника команд
SMTP. Обмен командами и ответами на них называется
почтовой транзакцией (mail transaction). Данные, как мы
уже говорили, передаются в формате NVT ASCII. Кроме
того, команды тоже передаются в формате NVT ASCII.
Команды передаются в формате ключевых слов, а не специальных символов, и указывают на необходимость совершить ту или иную операцию. В таблице 9.2 приведен
список ключевых слов (команд), определенный в спецификации SMTP – RFC 82.
Таблица 8 (начало).
Команды простого протокола передачи почты (SMTP)
ОбязаКоманды
Описание
тельства
HELO
да
MAIL
да
RCPT
да
DATA
нет
RSET
нет
Идентифицирует модуль – передатчик
для модуля – приемника (hello).
Начинает почтовую транзакцию, которая завершается передачей данных в
один или несколько почтовых ящиков
(mail).
Идентифицирует получателя почтового сообщения (recipient).
Строки, следующие за этой командой,
рассматриваются получателем как
данные почтового сообщения. В случае SMTP, почтовое сообщение заканчивается комбинацией символов:
CRLF – точка – CRLF.
Прерывает текущую почтовую транзакцию (reset).
127
Таблица 8 (продолжение).
NOOP
нет
QUIT
нет
VRFY
нет
SEND
нет
SOML
нет
EXPN
нет
HELP
нет
TURN
нет
128
Требует от получателя не предпринимать никаких действий, а только выдавать ответ OK. Используется главным образом для тестирования. (No
operation).
Требует выдать ответ OK и закрыть
текущее соединение.
Требует от приемника подтвердить,
что ее аргумент является действительным именем пользователя.
Начинает почтовую транзакцию, доставляющую данные на один или несколько терминалов (а не в почтовый
ящик).
Начинает транзакцию MAIL или
SEND, доставляющую данные на один
или несколько терминалов или почтовые ящики.
Команда SMTP – приемнику подтвердить, действительно ли аргумент является адресом почтовой рассылки и если да, вернуть адрес получателя сообщения (expand).
Команда SMTP – приемнику вернуть
сообщение – справку о его командах.
Команда SMTP – приемнику либо сказать OK и поменяться ролями, то есть
стать SMTP – передатчиком, либо послать сообщение – отказ и остаться в
роли SMTP – приемника.
10.
Средства мониторинга и анализа
трафика
10.1. Системы мониторинга
Все многообразие средств, применяемых для мониторинга и анализа мультисервисных сетей, можно разделить
на несколько крупных классов.
Системы управления сетью (Network Management
Systems) - централизованные программные системы, которые собирают данные о состоянии узлов и коммуникационных устройств сети, а также данные о трафике, циркулирующем в сети. Эти системы не только осуществляют
мониторинг и анализ сети, но и выполняют в автоматическом или полуавтоматическом режиме действия по управлению сетью - включение и отключение портов устройств,
изменение параметров мостов адресных таблиц мостов,
коммутаторов и маршрутизаторов и т.п. Примерами систем управления могут служить популярные системы
HPOpenView, SunNetManager, IBMNetView.
Средства управления системой (SystemManagement).
Средства управления системой часто выполняют функции,
аналогичные функциям систем управления, но по отношению к другим объектам. В первом случае объектом управления является программное и аппаратное обеспечение
компьютеров сети, а во втором - коммуникационное оборудование. Вместе с тем, некоторые функции этих двух
видов систем управления могут дублироваться, например,
средства управления системой могут выполнять простейший анализ сетевого трафика.
Встроенные системы диагностики и управления
(Embeddedsystems). Эти системы выполняются в виде программно-аппаратных модулей, устанавливаемых в коммуникационное оборудование, а также в виде программных
129
модулей, встроенных в операционные системы. Они выполняют функции диагностики и управления только одним
устройством, и в этом их основное отличие от централизованных систем управления. Примером средств этого класса может служить модуль управления концентратором
Distrebuted 5000, реализующий функции автосегментации
портов при обнаружении неисправностей, приписывания
портов внутренним сегментам концентратора и некоторые
другие. Как правило, встроенные модули управления "по
совместительству" выполняют роль SNMP-агентов, поставляющих данные о состоянии устройства для систем
управления.
Анализаторы протоколов (Protocolanalyzers). Представляют собой программные или аппаратно-программные системы, которые ограничиваются в отличие от систем
управления лишь функциями мониторинга и анализа трафика в сетях. Хороший анализатор протоколов может захватывать и декодировать пакеты большого количества
протоколов, применяемых в сетях - обычно несколько десятков. Анализаторы протоколов позволяют установить
некоторые логические условия для захвата отдельных пакетов и выполняют полное декодирование захваченных
пакетов, то есть показывают в удобной для специалиста
форме вложенность пакетов протоколов разных уровней
друг в друга с расшифровкой содержания отдельных полей
каждого пакета.
Оборудование для диагностики и сертификации кабельных систем. Условно это оборудование можно поделить на
четыре основные группы: сетевые мониторы, приборы для
сертификации кабельных систем, кабельные сканеры и тестеры (мультиметры).
Сетевые мониторы (называемые также сетевыми анализаторами) предназначены для тестирования кабелей различных категорий. Следует различать сетевые мониторы и
130
анализаторы протоколов. Сетевые мониторы собирают
данные только о статистических показателях трафика средней интенсивности общего трафика сети, средней интенсивности потока пакетов с определенным типом ошибки и т.п.
Назначение устройств для сертификации кабельных систем, непосредственно следует из их названия. Сертификация выполняется в соответствии с требованиями одного
из международных стандартов на кабельные системы.
Кабельные сканеры используются для диагностики
медных кабельных систем.
Тестеры предназначены для проверки кабелей на отсутствие физического разрыва.
Экспертные системы. Этот вид систем аккумулирует
человеческие знания о выявлении причин аномальной работы сетей и возможных способах приведения сети в работоспособное состояние. Экспертные системы часто реализуются в виде отдельных подсистем различных средств
мониторинга и анализа сетей: систем управления сетями,
анализаторов протоколов, сетевых анализаторов. Простейшим вариантом экспертной системы является контекстно-зависимая help-система. Более сложные экспертные системы представляют собой так называемые базы
знаний, обладающие элементами искусственного интеллекта. Примером такой системы является экспертная система, встроенная в систему управления Spectrum компании Cabletron.
Многофункциональные устройства анализа и диагностики. В последние годы, в связи с повсеместным распространением локальных сетей возникла необходимость разработки недорогих портативных приборов, совмещающих
функции нескольких устройств: анализаторов протоколов,
кабельных сканеров и, даже, некоторых возможностей ПО
сетевого управления. В качестве примера такого рода
131
устройств можно привести Compas компании MicrotestInc.
или 675 LANMeterкомпании FlukeCorp.
На сегодня существует несколько стандартов на базы
данных управляющей информации. Основными являются
стандарты MIB-I и MIB-II, а также версия базы данных для
удаленного управления RMONMIB. Кроме этого, существуют стандарты для специальных MIB устройств конкретного типа (например, MIB для концентраторов или
MIB для модемов), а также частные MIB конкретных
фирм-производителей оборудования.
Первоначальная спецификация MIB-I определяла только операции чтения значений переменных. Операции изменения или установки значений объекта являются частью
спецификаций MIB-II.
Версия MIB-I (RFC 1156) определяет до 114 объектов,
которые подразделяются на 8 групп:
System - общие данные об устройстве (например, идентификатор поставщика, время последней инициализации
системы).
Interfaces - описываются параметры сетевых интерфейсов устройства (например, их количество, типы, скорости
обмена, максимальный размер пакета).
AddressTranslationTable - описывается соответствие
между сетевыми и физическими адресами (например, по
протоколу ARP).
InternetProtocol - данные, относящиеся к протоколу IP
(адреса IP-шлюзов, хостов, статистика об IP-пакетах).
ICMP - данные, относящиеся к протоколу обмена
управляющими сообщениями ICMP.
TCP - данные, относящиеся к протоколу TCP (например,
о TCP-соединениях).
UDP - данные, относящиеся к протоколу UDP (число
переданных, принятых и ошибочных UPD-дейтаграмм).
132
EGP - данные, относящиеся к протоколу обмена маршрутной информацией ExteriorGatewayProtocol, используемому в сети Internet (число принятых с ошибками и без
ошибок сообщений).
Из этого перечня групп переменных видно, что стандарт
MIB-I разрабатывался с жесткой ориентацией на управление маршрутизаторами, поддерживающими протоколы
стека TCP/IP.
В версии MIB-II (RFC 1213), принятой в 1992 году, был
существенно (до 185) расширен набор стандартных объектов, а число групп увеличилось до 10.
Новейшим добавлением к функциональным возможностям SNMP является спецификация RMON, которая обеспечивает удаленное взаимодействие с базой MIB. До появления RMON протокол SNMP не мог использоваться удаленным образом, он допускал только локальное управление устройствами. База RMONMIB обладает улучшенным
набором свойств для удаленного управления, так как содержит агрегированную информацию об устройстве, что
не требует передачи по сети больших объемов информации. Объекты RMONMIB включают дополнительные
счетчики ошибок в пакетах, более гибкие средства анализа
графических трендов и статистики, более мощные средства
фильтрации для захвата и анализа отдельных пакетов, а
также более сложные условия установления сигналов предупреждения. Агенты RMONMIB более интеллектуальны
по сравнению с агентами MIB-I или MIB-II и выполняют
значительную часть работы по обработке информации об
устройстве, которую раньше выполняли менеджеры. Эти
агенты могут располагаться внутри различных коммуникационных устройств, а также быть выполнены в виде отдельных программных модулей, работающих на универсальных ПК и ноутбуках (примером может служить
LANalyzerNovell).
133
Объекту RMON присвоен номер 16 в наборе объектов
MIB, а сам объект RMON объединяет 10 групп следующих
объектов:
Statistics - текущие накопленные статистические данные
о характеристиках пакетов, количестве коллизий и т.п.
History - статистические данные, сохраненные через
определенные промежутки времени для последующего
анализа тенденций их изменений.
Alarms - пороговые значения статистических показателей, при превышении которых агент RMON посылает сообщение менеджеру.
Host - данных о хостах сети, в том числе и об их MACадресах.
HostTopN - таблица наиболее загруженных хостов сети.
TrafficMatrix - статистика об интенсивности трафика
между каждой парой хостов сети, упорядоченная в виде
матрицы.
Filter - условия фильтрации пакетов.
PacketCapture - условия захвата пакетов.
Event - условия регистрации и генерации событий.
Данные группы пронумерованы в указанном порядке,
поэтому, например, группа Hosts имеет числовое имя
1.3.6.1.2.1.16.4.
Десятую группу составляют специальные объекты протокола TokenRing.
Всего стандарт RMONMIB определяет около 200 объектов в 10 группах, зафиксированных в двух документах RFC 1271 для сетей Ethernet и RFC 1513 для сетей
TokenRing.
Отличительной чертой стандарта RMONMIB является
его независимость от протокола сетевого уровня (в отличие от стандартов MIB-I и MIB-II, ориентированных на
протоколы TCP/IP). Поэтому, его удобно использовать в
134
гетерогенных средах, использующих различные протоколы
сетевого уровня.
10.2. Анализаторы протоколов
Наиболее совершенным средством исследования сети
является анализатор протоколов. Процесс анализа протоколов включает захват циркулирующих в сети пакетов, реализующих тот или иной сетевой протокол, и изучение содержимого этих пакетов. Основываясь на результатах анализа, можно осуществлять обоснованное и взвешенное изменение каких-либо компонент сети, оптимизацию ее производительности, поиск и устранение неполадок. Очевидно, что для того, чтобы можно было сделать какие-либо
выводы о влиянии некоторого изменения на сеть, необходимо выполнить анализ протоколов и до, и после внесения
изменения.
Анализатор протоколов представляет собой либо самостоятельное специализированное устройство, либо персональный компьютер, обычно переносной, класса Notebook,
оснащенный специальной сетевой картой и соответствующим программным обеспечением. Применяемые сетевая
карта и программное обеспечение должны соответствовать
топологии сети (кольцо, шина, звезда). Анализатор подключается к сети точно также, как и обычный узел. Отличие состоит в том, что анализатор может принимать все
пакеты данных, передаваемые по сети, в то время как
обычная станция - только адресованные ей. Программное
обеспечение анализатора состоит из ядра, поддерживающего работу сетевого адаптера и декодирующего получаемые данные, и дополнительного программного кода, зависящего от типа топологии исследуемой сети. Кроме того,
поставляется ряд процедур декодирования, ориентированных на определенный протокол, например, IPX. В состав
135
некоторых анализаторов может входить также экспертная
система, которая может выдавать пользователю рекомендации о том, какие эксперименты следует проводить в
данной ситуации, что могут означать те или иные результаты измерений, как устранить некоторые виды неисправности сети.
Несмотря на относительное многообразие анализаторов
протоколов, представленных на рынке, можно назвать некоторые черты, в той или иной мере присущие всем им:
Пользовательский интерфейс. Большинство анализаторов имеют развитый дружественный интерфейс, базирующийся, как правило, на Windows или Motif. Этот интерфейс позволяет пользователю: выводить результаты анализа интенсивности трафика; получать мгновенную и усредненную статистическую оценку производительности сети;
задавать определенные события и критические ситуации
для отслеживания их возникновения; производить декодирование протоколов разного уровня и представлять в понятной форме содержимое пакетов.
Буфер захвата. Буферы различных анализаторов отличаются по объему. Буфер может располагаться на устанавливаемой сетевой карте, либо для него может быть отведено место в оперативной памяти одного из компьютеров
сети. Если буфер расположен на сетевой карте, то управление им осуществляется аппаратно, и за счет этого скорость ввода повышается. Однако это приводит к удорожанию анализатора. В случае недостаточной производительности процедуры захвата, часть информации будет теряться, и анализ будет невозможен. Размер буфера определяет
возможности анализа по более или менее представительным выборкам захватываемых данных. Но каким бы большим ни был буфер захвата, рано или поздно он заполнится.
В этом случае либо прекращается захват, либо заполнение
начинается с начала буфера.
136
Фильтры. Фильтры позволяют управлять процессом захвата данных, и, тем самым, позволяют экономить пространство буфера. В зависимости от значения определенных полей пакета, заданных в виде условия фильтрации,
пакет либо игнорируется, либо записывается в буфер захвата. Использование фильтров значительно ускоряет и
упрощает анализ, так как исключает просмотр ненужных в
данный момент пакетов.
Переключатели - это задаваемые оператором некоторые
условия начала и прекращения процесса захвата данных из
сети. Такими условиями могут быть выполнение ручных
команд запуска и остановки процесса захвата, время суток,
продолжительность процесса захвата, появление определенных значений в кадрах данных. Переключатели могут
использоваться совместно с фильтрами, позволяя более
детально и тонко проводить анализ, а также продуктивнее
использовать ограниченный объем буфера захвата.
Поиск. Некоторые анализаторы протоколов позволяют
автоматизировать просмотр информации, находящейся в
буфере, и находить в ней данные по заданным критериям.
В то время, как фильтры проверяют входной поток на
предмет соответствия условиям фильтрации, функции поиска применяются к уже накопленным в буфере данным.
Методология проведения анализа может быть представлена в виде следующих шести этапов:
I. Захват данных.
II. Просмотр захваченных данных.
III. Анализ данных.
IV. Поиск ошибок. (Большинство анализаторов облегчают эту работу, определяя типы ошибок и идентифицируя
станцию, от которой пришел пакет с ошибкой.)
V. Исследование производительности. Рассчитывается
коэффициент использования пропускной способности сети
или среднее время реакции на запрос.
137
VI. Подробное исследование отдельных участков сети.
Содержание этого этапа конкретизируется по мере того,
как проводится анализ.
Существуют также специальные программные средства,
предназначенные для моделирования сетей, а также специализированные платформы, предназначенные для мониторинга сетевых ресурсов.
10.3. Описание программы Wireshark
Wireshark - это программный анализатор трафика,
который позволяет перехватывать информационные потоки, передаваемые по сети. Программа в первую очередь
предназначена для сбора информации о сетевых взаимодействиях и для обнаружения и устранения неполадок в
сети. Анализаторы трафика (сниферы) так же часто применяются при разработке новых протоколов и программного
обеспечения и в образовательных целях.
Установленная и запущенная на компьютере программа Wireshark позволяет обнаружить и изучить любой
протокольный блок данный (Protocol Data Unit, PDU), который был отправлен или получен с помощью любого из
установленных на компьютере сетевых адаптеров (Network
Interface Card, NIC).
Программа позволяет отслеживать весь исходящий
по сети трафик, используя для сетевой карты так называемый «широковещательный режим». Возможности программы несколько напоминают небезызвестное приложение TCP Dump, однако, по сравнению с ним, обладает более расширенной функциональностью касательно сортировки, поиска и фильтрования необходимой информации.
Отслеживание информации тем более удобно, что все
представление трафика показывается в графическом ре138
жиме. Также программа имеет отличные возможности в
поддержке протоколов DNS, FDDI, FTP, HTTP, ICQ, IPV6,
IPX, IRC, MAPI, MOUNT, NETBIOS, NFS, NNTP, POP,
PPP, TCP, TELNET, X25 и т. д. К тому же, приложение обладает и расширенными возможностями захвата, которые,
прежде всего, определяются тем, что программа способна
открывать файлы, захваченные с использованием других
программ. Ко всему прочему, распознавание большого
числа различных протоколов делает программу универсальной, поскольку в ней изначально заложена возможность отображения информации сетевого пакета с анализом значение каждого поля протокола любых уровней. И
хоть для захвата данных и используется собственный протокол программы PCAP, тем не менее, она работает со
многими форматами именно входных данных. Для формирования своего графического интерфейса приложение использует библиотеку GTK+, что и дает возможность работать с большим количеством входных форматов. Вообще,
стоит сказать, что приложение эффективно при условии
использовании в сегменте именно концентраторов (хабов),
а не коммутаторов (свитчей). В противном случае метод
анализа исходящего трафика малоэффективен, поскольку
на снифер попадают лишь отдельные фреймы.
10.3.1.
Установка программы
Наиболее стабильную версию программы (v1.0.61.0.7) можно скачать по адресу компании-разработчика
программы http://www.wireshark.org/download.html.
Для установки программы необходимо запустить
скачанный файл wireshark-setup-1.0.6.exe и в появившемся
окне выбрать Next>.
139
Рис. 10 1.
Далее Вам необходимо согласить с выбранными по
умолчанию компонентами, предложенными для установки:
Рис. 10. 2
140
Далее соглашаемся с выбранными параметрами
установки программы и выбираем путь для инсталляции:
Рис. 10.3
Процесс установки начался, далее инсталлятор попросит установить WinPcap 4.0.2 – соглашаемся:
Рис. 10. 4.
141
Для завершения процесса инсталляции программы
нажмите Finish.
Рис.10. 5.
10.3.2.
Первый запуск и начало работы с программой
Для начала сборки перехваченных программой пакетов сообщений по сети, необходимо выбрать пункт
главного меню Capture>Interfaces или кнопку на верхней
панели инструментов List the available capture interfaces –
после этого на экране появится следующее диалоговое окно (рис. 10.6)
Рис.10. 6. Диалоговое окно
142
Рис.10. 7.
С помощью кнопки Options (рис. 10.7) возможна
установка желаемых параметров работы программы. Для
того, чтобы начать процедура захвата, Вам необходимо
нажать кнопку Start, после чего интерфейс программы
примет следующий вид:
Рис.10. 8.
Как видно из рис. 10.8, подобно другим анализаторам протоколов, окно Wireshark включает в себя 3 области
просмотра с различными уровнями детализации. Верхнее
143
окно содержит список собранных пакетов с кратким описанием, в среднем окне показывается дерево протоколов,
инкапсулированных в кадр. Ветви дерева могут быть раскрыты для повышения уровня детализации выбранного
протокола. Последнее окно содержит дамп пакета в шестнадцатеричном или текстовом представлении. Программа
Wireshark представляет пользователю ряд уникальных
возможностей, не поддерживаемых другими анализаторами протоколов. Программа обеспечивает возможность
сбора всех пакетов заданного соединения TCP и представления данных в удобном для просмотра формате.
10.3.3.
Настройка программы и запуск захвата трафика.
Рассмотрим функционал стартового интерфейса
программы. Номера нижеследующего списка соответствуют выделенным белыми цифрами на рис. 10.9 областям:
1)
Кнопка, при нажатии на которую программа выведет список активных сетевых адаптеров (рис.10.10),
с которых возможен захват трафика. Список имеет
вид интерактивной таблицы.
2)
Список активных сетевых интерфейсов. Нажатие на
любой интерфейс из списка немедленно запустит
процесс захвата трафика.
3)
Кнопка, при нажатии на которую программа выведет окно настроек процесса захвата трафика.
4)
Кнопка, позволяющая загружать в программу захваченный ранее и сохраненный файл с отчетом о
захваченном сетевом трафике.
144
Рис.10. 9. Стартовый интерфейс программы.
Рис. 10.10. Список активных сетевых адаптеров.
Список активных адаптеров имеет вид интерактивной таблицы со следующими полями:
Таблица 9
Поле таблицы
Описание
Description Описание адаптера
IP Сетевой интерфейс (если есть)
Количество захваченных блоков данных
Packets
(PDU) с момента вызова таблицы
Скорость обработки (приема и отправки)
Packets/s
пакетов
145
Также напротив каждого интерфейса расположены
3 кнопки: start с функцией начать захват трафика, options,
с помощью которой вызывается окно настроек захвата
трафика, и details, отвечающая за отображение подробной
информации о сетевом адаптере.
Рис.10.11. Окно настроек захвата сетевого трафика.
Описание функционала выделенных черными цифрами областей на рис. 10.11:
Выбор интерфейса для захвата трафика. (1)
В этой области расположены два выпадающих меню: левое определяет тип используемого интерфейса (локальный или удаленный – local/remote), а правое определяет сам интерфейс.
146
Захват пакетов в режиме всех сетевых пакетов (Capture packets in promiscuous mode). (2)
Если эта опция включена, программа будет захватывать все PDU, которые принимает сетевой адаптер. Если
опция отключена, программа будет захватывать только
PDU, предназначенные компьютеру, на котором она установлена.
Опции отображения захвата пакетов (3):
Update list in real time – обновление списка в режиме
реального времени. Если эта опция включена, то программа отображает захваченный трафик в реальном времени.
Automatic scrolling in live capture - автоматическая
прокрутка при захвате. Если эта опция включена, программа будет автоматически удерживать в окне вывода захваченной информации последние захваченные PDU.
Hide capture info dialog – скрыть информационнодиалоговое окно захвата. Если эта опция включена, то информационно-диалоговое окно захвата (рис. 10.12) не выводится.
Опции преобразования имен (4):
Enable MAC name resolution – включить преобразование MAC-адресов. Эта опция включает автоматическое
преобразование адресов устройств в более понятный для
человека формат. Например, 00:09:5b:01:02:03 ->
Netgear_01:02:03. Выделенная часть сетевого интерфейса
закреплена за производителем Netgear, поэтому была преобразована программой в название производителя.
Особенность: если включена опция преобразования
сетевых имен, то в некоторых случаях программа выводит
DNS-имя вместо MAC-адреса.
Enable network name resolution – включить преобразование сетевых имен. Эта опция включает автоматическое
преобразование адресов устройств в DNS-имена устройств.
Например: 216.239.37.99 -> www.google.com.
147
Enable transport name resolution – включить преобразование TCP/UDP портов. Эта опция включает автоматическое преобразование TCP/UDP, закрепленных за определенными протоколами портов в названия этих протоколов.
Например: 80 -> http.
Рис.10.12. Информационно-диалоговое окно захвата.
Список активных адаптеров имеет вид интерактивной таблицы со следующими столбцами (слева-направо)
Имя протокола (в таблице представлены наиболее распространенные)
Количество захваченных PDU определенного
протокола
Графическое и числовое отображение процентного соотношения захваченных PDU конкретного протокола с общим числом захваченных PDU
Параметр Total отображает общее число захваченных пакетов, а параметр Running – время, на протяжении
которого ведется захват пакетов.
148
10.3.4.
Главное рабочее окно программы
После выбора интерфейса и запуска захвата PDU
программа вызовет окно, показанное на рис. 10.13.
Рис.10 13. Окно отображения захваченного трафика.
Функционал отмеченных черными цифрами областей:
1) Меню программы и панель инструментов (рис.
10.14), предоставляющая доступ к наиболее часто
используемым функциям программы
2) Фильтр, позволяющий производить выборочный захват пакетов
3) Поле списка PDU, в котором отображается информация по всем захваченным пакетам
4) Информационное поле, в котором отображается подробная информация по выбранному PDU
149
5) Поле, в котором отображаются данные, выделенные
в информационном поле в шестнадцатеричной и
текстовой формах
Рис.10.14. Панель инструментов
Таблица 10
150
10.3.5.
Фильтр. Построение фильтров
Фильтр позволяет настроить программу Wireshark
на отображение только определённого, удовлетворяющего
условиям текущего примененного фильтра сетевого трафика. Фильтр может применяться как при захвате трафика
в реальном времени, так и при анализе захвата, сохранённого в файле.
Рис.10.15. Панель фильтра
Таблица 11
Для применения фильтра необходимо ввести
фильтр в поле ввода и нажать кнопку «Apply».
Если фильтр введён в соответствии с правилами построения фильтров, то цвет поля ввода будет зелёным, если фильтр введён с ошибкой – красным (Рис. 10.16).
б)
а)
Рис.10.16. Фильтр введен а) правильно, б) с ошибкой.
151
Фильтрацию, применяемую в программе Wireshark
можно условно разделить на две категории:
• Фильтрация по определённым протоколам.
• Фильтрация по определённым значениям полей в
заголовках протоколов.
Для применения фильтрации по определённому
протоколу необходимо ввести имя протокола в поле ввода
фильтра.
Пример выполнения фильтрации по протоколу
HTTP показан на рисунках 10.17 и 10.18.
Рис. 10.17. Вывод программы до применения фильтра.
Рис. 10.18. Вывод программы после применения фильтра.
Фильтрация по определённому значению поля в заголовках протоколов строится по следующему синтаксису:
"Поле", "Оператор сравнения", "Значение".
Операторы сравнения и некоторые обозначения полей, которые могут использоваться при построении фильтров, представлены в таблицах 12 и 13.
152
Таблица 12
Обозначения полей при построении фильтров
Поле
Описание
eth.addr
физический адрес источника или получателя в кадре протокола Ethernet
eth.dst
физический адрес получателя в кадре протокола Ethernet
eth.src
физический адрес источника в кадре протокола Ethernet
eth.len
длина кадра протокола Ethernet
ip.addr
сетевой адрес источника или получателя в
пакете протокола IP
ip.dst
сетевой адрес получателя в пакете протокола IP
ip.src
сетевой адрес источника в пакете протокола IP
ip.proto
обозначение протокола, который был инкапсулирован в пакет IP
tcp.ack
подтверждение (ACK) протокола TCP
tcp.port
порт источника или получателя в сегменте
протокола TCP
tcp.dstport
порт получателя в сегменте протокола TCP
tcp.scrport
порт источника в сегменте протокола TCP
udp.port
порт источника или получателя в сегменте
протокола UDP
udp.dstport
порт получателя в сегменте протокола UDP
udp.scrport
порт источника в сегменте протокола UDP
dns.qry.name имя сетевого ресурса в DNS-запросе
dns.resp.name имя сетевого ресурса в DNS-ответе
153
Оператор
==
eq
Значение
равно
!=
ne
неравно
>
gt
больше
<
lt
меньше
Таблица 13
Операторы сравнения
Примеры
ip.addr= =192.168.1.1
отображать только те пакеты
протокола IP, в которых сетевой адрес отправителя или получателя равен 192.168.1.1
eth.dst= =ff:ff:ff:ff:ff:ff
отображать только широковещательные (broadcast) кадры
протокола Ethernet
ip.dst!=255.255.255.255
не отображать широковещательные (broadcast) пакеты
протокола IP
tcp.dstport>10000
отображать только те сегменты протокола TCP, в которых
порт получателя больше 10000
tcp.dstport<1024
отображать только те датаграммы протокола UDP, в которых порт получателя меньше
1024
При построении фильтра можно использовать два и
более условия, используя логические операторы. Комбинирование условий при построении операторов производится по следующему принципу: «условие1, логический
оператор, условие2, логический оператор».
154
Оператор
Значение
&&
and
И
||
or
ИЛИ
!
not
НЕ
(отрицание)
10.3.6.
Таблица 14
Логические операторы
Примеры
ip.src= =192.168.1.1 && ip.dst=
=192.168.1.10
отображать только сообщения, отправленные устройством с сетевым адресом 192.168.1.1 для
устройства с сетевым адресом
192.168.1.10
eth.dst= =ff.ff.ff.ff.ff.ff || ip.dst=
=255.255.255.255
отображать только широковещательные кадры протокола Ethernet
или пакеты протокола IP
!arp
не отображать PDU протокола
ARP
Поля и списки
В поле списка захваченных PDU выводится
сводная информация по всему трафику, захваченному с
помощью программы WireShark (рис. 10.19)
Рис.10.19. Поле списка захваченных PDU.
Сводная информация выводится в виде таблицы со
следующими полями:
155
Поле таблицы
No.
Time
Source
Destination
Protocol
Info
Таблица 15
Описание
Порядковый номер захваченного PDU.
При использовании фильтра порядковый
номер не изменяется
Временная отметка, обозначающая время
(в секундах), прошедшее с момента начала захвата PDU
Сетевой адрес отправителя
Сетевой адрес получателя
Протокол
Дополнительная информация о захваченном PDU
В информационном поле (рис. 10.20) отображается
подробная информация о захваченном PDU, выделенном в
поле списка захваченных PDU.
Рис. 10.20. Информационное поле программыю
Выделенные черными цифрами области на рис.
10.20 отображают: выделенную запись в листе списка
захваченных PDU (1), запись выделяется одинарным
нажатием левой клавиши мыши (программа помечает
текущую выделенную запись серым цветом); и подробную
информацию о выделенном PDU (2).
156
Информация о выделенном PDU выводится в виде
иерархического списка. Иерархия списка соответствует
порядку инкапсуляции данных, применяемой при
использовании протоколов стека TCP/IP для передачи
информации между устройствами. Пример приведен на
рис. 10.21.
Рис. 10.21. Информация о захваченном PDU
протокола HTTP.
Черными цифрами на рис. 10.21 отмечены следующие области:
1)
выделенное PDU в поле списка захваченных
PDU, по умолчанию программы строка выделяется серым
цветом;
2)
«+ Frame 1417» – это вложенный список, содержащий справочную информацию о захваченном PDU
(время захвата, длина пакета и т.п.);
3)
«+ Ethernet II» - это вложенный список, содержащий информацию о заголовке протокола канального
уровня (DataLink). В данном случае это протокол Ethernet;
4)
«+ Internet Protocol» - это вложенный список,
содержащий информацию о заголовке протокола сетевого
уровня (Network). В данном случае это протокол IP;
5)
«+ Transmission Control Protocol» - это вложенный список, содержащий информацию о заголовке
протокола транспортного уровня (Transport). В данном
случае это протокол TCP;
157
6)
«+ Hypertext Transfer Protocol» - это вложенный список, содержащий информацию о заголовке протокола прикладного уровня (Application). В данном случае
это протокол HTTP.
Каждый вложенный список представляет собой последовательность полей (всех или только основных), содержащихся в заголовке протокола, используемого при
инкапсуляции данных. Порядок в списке соответствует
порядку полей в заголовке протокола.
Для протокола Ethernet стандарты определяют
проводные соединения и электрические сигналы на физическом уровне, а формат кадров и протоколы управления
доступом к среде – на канальном уровне модели OSI.
Схематичное изображение кадра протокола Ethernet
и соответствующий вид окна программы WireShark показаны на рис. 10.22
Рис. 10.23. Поля заголовка кадра протокола Ethernet.
Информацию в заголовках можно интерпретировать
следующим образом:
 «Ethernet II» - это кадр протокола Ethernet;
 «Srс:Foxconn_be:6a:27 (00:01:6c:be:5a:27)» - физический адрес устройства отправителя 00:01:6c:be:5a:27 (поле
Source), производитель сетевой карты – компания Foxconn;
 «Dct:lt-server.olacc.mltht.ru (00:04:23:bf:bc:19)» - физический адрес устройства получателя 00:04:23:bf:bc:19
158
(поле
Destination),
DNS-имя
устройства
ltserver.olacc.mltht.ru;
 «Type:IP (0x0800)» - на сетевом уровне используется протокол IPv4. Значение этого поля позволяет устройству определить, какому протоколу сетевого уровня следует дальше передать полученное PDU. В данном случае это
протокол IP. Другие наиболее часто встречающиеся значения поля Type: 0х0806-ARP, 0x86DD-IPv6.
Протокол IP относится к сетевому уровню и обеспечивает систему глобальной логической адресации для
устройств в сети. Схематичное изображение заголовка пакета протокола IP и соответствующий вывод программы
Wireshark показаны на рисунке 10.24. Тёмно-серым цветом
выделены поля, выводимые программой.
Рис.10.24. Поля заголовка пакета протокола IP.
159
Информацию в заголовках можно интерпретировать
следующим образом:
 «Internet Protocol» - это пакет протокола IP;
 «src:172:16:1:50 (172:16:1:50)» - это сетевой адрес
устройства отправителя 172:16:1:50 (поле Source);
 «dst:tessie.mitht.ru (193.232.216.7)» - это сетевой адрес устройства получателя 193.232.216.7, DNS-имя устройства получается - tessie.mitht.ru (поле Destination);
 «time to live:128» - максимально возможное количество сетевых устройств, которые могут обработать и передать пакет далее по сети составляет 128
 «Protocol:TCP (0x06)» - на транспортном уровне используется протокол TCP. Значение этого поля позволяет
устройству определить, какому протоколу транспортного
уровня следует дальше передать полученное PDU. В данном случае это протокол TCP. Другие наиболее часто
встречающиеся значения поля Protocol: 0х01-ICMP, 0x11UDP.
Протокол TCP относится к транспортному уровню,
обеспечивает надёжную передачу информации между приложениями взаимодействующих устройств. Схематичное
изображение заголовка пакета протокола IP и соответствующий вывод программы Wireshark показаны на рисунке. Тёмно-серым цветом выделены поля, выводимые
программой.
160
Рис.10.25. Поля заголовка семента TCP.
Информацию в заголовках можно интерпретировать
следующим образом:
 «Transmission control Protocol» - это сегмент протокола TCP.21;
 «Src Port: 1365 (1365)» - приложение устройства отправителя использует порт 1365 (поле Source Port);
 «Dst Port: 3128 (3128)» - приложение устройства получателя использует порт 3128 (поле Destination Port);
 «Len: 331» – сегмент содержит 331 байт информации (поле Header Length);
 «Sequence number:1 (relative sequence number), [Next
sequence number:332 (relative sequence number)], Acknowledgement number:1 (relative ack number)» - поля, используемы для организации надежного обмена информацией
между приложениями;
 «Window size» - количество байт, которые могут
быть переданы без подтверждения.
161
Список дополнительной литературы
Степанов С.Н. Основы елетрафика мультисервисных сетей/
С.Н.Степанов. – М.:Эко-Трендз, 2010. – 392с.
2. Олифер, В. Транспортная подсистема неоднородных сетей
[Электронный ресурс]/ В.Олифер, Н.Олифер// Режим доступа: http://citforum.ru/nets/tpns/contents.shtml
3. Рассохин Д.Н. World Wide Web – всемирная информационная паутина в сети Internet. Практическое руководство/ Д.Н.
Рассохин, А.И. Лебедев. – Издательство МГУ, 1997. – 208с.
4. Case J. RFC 1157. A Simple Network Management Protocol
(SNMP)
[Электронный
ресурс]/
J.Case,
M.Fedor,
M.Schoffstall,
J.Davin//
Режим
доступа:
http://www.ietf.org/rfc/rfc1157.txt
5. Кульгин М. Оптимизация работы протокола TCP в распределенных сетях [Электронный ресурс]/ М.Кульгин// Сети. –
1999.
№10.
Режим
доступа:
http://citforum.ru/nets/tcp/optimize01.shtml
6. Паркер Д. Обзор протокола TFTP [Электронный ресурс]/
Д.Паркер//
Режим
доступа:
http://netdocs.ru/articles/Understanding-TFTP-Protocol.html
7. Храмцов П.Б. Администрирование сети и сервисов Internet.
Учебное пособие [Электронный ресурс]/ Режим доступа:
http://citforum.ru/nets/services/index.shtml
8. Таненбаум Э. Компьютерные сети/ Э.Таненбаум. – 4-е изд.
– СПб.: Питер, 2003. – 992с.
9. Денисова Т.Б., Лихтциндер Б.Я., Назаров А.Н., Симонов
М.В., Фомичев С.М. Мультисервисные АТМ-сети. – М.:
Эко-Трендз, 2005. – 317с.
10. [Электронный
ресурс]/
Режим
доступа:
http://www/wireshark.org/download.html
1.
162
Федеральное государственное образовательное бюджетное
учреждение высшего профессионального образования
“Поволжский государственный университет
телекоммуникаций и информатики”
443010, г. Самара, ул. Льва Толстого 23
_____________________________________________________________
Подписано в печать 21.04.15 г. Формат 60 х 84/16
Бумага офсетная №1. Гарнитура Таймс.
Заказ 1002968. Печать оперативная. Усл. печ. л. 9,4 Тираж 100 экз.
_____________________________________________________________
Отпечатано в издательстве учебной и научной литературы
Поволжского государственного университета
телекоммуникаций и информатики
443090, г. Самара, Московское шоссе 77, т. (846) 228-00-44
Документ
Категория
Без категории
Просмотров
30
Размер файла
3 799 Кб
Теги
setej, multiservisnogo, lihttsinder, analiz, trafika
1/--страниц
Пожаловаться на содержимое документа