Анализ сетевых протоколов. Коннов Н.Н - 33 стр.

UptoLike

Составители: 

32
вильный прием запроса и информирующим о готовности установить
соединение. Для этого поле «Номер последовательности подтвержде-
ния» устанавливается на 1 больше начального номера в поле после-
довательности TCP-заголовка пакета от системы A и устанавливается
флаг ACK, а также взводится флаг SYN и устанавливается начальный
номер в последовательности. На третьем шаге система A подтверждает
правильность приема пакета от системы B. Следует отметить, что ни
один из пакетов трехшагового рукопожатия не содержит данных
прикладного уровня, передача которых начинается на четвертом шаге.
Помимо проверки существования другого компьютера и его го-
товности к приему данных, на этапе установления логического соеди-
нения согласовывается нумерация передаваемых сообщений, действу-
ющая на время соединения. Каждый компьютер выбирает для первого
сегмента TCP начальный номер последовательности. Затем с каждым
последующим сообщением системы увеличивают этот номер на 1. Для
выбора ISN компьютеры используют специальный алгоритм, который
минимизирует вероятность того, что для соединения между одной и
той же парой сокетов одновременно будут использованы одинаковые
номера последовательности.
Кроме того, с помощью сообщений SYN компьютеры также
информируют друг друга о максимальном размере сегмента MSS
(maximum segment size). Значение MSS зависит от того, какой протокол
канального уровня используется в сети, где находится соответствующая
системао значению MSS для другой системы передающий компьютер
определяет количество данных, которое можно включать в после-
дующие сообщения. Величина MSS передается в виде четырех байтов,
записанных в полях Options заголовков TCP двух пакетов SYN.
Завершение соединения сопровождается обменом пакетов с
флагами FIN и ACK. Так как TCP-соединение полнодуплексное, каж-
дое направление должно быть закрыто независимо от другого. При
этом каждая сторона должна послать пакет с флагом FIN, когда пере-
дача данных завершена. Приняв FIN, протокол должен уведомить свое
приложение, что удаленная сторона прекращает передачу данных в
этом направлении (FIN обычно отправляется в результате того, что
приложение было закрыто), и отправить назад ACK с принятым номе-
ром последовательности плюс один. Станция, получившая FIN, может
все еще посылать данные. Когда приложение системы, получившей
FIN, будет закрыто, TCP-протокол формирует и отсылает свой пакет с
флагом FIN, на который должен быть получен ответ ACK. Таким
образом, для закрытия соединения требуется четыре шага.
вильный прием запроса и информирующим о готовности установить
соединение. Для этого поле «Номер последовательности подтвержде-
ния» устанавливается на 1 больше начального номера в поле после-
довательности TCP-заголовка пакета от системы A и устанавливается
флаг ACK, а также взводится флаг SYN и устанавливается начальный
номер в последовательности. На третьем шаге система A подтверждает
правильность приема пакета от системы B. Следует отметить, что ни
один из пакетов трехшагового рукопожатия не содержит данных
прикладного уровня, передача которых начинается на четвертом шаге.
     Помимо проверки существования другого компьютера и его го-
товности к приему данных, на этапе установления логического соеди-
нения согласовывается нумерация передаваемых сообщений, действу-
ющая на время соединения. Каждый компьютер выбирает для первого
сегмента TCP начальный номер последовательности. Затем с каждым
последующим сообщением системы увеличивают этот номер на 1. Для
выбора ISN компьютеры используют специальный алгоритм, который
минимизирует вероятность того, что для соединения между одной и
той же парой сокетов одновременно будут использованы одинаковые
номера последовательности.
     Кроме того, с помощью сообщений SYN компьютеры также
информируют друг друга о максимальном размере сегмента MSS
(maximum segment size). Значение MSS зависит от того, какой протокол
канального уровня используется в сети, где находится соответствующая
система.По значению MSS для другой системы передающий компьютер
определяет количество данных, которое можно включать в после-
дующие сообщения. Величина MSS передается в виде четырех байтов,
записанных в полях Options заголовков TCP двух пакетов SYN.
     Завершение соединения сопровождается обменом пакетов с
флагами FIN и ACK. Так как TCP-соединение полнодуплексное, каж-
дое направление должно быть закрыто независимо от другого. При
этом каждая сторона должна послать пакет с флагом FIN, когда пере-
дача данных завершена. Приняв FIN, протокол должен уведомить свое
приложение, что удаленная сторона прекращает передачу данных в
этом направлении (FIN обычно отправляется в результате того, что
приложение было закрыто), и отправить назад ACK с принятым номе-
ром последовательности плюс один. Станция, получившая FIN, может
все еще посылать данные. Когда приложение системы, получившей
FIN, будет закрыто, TCP-протокол формирует и отсылает свой пакет с
флагом FIN, на который должен быть получен ответ ACK. Таким
образом, для закрытия соединения требуется четыре шага.
                                32