OSPF và IS-IS đều là link-state IGP: mỗi router quảng bá trạng thái link của mình (LSA/LSP), mọi router trong cùng vùng flood để có chung một LSDB, rồi tự chạy SPF (Dijkstra) để tính cây đường ngắn nhất. Trong backbone nhà mạng, IGP chỉ mang loopback và link nội bộ; prefix khách hàng và Internet đi bằng BGP.
Luồng hoạt động chung
flowchart LR A["Hello: tìm neighbor"] --> B["Adjacency Up"] B --> C["Đồng bộ LSDB"] C --> D["Flood LSA/LSP khi topo đổi"] D --> E["Chạy SPF"] E --> F["Cài route vào RIB/FIB"]
Area (OSPF) và level (IS-IS)
| Khái niệm | OSPF | IS-IS |
|---|---|---|
| Backbone | Area 0, mọi area khác phải nối vào area 0 | Level 2: tập router L2 (hoặc L1/L2) liền mạch |
| Vùng không phải backbone | Area khác 0 (stub, totally stubby, NSSA) | Level 1 trong một area |
| Router biên | ABR: interface thuộc nhiều area | Router L1/L2. Ranh giới area nằm trên link, không nằm trong router |
| Đi ra khỏi vùng | Route summary (LSA type 3) từ ABR | Router L1 đi theo default route nhờ ATT bit của router L1/L2 |
| Định danh router | Router ID 32-bit | System ID 6 byte trong NET, ví dụ 49.0001.1920.0000.2001.00 |
Backbone ISP thường chạy IS-IS một level duy nhất (L2-only) cho toàn mạng để đơn giản: không có route leaking, không có ATT bit, thêm PoP mới không phải thiết kế lại area.
So sánh OSPF và IS-IS
| Tiêu chí | OSPFv2 / OSPFv3 | IS-IS |
|---|---|---|
| Đóng gói | Trên IP (protocol 89) | Trực tiếp trên lớp 2 (CLNS), không phụ thuộc IP |
| IPv6 | Cần chạy OSPFv3 riêng | Cùng một tiến trình, thêm address-family IPv6 (single-topology hoặc multi-topology) |
| Đơn vị quảng bá | Nhiều loại LSA (1, 2, 3, 4, 5, 7, ...) | Một LSP mỗi router (có fragment), thông tin nằm trong TLV |
| Mở rộng tính năng | Thêm loại LSA / Opaque LSA | Thêm TLV, dễ mở rộng (SR, TE, Flex-Algo) |
| Bầu chọn trên LAN | DR + BDR, không preempt | DIS, có preempt, không có backup |
| Metric | Cost theo reference bandwidth | Mặc định 10 mỗi interface. Nên bật wide metric (24-bit cho link) |
| Kiểm tra MTU | So MTU trong DBD, lệch thì kẹt EXSTART/EXCHANGE |
Hello padding tới MTU, lệch thì adjacency không lên |
| Bề mặt tấn công | Chạy trên IP, gói giả mạo có thể đến từ xa nếu thiếu auth/filter | Không đi trên IP, chỉ thiết bị trên link kề mới gửi được |
| Hay gặp ở | Enterprise, DC | Backbone ISP, mạng SR-MPLS |
Thuật ngữ IS-IS hay nhầm
| Thuật ngữ | Ý nghĩa |
|---|---|
| NET | Địa chỉ NSAP của router: area.systemID.00. Byte cuối (NSEL) luôn 00 |
| LSP | Gói link-state của IS-IS, tương đương tập LSA của một router |
| CSNP / PSNP | Gói tóm tắt / yêu cầu LSP để đồng bộ LSDB |
| Overload bit | Báo router không dùng để transit (ví dụ lúc boot chờ BGP hội tụ) |
| Point-to-point | Nên cấu hình trên mọi link router-router để bỏ DIS và hội tụ nhanh hơn |
Khi nào dùng
- IS-IS: backbone ISP, mạng chạy SR-MPLS/TI-LFA, mạng dual-stack muốn một tiến trình IGP. Cấu hình xem IS-IS trên IOS XR và Junos.
- OSPF: mạng enterprise/DC sẵn có, thiết bị CE hoặc firewall không hỗ trợ IS-IS.
- Muốn dùng Segment Routing: cả hai đều hỗ trợ, nhưng tài liệu và triển khai SR trên IS-IS phổ biến hơn. Xem Segment Routing.