DNS Anycast là gì? Một số ttrường hợp thay thế cho Anycast DNS

1577
04-10-2018
DNS Anycast là gì? Một số ttrường hợp thay thế cho Anycast DNS

Khi bạn nhập www.diachi.com vào trình duyệt và nhấn enter, trang web đó sẽ được hiển thị trong trình duyệt của bạn (có thể) sau vài giây. Và để bạn có thể xem được nội dung hiển thị trên trang, có rất nhiều công việc cần phải thực hiện phía sau để định tuyến yêu cầu của bạn. Trong đó, giao thức cổng nối (BGP) sẽ đảm bảo rằng yêu cầu của bạn đến được server lưu trữ website đó thông qua internet theo một lộ trình tốt nhất.

Ngoài ra, cần có một số phương pháp khác nữa để đến server đích, và trong bài viết này, chúng ta sẽ thảo luận chi tiết về một trong số các phương pháp đó, phương pháp anycast DNS. Cùng Bizfly Cloud tìm hiểu những thông tin về  Anycast ngay tại bài viết này nhé. 

Anycast DNS là gì?

Anycast DNS hay DNS Anycast là thuật toán định tuyến lưu lượng truyền tải sử dụng để phân phối nhanh nội dung website, thông báo địa chỉ IP riêng lẻ trên nhiều node. Cụ thể, gói tin sẽ được chuyển tới node gần nhất thông qua thuật toán định tuyến để gửi tới địa chỉ gửi theo bất kỳ hướng nào. Các yêu cầu của người dùng sẽ được chuyển đến các node cụ thể dựa trên một số yếu tố như dung lượng và tình trạng của máy chủ, khoảng cách giữa máy chủ và khách truy cập trang.

Một số ưu điểm nổi bật của định tuyến theo anycast

- Kết nối nhanh hơn: Tạo đường truyền người dùng thông qua node trung gian gần nhất giúp giảm thiểu round-trip time (RTT) – thời gian nhận và gửi phản hổi. Từ đó giảm thiểu các hop và độ trễ.

- Đơn giản hóa việc cấu hình server: Anycast cho phép việc cấu hình một DNS server đơn lẻ được phân phối thông qua toàn bộ các node trên hệ thống mạng.

- Tính sẵn sàng cao: Thông báo một địa chỉ IP trên nhiều node sẽ tạo ra các bản sao dự phòng, nhờ vậy cung cấp khả năng phục hồi mạnh mẽ trong trường hợp 1 node bị quá tải hoặc chịu lỗi.

- Hạn chế Ddos: Anycast cũng cung cấp khả năng hạn chế các DDoS từ bên trong nhờ hỗ trợ chịu lỗi dự phòng nếu 1 node bị tấn công hoặc bị hỏng.

Các trường hợp thay thế cho Anycast DNS: Unicast và Multicast

Cả unicast và multicast là các giải pháp định tuyến lưu lượng truyền tải hiệu quả, tuy vậy, các giải pháp này vẫn tồn tại một số hạn chế dẫn đến chúng ít được sử dụng hơn so với anycast.

Unicast là gì?

Unicast là một khái niệm chỉ việc gán một node duy nhất cho mỗi địa chỉ IP riêng lẻ và sau đó kết nối người gửi với người nhận sử dụng các định tuyến tĩnh. Bất kể yêu cầu ban đầu là gì, nó sẽ luôn đi qua một đường dẫn định tuyến. Trong mô hình này, sẽ chỉ có một người nhận và một người gửi, một host sẽ nhận toàn bộ dữ liệu được truyền đến từ một host khác.

Giải pháp này ẩn chứa một số vấn đề bởi một số lý do cụ thể. Nếu một đường dẫn node trở nên quá tải hoặc gặp lỗi, các kênh giao tiếp sẽ lập tức bị cắt ngắn.

Thêm vào đó, các kết nối đơn lẻ giữa các node với một host server có thể sẽ là các tài nguyên chuyên dụng, đặc biệt là khi file có dung lượng lớn hoặc các ứng dụng được phân phối trên quy mô lớn.

DNS Anycast là gì? Anycast giúp truyền tải nội dung tới người dùng nhanh hơn như thế nào? - Ảnh 1.

Multicast là gì?

Trong định tuyến multicast, một IP nguồn sẽ gửi data tới một node multicast trung gian, node này sau đó sẽ xác minh và phân phối dữ liệu tới một nhóm người nhận, hay có thể hiểu là các đường truyền từ một nguồn tới nhiều đích khác nhau.

Trái với unicast, multicast có thể mở rộng được – IP nguồn chỉ cần gửi mỗi packet một lần để packet đó được phân phối tới đông đảo người dùng. Nhờ vậy, multicast trở thành một giải pháp khả thi cho các luồng dữ liệu lớn hơn như phát trực tuyến video, giao dịch chứng khoán trực tuyến và các chương trình trò chơi.

Tuy nhiên, có một vài hạn chế đối với định tuyến multicast như sau: Trong trường hợp một node bị quá tải hoặc chịu lỗi, luồng dữ liệu sẽ cần phải được điều hướng, dẫn đến thời gian chờ tăng lên đáng kể. Hơn nữa, chi phí dành cho vận hành multicast tương đối cao.

>>> Có thể bạn quan tâm: Tại sao có thể giảm băng thông khi sử dụng CDN?

Anycast DNS

Với Unicast, các trình phân giải máy khách DNS (DNS client resolver) có thể được cấu hình với nhiều máy chủ định danh DNS đích. Trong trường hợp resolver không nhận được bất kỳ phản hồi nào từ máy chủ đầu tiên trong danh sách, nó thường sẽ chờ đến khi hết thời gian trước khi chuyển sang máy chủ thứ hai (và các máy chủ tiếp theo) trong danh sách resolver.

Trong lần tiếp theo, resolver sẽ phải thực hiện tra cứu, nó sẽ không "nhớ" được các máy chủ trong danh sách không phản hồi và sẽ bắt đầu truy vấn với máy chủ đầu tiên trong danh sách cho dù server đó vẫn không khả dụng. Tùy thuộc vào hệ điều hành của máy khách, mỗi lần có thể mất từ một đến năm giây khi quét danh sách resolver, thử máy chủ lỗi.

Các DNS client resolver được cấu hình với các địa chỉ anycast gần như loại bỏ được độ trễ này khi resolution được xử lý bởi giao thức định tuyến. Trong sơ đồ bên dưới một máy khách trạm DNS đơn lẻ, được cấu hình với địa chỉ IP DNS anycast 123.10.10.10, cho thấy DNS resolution so với ba máy chủ DNS định danh gần nhất được triển khai với cùng địa chỉ IP anycast.

DNS Anycast là gì? Anycast giúp truyền tải nội dung tới người dùng nhanh hơn như thế nào? - Ảnh 2.

Client DNS resolver có thể phân giải một trong ba máy chủ DNS bất kỳ được hiển thị ở trên. Định tuyến lớp 3 sẽ gửi các gói tin của máy khách DNS thông qua bộ định tuyến R1 theo cấu trúc liên kết định tuyến. Nếu router R1 hoặc Máy chủ A không lỗi, các gói tin của client DNS sẽ tự động được định tuyến lại tới máy chủ DNS gần nhất thông qua các bộ định tuyến R2 và R3. Ngoài ra, lộ trình đến máy chủ A sẽ bị xóa khỏi bảng định tuyến, do đó ngăn việc tiếp tục sử dụng máy chủ định danh đó (trong ví dụ này là máy chủ A). Máy chủ A sẽ không được sử dụng cho đến khi được sửa lỗi và các tuyến địa chỉ IP anycast sẽ được phát lại vào mạng.

Lấy một ví dụ minh họa: Tưởng tượng đôi giày bạn muốn đang có sẵn và được bán ở tất cả các chi nhánh trong chuỗi cửa hàng. Cũng giống như trong anycast, bạn sẽ có thể được phục vụ trên nhiều website giống hệt nhau, không phân biệt ưu tiên. Vì vậy, khi bạn nhập tên thương hiệu "Marks and Spencer" chẳng hạn, và thanh điều hướng sẽ đưa bạn đến chi nhánh gần nhất để mua những đôi giày đó. Và trong trường hợp đường đến chi nhánh gần nhất bị chặn, bạn sẽ được đưa đến chi nhánh gần nhất tiếp theo.

Anycast trong CDN

CDN sử dụng định tuyến anycast để phân phối nội dung trang trên quy mô lớn. Các điểm PoP trọng yếu sẽ thông báo phạm vi của các địa chỉ IP tương tự. Trong khi đó giao thức ghép nối cổng (BGP) sẽ phát hiện và duy trì đường dẫn đến các máy chủ khác nhau.

Bên cạnh các yêu cầu HTTP từ định tuyến anycast, CDN cũng cung cấp anycast DNS. Làm được như vậy là nhờ thiết lập 1 chuỗi các máy chủ định danh và cung cấp tra cứu các tên máy có độ trễ thấp cho đến ISP host name. Hoạt động này sau đó chuyển sang tra cứu tên và download file nhanh hơn.

Các nhà cung cấp dịch vụ internet địa phương (ISP) sau đó có thể chọn từ nhiều điểm truy cập khác nhau và xác định đường dẫn tối ưu nhất để định tuyến lưu lượng truy cập. kết quả là, bạn sẽ nhận được thời gian kết nối và truyền tải web nhanh hơn, cũng như gia tăng tính bảo mật và chống lỗi bất ngờ trong trường hợp server trở nên quá tải.  

Theo BizFly Cloud tổng hợp

>> Có thể bạn quan tâm: Vì sao nên sử dụng HTTP/2? Có nên sử dụng CDN hỗ trợ HTTP/2 không?

Bizfly Cloud là nhà cung cấp dịch vụ điện toán đám mây với chi phí thấp, được vận hành bởi VCCorp.

BizFly Cloud là một trong 4 doanh nghiệp nòng cốt trong "Chiến dịch thúc đẩy chuyển đổi số bằng công nghệ điện toán đám mây Việt Nam" của Bộ TT&TT; đáp ứng đầy đủ toàn bộ tiêu chí, chỉ tiêu kỹ thuật của nền tảng điện toán đám mây phục vụ Chính phủ điện tử/chính quyền điện tử.

Độc giả quan tâm đến các giải pháp của BizFly Cloud có thể truy cập tại đây.

DÙNG THỬ MIỄN PHÍ và NHẬN ƯU ĐÃI 3 THÁNG tại: Manage.bizflycloud

SHARE