Unberechenbar sind die Wege des Contents, oder lassen Sie uns ein Wort über CDN verlieren

Unberechenbar sind die Wege des Contents, oder lassen Sie uns ein Wort über CDN verlieren

Haftungsausschluss:
Dieser Artikel enthält keine Informationen, die für Leser, die mit dem Konzept des CDN vertraut sind, neu sind, sondern bietet einen Überblick über die Technologie.

Die erste Webseite wurde 1990 erstellt und war nur wenige Bytes groß. Seitdem hat sich der Inhalt sowohl qualitativ als auch quantitativ skaliert. Die Entwicklung des IT-Ökosystems hat dazu geführt, dass moderne Webseiten in Megabyte gemessen werden, und der Trend hin zu einer steigenden Bandbreite der Netzwerke verstärkt sich jedes Jahr. Wie können Content-Anbieter große geografische Reichweiten abdecken und den Nutzern überall schnellen Zugang zu Informationen bieten? Diese Herausforderungen müssen von Content Delivery Networks, kurz CDN, bewältigt werden.

Im Internet gibt es immer mehr „schwere“ Inhalte. Zahlreiche Studien zeigen, dass Nutzer mit Webdiensten nicht zufrieden sind, wenn diese länger als 4-5 Sekunden laden. Eine zu langsame Ladegeschwindigkeit der Webseite führt zwangsläufig zu einem Verlust von Besuchern, was auch den Traffic, die Conversion und somit den Gewinn verringert. Content Delivery Networks (CDN) sollen theoretisch diese Probleme und deren Folgen beheben. In der Praxis lösen jedoch oft die Details und Nuancen des spezifischen Falls diese Herausforderungen, und davon gibt es in diesem Bereich genug.

Woher kam die Idee der verteilten Netzwerke

Beginnen wir mit einem kurzen geschichtlichen Exkurs und einer Definition der Begriffe. CDN ist ein Netzwerk aus einer Gruppe von Servermaschinen, die an verschiedenen Standorten positioniert sind, um den Zugang zu Internetinhalten für eine große Anzahl von Nutzern zu ermöglichen. Die Idee der verteilten Netzwerke besteht darin, mehrere Points of Presence (PoP) bereitzustellen, die sich außerhalb des ursprünglichen Servers befinden. Ein solches System kann die Vielzahl an eingehenden Anfragen schneller bearbeiten und erhöht die Reaktionsgeschwindigkeit sowie die Datenübertragungsrate.

Das Problem der Bereitstellung von Inhalten für Endbenutzer trat erstmals in den Mittelpunkt, als das Internet in den späten 90er Jahren aufblühte. Die damaligen Server, deren Leistung oft nicht einmal mit modernen High-End-Laptops vergleichbar war, konnten kaum die Belastung bewältigen und waren nicht in der Lage, dem ständig wachsenden Verkehr gerecht zu werden. Microsoft gab jährlich Hunderte von Millionen Dollar für Forschung im Bereich der Informationsautobahn aus (unweigerlich erinnert man sich an die berühmten 640 KB von Bill Gates). Um diese Herausforderungen zu bewältigen, musste man hierarchisches Caching verwenden, von Modems auf Glasfaser umsteigen und die Netzwerktopologien ausführlich untersuchen. Die Situation glich einem alten Lokomotiv, das über die Schienen raste und während der Fahrt mit allen verfügbaren Mitteln modernisiert wurde, um die Geschwindigkeit zu erhöhen.

Bereits Ende der 90er Jahre erkannten Betreiber von Webportalen, dass zur Reduzierung der Last und zur Gewährleistung der erforderlichen Anfragen Proxy-Server eingesetzt werden müssen. So entstanden die ersten CDNs, die statische Inhalte von verschiedenen Servern, geografisch über die Welt verteilt, auslieferten. Ungefähr zur selben Zeit begann auch das Geschäft mit verteilten Netzwerken. Der größte (zumindest einer der größten) CDN-Anbieter der Welt, das Unternehmen Akamai, wurde in diesem Bereich zum Pionier und begann 1998 seinen Weg. Einige Jahre später wurde CDN massenhaft, und die Einnahmen aus der Lieferung und Verbreitung von Inhalten beliefen sich auf monatlich mehrere Millionen Dollar.

