В Польше мобильные интернет-провайдеры обычно предлагают планы с ограниченным объемом полосы пропускания в месяц, за исключением некоторых популярных приложений. Так, например, весь трафик с YouTube не засчитывается в лимит данных.
Помимо вопросов сетевого нейтралитета, мне интересно, как это достигается в эпоху HTTPS? Как интернет-провайдер узнает, какие пакеты нужно учитывать при ограничении данных?
Я знаю, что это можно сделать, просто взглянув на IP-адрес, но у YouTube есть масса IP-адресов, и я подозреваю, что они постоянно меняются. Кроме того, я не удивлюсь, если некоторые IP-адреса YouTube будут использоваться совместно с другими сервисами Google, которые не ограничены интернет-провайдерами ...
HTTPS скрывает содержание трафика, но не конечные точки. Так, например, мой интернет-провайдер не знает, что я отвечаю на этот конкретный вопрос, потому что я использую HTTPS, но они все еще знают, что я получаю доступ к контенту через порт 443 serverfault.com.
В конкретных случаях, таких как партнерство ISP / Neflix, которое вы описываете, Netflix также часто размещает одну из своих конечных точек в центре обработки данных ISP, который затем работает аналогично CDN - когда вы подключаетесь к Netflix, вы получаете Netflix сервер в собственной сети интернет-провайдера, что позволяет им еще проще отслеживать его для целей сделки, поскольку ваш трафик никогда не покидает их собственную сеть. (Разумеется, совместно расположенному серверу по-прежнему необходимо получать видеопотоки с другого сервера Netflix за пределами сети провайдера, но передача всего через совместно расположенный сервер позволяет им кэшировать данные, использовать выделенные соединения, агрегировать потоки и т. Д. чтобы сократить свои расходы и / или вернуть часть этих затрат Netflix в рамках партнерской сделки.)
Во-первых, они знают IP-адрес YouTube.
У интернет-провайдеров есть база данных IP. Например, ASN YouTube - AS15169. На стороне сервера они будут группировать для каждой службы. Одна из них - это группировка по умолчанию, и это биллинговая группа. Когда вы используете группу по умолчанию, это использование записывается в системе.
Например, несколько адресов YouTube перечислены ниже.
root@server ~>whois -h whois.radb.net -- '-i origin AS15169' | grep ^route
route: 192.179.147.0/24
route: 192.179.148.0/23
route: 192.179.148.0/24
route: 192.179.149.0/24
route: 192.179.150.0/23
route: 192.179.150.0/
...
route6: 2607:f8b0:4016::/48
route6: 2604:31C0::/32
route6: 2620:33:c000::/48
route6: 2607:f8b0:4000::/48
route6: 2404:f340::/32
Когда вы пытаетесь подключиться к YouTube или другим службам YouTube (хранилище видео Google), ваш телефон попытается подключиться к этим IP-адресам.
Интернет-провайдер проверяет IP-адрес, и если он находится в группе YouTube, он не взимает плату с этой группы.
Другой вариант - проверка заголовка SNI при начальном HTTP-соединении. Когда вы подключаетесь к HTTPS-сайтам, не все данные шифруются.
Например, когда вы выполняете поиск в Google, вы можете увидеть URL-адрес в своем браузере следующим образом: https://www.google.com/search?q=hello+world
.
Зашифрованные данные /search?q=hello+world
и все содержимое страницы. Теперь вы попадаете на такой сайт, как www.google.com
, но они не знают, какая страница или содержимое этой страницы.
Некоторые интернет-провайдеры используют для этого SNI. Например, в Турции этот метод используется для создания определенных интернет-пакетов, таких как 5 ГБ Интернета + 4 ГБ Spotify или 7 ГБ Интернета с безлимитным WhatsApp. Также они используют SNI для блокировки сайтов. Некоторые веб-сайты используют такие же IP-адреса, как wikimedia.com
или wikipedia.org
. Если они попытаются заблокировать Википедию с помощью IP-адресов, они заблокируют все службы Викимедиа.
Еще проще - ИХ DNS ответит конкретными IP-адресами локальных прокси. Это может даже не нарушить HTTPS - они могут перенаправить оттуда. Но это позволяет вам иметь бесплатный трафик на определенных IP-адресах и удалять их из учета.
В дополнение к знанию IP-адресов, как описано в других ответах, некоторые CDN предлагают свои узлы для размещения у интернет-провайдеров. Например: Пограничные узлы / Google Global Cache. Данные, обслуживаемые этими узлами, никогда не покидают периметр ISP и никогда не попадают в счетчик «исходящего» трафика. Кстати, именно поэтому интернет-провайдер может предлагать этот трафик бесплатно или по значительно более низкой цене.
Это сочетание взгляда на конечные IP-точки, то есть IP-адреса и DNS. Обычно это делается в так называемом PGW, что означает шлюз пакетных данных. PGW является частью каждой мобильной сети.
Небольшое дополнение к отличным ответам. Я знаю, что многие интернет-провайдеры, и, конечно же, все те, с которыми я так или иначе имел дело, справляются с этим через группы классов обслуживания. По сути, трафик от определенных ASN и к ним помечен определенным CoS, который затем считается неизмеренным их статистическими механизмами. Это упрощает фактическое отслеживание статистики в инфраструктуре и упрощает выставление счетов. Он также позволяет дросселировать, но не многие используют это сегодня - хотя это может измениться, когда дело доходит до мобильных тарифов в будущем, и VBR будет обрабатывать колебания воспроизведения, которые это вызовет.