Роскомнадзор впервые ограничил скорость доступа к сайту. Но, помимо Twitter, замедлились и другие ресурсы, например, GitHub, Reddit, Steam, Microsoft. Аналитики рассказали, почему так произошло.
Как работает ограничение скорости
Роскомнадзор обязал Twitter удалять противоправный контент, но в социальной сети осталось около 3 тыс. таких материалов. В итоге ведомство, чтобы защитить граждан, с 10 марта ограничило скорость загрузки видео и изображений в Twitter до 128 Кбит/с.
Эксперты Habr и форума NTC установили, что ограничения привязаны к имени домена. При этом доступ напрямую к IP-адресу Twitter не замедлился.
Чтобы добиться такого эффекта, Роскомнадзор применил ТСПУ (технические средства противодействия угрозам). В их основе лежит EcoDPI – технология, которая анализирует содержимое пакетов данных и фильтрует их.
Если ТСПУ находят в трафике адрес домена Twitter, они принудительно снижают скорость доступа. Система либо пропускает только фиксированное количество пакетов в секунду, либо ставит метку на соединении, чтобы провайдеры считали её и замедлили трафик с помощью своего оборудования. Аналогичным образом средства противодействия могут полностью блокировать пакеты данных.
Почему пострадал не только Twitter
Сразу после старта мер против Twitter начались проблемы с доступом и к другим ресурсам. Например, медленнее стал работать даже крупнейший хостинг репозиториев кода GitHub. В частности, сайт с релизами самого сервиса github-releases.githubusercontent.com попал под ограничения, хотя его инфраструктура не пересекается с Twitter.
Эксперты сначала предположили, что скорость ограничивают по IP-адресам каких-то крупных CDN (Content Delivery Network – сетей доставки контента). Если Twitter и GitHub пользовались бы одним и тем же CDN, то такое действительно могло случиться. Но тесты доказали обратное: прицельно замедляли непосредственно инфраструктуру и домены GitHub.
Позднее специалисты выяснили, что фильтрация работает по SNI (Server Name Indication). Это расширение компьютерного протокола TLS, в рамках которого во время процесса «рукопожатия» (handshake) клиент сообщает имя хоста, с которым он хочет соединиться.
С утра 10 марта стали тормозить все домены, которые включают подстроку t.co (короткий адреса Twitter). У GitHub это githubusercontent.com. Пострадали также Microsoft (microsoft.com), Reddit (reddit.com) и тысячи других сайтов. В список попали Russia Today (rt.com), «Чемпионат» (championat.com) и Steam (steamcontent.com). Даже загрузки иконок приложений в Microsoft Store приходилось ждать несколько секунд.
Позднее фильтры перестали работать, и скорость загрузки с этих ресурсов восстановилась. Но вскоре ограничения вернулись – и не только для Twitter.
В Роскомнадзоре заявили, что действия ведомства не связаны с проблемами на GitHub и других ресурсах. Но об алгоритмах или принципах фильтрации трафика в ведомстве не рассказали.