PHÁT TRIỂN ỨNG DỤNG CHIA SẺ FILE NGANG HÀNG

40 589 2
PHÁT TRIỂN ỨNG DỤNG CHIA SẺ FILE NGANG HÀNG

Đ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

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Dương Khánh Chương PHÁT TRIỂN ỨNG DỤNG CHIA SẺ FILE NGANG HÀNG KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Hà Nội - 2006 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Dương Khánh Chương PHÁT TRIỂN ỨNG DỤNG CHIA SẺ FILE NGANG HÀNG KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Cán hướng dẫn: T.S Nguyễn Đại Thọ HÀ NỘI - 2006 Tóm tắt Các hệ thống chia sẻ file ngang hàng có bước phát triển mạnh mẽ năm gần Trong kiến trúc client/server, tất tài nguyên tập trung vào chỗ, điểm nút truy nhập vào không giao tiếp với Ngược lại, điểm nút tham gia vào mạng ngang hàng chứa tài nguyên phát trao đổi trực tiếp với không thông qua server Các hệ thống ngang hàng tổ chức theo hai mô hình : túy lai ghép Mô hình ngang hàng túy giải vấn đề tìm kiếm tài nguyên dựa vào mạng lưới điểm nút đầu mối Trong đó, mô hình ngang hàng lai ghép lưu địa nguồn cung cấp tài nguyên server mục Nội dung khóa luận phát triển, xây dựng thử nghiệm số hệ thống chia sẻ file ngang hàng theo phương thức sử dụng nhiều server mục Các server tổ chức liên kết với theo chuỗi hay cách lặp toàn Trong hệ thống liên kết chuỗi, server lưu lại mục điểm nút quản lý Trong hệ thống lặp toàn bộ, server lưu lại mục tất điểm nút, điểm nút thuộc chức quản lý server Ứng dụng phát triển công nghệ NET Hiệu hai mô hình so sánh đánh giá thông qua lý thuyết thực nghiệm Mục lục Chương Giới thiệu Chương Các mô hình mạng chia sẻ file ngang hàng Chương Xây dựng hệ thống Chương Minh họa hệ thống .16 Chương Thử nghiệm đánh giá 25 Chương Kết luận hướng phát triển 35 Tài liệu tham khảo 36 Chương Giới thiệu 1.1 Bối cảnh chung Bạn tưởng tượng hệ thống lưu trữ thông tin lý tưởng dành cho toàn cầu Hệ thống nhanh chóng xác định gửi tệp tin (có thể dung lượng lớn) số hàng triệu tệp tin tới đâu giới Để đảm bảo tính này, hệ thống có khả tự cài đặt cấu hình, tự hồi phục sau cố không theo chế “kiểm soát từ trung tâm” hệ thống lưu trữ phổ dụng Ngoài ra, hệ thống phải bảo mật, hỗ trợ đồng thời hàng triệu người sử dụng, có khả “miễn dịch” trước công- công vật lý công thông qua phần mềm, đoạn mã nguy hại Đương nhiên, nhà quản trị “mơ” hệ thống vậy, đặc biệt mạng Internet ngày trở thành nhân tố quan trọng định thành công kinh doanh Trên thực thế, hệ thống lý tưởng thực chất tồn dạng mạng chia sẻ ngang hàng (ví dụ eDonkey, KaZaA) Nhìn từ góc độ kỹ thuật, “peer-to-peer” hay mạng ngang hàng khả tương tác trực tiếp hai máy tính cài đặt phần mềm ứng dụng mà thông qua máy tính trung gian Mô hình kết nối khiến nhiều người liên tưởng tới mạng Internet, nhiên mạng ngang hàng mang đặc thù riêng Ngược dòng thời gian, ban đầu mạng Internet thiết kế theo mô hình phi tập trung Tuy nhiên ngày Internet biến đối theo hướng “một trục- nhiều que” (hub-and-spoke) Các máy tính cá nhân mạng lưới kết nối với server trung tâm để tiến hành tác vụ gửi/nhận email, duyệt web v.v… Mạng bao gồm nhiều máy tính ngang hàng, vừa sản xuất vừa tiêu thụ nội dung, không khác tivi đón chờ tín hiệu từ trạm thu phát Mạng ngang hàng kết nối trực tiếp máy tính với nhau, sau kết nối, máy tính cá nhân thực thi tác vụ mà chúng thực đứng Hầu hết hệ thống mạng ngang hàng cho phép người sử dụng chia sẻ tài nguyên, bao gồm khả xử lý, khả lưu trữ băng thông Trong trường hợp chia sẻ tệp tin âm nhạc, người sử dụng thực tế chia sẻ hệ thống tệp tin mà qua đó, đối tượng tham gia mạng tải tệp tin âm nhạc mà yêu thích Theo thống kê CacheLogic (công ty dịch vụ P2P có trụ sở Anh), 50% giao thông mạng xuất phát từ ứng dụng chia sẻ ngang hàng “P2P bước tiến hoá hoàn toàn tự nhiên hoàn hảo mạng Internet Thực tế, P2P mang Internet trở lại nguyên bản- theo ý tưởng người sáng lập Internet”, Ian Clarke- sáng lập viên mạng FreeNet khẳng định Hiện mạng ngang hàng ngày phát triển tài nguyên thường chia sẻ mạng ngang hàng Một ví dụ nhỏ, phần lớn công ty kinh doanh trò chơi trực tuyến cung cấp trò chơi đến khách hàng bên cạnh đường dẫn download trực tiếp từ server công ty cung cấp khả cho phép khách hàng download từ mạng ngang hàng nhằm tránh tắc nghẽn server 1.2 Mục đích khóa luận Mục đích khóa luận xây dựng số hệ thống chia sẻ file ngang hàng dựa nhiều server mục Phần xây dựng server chương trình điểm nút xây dựng Net Microsoft, thành phần giao tiếp với qua webservice Sau xây dựng thành công hệ thống, đề xuất số công thức lý thuyết nhằm so sánh hiệu mô hình Tiếp theo xây dựng chạy chương trình thử nghiệm để đánh giá kết thực thực tế so sánh đánh giá kết lý thuyết trình bày trước Tài liệu [5] cung cấp tranh toàn cảnh tảng công nghệ lĩnh vực ứng dụng kiến trúc mạng ngang hàng Bài báo [6] sâu khảo sát kết nghiên cứu triển khai lĩnh vực chia sẻ file ngang hàng Các hệ thống chia sẻ file ngang hàng sử dụng server mục phân tích đánh giá chi tiết [1] Báo cáo [4] thảo luận phương pháp tạo mục tìm kiếm bối cảnh rộng hơn, bao gồm hệ thống ngang hàng hoàn toàn phi tập trung, không dựa server tạo mục tập trung 1.3 Bố cục khóa luận Phần khóa luận tổ chức sau: Chương giới thiệu mô hình chia sẻ mạng ngang hàng giới thiệu Napstermột phần mềm chia sẻ mạng ngang hàng tiêu biểu Chương trình bày nguồn gốc ý tưởng cấu trúc hệ thống chia sẻ ngang hàng sử dụng nhiều server mục, bao gồm phần xây dựng server xây dựng chương trình điểm nút Chương minh họa mô hình tổ chức sử dụng nhiều server mục xây dựng Chương trình bày phương pháp đánh giá mặt lý thuyết chương trình thử nghiệm thực tế Cuối kết luận phương hướng phát triển Chương Các mô hình mạng chia sẻ file ngang hàng 2.1 Mô hình mạng ngang hàng túy Mô hình mạng ngang hàng túy hoàn toàn không phụ thuộc vào server Một ứng dụng mạng ngang hàng túy có khả tự động tìm nút khác cách linh hoạt, ko cần giúp đỡ server Việc liên lạc nút bao gồm download upload file, hoạt động trực tuyến, gửi yêu cầu – đáp trả yêu cầu,… Tính mô hình mạng ngang hàng phá vỡ phương thức truyền thống mô hình client/server Mạng ngang hàng túy cho phép người dùng thiết lập quy tắc cho họ, thiết lập môi trường mạng cho họ Mạng ngang hàng túy cung cấp tính “nối chạy” làm việc với internet, bạn cần kết nối với internet sử dụng tiện ích mạng ngang hàng Một lợi khác mạng ngang hàng mô hình không hoạt động hiệu internet mà hoạt động hiệu mạng cục Lan, intranet Tuy nhiên, vấn đề khó khăn với mô hình mạng ngang hàng túy việc tìm nút mạng Do trung tâm quản trị quản lý nút nút đăng nhập, người dùng buộc phải tự xác định nút khác Hình Mô hình mạng ngang hàng túy 2.2 Mô hình lai ghép Trong mô hình mạng ngang hàng lai ghép, hay nhiều server bổ sung Tuy nhiên server đóng vai trò giúp nút tìm kiếm dễ dàng, giải khó khăn mô hình túy gặp phải Mỗi nút đăng nhập/thoát khỏi hệ thống, nút kết nối với máy chủ đăng ký, server lưu lại mục nút Khi nút cần tìm dịch vụ/tài nguyên nút khác, người dùng hỏi server, server dựa mục lưu để trả địa nút thỏa mãn yêu cầu Sau đó, nút kết nối với lúc máy chủ không đóng vai trò nào, việc cung cấp/sử dụng tài nguyên/dịch vụ hoàn toàn nút với Hình Mô hình mạng ngang hàng lai ghép Trong mô hình chia sẻ mạng ngang hàng lai ghép, nhằm tăng tối đa số người dùng, người ta thường sử dụng nhiều server mục Tùy theo vai trò liên kết serve, người ta chia thành nhiều kiến trúc, báo cáo này, tập trung nghiên cứu kiến trúc sau: • Kiến trúc liên kết chuỗi: Các server liên kết với thành chuỗi để trả lời truy vấn điểm nút Khi điểm nút đăng nhập, có server cập nhật mục thông tin nút Khi điểm nút yêu cầu tìm kiếm tài nguyên, máy chủ cục không tìm thấy số lượng tài nguyên đáp ứng đủ yêu cầu, chuyển yêu cầu đến server khác chuỗi Các server khác tìm kiếm mục trả lại kết cho server Việc tìm kiếm chuyển server kết thỏa mãn yêu cầu (về số lượng kết quả) server tham gia tìm kiếm Trong mô hình này, việc đăng nhập thực nhanh diễn server việc tìm kiếm tốn nhiều thời gian server chuỗi thực Khi xác suất tìm thấy tài liệu server thấp, thời gian tìm kiếm trung bình tăng lên việc tìm kiếm phải thực nhiều server • Kiến trúc lặp mục toàn bộ: Trong kiến trúc này, điểm nút thuộc server đăng nhập, thông tin mục cập nhật server đó, đồng thời server chuyển thông tin mục tới toàn server khác để tất server cập nhật thông tin điểm nút Vì điểm nút đăng nhập, tất server câp nhật mục tốn nhiều thời gian, chi phí Bù lại, điểm nút yêu cầu tìm kiếm tài nguyên, thời gian tìm kiếm nhanh phải thực server (vì tất server có đầy đủ thông tin, không cần thiết phải hỏi lẫn nhau) Thời gian tìm kiếm không phụ thuộc vào xác suất có tìm thấy tài liệu hay không Mô hình hiệu thông tin mục ít, khối lượng lưu trữ không lớn 2.3 Phần mềm chia sẻ file ngang hàng tiêu biểu – Napster Napster [7] Shawn Fanning (19 tuổi) viết vào năm 1999 Mô hình Napster tập trung vào việc chia sẻ file nhạc MP3 Khi bạn cần tìm kiếm hát, bạn mở ứng dụng Napster, ứng dụng đăng nhập vào server trung tâm qua internet Server lưu giữ mục tất người dùng khác, lưu trữ cấu trúc thư mục chứa file MP3 người dùng Các thông tin tự động cập nhật lại người dùng đăng nhập vào hệ thống Khi bạn gửi yêu cầu tìm kiếm, server Napster tìm kiếm mục người dùng online liệt kê người dùng có chứa hát bạn yêu cầu Sau bạn chọn kết danh sách liên kết trực tiếp tới người dùng đó, kể từ máy chủ không vai trò nữa, việc download file người dùng Chính file nhạc lưu trực tiếp máy phục vụ Napster không bán, không lưu trữ, không chuyển file nhạc, máy phục vụ Napster giúp bạn tìm file nhạc máy người khác giúp bạn kết nối với điểm nút khác Điểm nút B (username:trung) đăng nhập vào server S2 Database server sau connect Server S1: 22 Server S2: Như điểm nút A kết nối với server S1, server S2 lưu trữ thông tin điểm nút A Cơ sở liệu server Điểm nút B yêu cầu tìm kiếm với từ khóa: network, server S2 trả lại kết tìm kiếm điểm nút A mà không cần gọi webservice server S1 Sau nhận kết quả, điểm nút B kết nối trực tiếp với điểm nút A lấy tài liệu cần thiết về, server kết thúc vai trò 23 24 Chương Thử nghiệm đánh giá Một cách cảm tính ta thấy mô hình tổ chức nhiều server liên kết chuỗi có thời gian đăng nhập nhanh, thời gian tìm kiếm lâu tổ chức nhiều server lặp toàn mục đăng nhập chiếm nhiều thời gian tìm kiếm nhanh Để đánh giá hai mô hình xây dựng phía trên, đưa số giả thiết công thức dựa suy luận toán học, sau xây dựng chương trình thử nghiệm để đánh giá công thức lý thuyết đưa 5.1 Công thức tính Để đưa công thức lý thuyết, đề xuất số tham biến: − Tổng số file tập file ảo để điểm nút chọn chia sẻ: n − Số lượng server mục: s − Số lượng file nút chia sẻ: k − Số điểm nút đăng nhập vào server mục: m − Độ trễ truyền thông liên kết: D Giả sử thời gian xử lý cục server nhỏ, bỏ qua Ta dễ dàng suy công thức xấp xỉ sau • Đối với mô hình liên kết chuỗi Thời gian đăng nhập trung bình (bao gồm chia sẻ) 4D Thật vậy, mô hình này, việc đăng nhập tiến hành server gồm bước: đăng nhập vào hệ thống gửi danh sách file điểm nút chia sẻ Tại bước, thời gian truyền thông 2D tổng thời gian trình đăng nhập 4D (Do bỏ qua thời gian xử lý cục bộ) Thời gian tìm kiếm trung bình m mk −   k  D + D( s − 1) 1 −  ≈ D1 + ( s − 1)e n  n    k nhỏ so với n   Thời gian tìm kiếm trung bình mô hình liên kết chuỗi phụ thuộc vào xác suất tìm thấy tài liệu server Với số file nút chia sẻ k, tổng số file tập 25   k n file ảo n, xác suất KHÔNG tìm thấy tài liệu điểm nút 1 −  Do có m điểm nút đăng nhập vào server mục, xác suất KHÔNG tìm thấy tài liệu server m  k 1 −  Nếu việc tìm kiếm không thành công server đầu tiên, server phải gửi  n yêu cầu đến server thứ 2, tài liệu chưa tìm thấy, yêu cầu gửi có kết tìm kiếm đủ tất server Khi server yêu cầu tìm kiếm, thời gian tìm kiếm tăng thêm 2D quãng thời gian truyền thông Như thời gian tìm kiếm trung bình  k D + D( s − 1) 1 −   n m Có thể dễ thấy xác suất tìm thấy tài liệu server 1, thời gian tìm kiếm đạt nhỏ 2D (do phải tìm server) Trong trường hợp xác suất tìm thấy tài liệu server 0, thời gian tìm kiếm lớn 2Ds (do phải tìm kiếm tất server) Như mô hình liên kết chuỗi, thời gian đăng nhập trung bình số, phụ thuộc vào độ trễ truyền thông Tuy nhiên thời gian tìm kiếm phụ thuộc vào: số lượng server xác suất tìm thấy tài liệu server Khi nhiều điểm nút tham gia chia sẻ chia sẻ nhiều tài liệu, thời gian tìm kiếm nhanh xác suất tìm thấy tài liệu server lớn Điều thể qua thử nghiệm thực tế • Đối với mô hình lặp toàn Thời gian đăng nhập trung bình (bao gồm chia sẻ) 4Ds Như trình bày trên, thời gian đăng nhập trung bình (bao gồm thời gian chia sẻ) server 4D, tất server phải tham gia trình đăng nhập nên tổng thời gian đăng nhập 4Ds Thời gian tìm kiếm trung bình 2D Trong mô hình này, server lưu thông tin tất điểm nút, việc tìm kiếm diễn server thời gian tìm kiếm 2D (Giả sử bỏ qua thời gian xử lý cục bộ) 26 Như mô hình lặp toàn bộ, thời gian đăng nhập thời gian tìm kiếm phụ thuộc vào độ trễ truyền thông số lượng server Việc tìm kiếm diễn server nên thời gian hoàn toàn không phụ thuộc vào xác suất tìm thấy tài liệu 4.2 Phương pháp thử nghiệm Để kiểm nghiệm hiệu hai kiến trúc liên kết chuỗi lặp toàn bộ, xây dựng chương trình mô hoạt động chia sẻ file hệ thống gồm server mục (s = 2) nhiều điểm nút Chương trình gọi webservice nhiều lần tương ứng giả lập vai trò nhiều điểm nút Chúng tạo tập file ảo (chỉ có tên nội dung) gồm 500 file (n = 500) Mỗi điểm nút ảo chia sẻ 10 file (k = 10), lấy ngẫu nhiên số 500 file Các điểm nút ảo không tồn thật, chương trình mô theo tương tác với server mục Để đánh giá thời gian đăng nhập trung bình, chương trình thực 100 lần đăng nhập lấy tổng thời gian chia cho 100 Mỗi lần đăng nhập kèm theo với đăng ký chia sẻ 10 file Để đánh giá thời gian tìm kiếm trung bình, trước tiên chương trình thực đăng nhập cho tất điểm nút ảo, điểm nút ảo chia sẻ 10 file chọn ngẫu nhiên nói Số lượng điểm nút ảo đăng nhập vào server chọn thử nghiệm 10, 20, 30, 40, 50 (m = 10, 20, 30, 40, 50) Sau chương trình gọi server thực 100 yêu cầu tìm kiếm, đo tổng thời gian trả lời chia cho 100 File yêu cầu tìm kiếm chọn ngẫu nhiên tập 500 file cho Độ trễ truyền thông liên kết 50 ms (D = 50 ms) Như hiểu chương trình thử nghiệm xây dưng sau: Khi ấn nút thử nghiệm, chương trình yêu cầu server xóa toàn sở liệu cũ, sau gửi yêu cầu webservice để server cập nhật sở liệu thỏa mãn tham số cho Tiếp theo chương trình thực 100 lần thử nghiệm lấy tổng thời gian chia cho 100 để tính thời gian trung bình thực trình Đo thời gian trung bình trình login hệ thống Khi ấn nút “Tính thời gian Login trung bình”, chương trình giả lập trình Login, sau server hoàn thành trình login trả kết thành công, chương trình tính thời gian thực thi Việc login thực nhiều lần kết tính trung bình Thời gian hoàn thành tương ứng sau: Với kiến trúc lặp toàn bộ: Do trình login phải thực server, thời gian cho điểm nút login trung bình 500ms 27 Với kiến trúc chuỗi: Thời gian login cho điểm nút trung bình là: 219ms Đo thời gian tìm kiếm trung bình 28 Đối với kiến trúc lặp toàn bộ, việc tìm kiếm diễn server nên kết thực nhanh, thời gian tìm kiếm trung bình yêu cầu là: 128ms Đối với kiến trúc chuỗi, thời gian trung bình thực yêu cầu tìm kiếm là: 219ms Với tham số đưa (số lượng điểm nút: 10, số lượng tài liệu điểm nút chia sẻ: 10), xác suất tìm thấy tài liệu server 10.10/500 = 0.2 (do tập file ảo gồm 500 file) Như phần lớn trường hợp việc tìm kiếm phải thực server, thời gian truyền thông cao dẫn đến thời gian tìm kiếm có kết 29 4.3 Đánh giá Với thử nghiệm vừa rồi, ta có số nhận định: Thời gian đăng nhập lâu đáng kể so với thời gian tìm kiếm, điều kiện số lượng tìm kiếm xác suất tìm kiếm thành công server cao, việc sử dụng kiến trúc chuỗi đem kết tốt hơn, tránh nghẽn mạng có nhiều điểm nút tham gia đăng nhập Đồng thời với xác suất tìm kiếm thành công server thấp, có nhiều yêu cầu tìm kiếm, nên triển khai mô hình lặp mục toàn để có thời gian tìm kiếm thấp Để có nhìn chi tiết hơn, tiến hành thử nghiệm với giá trị tham biến thay đổi thống kê lại sau: 30 Trường hợp Số điểm nút: từ 10 đến 50 Số file điểm nút chia sẻ: 10 Thử nghiệm đo thời gian Login trung bình, kết sau Hình Đồ thị thời gian Login trung bình với số điểm nút thay đổi Nhận xét: đồ thị đường thẳng gần song song với trục hoành, điều hợp lý số lượng điểm nút không ảnh hưởng đến thời gian login trung bình điểm nút Ta thấy đường lý thuyết phía lý thuyết bỏ qua tính toán xử lý cục (coi 0) Tuy nhiên hình dáng đường thực tế đường lý thuyết mô hình chứng tỏ đắn lý thuyết 31 Trường hợp Số điểm nút: 10 Số file điểm nút chia sẻ: 10 đến 50 Thử nghiệm đo thời gian Login trung bình, kết sau Hình Đồ thị thời gian Login trung bình với số file điểm nút chia sẻ thay đôi Nhận xét: Thời gian login trung bình tăng tuyến tính với số file điểm nút chia sẻ Đường thực tế đường lý thuyết có khác hình dáng tính toán lý thuyết bỏ qua độ dài liệu Khi số file điểm nút chia sẻ tăng lên, độ dài liệu truyền mạng tăng thời gian login thực tế tăng tuyến tính đồ thị 32 Trường hợp Số điểm nút: 10 đến 50 Số file điểm nút chia sẻ: 10 Số lần thử nghiệm để tính giá trị trung bình: 10 Thử nghiệm đo thời gian trung bình thực tìm kiếm Hình Đồ thị thời gian tìm kiếm trung bình với số điểm nút thay đổi Nhận xét: Thực tế kiểm nghiệm cho thấy với dự báo lý thuyết Ở mô hình liên kết chuỗi, số điểm nút tăng lên, xác suất tìm thấy tài liệu tăng nên xác suất yêu cầu server khác tham gia tìm kiếm giảm, thời gian tìm kiếm trung bình giảm dần Ta thấy đường thực tế đường lý thuyết hình dạng đường tương ứng tương đương 33 Trường hợp Số điểm nút: 10 Số file điểm nút chia sẻ: 10 đến 50 Số lần thử nghiệm để tính giá trị trung bình: 10 Thử nghiệm đo thời gian trung bình thực tìm kiếm Hình 10 Đồ thị thời gian tìm kiếm trung bình với số file điểm nút chia sẻ thay đổi Nhận xét: Tương tự trường hợp 3, số file điểm nút chia sẻ tăng lên, thời gian tìm kiếm trung bình mô hình liên kết chuỗi giảm Đường thực tế mô hình lặp toàn có phần tăng tuyến tính do: số lượng file tăng dẫn đến có nhiều kết quả, độ dài liệu truyền tăng (trong lý thuyết bỏ qua điều này) Như với chương trình thử nghiệm, ta kiểm tra lại tính đắn công thức lý thuyết Mặt khác chương trình thử nghiệm giúp ta chọn mô hình phù hợp với tham số khác 34 Chương Kết luận hướng phát triển Trong thời gian có hạn, xây dựng thành công ứng dụng chia sẻ file ngang hàng sử dụng nhiều server mục theo kiến trúc liên kết chuỗi lặp toàn Phần lập trình server điểm nút thực ngôn ngữ VB.NET dựa ý tưởng chương trình chia sẻ file ngang hàng viết ASP Java Hiệu hai hệ thống liên kết chuỗi lặp toàn đánh giá xấp xỉ suy luận toán học sau kiểm nghiệm với kết thực chương trình nhỏ mô truy vấn điểm nút Việc kiểm nghiệm mặt chứng tỏ tính đắn hệ thống chia sẻ file ngang hàng, mặt cung cấp nhìn khái quát, giúp đánh giá chọn kiến trúc phù hợp với số lượng nút, số lượng file chia sẻ, cho hiệu Để tiếp tục phát triển, bổ sung hoàn thiện đề tài đề xuất số hướng nghiên cứu cần thực thời gian tới: • Cải tiến việc tìm kiếm tài nguyên điểm nút, không tìm theo từ khóa mà tìm kiếm theo nội dung tài nguyên, tổ chức lại cách đánh mục để đáp ứng yêu cầu • Cải tiến chương trình hoạt động tốt với mức anh ninh tốt hơn, đề biện pháp hay nhiều điểm nút có tường lửa • Cải tiến chương trình đánh giá với tham số chi tiết, gắn với lý thuyết toán học, phân tích kết thử nghiệm để đưa công thức có ý nghĩa thực tế 35 Tài liệu tham khảo [1] Beverly Yang and Hector Garcia-Molina “Comparing Hybrid Peer-to-Peer Systems”, In Proceedings of the 27th International Conference on Very Large Data Bases, September 2001 [2] Chichka, “Building Client/Server applications with VB.NET for secure private file sharing”, http://www.codeproject.com/vb/net/filesharingvb7.asp [3] Dreamtech software Team, “Cracking the Code Peer-to-Peer Application Development” [4] John Risson and Tim Moors, “Survey of Research Towards Robust Peer-to-Peer Networks: Search Method”, Elsevier Computer Networks Journal, 2006 [5] Ramesh Subramanian and Brian D Goodman “Peer to Peer Computing: The Evolution of a Disruptive Technology”, Idea Group, 2005 [6] Stephanos Androutsellis-Theotokis and Diomidis Spinellis “A Survey of Peer-toPeer Content Distribution Technologies”, ACM Computing Surveys, 36(40:335-371, December 2004 [7] Napster Home Page http://www.napster.com/ 36 [...]... trường phần cứng và phần mềm khác nhau, ở những địa điểm cách biệt nhau Nhờ sử dụng giao thức HTTP, Webservice có thể hoạt động thông suốt, vượt qua cả rào cản tường lửa các cơ quan, xí nghiệp thường dựng lên để bảo vệ mạng cục bộ khỏi sự xâm nhập từ bên ngoài và kẽ hở từ bên trong 3.2 Hệ thống chia sẻ ngang hàng lai ghép sử dụng nhiều server chỉ mục Mục đích: Xây dựng hệ thống chia sẻ file ngang hàng lai... logout, cho phép điểm nút khai báo với server các file nó muốn chia sẻ Nó cũng đảm nhiệm công việc gửi file đến trình đón nhận của các điểm nút khác Hình 3 Kiến trúc hệ thống chia sẻ file ngang hàng lai ghép với 1 server 8  Trình đón nhận (Listener): chức năng yêu cầu server tìm kiếm địa điểm lưu các file cần tải về Sau khi nhận được danh sách các điểm nút chứa file yêu cầu, người dùng có thể chọn một điểm... hình của hệ thống chia sẻ file lai ghép sử dụng server chỉ mục Napster sử dụng nhiều server chỉ mục để tăng hiệu quả nhưng mỗi server chỉ quản lý những điểm nút của mình và các server không “giao tiếp” với nhau Chính vì vậy 2 người dùng thuộc 2 server khác nhau sẽ không kết nối được với nhau 7 Chương 3 Xây dựng hệ thống 3.1 Nguồn gốc ý tưởng Ý tưởng thực hiện hệ thống chia sẻ file ngang hàng với nhiều... dựng một chương trình mô phỏng hoạt động chia sẻ file của một hệ thống gồm 2 server chỉ mục (s = 2) và nhiều điểm nút Chương trình sẽ các gọi webservice nhiều lần tương ứng giả lập vai trò của nhiều điểm nút Chúng tôi tạo một tập file ảo (chỉ có tên không có nội dung) gồm 500 file (n = 500) Mỗi điểm nút ảo chia sẻ 10 file (k = 10), lấy ngẫu nhiên trong số 500 file Các điểm nút ảo không tồn tại thật,... thuyết trong cả 2 mô hình là như nhau chứng tỏ sự đúng đắn của lý thuyết 31 Trường hợp 2 Số điểm nút: 10 Số file 1 điểm nút chia sẻ: 10 đến 50 Thử nghiệm đo thời gian Login trung bình, kết quả như sau Hình 8 Đồ thị thời gian Login trung bình với số file một điểm nút chia sẻ thay đôi Nhận xét: Thời gian login trung bình tăng tuyến tính với số file một điểm nút chia sẻ Đường thực tế và đường lý thuyết có... nhận file điểm nút kia chia sẻ Private Sub FileSrv_OnNeedDownload(ByVal sender As Object, ByVal e As _ AxbsFileServerSDK.IBSFileSrvXEvents_OnNeedDownloadEvent) _ Handles FileSrv.OnNeedDownload e.aOkay = True e.aRoot = App_Path() LogMsg("start downloading " + PreSlash(e.aPath)) End Sub Private Sub FileSrv_OnDownloadDone(ByVal sender As Object, ByVal e As _ AxbsFileServerSDK.IBSFileSrvXEvents_OnDownloadDoneEvent)... kiếm Hình 5 minh họa một hệ thống chia sẻ file ngang hàng tổ chức các server chỉ mục theo phương thức liên kết chuỗi Hệ thống gồm có hai server chỉ mục S1 và S2 Server S1 quản lý điểm nút A Server S2 quản lý điểm nút B Hai điểm nút đã đăng nhập vào hệ thống Điểm nút B đăng ký với server S2 chia sẻ một file có tên là security.pdf Điểm nút A yêu cầu server S1 tìm kiếm file theo từ khóa security Server... : Tham số là địa chỉ IP và danh sách các file điểm nút muốn chia sẻ Server trả về kết quả cho biết việc chia sẻ thành công hay không 10 Public Function Share(ByVal ip_address As String, ByVal file_ list As Dataset) As Boolean − Webservice Find : Tham số là từ khóa cần tìm Server trả về một Dataset chứa địa chỉ IP và tên người dùng của các điểm nút có chia sẻ file liên quan tới từ khóa Public Function... các file điểm nút đấy chia sẻ để hiển thị Private Sub FileSrv_OnNeedListFolder(ByVal sender As Object, ByVal e As _ 13 AxbsFileServerSDK.IBSFileSrvXEvents_OnNeedListFolderEvent) _ Handles FileSrv.OnNeedListFolder e.aOkay = True e.aRoot = App_Path() LogMsg("list folder " + PreSlash(e.aPath)) End Sub • Sau khi nguời dùng chọn file mình muốn download từ phía điểm nút khác, chương trình yêu cầu và nhận file. .. càng nhiều điểm nút tham gia chia sẻ và chia sẻ nhiều tài liệu, thời gian tìm kiếm sẽ nhanh vì xác suất tìm thấy tài liệu ngay tại server đầu tiên là lớn Điều này sẽ được thể hiện qua thử nghiệm thực tế • Đối với mô hình sao lặp toàn bộ Thời gian đăng nhập trung bình (bao gồm cả chia sẻ) là 4Ds Như đã trình bày ở trên, thời gian đăng nhập trung bình (bao gồm cả thời gian chia sẻ) tại một server là 4D,

Ngày đăng: 21/01/2016, 23:08

Từ khóa liên quan

Mục lục

  • Chương 1. Giới thiệu

    • 1.1 Bối cảnh chung

    • 1.2 Mục đích của khóa luận

    • 1.3 Bố cục khóa luận

    • Chương 2. Các mô hình mạng chia sẻ file ngang hàng

      • 2.1 Mô hình mạng ngang hàng thuần túy

      • 2.2 Mô hình lai ghép

      • 2.3 Phần mềm chia sẻ file ngang hàng tiêu biểu – Napster

      • Chương 3. Xây dựng hệ thống

        • 3.1 Nguồn gốc ý tưởng

        • 3.2 Hệ thống chia sẻ ngang hàng lai ghép sử dụng nhiều server chỉ mục

        • Chương 4. Minh họa hệ thống

          • 4.1 Tổ chức các server chỉ mục theo mô hình liên kết chuỗi

          • 4.2 Tổ chức các server chỉ mục theo mô hình sao lặp toàn bộ

          • Chương 5. Thử nghiệm và đánh giá

            • 5.1 Công thức tính

            • 4.2 Phương pháp thử nghiệm

            • 4.3 Đánh giá

            • Chương 6. Kết luận và hướng phát triển

            • Tài liệu tham khảo

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

Tài liệu liên quan