Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр

Anycast-ын талаар олон хүн сонссон байх. Сүлжээний хаяглалт, чиглүүлэлтийн энэ аргын тусламжтайгаар нэг IP хаягийг сүлжээн дэх олон серверт хуваарилдаг. Эдгээр серверүүдийг бие биенээсээ алслагдсан дата төвүүдэд ч байрлуулж болно. Anycast-ийн санаа нь хүсэлтийн эх үүсвэрийн байршлаас хамааран өгөгдлийг хамгийн ойрын сервер рүү (сүлжээний топологийн дагуу, илүү нарийвчлалтай BGP чиглүүлэлтийн протокол) илгээдэг. Тиймээс сүлжээний шилжилтийн тоо (хоп) болон саатал (хоцролт) зэргийг багасгах боломжтой.

Нэг ёсондоо дэлхийн олон дата төвөөс ижил замыг сурталчилдаг. Тиймээс үйлчлүүлэгчдийг BGP маршрутууд, дата төв дээр үндэслэн "хамгийн сайн" болон "хамгийн ойр" руу илгээх болно. Яагаад Anycast вэ? Яагаад Unicast-ын оронд Anycast ашигладаг вэ?

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Unicast нь нэг вэб сервертэй, дунд зэргийн ачаалалтай сайтад үнэхээр тохиромжтой. Гэсэн хэдий ч хэрэв үйлчилгээ нь сая сая захиалагчтай бол ихэвчлэн ижил IP хаягтай олон вэб сервер ашигладаг. Эдгээр серверүүд нь хүсэлтийг оновчтой болгохын тулд газарзүйн байршлаар хуваарилагдсан байдаг.

Энэ хувилбарт Anycast нь гүйцэтгэлийг сайжруулж (трафикийг хэрэглэгч рүү хамгийн бага сааталтайгаар илгээдэг), үйлчилгээний найдвартай байдлыг хангах (илүүдэл серверүүдийн улмаас) болон ачааллыг тэнцвэржүүлэх - олон сервер рүү чиглүүлэх нь ачааллыг үр дүнтэй хуваарилж, тэдгээрийн хурдыг сайжруулна. сайт.

Операторууд хэрэглэгчиддээ Anycast болон DNS дээр суурилсан янз бүрийн төрлийн ачааллын тэнцвэрийг санал болгодог. Үйлчлүүлэгчид сайтын газарзүйн байршлаас хамааран хүсэлт илгээх IP хаягийг зааж өгч болно. Энэ нь хэрэглэгчийн хүсэлтийг илүү уян хатан байдлаар түгээх боломжийг олгодог.

Өдөрт 100 хүсэлт гаргадаг онлайн дэлгүүр эсвэл алдартай блог гэх мэт ачааллыг (хэрэглэгч) хуваарилах шаардлагатай хэд хэдэн сайт байна гэж бодъё. Хэрэглэгчид тухайн сайт руу нэвтрэх бүсийг хязгаарлахын тулд та Geo Community сонголтыг ашиглаж болно. Энэ нь операторын маршрутыг зарлах бүс нутгийг хязгаарлах боломжийг танд олгоно.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Anycast ба Unicast: ялгаа

Anycast нь ихэвчлэн сүлжээний гүйцэтгэлийг сайжруулах чиглүүлэлтийн шийдвэр гаргахын тулд DNS (Домэйн нэрийн систем) болон CDN (Агуулга хүргэх сүлжээ) зэрэг програмуудад ашиглагддаг. Агуулга хүргэх сүлжээнүүд нь их хэмжээний траффиктай тулгардаг тул Anycast-ийг ашигладаг бөгөөд Anycast нь энэ тохиолдолд хэд хэдэн давуу талыг өгдөг (доорх талаар дэлгэрэнгүй). DNS дээр Anycast нь үйлчилгээний найдвартай байдал, алдааг тэсвэрлэх түвшинг мэдэгдэхүйц нэмэгдүүлэх боломжийг олгодог.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
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 Гб/с порт байгаа үед терабит траффик болон маш олон тооны хэрэглэгчдэд үйлчлэх цорын ганц арга зам юм. Нэг IP хаягтай 100 хост нь терабитийн урсгалыг боловсруулах боломжтой болно.

