한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Анатомия игровых лагов › L5 Сетевое оборудование ЦОД

Переключение сетевого оборудования на резерв (failover) Network device failover

ID причины dc-failover · Основной ответственный Команда инфраструктуры · Сетевая инфраструктура · Совместно Команда разработки · Разработка сервера, Команда разработки · Разработка клиента

Открыть карточку в основной версии с иллюстрациями и экспериментами →

Когда маршрутизатор или файрвол выходит из строя и трафик переключается на резервное устройство (failover), на эти несколько секунд у всех фриз.

Почему Из-за отказа или обслуживания трафик переключается на резервное устройство → Следствие Переключение занимает несколько секунд, а если состояние сессий не синхронизировано, соединения сбрасываются → На экране Одновременный фриз у всех игроков сервера, массовые дисконнекты

Симптомы
Фриз, Дисконнект
Факторы
Потери
У кого
Весь сервер
Когда
Изредка, случайно
Ответственные
Основной ответственный Команда инфраструктуры · Сетевая инфраструктура · Совместно Команда разработки · Разработка сервера, Команда разработки · Разработка клиента
Команда разработки: задачи
Сервер: таймауты, которые переживают короткие обрывы (несколько секунд), при переподключении после обрыва подхватывать сессию по токену. Клиент: при обрыве автоматически переподключаться (со случайным разбросом интервала между попытками, чтобы игроки не возвращались все разом).
Команда инфраструктуры: задачи
Резервирование с общим состоянием соединений, обнаружение отказов через BFD меньше чем за 1 с, регулярные тесты переключения.
Цифры для ориентира
Если устройство сразу замечает отказ, примерно 1–3 с. Если быстрого обнаружения отказов (BFD) нет и всё держится на стандартных таймерах BGP, маршрут может быть разорван 90–180 с, пока соседнее устройство не заметит отказ.
На графике
Массовый обрыв соединений · число подключений, общий входящий и исходящий трафик сервера
Где смотреть
Посмотреть журналы событий маршрутизаторов и файрволов (смена роли VRRP, падение сессий BFD и BGP, записи о переключении на резерв) и в то же время число подключений и общий трафик серверов
Подтверждает
В момент переключения по журналу устройства трафик всех серверов за ним на несколько секунд падает до 0 или число подключений падает одновременно
Опровергает
Если подключения упали только на одном сервере, это «Падение сервера» или «Проблемы драйвера и прошивки NIC». Если журнал устройства чист, а остановилась одна облачная виртуальная машина, это «Обслуживание облачного хоста и живая миграция»
Чем проверить
Инструменты инфраструктуры (игровой код не нужен)

Источники

  1. RFC 5880: Bidirectional Forwarding Detection (BFD) IETF
    Механизм Hello в протоколах маршрутизации обнаруживает отказ не быстрее чем за 1 с, BFD создан для обнаружения за более короткое время
  2. RFC 7938: Use of BGP for Routing in Large-Scale Data Centers IETF
    Если полагаться только на keepalive в BGP, сходимость медленная, если сразу реагировать на падение линка и разрывать сессию, отказ обнаруживается за миллисекунды и маршруты быстро сходятся заново
  3. RFC 5798: Virtual Router Redundancy Protocol (VRRP) Version 3 for IPv4 and IPv6 IETF
    Объявления VRRP по умолчанию раз в 1 с, резервное устройство берёт роль на себя, если объявлений нет дольше примерно 3 интервалов (при настройках по умолчанию чуть больше 3 с)

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

Тот же слой: L5 Сетевое оборудование ЦОД

Причины с тем же симптомом (Фриз) на других слоях

Карточка в основной версии с иллюстрациями и экспериментами