Яндекс.Метрика

Использования в протоколе TCP метода обработки окна

Нужны новые клиенты? Тогда Вам рекомендуем посмотреть этот раздел нашего сайта
_____






Использование окна в ТСР позволяет управлять скоростью передачи данных, выдерживая такое значение, при котором не наступает перезагрузка и потеря данных. В этой статье рассматривается процесс применения окна при передаче данных.

Использования в протоколе TCP метода обработки окна

Использования в протоколе TCP метода обработки окна

ИСПОЛЬЗОВАНИЕ ФИКСИРОВАННОГО РАЗМЕРА ОКНА.

Наиболее простая форма надежной передачи (передачи данных с предварительной установкой соединения), без учёта возникновения перегрузок в сети, заключается в подтверждении получателем каждого принятого сегмента данных, что гарантирует целостность передачи. В тоже время, если отправитель должен ждать прибытия уведомления после отправки каждого сегмента, то пропускная способность канала снижается прямо пропорционально величине времени RTT между отправкой данных и получением уведомления о приеме сегмента. Из-за этого большинство надёжных протоколов с установлением соединения позволяют передавать больше одного сегмента данных за раз.

Это может работать, поскольку существует свободный временной интервал после завершения отправителем передачи сегмента и до обработки отправителем любого принятого уведомления. В течение этого интервала отправитель может передать больше данных, при условии, что окно приёмника достаточно велико для передачи более чем одного сегмента за раз. Окно – это количество сегментов данных, которое позволяется передать отправителю без получения подтверждения от приёмника (см. рисунок).

Обработка окном позволяет определить количество неподтверждаемых сегментов, посылаемых приёмнику. Благодаря этому снижается задержка передачи. Задержка в данном случае – общее время, затраченное на передачу данных в одну сторону и передачу подтверждений обратно.

Пример: перебрасывание мячом
Представим, к примеру, двух человек стоящих па расстоянии 50 футов друг от друга. Один человек бросает мяч другому, и время этого действия занимает 3 секунды. Второй человек ловит мяч и бросает его обратно (уведомление!), и время полета мяча занимает 3 секунды. Время полета мяча туда н обратно или время полного обхода (round trip) заняло 6 секунд. Если повторить этот процесс три раза – получим 18 секунд. Теперь представим что у первого человека не один, а три мяча, и он бросает эти мячи один м другим. Время полета мячей до второго человека составит 3 секунды. Второй человек в качестве уведомления о приеме, бросает 1 мяч, и это занимает 3 секунды. Всего полит мячей туда и обратно занял 6 секунд, но мы, конечно, пренебрегаем временем обработки и некоторыми другими параметрами.

Эта процедура обгясняет процесс обработки окном в соединении TCP.

Базовый процесс, размер окна = 3

Шаг

Действие

Комментарии

1.

Отправитель и получатель обмениваются начальным размером окна в три сегмента до    того    как   должно    быть    выслано подтверждение.

Это происходит в течение процедуры установки соединения.

2.

Отправитель высылает сегменты 1,  2 и 3 приёмнику. Отправитель передаёт сегменты, запускает таймер, и ждет подтверждение от приёмника.

3.

Приёмник принимает сегмент  1,  2,  3 возвращает АСК=4. Приёмник   уведомляет   об   успешном приёме предыдущих сегментов.

4.

Получатель принимает АСК=4 и передаёт сегменты 4, 5 и 6 на приёмник. Отправитель передает сегменты, запускает таймер, и ждёт подтверждение от приёмника.

5.

Приёмник принимает сегмент 4,  5,  6 возвращает АСК=7. Приёмник   уведомляет   об   успешном приёме предыдущих сегментов.

Номера, использованные в примере, упрощены для понимания материала. Эти номера фактически представляют собой октеты (байты) и будут увеличиваться до очень больших номеров, отображающих содержимое сегментов TCP, но не количество самих сегментов.






Заказать звонок
+
Жду звонка!