CDN

Материал из wikixw
Перейти к навигации Перейти к поиску

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

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

CDN - это слой в экосистеме Интернета. Владельцы контента, такие как медиа-компании и поставщики электронной коммерции, платят операторам CDN за доставку их контента конечным пользователям. В свою очередь, CDN платит интернет-провайдерам (ISP), операторам связи и сетевым операторам за размещение своих серверов в их центрах обработки данных.

CDN - это общий термин, охватывающий различные типы служб доставки контента: потоковое видео, загрузку программного обеспечения, ускорение веб-и мобильного контента, лицензированный / управляемый CDN, прозрачное кэширование и сервисы для измерения производительности CDN, балансировки нагрузки, переключения между несколькими CDN, аналитики и облачного анализа. Поставщики CDN могут перейти в другие отрасли, такие как безопасность, защита от DDoS-атак и брандмауэры веб-приложений (WAF), а также оптимизация глобальной сети.

(Слева) Раздача на одном сервере(Справа) Схема распространения CDN

Технология[править]

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

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

Большинство провайдеров CDN предоставляют свои услуги по различным, определенным наборам СОЗ, в зависимости от желаемого покрытия, например, в Соединенных Штатах, международном или глобальном масштабе, Азиатско-Тихоокеанском регионе и т.д. Эти наборы всплывающих окон можно назвать "ребрами", "пограничными узлами", "пограничными серверами" или "пограничными сетями", поскольку они будут ближайшим краем ресурсов CDN к конечному пользователю.

Безопасность и конфиденциальность[править]

Поставщики CDN получают прибыль либо от прямых сборов, выплачиваемых поставщиками контента, использующими их сеть, либо от данных пользовательской аналитики и отслеживания, собираемых по мере загрузки их скриптов на веб-сайты клиентов в их браузере origin. Как таковые, эти сервисы рассматриваются как потенциальные нарушения конфиденциальности с целью поведенческого таргетинга[6], и создаются решения для восстановления обслуживания из одного источника и кэширования ресурсов.

В частности, веб-сайт, использующий CDN, может нарушать Общие правила ЕС по защите данных (GDPR). Например, в 2021 году немецкий суд запретил использование CDN на веб-сайте университета, поскольку это приводило к передаче IP-адреса пользователя на CDN, что нарушало GDPR.

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

Методы создания сетей контента[править]

Интернет был спроектирован в соответствии с сквозным принципом. Этот принцип обеспечивает относительную простоту базовой сети и максимально приближает интеллектуальные данные к конечным точкам сети: хостам и клиентам. В результате базовая сеть специализирована, упрощена и оптимизирована только для пересылки пакетов данных.

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

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

Балансировка нагрузки на сервер использует один или несколько методов, включая сервисную (глобальная балансировка нагрузки) или аппаратную (т.е. коммутаторы уровня 4-7, также известные как веб-коммутатор, переключатель контента или многоуровневый коммутатор), для распределения трафика между несколькими серверами или веб-кэшами. Здесь коммутатору присваивается единственный виртуальный IP-адрес. Трафик, поступающий на коммутатор, затем направляется на один из реальных веб-серверов, подключенных к коммутатору. Преимущество этого заключается в балансировке нагрузки, увеличении общей емкости, улучшении масштабируемости и обеспечении повышенной надежности за счет перераспределения нагрузки вышедшего из строя веб-сервера и обеспечения проверок работоспособности сервера.

Кластер контента или сервисный узел может быть сформирован с использованием коммутатора уровня 4-7 для распределения нагрузки между несколькими серверами или несколькими веб-кэшами в сети.

Маршрутизация запросов направляет запросы клиентов к источнику контента, способному наилучшим образом обслуживать запрос. Это может включать направление запроса клиента на ближайший к клиенту сервисный узел или на тот, который обладает наибольшей пропускной способностью. Для маршрутизации запроса используются различные алгоритмы. К ним относятся глобальная балансировка нагрузки на сервер, маршрутизация запросов на основе DNS, динамическая генерация метафайлов, перезапись HTML и любая рассылка. Близость — выбор ближайшего узла обслуживания — оценивается с использованием различных методов, включая реактивное зондирование, упреждающее зондирование и мониторинг соединения.

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

Протоколы обслуживания контента[править]

Несколько пакетов протоколов предназначены для обеспечения доступа к широкому спектру контент-сервисов, распределенных по сети контента. Протокол адаптации интернет-контента (ICAP) был разработан в конце 1990-х для обеспечения открытого стандарта подключения серверов приложений. Более недавно разработанное и надежное решение обеспечивается протоколом Open Pluggable Edge Services (OPES). Эта архитектура определяет приложения-службы OPES, которые могут находиться на самом процессоре OPES или выполняться удаленно на сервере выноски. Edge Side Includes или ESI - это небольшой язык разметки для сборки динамического веб-контента пограничного уровня. Довольно часто веб-сайты имеют сгенерированный контент. Это может быть из-за изменения контента, такого как каталоги или форумы, или из-за персонализации. Это создает проблему для систем кэширования. Чтобы преодолеть эту проблему, группа компаний создала ESI.