Heute begegnen wir jedem Mal einem CDN, wenn wir auf eine kommerzielle Seite mit hohem Traffic oder in sozialen Medien wechseln. Anbieter sind unter anderem: Amazon, Cloudflare, Akamai sowie viele andere multinationalen Anbieter. Große Unternehmen streben an, eigene CDNs zu nutzen, was ihnen Vorteile in Geschwindigkeit und Qualität der Inhaltslieferung bringt. Hätte Facebook keine verteilten Netzwerke und würde sich nur mit dem ursprünglichen Server in den USA begnügen, könnte das Laden von Profilen bei Nutzern in Osteuropa deutlich länger dauern.

Einige Worte zu CDN und Streaming

Die Agentur FutureSource Consulting hat eine Analyse der Musikindustrie durchgeführt und festgestellt, dass die Zahl der Abonnements für Musik-Streaming-Dienste im Jahr 2023 fast eine halbe Milliarde Menschen erreichen wird. Dabei werden mehr als 90 % der Einnahmen aus dem Streaming von Audio generiert. Bei Videos sieht die Lage ähnlich aus; Begriffe wie Let’s Play, Online-Konzert und Online-Kino haben sich bereits im Volksmund etabliert. Streaming-Dienste gibt es auch von Apple, Google, YouTube und vielen anderen Unternehmen.

Ursprünglich wurde das CDN hauptsächlich für Websites mit statischen Inhalten verwendet. Statische Inhalte sind Informationen, die sich nicht abhängig von den Aktionen des Benutzers, der Zeit und anderen Faktoren ändern, also nicht personalisiert sind. Mit der Entwicklung von Streaming-Video- und Audio-Diensten hat sich jedoch ein weiteres gängiges Anwendungsfeld für verteilte Netzwerke ergeben. Mittels Vermittlungsservern, die nahe der Zielgruppe weltweit platziert sind, wird ein stabiler Zugang zu Inhalten während hoher Lastzeiten gewährleistet und Engpässe im Internet ausgeschlossen.

Wie es funktioniert

Die Funktionsweise aller CDNs ist im Wesentlichen gleich: Sie nutzen Vermittler, um Inhalte schneller an den Endverbraucher zu liefern. Der Prozess läuft folgendermaßen ab: Der Benutzer sendet eine Anfrage zum Herunterladen einer Datei, die von einem CDN-Server empfangen wird, welcher einmalig beim Originalserver anfragt und die Inhalte an den Benutzer weitergibt. Gleichzeitig speichert das CDN die Dateien für einen bestimmten Zeitraum im Cache und verarbeitet alle nachfolgenden Anfragen aus diesem eigenen Cache. Optional können sie auch Dateien vom Ursprungsserver vorab laden, die Cache-Dauer anpassen, große Dateien komprimieren und vieles mehr. Im idealen Fall überträgt der Hoster den gesamten Datenstrom an den CDN-Knoten, der dann eigene Ressourcen zur Auslieferung der Inhalte an die Benutzer nutzt. Effektives Caching von Informationen sowie die Verteilung von Anfragen auf ein Netzwerk anstatt auf einen einzigen Server führen selbstverständlich zu einer ausgewogeneren Traffic-Belastung.

Unberechenbar sind die Wege des Contents, oder lassen Sie uns ein Wort über CDN verlieren
Ein weiteres wichtiges Merkmal von CDNs ist die Reduzierung der Latenzzeiten bei der Datenübertragung (auch RTT – Round Trip Time genannt). Der Aufbau einer TCP-Verbindung, das Laden von Mediendateien, von JS-Dateien und das Einrichten einer TLS-Sitzung hängen alle von der Ping-Zeit ab. Offensichtlich gilt: Je näher Sie am Ursprung sind, desto schneller erhalten Sie eine Antwort. Selbst die Lichtgeschwindigkeit hat ihre Grenzen: etwa 200.000 km/s über Glasfaser. Das bedeutet, dass die Latenz von Moskau nach Washington etwa 75 ms in RTT beträgt, und das ohne den Einfluss von Zwischenhardware.

Um besser zu verstehen, welche Probleme Netzwerke zur Verbreitung von Inhalten lösen, hier eine Liste aktueller Lösungen:

  • Google, Yandex, MaxCDN (nutzen kostenlose CDNs zur Bereitstellung von JS-Bibliotheken und haben über 90 Points of Presence in den meisten Ländern der Welt);
  • Cloudinary, Cloudimage, Google (Dienste und Bibliotheken zur clientseitigen Optimierung: Bilder, Videos, Schriftarten usw.);
  • Jetpack, Incapsula, Swarmify usw. (Optimierung von Ressourcen in Content-Management-Systemen: Bitrix, WordPress usw.);
  • CDNVideo, StackPath, NGENIX, Megafon (CDNs zur Bereitstellung von statischem Inhalt, die als allgemeine Netzwerke verwendet werden);
  • Imperva, Cloudflare (Lösungen zur Beschleunigung von Webseiten).

Die ersten 3 Arten von CDN aus der genannten Liste sind darauf ausgelegt, nur einen Teil des Traffics vom Hauptserver zu übertragen. Die verbleibenden 2 werden als vollwertige Proxy-Server verwendet, die den gesamten Datenverkehr vom Ausgangs-Host übertragen.

Wem und welche Vorteile die Technologie bietet

In der Theorie kann jede Website, die ihre Produkte/Dienstleistungen an Geschäftskunden oder private Nutzer verkauft (B2B oder B2C), von der Implementierung eines CDN profitieren. Es ist wichtig, dass sich die Zielgruppe, d.h. die Benutzerbasis, außerhalb ihres geografischen Standorts befindet. Aber auch wenn das nicht der Fall ist, helfen Content Delivery Networks bei der Lastenverteilung bei hohen Datenvolumen.

Es ist kein Geheimnis, dass für die Anbindung eines Serverkanals mehrere Tausend Streams ausreichend sind. Daher wird die Verbreitung von Videoübertragungen an ein breites Publikum unvermeidlich zu einem Engpass – der Bandbreite des Internetkanals – führen. Das Gleiche beobachten wir, wenn eine Website viele kleine, nicht zusammenhängende Bilder (zum Beispiel Produktvorschauen) hat. Der ursprüngliche Server verwendet eine TCP-Verbindung zur Verarbeitung beliebig vieler Anfragen, was die Last in die Warteschlange stellt. Die Hinzufügung eines CDN erfordert, die Anfragen auf mehrere Domains zu verteilen und mehrere TCP-Verbindungen zu nutzen, wodurch der Kanal entlastet wird. Die Formel für die zirkuläre Verzögerung ergibt selbst bei den ungünstigsten Bedingungen einen Wert von 6-7 RRT und sieht folgendermaßen aus: TCP+TLS+DNS. Dazu gehören auch die Verzögerungen, die mit der Aktivierung des Funkkanals auf dem Gerät und der Signalübertragung an die Mobilfunkmasten verbunden sind.

