CDN nedir?
İçerik teslim ağı (CDN), yoğun veri kullanan uygulamalar için web sayfası yüklenmesini hızlandıran bir birbirine bağlı sunucular ağıdır. CDN, içerik teslim ağının veya içerik dağıtım ağının açılımı olabilir. Bir kullanıcı bir internet sitesini ziyaret ettiğinde o internet sitesinin sunucusundaki verinin kullanıcının bilgisayarına ulaşmak için internet boyunca yolculuk etmesi gerekmektedir. Kullanıcı o sunucudan uzakta bulunuyorsa video veya internet sitesi görüntüsü gibi büyük bir dosyayı yüklemek uzun zaman alacaktır. Bunun yerine web sitesi içeriği, kullanıcılara coğrafi olarak yakın CDN sunucularında depolanır ve bilgisayarlarına çok daha hızlı ulaşır.
CDN neden önemlidir?
İçerik teslim ağının (CDN) temel amacı süre gecikmesini azaltmak veya bir ağın tasarımı tarafından oluşturulan iletişimdeki gecikmeyi azaltmaktır. İnternetin küresel ve karmaşık doğasından ötürü internet siteleri (sunucular) ve onların kullanıcıları (müşteriler) arasındaki iletişim trafiği geniş fiziksel uzaklıklara taşınmak zorundadır. İletişim de müşteriden sunucuya giden talepler ve geri gelen yanıtlarla iki yönlüdür.
CDN müşteri ile internet sitesi sunucusu arasında aracı sunucular oluşturarak etkililiği geliştirir. Bu CDN sunucuları müşteri-sunucu iletişimlerinin bazılarını yönetir. İnternet sunucusuna giden internet trafiğini azaltır, bant genişliği tüketimini düşürür ve uygulamalarınızın kullanıcı deneyimini geliştirir.
CDN'nin avantajları nelerdir?
İçerik teslim ağları (CDN’ler) internet sitesi performansını geliştiren ve temel ağ altyapısını destekleyen pek çok avantaj sağlar. Örneğin, bir CDN aşağıdaki görevleri gerçekleştirebilir.
Sayfa yüklenme süresini düşürmek
Sayfa yüklenme süreleriniz çok yavaş olursa internet sitesi trafiği azalabilir. Bir CDN geri dönüş oranlarını düşürebilir ve kullanıcıların sitenizde geçirdiği zamanı artırabilir.
Bant genişliği maliyetlerini düşürmek
Gelen her internet sitesi talebi ağ bant genişliği tükettiğinden bant genişliği maliyetleri önemli bir masraftır. CDN’ler önbelleğe alma ve diğer optimizasyonlar yoluyla internet sitesi sahipleri için barındırma maliyetlerini düşürürken bir kaynak sunucusunun sağlaması gereken veri miktarını da azaltabilir.
İçerik erişilebilirliğini artırmak
Tek seferde çok fazla ziyaretçi olması veya ağ donanım arızaları bir internet sitesinin çökmesine yol açabilir. CDN hizmetleri daha fazla internet trafiğiyle başa çıkabilir ve internet sunucuları üzerindeki yükü azaltabilir. Bunun yanı sıra bir veya daha fazla CDN sunucularının çevrimdışı olması durumunda diğer operasyonel sunucular kesintisiz hizmet sağlanması için onların yerini alır.
İnternet güvenliğini geliştirmek
Dağınık hizmet engelleme (DDoS) saldırıları internet sitesine yüksek miktarda sahte trafik göndererek uygulamaları etkisiz hâle getirmeye çalışır. CDN’ler yükü birden çok aracı sunucu arasında dağıtıp kaynak sunucusu üzerindeki etkiyi azaltarak bu gibi trafik artışlarının üstesinden gelebilir.
CDN teknolojisinin tarihi nedir?
İçerik teslim ağı (CDN) teknolojisi internet üzerinde daha hızlı içerik teslimine odaklanılmasıyla 1990’ların sonunda ortaya çıkmıştır.
Birinci nesil
Birinci nesil CDN hizmetleri akıllı ağ trafik yönetiminin ağ iletişimi ilkelerine ve çoğaltma için veri merkezlerine odaklanmıştır.
İkinci nesil
İkinci nesil CDN'ler, özellikle istek üzerine video ve istek üzerine haber gibi ses ve video akış hizmetlerinin yükselişine yanıt olarak ortaya çıkmıştır. Teknoloji ayrıca mobil cihazlarda içerik sunumundaki yeni zorlukları çözmek için gelişmiştir. Şirketler, içerik dağıtımını hızlandırmak için bulut bilişim tekniklerini ve eşler arası ağları kullanmıştır.
Üçüncü nesil
Üçüncü nesil CDN’ler hâlâ gelişmektedir. AWS dünyadaki önde gelen CDN hizmeti sağlayıcılarından biri olarak inovasyona öncülük etmektedir. Pek çok web hizmetinin bulut içinde merkezileştirilmesiyle birlikte artık odak noktası, akıllı bir şekilde iletişim kuran akıllı cihazlar kullanarak bant genişliği tüketimini yöneten uç bilişimdir. Otonom ve kendi kendine yönetilen uç ağlar CDN teknolojisinde bir sonraki adım olabilir.
Bir CDN ne tür internet içerikleri sunabilir?
İçerik teslim ağı (CDN) iki türde içerik sunabilir: statik içerik ve dinamik içerik.
Statik içerik
Statik içerik kullanıcıdan kullanıcıya değişmeyen internet sitesi verileridir. İnternet sitesi kapak resimleri, logoları ve font stilleri tüm kullanıcılarda aynı kalır ve işletme bunları sıklıkla değiştirmez. Statik veriler değiştirilmez, işlenmez veya oluşturulmaz ve bir CDN üzerinde depolanmak için idealdir.
Dinamik içerik
Sosyal medya haber akışları, hava raporları, giriş durumu ve sohbet mesajları gibi dinamik içerikler internet sitesi kullanıcıları arasında değişiklik gösterir. Bu veriler kullanıcının konumuna, giriş zamanına veya kullanıcı tercihlerine bağlı olarak değişir ve internet sitesi her kullanıcı ve her kullanıcı etkileşimi için veri oluşturmak zorundadır.
CDN nasıl çalışır?
İçerik teslim ağları (CDN’ler) birden fazla coğrafi konumda bir varlık noktası (POP) veya bir CDN uç sunucuları grubu kurarak çalışır. Bu coğrafi olarak dağıtılmış ağ önbelleğe alma, dinamik hızlandırma ve uç mantık hesaplamaları prensipleri çerçevesinde çalışır.
Önbelleğe Alma
Önbelleğe alma daha hızlı veri erişimi için aynı verilerin birden fazla kopyasını depolama işlemidir. Bilişimde önbelleğe alma ilkesi tüm hafıza ve depolama yönetimi türleri için geçerlidir. CDN teknolojisinde bu terim ağ içerisindeki birden fazla sunucuda bulunan statik internet sitesi içeriği depolama işlemini ifade eder. CDN içerisinde önbelleğe alma aşağıdaki açıklandığı üzere işler:
- Coğrafi olarak uzak bir internet sitesi ziyaretçisi sitenizde statik internet içeriği için ilk talebi gerçekleştirir.
- Talep internet uygulama sunucunuza veya kaynak sunucunuza ulaşır. Kaynak sunucusu uzak ziyaretçiye yanıt gönderir. Aynı zamanda söz konusu ziyaretçiye coğrafi olarak en yakın CDN POP’a da yanıtın bir kopyasını gönderir.
- CDN POP sunucusu kopyayı önbelleğe alınmış bir dosya olarak depolar.
- Bu ziyaretçi veya o konumdaki başka bir ziyaretçi bir daha aynı talepte bulunduğunda kaynak sunucusu değil önbelleğe alma sunucusu yanıtı gönderir.
Dinamik hızlandırma
Dinamik hızlandırma internet uygulamaları ve müşteri arasındaki aracı bir CDN sunucusu sebebiyle dinamik internet içerik talepleri için sunucu yanıt süresinde gerçekleştirilen azaltma işlemidir. İçerik her kullanıcı talebinde değişebileceğinden önbelleğe alma işlemi dinamik internet içeriğiyle iyi çalışmaz. CDN sunucuları her dinamik talep için kaynak sunucusuyla bir daha bağlantı kurmak zorundadır ancak kendileri ve kaynak sunucuları arasındaki bağlantıyı optimize ederek süreci hızlandırırlar.
İstemci internet üzerinden internet sunucusuna doğrudan bir dinamik talep gönderirse talep kaybolabilir veya ağ gecikme süresi sebebiyle gecikebilir. Güvenlik doğrulaması için bağlantının açılması ve kapılması da zaman alabilir. Öte yandan, yakında bulunan CDN sunucusunun talebi kaynak sunucusuna iletmesi ikisi arasında süreğen, güvenilir bir bağlantı kurulmuş olduğu anlamına gelir. Örneğin, aşağıdaki özellikler ikisi arasındaki bağlantıyı daha da optimize edebilir:
- Akıllı yönlendirme algoritmaları
- Kaynağa coğrafi yakınlık
- Müşteri talebini işleme yeteneği; bu, onun boyutunu azaltır
Uç mantık hesaplamaları
Müşteri ve sunucu arasındaki bağlantıyı kolaylaştıran mantık hesaplamalarını gerçekleştirmek için CDN uç sunucusunu programlayabilirsiniz. Örneğin, bu sunucu aşağıdaki görevleri gerçekleştirebilir:
- Kullanıcı taleplerini incelemek ve önbelleğe alma davranışlarını değiştirmek.
- Yanlış kullanıcı taleplerini doğrulamak ve ele almak.
- Yanıtlamadan önce içeriği değiştirmek veya optimize etmek.
Uygulama mantığının internet sunucuları ve ağ ucu arasında dağıtılması geliştiricilere kaynak sunucularının bilgi işlem gerekliliklerini gidermede ve internet sitesi performansını geliştirmede yardımcı olur.
CDN ne için kullanılır?
İçerik teslim ağı (CDN) normal internet sitesi işlevlerini geliştirir ve müşteri memnuniyetini artırır. Aşağıdakiler örnek kullanım durumlarından bazılarıdır:
Yüksek hızlı içerik teslimi
Statik ve dinamik internet içerik teslimini birleştirerek CDN’leri müşterilerinize küresel, yüksek performanslı, site bütünlüklü bir deneyim sağlamak için kullanabilirsiniz. Örneğin Reuters; BBC, CNN, New York Times ve Washington Post gibi en iyi kanallar için çalışan dünyanın en büyük haber dağıtıcısıdır. Reuters için haber medyasındaki zorluk dünya çevresindeki müşterilere zamanında haber içeriği sunmaktır. Reuters, uydu bağlantı iletişimine olan bağımlılığını en aza indirmek ve daha ucuz, fazlasıyla erişilebilir ve küresel olarak dağıtılan güvenli bir ağ platformu oluşturmak için Amazon Basit Depolama Hizmeti (Amazon S3) ile Amazon'un CDN hizmetini ve Amazon CloudFront'u kullanmaktadır.
Gerçek zamanlı akış
CDN’ler güvenilir ve uygun maliyetli bir şekilde zengin ve yüksek kaliteli medya dosyaları sunmada yardım sağlar. Video ve ses yayını gerçekleştiren şirketler üç zorluğun üstesinden gelmek için CDN kullanırlar: bant genişliği maliyetlerini düşürmek, ölçeği artırmak ve teslim süresini azaltmak. Örneğin Hulu, Walt Disney Company'nin sahibi olduğu çevrimiçi bir video yayın platformudur. Büyüyen müşteri tabanına sürekli olarak saniyede 20 GBp’den fazla veri yayını gerçekleştirmek için Amazon CloudFront’u kullanır.
Çoklu kullanıcı ölçeklendirme
CDN’ler çok sayıda eş zamanlı kullanıcıyı desteklemede yardım sağlar. İnternet sitesi kaynakları tek seferde yalnızca kısıtlı sayıda müşteri bağlantılarını yönetebilir. CDN’ler bu sayıyı uygulama sunucusundan yükün bir kısmını alarak hızlı bir şekilde ölçeklendirir. Örneğin King her zaman, her yerde ve her cihazdan oynanabilen sosyal bağlantılı, çok platformlu oyunlar üreten bir oyun şirketidir. King’in her an 350 milyondan fazla oyuncusu bulunur ve oyuncular tarafından platform içerisinde günde 10.6 milyar oyun oynanır.
King’in oyun uygulamaları kullanıcıların oyun verilerini merkezi veri merkezlerine kaydeder ve bu da oyuncuların ilerleme kaybına uğramadan farklı cihazlar üzerinden oyun oynamalarını mümkün kılar. Veri merkezleri kullanıcılar oyuna kısıtlı bant genişliği olan eski makinelerle katılsalar dahi onlara tutarlı bir deneyim sunmayı amaçlar.
King, yeni bir oyun çıkardığında veya büyük ölçekli bir pazarlama programı başlattığında yarım petabayt veya daha fazlasını bulan ani artışlarla günde yüzlerce terabaytlık içerik sunmak için Amazon CloudFront’u kullanmaktadır.
Amazon CloudFront nedir?
Amazon CloudFront; yüksek performans, güvenlik ve geliştiriciler için kolaylık sağlamaya yönelik oluşturulmuş bir içerik teslim ağıdır (CDN). Amazon CloudFront’u bu görevleri gerçekleştirmek için kullanabilirsiniz:
- Verileri, otomatik ağ eşleme ve akıllı yönlendirme içeren, küresel olarak dağıtılmış 450'den fazla varlık noktası (PoP) aracılığıyla sunmak.
- Trafik şifreleme ve erişim denetimleri ile güvenliği iyileştirmek ve hiçbir ilave ücret ödemeden hizmet engelleme (DDoS) saldırılarına karşı savunma sağlamak için AWS Shield Standard’ı kullanmak.
- Maliyeti, performansı ve güvenliği dengelemek için sunucusuz bilgi işlem özelliklerini kullanarak AWS ağı ucunda çalıştırdığınız kodu özelleştirmek.
- Yüksek aktarım hızlarıyla yazılım, oyun düzeltme ekleri ve loT güncellemeleri sunmak için otomatik olarak ölçeklendirme gerçekleştirmek.
12 ay boyunca ücretsiz olarak dışarı 50 GB’lık veri aktarımıyla AWS’de oluşturmaya başlayın. Hemen ücretsiz bir AWS hesabı oluşturun.