Bir içerik dağıtım ağı (CDN), internet içeriğini daha hızlı ve daha güvenilir şekilde sunmak için birlikte çalışan, coğrafi olarak dağıtılmış bir sunucu ağıdır. Tüm kullanıcıların içeriğe tek bir kaynak sunucudan erişmesi yerine CDN’ler, görseller, videolar, stil sayfaları ve JavaScript dosyaları gibi statik varlıkların kopyalarını dünya genelinde kullanıcılara daha yakın konumlanmış sunucularda ön belleğe alır.

Bunu bir perakende zinciri gibi düşünün. Herkes ürün satın almak için tek bir dev merkez depoya gitmek yerine, her şehirde popüler ürünlerle stoklanmış yerel mağazalar vardır. İhtiyacınız olanı daha hızlı alırsınız ve merkez deponun üzerinde daha az trafik olur.

Dünya genelinde yaklaşık 46 milyon site CDN kullanıyor(yeni pencere); buna ilk 1 milyon sitenin yaklaşık yüzde 81’i(yeni pencere) de dâhildir. Büyük CDN sağlayıcıları arasında Akamai Technologies ile neredeyse her yerde bulunan Cloudflare yer alır (tek başına 24 milyondan fazla site Cloudflare kullanıyor(yeni pencere)).

CDN’ler neden vardır?

Geleneksel olarak siteler tek bir fiziksel konumdaki tek bir sunucuda barındırılırdı. Tüm ziyaretçileriniz bu sunucunun yakınında yaşıyorsa bu iyi çalışır. Ancak kullanıcılar ülkelere (veya kıtalara) yayıldığında sorunlar ortaya çıkar:

  • Gecikme (fiziksel mesafe nedeniyle yavaş yükleme süreleri)
  • Bant genişliği darboğazları
  • Trafik artışları sırasında sunucu aşırı yüklenmesi
  • DDoS saldırılarına(yeni pencere) karşı daha yüksek savunmasızlık

CDN’ler bunu içeriği dünya genelindeki çok sayıda sunucuya dağıtarak çözer. Bu, New York’taysanız içeriği ABD merkezli bir sunucudan alacağınız, Londra’dan aynı siteyi ziyaret edenlerin ise içeriği Avrupa merkezli bir sunucudan alacağı anlamına gelir.

CDN’lerin avantajları nelerdir?

CDN’ler şunları iyileştirir:

  • Hız: İçerik fiziksel olarak daha kısa bir mesafe kat eder
  • Ölçeklenebilirlik: Trafik artışları (ör. satışlar veya viral etkinlikler sırasında) siteyi çökertmez
  • Çalışma süresi: Bir sunucu arızalanırsa diğeri devralır
  • Güvenlik: Çoğu CDN, DDoS saldırılarına karşı korunmaya yardımcı olur

CDN’ler nasıl çalışır?

Bir CDN şunlardan oluşur:

  1. Bir kaynak sunucu. Bu, sitenin gerçekten bulunduğu “ana” sunucudur.
  2. Görseller, CSS dosyaları, JavaScript ve videolar gibi kaynak sunucudaki statik içeriği depolayan (“ön belleğe alan”) uç sunucular. Büyük CDN’ler (Cloudflare gibi) dünya geneline yayılmış bu uç sunuculardan yüzlercesini çalıştırabilir.
Bir CDN'in nasıl çalıştığını gösteren diyagram

CDN kullanan bir siteyi ziyaret ettiğinizde süreç şu şekilde işler:

  1. Kullanıcı isteği: Bir siteyi ziyaret ettiğinizde tarayıcınız içerik için bir istek gönderir.
  2. DNS çözümleme: CDN’in DNS sistemi, size hizmet vermek için hangi sunucunun en uygun konumda olduğunu belirler. Genellikle bu, size en yakın olan sunucudur.
  3. Ön bellek kontrolü: Uç sunucu, istenen içeriğin ön bellekte olup olmadığını kontrol eder.
  4. Teslimat: İçerik ön bellekteyse hemen teslim edilir. Değilse uç sunucu bunu kaynak sunucudan alır, gelecekteki istekler için bir kopyasını ön belleğe alır ve size teslim eder.
  5. Dinamik içerik: Kişiselleştirilmiş sayfalar gibi dinamik içerikler için CDN’ler, bağlantı yolunu hâlâ optimize ederken istekleri kaynak sunucuya yönlendirebilir.

En önemlisi, aynı CDN’i kullanan tüm siteler içeriklerini CDN’in paylaşılan uç sunucuları üzerinden yönlendirecektir. Bu, benzer bir coğrafi alana hizmet veren yüzlerce ilgisiz sitenin o alan için bir CDN uç sunucusunun IP adresini paylaşabileceği anlamına gelir.

CDN’ler ve aşırı engellemenin tehlikeleri

İspanya’nın önde gelen futbol birliği LaLiga, futbol maçlarının yasa dışı yayın akışını izlemeye karşı mücadele etmek amacıyla, İspanyol internet hizmeti sağlayıcılarının CDN sağlayıcısı Cloudflare’a ait binlerce IP adresini engellemesini gerektiren mahkeme kararları aldı. Bunun nedeni, bu IP adreslerini yasa dışı yayın hizmetleriyle ilişkilendirmiş olmasıdır.

İspanya'da Cloudflare engellerinden etkilenen hizmetler

Sorun şu ki bu IP adresleri, aynı zamanda binlerce (hatta potansiyel olarak milyonlarca) meşru site tarafından da kullanılan Cloudflare’ın uç sunucularına aittir. Bu durum, İspanya’daki milyonlarca insanın GitHub, ChatGPT, devlet siteleri ve bankacılık hizmetleri dâhil(yeni pencere) bazı popüler sitelere güvenilir şekilde erişememesine yol açmıştır.

CDN’ler hakkında son düşünceler

İçerik dağıtım ağları, günümüz web’inin artık temel altyapılarından biridir ve beklemeye alıştığınız hızlı, güvenilir çevrim içi deneyimi sessizce mümkün kılar. CDN’ler, içeriği coğrafi olarak dağılmış uç sunucular arasında dağıtarak gecikmeyi azaltır, trafik artışlarını karşılar, çalışma süresini iyileştirir ve kritik güvenlik katmanları ekler.

Faydalarının büyük bölümü görünmez olmalarında yatar. İnternetteki tüm sitelerin dörtte üçünden fazlası tarafından kullanılmalarına rağmen çoğumuz onları hiç düşünmeyiz bile. Ancak oradadırlar; günümüz sitelerinin yaklaşık dörtte üçünde perde arkasında çalışır ve coğrafyadan bağımsız olarak içeriğin hızlı ve güvenilir şekilde ulaşmasını sağlarlar.

Hükümetlerin, mahkemelerin ve kurumsal çıkarların internet hizmetlerini engellediği son durumlar, kaçınılmaz olarak daha geniş internet ekosisteminde önemli ikincil zararlara neden oluyor.