Тохиргоог удирдахад хялбар

Дээр дурдсанчлан Anycast-ын сонирхолтой хэрэглээ бол DNS юм. Сүлжээний зангилаанд хэд хэдэн өөр DNS сервер байрлуулах боломжтой боловч нэг DNS хаяг ашиглана уу. Эх сурвалж хаана байрлаж байгаагаас хамааран хүсэлтийг хамгийн ойрын зангилаа руу чиглүүлдэг. Энэ нь DNS серверийн доголдол гарсан тохиолдолд зарим урсгалыг тэнцвэржүүлж, нөөцийг нэмэгдүүлнэ. Тиймээс хаана байрлаж байгаагаас хамааран өөр өөр DNS серверүүдийг тохируулахын оронд нэг DNS серверийн тохиргоог бүх хостуудад түгээх боломжтой.

Anycast сүлжээг зөвхөн зайнаас хамаараад зогсохгүй серверийн хүртээмж, суурилуулсан холболтын тоо зэрэг параметр дээр үндэслэн хүсэлтийг чиглүүлэхээр тохируулж болно. эсвэл хариу өгөх хугацаа.

Үйлчлүүлэгч тал дээр Anycast технологийг ашиглахын тулд тусгай сервер, сүлжээ эсвэл тусгай бүрэлдэхүүн хэсэг шаардлагагүй. Гэхдээ Anycast бас сул талуудтай. Үүнийг хэрэгжүүлэх нь нэмэлт тоног төхөөрөмж, найдвартай үйлчилгээ үзүүлэгч, хөдөлгөөний зөв чиглүүлэлт шаарддаг нарийн төвөгтэй ажил гэж үздэг.

Цэвэр эх сурвалжаас алс холын үзэсгэлэнт газар хүртэл

Anycast нь хэрэглэгчдийг хамгийн бага хоцролт дээр үндэслэн чиглүүлдэг ч энэ нь хамгийн бага хоцролт гэсэн үг биш юм. Хоцролт нь илүү төвөгтэй хэмжигдэхүүн юм, учир нь нэг хоп араваас илүү байж болно.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Жишээ нь: Тив хоорондын харилцаа нь маш өндөр хоцролттой нэг хоцролттой байж болно.

Anycast нь ихэвчлэн DNS гэх мэт UDP-д суурилсан үйлчилгээнд ашиглагддаг. Хэрэглэгчийн хүсэлтийг BGP чиглүүлэлтүүд дээр үндэслэн "хамгийн сайн" болон "хамгийн ойр" дата төв рүү чиглүүлдэг.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Жишээ: 123.10.10.10 Anycast DNS IP хаягтай DNS клиент ажлын станц нь ижил Anycast IP хаягийг ашиглан байрлуулсан гурван DNS нэрийн серверийн хамгийн ойрын DNS-ийн нарийвчлалыг гүйцэтгэдэг. Хэрэв R1 эсвэл Сервер А бүтэлгүйтвэл DNS клиент пакетуудыг R2 ба R3-ээр дамжуулан хамгийн ойрын дараагийн DNS сервер рүү автоматаар дамжуулах болно. Нэмж дурдахад манай серверийн А руу чиглэсэн маршрутыг чиглүүлэлтийн хүснэгтээс хасч, энэ нэрийн серверийг цаашид ашиглахаас сэргийлнэ.

Байршуулах хувилбарууд

Хэрэглэгч аль серверт холбогдож байгааг тодорхойлоход ашигладаг хоёр ерөнхий схем байдаг:

  • Anycast сүлжээний давхарга. Хэрэглэгчийг хамгийн ойрын серверт холбоно. Энд хэрэглэгчээс сервер хүртэлх сүлжээний зам чухал.
  • Хэрэглээний түвшний Anycast. Энэ схемд серверийн бэлэн байдал, хариу өгөх хугацаа, холболтын тоо гэх мэт илүү тооцоолсон хэмжүүрүүд байдаг. Энэ нь сүлжээний статистик мэдээллийг өгдөг гадаад монитороос хамаарна.

