RFC: 3168
Оригинал: The Addition of Explicit Congestion Notification (ECN) to IP
Предыдущие версии: RFC 2481
Категория: Предложенный стандарт
Дата публикации:
Авторы: , ,
Перевод: Николай Малых
6.1.1.1. Промежуточные устройства

ECN вносит два новых флага ECN-Echo и CWR в заголовок TCP (см. Рисунок 3) для инициализации. В Internet существуют некоторые некорректно работающие межсетевые экраны, устроства балансировки и системы детектирования вторжений, которые отбрасывают SYN-пакеты с организацией ECN или передают в ответ пакет RST, ошибочно воспринимая установленные в заголовке флаги, как сигнатуры сканирования портов, которое может использоваться для организации атак на службы (DoS). Часть таких устройств идентифицирована и на сайте [FIXES] приведен их список с указанием рекомендуемых производителями исправлений, если они имеются. На сайте TBIT [TBIT] перечислены некоторые web-серверы, на которые оказывает влияние такое оборудование. Эти списки могут служить предостережением о существовании описанной выше проблемы.

Для обеспечения отказоустойчивых соединений даже при наличии некорректно работающих устройств, хост, получающий пакет RST в ответ на передачу пакета SYN с организацией ECN, может повторить передачу пакета SYN со сброшенными флагами CWR и ECE. Это может позволить организацию соединения TCP без использования ECN.

Хост, не получивший отклика на пакет SYN с организацией ECN в течение обычного времени ожидания для повтора SYN может повторить передачу пакета SYN со сброшенными флагами CWR и ECE. Для предотвращения влияния обычной потери пакета SYN исходный хост может передать один или несколько повторных пакетов SYN с организацией ECN до начала передачи пакетов SYN со сброшенными флагами CWR и ECE.

Отметим, что в таких случаях возможен следующий сценарий:

  1. Хост A передает пакет SYN с организацией ECN.
  2. Хост B передает пакет SYN/ACK с организацией ECN, который отбрасывается или задерживается.
  3. Хост A передает пакет SYN без организации ECN.
  4. Хост B передает пакет SYN/ACK без организации ECN.

Отметим, что в этом случае, следуя описанной выше процедуре ни хост A, ни хост B не могут устанавливать бит ECT в пакетах данныъ. Более того, важным следствием правил организации и использования ECN, приведенных в параграфе 6.1.1, является то, что хосту в таких случаях запрещено принимать пакеты данных с ECT, поскольку это неявно говорит об отсутствии поддержки ECN на другом хосте.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.