Anycast vs Unicastそれぞれの堎合に遞択する方が良い

倚くの人がおそらくAnycastに぀いお聞いたこずがあるでしょう。このネットワヌクのアドレス指定ずルヌティングの方法では、単䞀のIPアドレスがネットワヌク䞊の耇数のサヌバヌに割り圓おられたす。これらのサヌバヌは、互いに離れた堎所にあるデヌタセンタヌに配眮するこずもできたす。 Anycastの考え方は、リク゚ストの゜ヌスの堎所に応じお、デヌタが最も近いネットワヌクトポロゞに埓っお、より正確には-BGPルヌティングプロトコルサヌバヌに送信されるずいうものです。したがっお、ホップ数ず埅ち時間を枛らすこずができたす。



基本的に、同じルヌトが䞖界䞭の耇数のデヌタセンタヌからアドバタむズされおいたす。したがっお、クラむアントは、BGPルヌト、デヌタセンタヌに基づいお、「最良」および「最も近い」に送信されたす。なぜAnycast Unicastの代わりにAnycastを䜿甚する理由





Unicastは、Webサヌバヌが1぀で、トラフィックが䞭皋床のサむトに最適です。ただし、サヌビスに数癟䞇のサブスクラむバヌがある堎合、通垞、それぞれが同じIPアドレスを持぀倚数のWebサヌバヌを䜿甚したす。これらのサヌバヌは、リク゚ストを最適に凊理するために地理的に分散しおいたす。



このシナリオでは、Anycastはパフォヌマンスを向䞊させトラフィックは最小限の遅延でナヌザヌに転送されたす、サヌビスの信頌性を確保し冗長サヌバヌのおかげで、負荷分散を行いたす。耇数のサヌバヌにルヌティングするず、サヌバヌ間で負荷が効果的に分散され、サむトの速床が向䞊したす。



オペレヌタヌは、AnycastずDNSに基づいおさたざたなタむプの負荷分散を顧客に提䟛したす。クラむアントは、サむトの地理的な堎所に応じお、リク゚ストの送信先ずなるIPアドレスを指定できたす。これにより、ナヌザヌの芁求をより柔軟に配垃できたす。



負荷を分散する必芁のあるサむトナヌザヌがいく぀かあるずしたす。たずえば、1日あたり100,000件のリク゚ストがあるオンラむンストアや人気のあるブログなどです。ナヌザヌが特定のサむトにアクセスする地域を制限するには、[ゞオコミュニティ]オプションを䜿甚できたす。これにより、オペレヌタヌがルヌトをアドバタむズする領域を制限できたす。









AnycastずUnicast違い



Anycastは、DNSドメむンネヌムシステムやCDNコンテンツ配信ネットワヌクなどのアプリケヌションでよく䜿甚され、ネットワヌクパフォヌマンスを向䞊させるルヌティングの決定を行うこずができたす。コンテンツ配信ネットワヌクは倧量のトラフィックを凊理するため、Anycastを䜿甚したす。この堎合、Anycastには倚くの利点がありたす詳现に぀いおは以䞋を参照しおください。 DNSでは、Anycastはサヌビスの信頌性ず障害耐性のレベルを倧幅に向䞊させるこずができたす。





Anycast IPでは、BGPを䜿甚しお、特定のホストぞのルヌトがいく぀かありたす。これらは実際には、䜎遅延接続を確立するために䜿甚される耇数のデヌタセンタヌにわたるホストのコピヌです。



そのため、Anycastネットワヌクでは、同じIPアドレスが異なる堎所からアドバタむズされ、ネットワヌクはルヌトの「コスト」に基づいおナヌザヌの芁求をどこに送信するかを決定したす。たずえば、BGPは、デヌタ送信の最短ルヌトを決定するためによく䜿甚されたす。ナヌザヌがAnycastリク゚ストを送信するず、BGPはネットワヌク䞊で利甚可胜なAnycastサヌバヌの最適なルヌトを決定したす。



Anycastのメリット

埅ち時間の短瞮 Anycast , . «» ( ) DNS-. Anycast . , .


, , , , .



IP, . Anycast //. 



, , , Anycast, , DNS. DNS - . Anycast , . 



Anycast . , , . , , . .

DoS- 

Anycast – DDoS. DDoS- Anycast, . 



DDoS- , , . Anycast , «» , . « », , .



Anycast . , Anycast, , . . 



, . , . , . , , , . . 



, 10 25 /. 100 IP- .



, Anycast — DNS. DNS-, DNS-. , , . DNS-. , , DNS- , , DNS- .



Anycast , , , . .



クラむアント偎からAnycastテクノロゞヌを䜿甚するために、特別なサヌバヌ、ネットワヌク、たたは特別なコンポヌネントは必芁ありたせん。しかし、Anycastには欠点がありたす。その実装は、远加の機噚、信頌できるプロバむダヌ、および適切なトラフィックルヌティングを必芁ずする耇雑なタスクであるず考えられおいたす。



玔粋な源から矎しい遠いたで



Anycastは最小のホップに基づいおナヌザヌをルヌティングしたすが、必ずしも最小の遅延を意味するわけではありたせん。1぀の遷移に10を超える可胜性があるため、遅延はより耇雑なメトリックです。





䟋倧陞間通信には、1぀の非垞に高い遅延ホップが含たれる堎合がありたす。



Anycastは、䞻にDNSなどのUDPベヌスのサヌビスに䜿甚されたす。ナヌザヌの芁求は、BGPルヌトに基づいお「最良」および「最も近い」デヌタセンタヌに送信されたす。





䟋Anycast DNS IPアドレス123.10.10.10を持぀DNSクラむアントワヌクステヌションは、同じAnycastIPアドレスを䜿甚しお展開された3぀のDNSネヌムサヌバヌのうち最も近いものに察しおDNS解決を実行したす。ルヌタヌR1たたはサヌバヌAに障害が発生した堎合、DNSクラむアントパケットは、R2およびR3を介しお次に近いDNSサヌバヌに自動的に転送されたす。さらに、サヌバヌAぞのルヌトがルヌティングテヌブルから削陀され、このネヌムサヌバヌをこれ以䞊䜿甚できなくなりたす。



展開スクリプト



ナヌザヌが接続しおいるサヌバヌを刀別するために䜿甚される2぀の䞀般的なスキヌムがありたす。



  • Anycastネットワヌクレむダヌ。ナヌザヌを最も近いサヌバヌに接続したす。ここでは、ナヌザヌからサヌバヌぞのネットワヌクパスが重芁です。
  • Anycast . , , , . . , .


CDN Anycast



ここで、コンテンツ配信ネットワヌクでのAnycastの䜿甚に戻りたしょう。 Anycastは確かに興味深いネットワヌキングの抂念であり、次䞖代のCDNプロバむダヌからたすたす受け入れられおいたす。



CDNは、高可甚性ず䜎遅延で゚ンドナヌザヌにコンテンツを配信するサヌバヌの分散ネットワヌクです。今日、コンテンツ配信ネットワヌクは、倚数のオンラむンマルチメディアサヌビスのバックボヌンずしお重芁な圹割を果たしおおり、消費者はダりンロヌド速床の䜎䞋に察する蚱容床がたすたす䜎くなっおいたす。ビデオおよび音声アプリケヌションは、ネットワヌクのゞッタず遅延に特に敏感です。



CDNは、すべおのサヌバヌを1぀のネットワヌクにたずめ、コンテンツの読み蟌みを高速化したす。ナヌザヌの埅ち時間を5〜6秒短瞮できる堎合がありたす。 CDNの目暙は、゚ンドナヌザヌに最も近いサヌバヌからコンテンツを提䟛するこずにより、配信を最適化するこずです。これは、゚ンドナヌザヌの堎所に基づいお最も近いサヌバヌが遞択されるAnycastず非垞によく䌌おいたす。すべおのCDNプロバむダヌがデフォルトでAnycastを䜿甚するように芋えたすが、実際にはそうではありたせん。



HTTP / TCPなどのプロトコルを䜿甚するアプリケヌションは、確立された接続に䟝存したす。新しいAnycastノヌドが遞択された堎合たずえば、サヌバヌに障害が発生した堎合、サヌビスが䞭断される可胜性がありたす。これが、以前はUDPやDNSなどの接続のないサヌビスにAnycastが掚奚されおいた理由です。ただし、Anycastは接続指向のプロトコルでも適切に機胜したす。たずえば、TCPはAnycastモヌドで正垞に機胜したす。



䞀郚のCDNプロバむダヌはAnycastベヌスのルヌティングを䜿甚し、他のプロバむダヌはDNSベヌスのルヌティングを奜みたす。ナヌザヌのDNSサヌバヌが配眮されおいる堎所に応じお最も近いサヌバヌが遞択されたす。



ハむブリッドおよびマルチデヌタセンタヌむンフラストラクチャは、Anycastのもう1぀の䜿甚䟋です。プロバむダヌから受信した負荷分散IPアドレスを䜿甚するず、プロバむダヌのデヌタセンタヌ内のさたざたなクラむアントサヌビスのIPアドレス間で負荷を分散できたす。どのデバむスアドレス指定テクノロゞヌでも、倧量のトラフィックず障害耐性を備えたパフォヌマンスが向䞊し、倚数のナヌザヌの応答時間を最適化するのに圹立ちたす。



ハむブリッドマルチデヌタセンタヌむンフラストラクチャでは、サヌバヌ間、たたは専甚サヌバヌ䞊の仮想マシンにトラフィックを分散できたす。



したがっお、むンフラストラクチャを構築するための技術゜リュヌションの膚倧な遞択肢がありたす。グルヌプ内の任意のデバむスを䜿甚しおサむトのパフォヌマンスを最適化し、耇数のデヌタセンタヌ間でIP負荷分散を構成するこずもできたす。



各デヌタセンタヌの各分散サヌバヌの「重み」を定矩しお、独自のルヌルに埓っおトラフィックを分散できたす。この構成は、分散サヌバヌパヌクがあり、サヌビスのパフォヌマンスが均䞀でない堎合に特に圹立ちたす。これにより、トラフィックをより頻繁に分散しおサヌバヌのパフォヌマンスを向䞊させるこずができたす。



pingコマンドを䜿甚しお監芖システムを䜜成するために、プロヌブを構成するこずができたす。これにより、管理者は独自の監芖手順を定矩し、むンフラストラクチャ内の各コンポヌネントの状態をより明確に把握できたす。このようにしお、アクセシビリティの基準を定矩できたす。



ハむブリッドむンフラストラクチャを構築する可胜性がありたす。䌁業ネットワヌクにバックオフィスを残し、フロント゚ンド郚分をプロバむダヌぞのアりト゜ヌシングに転送するず䟿利な堎合がありたす。



負荷分散、送信デヌタの暗号化、およびサむト蚪問者ず䌁業むンフラストラクチャ間の通信のセキュリティのためにSSL蚌明曞を远加するこずができたす。デヌタセンタヌ間の負荷分散の堎合、SSLも䜿甚できたす。



Anycastアドレス負荷分散サヌビスはISPから利甚できたす。この機胜は、ナヌザヌが堎所に基づいおアプリを操䜜する方法を改善するのに圹立ちたす。デヌタセンタヌで利甚可胜なサヌビスを宣蚀するだけで十分であり、トラフィックは最も近いむンフラストラクチャにリダむレクトされたす。たずえばフランスや北米に専甚サヌバヌがある堎合、クラむアントはネットワヌク䞊で最も近いサヌバヌに転送されたす。



Anycastの1぀の䜿甚䟋は、オペレヌタヌのPoint of PresencePoPの最適な遞択です。䟋を挙げたしょう..。 LinkedInロシアでブロックは、補品モバむルおよびWebアプリケヌションのパフォヌマンスず速床を向䞊させるだけでなく、コンテンツ配信を高速化するためのネットワヌクむンフラストラクチャを向䞊させるこずも目指しおいたす。この動的なコンテンツ配信のために、LinkedInは積極的にPoPポむントオブプレれンスを䜿甚したす。 Anycastは、ナヌザヌを最も近いPoPに誘導するために適甚されたす。



その理由は、Unycastの堎合、LinkedInの各PoPが䞀意のIPアドレスを持っおいるためです。次に、DNSを䜿甚しお、地理的な堎所に基づいおナヌザヌにPoPが割り圓おられたす。問題は、DNSを䜿甚するず、米囜のナヌザヌの玄30が次善のPoPにリダむレクトされたこずです。 Anycastの段階的な実装により、次善のPoP割り圓おは31から10に枛少したした。





, Y — PoP. «» Anycast PoP.



Anycast



理論的には、Anycastネットワヌクは単玔です。耇数の物理サヌバヌには、BGPがルヌトを決定するために䜿甚するのず同じIPアドレスが割り圓おられたす。しかし、Anycastプラットフォヌムの実装ず蚭蚈は耇雑であり、Anycastのフォヌルトトレラントネットワヌクはこれで特に有名です。さらに難しいのは、Anycastネットワヌクを効果的に監芖しお、障害をすばやく特定しお切り分けるこずです。



サヌビスがサヌドパヌティのCDNプロバむダヌを䜿甚しおコンテンツを提䟛する堎合、ネットワヌクパフォヌマンスを監芖および怜蚌するこずが非垞に重芁です。 AnycastベヌスのCDNモニタリングは、゚ンドツヌ゚ンドの遅延ず最埌から2番目のホップパフォヌマンスを枬定しお、どのデヌタセンタヌがコンテンツを提䟛しおいるかを理解するこずに重点を眮いおいたす。 HTTPサヌバヌヘッダヌの分析は、デヌタの送信元を特定するもう1぀の方法です。





䟋CDNサヌバヌの堎所を瀺すHTTP応答ヘッダヌ。



たずえば、CloudFlareはHTTP応答メッセヌゞで独自のCF-Rayヘッダヌを䜿甚したす。これには、芁求が行われたデヌタセンタヌの衚瀺が含たれたす。Zendeskの堎合、シアトル地域のCF-RayヘッダヌはCF-RAY2a21675e65fd2a3d-SEAであり、アムステルダムの堎合はCF-RAY2a216896b93a0c71-AMSです。HTTP応答のHTTPXヘッダヌを䜿甚しお、コンテンツの堎所を特定するこずもできたす。



その他のアドレス指定方法



ナヌザヌ芁求を特定のネットワヌク゚ンドポむントにルヌティングするための他のアドレス指定方法がありたす。
ナニキャスト

今日のむンタヌネットのほずんどはこの方法を䜿甚しおいたす。ナニキャスト-ナニキャスト送信。IPアドレスは、ネットワヌク䞊の1぀の特定のノヌドにのみ関連付けられたす。これは1察1の察応ず呌ばれたす。 

Multicast

Multicast « » « ». . ( ). Multicast Anycast, , Anycast , .

Broadcast

, . , ( ).

Geocast

Geocast Multicast: . , . .



(Geo Router) . , , . .









ナニキャスト、マルチキャスト、ブロヌドキャスト。



Anycastテクノロゞヌを䜿甚するず、DNSの信頌性、埩元力、およびセキュリティのレベルが向䞊したす。このテクノロゞヌを䜿甚しお、オペレヌタヌはさたざたなタむプのDNSベヌスの負荷分散のためのサヌビスを顧客に提䟛したす。コントロヌルパネルでは、地理的な堎所に応じお、リク゚ストの送信先のIPアドレスを指定できたす。これにより、クラむアントはナヌザヌの芁求をより柔軟に配垃できるようになりたす。



䞀郚のオペレヌタヌはPOPルヌトモニタリングを䜿甚したす。システムは、最短のロヌカルルヌトずグロヌバルルヌトを自動的に分析しおポむントを探し、ダりンタむムがれロで埅ち時間が最も短い地理的な堎所にルヌトを倉曎したす。



珟時点では、Anycastは、安定性ず信頌性に察する高い芁件の察象ずなる、高負荷のDNSサヌビスを構築するための最も安定した信頌性の高い゜リュヌションです。



.ruドメむンは、20ノヌドにグルヌプ化された35のAnycast DNSサヌバヌをサポヌトし、5぀のAnycastクラりドに分散されたす。この堎合、地理ベヌスの構築の原則が䜿甚されたす。ゞオキャスト。DNSノヌドを配眮するずきは、最もアクティブなナヌザヌに近い地理的に分散した堎所、サむトのサむトぞのロシアのプロバむダヌの最倧の集䞭、および空き容量の可甚性ずサむトずの察話の容易さにノヌドを移動するこずが想定されたす。



CDNを䜜成するにはどうすればよいですか



CDNは、ナヌザヌぞのコンテンツの配信を加速するサヌバヌのネットワヌクです。コンテンツ配信ネットワヌクは、すべおのサヌバヌを1぀のネットワヌクに接続し、コンテンツの読み蟌みを高速化したす。サヌバヌからナヌザヌたでの距離は、ダりンロヌド速床に重芁な圹割を果たしたす。



CDNを䜿甚するず、タヌゲットオヌディ゚ンスに最も近いサヌバヌを䜿甚できたす。これにより、埅ち時間が短瞮され、すべおの蚪問者のサむトコンテンツの読み蟌みが高速化されたす。これは、倧きなファむルやマルチメディアサヌビスを䜿甚するサむトにずっお特に重芁です。兞型的なCDNアプリケヌションは、eコマヌスず゚ンタヌテむンメントです。



CDNむンフラストラクチャで䜜成された远加サヌバヌのネットワヌクは、ナヌザヌのできるだけ近くに配眮されおおり、より安定した高速なデヌタ配信に貢献したす。統蚈によるず、CDNを䜿甚するず、CDNのないサむトず比范しお、サむトにアクセスする際の埅ち時間が70以䞊短瞮されたす。DNSを䜿甚しおCDNを䜜成する



方法独自のAnycast゜リュヌションを䜿甚しおCDNを蚭定するこずは、非垞に費甚のかかるプロゞェクトになる可胜性がありたすが、より安䟡なオプションがありたす。たずえば、GeoDNSず、䞀意のIPアドレスを持぀通垞のサヌバヌを䜿甚できたす。 GeoDNSサヌビスを䜿甚するず、DNSリゟルバヌの堎所ではなく、蚪問者の実際の堎所に基づいお決定が行われる、地理的に配眮されたCDNを䜜成できたす。米囜のサヌバヌのIPアドレスを米囜の蚪問者に衚瀺するようにDNSゟヌンを構成できたす。ペヌロッパの蚪問者には、ペヌロッパからのIPアドレスが衚瀺されたす。



GeoDNSを䜿甚するず、ナヌザヌのIPアドレスに応じお異なるDNS応答を返すこずができたす。これを行うために、DNSサヌバヌは、芁求の元のIPアドレスに基づいお異なるIPアドレスを返すように構成されおいたす。通垞、GeoIPデヌタベヌスは、芁求が行われた地域を決定するために䜿甚されたす。DNSを䜿甚したゞオロケヌションを䜿甚するず、近くのサむトからナヌザヌにコンテンツを送信できたす。



GeoDNSは、DNS芁求を行ったクラむアントのIPアドレス、たたはクラむアント芁求の凊理に䜿甚されるISPの再垰DNSサヌバヌのIPを定矩したす。囜/地域は、クラむアントのIPおよびGeoIPベヌスによっお決定されたす。次に、クラむアントは最も近いCDNサヌバヌのIPアドレスを取埗したす。GeoDNSの蚭定に぀いお詳しくは、こちらをご芧ください。



AnycastたたはGeoDNS



Anycastはコンテンツをグロヌバルに配信するための優れた方法ですが、特異性に欠けおいたす。これがGeoDNSの出番です。このサヌビスを䜿甚するず、ナヌザヌの堎所に基づいお䞀意の゚ンドポむントにナヌザヌを送信するルヌルを䜜成できたす。





䟋ペヌロッパのナヌザヌは別の゚ンドポむントに誘導されたす。



すべおのリク゚ストを削陀しお、ドメむンぞのアクセスを拒吊するこずもできたす。これは、特に、䟵入者を遮断するための迅速な方法です。



GeoDNSは、Anycastよりも正確な回答を提䟛したす。Anycastの堎合、最短ルヌトはホップ数によっお決定されたすが、GeoDNSでは、゚ンドナヌザヌのルヌティングは物理的な堎所に基づいおいたす。これにより、詳现なルヌティングルヌルを䜜成する際の埅ち時間が短瞮され、粟床が向䞊したす。



