Giao thức định tuyến OSPF u 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ở.. Giao thức định tuyến OSPF u OSPF cho mạng lớn được phân c
Trang 2Giao thức định tuyến OSPF
u 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ở
u Thuật toán đòi hỏi các nút mạng có đầy
đủ thông tin về toàn bộ topo của mạng
u OSPF đựơc mô tả trong nhiều tài liệu của IETF (Internet Engineering Task Force)
u OSPF v2: RFC2328
u OSPF v3: RFC5340
Trang 3Giao thức định tuyến OSPF
u OSPF khắc phục được các nhược điểm của RIP
u OSPF có khả năng mở rộng, phù hợp với các hệ
thống mạng hiện đại
Hình 4: Mạng OSPF lớn được thiết kế phân cấp và chia thành
nhiều vùng
Trang 4Giao thức định tuyến OSPF
u OSPF cho mạng lớn được phân cấp:
u chia thành nhiều vùng
u Các vùng đều được kết nối vào vùng vùng xương sống
(backbone) là vùng 0
Trang 5Giao thức định tuyến OSPF
u Vùng trong OSPF được định danh bởi bits, và cấu trúc giống như địa chỉ IP
32-(cũng có thể được định danh với một số
thập phân)
u 0.0.0.0 được sử dụng cho vùng backbone
Trang 6Giao thức định tuyến OSPF
u Các vùng mạng phải được kết nối vật lý
vào mạng backbone
Mô hình mạng OSPF lớn thực tế
Trang 7Giao thức định tuyến OSPF
u Đặc điểm thiết kế phân cấp:
ü Thông tin trạng thái liên kết, topo của mỗi vùng không
được quảng bá ra vùng ngoài
ü Router kết nối một vùng và vùng 0 (backbone) là router
biên
ü 2 router biên của cùng 1 vùng được liên kết với nhau
trong vùng 0 bằng liên kết ảo
ü Cost của liên kết ảo là cost đi giữa 2 router biên trong
vùng của nó
ü Các tuyến đường nội vùng gọi là intra-area routes
ü Các tuyến đường ngoại vùng gọi là inter-area routes
ü Các tuyến đường học được từ giao thức định tuyến liên
vùng gọi la external routes
Trang 8Giao thức định tuyến OSPF
u Ưu điểm của thiết kế phân cấp trong
Trang 9Giao thức định tuyến OSPF
u Đặc điểm của giao thức OSPF:
ü Sử dụng giải thuật đường ngắn nhất
ü Chỉ cập nhật khi có sự kiện xảy ra
ü Gửi gói thông tin về trạng thái các liên kết cho tất cả các router trong mạng
ü Mỗi router có cái nhìn đầy đủ về cấu trúc hệ thống mạng
ü Tất cả các gói tin đều được xác thực
ü Đóng gói gói tin OSPF trực tiếp trong IP
Trang 10– –
Trang 11Giao thức định tuyến OSPF
u OSPF định tuyến theo trạng thái liên kết xác định các
router láng giềng và thiết lập mối quan hệ với các láng giềng này
Hình 5: Link – là một cổng/ interface trên router
Link-state: trạng thái của một liên kết giữa hai router, bao gồm trạng thái của một cổng trên router và mối quan hệ giữa nó với router láng giềng kết
nối vào cổng đo
Trang 12Giao thức định tuyến OSPF
u Mỗi router áp dụng thuật toán đường đi ngắn (chi phí nhỏ nhất) lên
cơ sở dữ liệu của nó để tính đường đến tất cả các mạng đích
u Mỗi liên kết có chi phí tương ứng Giá trị có thể được thiết lập bởi quản trị VD: khoảng cách, throughput v.v
Hình 4: Cost – giá trị chi phí đặt cho mỗi liên kết
Trang 13•
– –
•
•
– – – –
Trang 14Giao thức định tuyến OSPF
u Các OSPF router phải thiết lập mối quan hệ láng
giềng để trao đổi thông tin định tuyến
u Trong mỗi một mạng IP kết nối vào router, nó đều cố gắng ít nhất là trở thành một láng giềng hoặc là láng giềng thân mật với một router khác
u Router OSPF quyết định chọn router nào làm láng
giềng thân mật là tuỳ thuộc vào mạng kết nối của nó
u Khi mối quan hệ láng giềng thân mật được thiết lập
giữa hai láng giềng với nhau thì thông tin về trạng thái đường liên kết mới được trao đổi
Trang 15Giao thức định tuyến OSPF
u OSPF nhận biết ba loại mạng sau:
ü Mạng quảng bá đa truy cập, ví dụ như mạng Ethernet
ü Mạng điểm-nối-điểm, PPP
ü Mạng không quảng bá đa truy cập (NBMA – Nonbroadcast multi-access), ví dụ như Frame Relay
Trang 16Giao thức định tuyến OSPF
u Một vùng OSPF có thể bao gồm nhiêu đoạn mạng đa truy nhập
u Trong đoạn mạng quảng bá đa truy cập có rất nhiều router kết nối, nếu mỗi router đều thực hiện trao đổi thông tin thì sẽ quá tải
u Giải pháp cho vấn đề quá tải trên là bầu ra một router làm đại diện (DR – Designated Router) Router này sẽ thiết lập mối quan hệ kề với mọi router khác trong mạng quảng bá
u Mọi router còn lại sẽ chỉ gửi thông tin về trạng thái đường liên kết cho DR Sau đó DR sẽ gửi các thông tin này cho mọi router khác
trong mạng bằng địa chỉ mutlticast 224.0.0.5
u DR đóng vai trò như một người phát ngôn chung của đoạn mạng đa truy nhập Nó sẽ lưu giữ topo mạng và thường xuyên gửi update
Trang 17Giao thức định tuyến OSPF
u Cần có một router thứ hai được bầu ra để làm router đại diện dự
phòng (BDR – Backup Designated Router), router này sẽ đảm trách vai trò của DR nếu DR bị sự cố
u Để đảm bảo cả DR và BDR đều nhận được các thông tin về trạng thái đường liên kết từ mọi router khác trong cùng một mạng, người
ta sử dụng địa chỉ multicast 224.0.0.6 cho các router đại diện
Trang 18Giao thức định tuyến OSPF
u Khuôn dạng gói tin OSPF:
Hình 4: Gói tin OSPF
Trang 19Giao thức định tuyến OSPF
u Các loại bản tin trong OSPF:
ü Các bản tin trong OSPF có cùng một thông tin
header
ü
ü Các gói tin phục vụ cho thông tin định tuyến luôn mang trường ToS (Type of Service) là 0
ü Có 5 loại bản tin trong OSPF:
• Gói tin HELLO
• Gói tin Database description
• Gói tin Link-state request
• Gói tin Link-state update
• Gói tin Link-state acknowledgment
Trang 20Giao thức định tuyến OSPF
u Các loại bản tin OSPF:
ü Hello: dùng để thiết lập và duy trì mối quan hệ
hàng xóm với những router khác
ü DBD: Bản tin được dùng để trao đổi toàn bộ
link-state Database phục vụ cho việc đồng bộ các
router kề
ü LSR: Link state request, yêu cầu một thông tin
liên kết cập nhật hơn
ü LSU: Link-state update được sử dụng để trả lời
LSRs cũng như công bố thông tin mới
ü LSAck: khi 1 LSU được nhận,router gửi 1
Link-State Acknowledgement (LSAck) để xác nhận
LSU
Trang 21Gói tin Hello u Định dạng thông điệp bản tin Hello
Hình 4: Gói tin Hello của OSPF
Trang 22Gói tin Hello
u Định dạng thông điệp bản tin Hello của OSPF:
ü Network mask chứa mặt nạ của mạng mà qua đó thông điệp
được gửi đi
ü Dead Timer cho giá trị thời gian (s), sau thời gian này nếu máy lân cận không trả lời thì được xem như đã “chết” (VD: Gấp 4 lần chu kỳ hello)
ü Hello Inter khoảng cách thời gian (s) giữa các thông điệp Hello Mặc định với mạng multiaccess và point-to-point là 10s và 30s với mạng non-broadcast multiaccess (NBMA)
ü Gway Prio là độ ưu tiên của bộ định tuyến này, tính theo số
nguyên và được sử dụng trong việc chọn máy dự phòng cho bộ định tuyến được chỉ định
ü Designated Router và Backup Designated Router chứa địa chỉ của bộ định tuyến của router DR và BDR
ü Neighbor IP Address chứa địa chỉ IP của tất cả các máy lân cận
mà nơi gửi vừa mới nhận các thông điệp Hello từ đó
Trang 23Giao thức Hello
u Hoạt động: Mỗi router gửi multicast gói hello để giữ
liên lạc với các router láng giềng Gói hello mang
thông tin về các mạng kết nối trực tiếp vào router
Hình 4: Sử dụng hello để xác định router láng giềng
Trang 24Giao thức Hello
u Hoạt động của gói tin HELLO:
ü Gửi gói tin multicast đến địa chỉ 224.0.0.5 trên tất cả các interfaces
ü Gửi gói tin unicast trên các đường dẫn ảo
ü Các gói tin HELLO có chu kỳ 10s trên LAN và 30s trên NBMA
ü Sử dụng để thành lập quan hệ kết nối với các láng giềng liền kề
Trang 25Gói tin Database description
u Dùng khi các router đồng bộ với nhau :
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version # | 2 | Packet length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Router ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Area ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Checksum | AuType | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Authentication | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Authentication | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Interface MTU | Options |0|0|0|0|0|I|M|MS +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DD sequence number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | +- -+
| | +- An LSA Header -+
| | +- -+
| | +- -+
| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |Moy Standards Track [Page 195]
Trang 26Giao thức định tuyến OSPF
ü Các bộ định tuyến dùng gói tin “database description”
đồng bộ cơ sở dữ liệu cấu hình mạng của chúng
ü Khi trao đổi, một router đóng vài trò là chủ, các router
khác đóng vai trò tớ và đáp trả lại mỗi thông điệp
“database description” này
ü Bit I được set là 1 với gói đầu tiên
ü Bit M được set là 1 nếu có thêm các gói tiếp theo sau
ü Bit S để chỉ ra rằng thông điệp được gửi đi bởi máy chủ
(1) hay máy thứ (0)
Trang 27Giao thức định tuyến OSPF
u Định dạng gói tin “database description” của OSPF:
ü Vùng Database sequence number được đánh số thứ tự các
thông điệp để nơi nhận có thể biết được cái nào bị mất
Trang 28RFC 2328 OSPF Version 2 April 1998
A.4.1 The LSA header
All LSAs begin with a common 20 byte header This header contains enough information to uniquely identify the LSA (LS type, Link State
ID, and Advertising Router) Multiple instances of the LSA may
exist in the routing domain at the same time It is then necessary
to determine which instance is more recent This is accomplished by examining the LS age, LS sequence number and LS checksum fields that are also contained in the LSA header.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS age | Options | LS type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link State ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Advertising Router | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS sequence number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS checksum | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Trang 29RFC 2328 OSPF Version 2 April 1998
LS Type Link State ID _
1 The originating router’s Router ID.
2 The IP interface address of the network’s Designated Router.
3 The destination network’s IP address.
4 The Router ID of the described AS boundary router.
5 The destination network’s IP address.
Table 16: The LSA’s Link State ID.
additionally have one or more of the destination network’s "host" bits set For example, when originating an AS-
external-LSA for the network 10.0.0.0 with mask of 255.0.0.0, the Link State ID can be set to anything in the range 10.0.0.0 through 10.255.255.255 inclusive (although 10.0.0.0 should be used whenever possible) The freedom to set certain host bits allows a router to originate separate LSAs for two networks having the same address but different masks See Appendix E for details.
When the LSA is describing a network (LS type = 2, 3 or 5), the network’s IP address is easily derived by masking the Link State ID with the network/subnet mask contained in the body of the LSA When the LSA is describing a router (LS type = 1 or 4), the Link State ID is always the described router’s OSPF Router ID.
When an AS-external-LSA (LS Type = 5) is describing a default route, its Link State ID is set to
DefaultDestination (0.0.0.0).
12.1.5 Advertising Router
This field specifies the OSPF Router ID of the LSA’s originator For router-LSAs, this field is identical to the Link State ID field Network-LSAs are originated by the
Moy Standards Track [Page 119]
RFC 2328 OSPF Version 2 April 1998
This field identifies the portion of the internet environment
that is being described by the LSA The contents of this field
depend on the LSA’s LS type For example, in network-LSAs the
Link State ID is set to the IP interface address of the
network’s Designated Router (from which the network’s IP address
can be derived) The Link State ID is further discussed in
Section 12.1.4.
Advertising Router
The Router ID of the router that originated the LSA For
example, in network-LSAs this field is equal to the Router ID of
the network’s Designated Router.
LS sequence number
Detects old or duplicate LSAs Successive instances of an LSA
are given successive LS sequence numbers See Section 12.1.6
for more details.
LS checksum
The Fletcher checksum of the complete contents of the LSA,
including the LSA header but excluding the LS age field See
Section 12.1.7 for more details.
Trang 30RFC 2328 OSPF Version 2 April 1998A.4.2 Router-LSAs
Router-LSAs are the Type 1 LSAs Each router in an area originates
a router-LSA The LSA describes the state and cost of the router’s links (i.e., interfaces) to the area All of the router’s links to the area must be described in a single router-LSA For details concerning the construction of router-LSAs, see Section 12.4.1
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS age | Options | 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link State ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Advertising Router | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS sequence number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS checksum | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 0 |V|E|B| 0 | # links | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link Data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | # TOS | metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TOS | 0 | TOS metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Link Data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |