Giải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúcGiải pháp backup dữ liệu, sử dụng cơ chế phân cụm động trong mạng ngang hàng có cấu trúc
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN HỮU LOAN GIẢI PHÁP BACKUP DỮ LIỆU, SỬ DỤNG CƠ CHẾ PHÂN CỤM ĐỘNG TRONG MẠNG NGANG HÀNG CĨ CẤU TRÚC Ngành: Cơng nghệ thơng tin Chun ngành: Hệ thống thơng tin Mã số: 60.48.01.04 TĨM TẮT LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội – 2017 DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT Giải nghĩa Từ viết tắt Capacity Khả lưu trữ node Chord Là giao thức mạng ngang hàng biểu diễn mạng dạng vòng tròn Node Diễn tả thực thể mạng peer máy tính kết nối mạng DHT (Distributed Hash Table) Bảng băm phân tán Entry Là bước định tuyến bảng định tuyến ID (Identification number) Một số để định danh cho node Peer Một node mạng ngang hàng P2P (Peer to peer) Mạng ngang hàng Supernode Là node tương tự server, có khả chuyển tiếp thông tin kết nối tới nhiều node khác hệ thống MỤC LỤC CHƯƠNG 1: TỔNG QUAN VỀ KIẾN TRÚC HỆ THỐNG MẠNG NGANG HÀNG…………………………………………………………………………… 1.1 Hệ thống P2P Tập trung……………………………………………………… 1.2 Hệ thống P2P phân tán đầy đủ…………………………………………………5 1.3 Hệ thống P2P hỗn hợp…………………………………………………………7 CHƯƠNG 2: CÁC PHƯƠNG PHÁP BACKUP DỮ LIỆU TRÊN MẠNG NGANG HÀNG CÓ CẤU TRÚC……………………………………………….9 2.1 Cơ chế backup theo successor list………………………………………… 2.2 Phân cụm tĩnh mạng Chord…………………………………………….11 2.2.1 Phương pháp tách cụm tĩnh………………………… …….11 2.2.2 Phương pháp backup file……………………………… ….12 CHƯƠNG 3: PHƯƠNG PHÁP PHÂN CỤM ĐỘNG VÀ CƠ CHẾ BACKUP 3.1 Phương pháp tách nhập cụm……………………………………………….…13 3.2 Phân mảnh đưa file vào mạng……………………………….….14 3.3 Backup node rời mạng…………………………………………….…15 CHƯƠNG 4: ĐÁNH GIÁ HIỆU QUẢ PHƯƠNG PHÁP TÁCH NHẬP CỤM SỬ DỤNG CƠ CHẾ PHÂN CỤM ĐỘNG………………………………….….17 4.1 Chương trình mơ phỏng………………………………………………………17 4.2 Đánh giá so sánh số thông số phương pháp tách nhập cụm theo chế phân cụm động so với phân cụm tĩnh…………………………………….….18 4.2.1 Tỷ lệ khôi phục file ban đầu thành công (khi cố định thời gian sống node tăng số file)………………………………………………….….18 4.2.2 Tỷ lệ file ban đầu thành công (cố định số lượng file thay đổi thời gian sống)…………………………………………………………….….19 4.2.3 Chi phí cho việc trì mảnh bao nhiêu…………….20 4.2.4 So sánh file ban đầu thành công thay đổi số lượng node cụm………………………………………………………………………… 20 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN………………………………………22 MỞ ĐẦU Một mạng ngang hàng không cấu trúc liên kết nút mạng mạng phủ thiết lập ngẫu nhiên Hệ thống mạng ngang hàng không cấu trúc thể nhược điểm khơng đảm bảo q trình tìm kiếm thành cơng Đối với tìm kiếm liệu phổ biến chia sẻ nhiều máy, tỉ lệ thành công cao, ngược lại, liệu chia sẻ vài máy xác suất tìm thấy nhỏ Mạng ngang hàng có cấu trúc khắc phục nhược điểm mạng không cấu trúc cách sử dụng hệ thống 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 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 Với ưu điểm mạng ngang hàng có cấu trúc, có nhiều giao thức đưa để xử lý cho toán cụ thể, số giao thức áp dụng Chord, CAN, Kademlia, Tapestry, Kelips, q trình hoạt động mạng ngang hàng có cấu trúc nhiều vấn đề chưa giải đảm bảo việc phục hồi liệu mạng node mạng thường xuyên gia nhập rời khỏi mạng, cân tải node chưa xử lý nhiều, mở rộng phạm vi hoạt động mạng đảm bảo bảo mật liệu chưa khắc phục triệt để, luận văn “Giải pháp backup liệu, sử dụng chế phân cụm động mạng ngang hàng có cấu trúc” đưa số phương pháp đảm bảo việc backup liệu khắc phục vấn đề nêu CHƯƠNG 1: TỔNG QUAN VỀ KIẾN TRÚC HỆ THỐNG MẠNG NGANG HÀNG Trong chương giới thiệu số kiến trúc hệ thống mạng mang hàng, mô tả đặc điểm chung, thuộc tính số hệ thống áp dụng cho kiến trúc đưa Nhìn chung, mạng Ngang hàng phân thành hai hệ thống hệ thống tập trung hệ thống phân tán dựa tính sẵn sàng hay nhiều server, bên cạnh có hệ thống hỗn hợp hệ thống vừa có đặc điểm hệ thống tập trung hệ thống phân tán Các nội dung mô tả chi tiết cho hệ thống Tập trung Kiến trúc P2P Hỗn hợp Khơng cấu trúc Phân tán Có cấu trúc Hình 1-1 Phân loại kiến trúc P2P 1.1 HỆ THỐNG P2P TẬP TRUNG Trong hệ thống P2P tập trung, có hay nhiều server giúp cho peer xác định vị trí tài nguyên mong muốn phối hợp hoạt động peer với Để định vị tài nguyên, peer gửi thông điệp tới server trung tâm để xác định địa peer mà chứa tài nguyên mong muốn Khi xác định peer có thơng tin hay liệu, liên kết trực tiếp với peer để trao đổi thơng tin mà không qua server [1] Kiến trúc hệ thống tập trung dễ bị công vào liên kết đến server, mặt khác nút thắt cổ chai hệ thống có số peer lớn, tiềm ẩn việc làm giảm hiệu cách đột ngột, mơ hình hạn chế khả mở rộng, điển hình mơ hình Napster [16] Hình 1-2 Mơ hình mạng Napster Mơ hình cho thấy có server trung tâm trì siêu liệu (metadata) file đối tượng chia sẻ peer mạng Metadata xem cặp (dataID, PeerID), truy vấn trước tiên kết nối trực tiếp đến server tung tâm, server trung tâm trả lại danh sách node chứa đối tượng/dữ liệu yêu cầu Sau truy vấn khởi tạo kết nối trực tiếp tới node chứa đối tượng/dữ liệu mà không thông qua server 1.2 HỆ THỐNG P2P PHÂN TÁN ĐẦY ĐỦ Trong hệ thống phân tán peer có quyền trách nhiệm Mỗi peer có thơng tin phần mạng yêu cầu liệu hay dịch vụ thông qua số peer khác[2] Như việc xác định peer yêu cầu liệu hay dịch vụ nhanh vấn đề thách thức hệ thống Hệ thống P2P phân tán chia thành hai hệ thống hệ thống P2P phân tán không cấu trúc hệ thống P2P phân tán có cấu trúc, khác hai hệ thống phương pháp truy vấn chuyển đến node 1.2.1 Hệ thống P2P không cấu trúc - Gnutella Gnutella hệ thống phân tán túy, khơng có node trung tâm chịu trách nhiệm tổ chức mạng không phân biệt client server [1,12] Các node hệ thống kết nối với thông qua phần mềm ứng dụng cụ thể Mạng Gnutella mở rộng node tham gia vào mạng bị thu hẹp node rời mạng Hoạt động Gnutella bao gồm việc tham gia, rời mạng, tìm kiếm tải file Hình 1-3 Mơ hình trao đổi tìm kiếm thơng tin Gnutella 1.2.2 Hệ thống P2P có cấu trúc - Giao thức Chord Chord giao thức tìm kiếm phân tán sử dụng mơ hình dạng vòng để kết nối node với Giao thức nằm hệ thống phân tán có cấu trúc, sử dụng bảng băm phân tán DHT để xác định cặp khóa (key, value) phục vụ cho việc tra cứu, tìm kiếm mạng [8] Hình 1-4 mơ tả node xếp thành hình vòng tròn sơ đồ kết nối node với mạng Chord Chord biểu diễn dạng vòng tròn, với vòng tròn có N bít có 2n khơng gian định danh, node có node liền trước (successor) node liền sau (predecessor), node định tuyến cho thông qua bảng định tyến (finger table) Mỗi dòng bảng định tuyến lưu thơng tin node xa gọi entry Bảng định tuyến xác định dựa số bit đưa vào hệ thống, với n bit có n entry bảng định tuyến Hình 1-4 Mơ hình mạng sử dụng giao thức Chord 1.3 HỆ THỐNG P2P HỖN HỢP Hệ thống P2P hỗn hợp tận dụng ưu điểm so với Hệ thống phân tán đầy đủ hệ thống tập trung Trong hệ thống có vài peer xử lý nhiều chức chịu trách nhiệm nhiều peer khác gọi supernode, node thành lập mức cao hệ thống hỗn hợp, peer server trung tâm để cung cấp dịch vụ cho peer khác [13] Mặc dù supernode chia sẻ vài chức tới server trung tâm có vài điểm khác biệt sau: Một supernode không mạnh server trung tâm chịu trách nhiệm tập hợp peer mạng Một server mơ hình Napster giúp đỡ peer để định vị file mà không chia sẻ file, nhiên supernode không phối hợp hoạt động peer mà thực hoạt động tương tự đóng góp tài nguyên peer thơng thường khác Hình 1-5 Mơ hình mạng hỗn hợp CHƯƠNG 2: CÁC PHƯƠNG PHÁP BACKUP DỮ LIỆU TRÊN MẠNG NGANG HÀNG CÓ CẤU TRÚC Trong chương mô tả hai phương pháp backup khác nhau, phương pháp successor list phân cụm tĩnh, sử dụng giao thức Chord Giao thức Chord giao thức sử dụng cho nghiên cứu, cải tiến luận văn thông qua việc mở rộng phân cụm động phân cụm tĩnh so với phương pháp Chord nguyên thủy (successor list) 2.1 CƠ CHẾ BACKUP THEO SUCCESSOR LIST Backup theo successor list phương pháp backup nguyên thủy mạng Chord Dựa bảng băm phân tán DHT, sử dụng mã xóa IDA (information dispersal algorithm) [9], nhằm phân tán lưu trữ khối với bảng băm DHT hàm băm cài đặt hệ thống phân tán Cũng hàm băm thông thường, DHT cung cấp ánh xạ từ key đến value Điểm khác DHT so với hàm băm thông thường value DHT lưu đến node khác mạng, lưu cấu trúc liệu cục Nhờ khả phân tán làm cho DHT trở nên mạnh mẽ, hiệu đáp ứng ứng dụng thực tế Các ứng dụng yêu cầu DHT trì tính sẵn sàng liệu gặp lỗi hiệu trường hợp xử lý khối liệu lớn Theo phương pháp mã xóa, bảng băm chia khối liệu (file liệu) làm f mảnh, với k mảnh khơi phục lại khối liệu Các mảnh liệu riêng biệt nhau, chứa thông tin độc lập Chẳng hạn, khối liệu chia làm 14 mảnh, với mảnh liệu khơi phục lại khối liệu 14 mảnh Để trì mảnh liệu ln đảm bảo khơi phục khối liệu ban đầu, DHT chuyển đổi mảnh node node tham gia rời mạng Đảm bảo tính sẵn sàng khối liệu Giống khả chịu lỗi nhiều hệ thống lưu trữ khác, bảng băm sử dụng mã xóa để làm tăng tính sẵn sàng với chi phí thấp Khi thêm khối liệu: put (k,b) [6] Khi ứng dụng muốn thêm khối liệu mới, gọi hàm băm put(k,b) thực sau: Void put (k,f) // đặt mảnh vào successor { Frags=IDAencode (f) Succs=lookup (k,14) For i (0…13) Send (succs[i].ipaddr, k, frags[i]) } Lấy khối liệu: get(k) Để lấy khối liệu, client phải định vị truy hồi dủ mảnh theo thuật tốn phân mảnh thơng tin IDA để lắp ghép lại thành khối liệu ban đầu Khi ứng dụng client gọi get(k) bảng băm client trước tiên khởi tạo việc tìm kiếm qua hàm lookup(k,7) để tìm danh sách node có khả lưu trữ mảnh khối liệu Kết tìm kiếm trả danh sách từ đến 14 node successor trực tiếp khóa k Sau get() chọn successor với độ trễ thấp để thiết lập đồng bộ, gửi node RPC (remote procedure call) để yêu cầu mảnh khóa k theo phương pháp đồng song song Với RPC thời gian cho phép (time out) bị lỗi, get() gửi mảnh yêu cầu RPC để kết nối lại với danh sách successor tìm thấy qua hàm lookup() mà chưa kết nối để thiết lập kết nối lại [6] Trong trường hợp gọi hàm lookup() kết trả successor chứa mảnh, get() hỏi successor tìm kiếm mở rộng thêm node khác để tạo lại khối liệu Nếu xây 10 dựng lại khối liệu sau trình trao đổi, tìm kiếm hệ thống, get() trả lại kết không thành công Một ứng dụng gọi hàm get(k) nhiều lần để lấy khóa cho sẵn Khi node tham gia rời hệ thống, mảnh cần phải chuyển đến successor node Nếu tỷ lệ tham gia, rời mạng node tăng cao dẫn đến mảnh liệu bị sai vị trí dẫn đến việc không lấy mảnh bị Để khắc phục việc này, bảng băm đưa chế trì mảnh liệu để phục hồi lại mảnh bị Duy trì mảnh liệu Trạng thái lý tưởng tồn đủ số mảnh khối liệu, nhiên node tham gia rời mạng liên tục dẫn tới bị lỗi số node làm cho mảnh bị bị đặt sai vị trí Để trì trạng thái lý tưởng, bảng băm sử dụng hai giao thức giao thức trì cục giao thức trì tồn cục Giao thức trì cục phục hồi số mảnh thiếu, giao thức tồn cục di chuyển mảnh đặt sai vị trí vào vào số node, khơi phục lại vị trí, ngồi có chức phục hồi mảnh bị mất, xóa mảnh liệu dư thừa hệ thống 2.2 PHÂN CỤM TĨNH TRONG MẠNG CHORD 2.2.1 Phương pháp tách cụm tĩnh Ý tưởng phương pháp chia mạng Chord thành số cụm với không gian ID cụm dựa vào bảng băm phân tán DHT, cụm lưu trữ cục thực trì liệu cụm, đảm bảo liệu sẵn sàng node tham gia rời mạng Trong cụm đưa số node có khả lưu trữ với dung lượng lớn để đảm bảo việc backup liệu cân tải node cụm 11 2.2.2 Phương pháp backup file Để trì tính sẵn sàng file liệu có vào node mạng, file mã hóa thành n mảnh sử dụng hình thức mã xóa [14], mảnh lưu số node mạng Đặc trưng mã xóa với k mảnh (k