Anycast дээр суурилсан CDN

Агуулга дамжуулах сүлжээнд Anycast-ийн хэрэглээ рүү буцъя. Anycast бол мэдээж сонирхолтой сүлжээний үзэл баримтлал бөгөөд дараагийн үеийн CDN үйлчилгээ үзүүлэгчдээс илүү их хүлээн зөвшөөрөгдөж байна.

CDN бол агуулгыг эцсийн хэрэглэгчдэд өндөр хүртээмжтэй, хоцрогдол багатай хүргэдэг серверүүдийн тархсан сүлжээ юм. Агуулга түгээх сүлжээнүүд нь өнөөдөр олон тооны онлайн мультимедиа үйлчилгээний үндэс суурь болж чухал үүрэг гүйцэтгэж байгаа бөгөөд хэрэглэгчид татаж авах хурд удаан байгааг тэсвэрлэх чадвар багасч байна. Видео болон дуут програмууд нь чичиргээ болон сүлжээний хоцролтод онцгой мэдрэмтгий байдаг.

CDN нь бүх серверүүдийг нэг сүлжээнд нэгтгэж, илүү хурдан контент ачаалах боломжийг олгодог. Заримдаа хэрэглэгчийн хүлээх хугацааг 5-6 секундээр багасгах боломжтой байдаг. CDN-ийн зорилго нь эцсийн хэрэглэгчдэд хамгийн ойр байгаа серверээс контентоор үйлчлэх замаар хүргэлтийг оновчтой болгох явдал юм. Энэ нь эцсийн хэрэглэгчийн байршилд тулгуурлан хамгийн ойрын серверийг сонгодог Anycast-тай маш төстэй юм. CDN үйлчилгээ үзүүлэгч бүр анхдагчаар Anycast-ыг ашигладаг юм шиг санагдаж байгаа ч бодит байдал дээр тийм биш юм.

HTTP/TCP гэх мэт протоколуудыг ашигладаг програмууд нь үүсгэсэн холболтод тулгуурладаг. Хэрэв шинэ Anycast зангилаа сонговол (жишээлбэл, сервер амжилтгүй болвол) үйлчилгээ тасалдаж болзошгүй. Тийм ч учраас Anycast-ыг өмнө нь UDP болон DNS зэрэг холболтгүй үйлчилгээнд ашиглахыг зөвлөж байсан. Гэсэн хэдий ч Anycast нь холболтод чиглэсэн протоколуудад сайн ажилладаг, жишээлбэл, TCP Anycast горимд сайн ажилладаг.

Зарим CDN үйлчилгээ үзүүлэгчид Anycast-д суурилсан чиглүүлэлт ашигладаг бол бусад нь DNS-д суурилсан чиглүүлэлт хийхийг илүүд үздэг: хэрэглэгчийн DNS сервер хаана байрлаж байгаагаас хамааран хамгийн ойрын серверийг сонгоно.

Hybrid болон олон өгөгдлийн төвийн дэд бүтэц нь Anycast-ын өөр нэг хэрэглээний тохиолдол юм. Үйлчилгээ үзүүлэгчээс хүлээн авсан Load Balancing IP хаяг нь үйлчилгээ үзүүлэгчийн мэдээллийн төв дэх өөр өөр хэрэглэгчийн үйлчилгээний IP хаягуудын хооронд ачааллыг хуваарилах боломжийг олгодог. Ямар ч төхөөрөмжийн хаягжилтын технологи нь ачаалал ихтэй үед илүү сайн гүйцэтгэл, алдааг тэсвэрлэх чадвар, олон тооны хэрэглэгчдэд хариу өгөх хугацааг оновчтой болгоход тусалдаг.

Эрлийз олон өгөгдлийн төвийн дэд бүтцэд та серверүүд эсвэл тусгай сервер дээрх виртуал машинуудаар дамжуулан траффик түгээх боломжтой.

Тиймээс дэд бүтцийг бий болгох техникийн шийдлүүдийн асар их сонголт байдаг. Та сайтын гүйцэтгэлийг оновчтой болгохын тулд бүлгийн дурын төхөөрөмжийг ашиглан олон дата төвд IP ачааллын тэнцвэржүүлэлтийг тохируулж болно.

