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

Giải pháp cân bằng tải sử dụng cấu trúc thư mục cho mạng ngang hàng có cấu trúc luận văn ths công nghệ thông tin 60

39 347 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đ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 39
Dung lượng 12,38 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

3 THUAT NGU Based -DHT Dựa trên bảng băm phân tán Broadcast Một thông điệp truyên tới tất cả các trạm Chord Một giao thức dựa trên mang ngang hàng có câu trúc Client/Server Máy khách/

Trang 1

Hà Nội - 2010

Trang 2

MỤC LỤC - - con S9 9 Đi 9.9 I9 9 1 I0 00.00 00809000866 1 DANH MỤC THUẬT NGỮ -c- {s55 155 555555 55555 3

CHƯƠNG l1 - TỎNG QUAN VÉ MẠNG NGANG HÀNG -<° 8

11 Tổng quan về mạng ngang hàng -. s -s=-=5s=seseseseseseeersssrseenmre 8 1.1.1 Khái niệm vê mạng ngang hàng . «5-5555 S5 5S 31152 8

1.1.2 Uu diem cia mang ngang hang .escessessesesseeteseseseesesnesneeeeneenseneeneenss 9

1.1.3 Nhuogc diém cia mang ngang han cccccesssseesesssenseceeecceeeesesesessaees 9 1.2 Phan loai mang ngang hang cccccccscsssssscccscssssccscccssssssssssccsssssscssssssesesees 10 1.2.1 Phân loại theo mức độ tập trung Của các node mnạng - -««««s««: 10 1.2.2 Phân loại theo câu trúc liên kẾt << 22-313 eeees 12 1.3 Mạng ngang hàng có cấu trúc dựa trên DHT(Distributed Hash Table)

Hậ 9 9 9 69 9.6 6 9.6 8 9 0 8.0 0 6.0 9 96 8 09 09 610668019 06 0 9 6 6 0101068 0.9 008.010 06 60)9 9 06.01910688 01910 66.00010160 8/06 14 1.3.1 Giới thiệu DHIT, QGĂ G Ă S989 909 30 10 10 1 n0 kh 14 1.3.2 Mang vi 0H 16

A Mô hình mạng Chorởđ -e- se ceieeeierrrrrrrrrrrei 16

b Anh xa khoa vào một node trong COYdÏ .c c1 1111103111 1351134 18

C Tìm kiêm trong mạng Chordi -e« series 18

d Tham gia và ôn định Mang co aaa xà 19

"» NI — 25

2.3 Các giải pháp cân bằng tải 5s s<cseserersersereerxersresersrrsererssrsore 25

°“E Noi ái can n5 26

a Sur dung Log (N) Virtual SCrvers ccccccccccccccccccsecsseccseeceeesceeceesseceseeseeeseeeeseeeseeseees 26

b Phuong Phap Proportion .ccccccccccccccccceccceesevssncccececececeessscsusnsnnsacececeeseessssueesenags 27

Trang 3

c.Phương phap di chuyén Virtual Server (Transfer) c.ccccssesssssssessessstscssscevsessees 28 2.3.2 Hướng không sử dụng Server ảO 9g ng x4 32 Thuật toán cân bằng tải theO HgưÕïg, - - - - csEEEeEEESEeEsEersrersrersrersrerrree 32

2.3.3 (con 38 CHƯƠNG 3 - DE XUAT CAI TIEN THUAT TOAN CAN BANG TAI THEO )/00/9)/0 1" 39

4.2 Ảnh hưởng của số lượng các câu truy vấn tới các thuật toán cân băng tải 48 4.3 Ảnh hướng của câu truy vẫn dạng Zipf tới các thuật toán cân bằng tải .49 4.4 So sánh kết quả thực nghiệm của thuật toán Threshol Plus với các thuật toán ã CÓ: ocoo co 9 9.9.9 0.0 0000000904 0 00.0 50 0000000000000 0 00 0660900000000 04 96.06 50

4.5 KKẾ( luận 5% % 2% %9 90 909.090.0900 0909.0909 09090909 0909.91909099055 51 CHUONG 5 - KÉT LUẬN VÀ HƯỚNG PHÁT TRIỂN -.- 53 5.1 {in 53

5.2_ Hướng phát triỂn tiẾp theo <-< «<< se essessessseesseesseeeeeseeeseseeese 33

Trang 4

3

THUAT NGU

Based -DHT Dựa trên bảng băm phân tán

Broadcast Một thông điệp truyên tới tất cả các trạm Chord Một giao thức dựa trên mang ngang hàng

có câu trúc Client/Server Máy khách/ Máy chủ

DHT (Distributed Hash Table ) Bang bam phan tan

Directory Node Thu muc ; Dong vai tro lưu trữ các

thông tin tải của các node

Entry Một bản ghi trong bảng dùng để lưu thông

tin về các đặc tả tài nguyên tại mỗi node

Host Ports Node được truy cập với tân số cao

Node Thực thê có khả năng thực hiện một công

việc hữu ích nào đó và trao đôi kết quả với các thực thé khác qua mạng một cách trực

tiếp hoặc gián tiếp

P2P (Peer to Peer network) Mạng ngang hang

Partial query Truy vân từng phân

Predecessor(n) Node đứng liên sau n (Tính theo chiều kim

đồng hồ)

Successor(n) Node đứng liền trước n (Tính theo chiều

Trang 5

DANH MUC HINH VE

Hình 1 Mô hình mạng ngang hàng - 001301131113 11 1111111111111 111111 kh 8 Hình 2 Mô hình mạng ngang hàng thuần tuý - - + ++E£k£k£krkekrkrkrkred 11 Hình 3 Hệ thống mạng ngang hàng lai ghép eeeseesseseeesseecevecsvevsvevsvevsvevsvevaees 12 Hình 4 Tìm kiếm dữ liệu chia sẻ trong Gnutella - 5s s + E*Ek£k£s££zEe£zEexd 13 Hình 5 Một mạng Chord với 3 node 0, 1, 3 và các bảng Finger Table ứng với mỗi node N = 3 bit nén CO 3 €TIẨYY - T000 0000000003011911 91915 919 n0 eh 17

Hình ó6 Lưu giữ key trong mang Chord: node 0 lưu key 6, node 1 lưu key 1 va node 3

Hình 11.Khả năng các nút không cân băng - + x3 EEvcvrvcervveesed 25

Hình 12.Cân bằng tải sử dụng Log(N) Virtual SerVefS 5 cccccxcerererered 27 Hình 13 Tạo mới Về (a) và loại bỏ VS (b) HH HH ng ng và 28 Hình 14 Node nặng tải di chuyển VS sang node nhẹ tải (nếu chỉ có 1 VS mà vẫn

nặng tải thì sẽ chia làm 2 VS để di chuyỂn) ¿-¿-¿- ¿cà SESEE RE EErrrxree 29

Hình 15 Phương pháp Ône - fO - Ône - S0 0130013 113111111151 19 nếp 30 Hình 16 Phương pháp Ône - to - Many - 01k kh 31 Hình 17 (a) Node A chuyén tai cho node lang riéng B va (b) Chuyển định danh của node C vào giữa A và B Độ cao của mỗi hình tương ứng là biểu điễn tải của các node

Hình 18 Node A có tải vượt quá ngưỡng Node B có tải thấp hơn trong hai láng riềng của A Tải được chuyển từ Node A cho Node B 5s csxsecxeesevee 34 Hình 19 Node A có tải vượt quá ngưỡng Node B có tải thấp hơn trong 2 láng riềng của A Tải được chuyển cho node E - - - ssEESEEEEEEEEEEEEEEEEEEErErererererrrered 34 Hình 20 Node A có tải vượt quá ngưỡng, node E chuyên tải cho F, E di chuyển vị trí

đến giữa A và B để nhận tải + SE EE SE EE E99 3E 3E TT ch rà cư re rereở 35 Hình 21 Node A có tải vượt quá ngưỡng: Node G là nhẹ tải khi đi chuyển không

làm cho Successor(G) bị quá tải; di chuyển vị trí của G đến giữa A và B để G chịu tải

Hình 22 Các node nhẹ tải A và F hỏi successor của nó (các đường mũi tên nét liên)

và thông báo tình trạng tải cho thư mục 1 và thư mục 2 (các đường mũi tên nét đứt).42 Hình 23 Node A thực hiện cân bằng tải, node lang riéng B nhận tải hộ node A bằng

cách dịch chuyển định danh về phía A 2 s3 E9 3E E2EEEEeEEErErEcersrsrsed 43

Trang 6

5

Hình 24 Node A thực hiện cân băng tải, node A chia tai cho node lang giéng B bang cách dịch chuyển định danh của A về phía B - + +EE#E+EeEeErEcerxvsesed 43 Hình 25 Node A hỏi thư mục 1 để tìm một node nhẹ tải có thể dịch chuyển được (đường mũi tên nét liên) Định đanh của node nhẹ tải E được chuyên đến giữa

predecessor(A) và A để nhận tải hộ node A (đường mũi tên nét đứt) - 44 Hình 26 Thời gian sống trung bình của một node thay đổi, các câu truy vẫn thực hiện

với phân bố Zipf và UnifOrim - - sưng rvee 48

Hình 27 Số câu truy vấn đặt vào một node thay đổi, truy vấn được phân bố ở đạng V0 8906: 0 49

Hình 28 Truy vấn đặt vào các node ở dạng phân bố Zipf với tỷ lệ thay đôi 50

Hình 29 So sánh ThresholdPlus với Tranfer và Propotion . -<<<<<: 51

Trang 7

MO DAU

Một kiểu kiến trúc mạng mới với tên là mạng ngang hàng (Peer to Peer - P2P) đã phát triển nhanh chóng trên internet Trong đó hoạt động của mạng chủ yếu dựa vào khả năng tính toán và băng thông của các máy tham gia chứ không tập trung vào một số nhỏ các máy chủ trung tâm như các mạng thông thường

Sự phát triển nhanh chóng của mạng ngang hàng trong những năm gân đây thúc đây sự ra đời của nhiều ứng dụng mạng như các hệ thống chia sẻ file, tìm kiếm thông tin, tính toán lưới Mạng ngang hàng có cấu trúc ra đời đảm bảo cho tính hiệu quả cũng như khả năng mở rộng của các ứng dụng này Tuy nhiên, để đảm bảo chất lượng dịch vụ cho các ứng dụng xây dung trên mạng ngang hàng có cấu trúc cần phải giải quyết vấn đề cân bằng tải trong mạng ngang hàng có cấu trúc

Có hai hướng tiếp cận chính cho các thuật toán cân bằng tải đó là: hướng tiếp cận dựa trên server ảo (virtual server) và hướng tiếp cận không dựa trên server ảo Trong luận văn này tôi tập trung vào hướng tiếp cận không dựa trên server ảo và đưa ra một giải thuật cải tiến của giải thuật cân bằng tải theo ngưỡng Giải thuật của chúng tôi đưa ra cho phép các node quá tải tìm chính xác

và nhanh chóng một node phù hợp để thực hiện việc cân bằng tải Chúng tôi đã cài đặt và thử nghiệm thuật toán đề xuất trong điều kiện mạng gần với thực tế và thấy răng thuật toán của chúng tôi giải quyết tốt vẫn đề cân bằng tải của các node trong mạng

Nội dung luận văn gồm 5 chương cụ thê cho từng chương như sau:

Chương 1: Giới thiệu tổng quan về mạng ngang hàng, những khái niệm cơ bản về mạng ngang hàng đồng thời giới thiệu giao thức Chord, giao thức được

sử dụng để triển khai mạng phủ DHT khi xây dựng chương trình mô phỏng Chương 2: Tìm hiểu về vấn đề cân bằng tải trên mạng ngang hàng, một số nguyên nhân dẫn đến mắt cân băng tải, các giải pháp đã được dé xuất và phân tích về các giải pháp này

Chương 3: Trên cơ sở các vấn đề tìm hiểu được ở chương 2 Chúng tôi đề xuất giải pháp cân bằng trên mạng ngang hàng có cấu trúc theo hướng không sử

dụng server ảo Đó là một giải thuật cải tiến của giải thuật cân bang tai theo

ngưỡng.

Trang 8

7 Chương 4: Trình bảy cách thực hiện chương trình mô phỏng đồng thời trình bày kết quả đánh giá giải thuật cân bằng tải dựa trên mô phỏng của chúng tôI

Chương 5: Trình bày các công việc mà chúng tôi đã thực hiện được,

những vấn đề còn tổn tại của luận văn và hướng phát triển tiếp theo của chúng

Ae

tol.

Trang 9

CHUONG 1 - TONG QUAN VE MANG NGANG HANG

Trong chương này, luận văn sẽ giới thiệu khái quát vê mạng ngang hàng, các đặc điềm, các hình thức phần loại của mạng ngang hàng, khái niệm vê DHT

và mạng hàng có cấu trúc đồng thời giới thiệu về một số mạng ngang hàng đã và đang được ứng dụng có hiệu quả

1.1 Tổng quan về mạng ngang hàng

1.1.1 Khái niệm về mạng ngang hàng

Mạng ngang hàng là một mạng mà kiến trúc của nó được tạo nên bởi các máy tính liên kết với nhau, các máy tính tham gia trong mạng đều bình đẳng như nhau và được gọi là các peer, mỗi máy tính tham gia mạng là một phần và duy trì sự tồn tại của mạng Các máy tính trong mạng thường xuyên liên lạc với các

máy tính khác để ôn định mạng và chia sẻ đữ liệu với nhau Dữ liệu được chứa

trên các máy tính và được chia sẻ trực tiếp với nhau giữa các máy tính tham gia vào mạng

Hình 1 Mô hình mạng ngang hàng

Ứng dụng thường xuyên gặp nhất của mạng ngang hàng là chia sẻ tệp tin,

tất cả các dạng như: âm thanh, hình ảnh, dữ liệu hoặc để truyền dữ liệu thời

gian thực Việc sử dụng mạng ngang hàng mang lại nhiều ưu điểm cho người dùng Luận văn xmm trình bày một sô ưu điêm của mạng ngang hàng

Trang 10

1.1.2 Ưu điểm của mạng ngang hàng

Mục đích quan trọng của mạng ngang hàng là các máy tính tham gia mạng đều đóng góp tài nguyên bao gồm băng thông, lưu trữ, khả năng tính toán Do

đó khi càng nhiêu mày tính tham gia mạng thì khả năng tông thể của mạng càng lớn Do việc các thông tin lưu trữ không chỉ trên máy chủ mà còn được lưu trữ ở chính các máy tham gia mạng nên mô hình này rất phù hợp với tính phi tập trung của Internet

Xét về khía cạnh sức mạnh xử lý, mạng ngang hàng có khả năng xử lý cao hơn cả những máy chủ lớn hiện nay, do đó sử dụng mạng ngang hàng có thể cải thiện đáng kế hiệu quả của các phương pháp phân tích, xử lý dữ liệu và giải các bài toán phức tạp Sở dĩ làm được như vậy là vì mạng ngang hàng có thê tận dụng được khả năng xử lý, khả năng lưu trữ còn thừa của các máy tham gia mạng với những thuật toán phân tán hợp lý Công nghệ này đã chia việc xử lý lớn ra thành nhiều việc xử lý để có thể giao cho các máy tính khác trong mạng cùng thực hiện Mỗi máy tính sẽ xử lý một phần công việc và trả về kết quả xử

lý cho máy tính trung tâm, máy tính trung tâm sẽ ghép nối các kết quả này lại với nhau Bằng cách như vậy, ta có thê giải quyết các bài toán phức tạp yêu cầu vẫn đề xử lý, lưu trữ lớn mà không cần phải nâng cấp khả năng xử lý của hệ

thống hiện tại

Tính chất phân tán của mạng ngang hàng cũng giúp cho việc phân tán

trách nhiệm cung cấp dịch vụ đến tất cả các node trên mạng, nó sẽ loại bỏ được

van đề ngừng trệ dịch vụ do nơi cung cấp duy nhất gặp sự cố Đối với mô hình tập trung, chỉ cần máy chủ gặp sự cố thì cả hệ thống sẽ ngưng trệ Còn đối với mạng ngang hàng, máy tính có thể tham gia hoặc rời khỏi mạng bất kỳ lúc nào

mà mạng vẫn hoạt động bình thường, các máy tính còn lại vẫn có th trao đôi

thông tin và chia sẻ tài nguyên cho nhau

Bên cạnh nhiều ưu điểm đã được nêu ở trên thì mạng ngang hàng cũng

còn tồn tại một số nhược điểm

1.1.3 Nhược điểm của mạng ngang hàng

Do các máy tính trên mạng ngang hàng đều có vai trò như nhau và không tuân theo bất cứ một quy luật định tuyến hay kết nối nào, việc yêu cầu dịch vụ được đáp ứng tuy biên nên máy yêu câu dịch vụ có thê nhận được nhiêu kêt quả

Trang 11

khác nhau, khi nó kết nối đến nhiều máy tính khác nhau cùng cung cấp một dich

1.2 Phân loại mạng ngang hàng

Mạng ngang hàng có nhiều tiêu trí phân loại khác nhau, trong luận văn này xIm được trình bày hai tiêu trí phân loại mạng ngang hàng đó là: Phân loại theo mức độ tập trung của các node mạng và phân loại theo cấu trúc liên kết của các node

1.2.1 Phần loại theo mức độ tập trung của các node mạng

Nếu lấy tiêu chí về mức độ tập trung của các node mạng, mạng ngang hàng có thê phân làm 2 loại: mạng ngang hàng thuần tuý và mạng ngang hang lai

a Mạng ngang hàng thuận tuý

Trong mạng ngang hàng thuần tuý thì vai trò của các máy trong mạng là ngang nhau và trong mô hình mạng này đã loại bỏ sự tồn tại của các máy chủ tập trung Trong mạng này đã khắc phục được vấn đề node nghẽn cô chai trong

mô hình tập trung Tuy nhiên vấn đề tìm kiếm trong mạng ngang hàng thuần tuý

sử dụng cơ chế phát tràn (Flooding), yêu cầu tìm kiếm được gửi tới tất cả các node mạng là láng giềng với nó, điều này làm tăng đáng kế lưu lượng trong mạng

Trang 12

Hình 2 Mô hình mạng ngang hang thuan tuy

b Mạng ngang hàng lai ghép

Trong mô hình này, các peer lưu giữ nội dung chia sẻ với các node khác ở trên mang Tat cả các peer đều kết nối tới một server, server này lưu giữ thông tin về:

-_ Bảng thông tin kết nối của người dùng đăng kí (địa chỉ IP, băng thông

kết nỗi )

-_ Bảng liệt kê danh sách các file mà các peer năm giữ và chia sẻ ở trên mang cùng với các thông tin mô tả về các files ( tên file, ngày tạo ) Tât cả các peer muôn kêt nôi vào mạng đêu phải liên lạc với server và thông báo với server các file mà nó có

Một peer mà muôn tìm kiêm một file, yêu câu tìm kiêm được chuyên cho

server, server tìm kiêm trong thông tin chỉ mục của mình và trả lại danh sách các

peer có thông tin cân tìm Peer tìm kiêm sẽ liên lạc trực tiếp với các peer có thông tin theo yêu cầu tìm kiếm để tải thông tin trực tiếp từ các peer này

Trang 13

Nie oP

“Đau,

Hình 3 Hệ thống mạng ngang hàng lai ghép

1.2.2 Phân loại theo câu trúc liên kết

Mạng phủ bao gồm tất cả các node mạng đại điện cho các máy tham gia và các liên kết giữa các node mạng này Một liên kết tôn tại giữa hai node mạng khi

một node mạng biết vị trí của node mạng kia Dựa vào cấu trúc liên kết trong

mạng phủ người ta có thể phân loại mạng ngang hàng thành hai loại: mạng ngang hàng không có cấu trúc và mạng ngang hàng có cấu trúc

a Mạng ngang hàng không có cầu trúc

Một mạng ngang hàng được gọi là mạng ngang hàng không có cấu trúc khi liên kết giữa các node trong mạng phủ được thiết lập ngẫu nhiên (tức là không theo một quy luật nào cả) Những mạng như vậy dễ dàng xây dựng vì khi một node muốn tham gia mạng có thê lẫy liên kết có sẵn của một node khác đang ở trong mạng và sau đó dan dan tự bản thân nó sẽ thêm vào các liên kết mới của riêng mình

Trong mạng ngang hàng không có cấu trúc, khi một node muốn tìm kiếm một dữ liệu, thì yêu cầu tìm kiếm sẽ truyền trên toàn bộ mạng để tìm ra càng

nhiều máy tính chia sẻ càng tốt Hệ thống này thê hiện rõ nhược điểm là không

có gì đảm bảo là việc tìm kiến thành công Đối với đữ liệu phố biến được chia sẻ trên nhiều máy thì tỉ lệ thành công là khá cao, ngược lại nếu đữ liệu chỉ được

Trang 14

13 chia sé trong một vải máy thì xác suất tìm thấy là rất nhỏ Tính chất này là hiển nhiên trong mạng ngang hàng không có cấu trúc vì không có bất kỳ mối tương quan nào giữa một máy và dữ liệu của nó quản lý trong mạng, do vậy yêu cầu tìm kiếm được chuyển một cách ngẫu nhiên đến một số máy trong mạng Số máy trong mạng càng lớn thì khả năng tìm thấy thông tin càng nhỏ Do khi muốn tìm kiếm trên mạng ngang hàng không có cấu trúc, yêu cầu tìm kiếm được phát trên toàn mạng nên không có cấu trúc định hướng, một yêu cầu thường chuyên cho số lượng lớn các máy tính trong mạng làm tiêu tốn băng thông, dẫn

đến hiệu quả tìm kiếm thấp

Một mô hình mạng ngang hàng không cấu trúc điển hình đó là mạng Gnutella Các máy tính trong Gnutella được mô tả như là những “servent”, các thành viên trong mạng và được chia sẻ file Các máy tính khác có thê lẫy được những file chia sẻ này Việc tìm kiếm file trên mạng mô tả trong hình 4, khi một máy tính A tìm kiếm file X, nó sẽ gửi một truy vẫn broadcast tới tất cả các máy tính nó biết, được coi là hàng xóm của nó Truy vấn sau đó sẽ được chuyên dan qua các bước và tới được máy tính có chứa file X Gnutella có mã nguồn mở và

có giao thức mô tả rõ ràng trên mạng Internet, bất cứ ai quan tâm cũng có thế tìm hiểu và phát triển để tạo ra một mạng ngang hàng của riêng mình với các

Source A Hình 4 Tìm kiếm dữ liệu chỉa sẻ trong Gnutella

Trang 15

b Mạng ngang hàng có cầu trúc

Mạng ngang hàng có cấu trúc khắc phục nhược điểm của mạng không cấu trúc băng cách sử dụng hệ thống Bảng Băm Phân Tán (DHT: Distributed Hash Table) Hệ thống này định nghĩa liên kết giữa các nút mạng trong mạng phủ theo một thuật toán cụ thê, đồng thời xác định chặt chẽ mỗi nút mạng sẽ chịu trách nhiệm đối với một phần đữ liệu chia sẻ trong mạng Với cầu trúc này, khi một

máy cần tìm một dữ liệu, nó chỉ cần áp dụng một giao thức chung để xác định

nút mạng nào chịu trách nhiệm cho đữ liệu đó và sau đó liên lạc trực tiếp đến nút mạng đó để lẫy kết quả Việc tìm kiếm thông tin trên mạng ngang hàng có cầu trúc cũng nhanh hơn so với mạng ngang hàng không có cấu trúc Nếu như mạng ngang hàng không có cấu trúc các máy tính gửi thông điểm broadcast đề tìm kiếm thông tin thì trong mạng ngang hàng có cẫu trúc một máy tính chỉ cần gửi thông điệp tìm kiếm qua một số máy tính Giao thức tìm kiếm chung trong mạng sẽ đảm bảo thông tin sẽ được tìm thấy Một số mạng ngang hàng có cau

trúc nổi tiếng như: Chord, CAN, Kademlia, pastry trong đó Chord và CAN

được mô tả chỉ tiết, đã được mô phỏng và cho kết quả qua các bài báo Trong phân tiếp theo luận văn xin trình bày chỉ tiết về giao thức mạng Chord

1.3 Mạng ngang hàng có cấu trúc dựa trên DHT(Distributed Hash Table)

1.3.1 Giới thiệu DHT

Các nghiên cứu về DHT được bắt nguồn cùng với sự phát triển của các hệ thống P2P như Napster, Gnutella, và Freenet, những hệ thống này sử dụng lợi thế của các tài nguyên phân tán trên mạng Internet để cung cấp một ứng dụng đơn hữu dụng Cụ thể, chúng đã sử dụng lợi thế tăng băng thông và sức chứa của ô cứng còn nhàn rối của các Peer đê cung câp dịch vu chia sé file

Những hệ thống này khác nhau ở cách thức thực hiện việc tìm kiếm dữ liệu

mà các peer quản lý Napster sử dụng một server trung tâm: mỗi node khi tham gia vào mạng sẽ gửi một danh sách các file được lưu trữ ở máy lên cho server, server sẽ xử lý các truy vấn, tìm các file trong danh sách, rồi gửi đường dẫn tới node chứa các file cần tìm Thành phần trung tâm này tạo ra một điểm yếu trong

hệ thống vì có thể bị tấn công hoặc có thể bị kiện cáo về bản quyén Gnutella va những mạng tương tự chuyên sang sử dụng mô hình phát tràn các thông điệp truy vấn (flooding query model), mỗi truy vẫn được đưa ra tương ứng với việc

một thông điệp được broadcast tới tất cả các node có trong mạng Vì vậy, mặc

Trang 16

15

đủ tránh được điểm yếu của thành phần trung tâm như trên, thì phương pháp này

lại kém hiệu quả hơn so với Napster Cuối cùng Freenet thực sự là phân tán, nó

sử dụng cơ chế routing dựa trên khóa, mỗi file được gán một khóa, các khóa gan giống nhau sẽ cùng được lưu ở một tập các node Các truy vấn sẽ được định tuyến đi trong mạng mà không phải ghé thăm tất cả các node có trên mạng Tuy nhiên, Freenet không đảm bảo đữ liệu sẽ được tìm thấy

DHT su dung co ché dinh tuyén dựa trên khóa trên một kiến trúc mạng chặt chẽ hơn để có thể đạt được cả tính phân tán về tài nguyên của Gnutella và Freenet, tính hiệu quả về truy vẫn của Napster Có một hạn chế là DHT chỉ hỗ

trợ tìm kiếm chính xác chứ không hỗ trợ tìm kiếm theo từ khóa, hay tìm kiếm

theo khoảng, tuy nhiên các chức năng này có thể triển khai mở rộng trên nền DHT

Distributed hash tables (DHTs) 1a hé théng mang phân tán, cung cấp các dich vu tim kiém dua vao bảng băm Bảng băm là một cặp ( tên, giá trị) Mỗi một node khi tham gia vào mạng có thể dễ dàng tìm thấy giá trị mong muốn dựa vào tên của giá trị đó Việc hình thành tên (khóa) và gắn các khóa đó với giá trị tương ứng được thực hiện trực tiếp tại các node trong mạng, chính vì vậy khả năng sập mạng được giảm tối thiểu khi các node tham gia hoặc dời bỏ mạng Chính lý do này khiến khả năng mở rộng của mạng DHT là cực lớn, quá trình kiêm soát việc tham gia, dời bỏ mạng của các node cũng trở nên dê dàng hơn Với cầu trúc vững mạnh, DHT được sử dụng để xây dựng nhiều ứng dụng phức tạp như: Hệ thống các file phân tán, hệ thống chia sẻ file ngang hàng, hệ thống nội dung phân tán, tin nhắn tức thời, Multicast Các mạng DHT nổi tiếng thường được nhắc đến 1a: Bittorrent, eDonkey network, Yacy

Một số mạng based - DHT đầu tiên như CAN, Chord được giới thiệu cùng thời gian năm 2001 Từ đó lĩnh vực nghiên cứu này trở lên khả sôi động Công nghệ DHT đã được sử dụng như một thành phần của BitTorrent

DHT nhân mạnh vào các thuộc tính sau:

e_ Không tập trung (Decentralization): Cac node tham gia câu thành

hệ thông không có thành phần trung tâm làm điều phối mạng

e_ Khả năng mở rộng: Hệ thống vẫn có thê hoạt động hiệu quả với

hàng nghìn hoặc hàng triệu node

Trang 17

e Kha nang chiju loi: Hé thong van có thê làm việc ôn định ngay cả

khi có các sự kiện node tham gia, rời bỏ, lỗi diễn ra liên tục

Kỹ thuật khóa được sử dụng dé dat duoc mục đích là mỗi node chỉ cần liên

kết với một số ít các node khác trong hệ thống, thường là O(logn) với n là số node tham gia Vì vậy sự thay đổi trong các thành viên chỉ ảnh hưởng đến một phân nhỏ của hệ thống

Một số thiết kế DHT tìm đến tính bảo mật chống lại những người tham gia

ác tâm và cho phép người tham gia giấu danh tính, mặc dù điều này không phô biến trong các hệ thống P2P chia sẻ file

Cuối cùng, DHT phải giải quyết những vấn đề cơ bản của các hệ thống phân tán đó là cân bằng tải, tính toàn vẹn đữ liệu, hiệu năng (cụ thé la dam bảo

các hoạt động như định tuyến, lưu trữ, truy vẫn phải được thực thi nhanh chóng)

1.3.2 Mạng chord

Theo một đánh giá tổng hợp về các thuật toán định tuyến dựa trên DHT trong các kiến trúc mạng khác nhau như hình tròn (ring, với giao thức Chord), hình cây (tree), hình hộp (hypercube, với giao thức CAN), .xét về sự linh hoạt trong việc định tuyến, khả năng phục hồi trạng thái cũng như khả năng chịu lỗi, kiến trúc Ring đều được đánh giá cao Vì vậy, kiến trúc Chord[1] thường hay

được sử dụng như là mạng phủ để thực hiện các cài đặt cải tiến việc các ứng

dụng, xử lý trên P2P có cấu trúc

a M6 hinh mang Chord

Chord[1] được mô tả dưới dạng một vòng tròn và không gian định danh

phân bồ đều trên vòng tròn tăng dần theo chiều kim đồng hồ Nếu gọi N là số bit định danh của không gian thì mạng Chord có thể chứa tối đa 2Ì node Mỗi node trên Chord có một định danh iđ và duy trì liên kết 2 chiều với node đứng liền trước và liền sau nó theo chiều kim đồng hồ tạo thành một mạch liên kết vòng

Node liền trước được goi la Successor(id), va node liền sau được gọi là

Predecessor(id) Thêm vào đó, một node sẽ lưu một bảng định tuyến gọi là Finger Table, cho phép node đó định tuyến tới các node ở xa Mỗi dòng trong bảng Finger Table sẽ lưu thông tin về 1 node ở xa, gọi là 1 entry Không gian

định đanh có bao nhiêu bít thì Finger Table có bấy nhiêu entry.

Trang 18

17

finger table keys start| int |succ | 6 |

1 |[1.⁄2)| 1

2 | (2,4)| 3

4 | [4,0)| 0

finger table keys

Start] int |succ | 1 |

Tir bang Finger Table 6 trén ta co thé thay rang:

Trang 19

+ Mỗi node chỉ cần lưu trữ thông tin của một số node nhất định trong bảng định tuyến của mình

+ Node biết thông tin về các node gần nó nhiều hơn là các node ở xa

+ Băng cách sử dụng bảng Einger Table một node n có thể xác định được

vị trí của bất kỳ khóa nào trên mạng

b Anh xạ khóa vào một node trong Chord

Chord[ 1 | ánh xạ các khóa vào các node, thường sẽ là một cặp key và value

Một value co thé la 1 address, 1 vin ban, hodc 1 mục đữ liệu Chord có thể thực

hiện chức năng này bằng cách lưu các cặp key/value ở các node mà key được ánh xạ Một node sẽ chịu trách nhiệm lưu giữ một khóa k nếu node đó là node

có định danh ¡d nhỏ nhất va id lon hơn k Một node khi lưu giữ khóa k cũng sẽ được gọi là Successor của k, ký hiệu là Successor(k)

Fal 7 i@ successor(1) = 1

successor(6) =0

Hình 6 Lưu giữ key trong mạng Chord: node 0 lưu key 6, node 1 lưu key 1 và

node 3 lưu key 2

c Tim kiém trong mang Chord

Khi một node n cần tìm kiếm một khóa có định danh id, node n sé tim node

chịu trách nhiệm lưu g1ữ 1d đó Nếu node n ở xa so với vị trí của node lưu giữ 1d,

n có thể nhờ vào thông tin trong bảng Finger Table để định tuyến đến các node

xa hơn, từ đó dân dần tìm ra node chịu trách nhiệm lưu giữ ¡d

Ngày đăng: 19/12/2015, 00:46

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm