Giao thức định tuyến OSPF (Open Shortest Path First)

Comments

OSPF là một giao thức định tuyến theo liên kết trạng thái được triển khai dựa trên các chuẩn mở. OSPF đựơc mô tả trong nhiều tài liệu của IETF (Internet Engineering Task Force). OSPF có khả năng mở rộng, phù hợp với các hệ thống mạng hiện đại.

Quảng Cáo

I.OSPF – Open Shortest Path First là gì?

OSPF – Open Shortest Path First là một giao thức định tuyến link – state điển hình. Đây là một giao thức được sử dụng rộng rãi trong các mạng doanh nghiệp có kích thước lớn. Mỗi router khi chạy giao thức sẽ gửi các trạng thái đường link của nó cho tất cả các router trong vùng (Area). Sau một thời gian trao đổi, các router sẽ đồng nhất được bảng cơ sở dữ liệu trạng thái đường link (Link State Database – LSDB) với nhau, mỗi router đều có được bản đồ mạng của cả vùng. Từ đó mỗi router sẽ chạy giải thuật Dijkstra tính toán ra một cây đường đi ngắn nhất (Shortest Path Tree) và dựa vào cây này để xây dựng nên bảng định tuyến.

Đặc điểm của OSPF:

  1. OSPF là một giao thức link – state.
  2. OSPF có AD = 110.
  3. Protocol  ID = 89.
  4. Metric của OSPF là cost.
  5. OSPF chạy trực tiếp trên nền IP.

II.Hoạt động của OSPF

1.Chọn Router – id:

Đầu tiên, khi một router chạy OSPF, nó phải định danh 1 giá trị router-id. Router–id là một giá trị duy nhất dùng để định danh cho router trong cộng đồng các router chạy OSPF.

Router–id trên router chạy OSPF có định dạng của một địa chỉ IP. Mặc định, tiến trình OSPF trên mỗi router sẽ tự động bầu chọn giá trị router – id là địa chỉ IP cao nhất trong các interface đang active, ưu tiên cổng loopback.

Để đổi lại router–id của tiến trình, phải thực hiện khởi động lại router hoặc gỡ bỏ tiến trình OSPF rồi cấu hình lại, khi đó tiến trình bầu chọn router – id sẽ được thực hiện lại với các interface đang hiện hữu trên router. Có một cách khác để thiết lập lại giá trị router – id là sử dụng câu lệnh “router-id” để thiết lập bằng tay giá trị này trên router:

Router (config) # router ospf 1
Router (config-router) # router-id A.B.C.D

Thực chất, việc up/down của các interface không ảnh hưởng nhiều lắm đến router – id của các router chạy OSPF. Nếu có bổ sung thêm các interface loopback trên router thì router cũng sẽ không đổi lại router – id thành IP của các interface loopback. Hơn nữa, cho dù lúc này cổng F0/1 có down, thì router vẫn giữ giá trị router – id mà nó đã chọn. Có nghĩa là, router – id đơn thuần chỉ là một cái tên. Khi tên đã được chọn thì tiến trình OSPF sẽ làm việc với cái tên này và không thay đổi lại nữa. Cổng có IP được trích xuất làm tên của router lúc này có up/down cũng không ảnh hưởng gì cả.

Bên cạnh đó, nếu tiến trình OSPF đã chạy và router – id đã được thiết lập trước đó, ta phải khởi động lại tiến trình OSPF thì mới áp dụng được giá trị router – id mới được chỉ ra trong câu lệnh “router – id”. Câu lệnh khởi động lại tiến trình OSPF:

Router (config) # clear ip ospf proccess
Reset ALL OSPF proccess? [no]: yes

2.Thiết lập quan hệ láng giềng

Router chạy OSPF sẽ gửi gói tin hello ra tất cả các cổng chạy OSPF, mặc định 10s/lần. Gói tin này được gửi đến địa chỉ multicast dành riêng cho OSPF là 224.0.0.5, đến tất cả các router chạy OSPF khác trên cùng phân đoạn mạng. Mục đích của gói tin hello là giúp cho router tìm kiếm láng giềng, thiết lập và duy trì mối quan hệ này.

