ความแตกต่างระหว่าง Anycast และ GeoDNS / GeoIP wrt HA คืออะไร?


17

จากคำอธิบายของวิกิพีเดียของAnycastซึ่งรวมถึงการกระจายของการจับคู่ชื่อโดเมนกับหลาย IP ในเซิร์ฟเวอร์ DNS หลายแห่งรวมถึงการตอบกลับลูกค้าด้วยเซิร์ฟเวอร์ที่ใกล้ที่สุดทางภูมิศาสตร์ (หรือเร็วที่สุด)

ในบริบทของการเผยแพร่ทั่วโลกไซต์ที่มีความพร้อมใช้งานสูงเช่น google.com (หรือบริการ CDN ใด ๆ ที่มีตำแหน่งขอบทั่วโลกจำนวนมาก) สิ่งนี้ฟังดูเหมือนว่าจะมีคุณสมบัติหลักสองอย่างที่จำเป็น

บริการ DNS เช่น Route53, EasyDNS และ DNSMadeEasy ของ Amazon โฆษณาทั้งหมดด้วยตนเองว่าเป็นเครือข่ายที่เปิดใช้งาน Anycast

ดังนั้นข้อสันนิษฐานของฉันคือแต่ละบริการ DNS เหล่านี้ให้คุณสมบัติที่น่าสนใจสองอย่างแก่ฉัน: การแมปหลาย IP กับโดเมนและการกำหนดเส้นทางไคลเอ็นต์ไปยังโหนดที่ใกล้เคียงที่สุด

อย่างไรก็ตามแต่ละบริการเหล่านี้ดูเหมือนจะแยกฟังก์ชันการทำงานทั้งสองนี้โดยอ้างถึงบริการที่ 2 (การกำหนดเส้นทางไคลเอนต์ไปยังโหนดที่ใกล้ที่สุด) เป็น "GeoDNS", "GeoIP" หรือ "Global Traffic Director" และคิดค่าบริการเพิ่มเติม

หากผู้เช่าหลักของระบบที่มีความสามารถ Anycast ทำเช่นนี้แล้วทำไมฟังก์ชั่นนี้จึงถูกจัดสรรให้เป็นคุณสมบัติพิเศษนี้? คุณลักษณะ "GeoDNS" นี้ทำอะไรที่บริการ Anycast DNS มาตรฐานจะไม่ทำ (ตามคำจำกัดความของ Anycast จาก Wikipedia - ฉันเข้าใจว่ากำลังโฆษณาอะไรไม่ใช่เพราะมันไม่ได้บอกเป็นนัยแล้ว)

ฉันสับสนเป็นพิเศษเมื่อบริการ DNS เช่น Route53 ที่ไม่รองรับคุณสมบัติ "GeoDNS" ที่คลุมเครือนี้แสดงรายการฟังก์ชันการทำงานเช่น:

รวดเร็ว - การใช้เครือข่าย anycast ทั่วโลกของเซิร์ฟเวอร์ DNS ทั่วโลก Route 53 ได้รับการออกแบบเพื่อกำหนดเส้นทางผู้ใช้ของคุณไปยังตำแหน่งที่เหมาะสมโดยอัตโนมัติตามเงื่อนไขของเครือข่าย เป็นผลให้บริการมีเวลาตอบสนองการตอบแบบสอบถามต่ำสำหรับผู้ใช้ปลายทางของคุณรวมถึงความล่าช้าในการปรับปรุงต่ำสำหรับความต้องการการจัดการระเบียน DNS ของคุณ

... ซึ่งเสียงเหมือนสิ่งที่ GeoDNS มีจุดมุ่งหมายที่จะทำ แต่ลูกค้าทางภูมิศาสตร์กำกับคือสิ่งที่พวกเขาอย่างชัดเจนไม่สนับสนุนมันยัง

