1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xay dung ung dung dua tren mang ngang hang 167840

68 2 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 68
Dung lượng 1,74 MB

Nội dung

Xây dựng ứng dụng dựa mạng ngang hàng MỤC LỤC MỤC LỤC LỜI CẢM ƠN .3 MỞ ĐẦU Chương 1: TỔNG QUAN VỀ MẠNG CHIA SẺ FILE NGANG HÀNG 1.1 Giới thiệu mạng ngang hàng (peer to peer – P2P) 1.1.1 Khái niệm 1.1.2 Đặc điểm mạng ngang hàng .7 1.1.3 Tiện ích mạng P2P mang lại 1.1.4 Những khó khăn thiết kế mạng ngang hàng 1.1.5 Phân loại ứng dụng mạng ngang hàng 1.2 Mơ hình mạng P2P 1.2.1 Mơ hình tập trung 1.2.2 Mơ hình phân tán 12 1.3 Ưu, nhược điểm P2P 13 1.3.1 Ưu điểm 13 1.3.2 Nhược điểm 14 1.4 Một số ứng dụng chia sẻ file ngang hàng .14 1.4.1 Hoạt động Napster 15 1.4.2 Hoạt động Gnutella 16 1.4.3 So sánh Gnutella Napster .17 1.5 Một số nghiên cứu lý thuyết 18 Chương 2: MÔ TẢ MỘT SỐ PHƯƠNG PHÁP, KỸ THUẬT TẠO CHỈ MỤC CHO TÀI LIỆU VÀ TÌM KIẾM DỰA TRÊN CHỈ MỤC 20 2.1 Tổ chức mục tìm kiếm 20 2.2 Tạo mục .20 2.3 Tìm kiếm dựa mục 22 2.4 Xếp hạng kết tìm kiếm .23 Chương 3: GIẢI PHÁP XÂY DỰNG ỨNG DỤNG 26 3.1 Khái quát ý tưởng 26 3.2 Cấu trúc mục .29 3.3 Đánh giá giải pháp 31 Chương 4: CÀI ĐẶT CHƯƠNG TRÌNH 33 4.1 Mô tả thư viện mã nguồn mở Lucene .33 4.1.1 Khái quát Lucene 33 4.1.2 Tổ chức mục logic Lucene 34 MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -1- Xây dựng ứng dụng dựa mạng ngang hàng 4.1.3 Xây dựng khai thác mục Lucene 35 4.2 Tổ chức chương trình .36 4.2.1 Khối chức .36 4.2.2 Khối giao diện người dùng .40 4.2.3 Khối giao tiếp ngang hàng 42 4.2.4 Sơ đồ lớp chương trình 44 Chương 5: KẾT QUẢ THỰC HIỆN CHƯƠNG TRÌNH 45 5.1 Tìm kiếm theo nội dung 45 5.2 Theo dõi trạng thái chia sẻ nội dung tài liệu 48 KẾT LUẬN VÀ CÁC HƯỚNG PHÁT TRIỂN 51 Phụ lục: MÃ NGUỒN MỘT SỐ LỚP QUAN TRỌNG 52 TÀI LIỆU THAM KHẢO 67 MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -2- Xây dựng ứng dụng dựa mạng ngang hàng LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành đến thầy giáo, giáo viên hướng dẫn TS Phạm Hồng Thái CN Lương Việt Nguyên Trong trình nghiên cứu đề tài em thầy giáo tạo điều kiện tài liệu kiến thức liên quan giúp em hồn thành tốt khố luận tốt nghiệp Em xin chân thành cảm ơn thầy, cô giáo Bộ môn Tin học trường Đại Học Dân Lập Hải Phòng, người dạy cung cấp cho em kiến thức quý báu để em dễ dàng tiếp cận công nghệ, kỹ thuật tương lai Xin cảm ơn bạn bè, người tơi sánh bước, đóng góp, động viên tơi lúc gặp khó khăn, tạo điều kiện giúp tơi hồn thành tốt khóa luận Hải Phịng, Tháng năm 2007 Sinh viên Nguyễn Thị Hoa MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -3- Xây dựng ứng dụng dựa mạng ngang hàng MỞ ĐẦU Tốc độ phát triển công nghệ mang đến cho người dùng cuối ứng dụng, tiện ích miễn phí chất lượng Nhưng dù công nghệ thay đổi, biến chuyển nào, nhu cầu chia sẻ liệu cần thiết tất người Con người sử dụng mạng Internet để tìm kiếm thơng tin, thơng tin có nhiều định dạng Trong thời gian gần đây, chia sẻ file ngang hàng lên lĩnh vực ứng dụng chiếm tỉ lệ sử dụng băng thông lớn mạng Internet Bắt đầu từ tượng Napster vào cuối năm 90, phổ biến chương trình chia sẻ file ngang hàng Gnutella, Freenet, Kazzaa tạo nên xu hướng phát triển mạnh mẽ việc chia sẻ nội dung cộng đồng người dùng Internet Hệ thống mạng ngang hàng ứng dụng chia sẻ file ngang hàng trở thành đề tài thu hút nhiều quan tâm, nghiên cứu nhà khoa học Các hệ thống chia sẻ file ngang hàng ngày phổ dụng nhờ lợi điểm rõ rệt so với hình thức chia sẻ file Web theo kiến trúc client server Tuy nhiên, ứng dụng chia sẻ file ngang hàng phổ biến Internet hạn chế lớn Chúng cho phép người dùng tìm kiếm file theo tên hay gọi chung định danh chưa có chức truy xuất theo nội dung Mục đích khóa luận tốt nghiệp khai thác thành tựu công nghệ truy xuất thông tin để xây dựng ứng dụng chia sẻ file ngang hàng có chức tìm kiếm theo nội dung Hệ thống xây dựng theo mô hình mạng ngang hàng lai ghép, kết hợp phương thức trao đổi trực tiếp không thông qua trung gian với giải pháp sử dụng máy chủ tìm kiếm Chiến lược quản lý tập trung dựa máy chủ tìm kiếm giúp khắc phục khó khăn việc tìm kiếm thơng tin phân tán Máy chủ tìm kiếm khơng chứa nội dung file Nó cho biết ứng với từ khóa cho trước có file chúng nằm đâu số điểm nút tham gia vào hệ thống Chương trình phát triển ngơn ngữ lập trình Java với tính tìm kiếm theo nội dung MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -4- Xây dựng ứng dụng dựa mạng ngang hàng phát triển dựa thư viện mã nguồn mở Lucene Luận văn xây dựng ứng dụng dựa mạng ngang hàng Luận văn chia thành chương  Chương 1: Tổng quan mạng chia sẻ file ngang hàng  Chương 2: Mô tả số phương pháp, kỹ thuật tạo mục cho tài liệu tìm kiếm dựa mục  Chương 3: Giải pháp xây dựng ứng dụng  Chương 4: Cài đặt chương trình  Chương 5: Kết thực chương trình Mặc dù cố gắng với động viên giúp đỡ tận tình thầy giáo hướng dẫn xong trình độ cịn hạn chế, nội dung đề tài phức tạp, phạm vi đề tài rộng nên khó tránh khỏi sai sót q trình làm đố án Em mong dẫn thầy góp ý bạn để chương trình em hồn thiện Cuối em xin chân thành cảm ơn động viên giúp đỡ nhiệt tình thầy hướng dẫn: TS Phạm Hồng Thái CN Lương Việt Nguyên giúp đỡ em hồn thành đề tài Hải Phịng, Tháng năm 2007 Sinh viên: Nguyễn Thị Hoa MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -5- Xây dựng ứng dụng dựa mạng ngang hàng Chương 1: TỔNG QUAN VỀ MẠNG CHIA SẺ FILE NGANG HÀNG 1.1 Giới thiệu mạng ngang hàng (peer to peer – P2P) 1.1.1 Khái niệm Mạng ngang hàng vấn đề hoàn toàn Các máy chủ dịch vụ thư điện tử (Mail servers) máy chủ phân giải tên miền (Domain Name Servers) kết nối với tạo mạng ngang hàng Ví dụ máy chủ thư điện tử thực tương tác trực tiếp với Chúng gửi, nhận chuyển tiếp email cho Tuy dịch vụ thư điện tử hay DNS xuất từ lâu Internet khái niệm mạng ngang hàng hay tính tốn ngang hàng (P2P – Peer-to-Peer) đưa gần Mạng ngang hàng hệ phân tán với đặc thù khơng tồn cấu điều khiển tập trung tổ chức có phân cấp [16] Trong hệ thống túy ngang hàng, chương trình chạy điểm nút có vai trị hồn tồn tương đương bình đẳng với Tính chất đối lập hoàn toàn với kiến trúc client – server truyền thống nơi có điểm nút đóng vai trị cung cấp dịch vụ (servers) điểm nút lại sử dụng dịch vụ (clients) Lợi điểm rõ rệt kiến trúc ngang hàng khả tận dụng tốt tài ngun (xử lý, băng thơng, lưu trữ) tồn mạng Bên cạnh đó, kiến trúc giúp cho dịch vụ mạng tránh khỏi tình trạng ngừng trệ server gặp phải trục trặc Tuy nhiên mơ hình tồn nhược điểm khó kiểm sốt trạng thái, hành vi điểm nút toàn mạng Ngồi địi hỏi máy tham gia vào mạng ngang hàng phải có lực xử lý băng thông gần tương đương Không giống kiến trúc client – server, hiệu suất hoạt động chung mạng ngang hàng có xu hướng tăng lên gia tăng số điểm nút tham gia Hiệu suất phụ thuộc vào ứng dụng mạng cụ thể, vào giao thức ngang hàng cấu hình mạng (topology) MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -6- Xây dựng ứng dụng dựa mạng ngang hàng 1.1.2 Đặc điểm mạng ngang hàng Các mạng ngang hàng ngày thường mang số đặc trưng phổ biến sau:  Các điểm nút mạng nhận biết lẫn Nghĩa có chế giúp cho điểm nút tham gia vào mạng xác định máy khác thành viên mạng Từ chúng định vị nhau, gửi thông điệp tới nhận thông điệp từ  Các điểm nút tạo mạng kết nối ảo mức trừu tượng cao so với cấu tổ chức như: tường lửa (firewall), NAT (Network Address Translation), mạng (subnet) Mỗi điểm nút nằm mạng khác nhau, chịu chế tổ chức, kiểm soát giới hạn hoàn toàn riêng biệt Tuy nhiên tham gia vào mạng, chúng tổ chức mối liên kết logic với thông qua việc sử dụng dịch vụ chạy ứng dụng tầng cao so với chế vừa nhắc tới Tạo mạng kết nối logic điểm nút bị biệt lập hóa mạng riêng biệt ý tưởng xuyên suốt kiến trúc ngang hàng  Mỗi điểm nút tự vừa đóng vai trị client vừa đóng vai trò server Điều thể rõ vai trị bình đẳng độc lập điểm nút Mọi điểm nút vừa cung cấp dịch vụ cho điểm nút khác vừa sử dụng dịch vụ hay nhiều điểm nút lại  Xuất số nhóm điểm nút liên kết với để chia sẻ liệu cộng tác với xử lý Đây tổ hợp lại điểm nút có mối liên hệ chặt chẽ mang tính tương tác gần gũi trình hoạt động ứng dụng mạng 1.1.3 Tiện ích mạng P2P mang lại Giúp cho người dùng dễ dàng tìm liệu cần thiết Tận dụng tiện ích tổng hợp: Nơi lưu trữ, thơng tin chi phí tính tốn phân phối PEER, làm máy tính tham gia vào mạng dễ dàng có thơng tin u cầu Tăng độ tin cậy MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -7- Xây dựng ứng dụng dựa mạng ngang hàng Chứa đựng nhiều thông tin: Trong mạng P2P có nhiều máy tính tham vào, thân máy tính chứa nhiều thơng tin, cơng cụ tìm kiếm nắm bắt khoảng 20% nội dung Website 1.1.4 Những khó khăn thiết kế mạng ngang hàng  Cân đối băng thông: Trong phần lớn ứng dụng chạy mạng ngang hàng, điểm nút đóng hai vai trị: client server nên tỉ lệ sử dụng băng thông đầu (outbound bandwidth) băng thông đầu vào (inbound bandwidth) điểm nút tương đối cân Tuy nhiên nhà cung cấp dịch vụ mạng (ISPs) lại thường triển khai mạng khơng đối xứng dành ưu tiên cho phần băng thơng đầu vào Ví dụ số ISP mạng DSL hỗ trợ 1.5Mbps băng thơng đầu vào có 128Kbps cho băng thông đầu Cho dù băng thông tổng cộng kết nối vật lý có mở rộng hạ tầng kỹ thuật ISP chủ yếu hỗ trợ chế bất đối xứng Giải pháp triệt vấn đề đến từ cộng tác ISP khách hàng việc triển khai thiết bị mạng chuyên dụng  Tổ chức không gian tên: Việc đặt tên cho website thực thông qua hệ thống phân cấp dịch vụ phân giải tên miền (DNS) Tuy nhiên mạng ngang hàng không tồn chế tương tự Không máy chủ dịch vụ web, điểm nút mạng ngang hàng không tồn trạng thái tĩnh Thời điểm khoảng thời gian tham gia vào mạng điểm nút ko thể xác định Công việc tạo tên (định danh) cho đối tượng, thành phần mạng phải thực người phát triển ứng dụng phụ thuộc vào đặc thù ứng dụng  Chứng thực kiểm tra quyền truy cập người dùng: Nếu tất file đặt server dễ dàng việc chứng thực người dùng kiểm tra quyền hạn truy cập họ liệu Tuy nhiên tính chất phân tán mạng ngang hàng, công việc phải thực điểm nút Người phát triển muốn xây dựng ứng dụng ngang hàng hoàn chỉnh cần quan tâm nhiều đến vấn đề bảo mật, chống hành động xâm nhập trái phép làm ảnh hưởng tới liệu  Kiểm soát hành vi người dùng: Do lưu trữ tập trung MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -8- Xây dựng ứng dụng dựa mạng ngang hàng thông tin hành động điểm nút nên khó kiểm sốt hành động Lấy ví dụ mạng chia sẻ file ngang hàng, người dùng thực hành vi khơng thực phù hợp sau:  Không chia sẻ file máy  Chia sẻ file bị lỗi  Chia sẻ file chứa mã nguy hiểm, virus  Chia sẻ file mà nội dung chắn khơng quan tâm  Không cho phép điểm nút khác tải file chia sẻ máy Nếu tất điểm nút tham gia thực hành vi tiêu cực hoạt động mạng ngang hàng thực không hiệu an toàn Tùy thuộc vào ứng dụng cụ thể, người thiết kế phát triển phải thiết lập chế kiểm soát hành vi điểm nút để bảo đảm chúng thực có đóng góp tích cực cho cộng đồng sử dụng mạng 1.1.5 Phân loại ứng dụng mạng ngang hàng Các ứng dụng mạng ngang hàng phân chia thành số nhóm sau:  Chia sẻ file: Gnutella, FastTrack, Napster  Chia sẻ tài nguyên phân tán: SETI@Home, Avaki, Entropia dự án tính toán lưới  Phân phối nội dung: OpenCola, Blue Falcon Networks, Konitiki  Truyền thông P2P: AOL Instant Messenger, Yahoo! Messenger, ICQ, Jabber  Các ứng dụng cộng tác: Hive, Groove, myJXTA 1.2 Mơ hình mạng P2P 1.2.1 Mơ hình tập trung Mô tả: Mạng tập trung bao gồm Server trung tâm xung quanh Server máy Clients MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -9- Xây dựng ứng dụng dựa mạng ngang hàng Có mơ hình mạng tập trung: Single Centralized: Trong mơ hình máy Client kết nối trực tiếp với Server Trong mơ hình tất Client bình đẳng nhau, Client giao tiếp với thông qua Server trung tâm Hình 1: Mơ hình mạng tập trung Cơ chế hoạt động mơ hình mạng Single Centralized: Mỗi Client mạng yêu cầu file yêu cầu gửi đến Server, Server nhận yêu cầu xử lý yêu cầu, database Server có thơng tin file đó, thơng báo cho Client, sau bên có bên xin để bắt đầu trình download Ưu điểm mơ hình Single Centralized: Khả xử lý thơng tin nhanh chóng, đáng tin cậy, thời gian tìm kiếm thơng tin nhanh chóng xác Nhược điểm: Có thể có nhiều yêu cầu Client đồng loạt gửi đến Server gây nên tình trạng tải Server, khiến cho tốc độ hoạt động trung bình hệ thống bị giảm sút Hơn Server trung tâm bị hỏng tồn hệ thống ngừng hoạt động MSSV : 10401 - Nguyễn Thị Hoa - Lớp: CT702 Trang -10-

Ngày đăng: 24/08/2023, 07:19

HÌNH ẢNH LIÊN QUAN

Hình 1: Mô hình mạng tập trung. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 1 Mô hình mạng tập trung (Trang 10)
Hình 2: Mô hình mạng Multiple Mini – Centralized. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 2 Mô hình mạng Multiple Mini – Centralized (Trang 11)
Hình 3: Mô hình mạng phân tán. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 3 Mô hình mạng phân tán (Trang 12)
Hình 4: Mô hình mạng phân tán không hoàn toàn. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 4 Mô hình mạng phân tán không hoàn toàn (Trang 13)
Hình 5: Kiến trúc của Napster - Xay dung ung dung dua tren mang ngang hang 167840
Hình 5 Kiến trúc của Napster (Trang 16)
Hình 6: Kiến trúc của Gnutella. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 6 Kiến trúc của Gnutella (Trang 17)
Hình 7:  Tạo chỉ mục theo cấu trúc file đảo ngược. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 7 Tạo chỉ mục theo cấu trúc file đảo ngược (Trang 21)
Hình 8:  Tạo chỉ mục theo cấu trúc file đảo ngược sử dụng kỹ thuật đánh địa - Xay dung ung dung dua tren mang ngang hang 167840
Hình 8 Tạo chỉ mục theo cấu trúc file đảo ngược sử dụng kỹ thuật đánh địa (Trang 22)
Hình 9:  Luồng thông điệp giữa các thành phần trong mạng. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 9 Luồng thông điệp giữa các thành phần trong mạng (Trang 26)
Hình vẽ dưới đây mô tả một cách trực quan các bước trong quá trình tạo chỉ mục bộ phận và cập nhật chỉ mục tập trung cũng như hành động truy vấn tìm kiếm và tải về các file dữ liệu - Xay dung ung dung dua tren mang ngang hang 167840
Hình v ẽ dưới đây mô tả một cách trực quan các bước trong quá trình tạo chỉ mục bộ phận và cập nhật chỉ mục tập trung cũng như hành động truy vấn tìm kiếm và tải về các file dữ liệu (Trang 29)
Hình 11:  Nhiệm vụ, chức năng của thư viện Lucene [8]. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 11 Nhiệm vụ, chức năng của thư viện Lucene [8] (Trang 34)
Hình 12:  Cửa sổ giao diện chính của chương trình. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 12 Cửa sổ giao diện chính của chương trình (Trang 40)
Hình 13:  Hộp thoại chọn tài liệu chia sẻ. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 13 Hộp thoại chọn tài liệu chia sẻ (Trang 41)
Hình 14: Cửa sổ giao diện tìm kiếm. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 14 Cửa sổ giao diện tìm kiếm (Trang 42)
4.2.4. Sơ đồ lớp của chương trình. - Xay dung ung dung dua tren mang ngang hang 167840
4.2.4. Sơ đồ lớp của chương trình (Trang 44)
Hình 16:  Cửa sổ giao diện chính trên Peer 0 (3 file được chia sẻ). - Xay dung ung dung dua tren mang ngang hang 167840
Hình 16 Cửa sổ giao diện chính trên Peer 0 (3 file được chia sẻ) (Trang 45)
Hình 17: Tìm tài liệu có chứa từ khóa “mini”. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 17 Tìm tài liệu có chứa từ khóa “mini” (Trang 46)
Hình 19:  Tìm tài liệu có chứa từ “curly” hoặc từ “brown”. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 19 Tìm tài liệu có chứa từ “curly” hoặc từ “brown” (Trang 47)
Hình 24:  Tìm kiếm với từ khóa “mini” sau khi Peer 0 dừng chia sẻ fashion.txt - Xay dung ung dung dua tren mang ngang hang 167840
Hình 24 Tìm kiếm với từ khóa “mini” sau khi Peer 0 dừng chia sẻ fashion.txt (Trang 49)
Hình 25:  File complex information.txt được tải từ Peer 0 về Peer 1. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 25 File complex information.txt được tải từ Peer 0 về Peer 1 (Trang 50)
Hình 26:  Tìm kiếm với từ khóa “mini” sau khi Peer 0 đăng xuất. - Xay dung ung dung dua tren mang ngang hang 167840
Hình 26 Tìm kiếm với từ khóa “mini” sau khi Peer 0 đăng xuất (Trang 50)
w