Сколько всего серверов Google Global Cache в России?
Краткий очерк о способе и результатах оценки количества серверов, размещенных на сетях крупнейших российских операторов связи.
Ответ сразу
Оператор | Количество серверов | Количество городов |
Ростелеком | 348 | 54 |
ВымпелКом (билайн) | 214 | 42 |
МТС | 176 | 15 |
МегаФон+НетБайНет | 147 | 22 |
ЭрТелеком (ДомРу) | 133 | 34 |
Транстелеком | 122 | 27 |
Суммарно по 6-ти операторам — 1 140 серверов.
Можно было бы отсканировать весь российский сегмент сети интернет или посмотреть в Shodan, но эти методы не дают понимания сколько конкретно железных серверов используется для работы всех найденных сервисов.
Небходимые сведения
Google использует наименования кластеров/серверов GGC с привязкой к оператору и ближайшему международному аэропорту. Например, у меня с мобильного телефона (билайн) при открытии страницы redirector.googlevideo.com/report_mapping?di=no выдается:
85.249.22.12 => vimpelcom-iar2 (85.249.20.0/22)
где vimpelcom — название оператора (в системах Google), IAR — iata‑код аэропорта в Ярославле. Цифра 2 в названии означает номер кластера, т. е. в одной локации (в терминологии Google — GNL, GGC Network Location) у оператора может быть несколько кластеров.
Зная лишь IP-адрес конкретного кластера GGC получить его название нельзя. Поэтому посчитать GGC всех операторов не получится, считаем только крупнейших. У меня это 6 шт:
Оператор | Название в системах Google |
Ростелеком | rostelecom |
Транстелеком | transtelecom |
ВымпелКом | vimpelcom |
МТС | comstar |
МегаФон | megafon |
ЭрТелеком | ertelecom |
Было бы неплохо, если кто-то поделился в комментариях своим выводом redirector.googlevideo.com/report_mapping?di=no, указанием своего оператора связи и региона (IP-адрес можно скрыть, интересует именно связка провайдер-кластер).
Зная название кластера, можно получить IP-адрес его сервера. Достаточно слева дописать r1., а справа — .googlevideo.com, вот так:
$ host r1.vimpelcom-iar2.googlevideo.com
r1.vimpelcom-iar2.googlevideo.com has address 128.75.235.76
r1.vimpelcom-iar2.googlevideo.com has IPv6 address 2a00:1248:4783:3::c
Таким образом, перебирая IATA-коды российских аэропортов и циферки номеров кластеров, можно определить один IP-адрес из каждого кластера для выбранных операторов.
Количество городов считается как количество уникальных кодов IATA с живыми кластерами.
Сакральные знания
К сожалению, привязки количества живых IP-адресов на кластере к количеству используемых серверов нет. Поэтому за советом я обратился к знакомому, действующему сотруднику небольшого оператора связи.
Знакомый охотно поделился знаниями, которые помогли понять принцип сопоставления IP-адреса и реального железа.
Для GGC существует три схемы размещения серверов на сетях оператора:
Google присылает только сервера, они размещаются в одной подсети directly connected (/27 или /26), оператор устанавливает BGP-сессию с приватной AS 65535. Данная схема лет 5 не используется, оборудование по этой схеме не модернизировалась, Google устанавливал новые кластеры.
Аналогично п1., но BGP-сессия устанавливается с AS 11344.
Google присылает сервера и маршрутизатор. BGP-сессия устанавливается с маршрутизатором, AS 36040. Для серверов по-прежнему выделяется подсеть /27, но она прописывается как static.
Во всех 3-х случаях адресный план на серверах одинаковый. И выглядит он примерно так:
№ IP адреса в подсети | Описание |
0 | Адрес сети |
1 | Адрес оператора или роутера Google (для схемы 3) |
2 | не используется |
3 | не используется |
4 | Адрес на сервере 1 |
5 | Адрес на сервере 2 |
... | ... |
11 | Адрес на сервере 8 |
12 | Виртуальный адрес r1 |
13 | Виртуальный адрес r2 |
... | ... |
Предпоследний | BGP-пир со стороны GGC (для схем 1 и 2) |
Последний (31 или 63) | Широковещательный адрес сети |
В данном случае, «адрес на сервере» — это адрес непосредственно сервера. Он отвечает на ICMP и на нем больше нет никаких сервисов. Виртуальный адрес — адрес, на котором запущены HTTP/HTTPS.
Таким образом, зная IP‑адрес «r1», с помощью команды ping по адресам со смещением от -8 до -1 определяем количество железных серверов в каждом кластере.
Ограничения метода
Метод не дает понимания того, какой объем трафика генерирует тот или иной кластер, даже если мы знаем сколько в нем серверов. Дело в том, что в GGC используются разные аппаратные начинки (сервера Dell и HP разных поколений), поэтому разброс оценки емкости слишком большой.
Не дана оценка количества серверов у операторов связи «второго эшелона». Экспертно я оцениваю как +25% к найденному.
Нет понимания «состояния здоровья» с виду живых серверов. Например, на сервере мог выпасть диск и он уже не тянет нужную пропускную способность.
Также не понятно количество уже вышедших из строя серверов. Это можно оценить, зная, что в кластере может быть не больше 8-ми серверов. Но оценку можно дать только по нижней границе, да и то без учета полностью вышедших и демонтированных кластеров.
Не даётся оценка количества серверов на сети самого Google в России. По данным PeeringDB, Google в России присутствует на 4-х площадках (2 в Москве, 2 в Санкт‑Петербурге). Знающие люди подсказали, что количество арендуемых Google стойкомест измеряется десятками. Экспертно я оцениваю количество серверов, как +100% к найденному.
Что можно было бы сделать
Наложить локации GGC на карту OSM, обновлять табличку для оценки динамики отказа серверов.
Но интереснее, если бы динамика была в другую сторону, согласитесь?
Оценка результата
Оценить количество серверов у Ростелеком сложно: много это или мало? Нужен второй, эталонный Ростелеком, но у нас его нет. Есть предположение, что именно РТ является основным бенефициаром последних событий. И, скорее всего, ситуация с Youtube у него самая печальная. Такой вывод я делаю на основании того, что redirector безальтернативно отправляет меня (домашний интернет в одном из регионов ЦФО) не на региональные, и не на московские сервера, а прямиком в Стокгольм:
X.Y.120.70 => arn09s18 : router: "pr03.arn16" next_hop_address: "173.194.121.5" (X.Y.120.0/23)
В данном случае pr03.arn16 — это кластер на сети самого Google, где ARN - код аэропорта в Стокгольме. Такой ситуации я не наблюдаю ни у своих мобильных операторов, ни на другом домашнем интернете.
Из всех мобильных операторов на первом месте оказался ВымпелКом. Это позволяет судить о наличии у него достаточного запаса, чтобы пересидеть коллег по цеху. Скорее всего, стратегия ВымпелКом была на максимальное приближение контента к потребителю за счет более частой установки небольших кластеров GGC, а у МТС и МегаФон — наоборот, более мощные, но реже.
Жизнь после Youtube
Программа Google Global Cache в России развивалась с начала 2010-х. К 2012-му крупные операторы уже наладили системное взамодействие с Google: логистика, поддержка, гарантийная замена...
Камень в сторону Дурова
Как вы считаете, как бы сейчас выглядел ВК и Youtube в России, если бы в конце 2000-х Павел Дуров не ругался с мироедами-магистралами, не жаловался Дмитрию Медведеву на картель ОПГ, не пытался продавать свой трафик, а развивал региональное присутствие, поставлял за свои деньги сервера всем российским операторам, как это делал Google?
В 2022 все остановилось. Достаточно ли два года, чтобы реализовать полноценную замену? Я сомневаюсь.
Если представители РуТьюб и ВК готовы предоставить объективную информацию по развернутой ими инфраструктуре, соизмеримой по размеру и производительности GGC, с большим интересом с ней ознакомлюсь.