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

UptoLike

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

34
Номер первого байта в потоке определяется на этапе установ-
ления соединения и обозначается ISN+1. Например, ISN+1=1. Также
для каждого сегмента вычисляется контрольная сумма, позволяющая
обнаружить повреждение данных.
При удачном приеме сегмента данных получатель посылает
отправителю подтверждение о приеме – номер удачно принятого байта
плюс 1. Если в течение некоторого времени отправитель не получит
подтверждения, считается, что сегмент не дошел или был поврежден,
и он посылается снова. Этот механизм контроля надежности назы-
вается PAR (Positive Acknowledgment with Retransmission). Нумерация
байтов используется также для упорядочения данных в порядке
очередности и обнаружения дубликатов (которые могут быть посланы
из-за большой задержки при передаче подтверждения или потери
подтверждения).
Для ускорения и оптимизации процесса передачи больших объ-
емов данных протокол TCP определяет метод управления потоком,
называемый методом «скользящего окна», который позволяет отправи-
телю посылать очередной сегмент, не дожидаясь подтверждения о
получении в пункте назначения предшествующего сегмента.
Протокол TCP формирует подтверждения не для каждого кон-
кретного успешно полученного пакета, а для всех данных от начала
посылки до некоторого порядкового номера ACK SN (Acknowledge
Sequence Number) исключительно. В качестве подтверждения успешного
приема, например, первых 2000 байт, высылается ACK SN = 2001. Это
означает, что все данные в байтовом потоке под номерами от ISN+1=1
до данного ACK SN-1 (2000) успешно получены.
Вместе с посылкой отправителю ACK SN получатель объявляет
также размер окна, определяющий объем неподтвержденных данных,
который отправителю разрешено передавать без квитанции от полу-
чателя.
Если объявлен размер окна 6000, то отправитель может посылать
данные с порядковыми номерами от текущего ACK SN = 2001 до
(ACK SN + размер окна 1) = 8000, не дожидаясь подтверждения со сто-
роны получателя. Размер окна может динамически изменяться
получателем.
Для временной остановки посылки данных достаточно объявить
нулевое окно. Но даже и в этом случае через определенные проме-
жутки времени будут отправляться сегменты с одним байтом данных.
Это делается для того, чтобы отправитель гарантированно узнал о том,
     Номер первого байта в потоке определяется на этапе установ-
ления соединения и обозначается ISN+1. Например, ISN+1=1. Также
для каждого сегмента вычисляется контрольная сумма, позволяющая
обнаружить повреждение данных.
     При удачном приеме сегмента данных получатель посылает
отправителю подтверждение о приеме – номер удачно принятого байта
плюс 1. Если в течение некоторого времени отправитель не получит
подтверждения, считается, что сегмент не дошел или был поврежден,
и он посылается снова. Этот механизм контроля надежности назы-
вается PAR (Positive Acknowledgment with Retransmission). Нумерация
байтов используется также для упорядочения данных в порядке
очередности и обнаружения дубликатов (которые могут быть посланы
из-за большой задержки при передаче подтверждения или потери
подтверждения).
     Для ускорения и оптимизации процесса передачи больших объ-
емов данных протокол TCP определяет метод управления потоком,
называемый методом «скользящего окна», который позволяет отправи-
телю посылать очередной сегмент, не дожидаясь подтверждения о
получении в пункте назначения предшествующего сегмента.
     Протокол TCP формирует подтверждения не для каждого кон-
кретного успешно полученного пакета, а для всех данных от начала
посылки до некоторого порядкового номера ACK SN (Acknowledge
Sequence Number) исключительно. В качестве подтверждения успешного
приема, например, первых 2000 байт, высылается ACK SN = 2001. Это
означает, что все данные в байтовом потоке под номерами от ISN+1=1
до данного ACK SN-1 (2000) успешно получены.
     Вместе с посылкой отправителю ACK SN получатель объявляет
также размер окна, определяющий объем неподтвержденных данных,
который отправителю разрешено передавать без квитанции от полу-
чателя.
     Если объявлен размер окна 6000, то отправитель может посылать
данные с порядковыми номерами от текущего ACK SN = 2001 до
(ACK SN + размер окна  1) = 8000, не дожидаясь подтверждения со сто-
роны получателя. Размер окна может динамически изменяться
получателем.
     Для временной остановки посылки данных достаточно объявить
нулевое окно. Но даже и в этом случае через определенные проме-
жутки времени будут отправляться сегменты с одним байтом данных.
Это делается для того, чтобы отправитель гарантированно узнал о том,

                                 34