Книга: TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)

10.7.2 Окно отправки

10.7.2 Окно отправки

Система, передающая данные, должна отслеживать две характеристики: сколько данных уже было отправлено и подтверждено, а также текущий размер приемного окна получателя. Активное пространство отправки (send space) расширяется от первого неподтвержденного октета к левому краю текущего приемного окна. Часть окна, используемая для отправки, указывает, сколько еще дополнительных данных можно послать партнеру.

Начальный порядковый номер и начальный размер приемного окна задаются во время установки соединения. Рис. 10.13 иллюстрирует некоторые особенности механизма пересылки данных.

1. Отправитель начинает работу с окном отправки в 4 Кбайт.

2. Отправитель пересылает 1 Кбайт. Копия этих данных сохраняется до получения подтверждения (ACK), поскольку может потребоваться их повторная передача.

3. Прибывает сообщение ACK для первого Кбайта, и отправляются следующие 2 Кбайт данных. Результат показан в третьей сверху части рис. 10.13. Хранение 2 Кбайт продолжается.

4. Наконец поступает ACK для всех переданных данных (т.е. все они получены приемником). ACK восстанавливает размер окна отправки в 4 Кбайт.


Рис. 10.13. Окно отправки

Следует указать на несколько интересных особенностей:

? Отправитель не дожидается ACK для каждого из посылаемых сегментов данных. Единственным ограничением на пересылку является размер приемного окна (например, отправитель должен пересылать только 4 К однобайтовых сегментов).

? Предположим, что отправитель посылает данные в нескольких очень коротких сегментах (например, по 80 байт). В этом случае данные могут быть переформатированы для более эффективной передачи (например, в единый сегмент).

Оглавление книги

Оглавление статьи/книги

Генерация: 1.215. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз