Замедление Twitter в России

Сегодня роскомнадзор начал кошмарить твиттер. У меня точно шейпятся abs.twimg.com и pbs.twimg.com. На первом лежат твиттерские js-бандлы, на втором - медиа.

Анонс от РКН по теме: Роскомнадзор - Роскомнадзор принял меры по защите российских граждан от влияния противоправного контента


10.03.2021 примерно с 10:00 Роскомнадзор начал замедлять работу Twitter, в частности доменов abs.twimg.com, pbs.twimg.com, video.twimg.com, t.co, которые используются для загрузки картинок, видео и служебных скриптов сервиса.
Ограничение скорости был реализовано некорректно: поиск домена проводился по подстроке, что приводило к замедлению любых доменов, в которых содержится t.co (microsoft.com, reddit.com). Ошибка была исправлена примерно в 11:30 11.03.2021 по московскому времени.

Наиболее подробно и точно о ситуации написал РБК: Эксперты поспорили о проблемах с доступом к RT из-за мер по Twitter :: Технологии и медиа :: РБК
А также, спустя месяц, Медуза: Роскомнадзор успешно замедляет твиттер. Американские исследователи объяснили, как у него это получилось Они даже нашли небольшую лазейку для пользователей — жаль, что она им вряд ли поможет — Meduza

Обойти ограничение скорости возможно без использования VPN и прокси, программами GoodbyeDPI и zapret.


For English-speaking users, net4people has a good summary of the events.

Throttling of Twitter in Russia Report by Censored Planet

Очень интересно как именно они это осуществляют, пинги у меня до pbs.twimg.com в норме, и какое-то время не смотря на медленную загрузку картинок через браузер, curl качал картинки моментально. Сейчас же и с curl всё плохо.

▲ ~ curl -Lo /dev/null -skw "\ntime_connect: %{time_connect}s\ntime_namelookup: %{time_namelookup}s\ntime_pretransfer: %{time_pretransfer}\ntime_starttransfer: %{time_starttransfer}s\ntime_redirect: %{time_redirect}s\ntime_total: %{time_total}s\n\n" https://abs.twimg.com/responsive-web/client-web/main.ba59e0f5.js

time_connect: 0.109328s
time_namelookup: 0.014423s
time_pretransfer: 0.316707
time_starttransfer: 0.413606s
time_redirect: 0.000000s
time_total: 82.467500s

Смогу протестировать доступность и скорость через час.

Подтверждаю: скорость замедлена примерно до 128 кбит/с. Провайдер OBIT, Санкт-Петербург. Трафик идёт транзитом через retn.

Видео с video.twimg.com грузятся примерно с burst 512 kbps, speed 64 kbps.

Game Service, Красноярск, магистральный - TTK, так же около 128 кбит/с. Надо бы посмотреть, не порезали ли еще чего акамаевского между делом.

Ростелеком, Екатеринбург. 12.8 KB/s (kilobytes per second).

Как пояснил РБК источник в одном из крупных интернет-провайдеров, Роскомнадзор может самостоятельно ограничить скорость доступа к Twitter через оборудование, установленное на сетях операторов в рамках так называемого закона «о суверенном Рунете».

Провайдер «ЭР-Телеком Холдинг» сообщил, что ограничение скорости работы Twitter в России технически реализуемо. В компании подтвердили, что это может быть осуществлено независимо от операторов связи. «К сожалению, это влияет на качество предоставляемых пользователям услуг. В случае с Twitter могут незагружаться изображения или видеоконтент», — пояснили в «ЭР-Телеком Холдинг».

Может, какие-нибудь хитрости, что “шейпим все, если обращался на abs, шейпим 50%, если нет”?
Ну и с учетом того, что это РКН, можно ожидать, что 50% - это “есть два стула, мы пошейпили один”.

Алсо, МГТС, Москва, твиттер работает как работал и через приложение на мобилках, и через сайт на десктопе.

Ртк, Смоленск, магистральный — 128 кбит/с.

Итак, ограничение скорости осуществляется по именам доменов, через DPI. Причем не только доменов twitter непосредственно, но и CNAME-имен Akamai.
В частности, замедление видеоконтента наблюдается на video.twimg.com, eip-ntt.video.twimg.com.akahost.net, video.twimg.com.eip.akadns.net, но не на более технических доменах, таких как cs531.wpc.edgecastcdn.net.

При обращении к IP-адресу напрямую, без SNI, скорость высокая.

Пассивный обход DPI помогает обходить замедление (использую nfqws).

Также шейпят релизы Github (домен github-releases.githubusercontent.com). По домену. Это не техническая ошибка.
https://habr.com/ru/news/t/546280/#comment_22785976

Подтверждаю: низкая скорость вызвана этим новым ограничением Роскомнадзора. Это не ошибка, это намеренное ограничение конкретно домена github (github-releases.githubusercontent.com).
Как удостовериться:

1.Добавьте в hosts

   185.199.108.154 govno.com
   185.199.108.154 github-releases.githubusercontent.com

(это один из оригинальных IP-адресов github-releases.githubusercontent.com)

  1. Через curl выплоните:
    curl -o /dev/null -v -L https://github.com/docker/compose/releases/download/1.28.5/docker-compose-Linux-x86_64 — низкая скорость

В консоли увидите перенаправление на домен github-releases.githubusercontent.com по длинной ссылке. У меня она следующая:
https://github-releases.githubusercontent.com/15045751/63484f00-781d-11eb-826a-890a00f7d1e5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210310%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210310T091425Z&X-Amz-Expires=300&X-Amz-Signature=18d355b70d3eb3ce2daf66bd357dd5074afa215dd48686f17142ff30cf4efbd0&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=15045751&response-content-disposition=attachment%3B%20filename%3Ddocker-compose-Linux-x86_64&response-content-type=application%2Foctet-stream

Попробуйте её скачать — качается медленно.
Теперь замените в ссылке github-releases.githubusercontent.com на govno.com — качается быстро.

curl -o /dev/null -H “Host: github-releases.githubusercontent.com” -k -vL ‘https://govno.com/15045751/63484f00-781d-11eb-826a-890a00f7d1e5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210310%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210310T091425Z&X-Amz-Expires=300&X-Amz-Signature=18d355b70d3eb3ce2daf66bd357dd5074afa215dd48686f17142ff30cf4efbd0&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=15045751&response-content-disposition=attachment%3B%20filename%3Ddocker-compose-Linux-x86_64&response-content-type=application%2Foctet-stream

Ограничение по конкретному домену. Это не ошибка.

Похоже, отключили шейпер вообще. И гитхаб быстро грузит, и видео с твиттера на полной скорости грузится.

Пока еще ограничение было, успел засечь такую картинку.

тестировал на
https://video.twimg.com/ext_tw_video/1241417690197131264/pu/vid/12000/15000/640x360/X4VMbImfbf7u-drH.ts
https://github.com/docker/compose/releases/download/1.28.5/docker-compose-Linux-x86_64

sknt - суверенного DPI нет - все быстро
RT - туда еще не успели поставить суверенный - все быстро
tiera - суверенный DPI - твиттер быстро, гитхаб от 2 до 10 кб/с

nfqws проверить не успел. вскоре шейпер выключили

У меня abs.twimg.com все еще режут:

time_connect: 0.230977s
time_namelookup: 0.130364s
time_pretransfer: 0.441102
time_starttransfer: 0.543505s
time_redirect: 0.000000s
time_total: 80.341080s

pbs - аналогично

▲ ~ curl -Lo /dev/null -skw "\ntime_connect: %{time_connect}s\ntime_namelookup: %{time_namelookup}s\ntime_pretransfer: %{time_pretransfer}\ntime_starttransfer: %{time_starttransfer}s\ntime_redirect: %{time_redirect}s\ntime_total: %{time_total}s\n\n" https://pbs.twimg.com/media/EwHAmncXIAMgPJy\?format\=jpg\&name\=small

time_connect: 0.097993s
time_namelookup: 0.024220s
time_pretransfer: 0.253719
time_starttransfer: 0.329501s
time_redirect: 0.000000s
time_total: 3.947705s

Еще снова режутся релизы гитхаба, 117 кбит/с

pbs

time_connect: 0.042448s
time_namelookup: 0.022455s
time_pretransfer: 0.101030
time_starttransfer: 0.122412s
time_redirect: 0.000000s
time_total: 7.648320s

видео качаются на скорости 8kb/s

Ага, включили заново. Github опять замедляется.

Записываю наглядное видео.

У меня помимо github-releases.githubusercontent.com судя по всему режется ВЕСЬ *.githubusercontent.com, включая картинки, аватарки и файлы из гистов.

▲ ~ curl -Lo /dev/null -skw "\ntime_connect: %{time_connect}s\ntime_namelookup: %{time_namelookup}s\ntime_pretransfer: %{time_pretransfer}\ntime_starttransfer: %{time_starttransfer}s\ntime_redirect: %{time_redirect}s\ntime_total: %{time_total}s\n\n" https://gist.githubusercontent.com/brettlangdon/85942af486eb79118467/raw/2a7409cd3c26a90b2e82bdc40dc7db18b92b3517/01151_inthedeep_2560x1600.jpg

time_connect: 0.109184s
time_namelookup: 0.017873s
time_pretransfer: 0.295267
time_starttransfer: 0.492951s
time_redirect: 0.000000s
time_total: 58.627166s
time_connect: 0.082141s
time_namelookup: 0.041076s
time_pretransfer: 0.175151
time_starttransfer: 0.448990s
time_redirect: 0.000000s
time_total: 63.107377s