Kỹ thuật bảng băm phân tán và phát triển ứng dụng mạng ngang hàng

96 521 1
Kỹ thuật bảng băm phân tán và phát triển ứng dụng mạng 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

BỘ GIÁO DỤC ĐÀO TẠO Cộng hoà xã hội chủ nghĩa Việt Nam TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập – Tự – Hạnh phúc HÀ NỘI LỜI CAM ĐOAN Luận văn nghiên cứu thực hướng dẫn Thầy giáo TS Nguyễn Khanh Văn - Bộ môn công nghệ phần mềm - Viện công nghệ thông tin Truyền thông - Đại học bách khoa Hà Nội Để hoàn thành luận văn này, tài liệu tham khảo liệt kê, cam đoan không chép toàn văn công trình thiết kế tốt nghiệp người khác Hà Nội, ngày 25 tháng 02 năm 2012 Lê Văn Hòa Trang LỜI CẢM ƠN Trước hết vô biết ơn sâu sắc đến Thầy giáo hướng dẫn TS Nguyễn Khanh Văn - người trực tiếp dành nhiều thời gian tận tình hướng dẫn cho định hướng khoa học sâu sắc giúp hoàn thành luận văn Tôi xin chân thành cảm ơn Ban lãnh đạo Công ty viễn thông viettel, nơi công tác tạo nhiều điều kiện động viên khích lệ để hoàn thành luận văn Sau xin bày tỏ lòng biết ơn đến người thân bạn bè đồng nghiệp, người cổ vũ động viên hoàn thiện luận văn Hà Nội, ngày 25 tháng 02 năm 2012 Lê Văn Hòa Trang MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN MỤC LỤC DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT DANH MỤC CÁC BẢNG DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ MỞ ĐẦU Lý chọn đề tài Lịch sử nghiên cứu .10 Mục đích nghiên cứu luận văn, đối tượng, phạm vi nghiên cứu 12 Tóm tắt luận điểm đóng góp tác giả .12 Phương pháp nghiên cứu 14 CHƯƠNG I: TỔNG QUAN 15 1.1 Lý thuyết chung mạng P2P 15 1.1.1 Mạng ngang hàng P2P gì? 15 1.1.2 Phân loại mô hình mạng ngang hàng P2P 17 1.1.2.1 Mạng ngang hàng P2P không cấu trúc 18 1.1.2.2 Mạng ngang hàng có cấu trúc 22 1.1.3 Phân loại lĩnh vực ứng dụng mạng ngang hàng 23 1.1.3.1 Giao tiếp 23 1.1.3.2 Chia sẻ file 24 1.1.3.3 Băng thông 25 1.1.3.4 Không gian lưu trữ 26 1.1.3.5 Các chu trình xử lý 27 1.1.4 Phần mềm ứng dụng mạng ngang hàng P2P 27 1.2 Lý thuyết chung Bảng băm phân tán (DHT) 28 Trang 1.2.1 Bảng băm 28 1.2.2 Bảng băm phân tán DHT gì? 28 1.2.3 Một số đặc điểm DHT 33 1.2.3.1 Không gian địa 33 1.2.3.2 Quản lý liệu 34 1.2.3.3 Cơ chế quản lý 34 1.2.4 Các giao thức cài đặt DHT 35 1.2.4.1 Chord 36 1.2.4.2 Tapestry 42 1.3 Nền tảng ứng dụng p2p môi trường di động 46 1.3.1 Kiến trúc Mobile P2P 47 1.3.2 Đánh giá khả thiết bị di động 50 1.3.3 Các giao thức P2P di động 52 CHƯƠNG II: BAMBOODHT VÀ OPENDHT 54 2.1 Bamboo DHT 54 2.1.1 Giới thiệu chung Bamboo 54 2.1.2 Quá trình Lookup 55 2.1.4 Cơ chế quản lý 58 2.1.5 Ưu điểm BambooDHT 61 2.2 OpenDHT 62 2.2.1 Tổng quan Thiết kế 65 2.2.2 Các giao diện 67 2.2.3 Phân bổ lưu trữ 74 2.2.4 Đánh giá 75 CHƯƠNG III: XÂY DỰNG ỨNG DỤNG 81 3.1 Ứng dụng chia sẻ file 81 3.1.1 Chức chương trình 81 3.1.2 Thiết kế UML 82 3.1.3 Thiết kế hệ thống 84 Trang 3.1.4 Cài đặt chương trình 86 3.2 Ứng dụng chat conference 88 3.2.1 Thiết kế 89 3.2.2 Cài đặt chương trình 91 KẾT LUẬN 93 TÀI LIỆU THAM KHẢO 95 Trang DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT Tiếng Anh Tiếng Việt Peer-to-peer Mạng ngang hàng Node Một thiết bị nối mạng (một peer) item Một đơn vị liệu Structured Có cấu trúc Overlay Mạng xây dựng mạng khác Hash table Bảng băm Distributed hash table Bảng băm phân tán Join Gia nhập (mạng ngang hàng) Leave Rời khỏi (mạng ngang hàng) Failure Lỗi Churn rate Số lượng peer rời khỏi/gia nhập mạng khoảng thời gian put Lưu trữ liệu vào bảng băm get Truy cập liệu từ bảng băm DANH MỤC CÁC BẢNG Bảng 1: Giao diện put/get, H(x) hàm SHA-1 x 70 Bảng 2: Giao diện lookup hỗ trợ thư viện ReDiR 72 Bảng 3: Thời gian đứng hàng đợi thực put client 77 Trang DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1.1: Mô hình Client/Server mô hình P2P 16 Hình 1.2: Mô hình overlay network 17 Hình 1.3: Sơ đồ phân loại mô hình mạng ngang hàng P2P 18 Hình 1.4: Mạng ngang hàng tập trung hệ thứ (Napster) 20 Hình 1.5: Mạng ngang hàng túy (Gnutella 4.0, FreeNet) 21 Hình 1.6: Mạng ngang hàng lai 22 Hình 1.7: Một ví dụ bảng băm 29 Hình 1.8: Ví dụ bảng băm phân tán 30 Hình 1.9: Ví dụ DHT để ánh xạ filenames URL, mà đại diện vị trí files 31 Hình 1.10: Kiến trúc ứng dụng DHT 32 Hình 1.11: Ví dụ không gian địa DHT 33 Hình 1.12: Lưu trữ liệu thông qua địa IP 34 Hình 1.13: Một không gian định danh Chord 6-bit Các dòng chấm key node Các dòng đen diễn tả finger node N8 37 Hình 1.14: Quá trình node join vào mạng 39 Hình 1.15 (a): Bảng finger vị trí key sau node join 40 Hình 1.15 (b): Bảng finger vị trí key sau node leave 41 Hình 1.16: Minh họa cách chọn bảng định tuyến node Tapestry 43 Hình 1.17: Đường thông điệp từ node 5230 tới node 42AD 44 Hình 1.18: Ví dụ Tapestry node publish item 45 Hình 1.20: Ví dụ Tapestry node tìm kiếm item 46 Hình 1.21: Kiến trúc mobile peer to peer 48 Hình 1.22: Kiến trúc Pure P2P Hybrid P2P 48 Hình 1.23: Kiến trúc mobile proxy 51 Hình 1.24: Giao thức tổng quan 52 Hình 2.1: Các node hàng xóm Bamboo 56 Trang Hình 2.2: Việc lookup Bamboo 57 Hình 2.3: Ví dụ chế quản lý mạng bamboo 59 Hình 2.4: Kiến trúc OpenDHT 63 Hình 2.5: Một ví dụ ReDiR với nhân tố nhánh b=2 (mỗi có con) 73 Hình 2.6: Biểu đồ phân bổ công thực test 79 Hình 3.1: Biểu đồ Use Case 82 Hình 3.2: Biểu đồ Activity ứng với chức Upload 83 Hình 3.3: Biểu đồ Activity ứng với chức Search, download remove 83 Hình 3.4: Kiến trúc hệ thống 84 Hình 3.5 : Cấu trúc lưu trữ file OpenDHT 85 Hình 3.6: Giao diện chọn file để upload lên OpenDHT 86 Hình 3.7: Giao diện download file từ OpenDHT 87 Hình 3.8: Giao diện Play file video trước upload lên OpenDHT 88 Hình 3.9: Loại thông điệp truyền node 90 Hình 3.10: Demo ứng dụng chat conference với node 92 Trang MỞ ĐẦU Lý chọn đề tài Ngày mạng internet làm cho sống người sang trang Nhờ internet, người mua bán hàng hóa, quảng cáo thương hiệu cá nhân công ty, tìm kiếm nhà đất, chơi game online, xem tin tức, nghe nhạc, xem phim trực tuyến,… Sự phổ biến mạng internet, với dich vụ internet, thách thức lớn đối cới tổ chức, công ty cung cấp dịch vụ, phải xây dựng hệ thống để đảm bảo cho hàng triệu người truy cập lúc Ví dụ, số trang web chia sẻ nhạc phục vụ hàng triệu người nghe nhạc, upload, dowload nhac lúc Khi đó, nhu cầu tải băng thông lớn Nếu số lượng máy chủ cố định, dẫn đến việc hệ thống khả cung cấp dịch vụ cho máy khách thêm vào Do đó, hệ thống khắc phục vấn đề thường hệ thống xử lý phân tán, có chế quản lý tài nguyên thông minh Công nghệ mạng ngang hàng P2P đời giải vấn đề Mạng ngang hàng kiến trúc mà thành phần mạng có chức khả Tất máy tham gia đóng góp tài nguyên, bao gồm băng thông, lưu trữ, khả tính toán Do nhiều máy tham gia khả tổng thể hệ thống mạng lớn Tính chất phân tán mạng ngang hàng giúp cho mạng hoạt động tốt số máy gặp cố Sự tiến hóa cấu trúc mạng làm cho mạng ngang hàng ngày trở lên mạnh mẽ Một cấu trúc kỹ thuật Bảng băm phân tán (Distributed Hash Table) Hệ thống định nghĩa liên kết nút mạng mạng phủ theo thuật toán cụ thể, đồng thời xác định chặt chẽ nút mạng chịu trách nhiệm phần liệu chia sẻ mạng Với cấu trúc này, máy cần tìm Trang liệu, cần áp dụng giao thức chung để xác định nút mạng chịu trách nhiệm cho liệu sau liên lạc trực tiếp đến nút mạng để lấy kết Từ vấn đề nên chọn đề tài: “Kỹ thuật bảng băm phân tán phát triển ứng dụng mạng ngang hàng” làm luận văn tốt nghiệp thạc sỹ khoa học với mục đich làm chủ biện pháp kỹ thuật p2p tiên tiến chưa biết đến việt nam phát triển ứng dụng có khả ứng dụng cao Lịch sử nghiên cứu Được đời từ năm 1999, Với nhiều ưu điểm hứa hẹn tính hiệu quả, linh hoạt khả mở rộng cao, mạng ngang hàng peer-to-peer thu hút nhiều quan tâm từ cộng đồng nghiên cứu Các mạng ngang hàng peerto-peer phát triển qua ba hệ, hệ phát triển với động cơ, mục đích Thế hệ P2P bắt đầu với xuất ứng dụng chia sẻ file Napster Napster ứng dụng khác hệ thứ sử dụng mô hình mạng tập chung Trong đó, hầu hết peer hệ thống có vai trò nhau, số peer có vai trò lớn gọi server Trong mô hình này, peer muốn chia sẻ file với peer khác thông báo với server file Khi peer muốn tìm file đó, gửi yêu cầu đến server, dựa thông tin thu thập được, server tìm peer chứa file trả kết tìm kiếm cho peer yêu cầu Kết trả peer phù hợp dựa số thông số tốc độ kết nối, kích thước file… Sau nhận kết quả, peer tìm kiếm trao đổi file trực tiếp với peer chứa file mà không thông qua server Đóng góp hệ thứ đưa kiến trúc mạng không xem máy tính client server mà xem chúng máy cung cấp sử dụng tài nguyên với vai trò tương đương Mô hình mạng tập chung cho phép tìm kiếm thông tin không Trang 10 3.1.2 Thiết kế UML a/ Biểu đồ Use case Hình 3.1: Biểu đồ Use Case b/ Biểu đồ Activities Trang 82 Hình 3.2: Biểu đồ Activity ứng với chức Upload Hình 3.3: Biểu đồ Activity ứng với chức Search, download remove Trang 83 3.1.3 Thiết kế hệ thống Trước thiết kế phần mềm ta tìm hiểu kiến trúc hệ thống interface lớp Như hình 3.4 cho ta thấy phần mềm client lớp openDHT Application lớp hệ thống Theo kiến trúc cần xem xét làm để chương trình client giao tiếp với OpenDHT sử dụng interface cung cấp OpenDHT để thực yêu cầu chức chương trình openDHT Application Layer (Client Software) Get (key) Get_detail(key) Data Put (key, value) Put (key, value, hashed secret) Remove (key,value,secret) OpenDHT (Distributed Hash Table) Layer Lookup (key) Node IP address Bamboo Layer Node Node Node Hình 3.4: Kiến trúc hệ thống Như phần giới thiệu OpenDHT thiết kế với ba phương thức ‘put’, ‘get’ ‘remove’ Chương trình client cần xây dựng với chức tìm kiếm, download, remove, upload tương ứng với ba phương thức Phương thức ‘get’ sử dụng với chức tìm kiếm chức download Trang 84 Phương thức ‘put’ sử dụng với chức upload phương thức ‘remove’ sử dụng với chức xóa file Hiện kích thước tố đa value mà OpenDHT hỗ trợ 1KB Do upload download file từ OpenDHT với file lớn 1KB phân chia thành nhiều gói nhỏ 1000 1004 File data 1000 bytes Hashed key Number of 1004 File data 1004 bytes Hashed 1004 File data 1004 bytes Hashed 1004 File data 1004 bytes No useful key Hình 3.5 : Cấu trúc lưu trữ file OpenDHT Trang 85 3.1.4 Cài đặt chương trình Upload Khi người dùng muốn upload file, người dùng click vào nút Browse để chọn file cần chia sẻ Sau đó, người dùng click vào nút Upload để thực upload file lên hệ thống OpenDHT Hình 3.6: Giao diện chọn file để upload lên OpenDHT Download Khi người dùng muốn download file đó, người dùng tìm kiếm tên file muốn download cách nhập vào tên file nhấn nút “Tìm kiếm” Danh sách file tìm hiển thị bên Nếu muốn download file đó, Trang 86 người dùng click chuột trái vào file nhấn nút “Dowload”, ví dụ hình 3.7, người dùng tìm kiếm file có tên Ld1.wav, click chuột trái vào file tìm danh sách, sau chọn nút “Dowload” để tải máy Hình 3.7: Giao diện download file từ OpenDHT Ngoài tính upload vad download file từ OpenDHT, chương trình có thêm tính xem file ảnh, video, nhạc với nut “Play” Đồng thời hiển thị Progressbar trình upload download Chương trình có tính quản lý danh sách file tải client từ OpenDHT bao gồm quản lý tên file, dung lượng file đường dẫn chứa file Trang 87 Hình 3.8: Giao diện Play file video trước upload lên OpenDHT 3.2 Ứng dụng chat conference Ứng dụng chat conference Multicast nên phải hỗ trợ chức Multicast subscribing để tham gia vào group publish thông điệp Ứng dụng multicast có tính động, tức node tham gia dời khỏi nhóm thời điểm Các giao thức để multicast thỏa mãn hệ thống lớn, có khả tự động sửa đổi để thỏa mãn có node bị lỗi dời khỏi hệ thống Trang 88 3.2.1 Thiết kế Ứng dụng chat conference chia làm hai phần: Lớp giao thức multicast lớp ứng dụng bên Chia làm hai lớp tạo mềm dẻo ứng dụng, ta dễ dàng thay ứng dụng lớp trên, mở rộng, tích hợp nhiều loại ứng dụng lại với tạo ứng dụng hoàn thiện Cũng nhiều ứng dụng chat khác, cho phép người dùng gửi thông điệp cho tất người dùng khác group Nó nhận thông điệp từ node khác group Các ứng dụng dựa Bamboo có kiến trúc lập trình event – driven Nếu có event mới, xử lý theo trạng thái đăng ký từ trước Quá trình xử lý Bamboo vòng lặp nhận thông điệp xử lý thông điệp Các thông điệp mà ứng dụng chủ yếu xử lý định kỳ theo thời gian Trong khoảng thời gian định node sẽ: nhập vào group, gửi thông điệp đến node group (nếu có) Các thông điệp: Ưng dụng Chat nên phải truyền đoạn thông điệp chữ Các lớp kế thừa lớp QuickSerializable mà Bamboo định nghĩa: Trang 89 QuickSerializable Payload (Chat) + NodeID: source +String : content Hình 3.9: Loại thông điệp truyền node Các yếu tố kỹ thuật: Chúng ta tóm tắt yếu tố kỹ thuật xây dựng ứng dụng OpenDHT, quan trọng xây dựng yêu cầu client để tương tác với OpenDHT, yêu cầu client phần quan trọng ứng dụng client, xây dựng yêu cầu ta cần quan tâm đến vấn đề: XML RPC: OpenDHT tích hợp cho hai dạng yêu cầu XML RPC SUN RPC, nhiên ta thấy XML RPC dễ dùng là, thích hợp với nhiều ngôn ngữ, đặc biệt ngôn ngữ script Perl Python Remove Function: Sau XML RPC, khả loại bỏ value mà TTL chúng chưa hết hạn yêu cầu thông thường, chức chưa tích hợp OpenDHT Authentication: Trong OpenDHT không hỗ trợ việc put key cho value (value không thay đổi) key có value (các put sau có key không chấp nhận) mà đề xuất phần Về chưa có yêu cầu xác thực từ người dùng, thiếu sót DHT Trang 90 Read-modify-write: Như trình bày phần trên, OpenDHT cung cấp kết cuối ổn định Trong thay đổi values OpenDHT cũ cách remove value cũ put vào value mới, hoạt động dẫn đến thời gian không ổn định Trên thực tế, hai client đồng thời thay đổi giá trị, OpenDHT lưu trữ hai giá trị 3.2.2 Cài đặt chương trình Người dùng thực chức thay đổi phòng họp, tương ứng với việc thoát khỏi group tham gia vào group Tại node gửi thông điệp đến node khác group Do điều kiện mạng máy tính lớn, nên ta triển khai máy mạng LAN công ty cho kết tốt Thời gian trễ thực truyền thông điệp không đáng kể (gần tức thời) Khi node rời khỏi mạng không ảnh hưởng đến node khác Việc test thực tốt với số lượng node 7, tốc độ truyền tin gần tức thời Mặc dù ứng dụng thiếu nhiều tính làm cho hoàn thiện Nhưng thuật toán chế multicast khoa học ổn định Nó xem tảng ví dụ cho việc phát triển ứng dụng multicast sau Qua ứng dụng cho thấy khả phát triển ứng dụng OpenDHT dễ dàng Mặc dù có đôi chút khó khăn việc triển khai mạng DHT cung cấp dịch vụ, tính chất dịch vụ DHT chia ứng dụng nên cần mạng DHT triển khai ta phát triển nhiều loại ứng dụng Trang 91 Hình 3.10: Demo ứng dụng chat conference với node Trang 92 KẾT LUẬN Kết đạt luận văn Sau thời gian thực luận văn hướng dẫn nhiêt tình tận tâm thầy giáo TS Nguyễn Khánh Văn Tôi học tập, tìm hiểu nhiều kinh nghiệm nghiên cứu làm việc Đặc biêt, luận văn đạt kết sau: Đầu tiên, nắm bắt kiến thức chung mạng ngang hàng, lịch sử hình thành, kiến trúc cách thức hoạt động mạng ngang hàng Đặc biệt, kiến trúc DHT kiến trúc thú vị Ngoài việc tìm hiểu cách thức hoạt động chung mạng DHT, tìm hiểu số mạng DHT cụ thể Chord, Tapestry,…, đặc biết DHT Bamboo Bamboo DHT mà trực tiếp làm việc phát triển ứng dụng OpenDHT Thứ hai, tìm hiểu đến kiến trúc DHT OpenDHT Đây kiến trúc tiên tiến có tài liệu Cùng với tài liệu thầy giao, tập trung vào tìm hiểu mã nguồn Bamboo, từ tìm hiểu cách thức hoạt động, giao diện để sử dụng Tôi tìm hiểu thuật toán chia công node DHT để cung cấp dịch vụ từ node OpenDHT Thứ ba, từ tìm hiểu mặt lý thuyết trên, xây dựng ứng dung chia sẻ file ứng dụng chat conference mạng ngang hàng Tuy ứng dụng đơn giản chức thuật toán bên chúng hoàn thiện cho ứng dụng P2P dựa giao diện đơn giản mà OpenDHT cung cấp Tôi thực triển khai mạng LAN máy Trang 93 cục cho kết tốt Hy vọng tảng cho ứng dụng P2P khác phát triển sau để phục vụ cho yêu cầu thực tế Phương hướng nghiên cứu Lĩnh vực ứng dụng mạng ngang hàng P2P ngày quan tâm nghiên cứu nhiều Hơn nữa, việc phát triển ứng dụng điện thoại di động ngày phổ biến Vì vậy, hướng nghiên cứu luận văn nghiên cứu kỹ thuật để phát triển ứng dụng mạng ngang hàng điện thoại di động mang tính ứng dụng cao, thuận lợi cho người thường xuyên phải di chuyển tính chất công việc Các ứng dụng mạng ngang hàng dựa OpenDHT mảng thú vị nghiên cứu có khả ứng dụng thực tế lớn Kỹ thuật để xây dựng ứng dụng OpenDHT đơn giản Vì tận dụng thuộc tính: khả đáp ứng, tin cậy DHT thuộc tính dễ dàng phát triển triển khai ứng dụng OpenDHT Vì tin luận văn tài liệu hữu ích cho bắt đầu tìm hiều mạng ngang hàng, DHT OpenDHT Tuy nhiên hướng tiếp cận khả hạn chế nên chắn có nhiều khuyết điểm Tôi mong nhận giúp đỡ thầy cô giáo bạn luận văn hoàn thiện Trang 94 TÀI LIỆU THAM KHẢO [1] A Gupta, B Liskov, and R Rodrigues, “Efficient routing for peer-to-peer overlays” [2] Ali Ghodsi, PhD dissertation, KTH-Royal Institute of Technology, October 2006, “Distributed k-ary System: Algorithms for Distributed Hash Tables” [3] A Rowstron and P Druschel, “Pastry: Scalable, distributed object location and routing for large scale peer-to-peer systems” [4] B Y Zhao, L Huang, J Stribling, S C Rhea, A D Joseph, and J D Kubiatowicz, IEEE Journal on Selected Areas in Communications, vol 22, no 1, Jan 2004, “Tapestry: A resilient global-scale overlay for service deployment”, pp 41–53 [5] Bamboo http://bamboo-dht.org/ [6] Ben Y Zhao, Ling Huang, Jeremy Stribling, Sean C Rhea, Anthony D Joseph, and John D Kubiatowicz, “Tapestry: A resilient global-scale overlay for service deployment” [7] F Dabek, J Li, E Sit, J Robertson, M F Kaashoek, and R Morris, “Designing a DHT for low latency and high throughput” [8] Frank Dabek, A Distributed Hash Table [9] Gnutella http://www.gnutella.com [10] Ion Stoica, Daniel Adkins, Shelley Zhuang, Scott Shenker, and Sonesh Surana, ”Internet indirection infrastructure” [11] John Douceur The Sybil attack [12] John F Buford, Heather Yu, and Eng Lua, P2P Networking and Applications [13] Ming Xie Computer Science, University of Ottawa, September 26, 2003 P2P SystemsBased on Distributed Hash Table [14] Napster http://www.napster.com [15] OceanStore http://oceanstore.cs.berkeley.edu/ Trang 95 [16] OpenDHT http://opendht.org/ [17] Petar Maymounkov and David Mazieres, “Kademlia: A peer-to-peer information system based on the XOR metric” [18] Ralf Steinmetz, Klaus Wehrel (Eds.) (2005), Peer-to-Peer Systems and Applications, pp 1-468 [19] S Rhea, B Godfrey, B Karp, J Kubiatowicz, S Ratnasamy, S Shenker, I Stoica, and H Yu OpenDHT: a public DHT service and its uses [20] Takeshi Kato, Norihiro Ishikawa, Hiromitsu Sumino, “A Platform and Applications for Mobile Peer-to-Peer Communications” Trang 96 [...]... để phát triển một ứng dụng trên mạng ngang hàng Với nội dung lý thuyết chung về mạng ngang hàng và kỹ thuật bảng băm trên mạng ngang hàng Chỉ đi vào tìm hiểu một cách tổng quan các khái niệm trên mạng ngang hàng phục cho trả lời câu hỏi mạng ngang hàng là gì?”, kỹ thuật bảng băm trên mạng ngang hàng là gì?”, “kiến trúc chung của nó như thế nào?”, “ưu nhược điểm của nó so với các kiến trúc khác?” Ứng. .. các chủ đề kỹ thuật bảng băm phân tán DHT, mạng ngang hàng P2P, phân tích từ nhu cầu bài toán thực tế của xã hội để tìm ra các kiến trúc giải pháp mới làm nền tảng để phát triển những ứng dụng mạng ngang hàng có khả năng ứng dụng cao Trang 14 CHƯƠNG I: TỔNG QUAN 1.1 Lý thuyết chung về mạng P2P 1.1.1 Mạng ngang hàng P2P là gì? Mạng ngang hàng (Peer-to-Peer – P2P) bắt đầu xuất hiện từ 1999 và đã thu hút... biểu cho mạng ngang hàng dạng này là Gnutella 4.0, FreeNet Hình 1.5: Mạng ngang hàng thuần túy (Gnutella 4.0, FreeNet) c/ Các mạng ngang hàng lai (Hybrid) Để khắc phục nhược điểm của mạng ngang hàng thuần túy, một mô hình mang ngang hàng mới được phát triển với tên gọi là mạng ngang hàng lai Đây được gọi là mạng ngang hàng thế hệ 2 Phần mềm tiêu biểu cho mạng ngang hàng kiểu này là Gnutella 0.6 và JXTA... 12 mạng ngang hàng và cách triển khai một ứng dụng mạng ngang hàng trên OpenDHT Trong đó nó được chia thành ba chương chính: Chương 1: Tổng quan các cơ sở khoa học của luận văn, bao gồm ba phần chủ đạo: Đầu tiên, luận văn mô tả lý thuyết chung về mạng ngang hàng, các mô hình mạng ngang hàng và các lĩnh vực ứng dụng của nó Từ các ứng dụng thực tế, có thể tìm ra các kiến trúc, giải pháp để phát triển ứng. .. hình mạng ngang hàng P2P Mạng ngang hàng có thể được phân loại theo mức độ tập trung của mạng Bao gồm mạng ngang hàng không có cấu trúc và mạng ngang hàng có cấu trúc Trang 17 P2P P2P không cấu trúc Thế hệ thứ hai Thế hệ thứ nhất Tập trung P2P có cấu trúc Thuần túy (Pure) Lai (Hybrid) DHT Base Hình 1.3: Sơ đồ phân loại các mô hình mạng ngang hàng P2P 1.1.2.1 Mạng ngang hàng P2P không cấu trúc Mạng ngang. .. pháp để phát triển ứng dụng trong phần sau của luận văn Thứ hai, luận văn đi sâu vào một kiến trúc, kỹ thuật để áp dụng các thuật toán lưu trữ và tìm kiếm dữ liệu trên mạng ngang hàng đó là Kỹ thuật bảng băm phân tán (DHT) Phần này giới thiệu tổng quan về một bảng băm phân tán và cách thức làm việc của nó bao gồm quản lý dữ liệu, định tuyến để tìm kiếm dữ liệu trên mạng ngang hàng Sâu hơn nữa, phần... khác?” Ứng dụng minh họa là ứng dụng dựa trên kiến trúc vừa trình bày Nó phải tận dụng được những ưu điểm của kiến trúc đó để minh họa khả năng triển khai và áp dụng vào thực tế kiến trúc đó 4 Tóm tắt các luận điểm cơ bản và đóng góp mới của tác giả Nội dung của luận văn đi từ lý thuyết tổng quan của mạng ngang hàng, kỹ thuật bảng băm phân tán trên mạng ngang hàng, đến bài toán thực tế, các ứng dụng Trang... cách xây dựng ứng dụng trên OpenDHT để đánh giá tính khả thi Và sâu hơn nữa, người viết luận văn mong muốn làm chủ các biện pháp kỹ thuật p2p tiên tiến chưa được biết đến ở việt nam và phát triển các ứng dụng có khả năng ứng dung rộng dãi Trong khuôn khổ luận văn này, người viết luận văn sẽ giới thiệu bao gồm lý thuyết chung về mạng ngang hàng, kỹ thuật bảng băm phân tán trên mạng ngang hàng Sau đó sẽ... đích là đánh giá khả năng triển khai thực tế một ứng dụng OpenDHT, tìm hiểu xâu hơn các API để sử dung khi xây dựng một ứng dụng OpenDHT 5 Phương pháp nghiên cứu Đề tài của luận văn là: Kỹ thuật bảng băm phân tán và phát triển ứng dụng mạng ngang hàng Đây là đề tài khoa học mang tính ứng dụng thực tiễn cao nên trong quá trình nghiên cứu, người viết luận văn chủ yếu dựa vào các phương pháp sau để... Trang 13 của luận văn và cũng là tiền đề để phát triển các ứng dụng mạng ngang hàng sau này Chương 3: Xây dựng ứng dụng dựa trên OpenDHT Chương này chình là yếu tố để đánh giá kết quả nghiên cứu của luận văn Ứng dụng mà ta xây dựng ở đây là ứng dụng chia sẻ file và ứng dụng chat conference Trong đó trình bày việc thiết kế, triển khai một hệ thống OpenDHT trên mạng Lan và chạy ứng dụng trên đó Mục đích

Ngày đăng: 23/11/2016, 04:10

Từ khóa liên quan

Mục lục

  • Lời cam đoan

  • Lời cảm ơn

  • Mục lục

  • Mở đầu

  • Chương 1

  • Chương 2

  • Chương 3

  • Kết luậ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