ในที่สุดฉันกำลังมองหาคุณสมบัติสองอย่างต่อไปนี้จากผู้ให้บริการ DNS:

  1. จับคู่ที่อยู่ IP หลายรายการกับชื่อโดเมนเดียว (เช่น google.com, amazon.com เป็นต้น)
  2. ใช้บริการ DNS ที่จะตอบสนองต่อคำขอของลูกค้าสำหรับโดเมนนั้นด้วยที่อยู่ IP ของเซิร์ฟเวอร์ที่ใกล้ที่สุดไปยังผู้รับ

ตามที่กล่าวมาดูเหมือนว่านี่เป็นส่วนหนึ่งของบริการ DNS "Anycast" (ซึ่งบริการเหล่านี้ทั้งหมด) แต่คุณสมบัติและการตลาดที่ฉันเห็นจากพวกเขาแนะนำเป็นอย่างอื่นทำให้ฉันคิดว่าฉันต้องเรียนรู้เพิ่มเติมเล็กน้อยเกี่ยวกับวิธี DNS ทำงานก่อนตัดสินใจเลือกการใช้งาน

ขอบคุณล่วงหน้าสำหรับคำชี้แจงใด ๆ

คำตอบ:


17

ประโยชน์หลักของ GeoDNS คือการแก้ไขชื่อเดียวกันกับที่อยู่ IP ที่แตกต่างกันตามที่อยู่ IP ของผู้ร้องขอ

เซิร์ฟเวอร์ Anycasted DNS จะส่งคืนที่อยู่ IP เดียวกันโดยไม่คำนึงว่าใครเป็นผู้ถาม

ทั้งสองทำงานในเลเยอร์เครือข่ายที่ต่างกัน Anycast อยู่ต่ำกว่า GeoDNS เนื่องจากไม่ทราบตำแหน่งของที่อยู่ IP ของผู้ร้องขอเพียงวางไว้ในไดอะแกรมเครือข่าย สิ่งที่อาจใกล้เคียงกับเซิร์ฟเวอร์ DNS อาจไม่ใกล้กับทรัพยากรที่ถูกร้องขอและเซิร์ฟเวอร์ Anycasted DNS ไม่มีวิธีที่จะบอกสิ่งนี้

GeoDNS ใช้แผนที่ของแหล่งที่ตั้งของทรัพยากรและดำเนินการทางตรรกะเพื่อกำหนดว่าทรัพยากรใดที่อยู่ใกล้ที่สุดกับที่อยู่ IP ที่ร้องขอจากนั้นส่งคืนที่อยู่ IP นั้น

นอกจากว่าคุณกำลังจัดวางเซิร์ฟเวอร์ DNS ของคุณด้วยทรัพยากรเครือข่ายของคุณสิ่งที่อยู่ใกล้กับเซิร์ฟเวอร์ DNS จะไม่ใกล้เคียงกับทรัพยากรเสมอไปดังนั้นการใช้ Anycast เนื่องจากวิธีการระบุตำแหน่งข้อมูลของคุณนั้นมีประสิทธิภาพน้อยกว่า GeoDNS


โดยสรุปฉันไม่ได้พิจารณาขั้นตอนการแก้ไขที่อยู่ 2 ขั้นตอน (ค้นหาเซิร์ฟเวอร์ DNS เองก่อนจากนั้นค้นหาเซิร์ฟเวอร์เป้าหมาย) ขอบคุณ!
Riyad Kalla

6

มุมมองการออกอากาศ BGP ช่วยให้ลูกค้าส่งคำขอไปยังเซิร์ฟเวอร์ DNS ที่กำหนดและรับคำขอนั้นส่งไปยังอินสแตนซ์ใกล้เคียงของเซิร์ฟเวอร์ DNS โดยใช้ตารางเส้นทาง BGP หวังว่าจะได้รับการตอบกลับอย่างรวดเร็ว

อย่างไรก็ตามเซิร์ฟเวอร์ DNS ol 'ปกติที่มีการกระจายทางภูมิศาสตร์และการออกอากาศไม่ได้มีความสามารถในการตอบแบบสอบถามที่แตกต่างกันขึ้นอยู่กับตำแหน่งของลูกค้าที่ร้องขอ - นี่เป็นคุณสมบัติพิเศษที่บริการ "Geo-DNS" เหล่านั้นมีค่าใช้จ่ายเพิ่มเติม คุณสามารถส่งลูกค้าไปยังอินสแตนซ์ของบริการที่อยู่ใกล้พวกเขา

