Xương sống OSPF
Tại sao khu vực 0 là khu vực xương sống trong OSPF? Tại sao tất cả các khu vực khác phải kết nối với nó?
Điều này được giải thích rất rõ trong RFC 3509, Phần 1.2 1 :
1.2 Động lực
Trong các miền OSPF, cấu trúc liên kết vùng bị hạn chế do đó phải có vùng xương sống (vùng 0) và tất cả các vùng khác phải có kết nối vật lý hoặc ảo với đường trục. Lý do cho cấu trúc liên kết giống như ngôi sao này là do định tuyến giữa các khu vực OSPF sử dụng phương pháp vectơ khoảng cách và hệ thống phân cấp khu vực nghiêm ngặt cho phép tránh được vấn đề "đếm đến vô tận". OSPF ngăn chặn các vòng định tuyến giữa các khu vực bằng cách thực hiện cơ chế phân chia đường chân trời, cho phép các ABR chỉ tiêm vào xương sống Tóm tắt-LSA có nguồn gốc từ các tuyến trong khu vực và hạn chế tính toán SPF của ABR chỉ xem xét Tóm tắt-LSA trong khu vực xương sống cơ sở dữ liệu liên kết trạng thái.
OSPF thường được coi là một giao thức trạng thái liên kết . Điều mà một số người bỏ lỡ là OSPF sử dụng cả thuật toán giao thức trạng thái liên kết và giao thức vector khoảng cách .
- Các tuyến trong đường trục hoặc khu vực không có đường trục được tính như một giao thức trạng thái liên kết thực hiện ( thuật toán của ref Dijkstra ).
- Khi OSPF phải thực hiện các tuyến đường không xương sống qua đường trục, nó sử dụng một số hành vi vectơ khoảng cách (tức là các phần của thuật toán Bellman Ford ) để truyền các số liệu LSA Type3 vào các khu vực không có đường trục.
Ví dụ đơn giản về hành vi vectơ khoảng cách của OSPF :
<-- Area 5 --><-- Area 0 --><-- Area 4 -->
R5-----------R1-----------R2------------R3---------------------R4
Cost 3 Cost 5 Cost 7 Cost 12
LSA--> LSA-->
Type3 LSA Type3 LSA
{From R1} {From R2}
R5 cost is 3 R5 cost is 8
Xem xét những gì xảy ra với tuyến đường / 32 Loopback cho R5.
- R5 gửi LSA Type1 chứa / 32 Loopback
- R1 (Khu vực 5 ABR), được kết nối với Khu vực 0; nó dịch LS1 Type1 thành LS3 Type3 với chi phí là 3.
- R2 (Khu vực 4 ABR) nhận Loại 3 LSA của R1 (số liệu 3) và thay đổi số liệu thành Loopback của R5, dựa trên chi phí của R2 thành R1 . Bây giờ Type3 LSA cho R5 của R2 có giá 8. Đây là hành vi vectơ khoảng cách tôi đã đề cập ở trên.
Yêu cầu tất cả các tuyến đường không phải đường trục đi qua đường trục là một cơ chế ngăn ngừa vòng lặp.
Kết nối các khu vực OSPF không xương sống tại ABR
Nếu 2 khu vực không được kết nối qua khu vực 0 (không rõ ràng), làm thế nào OSPF hoạt động như một giao thức trạng thái liên kết làm tăng khả năng các vòng lặp định tuyến?
Như chúng ta đã thấy ở trên, OSPF sử dụng hành vi vectơ khoảng cách để gửi các tuyến qua đường trục Khu vực 0. Các giao thức vectơ khoảng cách có các giới hạn nổi tiếng, chẳng hạn như bài toán đếm đến vô cực . OSPF sẽ dễ bị tổn thương với các vấn đề tương tự, nếu chúng ta không có ranh giới về hành vi của nó.
1 RFC 3509 mô tả hành vi ABR của Cisco IOS