RT1 được kích hoạt trong mạng đa truy nhập và gửi một gói Hello. Do nó chưa biết được về một Neighbor nào, nên trường Neighbor của gói là rỗng, trường DR và BDR được lập bằng 0.0.0.0.
2. RT2 nhận được gói Hello từ RT1, nó tạo một cấu trúc dữ liệu Neighbor cho RT1 và chuyển trạng thái của RT1 thành Init. RT2 gửi một gói Hello chứa Router ID của RT1 trong trường Neighbor và địa chỉ giao diện của nó trong trường DR.
3. Khi nhận được gói Hello từ RT2, RT1 sẽ biết được Router ID của mình. RT1 tạo một cấu trúc dữ liệu Neighbor cho RT2 và chuyển trạng thái của RT2 sang trạng thái Exstart để chuẩn bị cho việc đàm phán Master/Slave. Sau đó nó tạo một gói DD rỗng (không chứa các Header của các LSA) có số trình tự là x, bit I = 1 (chỉ ra rằng đây là gói DD đầu tiên của RT1), bit M = 1 ( chỉ ra rằng đây không phải là gói DD cuối cùng), bit MS = 1 (chỉ ra rằng RT1 muốn là Master).
4. RT2 chuyển trạng thái của RT1 sang trạng thái Exstart trong lúc nhận gói DD. Sau đó nó gửi một gói DD phản hồi có số trình tự là y. RT2 có Router ID cao hơn RT1 nên nó đặt bit MS = 1. Do gói DD này dùng cho quá trình đàm phán Master/Slave nên nó cũng rỗng như gói đầu tiên.
5. RT1 chấp nhận RT2 là Master và chuyển trạng thái của RT2 sang Exchange. RT1 tạo một gói DD có số trình tự bằng y, bit MS = 0 (chỉ ra rằng nó là Slave). Gói này sẽ chứa các LSA Header từ danh sách tóm tắt trạng thái liên kết của RT1.
6. RT2 chuyển trạng thái của RT1 sang trạng thái Exchange trong khi nhận gói DD của RT1. Nó gửi một gói DD chứa các LSA Header từ danh sách tóm tắt trạng thái liên kết của nó và tăng số trình tự DD lên y + 1 .
106 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 6731 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Giao thức định tuyến OSPF, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
của mỗi node được cập nhật và duy trì sự đồng nhất với các node khác.
Quá trình tràn lụt sử dụng hai loại gói OSPF sau:
Gói cập nhật trạng thái liên kết (loại 4).
Gói xác nhận trạng thái liên kết (loại 5).
Mỗi gói cập nhật và xác nhận trạng thái liên kết có thể mang nhiều LSA. Các LSA được tràn lụt qua liên mạng, nhưng các gói cập nhật và xác nhận chỉ được truyền giữa hai node thông qua Adjacency.
Hình 3.8 Các LSA được truyền qua Adjacency trong các gói cập nhật trạng thái liên kết
Trong mạng Point to Point: Các gói cập nhật được gửi tới địa chỉ multicast AllSPFRouters (224.0.0.5).
Trong mạng Point to Multipoint và liên kết ảo: Các gói cập nhật được truyền Unicast tới địa chỉ giao diện của các Neighbor kế cận.
Trong mạng quảng bá: Các DRother chỉ tạo Adjacency với DR và BDR. Do đó các gói cập nhật được gửi tới địa chỉ AllDRoter (224.0.0.6). Sau đó DR sẽ phát Multicast các gói cập nhật tới tất cả các Router kế cận trong mạng sử dụng địa chỉ AllSPFRouter và các Router nay đến lượt mình sẽ gửi LSA ra tất cả các giao diện khác chạy OSPF của nó.
Hình 3.9 Tràn lụt gói trong mạng quảng bá
3.6.1 Tràn lụt tin cậy sử dụng xác nhận
Mỗi LSA được truyền đi phải được xác nhận. Có hai kiểu xác nhận là: Xác nhận tuyệt đối và xác nhận rõ ràng.
Xác nhận tuyệt đối: Xác nhận tuyệt đối việc đã nhận một LSA bằng cách gửi một gói cập nhật chứa một LSA giống hệt trở lại node nguồn. Xác nhận tuyệt đối sử dụng hiệu quả trong trường hợp Neighbor đang có ý định gửi cập nhật về node gốc.
Xác nhận rõ ràng: Bằng cách gửi gói xác nhận trạng thái liên kết có chứa các LSA Header đủ để nhận dạng các LSA.
Khi LSA được gửi, một phiên bản của LSA được lưu trong danh sách truyền lại trạng thái liên kết. LSA được truyền lại theo chu kì cho đến khi nhận được xác nhận hoặc khi Adjacency bị huỷ bỏ. Các gói cập nhật trạng thái liên kết chứa các LSA truyền lại luôn phát theo kiểu unicast đối với mọi kiểu mạng.
3.6.2 Tràn lụt tin cậy sử dụng số trình tự, tổng kiểm tra, và tuổi
Mỗi LSA chứa ba giá trị là: số trình tự, tổng kiểm tra, và tuổi.
Số trình tự: Sử dụng 32 bit có giá trị từ số trình tự đầu tiên (0x80000001) đến số trình tự lớn nhất (0x7fffffff). Khi Router tạo ra một LSA, nó lập số trình tự của LSA đó bằng số trình tự đầu tiên. Mỗi lần Router tạo ra một phiên bản của LSA, số trình tự lại tăng lên một đơn vị. Nếu số trình tự hiện tại là số trình tự lớn nhất và phải có một phiên bản mới của LSA được tạo ra thì trước tiên Router đặt tuổi của LSA cũ đang tồn tại trong cơ sở dữ liệu của các Neighbor bằng MaxAge và tràn lụt nó trên tất cả các Adjacency. Khi tất cả các Neighbor kế cận biết được tuổi của LSA này là MaxAge thì phiên bản mới của LSA này với số trình tự là số trình tự đầu tiên đã có thể được tràn lụt.
Tổng kiểm tra: Là một số nguyên 16 bit được tính toán dựa trên thuật toán Fletcher. Tổng kiểm tra được tính toán dựa trên toàn bộ LSA ngoại trừ trường tuổi (Trường này thay đổi khi LSA chuyển từ node tới node do đó phải yêu cầu tính lại tổng kiểm tra tại mỗi node). Tổng kiểm tra của mỗi LSA cũng được tính lại năm phút một lần khi chúng cư trú trong cơ sở dữ liệu để đảm bảo LSA không bị thay đổi khi ở trong cơ sở dữ liệu.
Tuổi: Là một số nguyên 16 bit không dấu để chỉ ra tuổi của LSA tính theo giây. Phạm vi của tuổi là từ 0 đến 3600 s (gọi là tuổi cực đại MaxAge). Khi Router tạo ra một LSA, nó lập tuổi của LSA bằng 0. Mỗi khi LSA được chuyển tiếp qua một Router, tuổi của nó sẽ tăng lên một số giây (InfTransDelay giây). Tuổi cũng được tăng lên khi LSA cư trú trong cơ sở dữ liệu. Khi LSA đạt đến tuổi MaxAge, LSA sẽ được tràn lụt lại sau đó bị xoá khỏi cơ sở dữ liệu. Do vậy khi Router cần xoá bỏ một LSA khỏi tất cả cơ sở dữ liệu, nó sẽ đặt tuổi của LSA bằng MaxAge và tràn lụt lại LSA này. Chỉ có Router tạo ra LSA mới có thể làm được điều này.
Khi nhận được nhiều phiên bản LSA giống nhau, Router sẽ xác định LSA mới nhất dựa trên giải thuật sau:
So sánh số trình tự: LSA có số trình tự cao hơn là LSA mới hơn.
Nếu số trình tự bằng nhau, thì so sánh các tổng kiểm tra. LSA có tổng kiểm tra cao nhất là LSA mới nhất.
Nếu tổng kiểm tra bằng nhau thì so sánh tuổi. Nếu chỉ có một LSA có tuổi là MaxAge, nó được coi là gần mới nhất. Ngược lại:
Nếu tuổi của LSA khác nhau hơn mười năm phút (Max Age Diff), LSA có tuổi thấp hơn được chọn. Nếu không có điều kiện nào như trên xảy ra, hai LSA được coi là giống hệt nhau.
3.7 Vùng (Area)
Khi mạng phát triển, cơ sở dữ liệu của mạng tăng theo dẫn đến phải tăng dung lượng bộ nhớ Router. Để giải quyết vấn đề này, người ta sử dụng giải thuật SPF. Nhưng điều này lại tăng gánh nặng sử lí cho CPU.
Lợi ích của việc sử dụng Area: OSPF sử dụng các Area để giảm các ảnh hưởng bất lợi trên. OSPF định nghĩa Area là một nhóm logic các Router và các liên kết giúp phân chia hiệu quả một miền OSPF thành các miền con. Các Router trong một Area sẽ không biết chi tiết cấu hình bên ngoài Area của nó. Do vậy:
Một Router sẽ chỉ phải chia sẻ cơ sở dữ liệu trạng thái liên kết với các Router khác trong Area của nó. Việc giảm kích thước của cơ sở dữ liệu sẽ làm giảm sự va chạm trong bộ nhớ của Router.
Cơ sở dữ liệu nhỏ hơn dẫn đến các LSA phải xử lí ít hơn và làm giảm sự va chạm trong CPU của Router.
Các quá trình tràn lụt gói được giới hạn trong Area.
Area ID: Area được nhận dạng bởi 32 bit Area ID. Area ID có thể được viết dưới dạng số thập phân hoặc số thập phân được ngăn cách bởi các dấu chấm (ví dụ như 0 và 0.0.0.0 là tương đương, hoặc16 và 0.0.0.16; 271 và 0.0.1.15 là tương đương).
Backbone: Area ID 0 được sử dụng cho mạng Backbone. Mạng Backbone là mạng chịu trách nhiệm thông báo các thông tin về cấu hình tổng quát của mỗi Area cho các Area khác.
3.7.1 Area có thể phân chia
Hình 3.10 Sự phân chia của Area
Area có thể phân chia: là Area trong đó một lỗi liên kết sẽ phân chia Area thành hai phần tách biệt nhau. Nếu một Area (không phải là Backbone) bị phân chia, và tất cả các Router ở hai bên phân chia vẫn có thể nhìn thấy ABR (hình 3.10) thì sẽ không có sự phá vỡ nào xảy ra. Backbone sẽ xem các Area phân chia như là hai Area tách biệt.
Khi Area Backbone được phân chia, nó sẽ tạo ra các Area tách biệtvà tạo ra hai miền OSPF tách biệt nhau (hình 3.11).
Hình 3.11 Sự phân chia của Area Backbone
3.7.2 Liên kết ảo
Liên kết ảo là một liên kết nối tới Backbone thông qua một Area khác (không phải là Backbone). Liên kết ảo sử dụng cho các mục đích sau:
Liên kết một Area tới một Backbone thông qua một Area khác (không phải là Backbone) (xem hình 3.12).
Kết nối hai phần của Backbone bị phân chia thông qua một Area (không phải là Backbone) (xem hình 3.13).
Hình 3.12 Liên kết ảo kết nối Area 1 với Area 0 thông qua Area 12
Hình 3.13 Liên kết ảo kết nối hai phần của Backbone thông qua Area 3
Liên kết ảo không gắn với một liên kết vật lí đặc biệt nào. Nó là một đường hầm mà thông qua nó, các gói được định tuyến trên đường đi ngắn nhất từ nguồn đến đích.
3.8 Các loại Router
Hình 3.14 Các loại Router
Có bốn loại Router OSPF là : Router nội, Router biên giới Area, Router Backbone, và Router biên giới hệ thống độc lập (hình 3.14) .
Router nội (Internal Router): là Router mà tất cả các giao diện của nó thuộc về cùng một Area. Các Router này có cơ sở dữ liệu trạng thái liên kết đơn.
Router biên giới Area (Area border Router-ABR): Kết nối một hay nhiều Area tới Backbone và hoạt động như một Gateway đối với lưu lượng liên Area. ABR luôn có ít nhất một giao diện thuộc về mạng Backbone, và phải duy trì cơ sở dữ liệu trạng thái liên kết tách biệt cho mỗi Area liên kết với nó. Vì vậy, ABR thường có bộ nhớ lớn hơn và bộ vi xử lí mạnh hơn so với Router nội. ABR có nhiệm vụ thu thập thông tin cấu hình của các Area gắn với nó cho mạng Backbone, sau đó Backbone sẽ phổ biến lại cho các Area khác.
Router Backbone: là Router có ít nhất một giao diện gắn vào mạng Backbone. Như vậy Router Backbone có thể là một ABR hoặc một Router nào đó thuộc mạng Backbone (Area 0).
Router biên giới hệ thống độc lập (Autonomous System Boundary Router-ASBR): hoạt động như là một Gateway đối với lưu lượng ngoài.
3.9 Cơ sở dữ liệu trạng thái liên kết
Các LSA nhận bởi Router được lưu trong cơ sở dữ liệu trạng thái liên kết của nó. Các LSA này sẽ diễn tả sơ đồ cấu hình Area. Vì mỗi Router trong Area tính toán đường đi ngắn nhất từ cơ sở dữ liệu này, do đó điều kiện tiên quyết để định tuyến chính xác là cơ sở dữ liệu của tất cả các Router trong một Area phải giống nhau.
Khi LSA cư trú trong cơ sở dữ liệu của Router, tuổi của nó sẽ tăng lên tuỳ thuộc vào thời gian cư trú. Nếu tuổi của nó đạt đến MaxAge (1h), nó sẽ bị đào thải khỏi miền OSPF. Để tránh việc các LSA phù hợp bị đào thải do quá tuổi, người ta sử dụng cơ chế “làm tươi trạng thái liên kết”. Cứ sau thời gian LSRefreshtime (30’), Router sẽ tràn lụt bản copy mới của LSA (do nó tạo ra) với số trình tự tăng lên và tuổi bằng không. Trong lúc nhận, các Router khác sẽ thay thế các bản copy LSA cũ và bắt đầu tính tuổi cho bản copy LSA mới.
3.10 Các loại LSA
Bảng sau đây liệt kê các loại LSA được sử dụng trong OSPF.
Type code
Description
1
2
3
4
5
6
7
8
9
10
11
Router LSA
Network LSA
Network Summary LSA
ASBR Summary LSA
AS External LSA
Group Membership LSA
NSSA External LSA
External Attribute LSA
Opaque LSA (link – local scope)
Opaque LSA (Area local scope)
Opaque LSA (As scope)
Router LSA: được tạo ra bởi mọi Router. LSA này chứa danh sách tất cả các liên kết của Router cùng với trạng thái và chi phí (cost) đầu ra của mỗi liên kết. Các LSA này chỉ được tràn lụt trong Area tạo ra nó.
Hình 3.15 Router LSA mô tả tất cả các giao diện của Router
Network LSA: được tạo ra bởi DR trong các mạng đa truy nhập. Network LSA chứa danh sách tất cả các Router gắn với DR và cả DR. Các LSA này được tràn lụt trong Area tạo ra nó.
Hình 3.16 Network LSA mô tả mạng đa truy nhập và tất cả các Router gắn vào mạng
Network Summary LSA: Được tạo ra bởi các ABR. Chúng được gửi vào Area để quảng cáo cho các đích bên ngoài Area đó. Thực tế, các LSA này như một phương tiện mà ABR dùng để nói cho các Router bên trong Area biết các đích bên ngoài mà ABR có thể tiếp cận được. ABR cũng quảng cáo các đích bên trong Area gắn với nó cho các Router bên trong Backbone bằng các LSA này.
Hình 3.17 Các Network Summary LSA mô tả các đích liên miền
LSA gồm cost từ ABR tới đích. Mỗi đích chỉ được quảng cáo bởi một LSA cho dù ABR biết được nhiều đường tới đích đó. Do vậy, nếu ABR biết được nhiều đường tới một đích nào đó trong Area gắn với nó, nó sẽ tạo một Network Summary LSA có cost thấp nhất trong các đường nó biết để gửi vào mạng Backbone. Tương tự như vậy, nếu một ABR nhận được nhiều Network Summary LSA từ các ABR khác thông qua Backbone, nó sẽ chọn LSA có cost thấp nhất và quảng cáo nó vào trong Area (không phải là Backbone) gắn với nó. Khi một Router khác nhận được một Nework Summary LSA từ một ABR, nó không chạy giải thuật SPF. Đúng hơn, nó cộng cost của tuyến tới ABR và cost chứa trong LSA. Tuyến tới đích được quảng cáo bởi ABR được lưu trong bảng định tuyến cùng với cost đã được tính toán. Kiểu định tuyến này ( sử dụng Router trung gian thay vì xác định đường đi đầy đủ tới đích) gọi là định tuyến theo kiểu vector khoảng cách.
Như vậy, OSPF là giao thức trạng thái liên kết trong một Area nhưng lại sử dụng giải thuật vector khoảng cách để định tuyến liên vùng (inter - Area).
ASBR Summary LSA: được tạo ra bởi ABR. Nó giống hệt Network Summary LSA ngoại trừ việc nó dùng để quảng cáo cho các đích đến là ASBR..
Hình 3.18 ASBR Summary LSAquảng cáo các tuyến nối tới ASBR
AS External LSA (Autonomous System External LSA): Được tạo ra bởi các ASBR. Các LSA này dùng để quảng cáo cho các đích bên ngoài hệ thống độc lập OSPF hoặc các tuyến mặc định bên ngoài vào hệ thống độc lập OSPF.
Hình 3.19 AS External LSA quảng cáo các đích bên ngoài vào hệ thống độc lập
AS External LSA là LSA duy nhất trong cơ sở dữ liệu không liên kết với một Area nào. Nó được tràn lụt thông qua hệ thống độc lập OSPF.
LSA hội viên nhóm (Group Membership LSA): Sử dụng trong Multicast OSPF (MOSPF). MOSPF định tuyến các gói từ một nguồn tới nhiều đích hay một nhóm thành viên chia sẻ địa chỉ multicast lớp D.
NSSA External LSA: được tạo ra bởi các ASBR trong các not – so – stubby Area (NSSAs). NSSA External LSA hầu như giống hệt với AS External LSA ngoại trừ việc NSSA External LSA được tràn lụt chỉ trong NSSA tạo ra nó.
External attributes LSA (LSA thuộc tính ngoài): được đề xuất để chạy internal BGP (iBGP) hợp lệ để truyền tải thông tin BGP qua miền OSPF. Tuy nhiên, nó chưa được triển khai.
Opaque LSA (LSA mờ): gồm phần Header tiêu chuẩn và trường thông tin. Trường thông tin có thể sử dụng cho OSPF hoặc bởi các ứng dụng khác để phân phối thông tin qua miền OSPF. LSA này cũng chưa được triển khai.
Khuôn dạng chi tiết của các LSA được trình bày ở phần phụ lục.
3.11 Area cụt (Stub Area)
ASBR quảng cáo cho các đích bên ngoài bằng cách tràn lụt các External LSA qua hệ thống độc lập OSPF. Các LSA này chiếm tỉ lệ lớn trong cơ sở dữ liệu của mỗi Router.
Hình 3.20 Có thể tiết kiệm được bộ nhớ và cải thiện hoạt động bằng cách cấu hình Area 2 là một Stub Area
Ở hình vẽ trên, không phải mọi Router đều cần biết tất cả các đích bên ngoài. Các Router trong Area 2 đều phải gửi các gói đến ABR để biết về ASBR bất kể đích bên ngoài là gì. Vì lí do này Area 2 được cấu hình như một Stub Area.
Stub Area là Area mà trong đó các gói AS External LSA và ASBR LSA không được tràn lụt vào. Các ABR gắn với Stub Area sẽ sử dụng các Network Summary LSA để quảng cáo một tuyến mặc định vào Stub Area. Các Router bên trong Area sẽ sử dụng tuyến mặc định nếu như nó không tìm thấy tuyến nào phù hợp trong bảng định tuyến. Vì tuyến mặc định được quảng cáo bởi Network Summary LSA nên nó sẽ không được quảng cáo ngoài Area.
Hoạt động của các Router trong Stub Area có thể được cải thiện và bảo tồn được bộ nhớ nhờ giảm được kích thước cơ sở dữ liệu của chúng.
3.12 Area cụt hoàn toàn (Totally Stubby Area)
Area cụt hoàn toàn sử dụng các tuyến mặc định để định tuyến các đích bên ngoài đến không chỉ hệ thống độc lập mà còn đến Area. ABR của Area cụt hoàn toàn sẽ ngăn chặn không chỉ các AS External LSA mà còn ngăn chặn tất cả các Summary LSA ngoại trừ các LSA loại 3 dùng để quảng cáo tuyến mặc định.
3.13 Not - So – Stubby Area
Ở hình vẽ dưới (hình 3.21), một Router gắn với một số mạng cụt được nối với mạng OSPF thông qua một Router thuộc Area 2. Router chỉ hỗ trợ RIP do đó Router trong Area 2 cũng phải chạy RIP và chia sẻ thông tin định tuyến về các mạng ngoài vào miền OSPF. Cấu hình này làm cho Area 2 có một Router là ASBR và do đó Area 2 không thể là Stub Area.
Router chạy RIP không cần biết về các tuyến bên trong miền OSPF mà nó chỉ cần biết về tuyến mặc định nối tới ASBR của Area 2. Tuy nhiên, các Router OSPF lại phải biết về các mạng gắn với Router chạy RIP để định tuyến các gói tới chúng.
Hình 3.21
Not – so – stubby Area (NSSA) cho phép các tuyến bên ngoài được quảng cáo vào hệ thống độc lập OSPF trong khi vẫn giữ được các đặc trưng của một Stub Area đối với phần còn lại của hệ thống độc lập. Để làm được điều này, ASBR trong NSSA sẽ tạo ra các LSA loại 7 để quảng cáo cho các đích bên ngoài. Các NSSA External LSA này được tràn lụt trong NSSA nhưng bị chặn lại tại ABR.
Hình 3.22
NSSA External LSA có một bit P trong phần Header của nó gọi là cờ. NSSA ASBR có thể điều chỉnh lập hay xoá bit P. Nếu ABR của NSSA nhận được một LSA loại 7 với bit P được lập (bằng một), nó sẽ chuyển LSA này thành LSa loại 5 và tràn lụt chúng vào các Area khác (hình 3.22).
Nếu bit P = 0, không có sự chuyển đổi nào xảy ra, LSA sẽ không được quảng cáo bên ngoài NSSA.
3.14 Bảng định tuyến
Giải thuật SPF của Dijkstra được sử dụng để tính toán cây đường đi ngắn nhất từ các LSA trong cơ sở dữ liệu trạng thái liên kết. Giải thuật SPF được chạy lần thứ nhất để xây dựng các cành của cây SPF. Giải thuật chạy lần thứ hai để thêm lá vào cây. Các lá chính là các mạng cụt gắn với mỗi Router.
OSPF xác định đường đi ngắn nhất dựa trên một metric tuỳ ý gọi là cost (chi phí) gắn với mỗi giao diện. Cost của một tuyến là tổng các cost của tất cả các giao diện đầu ra tới đích. RFC 2328 không chỉ rõ giá trị cho cost.
3.15 Các loại đường
Có bốn loại đường là: đường nội vùng, đường liên vùng, đường ngoài loại 1, và đường ngoài loại 2.
Đường nội vùng: là đường nối tới các đích trong các Area gắn với Router.
Đường liên vùng: là đường nối tới các đích trong các Area khác nhưng vẫn nằm trong hệ thống độc lập OSPF. Đường liên vùng luôn đi qua ít nhất một ABR.
Đường ngoài loại 1(E1): là đường tới các đích bên ngoài hệ thống độc lập OSPF. Khi một tuyến bên ngoài được quảng các vào một hệ thống độc lập, nó phải được gán một metric có ý nghĩa đối với giao thức định tuyến của hệ thống độc lập. Trong OSPF, ASBR chịu trách nhiệm gán cost cho các tuyến bên ngoài mà nó quảng cáo. Các đường ngoài loại 1 có cost bằng tổng của cost bên ngoài này cộng với cost của đường dẫn tới ASBR.
Đường ngoài loại 2 (E2): cũng là đường tới các đích bên ngoài hệ thông độc lập OSPF nhưng nó không tính phần cost của đường tới ASBR.
Hinh 3.23
Ở hình 3.23, Router A có hai đường tới đích bên ngoài 10.1.2.0. Nếu đích được quảng cáo theo kiểu đường E1, đường A-B-D có cost là 35 (5+20+10) sẽ được chọn so với đường A-C-D có cost là 50 (30+10+10). Nhưng nếu đích được quảng cáo theo kiểu đường E2, thì đường A-C-D có cost là 20 (10+10) sẽ được chọn so với đường A-B-D có cost là 30 (20+10).
3.16 Tra bảng định tuyến
Khi một Router OSPF kiểm tra địa chỉ đích của gói, nó sẽ thực hiện các bước sau để lựa chọn đường đi ngắn nhất:
Chọn tuyến phù hợp nhất với địa chỉ đích. Ví dụ nếu có các thực thể định tuyến ứng với địa chỉ 172.16.64.0/18; 172.16.64.0/24; và 172.16.64.192/27 và địa chỉ đích là 172.16.64.205 thì thực thể cuối cùng sẽ được chọn. Thực thể được chọn luôn là thực thể phù hợp dài nhất (tuyến với mặt nạ địa chỉ dài nhất). Nếu không tìm được tuyến phù hợp, một bản tin ICMP sẽ được gửi về địa chỉ nguồn và gói sẽ bị huỷ bỏ.
Bỏ bớt các thực thể đã chọn bằng cách loại bỏ các loại đường dẫn kem phù hợp hơn. Các loại đường dẫn được phân quyền ưu tiên theo thứ tự sau: (1 là mức ưu tiên cao nhất, 4 là mức ưu tiên thấp nhất).
Đường dẫn nội vùng.
Đường dẫn liên vùng.
Đường ngoài loại 1.
Đường ngoài loại 2.
Nếu có nhiều tuyến có cùng cost, cùng loại đường dẫn tồn tại trong tập cuối cùng, OSPF sẽ sử dụng tất cả các đường dẫn này. Lưu lượng được truyền trên các đường dẫn này theo phương pháp cân bằng tải.
CHƯƠNG 4 ỨNG DỤNG CỦA OSPF
4.1 Ứng dụng của OSPF trong mạng IP phân cấp
4.1.1 Phân cấp trong mạng IP cỡ lớn
Ban đầu, các mạng TCP/IP hoạt động dựa trên các giao thức định tuyến vécter khoảng cách đơn giản và cơ chế đánh địa chỉ IP 32-bit có phân lớp. Các công nghệ này giới hạn khả năng phát triển của mạng. Do vậy hiện nay các nhà thiết kế mạng đã phải từ bỏ các công nghệ này để xây dựng các mạng hiện đại khác có khả năng mở rộng để thích ứng với sự phát triển nhanh và những biến đổi liên tục của mạng. Phần này sẽ giới thiệu các công nghệ mạng có khả năng giải quyết các yêu cầu này.
Mô hình mạng phân cấp và các đặc trưng của mạng phân cấp
Mô hình mạng phân cấp giúp phân chia các vấn đề phức tạp của mạng thành các vấn đề nhỏ hơn và dễ quản lý hơn. Mỗi lớp trong mạng phân cấp chỉ tập trung vào một tập các vấn đề khác nhau. Điều này giúp cho người thiết kế mạng có thể sử dụng một cách tối ưu phần mềm và phần cứng mạng trong việc thiết kế mạng. Ví dụ, các thiết bị ở lớp thấp nhất được tối ưu để chỉ thực hiện chức năng truyền tải.
Mô hình mạng phân cấp 3 lớp (hình vẽ)
Hình 4.1 Mô hình mạng phân cấp ba lớp
Trong mô hình này, các thết bị mạng và các liên kết được nhóm lại với nhau theo ba lớp:
Lớp lõi (core Layer).
Lớp phân phối (Distribution Layer)
Lớp truy nhập (Access Layer)
Ưu điểm của mô hình mạng phân cấp là chúng dễ dàng được module hoá. Các thiết bị trong cùng một lớp thực hiện các chức năng tương tự nhau. Điều này cho phép các nhà quản trị mạng dễ dàng thêm hoặc bớt các thành phần đơn lẻ của mạng.
4.1.2 Chức năng các lớp
a. Lớp lõi
Lớp lõi thực hiện chức năng truyền tải lưu lượng với tốc độ cao đảm bảo độ tin cậy. Các thiết bị ở lớp lõi sẽ chuyển các gói tin nhanh nhất có thể được và chúng có thể đáp ứng được tất cả các nhu cầu về chuyển gói tốc độ cao cho mạng. Các thiết bị này sẽ thực hiện các chức năng sau đối với các gói:
Kiểm tra danh sách truy nhập
Mã hoá dữ liệu
Biên dịch địa chỉ
b. Lớp phân phối
Lớp phân phối được đặt ở giữa lớp truy nhập và lớp lõi giúp phân biệt lớp lõi với phần còn lại của mạng. Mục đích của lớp phân phối là quản lý lưu lượng chuyển vào lớp lõi bằng cách sử dụng các danh sách truy nhập và các phương pháp lọc khác. Do vậy, có thể nói lớp này thực hiện chức năng định nghĩa các chính sách an ninh cho mạng.
Các chính sách này giúp bảo vệ mạng và tiết kiệm tài nguyên cho mạng bằng cách loại bỏ các lưu lượng không cần thiết vào mạng. Nếu một mạng có hai giao thức định tuyến trở lên, giả sử như RIP (Routing information Protocol)và IGRP (Interior Gateway Routing Protocol), thì thông tin giữa hai miền định tuyến này được chia sẻ tại lớp phân phối.
c. Lớp truy nhập
Lớp truy nhập cung cấp lưu lượng cho mạng và thực hiện điều khiển cổng vào mạng. Người sử dụng đầu cuối truy nhập tài nguyên mạng bằng lớp truy nhập. Có chức năng như một cửa trước để vào mạng, lớp truy nhập sử dụng danh sách truy nhập để ngăn chặn các người dùng không có quyền truy cập vào mạng. Lớp truy nhập cũng có thể đưa ra các điểm truy nhập từ xa tới mạng bằng cách sử dụng các công nghệ mạng diện rộng như Frame Relay, ISDN, hoặc leased line.
4.1.3 Ứng dụng OSPF trong mạng phân cấp
a. Sựphân chia thành vùng con trong miền OSPF
Khi mạng phát triển, cơ sở dữ liệu của mạng tăng theo dẫn đến phải tăng dung lượng bộ nhớ Router. Để giải quyết vấn đề này, người ta sử dụng giải thuật SPF. Nhưng điều này lại tăng gánh nặng sử lí cho CPU.
Lợi ích của việc sử dụng Area: OSPF sử dụng các Area để giảm các ảnh hưởng bất lợi trên. OSPF định nghĩa Area là một nhóm logic các Router và các liên kết giúp phân chia hiệu quả một miền OSPF thành các miền con. Các Router trong một Area sẽ không biết chi tiết cấu hình bên ngoài Area của nó.
Area ID: Area được nhận dạng bởi 32 bit Area ID. Area ID có thể được viết dưới dạng số thập phân hoặc số thập phân được ngăn cách bởi các dấu chấm (ví dụ như 0 và 0.0.0.0 là tương đương, hoặc16 và 0.0.0.16; 271 và 0.0.1.15 là tương đương).
Backbone: Area ID 0 được sử dụng cho mạng Backbone. Mạng Backbone là mạng chịu trách nhiệm thông báo các thông tin về cấu hình tổng quát của mỗi Area cho các Area khác.
b. Ứng dụng OSPF trong mạng phân cấp
Trong mạng phân cấp sử dụng giao thức định tuyến OSPF, thì lớp lõi của mạng sẽ tương ứng với mạng backbone trong miền OSPF, lớp phân phối và lớp truy nhập sẽ tương ứng với các vùng con khác (không phải backbone). (xem hình vẽ)
Hình 4.2
4.2 OSPF với việc cân bằng tải
4.2.1 Vấn đề định tuyến đa đường và cân bằng tải trong mạng IP
Hình 4.3 Gói tin đi từ A đến E có thể đi theo hai đường A-B-D-E hoặc A-C-D-E
a. Định tuyến đa đường:
Định tuyến đa đường: là định tuyến các gói tin tới đích theo nhiều đường khác nhau. Lưu lượng đi từ nguồn tới đích được phân chia ra trên các đường. (hình 4.3)
Ưu điểm và nhược điểm của định tuyến đa đường:
Định tuyến đa đường giúp tận dụng tốt hơn băng thông của các đường dẫn từ nguồn tới đích so với định tuyến đơn đường. Điều này giúp cho tốc độ truyền thông cao hơn. Tuy nhiên định tuyến đa đường có nhược điểm là phức tạp hơn so với định tuyến đơn đường.
Trong các giao thức định tuyến trạng thái đường liên kết có hỗ trợ phương thức định tuyến đa đường. Theo đó, các đường có cost thấp nhất trong các đường có thể tới đích sẽ được lựa chọn. Ví dụ, nếu ta chọn định tuyến hai đường thì hai đường có cost thấp nhất trong các đường dẫn tới đích sẽ được cùng sử dụng.
b. Cân bằng tải
Cân bằng tải cho phép các Router định tuyến đa đường các gói tin từ nguồn tới đích bằng cách gửi các gói tin lên tất cả các tuyến khả dụng. Cân bằng tải được chia làm hai loại gồm equal cost và unequal cost.
Cân bằng tải theo kiểu equal cost: là cân bằng tải mà lưu lượng được phân phối đều nhau giữa các đường truyền.
Cân bằng tải theo kiểu unequal cost: trong phưong thức này, các gói được truyền trên các đường dẫn với tỷ lệ khác nhau. Lưu lượng được phân bố tỷ lệ nghịch với cost của đường dẫn. Tức là đường dẫn có cost thấp hơn sẽ được truyền nhiều lưu lưọng hơn, trong khi đường dẫn có cost cao hơn sẽ được truyền ít lưu lượng hơn.
Một số giao thức định tuyến hỗ trợ cả equal-cost và unequal-cost, trong khi một số khác chỉ hỗ trợ equal cost. Định tuyến tĩnh không có metric chỉ hỗ trợ equal cost.
Ngoài ra cân bằng tải cũng được phân chia theo đích hoặc theo gói.
Cân bằng tải theo đích (Per Destination load balancing): là cân bằng tải mà việc phân chia lưu lượng phụ thuộc vào địa chỉ đích. Ví dụ nếu có hai đường dẫn tới cùng một mạng, thì tất cả các gói tới một đích trong mạng sẽ được truyền theo đường thứ nhất, tất cả các gói tới đích thứ hai trong mạng được truyền theo đường thứ hai, tất cả các gói đến đích thứ ba lại được truyền theo đường thứ nhất và cứ như vậy. Cân bằng tải loại này thường được sử dụng trong các Router của Cisco khi chúng ở chế độ chuyển mạch nhanh.
Cân bằng tải theo gói (Per Packet Load Balancing): (xét với cùng một đích)
Nếu các đường dẫn là equal-cost: một gói tới một đích được gửi trên một liên kết, gói tiếp theo tới cùng đích đó được gửi trên liên kết tiếp theo và cứ như vậy.
Nếu các đường dẫn là unequalcost: các gói gửi tới cùng một đích sẽ được truyền trên các đường dẫn tới đích đó theo một tỷ lệ phụ thuộc vào cost của mỗi đường. Cụ thể là nếu đường dẫn thứ nhất có cost là a, đường dẫn thứ hai có cost là b thì tỷ lệ truyền gói là giữa đường thứ nhất và thứ hai sẽ là b/a.
4.2.2 Ứng xử của OSPF với cân bằng tải
Giao thức định tuyến OSPF có hỗ trợ định tuyến đa đường và cân bằng tải theo kiểu equal cost.
Hình 4.4 Cân bằng tải trong OSPF
Giả sử Router A phải định tuyến các gói tin đến Router D và ta cấu hình Router A hoạt động ở chế độ định tuyến hai đường. Rouer A sẽ tra bảng định tuyến của nó và chọn ra trong các tuyến có thể dẫn tới đích hai tuyến có cost thấp nhất (giả sử hai tuyến đó là A-B-D và A-C-D). Sau đó Router A sẽ sử dụng cả hai tuyến này để truyền tin. Do OSPF chỉ hỗ trợ cân bằng tải equal-cost nên mặc dù hai tuyến này có băng thông khác nhau nhưng tỷ lệ các gói truyền trên hai tuyến này là như nhau.
4.3 OSPF trong miền MPLS
4.3.1 Vai trò của MPLS trong mạng IP cỡ lớn
a. Giới thiệu về công nghệ chuyển mạch nhãn đa giao thức MPLS
MPLS là công nghệ tập trung vào giải quyết các vấn đề còn tồn tại liên quan đến việc chuyển tiếp các gói tin trong môi trường liên mạng hiện nay. IETF đã đưa ra các tiêu chuẩn về MPLS và mô tả mục đích cơ bản của MPLS như sau:
Mục đích cơ chính của nhóm nghiên cứu MPLS là chuẩn hoá một công nghệ cơ sở giúp kết hợp giữa việc chuyển tiếp theo kiểu chuyển đổi nhãn với định tuyến lớp mạng. Công nghệ này được hi vọng là sẽ cải thiện hiệu năng định tuyến lớp mạng, khả năng mở rộng của lớp mạng, và sự mềm dẻo trong việc triển khai các dịch vụ mới (bằng cách cho phép thêm vào các dịch vụ mới mà không cần thay đổi kiểu chuyển tiếp gói tin).
Kiến trúc MPLS mô tả các cơ chế để thực hiện chuyển mạch nhãn bằng cách kết hợp giữa chuyển mạch tốc độ cao của chuyển mạch lớp hai với khả năng định tuyến của lớp ba. MPLS gán các nhãn cho các gói để truyền tải các gói qua mạng. Cơ chế chuyển tiếp gói tin qua mạng này gọi là cơ chế chuyển đổi nhãn (label swapping). Trong cơ chế này, các gói được gán các nhãn có độ dài cố định giúp cho các node chuyển mạch có thể dựa vào đó để sử lý các gói tin và chuyển tiếp chúng qua mạng. Sự khác nhau đáng kể giữa MPLS và công nghệ WAN truyền thống là cách các nhãn được gán và khả năng mang danh sách các nhãn (stack of label) được gắn vào gói.
Kỹ thuật chuyển tiếp các gói trong miền MPLS hoàn toàn trái ngược với trong môi trường mạng phi kết nối ngày nay, nơi mà mỗi gói được sử lý tại mỗi node, header lớp 3 được kiểm tra, và các quyết định về chuyển tiếp gói tin được thực hiện dựa trên giải thuật định tuyến lớp mạng.
Kiến trúc được chia thành hai phần tách biệt bao gồm: Phần chuyển tiếp (gọi là mặt bằng dữ liệu) và phần điều khiển (gọi là mặt bằng điều khiển). Phần chuyển tiếp sử dụng cơ sở dữ liệu chuyển tiếp nhãn (label-forwarding database) được lưu trữ trong các chuyển mạch nhãn để thực hiện chuyển tiếp các gói tin dựa trên các nhãn mà các gói mang theo. Phần điều khiển có nhiệm vụ tạo và duy trì thông tin chuyển tiếp nhãn (label-forwarding information) giữa một nhóm các chuyển mạch nhãn kết nối với nhau.(Hình 4.5)
Hình 4.5 Kiến trúc cơ bản của một node MPLS
Mỗi node MPLS phải chạy ít nhất một giao thức định tuyến IP (hoặc sử dụng định tuyến tĩnh) để trao đổi thông tin định tuyến IP với các node MPLS khác trong mạng. Khi này, mỗi node MPLS sẽ là một Router IP trong mặt bằng điều khiển.
Các giao thức định tuyến IP sẽ xây dựng bảng định tuyến IP cho các node. Sau đó bảng định tuyến này được sử dụng để xây dựng bảng chuyển tiếp IP (IP forwarding table). Tiếp đó bảng định tuyến này lại được sử dụng để xác định việc trao đổi nhãn. Việc chuyển đổi nhãn này được thực hiện bởi giao thức phân bổ nhãn LDP (Label distribution Protocol).
Quá trình điều khiển định tuyến IP trong miền MPLS sử dụng các nhãn đã được trao đổi với các node MPLS kế cận để xây dựng bảng chuyển đổi nhãn (Label Forwarding Table), để chuyển tiếp các gói qua mạng MPLS.
LSR cạnh là một Router thực hiện việc ánh xạ từ địa chỉ IP của gói vào miền MPLS sang một nhãn tương ứng và thực hiện chuyển đổi ngược lại khi gói ra khỏi miền MPLS. Các LSR cạnh sử dụng bảng định tuyến IP kết hợp với thông tin về nhãn để gán nhãn cho các gói IP trước khi chúng vào mạng hoặc xoá bỏ các nhãn này khỏi các gói trước khi chúng được chuyển đến các node không thuộc miền MPLS. Hình sau chỉ ra kiến trúc của một LSR cạnh.
Hình 4.6 Kiến trúc LSR cạnh
Sự chuyển đổi nhãn tại phần cạnh của mạng
Chức năng này được thực hiện tại node cạnh của mạng. Ở đây, các gói được đánh nhãn trước khi chúng được chuyển tiếp vào miền MPLS. Khi một gói được chuyển tiếp tới hop tiếp theo, node chuyển tiếp gói sẽ dựa vào nhãn đã được gán cho gói để đưa ra các quyết định chọn đường thay vì phải thực hiện các chức năng định tuyến ở lớp ba như các mạng IP truyền thống. Hình sau mô tả toàn bộ quá trình truyền gói trong miền MPLS.
Hình 4.7 Quá trình truyền gói trong miền MPLS
b. Vai trò của MPLS trong mạng IP cỡ lớn
Xét một mạng IP cỡ lớn được phân cấp lớp như hình vẽ:
Hình 4.8
Mạng đang xét gồm ba lớp là : lớp lõi, lớp phân phối, và lớp truy nhập. Ở đây ta sẽ tập trung nghiên cứu về lớp lõi. Nhiệm vụ chính của lớp lõi là chuyển tiếp các gói tin với tốc độ nhanh nhất có thể, và vấn đề đặt ra là ta sẽ sử dụng node chuyển mạch là thiết bị nào trong lớp lõi để thực hiện điều này. Có hai sự lựa chọn sau:
Nếu sử dụng thiết bị Switch làm node chuyển mạch trong lớp lõi, điều này sẽ làm cho tốc độ chuyển tiếp các gói tin là rất nhanh do việc định tuyến được thực hiện ở lớp hai. Tuy nhiên ưu điểm này lại dẫn đến nhược điểm đó là do việc định tuyến được thực hiện ở lớp hai nên các gói sẽ được định tuyến một cách kém thông minh hơn (định tuyến theo kiểu quảng bá) điều này dẫn đến miền quảng bá trong lớp lõi sẽ rất lớn và lớp lõi phải có băng thông rất lón mới có thể đáp ứng được (điều này là trái ngược với thực tế bởi lớp lõi trong các mạng IP cỡ lớn thường có băng thông rất nhỏ).
Nếu sử dụng Router làm node chuyển mạch trong lớp lõi của mạng IP cỡ lớn thì tác dụng lại hoàn toàn ngược lại so với việc sử dụng Switch làm node chuyển mạch. Việc định tuyến sẽ được thực hiện ở lớp ba nên tốc độ chuyển tiếp các gói tin sẽ chậm hơn so với việc sử dụng Switch. Ngược lại các quyết định định tuyến ở đây lại thông minh hơn so với Switch dẫn đến làm giảm miền quảng bá trong lớp lõi.
Để giải quyết vấn đề trên người ta sử dụng kỹ thuật chuyển mạch nhãn MPLS. Mỗi node chuyển mạch trong lớp lõi là một LSR. Các gói đi vào lớp lõi sẽ được gán thêm một nhãn định tuyến để phục vụ cho việc chuyển tiếp các gói tin trong lớp lõi. Với phương pháp này, các gói tin đi vào lớp lõi sẽ được chuyển tiếp nhanh hơn so với phương pháp sử dụng Router nhưng lại giảm được miền quảng bá so với phương pháp sử dụng Switch.
4.3.2 Sự kết hợp giữa LDP và OSPF
Trong mạng MPLS, quá trình chuyển tiếp các gói tin là theo phương pháp chuyển mạch nhãn. Các gói đi từ bên ngoài vào miền MPLS sẽ phải đi qua các LSR cạnh. Tại đây các gói sẽ được gán nhãn trước khi đi vào trong mạng. Khi các gói được truyền trong mạng, các node sẽ phân tích thông tin chứa trong nhãn của mỗi gói để đưa ra các quyết định tuyến cho gói và gán cho gói một nhãn mới. Khi các gói này được chuyển đến LSR cạnh để ra khỏi mạng, nhãn của nó sẽ được các LSR cạnh xoá bỏ trước khi ra khỏi miền MPLS.(xem hình vẽ 4.9)
Để thực hiện việc gán nhãn một cách chính xác cho các gói, các LSR phải căn cứ vào bảng chuyển tiếp nhãn (label forwarding table). Để xây dựng bảng này, người ta sử dụng giao thức phân bổ nhãn LDP. Tuy nhiên giao thức này chỉ hoạt động khi trong mạng phải có bảng định tuyến IP. Trong trường hợp này IETF khuyến nghị nên dùng giao thức định tuyến OSPF để xây dựng bảng định tuyến.
Hình 4.9
4.4 Ứng dụng OSPF trong mạng NGN của VNPT
4.4.1 Mạng NGN của VNPT
Giới thiệu mô hình mạng NGN của VNPT đang xây dựng
Hình 4.10 Mô hình phân lớp mạng NGN của VNPT
Hình 4.11 Cấu hình chi tiết mạng NGN của VNPT
Lớp truyền tải: 3 core switch router M160 của Juniper thông lượng chuyển mạch là 160Gb/s đặt tại Hà Nội, TP Hồ Chí Minh và Đà Nẵng. 10 Edge router đặt tại các tỉnh thành. Băng thông kết nối giữa các core router là 155Mb/s.
Lớp truy nhập tại mỗi tỉnh, thành: tại các tỉnh lắp đặt các Media gateway và BRAS và DSLAM. Media gateway cho giao diện giữa mạng PSTN và mạng NGN để truyền tải lưu lượng thoại đường dài. BRAS và DSLAM dùng để kết nối thuê bao ADSL.
Việc cân bằng giữa nhu cầu của khách hàng và chi phí của hệ thống là một điều hết sức cần thiết cho nhà quản trị mạng khi muốn đầu tư vào mạng của mình. Một trong những việc đó chính là phải quản lý hiệu năng mạng một cách chặt chẽ để có những kế hoạch triển khai mở rộng hay cắt giảm hệ thống kịp thời. Đối với hệ thống đang triển khai tại Việt Nam, việc quản lý hiệu năng mạng (quản lý lưu lượng vào/ra, tổng số kết nối trong một khoảng thời gian nào đó,...) được thể hiện ở 2 dạng:
Thứ nhất: Có một bảng điện tử luôn luôn hiển thị lưu lượng xử lý online của hệ thống theo thời gian thực, nhìn vào đó ta có thể thấy lưu lượng vào ra, tải xử lý tại thời điểm bất kỳ.
Thứ hai: Ngoài việc hiển thị online trên bảng điện tử như trên thì hệ thống còn lưu số liệu vào log file dưới dạng text, và ghi theo chế độ mỗi ngày số liệu được ghi vào 1 file, và lưu được trong 1 tuần. Số liệu của tuần sau sẽ ghi đè vào file số liệu của tuần trước.
4.4.2 Khả năng ứng dụng của OSPF trong mạng NGN của VNPT
Mạng NGN của VNPT là một mạng IP cỡ lớn có cấu trúc phân lớp. Tuy nhiên ở đây ta chỉ quan tâm tới lớp truyền tải của mạng. Tại lớp truyền tải, các Router M160 được nối với nhau để thực hiện việc truyền tải lưu lượng với tốc độ rất cao. Các Router M160 sử dụng công nghệ chuyển mạch nhãn đa giao thức MPLS và sử dụng giao thức định tuyến OSPF. Công nghệ chuyển mạch nhãn MPLS hoạt động dựa trên giao thức LDP có tác dụng ánh xạ các địa chỉ IP đích thành các nhãn tương ứng để các LSR gán các nhãn này cho các gói tin IP khi chúng đi vào miền MPLS. Giao thức LDP lại thực hiện điều này dựa trên bảng định tuyến mà giao thức OSPF đã xây dựng. Có thể nói với những đặc tính như hoạt động tốt trên các mạng cỡ lớn, khả năng hội tụ nhanh, tiết kiệm băng thông trong quá trình trao đổi thông tin định tuyến... giao thức định tuyến OSPF đã hoạt động hiệu quả trong mạng NGN của VNPT.
Kết luận
Qua nghiên cứu về giao thức OSPF ta rút ra được kết luận sau:
OSPF là một giao thức định tuyến mạnh. Nó đã khắc phục được các nhược điểm của các giao thức định tuyến trước. Một số ưu điểm đó là có khả năng hoạt động tốt trong mạng IP cỡ lớn, ít bị ảnh hưởng đối với các thông tin định tuyến tồi, thời gian hội tụ nhanh sử dụng có hiệu quả tài nguyên mạng.... Với những ưu điểm vượt trội của mình, ngày nay OSPF đang được sử dụng rộng rãi trong các mạng truyền tải dựa trên công nghệ IP không chỉ ở Việt Nam mà còn ở trên toàn thế giới.
Tuy nhiên, OSPF cũng có những nhược điểm đó là nó đòi hỏi các thiết bị mạng sử dụng giao thức này phải có cấu hình mạnh tức là dung lượng bộ nhớ phải lớn và tốc độ CPU phải cao. Ngoài ra, do giao thức OSPF là một giao thức rất phức tạp nên đòi hỏi người sử dụng phải có một kiến thức nhất định về mạng và phải được đào tạo chuyên sâu về OSPF mới có thể cấu hình dược giao thức này.
Tập đồ án hi vọng đã cung cấp cho ban đọc một cách tương đối đầy đủ các kiến thức cần thiết nhất về giao thức OSPF. Tuy vậy, nó vẫn còn những vấn đề còn bỏ ngỏ cần tiếp tục nghiên cứu để giao thức này ngày một hoàn thiện hơn.
Phụ lục
1. Khuôn dạng gói tin OSPF
Hình 1. Gói OSPF gồm nhiều quá trình Encapsulation
Thông tin chứa trong IP Header chỉ ra một trong năm loại gói OSPF. Mỗi gói OSPF gồm OSPF gồm OSPF packet header theo sau là trường OSPF Packet Data tương ứng với loại gói. Trong OSPF Packet Data gồm một trường Packet type-Specific data và trường Data. Trường Data trong Hello Packet là một danh sách các Neighbor. Trong gói yêu cầu trạng thái liên kết, trường Data gồm nhiều LSA.
Các LSA này cũng gồm hai phần là LSA header và LSA Data. Các gói mô tả trạng thái liên kết và xác nhận trạng thái liên kết chứa danh sách các LSA header.
1.1 Packet Header
Tất cả các gói OSPF đều bắt đầu với 24-octet header như chỉ ra ở hình dưới.
Nếu AuType = 2, trường Authentication có dạng:
Hình 2. OSPF packet Header
Version: là chỉ số phiên bản OSPF.
Type: chỉ rõ loại gói OSPF theo sau header.
Type code
Decription
1
2
3
4
5
Hello
Gói mô tả trạng thái liên kết
Gói yêu cầu trạng thái liên kết
Gói cập nhật trạng thái liên kết
Gói xác nhận trạng thái liên kết
Packet Length: Là độ dài gói OSPF tính theo octet bao gồm cả phần Header.
Router ID: Là ID của Router tạo ra gói.
Area ID: là ID của Area tạo ra gói. Nếu gói được gửi qua liên kết ảo, Area ID = 0.0.0.0 (Backbone Area ID) vì liên kết ảo được coi là một phần của Backbone.
Checksum: là tổng kiểm tra IP tiêu chuẩn của toàn bộ gói bao gồm cả phần Header.
Autype: chỉ ra loại nhận thực (authentication) đang được sử dụng.
Au Type
Authentication Type
0
1
2
Không sử dụng chế độ nhận thực
Simple (clear text) Password
Cryptographic (MD5) checksum
Athentication: là thông tin cần thiết cho các gói để nhận thực bởi chế độ được chỉ ra trong trường AuType. Nếu AuType = 0, trường này không được kiểm tra và có thể chứa bất cứ thứ gì. Nếu AuType = 1, trường này sẽ chứa Password tới 64 bit. Nếu AuType = 2, trường này sẽ chứa KeyID, Authentication Data Length và Cryptographic sequenca Number.
Key ID: dùng để nhận dạng thuật toán Authentication và secret key sử dụng để tạo message digest.
Authentication Data Length: chỉ ra độ dài của message digest gắn vào cuối gói.
Cryptographic sequence Nember: là một số không giảm sử dụng để tránh các hành động xem lại.
1.2 Gói Hello
Network mask: là mặt nạ địa chỉ của giao diện mà gói được gửi đi. Nếu mặt nạ này không phù hợp với mặt nạ của giao diện nhận gói, gói sẽ bị huỷ.
H ình 3. Khuôn dạng gói Hello
Hello Interval: là khoảng thời gian tính theo giây giữa các lần truyền các gói Hello trên giao diện. Nếu Router gửi và Router nhận có giá trị tham số này khác nhau, chúng sẽ không thiết lập quan hệ láng giềng.
Options: giúp cho các Router có khả năng tương thích.
Router Priority: sử dụng để bầu cử DR và BDR. Nếu Router Priority = 0, Router này sẽ không thể trở thành DR hoặc BDR.
Router Dead Interval: là khoảng thời gian tính theo giây mà Router chờ đợi để nhận được gói tin Hello từ Neighbor trước khi nó khai báo Neighbor này bị chết.( ở trạng thái Down)
Designated Router: là địa chỉ IP của giao diện gắn với DR trong mạng. Nếu trong mạng không có DR, trường này được đặt bằng không.
Backup DR: là địa chỉ IP của giao diện gắn với BDR trong mạng. Nếu không có BDR, trường này đặt bằng không.
Neighbor: trường này chứa danh sách các Neighbor trong mạng mà Router gốc nhận được các gói Hello hợp lệ.
1.3 Gói mô tả cơ sở dữ liệu (Database Description)
Hình 4.Kkhuôn dạng gói DD
Gói này được sử dụng khi một Adjacency đang được thiết lập. Mục đích cơ bản của gói DD là mô tả các LSA trong cơ sở dữ liệu của node nguồn giúp cho node nhận có thể xác định xem nó có LSA phù hợp trong cơ sở dữ liệu của mình hay không.
Interface MTU: là kích thước tính theo octet của gói IP lớn nhất có thể được gửi qua giao diện của node nguồn mà không cần phân mảnh. Trường này sẽ đặt bằng 0x0000 khi gói được gửi qua liên kết ảo.
Options: giúp cho một Router có thể không chuyển tiếp LSA tới Neighbor không hỗ trợ các khả năng cần thiết.
Năm bit đầu tiên của octet tiếp theo không sử dụng và được đặt bằng 00000b.
Bit I (initial bit): I = 1 khi gói là gói đầu tiên trong các gói DD. Các gói DD tiếp theo sẽ có I = 0.
Bit M (More bit): M = 1 nếu gói không phải là gói cuối cùng trong các gói DD. M = 0 nếu gói là gói cuối cùng.
Bit MS (Master/Slave bit): MS = 1 thì node nguồn là Master trong quá trình đồng bộ cơ sở dữ liệu. MS = 0, node nguồn là Slave.
DD sequence Number: đảm bảo trình tự đầy đủ các gói DD được nhận trong quá trình đồng bộ cơ sở dữ liệu. Giá trị này được lập bởi Master trong gói DD đầu tiên và được tăng lên ở các gói tiếp theo.
LSA Headers: chứa một vài hoặc tất cả các Header của các LSA trong cơ sở dữ liệu của node nguồn. Trong Header chứa các thông tin đủ để nhận dạng duy nhất LSA và các phiên bản của LSA.
1.4 Gói yêu cầu trạng thái liên kết (Link State Request Packet)
Khi nhận được các gói DD trong quá trình đồng bộ cơ sở dữ liệu, Router sẽ chú ý đến các LSA được liệt kê ( trong gói DD) không có hoặc mới hơn các LSA trong cơ sở dữ liệu của mình. Các LSA này sẽ được ghi trong “danh sách yêu cầu trạng thái liên kết ”. Sau đó Router sẽ gửi các gói yêu cầu trạng thái liên kết để yêu cầu Neighbor gửi các bản copy của các LSA cần thiết cho nó. Khuôn dạng của gói yêu cầu trạng thái liên kết được chỉ ra ở hình dưới.
Hình 5. Khuôn dạng gói yêu cầu trạng thái liên kết
Link State Type: dùng để nhận dạng loại LSA.
Link State ID: xem phần Link State Header.
Advertising Router: là Router ID của Router tạo ra LSA.
1.5 Gói cập nhật trạng thái liên kết ( The link State Update)
Dùng để tràn lụt LSA và gửi các LSA được yêu cầu bởi gói yêu cầu trạng thái liên kết.Vì các gói OSPF không được đi ra khỏi mạng tạo ra chúng, do đó các gói cập nhật trạng thái chỉ mang các LSA xa hơn một hop tính từ Router nguồn. Neighbor nhận gói có trách nhiệm mở gói để lấy các LSA thích hợp trong gói cập nhật để thực hiện quá trình tràn lụt xa hơn.
Hình 6. Khuôn dạng gói cập nhật trạng thái liên kết
Number of LSA: chỉ rõ số các LSA chứa trong gói.
LSA: được trình bay ở phần sau.
1.6 Gói xác nhận trạngt thái liên kết
Gói này được sử dụng để đảm bảo độ tin cậy cho quá trình tràn lụt. Mỗi LSA nhận được từ Neighbor phải được xác nhận trong gói xác nhận trạng thái liên kết. Các LSA đang được xác nhận sẽ có phần Header của nó chứa trong gói xác nhận trạng thái liên kết.
Hình 7. Khuôn dạng gói xác nhận trạng thái liên kết
2. Khuôn dạng các LSA
2.1 LSA Header
Hình 8. Khuôn dạng LSA Header
Tất cả các LSA đều có khuôn dạng LSA Header giống nhau như chỉ ra ở hình trên.
Age: là thời gian tính theo giây kể từ khi LSA được tạo ra. Khi LSA được tràn lụt, Age được tăng Inf Trans Delay giây tại mỗi giao diện Router nó đi ra. Age cũng được tăng khi nó cư trú trong cơ sở dữ liệu trạng thái liên kết.
Options: được trình bày ở phần sau.
Type: chỉ rõ loại LSA.
Link State ID: cách sử dụng của trường này phụ thuộc và loại LSA . Ý nghĩa cụ thể của trưòng này sẽ được trình bày đối với từng LSA cụ thể.
Advertising Router: là Router ID của Router tạo ra LSA.
Sequence Number: được tăng lên mỗi khi một phiên bản mới của LSA được tạo ra. Điều này giúp cho các Router khác có thể xác định được phiên bản nào là phiên bản mới nhất của LSA.
Checksum: là tổng kiểm tra Fletcher của toàn bộ nội dung LSA trừ trường Age.
Length: là độ dài của LSA (tính theo octet) bao gồm cả phần Header.
2.2 Router LSA
Router LSA được tạo ra bởi tất cả các Router. Nó chứa danh sách các liên kết hoặc giao diện của Router cùng với trạng thái và cost đầu ra của mỗi liên kết. Các LSA này chỉ được tràn lụt trong Area tạo ra nó.
V (Virtual link end point bit): V = 1 khi Router gốc là điểm cuối của một hay nhiều liên kết ảo.
E (External bit): E = 1 khi Router gốc là ASBR.
B (border bit): B = 1 khi Router gốc là ABR.
Number of links: là số các liên kết của Router mà LSA mô tả.
Hình 9. Khuôn dạng Router LSA
Link Type: chỉ rõ loại của liên kết mà liên kết cung cấp.
Link Type
Connection
1
2
3
4
Kết nối điểm-điểm tới Router khác.
Kết nối tới Transit Network.
Kết nối tới Stub Network
Virtual link
Link ID: dùng để xác định đích mà liên kết nối tới. Trường này phụ thuộc vào trường Link Type như chỉ ra ở bảng sau:
Link Type
Giá trị của trường Link ID
1
2
3
4
Router ID của Neighbor
Địa chỉ IP của giao diện của DR
Địa chỉ IP của mạng hay mạng con
Router ID của Neighbor
Link Data: cũng phụ thuộc vào giá trị của trường Link Type như sau:
Link Type
Giá trị của trường Link Data
1
2
3
4
Địa chỉ IP của giao diện của Router gốc nối tới mạng
Địa chỉ IP của giao diện của Router gốc nối tới mạng
Địa chỉ IP của mạng hoặc mặt nạ mạng con
The MIB-II ifIndex value for the originating router’s interface
Metric: là cost của liên kết (giao diện).
TOS (Type of service): xác định loại dịch vụ mà Metric theo sau tham khảo.
TOS Metric: là metric gắn với giá trị TOS đã được xác định.
2.3 Network LSA
Network LSA được tạo ra bởi các DR Các LSA này quảng cáo cho mạng đa truy nhập, và tất cả các Router (kể cả DR) gắn vào mạng. Network LSA chỉ được tràn lụt trong Area tạo ra nó.
Link State ID: là địa chỉ IP của giao diện của DR nối tới mạng.
Network Mask: chỉ rõ địa chỉ hoặc mặt nạ mạng con sử dụng trong mạng này.
Attached Router: là danh sách các Router ID của tất cả các Router trong mạng (có thiết lập Adjacency với DR) và cả Router ID của DR.
Hình 10. Khuôn dạng Network LSA
2.4 Network Summary LSA và ASBR Summary LSA
Hai LSA này có khuôn dạng giống nhau chỉ khác ở nội dung các trường Type và Link State ID. Các ABR tạo ra cả hai loại LSA này. Network Summary LSA (loại 3) quảng cáo cho các mạng ngoài Area (bao gồm cả các tuyến mặc định), trong khi ASBR Summary LSA (loại 4) quảng cáo cho các ASBR bên ngoài nối tới Area. Cả hai loại LSa này đều được tràn lụt chỉ trong một Area.
Link State ID: là địa chỉ IP của mạng hoặc mạng con được quảng cáo (đối với LSA loại 3) và là Router ID của ASBR được quảng cáo (đối với LSA loại 4).
Network Mask: là địa chỉ hoặc mặt nạ mạng con của mạng được quảng cáo (đối với LSA loại 3) và bằng 0.0.0.0 (đối với LSA loại 4).
Nếu LSA loại 3 quảng cáo cho tuyến mặc định, thì hai trưòng trên được đặt bằng 0.0.0.0
Metric: là cost của tuyến tới đích này.
Hình 11. Khuôn dạng Network SummaryLSA và ASBR Summary LSA
2.5 AS External LSA (Autonomous System External LSA)
Các AS External LSA được tạo ra bởi các ASBR. Chúng dùng để quảng cáo cho các đích bên ngoài hệ thống độc lập OSPF (bao gồm cả các tuyến mặc định tới các đích ngoài) và được tràn lụt trong tất cả các Area không phải là Stub trong miền OSPF.
Hình 12. Khuôn dạng AS External LSA
Link State ID: là địa chỉ IP của đích.
Network Mask: là địa chỉ hoặc mặt nạ mạng con của đích được quảng cáo.
Nếu LSA này quảng cáo tuyến mặc định, cả hai trường trên được đặt bằng không.
E (External Metric bit): chỉ ra loại Metric được sử dụng cho tuyến này. Nếu E = 1 loại Metric là E2, nếu E = 0, loại Metric là E1.
Metric: là cost của tuyến khi thiết lập bởi ASBR.
Forwarding Address: là địa chỉ mà các gói tới các đích được quảng cáo sẽ chuyển tiếp tới. Nếu địa chỉ này bằng 0, các gói sẽ được chuyển tới ASBR gốc.
External Route Tag: là một thẻ đặc biệt được ứng dụng đối với các tuyến ngoài. Trường này không được giao thức OSPF sử dụng nhưng nó có thể được sử dụng để thay thế cho việc quản lý các tuyến bên ngoài.
2.6 NSSA External LSA
Các LSA này được tạo ra bởi các ASBR trong NSSA. Các trường của chúng giống với các trường của AS External LSA ngoại trừ trường Forwarding Address. NSSA External LSA chỉ được tràn lụt trong NSSA tạo ra nó.
Hình 13. Khuôn dạng NSSA External LSA
Forwarding Address:
Nếu mạng giữa NSSA ASBR và hệ thống độc lập được quảng cáo như là một tuyến nội thì trường này là địa chỉ của hop kế tiếp trong mạng.
Nếu mạng không được quảng cáo như là một tuyến nội, trường này sẽ là Router ID của NSSA ASBR.
2.7 Trường Options
Hình 14. Trường Option
* : bit không sử dụng (thường đặt bằng 0).
DC : DC = 1 khi Router gốc hỗ trợ các kênh OSPF theo yêu cầu.
EA: EA = 1 khi Router gốc có khả năng nhận và chuyển tiếp các LSA thuộc tính ngoài.
N: chỉ sử dụng trong các gói Hello. Router gốc sẽ lập N = 1 nếu nó có khả năng sử lý các NSSA External LSA. Ngược lại N = 0 chỉ ra rằng Router gốc không chấp nhận hoặc gửi các LSA này.
P: chỉ sử dụng trong các Header của NSSA External LSA . Bit này báo cho ABR của NSSA để biến đổi LSA loại 7 thành LSA loại 5.
MC: MC = 1 khi Router gốc có khả năng chuyển multicast các gói (được sử dụng trong MOSPF).
E: E = 1 khi Router gốc có khả năng nhận các AS External LSA. E = 1 trong tất cả các AS External LSA và các LSA được tạo ra trong Backbone và trong Non Stub Area. E = 0 trong tất cả các LSA được tạo ra trong Stub Area.
T: T = 1 khi Router gốc hỗ trợ TOS.
TÀI LIỆU THAM KHẢO
[1] Jeff Doyle, “Routing TCP/IP volume I”, Cisco Press.
[2] Ivan Pepelnjak and Jim Guichard, “MPLS and VPN ARCHITECTURES”, Cisco Press.
[3] Clare Gough, “Cisco CCNP Routing ExamCertification Guide”, Cisco Press
[4] Nguyễn Xuân Khánh, “TCP/IP căn bản”
[5] Các tài liệu về NGN Việt Nam do VTN cung cấp.
[6]
[7]
[8]
Các file đính kèm theo tài liệu này:
- Ban Word.doc
- Trinh bay.ppt