Quản lý danh sách tài liệu của cá nhân

Một phần của tài liệu Ứng dụng phân tán dựa trên mô hình local proxy cho thông tin dạng nhị phân (Trang 59)

Client

Hinh 4.4. Quản lý danh sách file

Quy trình quản lý tài liệu của cá nhân:

Bước Mô tả

1. Ngƣời sử dụng đăng nhậpvào hệ thống và tải về file dữ liệu <username>.txt

2. Client đọc file dữ liệu <username>.txt và tạo các thƣ mục và danh sách tên các tài liệu nằm trong thƣ mục của cá nhân.

3.

Mỗi lần có thay đổi các thông tin liên quan đến dữ liệu và cấu trúc thƣ mục, Client sẽ cập nhật lại nội dung trong file <username>.txt và thông qua Local Proxy gửi vào hệ thống P2P

Bảng 4.4.Bảng mô tả chức năng quản lý file

Đăng nhập Lấy danh sách các tài liệu của cá nhân trong file <username>.txt

Tạo cấu trúc thƣ mục tài liệu của cá nhân

58 Loca l p rox P2 P Ag ent

Hinh 4.5. Tải file lên hệ thống

Qui trình tải file lên hệ thống:

Bước Mô tả

1. Ngƣời sử dụng đăng nhậpvào hệ thống và thực hiện thao tác chia sẻ file

2.

Hệ thống Local Proxy nhận yêu cầu chia sẻ file, xử lý thông tin liên quan đến file bằng cách băm nội dung tên file, lƣu trữ nội dung liên quan đến file và thực hiện việc gửi file này vào hệ thống File Sharing

3. Hệ thống P2P Agent nhận yêu cầu từ Local Proxy và thực hiện việc phân bổ cặp <khóa, giá trị> tới node thích hợp để lƣu trữ.

4. Client cập nhật lại danh sách các tài liệu chia sẻ của cá nhân

Bảng 4.5. Bảng mô tả chức năng tải file lên hệ thống

Nhận thông tin và phân bổ thông tin cho các node trong mạng

thông tin tại Local và gửi vào hệ thống P2P Agent

59

4.2.5. Tải tài liệu từ hệ thống

Client Loca l prox y P2 P Ag ent

Hinh 4.6. Tải file về client Đăng nhập Thực hiện thao tác yêu cầu

file

Kiểm tra file có tồn tại ở local

Thông báo không tồn

tại

Kiểm tra file có tồn tại ở P2P

Gửi yêu cầu đến node lƣu trữ file

Trả về thông tin cho Client

Yes

Yes No

No

Hiển thị tài liệu cho ngƣời dùng

60 thống

2.

Hệ thống Local Proxy nhận yêu cầu chia sẻ file, xử lý thông tin liên quan đến file bằng cách băm nội dung tên file, thực hiện tìm kiếm trong nó xem có tồn tại thông tin liên quan đến tài liệu đƣợc yêu cầu hay không

- Nếu kết quả tìm kiếm là có thì local proxy sẽ thực hiện việc gửi yêu cầu tải file trực tiếp đến node lƣu trữ file

- Nếu kết quả tìm kiếm là không có local proxy sẽ gửi yêu cầu tìm kiếm file vào hệ thống P2P Agent và chờ đợi kết quả từ hệ thống

3.

Hệ thống P2P Agent nhận yêu cầu từ Local Proxy và thực hiện tìm kiếm thông tin liên quan đến file.

- Nếu kết quả tìm kiếm là có thì P2P Agent sẽ trả lại địa chỉ nơi lƣu trữ file để Local Proxy thực hiện việc gửi yêu cầu trực tiếp dữ liệu

- Nếu kết quả tìm kiếm là không có P2P Agen sẽ thông báo cho Local Proxy không có thông tin liên quan đến file

4.

Trong trƣờng hợp tìm thấy file, Local Proxy gửi yêu cầu trực tiếp tải file đến node lƣu trữ và thực hiện các giao thức tảifile nhƣ trong mô hình Client-Server Trong trƣờng hợp không tìm thấy, Local Proxy trả lại cho Client thông báo không tìm thấy file

61

CHƯƠNG 5. CÀI ĐẶT VÀ THỬ NGHIỆM

5.1. CÔNG CỤ LẬP TRÌNH SỬ DỤNG TRONG HỆ THỐNG

- Chƣơng trình sử dụng ngôn ngữ Java với IDE là Netbean

- API sử dụng trong chƣơng trình để xác định vị trí file và các máy trong hệ thống

là: Kademlia

5.2. GIAO DIỆN CHƯƠNG TRÌNH

Trong chƣơng này, luận văn sẽ trình bày những nội dung sau:

 Công cụ để xây dựng hệ thống

 Giao diện hệ thống quản lý và chia sẻ File

62

63

5.2.2. Form quản lý và chia sẻ file

64 QUẢN LÝ FILE   UPLOAD FILE   SEARCH FILE   DOWNLOAD FILE   ĐĂNG XUẤT  X

Bảng 5.1. So sánh chức năng của Client-Server và Local Proxy

Nhìn ở bảng so sánh phía trên, ta có thể thấy hầu hết các chức năng cơ bản của hệ thống File Sharing thiết kế theo mô hình Client-Server đã đƣợc chuyển đổi sang mô hình Local Proxy. Riêng chức năng đăng xuất, theo ý kiến cá nhân của tác giả là chƣa cần thiết và có thiết kế phức tạp nên tạm thời luận văn chƣa đƣa vào chức năng này.

5.3.2. So sánh khả năng của hệ thống

KHẢ NĂNG CLIENT-SERVER LOCAL PROXY

TÍNH SẴN SÀNG  

KHÔNG PHỤ THUỘC VÀO

SERVER X 

TÍNH MỞ RỘNG X 

TÍNH BẢO MẬT  X

Bảng 5.2. So sánh khả năng của Client-Server và Local Proxy

 Tính sẵn sàng: Cả hai hệ thống đều đảm bảo việc cung cấp file cho các client.

 Sự phụ thuộc vào Server: Hệ thống đƣợc thiết kế theo mô hình Client-Server

trong trƣờng hợp nếu Server không kết nối đƣợc vào mạng sẽ khiến cho hệ thống không hoạt động đƣợc. Còn với hệ thống Local Proxy, trong trƣờng hợp

65

BootStrap Node không kết nối đƣợc vào mạng thì các máy đang trong hệ thống khác vẫn hoạt động bình thƣờng.

 Tính mở rộng: Đối với hệ thống đƣợc thiết kế theo mô hình Client-Server, khi

số lƣợng Client tăng lên, Server cũng cần phải tăng khả năng về phần cứng nhằm đáp ứng các yêu cầu dữ liệu. Hơn nữa, việc các Client cùng kết nối đến một Server sẽ khiến cho chất lƣợng dịch vụ, tốc độ download cũng nhƣ upload đều giảm đi. Còn với hệ thống đƣợc thiết kế theo mô hình Local Proxy, việc có càng nhiều máy tham gia vào hệ thống sẽ giúp cho hệ thống trở nên hoạt động tốt hơn, chất lƣợng dịch vụ tăng lên.

 Tính bảo mật: Việc lƣu trữ tập trung giúp cho các giải pháp bảo vệ dữ liệu trong

hệ thống thiết kế theo mô hình Client-Server trở nên dễ dàng hơn. Đối với hệ thống thiết kế theo mô hình Local Proxy, việc file đƣợc lƣu trực tiếp tại các Client khiến cho vấn đề bảo mật trở nên phức tạp hơn. Đây là một vấn đề quan trọng cần tiếp tục nghiên cứu để hoàn thiện hệ thống

KẾT LUẬN

Sau khi tóm tắt lý thuyêt tổng quan về hai mô hình trong hệ thống phân tán là mô hình client-server và mô hình peer to peer, luận văn đã đánh giá, phân tích các ƣu nhƣợc điểm của từng mô hình. Tiếp theo, luận văn đƣa ra ý tƣởng xây dựng mô hình để tận dụng đƣợc những ƣu điểm của các mô hình. Từ đó, trên cơ sở lý thuyết, luận văn áp dụng thiết kế vào bài toán quản lý và chia sẻ file trong hệ thống.

Trong mô hình thực nghiệm, chƣơng trình đã đạt đƣợc những kết quả, cung cấp các chức năng nhƣ: đăng ký, đăng nhập, quản lý file, upload và download file. Hƣớng phát triển tiếp theo của đề tài là việc bảo mật dữ liệu trong hệ thống.

Tuy nhiên, mặc dù đã cố gắng nhƣng do hiểu biết còn hạn hẹp nên luận văn không tránh khỏi còn nhiều thiếu sót.Rất mong đƣợc tiếp nhận sự đóng góp ý kiến của các quý thầy, các cô và bạn đọc để luận văn đƣợc hoàn thiện, có thể áp dụng vào thực tế.

66

[3]. Dale, Cameron, Liu, Jiangchuan, 2009. A peer to peer distribution system for

software package releases and updates.

[4]. Ha Quoc Trung. Distributed software distribution solution using p2p. Journal of

Science Technology, Technical Universities, (ISSN 0868-3980), (78):6–10, 2010.

[5]. Ha Quoc Trung. New approach to develop the messenger application: From client-

server design to p2p implementation. In Proceedings of International Conference of Advanced Computer Science Information Technology (ACSIT-2012), 2012

[6]. Lua, E. K., Crowcroft, J., Pias, M., Sharma, R., Lim, S., & Lim, S. (2005) A Survey

and Comparison of Peer-to-Peer Overlay Network Schemes. Communications Surveys & Tutorials, IEEE, 72--93

[7]. Luong Quy Tho, Ha Quoc Trung, 2013. P2P shared-caching model: using P2P to

improve client-server application performance.

[8]. Nguyen Quang Thu. Study of distributed replication: design a messenger

application using local proxy model. Master’s thesis, Hanoi University of Science and Technology, 4 2013.

[9]. S. A. Baset, H. G. Schulzrinne, 2006. An Analysis of the Skype Peer-to-Peer

Internet Telephony Protocol. INFOCOM 2006

[10]. Tan Jin, Yu Sheng-sheng, and Zhou Jing-li. Design and implementation of a

proxy caching system for streaming media. Wuhan University Journal of Natural Sciences, 9:31–36, 2004. 10.1007/BF02912713.

67

[11]. Tanenbaum, A.S. & Steen, M.v.(2006) Distributed Systems: Principles and

Paradigms (2nd Edition). Prentice Hall

[12]. http://www.webdrive.com/docs/geninfo/wpftpbasics.pdf

[13]. http://www.oacs.umd.edu/Guide_to_FTP.pdf

Một phần của tài liệu Ứng dụng phân tán dựa trên mô hình local proxy cho thông tin dạng nhị phân (Trang 59)