Inhaltsverteilung und CDNs
Content Delivery Networks platzieren Kopien von Inhalten auf Servern in der Nähe der Benutzer und leiten jede Anfrage an eine geeignete Replikation weiter, wodurch Latenz und Origin-Server-Last reduziert und die Bereitstellung von Web- und Videoinhalten in großem Maßstab ermöglicht wird.
Definition
Ein Content Delivery Network ist ein geografisch verteiltes System von Servern, das Kopien von Inhalten in der Nähe der Endbenutzer speichert und bereitstellt, wobei jede Anfrage an eine geeignete nahegelegene Replikation umgeleitet wird, um Latenz, Verlust und die Last auf dem Ursprungsserver zu reduzieren.
Scope
Dieses Thema behandelt die Bereitstellung von Inhalten im Internet-Maßstab: die Gründe für die Replikation von Inhalten in Benutzernähe, die Architektur von Content Delivery Networks (CDNs) mit ihren geografisch verteilten Caches, die Mechanismen zur Weiterleitung eines Benutzers an eine nahegelegene Replikation (oft über DNS), die speziellen Anforderungen des Video-Streamings einschließlich adaptiver Bitraten-Techniken und die Interaktion von CDNs mit dem zugrunde liegenden Netzwerk. Es baut auf Benennungs- und Anwendungsprotokollen auf und schließt die detaillierte Medienkodierung und die Transportmechanismen unterhalb der Bereitstellung aus.
Core questions
- Warum verbessern die Replikation von Inhalten in Benutzernähe die Leistung und Skalierbarkeit?
- Wie ist ein CDN organisiert und wo sind seine Server platziert?
- Wie wird eine Benutzeranfrage an eine geeignete Replikation weitergeleitet und welche Rolle spielt DNS dabei?
- Wie liefert adaptives Bitraten-Streaming Videos über variable Netzwerke?
- Wie interagieren CDNs mit der zugrunde liegenden Internet-Topologie und ISPs?
Key concepts
- Inhaltsreplikation
- Content Delivery Networks (CDNs)
- Edge-Caching-Server
- Anfrageumleitung über DNS
- Nähe und Lastbewusstsein
- Video-Streaming
- adaptives Bitraten-Streaming (HTTP-Chunked)
- Entlastung des Ursprungsservers
Key theories
- Replikation und Nähe
- Das Platzieren von Inhalten auf vielen Servern in der Nähe der Benutzer verkürzt die Netzwerkpfade, reduziert Latenz und Verlust und verteilt die Last vom Ursprung und dem Backbone; das zentrale technische Problem besteht darin, zu entscheiden, wo Replikationen platziert werden sollen und welche für jede Anfrage bereitgestellt werden soll.
- Anfrageumleitung
- CDNs leiten jeden Client zu einer nahegelegenen, funktionierenden Replikation, typischerweise indem sie die Adresse eines ausgewählten Servers als Antwort auf eine DNS-Abfrage zurückgeben, unter Nutzung von Kenntnissen über Netzwerk-Nähe und aktueller Last.
- Adaptives Bitraten-Streaming
- Streaming-Videos werden in mehreren Qualitätsstufen kodiert und in über HTTP abgerufene Chunks aufgeteilt, wobei der Client seine angeforderte Bitrate an die aktuelle Bandbreite anpasst, was zur HTTP-basierten Bereitstellung von CDNs passt und mit variablen Netzwerkbedingungen umgeht.
Clinical relevance
CDNs tragen einen großen Teil des Internetverkehrs und sind unerlässlich für die Bereitstellung von Webseiten, Software-Updates und insbesondere Videos in großem Maßstab und mit guter Leistung. Sie reduzieren die Latenz für Benutzer weltweit, schützen Ursprungsserver vor Überlastung und bilden die Grundlage für die Streaming-Dienste, die die Internetnutzung der Verbraucher dominieren, wodurch die Inhaltsverteilung für die Leistung des modernen Webs von zentraler Bedeutung ist.
History
Als der Web-Traffic in den späten 1990er Jahren stark anstieg, entstanden Content Delivery Networks, um Inhalte in der Nähe der Benutzer zwischenzuspeichern, wobei Akamai ein frühes und einflussreiches Beispiel war. Das Wachstum von Online-Videos machte CDNs und HTTP-basiertes adaptives Streaming dann zu zentralen Elementen der Internet-Bereitstellung, und CDNs entwickelten sich zu Edge-Plattformen, die auch Berechnungen in Benutzernähe durchführen.
Key figures
- Ramesh K. Sitaraman
- Erik Nygren
- James F. Kurose
Related topics
Seminal works
- kurose2021
- nygren2010
Frequently asked questions
- Wie macht ein CDN eine Website schneller?
- Ein CDN speichert Kopien der Inhalte einer Website auf weltweit verteilten Servern und bedient jeden Benutzer von einem nahegelegenen Server aus. Dies verkürzt den Netzwerkpfad, reduziert Latenz und Verlust und entlastet den Ursprungsserver. Das Ergebnis sind schnellere Seitenladezeiten und ein reibungsloseres Streaming, insbesondere für Benutzer, die weit vom Ursprung entfernt sind.
- Wie entscheidet ein CDN, welcher Server mich bedienen soll?
- CDNs nutzen Informationen über Netzwerk-Nähe, Serverlast und Verfügbarkeit, um eine geeignete Replikation auszuwählen, und leiten dann Ihre Anfrage dorthin, typischerweise indem sie die Adresse dieses Servers zurückgeben, wenn Ihr Gerät den Namen der Website im DNS nachschlägt. Ziel ist ein nahegelegener, funktionierender Server, der die Inhalte schnell bereitstellen kann.