Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа? |
Управление перегрузкой и основные алгоритмы работы TCP
Сегмент
Сегмент – это единица данных, передаваемых между устройствами, которые используют TCP ( Рис. 11.3.). Формат сегмента TCP состоит из 20–60-байтных заголовков и следующих за ними данных для прикладной программы. Заголовок – это 20 байт, если не имеет опций, и 60 байт, если состоит из нескольких опций.
Обсудим некоторые поля заголовков. Смысл и цель их должны быть ясными, поскольку эти поля уже неоднократно рассматривались по всей книге, правда, в других приложениях.
Адрес порта источника. Это поле длиною 16 бит, определяющее номер порта прикладной программы в хосте, в который посылает сегмент. Это обслуживание имеет ту же самую цель, что адрес источника в заголовке UDP, обсуждавшемся ранее (см. рис. 9.1.).
Адрес порта пункта назначения. Это поле длиною 16 бит, определяющее номер порта прикладной программы в хосте, который получает сегмент. Это поле имеет ту же самую цель, что и адрес порта назначения в заголовке UDP, рассмотренном ранее (см. рис. 9.1.). В течение соединения каждая сторона использует случайный номер, чтобы создать начальный порядковый номер (ISN – initial sequence number), который обычно отличается в каждом направлении. Например, если ISN – 2 368 и первый сегмент переносит 1000 байт, порядковый номер – 2 369 (2 367 и 2 368 используются для установления соединения); второй сегмент после 1000 байтного сегмента, переносит 500 байт. Он будет иметь номер 3 369, и так далее. Пункт назначения может определить номер последнего байта для определения размера блока данных. Порядковые номера рассматривались в разделе управления потоком и протокола скользящего окна.
Порядковый номер. Это поле на 32 бита определяет номер, назначенный от первого бита данных, которые содержатся в этом сегменте. Как мы уже говорили прежде, TCP — протокол транспортного уровня. Чтобы гарантировать возможность взаимодействия, каждый байт должен быть передан нумерованным. Порядковый номер говорит пункту назначения, каков байт в этой последовательности по сравнению с первым байтом сегмента.
Номер подтверждения. Это поле занимает 32 бита и определяет номер байта, который ожидает приемник сегмента от другой стороны. Если приемник сегмента успешно принял байт с номером x от другой стороны, он определяет номер подтверждения как x+1.
Длина заголовка. Это поле длиной 4 бита указывает номер 4-байтного слова в TCP заголовке. Эта длина заголовка может быть между 20 и 60 байтами. Поэтому значение этого поля может быть между 5 (5 x 4 = 20) и 15 (15 x 4 = 60).
Зарезервировано. Это поле 6 бит, зарезервировано для будущего использования.
Управление. Это поле определяет 6 различных управляющих бит, или флагов, как это показано на Рис. 11.3.
Эти биты способны управлять потоком, установлением соединения и оконечными устройствами, а также режимом передачи TCP. Короткое описание каждого из бит дано в таблиц 11.1.
Флаг | Описание |
---|---|
Срочно | Указатель срочности сообщения |
Подтверждение | Подтверждает правильность действия |
Запуск | Запуск данных |
Повтор | Соединение должно быть переустановлено |
Синхронизация | Порядковый номер синхронизации в течение соединения |
Конечное | Оконечное соединение |
Размер окна. Это поле определяет размер окна в байтах, который может использовать другая сторона. Заметим, что длина этого поля – 16 бит, что означает максимальный размер окна – 65 535 байт.
Контрольная сумма. Это поле на 16 бит, которое действительно, только если установлен срочный флаг, и используется, когда сегмент содержит срочные данные. Оно определяет, что должно быть дополнено к порядковому номеру, чтобы получить номер последнего и срочного байта в секции данных сегмента. Это будет обсуждаться позднее.
Опция. В ТСР-заголовке может быть до 40 байт информации опций. Мы обсудим различные опции, используемые в TCP-заголовках, в следующей секции.