เหตุผลที่คุณสมบัตินี้มีอยู่คือการออกอากาศ BGP ทำงานได้ดีสำหรับบางสิ่งที่ไร้รัฐเช่น DNS ซึ่งรวดเร็วและสกปรกและไม่ต้องการการเชื่อมต่อหรือเซสชันคงอยู่ แต่สำหรับเว็บเซิร์ฟเวอร์คุณต้องการติดอินสแตนซ์ทั่วโลก และตรวจสอบให้แน่ใจว่าไคลเอนต์ที่กำหนดจะยึดติดกับอินสแตนซ์เฉพาะ - การเปลี่ยนเส้นทางในตารางกลาง BGP ทั่วโลกการเชื่อมต่อจะทำให้การเชื่อมต่อ TCP หยุดเซสชันแอปพลิเคชันเว็บและโดยทั่วไปจะทำให้เกิดความเสียหาย โดยทั่วไป anycast ไม่ได้ใช้สำหรับเว็บเซิร์ฟเวอร์ด้วยเหตุนี้

วิธีที่ดีที่สุดคือให้ผู้ใช้ในเขต X พร้อม IP สำหรับอินสแตนซ์ใน Country X ผ่าน DNS ซึ่งเป็นสิ่งที่คุณใช้จ่ายเงินสำหรับบริการ Geo-DNS


4

ตามเนื้อผ้าคุณจะมีเซิร์ฟเวอร์ DNS หลายตัว ลูกค้าจะเลือกอย่างสุ่มและถามที่อยู่ IP ของเว็บเซิร์ฟเวอร์ของคุณ นี่เป็นสิ่งที่ดีถ้าเซิร์ฟเวอร์ DNS นั้นอยู่ใกล้กับไคลเอ็นต์ แต่ก็ไม่ดีถ้า - ตามปกติแล้ว - เซิร์ฟเวอร์ DNS นั้นอยู่ไกลจากไคลเอนต์ ไม่ว่าจะด้วยวิธีใดไคลเอ็นต์จะได้รับที่อยู่ IP เดียวกันเป็นคำตอบ

Anycast ช่วยให้เซิร์ฟเวอร์หลายเครื่องตอบสนองต่อที่อยู่ IP เดียวกัน ด้วย anycast DNS เมื่อไคลเอนต์พยายามพูดคุยกับเนมเซิร์ฟเวอร์ของคุณเนมเซิร์ฟเวอร์ที่ใกล้ที่สุด / เร็วที่สุดจะตอบสนอง ซึ่งหมายความว่าลูกค้าจะได้รับการตอบสนองอย่างรวดเร็วต่อการค้นหา DNS ของเขา อย่างไรก็ตามเขาจะยังคงได้รับคำตอบเดียวกันกับการสืบค้น DNS ของเขาเสมอ - IP ของเซิร์ฟเวอร์ของคุณ หากเซิร์ฟเวอร์ของคุณอยู่ไกลจากไคลเอนต์ประสบการณ์ของไคลเอ็นต์อาจไม่เหมาะสม

GeoDNS ช่วยให้เซิร์ฟเวอร์ DNS ตอบสนองด้วยที่อยู่ IP ที่แตกต่างกันขึ้นอยู่กับว่าลูกค้าอยู่ที่ไหน (เห็นได้ชัดว่าสิ่งนี้ต้องการให้คุณมีเซิร์ฟเวอร์ที่กระจายตามพื้นที่หลายแห่ง) GeoDNS ไม่ได้บ่งบอกถึงการถ่ายทอดใด ๆ ถึงแม้ว่าโดยทั่วไปแล้วคุณจะปรับใช้ทั้งคู่เพื่อให้ลูกค้าได้รับการตอบคำถาม DNS ที่อยู่ IP ของเว็บเซิร์ฟเวอร์ใกล้เคียงทางภูมิศาสตร์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.