Настройка диалоговой рабочей схемы запросов и ответов TCP

Диалоговая рабочая схема TCP предусматривает передачу данных в обоих направлениях.

В качестве примеров диалоговой рабочей схемы можно привести приложения вызова удаленных процедур (RPC), приложения клиент-сервер, такие как запросы Web-браузера к Web-серверу, файловые системы NFS (применяющие TCP в качестве протокола передачи данных) и протокол управления блокировками базы данных. Как правило это небольшие сообщения, в ответ на которые отправляются большие ответы, или наоборот.

Основной характеристикой рабочей схемы такого типа является задержка при подтверждении приема. Как правило запросы и ответы представляют собой небольшие сообщения, поэтому пропускная способность сети в данном случае большой роли не играет.

В основном задержка определяется аппаратным обеспечением. Например, время подтверждения приема может зависеть от типа сети, типа и производительности коммутаторов и маршрутизаторов, мощности процессоров конечных систем, задержек в работе адаптеров и шин.

Опции настройки, предназначенные для сокращения задержек (оптимальное время ответа), как правило приводят к возрастанию нагрузки на CPU за счет отправки большего числа пакетов, обработки большего числа прерываний и т.д. Это классические компромиссы, позволяющие повысить производительность.

Ниже описаны основные параметры настройки диалоговых приложений:

  • tcp_nodelay и tcp_nagle_limit
  • tcp_nodelayack
  • Параметры объединения прерываний адаптера
Прим.: В некоторых случаях диалоговая рабочая схема предусматривает передачу больших объемов данных в одном направлении. Для такой рабочей схемы требуется настройка как задержки, так и потоков данных.