00:00:00Знаете ли вы, что интернет кишит зомби? Нет, не теми, о которых вы подумали.
00:00:05Я говорю о так называемых BGP-зомби. BGP расшифровывается как Border Gateway Protocol —
00:00:12протокол граничного шлюза. С его помощью крупные сети сообщают, по каким IP-адресам они могут доставить трафик.
00:00:18Весь интернет связан огромной глобальной картой, которая подсказывает сетям, как связаться друг с другом,
00:00:24и всё это работает благодаря системе BGP. В большинстве случаев
00:00:29система работает исправно, но иногда в ней появляются эти самые «зомби».
00:00:35Почему же это происходит? Именно это мы и выясним в сегодняшнем видео.
00:00:39В системе BGP, когда сеть хочет направить трафик в новое место,
00:00:49она анонсирует маршрут. А когда нужно прекратить прием трафика через старую локацию,
00:00:54она отзывает этот маршрут. Это происходит постоянно: сети перераспределяют трафик между дата-центрами,
00:01:00переводят клиентов на новые узлы или отключают серверы на обслуживание.
00:01:04Отзыв маршрута — это просто способ сообщить всему миру, что данный путь больше не действителен.
00:01:09Но иногда случается странное. Маршрут отозван,
00:01:13но некоторые сети продолжают верить, что он существует. Они шлют трафик по пути, которого
00:01:20уже не должно быть. Это и называется BGP-зомби. Это устаревший маршрут, который не исчезает
00:01:26из глобальной таблицы маршрутизации, хотя создавшая его сеть уже давно его удалила.
00:01:32Что происходит с трафиком, пока такой «зомби» жив? Он не доходит до цели. Он может
00:01:38какое-то время циркулировать между роутерами, пока не будет сброшен. Или пойти в долгий обход
00:01:43через несколько сетей, пока не упрется в тупик. Либо он попадет в сеть, которая попытается
00:01:49переслать его дальше, но так и не сможет доставить по адресу. Для пользователя это
00:01:55выглядит как зависание страницы, ошибка тайм-аута или кратковременный сбой в работе приложения.
00:02:01Иногда это почти незаметно, но порой замедление становится очевидным.
00:02:06Логичный вопрос: почему роутеры не обновляют глобальную карту мгновенно?
00:02:11Ответ кроется в том, как BGP обрабатывает изменения. Когда исчезает конкретный маршрут,
00:02:17роутеры ищут менее специфичный запасной вариант. Этот поиск требует времени. В это «окно»
00:02:23некоторые роутеры не успевают очистить старую запись и застревают на неактуальных данных. Cloudflare
00:02:29заметили, что в крупных сетях такие зомби живут от 6 до 11 минут.
00:02:34Зомби в протоколе IPv4 обычно живут дольше, чем в IPv6. Но в конечном итоге
00:02:40система исправляет себя сама, так как у каждого маршрута в BGP есть таймер. Если роутер
00:02:46долго не получает обновлений, он удаляет маршрут автоматически. Даже если роутер пропустил
00:02:52первый отзыв маршрута, постоянный обмен данными (так называемый BGP chatter) между соседями
00:02:57рано или поздно даст ему понять, что маршрута больше нет. Когда достаточное число соседей подтвердит статус,
00:03:03зомби исчезнет. Cloudflare обнаружила это явление, работая с клиентами услуги BYOIP
00:03:09или «Bring Your Own IP». В таких случаях Cloudflare временно анонсирует IP-пространство клиента,
00:03:15а затем отзывает его после передачи. Процесс отзыва должен быть чистым,
00:03:21но вместо этого выяснилось, что некоторые провайдеры продолжали использовать старый маршрут еще долго после его удаления.
00:03:27Из-за этого несоответствия трафик шел в сеть Cloudflare по непредсказуемым и неэффективным путям.
00:03:33Чтобы решить проблему, в Cloudflare внедрили более безопасный метод. Вместо того чтобы просто отозвать
00:03:38старый маршрут, они сначала анонсируют тот же маршрут из стабильной локации. Это заставляет
00:03:45роутеры по всему миру чисто переключиться на новую версию. И только после этого отзывается
00:03:50старый анонс. Это предотвращает всплеск поиска «запасок», порождающий зомби. Также в Cloudflare
00:03:56настроили внутренние системы, чтобы переходы в будущем стали еще плавнее. Если вы хотите
00:04:02узнать об этом подробнее, у Cloudflare есть детальный пост в блоге на эту тему.
00:04:07В завершение хочется сказать: это напоминание о том, что даже базовые элементы интернета могут вести себя
00:04:13непредсказуемо. Тем не менее в большинстве случаев проблемы решаются до того, как
00:04:19пользователи что-то заметят. Но зомби всё же встречаются. Интернет держится на миллионах
00:04:25решений о маршрутизации, принимаемых ежесекундно. И такие сюрпризы, как BGP-зомби, показывают,
00:04:31какая сложная координация нужна для его работы. Вот, собственно, и всё. Теперь
00:04:37вы знаете, что такое BGP-зомби. В следующий раз, когда страница зависнет, возможно,
00:04:43вы просто столкнулись с интернет-зомби. Если вам нравятся такие технические разборы,
00:04:48обязательно жмите лайк под видео и не забудьте подписаться на наш канал. С вами
00:04:53был Андрис из Better Stack. До встречи в новых роликах!