Та дата төв бүрийн тархсан сервер бүрийн "жин"-ийг тодорхойлж, өөрийн дүрмийн дагуу траффикийг хуваарилж болно. Энэ тохиргоо нь тархсан серверийн парк байгаа үед ялангуяа ашигтай байдаг ба үйлчилгээний гүйцэтгэл өөр өөр байдаг. Энэ нь серверийн ажиллагааг сайжруулахын тулд траффикийг илүү олон удаа түгээх боломжийг олгоно.

Ping командыг ашиглан хяналтын системийг бий болгохын тулд датчикуудыг тохируулах боломжтой. Энэ нь администраторт өөрийн хяналтын горимыг тодорхойлж, дэд бүтцийн бүрэлдэхүүн хэсэг бүрийн статусын талаар илүү тодорхой харах боломжийг олгодог. Ийм байдлаар хүртээмжийн шалгуурыг тодорхойлж болно.

Гибрид дэд бүтцийг бий болгох боломжтой: заримдаа корпорацийн сүлжээнд арын оффисыг орхиж, интерфэйсийн хэсгийг үйлчилгээ үзүүлэгч рүү шилжүүлэх нь тохиромжтой байдаг.

Ачааллыг тэнцвэржүүлэх, дамжуулсан өгөгдлийг шифрлэх, сайтын зочлогчдын хоорондын харилцааны аюулгүй байдал, корпорацийн дэд бүтцийн хувьд SSL сертификат нэмэх боломжтой. Дата төвүүдийн хооронд ачааллыг тэнцвэржүүлэх тохиолдолд SSL-г бас ашиглаж болно.

Хаягийн ачааллыг тэнцвэржүүлэх үйлчилгээтэй Anycast үйлчилгээг ISP-ээс авах боломжтой. Энэ функц нь хэрэглэгчдийн байршлаас хамааран апп-уудтай харилцах арга замыг сайжруулахад тусална. Дата төвд ямар үйлчилгээ үзүүлэх боломжтойг зарлахад хангалттай бөгөөд урсгалыг хамгийн ойрын дэд бүтэц рүү шилжүүлэх болно. Жишээлбэл, Франц эсвэл Хойд Америкт тусгай зориулалтын серверүүд байгаа бол үйлчлүүлэгчдийг сүлжээн дэх хамгийн ойрын сервер рүү чиглүүлэх болно.

Anycast-ийг ашиглах сонголтуудын нэг бол оператор (PoP) байх цэгийн оновчтой сонголт юм. авчиръя жишээ нь. LinkedIn (ОХУ-д хориглогдсон) нь зөвхөн гар утасны болон вэб программуудын гүйцэтгэл, хурдыг сайжруулахаас гадна контентыг илүү хурдан хүргэх сүлжээний дэд бүтцийг сайжруулахыг эрмэлздэг. Энэхүү динамик контентыг хүргэхийн тулд LinkedIn нь PoPs – Presence Points-ийг ихээхэн ашигладаг. Anycast нь хэрэглэгчдийг хамгийн ойрын PoP руу чиглүүлэхэд ашиглагддаг.

Учир нь Unycast-ын хувьд LinkedIn PoP бүр өвөрмөц IP хаягтай байдаг. Дараа нь хэрэглэгчдэд DNS ашиглан газарзүйн байршлаас хамааран PoP оноодог. Асуудал нь DNS ашиглах үед АНУ-ын хэрэглэгчдийн 30 орчим хувь нь оновчтой бус PoP руу шилжсэн явдал юм. Anycast-ыг үе шаттайгаар нэвтрүүлсний ачаар оновчтой бус PoP хуваарилалт 31% -иас 10% болж буурсан.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Туршилтын туршилтын үр дүнг графикт үзүүлэв, энд y тэнхлэг нь PoP-ийн оновчтой хуваарилалтын хувь юм. Anycast АНУ-ын олон мужид "томссон" үед хамгийн оновчтой PoP руу чиглэсэн хөдөлгөөний хувь сайжирсан.

