L4 распределяет соединения по сетевым параметрам, а L7 понимает прикладной протокол и может маршрутизировать HTTP по пути или заголовкам. Для WebSocket подходят оба уровня при правильной поддержке соединений.
В чем разница между балансировкой трафика на уровнях L4 (TCP) и L7 (HTTP) модели OSI? Какой инструмент выбрать для WebSocket?
L4 распределяет соединения по сетевым параметрам, а L7 понимает прикладной протокол и может маршрутизировать HTTP по пути или заголовкам. Для WebSocket подходят оба уровня при правильной поддержке соединений.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
L4 распределяет соединения по сетевым параметрам, а L7 понимает прикладной протокол и может маршрутизировать HTTP по пути или заголовкам. Для WebSocket подходят оба уровня при правильной поддержке соединений.
L7-прокси должен корректно обработать установление WebSocket и далее поддерживать длительный двусторонний канал. L4 просто передаёт TCP и не нуждается в анализе HTTP-маршрута. Выбор зависит от TLS termination, маршрутизации, авторизации и инфраструктуры. Проверьте idle timeout, лимиты соединений, health checks и graceful draining. Само наличие балансировщика не переносит активное WebSocket-соединение на другой сервер при его отказе.