Как Blackout Map обнаруживает отключения интернета
Blackout Map следит за тем, доступен ли интернет каждой страны из внешнего мира, и объединяет два независимых сигнала, чтобы одно ошибочное измерение не могло окрасить страну в красный цвет.
1. Наши собственные зонды
Каждые 5 минут мы пингуем хосты в более чем 200 странах (всего 5 798): якоря и зонды RIPE Atlas, публичные DNS-резолверы из списка public-dns.info и — там, где их мало, — сетевые шлюзы в собственном адресном пространстве страны (найденные с помощью RIPEstat). Хосты распределены по как можно большему числу разных сетей в каждой стране, чтобы проблемы у одного провайдера не выглядели как общенациональный сбой.
Список хостов пересобирается и перепроверяется каждую неделю: каждый кандидат должен ответить, прежде чем его начнут использовать, ведь неработающий хост выглядит точно так же, как отключение. Хосты у глобальных облачных провайдеров исключаются — их расположение мало что говорит о стране, к которой они отнесены.
Прежде чем оценивать какую-либо страну, в каждом цикле проверяются шесть крупных глобальных сервисов (DNS Cloudflare, Google и Quad9, OpenDNS и два корневых сервера). Если наш собственный сервер не может до них достучаться, цикл отбрасывается.
Наши зонды работают с одного сервера в Германии, поэтому мы также защищаемся от проблем на нашем собственном маршруте. Если несколько стран одного региона одновременно перестают отвечать, а IODA ничего там не видит, мы считаем это проблемой нашего маршрута, а не их сети. А когда наши зонды видят падение в стране, волонтёрские зонды на трёх других континентах (Globalping) повторно проверяют узлы, до которых мы не дотянулись: если они их достигают, наши зонды для этой страны игнорируются; если тоже нет — сбой отмечается как подтверждённый из других мест.
2. IODA
Проект Internet Outage Detection and Analysis в Georgia Tech отслеживает маршрутизацию BGP (анонсируются ли ещё сети страны в интернете?) и масштабное активное зондирование для каждой страны. Мы используем его открытые оповещения как второе мнение и как основной источник для мест с небольшим числом доступных хостов.
Как определяется статус
- Работает — сети доступны как обычно.
- Ухудшение — доступно заметно меньше сетей, чем обычно, или проблему видит только один источник.
- Частичный сбой — значительная часть сетей страны недоступна.
- Отключение — почти ничего не доступно, что подтверждено обоими источниками, или маршруты BGP отозваны.
- Нет данных — сейчас нет надёжных измерений.
«Норма» определяется для каждой страны отдельно: мы сравниваем, сколько хостов отвечает сейчас, с обычным для этой страны уровнем за последние сутки. Во время инцидента этот базовый уровень замораживается, поэтому длительный сбой никогда незаметно не становится новой нормой.
Каждый источник выставляет уровень от нормы до полного отключения. Если хотя бы один источник не видит проблем, страна отображается не хуже чем с ухудшением; в остальных случаях уровни усредняются. Оповещения, которые IODA держит открытыми больше недели, когда наши зонды ничего не видят, считаются изменением сети, а не сбоем.
Сообщения об отключениях и блокировках
Некоторые ограничения не делают страну недоступной: блокировка соцсетей или отключение в одном регионе, когда остальная страна остаётся в сети. Для таких случаев мы используем трекер отключений Pulse от Internet Society, который фиксирует отключения и блокировки по решению властей по всему миру. Страны с действующим ограничением заштрихованы на карте. Данные об отключениях предоставлены Internet Society.
Подводные кабели
На страницах стран показано, как страна связана с миром по морю — число подводных кабелей, береговых станций и индекс устойчивости, — а также недавние инциденты с кабелями по данным GeoCables (CC BY 4.0). Это объясняет, почему некоторые места уязвимы, но никогда не меняет статус страны.
Дополнительный слой кабелей на карте (Настройки → Слои карты, бета) отображает маршруты кабелей по данным OpenStreetMap (© участники OpenStreetMap, ODbL). В OpenStreetMap нанесена лишь часть кабелей мира, поэтому слой неполный.
Землетрясения и другой контекст
На карте показаны землетрясения магнитудой 5 и выше за последние 7 дней (USGS), каждое привязано к ближайшей стране, чтобы вы могли увидеть, выдержал ли её интернет. Их можно скрыть в настройках или в легенде. В качестве дополнительной бета-функции в настройках можно также включить сбои и аномалии трафика по данным Cloudflare Radar (CC BY-NC 4.0). Ничто из этого не меняет статус страны.
Палитры карты «Реалистичная» и «Простая» и «Реалистичный» океан построены по NASA Blue Marble (общественное достояние); пустыни палитры «Простая» также следуют климатической карте Кёппена — Гейгера из Beck et al. (2018) (CC BY 4.0).
Оповещения, ленты и встраивание
Подпишитесь на страну (кнопка «Оповещения» в её панели), чтобы получать уведомление в браузере, когда её интернет отключается или восстанавливается; на iPhone и iPad это работает после добавления Blackout Map на экран «Домой». У каждой страны есть RSS-лента, общемировая лента доступна по адресу /feed.xml, а на странице каждой страны есть карточка статуса в реальном времени, которую можно встроить на свой сайт.
Наши собственные данные о статусе (/data/status.json) можно использовать повторно по лицензии CC BY-NC 4.0: укажите Blackout Map со ссылкой и не используйте их в коммерческих целях. Для коммерческого использования сначала свяжитесь с нами: Контакты.
Ограничения
Мы видим доступность, а не содержимое. Цензура отдельных приложений или сайтов, замедление, при котором соединения продолжают работать, и сбои внутри сетей, не влияющие на доступность извне, здесь не видны. Для небольших стран с малым числом публичных хостов используются только данные IODA.
Как часто обновляется карта?
Каждые 5 минут. Статус меняется только после того, как продержится 10 минут (15 минут для восстановления), поэтому кратковременные сбои не заставляют карту мигать.
Видит ли Blackout Map заблокированные сайты или приложения?
Нет. Сервис измеряет, доступны ли сети внутри страны извне. Блокировки отдельных приложений или сайтов, а также медленные, но работающие соединения здесь не отображаются.
Откуда берутся данные?
От наших собственных зондов (якоря и зонды RIPE Atlas, публичные DNS-резолверы и сетевые шлюзы, перепроверяемые еженедельно), от IODA (Georgia Tech), сообщения об отключениях от Internet Society (Pulse) и — только в качестве справки — данные о подводных кабелях от GeoCables и OpenStreetMap, землетрясения от USGS и, по желанию, Cloudflare Radar.
Можно ли получить оповещение, когда страна теряет связь?
Да. Откройте страну на карте и нажмите «Оповещения», чтобы получать уведомление в браузере, когда её интернет отключается или восстанавливается, или подпишитесь на все отключения в мире в настройках. У каждой страны также есть RSS-лента.