Кратко

  • RFC 1008 обсуждает необязательное подтверждение управления потоком в транспорте ISO. Если AK вновь открывает закрытое кредитное окно, получатель может быстро повторять его, пока отправитель не ответит AK с параметром FCC.
  • Wayne McCoy писал в июне 1987 года, что сведений об опыте применения FCC не поступало. При отсутствии ответа повторы заканчиваются после заданного максимума, и управление возвращается обычному таймеру окна.

Сначала всё шло по правилам. Буферы получателя заполнились, он больше не обещал места, и отправитель прекратил передачу. Затем буферы освободились. Получатель послал AK с новым кредитом, открывая окно. Сообщение пропало. Отправитель помнит последнюю команду — стоять. Получатель знает, что может принять данные. Обе машины ведут себя аккуратно, но сеть молчит, хотя место уже есть.

Wayne McCoy разобрал такой случай в RFC 1008, руководстве по реализации транспортного протокола ISO, разосланном в июне 1987 года для замечаний. AK здесь подтверждает не только получение данных. Некоторые такие сообщения передают особенно важное состояние управления потоком: открытие закрытого окна или изменение после сокращения кредита. Их потеря означает, что один участник знает о новом разрешении, а другой по-прежнему живёт по старому запрету.

Свободный буфер от этого не исчезает. Исчезает знание отправителя о свободном буфере. Обычный таймер окна позднее способен восстановить согласованность, однако McCoy называл его сравнительно долгим. Пока он идёт, доступная ёмкость простаивает. Процедура FCC должна была сократить паузу: получатель снова и снова отправляет критический AK через короткие интервалы, запрашивая подтверждение состояния кредита. Когда отправитель отвечает AK с параметром FCC, быстрые повторы прекращаются.

Даже канцелярия знает меру. Если подтверждение не пришло, быстрые посылки останавливаются на заданном пределе, а обычный таймер вновь ведёт процесс. FCC оставалась необязательной, и отправитель данных не обязан был отвечать. McCoy советовал пользоваться одним и тем же таймером для быстрой фазы, поскольку обычный оконный счётчик тогда отключён. В формальном описании два таймера разведены ради ясности. Интервал быстрой фазы автор предлагал ставить примерно равным Erl + Elr, задержкам по обоим направлениям пути.

Нужна ли такая страховка, руководство оставляло решать реализатору. Важны частота сокращения кредита, вероятность потери TPDU, длительность оконного таймера, размер окна и обычная политика AK. Повторные управляющие сообщения тратят ресурсы. Долгая остановка тратит время, которое можно было использовать для передачи. McCoy особо указал: опубликованного опыта работы FCC с быстрым повтором AK тогда не было, следовательно, достаточность выигрыша оставалась открытым инженерным вопросом.

Управление потоком удобно рисовать светофором. Здесь зелёный уже горит, но водитель не видел, как свет переключился. Получатель может повторить сигнал и услышать ответ «вижу». Дело не в нехватке места и не в том, что данные потерялись. Для движения нужна информация о разрешении, общая для обоих концов. Открытое окно, о котором знает только получатель, оставляет отправителя у закрытой двери.