stringtranslate.com

TCP быстрое открытие

В компьютерных сетях TCP Fast Open ( TFO ) — это расширение, ускоряющее открытие последовательных соединений протокола управления передачей (TCP) между двумя конечными точками. Он работает с использованием файла cookie TFO (опция TCP), который представляет собой криптографический файл cookie, хранящийся на клиенте и устанавливаемый при первоначальном соединении с сервером. [1] Когда клиент позже повторно подключается, он отправляет исходный пакет SYN вместе с данными cookie TFO для аутентификации. В случае успеха сервер может начать отправку данных клиенту еще до получения последнего пакета ACK трехстороннего рукопожатия, тем самым пропуская двустороннюю задержку и снижая задержку в начале передачи данных.

Файл cookie генерируется путем применения блочного шифра , основанного на ключе, который сервер держит в секрете, к ключу клиента, генерируя тег аутентификации , который третьим лицам трудно подделать, даже если они могут подделать исходный IP-адрес или установить двусторонние соединения. на тот же сервер с других IP-адресов. Несмотря на то, что для создания файлов cookie используются криптографические методы, TFO не предназначен для обеспечения большей безопасности, чем трехстороннее рукопожатие, которое он заменяет, и не обеспечивает какой-либо формы криптографической защиты результирующего TCP-соединения или обеспечения идентификации любой конечной точки. Он также не предназначен для защиты от атак «человек посередине» . Если такое сопротивление требуется, его можно использовать в сочетании с криптографическим протоколом, таким как TLS или IPsec .

TFO было сложно развернуть из-за окостенения протокола; в 2020 году ни один веб-браузер не использовал его по умолчанию. [2]

TFO представляет собой проблему конфиденциальности ; файл cookie TFO может позволить постоянно отслеживать клиента между сеансами даже пассивным наблюдателям. [3]

История

Предложение TFO было первоначально представлено в 2011 году [4] и опубликовано как экспериментальный RFC 7413 в декабре 2014 года. [5] TCP Fast Open разделяет цель обхода трехэтапного установления связи TCP с более ранним предложением 1994 года под названием T. /TCP (RFC 1644). В отличие от TCP Fast Open, T/TCP не уделял внимания безопасности, [5] открывая путь для уязвимостей и не набирая обороты.

Характеристики

Реализации TFO включают следующее:

Смотрите также

Рекомендации

  1. ^ Керриск, Майкл (1 августа 2012 г.). «TCP Fast Open: ускорение веб-сервисов». LWN.net .
  2. ^ Рыбчинская 2020.
  3. ^ Си и др. 2020, с. 275-279.
  4. ^ Радхакришнан С., Ченг Ю., Чу Дж., Джайн А., Рагхаван Б. (6 декабря 2011 г.). «Быстрое открытие TCP» (PDF) . АСМ-КОНЕКСТ.
  5. ^ Аб Ченг, Ючунг; Чу, Джерри; Радхакришнан, Сивасанкар и Джайн, Арвинд (декабрь 2014 г.). TCP Быстрое открытие. IETF . дои : 10.17487/RFC7413 . РФК 7413 . Проверено 27 июня 2022 г.
  6. ^ Керриск, Майкл (1 августа 2012 г.). «TCP Fast Open: ускорение веб-сервисов». LWN.net. Поддержка на стороне клиента была добавлена ​​в Linux 3.6.
  7. ^ Воан-Николс, Стивен Дж (11 декабря 2012 г.). «Выходит Linux 3.7, разработчики ARM радуются». Linux и открытый исходный код . ЗДНет. Линукс 3.7. TCP Fast Open теперь будет поддерживаться на серверах.
  8. ^ «Ядро Linux 3.13, раздел 1.10. Быстрое открытие TCP включено по умолчанию» . kernelnewbies.org . 19 января 2014 года . Проверено 11 февраля 2014 г.
  9. ^ «Ядро Linux 3.16, Раздел 1.4. Режим TCP Fast Open сервера с поддержкой IPv6» . kernelnewbies.org . 3 августа 2014 года . Проверено 14 сентября 2014 г.
  10. ^ «Реализация TCP Fast Open (TFO) на стороне сервера [RFC7413]: MFC в стабильную / 10-ю ветку» . 28 декабря 2015 г.
  11. ^ «Это реализация клиентской стороны TCP Fast Open (TFO) [RFC7413]» . 26 февраля 2018 г.
  12. ^ «Включить TCP_FASTOPEN по умолчанию для FreeBSD 12» . 24 июня 2018 г.
  13. ^ «1188435 — Поддержка быстрого открытия TCP» . 05.05.2017.
  14. ^ «1398201 — Отключить быстрое открытие TCP для 57» . 10 сентября 2017 г.
  15. ^ «1689604 — Удалить TCP FastOpen» . 2021-03-23.
  16. ^ «Выпущен Exim 4.88» . 25 декабря 2016 г.
  17. ^ «Непривязанная 1.5.10» . Проверено 5 декабря 2017 г.
  18. ^ «Примечания к выпуску BIND версии 9.11.0» . 05.10.2016.
  19. ^ «Узел DNS 2.6.0» . 29 сентября 2017 г.
  20. ^ «Ваше приложение и сети следующего поколения» . Apple Inc., 2015 год.
  21. ^ «Windows 10, сборка 14352 — Новые функции веб-платформы» . Майкрософт . Проверено 27 мая 2016 г.
  22. ^ «Журналы изменений для 4.1.x» . PowerDNS. 04.12.2017.
  23. ^ Келли, Саймон (10 марта 2019 г.). «Поддержка TCP fastopen на входящих и исходящих соединениях».

Библиография

Внешние ссылки