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

Bảng băm phân tán và định tuyến trên mạng ngang hàng

13 328 0

Đ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 13
Dung lượng 154,28 KB

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

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN Ngô Văn Chí BẢNG BĂM PHÂN TÁN VÀ ĐỊNH TUYẾN TRÊN MẠNG NGANG HÀNG LUẬN VĂN THẠC SĨ KHOA HỌC Chuyên ngành: Cơ sở toán học cho tin h

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN

Ngô Văn Chí

BẢNG BĂM PHÂN TÁN

VÀ ĐỊNH TUYẾN TRÊN MẠNG NGANG HÀNG

LUẬN VĂN THẠC SĨ KHOA HỌC

Chuyên ngành: Cơ sở toán học cho tin học

Mã số ngành: 60 46 01 10

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Lê Trọng Vĩnh

Trang 2

Mục lục

1.1 Giới thiệu về mạng ngang hàng 4

1.2 Sự tiến hóa của cấu trúc mạng 5

1.2.1 Kiến trúc khách–chủ 5

1.2.2 Kiến trúc lưới 6

1.2.3 Kiến trúc ngang hàng 6

1.3 Phân loại 7

1.4 Tìm kiếm trên mạng ngang hàng 9

1.5 Ưu và nhược điểm của mạng ngang hàng 11

1.5.1 Ưu điểm 11

1.5.2 Nhược điểm 12

1.6 Một số vấn đề trong mạng ngang hàng 13

1.7 Một số phương pháp định tuyến trên P2P 16

1.7.1 Mạng tập trung hoặc được cấu hình tĩnh 17

1.7.2 Mạng ngang hàng trên mạng chồng lấn 18

Trang 3

2 Bảng băm phân tán 21

2.1 Bảng băm 21

2.1.1 Bảng địa chỉ trực tiếp 21

2.1.2 Bảng băm 22

2.2 Băm ổn định 28

2.2.1 Ví dụ 28

2.2.2 Định nghĩa 31

2.2.3 Xây dựng 32

2.2.4 Các tính chất 33

2.3 Bảng băm phân tán 35

2.3.1 Định nghĩa 36

2.3.2 Ví dụ 37

2.3.3 Tính chất của DHT 38

2.3.4 Cấu trúc của DHT 40

2.3.5 Các cơ chế của DHT 40

2.3.6 Các giao diện DHT 42

2.3.7 Nhận xét 44

3 Định tuyến trên mạng ngang hàng 45 3.1 Định tuyến trên P2P có sử dụng DHT 45

3.2 Thuật toán CAN và Chord 46

3.2.1 Thuật toán CAN 46

3.2.2 Thuật toán Chord 52

3.2.3 So sánh khả năng định tuyến giữa thuật toán CAN và Chord 58

Trang 4

Danh sách hình vẽ

1.1 Kiến trúc khách – chủ 5

1.2 Mô hình máy chủ trung tâm 17

1.3 Phương pháp làm ngập trên mạng chồng lấn 19

1.4 Mô hình mạng siêu ngang hàng 19

2.1 Bảng địa chỉ trực tiếp 22

2.2 Bảng băm 24

2.3 Một ví dụ về phương pháp bảng băm mở 25

2.4 Một ví dụ về phương pháp thử tuyến tính 26

2.5 Một ví dụ về hệ thống phân phối thông qua các máy chủ cache 29 2.6 Hệ thống phân phối thông qua các máy chủ cache với một nút lỗi 30 2.7 Khoảng đơn vị 31

2.8 Một DHT đơn giản 37

2.9 Tra cứu khóa 38

3.1 Mạng CAN 2–chiều với 6 nút Mỗi nút được gán cho một zone và các nút được phân biệt bởi biên của mỗi zone tương ứng 47

3.2 Định tuyến đến nút có khoá k(x, y) trong không gian 2–chiều 48

3.3 Nút mới N7 đến zone của N1 N1 tự chia thành hai phần một phần gán cho N7 Cập nhật tập hàng xóm của N1:{N7, N2, N6, N5} 50

3.4 Không gian khóa của Chord 53

Trang 5

3.5 Bảng finger trong các nút mạng 54 3.6 Kết quả thực nghiệm mô phỏng 61

Trang 6

Danh sách bảng

3.1 Quan hệ giữa số lượng nút mạng và thời gian định tuyến trung bình 60

Trang 7

Lời mở đầu

Mạng máy tính từ lâu đã trở thành một phần không thể thiếu trong nhiều lĩnh vực của đời sống xã hội từ các hệ thống mạng cục bộ dùng để chia sẻ tài nguyên trong các công ty, cơ quan, đơn vị, cho đến hệ thống mạng toàn cầu như mạng Internet

Kiến trúc của các hệ thống mạng ngày càng được cải tiến và phát triển Trong đó, kiến trúc của mạng ngang hàng với nhiều đặc tính tốt như khả năng

mở rộng cao, khả năng chịu lỗi tốt, hiệu năng cao, thu hút được sự chú ý của người sử dụng, các nhà nghiên cứu cũng như các đơn vị phát triển ứng dụng Tất cả những ưu điểm trên đã tạo lên một cuộc cách mạng trong lĩnh vực mạng truyền thông Rất nhiều ứng dụng lớn đã và đang được xây dựng trên mạng ngang hàng như FreeNet, Napster, BitTorent, Bên cạnh những ưu điểm trên, mạng ngang hàng cũng gặp phải một vài hạn chế như vấn đề định tuyến, vấn đề

về bảo mật, về khả năng cân bằng tải, Trong đó, việc định tuyến trên mạng ngang hàng là một bài toán quan trọng và phức tạp Nó vẫn đang được các nhà khoa học trong và ngoài nước đi sâu vào nghiên cứu

Có rất nhiều phương pháp được thiết kế để phục vụ cho việc định tuyến trên mạng ngang hàng, trong số đó phải kể đến các phương pháp như: sử dụng máy chủ trung tâm, cơ chế làm ngập (flooding), cấu trúc mạng siêu ngang hàng, định tuyến theo ngữ nghĩa, các phương pháp này đều tồn tại những hạn chế nhất định Phương pháp định tuyến trong mạng ngang hàng áp dụng ý tưởng của bảng băm phân tán [19] mang lại những kết quả tốt hơn và đồng thời khắc phục

Trang 8

được các nhược điểm mà phương pháp định tuyến đã nêu trên gặp phải Vì vậy, luận văn này tập trung nghiên cứu về bảng băm phân tán và ứng dụng nó trong việc định tuyến trên các mạng ngang hàng

Cấu trúc luận văn gồm có 03 chương Nội dung của các chương được tóm tắt như sau:

Chương 1: Tổng quan về mạng ngang hàng

Trong chương này, luận văn trình bày những kiến thức tổng quan về kiến trúc mạng, mạng ngang hàng, phân loại mạng ngang hàng và những thách thức đặt ra với mạng ngang hàng Cuối chương là phân tích về những hạn chế của các phương pháp định tuyến đã được xây dựng và chỉ ra phương pháp thay thế tốt hơn

Chương 2: Bảng băm phân tán

Trong chương này, luận văn sẽ trình bày phương pháp phân bố tài nguyên sao cho các thao các như thêm, xóa, sửa và tra cứu chỉ thực hiện trong thời gian O(1) Phương pháp được nhắc đến ở đây chính là bảng băm, bảng băm gồm ba phần là tập dữ liệu S, hàm băm h và bảng băm T Các phần tử e i ∈ S sử dụng hàm băm h để xác định vị trí của nó trong T Trong một số môi trường, như môi trường mạng, bảng băm T không phải lúc nào cũng ổn định vì vậy trong [16] các tác giả đã xây dựng một phương pháp mới được gọi là băm ổn định Phương pháp này khắc phục được tình trạng không ổn định của bảng băm T Với các đặc tính tốt của băm ổn định, người ta đã áp dụng nó vào việc tra cứu

dữ liệu trong các hệ thống phân tán và gọi nó là bảng băm phân tán Phương pháp này không những tỏ ra hiệu quả mà còn mang lại nhiều tính năng tốt Trong nội dung này, luận văn đi phân tích các cấu trúc, tính chất của bảng băm phân tán và áp dụng nó vào trong thủ tục định tuyến trên mạng ngang hàng được gọi thiệu ở Chương 3

Chương 3: Định tuyến trên mạng ngang hàng

Trong chương cuối này, luận văn trình bày bài toán định tuyến trên mạng

Trang 9

ngang hàng có áp dụng ý tưởng của bảng băm phân tán Sau đó, luận văn đi phân tích chi tiết hai thuật toán định tuyến tiêu biểu là thuật toán CAN và thuật toán Chord Cuối cùng là các phân tích và so sánh những kết quả thực nghiệm đạt được, qua đó rút ra những kết luận và định hướng cho những nghiên cứu tiếp theo

Trang 10

Chương 1

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

1.1 Giới thiệu về mạng ngang hàng

Mạng ngang hàng (Peer–to–Peer network, P2P network ) là một loại hệ thống phân tán phi tập trung trong đó các nút mạng (được gọi là các peer ) đóng vai trò vừa máy chủ vừa là máy khách trong mô hình khách–chủ Nghĩa là, các peer

có thể yêu cầu tài nguyên từ các peer khác và cũng có thể trả lời các yêu cầu tại cùng một thời điểm Điều này trái ngược với mô hình khách–chủ truyền thống,

mà ở đó chỉ có máy khách gửi yêu cầu đến một (hoặc một vài) máy chủ và (các) máy chủ sẽ trả lời các yêu cầu đó

Với cách tiếp cận theo mô hình khách–chủ, hiệu năng của toàn bộ hệ thống

sẽ giảm xuống khi số lượng các máy khách (có yêu cầu các dịch vụ) tăng lên Trong khi đó, đối với mạng ngang hàng, hiệu năng trong toàn mạng càng tăng lên khi số lượng các máy (peer ) được thêm vào mạng càng nhiều Các peer có thể tự tổ chức thành các nhóm, trong các nhóm đó chúng giao tiếp, cộng tác và chia sẻ băng thông với nhau giúp nhau hoàn thành các công việc mong muốn

Ví dụ, trong hệ thống chia sẻ tệp tin ngang hàng, mỗi peer có thể tải lên và tải xuống các tệp tin cùng một lúc và trong các tiến trình như vậy, các peer mới có thể tham gia vào nhóm và các peer cũ có thể rời đi bất cứ lúc nào Việc tổ chức nhóm các peer này được thực hiện một cách tự động và trong suốt với người

Trang 11

Tài liệu tham khảo

[1] Nguyễn Đình Hóa, Cấu trúc dữ liệu và giải thuật, NXB ĐH Quốc gia Hà Nội

[2] Aberer, K., Datta, A., Hauswirth, M.: Efficient, self-contained handling of identity in peer–to–peer systems IEEE Transactions on Knowledge and Data Engineering 16(7), 858–869 (2004).DOI 10.1109/TKDE.2004.1318567

[3] Bryan, D., Jennings, C.: A p2p approach to sip registration and resource location 2005

[4] Chavan G T., Mahajan M A Load Balancing in P2P networks using DHT based systems and Ant based systems: A Comparison Sinhgad College of Engineering, Pune

[5] Cormen Thomas H., Leiserson Charles E., Rivest Ronald L., Stein Clifford Introduction to Algorithms MIT Press and McGraw–Hill, 2001 pp 221–252 [6] Emmanuel S., Tim C., Colm R., Rob M Peer to Peer Routing, http://ntrg.cs.tcd.ie/undergrad/4ba2.05/group6/

[7] G Greg Plaxton, Rajmohan Rajaraman, Andréa W Richa A Accessing nearby copies of replicated objects in a distributed environment s.l :Pro-ceeding ACM SPAA (Newport, Rhode Island, 06/1997)

[8] Groove networks http://www.groove.net/ (2004)

Trang 12

[9] Hari Balakrishnan, M Frans Kaashoek, David Karger, Robert Morris, Ion Stoica Looking up data in P2P systems s.l : MIT Laboratory for Computer Science

[10] Horozov, T., Grama, A., Vasudevan, V., Landis, S.: Moby-a mobile peer– to–peer service and data network In: International Conference on Parallel Processing, Proceedings, pp 437–444 (2002)

[11] Hu, Y., Das, S., Pucha, H.: Peer–to–peer overlay abstractions in manets In:

J Wu (ed.) Theoretical and Algorithmic Aspects of Sensor, Ad Hoc Wireless and Peer–to–Peer Networks, pp 845–864 Auerbach Publications (2005) [12] Ion Stoica, Robert Morris, David Liben–Nowell, David R Karger, M Frans Kaashoek, Frank Dabek, Hari Balakrishnan Chord: A Scalable Peer–to– peer Lookup Protocol for Internet Applications s.l : ACM SIGCOMM (San Diego, Aug 2001)

[13] Iterbeke, Frédéric, Melis, Stijn and Bart De Vleeschauwe, Tim Wauters, Filip De Turck, Bart Dhoedt, Piet Demeester An open peer-to-peer based platform for scalable multimedia communication s.l : Ghent University – IBBT – IMEC, Department of Information Technology Gaston Crommenlaan

8 bus 201, 9050 Gent, Belgium

[14] Jelasity, M., Kermarrec, A.M.: Ordered slicing of very large-scale overlay networks In: Proc Sixth IEEE International Conference on Peer-to-Peer Computing P2P 2006, pp 117–124 (2006) DOI 10.1109/P2P.2006.25 23 Kawulok, L., Zielinski, K., Jaeschke,

[15] Knuth, Donald The Art of Computer Programming Addison–Wesley, 1998

pp 513–558

[16] Karger D., Lehman E., Leighton T., Panigrahy R., Levine M., Lewin D Consistent hashing and random trees Proceedings of the twenty-ninth

Trang 13

an-nual ACM symposium on Theory of computing (ACM Press New York, NY, USA): 654–663 doi:10.1145/258533.258660

[17] Karger, D., Web caching with consistent hashing

[18] Kirsten Hildrum, John D Kubiatowicz, Satish Rao, Ben Y Zhao Dis-tributed Object Location in a Dynamic Network s.l : Proceeding 14th an-nual ACM symposium on Parallel algorithms and architectures (08/2012) [19] Klaus Wehrle, Stefan G¨otz, Simon Rieche, Peer–to–peer systems and appli-cations s.l : University of T¨ubingen

[20] Litwin, Witold Linear hashing: A new tool for file and table addressing Proc 6th Conference on Very Large Databases: 212–223, 1980

[21] Mehlhorn, Kurt; Sanders, Pete “Hash Tables and Associative Arrays”, Al-gorithms and Data Structures The Basic Toolbox, Springer, pp 81–98 [22] Pourebrahimi B., Bertels K., Vassiliadis S A Survey of Peer-to-Peer Net-works Computer Engineering Laboratory, ITS, TU Delft, The Netherlands [23] Sarmady, Siamak A survey on Peer–to–Peer and DHT s.l : Grid Lab, School of Computer Science, Universiti Sains Malaysia, Penang, 11800, Malaysia

[24] Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Shenker A Scalable Content–Addressable Network s.l : ACM SIGCOMM (San Diego, CA, August 2001), pp 161–172

[25] Thomas H Cormen; Charles E Leiserson; Ronald L Rivest; Clifford Stein Rivest “Hash Table”, Introduction to algorithms 3 edition, pp 253–285 [26] Xuemin S., Heather Y., John B., Mursalin A Handbook of Peer–to–Peer Networking, Springer

Ngày đăng: 29/08/2016, 21:44

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w