Anycast сүлжээний хяналт

Онолын хувьд Anycast сүлжээнүүд нь энгийн: олон физик серверүүдэд ижил IP хаяг өгөгддөг бөгөөд BGP нь маршрутыг тодорхойлоход ашигладаг. Гэхдээ Anycast платформуудын хэрэгжилт, дизайн нь ялангуяа алдааг тэсвэрлэдэг Anycast сүлжээнүүдийн хувьд нарийн төвөгтэй байдаг. Алдаа дутагдлыг хурдан илрүүлж, тусгаарлахын тулд Anycast сүлжээг үр дүнтэй хянах нь бүр ч хэцүү байдаг.

Хэрэв үйлчилгээнүүд контентоо үйлчлэхийн тулд гуравдагч талын CDN үйлчилгээ үзүүлэгчийг ашигладаг бол сүлжээний гүйцэтгэлийг хянаж, баталгаажуулах нь тэдний хувьд маш чухал юм. Anycast CDN мониторинг нь аль дата төв контентоор үйлчилж байгааг ойлгохын тулд төгсгөл хүртэлх хоцролт болон эцсийн өмнөх хоп шинж чанарыг хэмжихэд чиглэгддэг. HTTP серверийн толгойг задлах нь өгөгдөл хаанаас ирж байгааг тодорхойлох өөр нэг арга юм.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Жишээ нь: CDN серверийн байршлыг харуулсан HTTP хариултын толгой хэсэг.

Жишээлбэл, CloudFlare нь HTTP Response мессежүүдэд өөрийн CF-Ray толгойг ашигладаг бөгөөд энэ нь хүсэлт гаргасан мэдээллийн төвийн заалтыг агуулдаг. Zendesk-ийн хувьд Сиэтл мужийн CF-Ray толгой нь CF-RAY: 2a21675e65fd2a3d-SEA, Амстердамын хувьд CF-RAY: 2a216896b93a0c71-AMS байна. Та мөн агуулгын хаана байрлаж байгааг тодорхойлохын тулд HTTP хариултын HTTP-X толгойг ашиглаж болно.

Бусад хаяглах аргууд

Хэрэглэгчийн хүсэлтийг тодорхой сүлжээний эцсийн цэг рүү чиглүүлэх өөр хаяглах аргууд байдаг:

Юникаст

Өнөөдөр ихэнх интернет энэ аргыг ашигладаг. Unicast - Unicast дамжуулалт, IP хаяг нь сүлжээнд зөвхөн нэг тодорхой зангилаатай холбоотой байдаг. Үүнийг нэг нэгээр нь тааруулах гэж нэрлэдэг. 

Мультикаст

Multicast нь нэгээс олон-олон эсвэл олон-олон харилцааг ашигладаг. Multicasting нь илгээгчээс хүссэн хүсэлтийг сонгосон өөр өөр цэгүүд рүү нэгэн зэрэг илгээх боломжийг олгодог. Энэ нь үйлчлүүлэгчид файлыг хэд хэдэн хостоос нэгэн зэрэг татаж авах боломжийг олгодог (энэ нь аудио эсвэл видео дамжуулахад хэрэгтэй). Multicast нь ихэвчлэн Anycast-тай андуурдаг.Гэхдээ хамгийн гол ялгаа нь Anycast нь илгээгчийг олон зангилаатай байсан ч тодорхой нэг цэг рүү чиглүүлдэгт оршино.

Өргөн нэвтрүүлгийн

Нэг илгээгчээс датаграмм нь өргөн нэвтрүүлгийн хаягтай холбоотой бүх төгсгөлийн цэгүүд рүү чиглэгддэг. Сүлжээ нь өргөн нэвтрүүлгийн бүх хүлээн авагчдад (ихэвчлэн нэг дэд сүлжээнд) хүрэхийн тулд датаграммуудыг автоматаар хуулбарладаг.

геокаст

Geocast нь Multicast-тай зарим талаараа төстэй: илгээгчийн хүсэлтийг олон төгсгөлийн цэг рүү нэгэн зэрэг илгээдэг. Гэсэн хэдий ч ялгаа нь хаяг хүлээн авагч нь газарзүйн байршлаар тодорхойлогддог. Энэ нь зарим гар утасны үе тэнгийн чиглүүлэлтийн протоколуудад ашиглагддаг олон дамжуулалтын тусгай хэлбэр юм.

Geo Router нь үйлчилгээнийхээ талбайг тооцоолж, ойролцоогоор гаргадаг. Georouters, үйлчилгээний газар солилцох, чиглүүлэлтийн хүснэгтийг барих. Georouters систем нь шаталсан бүтэцтэй байдаг.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Unicast, Multicast болон Broadcast.

Anycast технологийг ашиглах нь DNS-ийн найдвартай байдал, уян хатан байдал, аюулгүй байдлыг сайжруулдаг. Энэхүү технологийг ашиглан операторууд DNS-д суурилсан ачаалал тэнцвэржүүлэх янз бүрийн үйлчилгээг хэрэглэгчиддээ санал болгодог. Хяналтын самбар дээр та газарзүйн байршлаас хамааран хүсэлт илгээх IP хаягийг зааж өгч болно. Энэ нь хэрэглэгчдэд хэрэглэгчийн хүсэлтийг илүү уян хатан байдлаар түгээх боломжийг олгоно.

Зарим тээвэрлэгчид оршин суух цэг бүр (POP) чиглүүлэлтийн хяналтыг ашигладаг: систем нь POP-ийн хамгийн богино орон нутгийн болон дэлхийн маршрутуудыг автоматаар шинжилж, хамгийн бага сааталтай газарзүйн байршлаар дамждаг.

Одоогийн байдлаар Anycast бол тогтвортой байдал, найдвартай байдлын өндөр шаардлага бүхий өндөр ачаалалтай DNS үйлчилгээг бий болгох хамгийн тогтвортой бөгөөд найдвартай шийдэл юм.

.ru домэйн нь таван Anycast үүлэнд тархсан 35 зангилаа болгон бүлэглэсэн 20 Anycast DNS серверийг дэмждэг. Энэ тохиолдолд газарзүйн үндсэн дээр барих зарчмыг ашигладаг, i.e. геокаст. DNS зангилаануудыг байрлуулахдаа тэдгээрийг хамгийн идэвхтэй хэрэглэгчдийн ойролцоо газарзүйн хувьд тархсан байршилд шилжүүлэх, зангилааны байршлын цэг дээр Оросын үйлчилгээ үзүүлэгчдийн хамгийн их төвлөрөл, түүнчлэн чөлөөт хүчин чадал, сайттай харилцах хялбар байдал зэргийг харгалзан үзэхээр төлөвлөж байна.

CDN-г хэрхэн бүтээх вэ?

CDN нь контентыг хэрэглэгчдэд хүргэхийг хурдасгадаг серверүүдийн сүлжээ юм. Агуулга хүргэх сүлжээ бүх серверүүдийг нэг сүлжээнд нэгтгэж, илүү хурдан контент ачаалах боломжийг олгодог. Татаж авах хурдад серверээс хэрэглэгч хүртэлх зай чухал үүрэг гүйцэтгэдэг.

CDN нь зорилтот хэрэглэгчдэд хамгийн ойр серверүүдийг ашиглах боломжийг олгодог. Энэ нь хүлээх хугацааг багасгаж, бүх зочдод зориулсан сайтын агуулгыг ачааллыг хурдасгахад тусалдаг бөгөөд энэ нь том файл эсвэл мультимедиа үйлчилгээтэй сайтуудад онцгой ач холбогдолтой юм. CDN-ийн ердийн хэрэглээ бол цахим худалдаа, зугаа цэнгэл юм.

CDN дэд бүтцэд бий болсон нэмэлт серверүүдийн сүлжээ нь хэрэглэгчдэд аль болох ойрхон байрладаг нь өгөгдлийг илүү тогтвортой, хурдан хүргэхэд хувь нэмэр оруулдаг. Статистикийн мэдээгээр CDN ашиглах нь CDN-гүй сайтуудтай харьцуулахад сайт руу нэвтрэх саатлыг 70% -иар бууруулдаг.

Хэрхэн DNS ашиглан CDN үүсгэх? Өөрийн Anycast шийдлийг ашиглан CDN тохируулах нь нэлээд үнэтэй байж болох ч хямд сонголтууд байдаг. Жишээлбэл, та GeoDNS болон өвөрмөц IP хаягтай ердийн серверүүдийг ашиглаж болно. GeoDNS үйлчилгээний тусламжтайгаар та DNS шийдэгчийн байршлаас илүү зочны бодит байршилд тулгуурлан шийдвэр гаргадаг газарзүйн байршлыг идэвхжүүлсэн CDN үүсгэж болно. Та DNS бүсээ тохируулж АНУ-ын зочдод АНУ-ын серверийн IP хаягийг харуулах боломжтой бол Европын зочид Европоос ирсэн IP хаягийг харах болно.

GeoDNS-ийн тусламжтайгаар та хэрэглэгчийн IP хаягаас хамааран өөр өөр DNS хариултуудыг буцаах боломжтой. Үүнийг хийхийн тулд DNS сервер нь хүсэлтийн эх IP хаягаас хамааран өөр өөр IP хаягуудыг буцаахаар тохируулагдсан. Ихэвчлэн GeoIP мэдээллийн санг хүсэлт гаргасан бүс нутгийг тодорхойлоход ашигладаг. DNS ашиглан газарзүйн байршил нь танд хамгийн ойрын сайтаас хэрэглэгчдэд контент илгээх боломжийг олгодог.

GeoDNS нь DNS хүсэлтийг илгээсэн үйлчлүүлэгчийн IP хаяг эсвэл үйлчлүүлэгчийн хүсэлтийг боловсруулахад ашигладаг үйлчилгээ үзүүлэгчийн рекурсив DNS серверийн IP хаягийг тодорхойлдог. Улс/бүс нутгийг үйлчлүүлэгчийн IP болон GeoIP баазаар тодорхойлно. Дараа нь үйлчлүүлэгч хамгийн ойрын CDN серверийн IP хаягийг авна. GeoDNS-ийг тохируулах талаар дэлгэрэнгүй уншина уу энд.

Anycast эсвэл GeoDNS?

Anycast нь дэлхийн хэмжээнд агуулгыг хүргэх гайхалтай арга боловч өвөрмөц чанаргүй байдаг. Энд GeoDNS аврах ажилд ирдэг. Энэ үйлчилгээ нь хэрэглэгчдийг байршилд нь тулгуурлан өвөрмөц төгсгөлийн цэг рүү илгээх дүрмийг бий болгох боломжийг олгодог.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр
Жишээ: Европ дахь хэрэглэгчдийг өөр төгсгөлийн цэг рүү чиглүүлдэг.

Та мөн бүх хүсэлтийг орхисноор домэйн руу нэвтрэх эрхийг үгүйсгэж болно. Ялангуяа энэ нь халдагчдыг таслах хурдан арга юм.

GeoDNS нь Anycast-аас илүү үнэн зөв хариулт өгдөг. Хэрэв Anycast-ын хувьд хамгийн богино замыг үсрэх тоогоор тодорхойлдог бол GeoDNS-д эцсийн хэрэглэгчдэд зориулсан чиглүүлэлт нь тэдний физик байршлаас хамааран хийгддэг. Энэ нь хоцролтыг багасгаж, нарийн чиглүүлэлтийн дүрмийг үүсгэх үед нарийвчлалыг сайжруулдаг.

Домэйн руу шилжих үед хөтөч нь хамгийн ойрын 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-г ашиглахыг хүсвэл зарим тохиолдолд кэш сервер болон үйлчлүүлэгчийн хоорондох зайг ихэсгэж болох тул эдгээр функцуудыг мэдэж байх нь чухал юм.

Дүгнэлт: Хэрэв та олон VPS-ийг CDN-д нэгтгэхийг хүсвэл GeoDNS + Anycast функцтэй DNS серверийн багцыг ашиглах нь хамгийн сайн байршуулах сонголт юм.

Anycast vs Unicast: аль нь тус бүрийг сонгох нь дээр

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх