it-swarm.asia

"Anycast" nedir ve nasıl yardımcı olur?

Birkaç saniye öncesine kadar " Bazı güzel veya yararlı sunucu/ağ hileleri nelerdir? " okuduğumda herhangi bir yayın duymamıştım.

Üzerine wikipedia " Anycast " yazı oldukça resmi ve gerçekten nasıl kullanılacağına dair zihinsel bir resim uyandırmıyor.

Birisi birkaç gayri resmi cümlede "anycast" in ne olduğunu, nasıl yapılandırıldığını (sadece genel anlamda) ve faydalarının ne olduğunu açıklayabilir mi (ne kolaylaştırır)?

85
username

Anycast, aynı IP önekinin birden çok yerden bildirildiği ağ oluşturma tekniğidir. Daha sonra ağ, yönlendirme protokolü maliyetlerine ve muhtemelen reklam sunucularının 'sağlığına' bağlı olarak bir kullanıcının hangi konuma yönlendirileceğini belirler.

Anycast'in birçok avantajı vardır. İlk olarak, sabit durumda, herhangi bir yayın hizmetinin kullanıcıları (DNS mükemmel bir örnektir) her zaman 'en yakın' (yönlendirme protokolü perspektifinden) DNS sunucusuna bağlanır. Bu, gecikmeyi azaltır ve aynı zamanda bir yük dengeleme seviyesi sağlar (tüketicilerinizin ağınıza eşit olarak dağıtıldığı varsayılarak).

Diğer bir avantaj, konfigürasyon yönetiminin kolaylığıdır. Bir sunucunun/iş istasyonunun nereye dağıtıldığına bağlı olarak (Asya, Amerika, Avrupa) farklı DNS sunucularını yapılandırmak yerine, her konumda yapılandırılmış bir IP adresiniz vardır.

Anycast'in nasıl uygulandığına bağlı olarak, yüksek düzeyde kullanılabilirlik de sağlayabilir. Herhangi bir yayın yolunun reklamı bir tür sağlık kontrolüne bağlıysa (örneğin, bu örnekte iyi bilinen bir etki alanı için bir DNS sorgusu), bir sunucu başarısız olur olmaz yolu kaldırılabilir. Ağ yeniden birleştikten sonra, kullanıcı istekleri el ile müdahale veya yeniden yapılandırmaya gerek kalmadan sorunsuz bir şekilde en yakın DNS örneğine yönlendirilir.

Son avantaj yatay ölçeklendirmedir; bir sunucunun aşırı yüklendiğini fark ederseniz, başka bir sunucuyu aşırı yüklenmiş sunucunun isteklerinin bir kısmını almasına izin verecek bir yere konuşlandırın. Yine, hiçbir istemci yapılandırması gerekli olmadığından, bu çok hızlı bir şekilde yapılabilir.

88
Murali Suriar

Beni "anycast" anlamında sık sık şaşırtan şeylerden biri, üst düzey bir terim olmakla birlikte, pratik uygulamada genellikle iki örneğe dayanmasıdır:

  1. Aynı IP bloğunu birden çok üzerinden tanıtmak için BGP kullanan yönlendiriciler OLARAK yol kullanıcıları "daha yakın" bir siteye yönlendirmenin bir yolu. Aynı zamanda, sadece sorunlu bir yerden rotaları geri çekerek diğer sitelere neredeyse şeffaf bir yük devretme sağlar. Bu hemen hemen her protokol için yararlı olabilir, ancak açıkçası çok sayıda arka uç veri senkronizasyonu endişesi doğurur.

  2. Aynı hizmet IP'sini kendi ağınızdaki birden fazla noktadan tanıtmak ( statik yönlendirme , OSPF , EIGRP veya her neyse). Güzergahlar farklı şekilde tartılırsa bir yük devretme mekanizması görevi görür. Güzergahlar eşit olarak tartılıyorsa , çoğu marka markası satıcı yönlendiricisinin paket başına veya akış başına yük dengeleme özelliklerinden yararlanabilir. ygulama katmanı protokolünün bu konuda rahat olmasına dikkat etmelisiniz, bu yüzden neredeyse her zaman DNS = burada bir istek her zaman bir pakettir ve her şey vatansızdır. Şahsen bunu, DNS ve uygun yük dengeleyicilerin bir kombinasyonu neredeyse her zaman daha iyi bir çözüm olacağı zaman, uygulama katmanı endişelerinin ağ katmanına haksız bir şekilde girmesi olarak görüyorum.

32
cagenut

Temelde DNS gibi UDP tabanlı hizmetler için kullanılır. Temel olarak, aynı rotayı dünyanın dört bir yanındaki birden fazla veri merkezinden duyuruyorsunuz. Bu şekilde müşterileriniz BGP yollarına dayalı olarak "en iyi" ve "en yakın" veri merkezine gönderilir. "En iyi" ve "en yakın" ı tırnak işaretleri içine aldım çünkü ağ sağlayıcıları belirli ağlardan farklı oyunlar oynayabilir ve trafik yönlendirebilir. Genel olarak, işler anycast ile en iyi şekilde çalışır, ancak bu bir garanti değildir.

Bunun bir örneği DNS sunucularınızı 1.2.3.4 ve 1.2.3.5 olarak listelemek olabilir. Yönlendiricileriniz birden çok veri merkezinden 1.2.3/24 için bir rota açıklar. Japonya'daysanız ve orada bir veri merkeziniz varsa, orada olma şansınız vardır. ABD'deyseniz, ABD veri merkezinize gönderilirsiniz. Yine, BGP yönlendirmesine dayanıyor ve gerçek coğrafi yönlendirmeye değil, ancak genellikle işler bu şekilde parçalanıyor.

16
diq

Orijinal yanıtım doğrultusunda blogumda şu iki makaleyi daha yayınladım: Anycast DNS - Bölüm 3, RIP Kullanımı ve Anycast DNS - Bölüm 3, RIP Kullanma (devam). İkincisi daha fazla ayrıntıya girer, ancak www.netlinxinc.com/netlinx-blog.html adresinde, RIP kullanarak Anycast DNS için Cisco yönlendiricilerini ve Açık Kaynak Quagga Ana Bilgisayar tabanlı yönlendirme yazılımını nasıl yapılandıracağınızla ilgili gerçek tarifler bulacaksınız.

Şu anda dizinin dördüncü makalesini yazmak için çalışıyorum. Bu, Anycast DNS'yi OSPF kullanarak nasıl dağıtacağına dair tarifler sağlayacaktır. Serinin sonuncusu, BGP kullanarak Anycast DNS dağıtımı için tarifler göstereceğim.

Anycast DNS - Bölüm 1, Genel Bakış

Anycast DNS - Bölüm 2, Statik Yolları Kullanma

Anycast DNS - Bölüm 3, RIP Kullanarak

Anycast DNS - Bölüm 3, RIP Kullanımı (devam)

9
netlinxman

Bu şu anda çoğunlukla DNS olduğu göz önüne alındığında ...

Gayri resmi olarak, aynı hizmeti aynı adresi kullanarak dünyanın çeşitli yerlerinde aynı hizmeti kurmanıza olanak sağlayarak hizmetinizi daha esnek ve daha iyi ağ erişimi/gecikme/hız ile yapar. Birisi bu adresi sorguladığında en yakın/en iyi rota verilir.

Sunucu açısından:

Tek noktaya yayın tek bir kişiye gidiyor ve çok noktaya yayın birkaç kişiye gidiyor ve yayın tüm insanlara gidiyorsa, herhangi bir yayın schitzophrenic ve her bir kişiye en uygun kişiliğin onlarla bağlandığı birçok kişiliğe sahip. Hmm. En iyi benzetme değil.

4
Alex

Anycast'in gerçekten ilginç bir kullanımı DNS'dir. Çeşitli fiziksel ve ağ konumlarına 5 farklı DNS sunucusu yerleştirebilirsiniz, ancak tek (veya bazen hem birincil hem de ikincil DNS) adresleri paylaşabilirsiniz. Kaynağın bulunduğu yere bağlı olarak, en yakın düğümlerine yönlendirilirler. Bu, bazı trafik dengelemesi yapar ve ayrıca bir DNS sunucusu ölürse fazlalık sağlar.

3
dexedrine

Ayrıca Anycast'in sıfırlamalardan veya uzun konuşmalardan kurtulamayan bazı TCP bağlantılar için iyi veya güvenilir olmadığını da belirtmek gerekir.

BGP kullanan Anycast IP'leri, internete belirli bir Ana Bilgisayar için 2, 3 veya daha fazla yol olduğunu söyler , ancak gerçekte bunlar Aynı Ana Bilgisayar DEĞİL , daha düşük bir gecikme bağlantısı sağlamak için birden çok veri merkezinde reklamı yapılan ana bilgisayarların tam kopyalarıdır.

Örneğin, 198.251.86.133 için 301 www olmayan yeniden yönlendirme yapan 3 sunucum var, bu Ana Bilgisayar'a ping işlemi uygularsanız, sunucularım ABD-Doğu, ABD olduğu için bulunduğunuz yere göre DUPLICATE yanıtları alabilir veya hatta düşebilir -Batı ve EUR. kısa süreli bağlantılar için (tarayıcı önbelleğe alınan 301'ler gibi) bu, en yakın veri merkezindeki yerel bir sunucu tarafından hızlı bir yanıt verir.

Artıklık açısından herhangi bir yayına yerleşik olan hiçbir şey yoktur, IP'nin (tipik senaryolarda) her zaman bu veri merkezlerini göstereceği için her sitede bağımsız yedekliliğe ihtiyacınız olacaktır.

2
Jacob Evans

Meslektaşlarımdan birine göre, insanlar sadece "en yakın" anycast IP adresine saldırabileceği için bir DoS saldırı hafifletme tekniği olarak da kullanışlıdır, bu yüzden ABD'de çok fazla zombi varsa, örneğin, Euro siteniz pakete paket gönderemedikleri için çoğunlukla etkilenmezler.

Ayrıca, doğru yol olarak BGP'de tanıtılması muhtemel olmayan bir yerden (ör. ASN bir N Amerikalıyı gösterdiğinde Avrupa'ya gelen paketler) açık bir şekilde geliyorsa, sahte paketlerin (biraz naif) filtrelenmesinin bir yolu olarak kullanmak mümkün olabilir. blok).

2
MarkR