Content Delivery Network

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Сеть доставки (и дистрибуции) содержимого (англ. Content Delivery Network или Content Distribution Network, CDN) — географически распределённая сетевая инфраструктура, позволяющая оптимизировать доставку и дистрибуцию содержимого конечным пользователям в сети Интернет. Использование контент-провайдерами CDN способствует увеличению скорости загрузки интернет-пользователями аудио-, видео-, программного, игрового и других видов цифрового содержимого в точках присутствия сети CDN[1].

CDN работает на наблюдении, что самые тяжёлые файлы интернета, такие как программы, графика и видео, а также немалая часть оформления сайтов, в том числе CSS, JavaScript и веб-шрифты:

  • Общедоступные — не нужно обращаться к центральной базе данных и проверять, имеет ли пользователь право загрузить файл.
  • Статичные — в подавляющем большинстве случаев не нужно отдавать пользователю особую версию инсталлятора или картинки. На данной странице около 200 килобайт динамичного содержимого и около 65 статичного (2024) — но это связано лишь с тем, что CSS и JavaScript (более 150 килобайт) в движке MediaWiki загружаются динамически. При статической загрузке их тоже можно отдать CDN.

Преимущества CDN

[править | править код]
Одноточечная дистрибуция (слева) и дистрибуция средствами CDN (справа)
Ускоренный доступ к содержимому, меньше задержки на «узких местах» интернета

На скорость загрузки веб-страницы и её содержимого сильно влияет то, насколько далеко пользователь находится от сервера. Это происходит из-за того, что при использовании технологии TCP/IP, применяемой для распространения информации в сети Интернет, задержки при передаче информации зависят от количества маршрутизаторов, находящихся на пути между источником и потребителем содержимого. Размещение содержимого на нескольких рассредоточенных серверах средствами CDN сокращает сетевой маршрут передачи данных и делает загрузку сайта быстрее с точки зрения пользователя.

Снижение количества хопов, что существенно увеличивает скорость скачивания содержимого из сети Интернет. Конечные пользователи испытывают меньшую задержку при загрузке содержимого, отсутствие резких изменений скорости загрузки и высокое качество потока данных. Возникающая стабильность позволяет операторам CDN доставлять видеосодержимое в формате HD, обеспечивать быструю загрузку файлов больших размеров или организовывать видеовещание с высоким качеством услуги (QoS) и низкими затратами на сеть.

Технология CDN способна предотвратить задержки при передаче данных, возможные прерывания связи и потери на перегруженных каналах и стыках между ними. Управление нагрузкой при передаче сетевого трафика позволяет разгрузить магистраль и узлы сети, распределив возникающую нагрузку между удалёнными серверами.

Размещение серверов в непосредственной близости от конечных пользователей может увеличить исходящую пропускную способность всей системы. К примеру, наличие единственного порта 100 Мбит/с не означает данную скорость на всех участках сети, так как свободная пропускная способность магистрального канала в момент передачи может быть всего 10 Мбит/с. В случае, когда используются 10 распределённых серверов, суммарная пропускная способность может составить 10×100 Мбит/с.

При пропадании связности сети ресурс продолжает частично выполнять свою работу

Современные сети доставки и дистрибуции содержимого способны осуществлять автоматический контроль целостности данных на каждом из серверов сети. При этом гарантируется 100 % доступность содержимого для конечного пользователя в случае потери связности между узлами сети, выхода из строя центрального или удалённого сервера.

Улучшенная статистика и контроль популярности ресурсов

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

Устойчивость к DDoS

Из-за мощности и распределённой архитектуры сама CDN устойчива к DDoS-атакам. Центральные серверы можно защитить на уровне CDN, если их адреса закрыты или засекречены.

Сохранность контента

При физической потере данных на одном из серверов CDN, они остаются доступными на другом.

Недостатки

[править | править код]
Работает только со статическим содержимым

С динамическим содержимым CDN ничего не может сделать, она просто обращается к исходному серверу. Впрочем, в современных сайтах процент динамического содержимого невелик. Особенно хорошо помогают CDN, если имеем дело с «тяжёлым» статическим содержимым — файлами, видео, фотографиями.

Задержки кэширования

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

Блокировка по IP закрывает множество сайтов, особенно крупных

В РФ часты блокировки сайтов по IP-адресу. Нередко при этом «банят» один из адресов CDN, со всеми хостящимися на ней сайтами. В отличие от хостинг-провайдеров, коих огромное число, крупных CDN несколько десятков, и выключение любого из них закрывает немалое количество сайтов, особенно крупных и всемирных (мелким и региональным нет нужды пользоваться CDN).

Технология

[править | править код]

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

При использовании сети CDN данные центрального сервера интернет-ресурса реплицируются на периферийные платформы. Каждая платформа поддерживает в актуальном состоянии полную или частичную копию распространяемых данных. Узел сети, входящий в состав платформы, взаимодействует с локальными сетями интернет-провайдеров и распространяет содержимое конечным пользователям по кратчайшему сетевому маршруту с оптимального по загруженности сервера. Длина сетевого маршрута зависит от географической или топологической удалённости пользовательского компьютера от сервера или стоимости передачи трафика в регионе присутствия.

Кэширование является распространённым методом реализации CDN-решения, так как предполагает оптимальное использование дискового пространства и связующих каналов сети. При этом максимальные затраты по времени загрузки файла (очереди файлов) берёт на себя первый пользователь, обратившийся на оригинальный сервер контент-провайдера. Все последующие пользователи будут обращаться к уже загруженным репликам (HTTP-объектам) с ближайшего к ним сервера. Таким образом, на удалённых серверах хранится только популярное и часто запрашиваемое содержимое.

Крупные CDN могут состоять из огромного количества распределённых узлов и размещать свои серверы непосредственно в сети каждого локального интернет-провайдера. Многие CDN-операторы делают акцент на пропускной способности связующих каналов и минимальном количестве точек присоединения в регионе присутствия. Вне зависимости от используемой архитектуры главным предназначением подобных сетей является ускорение передачи как статического содержимого, так и непрерывного потока данных.

Примечания

[править | править код]
  1. Yusmadi bin Razali. Что такое CDN и как это работает? selectel.ru (19 августа 2019). Дата обращения: 11 января 2021. Архивировано 14 января 2021 года.