ドメむンに切り替えるず、ブラりザは最も近いDNSサヌバヌに接続したす。DNSサヌバヌは、ドメむンに応じお、サむトをロヌドするためのIPアドレスを発行したす。オンラむンストアが米囜ずペヌロッパで人気があり、そのためのDNSサヌバヌがペヌロッパにのみあるずしたす。次に、ストアのサヌビスを䜿甚したい米囜のナヌザヌは、最寄りのサヌバヌにリク゚ストを送信する必芁がありたす。たた、非垞に離れおいるため、回答を埅぀のに長い時間がかかりたす。サむトがすぐに読み蟌たれたせん。



GeoDNSサヌバヌが米囜にある堎合、ナヌザヌはすでにそれを参照しおいたす。答えは速く、サむトの読み蟌み速床に圱響したす。



米囜に既存のDNSサヌバヌがある状況では、米囜からのナヌザヌがこのドメむンにアクセスするず、目的のIPを提䟛する最も近いサヌバヌに接続したす。ナヌザヌはサむトのコンテンツを含むサヌバヌに誘導されたすが、コンテンツを含むサヌバヌは遠く離れおいるため、すぐには受信できたせん。



米囜でデヌタがキャッシュされたCDNサヌバヌをホストしおいる堎合、クラむアントのブラりザヌをロヌドするず、最も近いDNSサヌバヌに芁求が送信され、正しいIPアドレスが返送されたす。取埗したIPを持぀ブラりザは、最も近いCDNサヌバヌずメむンサヌバヌをアドレス指定し、CDNサヌバヌはキャッシュされたコンテンツをブラりザに送信したす。キャッシュされたコンテンツのロヌド䞭に、サむト党䜓をロヌドするために欠萜しおいるファむルがメむンサヌバヌから受信されたす。その結果、メむンサヌバヌから送信されるファむルがはるかに少なくなるため、サむトの読み蟌み時間が短瞮されたす。



特定のIPアドレスの正確な堎所を特定するこずは、必ずしも簡単な䜜業ではありたせん。さたざたな芁因が関係しおおり、IPアドレス範囲の所有者は、䞖界の反察偎でそれを発衚するこずを決定する堎合がありたす正しい堎所を取埗するには、デヌタベヌスが曎新されるのを埅぀必芁がありたす。 VPSプロバむダヌは、シンガポヌルのVPSに米囜にあるず思われるアドレスを割り圓おる堎合がありたす。



Anycastアドレスを䜿甚する堎合ずは異なり、配垃は、キャッシングサヌバヌぞの接続䞭ではなく、名前の解決䞭に行われたす。再垰サヌバヌがEDNSクラむアントサブネットをサポヌトしおいない堎合は、キャッシュサヌバヌに接続するナヌザヌではなく、その再垰サヌバヌの堎所が䜿甚されたす。



DNSのクラむアントサブネットはDNS拡匵機胜RFC7871であり、再垰DNSサヌバヌがクラむアント情報をDNSサヌバヌに送信する方法、具䜓的にはGeoDNSサヌバヌがクラむアントをより正確に芋぀けるために䜿甚できるネットワヌク情報を定矩したす。



ほずんどの堎合、ISPのDNSサヌバヌたたは地理的に近いDNSサヌバヌを䜿甚したすが、米囜の誰かが䜕らかの理由でオヌストラリアにあるDNSリゟルバヌを䜿甚するこずにした堎合、IPを取埗する可胜性が高くなりたす。オヌストラリアに最も近いサヌバヌアドレス。



GeoDNSを䜿甚する堎合は、これらの機胜に泚意するこずが重芁です。堎合によっおは、キャッシングサヌバヌずクラむアントの間の距離が長くなる可胜性がありたす。



抂芁CDNで耇数のVPSを組み合わせる堎合、最適な展開オプションは、すぐに䜿甚できるGeoDNS + Anycast機胜を備えたDNSサヌバヌバンドルを䜿甚するこずです。






All Articles