Zusammenfassend heben Fachleute die Stärken der Technologie für das Online-Geschäft hervor:

  1. Schnelle Skalierung der Infrastruktur + Reduzierung der Bandbreite. Mehr Server = mehr Punkte, an denen Informationen gespeichert werden. Dadurch verarbeitet jeder Punkt weniger Verkehr in einem bestimmten Zeitraum, was bedeutet, dass er eine geringere Bandbreite haben kann. Zusätzlich kommen Optimierungstools zum Einsatz, die es ermöglichen, Spitzenlasten ohne Zeitverlust zu bewältigen.
  2. Geringere Latenz. Wir haben bereits erwähnt, dass Menschen im Internet nicht gerne lange warten. Ein hoher Ping fördert daher hohe Abbruchraten. Verzögerungen können durch Datenverarbeitungsprobleme auf dem Server, veraltete Hardware oder einfach durch eine unüberlegte Netzwerktopologie verursacht werden. Die meisten dieser Probleme werden teilweise durch Content Delivery Networks gelöst. Dabei ist jedoch wichtig zu beachten, dass der reale Nutzen der Implementierung der Technologie nur dann sichtbar ist, wenn der „Kundenping“ 80-90 ms überschreitet, was der Entfernung von Moskau nach New York entspricht.

    Unberechenbar sind die Wege des Contents, oder lassen Sie uns ein Wort über CDN verlieren

  3. Datensicherheit. DDoS-Angriffe (Distributed Denial-of-Service) zielen darauf ab, den Serverbetrieb zu stören, um daraus Nutzen zu ziehen. Ein einzelner Server ist viel anfälliger für Sicherheitslücken als ein verteiltes Netzwerk (es ist keine einfache Aufgabe, eine Infrastruktur von einem Giganten wie CloudFlare zu brechen). Durch den Einsatz von Filtern und eine intelligente Verteilung der Anfragen im Netzwerk können künstlich erzeugte Schwierigkeiten beim Zugriff auf legitimen Traffic problemlos verhindert werden.
  4. Schnelle Verbreitung von Inhalten und zusätzliche Dienstleistungsfunktionen. Die Verteilung großer Informationsmengen auf das Servernetz ermöglicht es, das Angebot schneller an den Endverbraucher zu bringen. Hier braucht man nicht weit zu suchen – man denke nur an Amazon und AliExpress.
  5. Die Möglichkeit, Probleme mit der Hauptwebsite zu "maskieren". Man muss nicht warten, bis die DNS aktualisiert werden; man kann es auf einen neuen Standort umleiten und zuvor zwischengespeicherte Inhalte ausliefern. Dies kann wiederum die Ausfallsicherheit verbessern.

Wir haben die Vorteile untersucht. Jetzt betrachten wir, für welche Nischen dies vorteilhaft ist.

Werbegeschäfte

Werbung ist der Motor des Fortschritts. Damit dieser Motor nicht überhitzt, muss er angemessen belastet werden. Auch die Werbebranche sieht sich beim Versuch, mit der modernen digitalen Welt Schritt zu halten, Problemen mit "schweren Inhalten" gegenüber. Als schwer gelten multimediale Werbung (hauptsächlich animierte Banner und Videos), die hohe Bandbreiten erfordert. Eine Website mit Multimedia-Inhalten lädt lange und kann die Nerven der Nutzer strapazieren. Viele brechen den Besuch solcher Seiten ab, bevor alle Informationen geladen sind. Werbeunternehmen können die Vorteile von CDN nutzen, um diese Probleme zu lösen.

Verkäufe

E-Commerce erfordert eine ständige Erweiterung der geografischen Abdeckung. Ein weiterer wichtiger Aspekt ist der Wettbewerb, der in jedem Marktsegment reichlich vorhanden ist. Wenn eine Website die Anforderungen der Nutzer nicht erfüllt (einschließlich langsamer Ladezeiten), wird sie unpopulär und kann keine konstant hohe Konversion erzielen. Der Einsatz eines CDN sollte seine Vorteile bei der Verarbeitung von Datenanfragen aus verschiedenen Standorten zeigen. Außerdem hilft die Verteilung des Traffics, Spitzen abzubauen und daraus resultierende Serverausfälle zu verhindern.

Unterhaltungsplattformen

Hier kommen verschiedene Unterhaltungsplattformen in Betracht, von Film- und Spiel-Downloads bis hin zu Streaming-Videos. Obwohl die Technologie mit statischen Inhalten arbeitet, können Streaming-Daten schneller zum Nutzer gelangen, indem sie über Relais übertragen werden. Auch das Caching von Informationen durch das CDN ist eine Rettung für Betreiber großer Portale – Multimedia-Speicher.

Online-Spiele

Der Internet-Gaming-Bereich muss separat betrachtet werden. Wenn Werbung hohe Bandbreiten benötigt, sind Online-Projekte noch ressourcenintensiver. Anbieter stehen vor einer Herausforderung, die zwei Seiten hat: die Zugriffsgeschwindigkeit auf die Server und die Gewährleistung einer hohen Spielleistung mit ansprechender Grafik. Ein CDN für Online-Spiele bietet die Möglichkeit, sogenannte "Push-Zonen" zu haben, in denen Entwickler Spiele auf Servern speichern können, die sich in der Nähe der Nutzer befinden. Dies verringert den Einfluss der Zugriffsgeschwindigkeit auf den Ursprungsserver und sorgt somit für ein durchgehend komfortables Spielerlebnis.

Warum CDN kein Allheilmittel ist

Unberechenbar sind die Wege des Contents, oder lassen Sie uns ein Wort über CDN verlieren
Trotz der offensichtlichen Vorteile sind nicht alle bereit, diese Technologie in ihr Geschäft zu integrieren. Warum ist das so? So paradox es auch klingt, einige Nachteile ergeben sich aus den Vorteilen, zusätzlich kommen noch einige Punkte hinzu, die mit dem Rollout des Netzwerks zu tun haben. Vermarkter werden die Vorzüge der Technologie ansprechend darstellen, vergessen dabei jedoch zu erwähnen, dass all diese Vorteile unter einem breiten Spektrum von Bedingungen ihre Bedeutung verlieren. Wenn man sich die Nachteile von CDNs genauer ansieht, sollten folgende Punkte hervorgehoben werden:

  • Arbeiten nur mit statischem Inhalt. Ja, die meisten modernen Websites haben einen geringen Anteil an dynamischem Content. Aber wo Seiten personalisiert sind, kann ein CDN nicht helfen (außer um ein hohes Verkehrsvolumen zu entlasten);
  • Caching-Verzögerung. Die Optimierung selbst ist eines der Hauptmerkmale von Verteilungsnetzen. Aber bei Änderungen auf dem Ursprungsserver vergeht Zeit, bis das CDN diese auf all seinen Servern neu cachen kann;
  • Massenblockierungen. Wenn aus irgendeinem Grund die IP-Adresse des CDNs gesperrt wird, sind alle Websites, die darauf gehostet werden, ebenfalls betroffen;
  • In den meisten Fällen wird der Browser zwei Verbindungen herstellen (mit dem Ursprungsserver und dem CDN). Das bedeutet zusätzliche Millisekunden Wartezeit;
  • Bindung an die IP-Adresse von Projekten (einschließlich nicht existierender), die zuvor damit verknüpft waren. Infolgedessen haben wir erschwerte Rankings von Google-Crawlern und Schwierigkeiten, die Website beim SEO zu pushen.
  • Ein CDN-Knoten ist ein potenzieller Ausfallpunkt. Wenn sie verwendet werden, ist es wichtig, im Voraus zu verstehen, wie das Routing des Systems funktioniert und welche Fehler während des Betriebs der Website auftreten können.
  • Es ist einfach, aber man muss für die Bereitstellungsdienste bezahlen. Die Kosten sind in der Regel proportional zum Verkehrsaufkommen, daher kann eine Kontrolle zur Budgetplanung erforderlich sein.

Ein nicht zu vernachlässigender Fakt: Die Nähe des CDN zum Benutzer garantiert keinen niedrigen Ping. Die Routenbildung kann vom Kunden zu einem Host erfolgen, der sich in einem anderen Land oder sogar auf einem anderen Kontinent befindet. Dies hängt von der Routing-Politik des jeweiligen Netzwerks und dessen Beziehungen zu Telekommunikationsanbietern (Peering) ab. Viele große CDN-Anbieter haben mehrere Tarife, wobei die Kosten direkt die Nähe des Punktes der Präsenz bei der Übertragung von Inhalten an die Zielbenutzer beeinflussen.

Es gibt Möglichkeiten – starte dein eigenes CDN.

Sind Sie mit der Politik von Unternehmen, die Content Delivery Network-Dienste anbieten, unzufrieden, während Ihr Unternehmen wächst? Wenn Möglichkeiten bestehen, warum versuchen Sie nicht, Ihr eigenes CDN zu starten? Dies macht Sinn in den folgenden Fällen:

  • Die aktuellen Kosten für die Verteilung von Inhalten rechtfertigen nicht die Erwartungen und sind wirtschaftlich nicht tragfähig;
  • Ein ständiger Cache ist erforderlich, ohne Nachbarschaft mit anderen Websites auf demselben Server und Kanal;
  • Die Zielgruppe befindet sich in einer Region, in der es keine verfügbaren Points of Presence (PoPs) für Ihr CDN gibt;
  • Die Notwendigkeit, die Einstellungen bei der Auslieferung von Inhalten zu personalisieren;
  • Die Beschleunigung der Bereitstellung von dynamischen Inhalten wird benötigt;
  • Verdacht auf die Verletzung der Privatsphäre von Nutzern und andere unrechtmäßige Aktivitäten von Dritten.

