Сеть доставки контента (CDN) — это географически распределенная сеть серверов, которые работают вместе, чтобы доставлять интернет-контент быстрее и надежнее. Вместо того чтобы все пользователи получали доступ к контенту с одного исходного сервера, CDN кэшируют копии статических ресурсов, таких как изображения, видео, таблицы стилей и файлы JavaScript, на серверах, расположенных ближе к пользователям по всему миру.

Представьте это как розничную сеть. Вместо того чтобы все ехали в один огромный центральный склад за товарами, в каждом городе есть местные магазины с популярными товарами. Вы получаете то, что вам нужно, быстрее, а центральный склад обрабатывает меньше трафика.

Во всем мире около 46 миллионов веб-сайтов используют CDN(новое окно), включая примерно 81 % из 1 миллиона крупнейших веб-сайтов(новое окно). Крупные поставщики CDN включают Akamai Technologies и почти повсеместный Cloudflare (только Cloudflare используют более 24 миллионов веб-сайтов(новое окно)).

Почему существуют CDN?

Традиционно веб-сайты размещались на одном сервере в одном физическом месте. Это хорошо работает, если все ваши посетители живут рядом с этим сервером. Но как только пользователи оказываются распределены по странам (или континентам), появляются проблемы:

  • Задержка (медленная загрузка из-за физического расстояния)
  • Узкие места пропускной способности
  • Перегрузка сервера во время всплесков трафика
  • Повышенная уязвимость к DDoS-атакам(новое окно)

CDN решают эту проблему, распределяя контент по множеству серверов по всему миру. Это означает, что если вы находитесь в Нью-Йорке, вы получите контент с сервера в США, а посетители из Лондона на том же веб-сайте будут получать контент с европейского сервера.

Каковы преимущества CDN?

CDN улучшают:

  • Скорость: контент проходит меньшее физическое расстояние
  • Масштабируемость: всплески трафика (например, во время распродаж или вирусных событий) не обрушивают сайт
  • Время безотказной работы: если один сервер выходит из строя, его заменяет другой
  • Безопасность: большинство CDN помогают защищаться от DDoS-атак

Как работают CDN?

CDN состоит из:

  1. Исходного сервера. Это «главный» сервер, на котором фактически размещен веб-сайт.
  2. Пограничных серверов, которые хранят («кешируют») статический контент, такой как изображения, файлы CSS, JavaScript и видео, с исходного сервера. Крупные CDN (например, Cloudflare) могут запускать сотни таких распределенных пограничных серверов по всему миру.
Диаграмма, показывающая, как работает CDN

Когда вы посещаете веб-сайт, использующий CDN, процесс выглядит так:

  1. Запрос пользователя: когда вы посещаете веб-сайт, ваш браузер отправляет запрос на контент.
  2. Разрешение DNS: DNS-система CDN определяет, какой сервер лучше всего расположен для обслуживания вашего запроса. Обычно это будет сервер, находящийся ближе всего к вам.
  3. Проверка кеша: пограничный сервер проверяет, есть ли у него запрошенный контент в кеше.
  4. Доставка: если контент закеширован, он доставляется немедленно. Если нет, пограничный сервер загружает его с исходного сервера, кеширует копию для будущих запросов и доставляет ее вам.
  5. Динамический контент: для динамического контента (например, персонализированных страниц) CDN могут направлять запросы на исходный сервер, при этом всё равно оптимизируя путь подключения.

Что важно, все веб-сайты, использующие одну и ту же CDN, будут направлять свой контент через общие пограничные серверы CDN. Это означает, что сотни в остальном не связанных между собой веб-сайтов, обслуживающих схожий географический регион, могут использовать один и тот же IP-адрес пограничного сервера CDN для этого региона.

CDN и опасности избыточной блокировки

Чтобы бороться с незаконным стримингом своих футбольных матчей, ведущая испанская футбольная ассоциация LaLiga получила судебные решения, обязывающие испанских интернет-провайдеров блокировать тысячи IP-адресов, принадлежащих поставщику CDN Cloudflare. Это связано с тем, что она связала эти IP-адреса с незаконными стриминговыми сервисами.

Сервисы, затронутые блокировками Cloudflare в Испании

Проблема в том, что эти IP-адреса принадлежат пограничным серверам Cloudflare, которые также используются тысячами (возможно, миллионами) легитимных веб-сайтов. В результате миллионы людей в Испании не могут надежно получить доступ к некоторым популярным сайтам, включая(новое окно) GitHub, ChatGPT, правительственные веб-сайты и банковские сервисы.

Заключительные мысли о CDN

Сети доставки контента теперь являются важнейшей инфраструктурой для современной Сети, незаметно обеспечивая тот быстрый и надежный онлайн-опыт, к которому вы привыкли. Распределяя контент по географически рассредоточенным пограничным серверам, CDN снижают задержку, поглощают всплески трафика, улучшают время безотказной работы и добавляют критически важные уровни безопасности.

Большая часть их полезности заключается в их незаметности. Хотя ими пользуются более трех четвертей всех веб-сайтов в интернете, большинство из нас даже не задумывается о них. Но они есть, работая за кулисами примерно для трех четвертей современных веб-сайтов и обеспечивая быструю и надежную доставку контента независимо от географии.

Недавние ситуации, когда правительства, суды и корпоративные интересы блокировали интернет-сервисы, неизбежно наносили значительный сопутствующий ущерб более широкому интернету.