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

Định tuyến phân tán tự ổn định dựa trên cộng tác giữa các điểm đích

75 9 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

Cấu trúc

  • MỤC LỤC

  • DANH SÁCH CÁC HÌNH VẼ

  • MỞ ĐẦU

  • CHƯƠNG 1. HỆ PHÂN TÁN

  • 1.1. Khái niệm hệ phân tán

  • 1.2. Vai trò của hệ phân tán

  • 1.3. Đặc trưng của các hệ phân tán

  • 1.4. Mô hình hóa các hệ phân tán

  • 1.4.1. Mô hình chuyển thông báo

  • 1.4.2. Mô hình với bộ nhớ dùng chung

  • 1.4.3. Mô hình xen kẽ

  • 1.4.4. Thực hiện và những tính chất của thực hiện

  • 1.5. Đánh giá độ phức tạp

  • CHƯƠNG 2. TỰ ỔN ĐỊNH

  • 2.1. Tính chất tự ổn định

  • 2.2. Vai trò của tự ổn định

  • 2.3. Đánh giá độ phức tạp

  • 2.4. Ví dụ 1: Loại trừ lẫn nhau

  • 2.5. Ví dụ 2: Xây dựng cây khung

  • CHƯƠNG 3. ĐỊNH TUYẾN

  • 3.1. Bài toán định tuyến tổng quát

  • 3.2. Một số bài toán định tuyến cụ thể

  • 3.2.1. Định tuyến với đường đi ngắn nhất

  • 3.2.3. Định tuyến với băng thông cực đại

  • 3.3. Phân loại các giải thuật định tuyến

  • 3.3.1. Định tuyến theo véctơ khoảng cánh

  • 3.3.2. Định tuyến phân tán có/không có sự cộng tác giữa các điểm đích

  • 3.3.3. Định tuyến theo trạng thái liên kết

  • 3.3.4. So sánh định tuyến theo véctơ khoảng cách và định tuyến theo trạng thái liên kết

  • 3.4.1. Giải thuật Netchange

  • 3.4.2. Giải thuật Humblet

  • CHƯƠNG 4. ĐỊNH TUYẾN PHÂN TÁN TỰ ỔN ĐỊNH CỦA SHLOMI DOLEV

  • 4.1. Mô tả chung

  • 4.2. Giải thuật đa cây BFS

  • 4.3. Giải thuật đếm

  • CHƯƠNG 5. GIẢI THUẬT ĐỀ XUẤT

  • 5.1. Giới thiệu chung

  • 5.2. Mạng và những giả thiết cơ sở

  • 5.3. Cấu trúc dữ liệu, nhiệm vụ của giải thuật

  • 5.4. Giải thuật

  • 5.5. Ví dụ một thực hiện

  • 5.6. Tính đúng đắn

  • 5.7. Đánh giá giải thuật

  • KẾT LUẬN

  • TÀI LIỆU THAM KHẢO

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỊNH TUYẾN PHÂN TÁN TỰ ỔN ĐỊNH DỰA TRÊN CỘNG TÁC GIỮA CÁC ĐIỂM ĐÍCH LUẬN VĂN CAO HỌC HƯỚNG DẪN: TS NGUYỄN ĐẠI THỌ HỌC VIÊN: LÊ ĐÌNH THANH HÀ NỘI, 2007 MỤC LỤC LỜI CAM ĐOAN MỤC LỤC DANH SÁCH CÁC HÌNH VẼ MỞ ĐẦU CHƢƠNG HỆ PHÂN TÁN 1.1 Khái niệm hệ phân tán 1.2 Vai trò hệ phân tán 1.3 Đặc trƣng hệ phân tán 1.4 Mô hình hóa hệ phân tán 1.4.1 Mơ hình chuyển thơng báo 10 1.4.2 Mơ hình với nhớ dùng chung 10 1.4.3 Mơ hình xen kẽ 10 1.4.4 Thực tính chất thực 10 1.5 Đánh giá độ phức tạp 12 CHƢƠNG TỰ ỔN ĐỊNH 14 2.1 Tính chất tự ổn định 14 2.2 Vai trò tự ổn định 14 2.3 Đánh giá độ phức tạp 15 2.4 Ví dụ 1: Loại trừ lẫn 16 2.5 Ví dụ 2: Xây dựng khung 21 CHƢƠNG ĐỊNH TUYẾN 26 3.1 Bài toán định tuyến tổng quát 26 3.2 Một số toán định tuyến cụ thể 26 3.2.1 Định tuyến với đường ngắn 26 3.2.2 Định tuyến với số chặng 27 3.2.3 Định tuyến với băng thông cực đại 27 3.3 Phân loại giải thuật định tuyến 27 3.3.1 Định tuyến theo véctơ khoảng cánh 28 3.3.2 Định tuyến phân tán có/khơng có cộng tác điểm đích 30 3.3.3 Định tuyến theo trạng thái liên kết 30 3.3.4 So sánh định tuyến theo véctơ khoảng cách định tuyến theo trạng thái liên kết 32 3.4 Một số giải thuật định tuyến phân tán 33 3.4.1 Giải thuật Netchange 34 3.4.2 Giải thuật Humblet 42 CHƢƠNG ĐỊNH TUYẾN PHÂN TÁN TỰ ỔN ĐỊNH CỦA SHLOMI DOLEV 50 4.1 Mô tả chung 50 4.2 Giải thuật đa BFS 50 4.3 Giải thuật đếm 55 CHƢƠNG GIẢI THUẬT ĐỀ XUẤT 57 5.1 Giới thiệu chung 57 5.2 Mạng giả thiết sở 57 5.3 Cấu trúc liệu, nhiệm vụ giải thuật 57 5.4 Giải thuật 59 5.5 Ví dụ thực 62 5.6 Tính đắn 64 5.7 Đánh giá giải thuật 70 KẾT LUẬN 72 TÀI LIỆU THAM KHẢO 73 DANH SÁCH CÁC HÌNH VẼ - Hình 2.1 Giải thuật loại trừ lẫn Dijstra (16) - Hình 2.2.a Cấu hình xuất phát C0 = (2, 3, 4, 1, 1) (18) - Hình 2.2.b Cấu hình đạt sau bước tính P3, C1 = (2, 3, 4, 4, 1) (18) - Hình 2.2.c Cấu hình đạt sau bước tính P1, C2 = (2, 2, 4, 4, 1) (19) - Hình 2.2.d Cấu hình đạt sau bước tính P4, C3 = (2, 2, 4, 4, 4) (19) - Hình 2.2.e Cấu hình đạt sau bước tính P2, C4 = (2, 2, 2, 4, 4) (20) - Hình 2.2.f Cấu hình đạt sau bước tính P3, C5 = (2, 2, 2, 2, 4) (20) - Hình 2.2.g Cấu hình đạt sau bước tính P4, C6 = (2, 2, 2, 2, 2) (21) (an tồn) - Hình 2.3 Giải thuật bao trùm (22) - Hình 3.1 Định tuyến theo véctơ khoảng cách (29) - Hình 3.2 Mạng có nút (29) - Hình 3.3 Định tuyến theo trạng thái liên kết (30) - Hình 3.4 Giải thuật Netchange (37) - Hình 3.5 Các bất biến P(u, w, v) L(u, v) (37) - Hình 3.6 Giải thuật Humblet, mã cho nút I (45) - Hình 3.7.a Tơpơ mạng (45) - Hình 3.7.b Các định tuyến cho nút (46) - Hình 3.7.c Xây dựng định tuyến nút B (46) - Hình 3.7.d Tạo lại định tuyến sau tôpô thay đổi (47) - Hình Giải thuật đa BFS Shlomi Dolev (52) - Hình 5.1 Giải thuật định tuyến tự ổn định có cộng tác điểm đích khơng tạo vịng lặp định tuyến vĩnh viễn, mã cho nút P (60) - Hình 5.2.a Tơpơ mạng (62) - Hình 5.2.b Trạng thái ban đầu nút (giả sử trạng thái sau lỗi) (62) - Hình 5.2.c Trạng thái nút sau vịng (63) - Hình 5.2.d Trạng thái nút sau vòng (63) - Hình 5.2.e Trạng thái nút sau vịng (ổn định) (64) MỞ ĐẦU Định tuyến hoạt động chủ yếu mạng máy tính Vấn đề định tuyến nghiên cứu nhiều Nhiều cấu trúc liệu giải thuật đề xuất cho vấn đề định tuyến Tuy nhiên, thách thức tiếp tục diễn thập kỷ tới xây dựng hệ thống định tuyến thật sẵn sàng đáng tin cậy Các giải thuật định tuyến truyền thống thích ứng với thay đổi tơpơ mạng, thay đổi tình trạng mạng Tuy nhiên, chúng không bỏ qua lỗi treo Một lỗi treo xuất hiện, phá vỡ hoạt động hệ thống Hậu lỗi, vậy, thê thảm Ngồi ra, muốn hệ thống hoạt động tốt, phải khởi động cách đắn Trong nhiều mạng, việc khởi động mạng khó thực Do vậy, mong muốn có hệ thống (giải thuật) định tuyến tự ổn định, tức hệ thống hoạt động đắn xuất phát từ trạng thái ban đầu gặp lỗi Tự ổn định giới thiệu Dijkstra [4], nghiên cứu nhiều nơi giới, tương đối mẻ Việt Nam Ngồi tính khơng tự ổn định, giải thuật định tuyến thường gặp phải vấn đề vòng lặp định tuyến [9, 13] Vịng lặp định tuyến xuất khơng làm cho giải thuật khơng kết thúc mà cịn làm cho số kết đường định tuyến luôn sai Khắc phục vòng lặp định tuyến yêu cầu tiếp tục đặt cho thiết kế hệ thống định tuyến Đa số giải thuật định tuyến phân tán thuộc nhóm độc lập điểm đích [7, 8, 9, 13], nghĩa việc tính đường định tuyến đến nút hồn tồn độc lập với việc tính đường định tuyến đến nút khác Nếu có cộng tác điểm đích, tức tính đường định tuyến đến nút dựa đường định tuyến đến nút khác, thời gian tính tốn rút ngắn, đồng thời khắc phục vấn đề vịng lặp định tuyến Những quan sát nêu lý chọn đề tài Mặc dù vậy, mục đích cơng việc luận văn khơng nghiên cứu đưa giải thuật định tuyến phân tán tự ổn định, có cộng tác điểm đích khơng có vịng lặp định tuyến mà cịn thơng qua việc làm cụ thể để trình bày, giới thiệu nội dung tự ổn định Luận văn bắt đầu với Chương việc giới thiệu hệ phân tán, mơ hình hệ phân tán, vai trò, đặc trưng hệ phân tán, khái niệm cấu hình, thực phương pháp đánh giá độ phức tạp giải thuật phân tán [2, 5, 6] Tiếp theo, Chương hệ thống hóa giới thiệu nội dung tự ổn định Sau phần trình bày khái niệm, mơ hình hóa, vai trị tự ổn định, phương pháp đánh giá giải thuật tự ổn định phần trình bày ví dụ giải thuật tự ổn định Hai giải thuật phân tán tự ổn định chọn giới thiệu chương Giải thuật loại trừ lẫn Dijstra [4] Giải thuật xây dựng khung Shlomi Dolev [13] Chương trình bày nội dung quen thuộc định tuyến, nhấn mạnh tính chất khơng có vịng lặp định tuyến, có cộng tác điểm đích làm mục tiêu cho xây dựng giải thuật định tuyến đề xuất Chương Chương kết thúc với hai ví dụ giải thuật định tuyến phân tán không tự ổn định, tạo vòng lặp định tuyến (Netchange [9]) khơng tạo vịng lặp định tuyến vĩnh viễn (Humblet [11]) Chương giành riêng để trình bày giải thuật định tuyến phân tán tự ổn định Shlomi Dolev [14] Các giải thuật tự ổn định đa BFS giải thuật đếm kết hợp để tạo nên giải thuật định tuyến phân tán tự ổn định Mặc dù giải thuật Shlomi Dolev thuộc nhóm độc lập điểm đích, thực giải thuật có tạo vịng lặp định tuyến giải thuật cho mẫu điển hình xây dựng giải thuật định tuyến phân tán tự ổn định Chương cuối cùng, Chương 5, phần trình bày giải thuật đề xuất Có thể xem giải thuật đề xuất kết hợp nâng cấp hai giải thuật định tuyến Humblet (được trình bày Chương 3) Shlomi Dolev (được trình bày Chương 4) Giải thuật hội tụ ba tính chất tốt: tự ổn định, khơng tạo vịng lặp định tuyến vĩnh viễn, có cộng tác điểm đích Tính độ phức tạp giải thuật phát biểu chứng minh phần cuối chương Chắc chắn, luận văn cịn có thiếu sót nội dung trình bày Với mong muốn phát triển lĩnh vực nghiên cứu, tác giả luận văn mong nhận đóng góp ý kiến thầy giáo anh/chị học viên CHƯƠNG HỆ PHÂN TÁN 1.1 Khái niệm hệ phân tán Hệ phân tán tập hợp thiết bị tính riêng rẽ giao tiếp với Đây khái niệm tổng quát, bao trùm phạm vị rộng hệ thống máy tính ngày nay, từ chíp VLSI đến đa xử lý, mạng cục bộ, Internet Nếu hệ song song phối hợp nhiều xử lý nhằm giải vấn đề cho trước cách nhanh hệ phân tán bao gồm tập xử lý có chương trình làm việc riêng bán độc lập, lý đó, ví dụ chia sẻ tài ngun, tăng tính sẵn sàng, khứ lỗi, xử lý cần phối hợp hành động với Ta thấy hệ phân tán khắp nơi Điển hình, hệ phân tán sử dụng để chia sẻ tài nguyên chia sẻ liệu Các máy tính kết nối mạng với dùng chung máy in, máy quét, chia sẻ tệp tài liệu, chương trình… Tính tốn ngang hàng kiểu thực hệ phân tán ngày trở nên phổ biến cho việc cung cấp thiết bị dịch vụ tính tốn Các hệ phân tán nhiều tham vọng cho hiệu hoạt động cao cách kết hợp giải toán cách song song, đồng thời tăng tính sẵn sàng hệ thống trường hợp số thiết bị gặp lỗi 1.2 Vai trò hệ phân tán Hệ phân tán ngày trở nên phổ biến vai trị sử dụng quan trọng chúng Trước hết, phải kể đến vai trị trao đổi thơng tin Các hệ phân tán cho khả chia sẻ thông tin rộng rãi Thông tin từ hệ thống máy tính ngân hàng đặt trụ sở nước sử dụng hệ thống máy tính ngân hàng đặt trụ sở nước khác Hệ phân tán cho khả chia sẻ thông tin thiết bị hỗn tạp Một máy tính "nói chuyện" với máy tính khác loại, điện thoại cố định, di động, PDA, … Thứ hai, hệ phân tán cho khả chia sẻ tài nguyên phần cứng lẫn phần mềm Các máy tính kết nối mạng dùng chung máy in, chia sẻ tệp liệu, tệp chương trình Thứ ba, việc lặp, nhân bản, hệ phân tán cho độ tin cậy cao Nếu toàn liệu chi nhánh ngân hàng lưu máy tính biến mất, người ta khơi phục lại cách phần nhân lưu nơi khác hệ thống máy tính ngân hàng Thứ tư, thơng qua song song hóa, thực thể hệ phân tán chia sẻ cơng việc, thực đồng thời công việc chung, làm tăng hiệu suất hoạt động hệ thống Thứ năm, hệ phân tán làm đơn giản việc thiết kế hệ thống phức tạp Người ta thường phân hệ thống phức tạp thành hệ thống chuyên dụng hợp tác với Làm vậy, việc thiết kế đơn giản mà việc thực đơn giản 1.3 Đặc trưng hệ phân tán Ba đặc trưng, khó khăn điển hình thiết kế, hệ phân tán là: khơng đồng bộ, thiếu thơng tin tồn cục, khơng có chế phát cố xác Một hệ phân tán khơng có đồng hồ chung Ta khơng thể đồng hóa đồng hồ xử lý khác khơng biết độ trễ truyền thơng Để đạt tính đồng bộ, ta khơng thể dùng đồng hồ vật lý mà phải vận dụng khái niệm giải thuật nhân Tương tự, hệ phân tán khơng có nhớ tồn cục chung Các xử lý biết trạng thái toàn cục hệ thống "Hiểu biết" xử lý có tính cục Do vậy, người thiết kế hệ phân tán, cụ thể người xây dựng giải thuật phân tán phải xây dựng chế đánh giá tính tồn cục Ngồi ra, khơng có chế phát cố xác hệ phân tán khơng thể phân biệt xử lý chậm hay bị cố Khi xử lý gặp cố, xử lý lại phải tiếp tục làm việc để đạt kết mong muốn Những đặc trưng thực khó khăn thiết kế hệ phân tán 1.4 Mơ hình hóa hệ phân tán Trong hệ phân tán, thực thể (máy tính, xử lý, tiến trình) chạy chương trình riêng bao gồm tập lệnh Khi thực lệnh, thực thể thay đổi trạng thái cục Ta mơ hình hóa thay đổi cách xem thực thể máy trạng thái Một hệ phân tán mơ hình hóa tập n máy trạng thái Ký hiệu máy thứ i Pi Truyền thơng thực thể thực cách chuyển thông báo hay sử dụng nhớ dùng chung Truyền thông cách ghi vào đọc từ nhớ dùng chung thường hạn chế hệ thống với thực thể gần mặt địa lý, ví hệ thống đa xử lý hay máy tính đa nhiệm Truyền thơng theo cách chuyển thơng báo khơng có giới hạn vậy, thực hệ thống mà thực thể xa mặt địa lý mạng máy tính Tùy theo phương pháp truyền thơng sử dụng, ta có mơ hình chuyển thơng báo hay mơ hình với nhớ dùng chung 10 1.4.1 Mơ hình chuyển thơng báo Trong mơ hình chuyển thông báo, láng giềng trao đổi thông tin cho cách gửi nhận thông báo Liên kết thực thể đơn lưỡng hướng Liên kết đơn hướng từ thực thể Pi đến thực thể Pj sử dụng để chuyển thông báo từ Pi đến Pj Ta trừu tượng hóa liên kết đơn hướng hàng đợi FIFO qi, j chứa tất thông báo Pi gửi cho Pj Pj chưa nhận Mỗi Pi gửi cho Pj thông báo m, m đưa vào hàng đợi qi,j Pj nhận m đỉnh hàng đợi qi,j Liên kết lưỡng hướng Pi Pj mơ hình hóa hai hàng đợi: qi,j cho hướng từ Pi đến Pj qj,i cho hướng từ Pj đến Pi Trạng thái hệ thống phân tán chuyển thông báo thời điểm cụ thể xác định trạng thái xử lý nội dung hàng đợi chứa thơng báo thời điểm Cấu hình hệ thống (hay cấu hình) dùng để trạng thái Một cấu hình ký hiệu c = (s1, s2, …, sn, q1,2 q1,3, …, qi,j, …., qn, n-1), si, ≤ i ≤ n , trạng thái Pi qi, j, i  j, hàng đợi chứa thông báo Pi gửi cho Pj Pj chưa nhận 1.4.2 Mô hình với nhớ dùng chung Trong mơ hình với nhớ dùng chung, xử lý trao đổi thông tin cho cách sử dụng chung ô nhớ Các xử lý ghi vào tập ô nhớ đọc từ tập nhớ khác Cấu hình hệ thống bao gồm trạng thái xử lý nội dung nhớ dùng chung Một cấu hình hệ thống gồm n xử lý m ô nhớ dùng chung ký hiệu c = (s1, s2, …, sn,, r1, r2, …, rm), si, ≤ i ≤ n, trạng thái Pi, rj, ≤ j ≤ m, nội dung ô nhớ dùng chung thứ j 1.4.3 Mô hình xen kẽ Mơ hình xen kẽ sử dụng để lý giải hành vi hệ thống phân tán Trong mô hình này, thời điểm có xử lý thực bước tính (cịn gọi bước nguyên tử) Mỗi bước nguyên tử bao gồm số phép tính bên xử lý, hay cịn gọi kiện tính, phép giao, hay gọi kiện giao - phép gửi nhận hệ thống chuyển thông báo hay phép ghi đọc hệ thống sử dụng nhớ dùng chung 1.4.4 Thực tính chất thực Trong hệ thống phân tán, xử lý thực bước tính cách đồng thời; nhiên, giả thiết bước tính khơng ảnh hưởng đến bước tính 61 Theo chu kỳ, P thực bước phát tỏa nguyên tử - xây dựng định tuyến tabP thông báo cho láng giềng Trước hết, P kiểm tra láng giềng trạng thái liên kết liền kề để biết láng giềng tồn loại bỏ định tuyến láng giềng (các dịng 13÷15) Q trình xây dựng định tuyến tương tự giải thuật Humblet P tạo lớn cách đặt làm gốc, định tuyến nhận từ láng giềng (trong giải thuật hTreeQ) gốc lớn Tiếp đó, P duyệt nút lớn theo chiều rộng (nút gần gốc duyệt trước) để xét kết nạp nút vào định tuyến tabP Trước duyệt lớn kết nạp nút vào định tuyến, P xóa định tuyến trước cách gọi EMPTY(tabP) (dịng 29), đặt làm nút gốc định tuyến việc gọi ADD(, tabP) (dịng 30) Q trình duyệt lớn kết nạp nút vào định tuyến thực sau: Với lớn (mỗi hTreeQ), nút gần gốc (có định danh TOP(hTreeQ).id) xét Nếu chưa kết nạp vào tabP (UNSEEN(TOP(hTreeQ).id, tabP) = TRUE) láng giềng P (TOP(hTreeQ).n = NIL) láng giềng kết nạp vào tabP theo đường qua Q (GET(TOP(hTreeQ).n, tabP).a = idQ) giữ lại để xét tiếp, ngược lại bị xóa khỏi lớn để xét nút (gọi REMOVETOP(hTreeQ) quay lại vòng lặp) Trong số nút giữ lại xét tiếp, nút gần gốc (trong giải thuật nút có định danh TOP(hTreeK).id) chọn để kết nạp vào định tuyến Trước nút có định danh TOP(hTreeK).id kết nạp vào định tuyến, thông tin đường từ gốc đến bao gồm độ dài đường (TOP(hTreeK).dis), định danh nút liền kề nút gốc (idK), định danh nút liền trước nút đích (TOP(hTreeK).n TOP(hTreeK).n ≠ NIL, idP TOP(hTreeK).n = NIL) kết hợp t Thủ tục ADD(t, tabP) gọi để đưa t vào tabP Quá trình lặp lại toàn lớn duyệt (mọi hTreeQ rỗng) Kết thúc bước phát tỏa nguyên tử, P gửi tabP đến tất láng giềng Khác với giải thuật Shlomi Dolev, giải thuật khơng giới hạn kích thước mạng, không cố định số láng giềng nút Khi có thêm láng giềng Q, P bổ sung vào NeighborsP định danh định tuyến Q Trong giải thuật, hành động mô tả ExclusiveAddP(idQ, htabQ) Nếu nút láng giềng Q bị liên lạc (có thể nút bị hỏng liên kết từ P đến Q hỏng), P loại bỏ định tuyến ứng với Q khỏi NeighbosrP (NeighborsP:= NeighborsP – {}) 62 Kích thước thơng báo gửi/nhận khơng cố định Thơng báo có kích thước bé chứa Thơng báo có kích thước lớn chứa tất ứng với nút thành phần liên thông nút gửi Khác với hai giải thuật Humblet Shlomi Dolev, nút trước định danh nút khác mạng Thay vào đó, q trình hoạt động giải thuật, “hiểu biết” nút nút thành phần liên thông mở rộng nhận thơng báo từ láng giềng 5.5 Ví dụ thực Trong phần này, xin đưa thực mô tả hoạt động giải thuật đề xuất Cây định tuyến tạo xử cấu hình dược minh họa Hình 5.2.a, 5.2.b, 5.2.c, 5.2.d 5.2.e Giả sử vòng thực hiện, xử lý thực phát tỏa nguyên tử A C B D Hình 5.2.a Tơpơ mạng A C B C D D Hình 5.2.b Trạng thái ban đầu nút (giả sử trạng thái sau lỗi) 63 A B 5 C B B D C D A B D Hình 5.2.c Trạng thái nút sau vòng A B 5 A 2 D D C A C C B B D C B A D Hình 5.2.d Trạng thái nút sau vịng C 64 A B 1 5 D C 2 C B B A D D A C C B A D Hình 5.2.e Trạng thái nút sau vịng (ổn định) 5.6 Tính đắn Bổ đề 5.1 Nếu J thuộc hTreeK chọn đưa vào tabP nút đường từ K đến J htabK chọn đưa vào tabP nhận K nút liền sau P đường định tuyến Chứng minh Giả sử đường từ K đến J htabK K = Jn, Jn-1, …, J1, J0 = J Theo giải thuật, J thuộc hTreeK chọn đưa vào tabP idJ = TOP(hTreeK).id J láng giềng P (TOP(hTreeK).n = NIL) nút trước J đường từ K đến J htabK (nút J1 có định danh TOP(hTreeK).n) chọn đưa vào tabP nhận K nút liền sau P đường định tuyến (GET(TOP(hTreeK).n, tabP).a = idK) Trường hợp J láng giềng P (n=0): J K Bổ đề 5.1 hiển nhiên Trường hợp J láng giềng P (n > 0): J1 chọn đưa vào tabP nhận K nút liền sau P đường định tuyến Lập luận tương tự cho J1 dẫn đến J2 chọn đưa vào tabP nhận K nút liền sau P đường định tuyến Lập luận tương tự cho J2 dẫn đến J3 chọn đưa vào tabP nhận K nút liền sau P đường định tuyến, … Cuối cùng, K = Jn chọn đưa vào tabP nhận K nút liền sau P đường định tuyến Như vậy, toàn đường từ K đến J htabK K = Jn, Jn-1, …, J1, J0 = J đưa vào tabP Bổ đề chứng minh.■ 65 Định lý 5.1 Cấu hình Cs với xử lý Q:  Số phần tử NeighborsQ số láng giềng Q,  NeighborsQ bao hàm láng giềng Q,  Mỗi phần tử  NeighborsQ thỏa mãn o P láng giềng Q o Số phần tử htabP số xử lý thành phần liên thông P, o htabP bao hàm xử lý thuộc thành phần liên thông P, phần tử t nằm htabP thỏa mãn  t.id định danh nút thành phần liên thông P, gọi U  t.dis-LEN(Q, P) khoảng cách ngắn từ P đến U  t.a định danh nút liền kề (sau) P đường ngắn từ P đến U U  P, NIL U = P  t.n định danh nút liền kề (trước) U đường ngắn từ P đến U U  P, NIL U = P cấu hình an tồn giải thuật tập thực hợp lệ LE Chứng minh Để chứng minh Cs cấu hình an tồn, ta phải chứng minh thực xuất phát từ Cs thực hợp lệ Dễ thấy Cs thỏa mãn điều kiện hợp lệ Với thực bất kỳ, đầu vịng thứ nhất, htabP định tuyến cho P Mỗi xử lý Q có đầy đủ định tuyến láng giềng, đặt chúng vào lớn có gốc Q, sau duyệt lớn để lấy định tuyến tabQ Thủ tục duyệt đảm bảo nút lớn duyệt, nút thành phần liên thông kết nạp vào tabQ Theo giải thuật,  htabK chọn để kết nạp J đưa vào tabQ dis tổng độ dài đường ngắn 66 từ K đến J với LEN(Q, K)  htabK chọn có dis nhỏ nên dis độ dài đường ngắn từ Q đến J Theo Bổ đề 5.1, đường từ Q đến J tabQ tạo thành cách nối cung (Q, K) với đường từ K đến J htabK, n định danh nút liền trước J đường từ Q đến J idK rõ ràng định danh nút liền sau Q đường từ Q đến J Như vậy, kết thúc vòng 1, tabQ định tuyến cho Q, cấu hình Cs1 đạt sau vịng thỏa mãn điều kiện hợp lệ Lưu ý rằng, kết thúc vòng 1, htabQ xây dựng từ tabQ láng giềng Q, thành phần dis phần tử cộng thêm độ dài cung liền kề, cấu hình Cs1 có tính chất Cs Lập luận tương tự cho vòng 2, 3, …, ta thấy cấu hình Cs2, Cs3, … thỏa mãn điều kiện hợp lệ ■ Để chứng minh tính tự ổn định giải thuật, ta giả thiết thời gian từ đến T mạng biến đổi từ T trở mạng ổn định Gọi T0 thời điểm thông báo gửi thời điểm T chuyển đến đích Gọi định danh trơi số cấu hình c định danh xuất thuộc htab* thuộc thơng báo gửi mà khơng có xử lý có định danh thành phần liên thông Gọi trôi chứa định danh trơi Ta có nhận xét sau trôi Bổ đề 5.2 Trong thực R, từ thời điểm T0 trở đi, không xuất thêm định danh trôi Chứng minh Từ thời điểm T0 trở đi, khơng có thơng báo gửi từ thành phần liên thông sang thành phần liên thông khác Do vậy, khơng có định danh chuyển từ thành phần liên thông sang thành phần liên thông khác để sinh định danh trôi ■ Bổ đề 5.3 Trong thực R, gọi CT0 cấu hình đạt thời điểm T0 gọi R’ hậu tố R CT0 Ta có, sau i vịng R’, định tuyến, đường từ gốc đến nút có định danh trơi có i liên kết Chứng minh Tại vòng thứ R’, nút có định danh trơi khơng phải nút gốc, đường từ gốc đến nút có định danh trơi có liên kết 67 Xét vòng thứ Theo Bổ đề 5.1, nút J thuộc hTreeK chọn đưa vào tabP nút đường từ K đến J htabK chọn đưa vào tabP nhận K nút liền sau P đường định tuyến Bởi vậy, số liên kết đường từ P đến J tabP số liên kết đường từ K đến J htabK cộng Nếu J nút có định danh trơi số liên kết đường từ K đến J htabK bé 1, số liên kết đường từ P đến J tabP bé Lập luận tương tự cho vòng dẫn đến bổ đề chứng minh ■ Định lý 5.2 Mọi thực đạt đến cấu hình CNF khơng có định danh trơi sau hữu hạn vịng sau T0 Các cấu hình tiếp sau CNF khơng có định danh trôi Chứng minh Theo cách kết nạp nút vào định tuyến thực giải thuật, nút không kết nạp vào định tuyến lần Theo Bổ đề 5.2, từ thời điểm T0 trở không xuất thêm định danh trôi mới, tổng số định danh khác có thành phần liên thông (cả trôi không trôi) hữu hạn Gọi Nmax số định danh khác thành phần liên thơng có nhiều định danh khác Giả sử vòng thứ i ≥ Nmax tính từ thời điểm T0 cịn trôi Theo Bổ đề 5.3, số liên kết đường từ gốc đến nút có định danh trơi bé i, số nút (có định danh khác nhau) đường i+1 > Nmax Điều mâu thuẫn với Nmax số định danh khác thành phần liên thơng có nhiều định danh khác CNF cấu hình đạt sau vịng thứ Nmax.■ Gọi dmax đường kính lớn thành phần liên thơng Gọi MINLEN độ dài liên kết ngắn MAXLEN độ dài liên kết dài Xét cấu hình bất kỳ, với P, Q hai xử lý bất kỳ, xét đường từ P đến Q tabP Nếu mạng thực có đường từ P đến Q đường tabP ta gọi đường tabP đường thực, ngược lại ta gọi đường tabP không thực Bộ  tabP ứng với đường thực gọi thực,  tabP ứng với đường không thực gọi không thực Bổ đề 5.4 Với thực R bất kỳ, gọi R’’ hậu tố R sau cấu hình CNF Sau dmax vòng đầu R’’, với P, Q thuộc thành phần liên thông, tabP bao hàm t = 68 (1); sau dmax*MAXLEN/MINLEN+1 vòng t.dis lớn khoảng cách từ P đến Q t thực, t.dis lớn khoảng cách từ P đến Q t không thực (2) Chứng minh Sau vòng thứ nhất, láng giềng Q nhận từ Q Sau vòng thứ hai, xử lý cách Q hai chặng nhận từ xử lý láng giềng Q Sau vòng thứ ba, xử lý cách Q ba chặng nhận từ xử lý cách Q hai chặng, … Như vậy, sau dmax vòng, xử lý thành phần liên thơng Q có định tuyến Phần thứ bổ đề chứng minh Xét cấu hình đạt sau dmax*MAXLEN/MINLEN+1 vịng từ CNF Trường hợp đường từ P đến Q tabP thực: Dĩ nhiên độ dài đường xét lớn độ dài đường ngắn từ P đến Q, tức t.dis t =  tabP lớn khoảng cách từ P đến Q Trường hợp đường từ P đến Q tabP không thực: Gọi đường L Đường phải xây dựng từ đường không thực L1 khác đến Q láng giềng K P vòng thứ dmax*MAXLEN/MINLEN Tương tự, L1 phải xây dựng từ đường không thực L2 khác láng giềng K vòng thứ dmax*MAXLEN/MINLEN-1, … Cứ lập luận vậy, L phải xây dựng từ đường không thực L dmax*MAXLEN/MINLEN xử lý thành phần liên thơng vịng Vì L có L1 liên kết, L1 có L2 liên kết, L2 có L3 liên kết, … nên L có dmax*MAXLEN/MINLEN liên kết, độ dài L dmax*MAXLEN lớn đường thực nên lớn độ dài đường ngắn từ P đến Q Nói cách khác, t.dis  tabP lớn khoảng cách từ P đến Q Phần (2) bổ đề chứng minh ■ Bổ đề với htab* cuối vịng htab* tab* với dis phần tử cộng thêm độ dài cung liền kề Gọi CM cấu hình đạt sau CNF sau dmax*MAXLEN/MINLEN+1 vịng, ta có bổ đề sau 69 Bổ đề 5.5 Với thực R bất kỳ, gọi R’’’ hậu tố R sau cấu hình CM Với P, sau vịng thứ i R’’’, có min(i, cP) xử lý thành phần liên thông P xác định đường đến P – định tuyến có thực với dis độ dài đường ngắn đến P, n nút trước P, a nút liền kề đường ngắn đến P - cP số xử lý thành phần liên thông P; vòng thứ i Q xác định đường đến P vịng Q xác định đường đến P Chứng minh Trường hợp i = 1: Vì vịng P đưa vào tabP nên P nút xác định đường đến P từ vòng Trường hợp i = 2: Mọi láng giềng P nhận từ P, cập nhật dis với độ dài cung liền kề lưu htabP Láng giềng K gần P xây dựng định tuyến cho mình, xác định đường đến P dựa định tuyến nhận trước Theo Bổ đề 5.4, tất khơng thực có dis lớn độ dài đường đến P, tất thực có dis lớn độ dài đường đến P Trong số thực có có dis độ dài đường đến P (bộ P gửi đến), theo giải thuật chọn có dis nhỏ nhất, thực có dis độ dài đường đến P chọn Nói cách khác, đường đến P xác định Khi thực chọn để đưa vào bảng định tuyến, thành phần a chỉnh sửa phù hợp với đường Trường hợp i > 2: Gọi tập xử lý xác định đường đến P từ vòng i-1 CP Bộ xử lý ngồi CP, gần P nhất, liền kề với xử lý thuộc CP có thực có dis độ dài đường đến P, thực khác có dis lớn độ dài đường đến P, không thực có dis lớn độ dài đường đến P, nên thực có dis độ dài đường đến P chọn Thành phần a chọn chỉnh sửa phù hợp với đường mới.■ Định lý 5.3 Giải thuật đề xuất tự ổn định với LE Chứng minh Gọi cmax số xử lý thành phần liên thơng có nhiều xử lý Theo Bổ đề 5.5, cấu hình Cs đạt sau cmax vịng kể từ cấu hình CM, xử lý xác định đường đến tất xử lý thành phần liên thơng 70 Định lý 5.2 cho thấy cấu hình Cs khơng có trơi Như vậy, cấu hình Cs, xử lý có định tuyến đúng, định tuyến cập nhật láng giềng, tăng thành phần dis theo độ dài cung liền kề Định lý 5.1 cho thấy Cs cấu hình an tồn.■ 5.7 Đánh giá giải thuật  Độ phức tạp thời gian: Theo chứng minh trên, thực hiện, từ cấu hình CT0, giải thuật cần Nmax vịng để đạt cấu hình CNF, cần Nmax + dmax*MAXLEN/MINLEN+1 vịng để đạt cấu hình CM, cần Nmax + dmax*MAXLEN/MINLEN+1 +cmax vòng để tự ổn định - đạt cấu hình Cs Các ước lượng cận Như vậy, độ phức tạp thời gian giải thuật O(dmax)  Độ phức tạp thông báo: Trong vòng, xử lý thực bước phát tỏa nguyên thủy gửi kết tính tốn (bảng định tuyến) đến láng giềng Như vậy, vòng, liên kết có thơng báo, thơng báo theo chiều Số thông báo gửi/nhận từ thời điểm CT0 đến lúc ổn định ước lượng 2*L*(Nmax+ dmax*MAXLEN/MINLEN+1 +cmax), L số liên kết Có thể giảm kích thước thơng báo khơng cần gửi thành phần a phần tử bảng định tuyến Như chứng minh trên, giải thuật tự loại trơi, khơng cần tích hợp giải thuật đếm giải thuật Shlomi Dolev Ngồi khả tự loại trơi, giải thuật cịn có khả tự loại vịng lặp định tuyến phát biểu chứng minh khẳng định sau Khẳng định Trong thực hiện, sau hữu hạn vịng khơng có vịng lặp định tuyến tồn Chứng minh Giả sử nút I1, I2, …, In tạo vòng lặp định tuyến đến J Theo Bổ đề 5.1: - Đường từ I1 đến J nối tiếp liên kết (I1, I2) với đường từ I2 đến J - Đường từ I2 đến J nối tiếp liên kết (I2, I3) với đường từ I3 đến J 71 -… - Đường từ In-1 đến J nối tiếp liên kết (In-1, In) với đường từ In đến J - Đường từ In đến J nối tiếp liên kết (In, I1) với đường từ I1 đến J Như vậy, bảng định định tuyến Ik, 1≤k≤ n, gửi hết vịng I1, đường đến J I1-I2-…-In - I1 không chấp nhận I1, I2 không chọn nút liền kề đường đến J nữa, vòng lặp định tuyến gỡ bỏ Điều tương tự xảy nút I2, I3, …, In.■ Ta chứng minh giải thuật Humblet khơng tạo vịng lặp định tuyến vĩnh viễn tương tự chứng minh cho giải thuật Một vài so sánh giải thuật trình bày luận văn tóm tắt bảng sau Bảng So sánh giải thuật định tuyến phân tán Tiêu chí Mạng Giải thuật Netchange Giải thuật Humblet Giải thuật Shlomi Dolev Giải thuật đề xuất Vô hướng Kích Vơ hướng Kích Vơ hướng Kích Vơ hướng Kích thước giới hạn thước giới hạn thước giới hạn thước không giới hạn Đáp ứng thay đổi tôpô mạng Có Có Có Có Yêu cầu định tuyến Số chặng Đường ngắn Số chặng Đường ngắn Khơng Khơng Có Có Có Có Có Có Tự phá bỏ vịng lặp định tuyến Khơng Có Khơng Có Cộng tác điểm đích Khơng Có Khơng Có Xử lý trơi Khơng Tự loại trơi Thông qua giải thuật đếm Tự loại trôi Độ phức tạp Không đánh giá O(dmax) O(dmax) O(dmax) Tự ổn định Tạo vòng lặp định tuyến 72 KẾT LUẬN Trong luận văn này, tơi đã: - Hệ thống hóa vấn đề hệ phân tán mơ hình hệ phân tán - Hệ thống hóa vấn đề tự ổn định xét số giải thuật tự ổn định - Hệ thống hóa tốn định tuyến, phân loại giải thuật định tuyến xét số giải thuật định tuyến không tự ổn định - Nghiên cứu giải thuật định tuyến tự ổn định Shlomi Dolev - Đề xuất giải thuật định tuyến phân tán tự ổn định, có cộng tác điểm đích khơng tạo vịng lặp định tuyến vĩnh viễn dựa hai giải thuật định tuyến: định tuyến khơng tự ổn định, có cộng tác điểm đích Humblet định tuyến tự ổn định, độc lập điểm đích Shlomi Dolev - Chứng minh tính đánh giá giải thuật đề xuất so sánh với giải thuật trình bày trước Có thể nói, tự ổn định tính chất quan trọng cần có hệ thống giải thuật phân tán, có mạng máy tính giải thuật định tuyến Tự ổn định nghiên cứu nhiều nơi giới vấn đề Việt Nam Tuy nhiên, theo tính tất yếu cần thiết tự ổn định, hy vọng năm tới, nhiều nhà khoa học Việt Nam nghiên cứu có sản phẩm tự ổn định Tự ổn định áp dụng vào giải thuật định tuyến kết hợp tự nhiên cần thiết Nếu có giao thức định tuyến tự ổn định tầng giao vận mạng máy tính n tâm tính ổn định mạng Nhiều vấn đề giải thuật định tuyến cộng tác điểm đích, khơng vịng lặp định tuyến, tự ổn định đã, tiếp tục nghiên cứu Tôi xin chân thành cảm ơn thầy cô Trường Đại học Công nghệ - ĐH QGHN, thầy cô Viện Công nghệ Thông tin mang lại cho học viên học hữu ích suốt khóa học Đặc biệt, xin chân thành cảm ơn thầy giáo, TS Nguyễn Đại Thọ, giới thiệu giúp đỡ hướng nghiên cứu thú vị - phân tán tự ổn định Cảm ơn thầy tận tình hướng dẫn tơi hồn thành luận văn cao học 73 TÀI LIỆU THAM KHẢO Tài liệu tiếng Việt: [1] Vũ Duy Lợi, Mạng thơng tin máy tính: kiến trúc, ngun tắc hiệu suất hoạt động, NXB Thế giới, 2002 [2] Nguyễn Đại Thọ, Tập giảng Các giải thuật phân tán, 2005 Tài liệu tiếng Anh: [3] Andrew S Tanenbaum, Computer Networks, Prentice Hall, New Jersey, Fourth Edition, 2003 [4] Edsger W Dijkstra, Self-stabilizing systems in spite of distributed control, Comm ACM 17 November 1974, 643-644 [5] Gerard Tel Introduction to Distributed Algorithms, Second Edition Cambridge University Press, 2000 [6] Hagit Attiya, Jenifer Welch, Distributed computing: Fundamentals, simulations and advanced topics, Second Edition, John Wiley & Sons, 2004 [7] J J Garcia-Luna-Aceves, Loop-free routing using diffusing computations, IEEE/ACM Trans Networking 1.(1), February 1993, 130141 [8] Jorge A Cobb and Mohamed G Gouda, Stabilization of General LoopFree Routing, Journal of Parallel and Distributed Computing 62, 922944 (2002) [9] Mischa Schwartz, Telecommunication Networks: Protocols, Modeling and Analysis, Addition-Wesley, Massachusetts, 1987 [10] Nancy A Lynch Distributed Algorithms Morgan Kaufmann, 1997 [11] Pierre A Humblet, Another adaptive distributed shortest path algorithm, May 1990 [12] Radia Perlman, Interconnections, Second edition, bridges, routers, switches, and internetworking protocols, Addison-Wesley, chapter 12 [13] Shlomi Dolev, Self-stabilization, The MIT Press [14] Shlomi Dolev, Self-stabilizing rounting and related protocols, Journal of 74 parallel and distributed computing 42, 122-127 (1997) [15] Valmir C Barbosa An Introduction to Distributed Algorithms MIT Press, 1996 [16] Vijay K Garg Elements of Distributed Computing John Wiley & Sons, 2002 [17] Vijay K Garg Concurrent and Distributed Computing in Java John Wiley & Sons, 2004 [18] William Stallings, Data & Computer Communications, Prentice Hall, New Jersey, Sixth Edition, 2000 Thank you for evaluating AnyBizSoft PDF Merger! To remove this page, please register your program! Go to Purchase Now>> AnyBizSoft PDF Merger  Merge multiple PDF files into one  Select page range of PDF to merge  Select specific page(s) to merge  Extract page(s) from different PDF files and merge into one ... 3.3.2 Định tuyến phân tán có/khơng có cộng tác điểm đích Một tính chất dùng để phân loại giải thuật định tuyến theo véctơ khoảng cách, hay định tuyến phân tán, thực giải thuật có cộng tác điểm đích. .. trình bày giải thuật định tuyến phân tán tự ổn định, độc lập điểm đích Shlomi Dolev chương tiếp theo, xin đưa giải thuật định tuyến phân tán tự ổn định khác có cộng tác điểm đích 4.1 Mơ tả chung... tự ổn định Sau phần trình bày khái niệm, mơ hình hóa, vai trò tự ổn định, phương pháp đánh giá giải thuật tự ổn định phần trình bày ví dụ giải thuật tự ổn định Hai giải thuật phân tán tự ổn định

Ngày đăng: 16/03/2021, 10:04

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

TÀI LIỆU LIÊN QUAN

w