Um ein CDN zu starten, benötigen Sie einen Domainnamen, mehrere Server in unterschiedlichen Regionen (virtuelle oder dedizierte) und ein Werkzeug zur Verarbeitung von Anfragen. Vergessen Sie nicht die Installation von SSL-Zertifikaten, die Konfiguration und Anpassung von Programmen zur Auslieferung statischer Inhalte (Nginx oder Apache) sowie das effektive Monitoring des gesamten Systems.

Die richtige Konfiguration von Caching-Proxys ist Thema eines eigenen Artikels; daher werden wir hier nicht im Detail erklären, wo und welcher Parameter richtig eingestellt werden sollte. Angesichts der anfänglichen Kosten und der Zeit für den Aufbau eines Netzwerks kann die Verwendung von Fertiglösungen vielversprechender sein. Es ist jedoch wichtig, die bestehende Marktsituation und die Planung mehrere Schritte im Voraus zu berücksichtigen.

Was ist das Ergebnis?

Ein CDN ist eine Reihe zusätzlicher Kapazitäten zur Übertragung Ihres Datenverkehrs an ein breites Publikum. Sind sie für Online-Geschäfte notwendig? Ja und nein, das hängt davon ab, auf welches Publikum der Inhalt ausgerichtet ist und welche Ziele der Geschäftsinhaber verfolgt.

Regionale und spezialisierte Projekte haben durch die Implementierung von CDN mehr Nachteile als Vorteile. Anfragen werden nach wie vor zuerst an den Ursprungsserver gesendet, jedoch über einen Vermittler. Daraus resultiert eine fragliche Reduzierung der Latenz, aber definitiv festgelegte monatliche Kosten für die Nutzung des Dienstes. Mit hochwertigen Netzwerkausrüstungen kann man bestehende Sicherheitsalgorithmen optimieren, die Server näher zu den Nutzern platzieren und ständig kostenlose Optimierungen und Gewinne erzielen.

Wer tatsächlich über Vermittlungsserver nachdenken sollte, sind große Unternehmen, deren Infrastruktur mit dem ständig wachsenden Datenverkehr nicht zurechtkommt. CDN beweist sich als hervorragende Technologie, die es ermöglicht, schnell ein Netzwerk über eine breite geografische Verteilung von Nutzern aufzubauen, komfortables Cloud-Gaming zu gewährleisten oder Produkte auf großen Handelsplattformen zu verkaufen.

Aber selbst bei einer breiten Geographie des Publikums ist es wichtig, im Voraus zu verstehen, wofür genau Content Delivery Networks benötigt werden. Die Beschleunigung von Websites bleibt weiterhin eine komplexe Aufgabe, die sich nicht einfach durch die Implementierung eines CDN lösen lässt. Man sollte wichtige Funktionen wie: Plattformübergreifende Unterstützung, Anpassungsfähigkeit, Serveroptimierung, Codeoptimierung, Rendering usw. nicht vergessen. Eine vorherige technische Prüfung und angemessene Maßnahmen zur Behebung von Problemen sind nach wie vor die beste Lösung für jedes Online-Projekt, unabhängig von dessen Ausrichtung und Umfang.

Im Auftrag der Werbung

Jetzt können Sie leistungsstarke Server, die die neuesten Prozessoren verwenden, AMD Epyc. Flexible Tarife — von 1 CPU-Kern bis zu verrückten 128 CPU-Kernen, 512 GB RAM, 4000 GB NVMe.

Unberechenbar sind die Wege des Contents, oder lassen Sie uns ein Wort über CDN verlieren

Quelle: habr.com

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster