OSPF
Open Shortest Path First, hoặc OSPF, là một trong những giao thức được sử dụng rộng rãi nhất trong các mạng IP hiện nay. Nó hoạt động tốt trong các mạng lớn, đảm bảo định tuyến không có vòng lặp, là một giao thức không phân lớp, hội tụ nhanh chóng và là chuẩn mở hoạt động tốt trên các thiết bị của nhiều nhà cung cấp. Chỉ số của OSPF là chi phí cho mỗi liên kết và không bao gồm toàn bộ đường dẫn. OSPF không trao đổi các bảng định tuyến mà thay vào đó gửi các quảng cáo liên kết (LSA), mô tả cấu trúc liên kết mạng mà router sử dụng để xây dựng cơ sở dữ liệu trạng thái kết nối (LSDB) hoặc bảng định tuyến của nó. LSDB là một cấu trúc liên kết được biểu diễn dưới dạng máy tính. LSDB cho phép mỗi router tạo một bảng với tất cả các kết nối mạng giữa các router và các giao diện của chúng - tương tự như một sơ đồ được tạo ra để tạo tài liệu cho một mạng. Các router trong cùng một khu vực sẽ nhận được cùng một LSA. Router được chỉ định (DR) là router dẫn đầu hoặc làm chủ cho các khu vực mạng. Nếu DR không thành công thì router chỉ định sao lưu (BDR) sẽ tiếp quản DR. OSPF sử dụng hai địa chỉ multicast: 224.0.0.5 được sử dụng để nhận các cập nhật OSPF và 224.0.0.6 được DR sử dụng để nhận các bản cập nhật.
Hoạt động của OSPF
Để tạo và duy trì thông tin định tuyến, các bộ định tuyến OSPF hoàn thành quá trình :
Thiết lập mối quan hệ hàng xóm: OSPF cho phép router phải hình thành adjacencies với hàng xóm của nó trước khi có thể chia sẻ thông tin với hàng xóm. Một router được kích hoạt OSPF gửi các gói tin Hello ra khỏi tất cả các giao diện cho phép OSPF để xác định xem hàng xóm có hiện diện trên các liên kết đó hay không. Nếu một hàng xóm có mặt, router được kích hoạt OSPF sẽ cố gắng thiết lập neighbor với hàng xóm đó.
Trao đổi quảng cáo trạng thái kết nối: Sau khi thiết lập adjacencies, router sau đó trao đổi quảng cáo trạng thái kết nối (LSA). LSA chứa trạng thái và chi phí của mỗi liên kết được kết nối trực tiếp. Các router tràn LSA của nó đến các láng giềng lân cận. Các láng giềng liền kề nhận LSA ngay lập tức tràn LSA đến các hàng xóm được kết nối trực tiếp khác, cho đến khi tất cả các router trong khu vực đều có LSA.
Xây dựng bảng tô pô: Sau khi nhận được các LSA, các bộ định tuyến hỗ trợ OSPF xây dựng bảng tôpô (LSDB) dựa trên các LSA nhận được. Cơ sở dữ liệu này cuối cùng nắm giữ tất cả thông tin về cấu trúc liên kết của mạng. Điều quan trọng là tất cả các router trong khu vực đều có cùng thông tin trong các LSDB của chúng.
Thực hiện thuật toán SPF: Các bộ định tuyến sau đó thực thi thuật toán SPF tạo ra cây SPF.
Xây dựng bảng định tuyến: Từ cây SPF, các đường dẫn tốt nhất được chèn vào bảng định tuyến. Các quyết định định tuyến được thực hiện dựa trên các mục nhập trong bảng định tuyến.
Hoạt động OSPF
Cấu trúc phân cấp của OSPF
Nếu chạy OSPF trong một mạng đơn giản, số lượng các bộ định tuyến và các liên kết tương đối nhỏ và các đường dẫn tốt nhất đến tất cả các đích sẽ dễ dàng được suy ra. Tuy nhiên, thông tin cần thiết để mô tả các mạng lớn hơn với nhiều bộ định tuyến và liên kết có thể trở nên khá phức tạp. Tính toán SPF so sánh tất cả các đường dẫn có thể có cho các tuyến đường có thể dễ dàng biến thành một phép tính phức tạp và tốn thời gian cho router
Một trong những phương pháp chính để giảm độ phức tạp này và kích thước của cơ sở dữ liệu thông tin trạng thái kết nối là phân vùng miền định tuyến OSPF thành các đơn vị nhỏ hơn được gọi là các vùng hay khu vực. Điều này cũng làm giảm thời gian cần cho thuật toán SPF
Khu vực là một phân đoạn mạng được chia nhỏ thành các miền phát sóng. OSPF có thể được chia thành nhiều khu vực, được kết nối bởi bộ định tuyến biên giới khu vực (ABR). ABR tóm tắt thông tin định tuyến và sau đó gửi thông tin này đến ABR tiếp theo cho các khu vực khác. Mỗi khu vực có một số nhận dạng 32 bit số, mỗi mạng OSPF phải có một Area 0, và mỗi ABR phải được kết nối với Area 0. Một Router ranh giới hệ thống tự trị (ASBR) có thể được sử dụng để kết nối các router OSPF với các giao thức khác.
Phân cấp OSPF
Backbone router:Khu vực 0 được gọi là " khu vực xương sống" hoặc "lõi" của một mạng OSPF. Tất cả các khu vực phải có kết nối với khu vực này. Bộ định tuyến đường trục phải có giao diện đến khu vực 0
Router nội vùng:Router nằm bên trong một khu vực nếu tất cả các giao diện của nó thuộc về cùng một khu vực.
ABR:Một router ABR phải duy trì các cơ sở dữ liệu trạng thái kết nối riêng biệt cho từng vùng mà nó được kết nối trong bộ nhớ. Các router này kết nối nhiều khu vực với area 0
ASBR:Các router ASBR chạy nhiều hơn một giao thức định tuyến và trao đổi thông tin từ các giao thức định tuyến khác vào OSPF, bao gồm BGP, EIGRP và các tuyến tĩnh.
Các loại tin OSPF
OSPF sử dụng năm loại gói giao thức định tuyến, có chung một đầu giao thức phổ biến. Mỗi gói OSPF được đóng gói trực tiếp trong tiêu đề IP. Số giao thức IP cho OSPF là 89.
Type 1: Gói tin Hello: Các gói tin Hello được sử dụng để phát hiện, xây dựng và duy trì các các hàng xóm OSPF. Để thiết lập adjacencies, các đồng nghiệp OSPF ở cả hai bên của liên kết phải đồng ý về một số tham số chứa trong gói Hello để trở thành các nước láng giềng OSPF.
Type 2: Gói Mô tả Cơ sở dữ liệu (DBD): Khi hàng xóm OSPF đã được thiết lập, gói DBD được sử dụng để mô tả LSDB để các router có thể so sánh xem cơ sở dữ liệu có được đồng bộ hay không.
Type 3: Gói yêu cầu liên kết trạng thái (LSR): Khi quá trình đồng bộ hóa cơ sở dữ liệu đồng bộ hóa kết thúc, router vẫn có thể có danh sách các LSA bị thiếu trong cơ sở dữ liệu của nó. Bộ định tuyến sẽ gửi một gói LSR để thông báo cho các láng giềng OSPF gửi phiên bản mới nhất của các LSA còn thiếu.
Type 4: Gói cập nhật trạng thái kết nối (LSU): Có một số loại LSU, được gọi là LSA. Các gói LSU được sử dụng cho lũ lụt của LSA và gửi trả lời LSA cho các gói LSR. Nó chỉ được gửi đến những router hàng xóm được kết nối trực tiếp trước đây đã yêu cầu LSA dưới dạng gói LSR. Trong trường hợp lũ lụt, các bộ định tuyến lân cận chịu trách nhiệm đóng gói lại thông tin LSA nhận được trong các gói LSU mới.
Type 5: Gói thừa nhận trạng thái kết nối (LSAck): LSAcks được sử dụng để làm cho lũ lụt của LSA đáng tin cậy. Mỗi LSA nhận được phải được xác nhận rõ ràng. Nhiều LSA có thể được thừa nhận trong một gói LSAck duy nhất.