Có nhiều thông tin được hai router kết nối trực tiếp trao đổi với nhau qua gói tin hello. Trong các loại thông tin được trao đổi, có năm loại thông tin sau bắt buộc phải match với nhau trên hai router để chúng có thể thiết lập được quan hệ láng giềng với nhau:

  • Area – id.
  • Hello timer và Dead timer.
  • Hai địa chỉ IP đấu nối phải cùng subnet.
  • Thỏa mãn các điều kiện xác thực.
  • Cùng bật hoặc cùng tắt cờ stub.

3.Trao đổi LSDB

LSDB là một tấm bản đồ mạng và router sẽ căn cứ vào đó để tính toán định tuyến. LSDB phải hoàn toàn giống nhau giữa các router cùng vùng. Các router sẽ không trao đổi với nhau cả một bảng LSDB mà sẽ trao đổi với nhau từng đơn vị thông tin gọi là LSA – Link State Advertisement. Các đơn vị thông tin này lại được chứa trong các gói tin cụ thể gọi là LSU – Link State Update mà các router thực sự trao đổi với nhau.

4.Tính toán xây dựng bảng định tuyến

Cách tính toán trong OSPF:

  • Metric = cost = 108/Bandwidth (đơn vị bps).
  • Ethernet (BW = 10Mbps) → cost = 10.
  • Fast Ethernet (BW = 100Mbps) → cost = 1.
  • Serial (BW = 1.544Mbps) → cost = 64 (Bỏ phần thập phân trong phép chia).

III. Cấu hình định tuyến OSPF

Để thực hiện chạy OSPF trên các router, chúng ta sử dụng câu lệnh sau:

Router (config) # router ospf process-id
Router (config-router) # network dia_chi_IP wildcard_mask area area_id

Trong đó:
Process – id: số hiệu của tiến trình OSPF chạy trên router, chỉ có ý nghĩa local trên router.

Để cho một cổng tham gia OSPF, ta thực hiện “network” địa chỉ mạng của cổng đó. Với OSPF ta phải sử dụng thêm wildcard – mask để lấy chính xác subnet tham gia định tuyến. Để tính được giá trị wildcard mask, ta lấy giá trị 255.255.255.255 trừ đi giá trị subnet – mask 255.255.255.0 từng octet một sẽ được kết quả cần tìm. Cách tính này chỉ đúng cho một dải IP liên tiếp, không phải đúng cho mọi trường hợp.

Cấu hình OSPF của router như sau

Cấu hình router R1:

R1(config)#router ospf 1
R1(config-router)#network 192.168.1.0 0.0.0.255 area 0
R1(config-router)#network 192.168.3.0 0.0.0.255 area 0

Cấu hình router R2:

R2(config)#router ospf 1
R2(config-router)#network 192.168.2.0 0.0.0.255 area 0
R2(config-router)#network 192.168.3.0 0.0.0.255 area 0

Tham khảo VNPro, NTPS, Cisco VN

TRƯƠNG THÁI KIỆT

TRƯƠNG THÁI KIỆT

https://thaikiet.com

thaikiet.com là nơi lưu trữ những kiến thức tổng hợp và chia sẻ cá nhân về Mạng Máy Tính, Quản Trị Hệ Thống và Bảo Mật. Với tiêu chí là cùng chia sẽ cùng thành công!

Mail: [email protected]

Bài viết cùng chuyên mục

Các kiểu kết nối trong mạng

Các kiểu kết nối trong mạng

Mạng là kết nối được thực hiện thông qua liên kết giữa hai hoặc nhiều thiết bị. Thiết bị có thể là máy tính, máy in hoặc bất kỳ thiết bị nào khác có khả năng gửi và nhận dữ liệu. Có hai cách để kết...

Sự khác biệt giữa OSPF và RIP

Sự khác biệt giữa OSPF và RIP

Sự khác biệt giữa OSPF và RIP – Bài này sẽ tóm tắt và chỉ ra sự khác biệt giữa 2 giao thức định tuyến là RIP và OSPF. Mở đầu, mình xin điểm qua một số ý chính để các bạn nắm kiến thức cơ bản về 2...

0 Comments

0 Lời bình

Gửi Lời bình

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *