Nghiên cứu tìm hiểu và xây dựng hệ thống quản lý phân phối phần mềm phân tán kết hợp p2p xây dựng mô hình và triển khai trên các hệ điều hành nguồn mở

98 18 0
Nghiên cứu tìm hiểu và xây dựng hệ thống quản lý phân phối phần mềm phân tán kết hợp p2p xây dựng mô hình và triển khai trên các hệ điều hành nguồn mở

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI *********♦********* PHẠM XUÂN LÂM NGHIÊN CỨU TÌM HIỂU VÀ XÂY DỰNG HỆ THỐNG QUẢN LÝ PHÂN PHỐI PHẦN MỀM PHÂN TÁN KẾT HỢP P2P, XÂY DỰNG MƠ HÌNH VÀ TRIỂN KHAI TRÊN CÁC HỆ ĐIỀU HÀNH NGUỒN MỞ LUẬN VĂN THẠC SĨ NGHÀNH : CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC TS HÀ QUỐC TRUNG HÀ NỘI 2009 -1- BẢN CAM ĐOAN Tôi Phạm Xuân Lâm, học viên cao học lớp Công nghệ thơng tin khóa 2007 – 2009 thực luận văn tốt nghiệp TS Hà Quốc Trung hướng dẫn Tôi xin cam đoan tồn nội dung trình bày luận văn kết tìm hiểu nghiên cứu riêng hướng dẫn TS Hà Quốc Trung, trình nghiên cứu đề tài “Nghiên cứu tìm hiểu xây dựng hệ thống quản lý phân phối phần mềm phân tán kết hợp P2P, xây dựng mơ hình triển khai hệ điều hành nguồn mở” Các kết liệu nêu luận văn hoàn toàn trung thực rõ ràng Mọi thơng tin trích dẫn tuân theo luật sở hữu trí tuệ, liệt kê rõ ràng tài liệu tham khảo Tôi xin chịu hoàn toàn trách nhiệm với nội dung viết luận văn Hà nội, ngày 31 tháng 10 năm 2009 TÁC GIẢ PHẠM XUÂN LÂM -2- MỤC LỤC BẢN CAM ĐOAN MỤC LỤC DANH MỤC HÌNH VẼ DANH MỤC BẢNG DANH MỤC TỪ VIẾT TẮT LỜI MỞ ĐẦU CHƯƠNG CÁC VẤN ĐỀ VỀ HỆ THỐNG PHÂN PHỐI PHẦN MỀM PHÂN TÁN 10 1.1 Các khái niệm phần mềm 10 1.1.1 Định nghĩa 10 1.1.2 Hoạt động phần mềm ứng dụng hệ thống máy tính 10 1.1.3 Các hình thức quy trình cung cấp phần mềm 11 1.2 Tổng quan hệ thống phân phối phần mềm phân tán 11 1.2.1 Khái niệm yêu cầu hệ thống phân phối phần mềm phân tán 11 1.2.2 Nguyên tắc hoạt động hệ thống phân tán phần mềm 12 1.2.3 Cách thức quản lý phần mềm hệ điều hành nguôn mở 13 1.2.4 Vai trò người quản trị hệ thống phân tán phần mềm 13 1.3 Trao đổi thành phần hệ thống phân tán 14 1.3.1 Giao tiếp Client Server 14 1.3.2 Giao dịch phân tán 14 1.3.3 Khôi phục chịu lỗi 15 1.3.4 Bảo mật 16 CHƯƠNG PHÂN PHỐI PHẦN MỀM TRÊN CÁC HỆ ĐIỀU HÀNH NGUỒN MỞ 20 2.1 Quản lý phân phối phần mềm Redhat sử dụng RPM 20 2.1.1 Cấu trúc gói RPM 20 2.1.2 Phân phối gói phần mềm RPM máy chủ 22 2.1.3 Q trình khai thác gói phần mềm RPM máy trạm 32 2.1.4 Các cơng cụ quản lý phân phối gói phần mềm RPM phổ biến 43 2.2 Quản lý phân phối phần mềm Debian 46 2.2.1 Phân phối phần mềm hệ điều hành Debian 47 -3- 2.2.2 Gói phần mềm hệ điều hành Debian 48 2.2.3 Các công cụ quản lý phân phối gói phần mềm deb phổ biến 54 2.2.4 So sánh đánh giá cách đóng gói phần mềm dùng RPM DPKG 59 2.3 Mạng ngang hàng (Peer to Peer – P2P) 62 2.3.1 Các kiến trúc sử dụng để phân tán 62 2.3.2 Mạng ngang hàng 64 2.3.3 Kiến trúc mạng ngang hàng 66 2.3.4 So sánh P2P với mơ hình Client-Server 70 2.3.5 Phát triển ứng dụng mạng ngang hàng 70 CHƯƠNG XÂY DỰNG HỆ THỐNG PHÂN PHỐI PHẦN MỀM PHÂN TÁN KẾT HỢP P2P 71 3.1 Yêu cầu mơ hình phân phối phần mềm phân tán 71 3.2 Xây dựng mô hình phân phối phần mềm phân tán 72 3.2.1 Mơ hình tổng thể chế làm việc 72 3.2.2 Mơ hình điểm phân tán 74 3.2.3 Mơ hình máy trạm 75 3.2.4 Mơ hình mạng tổng thể hệ thống 75 3.3 Cơ chế hoạt động giải pháp thành phần hệ thống 76 3.3.1 Trên Server 76 3.3.2 Trên máy trạm 81 3.4 Triển khai xây dựng hệ thống hệ điều hành nguồn mở 87 3.4.1 Đề xuất hệ thống 87 3.4.2 Triển khai hệ thống 88 3.5 Đánh giá hệ thống 89 3.5.1 Các thao tác hệ thống 89 3.5.2 Độ phức tạp thao tác 90 3.5.3 Phân tích đánh giá phức tạp hệ thống 93 KẾT LUẬN 95 TÀI LIỆU THAM KHẢO 97 -4- DANH MỤC HÌNH VẼ Hình 2-1: Cấu trúc gói RPM .21 Hình 2-2: Phần thơng tin gói RPM 22 Hình 2-3: Thơng tin tệp gói RPM .22 Hình 2-4: Quy trình đóng gói tệp RPM .23 Hình 2-5: Cấu trúc thư mục để tạo tệp RPM 23 Hình 2-6: Cấu trúc file spec 24 Hình 2-7: Q trình đóng gói RPM 28 Hình 2-8: Các bước trình cài đặt gói RPM trực tuyến 30 Hình 2-9: Mơ hình phân phối gói RPM 31 Hình 2-10: Các bước thực máy trạm cài đặt gói RPM 32 Hình 2-11: Các bước để xóa gói RPM cài đặt 34 Hình 2-12: Cơng cụ quản lý gói YAST 46 Hình 2-13: Tiến trình cài đặt gói Deb nhị phân 51 Hình 2-14: Tiến trình hủy bỏ gói deb nhị phân 51 Hình 2-15: Định dạng gói nguồn .52 Hình 2-16: Tổng quan q trình đóng gói debian .52 Hình 2-17: Các thao tác tạo gói nguồn gói nhị phân 53 Hình 2-18: Quản lý gói sử dụng Synaptic .57 Hình 2-19: Kiểm tra cấu hình gói cơng cụ Synaptic 58 Hình 2-20: Remote access model 63 Hình 2-21: Kiến trúc phân lớp NFS 64 Hình 2-22: So sánh mơ hình Client Server mơ hình P2P .65 Hình 2-23: Phân loại kiến trúc mạng ngang hàng 65 Hình 2-24: Mơ hình chia sẻ tập trung .66 Hình 2-25: Mơ hình chia sẻ túy .67 Hình 2-26:Mơ hình chia sẻ sử dụng mạng lai (Hybrid) 68 Hình 3-1: Mơ hình chung hệ thống phân phối phần mềm phân tán 73 Hình 3-2: Mơ hình khối điểm phân tán phần mềm .75 Hình 3-3: Các module máy trạm 75 -5- Hình 3-4: Mơ hình mạng tổng thể toàn hệ thống 76 Hình 3-5: Q trình đóng gói phần mềm 77 Hình 3-6: Khối dịch vụ .80 Hình 3-7: Sơ đồ cài đặt nâng cấp phần mềm .83 Hình 3-8: Các bước cài đặt phần mềm offline 85 Hình 3-9: Các bước thực gỡ bỏ phần mềm .86 Hình 3-10: Triển khai hệ thống lưu trữ .88 Hinh 3-11: Mơ hình đơn giản mạng phân tán phần mềm 88 -6- DANH MỤC BẢNG Bảng 2-1: Các tham số biên dịch gói RPM câu lệnh rpmbuild 29 Bảng 2-2: Bảng tham số cài đặt gói RPM sử dụng câu lệnh RPM -i 34 Bảng 2-3: Bảng tham số gỡ bỏ gói RPM sử dụng câu lệnh RPM -e 35 Bảng 2-4: Bảng tham số nâng cấp gói RPM sử dụng câu lệnh RPM -u .36 Bảng 2-5: Cú pháp cài đặt gói deb sử dụng dpkg .55 Bảng 2-6: Cú pháp cài đặt gói deb sử dụng apt-get 56 Bảng 2-7: So sánh tính bảo mật xác thực .59 Bảng 2-8: So sánh khả sử dụng công cụ linux 60 Bảng 2-9: So sánh khả mô tả liệu 60 Bảng 2-10: So sánh khả hỗ trợ tệp đặc biệt 61 Bảng 2-11: So sánh khả đóng gói 61 Bảng 2-12: So sánh khả mở rộng 62 Bảng 2-13: so sánh ưu nhược điểm P2P với Client/Server 70 Bảng 3-1: Các thao tác hệ thống phân phối phần mềm phân tán 90 -7- DANH MỤC TỪ VIẾT TẮT Từ viết tắt APT DB DPKG HĐH LAN MD5 NAS P2P RPM SWP YaST YUM Từ viết đầy đủ Advanced Package Tool Database Dibian Package Management Hệ Điều Hành Local Area Connection Message Digest Algorithm Network-attached storage Peer to Peer Redhat Package Management Software Processor Yet another Setup Tool Yellow dog Updater Modified -8- LỜI MỞ ĐẦU Ngày công nghệ thông tin truyền thông phát triển cách mạnh mẽ, mạng máy tính Internet đến với hầu nơi trái đất, từ nhu cầu trao đổi, phát triển chia sẻ phần mềm phát triển không ngừng địi hỏi chế quản lý phân phối phần mềm ngày phải linh hoạt, thuận tiện triển khai phạm vi rộng Các máy tính nối mạng chủ yếu dùng hai hệ điều hành: mã nguồn mở tiêu biểu hệ điều hành UNIX hệ điều hành mã nguồn đóng mà điển hình hệ điều hành Windows Những hệ điều hành có chế để phân phối phần mềm từ nơi mạng theo phương thức khác Trên UNIX mã nguồn cơng khai việc lấy mã nguồn để đóng gói phân phối thuận lợi, chế quản lý phân phối phần mềm tốt linh hoạt RPM, DPKG, YUM, APT…đã giúp người dùng dễ tiếp cận với kho tài nguyên phần mềm phong phú thường xuyên phát triển cộng đồng thông qua Internet Tuy nhiên điều kiện thực tế nay, hệ thống UNIX, người sử dụng gặp khó khăn tìm kiếm, cài đặt quản lý phần mềm, cách thức sử dụng hệ thống UNIX phức tạp đồng thời chưa có hệ thống kho chứa với sở liệu đầy đủ cập nhật thường xuyên để người dùng tìm kiếm tải phần mềm mà họ cần, nhà sản xuất phần mềm gặp khó khăn việc phân phối phần mềm Vì vậy, tơi lựa chọn đề tài “Nghiên cứu tìm hiểu xây dựng hệ thống quản lý phân phối phần mềm phân tán kết hợp P2P, xây dựng mơ hình triển khai hệ điều hành nguồn mở” nhằm mục đích tạo cho người sử dụng hệ điều hành nguồn mở dễ dàng tìm kiếm, tiếp cận với phần mềm thường xuyên cập nhật mà họ cần Trong luận văn này, trình bày làm ba phần lớn: • Chương 1: Các vấn đề hệ thống phân phối phần mềm phân tán • Chương 2: Nghiên cứu chế quản lý phân phối phần mềm phân tán có như: RPM, DPKG HĐH nguồn mở, tổng quan nghiên cứu công nghệ chia sẻ ngang hàng P2P -9- • Chương 3: Đề xuất giải pháp quản lý phân phối phần mềm phân tán chạy hệ điều hành nguồn mở cho phép người sử dụng quản lý, tìm kiếm cập nhật trực tuyến phần mềm thương mại phần mềm mã nguồn mở cách linh hoạt trực quan Trong q trình thực luận văn khơng tránh khỏi thiếu sót Rất mong tiếp nhận đóng góp ý kiến thầy, cơ, bạn tất người luận văn hồn thiện -83- Hình 3-7: Sơ đồ cài đặt nâng cấp phần mềm • Tải tệp cấu hình phần mềm danh sách gói cần cài từ điểm phân tán • Thực việc khiển tra tính xung đột phần mềm cài để đưa cảnh báo cho người dùng có tiếp tục cài phần mềm khơng bị xung đột với phần mềm khác, kiểm tra phù hợp kiến trúc phần mềm xem cài phần mềm khơng • Kiểm tra quyền thực thủ tục toán với phần mềm thương mại • Tải gói cần thiết máy lưu vào thư mục kho chứa để cài đặt, nâng cấp sửa đổi phần mềm theo ý họ cung cấp lại cho cộng đồng -84- • Kiểm tra tính phụ thuộc phần mềm, gói xem gói phụ thuộc hay phần mềm phụ thuộc cài máy để đưa định tải gói hay phần mềm cần thiết máy, điều làm cho việc tải phần mềm nhẹ nhanh hơn, tránh tải cho Server • Tiến hành thủ tục trước cài đặt như: kiểm tra ổ đĩa, tạo thư mục, tắt dịch vụ cần vv… • Mở gói để cài đặt nâng cấp phần mềm theo dẫn nhà cung cấp • Thực thủ tục sau cài đặt như: tạo shortcut, xóa bỏ tệp tạm thời, khởi động dịch vụ, cập nhật sở liệu vv… 3.3.2.3 Phân tán phần mềm Quá trình phân tán phần mềm bao gồm q trình đóng gói q trình phân tán Module đóng gói phần mềm có nhiệm vụ đóng gói tất phần mềm để chuẩn bị cho trình phân tán Các phần mềm đóng gói, hệ thống UNIX thơng thường đóng gói theo chuẩn RPM hay DEB.Q trình đóng gói phần mềm gói RPM DEB trình bày chương Việc đóng gói phần mềm máy trạm thực phần mềm phân tán, q trình đóng gói thực tương tự bước máy chủ Quá trình phân tán trình chia sẻ phần mềm máy trạm cho Server máy trạm khác hệ thống, chất, phần mềm phát tán từ máy trạm, đích đến máy chủ máy trạm khác hệ thống Trong trường hợp phần mềm phát tán từ máy trạm sang máy trạm khác, nhiệm vụ server giúp máy trạm bắt tay với đồng thời, tham gia phần vào trình điểu khiển 3.3.2.4 Hoạt động không trực tuyến Khi người dùng chọn phần mềm cần cài đặt hay gỡ bỏ, xảy hai trường hợp: • Phần mềm chưa cài máy: cho phép người dùng cài đặt mới, tự động tìm kiếm cài ổ cứng, CD Rom, thiết bị lưu trữ -85- di động để tìm cài thích hợp u cầu người dùng nơi lưu trữ cài cần thiết phần mềm để tiếm hành cài đặt theo trình tự sau: Hình 3-8: Các bước cài đặt phần mềm offline • Các phần mềm cài đặt máy: người dùng nâng cấp có nâng cấp phần mềm gỡ bỏ chúng Phần nâng cấp thực giống cài đặt thay phải cài đặt cài gói nâng cấp Đối với việc gỡ bỏ phần mềm cơng đoạn thực hình vẽ sau: -86- Hình 3-9: Các bước thực gỡ bỏ phần mềm Trước hết phần mềm phân tán máy trạm kiểm tra sở liệu vào xem phần mềm gồm tệp đặt đâu… Thực công việc, thủ tuc trước gỡ bỏ kiểm tra xem chúng có mở hay dùng vào cơng việc khơng để đóng ứng dụng lưu tệp liệu có liên quan… Thực việc kiểm tra tính phụ thuộc tệp xem có tệp dùng chung với phần mềm hay liệu khác không để đánh dấu chúng lại khơng gỡ bỏ chúng Tiến hành xóa tệp khơng dùng phần mềm hay sở liệu khác Thực thủ tục sau gỡ bỏ xóa thư mục, shortcut…gỡ bỏ đầu vào sở liệu -87- 3.4 Triển khai xây dựng hệ thống hệ điều hành nguồn mở Sau phần đề xuất để xây dựng hệ thống hoàn chỉnh, hệ thống đáp ứng nhu cầu phân tán phát triển cho công ty, tổ chức với số lượng máy tính vừa phải, phát triển thử nghiệm với số lượng máy nhỏ 1000 máy trạm có kết nối tới Mơ hình phù hợp với trường đại học, trường phổ thông, doanh nghiệp vừa nhỏ 3.4.1 Đề xuất hệ thống • Máy chủ: Máy chủ chọn thỏa mãn yêu cầu phân tích đề xuất Trên máy chủ có cài đặt hệ điều hành Linux Server phần mềm phân tán thiết kế Đáp ứng yêu cầu từ máy khách yêu cầu tới, với số lượng 1000 máy trạm, đảm bảo trả lời lúc tất máy trạm truy cập tới Có khả mở rộng, nâng cấp số lượng máy trạm kết nối tới tăng Có tính an toàn, bảo mật cao Trên máy chủ này, cài đặt phần mềm phân tán thiết kế, thực cấu hình máy chủ phần mềm phân tán, cài đặt kết nối với sở liệu hỗ trợ • Kho lưu trữ phần mềm Đề xuất hệ thống thử nghiệm với máy chủ, kết nối với thiết bị lưu trữ thông qua hệ thống mạng LAN, thiết bị lưu trữ coi kho chứa phần mềm gán địa IP cố định người dùng truy cập thơng qua điều khiển máy chủ Đề xuất sử dụng hệ thống lưu trữ NAS, sử dụng NAS không cần đầu tư lớn, nhiên đáp ứng mặt hiệu quả, dung lượng lưu trữ lớn, tính an toàn bảo mật cao, việc quản trị vận hành đơn giản Bên cạnh đó, NAS cho phép thực mở rộng dung lượng lưu trữ nhu cầu sử dụng tăng cao cách dễ dàng, nhanh chóng -88- Hình 3-10: Triển khai hệ thống lưu trữ • Trên máy trạm Sử dụng số máy trạm kết nối vào Server, máy trạm cài đặt phần mềm phân tán thiết kế phân tích Trong phần mềm phân tán cấu hình kết nối với Server phía qua đường truyền Internet 3.4.2 Triển khai hệ thống Tiến hành triển khai hệ thống với Server phần mềm lưu trữ đẩy lên kho lưu trữ NAS Các máy trạm cài đặt sẵn phần mềm phân tán Tiến hành bước kiểm tra hệ thống Hinh 3-11: Mô hình đơn giản mạng phân tán phần mềm Với hệ thống xây dựng, máy trạm thực tác vụ sau: -89- • Thực tải phần mềm từ máy chủ: Trên máy trạm, cập nhật danh sách phần mềm có sẵn máy chủ, thực tiến hành cài đặt • Cập nhật phần mềm: Khi có phần mềm cập nhật, máy chủ gưi thông tin phiên cập nhật tới máy trạm, máy trạm, người sử dụng tùy chọn có cập nhật phần mềm hay không, chọn, phiên cập nhật tải cài đặt máy tính • Tải phần mềm lên Server: gói phần mềm đóng gói upload lên Server, từ Server chia sẻ phần mềm cho máy khác hệ thống • Phân tán phần mềm: Các gói phần mềm phân tán từ máy trạm cho máy khác theo mơ hình chia sẻ ngang hàng, Server có nhiệm vụ giúp máy trạm bắt tay với 3.5 Đánh giá hệ thống Ứng dụng mơ hình đề xuất rõ ràng tạo thuận tiện lớn phân tán phần mềm Khi cài đặt thiết lập hệ thống cho tổ chức Hệ thống tổ chức sẽ: • Dễ dàng việc phân tán phần mềm, muốn cài đặt phần mềm máy tính, Server gửi thơng báo xuống máy trạm, từ máy trạm tải phần mềm yêu cầu về, đồng thời phiên máy trạm đảm bảo thống chúng • Dễ dàng đơn giản cho người sử dụng việc cài đặt, tìm kiếm cài đặt phần mềm Việc tải phần mềm dễ dàng, nhờ trình kiểm tra phụ thuộc chặt chẽ, phần mềm tải ln tương thích khơng gặp phải nhiều lỗi q trình cài đặt sử dụng • Cài đặt cập nhật phần mềm trực tuyến thông qua mơ hình chia sẻ ngang hàng làm cho Server khơng bị q tải • Dễ dàng thực chia sẻ phần mềm cho máy trạm khác hệ thống 3.5.1 Các thao tác hệ thống Các thao tác hệ thống để thiết lập vận hành, đối tượng tham gia, nơi thực hiện, chi tiết bước phải thực liệt kê bảng sau: -90- Đối tượng tham gia Nơi thực Cài đặt cấu hình máy chủ Người quản trị Trên kho phần mềm Cài đặt phần mềm phân tán máy chủ Người quản trị Trên kho phần mềm Thiết lập mạng Người quản trị Trên kho phần mềm Cấu hình hệ thống phân tán Người quản trị Trên kho phần mềm Thao tác Cài đặt phần mềm phân tán máy trạm Cấu hình phần mềm phân tán máy trạm Đóng gói phần mềm Tìm kiếm phần mềm Phân tán phần mềm Người Trên máy dùng trạm Người Trên máy dùng trạm Người Trên kho quản trị & phần mềm & người máy dùng trạm Người sử Trên máy dụng trạm Người quản trị Trên kho phần mềm Công việc phải làm Thiết lập máy chủ, cài đặt hệ điều hành, cấu hình tổng thể, thiết lập kho lưu trữ NAS Cài đặt phần mềm phân tán, tạo sở liệu lưu trữ, phân vùng lưu trữ phần mềm Thiết lập kết nối từ máy chủ tới máy trạm, thiết lập hệ thống tưởng lửa Cấu hình phần mềm, thực kiểm tra kết nối, kiểm tra trình module phần mềm phân tán Tải phiên phần mềm phân tán, cài đặt Thiết lập, cấu hình kết nối tới server (nếu cần) Chuẩn bị mã nguồn, bổ sung thông tin cho gói phần mềm, tiến hành biên dịch Nhập từ khóa để tìm kiếm Kiểm tra kết nối, kiểm tra hiệu hệ thống xung đột xảy Bảng 3-1: Các thao tác hệ thống phân phối phần mềm phân tán 3.5.2 Độ phức tạp thao tác Khi vận hành hệ thống, thao tác hệ thống bao gồm: đóng gói phần mềm, phân tán phần mềm, cài đặt phần mềm Việc phân tán phần mềm chia thành hình thức phân tán phần mềm nâng cấp phần mềm Quá trình cài đặt phần mềm thực máy trạm Độ phức tạp thao tác đánh giá thông qua thời gian, khối lượng thông tin trao đổi -91- 3.5.2.1 Thao tác đóng gói phần mềm Q trình đóng gói phần mềm, người sử dụng cần phải chuẩn bị mã nguồn, chuẩn bị phụ thuộc, thư viện cần thiết, bổ sung thơng tin cho gói phần mềm, tiến hành biên dịch, thời gian thực phụ thuộc vào hiệu máy tính, kích thước gói phần mềm Trong q trình đóng gói phần mềm, thời gian đóng gói phụ thuộc nhiều vào q trình nén liệu Việc nén liệu thông thường sử dụng chuẩn gzip bzip2 Hiện gói RPM tương lai gói Deb sử dụng giải thuật nén LZMA (Lempel-Ziv-Markov chain algorithm) LZMA thuật toán mặc định chung cho định dạng 7z.Với giải thuật LZMA tốc độ nén khoảng MB/s vi xử lý GHz Tốc độ giải nén khoảng 10-20 MB/s vi xử lý GHz Tuy nhiên kết mang tính tương đối, phụ thuộc vào cấu trúc CPU, số lượng core Dựa vào thử nghiệm việc sử dụng giải thuật nén khách (Practical Compressor Test) website http://www.grandtrunk.net/compression/ chuyên gia có tên John Goerzen thực đánh giá, kiểm tra với gói liệu có kích thước 6Gb đưa bảng thông số đánh giá: Không gian So sánh không Tiết kiệm (MB) gian với Gzip gzip 3398 100.00% bzip2 3590 92.91% lzma -1 3641 91.01% lzma -2 3783 85.76% Công cụ So sánh mặt thời gian với Gzip 100.00% 333.05% 195.58% 273.83% Những số cho ta thấy: • bzip2 tốt 7% better than gzip, nhiên thời gian tăng gấp lần • lzma -1 nén tốt bzip2, thời gian tăng gấp lần, với việc sử dụng giải thuật cho file có kích thước nhỏ thời gian nén nhanh nhiều • lzma -2 cho kích thước nhỏ đáng kể, thơi gian ngắn so với bzip2 Trong phần mềm xây dựng cho tùy chọn định dạng nén khác nhau, tùy thuộc vào nhu cầu người sử dụng -92- 3.5.2.2 Thao tác tìm kiếm • Máy chủ tìm kiếm trạm Một máy chủ quản lý nhiều máy trạm, máy trạm kết nối theo mơ hình P2P, sử dụng quản lý thông qua bảng băm phân tán DHT: o Địa IP node băm để xác định vị trí bảng băm - NodeID = SHA-1(Node IP Address) o Mỗi file liệu gán số định danh (Key) - Key = SHA-1(tên file) SHA-1(nội dung file) - Key giá trị không gian địa o Mỗi node quản lý khoảng giá trị không gian địa Dữ liệu lưu trữ node quản lý khoá liệu Dữ liệu lưu trực tiếp gián tiếp qua địa IP o Khi tìm kiếm liệu, thơng điệp tìm kiếm khoá K chuyển đến node DHT gặp node quản lý khố Như trường hợp xấu nhất, để tìm liệu, thông điệp chuyền khắp node • Q trình tìm kiếm thơng tin gói phần mềm Các thơng tin gói phần mềm khơng hồn tồn lưu sở liệu mà cịn lưu gói phân mềm, thơng tin file gói phần mềm hay phụ thuộc v.v… Các thông tin máy chủ tìm kiếm truy vấn Tương tự máy trạm, thông qua việc truy vấn mà phần mềm phân tán máy trạm lấy thơng tin gói phần mềm Ví dụ với cơng cụ rpm sử dụng lệnh rpm –q, với tham số để tìm kiếm gói phần mềm thơng tin gói phần mềm Ta khơng sâu vào phân tích q trình cơng việc hệ thống, phần mềm phân tán mức có nhiệm vụ chuyển yêu cầu xuống cho rpm làm việc -93- 3.5.2.3 Tải phần mềm Kết nối tới Server, tiếp nhận thông tin, bắt tay với máy trạm khác, tiến hành tải gói phần mềm.Phụ thuộc vào server số lượng máy tính hệ thống, phụ thuộc vào 3.5.2.4 Cập nhật phần mềm Kiểm tra phiên gói phần mềm, kết nối tới Server, tiếp nhận thông tin, bắt tay với máy trạm khác, tiến hành tải gói phần mềm.Phụ thuộc vào server số lượng máy tính hệ thống, phụ thuộc vào tính sẵn có gói 3.5.2.5 Cài đặt phần mềm Trong trình cài đặt phần mềm, bước cần thực kiểm tra tính phụ thuộc, thực kịch có sẵn gói, tiến hành cài đặt Thời gian cài đặt phần mềm phụ thuộc vào phụ thuộc vào hiệu máy trạm kích thước phần mềm • Đánh giá theo số lượng khối lượng thông tin trao đổi Số lượng khối lượng gói phần mềm ảnh hưởng tới: o Băng thông mạng, thời gian thực để tải gói phần mềm o Khả lưu trữ hiệu làm việc hệ thống o Q trình đóng gói, cài đặt gói phần mềm 3.5.3 Phân tích đánh giá phức tạp hệ thống Độ phức tạp hệ thống, thời gian để hệ thống làm việc cụ thể thời gian để người sử dụng tải cài đặt thành công phần mềm yêu cầu phụ thuộc vào đường truyền mạng, kích thước gói phần mềm hiệu làm việc máy chủ Thời gian để tải gói phần mềm phụ thuộc vào số lượng máy trạm tham gia hệ thống, với mơ hình sử dụng phân tán chia sẻ ngang hàng với kiến trúc mạng lai làm cho hệ thống hạn chế tối đa việc Flooding query, tránh tượng nút cổ chai Việc tốc độ làm việc hệ thống phụ thuộc vào số lượng máy chủ máy trạm kết nối tới, chia sẻ P2P nên có nhiều máy trạm tham gia kết nối làm tăng tốc độ tải gói phần mềm, nhiên nhiều trường hợp -94- làm ảnh hưởng đến hiệu làm việc hệ thống Việc đánh giá thực chi tiết triển khai, thử nghiệm, đưa hệ thống vào làm việc thực tế -95- KẾT LUẬN Sau thời gian tìm hiểu nghiên cứu phương thức quản lý phân tán phần mềm, đề tài luận văn tốt nghiệp “Nghiên cứu tìm hiểu xây dựng hệ thống quản lý phân phối phần mềm phân tán kết hợp P2P, xây dựng mơ hình triển khai hệ điều hành nguồn mở” hồn thành với hướng dẫn tận tình TS Hà Quốc Trung Nội dung đồ án tốn nghiệp trình bày tổng quan hệ thống phân phối phần mềm phân tán, phương thức quản lý phần mềm có RPM, DPKG So sánh rút ưu nhược điểm của phương thức quản lý phân phối làm sở cho việc đề xuất giải pháp phân phối phần mềm cách hoàn thiện hệ điều hành nguồn mở Luận văn xuất phương thức quản lý phân phối phần mềm chạy hệ điều hành nguồn mở có khả quản lý, phân phối, cài đặt gỡ bỏ, nâng cấp phần mềm cách linh hoạt Giúp cho người dùng tìm kiếm quản lý, cài đặt, nâng cấp trực tuyến phần mềm mở phần mềm có sẵn hệ thống cách dễ dàng Trong giải pháp này, có đề xuất sử dụng ứng dụng mơ hình phân tán theo mạng ngang hàng P2P từ đáp ứng chia sẻ phân tán phần mêm với quy mô lớn, đảm bảo khơng tắc nghẽn mạng, tính an tồn bảo mật cao Trong phạm vi đề tài cịn nhiều thiếu sót, hạn chế Đặc biệt chưa tìm hiểu thật sâu tồn việc phân tích, thiết kế chưa tính tốn, ràng đến ràng buộc, hạn chế gặp phải triển khai hệ thống Hệ thống xây dựng, thiết kế thời gian ngắn chưa hồn chỉnh, để hồn thiện đề tài thời gian tới cố gắng thực giai đoạn tiếp theo, cụ thể là: Giai đoạn 1: Thiết kế cách chi tiết module máy chủ máy trạm Tiến hành phát triển phần mềm phân tán cho máy chủ máy trạm theo thiết kế luận văn Giai đoạn 2: Tiến hành xây dựng hệ thống điểm phân tán với thiết bị máy chủ, kho chứa, sở dữ, đường truyền… -96- Giai đoạn 3: Triển khai cài đặt, vận hành thử nghiệm điểm phân phối phần mềm tổ chức thời gian định để theo dõi, kiểm nghiệm, đánh giá tiến hành hiệu chỉnh sửa chữa để hệ thống hoạt động kỹ thuật ổn định Giai đoạn 4: Khi kết thử nghiệm đạt hệ thống hoạt động có hiệu tiến hành thiết kế mạng phân phối triển khai diện rộng Triển khai hệ thống phân phối phần mềm phân tán vấn đề lớn, cần thiết với nhu cầu thực tế nà Trong phạm vi đề tài dừng lại q trình phân tích thiết kế Để tiếp tục theo hướng phát triển cần có nhiều thời gian, nhân lực để thiết kể chi tiết thực Đồng thời, triển khai, ứng dụng, xây dựng hệ thống thực tế cần có nguồn tài lớn Tác giả ln mong muốn thực hợp tác tất bạn bè, đồng nghiệp thầy giáo đơn vị có quan tâm -97- TÀI LIỆU THAM KHẢO [1] Bùi Ngọc Châu - "Nghiên cứu phương thức quản lý phân phối phần mềm phân tán, đề xuất giải pháp quản lý phân phối phần mềm phân tán chạy hệ điều hành Windows" - 2008 [1] Andrew Tanenbaum & Maarten Van Steen – "Distributed Systems Principles And Paradigms" [2] George Coulouris, Jean Dollimore, Tim Kindberg – "Distributed Systems Concepts and Design" [3] Fedora Project, sponsored by Red Hat, Copyright © 2008 Red Hat, Inc and others All rights reserved- The Fedora Project is maintained and driven by the community and sponsored by RedHat [4] Maximum RPM Copyright © 2000 by Red Hat, Inc http://www.opencontent.org/openpub/ [5] APT HOWTO Copyright © 2001, 2002, 2003, 2004 Gustavo Noronha Silva http://www.debian.org/doc/ddp [6] http://www.debian.org/doc/FAQ/index.en.html#contents [7] http://www.snort.org/docs/setup_guides/deb-snort-howto.pdf [8] http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/DebianBinary-Package-Building-HOWTO.pdf [9] http://www.isotton.com/software/debian/docs/repository-howto/repositoryhowto.pdf [10] http://www.debian.org/doc/manuals/distribute-deb/distribute-deb.html [12] http://albertjh.cymaho.com/wp-content/uploads/2007/09/20060721-googledebianpackages.pdf [13] http://liw.iki.fi/liw/talks/debian-packaging-tutorial.pdf ... Quốc Trung, trình nghiên cứu đề tài ? ?Nghiên cứu tìm hiểu xây dựng hệ thống quản lý phân phối phần mềm phân tán kết hợp P2P, xây dựng mơ hình triển khai hệ điều hành nguồn mở? ?? Các kết liệu nêu luận... quan hệ thống phân phối phần mềm phân tán 1.2.1 Khái niệm yêu cầu hệ thống phân phối phần mềm phân tán Hệ thống phân phối phần mềm phân tán định nghĩa hệ thống đó, máy tính nối với tạo thành... phối phần mềm phân tán 11 1.2.1 Khái niệm yêu cầu hệ thống phân phối phần mềm phân tán 11 1.2.2 Nguyên tắc hoạt động hệ thống phân tán phần mềm 12 1.2.3 Cách thức quản lý phần mềm hệ điều hành

Ngày đăng: 27/02/2021, 23:41

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan