intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

CÔNG NGHỆ GRID COMPUTING VÀ ỨNG DỤNG THỬ NGHIỆM TRONG BÀI TOÁN QUẢN TRỊ MẠNG - 9

Chia sẻ: Cao Tt | Ngày: | Loại File: PDF | Số trang:23

107
lượt xem
21
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.2.2. Add Configuration Capturing colaboration diagram : Nha quan tri 1: // Call ConfigureForm 3: // Enter configuration for node 4: // Add a configuration node 2: // Show : ConfigureForm : MainForm 5: // Verify add a configuration 6: // Add configuration : ConfigureCtrl : ConfigureEntity - 170 - Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.2.3. Update Configuration Capturing sequence diagram : Nha quan tri : MainForm : Conf igureForm : Conf igureCtrl : Conf igureEntity // Call Conf igureForm // Show // Change conf iguration f or node // Update a conf iguration node // Verif y update a conf iguration...

Chủ đề:
Lưu

Nội dung Text: CÔNG NGHỆ GRID COMPUTING VÀ ỨNG DỤNG THỬ NGHIỆM TRONG BÀI TOÁN QUẢN TRỊ MẠNG - 9

  1. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.2.2. Add Configuration Capturing colaboration diagram : Nha quan tri 1: // Call ConfigureForm 3 : // Enter configuration for node 4: // Add a configuration node 2: // Show : ConfigureForm : M ainForm 5: // Verify add a configuration 6: // Add configuration : ConfigureEntity : ConfigureCtrl - 170 -
  2. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.2.3. Update Configuration Capturing sequence diagram : N ha quan tri : C onf igureCtrl : MainForm : C onf igureForm : C onf igureEntity // Call Conf igureForm // Show // Change conf iguration f or node // Update a conf iguration node // Verif y update a conf iguration // Change conf iguration 7.1.4.2.4. Update Configuration Capturing colaboration diagram 1: // Call ConfigureForm 3: // Change configuration for node : M ainForm 4: // Update a configuration node : Nha quan tri 2: // Show 5 : // Verify update a configuration : ConfigureForm : ConfigureCtrl 6: // Change configuration : ConfigureEntity - 171 -
  3. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.2.5. Remove Configuration Capturing sequence diagram : N ha quan tri : C onf igureCtrl : MainForm : C onf igureForm : C onf igureEntity // Call Conf igureForm // Show // Remov e conf iguration f or node // Remov e a conf iguration node // Verif y remov e a conf iguration // Remov e conf iguration 7.1.4.2.6. Remove Configuration Capturing colaboration diagram 1: // Call Conf igureForm : MainForm : N ha quan tri 3: // Remov e conf iguration f or node 4: // Remov e a conf iguration node 2: // Show 5: // Verif y remov e a conf iguration : C onf igureForm : C onf igureCtrl 6: // Remov e conf iguration : C onf igureEntity - 172 -
  4. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.3. Use case “Capture” 7.1.4.3.1. Capture - Start Basic Flow sequence diagram : S tartCapture : Display : Nha quan tri : CaptureCtrl : M ainForm T hread T hread // Start capture // Call capture // Create thread Start // Create thread Display // send content of packet // Show packet 7.1.4.3.2. Capture – Start Basic Flow colaboration diagram 1: // Start capture : M ainForm : Nha quan tri 2: // Call capture 6: // Show packet : S tartCapture Thread 3: // Create thread Start : CaptureCtrl 4: // Create thread Display 5: // send content of packet : Display Thread - 173 -
  5. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.3.3. Capture - Start Error Flow sequence diagram : StartCapture : N ha quan tri : C aptureCtrl : MainForm : MessageBox Thread // Start capture // Call capture // Create thread Start // Notif y result // Show error message 7.1.4.3.4. Capture – Start Error Flow colaboration diagram 1: // Start capture 2: // Call capture : M ainForm : Nha quan tri 3: // Create thread Start : StartCapture Thread 4: // Notify result : CaptureCtrl 5: // Show error message : M essageBox - 174 -
  6. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.3.5. Capture - Start Stop Flow sequence diagram : S tartCapture : Nha quan tri : CaptureCtrl : M ainForm : M essageBox T hread // Stop capture // Call stop // Create thread Stop // Message back // Show message 7.1.4.3.6. Capture – Start Stop Flow colaboration diagram 1: // Stop capture : M ainForm : Nha quan tri 2: // Call stop 5: // Show message : CaptureCtrl 4: // Message back 3: // Create thread Stop : StartCapture : M essageBox Thread - 175 -
  7. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.3.7. Capture – Start Error Flow sequence diagram : S tartCapture : Nha quan tri : CaptureCtrl : M ainForm : M essageBox T hread // Stop capture // Call stop // Create thread Stop // Message back // Show message Error 7.1.4.3.8. Capture – Start Error Flow colaboration diagram 1: // Stop capture 2: // Call stop : M ainForm : Nha quan tri 5: // Show message Error : M essageBox : CaptureCtrl 4: // Message back 3: // Create thread Stop : StartCapture Thread - 176 -
  8. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.4. Use case “Query” 7.1.4.4.1. Query - Basic Flow sequence diagram : FilterThread : Nha quan tri : FilterCtrl : M ainForm // Call Filter // Submit Filter // Create Filter Thread // Content of packet return // Show content of message 7.1.4.4.2. Query - Basic Flow colaboration diagram 1: // Call Filter : M ainForm : Nha quan tri 5: // Show content of message 2: // Submit Filter 3: // Create Filter Thread : FilterCtrl 4: // Content of packet return : FilterThread - 177 -
  9. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.1.4.4.3. Query - Error Flow sequence diagram : F ilterThread : N ha quan tri : F ilterCtrl : MainForm : MessageBox // Call Filter // Submit Filter // Create Filter Thread // Error return // Show message error 7.1.4.4.4. Query - Error Flow sequence diagram 1: // Call Filter : M ainForm : Nha quan tri 2: // Submit Filter : FilterThread 4: // Error return 3: // Create Filter T hread : FilterCtrl 5: // Show message error : M essageBox - 178 -
  10. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.2. Thiết kế 7.2.1. Sơ đồ các đối tượng cài đặt Vì khi cài đặt phải kết hợp với mã nguồn của Ethereal (viết theo ngôn ngữ C) và sử dụng các thư viện không hướng đối tượng nên chỉ có thể phát triển theo hướng đối tượng một số xử lý liên quan đến Globus. 1. Sơ đồ các lớp đối tượng module GridManager GL_CB GL_GLOBUS_FTP_CLIENT mutex : globus_mutex_t fd : FILE * cond : globus_cond_t buffer : globus_byte_t done : globus_bool_t handle : globus_ftp_client_handle_t IsDone() StartT ransfer() SetDone() Transfer() Continue() Wait() name 1 1 GL_GRAM_JOB GL_GRAM_JOBS_CALLBACK failed : globus_bool_t jobcontact : char * JobsTableMutex : globus_mutex_t callback : GL_GRAM_JOBS_CALLBACK JobTable : map callback_contact : char * HasFailed() : globus_bool_t SetFailed() Add(... : string, .... : GL_GRAM_JOB *) : void Submit(... : ...) Remove(... : char*) : void Cancel() GetURL() : char * SetJobContact(... : ...) GetJob(... : char *) : GL_GRAM_JOB * Wait() Lock() UnLock() Host Broker hostName : string cpu : long GetLinuxNodes() GetHostName() : string GetCPU() : Long Hình 7-3 Sơ đồ lớp cài đặt lớp đối tượng. - 179 -
  11. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 2. Danh sách các lớp đối tượng Loại đối STT Tên lớp Diễn giải tượng 1. Control Lớp cung cấp các hàm gọi GL_CB cho việc bắt đầu, chờ đợi và kết thúc của một công việc 2. Control Lớp quản lý việc gọi thực GL_GRAM_JOBS_CALLBAC hiện một danh sách các K công việc thông qua định danh của công việc 3. Control Lớp chịu quản lý việc thực GL_GRAM_JOB thi và kết thúc một công việc. 4. Control Lớp chịu trách nhiệm quản GL_GLOBUS_FTP_CLIENT lý truyền dữ liệu với GridFTP. 5. Control Tìm kiếm thông tin về các GL_BROKER máy trong hệ thống Grid Bảng 7-3 Danh sách các đối tượng cài đặt. 7.2.2. Thiết kế giao diện 7.2.2.1. Danh sách các màn hình Giao diện ứng dụng Grid NetManager thử nghiệm ngoài sử dụng lại các giao diện của Ethereal, có thêm một số điểm mới sau: Tên màn STT Diễn giải hình 1. Sử dụng lại màn hình chính của Ethreal, thêm các Grid chức năng mới, thể hiện của các usecase Capture, NetManager Query Packet Information, Search nodes, cho phép tìm kiếm các máy tính thỏa các điều kiện yêu cầu về tài nguyên, cho phép nhập câu truy vấn các thông tin về packet và xuất kết quả ra màn hình, cho phép khởi tạo và kết thúc quá trình bắt packet. Màn hình này cho phép sử dụng lại các chức năng phân tích của Ethereal. 2. Thể hiện usecase Configure Packet Capturing, cho Packet phép người dùng cấu hình các thông tin phục vụ bắt Capture packet như node thực thi, tên file lưu trữ, node lưu dữ Configure liệu, capture filter. Bảng 7-4 Danh sách các giao diện. - 180 -
  12. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.2.2.2. Chi tiết các màn hình 7.2.2.2.1. Màn hình Grid NetManager Hình 7-4 Màn hình chính ứng dụng Grid NetManager thử nghiệm Mô tả màn hình (danh sách các control được thêm vào màn hình chính cùa ethereal) Tên trên STT Tên control Kiểu Diễn giải giao diện 1. MDS Textbox Cho phép nhập vào tên của MDS mds_server_te Server Server đang quản lý thông tin của hệ thống Grid 2. Filter Textbox Chứa nội dung truy vấn cơ sở dữ filter_te liệu. Sau khi nhận đầy đủ câu truy vấn, hệ thống sẽ cho gọi thực thi module PacketInfoProvider trên các máy ở xa, chờ nhận kết quả và xuất ra màn hình. 3. Nodes Combo Chứa danh sách Node thoả điều node_cb kiện tìm kiếm hiện đang có trong Grid. 4. Nodes Button Thực hiện tìm kiếm các Node thỏa nodes_bt điều kiện yêu cầu về tài nguyên từ MDS server và đưa ra cboNodes - 181 -
  13. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 5. Start Button Bắt đầu quá trình bắt packet trên các Start_bt node. 6. Stop Button Kết thúc quá trình bắt packet. stop_bt Bảng 7-5 Mô tả màn hình chính. 7.2.2.2.2. Màn hình Packet Capture Configure Hình 7-5 Màn hình Packet Capture Configue Mô tả màn hình (danh sách các control) Tên trên STT Tên control giao Kiểu Diễn giải diện 1. Listbox Hiện thị các chọn lựa cấu hình bắt clist_Node packet của người dùng. 2. File Textbox Chứa tên file lưu trữ dữ liệu khi bắt file_te xuống. 3. Argument Textbox Chứa nội dung cấu hình bắt packet filter_te của từng module Sensor. 4. computer_cb Sensor Combo Chứa danh sách Node thoả điều kiện tìm kiếm tài nguyên, hiện đang có trong Grid, dùng để chọn máy thực - 182 -
  14. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng thi module Sensor. 5. Database Combo Chứa danh sách Node thoả điều kiện store_cb Computer tìm kiếm tài nguyên, hiện đang có trong Grid, dùng để chọn máy lưu trữ dữ liệu. 6. OK Button Lưu lại cấu hình các module. btnOK 7. Add Button Thêm cấu hình cho một module mới btnAdd 8. Update Button Cập nhật lại cấu hình của một btnUpdate module. 9. Remove Button Loại bỏ một cấu hình module. btnRemove Bảng 7-6 Mô tả màn hình cấu hình bắt packet. 7.3. Cài đặt & Triển khai 7.3.1. Công cụ và môi trường phát triển ứng dụng Ứng dụng “Grid NetManager” được xây dựng trên môi trường và công cụ sau: + Công cụ phân tích thiết kế : Rational Rose 2000, Microsoft Visio 2003. + Môi trường xây dựng và thực thi : Linux Redhat 9.0 (kernel 2.4.20-8). + Ngôn ngữ lập trình : C/C++ + Môi trường phát triển ứng dụng : Editor : KDevelop 2.1. Compiler : GCC, G++ Debugger : GDB. + Môi trường Grid : Globus Toolkit 3.2. và các phần mềm đi kèm. + Sử dụng mã nguồn Ethereal 0.10.0a + Sử dụng các thư viện: Thư viện giao diện đồ họa : GTK+ 1.2 Các thư viện phát triển ứng dụng của GT3.2 : GSI, pre-WS GRAM, pre- WS MDS, GridFTP, … - 183 -
  15. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng 7.3.2. Mô hình cài đặt 1. Mô hình T ET HEREAL Gri d NetManager (Fi le chuong trinh thuc thi) (M odule Quan tri) Hình 7-6 Mô hình cài đặt. 2. Diễn giải STT Tên thành phần Ý nghĩa 1. Là file chương trình tethereal, chương trình tethereal tEthereal được sử dụng thực thi chức năng của 2 module Sensor và module PacketInfoProvider. 2. Là file chương trình thực thi chức năng quản trị và Grid trình diễn. NetManager Bảng 7-7 Các thành phần triển khai. 7.3.3. Mô hình triển khai Hệ thống có thể được triển khai trong hệ thống mạng máy tính cần quản trị với cấu hình như sau: Hình 7-7 Sơ đồ triển khai ứng dụngGrid NetManager thử nghiệm. - 184 -
  16. Chương 7. Phân tích, thiết kế và cài đặt thử nghiệm ứng dụng Giải thích: Các máy tính tham gia Grid đều được cài đặt bộ Globus Toolkit 3.2, các máy tính này không cần phải dành riêng cho Grid mà có thể sử dụng cho các ứng dụng khác. Ứng dụng sẽ tự động hoặc cho nhà quản trị chọn các máy tính “rảnh rỗi”(theo một tiêu chí nào đó) để thực thi các module. Nên có một mạng cục bộ dành riêng cho Grid (Grid Network) để không ảnh hưởng đến năng lực mạng của tổ chức. Các máy tính Grid ngoài việc kết nối với mạng nội bộ của tổ chức, có thêm một kết nối đến mạng Grid dành riêng. Các máy tính chạy module Sensor nhất thiết phải kết nối với một LAN segment cần bắt packet, một LAN segment chỉ cần một máy chạy module Sensor là đủ. Nhà quản trị sử dụng một máy tính Grid chạy gói Quản trị (gồm module Presentation và PacketInfoManager) để quản trị toàn hệ thống. 7.3.4. Thử nghiệm 7.3.4.1. Mô hình thử nghiệm Hình 7-8 Mô hình cài đặt thử nghiệm Các máy tính thử nghiệm được triển khai như hình 7-8. Đã thử nghiệm thành công chức năng gửi và thực thi công việc trên máy tính ở xa, chức năng bắt packet, xử lý truy vấn. - 185 -
  17. Chương 8. Kết luận Chương 8. Kết luận 8.1. Đánh giá 8.1.1. Về luận văn Ở mức luận văn, nhóm thực hiện đã thu được những kết quả sau : + Tìm hiểu khá chi tiết, tổng quan về các khía cạnh nền tảng công nghệ Grid Computing hiện nay như bản chất khái niệm, các thách thức và yêu cầu, lợi ích và ứng dụng, mô hình kiến trúc, các chuẩn hiện nay, tìm hiểu và so sánh các middleware Grid phổ biến hiện nay. + Tìm hiểu khá đầy đủ, tổng quan về bộ Globus Toolkit 3.2 về mô hình, cách thức giải quyết các thách thức cơ bản của công nghệ Grid, các dịch vụ cơ bản, các yêu cầu, lưu ý khi xây dựng các dự án ứng dụng Grid với bộ Globus Toolkit. + Bên cạnh đó, các vấn đề cơ bản về quản trị mạng, hệ thống quản trị mạng, hệ thống Intrusion Detection System, cũng đã được tìm hiểu, làm cơ sở để đưa ra mô hình ứng dụng Grid NetManager. Các kiến thức ở đây có thể được sử dụng để định hướng tìm hiểu, nghiên cứu sâu hơn về công nghệ Grid Computing và bộ Globus Toolkit, cũng như sử dụng để phát triển ứng dụng Grid. Hướng tiếp cận sử dụng công nghệ Grid Computing vào bài toán quản trị mạng là một hướng mới, hiện chưa có dự án nào được công bố. 8.1.2. Về ứng dụng Dựa trên những kết quả nghiên cứu, tìm hiểu từ công nghệ Grid Computing và các hệ thống quản trị mạng, nhóm thực hiện đã đạt được những kết quả sau : + Đề xuất mô hình hệ thống quản trị mạng dựa trên nền công nghệ Grid Computing, đưa ra định hướng xây dựng ứng dụng. + Đọc hiểu và sửa chữa mã nguồn phần phần mềm Ethereal cho phù hợp với các tính năng mới. + Cài đặt và cấu hình thành công bộ Globus Toolkit 3.2 trên môi trường mạng máy tính Linux, cho phép thực thi các ứng dụng Grid. - 186 -
  18. Chương 8. Kết luận + Thiết kế và cài đặt các chức năng tìm kiếm máy tính trong Grid, gửi và thực thi các module bắt packet (Sensor), xử lý truy vấn trên các node (PacketInfoProvider), lấy thông tin từ các file dữ liệu. Việc cài đặt thử nghiệm một số chức năng cho thấy tính khả thi của mô hình và khả năng cài đặt thành công của ứng dụng trong môi trường Grid với middleware Globus Toolkit. Ứng dụng Grid NetManager là một dự án lớn, đòi hỏi đầu tư nhiều về công sức và thời gian. Trong quá trình làm luận văn, do phải dành thời gian tìm hiểu công nghệ và làm quen với các môi trường mới (hệ điều hành Linux, công cụ phát triển ứng dụng,…) nên những kết quả trên đây mới chỉ là bước đầu, việc phát triển ứng dụng đòi hỏi có những nghiên cứu, phân tích, thiết kế, cài đặt kỹ lưỡng hơn trong các giai đoạn sau. 8.2. Hướng phát triển, mở rộng của luận văn 8.2.1. Về luận văn Thực hiện các nghiên cứu sâu hơn về công nghệ Grid Computing và bộ GlobusToolkit, về mã nguồn các module, các thuật toán để ứng dụng tốt hơn trong thực tế, từ đó có thể phát triển, xây dựng các thành phần Grid hoặc tham gia các dự án nghiên cứu và triển khai ứng dụng Grid, tiến tới làm chủ công nghệ Grid Computing, đưa sức mạnh tính toán lớn với chi phí thấp vào các dự án nghiên cứu khoa học, kinh tế, thương mại của đất nước, thực hiện theo chủ trương “đi tắt đón đầu”, góp phần phát triển nền khoa học công nghệ nước nhà. 8.2.2. Về ứng dụng Hiện tại ứng dụng mới chỉ dừng lại ở mức thử nghiệm, trong tương lai dự định sẽ phát triển tiếp thành một ứng dụng hoàn chỉnh để có thể áp dụng vào thực tế: + Phát triển các chức năng còn thiếu của các module hiện tại. + Thiết kế, cài đặt các module còn lại trong mô hình ứng dụng. + Phát triển các chức năng quản lý dữ liệu, quản lý Grid để nâng cao hiệu suất Grid. - 187 -
  19. Chương 8. Kết luận + Cài đặt ứng dụng theo mô hình Grid Service để tận dụng các khả năng của công nghệ mới. 8.3. Lời kết Trong thời gian có hạn, chúng em mới chỉ nghiên cứu được một phần nhỏ về công nghệ Grid Computing, một lĩnh vực mới mẻ và được xem là công nghệ tính toán nền tảng trong tương lai. Có thể những kiến thức chúng em thu nhận được từ công nghệ chưa nhiều nhưng trong thời gian làm luận văn, nhờ những kỹ năng và kiến thức chúng em thu nhận, rèn luyện được qua quá trình học tập ở trường Đại học, chúng em đã phát triển được nhiều kỹ năng mới như : kỹ năng tìm kiếm thông tin, kỹ năng phân tích và xử lý vấn đề (trouble shooting), tinh thần vượt qua khó khăn, khả năng phối hợp làm việc, khả năng thích nghi với môi trường và công nghệ hoàn toàn mới (Linux và công nghệ Grid Computing) trong thời gian ngắn,…, tạo điều kiện để có những phát triển trong sắp tới. Chúng em nghĩ những gì đã đạt được rất quý cho chúng em sau này và tin rằng việc trang bị những kỹ năng thực tế cũng là một mục đích quan trọng của việc làm luận văn. Chúng em rất vui và hạnh phúc khi đã được thực hiện luận văn này. Xét về các mục tiêu đặt ra ban đầu, các kết quả đạt được cùng với những nỗ lực, cố gắng trong thời gian làm luận văn, chúng em xin tự đánh giá hoàn thành khá xuất sắc luận văn. - 188 -
  20. Phụ lục Phụ lục A. Các tiêu chí đánh giá tính khả khi của một dự án Grid Lược đồ đánh giá tính khả khi của ứng dụng được trình bày trong hình 0-1. Nó đưa ra các tiêu chí và các yêu cầu cần thiết của một giải pháp Grid, qua quá trình lượng giá các tiêu chí sẽ cho biết tính khả thi của ứng dụng có cao hay không. Ứng với mỗi tiêu chí có các cột sau: + Tầm vực : Tổng kết các khả năng có thể của tiêu chí. + Độ quan trọng : Trọng số cho biết mức độ quan trọng của tiêu chí khi so sánh với các yêu cầu của ứng dụng. + Nỗ lực : Trọng số cho biết mức độ nỗ lực cần thiết để đạt được tiêu chí đó. + Kỹ năng : Trọng số cho biết trình độ hiện tại của đội ngũ phát triển. + Tài nguyên : Trọng số cho biết khả năng và các kiểu của tài nguyên Grid. + Các ghi chú : Mỗi tiêu chí cần được đánh giá và cho điểm tương ứng theo một độ đo nào đó. Ở đây đề nghị độ đo với các giá trị H (cao), M(vừa), L (thấp), cũng có thể sử dụng các độ đo khác. Lưu ý, có thể thêm các tiêu chí khác vào bảng để đánh giá cho phù hợp với tình hình thực tế. Tiêu chí Trọng số (H-M-L) Ghi Độ STT Tầm vực (tăng dần Nỗ Kỹ Tài chú Mục quan theo nỗ lực) l ực năng nguyên trọng 1. Song song -> Mạng -> Luồng công Tuần tự việc 2. Một công việc -> nhiều Số công công việc. việc khác nhau 3. Không có công việc Độ sâu của con -> Rất sâu các công việc con. 4. Theo lô -> Đơn giản -> Kiểu công Song song -> Dựa trên việc EJB -> Phức tạp 5. Độc lập -> Phụ thuộc Mức độ chặt chẽ. phụ thuộc Hệ điều hành 6. Dung lượng Nhỏ -> Lớn bộ nhớ cho - 189 -
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
5=>2