Khuyếch tán cập nhật thuật toán
Từ Wikipedia, bách khoa toàn thư miễn phí
DUAL, sự khuếch tán Cập nhật thuật toán, là thuật toán được sử dụng bởi EIGRP của Cisco [1] giao thức định tuyến để đảm bảo rằng một tuyến đường nhất định được tính lại kể trên toàn cầu bất cứ khi nào nó có thể gây ra một vòng lặp định tuyến. Nó được phát triển bởi JJ Garcia Luna-Aceves tại SRI International. Theo Cisco, tên đầy đủ của thuật toán là máy hữu hạn nhà nước DUAL (DUAL FSM). EIGRP chịu trách nhiệm cho việc định tuyến trong một hệ thống tự trị và DUAL phản ứng với những thay đổi trong cấu trúc liên kết tuyến và tự động điều chỉnh các bảng định tuyến của router tự động.
EIGRP sử dụng một điều kiện khả thi để đảm bảo rằng chỉ có các tuyến đường loop-free là bao giờ chọn. Các điều kiện khả thi là bảo thủ: khi điều kiện là đúng, không có vòng lặp có thể xảy ra, nhưng sức mạnh tình trạng dưới một số trường hợp từ chối tất cả các tuyến đường đến một đích đến mặc dù một số là loop-free.
Khi không có lộ trình khả thi cho một điểm đến có sẵn, các thuật toán DUAL [2] gọi một khuếch tán Tính [3] để đảm bảo rằng tất cả các dấu vết của các tuyến đường có vấn đề đã được loại trừ khỏi mạng. Tại thời điểm đó các thuật toán Bellman-Ford bình thường được sử dụng để khôi phục lại một con đường mới.
Hoạt động [sửa]
DUAL sử dụng ba bảng riêng biệt cho các tính toán lộ trình. Các bảng này được tạo ra sử dụng thông tin trao đổi giữa các router EIGRP. Các thông tin khác nhau hơn là trao đổi của các giao thức định tuyến link-state. Trong EIGRP, các thông tin trao đổi bao gồm các tuyến đường, các "số liệu" hoặc chi phí của từng tuyến, và các thông tin cần thiết để hình thành một mối quan hệ láng giềng (như AS số, giờ, và các giá trị K). Ba bảng và chức năng của mình một cách chi tiết như sau:
Neighbor bảng chứa thông tin về tất cả các router kết nối trực tiếp khác. Một bảng riêng biệt tồn tại cho mỗi giao thức được hỗ trợ (IP, IPX, vv). Mỗi mục tương ứng với một người hàng xóm với mô tả của giao diện mạng và địa chỉ. Ngoài ra, một bộ đếm thời gian được khởi tạo để kích hoạt các phát hiện định kỳ cho dù kết nối vẫn còn sống. Điều này đạt được thông qua các gói "Hello". Nếu một "Hello" gói không nhận được từ một người hàng xóm trong một thời gian quy định, các bộ định tuyến được giả xuống và lấy ra từ bảng láng giềng.
Topology bảng chứa các số liệu (thông tin chi phí) của tất cả các tuyến đường đến đích nào trong hệ thống tự trị . Thông tin này được nhận từ router láng giềng chứa trong bảng Neighbor. Các chính (kế) và trung học (kế khả thi) tới điểm đến sẽ được xác định với các thông tin trong bảng topology. Trong số những thứ khác, mỗi mục trong bảng topology chứa sau đây:
"FD (cách khả thi)": Các số liệu tính toán của một tuyến đường đến một địa điểm trong hệ thống tự trị.
"RD (Báo cáo cách)": Các số liệu cho một điểm đến như quảng cáo bởi một router láng giềng. RD được sử dụng để tính toán các FD, và để xác định các tuyến đường đáp ứng các điều kiện "khả thi".
Route Status: Một con đường được đánh dấu hoặc là "hoạt động" hoặc "thụ động". "Thụ động" đường bay ổn định và có thể được sử dụng để truyền dữ liệu. "Active" tuyến đường đang được tính toán lại, và / hoặc không có sẵn.
Routing bảng chứa các tuyến đường tốt nhất (s) đến một đích (về mức thấp nhất "số liệu"). Những đường bay này là những người kế từ bảng topology.
DUAL đánh giá các dữ liệu nhận được từ các router khác trong bảng topology và tính toán chính (kế) và trung học (kế khả thi) các tuyến đường. Các con đường chính thường là con đường với số liệu thấp nhất để đạt đến đích, và con đường dư thừa là con đường với chi phí thấp nhất thứ hai (nếu nó đáp ứng các điều kiện khả thi). Có thể có nhiều kế thừa và nhiều người kế khả thi. Cả hai người thừa kế và người thừa kế khả thi được duy trì trong bảng topology, nhưng chỉ những người thừa kế được thêm vào bảng định tuyến và sử dụng để định tuyến các gói.
Đối với một con đường để trở thành một kế khả thi, RD của nó phải nhỏ hơn FD của sự kế thừa. Nếu điều kiện khả thi này được đáp ứng, không có cách nào mà thêm tuyến đường này vào bảng định tuyến có thể gây ra một vòng lặp.
Nếu tất cả các tuyến đường kế đến một đích đến thất bại, kế khả thi trở thành người kế nhiệm và ngay lập tức được thêm vào bảng định tuyến. Nếu không có kế khả thi trong bảng topology, một quá trình truy vấn được bắt đầu để tìm một con đường mới.
Ví dụ [sửa]
Chú thích:
+ = Router
- hay | = Liên kết
(X) = Metric của liên kết
A (2) B (1) C
+ - - - - - + - - - - - +
| |
(2) | | (3)
| |
+ - - - - - +
D (1) E
Bây giờ một khách hàng trên router E muốn nói chuyện với một khách hàng trên router A. Đó là một tuyến giữa router A và router E phải có sẵn. Tuyến đường này được tính như sau:
Những người hàng xóm ngay lập tức của router E là bộ định tuyến C và router D. DUAL trong router E hỏi cho khoảng cách báo cáo (RD) từ router C và D tương ứng với router A. Sau đây là kết quả:
Điểm đến: Router A
qua D: RD
đang được dịch, vui lòng đợi..
