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

Анатомия игровых лагов › L4 Интернет-маршрут

Смена маршрута BGP и сходимость Route change / BGP convergence

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

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

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

Почему Меняется маршрутная информация на участке какого-то провайдера → Следствие От нескольких секунд до нескольких десятков секунд пакеты пропадают или переходят на новый маршрут → На экране Внезапный фриз на несколько секунд, после которого меняется пинг (например, 40 → 70 ms)

Симптомы
Фриз, Телепортация
Факторы
Потери, Задержка
У кого
Один регион или провайдер
Когда
Изредка, случайно
Ответственные
Основной ответственный Команда инфраструктуры · Сетевая инфраструктура · Совместно Команда разработки · Разработка сервера, Внешние стороны · Внешние стороны
Команда разработки: задачи
Таймауты, которые переживают короткие обрывы (не разрывать сразу соединение, замершее на несколько секунд).
Команда инфраструктуры: задачи
Мониторить маршруты (следить за изменениями маршрутов и пинга для наших диапазонов IP), отказы наших линий обнаруживать через BFD меньше чем за 1 с и переключаться (стандартный hold time в BGP 90–180 с), если маршрут сменился на дальний и не возвращается, переводить трафик на другую линию.
Внешние стороны: задачи
Если маршрут часто меняется на участке какого-то провайдера, попросить его выяснить причину.
На графике
Ступенька вверх с определённого момента · RTT, маршрут traceroute
Где смотреть
Сравнить маршруты traceroute и mtr до и после момента, когда изменился RTT, и посмотреть в RIPEstat BGPlay историю изменений маршрутов BGP для нашего диапазона адресов (префикса)
Подтверждает
Вместе с фризом на несколько секунд RTT переходит на другое значение, и в тот же момент есть обновления BGP и смена AS-пути
Опровергает
Если изменений маршрута не было, а RTT растёт только по вечерам, это «Перегрузка пиринга в часы пик», если плохо только части соединений, это «Неисправность одного из путей ECMP»
Чем проверить
Инструменты инфраструктуры (игровой код не нужен)
Реальные инциденты
Cloudflare 2020: Потеря трафика в части городов из-за ошибки в настройке магистрали Cloudflare
Meta 2021: Сбой Facebook: из-за одной команды на магистральных маршрутизаторах пропал даже DNS
Cloudflare 2025: Сбой публичного DNS Cloudflare 1.1.1.1

Источники

  1. RFC 4271: A Border Gateway Protocol 4 (BGP-4) IETF
    Рекомендуемое значение hold time в BGP по умолчанию 90 с (если за это время от соседа нет сообщений, сессия разрывается)
  2. BGP updates in 2024 APNIC
    Среднесуточное время, за которое нестабильный маршрут снова стабилизируется: 25–35 с (IPv4), 40–50 с (IPv6)
  3. Delayed Internet Routing Convergence (SIGCOMM 2000) ACM
    После отказа маршрута сходимость занимает до нескольких минут, всё это время растут потери и задержка (замеры 2000 года)
  4. BGPlay (RIPEstat Data API) RIPE NCC
    Показывает маршруты BGP для диапазона адресов (префикса) на начало периода, обновления BGP, замеченные за этот период, и сведения об AS на пути

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

Тот же слой: L4 Интернет-маршрут

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

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