Tối ưu hóa sử dụng tài nguyên hệ thống

Một phần của tài liệu (LUẬN văn THẠC sĩ) giải pháp xây dựng phòng thực hành về kỹ năng mạng dựa trên phần mềm mô phỏng mạng miễn phí GNS3 và công nghệ ảo hóa máy chủ mã nguồn mở citrix xenserver (Trang 28 - 32)

CHƯƠNG 1 MÔ PHỎNG HỆ THỐNG MẠNG VỚI GNS3

1.2. Các tính năng của GNS3

1.2.10. Tối ưu hóa sử dụng tài nguyên hệ thống

GNS3 sử dụng các Cisco IOS do đó, khi GNS3 thực thi một mô hình mạng ảo sử dụng nhiều thiết bị mạng như router thì nảy sinh vấn đề về sử dụng bộ nhớ RAM và bộ vi xử lý CPU.

Để giải quyết vấn đề nâng cao hiệu suất sử dụng của máy tính khi thực hiện mô phỏng mạng sử dụng GNS3, một giá trị được gọi là Idle-PC được đưa ra nhằm mục đích tối ưu hóa hiệu suất sử dụng CPU. Giá trị này phụ thuộc vào các phiên bản IOS khác nhau và không phụ thuộc vào máy tính. Để giải quyết vấn đề sử dụng bộ nhớ, GNS3 đưa ra hai giải pháp để nâng cao hiệu năng sử dụng với bộ nhớ RAM đó là Ghost IOS và Sparse Memory.

1.2.10.1. Tối ứu hóa sử dụng bộ nhớ

phải đáp ứng lượng RAM lớn tùy theo phiên bản IOS và số lượng thiết bị trong mô hình mạng ảo.

Hình 1.15. Cấu hình Ghost IOS

Giải pháp Ghost IOS và Sparse memory nhằm nâng cao hiệu suất sử dụng với bộ nhớ RAM đã được tích hợp sẵn trong GNS3 dưới các dạng tùy chọn hoặc chạy ngầm định.

Ghost IOS

Ghost IOS có thể giảm đáng kể dung lượng RAM cần thiết để cấp phát cho các router sử dụng cùng một phiên bản IOS. Với tính năng này, thay vì mỗi router ảo lưu trữ một bản sao IOS trong RAM ảo của nó, GNS3 Server sẽ thực hiện định vị một vùng nhớ chung để lưu trữ IOS cho tất cả các router sử dụng.

Để có thể hiểu hơn về Ghost IOS, chúng ta cùng xem xét ví dụ: Nếu mô hình mạng ảo có 10 router sử dụng Cisco IOS 7200, IOS yêu cầu bộ nhớ RAM là 512 MB. Như vậy, nếu không sử dụng Ghost IOS thì mô hình mạng ảo này yêu cầu hệ thống phải cấp phát khoảng 5GB bộ nhớ RAM (10 x 512 MB), một lượng RAM lớn. Tuy nhiên, khi sử dụng giải pháp Ghost IOS thì mô hình mạng ảo này chỉ cần hệ thống cấp phát 512 MB bộ nhớ RAM đúng bằng bộ nhớ của IOS và tiết kiệm được khoảng 4.5 GB bộ nhớ RAM (9 x 512 MB).

Giải pháp này được kích hoạt trong quá trình cài đặt GNS3 dưới dạng tùy chọn “Enable ghost IOS support” (xem Hình 1.15).

Sparse memory

Sparse memory là giải pháp không duy trì bộ nhớ được cấp phát mà làm giảm dung lượng bộ nhớ ảo sử dụng bởi các router. Điều này là quan trọng bởi vì, với Windows 32-bit thì mỗi ứng dụng chỉ được cấp phát tối đa 2 GB bộ nhớ RAM, với Linux 32-bit là 3 GB bộ nhớ RAM. Khi được kích hoạt, Sparse memory chỉ định bộ nhớ ảo trên máy chủ đúng bằng dung lượng RAM mà IOS thực sự dùng chứ không phải toàn bộ lượng RAM được cấp phát như trong cấu hình ban đầu.

Sparse memory cũng được kích hoạt trong quá trình cài đặt GNS3 dưới dạng trùy chọn “Enable sparse memory support” (xem Hình 1.15).

1.2.10.2. Tối ưu hóa sử dụng bộ vi xử lý

Hình 1.16. CPU của máy tính hoạt động khi không thiết lập giá trị Idle-PC Khi không thiết lập giá trị Idle-PC ta thấy rằng CPU của máy tính hoạt động khi đang chạy mô phỏng luôn ở mức rất cao, có thể lên đến 100% (xem Hình 1.16). Nguyên nhân gây ra tình trạng này chính là do Dynamips, nhân mô phỏng các nền tảng phần cứng của Cisco chạy bên trong GNS3. Trong quá trình hoạt động của bộ vi xử lý của các nền tảng phần cứng được mô phỏng, các bộ vi xử lý không phải lúc nào cũng ở trạng thái xử lý các tác vụ, có nhiều thời điểm bộ vi xử lý không phải xử lý bất cứ một tác vụ nào hoặc các tác vụ được xử lý không yêu cầu nhiều tài nguyên để xử lý. Do đó, bộ vi xử lý của các nền tảng phần cứng này tại nhiều thời điểm sẽ ở trạng thái rỗi (idle), tức là trạng thái không xử lý bất cứ một tác vụ nào. Tuy nhiên, Dynamips không xác định được khi nào thì các nền tảng phần cứng như router ảo chẳng hạn ở trạng thái idle để tối ưu hóa tài nguyên xử lý.

Lệnh “Idle-PC” thực hiện phân tích trên một tập tin image đang chạy để xác định các điểm giống nhất trong mã lệnh đại diện một chu kỳ rỗi (idle loop) của IOS. Một khi được áp dụng, Dynamips thường xuyên đưa các router ảo về trạng thái “sleeps” khi idle loop được thực thi. Điều này sẽ làm giảm đang kể mức tiêu thụ CPU trên máy tính nhưng không làm giảm khả năng xử lý các tác vụ thực tế của router.

Hình 1.17. Cách thực hiện tính toán tìm giá trị Idle-PC

Hình 1.18. Hiệu suất sử dụng CPU khi áp dụng giá trị Idle-PC

Tính năng tối ưu hiệu suất sử dụng của CPU bằng cách sử dụng giá trị Idle-PC được tích hợp trên GNS3. Có thể xác định giá trị Idle-PC cho mỗi loại

router khác nhau ngay trong quá trình cấu hình Cisco IOS hoặc sau khi tạo mô hình mạng lần đầu và kích hoạt router, người dùng chỉ cần chạy lệnh này trên một router bất kỳ và chờ GNS3 tính toán, sau khi GNS3 thực hiện tính toán tìm ra giá trị Idle-PC người dùng chỉ chọn một trong một hoặc nhiều giá trị có dấu “*” được GNS3 đề xuất. Quá trình này chỉ cần thực hiện một lần cho một router duy nhất và không cần phải thực hiện lại cho các router cùng loại còn lại trong mô hình mạng. Các router sử dụng các Cisco IOS khác nhau có giá trị Idle-PC khác nhau, do đó nếu trong mô hình mạng sử dụng các router Cisco IOS khác nhau thì ta phải thực hiện quá trình này cho các router đó. Người dùng nên sử dụng cùng loại router trong quá trình mô phỏng các hệ thống mạng.

Sau khi áp dụng giá trị Idle-PC trên GNS3 ta thấy rằng, với cùng mô hình mạng nhưng mức độ tiêu thụ CPU đã giảm đi rất nhiều (xem Hình 1.18). Điều này cho phép người dùng mô phỏng thêm nhiều router và các thiết bị khác trong mô hình mạng.

Một phần của tài liệu (LUẬN văn THẠC sĩ) giải pháp xây dựng phòng thực hành về kỹ năng mạng dựa trên phần mềm mô phỏng mạng miễn phí GNS3 và công nghệ ảo hóa máy chủ mã nguồn mở citrix xenserver (Trang 28 - 32)