Soru YouTube ölçek dağılımına izin veren teknolojiler


Youtube bildiğimiz gibi, muazzam. Binlerce eşzamanlı kullanıcıya, video başına en az 2 megabayt akış sağlıyor. Açıkçası, bu çok fazla trafik alacaktır ... herhangi bir sunucu için çok fazla.

Hangi ağ teknolojileri itmeye izin veriyor? Günde 4 milyar video mu?


34
2018-03-13 05:24


Menşei




Cevaplar:


Arka uçta ölçekleme

Çok basit bir kurulumda, bir DNS girişi bir sunucuya ait olan bir IP'ye gider. Dünyadaki herkes bu tek makineye gider. Yeterli trafikle, YouTube'un boyutu olmak için çok uzun sürecek çok fazla işlem yapmanız gerekiyor. Basit bir senaryoda, bir yük dengeleyici ekleriz. Yük dengeleyicinin işi, tek bir sunucu olarak görünürken trafiği çeşitli arka uç sunucularına yönlendirmektir.

YouTube'un sahip olduğu kadar fazla veriyle, tüm sunucuların tüm videolara hizmet vermesini beklemek çok fazla olacaktır. Bu nedenle, eklenecek başka bir dolaylı katmanımız daha vardır: Kırma işlemi. Bir örnekte, bir sunucu "A" ile başlayan, diğeri "B" ile başlayan her şeyden sorumludur.

Kenar yakınlaşıyor

Ancak, sonuçta, bant genişliği sadece yoğunlaşıyor ve bir sürü veriyi bir odaya taşıyorsunuz. Yani, şimdi süper popüler olduğumuz için, o odadan çıkarıyoruz. Buradaki iki teknoloji, İçerik Dağıtım Ağları ve Anycasting.

Tüm dünyada talep edilen bu büyük statik dosyalarımın olduğu yerde, barındırma sunucularına doğrudan bağlantıları işaretlemeyi bıraktım. Benim yaptığım şey, CDN sunucum için bir bağlantı oluşturuyor. Birisi bir videoyu görüntülemeyi istediğinde, CDN sunucumdan bunun için soruyorlar. CDN zaten videoya sahip olmaktan, hosting sunucusundan bir kopyasını istemekten veya beni yönlendirmekten sorumludur. Bu, ağın mimarisine bağlı olarak değişecektir.

CDN nasıl yardımcı olur? Eh, bir IP aslında tüm dünyada birçok yerde bulunan birçok sunucuya ait olabilir. İsteğiniz bilgisayarınızı terk ettiğinde ve ISS'nize gittiğinde, yönlendiricileri bu IP'ye en iyi yolu (en kısa, en hızlı, en düşük maliyetli ... ne olursa olsun) eşler. Çoğu zaman bir CDN için, bu sizin en yakınınızda veya yanında olacak 1. kat ağ.

Bu yüzden, YouTube'dan bir video istedim. Depolandığı gerçek makine en azından iad09s12.v12.lscache8.c.youtube.com ve tc.v19.cache5.c.youtube.com. Bunlar benim web sayfamın kaynağında ortaya çıkıyor ve bir çeşit indeksleme sunucusu tarafından sağlanıyor. Şimdi, Maine'den, tc19 sunucusunun Miama, Florida'da olduğunu gördüm. Washington'dan, tc19 sunucusunun San Jose, California'da bulunduğunu gördüm.


51
2018-03-13 05:49



Yaptığın en iyi şey, şelatlaştırmanın en iyi örneğidir. Herkes bu sebepten dolayı büyük bir komplikasyon yaratıyor gibi görünüyor. - kizzx2
@Jeff, Bazı alıntıları eklerseniz veya bunun son kullanıcı spekülasyonu olduğunu açıkça belirtirseniz harika olur. - Pacerier


Büyük siteler için çeşitli teknikler kullanılır.

www.youtube.com -> herhangi bir sayıda IP adresi

DNS’e bakalım:

www.youtube.com is an alias for youtube-ui.l.google.com.
youtube-ui.l.google.com has address 74.125.226.14
youtube-ui.l.google.com has address 74.125.226.0
youtube-ui.l.google.com has address 74.125.226.1
youtube-ui.l.google.com has address 74.125.226.2
youtube-ui.l.google.com has address 74.125.226.3
youtube-ui.l.google.com has address 74.125.226.4
youtube-ui.l.google.com has address 74.125.226.5
youtube-ui.l.google.com has address 74.125.226.6
youtube-ui.l.google.com has address 74.125.226.7
youtube-ui.l.google.com has address 74.125.226.8
youtube-ui.l.google.com has address 74.125.226.9
youtube-ui.l.google.com has IPv6 address 2001:4860:800f::88

Bu yüzden www.youtube.com aslında birkaç IP adresine gidebilir.

herhangi bir IP adresi

Tek bir IP, aynı anda herhangi bir sayıda Otonom Sistem (internet üzerinde bir Ağ) tarafından ele alınabilir. Örneğin, Google’ın yanı sıra kök DNS sunucularının birçoğu 8.8.8.8 DNS sunucusu, dünyanın dört bir yanındaki birçok noktada yayınlanmıştır. Buradaki fikir şudur: eğer ABD'deyseniz, ABD ağına bastınız ve Birleşik Krallık'ta iseniz İngiltere ağına bastınız.

farklı sunucudan gelen medya

Sadece sen olduğun için www.youtube.comBu, tüm içeriğin aynı sunucudan gelmesi gerektiği anlamına gelmez. Bu sitede, statik kaynaklar sstatic.net yerine serverfault.com.

Örneğin, izlersek Kaley Cuoco'nun kölesi Leia PSA medyanın sunulduğunu görüyoruz v10.lscache5.c.youtube.com.

çoklu internet bağlantısı

Sizi temin ederim, Youtube'un birden fazla internet bağlantısı var. Diğer tüm tekniklere rağmen, Youtube gerçekten tek bir site ve tek bir sunucu olsa bile, teoride video hizmeti verdiği her ağa bağlantılar olabilir. Gerçek dünyada elbette mümkün değil, ama düşünün.

Bu fikirlerin herhangi biri veya tamamı (ve daha fazlası!) Bir İçerik Dağıtım Ağı. Daha fazla bilgi edinmek isterseniz o makaleyi okuyun.


23
2018-03-13 05:42



“Teoride, videoya hizmet verdiği her diğer ağa bağlantılar olabilir. Gerçek dünyada elbette ki bu mümkün değil, ama fikri düşünün.” Neden gerçek dünyada mümkün değil? Birçok internet sağlayıcısına abone olabilirsiniz - user1034912
Otuz beş binden fazla ayrı ağa gerçekten bağımsız bağlantılar mı istiyorsunuz? Pratik değil. - MikeyB


YouTube’un (Google’ın) yalnızca bir sunucusunun olduğunu hayal etmekte yanlışsınız; bu inforgraphic Bu hizmeti destekleyen sistemin ölçeğini göstermeye yardımcı olabilir.

Sadece bir noktaya sahip olsanız bile, yük dengeleyici ve tüm gibi araçları kullanarak, tek bir ismin arkasında birden fazla sunucuya ve hatta IP'ye sahip olabilirsiniz.

Ancak, Google'ın çok fazla sayıda varlığa sahip olduğu ve AnyCast gibi araçları kullandığı ve aynı IP'yi İnternet'te birden fazla yerde yayınlayabileceği ve altyapıya sahip olmak için en yakın sunucu havuzuna yönlendirdiği bir araç kullanıldı.


12
2018-03-13 05:27



Google dünya çapında milyonlarca sunucu nasıl koydu? Sunucuları kiralıyorlar mı? Tüm bu üçüncü parti sunucularını yönetmek için veri güvenliğini sürdürmeleri zor olmaz mıydı? - user1034912
Onların her birine sahipler. Cidden, satın alırlar - iyi, bu günlerde - onlar. Bu, bazı yollarla, ama başkalarında daha az hayal edeceğiniz kadar masraflıdır. - Daniel Pittman
investor.google.com/financial/tables.html yardımcı olabilir; Q4, 2011, 10.000-ish ... milyon dolar geldi. Cidden, hayal edemeyeceğiniz bir ölçekte. - Daniel Pittman
@ user1034912 - evet, şaşırtıcı. Ama bu GooglePeki neden olmasın? Dünya genelinde binlerce veri merkezi var, Google bunların çok küçük bir kısmını çalıştırıyor. - tombull89
@Tomtom - Sunucu teknolojisine aşina olmayan bir kullanıcı için neden inanmak zor olmasın? Google'ı tanımayan birinin yüzlerce sunucusunun bir kaya altında yaşadığını söylemek kaba ve aşırı derecede saldırgan. Dışarı çıkın ve bir avuç düzenli teknoloji olmayanlara sorun ve Google'ın sunucularının ölçeğini ve hatta ne olduklarını bilmediklerini garanti ediyorum. Ayrıca, normal insanlar normalde bilançolara göz atıyor mu? Veri merkezleri hakkında her zaman haberleri okumak zorunda mısın? Dürüst olmak gerekirse, ne kadar profesyonel olduğun umrumda değil ama kaba, saygısız ve aşağılayıcı olman seni hayatta hiçbir yere götürmez. - DMan