Одноранговые CDN[править]

Дополнительная информация: Одноранговая сеть

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

Частные CDN[править]

Если владельцев контента не устраивают возможности или стоимость коммерческой услуги CDN, они могут создать свой собственный CDN. Это называется частным CDN. Частный CDN состоит из POP (точек присутствия), которые обслуживают контент только для своего владельца. Эти всплывающие окна могут быть серверами кэширования, обратными прокси или контроллерами доставки приложений. Она может быть такой же простой, как два сервера кэширования, или достаточно большой, чтобы обслуживать петабайты контента.

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

Тенденции CDN[править]

Появление телекоммуникационных сетей CDN[править]

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

Чтобы решить эту проблему, поставщики телекоммуникационных услуг (TSP) начали запускать свои собственные сети доставки контента как средство снижения требований к магистральной сети и сокращения инвестиций в инфраструктуру.

Преимущества телефонной сети CDN[править]

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

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

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

Объединенные CDN и открытое кэширование[править]

В июне 2011 года, StreamingMedia.com сообщается, что группа TSP основала Operator Carrier Exchange (OCX) для объединения своих сетей и более прямой конкуренции с крупными традиционными CDN, такими как Akamai и Limelight Networks, которые имеют обширные POP по всему миру. Таким образом, телекоммуникационные компании создают федеративное предложение CDN, которое более интересно для контент-провайдера, желающего донести свой контент до совокупной аудитории этой федерации.

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

Спецификация Open Caching от Streaming Media Alliance определяет набор API, который позволяет поставщику контента доставлять свой контент с использованием нескольких CDN согласованным образом, одинаково используя эти API для каждого поставщика CDN.

Повышение производительности CDN с использованием механизмов расширения DNS[править]

Задержка (RTT), с которой сталкиваются клиенты с нелокальными преобразователями ("высокая"), резко сократилась, когда CDN внедрила расширение EDNS0 в апреле 2014 года, в то время как на задержку клиентов с локальными преобразователями изменение не повлияло ("низкая").

Традиционно CDN использовали IP-адрес рекурсивного DNS-преобразователя клиента для определения местоположения клиента. Хотя во многих ситуациях это разумный подход, это приводит к снижению производительности клиента, если клиент использует нелокальный рекурсивный DNS-распознаватель, который находится далеко. Например, CDN может направлять запросы от клиента в Индии на свой пограничный сервер в Сингапуре, если этот клиент использует общедоступный DNS-распознаватель в Сингапуре, что приводит к снижению производительности этого клиента. Действительно, недавнее исследование показало, что во многих странах, где широко используются общедоступные DNS-преобразователи, среднее расстояние между клиентами и их рекурсивными DNS-преобразователями может достигать тысячи миль. В августе 2011 года глобальный консорциум ведущих интернет-провайдеров во главе с Google объявил об официальном внедрении интернет-проекта edns-client-subnet IETF, который предназначен для точной локализации ответов на разрешение DNS. В инициативе участвует ограниченное число ведущих поставщиков услуг DNS, таких как Google Public DNS, а также поставщики услуг CDN. С помощью edns-клиентской подсети Опция EDNS0, CDNS теперь может использовать IP-адрес подсети запрашивающего клиента при разрешении DNS-запросов. Этот подход, называемый отображением конечного пользователя, был принят CDNS, и было показано, что он значительно сокращает задержки в обратном направлении и повышает производительность для клиентов, которые используют общедоступный DNS или другие нелокальные преобразователи. Однако использование EDNS0 также имеет недостатки, поскольку это снижает эффективность кэширования разрешений в рекурсивных преобразователях, увеличивает общий трафик разрешения DNS, и вызывает озабоченность по поводу конфиденциальности, связанной с раскрытием подсети клиента.

Виртуальная CDN (vCDN)[править]

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

Оптимизация и доставка изображений (Image CDNS)[править]

В 2017 году Эдди Османи из Google начал называть программные решения, которые могли бы естественным образом интегрироваться с парадигмой адаптивного веб-дизайна (с особой ссылкой на элемент <picture>), как Image CDNs. Выражение относится к способности веб-архитектуры обслуживать несколько версий одного и того же изображения через HTTP, в зависимости от свойств браузера, запрашивающего его, как определено либо браузером, либо логикой на стороне сервера. По замыслу Google, целью CDN изображений было предоставление высококачественных изображений (или, что лучше, изображений, воспринимаемых человеческим глазом как высококачественные) при сохранении скорости загрузки, способствуя таким образом отличному пользовательскому интерфейсу (UX).

Возможно, термин Image CDN изначально был неправильным, поскольку ни Cloudinary, ни Imgix (примеры, приведенные Google в руководстве Эдди Османи от 2017 года) в то время не были CDN в классическом смысле этого термина. Однако вскоре после этого несколько компаний предложили решения, которые позволяли разработчикам использовать разные версии своих графических ресурсов в соответствии с несколькими стратегиями. Многие из этих решений были построены поверх традиционных CDN, таких как Akamai, CloudFront, Fastly, Edgecast и Cloudflare. В то же время другие решения, которые уже предоставляли услугу множественного обслуживания изображений, присоединились к определению Image CDN, либо предлагая функциональность CDN изначально (ImageEngine), либо интегрируясь с одной из существующих CDN (Cloudinary / Akamai, Imgix / Fastly).

Хотя предоставление общепринятого определения того, что такое CDN-образ, может оказаться невозможным, вообще говоря, CDN-образ поддерживает следующие три компонента:

  • Сеть доставки контента (CDN) для быстрой подачи изображений.
  • Обработка и оптимизация изображений либо "на лету" с помощью директив URL, в пакетном режиме (посредством ручной загрузки изображений), либо полностью автоматически (или их комбинации).
  • Обнаружение устройства (также известное как Device Intelligence), то есть способность определять свойства запрашивающего браузера и / или устройства посредством анализа строки User-Agent, заголовков приема HTTP, клиентских подсказок или JavaScript.
Следующая таблица суммирует текущую ситуацию с основными программными CDN в этом пространстве:
CDN с основными изображениями на рынке
Имя CDN Оптимизация изображений Обнаружение устройств
Akamai ImageManager Y Пакетный режим на основе заголовка HTTP Accept
Cloudflare Польский Y полностью автоматическая на основе заголовка HTTP Accept
Облачный сервис Через Akamai Пакетные директивы URL Принять заголовок, клиентские подсказки
Fastly IO Y Директивы URL на основе заголовка HTTP Accept
ImageEngine Y полностью автоматическая WURFL, Клиентские подсказки, заголовок Accept
Imgix Через Fastly полностью автоматическая Принять заголовок / клиентские подсказки
Доменное имя страницы Y Директивы URL на основе заголовка HTTP Accept
  • Защита от датчиков
Изолированное смягчение воздействия датчиков
  • Заголовок истиного IP-адреса клиента \сервера
Взаимный TLS
  • Защита от спама в коментариях , интеллектуальная модерация (смена первых слов превью на безсмысленные)

Известные поставщики услуг доставки контента[править]

Бесплатные CDN[править]

cdnjs * BootstrapCDN * Cloudflare * jsDelivr *

Традиционные коммерческие CDN[править]

Akamai Technologies * Amazon CloudFront * Арьяка * Ateme CDN * Azure CDN * CacheFly * CDN77 * CDNetworks * CenterServ * ChinaCache * Cloudflare * Котендо 8

  • Edgio, образована в результате слияния сетей EdgeCast, Layer0 и Limelight Networks

Быстро * Gcore * Google Cloud CDN * Облачные сервисы HP * Incapsula * Instart * Internap * LeaseWeb

MetaCDN * NACEVI * OnApp * GoDaddy * OVHcloud * ProCDN * Облачные файлы Rackspace * Speedera Networks * StackPath * StreamZilla * Наука и технологии Вангу * Yottaa

Телекоммуникационные CDN[править]

AT & T Inc. * Bharti Airtel * Bell Canada * BT Group * China Telecom * Chunghwa Telecom * Deutsche Telekom * KT * KPN

Мегафон * NTT * Pacnet * PCCW * Qualitynet * Singtel * SK Broadband * Spark Новая Зеландия Tata Communications * Телеком Аргентина * Telefonica * Telenor * TeliaSonera * Telin * Telstra * Telus * ТИМ * Türk Telekom * Verizon *

Коммерческие CDN, использующие P2P для доставки[править]

BitTorrent, Inc. * Internap * Pando Networks * Rawflow * Мульти-CDN * MetaCDN * Warpcache * Собственная CDN * Netflix

Смотрите также[править]

Портал:Интернет Прикладное программное обеспечение * Bel Air Circuit * Сравнение систем потокового мультимедиа

Взаимосвязь сетей доставки контента * Платформа доставки контента * Центр обработки данных

Динамическое ускорение сайта * Пограничные вычисления * Интернет-радио * Интернет-телевидение

IPTV * Список сервисов потоковой передачи музыки * Список систем потокового мультимедиа

NetMind * Открытая музыкальная модель * Избыточный контент

Договор об охране передач и организаций эфирного вещания * Технология Push * Программное обеспечение как услуга

Веб-трансляция Веб-синдикация* Веб-телевидение

Читать[править]

.cs.ucr.edu/~ravi/Papers/NWConf/clickfraud.pdf