Thông tin tài liệu
I
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRẦN TRỌNG TẤN
ĐIỀU KHIỂN TẮC NGHẼN TRÊN MẠNG
NGANG HÀNG CÓ CẤU TRÚC
LUẬN VĂN THẠC SĨ
HÀ NỘI - 2011
II
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRẦN TRỌNG TẤN
ĐIỀU KHIỂN TẮC NGHẼN TRÊN MẠNG
NGANG HÀNG CÓ CẤU TRÚC
Ngành: Công nghệ Thông tin
Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số: 60 48 15
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. Nguyễn Hoài Sơn
HÀ NỘI - 2011
III
Mục lục
Mở đầu 1
Chương 1. Tổng quan 3
1.1. Mạng ngang hàng 3
1.1.1. Mức độ phân tán 3
1.1.2. Cấu trúc mạng 5
1.2. Mạng ngang hàng có cấu trúc 6
1.2.1. Đặc điểm của DHT 7
1.2.2. Cấu trúc hệ thống 7
1.3. Mạng Chord 9
1.3.1. Mô hình của Chord 10
1.3.2. Tìm kiếm trong mạng Chord 11
1.3.3. Quá trình tham gia và ổn định mạng 14
Chương 2. Vấn đề điều khiển tắc nghẽn trong mạng ngang hàng có cấu trúc 16
2.1. Tắc nghẽn và tầm quan trọng của việc điều khiển tắc nghẽn trong mạng
ngang hàng có cấu trúc 16
2.2. Phân tích quá trình sụp đổ do tắc nghẽn trong mạng ngang hàng có cấu trúc
17
2.2.1. Khái quát 17
2.2.2. Định nghĩa 17
2.2.3. Các mô hình 19
2.2.4. Tổng tải đến O 19
2.2.5. Ví dụ với một triệu nút 22
2.2.6. Phân tích các trạng thái tiệm cận của A. 22
2.2.7. Kết luận 25
Chương 3. Các nghiên cứu về điều khiển tắc nghẽn trên DHT 26
3.1. Phương pháp CSCC 26
3.2. Phương pháp BPCC 27
3.3. Phương pháp Marking 28
3.4. Phương pháp định tuyến thích nghi 31
Chương 4. Điều khiển tắc nghẽn sử dụng phương pháp thay đổi bảng định tuyến
34
4.1. Đề xuất phương pháp 34
4.2. Nội dung chi tiết 34
4.2.1. Phát hiện tắc nghẽn. 34
4.2.2. Xử lý trong trường hợp có tắc nghẽn 35
4.2.3. Xử lý khi hết tắc nghẽn 36
4.3. Ví dụ minh họa 37
4.4. Nhận xét về phương pháp 39
5. Mô phỏng và kết quả 41
5.1. Mô phỏng 41
5.1.1. Chương trình mô phỏng 41
IV
5.1.2. Các thay đổi đã áp dụng 44
5.2. Kết quả 45
5.2.1. So sánh với mô hình Chord chuẩn 45
5.2.2. Đánh giá hiệu năng khi tiến hành tùy chỉnh các tham số và cải tiến
phương pháp 47
6. Kết luận và hướng phát triển 50
V
Danh mục hình ảnh
Hình 1: Mạng ngang hàng phân tán hoàn toàn 4
Hình 2: Mạng ngang hàng phân tán một phần 4
Hình 3: Mạng ngang hàng lai 5
Hình 4: Bảng băm phân tán – DHT 7
Hình 5: Mô hình vòng Chord với khóa có chiều dài 6 bit 11
Hình 6: Quá trình tìm kiếm đơn giản trên Chord 12
Hình 7: Bảng finger của nút 8 13
Hình 8: Giả mã của phương pháp tìm kiếm cải tiến 13
Hình 9: Quá trình tìm kiếm khóa 54 trên nút 8 14
Hình 10: (a) tải đến các nút tạo bởi P
0
, (b) Tải tới và rời khỏi nút 18
Hình 11: Thông lượng đạt được so sánh với tốc độ truy vấn cho hệ thống DHT với
một triệu nút trong hai trường hợp tắc nghẽn M1 và M2. Mạng DHT sụp đổ khi
tải tới đạt đến giá trị x
opt
22
Hình 12: Phương pháp CSCC 26
Hình 13: Phương pháp BPCC 28
Hình 14: Mạng DHT với 8 nút. 31
Hình 15: Truy vấn thông thường trên mạng Chord (m=8). 37
Hình 16: Bảng định tuyến ban đầu của nút P
8
38
Hình 17: Bảng định tuyến của nút P
8
khi xảy ra tình trạng tắc nghẽn trên nút P
42
.
38
Hình 18: Truy vấn được thay đổi đường đi khi áp dụng giải pháp chống tắc nghẽn
38
Hình 19: Mô hình mạng mô phỏng 41
Hình 20: Mô hình lớp Node 42
Hình 21: Biểu đồ số lượng gói tin bị loại bỏ khi áp dụng và không áp dụng việc
điều khiển tắc nghẽn 45
Hình 22: Biểu đồ thể hiện số gói tin trung bình phải sử dụng với mỗi truy vấn
thành công 46
Hình 23: Ảnh hưởng của việc thay đổi giá trị xác định mức độ tắc nghẽn mềm của
nút 47
Hình 24: Ảnh hưởng của số lượng nút được khôi phục bảng định tuyến lên hiệu
năng của hệ thống 48
Hình 25: Hiệu năng của hệ thống thay đổi khi cải tiến phương pháp điều khiển tắc
nghẽn. 48
1
Mở đầu
Ngày nay với mức độ phổ biến của máy tính cá nhân và mạng Internet,
mạng ngang hàng với nhiều đặc tính phù hợp cho các hệ thống phân tán, ngày
càng thu hút được nhiều chú ý của người sử dụng và giới nghiên cứu phát triển
ứng dụng. Cùng với xu thế đó mô hình mạng ngang hàng có cấu trúc cũng dành
được nhiều sự quan tâm và phát triển do đặc điểm là mạng ngang hàng thuần
túy, không yêu cầu có sự tham gia của các máy chủ trung tâm. Đặc điểm này
giúp mạng ngang hàng cấu trúc có khả năng mở rộng tốt hơn, loại bỏ các single-
point-of-failure, tuy nhiên cũng tạo ra nhiều các vấn đề kỹ thuật cần phải giải
quyết.
Rất nhiều ứng dụng phức tạp đã được phát triển trên nền tảng mạng ngang
hàng có cấu trúc như các hệ thống truy vấn dữ liệu, hay hệ thống quản trị cơ sở
dữ liệu… Các ứng dụng phức tạp này với số lượng thông điệp được chuyển tải
trong mạng là vô cùng lớn sẽ gây khó khăn cho việc duy trì hệ thống hoạt động
một cách hiệu quả. Thêm nữa mạng ngang hàng nói chung và mạng ngang hàng
có cấu trúc nói riêng thường xuyên xuất hiện việc một số tài nguyên được truy
vấn nhiều lần trong một khoảng thời gian nhất định, do đó có thể gây tăng vọt số
lượng truy vấn trên một số nút trên mạng. Khi trong mạng tồn tại nút có số
lượng truy vấn tới cao hơn khả năng xử lý của nó sẽ gây ra tình trạng tắc nghẽn
cục bộ trên nút. Nếu như không có những cơ chế điều khiển tắc nghẽn hợp lý sẽ
dẫn đến việc tắc nghẽn lan rộng trên mạng và có thể gây sụp đổ mạng. Điều này
có thể gây cản trở đến việc sử dụng mạng ngang hàng có cấu trúc trong các ứng
dụng ở môi trường thực tế nơi các nút tham gia mạng có khả năng xử lý và
đường truyền rất đa dạng. Do đó việc tạo ra một cơ chế điều khiển tắc nghẽn
hiệu quả là nhu cầu thiết yếu với bất kỳ hệ thống mạng ngang hàng có cấu trúc
nào.
Luận văn này thông qua việc tìm hiểu về mạng ngang hàng có cấu trúc
(cụ thể là mô hình mạng Chord) và phân tích quá trình sụp đổ do tắc nghẽn sẽ
nêu bật tầm quan trọng của việc điều khiển tắc nghẽn. Khóa luận còn tìm hiểu
các nghiên cứu có liên quan trước đây, phân tích ưu nhược điểm của chúng
nhằm đề xuất một phương pháp điều khiển tắc nghẽn, bổ sung cho các phương
pháp đã có. Phương pháp này sử dụng việc thay đổi bảng định tuyến của các nút
trong mạng, nhằm chuyển hướng các thông điệp tránh khỏi những nút đang tắc
nghẽn và đi qua những nút còn khả năng phục vụ. Đồng thời giảm thiểu số
lượng thông tin và thông điệp phát sinh từ quá trình điều khiển tắc nghẽn này,
2
cũng như không tạo lên các thay đổi quá lớn trong việc tổ chức và định tuyến so
với mô hình mạng ban đầu.
Giải pháp đã được thử nghiệm trên chương trình mô phỏng mạng Chord.
Kết quả thu được cho thấy, việc sử dụng giải pháp đã xử lý được vấn đề tắc
nghẽn cục bộ qua đó nâng cao được thông lượng đạt được trên toàn hệ thống.
Khóa luận có cấu trúc như sau:
Chương 1: Giới thiệu tổng quan về mạng ngang hàng, mạng ngang hàng
có cấu trúc cụ thể là mô hình Chord.
Chương 2: Trình bày vấn đề điều khiển tắc nghẽn trong mạng ngang hàng
có cấu trúc và tầm quan trọng của nó. Phân tích quá trình sụp đổ của
mạng do tắc nghẽn.
Chương 3: Trình bày các nghiên cứu liên quan. Phân tích ưu nhược điểm
của các phương pháp đã đưa ra.
Chương 4: Đề xuất và phân tích giải pháp điều khiển tắc nghẽn dựa trên
việc thay đổi bảng định tuyến.
Chương 5: Xây dựng chương trình mô phỏng và các kết quả đã đạt được.
Chương 6: Kết luận và hướng phát triển nhằm giải quyết những tồn đọng
và cải tiến giải pháp đã đưa ra.
3
Chương 1. Tổng quan
1.1. Mạng ngang hàng
Mạng ngang hàng được định nghĩa như sau: một cấu trúc mạng phân tán,
nếu như các thành phần tham gia chia sẻ tài nguyên của chúng (như khả năng
tính toán của vi xử lý, dung lượng lưu trữ, đường truyền…). Các tài nguyên
được chia sẻ này dùng để cung cấp các dịch vụ và nội dung. Chúng được truy
cập một các trực tiếp bởi các nút khác, không thông qua các nút trung gian. Các
thành phần tham gia trong mạng vừa đóng vai trò cung cấp tài nguyên và yêu
cầu tài nguyên.[6]
Ta có thể phân biệt mô hình mạng ngang hàng với mô hình khách chủ thông qua
vai trò của các thành phần tham gia trong mạng. Mỗi thành phần trong mạng
ngang hàng có thể được gọi là Servent được tạo nên từ hai phần: Serv trong từ
server (máy chủ) và ent trong từ client (máy khách), nhằm thể hiện khả năng của
một nút trong mạng ngang hàng có thể vừa đóng cả hai vai trò máy chủ và máy
khách trong cùng một thời điểm. Điều này hoàn toàn khác biệt với môi hình
khách chủ khi nút tham gia chỉ có thể đóng một trong hai vai trò, hoặc máy
khách, hoặc máy chủ tại một thời điểm.
Hoạt động của bất cứ hệ thống mạng ngang hàng nào cũng phụ thuộc vào mạng
bao gồm các nút và kết nối giữa chúng. Mạng này được tạo ở tầng trên và độc
lập với mạng vật lý phía dưới (thường là mạng IP), nên được gọi là “mạng phủ”.
Mô hình, cấu trúc, mức độ tập trung của mạng phủ, và cách thức định tuyến,
định vị trong mạng ảnh hưởng lớn đến hoạt động của hệ thống, do chúng sẽ
quyết định tới khả năng tự bảo trì, tự ổn định mạng, chống lỗi, hiệu năng, khả
năng mở rộng và mức độ bảo mật.
Mạng phủ có thể phân biệt dựa vào mức độ phân tán và cấu trúc [1]
1.1.1. Mức độ phân tán
Mặc dù thiết kế mong muốn của mạng phủ là hoàn toàn phân tán, tuy nhiên
trong thực tế có thể không đúng như vậy. Dưới đây liệt kê các mô hình dựa trên
mức độ phân tán của chúng
Mô hình phân tán hoàn toàn: Tất cả các nút trong mạng thực hiện các
vai trò như nhau. Vừa đóng vai trò là máy chủ, vừa là máy khách. Do đó
không cần phải có bất kỳ thành phần nào đóng vai trò là trung tâm điều
phối.
4
Hình 1: Mạng ngang hàng phân tán hoàn toàn
Mô hình phân tán một phần: Về cơ bản mô hình này tương tự như mô
hình phân tán hoàn toàn. Tuy nhiên có một số nút đóng vai trò quan trong
hơn các nút khác, trở thành các điểm điều phối cho một số các nút khác.
Các nút này được gọi là siêu nút (supernode) và chúng có thể đảm nhận
các vai trò khác nhau tùy thuộc vào từng thiết kế.
Hình 2: Mạng ngang hàng phân tán một phần
Có một điểm quan trọng cần lưu ý là hệ thống sẽ không lệ thuộc vào một
nút nào, dù nút đó có là supernode, do các nút này được gán động và nếu
có lỗi sẽ được thay thế bằng nút khác.
5
Mô hình phân tán lai: Trong những hệ thống này, tồn tại một máy chủ
trung tâm đóng vai trò duy trì thông tin về các nút và tài nguyên trên các
nút.
Hình 3: Mạng ngang hàng lai
Mặc dù việc trao đổi tài nguyên có thể thực hiện trực tiếp giữa các nút,
nhưng máy chủ trung tâm sẽ đóng vai trò tổng hợp và tìm kiếm tài nguyên
trên nút. Về cơ bản mô hình này sẽ xuất hiện single point of failure chính
là máy chủ trung tâm. Mô hình này sẽ khó mở rộng, và tạo các nguy hiểm
tiềm tàng cho hệ thống khi máy chủ trung tâm có sự cố hoặc bị tấn công.
1.1.2. Cấu trúc mạng
Cấu trúc ở đây mang nghĩa xác định rõ việc hình thành mạng phủ, cũng như việc
nút và các tài nguyên được đưa vào mạng có theo một quy luật nhất định nào đó
không. Nhờ đó ta phân loại ra như sau
Không có cấu trúc: Vị trí của nội dung hoàn toàn không liên quan tới
mô hình của mạng phủ. Trong mạng không có cấu trúc nội dung cần phải
được định vị. Phương thức tìm kiếm rất đa dạng từ việc sử dụng các
phương pháp bruteforce, đẩy truy vấn ra tất cả các nút cho tới khi có được
kết quả, cho đến sử dụng các thuật toán phức tạp và tiết kiệm tài nguyên
hơn truy vấn ngẫu nhiên (random walks) hay dùng bảng đinh tuyến.
[...]... khóa) sẽ được sao chép trên các nút có trong danh sách đó Do đó một khóa (item liên quan đến khóa) sẽ chỉ bị mất khi có log 2(N)+1 các nút trong danh sách phải đồng thời rời khỏi mạng 16 Chương 2 Vấn đề điều khiển tắc nghẽn trong mạng ngang hàng có cấu trúc 2.1 Tắc nghẽn và tầm quan trọng của việc điều khiển tắc nghẽn trong mạng ngang hàng có cấu trúc Mạng ngang hàng có cấu trúc được xây dựng với... ở lớp trên Việc xử lý tắc nghẽn trên DHT nằm ở tầng trên và độc lập với các cơ chế điều khiển tắc nghẽn ở các tầng bên dưới, như TCP 17 2.2 Phân tích quá trình sụp đổ do tắc nghẽn trong mạng ngang hàng có cấu trúc [8] Trong mục này chúng ta sẽ phân tích quá trình sụp đổ của một mạng DHT khi có tắc nghẽn xảy ra và không có cơ chế điều khiển tắc nghẽn nào được sử dụng Nhằm đơn giản hóa, ta xét mạng DHT... khiến cho mạng ngang hàng có cấu trúc dễ xảy ra tình trạng tắc nghẽn và có thể gây ảnh hưởng rộng trên toàn mạng Tắc nghẽn trong DHT thường bắt đầu khi một nút nhận được số truy vấn vượt quá khả năng xử lý của nó, nếu không có cơ chế thích hợp các truy vấn sau đến hoặc đi qua nút đó sẽ tạo ra tắc nghẽn trên mạng, có thể gây sụp đổ toàn mạng Việc điều khiển tắc nghẽn giúp một hệ thống DHT có khả năng...6 Phương pháp tìm kiếm có liên hệ mật thiết và tác động sâu sắc tới tính ổn định, khả năng mở rộng và độ tin cậy của mạng Mạng không cấu trúc thương được sử dụng trong môi trường mà các nút trong mạng luôn thay đổi Có cấu trúc: Mạng không cấu trúc gặp nhiều khó khăn khi mở rộng, để giải quyết vấn đề này mạng có cấu trúc được đưa ra Trong mạng có cấu trúc, mô hình của mạng phủ được kiểm soát chặt... là chỉ thực hiện việc chống tắc nghẽn tức là khi tắc nghẽn đã xảy ra trên mạng Phương pháp Marking có gắng giải quyết vấn đề này Để phân tích phương pháp này ta xét lần lượt từng thành phần tham gia vào việc điều khiển tắc nghẽn trong phương pháp này: 29 Hàng đợi: Trên mỗi nút duy trì một hàng đợi chứa các truy vấn tới Ta sử dụng các hàng đợi này để phản hồi tình trạng tắc nghẽn thông qua việc thêm một... không theo quy luật, tình trạng mạng sụp đổ do tắc nghẽn sẽ xảy ra dễ dàng và nhanh chóng hơn 26 Chương 3 Các nghiên cứu về điều khiển tắc nghẽn trên DHT Các nghiên cứu liên quan về vấn đề điều khiển tắc nghẽn của mạng DHT tập trung chủ yếu vào hai hướng giải quyết: Điều khiển tốc độ truy vấn: giới hạn tốc độ gửi ở nút truy vấn hoặc tốc độ xử lý ở nút đích khi nút đích có hiện tượng quá tải Gồm các... sẽ gặp khó khăn khi có quá nhiều nút ra vào mạng 1.2 Mạng ngang hàng có cấu trúc Mạng không cấu trúc với sự phân bố tự do của nút và tài nguyên sẽ tồn tại nhược điểm về phương thức tìm kiếm gây tốn kém tài nguyên, đồng thời không đảm bảo sẽ luôn tìm được kết quả cho mỗi truy vấn Vấn đề này càng trở nên khó giải quyết khi số lượng nút trong mạng tăng Lý do đó khiến mạng không cấu trúc không được áp dụng... để đáp ứng điều kiện mạng có nhiều biến động (nút ra vào với tần suất cao) thì việc có ít thay đổi lên cấu trúc mỗi khi có thay đổi là yêu cầu cấp thiết Mạng phủ Mỗi nút duy trì một tập các đường dẫn đến các nút khác (các nút láng giềng) hay còn gọi là bảng định tuyến Tập các đường dẫn này tạo lên mạng phủ Một nút chọn các nút láng giềng dựa theo một cấu trúc nhất định gọi là topology của mạng Tất cả... trong mạng được đặt ở các vị trí xác định Hệ thống đảm nhận trách nhiệm ánh xạ giữa tài nguyên và vị trí của nút chứa tài nguyên đó, dưới dạng bảng định tuyến phân tán Khi đó truy vấn có thể tới được nút chứa tài nguyên một cách hiệu quả Mạng có cấu trúc cung cấp khả năng mở rộng cho việc tìm kiếm chính xác truy vấn (truy vấn với định danh chính xác) Nhược điểm của mạng có cấu trúc là việc duy trì mạng. .. một nút có vấn đề cũng có thể gây ảnh hưởng tới nhiều nút khác trong mạng Thông thường các nút trong mạng có cấu hình phần cứng và băng thông mạng rất đa dạng, do đó khả năng đáp ứng truy vấn của từng nút cũng hoàn toàn khác nhau Ngoài ra với mạng ngang hàng thường xảy ra tình trạng một số lượng tài nguyên được truy vấn với tần suất cao, chỉ trong một khoảng thời gian nhất định Những đặc điểm trên khiến . khiển tắc nghẽn trong mạng ngang hàng có cấu trúc 16
2.1. Tắc nghẽn và tầm quan trọng của việc điều khiển tắc nghẽn trong mạng
ngang hàng có cấu trúc. điểm của mạng có cấu trúc là việc duy trì mạng sẽ gặp khó khăn
khi có quá nhiều nút ra vào mạng.
1.2. Mạng ngang hàng có cấu trúc
Mạng không cấu trúc với
Ngày đăng: 17/02/2014, 20:20
Xem thêm: điều khiển tắc nghẽn trên mạng ngang hàng có cấu trúc