Bazı şeylerin ağ tarafına dokunacağım: Google'ın dünyanın dört bir yanındaki 73 benzersiz veri merkezinde (Kendileri de dahil değil) bir Varlık Noktası (PoP) var. Onlar bir üyesi 69 benzersiz internet borusu. Google, peeringdb'de listelenen diğer ağlardan daha fazla veri merkezlerinde ve İnternet Alışverişi noktasında.

Google’ın toplam İnternet değişim kapasitesi> 1,5 TB / sn. Google’ın 100 Mbps’lik trafiğe sahip ağları için 1,5 TB’nın ayrıldığı, ancak 2-3 Gb / sn’yi tahmin ettiğimden daha az olduğu. Sonra 'yeterli hacim', özel peering'e (PNI) taşınırsınız.

Internet Exchange peering ve özel peering (AS15169 ile) ek olarak, YouTube da bir transit ağ çalışır: AS43515, ve başka bir ağ ücretli eşleme / taşma, AS36040 olduğunu varsayalım. Google ayrıca çalışır Google Küresel Önbellek ISP'lerin kendi ağlarında daha da yerel olarak konuşlandırılması için sunucular. (Peeringdb'den veri, bgp.he.net).

Deneyimlerime dayanarak, YouTube'un yalnızca videodan hizmet sunmak için bir konum seçmesi için IP konum belirleme veya Anycast'den çok daha fazlasını kullandığını düşünüyorum.

Google, büyük bir küresel omurga ağını çalıştırıyor karanlık lifleri var, onlar sahip finanse edilen denizaltı kabloları. YouTube’un oluşturduğu trafik hacmi çok büyük! YouTube’un en yoğun trafik hacmi> 12 TB’tır. Google temsil en az% 7 Tüm Inter-domain internet trafiğinin (ve muhtemelen% 10'unun).

Dolayısıyla, ağ perspektifinden sorunuzu yanıtlamak için, YouTube gibi ölçeklendirmek için, ağınızda yer alan fiberden, WDM donanımına ve yönlendiricilere kadar çok büyük bir yatırım yapmanız gerekir. İçeriği ve ağı kullanıcılarınıza mümkün olduğunca yakınlaştırmanız gerekir. Bu genellikle peering, IXs ve belki biraz transit anlamına gelir. Kullanıcılara, trafiği olabildiğince eşit dağıtılmış ve ucuz olarak tutmak için içeriğin nereden alınacağını akıllıca söyleyebilmeniz gerekir. Ve elbette, günde 4 milyar görüntüyü saklamak, işlemek, dönüştürmek ve sunmak için devasa bir sunucu altyapısına sahip olmanız gerekiyor!

Sunucu tarafını merak ediyorsanız, Blog yazısı son yayınlanan veri merkezi görüntülerinin bazılarını yıkıyor.


3
2018-04-22 23:27



Btw Google için çalışıyor musunuz? - Pacerier


Büyük ölçekli sistemler ve bu şirketlerin kullandığı teknolojiler hakkında daha fazla bilgi edinmek istiyorsanız, şu an en iyi kaynak http://highscalability.com

Google veya Akamai gibi en büyük şirketler, her zaman kendi yazdıkları / oluşturdukları bileşenlere sahiptir. (örneğin Akamai, hizmetleri için bir web sunucusu geliştirdi)


2
2018-03-13 07:43



Verilerden bazıları eskimiş olsa da ... - Pacerier