Luận Văn Xây dựng ứng dụng dựa trên mạng ngang hàng

Thảo luận trong 'Công Nghệ Thông Tin' bắt đầu bởi Bích Tuyền Dương, 28/7/12.

  1. Bích Tuyền Dương

    Bài viết:
    2,590
    Được thích:
    0
    Điểm thành tích:
    0
    Xu:
    0Xu
    MỞ ĐẦU
    Tốc độ phát triển của công nghệ đã mang đến cho người dùng cuối những ứng dụng, tiện ích miễn phí và chất lượng hơn. Nhưng dù công nghệ thay đổi, biến chuyển thế nào, nhu cầu chia sẻ dữ liệu vẫn luôn cần thiết đối với tất cả mọi người. Con người sử dụng mạng Internet chính là để tìm kiếm thông tin, thông tin thì có trong rất nhiều định dạng.
    Trong thời gian gần đây, chia sẻ file ngang hàng đã nổi lên như một lĩnh vực ứng dụng chiếm tỉ lệ sử dụng băng thông lớn trong mạng Internet. Bắt đầu từ hiện tượng Napster vào cuối những năm 90, sự phổ biến của các chương trình chia sẻ file ngang hàng như Gnutella, Freenet, Kazzaa đã tạo nên một xu hướng phát triển mạnh mẽ việc chia sẻ nội dung trong cộng đồng người dùng Internet. Hệ thống mạng ngang hàng và các ứng dụng chia sẻ file ngang hàng cũng trở thành một đề tài thu hút được nhiều sự quan tâm, nghiên cứu của các nhà khoa học.
    Các hệ thống chia sẻ file ngang hàng đang ngày càng phổ dụng nhờ những lợi điểm rõ rệt so với hình thức chia sẻ file trên nền Web theo kiến trúc client - server. Tuy nhiên, các ứng dụng chia sẻ file ngang hàng phổ biến hiện nay trên Internet vẫn còn một hạn chế lớn. Chúng mới chỉ cho phép người dùng tìm kiếm file theo tên hay gọi chung là định danh chứ chưa có chức năng truy xuất theo nội dung. Mục đích của khóa luận tốt nghiệp này là khai thác những thành tựu mới nhất của công nghệ truy xuất thông tin để xây dựng một ứng dụng chia sẻ file ngang hàng có chức năng tìm kiếm theo nội dung. Hệ thống được xây dựng theo mô hình mạng ngang hàng lai ghép, một sự kết hợp giữa 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 trên máy chủ tìm kiếm giúp khắc phục những khó khăn trong 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 các file. Nó chỉ cho biết ứng với mỗi từ khóa cho trước có những file nào và chúng nằm ở đâu trong số các điểm nút tham gia vào hệ thống. Chương trình được phát triển bằng ngôn ngữ lập trình Java với những tính năng tìm kiếm theo nội dung được phát triển dựa trên thư viện mã nguồn mở Lucene. Luận văn này sẽ xây dựng ứng dụng dựa trên mạng ngang hàng.
    Luận văn được chia thành 5 chương
    ã Chương 1: Tổng quan về mạng chia sẻ file ngang hàng.
    ã 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.
    ã 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 quả thực hiện chương trình.
    Mặc dù đã cố gắng hết sức cùng với sự động viên giúp đỡ tận tình của 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 của đề tài rộng nên khó tránh khỏi những sai sót trong quá trình làm đố án. Em rất mong được sự chỉ dẫn của thầy cô và sự góp ý của các bạn để chương trình của em được hoàn thiện hơn. Cuối cùng em xin chân thành cảm ơn sự động viên và giúp đỡ nhiệt tình của thầy hướng dẫn: TS. Phạm Hồng Thái và CN. Lương Việt Nguyên đã giúp đỡ em hoàn thành đề tài này.


    MỤC LỤC
    MỤC LỤC 1
    LỜI CẢM ƠN 3
    MỞ ĐẦU 4
    Chương 1: TỔNG QUAN VỀ MẠNG CHIA SẺ FILE NGANG HÀNG 6
    1.1. Giới thiệu về mạng ngang hàng (peer to peer – P2P) 6
    1.1.1. Khái niệm cơ bản 6
    1.1.2. Đặc điểm của các mạng ngang hàng 7
    1.1.3. Tiện ích mạng P2P mang lại. 7
    1.1.4. Những khó khăn trong thiết kế mạng ngang hàng 8
    1.1.5. Phân loại các ứng dụng mạng ngang hàng 9
    1.2. Mô hình mạng P2P 9
    1.2.1. Mô hình tập trung 9
    1.2.2. Mô hình phân tán. 12
    1.3. Ưu, nhược điểm của 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 của Napster 15
    1.4.2. Hoạt động của Gnutella 16
    1.4.3. So sánh Gnutella và 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 chỉ mục tìm kiếm 20
    2.2. Tạo chỉ mục 20
    2.3. Tìm kiếm dựa trên chỉ mục 22
    2.4. Xếp hạng kết quả 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 chỉ 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ả về thư viện mã nguồn mở Lucene 33
    4.1.1. Khái quát về Lucene 33
    4.1.2. Tổ chức chỉ mục logic của Lucene 34
    4.1.3. Xây dựng và khai thác chỉ mục trong Lucene 35
    4.2 Tổ chức chương trình 36
    4.2.1. Khối chức năng cơ bản 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 của 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ẻ và 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
     

    Các file đính kèm:

Đang tải...