- •Содержание
- •Сети нового поколения (ngn)
- •Основные понятия и термины
- •Классы сервиса и приоритеты обслуживания трафика
- •Управление процессом передачи сообщений
- •Повышение загрузки ресурса сети
- •Характеристики трафика
- •Уровни анализа трафика в мультисервисных сетях
- •Основные параметры пакетного трафика
- •Распределения вероятностей
- •Взаимные корреляционные моменты
- •Пуассоновские потоки заявок
- •Непрерывные и дискретные случайные величины
- •Разделение канального ресурса во времени
- •Обслуживание пуассоновских потоков
- •Смо с непуассоновскими потоками
- •Особенности мультисервисного трафика
- •Непуассоновские потоки
- •Функция г-распределения
- •Квазипуассоновское распределение вероятностей числа заявок
- •Гиперпуассоновское распределение вероятностей числа заявок на интервале
- •Гипер г- распределение вероятностей числа заявок на интервале
- •Очереди в одноканальных системах передачи с потоками заявок общего вида
- •Последовательное распределение постоянных интервалов времени передачи
- •Средняя доля недообслуженных заявок
- •Дообслуживание очередей
- •Уравнение баланса
- •Аппроксимация
- •Аппроксимация степенной зависимостью
- •Полиномиальная аппроксимация
- •Мультиплексирование потоков
- •Бесприоритетное обслуживание
- •Мультиплексирование групповых потоков
- •Относительные приоритеты
- •Оценка канального ресурса на уровне установления соединения
- •Механизм управления трафиком
- •Классы трафика
- •Службы атм
- •Форматы ячеек атм
- •Механизмы управления потоком
- •Формирование трафика
- •Контроль приоритетов
- •Контроль потока abr
- •Механизмы отбрасывания ячеек
- •Методы сброса пакета
- •Протоколы
- •Cетевая модель tcp/ip
- •Уровень доступа к сети
- •Управление логическим каналом
- •Управление на подуровне доступа к среде удс (мас)
- •Протоколы межсетевого уровня
- •Протокол ip
- •Протоколы транспортного уровня модели tcp/ip
- •Протокол udp
- •Поля udp дейтограммы
- •Инкапсуляция udp
- •Протокол tcp
- •Протоколы прикладного уровня
- •Http – протокол передачи гипертекстов
- •Smtp-протокол
- •Средства мониторинга и анализа трафика
- •Системы мониторинга
- •Анализаторы протоколов
- •Описание программы Wireshark
- •Установка программы
- •Первый запуск и начало работы с программой
- •Настройка программы и запуск захвата трафика.
- •Главное рабочее окно программы
- •Фильтр. Построение фильтров
- •Поля и списки
Протокол tcp
Основная задача протокола TCP (Transmission Control Protocol – протокол управления передачей, RFC 793) обеспечить сквозную гарантированную доставку данных между прикладными процессами. Другими словами, если приложение на одном узле хочет передать данные без каких – либо изменений такому же приложению на другом узле, то задачу эту выполнить приложение доверяет протоколу TCP.
Поскольку, приложение полностью прилагается на протокол TCP (зачастую, не имея собственных механизмов проверки данных) протокол TCP должен реализовать доставку собственными механизмами. Инкапсуляция данных при использовании протокола TCP происходит схожим с UDP образом, только TCP заголовок значительно отличается от заголовка UDP. Заголовок TCP несет себе множество полей служебной информации, служащей для управления передачей данных по каналам связи.
|
Рис. 9.11 Формат заголовка TCP-сегмента. |
Заголовок TCP сегмента состоит из 32 – разрядных слов (32 бита) и имеет переменную длину, зависящую от размера поля «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 – срочно) указывает срочность доставки сегмента;
Флаг 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 не регламентирует, как должны обрабатываться срочные данные, определено только, что они должны быть максимально быстро отправлены прикладному процессу. Поле «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 – битное слово.
