CDN là gì?
Mạng phân phối nội dung (CDN) là một mạng lưới gồm các máy chủ được kết nối với nhau giúp tăng tốc độ tải trang web cho các ứng dụng tiêu tốn nhiều dữ liệu. CDN là chữ viết tắt của mạng phân phối nội dung hoặc mạng phân bổ nội dung. Khi người dùng truy cập một trang web, dữ liệu từ máy chủ của trang web đó phải di chuyển trên mạng Internet để đến được máy tính của người dùng. Nếu người dùng ở xa máy chủ đó, thì sẽ mất nhiều thời gian để tải một tệp lớn, chẳng hạn như video hoặc hình ảnh trên trang web. Thay vào đó, nội dung trang web được lưu trữ trên các máy chủ CDN gần hơn với vị trí của người dùng theo khu vực địa lý để quá trình chuyển đến máy tính của họ được nhanh hơn nhiều.
Tại sao CDN lại có vai trò quan trọng?
Mục đích chính của mạng phân phối nội dung (CDN) là để giảm độ trễ hoặc giảm thời gian chờ trong giao tiếp do thiết kế của mạng tạo ra. Do bản chất toàn cầu và phức tạp của mạng Internet, lưu lượng giao tiếp giữa các trang web (máy chủ) và người dùng các trang web đó (máy khách) phải di chuyển trên một khoảng cách vật lý rất lớn. Hoạt động giao tiếp cũng là hoạt động hai chiều, trong đó các yêu cầu đi từ máy khách đến máy chủ và phản hồi sẽ quay trở lại.
CDN sẽ giúp cải thiện hiệu quả bằng cách giới thiệu các máy chủ trung gian giữa máy khách và máy chủ trang web. Các máy chủ CDN này sẽ quản lý một số hoạt động giao tiếp giữa máy khách và máy chủ. Các máy chủ này giúp làm giảm lưu lượng truy cập web đến máy chủ web, giảm lượng tiêu thụ băng thông và cải thiện trải nghiệm người dùng cho các ứng dụng của bạn.
CDN mang lại những lợi ích gì?
Mạng phân phối nội dung (CDN) mang lại nhiều lợi ích giúp cải thiện hiệu suất trang web và hỗ trợ cho cơ sở hạ tầng mạng cốt lõi. Ví dụ: CDN có thể thực hiện các nhiệm vụ sau:
Làm giảm thời gian tải trang
Lưu lượng truy cập trang web có thể bị giảm nếu thời gian tải trang của bạn quá chậm. CDN có thể làm giảm tỷ lệ thoát và tăng thời gian mà người dùng dành cho trang web của bạn.
Làm giảm chi phí băng thông
Chi phí băng thông là một khoản chi phí đáng kể vì mọi yêu cầu gửi đến trang web đều tiêu tốn băng thông mạng. Thông qua bộ nhớ đệm và các quá trình tối ưu hóa khác, CDN có thể giảm lượng dữ liệu mà máy chủ gốc phải cung cấp, nên giúp giảm chi phí lưu trữ cho chủ sở hữu của trang web.
Tăng tính sẵn có của nội dung
Khi có quá nhiều người cùng truy cập một lúc hoặc khi xảy ra lỗi phần cứng mạng, trang web có thể bị sập. Các dịch vụ của CDN có thể xử lý được nhiều lưu lượng truy cập web hơn, đồng thời giúp giảm tải cho các máy chủ web. Ngoài ra, khi một hoặc nhiều máy chủ CDN ở trạng thái ngoại tuyến, các máy chủ hoạt động khác có thể thay thế chúng để đảm bảo dịch vụ không bị gián đoạn.
Cải thiện khả năng bảo mật trang web
Các cuộc tấn công từ chối dịch vụ phân tán (DDoS) sẽ tìm cách đánh sập các ứng dụng bằng cách gửi một lượng lớn lưu lượng truy cập giả mạo đến trang web. CDN có thể xử lý lượng truy cập tăng đột biến đó bằng cách phân phối tải giữa một số máy chủ trung gian, giảm tác động lên máy chủ gốc.
Công nghệ CDN có lịch sử như thế nào?
Công nghệ mạng phân phối nội dung (CDN) xuất hiện vào cuối những năm 1990 với trọng tâm là phân phối nội dung nhanh hơn qua mạng Internet:
Thế hệ thứ nhất
Các dịch vụ CDN thế hệ thứ nhất tập trung vào các nguyên tắc kết nối mạng của trung tâm dữ liệu và trung tâm quản lý lưu lượng mạng thông minh nhằm mục đích nhân rộng.
Thế hệ thứ hai
CDN thế hệ thứ hai đã ra đời để đáp ứng sự gia tăng của các dịch vụ truyền âm thanh và video trực tuyến, đặc biệt là video và tin tức theo nhu cầu. Công nghệ này cũng phát triển để giải quyết những thách thức mới trong hoạt động phân phối nội dung trên các thiết bị di động. Các công ty đã sử dụng các kỹ thuật điện toán đám mây và mạng ngang hàng để tăng tốc độ phân phối nội dung.
Thế hệ thứ ba
CDN thế hệ thứ ba vẫn đang trong quá trình phát triển. AWS đang thúc đẩy sự đổi mới với tư cách là một trong những nhà cung cấp dịch vụ CDN hàng đầu trên thế giới. Khi hầu hết các dịch vụ web đều tập trung vào nền tảng đám mây, trọng tâm bây giờ sẽ là điện toán biên — giúp quản lý mức tiêu thụ băng thông bằng cách sử dụng các thiết bị thông minh có khả năng giao tiếp thông minh. Mạng biên tự hành và tự quản có thể là bước tiếp theo trong công nghệ CDN.
CDN có thể phân phối nội dung nào qua mạng Internet?
Mạng phân phối nội dung (CDN) có thể phân phối hai loại nội dung: nội dung tĩnh và nội dung động.
Nội dung tĩnh
Nội dung tĩnh là dữ liệu trang web không thay đổi dù là người dùng này hay người dùng khác. Tất cả người dùng đều thấy cùng hình ảnh, biểu trưng và kiểu phông chữ của tiêu đề trang web và doanh nghiệp cũng không thường xuyên thay đổi những nội dung này. Dữ liệu tĩnh là dữ liệu không cần phải tạo, xử lý hoặc sửa đổi, đồng thời đây cũng là loại dữ liệu phù hợp để lưu trữ trên CDN.
Nội dung động
Nội dung động, chẳng hạn như nguồn cấp tin tức trên mạng xã hội, báo cáo thời tiết, trạng thái đăng nhập và tin nhắn trò chuyện, là nội dung có sự khác nhau giữa những người dùng trang web. Dữ liệu này sẽ thay đổi dựa trên vị trí của người dùng, thời gian đăng nhập hoặc tùy chọn của người dùng và trang web phải tạo dữ liệu cho mọi người dùng và mọi tương tác của người dùng.
CDN hoạt động như thế nào?
Mạng phân phối nội dung (CDN) hoạt động thông qua việc thiết lập một điểm hiện diện (POP) hoặc một nhóm máy chủ biên CDN ở nhiều vị trí địa lý. Mạng phân tán theo vị trí địa lý này hoạt động dựa trên các nguyên tắc của việc lưu bộ nhớ đệm, tăng tốc động và tính toán logic biên.
Lưu bộ nhớ đệm
Lưu bộ nhớ đệm là quá trình lưu trữ nhiều bản sao của cùng một dữ liệu để truy cập dữ liệu nhanh hơn. Trong hoạt động tính toán, nguyên tắc lưu bộ nhớ đệm sẽ áp dụng cho tất cả các loại bộ nhớ và loại hình quản lý quá trình lưu trữ. Trong công nghệ CDN, thuật ngữ này dùng để chỉ quá trình lưu trữ nội dung tĩnh của trang web trên nhiều máy chủ trong mạng. Hoạt động lưu bộ nhớ đệm trong CDN hoạt động như sau:
- Khách truy cập trang web từ xa theo vị trí địa lý sẽ thực hiện yêu cầu đầu tiên đối với nội dung web tĩnh từ trang web.
- Yêu cầu đó sẽ chuyển đến máy chủ ứng dụng web hoặc máy chủ gốc. Máy chủ gốc sẽ gửi phản hồi cho khách truy cập từ xa đó. Đồng thời, máy chủ gốc cũng gửi một bản sao phản hồi tới POP của CDN ở vị trí địa lý gần nhất cho khách truy cập đó.
- Máy chủ POP của CDN sẽ lưu trữ bản sao ở dạng tệp được lưu trong bộ nhớ đệm.
- Vào lần tới, khi khách truy cập này hoặc bất kỳ khách truy cập nào khác ở vị trí đó, đưa ra yêu cầu tương tự, máy chủ lưu bộ nhớ đệm, không phải máy chủ gốc, sẽ gửi phản hồi.
Tăng tốc động
Tăng tốc động là quá trình giúp giảm thời gian phản hồi của máy chủ đối với các yêu cầu về nội dung web động nhờ có máy chủ CDN trung gian giữa các ứng dụng web và máy khách. Việc lưu bộ nhớ đệm sẽ không dễ thực hiện với nội dung web động vì nội dung có thể thay đổi theo mọi yêu cầu của người dùng. Máy chủ CDN phải kết nối lại với máy chủ gốc khi có bất kỳ yêu cầu động nào, tuy nhiên, các máy chủ này lại giúp tăng tốc quá trình bằng cách tối ưu hóa kết nối giữa chính các máy chủ này với máy chủ gốc.
Nếu máy khách gửi một yêu cầu động trực tiếp đến máy chủ web qua mạng Internet, yêu cầu có thể bị mất hoặc bị trì hoãn do độ trễ của mạng. Việc mở và đóng kết nối cho mục đích xác minh bảo mật cũng có thể tốn thời gian. Mặt khác, nếu máy chủ CDN ở gần chuyển tiếp yêu cầu đến máy chủ gốc, thì các máy chủ này đã thiết lập được một kết nối liên tục, đáng tin cậy. Ví dụ: các tính năng sau có thể tối ưu hóa hơn nữa kết nối giữa chúng:
- Các thuật toán định tuyến thông minh
- Vùng lân cận theo vị trí địa lý với máy chủ gốc
- Khả năng xử lý yêu cầu của máy khách, giúp làm giảm kích thước của yêu cầu đó
Tính toán logic biên
Bạn có thể lập trình để máy chủ biên CDN thực hiện các phép tính logic giúp đơn giản hóa quá trình giao tiếp giữa máy khách và máy chủ. Ví dụ, máy chủ này có thể thực hiện các nhiệm vụ sau:
- Kiểm tra yêu cầu của người dùng và sửa đổi hành vi lưu vào bộ nhớ đệm.
- Xác thực và xử lý các yêu cầu không chính xác của người dùng.
- Sửa đổi hoặc tối ưu hóa nội dung trước khi phản hồi.
Hoạt động phân phối logic ứng dụng giữa các máy chủ web và biên mạng giúp các nhà phát triển giảm tải các yêu cầu tính toán của máy chủ gốc và cải thiện hiệu suất trang web.
Công dụng của CDN là gì?
Mạng phân phối nội dung (CDN) giúp cải thiện các chức năng thông thường của trang web, đồng thời làm gia tăng sự hài lòng của khách hàng. Sau đây là một số trường hợp sử dụng điển hình.
Phân phối nội dung tốc độ cao
Bằng cách kết hợp giữa việc phân phối nội dung tĩnh và động trên Internet, bạn có thể sử dụng CDN để mang đến cho khách hàng của mình trải nghiệm toàn cầu, hiệu suất cao, trên toàn bộ trang web. Ví dụ: Reuters là hãng tin tức lớn nhất thế giới cho các kênh hàng đầu như BBC, CNN, The New York Times và The Washington Post. Thách thức mà lĩnh vực truyền thông tin tức mang lại cho Reuters đó là cung cấp nội dung tin tức kịp thời cho khách hàng trên toàn cầu. Reuters sử dụng dịch vụ CDN của Amazon, Amazon CloudFront, với Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) để giảm thiểu sự phụ thuộc vào truyền thông liên kết vệ tinh, đồng thời để tạo ra một nền tảng mạng phân tán toàn cầu rẻ hơn, an toàn và có tính khả dụng cao.
Truyền phát trực tuyến theo thời gian thực
CDN hỗ trợ việc phân phối các tệp phương tiện chất lượng cao và đa dạng theo cách đáng tin cậy và tiết kiệm chi phí. Các công ty truyền phát trực tuyến video và âm thanh sử dụng CDN để vượt qua ba thách thức: giảm chi phí băng thông, tăng quy mô và giảm thời gian phân phối. Ví dụ: Hulu là một nền tảng truyền video trực tuyến thuộc sở hữu của The Walt Disney Company. Nền tảng này sử dụng Amazon CloudFront để liên tục truyền phát trực tuyến hơn 20 GBps dữ liệu cho cơ sở khách hàng ngày càng tăng của mình.
Mở rộng quy mô nhiều người dùng
CDN giúp một số lượng lớn người dùng có thể cùng sử dụng một lúc. Tài nguyên trang web chỉ có thể quản lý một số ít kết nối máy khách tại một thời điểm. CDN có thể nhanh chóng mở rộng con số này bằng cách giúp máy chủ ứng dụng chịu một số tải. Ví dụ: King là một công ty trò chơi chuyên sáng tạo các trò chơi đa nền tảng, được kết nối trên mạng xã hội, có thể chơi mọi lúc, mọi nơi và từ mọi thiết bị. King có hơn 350 triệu người chơi bất cứ lúc nào và họ chơi 10,6 tỷ trò chơi mỗi ngày trên nền tảng này.
Các ứng dụng trò chơi của King ghi lại dữ liệu trò chơi của người dùng trên các trung tâm dữ liệu tập trung, để họ có thể chơi trên các thiết bị khác nhau mà không bị mất tiến trình trên trò chơi. Các trung tâm dữ liệu nhằm mục đích mang đến cho người dùng trải nghiệm nhất quán, ngay cả khi người dùng tham gia trò chơi trên các máy cũ với băng thông hạn chế.
King sử dụng Amazon CloudFront để phân phối hàng trăm terabyte nội dung mỗi ngày, với mức tăng đột biến đến nửa petabyte hoặc hơn khi King ra mắt một trò chơi mới hoặc bắt đầu một chương trình tiếp thị quy mô lớn.
Amazon CloudFront là gì?
Amazon CloudFront là dịch vụ mạng phân phối nội dung (CDN) được xây dựng với hiệu suất cao, an toàn và thuận tiện cho nhà phát triển. Bạn có thể sử dụng Amazon CloudFront để thực hiện các nhiệm vụ sau:
- Phân phối dữ liệu thông qua hơn 450 điểm hiện diện (POP) phân bố khắp toàn cầu với tính năng lập bản đồ mạng lưới tự động và định tuyến thông minh.
- Nâng cao độ bảo mật với tính năng mã hóa lưu lượng truy cập và kiểm soát quyền truy cập, đồng thời sử dụng AWS Shield tiêu chuẩn để bảo vệ khỏi các cuộc tấn công từ chối dịch vụ phân tán (DDoS) mà không phải trả thêm phí.
- Tùy chỉnh mã bạn chạy tại biên mạng AWS bằng các tính năng điện toán phi máy chủ để cân bằng giữa chi phí, hiệu suất và bảo mật.
- Tự động mở rộng quy mô để phân phối phần mềm, bản vá trò chơi và bản cập nhật IoT với tốc độ truyền cao.
Bắt đầu xây dựng trên AWS CloudFront với gói truyền dữ liệu 50 GB miễn phí trong 12 tháng. Tạo tài khoản AWS miễn phí ngay hôm nay.