Kiến trúc hệ thống CDN của một công ty tại Việt Nam

Một phần của tài liệu Phát triển công cụ giả lập hệ thống content delivery netwwork (Trang 62 - 69)

Bảng 6-2: Cấu hình hệ thống thực và mơi trường mô phỏng

Hệ thống thực Hệ thống mô phỏng

Bộ nhớ Edge Server 32GB 960MB

Bộ nhớ Regional Server 32GB 960MB

Bandwidth của đường mạng Regional-

Edge 20Gbps 600Mbps

Bandwidth của đường mạng Original-

Regional 30Gbps 900Mbps

Bandwidth của đường mạng Edge-Client 30Gbps 900Mbps

Giải thuật caching LRU

Giải thuật chuyển hướng gói tin Tìm đường đi ngắn nhất tới các Origin

Servers

6.1.1.2 Các thiết lập môi trường khác

Bên cạnh tập dữ liệu từ hệ thống thực, luận văn cũng sử dụng dữ liệu ào được sinh ra từ phân phối xác suất. Cụ thể hơn, độ phổ biến của dữ liệu ảo được sinh theo phân phối Gamma, vì đây là phân phối có tính chất gần giống với dữ liệu VoD thực nhất [58]. Bảng 6-3 cung cấp thông tin về tập dữ liệu ảo.

Bảng 6-3: Thông số thiết lập cho môi trường dữ liệu mô phỏng theo phân phối

Thông số Giá trị

Số lượng yêu cầu cho quá trình khởi động 1000 Số lượng yêu cầu cho quá trình mơ phỏng 2000

Số lượng nội dung 500

Phân phối của độ phổ biến nội dung Gamma(K=0.475, =170.6067)

6.1.2 Thí nghiệm đánh giá độ tin cậy

Luận văn này đánh giá tính đúng đắn về chức năng của công cụ giả lập thông qua 2 độ đo quan trọng là độ trễ và hit ratio. Hình 14 là hit ratio được trả về từ công cụ giả lập khi mô phỏng so sánh với hit ratio được trả về từ hệ thống thực. Trong thí nghiệm này, luận văn cũng so sánh kết quả mô phỏng giữa các tiếp cận sử dụng server HTTP đơn giản ở các replica servers so sánh với các tiếp cận sử dụng Docker

container để tái triển khai Nginx như hệ thống thực. Kết quả thí nghiệm này cho thấy cơng cụ giả lập có thể trả về kết quả rất gần với mơi trường thực tế với hit ratio tại Edge Servers và tồn hệ thống. Tuy nhiên, vẫn có một số sự khác biệt khi so sánh hit ratio của 2 môi trường này tại Regional Servers. Nguyên nhân của sự chênh lệch này là do trong môi trường thực tế, bộ nhớ của các server trong hệ thống CDN không chỉ lưu trữ nội dung người dùng, mà cịn có một bộ phận bộ nhớ chính bị tiêu tốn bởi các dịch vụ nền khác như: hệ điều hành, dịch vụ giám sát, quản trị hệ thống,... Hơn thế nửa, phần trăm bộ nhớ chính được sử dụng cho dịch vụ lưu trữ nội dung người dùng thường được cấp phát động trong môi trường thực tế do sự ảnh hưởng từ các dịch vụ khác.

Hình 14: Hit rate trung bình tại Edge Servers, Regional Servers và tồn hệ thống của bộ giả lập và log file hệ thống thực.

(Đường màu xanh dương: Hit rate từ bộ giả lập với thiết lập custom server module. Đường màu xanh lá: Hit rate từ bộ giả lập với thiết lập Docker server

module).

Độ trễ gói tin bị tác động chính bởi sự tương quan về cơ sở hạ tầng mạng và kích thước, số lượng gói tin. Hệ thống thực sử dụng cơ sở hạ tầng mạng với bandwidth cao, điều mà công cụ giả lập không thể mô phỏng được với sự hạn chế về mặt tài nguyên của phần cứng máy chạy. Để tránh được nhược điểm này, công cụ sử dụng phương pháp giảm kích thước nội dung và bandwidth mạng như đã mô tả ở phần 4.2.5. Hình 15 cho thấy phân bố độ trễ của gói tin tại 2 khung giờ mà số lượng yêu cầu người dùng thấp nhất và cao nhất của tập dữ liệu trong môi trường thực và môi trường giả lập. Cụ thể hơn, khung giờ traffic thấp nhất là từ 4 đến 5 giờ sáng và khung giờ có traffic cao nhất là từ 19 đến 20 giờ tối. Trong thí nghiệm này, luận văn cũng so sánh giữa cách tiếp cận sử dụng HTTP server tùy chỉnh như mô tả ở phần … và cách tiếp cận triển khai lại ứng dụng thực trên Docker container. Trong môi trường thực, traffic của hệ thống có thể từ nhiều ứng dụng, dịch vụ khác nhau chứ không chỉ từ dịch vụ CDN. Đồng thời, gói tin từ người dùng khơng chỉ phải di chuyển giữa các

replica server nội mạng, mà nó cũng phải di chuyển trong Internet. Từ những nguyên

nhân đó, phân bố của độ trễ gói tin trong mơi trường thực có độ lệch lớn hơn so với môi trường giả lập. Khi so sánh độ trễ gói tin giữa 2 cách tiếp cận Server Module, 2

phân bố độ trễ xấp xỉ nhau trong cả 2 khung giờ. Điều này cho thấy, cách tiếp cận sử dụng HTTP server tùy chỉnh có khả năng mơ phỏng tương tự với ứng dụng thực với độ tin cậy chấp nhận được.

Hình 15: Độ trễ của dịch vụ ở khung giờ thấp và cao điểm trả về từ bộ giả lập và log file hệ thống thực.

6.1.3 Thí nghiệm đánh giá mức hiệu năng của công cụ

Để đánh giá hiệu năng của cơng cụ giả lập, các thí nghiệm trong phần này được thực hiện với một máy tính có thơng số phần cứng là Intel®Core™ i5-3470 và bộ nhớ 8GB. Phần này sẽ đánh giá thời gian chạy và mức độ tiêu tốn tài nguyên của công cụ. Các yếu tố ảnh hưởng đến hiệu năng cơng cụ là: kích thước mạng CDN, bandwidth mạng và mức độ song song hóa của các Client ảo hay Server ảo trong hệ thống. Cụ thể hơn, mạng CDN được sử dụng trong các thí nghiệm ở phần này có dạng nhị phân với số tầng và số node khác nhau. Mạng hình cây nhị phân này được sử dụng vì đây là loại mạng được sử dụng phổ biến trong thực tế.

Hình 16 minh họa mối liên hệ giữa bandwidth mạng và thời gian chạy giả lập với các kích thước mạng khác nhau. Mỗi máy ảo trong mạng chỉ chạy một process (mức độ song song là 1). Ta nhận thấy khi tăng bandwidth mạng, thời gian chạy giả lập được giảm đáng kể. Một điểm đáng chú ý là với mạng nhị phân 5 tầng, thời gian chạy mô phỏng cao hơn nhiều so với các mạng khác. Đồng thời, đường cong chỉ thời gian chạy mô phỏng giảm chậm khi tăng bandwidth mạng. Điều này cho thấy, với tài nguyên giới hạn, nếu thiết lập kích thước mạng quá lớn thì mức độ tin cậy của cơng cụ có thể sẽ bị ảnh hưởng. Ta sẽ phân tích rõ ý này trong các thí nghiệm kế tiếp.

Hình 16: Tương quan về thời gian chạy và bandwidth mạng của bộ giả lập với các kích thước mạng khác nhau.

Hình 17 mơ tả thời gian chạy và lượng tiêu tốn bộ nhớ của bộ giả lập khi chạy với thiết lập đa dạng về số lượng node trong mạng và mức độ song song (Parallel Degree - PD). Các kết quả này này đều là giá trị trung bình của 10 lần chạy. Nhìn chung khi càng cấp phát nhiều process cho mỗi máy ảo trong mạng thì thời gian chạy và lượng tiêu tốn bộ nhớ càng cao. Tuy nhiên, khi tăng từ 112 process (PD=8 và 14 node máy ảo) tới 224 process (PD=16 và 14 node máy ảo) chạy song song, thời gian chạy của công cụ khơng giảm mà cịn tăng nhẹ. Điều này cho thấy, khi số lượng process ở một mức độ nhất định thì việc tăng PD sẽ không cải thiện tốc độ chạy giả lập. Điều này cũng đã được thể hiện qua kết luận của Handigol, et al. [43] về việc độ tin cậy của thư viện Mininet sẽ bị ảnh hưởng khi có quá nhiều process chạy song song gây tải nặng cho CPU. Tác giả đã thử nghiệm và nhận định rằng nếu số lượng node và tài nguyên của mạng tạo ra bởi Mininet tạo tải nặng cho phần cứng CPU thì các độ đo liên quan đến thời gian như độ trễ sẽ bị ảnh hưởng trực tiếp. Vậy nên, trước khi sử dụng công cụ giả lập, một bước quan trọng là người dùng cần phải thử nghiệm tìm cận trên về kích thước hệ thống CDN mà phần cứng chạy bộ mơ phỏng có thể tạo.

Hình 17: Thời gian chạy và tiêu thụ bộ nhớ của bộ giả lập với số lượng node ảo và giá trị PD khác nhau.

6.1.4 Một use case thực tiễn: Điều chỉnh thông số bộ nhớ cấp phát cho hệ thống CDN thống CDN

Trong phần này, luận văn sẽ mô tả một ứng dụng thực tiễn của công cụ giả lập. Cụ thể hơn, nhà đầu tư hệ thống CDN thường quan tâm đến vấn đề về chi phí đầu tư khi xây dựng hay mở rộng hệ thống. Họ muốn tối thiểu chi phí đầu tư nhưng vẫn đem lại cho người dùng chất lượng dịch vụ tốt nhất. Một ví dụ về tài nguyên mà họ quan tâm là RAM cho mỗi servers. Nếu cấp phát quá nhiều RAM hoặc cấp phát cho những server khơng cần thiết thì sẽ gia tăng chi phí mà khơng cải thiện chất lượng dịch vụ. Trong phần này, luận văn sử dụng lại hệ thống CDN thực ở Việt Nam và tập dữ liệu từ log file của họ. Hình 18 cho thấy hit rate của tồn hệ thống khi thay đổi RAM tại Edge và Regional Servers. Thí nghiệm cho thấy khi thay đổi lượng RAM tại Edge Servers, hit rate của toàn hệ thống khơng thay đổi nhiều. Trong khi đó, việc tăng bộ nhớ tại Regional Servers sẽ cải thiện hit rate của hệ thống. Điều này là hợp lý vì nội dung trong cache tại các node cha thường sẽ ít thay đổi hoặc thay đổi rất chậm so với các node con. Việc thay đổi kích thước cache ở node con sẽ ảnh hưởng trực tiếp và hiệu quả hơn tới hit rate của tồn hệ thống. Từ những thí nghiệm mơ phỏng đơn giản ở trên, ta có thể đề xuất nhà cung cấp CDN nên đầu tư RAM ở các Regional Servers.

Hình 18: Hit rate của hệ thống CDN của công ty Việt Nam khi thay đổi Bộ nhớ tại Edge và Regional servers.

6.2 Thí nghiệm cho bài tốn tối ưu thiết lập CDN 6.2.1 Mơi trường thí nghiệm

Trong phần này, mơi trường thí nghiệm sẽ bao gồm 3 hệ thống CDN với kích thước từ nhỏ đến lớn.

 Mạng CDN kích thước nhỏ gồm 5 nodes của một cơng ty tại Việt Nam như đã mơ tả trong phần 6.1.1.1 (Hình 12). Do mạng CDN này có kích thước nhỏ nên phần này chỉ thực hiện thí nghiệm với bài toán cấp phát bộ nhớ. Trong bài toán phân bố replica servers, số mẫu thử với mạng CDN này là 25=32 mẫu. Hướng tiếp cận brute-force sẽ tốt hơn trong trường hợp số mẫu thử ít này.

 Mạng CDN kích thước trung bình gồm 14 nodes của một nhà mạng tại Pháp. Hình 19 minh họa cho mơ hình mạng này.

 Mạng CDN kích thước lớn gồm 55 nodes của cơng ty NTT Nhật Bản như đã mơ tả trong phần 6.1.1.2 (Hình 20).

Một phần của tài liệu Phát triển công cụ giả lập hệ thống content delivery netwwork (Trang 62 - 69)

Tải bản đầy đủ (PDF)

(84 trang)