11.7.1. WEB¶
Описание¶
TCP-профиль позволяет выполнять тонкие настройки протокола TCP под каждый конкретный случай.
Например, поддерживается настройка алгоритмов управления перегрузками (Congestion control algorithm), которые применяются в различных типах задач: reno и cubic — стандартные алгоритмы, используются в большинстве задач; dctcp используется в дата-центрах; bbr разработан компанией Google для передачи видеоконтента.
TCP-профиль можно применить как и к Сервису, так и к Target-группе, либо отдельному Worker. Это дает возможность выполнить оптимизацию внутреннего и внешнего трафика. Например:
- Так как обычно сервера (Worker) находятся рядом друг с другом внутри дата-центра, создаем TCP-профиль с алгоритмом dctcp, уменьшаем таймауты и включаем ECN. 
- Для Сервисов создаем другой профиль, где указываем большее время на установку сессии (ESTABLISHED session timeout), чтобы клиенты могли успеть подключиться в случае плохого качества сети и включаем защиту от SYN-флуда (SYN cookie feature enable). 
Настройка¶
Перейдите в Traffic Management -> TCP profile.
 
По умолчанию создан профиль default без каких-либо настроек. Если при создании Сервисов или Target-групп не указывается никакой TCP-профиль, то применяется default.
Для того, чтобы создать новый TCP-профиль, нажмите на кнопку Add. Появится отдельная колонка с названием TCP-профиля.
Для того, чтобы удалить TCP-профиль, нажмите на значок корзины внизу в колонке с названием TCP-профиля.
Для того, чтобы обновить список TCP-профилей, нажмите на кнопку Refresh.
Для того, чтобы отредактировать TCP-профиль, нажмите на кнопку редактирования внизу в колонке с названием TCP-профиля.
При добавлении нового TCP-профиля система попросит вас указать его название и различные параметров. Их описание и значение по умолчанию приводится в самом поле для данного параметра.
 
| Поле | Описание | 
|---|---|
| RX window | Начальный размер окна приема TCP. По умолчанию 131071 | 
| ESTABLISHED session timeout | Время жизни (мс) TCP-сессии в состоянии ESTABLISHED. По умолчанию 120000 | 
| Min size RX window | Минимальный размер окна приема TCP в байтах. По умолчанию 2048 | 
| Max segment size | Максимальный размер сегмента (длина пакета). По умолчанию 1480 | 
| Timer freq for TIMESTAMP | Частота таймера для опции TCP TIMESTAMP. По умолчанию 250 | 
| RX window no WS | Начальный размер окна приема TCP, если не указан масштаб окна (window scale) | 
| SYN cookie interval | Период времени, в течение которого SYN cookie действительны и могут быть использованы для установления TCP-соединения | 
| CLOSE-WAIT timeout | Время жизни (мс) сессии в состоянии TCP CLOSE-WAIT. По умолчанию 20 | 
| Delayed ACK timeout | Время задержки (мс) перед отправкой ACK-сообщения | 
| OPENING session timeout | Время жизни (мс) сессии в состоянии TCP OPENING. По умолчанию 20 | 
| TCP restransmit timeout | Таймаут (в мс) на повторную передачу TCP-пакета (TCP Retransmission). По умолчанию 200 | 
| TCP zero window timeout | Время жизни сессии (в мс) в состоянии нулевого окна TCP (TCP zero window). По умолчанию 5 | 
| Congestion control algorithm | Алгоритм управления перегрузками: cubic, bbr, dctcp, reno | 
| Max number of delayed ACKs | Максимальное количество отложенных подтверждений TCP (TCP delayed acknowledgment). Метод, при котором несколько ответов ACK могут быть объединены в один. По умолчанию 2 | 
| Max number of retransmits | Максимальное количество повторных передач TCP-пакета. По умолчанию 4 | 
| Service timeout | Время (в мкс), в течение которого приложения клиента будет пытаться восстановить соединение с сервером. По умолчанию 10 | 
| Scale factor (WS) for RX | Масштаб окна, на который умножаеся значение параметра RX window | 
| ECN feature enabled | Включение функционала ECN (Explicit Congestion Notification) | 
| TIMESTAMP option enabled | Включение опции TCP TIMESTAMP | 
| TOA option enabled | Включение опции TCP TOA (TCP Option Address) | 
| SYN cookie feature enabled | Включение функционала защиты от SYN-флуда |